@rakun-kit/manager-react 1.2.0 → 1.3.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 (722) hide show
  1. package/dist/cjs/app/app-provider.js +77 -1
  2. package/dist/cjs/app/app-provider.js.map +1 -1
  3. package/dist/cjs/app/media-picker.js +17 -0
  4. package/dist/cjs/app/media-picker.js.map +1 -0
  5. package/dist/cjs/app/root-providers.js +1 -1
  6. package/dist/cjs/app/root-providers.js.map +1 -1
  7. package/dist/cjs/app/runtime-app.js +4 -2
  8. package/dist/cjs/app/runtime-app.js.map +1 -1
  9. package/dist/cjs/client/http.js +44 -2
  10. package/dist/cjs/client/http.js.map +1 -1
  11. package/dist/cjs/client/request.js +2 -1
  12. package/dist/cjs/client/request.js.map +1 -1
  13. package/dist/cjs/components/LanguageSelector.js +4 -2
  14. package/dist/cjs/components/LanguageSelector.js.map +1 -1
  15. package/dist/cjs/components/PaginationController.js +10 -3
  16. package/dist/cjs/components/PaginationController.js.map +1 -1
  17. package/dist/cjs/components/app-sidebar.js +14 -8
  18. package/dist/cjs/components/app-sidebar.js.map +1 -1
  19. package/dist/cjs/components/boolean-indicator.js +14 -0
  20. package/dist/cjs/components/boolean-indicator.js.map +1 -0
  21. package/dist/cjs/components/manager-loading-fallback.js +1 -1
  22. package/dist/cjs/components/manager-loading-fallback.js.map +1 -1
  23. package/dist/cjs/components/media/MediaLibrary.js +10 -5
  24. package/dist/cjs/components/media/MediaLibrary.js.map +1 -1
  25. package/dist/cjs/components/media/contexts/MediaLibraryContext.js.map +1 -1
  26. package/dist/cjs/components/media/folders/FoldersTree.js +6 -8
  27. package/dist/cjs/components/media/folders/FoldersTree.js.map +1 -1
  28. package/dist/cjs/components/media/previews/MediaContextMenuContent.js +3 -2
  29. package/dist/cjs/components/media/previews/MediaContextMenuContent.js.map +1 -1
  30. package/dist/cjs/components/media/previews/Previews.js +377 -77
  31. package/dist/cjs/components/media/previews/Previews.js.map +1 -1
  32. package/dist/cjs/components/media/previews/context/MediaPreviewContext.js.map +1 -1
  33. package/dist/cjs/components/media/previews/dialogs/ExpandedPreviewDialog.js +37 -13
  34. package/dist/cjs/components/media/previews/dialogs/ExpandedPreviewDialog.js.map +1 -1
  35. package/dist/cjs/components/media/previews/dialogs/MediaDeleteDialog.js +10 -1
  36. package/dist/cjs/components/media/previews/dialogs/MediaDeleteDialog.js.map +1 -1
  37. package/dist/cjs/components/media/previews/dialogs/MediaImageEditorDialog.js +418 -0
  38. package/dist/cjs/components/media/previews/dialogs/MediaImageEditorDialog.js.map +1 -0
  39. package/dist/cjs/components/media/previews/dialogs/MediaMoveDialog.js +5 -1
  40. package/dist/cjs/components/media/previews/dialogs/MediaMoveDialog.js.map +1 -1
  41. package/dist/cjs/components/media/previews/toolbar/PreviewsToolbar.js +12 -5
  42. package/dist/cjs/components/media/previews/toolbar/PreviewsToolbar.js.map +1 -1
  43. package/dist/cjs/components/media/previews/views/PreviewsGridLargeView.js +2 -2
  44. package/dist/cjs/components/media/previews/views/PreviewsGridLargeView.js.map +1 -1
  45. package/dist/cjs/components/media/previews/views/PreviewsGridSmallView.js +2 -2
  46. package/dist/cjs/components/media/previews/views/PreviewsGridSmallView.js.map +1 -1
  47. package/dist/cjs/components/media/previews/views/PreviewsListView.js +15 -2
  48. package/dist/cjs/components/media/previews/views/PreviewsListView.js.map +1 -1
  49. package/dist/cjs/components/nav-secondary.js +4 -1
  50. package/dist/cjs/components/nav-secondary.js.map +1 -1
  51. package/dist/cjs/components/nav-user.js +9 -6
  52. package/dist/cjs/components/nav-user.js.map +1 -1
  53. package/dist/cjs/components/ui/button.js +59 -13
  54. package/dist/cjs/components/ui/button.js.map +1 -1
  55. package/dist/cjs/components/ui/data-table.js +24 -21
  56. package/dist/cjs/components/ui/data-table.js.map +1 -1
  57. package/dist/cjs/components/ui/sidebar.js +31 -32
  58. package/dist/cjs/components/ui/sidebar.js.map +1 -1
  59. package/dist/cjs/components/ui/skeleton.js +1 -1
  60. package/dist/cjs/components/ui/skeleton.js.map +1 -1
  61. package/dist/cjs/components/ui/tags-input.js +1 -1
  62. package/dist/cjs/components/ui/tags-input.js.map +1 -1
  63. package/dist/cjs/components/ui/tour.js +981 -0
  64. package/dist/cjs/components/ui/tour.js.map +1 -0
  65. package/dist/cjs/components/user-avatar.js +39 -0
  66. package/dist/cjs/components/user-avatar.js.map +1 -0
  67. package/dist/cjs/help/manager-help.js +131 -0
  68. package/dist/cjs/help/manager-help.js.map +1 -0
  69. package/dist/cjs/help/registry.js +39 -0
  70. package/dist/cjs/help/registry.js.map +1 -0
  71. package/dist/cjs/help/types.js +3 -0
  72. package/dist/cjs/help/types.js.map +1 -0
  73. package/dist/cjs/layouts.js +3 -2
  74. package/dist/cjs/layouts.js.map +1 -1
  75. package/dist/cjs/lib/media.js +9 -0
  76. package/dist/cjs/lib/media.js.map +1 -1
  77. package/dist/cjs/media.js +9 -0
  78. package/dist/cjs/media.js.map +1 -1
  79. package/dist/cjs/router/dashboard/[contentType]/(list)/columns.js +57 -5
  80. package/dist/cjs/router/dashboard/[contentType]/(list)/columns.js.map +1 -1
  81. package/dist/cjs/router/dashboard/[contentType]/(list)/delete.js +5 -3
  82. package/dist/cjs/router/dashboard/[contentType]/(list)/delete.js.map +1 -1
  83. package/dist/cjs/router/dashboard/[contentType]/(list)/list.js +269 -19
  84. package/dist/cjs/router/dashboard/[contentType]/(list)/list.js.map +1 -1
  85. package/dist/cjs/router/dashboard/[contentType]/(list)/screen.js +1 -1
  86. package/dist/cjs/router/dashboard/[contentType]/(list)/screen.js.map +1 -1
  87. package/dist/cjs/router/dashboard/[contentType]/(list)/tour.js +24 -0
  88. package/dist/cjs/router/dashboard/[contentType]/(list)/tour.js.map +1 -0
  89. package/dist/cjs/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js +70 -25
  90. package/dist/cjs/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js.map +1 -1
  91. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/DocumentTranslationDialog.js +45 -0
  92. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/DocumentTranslationDialog.js.map +1 -0
  93. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js +19 -0
  94. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js.map +1 -0
  95. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js +33 -0
  96. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js.map +1 -0
  97. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.js +20 -0
  98. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.js.map +1 -0
  99. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/RouteLayoutModuleTabContent.js +83 -0
  100. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/RouteLayoutModuleTabContent.js.map +1 -0
  101. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/TrashDialogs.js +14 -0
  102. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/TrashDialogs.js.map +1 -0
  103. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/Versions.js +371 -0
  104. package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/Versions.js.map +1 -0
  105. package/dist/cjs/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js +206 -0
  106. package/dist/cjs/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js.map +1 -0
  107. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/Date/DateTimeUI.js +2 -2
  108. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/Date/DateTimeUI.js.map +1 -1
  109. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/Date/DateUI.js +2 -2
  110. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/Date/DateUI.js.map +1 -1
  111. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/Date/TimeUI.js +2 -2
  112. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/Date/TimeUI.js.map +1 -1
  113. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/FileField/index.js +114 -44
  114. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/FileField/index.js.map +1 -1
  115. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.js +3 -3
  116. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.js.map +1 -1
  117. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/ListUI.js +18 -1
  118. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/ListField/ListUI.js.map +1 -1
  119. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/NumberField/NumberUI.js +2 -2
  120. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/NumberField/NumberUI.js.map +1 -1
  121. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/RelationField/SelfRelationUI.js +117 -0
  122. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/RelationField/SelfRelationUI.js.map +1 -0
  123. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/RelationField/index.js +2 -0
  124. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/RelationField/index.js.map +1 -1
  125. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/StringField/EmailUI.js +2 -2
  126. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/StringField/EmailUI.js.map +1 -1
  127. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/StringField/PasswordUI.js +2 -2
  128. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/StringField/PasswordUI.js.map +1 -1
  129. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/StringField/SlugUI.js +2 -2
  130. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/StringField/SlugUI.js.map +1 -1
  131. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/StringField/TextUI.js +2 -2
  132. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/StringField/TextUI.js.map +1 -1
  133. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/StringField/TextareaUI.js +2 -2
  134. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/StringField/TextareaUI.js.map +1 -1
  135. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/StringField/UrlUi.js +2 -2
  136. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/StringField/UrlUi.js.map +1 -1
  137. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/shared/FieldWrapper.js +5 -0
  138. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/shared/FieldWrapper.js.map +1 -1
  139. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/shared/condition-state.js +9 -0
  140. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/shared/condition-state.js.map +1 -0
  141. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/shared/condition.js +50 -0
  142. package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/shared/condition.js.map +1 -0
  143. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js +165 -0
  144. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js.map +1 -0
  145. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.js +230 -0
  146. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.js.map +1 -0
  147. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentTypeSections.js +38 -0
  148. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentTypeSections.js.map +1 -0
  149. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useEditFormController.js +59 -0
  150. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useEditFormController.js.map +1 -0
  151. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useEditTabErrors.js +33 -0
  152. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useEditTabErrors.js.map +1 -0
  153. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useRouteLayoutData.js +92 -0
  154. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useRouteLayoutData.js.map +1 -0
  155. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useTranslationDialogState.js +34 -0
  156. package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useTranslationDialogState.js.map +1 -0
  157. package/dist/cjs/router/dashboard/[contentType]/[edit]/edit.js +23 -285
  158. package/dist/cjs/router/dashboard/[contentType]/[edit]/edit.js.map +1 -1
  159. package/dist/cjs/router/dashboard/[contentType]/[edit]/edit.styles.js +12 -0
  160. package/dist/cjs/router/dashboard/[contentType]/[edit]/edit.styles.js.map +1 -0
  161. package/dist/cjs/router/dashboard/[contentType]/[edit]/edit.types.js +3 -0
  162. package/dist/cjs/router/dashboard/[contentType]/[edit]/edit.types.js.map +1 -0
  163. package/dist/cjs/router/dashboard/[contentType]/[edit]/screen.js +2 -2
  164. package/dist/cjs/router/dashboard/[contentType]/[edit]/screen.js.map +1 -1
  165. package/dist/cjs/router/dashboard/[contentType]/[edit]/tour.js +36 -0
  166. package/dist/cjs/router/dashboard/[contentType]/[edit]/tour.js.map +1 -0
  167. package/dist/cjs/router/dashboard/[contentType]/create/screen.js +2 -2
  168. package/dist/cjs/router/dashboard/[contentType]/create/screen.js.map +1 -1
  169. package/dist/cjs/router/dashboard/[contentType]/create/tour.js +30 -0
  170. package/dist/cjs/router/dashboard/[contentType]/create/tour.js.map +1 -0
  171. package/dist/cjs/router/dashboard/account/mfa/Mfa.js +1 -1
  172. package/dist/cjs/router/dashboard/account/mfa/Mfa.js.map +1 -1
  173. package/dist/cjs/router/dashboard/account/screen.js +84 -3
  174. package/dist/cjs/router/dashboard/account/screen.js.map +1 -1
  175. package/dist/cjs/router/dashboard/account/sessions/Sessions.js +1 -1
  176. package/dist/cjs/router/dashboard/account/sessions/Sessions.js.map +1 -1
  177. package/dist/cjs/router/dashboard/account/sessions/columns.js +2 -1
  178. package/dist/cjs/router/dashboard/account/sessions/columns.js.map +1 -1
  179. package/dist/cjs/router/dashboard/account/tour.js +30 -0
  180. package/dist/cjs/router/dashboard/account/tour.js.map +1 -0
  181. package/dist/cjs/router/dashboard/api-routes/ApiTest.js +33 -31
  182. package/dist/cjs/router/dashboard/api-routes/ApiTest.js.map +1 -1
  183. package/dist/cjs/router/dashboard/api-routes/SchemaViewer.js +92 -0
  184. package/dist/cjs/router/dashboard/api-routes/SchemaViewer.js.map +1 -0
  185. package/dist/cjs/router/dashboard/api-routes/screen.js +6 -0
  186. package/dist/cjs/router/dashboard/api-routes/screen.js.map +1 -1
  187. package/dist/cjs/router/dashboard/api-routes/shared.js +4 -5
  188. package/dist/cjs/router/dashboard/api-routes/shared.js.map +1 -1
  189. package/dist/cjs/router/dashboard/api-routes/test.js +8 -3
  190. package/dist/cjs/router/dashboard/api-routes/test.js.map +1 -1
  191. package/dist/cjs/router/dashboard/api-routes/tour.js +30 -0
  192. package/dist/cjs/router/dashboard/api-routes/tour.js.map +1 -0
  193. package/dist/cjs/router/dashboard/media/tour.js +30 -0
  194. package/dist/cjs/router/dashboard/media/tour.js.map +1 -0
  195. package/dist/cjs/router/dashboard/settings/languages/columns.js +11 -13
  196. package/dist/cjs/router/dashboard/settings/languages/columns.js.map +1 -1
  197. package/dist/cjs/router/dashboard/settings/languages/screen.js +3 -2
  198. package/dist/cjs/router/dashboard/settings/languages/screen.js.map +1 -1
  199. package/dist/cjs/router/dashboard/settings/literals/screen.js +47 -36
  200. package/dist/cjs/router/dashboard/settings/literals/screen.js.map +1 -1
  201. package/dist/cjs/router/dashboard/settings/literals/tour.js +24 -0
  202. package/dist/cjs/router/dashboard/settings/literals/tour.js.map +1 -0
  203. package/dist/cjs/router/dashboard/settings/redirects/columns.js +2 -1
  204. package/dist/cjs/router/dashboard/settings/redirects/columns.js.map +1 -1
  205. package/dist/cjs/router/dashboard/settings/redirects/screen.js +78 -100
  206. package/dist/cjs/router/dashboard/settings/redirects/screen.js.map +1 -1
  207. package/dist/cjs/router/dashboard/settings/redirects/tour.js +24 -0
  208. package/dist/cjs/router/dashboard/settings/redirects/tour.js.map +1 -0
  209. package/dist/cjs/router/dashboard/settings/robots/columns.js +54 -0
  210. package/dist/cjs/router/dashboard/settings/robots/columns.js.map +1 -0
  211. package/dist/cjs/router/dashboard/settings/robots/index.js +6 -0
  212. package/dist/cjs/router/dashboard/settings/robots/index.js.map +1 -0
  213. package/dist/cjs/router/dashboard/settings/robots/screen.js +180 -0
  214. package/dist/cjs/router/dashboard/settings/robots/screen.js.map +1 -0
  215. package/dist/cjs/router/dashboard/settings/routes/columns.js +3 -2
  216. package/dist/cjs/router/dashboard/settings/routes/columns.js.map +1 -1
  217. package/dist/cjs/router/dashboard/settings/routes/paths/columns.js +17 -7
  218. package/dist/cjs/router/dashboard/settings/routes/paths/columns.js.map +1 -1
  219. package/dist/cjs/router/dashboard/settings/routes/paths/screen.js +34 -2
  220. package/dist/cjs/router/dashboard/settings/routes/paths/screen.js.map +1 -1
  221. package/dist/cjs/router/dashboard/settings/routes/paths/tour.js +24 -0
  222. package/dist/cjs/router/dashboard/settings/routes/paths/tour.js.map +1 -0
  223. package/dist/cjs/router/dashboard/settings/routes/screen.js +10 -9
  224. package/dist/cjs/router/dashboard/settings/routes/screen.js.map +1 -1
  225. package/dist/cjs/router/dashboard/settings/routes/tour.js +24 -0
  226. package/dist/cjs/router/dashboard/settings/routes/tour.js.map +1 -0
  227. package/dist/cjs/router/dashboard/settings/screen.js +29 -6
  228. package/dist/cjs/router/dashboard/settings/screen.js.map +1 -1
  229. package/dist/cjs/router/dashboard/settings/seo/index.js +6 -0
  230. package/dist/cjs/router/dashboard/settings/seo/index.js.map +1 -0
  231. package/dist/cjs/router/dashboard/settings/seo/screen.js +109 -0
  232. package/dist/cjs/router/dashboard/settings/seo/screen.js.map +1 -0
  233. package/dist/cjs/router/dashboard/settings/system/index.js +6 -0
  234. package/dist/cjs/router/dashboard/settings/system/index.js.map +1 -0
  235. package/dist/cjs/router/dashboard/settings/system/screen.js +90 -0
  236. package/dist/cjs/router/dashboard/settings/system/screen.js.map +1 -0
  237. package/dist/cjs/router/dashboard/settings/system/tour.js +24 -0
  238. package/dist/cjs/router/dashboard/settings/system/tour.js.map +1 -0
  239. package/dist/cjs/router/dashboard/settings/tour.js +54 -0
  240. package/dist/cjs/router/dashboard/settings/tour.js.map +1 -0
  241. package/dist/cjs/router/dashboard/settings/user-roles/screen.js +3 -2
  242. package/dist/cjs/router/dashboard/settings/user-roles/screen.js.map +1 -1
  243. package/dist/cjs/router/dashboard/tour.js +30 -0
  244. package/dist/cjs/router/dashboard/tour.js.map +1 -0
  245. package/dist/cjs/router/dashboard/users/columns.js +2 -1
  246. package/dist/cjs/router/dashboard/users/columns.js.map +1 -1
  247. package/dist/cjs/router/dashboard/users/screen.js +8 -7
  248. package/dist/cjs/router/dashboard/users/screen.js.map +1 -1
  249. package/dist/cjs/router/dashboard/users/tour.js +24 -0
  250. package/dist/cjs/router/dashboard/users/tour.js.map +1 -0
  251. package/dist/cjs/router/shared/route-definitions.js +3 -1
  252. package/dist/cjs/router/shared/route-definitions.js.map +1 -1
  253. package/dist/cjs/router/shared/route-list.js +33 -3
  254. package/dist/cjs/router/shared/route-list.js.map +1 -1
  255. package/dist/cjs/router/shared/route-schema.js.map +1 -1
  256. package/dist/cjs/state/theme.js +33 -16
  257. package/dist/cjs/state/theme.js.map +1 -1
  258. package/dist/esm/app/app-provider.d.ts.map +1 -1
  259. package/dist/esm/app/app-provider.js +78 -2
  260. package/dist/esm/app/app-provider.js.map +1 -1
  261. package/dist/esm/app/media-picker.d.ts +3 -0
  262. package/dist/esm/app/media-picker.d.ts.map +1 -0
  263. package/dist/esm/app/media-picker.js +10 -0
  264. package/dist/esm/app/media-picker.js.map +1 -0
  265. package/dist/esm/app/root-providers.d.ts.map +1 -1
  266. package/dist/esm/app/root-providers.js +2 -2
  267. package/dist/esm/app/root-providers.js.map +1 -1
  268. package/dist/esm/app/runtime-app.d.ts +5 -1
  269. package/dist/esm/app/runtime-app.d.ts.map +1 -1
  270. package/dist/esm/app/runtime-app.js +4 -2
  271. package/dist/esm/app/runtime-app.js.map +1 -1
  272. package/dist/esm/client/http.d.ts +2 -1
  273. package/dist/esm/client/http.d.ts.map +1 -1
  274. package/dist/esm/client/http.js +42 -1
  275. package/dist/esm/client/http.js.map +1 -1
  276. package/dist/esm/client/request.d.ts +7 -1
  277. package/dist/esm/client/request.d.ts.map +1 -1
  278. package/dist/esm/client/request.js +2 -1
  279. package/dist/esm/client/request.js.map +1 -1
  280. package/dist/esm/components/LanguageSelector.js +4 -2
  281. package/dist/esm/components/LanguageSelector.js.map +1 -1
  282. package/dist/esm/components/PaginationController.d.ts +1 -0
  283. package/dist/esm/components/PaginationController.d.ts.map +1 -1
  284. package/dist/esm/components/PaginationController.js +10 -3
  285. package/dist/esm/components/PaginationController.js.map +1 -1
  286. package/dist/esm/components/app-sidebar.d.ts +2 -0
  287. package/dist/esm/components/app-sidebar.d.ts.map +1 -1
  288. package/dist/esm/components/app-sidebar.js +14 -8
  289. package/dist/esm/components/app-sidebar.js.map +1 -1
  290. package/dist/esm/components/boolean-indicator.d.ts +7 -0
  291. package/dist/esm/components/boolean-indicator.d.ts.map +1 -0
  292. package/dist/esm/components/boolean-indicator.js +11 -0
  293. package/dist/esm/components/boolean-indicator.js.map +1 -0
  294. package/dist/esm/components/manager-loading-fallback.d.ts.map +1 -1
  295. package/dist/esm/components/manager-loading-fallback.js +1 -1
  296. package/dist/esm/components/manager-loading-fallback.js.map +1 -1
  297. package/dist/esm/components/media/MediaLibrary.d.ts +1 -1
  298. package/dist/esm/components/media/MediaLibrary.d.ts.map +1 -1
  299. package/dist/esm/components/media/MediaLibrary.js +11 -6
  300. package/dist/esm/components/media/MediaLibrary.js.map +1 -1
  301. package/dist/esm/components/media/contexts/MediaLibraryContext.d.ts +2 -0
  302. package/dist/esm/components/media/contexts/MediaLibraryContext.d.ts.map +1 -1
  303. package/dist/esm/components/media/contexts/MediaLibraryContext.js.map +1 -1
  304. package/dist/esm/components/media/folders/FoldersTree.d.ts.map +1 -1
  305. package/dist/esm/components/media/folders/FoldersTree.js +6 -8
  306. package/dist/esm/components/media/folders/FoldersTree.js.map +1 -1
  307. package/dist/esm/components/media/previews/MediaContextMenuContent.d.ts.map +1 -1
  308. package/dist/esm/components/media/previews/MediaContextMenuContent.js +4 -3
  309. package/dist/esm/components/media/previews/MediaContextMenuContent.js.map +1 -1
  310. package/dist/esm/components/media/previews/Previews.d.ts.map +1 -1
  311. package/dist/esm/components/media/previews/Previews.js +344 -77
  312. package/dist/esm/components/media/previews/Previews.js.map +1 -1
  313. package/dist/esm/components/media/previews/context/MediaPreviewContext.d.ts +11 -0
  314. package/dist/esm/components/media/previews/context/MediaPreviewContext.d.ts.map +1 -1
  315. package/dist/esm/components/media/previews/context/MediaPreviewContext.js.map +1 -1
  316. package/dist/esm/components/media/previews/dialogs/ExpandedPreviewDialog.d.ts +8 -2
  317. package/dist/esm/components/media/previews/dialogs/ExpandedPreviewDialog.d.ts.map +1 -1
  318. package/dist/esm/components/media/previews/dialogs/ExpandedPreviewDialog.js +43 -19
  319. package/dist/esm/components/media/previews/dialogs/ExpandedPreviewDialog.js.map +1 -1
  320. package/dist/esm/components/media/previews/dialogs/MediaDeleteDialog.d.ts +1 -0
  321. package/dist/esm/components/media/previews/dialogs/MediaDeleteDialog.d.ts.map +1 -1
  322. package/dist/esm/components/media/previews/dialogs/MediaDeleteDialog.js +10 -1
  323. package/dist/esm/components/media/previews/dialogs/MediaDeleteDialog.js.map +1 -1
  324. package/dist/esm/components/media/previews/dialogs/MediaImageEditorDialog.d.ts +11 -0
  325. package/dist/esm/components/media/previews/dialogs/MediaImageEditorDialog.d.ts.map +1 -0
  326. package/dist/esm/components/media/previews/dialogs/MediaImageEditorDialog.js +415 -0
  327. package/dist/esm/components/media/previews/dialogs/MediaImageEditorDialog.js.map +1 -0
  328. package/dist/esm/components/media/previews/dialogs/MediaMoveDialog.d.ts +2 -1
  329. package/dist/esm/components/media/previews/dialogs/MediaMoveDialog.d.ts.map +1 -1
  330. package/dist/esm/components/media/previews/dialogs/MediaMoveDialog.js +6 -2
  331. package/dist/esm/components/media/previews/dialogs/MediaMoveDialog.js.map +1 -1
  332. package/dist/esm/components/media/previews/toolbar/PreviewsToolbar.d.ts +1 -0
  333. package/dist/esm/components/media/previews/toolbar/PreviewsToolbar.d.ts.map +1 -1
  334. package/dist/esm/components/media/previews/toolbar/PreviewsToolbar.js +14 -8
  335. package/dist/esm/components/media/previews/toolbar/PreviewsToolbar.js.map +1 -1
  336. package/dist/esm/components/media/previews/views/PreviewsGridLargeView.d.ts +1 -1
  337. package/dist/esm/components/media/previews/views/PreviewsGridLargeView.d.ts.map +1 -1
  338. package/dist/esm/components/media/previews/views/PreviewsGridLargeView.js +2 -2
  339. package/dist/esm/components/media/previews/views/PreviewsGridLargeView.js.map +1 -1
  340. package/dist/esm/components/media/previews/views/PreviewsGridSmallView.d.ts +1 -1
  341. package/dist/esm/components/media/previews/views/PreviewsGridSmallView.d.ts.map +1 -1
  342. package/dist/esm/components/media/previews/views/PreviewsGridSmallView.js +2 -2
  343. package/dist/esm/components/media/previews/views/PreviewsGridSmallView.js.map +1 -1
  344. package/dist/esm/components/media/previews/views/PreviewsListView.d.ts.map +1 -1
  345. package/dist/esm/components/media/previews/views/PreviewsListView.js +15 -2
  346. package/dist/esm/components/media/previews/views/PreviewsListView.js.map +1 -1
  347. package/dist/esm/components/nav-secondary.d.ts +2 -0
  348. package/dist/esm/components/nav-secondary.d.ts.map +1 -1
  349. package/dist/esm/components/nav-secondary.js +5 -2
  350. package/dist/esm/components/nav-secondary.js.map +1 -1
  351. package/dist/esm/components/nav-user.d.ts.map +1 -1
  352. package/dist/esm/components/nav-user.js +21 -18
  353. package/dist/esm/components/nav-user.js.map +1 -1
  354. package/dist/esm/components/ui/button.d.ts +1 -1
  355. package/dist/esm/components/ui/button.d.ts.map +1 -1
  356. package/dist/esm/components/ui/button.js +27 -14
  357. package/dist/esm/components/ui/button.js.map +1 -1
  358. package/dist/esm/components/ui/data-table.d.ts +5 -2
  359. package/dist/esm/components/ui/data-table.d.ts.map +1 -1
  360. package/dist/esm/components/ui/data-table.js +26 -23
  361. package/dist/esm/components/ui/data-table.js.map +1 -1
  362. package/dist/esm/components/ui/sidebar.d.ts.map +1 -1
  363. package/dist/esm/components/ui/sidebar.js +33 -34
  364. package/dist/esm/components/ui/sidebar.js.map +1 -1
  365. package/dist/esm/components/ui/skeleton.js +1 -1
  366. package/dist/esm/components/ui/skeleton.js.map +1 -1
  367. package/dist/esm/components/ui/tabs.d.ts +1 -1
  368. package/dist/esm/components/ui/tags-input.js +1 -1
  369. package/dist/esm/components/ui/tags-input.js.map +1 -1
  370. package/dist/esm/components/ui/tour.d.ts +105 -0
  371. package/dist/esm/components/ui/tour.d.ts.map +1 -0
  372. package/dist/esm/components/ui/tour.js +932 -0
  373. package/dist/esm/components/ui/tour.js.map +1 -0
  374. package/dist/esm/components/user-avatar.d.ts +13 -0
  375. package/dist/esm/components/user-avatar.d.ts.map +1 -0
  376. package/dist/esm/components/user-avatar.js +36 -0
  377. package/dist/esm/components/user-avatar.js.map +1 -0
  378. package/dist/esm/help/manager-help.d.ts +16 -0
  379. package/dist/esm/help/manager-help.d.ts.map +1 -0
  380. package/dist/esm/help/manager-help.js +127 -0
  381. package/dist/esm/help/manager-help.js.map +1 -0
  382. package/dist/esm/help/registry.d.ts +5 -0
  383. package/dist/esm/help/registry.d.ts.map +1 -0
  384. package/dist/esm/help/registry.js +35 -0
  385. package/dist/esm/help/registry.js.map +1 -0
  386. package/dist/esm/help/types.d.ts +16 -0
  387. package/dist/esm/help/types.d.ts.map +1 -0
  388. package/dist/esm/help/types.js +2 -0
  389. package/dist/esm/help/types.js.map +1 -0
  390. package/dist/esm/hooks/use-isomorphic-layout-effect.d.ts +1 -1
  391. package/dist/esm/hooks/use-isomorphic-layout-effect.d.ts.map +1 -1
  392. package/dist/esm/layouts.d.ts +7 -4
  393. package/dist/esm/layouts.d.ts.map +1 -1
  394. package/dist/esm/layouts.js +8 -7
  395. package/dist/esm/layouts.js.map +1 -1
  396. package/dist/esm/lib/media.d.ts +14 -0
  397. package/dist/esm/lib/media.d.ts.map +1 -1
  398. package/dist/esm/lib/media.js +9 -0
  399. package/dist/esm/lib/media.js.map +1 -1
  400. package/dist/esm/media.d.ts +14 -0
  401. package/dist/esm/media.d.ts.map +1 -1
  402. package/dist/esm/media.js +9 -0
  403. package/dist/esm/media.js.map +1 -1
  404. package/dist/esm/router/dashboard/[contentType]/(list)/columns.d.ts +10 -1
  405. package/dist/esm/router/dashboard/[contentType]/(list)/columns.d.ts.map +1 -1
  406. package/dist/esm/router/dashboard/[contentType]/(list)/columns.js +58 -6
  407. package/dist/esm/router/dashboard/[contentType]/(list)/columns.js.map +1 -1
  408. package/dist/esm/router/dashboard/[contentType]/(list)/delete.d.ts +1 -0
  409. package/dist/esm/router/dashboard/[contentType]/(list)/delete.d.ts.map +1 -1
  410. package/dist/esm/router/dashboard/[contentType]/(list)/delete.js +5 -3
  411. package/dist/esm/router/dashboard/[contentType]/(list)/delete.js.map +1 -1
  412. package/dist/esm/router/dashboard/[contentType]/(list)/list.d.ts +1 -0
  413. package/dist/esm/router/dashboard/[contentType]/(list)/list.d.ts.map +1 -1
  414. package/dist/esm/router/dashboard/[contentType]/(list)/list.js +270 -20
  415. package/dist/esm/router/dashboard/[contentType]/(list)/list.js.map +1 -1
  416. package/dist/esm/router/dashboard/[contentType]/(list)/screen.d.ts +2 -1
  417. package/dist/esm/router/dashboard/[contentType]/(list)/screen.d.ts.map +1 -1
  418. package/dist/esm/router/dashboard/[contentType]/(list)/screen.js +1 -1
  419. package/dist/esm/router/dashboard/[contentType]/(list)/screen.js.map +1 -1
  420. package/dist/esm/router/dashboard/[contentType]/(list)/tour.d.ts +3 -0
  421. package/dist/esm/router/dashboard/[contentType]/(list)/tour.d.ts.map +1 -0
  422. package/dist/esm/router/dashboard/[contentType]/(list)/tour.js +21 -0
  423. package/dist/esm/router/dashboard/[contentType]/(list)/tour.js.map +1 -0
  424. package/dist/esm/router/dashboard/[contentType]/[edit]/ContentTypeEdit.d.ts +1 -0
  425. package/dist/esm/router/dashboard/[contentType]/[edit]/ContentTypeEdit.d.ts.map +1 -1
  426. package/dist/esm/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js +71 -26
  427. package/dist/esm/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js.map +1 -1
  428. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/DocumentTranslationDialog.d.ts +2 -0
  429. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/DocumentTranslationDialog.d.ts.map +1 -0
  430. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/DocumentTranslationDialog.js +41 -0
  431. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/DocumentTranslationDialog.js.map +1 -0
  432. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.d.ts +2 -0
  433. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.d.ts.map +1 -0
  434. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js +12 -0
  435. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js.map +1 -0
  436. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditToolbar.d.ts +2 -0
  437. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditToolbar.d.ts.map +1 -0
  438. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js +29 -0
  439. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js.map +1 -0
  440. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.d.ts +2 -0
  441. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.d.ts.map +1 -0
  442. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.js +16 -0
  443. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/PreviewPanel.js.map +1 -0
  444. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/RouteLayoutModuleTabContent.d.ts +5 -0
  445. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/RouteLayoutModuleTabContent.d.ts.map +1 -0
  446. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/RouteLayoutModuleTabContent.js +79 -0
  447. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/RouteLayoutModuleTabContent.js.map +1 -0
  448. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/TrashDialogs.d.ts +2 -0
  449. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/TrashDialogs.d.ts.map +1 -0
  450. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/TrashDialogs.js +10 -0
  451. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/TrashDialogs.js.map +1 -0
  452. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/Versions.d.ts +8 -0
  453. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/Versions.d.ts.map +1 -0
  454. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/Versions.js +367 -0
  455. package/dist/esm/router/dashboard/[contentType]/[edit]/_components/Versions.js.map +1 -0
  456. package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.d.ts +45 -0
  457. package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.d.ts.map +1 -0
  458. package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js +201 -0
  459. package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js.map +1 -0
  460. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/Date/DateTimeUI.js +1 -1
  461. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/Date/DateTimeUI.js.map +1 -1
  462. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/Date/DateUI.js +1 -1
  463. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/Date/DateUI.js.map +1 -1
  464. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/Date/TimeUI.js +1 -1
  465. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/Date/TimeUI.js.map +1 -1
  466. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/FileField/index.d.ts.map +1 -1
  467. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/FileField/index.js +115 -45
  468. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/FileField/index.js.map +1 -1
  469. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.js +1 -1
  470. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.js.map +1 -1
  471. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/ListUI.d.ts.map +1 -1
  472. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/ListUI.js +18 -1
  473. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/ListField/ListUI.js.map +1 -1
  474. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/NumberField/NumberUI.js +1 -1
  475. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/NumberField/NumberUI.js.map +1 -1
  476. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/SelfRelationUI.d.ts +4 -0
  477. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/SelfRelationUI.d.ts.map +1 -0
  478. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/SelfRelationUI.js +79 -0
  479. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/SelfRelationUI.js.map +1 -0
  480. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/index.d.ts +2 -0
  481. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/index.d.ts.map +1 -1
  482. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/index.js +2 -0
  483. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/index.js.map +1 -1
  484. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/StringField/EmailUI.js +1 -1
  485. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/StringField/EmailUI.js.map +1 -1
  486. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/StringField/PasswordUI.js +1 -1
  487. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/StringField/PasswordUI.js.map +1 -1
  488. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/StringField/SlugUI.js +1 -1
  489. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/StringField/SlugUI.js.map +1 -1
  490. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/StringField/TextUI.js +1 -1
  491. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/StringField/TextUI.js.map +1 -1
  492. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/StringField/TextareaUI.js +1 -1
  493. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/StringField/TextareaUI.js.map +1 -1
  494. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/StringField/UrlUi.js +1 -1
  495. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/StringField/UrlUi.js.map +1 -1
  496. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/FieldWrapper.d.ts.map +1 -1
  497. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/FieldWrapper.js +6 -1
  498. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/FieldWrapper.js.map +1 -1
  499. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/condition-state.d.ts +7 -0
  500. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/condition-state.d.ts.map +1 -0
  501. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/condition-state.js +5 -0
  502. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/condition-state.js.map +1 -0
  503. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/condition.d.ts +3 -0
  504. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/condition.d.ts.map +1 -0
  505. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/condition.js +46 -0
  506. package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/shared/condition.js.map +1 -0
  507. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.d.ts +35 -0
  508. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.d.ts.map +1 -0
  509. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js +161 -0
  510. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js.map +1 -0
  511. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.d.ts +38 -0
  512. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.d.ts.map +1 -0
  513. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.js +226 -0
  514. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentPreview.js.map +1 -0
  515. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentTypeSections.d.ts +11 -0
  516. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentTypeSections.d.ts.map +1 -0
  517. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentTypeSections.js +34 -0
  518. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentTypeSections.js.map +1 -0
  519. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useEditFormController.d.ts +26 -0
  520. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useEditFormController.d.ts.map +1 -0
  521. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useEditFormController.js +55 -0
  522. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useEditFormController.js.map +1 -0
  523. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useEditTabErrors.d.ts +15 -0
  524. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useEditTabErrors.d.ts.map +1 -0
  525. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useEditTabErrors.js +29 -0
  526. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useEditTabErrors.js.map +1 -0
  527. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useRouteLayoutData.d.ts +17 -0
  528. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useRouteLayoutData.d.ts.map +1 -0
  529. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useRouteLayoutData.js +88 -0
  530. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useRouteLayoutData.js.map +1 -0
  531. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useTranslationDialogState.d.ts +19 -0
  532. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useTranslationDialogState.d.ts.map +1 -0
  533. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useTranslationDialogState.js +30 -0
  534. package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useTranslationDialogState.js.map +1 -0
  535. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.d.ts +2 -9
  536. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.d.ts.map +1 -1
  537. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.js +26 -284
  538. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.js.map +1 -1
  539. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.styles.d.ts +4 -0
  540. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.styles.d.ts.map +1 -0
  541. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.styles.js +9 -0
  542. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.styles.js.map +1 -0
  543. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.types.d.ts +44 -0
  544. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.types.d.ts.map +1 -0
  545. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.types.js +2 -0
  546. package/dist/esm/router/dashboard/[contentType]/[edit]/edit.types.js.map +1 -0
  547. package/dist/esm/router/dashboard/[contentType]/[edit]/screen.d.ts +3 -1
  548. package/dist/esm/router/dashboard/[contentType]/[edit]/screen.d.ts.map +1 -1
  549. package/dist/esm/router/dashboard/[contentType]/[edit]/screen.js +2 -2
  550. package/dist/esm/router/dashboard/[contentType]/[edit]/screen.js.map +1 -1
  551. package/dist/esm/router/dashboard/[contentType]/[edit]/tour.d.ts +3 -0
  552. package/dist/esm/router/dashboard/[contentType]/[edit]/tour.d.ts.map +1 -0
  553. package/dist/esm/router/dashboard/[contentType]/[edit]/tour.js +33 -0
  554. package/dist/esm/router/dashboard/[contentType]/[edit]/tour.js.map +1 -0
  555. package/dist/esm/router/dashboard/[contentType]/create/screen.d.ts +3 -1
  556. package/dist/esm/router/dashboard/[contentType]/create/screen.d.ts.map +1 -1
  557. package/dist/esm/router/dashboard/[contentType]/create/screen.js +2 -2
  558. package/dist/esm/router/dashboard/[contentType]/create/screen.js.map +1 -1
  559. package/dist/esm/router/dashboard/[contentType]/create/tour.d.ts +3 -0
  560. package/dist/esm/router/dashboard/[contentType]/create/tour.d.ts.map +1 -0
  561. package/dist/esm/router/dashboard/[contentType]/create/tour.js +27 -0
  562. package/dist/esm/router/dashboard/[contentType]/create/tour.js.map +1 -0
  563. package/dist/esm/router/dashboard/account/mfa/Mfa.js +1 -1
  564. package/dist/esm/router/dashboard/account/mfa/Mfa.js.map +1 -1
  565. package/dist/esm/router/dashboard/account/screen.d.ts.map +1 -1
  566. package/dist/esm/router/dashboard/account/screen.js +83 -2
  567. package/dist/esm/router/dashboard/account/screen.js.map +1 -1
  568. package/dist/esm/router/dashboard/account/sessions/Sessions.js +1 -1
  569. package/dist/esm/router/dashboard/account/sessions/Sessions.js.map +1 -1
  570. package/dist/esm/router/dashboard/account/sessions/columns.d.ts.map +1 -1
  571. package/dist/esm/router/dashboard/account/sessions/columns.js +3 -2
  572. package/dist/esm/router/dashboard/account/sessions/columns.js.map +1 -1
  573. package/dist/esm/router/dashboard/account/tour.d.ts +3 -0
  574. package/dist/esm/router/dashboard/account/tour.d.ts.map +1 -0
  575. package/dist/esm/router/dashboard/account/tour.js +27 -0
  576. package/dist/esm/router/dashboard/account/tour.js.map +1 -0
  577. package/dist/esm/router/dashboard/api-routes/ApiTest.d.ts +1 -1
  578. package/dist/esm/router/dashboard/api-routes/ApiTest.d.ts.map +1 -1
  579. package/dist/esm/router/dashboard/api-routes/ApiTest.js +35 -33
  580. package/dist/esm/router/dashboard/api-routes/ApiTest.js.map +1 -1
  581. package/dist/esm/router/dashboard/api-routes/SchemaViewer.d.ts +4 -0
  582. package/dist/esm/router/dashboard/api-routes/SchemaViewer.d.ts.map +1 -0
  583. package/dist/esm/router/dashboard/api-routes/SchemaViewer.js +89 -0
  584. package/dist/esm/router/dashboard/api-routes/SchemaViewer.js.map +1 -0
  585. package/dist/esm/router/dashboard/api-routes/screen.d.ts.map +1 -1
  586. package/dist/esm/router/dashboard/api-routes/screen.js +6 -0
  587. package/dist/esm/router/dashboard/api-routes/screen.js.map +1 -1
  588. package/dist/esm/router/dashboard/api-routes/shared.d.ts +2 -4
  589. package/dist/esm/router/dashboard/api-routes/shared.d.ts.map +1 -1
  590. package/dist/esm/router/dashboard/api-routes/shared.js +4 -2
  591. package/dist/esm/router/dashboard/api-routes/shared.js.map +1 -1
  592. package/dist/esm/router/dashboard/api-routes/test.d.ts +6 -3
  593. package/dist/esm/router/dashboard/api-routes/test.d.ts.map +1 -1
  594. package/dist/esm/router/dashboard/api-routes/test.js +8 -3
  595. package/dist/esm/router/dashboard/api-routes/test.js.map +1 -1
  596. package/dist/esm/router/dashboard/api-routes/tour.d.ts +3 -0
  597. package/dist/esm/router/dashboard/api-routes/tour.d.ts.map +1 -0
  598. package/dist/esm/router/dashboard/api-routes/tour.js +27 -0
  599. package/dist/esm/router/dashboard/api-routes/tour.js.map +1 -0
  600. package/dist/esm/router/dashboard/media/tour.d.ts +3 -0
  601. package/dist/esm/router/dashboard/media/tour.d.ts.map +1 -0
  602. package/dist/esm/router/dashboard/media/tour.js +27 -0
  603. package/dist/esm/router/dashboard/media/tour.js.map +1 -0
  604. package/dist/esm/router/dashboard/settings/languages/columns.d.ts.map +1 -1
  605. package/dist/esm/router/dashboard/settings/languages/columns.js +12 -14
  606. package/dist/esm/router/dashboard/settings/languages/columns.js.map +1 -1
  607. package/dist/esm/router/dashboard/settings/languages/screen.d.ts.map +1 -1
  608. package/dist/esm/router/dashboard/settings/languages/screen.js +3 -2
  609. package/dist/esm/router/dashboard/settings/languages/screen.js.map +1 -1
  610. package/dist/esm/router/dashboard/settings/literals/screen.d.ts.map +1 -1
  611. package/dist/esm/router/dashboard/settings/literals/screen.js +63 -52
  612. package/dist/esm/router/dashboard/settings/literals/screen.js.map +1 -1
  613. package/dist/esm/router/dashboard/settings/literals/tour.d.ts +3 -0
  614. package/dist/esm/router/dashboard/settings/literals/tour.d.ts.map +1 -0
  615. package/dist/esm/router/dashboard/settings/literals/tour.js +21 -0
  616. package/dist/esm/router/dashboard/settings/literals/tour.js.map +1 -0
  617. package/dist/esm/router/dashboard/settings/redirects/columns.d.ts.map +1 -1
  618. package/dist/esm/router/dashboard/settings/redirects/columns.js +3 -2
  619. package/dist/esm/router/dashboard/settings/redirects/columns.js.map +1 -1
  620. package/dist/esm/router/dashboard/settings/redirects/screen.d.ts.map +1 -1
  621. package/dist/esm/router/dashboard/settings/redirects/screen.js +101 -123
  622. package/dist/esm/router/dashboard/settings/redirects/screen.js.map +1 -1
  623. package/dist/esm/router/dashboard/settings/redirects/tour.d.ts +3 -0
  624. package/dist/esm/router/dashboard/settings/redirects/tour.d.ts.map +1 -0
  625. package/dist/esm/router/dashboard/settings/redirects/tour.js +21 -0
  626. package/dist/esm/router/dashboard/settings/redirects/tour.js.map +1 -0
  627. package/dist/esm/router/dashboard/settings/robots/columns.d.ts +20 -0
  628. package/dist/esm/router/dashboard/settings/robots/columns.d.ts.map +1 -0
  629. package/dist/esm/router/dashboard/settings/robots/columns.js +50 -0
  630. package/dist/esm/router/dashboard/settings/robots/columns.js.map +1 -0
  631. package/dist/esm/router/dashboard/settings/robots/index.d.ts +2 -0
  632. package/dist/esm/router/dashboard/settings/robots/index.d.ts.map +1 -0
  633. package/dist/esm/router/dashboard/settings/robots/index.js +2 -0
  634. package/dist/esm/router/dashboard/settings/robots/index.js.map +1 -0
  635. package/dist/esm/router/dashboard/settings/robots/screen.d.ts +2 -0
  636. package/dist/esm/router/dashboard/settings/robots/screen.d.ts.map +1 -0
  637. package/dist/esm/router/dashboard/settings/robots/screen.js +173 -0
  638. package/dist/esm/router/dashboard/settings/robots/screen.js.map +1 -0
  639. package/dist/esm/router/dashboard/settings/routes/columns.d.ts.map +1 -1
  640. package/dist/esm/router/dashboard/settings/routes/columns.js +4 -3
  641. package/dist/esm/router/dashboard/settings/routes/columns.js.map +1 -1
  642. package/dist/esm/router/dashboard/settings/routes/paths/columns.d.ts.map +1 -1
  643. package/dist/esm/router/dashboard/settings/routes/paths/columns.js +18 -8
  644. package/dist/esm/router/dashboard/settings/routes/paths/columns.js.map +1 -1
  645. package/dist/esm/router/dashboard/settings/routes/paths/screen.d.ts.map +1 -1
  646. package/dist/esm/router/dashboard/settings/routes/paths/screen.js +35 -3
  647. package/dist/esm/router/dashboard/settings/routes/paths/screen.js.map +1 -1
  648. package/dist/esm/router/dashboard/settings/routes/paths/tour.d.ts +3 -0
  649. package/dist/esm/router/dashboard/settings/routes/paths/tour.d.ts.map +1 -0
  650. package/dist/esm/router/dashboard/settings/routes/paths/tour.js +21 -0
  651. package/dist/esm/router/dashboard/settings/routes/paths/tour.js.map +1 -0
  652. package/dist/esm/router/dashboard/settings/routes/screen.d.ts.map +1 -1
  653. package/dist/esm/router/dashboard/settings/routes/screen.js +10 -9
  654. package/dist/esm/router/dashboard/settings/routes/screen.js.map +1 -1
  655. package/dist/esm/router/dashboard/settings/routes/tour.d.ts +3 -0
  656. package/dist/esm/router/dashboard/settings/routes/tour.d.ts.map +1 -0
  657. package/dist/esm/router/dashboard/settings/routes/tour.js +21 -0
  658. package/dist/esm/router/dashboard/settings/routes/tour.js.map +1 -0
  659. package/dist/esm/router/dashboard/settings/screen.d.ts.map +1 -1
  660. package/dist/esm/router/dashboard/settings/screen.js +30 -7
  661. package/dist/esm/router/dashboard/settings/screen.js.map +1 -1
  662. package/dist/esm/router/dashboard/settings/seo/index.d.ts +2 -0
  663. package/dist/esm/router/dashboard/settings/seo/index.d.ts.map +1 -0
  664. package/dist/esm/router/dashboard/settings/seo/index.js +2 -0
  665. package/dist/esm/router/dashboard/settings/seo/index.js.map +1 -0
  666. package/dist/esm/router/dashboard/settings/seo/screen.d.ts +2 -0
  667. package/dist/esm/router/dashboard/settings/seo/screen.d.ts.map +1 -0
  668. package/dist/esm/router/dashboard/settings/seo/screen.js +102 -0
  669. package/dist/esm/router/dashboard/settings/seo/screen.js.map +1 -0
  670. package/dist/esm/router/dashboard/settings/system/index.d.ts +2 -0
  671. package/dist/esm/router/dashboard/settings/system/index.d.ts.map +1 -0
  672. package/dist/esm/router/dashboard/settings/system/index.js +2 -0
  673. package/dist/esm/router/dashboard/settings/system/index.js.map +1 -0
  674. package/dist/esm/router/dashboard/settings/system/screen.d.ts +2 -0
  675. package/dist/esm/router/dashboard/settings/system/screen.d.ts.map +1 -0
  676. package/dist/esm/router/dashboard/settings/system/screen.js +83 -0
  677. package/dist/esm/router/dashboard/settings/system/screen.js.map +1 -0
  678. package/dist/esm/router/dashboard/settings/system/tour.d.ts +3 -0
  679. package/dist/esm/router/dashboard/settings/system/tour.d.ts.map +1 -0
  680. package/dist/esm/router/dashboard/settings/system/tour.js +21 -0
  681. package/dist/esm/router/dashboard/settings/system/tour.js.map +1 -0
  682. package/dist/esm/router/dashboard/settings/tour.d.ts +20 -0
  683. package/dist/esm/router/dashboard/settings/tour.d.ts.map +1 -0
  684. package/dist/esm/router/dashboard/settings/tour.js +51 -0
  685. package/dist/esm/router/dashboard/settings/tour.js.map +1 -0
  686. package/dist/esm/router/dashboard/settings/user-roles/screen.d.ts.map +1 -1
  687. package/dist/esm/router/dashboard/settings/user-roles/screen.js +3 -2
  688. package/dist/esm/router/dashboard/settings/user-roles/screen.js.map +1 -1
  689. package/dist/esm/router/dashboard/tour.d.ts +3 -0
  690. package/dist/esm/router/dashboard/tour.d.ts.map +1 -0
  691. package/dist/esm/router/dashboard/tour.js +27 -0
  692. package/dist/esm/router/dashboard/tour.js.map +1 -0
  693. package/dist/esm/router/dashboard/users/columns.d.ts.map +1 -1
  694. package/dist/esm/router/dashboard/users/columns.js +3 -2
  695. package/dist/esm/router/dashboard/users/columns.js.map +1 -1
  696. package/dist/esm/router/dashboard/users/screen.d.ts.map +1 -1
  697. package/dist/esm/router/dashboard/users/screen.js +8 -7
  698. package/dist/esm/router/dashboard/users/screen.js.map +1 -1
  699. package/dist/esm/router/dashboard/users/tour.d.ts +3 -0
  700. package/dist/esm/router/dashboard/users/tour.d.ts.map +1 -0
  701. package/dist/esm/router/dashboard/users/tour.js +21 -0
  702. package/dist/esm/router/dashboard/users/tour.js.map +1 -0
  703. package/dist/esm/router/shared/route-definitions.d.ts +8 -2
  704. package/dist/esm/router/shared/route-definitions.d.ts.map +1 -1
  705. package/dist/esm/router/shared/route-definitions.js +3 -1
  706. package/dist/esm/router/shared/route-definitions.js.map +1 -1
  707. package/dist/esm/router/shared/route-list.d.ts +1 -1
  708. package/dist/esm/router/shared/route-list.d.ts.map +1 -1
  709. package/dist/esm/router/shared/route-list.js +30 -3
  710. package/dist/esm/router/shared/route-list.js.map +1 -1
  711. package/dist/esm/router/shared/route-schema.d.ts +3 -0
  712. package/dist/esm/router/shared/route-schema.d.ts.map +1 -1
  713. package/dist/esm/router/shared/route-schema.js.map +1 -1
  714. package/dist/esm/router/shared/types.d.ts +12 -1
  715. package/dist/esm/router/shared/types.d.ts.map +1 -1
  716. package/dist/esm/state/theme.d.ts +3 -0
  717. package/dist/esm/state/theme.d.ts.map +1 -1
  718. package/dist/esm/state/theme.js +31 -15
  719. package/dist/esm/state/theme.js.map +1 -1
  720. package/dist/styles.css +876 -135
  721. package/dist/tsconfig.build.tsbuildinfo +1 -1
  722. package/package.json +4 -3
@@ -0,0 +1,418 @@
1
+ "use strict";
2
+ 'use client';
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.default = MediaImageEditorDialog;
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const lucide_react_1 = require("lucide-react");
7
+ const react_1 = require("react");
8
+ const button_1 = require("../../../ui/button.js");
9
+ const dialog_1 = require("../../../ui/dialog.js");
10
+ const input_1 = require("../../../ui/input.js");
11
+ const label_1 = require("../../../ui/label.js");
12
+ const utils_1 = require("../../../../lib/utils.js");
13
+ const clamp = (value, min, max) => Math.max(min, Math.min(max, value));
14
+ const MIN_CROP_SIZE = 5;
15
+ const resizeHandles = [
16
+ {
17
+ mode: 'n',
18
+ label: 'Resize top edge',
19
+ className: 'left-1/2 top-0 h-7 w-20 -translate-x-1/2 -translate-y-1/2 cursor-ns-resize',
20
+ gripClassName: 'h-2 w-14 rounded-full',
21
+ },
22
+ {
23
+ mode: 's',
24
+ label: 'Resize bottom edge',
25
+ className: 'bottom-0 left-1/2 h-7 w-20 -translate-x-1/2 translate-y-1/2 cursor-ns-resize',
26
+ gripClassName: 'h-2 w-14 rounded-full',
27
+ },
28
+ {
29
+ mode: 'w',
30
+ label: 'Resize left edge',
31
+ className: 'left-0 top-1/2 h-20 w-7 -translate-x-1/2 -translate-y-1/2 cursor-ew-resize',
32
+ gripClassName: 'h-14 w-2 rounded-full',
33
+ },
34
+ {
35
+ mode: 'e',
36
+ label: 'Resize right edge',
37
+ className: 'right-0 top-1/2 h-20 w-7 -translate-y-1/2 translate-x-1/2 cursor-ew-resize',
38
+ gripClassName: 'h-14 w-2 rounded-full',
39
+ },
40
+ {
41
+ mode: 'nw',
42
+ label: 'Resize top left corner',
43
+ className: 'left-0 top-0 h-8 w-8 -translate-x-1/2 -translate-y-1/2 cursor-nwse-resize',
44
+ gripClassName: 'h-4 w-4 rounded-[4px]',
45
+ },
46
+ {
47
+ mode: 'ne',
48
+ label: 'Resize top right corner',
49
+ className: 'right-0 top-0 h-8 w-8 -translate-y-1/2 translate-x-1/2 cursor-nesw-resize',
50
+ gripClassName: 'h-4 w-4 rounded-[4px]',
51
+ },
52
+ {
53
+ mode: 'sw',
54
+ label: 'Resize bottom left corner',
55
+ className: 'bottom-0 left-0 h-8 w-8 -translate-x-1/2 translate-y-1/2 cursor-nesw-resize',
56
+ gripClassName: 'h-4 w-4 rounded-[4px]',
57
+ },
58
+ {
59
+ mode: 'se',
60
+ label: 'Resize bottom right corner',
61
+ className: 'bottom-0 right-0 h-8 w-8 translate-x-1/2 translate-y-1/2 cursor-nwse-resize',
62
+ gripClassName: 'h-4 w-4 rounded-[4px]',
63
+ },
64
+ ];
65
+ const cropInputs = [
66
+ { key: 'x', label: 'X' },
67
+ { key: 'y', label: 'Y' },
68
+ { key: 'width', label: 'W' },
69
+ { key: 'height', label: 'H' },
70
+ ];
71
+ const circleCropInputs = [
72
+ { key: 'x', label: 'X' },
73
+ { key: 'y', label: 'Y' },
74
+ { key: 'diameter', label: 'D' },
75
+ ];
76
+ const circleResizeHandles = resizeHandles.filter(({ mode }) => ['n', 'e', 's', 'w'].includes(mode));
77
+ const normalizeCrop = (crop) => {
78
+ const width = clamp(crop.width, MIN_CROP_SIZE, 100);
79
+ const height = clamp(crop.height, MIN_CROP_SIZE, 100);
80
+ return {
81
+ width,
82
+ height,
83
+ x: clamp(crop.x, 0, 100 - width),
84
+ y: clamp(crop.y, 0, 100 - height),
85
+ };
86
+ };
87
+ const cropToPixelRect = (crop, bounds) => {
88
+ const left = (crop.x / 100) * bounds.width;
89
+ const top = (crop.y / 100) * bounds.height;
90
+ const width = (crop.width / 100) * bounds.width;
91
+ const height = (crop.height / 100) * bounds.height;
92
+ return {
93
+ left,
94
+ top,
95
+ width,
96
+ height,
97
+ right: left + width,
98
+ bottom: top + height,
99
+ centerX: left + width / 2,
100
+ centerY: top + height / 2,
101
+ };
102
+ };
103
+ const minCircleDiameterFor = (bounds) => (Math.min(bounds.width, bounds.height) * MIN_CROP_SIZE) / 100;
104
+ const pixelCircleToCrop = ({ left, top, diameter, bounds, }) => {
105
+ const minDiameter = minCircleDiameterFor(bounds);
106
+ const nextDiameter = clamp(diameter, minDiameter, Math.min(bounds.width, bounds.height));
107
+ const nextLeft = clamp(left, 0, bounds.width - nextDiameter);
108
+ const nextTop = clamp(top, 0, bounds.height - nextDiameter);
109
+ return {
110
+ x: (nextLeft / bounds.width) * 100,
111
+ y: (nextTop / bounds.height) * 100,
112
+ width: (nextDiameter / bounds.width) * 100,
113
+ height: (nextDiameter / bounds.height) * 100,
114
+ };
115
+ };
116
+ const normalizeCircleCrop = (crop, bounds) => {
117
+ const rect = cropToPixelRect(crop, bounds);
118
+ const diameter = Math.min(rect.width, rect.height);
119
+ return pixelCircleToCrop({
120
+ left: rect.left,
121
+ top: rect.top,
122
+ diameter,
123
+ bounds,
124
+ });
125
+ };
126
+ const cropToCenteredCircle = (crop, bounds) => {
127
+ const rect = cropToPixelRect(crop, bounds);
128
+ const diameter = Math.min(rect.width, rect.height);
129
+ return pixelCircleToCrop({
130
+ left: rect.centerX - diameter / 2,
131
+ top: rect.centerY - diameter / 2,
132
+ diameter,
133
+ bounds,
134
+ });
135
+ };
136
+ const outputMimeFor = (mime, shape) => shape === 'circle'
137
+ ? 'image/png'
138
+ : mime === 'image/png' || mime === 'image/webp'
139
+ ? mime
140
+ : 'image/jpeg';
141
+ const extensionFor = (mime) => mime === 'image/png' ? 'png' : mime === 'image/webp' ? 'webp' : 'jpg';
142
+ const getCropFromPointer = ({ drag, event, bounds, shape, }) => {
143
+ const dx = ((event.clientX - drag.pointerX) / bounds.width) * 100;
144
+ const dy = ((event.clientY - drag.pointerY) / bounds.height) * 100;
145
+ const dxPx = event.clientX - drag.pointerX;
146
+ const dyPx = event.clientY - drag.pointerY;
147
+ if (drag.mode === 'move') {
148
+ const next = {
149
+ ...drag.crop,
150
+ x: drag.crop.x + dx,
151
+ y: drag.crop.y + dy,
152
+ };
153
+ return shape === 'circle' ? normalizeCircleCrop(next, bounds) : normalizeCrop(next);
154
+ }
155
+ if (shape === 'circle') {
156
+ const rect = cropToPixelRect(drag.crop, bounds);
157
+ const minDiameter = minCircleDiameterFor(bounds);
158
+ const maxCenteredWidth = 2 * Math.min(rect.centerX, bounds.width - rect.centerX);
159
+ const maxCenteredHeight = 2 * Math.min(rect.centerY, bounds.height - rect.centerY);
160
+ let left = rect.left;
161
+ let top = rect.top;
162
+ let diameter = rect.width;
163
+ if (drag.mode.includes('w')) {
164
+ const right = rect.right;
165
+ diameter = clamp(right - (rect.left + dxPx), minDiameter, Math.min(right, maxCenteredHeight));
166
+ left = right - diameter;
167
+ top = rect.centerY - diameter / 2;
168
+ }
169
+ else if (drag.mode.includes('e')) {
170
+ diameter = clamp(rect.width + dxPx, minDiameter, Math.min(bounds.width - left, maxCenteredHeight));
171
+ top = rect.centerY - diameter / 2;
172
+ }
173
+ else if (drag.mode.includes('n')) {
174
+ const bottom = rect.bottom;
175
+ diameter = clamp(bottom - (rect.top + dyPx), minDiameter, Math.min(bottom, maxCenteredWidth));
176
+ left = rect.centerX - diameter / 2;
177
+ top = bottom - diameter;
178
+ }
179
+ else if (drag.mode.includes('s')) {
180
+ diameter = clamp(rect.height + dyPx, minDiameter, Math.min(bounds.height - top, maxCenteredWidth));
181
+ left = rect.centerX - diameter / 2;
182
+ }
183
+ return pixelCircleToCrop({ left, top, diameter, bounds });
184
+ }
185
+ const next = { ...drag.crop };
186
+ let left = drag.crop.x;
187
+ let top = drag.crop.y;
188
+ let right = drag.crop.x + drag.crop.width;
189
+ let bottom = drag.crop.y + drag.crop.height;
190
+ if (drag.mode.includes('w'))
191
+ left = clamp(left + dx, 0, right - MIN_CROP_SIZE);
192
+ if (drag.mode.includes('e'))
193
+ right = clamp(right + dx, left + MIN_CROP_SIZE, 100);
194
+ if (drag.mode.includes('n'))
195
+ top = clamp(top + dy, 0, bottom - MIN_CROP_SIZE);
196
+ if (drag.mode.includes('s'))
197
+ bottom = clamp(bottom + dy, top + MIN_CROP_SIZE, 100);
198
+ return normalizeCrop({
199
+ ...next,
200
+ x: left,
201
+ y: top,
202
+ width: right - left,
203
+ height: bottom - top,
204
+ });
205
+ };
206
+ function MediaImageEditorDialog({ target, imageUrl, isSaving, onClose, onSave, }) {
207
+ const layerRef = (0, react_1.useRef)(null);
208
+ const dragRef = (0, react_1.useRef)(null);
209
+ const shapeRef = (0, react_1.useRef)('rectangle');
210
+ const [objectUrl, setObjectUrl] = (0, react_1.useState)('');
211
+ const [image, setImage] = (0, react_1.useState)(null);
212
+ const [crop, setCrop] = (0, react_1.useState)({
213
+ x: 12,
214
+ y: 12,
215
+ width: 76,
216
+ height: 76,
217
+ });
218
+ const [shape, setShape] = (0, react_1.useState)('rectangle');
219
+ const [rotation, setRotation] = (0, react_1.useState)(0);
220
+ const [isLoadingImage, setIsLoadingImage] = (0, react_1.useState)(false);
221
+ const getCircleBounds = () => {
222
+ const bounds = layerRef.current?.getBoundingClientRect();
223
+ if (bounds?.width && bounds.height)
224
+ return bounds;
225
+ if (image?.naturalWidth && image.naturalHeight) {
226
+ return { width: image.naturalWidth, height: image.naturalHeight };
227
+ }
228
+ return null;
229
+ };
230
+ (0, react_1.useEffect)(() => {
231
+ shapeRef.current = shape;
232
+ }, [shape]);
233
+ (0, react_1.useEffect)(() => {
234
+ if (!target || !imageUrl)
235
+ return;
236
+ let cancelled = false;
237
+ let nextObjectUrl = '';
238
+ setIsLoadingImage(true);
239
+ setImage(null);
240
+ setCrop({ x: 12, y: 12, width: 76, height: 76 });
241
+ setShape('rectangle');
242
+ setRotation(0);
243
+ void (async () => {
244
+ const response = await fetch(imageUrl);
245
+ const blob = await response.blob();
246
+ nextObjectUrl = URL.createObjectURL(blob);
247
+ const nextImage = new Image();
248
+ nextImage.src = nextObjectUrl;
249
+ await nextImage.decode();
250
+ if (!cancelled) {
251
+ setObjectUrl(nextObjectUrl);
252
+ setImage(nextImage);
253
+ setIsLoadingImage(false);
254
+ }
255
+ })().catch(() => {
256
+ if (!cancelled)
257
+ setIsLoadingImage(false);
258
+ });
259
+ return () => {
260
+ cancelled = true;
261
+ if (nextObjectUrl)
262
+ URL.revokeObjectURL(nextObjectUrl);
263
+ };
264
+ }, [target, imageUrl]);
265
+ (0, react_1.useEffect)(() => {
266
+ return () => {
267
+ if (objectUrl)
268
+ URL.revokeObjectURL(objectUrl);
269
+ };
270
+ }, [objectUrl]);
271
+ (0, react_1.useEffect)(() => {
272
+ const handlePointerMove = (event) => {
273
+ const drag = dragRef.current;
274
+ const bounds = layerRef.current?.getBoundingClientRect();
275
+ if (!drag || !bounds)
276
+ return;
277
+ setCrop(getCropFromPointer({ drag, event, bounds, shape: shapeRef.current }));
278
+ };
279
+ const handlePointerUp = () => {
280
+ dragRef.current = null;
281
+ };
282
+ window.addEventListener('pointermove', handlePointerMove);
283
+ window.addEventListener('pointerup', handlePointerUp);
284
+ return () => {
285
+ window.removeEventListener('pointermove', handlePointerMove);
286
+ window.removeEventListener('pointerup', handlePointerUp);
287
+ };
288
+ }, []);
289
+ const cropLabel = (() => {
290
+ if (shape === 'circle') {
291
+ const bounds = getCircleBounds();
292
+ const diameter = bounds
293
+ ? (cropToPixelRect(crop, bounds).width / Math.min(bounds.width, bounds.height)) * 100
294
+ : Math.min(crop.width, crop.height);
295
+ return `D ${Math.round(diameter)}% at ${Math.round(crop.x)}, ${Math.round(crop.y)}`;
296
+ }
297
+ return `${Math.round(crop.width)}% x ${Math.round(crop.height)}% at ${Math.round(crop.x)}, ${Math.round(crop.y)}`;
298
+ })();
299
+ const startDrag = (mode, event) => {
300
+ event.preventDefault();
301
+ event.stopPropagation();
302
+ dragRef.current = {
303
+ mode,
304
+ pointerX: event.clientX,
305
+ pointerY: event.clientY,
306
+ crop,
307
+ };
308
+ };
309
+ const setCropShape = (nextShape) => {
310
+ setShape(nextShape);
311
+ if (nextShape === 'circle') {
312
+ setCrop((prev) => {
313
+ const bounds = getCircleBounds();
314
+ return bounds ? cropToCenteredCircle(prev, bounds) : normalizeCrop(prev);
315
+ });
316
+ }
317
+ };
318
+ const getCropInputValue = (key) => {
319
+ if (key !== 'diameter')
320
+ return Number(crop[key].toFixed(1));
321
+ const bounds = getCircleBounds();
322
+ if (!bounds)
323
+ return Number(Math.min(crop.width, crop.height).toFixed(1));
324
+ const diameter = (cropToPixelRect(crop, bounds).width / Math.min(bounds.width, bounds.height)) * 100;
325
+ return Number(diameter.toFixed(1));
326
+ };
327
+ const setCropValue = (key, value) => {
328
+ if (Number.isNaN(value))
329
+ return;
330
+ setCrop((prev) => {
331
+ if (shapeRef.current !== 'circle') {
332
+ if (key === 'diameter')
333
+ return prev;
334
+ return normalizeCrop({ ...prev, [key]: value });
335
+ }
336
+ const bounds = getCircleBounds();
337
+ if (!bounds)
338
+ return prev;
339
+ const rect = cropToPixelRect(prev, bounds);
340
+ if (key === 'diameter' || key === 'width' || key === 'height') {
341
+ const axisSize = key === 'height'
342
+ ? bounds.height
343
+ : key === 'width'
344
+ ? bounds.width
345
+ : Math.min(bounds.width, bounds.height);
346
+ const diameter = (clamp(value, MIN_CROP_SIZE, 100) / 100) * axisSize;
347
+ return pixelCircleToCrop({
348
+ left: rect.centerX - diameter / 2,
349
+ top: rect.centerY - diameter / 2,
350
+ diameter,
351
+ bounds,
352
+ });
353
+ }
354
+ return normalizeCircleCrop({ ...prev, [key]: value }, bounds);
355
+ });
356
+ };
357
+ const handleSave = async () => {
358
+ if (!target || !image)
359
+ return;
360
+ const sourceWidth = image.naturalWidth;
361
+ const sourceHeight = image.naturalHeight;
362
+ const sx = Math.round((crop.x / 100) * sourceWidth);
363
+ const sy = Math.round((crop.y / 100) * sourceHeight);
364
+ const sw = Math.max(1, Math.round((crop.width / 100) * sourceWidth));
365
+ const sh = Math.max(1, Math.round((crop.height / 100) * sourceHeight));
366
+ const normalizedRotation = ((rotation % 360) + 360) % 360;
367
+ const rotatedSideways = normalizedRotation === 90 || normalizedRotation === 270;
368
+ const canvas = document.createElement('canvas');
369
+ canvas.width = rotatedSideways ? sh : sw;
370
+ canvas.height = rotatedSideways ? sw : sh;
371
+ const ctx = canvas.getContext('2d');
372
+ if (!ctx)
373
+ return;
374
+ ctx.translate(canvas.width / 2, canvas.height / 2);
375
+ ctx.rotate((normalizedRotation * Math.PI) / 180);
376
+ ctx.drawImage(image, sx, sy, sw, sh, -sw / 2, -sh / 2, sw, sh);
377
+ if (shape === 'circle') {
378
+ const maskCanvas = document.createElement('canvas');
379
+ const side = Math.min(canvas.width, canvas.height);
380
+ maskCanvas.width = side;
381
+ maskCanvas.height = side;
382
+ const maskCtx = maskCanvas.getContext('2d');
383
+ if (!maskCtx)
384
+ return;
385
+ maskCtx.save();
386
+ maskCtx.beginPath();
387
+ maskCtx.arc(side / 2, side / 2, side / 2, 0, Math.PI * 2);
388
+ maskCtx.clip();
389
+ maskCtx.drawImage(canvas, (canvas.width - side) / 2, (canvas.height - side) / 2, side, side, 0, 0, side, side);
390
+ maskCtx.restore();
391
+ canvas.width = side;
392
+ canvas.height = side;
393
+ ctx.clearRect(0, 0, side, side);
394
+ ctx.drawImage(maskCanvas, 0, 0);
395
+ }
396
+ const mime = outputMimeFor(target.mime, shape);
397
+ const blob = await new Promise((resolve, reject) => {
398
+ canvas.toBlob((result) => {
399
+ if (result)
400
+ resolve(result);
401
+ else
402
+ reject(new Error('Could not export edited image'));
403
+ }, mime, 0.92);
404
+ });
405
+ const baseName = target.name.replace(/\.[^.]+$/, '');
406
+ const file = new File([blob], `${baseName}-edited.${extensionFor(mime)}`, {
407
+ type: mime,
408
+ });
409
+ await onSave(file);
410
+ };
411
+ return ((0, jsx_runtime_1.jsx)(dialog_1.Dialog, { open: !!target, onOpenChange: (open) => !open && onClose(), children: (0, jsx_runtime_1.jsxs)(dialog_1.DialogContent, { className: "max-h-[90svh] w-[calc(100vw-2rem)] max-w-5xl! overflow-y-auto", children: [(0, jsx_runtime_1.jsxs)(dialog_1.DialogHeader, { children: [(0, jsx_runtime_1.jsx)(dialog_1.DialogTitle, { children: "Crop and rotate image" }), (0, jsx_runtime_1.jsx)(dialog_1.DialogDescription, { children: "Drag the crop area, resize from any edge, then save a copy." })] }), (0, jsx_runtime_1.jsxs)("div", { className: "grid gap-6 lg:grid-cols-[minmax(0,1fr)_18rem]", children: [(0, jsx_runtime_1.jsx)("div", { className: "flex min-h-88 items-center justify-center overflow-hidden rounded-lg border bg-neutral-950 p-3", children: isLoadingImage ? ((0, jsx_runtime_1.jsx)("div", { className: "text-sm text-muted-foreground", children: "Loading image..." })) : objectUrl ? ((0, jsx_runtime_1.jsxs)("div", { className: "relative inline-block max-h-[55vh] max-w-full select-none touch-none", children: [(0, jsx_runtime_1.jsx)("img", { src: objectUrl, alt: target?.alt || target?.name || '', className: "block max-h-[55vh] max-w-full object-contain", draggable: false, style: { transform: `rotate(${rotation}deg)` } }), (0, jsx_runtime_1.jsx)("div", { ref: layerRef, className: "absolute inset-0", children: (0, jsx_runtime_1.jsx)("div", { className: (0, utils_1.cn)('absolute cursor-move border-2 border-white bg-transparent shadow-[0_0_0_1px_rgba(0,0,0,0.55),0_0_0_9999px_rgba(0,0,0,0.48)]', shape === 'circle' ? 'rounded-full' : 'rounded-none'), style: {
412
+ left: `${crop.x}%`,
413
+ top: `${crop.y}%`,
414
+ width: `${crop.width}%`,
415
+ height: `${crop.height}%`,
416
+ }, onPointerDown: (event) => startDrag('move', event), children: (shape === 'circle' ? circleResizeHandles : resizeHandles).map((handle) => ((0, jsx_runtime_1.jsx)("button", { type: "button", "aria-label": handle.label, className: (0, utils_1.cn)('absolute z-10 flex items-center justify-center rounded-sm outline-none focus-visible:ring-2 focus-visible:ring-white/80', handle.className), onPointerDown: (event) => startDrag(handle.mode, event), children: (0, jsx_runtime_1.jsx)("span", { className: (0, utils_1.cn)('block bg-white shadow-sm ring-1 ring-neutral-950/15', handle.gripClassName) }) }, handle.mode))) }) })] })) : ((0, jsx_runtime_1.jsx)("div", { className: "text-sm text-muted-foreground", children: "Image could not be loaded." })) }), (0, jsx_runtime_1.jsxs)("div", { className: "space-y-4", children: [(0, jsx_runtime_1.jsxs)("div", { className: "grid gap-2", children: [(0, jsx_runtime_1.jsx)(label_1.Label, { children: "Shape" }), (0, jsx_runtime_1.jsxs)("div", { className: "grid grid-cols-2 gap-2", children: [(0, jsx_runtime_1.jsxs)(button_1.Button, { type: "button", variant: shape === 'rectangle' ? 'default' : 'outline', onClick: () => setCropShape('rectangle'), children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Square, { className: "size-4" }), "Rectangle"] }), (0, jsx_runtime_1.jsxs)(button_1.Button, { type: "button", variant: shape === 'circle' ? 'default' : 'outline', onClick: () => setCropShape('circle'), children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Circle, { className: "size-4" }), "Circle"] })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "grid gap-2", children: [(0, jsx_runtime_1.jsx)(label_1.Label, { children: "Rotation" }), (0, jsx_runtime_1.jsxs)("div", { className: "grid grid-cols-2 gap-2", children: [(0, jsx_runtime_1.jsxs)(button_1.Button, { type: "button", variant: "outline", onClick: () => setRotation((v) => v - 90), children: [(0, jsx_runtime_1.jsx)(lucide_react_1.RotateCcw, { className: "size-4" }), "Left"] }), (0, jsx_runtime_1.jsxs)(button_1.Button, { type: "button", variant: "outline", onClick: () => setRotation((v) => v + 90), children: [(0, jsx_runtime_1.jsx)(lucide_react_1.RotateCw, { className: "size-4" }), "Right"] })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "rounded-md border p-3", children: [(0, jsx_runtime_1.jsx)(label_1.Label, { children: "Crop area" }), (0, jsx_runtime_1.jsx)("p", { className: "mt-1 text-xs text-muted-foreground", children: cropLabel }), (0, jsx_runtime_1.jsx)("div", { className: "mt-3 grid grid-cols-2 gap-2", children: (shape === 'circle' ? circleCropInputs : cropInputs).map((input) => ((0, jsx_runtime_1.jsxs)("div", { className: "grid gap-1", children: [(0, jsx_runtime_1.jsxs)(label_1.Label, { htmlFor: `crop-${input.key}`, className: "text-xs text-muted-foreground", children: [input.label, " %"] }), (0, jsx_runtime_1.jsx)(input_1.Input, { id: `crop-${input.key}`, type: "number", min: 0, max: 100, step: 0.1, value: getCropInputValue(input.key), onChange: (event) => setCropValue(input.key, event.currentTarget.valueAsNumber) })] }, input.key))) })] })] })] }), (0, jsx_runtime_1.jsxs)(dialog_1.DialogFooter, { children: [(0, jsx_runtime_1.jsx)(button_1.Button, { type: "button", variant: "ghost", onClick: onClose, children: "Cancel" }), (0, jsx_runtime_1.jsx)(button_1.Button, { loading: isSaving, disabled: !image || isLoadingImage, onClick: () => void handleSave(), children: "Save copy" })] })] }) }));
417
+ }
418
+ //# sourceMappingURL=MediaImageEditorDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MediaImageEditorDialog.js","sourceRoot":"","sources":["../../../../../../src/components/media/previews/dialogs/MediaImageEditorDialog.tsx"],"names":[],"mappings":"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"}
@@ -7,7 +7,11 @@ const button_1 = require("../../../ui/button.js");
7
7
  const dialog_1 = require("../../../ui/dialog.js");
8
8
  const select_1 = require("../../../ui/select.js");
9
9
  function MediaMoveDialog({ target, folders, value, isLoading, onValueChange, onClose, onConfirm, }) {
10
- return ((0, jsx_runtime_1.jsx)(dialog_1.Dialog, { open: !!target, onOpenChange: (open) => !open && onClose(), children: (0, jsx_runtime_1.jsxs)(dialog_1.DialogContent, { "aria-describedby": 'Move media item', children: [(0, jsx_runtime_1.jsx)(dialog_1.DialogHeader, { children: (0, jsx_runtime_1.jsx)(dialog_1.DialogTitle, { children: "Move file" }) }), (0, jsx_runtime_1.jsxs)(dialog_1.DialogDescription, { children: ["Select the destination folder for \"", target?.name, "\"."] }), (0, jsx_runtime_1.jsx)("div", { className: 'py-2', children: (0, jsx_runtime_1.jsxs)(select_1.Select, { value: value, onValueChange: onValueChange, children: [(0, jsx_runtime_1.jsx)(select_1.SelectTrigger, { className: 'w-full', children: (0, jsx_runtime_1.jsx)(select_1.SelectValue, { placeholder: 'Select folder' }) }), (0, jsx_runtime_1.jsx)(select_1.SelectContent, { children: folders.map((folder) => ((0, jsx_runtime_1.jsx)(select_1.SelectItem, { value: folder._id ?? '__root__', children: folder.path }, folder._id ?? 'root'))) })] }) }), (0, jsx_runtime_1.jsxs)(dialog_1.DialogFooter, { children: [(0, jsx_runtime_1.jsx)(button_1.Button, { variant: 'ghost', onClick: onClose, children: "Cancel" }), (0, jsx_runtime_1.jsx)(button_1.Button, { loading: isLoading, disabled: !value ||
10
+ const bulkCount = target?.ids?.length ?? 0;
11
+ const isBulk = bulkCount > 0;
12
+ return ((0, jsx_runtime_1.jsx)(dialog_1.Dialog, { open: !!target, onOpenChange: (open) => !open && onClose(), children: (0, jsx_runtime_1.jsxs)(dialog_1.DialogContent, { "aria-describedby": 'Move media item', children: [(0, jsx_runtime_1.jsx)(dialog_1.DialogHeader, { children: (0, jsx_runtime_1.jsxs)(dialog_1.DialogTitle, { children: ["Move ", bulkCount > 1 ? 'files' : 'file'] }) }), (0, jsx_runtime_1.jsx)(dialog_1.DialogDescription, { children: isBulk
13
+ ? `Select the destination folder for ${bulkCount} selected file${bulkCount === 1 ? '' : 's'}.`
14
+ : `Select the destination folder for "${target?.name}".` }), (0, jsx_runtime_1.jsx)("div", { className: 'py-2', children: (0, jsx_runtime_1.jsxs)(select_1.Select, { value: value, onValueChange: onValueChange, children: [(0, jsx_runtime_1.jsx)(select_1.SelectTrigger, { className: 'w-full', children: (0, jsx_runtime_1.jsx)(select_1.SelectValue, { placeholder: 'Select folder' }) }), (0, jsx_runtime_1.jsx)(select_1.SelectContent, { children: folders.map((folder) => ((0, jsx_runtime_1.jsx)(select_1.SelectItem, { value: folder._id ?? '__root__', children: folder.path }, folder._id ?? 'root'))) })] }) }), (0, jsx_runtime_1.jsxs)(dialog_1.DialogFooter, { children: [(0, jsx_runtime_1.jsx)(button_1.Button, { variant: 'ghost', onClick: onClose, children: "Cancel" }), (0, jsx_runtime_1.jsx)(button_1.Button, { loading: isLoading, disabled: !value ||
11
15
  !target ||
12
16
  value === (target.currentFolderId ?? '__root__') ||
13
17
  folders.length === 0, onClick: onConfirm, children: "Move" })] })] }) }));
@@ -1 +1 @@
1
- {"version":3,"file":"MediaMoveDialog.js","sourceRoot":"","sources":["../../../../../../src/components/media/previews/dialogs/MediaMoveDialog.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;AAyCZ,kCAuDC;;AA9FD,+CAA2C;AAC3C,+CAO2B;AAC3B,+CAM2B;AAwB3B,SAAwB,eAAe,CAAC,EACtC,MAAM,EACN,OAAO,EACP,KAAK,EACL,SAAS,EACT,aAAa,EACb,OAAO,EACP,SAAS,GACY;IACrB,OAAO,CACL,uBAAC,eAAM,IAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,OAAO,EAAE,YAChE,wBAAC,sBAAa,wBAAkB,iBAAiB,aAC/C,uBAAC,qBAAY,cACX,uBAAC,oBAAW,4BAAwB,GACvB,EACf,wBAAC,0BAAiB,uDACoB,MAAM,EAAE,IAAI,WAC9B,EACpB,gCAAK,SAAS,EAAC,MAAM,YACnB,wBAAC,eAAM,IAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,aAChD,uBAAC,sBAAa,IAAC,SAAS,EAAC,QAAQ,YAC/B,uBAAC,oBAAW,IAAC,WAAW,EAAC,eAAe,GAAG,GAC7B,EAChB,uBAAC,sBAAa,cACX,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,uBAAC,mBAAU,IAET,KAAK,EAAE,MAAM,CAAC,GAAG,IAAI,UAAU,YAE9B,MAAM,CAAC,IAAI,IAHP,MAAM,CAAC,GAAG,IAAI,MAAM,CAId,CACd,CAAC,GACY,IACT,GACL,EACN,wBAAC,qBAAY,eACX,uBAAC,eAAM,IAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAE,OAAO,uBAE/B,EACT,uBAAC,eAAM,IACL,OAAO,EAAE,SAAS,EAClB,QAAQ,EACN,CAAC,KAAK;gCACN,CAAC,MAAM;gCACP,KAAK,KAAK,CAAC,MAAM,CAAC,eAAe,IAAI,UAAU,CAAC;gCAChD,OAAO,CAAC,MAAM,KAAK,CAAC,EAEtB,OAAO,EAAE,SAAS,qBAGX,IACI,IACD,GACT,CACV,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"MediaMoveDialog.js","sourceRoot":"","sources":["../../../../../../src/components/media/previews/dialogs/MediaMoveDialog.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;AA0CZ,kCA8DC;;AAtGD,+CAA2C;AAC3C,+CAO2B;AAC3B,+CAM2B;AAyB3B,SAAwB,eAAe,CAAC,EACtC,MAAM,EACN,OAAO,EACP,KAAK,EACL,SAAS,EACT,aAAa,EACb,OAAO,EACP,SAAS,GACY;IACrB,MAAM,SAAS,GAAG,MAAM,EAAE,GAAG,EAAE,MAAM,IAAI,CAAC,CAAA;IAC1C,MAAM,MAAM,GAAG,SAAS,GAAG,CAAC,CAAA;IAE5B,OAAO,CACL,uBAAC,eAAM,IAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,OAAO,EAAE,YAChE,wBAAC,sBAAa,wBAAkB,iBAAiB,aAC/C,uBAAC,qBAAY,cACX,wBAAC,oBAAW,wBACJ,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,IAC1B,GACD,EACf,uBAAC,0BAAiB,cACf,MAAM;wBACL,CAAC,CAAC,qCAAqC,SAAS,iBAAiB,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG;wBAC9F,CAAC,CAAC,sCAAsC,MAAM,EAAE,IAAI,IAAI,GACxC,EACpB,gCAAK,SAAS,EAAC,MAAM,YACnB,wBAAC,eAAM,IAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,aAChD,uBAAC,sBAAa,IAAC,SAAS,EAAC,QAAQ,YAC/B,uBAAC,oBAAW,IAAC,WAAW,EAAC,eAAe,GAAG,GAC7B,EAChB,uBAAC,sBAAa,cACX,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,uBAAC,mBAAU,IAET,KAAK,EAAE,MAAM,CAAC,GAAG,IAAI,UAAU,YAE9B,MAAM,CAAC,IAAI,IAHP,MAAM,CAAC,GAAG,IAAI,MAAM,CAId,CACd,CAAC,GACY,IACT,GACL,EACN,wBAAC,qBAAY,eACX,uBAAC,eAAM,IAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAE,OAAO,uBAE/B,EACT,uBAAC,eAAM,IACL,OAAO,EAAE,SAAS,EAClB,QAAQ,EACN,CAAC,KAAK;gCACN,CAAC,MAAM;gCACP,KAAK,KAAK,CAAC,MAAM,CAAC,eAAe,IAAI,UAAU,CAAC;gCAChD,OAAO,CAAC,MAAM,KAAK,CAAC,EAEtB,OAAO,EAAE,SAAS,qBAGX,IACI,IACD,GACT,CACV,CAAA;AACH,CAAC"}
@@ -2,6 +2,7 @@
2
2
  'use client';
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.default = PreviewsToolbar;
5
+ exports.PreviewsSelectionToolbar = PreviewsSelectionToolbar;
5
6
  const jsx_runtime_1 = require("react/jsx-runtime");
6
7
  const lucide_react_1 = require("lucide-react");
7
8
  const button_1 = require("../../../ui/button.js");
@@ -16,20 +17,26 @@ const MediaPreviewContext_1 = require("../context/MediaPreviewContext.js");
16
17
  function PreviewsToolbar() {
17
18
  const { mediaCount, isUploading, mediaTypeFilter, isMediaTypeFilterLocked, setMediaTypeFilter, viewMode, setViewMode, } = (0, MediaPreviewContext_1.useMediaPreview)();
18
19
  const { optimizeEnabled, optimizeLocked, optimizeOptions, setOptimizeEnabled, setOptimizeOptions, } = (0, MediaLibraryContext_1.useMediaLibrary)();
19
- return ((0, jsx_runtime_1.jsxs)("div", { className: 'flex items-center justify-between gap-2 flex-wrap', children: [(0, jsx_runtime_1.jsxs)("p", { className: 'text-muted-foreground text-sm', children: [mediaCount, " file", mediaCount === 1 ? '' : 's'] }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex items-center gap-2 flex-wrap', children: [(0, jsx_runtime_1.jsx)(file_upload_1.FileUploadTrigger, { asChild: true, children: (0, jsx_runtime_1.jsxs)(button_1.Button, { size: 'sm', variant: 'outline', children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Upload, { className: 'size-4' }), "Upload"] }) }), (0, jsx_runtime_1.jsx)(file_upload_1.FileUploadClear, { className: 'inline-flex items-center rounded-md border px-3 py-1.5 font-medium text-sm hover:bg-accent/40', children: "Clear" }), (0, jsx_runtime_1.jsxs)(popover_1.Popover, { children: [(0, jsx_runtime_1.jsx)(popover_1.PopoverTrigger, { asChild: true, children: (0, jsx_runtime_1.jsxs)(button_1.Button, { size: 'sm', variant: 'outline', children: [(0, jsx_runtime_1.jsx)(lucide_react_1.SlidersHorizontal, { className: 'size-4' }), "Optimization"] }) }), (0, jsx_runtime_1.jsxs)(popover_1.PopoverContent, { align: 'end', className: 'w-80 space-y-4', children: [(0, jsx_runtime_1.jsxs)("div", { className: 'flex items-center justify-between gap-2', children: [(0, jsx_runtime_1.jsx)("p", { className: 'font-medium text-sm', children: "Enable optimization" }), (0, jsx_runtime_1.jsx)(switch_1.Switch, { checked: optimizeEnabled, disabled: optimizeLocked, onCheckedChange: setOptimizeEnabled })] }), optimizeLocked ? ((0, jsx_runtime_1.jsx)("p", { className: 'text-muted-foreground text-xs', children: "Optimization is enforced by this field configuration." })) : null, (0, jsx_runtime_1.jsxs)("div", { className: 'space-y-2', children: [(0, jsx_runtime_1.jsx)("p", { className: 'text-muted-foreground text-xs', children: "Format" }), (0, jsx_runtime_1.jsxs)(select_1.Select, { value: optimizeOptions.format, disabled: !optimizeEnabled, onValueChange: (value) => setOptimizeOptions({
20
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between gap-2 flex-wrap", "data-tour": "media-toolbar", children: [(0, jsx_runtime_1.jsxs)("p", { className: "text-muted-foreground text-sm", children: [mediaCount, " file", mediaCount === 1 ? '' : 's'] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-2 flex-wrap", children: [(0, jsx_runtime_1.jsx)(file_upload_1.FileUploadTrigger, { asChild: true, children: (0, jsx_runtime_1.jsxs)(button_1.Button, { size: 'sm', variant: 'outline', children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Upload, { className: "size-4" }), "Upload"] }) }), (0, jsx_runtime_1.jsx)(file_upload_1.FileUploadClear, { className: "inline-flex items-center rounded-md border px-3 py-1.5 font-medium text-sm hover:bg-accent/40", children: "Clear" }), (0, jsx_runtime_1.jsxs)(popover_1.Popover, { children: [(0, jsx_runtime_1.jsx)(popover_1.PopoverTrigger, { asChild: true, children: (0, jsx_runtime_1.jsxs)(button_1.Button, { size: "sm", variant: "outline", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.SlidersHorizontal, { className: "size-4" }), "Optimization"] }) }), (0, jsx_runtime_1.jsxs)(popover_1.PopoverContent, { align: "end", className: "w-[calc(100vw-2rem)] max-w-80 space-y-4", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between gap-2", children: [(0, jsx_runtime_1.jsx)("p", { className: "font-medium text-sm", children: "Enable optimization" }), (0, jsx_runtime_1.jsx)(switch_1.Switch, { checked: optimizeEnabled, disabled: optimizeLocked, onCheckedChange: setOptimizeEnabled })] }), optimizeLocked ? ((0, jsx_runtime_1.jsx)("p", { className: "text-muted-foreground text-xs", children: "Optimization is enforced by this field configuration." })) : null, (0, jsx_runtime_1.jsxs)("div", { className: "space-y-2", children: [(0, jsx_runtime_1.jsx)("p", { className: "text-muted-foreground text-xs", children: "Format" }), (0, jsx_runtime_1.jsxs)(select_1.Select, { value: optimizeOptions.format, disabled: !optimizeEnabled, onValueChange: (value) => setOptimizeOptions({
20
21
  format: value,
21
- }), children: [(0, jsx_runtime_1.jsx)(select_1.SelectTrigger, { className: 'w-full', children: (0, jsx_runtime_1.jsx)(select_1.SelectValue, { placeholder: 'Select format' }) }), (0, jsx_runtime_1.jsxs)(select_1.SelectContent, { children: [(0, jsx_runtime_1.jsx)(select_1.SelectItem, { value: 'webp', children: "webp" }), (0, jsx_runtime_1.jsx)(select_1.SelectItem, { value: 'jpeg', children: "jpeg" }), (0, jsx_runtime_1.jsx)(select_1.SelectItem, { value: 'png', children: "png" }), (0, jsx_runtime_1.jsx)(select_1.SelectItem, { value: 'avif', children: "avif" })] })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'space-y-2', children: [(0, jsx_runtime_1.jsx)("p", { className: 'text-muted-foreground text-xs', children: "Quality (1-100)" }), (0, jsx_runtime_1.jsx)(input_1.Input, { type: 'number', min: 1, max: 100, disabled: !optimizeEnabled, value: optimizeOptions.quality, onChange: (event) => {
22
+ }), children: [(0, jsx_runtime_1.jsx)(select_1.SelectTrigger, { className: "w-full", children: (0, jsx_runtime_1.jsx)(select_1.SelectValue, { placeholder: "Select format" }) }), (0, jsx_runtime_1.jsxs)(select_1.SelectContent, { children: [(0, jsx_runtime_1.jsx)(select_1.SelectItem, { value: "webp", children: "webp" }), (0, jsx_runtime_1.jsx)(select_1.SelectItem, { value: "jpeg", children: "jpeg" }), (0, jsx_runtime_1.jsx)(select_1.SelectItem, { value: "png", children: "png" }), (0, jsx_runtime_1.jsx)(select_1.SelectItem, { value: "avif", children: "avif" })] })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "space-y-2", children: [(0, jsx_runtime_1.jsx)("p", { className: "text-muted-foreground text-xs", children: "Quality (1-100)" }), (0, jsx_runtime_1.jsx)(input_1.Input, { type: "number", min: 1, max: 100, disabled: !optimizeEnabled, value: optimizeOptions.quality, onChange: (event) => {
22
23
  const parsed = Number(event.target.value);
23
24
  if (!Number.isFinite(parsed))
24
25
  return;
25
26
  const value = Math.max(1, Math.min(100, Math.round(parsed)));
26
27
  setOptimizeOptions({ quality: value });
27
- } })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex items-center justify-between gap-2', children: [(0, jsx_runtime_1.jsx)("p", { className: 'text-sm', children: "Generate preview" }), (0, jsx_runtime_1.jsx)(switch_1.Switch, { checked: optimizeOptions.generatePreview, disabled: !optimizeEnabled, onCheckedChange: (value) => setOptimizeOptions({ generatePreview: value }) })] })] })] }), isUploading ? ((0, jsx_runtime_1.jsxs)("span", { className: 'inline-flex items-center gap-1 text-muted-foreground text-sm', children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Loader2, { className: 'size-4 animate-spin' }), "Uploading..."] })) : null, !isMediaTypeFilterLocked ? ((0, jsx_runtime_1.jsxs)(toggle_group_1.ToggleGroup, { type: 'single', value: mediaTypeFilter, onValueChange: (value) => {
28
+ } })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between gap-2", children: [(0, jsx_runtime_1.jsx)("p", { className: "text-sm", children: "Generate preview" }), (0, jsx_runtime_1.jsx)(switch_1.Switch, { checked: optimizeOptions.generatePreview, disabled: !optimizeEnabled, onCheckedChange: (value) => setOptimizeOptions({ generatePreview: value }) })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between gap-2", children: [(0, jsx_runtime_1.jsx)("p", { className: "text-sm", children: "Generate responsive sizes" }), (0, jsx_runtime_1.jsx)(switch_1.Switch, { checked: optimizeOptions.generateSizes ?? true, disabled: !optimizeEnabled, onCheckedChange: (value) => setOptimizeOptions({ generateSizes: value }) })] })] })] }), isUploading ? ((0, jsx_runtime_1.jsxs)("span", { className: "inline-flex items-center gap-1 text-muted-foreground text-sm", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Loader2, { className: "size-4 animate-spin" }), "Uploading..."] })) : null, !isMediaTypeFilterLocked ? ((0, jsx_runtime_1.jsxs)(toggle_group_1.ToggleGroup, { type: "single", value: mediaTypeFilter, onValueChange: (value) => {
28
29
  if (value)
29
30
  setMediaTypeFilter(value);
30
- }, variant: 'outline', className: 'max-w-full flex-wrap', children: [(0, jsx_runtime_1.jsx)(toggle_group_1.ToggleGroupItem, { value: 'all', "aria-label": 'All files', className: 'flex-none whitespace-nowrap', children: "All" }), (0, jsx_runtime_1.jsxs)(toggle_group_1.ToggleGroupItem, { value: 'image', "aria-label": 'Images', className: 'flex-none whitespace-nowrap', children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Image, { className: 'size-4' }), "Images"] }), (0, jsx_runtime_1.jsxs)(toggle_group_1.ToggleGroupItem, { value: 'video', "aria-label": 'Videos', className: 'flex-none whitespace-nowrap', children: [(0, jsx_runtime_1.jsx)(lucide_react_1.FilmIcon, { className: 'size-4' }), "Videos"] }), (0, jsx_runtime_1.jsxs)(toggle_group_1.ToggleGroupItem, { value: 'document', "aria-label": 'Documents', className: 'flex-none whitespace-nowrap', children: [(0, jsx_runtime_1.jsx)(lucide_react_1.FileText, { className: 'size-4' }), "Docs"] })] })) : null, (0, jsx_runtime_1.jsxs)(toggle_group_1.ToggleGroup, { type: 'single', value: viewMode, onValueChange: (value) => {
31
+ }, variant: "outline", className: "max-w-full flex-wrap", children: [(0, jsx_runtime_1.jsx)(toggle_group_1.ToggleGroupItem, { value: "all", "aria-label": "All files", className: "flex-none whitespace-nowrap", children: "All" }), (0, jsx_runtime_1.jsxs)(toggle_group_1.ToggleGroupItem, { value: "image", "aria-label": "Images", className: "flex-none whitespace-nowrap", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Image, { className: "size-4" }), "Images"] }), (0, jsx_runtime_1.jsxs)(toggle_group_1.ToggleGroupItem, { value: "video", "aria-label": "Videos", className: "flex-none whitespace-nowrap", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.FilmIcon, { className: "size-4" }), "Videos"] }), (0, jsx_runtime_1.jsxs)(toggle_group_1.ToggleGroupItem, { value: "document", "aria-label": "Documents", className: "flex-none whitespace-nowrap", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.FileText, { className: "size-4" }), "Docs"] })] })) : null, (0, jsx_runtime_1.jsxs)(toggle_group_1.ToggleGroup, { type: "single", value: viewMode, onValueChange: (value) => {
31
32
  if (value)
32
33
  setViewMode(value);
33
- }, variant: 'outline', children: [(0, jsx_runtime_1.jsx)(toggle_group_1.ToggleGroupItem, { value: 'list', "aria-label": 'List view', children: (0, jsx_runtime_1.jsx)(lucide_react_1.List, { className: 'size-4' }) }), (0, jsx_runtime_1.jsx)(toggle_group_1.ToggleGroupItem, { value: 'grid-sm', "aria-label": 'Small cards view', children: (0, jsx_runtime_1.jsx)(lucide_react_1.Grid2x2, { className: 'size-4' }) }), (0, jsx_runtime_1.jsx)(toggle_group_1.ToggleGroupItem, { value: 'grid-lg', "aria-label": 'Large cards view', children: (0, jsx_runtime_1.jsx)(lucide_react_1.LayoutGrid, { className: 'size-4' }) })] })] })] }));
34
+ }, variant: "outline", children: [(0, jsx_runtime_1.jsx)(toggle_group_1.ToggleGroupItem, { value: "list", "aria-label": "List view", children: (0, jsx_runtime_1.jsx)(lucide_react_1.List, { className: "size-4" }) }), (0, jsx_runtime_1.jsx)(toggle_group_1.ToggleGroupItem, { value: "grid-sm", "aria-label": "Small cards view", children: (0, jsx_runtime_1.jsx)(lucide_react_1.Grid2x2, { className: "size-4" }) }), (0, jsx_runtime_1.jsx)(toggle_group_1.ToggleGroupItem, { value: "grid-lg", "aria-label": "Large cards view", children: (0, jsx_runtime_1.jsx)(lucide_react_1.LayoutGrid, { className: "size-4" }) })] })] })] }));
35
+ }
36
+ function PreviewsSelectionToolbar() {
37
+ const { bulkSelectedCount, onRequestBulkDelete, onRequestBulkMove, onClearSelection } = (0, MediaPreviewContext_1.useMediaPreview)();
38
+ if (bulkSelectedCount === 0)
39
+ return null;
40
+ return ((0, jsx_runtime_1.jsx)("div", { className: "fixed bottom-12 left-1/2 z-40 w-[calc(100vw-2rem)] max-w-fit -translate-x-1/2 animate-in fade-in-0 slide-in-from-bottom-3 duration-200", "data-tour": "media-selection-toolbar", children: (0, jsx_runtime_1.jsxs)("div", { className: "flex flex-wrap items-center justify-center gap-2 rounded-md border bg-background px-3 py-2 shadow-lg", children: [(0, jsx_runtime_1.jsxs)("span", { className: "min-w-20 text-center text-muted-foreground text-sm", children: [bulkSelectedCount, " selected"] }), (0, jsx_runtime_1.jsxs)(button_1.Button, { size: "sm", variant: "outline", onClick: onRequestBulkMove, children: [(0, jsx_runtime_1.jsx)(lucide_react_1.FolderInput, { className: "size-4" }), "Move"] }), (0, jsx_runtime_1.jsxs)(button_1.Button, { size: "sm", variant: "destructive", onClick: onRequestBulkDelete, children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Trash2, { className: "size-4" }), "Delete"] }), (0, jsx_runtime_1.jsx)(button_1.Button, { size: "sm", variant: "ghost", onClick: onClearSelection, children: "Cancel" })] }) }));
34
41
  }
35
42
  //# sourceMappingURL=PreviewsToolbar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PreviewsToolbar.js","sourceRoot":"","sources":["../../../../../../src/components/media/previews/toolbar/PreviewsToolbar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PreviewsToolbar.js","sourceRoot":"","sources":["../../../../../../src/components/media/previews/toolbar/PreviewsToolbar.tsx"],"names":[],"mappings":"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"}
@@ -11,8 +11,8 @@ const card_1 = require("../../../ui/card.js");
11
11
  const context_menu_1 = require("../../../ui/context-menu.js");
12
12
  const MediaContextMenuContent_1 = __importDefault(require("../MediaContextMenuContent.js"));
13
13
  const MediaPreviewContext_1 = require("../context/MediaPreviewContext.js");
14
- function PreviewsGridLargeView({ media, }) {
14
+ function PreviewsGridLargeView({ media }) {
15
15
  const { onMediaClick, renderPreview, formatFileSize, isSelected } = (0, MediaPreviewContext_1.useMediaPreview)();
16
- return ((0, jsx_runtime_1.jsx)("div", { className: 'relative grid w-full grid-cols-1 gap-3 md:grid-cols-2', children: media.map((item) => ((0, jsx_runtime_1.jsxs)(context_menu_1.ContextMenu, { children: [(0, jsx_runtime_1.jsx)(context_menu_1.ContextMenuTrigger, { asChild: true, children: (0, jsx_runtime_1.jsxs)(card_1.Card, { className: 'relative overflow-hidden cursor-pointer p-3 hover:bg-accent/40 data-[state=open]:bg-accent/60 data-[state=open]:ring-1 data-[state=open]:ring-primary/30', onClick: () => onMediaClick(item), children: [isSelected(item._id) ? ((0, jsx_runtime_1.jsx)("div", { className: 'absolute right-4 top-4 z-10 rounded-full bg-primary p-1 text-primary-foreground', children: (0, jsx_runtime_1.jsx)(lucide_react_1.Check, { className: 'size-3' }) })) : null, (0, jsx_runtime_1.jsx)("div", { className: 'h-52 w-full overflow-hidden rounded-md border bg-muted', children: renderPreview(item) }), (0, jsx_runtime_1.jsxs)("div", { className: 'mt-2', children: [(0, jsx_runtime_1.jsx)("p", { className: 'truncate font-medium text-sm', children: item.name }), (0, jsx_runtime_1.jsxs)("p", { className: 'truncate text-muted-foreground text-xs', children: [formatFileSize(item.size), " \u2022 ", item.mime] })] })] }) }), (0, jsx_runtime_1.jsx)(MediaContextMenuContent_1.default, { item: item })] }, item._id))) }));
16
+ return ((0, jsx_runtime_1.jsx)("div", { className: "relative grid w-full grid-cols-1 gap-3 md:grid-cols-2", children: media.map((item) => ((0, jsx_runtime_1.jsxs)(context_menu_1.ContextMenu, { children: [(0, jsx_runtime_1.jsx)(context_menu_1.ContextMenuTrigger, { asChild: true, children: (0, jsx_runtime_1.jsxs)(card_1.Card, { className: "relative overflow-hidden cursor-pointer p-3 hover:bg-accent/40 data-[state=open]:bg-accent/60 data-[state=open]:ring-1 data-[state=open]:ring-primary/30", onClick: () => onMediaClick(item), children: [isSelected(item._id) ? ((0, jsx_runtime_1.jsx)("div", { className: "absolute right-4 top-4 z-10 rounded-full bg-primary p-1 text-primary-foreground", children: (0, jsx_runtime_1.jsx)(lucide_react_1.Check, { className: "size-3" }) })) : null, (0, jsx_runtime_1.jsx)("div", { className: "h-52 w-full overflow-hidden rounded-md border bg-muted", children: renderPreview(item) }), (0, jsx_runtime_1.jsxs)("div", { className: "p-2 pt-0", children: [(0, jsx_runtime_1.jsx)("p", { className: "truncate font-medium text-sm", children: item.name }), (0, jsx_runtime_1.jsxs)("p", { className: "truncate text-muted-foreground text-xs", children: [formatFileSize(item.size), " \u2022 ", item.mime] })] })] }) }), (0, jsx_runtime_1.jsx)(MediaContextMenuContent_1.default, { item: item })] }, item._id))) }));
17
17
  }
18
18
  //# sourceMappingURL=PreviewsGridLargeView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PreviewsGridLargeView.js","sourceRoot":"","sources":["../../../../../../src/components/media/previews/views/PreviewsGridLargeView.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;;AAeZ,wCAoCC;;AAjDD,+CAAoC;AAEpC,2CAAuC;AACvC,2DAA0E;AAC1E,yFAAgE;AAChE,wEAAgE;AAQhE,SAAwB,qBAAqB,CAAC,EAC5C,KAAK,GACsB;IAC3B,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,GAC/D,IAAA,qCAAe,GAAE,CAAA;IAEnB,OAAO,CACL,gCAAK,SAAS,EAAC,uDAAuD,YACnE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,wBAAC,0BAAW,eACV,uBAAC,iCAAkB,IAAC,OAAO,kBACzB,wBAAC,WAAI,IACH,SAAS,EAAC,0JAA0J,EACpK,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,aAEhC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CACtB,gCAAK,SAAS,EAAC,iFAAiF,YAC9F,uBAAC,oBAAK,IAAC,SAAS,EAAC,QAAQ,GAAG,GACxB,CACP,CAAC,CAAC,CAAC,IAAI,EACR,gCAAK,SAAS,EAAC,wDAAwD,YACpE,aAAa,CAAC,IAAI,CAAC,GAChB,EACN,iCAAK,SAAS,EAAC,MAAM,aACnB,8BAAG,SAAS,EAAC,8BAA8B,YAAE,IAAI,CAAC,IAAI,GAAK,EAC3D,+BAAG,SAAS,EAAC,wCAAwC,aAClD,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,cAAK,IAAI,CAAC,IAAI,IACtC,IACA,IACD,GACY,EACrB,uBAAC,iCAAuB,IAAC,IAAI,EAAE,IAAI,GAAI,KAtBvB,IAAI,CAAC,GAAG,CAuBZ,CACf,CAAC,GACE,CACP,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"PreviewsGridLargeView.js","sourceRoot":"","sources":["../../../../../../src/components/media/previews/views/PreviewsGridLargeView.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;;AAeZ,wCAiCC;;AA9CD,+CAAoC;AAEpC,2CAAuC;AACvC,2DAA0E;AAC1E,yFAAgE;AAChE,wEAAgE;AAQhE,SAAwB,qBAAqB,CAAC,EAAE,KAAK,EAA8B;IACjF,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,IAAA,qCAAe,GAAE,CAAA;IAErF,OAAO,CACL,gCAAK,SAAS,EAAC,uDAAuD,YACnE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,wBAAC,0BAAW,eACV,uBAAC,iCAAkB,IAAC,OAAO,kBACzB,wBAAC,WAAI,IACH,SAAS,EAAC,0JAA0J,EACpK,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,aAEhC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CACtB,gCAAK,SAAS,EAAC,iFAAiF,YAC9F,uBAAC,oBAAK,IAAC,SAAS,EAAC,QAAQ,GAAG,GACxB,CACP,CAAC,CAAC,CAAC,IAAI,EACR,gCAAK,SAAS,EAAC,wDAAwD,YACpE,aAAa,CAAC,IAAI,CAAC,GAChB,EACN,iCAAK,SAAS,EAAC,UAAU,aACvB,8BAAG,SAAS,EAAC,8BAA8B,YAAE,IAAI,CAAC,IAAI,GAAK,EAC3D,+BAAG,SAAS,EAAC,wCAAwC,aAClD,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,cAAK,IAAI,CAAC,IAAI,IACtC,IACA,IACD,GACY,EACrB,uBAAC,iCAAuB,IAAC,IAAI,EAAE,IAAI,GAAI,KAtBvB,IAAI,CAAC,GAAG,CAuBZ,CACf,CAAC,GACE,CACP,CAAA;AACH,CAAC"}