@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,415 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { Circle, RotateCcw, RotateCw, Square } from 'lucide-react';
4
+ import { useEffect, useRef, useState } from 'react';
5
+ import { Button } from '../../../ui/button.js';
6
+ import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, } from '../../../ui/dialog.js';
7
+ import { Input } from '../../../ui/input.js';
8
+ import { Label } from '../../../ui/label.js';
9
+ import { cn } from '../../../../lib/utils.js';
10
+ const clamp = (value, min, max) => Math.max(min, Math.min(max, value));
11
+ const MIN_CROP_SIZE = 5;
12
+ const resizeHandles = [
13
+ {
14
+ mode: 'n',
15
+ label: 'Resize top edge',
16
+ className: 'left-1/2 top-0 h-7 w-20 -translate-x-1/2 -translate-y-1/2 cursor-ns-resize',
17
+ gripClassName: 'h-2 w-14 rounded-full',
18
+ },
19
+ {
20
+ mode: 's',
21
+ label: 'Resize bottom edge',
22
+ className: 'bottom-0 left-1/2 h-7 w-20 -translate-x-1/2 translate-y-1/2 cursor-ns-resize',
23
+ gripClassName: 'h-2 w-14 rounded-full',
24
+ },
25
+ {
26
+ mode: 'w',
27
+ label: 'Resize left edge',
28
+ className: 'left-0 top-1/2 h-20 w-7 -translate-x-1/2 -translate-y-1/2 cursor-ew-resize',
29
+ gripClassName: 'h-14 w-2 rounded-full',
30
+ },
31
+ {
32
+ mode: 'e',
33
+ label: 'Resize right edge',
34
+ className: 'right-0 top-1/2 h-20 w-7 -translate-y-1/2 translate-x-1/2 cursor-ew-resize',
35
+ gripClassName: 'h-14 w-2 rounded-full',
36
+ },
37
+ {
38
+ mode: 'nw',
39
+ label: 'Resize top left corner',
40
+ className: 'left-0 top-0 h-8 w-8 -translate-x-1/2 -translate-y-1/2 cursor-nwse-resize',
41
+ gripClassName: 'h-4 w-4 rounded-[4px]',
42
+ },
43
+ {
44
+ mode: 'ne',
45
+ label: 'Resize top right corner',
46
+ className: 'right-0 top-0 h-8 w-8 -translate-y-1/2 translate-x-1/2 cursor-nesw-resize',
47
+ gripClassName: 'h-4 w-4 rounded-[4px]',
48
+ },
49
+ {
50
+ mode: 'sw',
51
+ label: 'Resize bottom left corner',
52
+ className: 'bottom-0 left-0 h-8 w-8 -translate-x-1/2 translate-y-1/2 cursor-nesw-resize',
53
+ gripClassName: 'h-4 w-4 rounded-[4px]',
54
+ },
55
+ {
56
+ mode: 'se',
57
+ label: 'Resize bottom right corner',
58
+ className: 'bottom-0 right-0 h-8 w-8 translate-x-1/2 translate-y-1/2 cursor-nwse-resize',
59
+ gripClassName: 'h-4 w-4 rounded-[4px]',
60
+ },
61
+ ];
62
+ const cropInputs = [
63
+ { key: 'x', label: 'X' },
64
+ { key: 'y', label: 'Y' },
65
+ { key: 'width', label: 'W' },
66
+ { key: 'height', label: 'H' },
67
+ ];
68
+ const circleCropInputs = [
69
+ { key: 'x', label: 'X' },
70
+ { key: 'y', label: 'Y' },
71
+ { key: 'diameter', label: 'D' },
72
+ ];
73
+ const circleResizeHandles = resizeHandles.filter(({ mode }) => ['n', 'e', 's', 'w'].includes(mode));
74
+ const normalizeCrop = (crop) => {
75
+ const width = clamp(crop.width, MIN_CROP_SIZE, 100);
76
+ const height = clamp(crop.height, MIN_CROP_SIZE, 100);
77
+ return {
78
+ width,
79
+ height,
80
+ x: clamp(crop.x, 0, 100 - width),
81
+ y: clamp(crop.y, 0, 100 - height),
82
+ };
83
+ };
84
+ const cropToPixelRect = (crop, bounds) => {
85
+ const left = (crop.x / 100) * bounds.width;
86
+ const top = (crop.y / 100) * bounds.height;
87
+ const width = (crop.width / 100) * bounds.width;
88
+ const height = (crop.height / 100) * bounds.height;
89
+ return {
90
+ left,
91
+ top,
92
+ width,
93
+ height,
94
+ right: left + width,
95
+ bottom: top + height,
96
+ centerX: left + width / 2,
97
+ centerY: top + height / 2,
98
+ };
99
+ };
100
+ const minCircleDiameterFor = (bounds) => (Math.min(bounds.width, bounds.height) * MIN_CROP_SIZE) / 100;
101
+ const pixelCircleToCrop = ({ left, top, diameter, bounds, }) => {
102
+ const minDiameter = minCircleDiameterFor(bounds);
103
+ const nextDiameter = clamp(diameter, minDiameter, Math.min(bounds.width, bounds.height));
104
+ const nextLeft = clamp(left, 0, bounds.width - nextDiameter);
105
+ const nextTop = clamp(top, 0, bounds.height - nextDiameter);
106
+ return {
107
+ x: (nextLeft / bounds.width) * 100,
108
+ y: (nextTop / bounds.height) * 100,
109
+ width: (nextDiameter / bounds.width) * 100,
110
+ height: (nextDiameter / bounds.height) * 100,
111
+ };
112
+ };
113
+ const normalizeCircleCrop = (crop, bounds) => {
114
+ const rect = cropToPixelRect(crop, bounds);
115
+ const diameter = Math.min(rect.width, rect.height);
116
+ return pixelCircleToCrop({
117
+ left: rect.left,
118
+ top: rect.top,
119
+ diameter,
120
+ bounds,
121
+ });
122
+ };
123
+ const cropToCenteredCircle = (crop, bounds) => {
124
+ const rect = cropToPixelRect(crop, bounds);
125
+ const diameter = Math.min(rect.width, rect.height);
126
+ return pixelCircleToCrop({
127
+ left: rect.centerX - diameter / 2,
128
+ top: rect.centerY - diameter / 2,
129
+ diameter,
130
+ bounds,
131
+ });
132
+ };
133
+ const outputMimeFor = (mime, shape) => shape === 'circle'
134
+ ? 'image/png'
135
+ : mime === 'image/png' || mime === 'image/webp'
136
+ ? mime
137
+ : 'image/jpeg';
138
+ const extensionFor = (mime) => mime === 'image/png' ? 'png' : mime === 'image/webp' ? 'webp' : 'jpg';
139
+ const getCropFromPointer = ({ drag, event, bounds, shape, }) => {
140
+ const dx = ((event.clientX - drag.pointerX) / bounds.width) * 100;
141
+ const dy = ((event.clientY - drag.pointerY) / bounds.height) * 100;
142
+ const dxPx = event.clientX - drag.pointerX;
143
+ const dyPx = event.clientY - drag.pointerY;
144
+ if (drag.mode === 'move') {
145
+ const next = {
146
+ ...drag.crop,
147
+ x: drag.crop.x + dx,
148
+ y: drag.crop.y + dy,
149
+ };
150
+ return shape === 'circle' ? normalizeCircleCrop(next, bounds) : normalizeCrop(next);
151
+ }
152
+ if (shape === 'circle') {
153
+ const rect = cropToPixelRect(drag.crop, bounds);
154
+ const minDiameter = minCircleDiameterFor(bounds);
155
+ const maxCenteredWidth = 2 * Math.min(rect.centerX, bounds.width - rect.centerX);
156
+ const maxCenteredHeight = 2 * Math.min(rect.centerY, bounds.height - rect.centerY);
157
+ let left = rect.left;
158
+ let top = rect.top;
159
+ let diameter = rect.width;
160
+ if (drag.mode.includes('w')) {
161
+ const right = rect.right;
162
+ diameter = clamp(right - (rect.left + dxPx), minDiameter, Math.min(right, maxCenteredHeight));
163
+ left = right - diameter;
164
+ top = rect.centerY - diameter / 2;
165
+ }
166
+ else if (drag.mode.includes('e')) {
167
+ diameter = clamp(rect.width + dxPx, minDiameter, Math.min(bounds.width - left, maxCenteredHeight));
168
+ top = rect.centerY - diameter / 2;
169
+ }
170
+ else if (drag.mode.includes('n')) {
171
+ const bottom = rect.bottom;
172
+ diameter = clamp(bottom - (rect.top + dyPx), minDiameter, Math.min(bottom, maxCenteredWidth));
173
+ left = rect.centerX - diameter / 2;
174
+ top = bottom - diameter;
175
+ }
176
+ else if (drag.mode.includes('s')) {
177
+ diameter = clamp(rect.height + dyPx, minDiameter, Math.min(bounds.height - top, maxCenteredWidth));
178
+ left = rect.centerX - diameter / 2;
179
+ }
180
+ return pixelCircleToCrop({ left, top, diameter, bounds });
181
+ }
182
+ const next = { ...drag.crop };
183
+ let left = drag.crop.x;
184
+ let top = drag.crop.y;
185
+ let right = drag.crop.x + drag.crop.width;
186
+ let bottom = drag.crop.y + drag.crop.height;
187
+ if (drag.mode.includes('w'))
188
+ left = clamp(left + dx, 0, right - MIN_CROP_SIZE);
189
+ if (drag.mode.includes('e'))
190
+ right = clamp(right + dx, left + MIN_CROP_SIZE, 100);
191
+ if (drag.mode.includes('n'))
192
+ top = clamp(top + dy, 0, bottom - MIN_CROP_SIZE);
193
+ if (drag.mode.includes('s'))
194
+ bottom = clamp(bottom + dy, top + MIN_CROP_SIZE, 100);
195
+ return normalizeCrop({
196
+ ...next,
197
+ x: left,
198
+ y: top,
199
+ width: right - left,
200
+ height: bottom - top,
201
+ });
202
+ };
203
+ export default function MediaImageEditorDialog({ target, imageUrl, isSaving, onClose, onSave, }) {
204
+ const layerRef = useRef(null);
205
+ const dragRef = useRef(null);
206
+ const shapeRef = useRef('rectangle');
207
+ const [objectUrl, setObjectUrl] = useState('');
208
+ const [image, setImage] = useState(null);
209
+ const [crop, setCrop] = useState({
210
+ x: 12,
211
+ y: 12,
212
+ width: 76,
213
+ height: 76,
214
+ });
215
+ const [shape, setShape] = useState('rectangle');
216
+ const [rotation, setRotation] = useState(0);
217
+ const [isLoadingImage, setIsLoadingImage] = useState(false);
218
+ const getCircleBounds = () => {
219
+ const bounds = layerRef.current?.getBoundingClientRect();
220
+ if (bounds?.width && bounds.height)
221
+ return bounds;
222
+ if (image?.naturalWidth && image.naturalHeight) {
223
+ return { width: image.naturalWidth, height: image.naturalHeight };
224
+ }
225
+ return null;
226
+ };
227
+ useEffect(() => {
228
+ shapeRef.current = shape;
229
+ }, [shape]);
230
+ useEffect(() => {
231
+ if (!target || !imageUrl)
232
+ return;
233
+ let cancelled = false;
234
+ let nextObjectUrl = '';
235
+ setIsLoadingImage(true);
236
+ setImage(null);
237
+ setCrop({ x: 12, y: 12, width: 76, height: 76 });
238
+ setShape('rectangle');
239
+ setRotation(0);
240
+ void (async () => {
241
+ const response = await fetch(imageUrl);
242
+ const blob = await response.blob();
243
+ nextObjectUrl = URL.createObjectURL(blob);
244
+ const nextImage = new Image();
245
+ nextImage.src = nextObjectUrl;
246
+ await nextImage.decode();
247
+ if (!cancelled) {
248
+ setObjectUrl(nextObjectUrl);
249
+ setImage(nextImage);
250
+ setIsLoadingImage(false);
251
+ }
252
+ })().catch(() => {
253
+ if (!cancelled)
254
+ setIsLoadingImage(false);
255
+ });
256
+ return () => {
257
+ cancelled = true;
258
+ if (nextObjectUrl)
259
+ URL.revokeObjectURL(nextObjectUrl);
260
+ };
261
+ }, [target, imageUrl]);
262
+ useEffect(() => {
263
+ return () => {
264
+ if (objectUrl)
265
+ URL.revokeObjectURL(objectUrl);
266
+ };
267
+ }, [objectUrl]);
268
+ useEffect(() => {
269
+ const handlePointerMove = (event) => {
270
+ const drag = dragRef.current;
271
+ const bounds = layerRef.current?.getBoundingClientRect();
272
+ if (!drag || !bounds)
273
+ return;
274
+ setCrop(getCropFromPointer({ drag, event, bounds, shape: shapeRef.current }));
275
+ };
276
+ const handlePointerUp = () => {
277
+ dragRef.current = null;
278
+ };
279
+ window.addEventListener('pointermove', handlePointerMove);
280
+ window.addEventListener('pointerup', handlePointerUp);
281
+ return () => {
282
+ window.removeEventListener('pointermove', handlePointerMove);
283
+ window.removeEventListener('pointerup', handlePointerUp);
284
+ };
285
+ }, []);
286
+ const cropLabel = (() => {
287
+ if (shape === 'circle') {
288
+ const bounds = getCircleBounds();
289
+ const diameter = bounds
290
+ ? (cropToPixelRect(crop, bounds).width / Math.min(bounds.width, bounds.height)) * 100
291
+ : Math.min(crop.width, crop.height);
292
+ return `D ${Math.round(diameter)}% at ${Math.round(crop.x)}, ${Math.round(crop.y)}`;
293
+ }
294
+ return `${Math.round(crop.width)}% x ${Math.round(crop.height)}% at ${Math.round(crop.x)}, ${Math.round(crop.y)}`;
295
+ })();
296
+ const startDrag = (mode, event) => {
297
+ event.preventDefault();
298
+ event.stopPropagation();
299
+ dragRef.current = {
300
+ mode,
301
+ pointerX: event.clientX,
302
+ pointerY: event.clientY,
303
+ crop,
304
+ };
305
+ };
306
+ const setCropShape = (nextShape) => {
307
+ setShape(nextShape);
308
+ if (nextShape === 'circle') {
309
+ setCrop((prev) => {
310
+ const bounds = getCircleBounds();
311
+ return bounds ? cropToCenteredCircle(prev, bounds) : normalizeCrop(prev);
312
+ });
313
+ }
314
+ };
315
+ const getCropInputValue = (key) => {
316
+ if (key !== 'diameter')
317
+ return Number(crop[key].toFixed(1));
318
+ const bounds = getCircleBounds();
319
+ if (!bounds)
320
+ return Number(Math.min(crop.width, crop.height).toFixed(1));
321
+ const diameter = (cropToPixelRect(crop, bounds).width / Math.min(bounds.width, bounds.height)) * 100;
322
+ return Number(diameter.toFixed(1));
323
+ };
324
+ const setCropValue = (key, value) => {
325
+ if (Number.isNaN(value))
326
+ return;
327
+ setCrop((prev) => {
328
+ if (shapeRef.current !== 'circle') {
329
+ if (key === 'diameter')
330
+ return prev;
331
+ return normalizeCrop({ ...prev, [key]: value });
332
+ }
333
+ const bounds = getCircleBounds();
334
+ if (!bounds)
335
+ return prev;
336
+ const rect = cropToPixelRect(prev, bounds);
337
+ if (key === 'diameter' || key === 'width' || key === 'height') {
338
+ const axisSize = key === 'height'
339
+ ? bounds.height
340
+ : key === 'width'
341
+ ? bounds.width
342
+ : Math.min(bounds.width, bounds.height);
343
+ const diameter = (clamp(value, MIN_CROP_SIZE, 100) / 100) * axisSize;
344
+ return pixelCircleToCrop({
345
+ left: rect.centerX - diameter / 2,
346
+ top: rect.centerY - diameter / 2,
347
+ diameter,
348
+ bounds,
349
+ });
350
+ }
351
+ return normalizeCircleCrop({ ...prev, [key]: value }, bounds);
352
+ });
353
+ };
354
+ const handleSave = async () => {
355
+ if (!target || !image)
356
+ return;
357
+ const sourceWidth = image.naturalWidth;
358
+ const sourceHeight = image.naturalHeight;
359
+ const sx = Math.round((crop.x / 100) * sourceWidth);
360
+ const sy = Math.round((crop.y / 100) * sourceHeight);
361
+ const sw = Math.max(1, Math.round((crop.width / 100) * sourceWidth));
362
+ const sh = Math.max(1, Math.round((crop.height / 100) * sourceHeight));
363
+ const normalizedRotation = ((rotation % 360) + 360) % 360;
364
+ const rotatedSideways = normalizedRotation === 90 || normalizedRotation === 270;
365
+ const canvas = document.createElement('canvas');
366
+ canvas.width = rotatedSideways ? sh : sw;
367
+ canvas.height = rotatedSideways ? sw : sh;
368
+ const ctx = canvas.getContext('2d');
369
+ if (!ctx)
370
+ return;
371
+ ctx.translate(canvas.width / 2, canvas.height / 2);
372
+ ctx.rotate((normalizedRotation * Math.PI) / 180);
373
+ ctx.drawImage(image, sx, sy, sw, sh, -sw / 2, -sh / 2, sw, sh);
374
+ if (shape === 'circle') {
375
+ const maskCanvas = document.createElement('canvas');
376
+ const side = Math.min(canvas.width, canvas.height);
377
+ maskCanvas.width = side;
378
+ maskCanvas.height = side;
379
+ const maskCtx = maskCanvas.getContext('2d');
380
+ if (!maskCtx)
381
+ return;
382
+ maskCtx.save();
383
+ maskCtx.beginPath();
384
+ maskCtx.arc(side / 2, side / 2, side / 2, 0, Math.PI * 2);
385
+ maskCtx.clip();
386
+ maskCtx.drawImage(canvas, (canvas.width - side) / 2, (canvas.height - side) / 2, side, side, 0, 0, side, side);
387
+ maskCtx.restore();
388
+ canvas.width = side;
389
+ canvas.height = side;
390
+ ctx.clearRect(0, 0, side, side);
391
+ ctx.drawImage(maskCanvas, 0, 0);
392
+ }
393
+ const mime = outputMimeFor(target.mime, shape);
394
+ const blob = await new Promise((resolve, reject) => {
395
+ canvas.toBlob((result) => {
396
+ if (result)
397
+ resolve(result);
398
+ else
399
+ reject(new Error('Could not export edited image'));
400
+ }, mime, 0.92);
401
+ });
402
+ const baseName = target.name.replace(/\.[^.]+$/, '');
403
+ const file = new File([blob], `${baseName}-edited.${extensionFor(mime)}`, {
404
+ type: mime,
405
+ });
406
+ await onSave(file);
407
+ };
408
+ return (_jsx(Dialog, { open: !!target, onOpenChange: (open) => !open && onClose(), children: _jsxs(DialogContent, { className: "max-h-[90svh] w-[calc(100vw-2rem)] max-w-5xl! overflow-y-auto", children: [_jsxs(DialogHeader, { children: [_jsx(DialogTitle, { children: "Crop and rotate image" }), _jsx(DialogDescription, { children: "Drag the crop area, resize from any edge, then save a copy." })] }), _jsxs("div", { className: "grid gap-6 lg:grid-cols-[minmax(0,1fr)_18rem]", children: [_jsx("div", { className: "flex min-h-88 items-center justify-center overflow-hidden rounded-lg border bg-neutral-950 p-3", children: isLoadingImage ? (_jsx("div", { className: "text-sm text-muted-foreground", children: "Loading image..." })) : objectUrl ? (_jsxs("div", { className: "relative inline-block max-h-[55vh] max-w-full select-none touch-none", children: [_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)` } }), _jsx("div", { ref: layerRef, className: "absolute inset-0", children: _jsx("div", { className: 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: {
409
+ left: `${crop.x}%`,
410
+ top: `${crop.y}%`,
411
+ width: `${crop.width}%`,
412
+ height: `${crop.height}%`,
413
+ }, onPointerDown: (event) => startDrag('move', event), children: (shape === 'circle' ? circleResizeHandles : resizeHandles).map((handle) => (_jsx("button", { type: "button", "aria-label": handle.label, className: 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: _jsx("span", { className: cn('block bg-white shadow-sm ring-1 ring-neutral-950/15', handle.gripClassName) }) }, handle.mode))) }) })] })) : (_jsx("div", { className: "text-sm text-muted-foreground", children: "Image could not be loaded." })) }), _jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "grid gap-2", children: [_jsx(Label, { children: "Shape" }), _jsxs("div", { className: "grid grid-cols-2 gap-2", children: [_jsxs(Button, { type: "button", variant: shape === 'rectangle' ? 'default' : 'outline', onClick: () => setCropShape('rectangle'), children: [_jsx(Square, { className: "size-4" }), "Rectangle"] }), _jsxs(Button, { type: "button", variant: shape === 'circle' ? 'default' : 'outline', onClick: () => setCropShape('circle'), children: [_jsx(Circle, { className: "size-4" }), "Circle"] })] })] }), _jsxs("div", { className: "grid gap-2", children: [_jsx(Label, { children: "Rotation" }), _jsxs("div", { className: "grid grid-cols-2 gap-2", children: [_jsxs(Button, { type: "button", variant: "outline", onClick: () => setRotation((v) => v - 90), children: [_jsx(RotateCcw, { className: "size-4" }), "Left"] }), _jsxs(Button, { type: "button", variant: "outline", onClick: () => setRotation((v) => v + 90), children: [_jsx(RotateCw, { className: "size-4" }), "Right"] })] })] }), _jsxs("div", { className: "rounded-md border p-3", children: [_jsx(Label, { children: "Crop area" }), _jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: cropLabel }), _jsx("div", { className: "mt-3 grid grid-cols-2 gap-2", children: (shape === 'circle' ? circleCropInputs : cropInputs).map((input) => (_jsxs("div", { className: "grid gap-1", children: [_jsxs(Label, { htmlFor: `crop-${input.key}`, className: "text-xs text-muted-foreground", children: [input.label, " %"] }), _jsx(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))) })] })] })] }), _jsxs(DialogFooter, { children: [_jsx(Button, { type: "button", variant: "ghost", onClick: onClose, children: "Cancel" }), _jsx(Button, { loading: isSaving, disabled: !image || isLoadingImage, onClick: () => void handleSave(), children: "Save copy" })] })] }) }));
414
+ }
415
+ //# 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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"}
@@ -1,5 +1,6 @@
1
1
  type MoveTarget = {
2
- id: string;
2
+ id?: string;
3
+ ids?: string[];
3
4
  name: string;
4
5
  currentFolderId?: string;
5
6
  };
@@ -1 +1 @@
1
- {"version":3,"file":"MediaMoveDialog.d.ts","sourceRoot":"","sources":["../../../../../../src/components/media/previews/dialogs/MediaMoveDialog.tsx"],"names":[],"mappings":"AAmBA,KAAK,UAAU,GAAG;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,KAAK,YAAY,GAAG;IAClB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,KAAK,oBAAoB,GAAG;IAC1B,MAAM,EAAE,UAAU,GAAG,IAAI,CAAA;IACzB,OAAO,EAAE,YAAY,EAAE,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,OAAO,CAAA;IAClB,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACtC,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,SAAS,EAAE,MAAM,IAAI,CAAA;CACtB,CAAA;AAED,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,MAAM,EACN,OAAO,EACP,KAAK,EACL,SAAS,EACT,aAAa,EACb,OAAO,EACP,SAAS,GACV,EAAE,oBAAoB,2CA+CtB"}
1
+ {"version":3,"file":"MediaMoveDialog.d.ts","sourceRoot":"","sources":["../../../../../../src/components/media/previews/dialogs/MediaMoveDialog.tsx"],"names":[],"mappings":"AAmBA,KAAK,UAAU,GAAG;IAChB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,GAAG,CAAC,EAAE,MAAM,EAAE,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,KAAK,YAAY,GAAG;IAClB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,KAAK,oBAAoB,GAAG;IAC1B,MAAM,EAAE,UAAU,GAAG,IAAI,CAAA;IACzB,OAAO,EAAE,YAAY,EAAE,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,OAAO,CAAA;IAClB,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACtC,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,SAAS,EAAE,MAAM,IAAI,CAAA;CACtB,CAAA;AAED,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,MAAM,EACN,OAAO,EACP,KAAK,EACL,SAAS,EACT,aAAa,EACb,OAAO,EACP,SAAS,GACV,EAAE,oBAAoB,2CAsDtB"}
@@ -1,10 +1,14 @@
1
1
  'use client';
2
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
3
3
  import { Button } from '../../../ui/button.js';
4
4
  import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, } from '../../../ui/dialog.js';
5
5
  import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from '../../../ui/select.js';
6
6
  export default function MediaMoveDialog({ target, folders, value, isLoading, onValueChange, onClose, onConfirm, }) {
7
- return (_jsx(Dialog, { open: !!target, onOpenChange: (open) => !open && onClose(), children: _jsxs(DialogContent, { "aria-describedby": 'Move media item', children: [_jsx(DialogHeader, { children: _jsx(DialogTitle, { children: "Move file" }) }), _jsxs(DialogDescription, { children: ["Select the destination folder for \"", target?.name, "\"."] }), _jsx("div", { className: 'py-2', children: _jsxs(Select, { value: value, onValueChange: onValueChange, children: [_jsx(SelectTrigger, { className: 'w-full', children: _jsx(SelectValue, { placeholder: 'Select folder' }) }), _jsx(SelectContent, { children: folders.map((folder) => (_jsx(SelectItem, { value: folder._id ?? '__root__', children: folder.path }, folder._id ?? 'root'))) })] }) }), _jsxs(DialogFooter, { children: [_jsx(Button, { variant: 'ghost', onClick: onClose, children: "Cancel" }), _jsx(Button, { loading: isLoading, disabled: !value ||
7
+ const bulkCount = target?.ids?.length ?? 0;
8
+ const isBulk = bulkCount > 0;
9
+ return (_jsx(Dialog, { open: !!target, onOpenChange: (open) => !open && onClose(), children: _jsxs(DialogContent, { "aria-describedby": 'Move media item', children: [_jsx(DialogHeader, { children: _jsxs(DialogTitle, { children: ["Move ", bulkCount > 1 ? 'files' : 'file'] }) }), _jsx(DialogDescription, { children: isBulk
10
+ ? `Select the destination folder for ${bulkCount} selected file${bulkCount === 1 ? '' : 's'}.`
11
+ : `Select the destination folder for "${target?.name}".` }), _jsx("div", { className: 'py-2', children: _jsxs(Select, { value: value, onValueChange: onValueChange, children: [_jsx(SelectTrigger, { className: 'w-full', children: _jsx(SelectValue, { placeholder: 'Select folder' }) }), _jsx(SelectContent, { children: folders.map((folder) => (_jsx(SelectItem, { value: folder._id ?? '__root__', children: folder.path }, folder._id ?? 'root'))) })] }) }), _jsxs(DialogFooter, { children: [_jsx(Button, { variant: 'ghost', onClick: onClose, children: "Cancel" }), _jsx(Button, { loading: isLoading, disabled: !value ||
8
12
  !target ||
9
13
  value === (target.currentFolderId ?? '__root__') ||
10
14
  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;;AAEZ,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EACL,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,MAAM,EACN,aAAa,EACb,UAAU,EACV,aAAa,EACb,WAAW,GACZ,MAAM,oBAAoB,CAAA;AAwB3B,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,MAAM,EACN,OAAO,EACP,KAAK,EACL,SAAS,EACT,aAAa,EACb,OAAO,EACP,SAAS,GACY;IACrB,OAAO,CACL,KAAC,MAAM,IAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,OAAO,EAAE,YAChE,MAAC,aAAa,wBAAkB,iBAAiB,aAC/C,KAAC,YAAY,cACX,KAAC,WAAW,4BAAwB,GACvB,EACf,MAAC,iBAAiB,uDACoB,MAAM,EAAE,IAAI,WAC9B,EACpB,cAAK,SAAS,EAAC,MAAM,YACnB,MAAC,MAAM,IAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,aAChD,KAAC,aAAa,IAAC,SAAS,EAAC,QAAQ,YAC/B,KAAC,WAAW,IAAC,WAAW,EAAC,eAAe,GAAG,GAC7B,EAChB,KAAC,aAAa,cACX,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,KAAC,UAAU,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,MAAC,YAAY,eACX,KAAC,MAAM,IAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAE,OAAO,uBAE/B,EACT,KAAC,MAAM,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;;AAEZ,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EACL,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,MAAM,EACN,aAAa,EACb,UAAU,EACV,aAAa,EACb,WAAW,GACZ,MAAM,oBAAoB,CAAA;AAyB3B,MAAM,CAAC,OAAO,UAAU,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,KAAC,MAAM,IAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,OAAO,EAAE,YAChE,MAAC,aAAa,wBAAkB,iBAAiB,aAC/C,KAAC,YAAY,cACX,MAAC,WAAW,wBACJ,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,IAC1B,GACD,EACf,KAAC,iBAAiB,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,cAAK,SAAS,EAAC,MAAM,YACnB,MAAC,MAAM,IAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,aAChD,KAAC,aAAa,IAAC,SAAS,EAAC,QAAQ,YAC/B,KAAC,WAAW,IAAC,WAAW,EAAC,eAAe,GAAG,GAC7B,EAChB,KAAC,aAAa,cACX,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,KAAC,UAAU,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,MAAC,YAAY,eACX,KAAC,MAAM,IAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAE,OAAO,uBAE/B,EACT,KAAC,MAAM,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,2 +1,3 @@
1
1
  export default function PreviewsToolbar(): import("react/jsx-runtime").JSX.Element;
2
+ export declare function PreviewsSelectionToolbar(): import("react/jsx-runtime").JSX.Element | null;
2
3
  //# sourceMappingURL=PreviewsToolbar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PreviewsToolbar.d.ts","sourceRoot":"","sources":["../../../../../../src/components/media/previews/toolbar/PreviewsToolbar.tsx"],"names":[],"mappings":"AAkCA,MAAM,CAAC,OAAO,UAAU,eAAe,4CAgLtC"}
1
+ {"version":3,"file":"PreviewsToolbar.d.ts","sourceRoot":"","sources":["../../../../../../src/components/media/previews/toolbar/PreviewsToolbar.tsx"],"names":[],"mappings":"AA0BA,MAAM,CAAC,OAAO,UAAU,eAAe,4CAsLtC;AAED,wBAAgB,wBAAwB,mDA6BvC"}
@@ -1,11 +1,11 @@
1
1
  'use client';
2
2
  import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
3
- import { FilmIcon, Grid2x2, Image, LayoutGrid, List, Loader2, Upload, FileText, SlidersHorizontal, } from 'lucide-react';
3
+ import { FilmIcon, FolderInput, Grid2x2, Image, LayoutGrid, List, Loader2, Upload, FileText, SlidersHorizontal, Trash2, } from 'lucide-react';
4
4
  import { Button } from '../../../ui/button.js';
5
5
  import { FileUploadClear, FileUploadTrigger } from '../../../ui/file-upload.js';
6
6
  import { Input } from '../../../ui/input.js';
7
- import { Popover, PopoverContent, PopoverTrigger, } from '../../../ui/popover.js';
8
- import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from '../../../ui/select.js';
7
+ import { Popover, PopoverContent, PopoverTrigger } from '../../../ui/popover.js';
8
+ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '../../../ui/select.js';
9
9
  import { Switch } from '../../../ui/switch.js';
10
10
  import { ToggleGroup, ToggleGroupItem } from '../../../ui/toggle-group.js';
11
11
  import { useMediaLibrary } from '../../contexts/MediaLibraryContext.js';
@@ -13,20 +13,26 @@ import { useMediaPreview } from '../context/MediaPreviewContext.js';
13
13
  export default function PreviewsToolbar() {
14
14
  const { mediaCount, isUploading, mediaTypeFilter, isMediaTypeFilterLocked, setMediaTypeFilter, viewMode, setViewMode, } = useMediaPreview();
15
15
  const { optimizeEnabled, optimizeLocked, optimizeOptions, setOptimizeEnabled, setOptimizeOptions, } = useMediaLibrary();
16
- return (_jsxs("div", { className: 'flex items-center justify-between gap-2 flex-wrap', children: [_jsxs("p", { className: 'text-muted-foreground text-sm', children: [mediaCount, " file", mediaCount === 1 ? '' : 's'] }), _jsxs("div", { className: 'flex items-center gap-2 flex-wrap', children: [_jsx(FileUploadTrigger, { asChild: true, children: _jsxs(Button, { size: 'sm', variant: 'outline', children: [_jsx(Upload, { className: 'size-4' }), "Upload"] }) }), _jsx(FileUploadClear, { className: 'inline-flex items-center rounded-md border px-3 py-1.5 font-medium text-sm hover:bg-accent/40', children: "Clear" }), _jsxs(Popover, { children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs(Button, { size: 'sm', variant: 'outline', children: [_jsx(SlidersHorizontal, { className: 'size-4' }), "Optimization"] }) }), _jsxs(PopoverContent, { align: 'end', className: 'w-80 space-y-4', children: [_jsxs("div", { className: 'flex items-center justify-between gap-2', children: [_jsx("p", { className: 'font-medium text-sm', children: "Enable optimization" }), _jsx(Switch, { checked: optimizeEnabled, disabled: optimizeLocked, onCheckedChange: setOptimizeEnabled })] }), optimizeLocked ? (_jsx("p", { className: 'text-muted-foreground text-xs', children: "Optimization is enforced by this field configuration." })) : null, _jsxs("div", { className: 'space-y-2', children: [_jsx("p", { className: 'text-muted-foreground text-xs', children: "Format" }), _jsxs(Select, { value: optimizeOptions.format, disabled: !optimizeEnabled, onValueChange: (value) => setOptimizeOptions({
16
+ return (_jsxs("div", { className: "flex items-center justify-between gap-2 flex-wrap", "data-tour": "media-toolbar", children: [_jsxs("p", { className: "text-muted-foreground text-sm", children: [mediaCount, " file", mediaCount === 1 ? '' : 's'] }), _jsxs("div", { className: "flex items-center gap-2 flex-wrap", children: [_jsx(FileUploadTrigger, { asChild: true, children: _jsxs(Button, { size: 'sm', variant: 'outline', children: [_jsx(Upload, { className: "size-4" }), "Upload"] }) }), _jsx(FileUploadClear, { className: "inline-flex items-center rounded-md border px-3 py-1.5 font-medium text-sm hover:bg-accent/40", children: "Clear" }), _jsxs(Popover, { children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs(Button, { size: "sm", variant: "outline", children: [_jsx(SlidersHorizontal, { className: "size-4" }), "Optimization"] }) }), _jsxs(PopoverContent, { align: "end", className: "w-[calc(100vw-2rem)] max-w-80 space-y-4", children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx("p", { className: "font-medium text-sm", children: "Enable optimization" }), _jsx(Switch, { checked: optimizeEnabled, disabled: optimizeLocked, onCheckedChange: setOptimizeEnabled })] }), optimizeLocked ? (_jsx("p", { className: "text-muted-foreground text-xs", children: "Optimization is enforced by this field configuration." })) : null, _jsxs("div", { className: "space-y-2", children: [_jsx("p", { className: "text-muted-foreground text-xs", children: "Format" }), _jsxs(Select, { value: optimizeOptions.format, disabled: !optimizeEnabled, onValueChange: (value) => setOptimizeOptions({
17
17
  format: value,
18
- }), children: [_jsx(SelectTrigger, { className: 'w-full', children: _jsx(SelectValue, { placeholder: 'Select format' }) }), _jsxs(SelectContent, { children: [_jsx(SelectItem, { value: 'webp', children: "webp" }), _jsx(SelectItem, { value: 'jpeg', children: "jpeg" }), _jsx(SelectItem, { value: 'png', children: "png" }), _jsx(SelectItem, { value: 'avif', children: "avif" })] })] })] }), _jsxs("div", { className: 'space-y-2', children: [_jsx("p", { className: 'text-muted-foreground text-xs', children: "Quality (1-100)" }), _jsx(Input, { type: 'number', min: 1, max: 100, disabled: !optimizeEnabled, value: optimizeOptions.quality, onChange: (event) => {
18
+ }), children: [_jsx(SelectTrigger, { className: "w-full", children: _jsx(SelectValue, { placeholder: "Select format" }) }), _jsxs(SelectContent, { children: [_jsx(SelectItem, { value: "webp", children: "webp" }), _jsx(SelectItem, { value: "jpeg", children: "jpeg" }), _jsx(SelectItem, { value: "png", children: "png" }), _jsx(SelectItem, { value: "avif", children: "avif" })] })] })] }), _jsxs("div", { className: "space-y-2", children: [_jsx("p", { className: "text-muted-foreground text-xs", children: "Quality (1-100)" }), _jsx(Input, { type: "number", min: 1, max: 100, disabled: !optimizeEnabled, value: optimizeOptions.quality, onChange: (event) => {
19
19
  const parsed = Number(event.target.value);
20
20
  if (!Number.isFinite(parsed))
21
21
  return;
22
22
  const value = Math.max(1, Math.min(100, Math.round(parsed)));
23
23
  setOptimizeOptions({ quality: value });
24
- } })] }), _jsxs("div", { className: 'flex items-center justify-between gap-2', children: [_jsx("p", { className: 'text-sm', children: "Generate preview" }), _jsx(Switch, { checked: optimizeOptions.generatePreview, disabled: !optimizeEnabled, onCheckedChange: (value) => setOptimizeOptions({ generatePreview: value }) })] })] })] }), isUploading ? (_jsxs("span", { className: 'inline-flex items-center gap-1 text-muted-foreground text-sm', children: [_jsx(Loader2, { className: 'size-4 animate-spin' }), "Uploading..."] })) : null, !isMediaTypeFilterLocked ? (_jsxs(ToggleGroup, { type: 'single', value: mediaTypeFilter, onValueChange: (value) => {
24
+ } })] }), _jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx("p", { className: "text-sm", children: "Generate preview" }), _jsx(Switch, { checked: optimizeOptions.generatePreview, disabled: !optimizeEnabled, onCheckedChange: (value) => setOptimizeOptions({ generatePreview: value }) })] }), _jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx("p", { className: "text-sm", children: "Generate responsive sizes" }), _jsx(Switch, { checked: optimizeOptions.generateSizes ?? true, disabled: !optimizeEnabled, onCheckedChange: (value) => setOptimizeOptions({ generateSizes: value }) })] })] })] }), isUploading ? (_jsxs("span", { className: "inline-flex items-center gap-1 text-muted-foreground text-sm", children: [_jsx(Loader2, { className: "size-4 animate-spin" }), "Uploading..."] })) : null, !isMediaTypeFilterLocked ? (_jsxs(ToggleGroup, { type: "single", value: mediaTypeFilter, onValueChange: (value) => {
25
25
  if (value)
26
26
  setMediaTypeFilter(value);
27
- }, variant: 'outline', className: 'max-w-full flex-wrap', children: [_jsx(ToggleGroupItem, { value: 'all', "aria-label": 'All files', className: 'flex-none whitespace-nowrap', children: "All" }), _jsxs(ToggleGroupItem, { value: 'image', "aria-label": 'Images', className: 'flex-none whitespace-nowrap', children: [_jsx(Image, { className: 'size-4' }), "Images"] }), _jsxs(ToggleGroupItem, { value: 'video', "aria-label": 'Videos', className: 'flex-none whitespace-nowrap', children: [_jsx(FilmIcon, { className: 'size-4' }), "Videos"] }), _jsxs(ToggleGroupItem, { value: 'document', "aria-label": 'Documents', className: 'flex-none whitespace-nowrap', children: [_jsx(FileText, { className: 'size-4' }), "Docs"] })] })) : null, _jsxs(ToggleGroup, { type: 'single', value: viewMode, onValueChange: (value) => {
27
+ }, variant: "outline", className: "max-w-full flex-wrap", children: [_jsx(ToggleGroupItem, { value: "all", "aria-label": "All files", className: "flex-none whitespace-nowrap", children: "All" }), _jsxs(ToggleGroupItem, { value: "image", "aria-label": "Images", className: "flex-none whitespace-nowrap", children: [_jsx(Image, { className: "size-4" }), "Images"] }), _jsxs(ToggleGroupItem, { value: "video", "aria-label": "Videos", className: "flex-none whitespace-nowrap", children: [_jsx(FilmIcon, { className: "size-4" }), "Videos"] }), _jsxs(ToggleGroupItem, { value: "document", "aria-label": "Documents", className: "flex-none whitespace-nowrap", children: [_jsx(FileText, { className: "size-4" }), "Docs"] })] })) : null, _jsxs(ToggleGroup, { type: "single", value: viewMode, onValueChange: (value) => {
28
28
  if (value)
29
29
  setViewMode(value);
30
- }, variant: 'outline', children: [_jsx(ToggleGroupItem, { value: 'list', "aria-label": 'List view', children: _jsx(List, { className: 'size-4' }) }), _jsx(ToggleGroupItem, { value: 'grid-sm', "aria-label": 'Small cards view', children: _jsx(Grid2x2, { className: 'size-4' }) }), _jsx(ToggleGroupItem, { value: 'grid-lg', "aria-label": 'Large cards view', children: _jsx(LayoutGrid, { className: 'size-4' }) })] })] })] }));
30
+ }, variant: "outline", children: [_jsx(ToggleGroupItem, { value: "list", "aria-label": "List view", children: _jsx(List, { className: "size-4" }) }), _jsx(ToggleGroupItem, { value: "grid-sm", "aria-label": "Small cards view", children: _jsx(Grid2x2, { className: "size-4" }) }), _jsx(ToggleGroupItem, { value: "grid-lg", "aria-label": "Large cards view", children: _jsx(LayoutGrid, { className: "size-4" }) })] })] })] }));
31
+ }
32
+ export function PreviewsSelectionToolbar() {
33
+ const { bulkSelectedCount, onRequestBulkDelete, onRequestBulkMove, onClearSelection } = useMediaPreview();
34
+ if (bulkSelectedCount === 0)
35
+ return null;
36
+ return (_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: _jsxs("div", { className: "flex flex-wrap items-center justify-center gap-2 rounded-md border bg-background px-3 py-2 shadow-lg", children: [_jsxs("span", { className: "min-w-20 text-center text-muted-foreground text-sm", children: [bulkSelectedCount, " selected"] }), _jsxs(Button, { size: "sm", variant: "outline", onClick: onRequestBulkMove, children: [_jsx(FolderInput, { className: "size-4" }), "Move"] }), _jsxs(Button, { size: "sm", variant: "destructive", onClick: onRequestBulkDelete, children: [_jsx(Trash2, { className: "size-4" }), "Delete"] }), _jsx(Button, { size: "sm", variant: "ghost", onClick: onClearSelection, children: "Cancel" })] }) }));
31
37
  }
32
38
  //# 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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"}
@@ -2,6 +2,6 @@ import type { MediaRecord } from '../../../../lib/media.js';
2
2
  type PreviewsGridLargeViewProps = {
3
3
  media: MediaRecord[];
4
4
  };
5
- export default function PreviewsGridLargeView({ media, }: PreviewsGridLargeViewProps): import("react/jsx-runtime").JSX.Element;
5
+ export default function PreviewsGridLargeView({ media }: PreviewsGridLargeViewProps): import("react/jsx-runtime").JSX.Element;
6
6
  export {};
7
7
  //# sourceMappingURL=PreviewsGridLargeView.d.ts.map