@payloadcms/ui 4.0.0-internal.532221d → 4.0.0-internal.567a487

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 (501) hide show
  1. package/dist/elements/AppHeader/index.css +5 -0
  2. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  3. package/dist/elements/AppHeader/index.js +3 -0
  4. package/dist/elements/AppHeader/index.js.map +1 -1
  5. package/dist/elements/ArrayAction/index.d.ts +1 -0
  6. package/dist/elements/ArrayAction/index.d.ts.map +1 -1
  7. package/dist/elements/ArrayAction/index.js +45 -32
  8. package/dist/elements/ArrayAction/index.js.map +1 -1
  9. package/dist/elements/Autosave/index.d.ts.map +1 -1
  10. package/dist/elements/Autosave/index.js +3 -0
  11. package/dist/elements/Autosave/index.js.map +1 -1
  12. package/dist/elements/BranchSelector/NewBranchModal/index.css +46 -0
  13. package/dist/elements/BranchSelector/NewBranchModal/index.d.ts +12 -0
  14. package/dist/elements/BranchSelector/NewBranchModal/index.d.ts.map +1 -0
  15. package/dist/elements/BranchSelector/NewBranchModal/index.js +174 -0
  16. package/dist/elements/BranchSelector/NewBranchModal/index.js.map +1 -0
  17. package/dist/elements/BranchSelector/index.css +172 -0
  18. package/dist/elements/BranchSelector/index.d.ts +13 -0
  19. package/dist/elements/BranchSelector/index.d.ts.map +1 -0
  20. package/dist/elements/BranchSelector/index.js +255 -0
  21. package/dist/elements/BranchSelector/index.js.map +1 -0
  22. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  23. package/dist/elements/BulkUpload/FormsManager/index.js +6 -2
  24. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  25. package/dist/elements/Button/index.css +2 -2
  26. package/dist/elements/ChangeSummary/index.css +18 -0
  27. package/dist/elements/ChangeSummary/index.d.ts +28 -0
  28. package/dist/elements/ChangeSummary/index.d.ts.map +1 -0
  29. package/dist/elements/ChangeSummary/index.js +147 -0
  30. package/dist/elements/ChangeSummary/index.js.map +1 -0
  31. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts +10 -0
  32. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts.map +1 -1
  33. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +55 -0
  34. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
  35. package/dist/elements/ColumnSelection/Popup.d.ts.map +1 -1
  36. package/dist/elements/ColumnSelection/Popup.js +3 -3
  37. package/dist/elements/ColumnSelection/Popup.js.map +1 -1
  38. package/dist/elements/Combobox/index.css +84 -23
  39. package/dist/elements/Combobox/index.d.ts +21 -0
  40. package/dist/elements/Combobox/index.d.ts.map +1 -1
  41. package/dist/elements/Combobox/index.js +66 -21
  42. package/dist/elements/Combobox/index.js.map +1 -1
  43. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  44. package/dist/elements/DeleteDocument/index.js +9 -2
  45. package/dist/elements/DeleteDocument/index.js.map +1 -1
  46. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  47. package/dist/elements/DeleteMany/index.js +4 -1
  48. package/dist/elements/DeleteMany/index.js.map +1 -1
  49. package/dist/elements/DocumentHeader/Tabs/Tab/index.css +5 -3
  50. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.css +12 -0
  51. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.d.ts +12 -0
  52. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.d.ts.map +1 -0
  53. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.js +83 -0
  54. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.js.map +1 -0
  55. package/dist/elements/DocumentHeader/Tabs/tabs/BranchSettingsTab/index.d.ts +14 -0
  56. package/dist/elements/DocumentHeader/Tabs/tabs/BranchSettingsTab/index.d.ts.map +1 -0
  57. package/dist/elements/DocumentHeader/Tabs/tabs/BranchSettingsTab/index.js +28 -0
  58. package/dist/elements/DocumentHeader/Tabs/tabs/BranchSettingsTab/index.js.map +1 -0
  59. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  60. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +32 -1
  61. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  62. package/dist/elements/Drawer/index.css +10 -4
  63. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +3 -2
  64. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  65. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  66. package/dist/elements/DuplicateDocument/index.js +6 -1
  67. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  68. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  69. package/dist/elements/EditMany/DrawerContent.js +4 -1
  70. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  71. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -1
  72. package/dist/elements/Hierarchy/ColumnBrowser/index.js +4 -1
  73. package/dist/elements/Hierarchy/ColumnBrowser/index.js.map +1 -1
  74. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +1 -1
  75. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +4 -1
  76. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +1 -1
  77. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts +2 -1
  78. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -1
  79. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js +2 -0
  80. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -1
  81. package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -1
  82. package/dist/elements/Hierarchy/Modal/index.js +3 -0
  83. package/dist/elements/Hierarchy/Modal/index.js.map +1 -1
  84. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
  85. package/dist/elements/Hierarchy/MoveMany/index.js +4 -1
  86. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
  87. package/dist/elements/Hierarchy/Search/useHierarchySearch.d.ts.map +1 -1
  88. package/dist/elements/Hierarchy/Search/useHierarchySearch.js +3 -0
  89. package/dist/elements/Hierarchy/Search/useHierarchySearch.js.map +1 -1
  90. package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -1
  91. package/dist/elements/Hierarchy/Tree/useChildren.js +4 -1
  92. package/dist/elements/Hierarchy/Tree/useChildren.js.map +1 -1
  93. package/dist/elements/IDLabel/index.css +6 -0
  94. package/dist/elements/IDLabel/index.d.ts +1 -1
  95. package/dist/elements/IDLabel/index.d.ts.map +1 -1
  96. package/dist/elements/IDLabel/index.js +16 -21
  97. package/dist/elements/IDLabel/index.js.map +1 -1
  98. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts +1 -7
  99. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts.map +1 -1
  100. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +26 -32
  101. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  102. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.d.ts.map +1 -1
  103. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +6 -2
  104. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  105. package/dist/elements/MergeBranch/context.d.ts +67 -0
  106. package/dist/elements/MergeBranch/context.d.ts.map +1 -0
  107. package/dist/elements/MergeBranch/context.js +47 -0
  108. package/dist/elements/MergeBranch/context.js.map +1 -0
  109. package/dist/elements/MergeBranch/index.css +136 -0
  110. package/dist/elements/MergeBranch/index.d.ts +15 -0
  111. package/dist/elements/MergeBranch/index.d.ts.map +1 -0
  112. package/dist/elements/MergeBranch/index.js +545 -0
  113. package/dist/elements/MergeBranch/index.js.map +1 -0
  114. package/dist/elements/MergeBranch/provider.d.ts +12 -0
  115. package/dist/elements/MergeBranch/provider.d.ts.map +1 -0
  116. package/dist/elements/MergeBranch/provider.js +19 -0
  117. package/dist/elements/MergeBranch/provider.js.map +1 -0
  118. package/dist/elements/MergeBranch/slug.d.ts +9 -0
  119. package/dist/elements/MergeBranch/slug.d.ts.map +1 -0
  120. package/dist/elements/MergeBranch/slug.js +8 -0
  121. package/dist/elements/MergeBranch/slug.js.map +1 -0
  122. package/dist/elements/Nav/context.js +2 -2
  123. package/dist/elements/Nav/context.js.map +1 -1
  124. package/dist/elements/Nav/getNavPrefs.d.ts +6 -0
  125. package/dist/elements/Nav/getNavPrefs.d.ts.map +1 -1
  126. package/dist/elements/Nav/getNavPrefs.js +14 -46
  127. package/dist/elements/Nav/getNavPrefs.js.map +1 -1
  128. package/dist/elements/NavGroup/index.js +1 -1
  129. package/dist/elements/NavGroup/index.js.map +1 -1
  130. package/dist/elements/PermanentlyDeleteButton/index.d.ts.map +1 -1
  131. package/dist/elements/PermanentlyDeleteButton/index.js +4 -1
  132. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
  133. package/dist/elements/Popup/PopupButtonList/index.css +1 -1
  134. package/dist/elements/Popup/index.js +1 -1
  135. package/dist/elements/Popup/index.js.map +1 -1
  136. package/dist/elements/PublishButton/ScheduleDrawer/index.js +1 -1
  137. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  138. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  139. package/dist/elements/PublishButton/index.js +6 -2
  140. package/dist/elements/PublishButton/index.js.map +1 -1
  141. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  142. package/dist/elements/PublishMany/DrawerContent.js +4 -1
  143. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  144. package/dist/elements/QueryPresets/QueryPresetBar/index.js +1 -3
  145. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  146. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  147. package/dist/elements/RelationshipTable/index.js +5 -2
  148. package/dist/elements/RelationshipTable/index.js.map +1 -1
  149. package/dist/elements/RestoreButton/index.d.ts.map +1 -1
  150. package/dist/elements/RestoreButton/index.js +4 -1
  151. package/dist/elements/RestoreButton/index.js.map +1 -1
  152. package/dist/elements/RestoreMany/index.d.ts.map +1 -1
  153. package/dist/elements/RestoreMany/index.js +3 -0
  154. package/dist/elements/RestoreMany/index.js.map +1 -1
  155. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  156. package/dist/elements/SaveDraftButton/index.js +15 -2
  157. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  158. package/dist/elements/SchedulePublishButton/index.d.ts.map +1 -1
  159. package/dist/elements/SchedulePublishButton/index.js +7 -1
  160. package/dist/elements/SchedulePublishButton/index.js.map +1 -1
  161. package/dist/elements/SortHeader/index.d.ts.map +1 -1
  162. package/dist/elements/SortHeader/index.js +29 -26
  163. package/dist/elements/SortHeader/index.js.map +1 -1
  164. package/dist/elements/Status/index.d.ts.map +1 -1
  165. package/dist/elements/Status/index.js +16 -3
  166. package/dist/elements/Status/index.js.map +1 -1
  167. package/dist/elements/StepNav/index.css +71 -14
  168. package/dist/elements/StepNav/index.d.ts.map +1 -1
  169. package/dist/elements/StepNav/index.js +135 -69
  170. package/dist/elements/StepNav/index.js.map +1 -1
  171. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.css +34 -0
  172. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.d.ts +13 -0
  173. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.d.ts.map +1 -0
  174. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.js +51 -0
  175. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.js.map +1 -0
  176. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  177. package/dist/elements/Table/DefaultCell/index.js +3 -11
  178. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  179. package/dist/elements/Table/OrderableTable.d.ts.map +1 -1
  180. package/dist/elements/Table/OrderableTable.js +3 -1
  181. package/dist/elements/Table/OrderableTable.js.map +1 -1
  182. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  183. package/dist/elements/Table/RelationshipProvider/index.js +29 -23
  184. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  185. package/dist/elements/UnpublishButton/index.d.ts.map +1 -1
  186. package/dist/elements/UnpublishButton/index.js +4 -1
  187. package/dist/elements/UnpublishButton/index.js.map +1 -1
  188. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  189. package/dist/elements/UnpublishMany/DrawerContent.js +4 -1
  190. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  191. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
  192. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +3 -0
  193. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  194. package/dist/exports/client/index.d.ts +19 -1
  195. package/dist/exports/client/index.d.ts.map +1 -1
  196. package/dist/exports/client/index.js +1 -1
  197. package/dist/exports/client/index.js.map +3 -3
  198. package/dist/fields/Array/ArrayRow.d.ts +1 -0
  199. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  200. package/dist/fields/Array/ArrayRow.js +2 -0
  201. package/dist/fields/Array/ArrayRow.js.map +1 -1
  202. package/dist/fields/Array/index.d.ts.map +1 -1
  203. package/dist/fields/Array/index.js +38 -10
  204. package/dist/fields/Array/index.js.map +1 -1
  205. package/dist/fields/Blocks/BlockRow.d.ts +1 -0
  206. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  207. package/dist/fields/Blocks/BlockRow.js +2 -0
  208. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  209. package/dist/fields/Blocks/RowActions.d.ts +1 -0
  210. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  211. package/dist/fields/Blocks/RowActions.js +22 -19
  212. package/dist/fields/Blocks/RowActions.js.map +1 -1
  213. package/dist/fields/Blocks/index.d.ts.map +1 -1
  214. package/dist/fields/Blocks/index.js +35 -7
  215. package/dist/fields/Blocks/index.js.map +1 -1
  216. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  217. package/dist/fields/Relationship/Input.js +5 -1
  218. package/dist/fields/Relationship/Input.js.map +1 -1
  219. package/dist/fields/Upload/Input.d.ts.map +1 -1
  220. package/dist/fields/Upload/Input.js +4 -1
  221. package/dist/fields/Upload/Input.js.map +1 -1
  222. package/dist/forms/Form/index.d.ts.map +1 -1
  223. package/dist/forms/Form/index.js +4 -1
  224. package/dist/forms/Form/index.js.map +1 -1
  225. package/dist/hooks/usePayloadAPI.d.ts.map +1 -1
  226. package/dist/hooks/usePayloadAPI.js +44 -40
  227. package/dist/hooks/usePayloadAPI.js.map +1 -1
  228. package/dist/icons/Branch/index.css +5 -0
  229. package/dist/icons/Branch/index.d.ts +7 -0
  230. package/dist/icons/Branch/index.d.ts.map +1 -0
  231. package/dist/icons/Branch/index.js +25 -0
  232. package/dist/icons/Branch/index.js.map +1 -0
  233. package/dist/icons/Edit/index.d.ts +0 -1
  234. package/dist/icons/Edit/index.d.ts.map +1 -1
  235. package/dist/icons/Edit/index.js +4 -4
  236. package/dist/icons/Edit/index.js.map +1 -1
  237. package/dist/providers/Actions/index.d.ts +1 -0
  238. package/dist/providers/Actions/index.d.ts.map +1 -1
  239. package/dist/providers/Actions/index.js +43 -11
  240. package/dist/providers/Actions/index.js.map +1 -1
  241. package/dist/providers/Auth/AuthSessionDebug/index.css +48 -0
  242. package/dist/providers/Auth/AuthSessionDebug/index.d.ts +13 -0
  243. package/dist/providers/Auth/AuthSessionDebug/index.d.ts.map +1 -0
  244. package/dist/providers/Auth/AuthSessionDebug/index.js +93 -0
  245. package/dist/providers/Auth/AuthSessionDebug/index.js.map +1 -0
  246. package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts +21 -0
  247. package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts.map +1 -0
  248. package/dist/providers/Auth/AuthSessionDebug/utilities.js +53 -0
  249. package/dist/providers/Auth/AuthSessionDebug/utilities.js.map +1 -0
  250. package/dist/providers/Auth/authSessionRequests.d.ts +27 -0
  251. package/dist/providers/Auth/authSessionRequests.d.ts.map +1 -0
  252. package/dist/providers/Auth/authSessionRequests.js +119 -0
  253. package/dist/providers/Auth/authSessionRequests.js.map +1 -0
  254. package/dist/providers/Auth/authSessionRequests.spec.js +121 -0
  255. package/dist/providers/Auth/authSessionRequests.spec.js.map +1 -0
  256. package/dist/providers/Auth/index.d.ts +2 -56
  257. package/dist/providers/Auth/index.d.ts.map +1 -1
  258. package/dist/providers/Auth/index.js +283 -135
  259. package/dist/providers/Auth/index.js.map +1 -1
  260. package/dist/providers/Auth/sessionActivity.d.ts +23 -0
  261. package/dist/providers/Auth/sessionActivity.d.ts.map +1 -0
  262. package/dist/providers/Auth/sessionActivity.js +49 -0
  263. package/dist/providers/Auth/sessionActivity.js.map +1 -0
  264. package/dist/providers/Auth/sessionActivity.spec.js +44 -0
  265. package/dist/providers/Auth/sessionActivity.spec.js.map +1 -0
  266. package/dist/providers/Auth/sessionTiming.d.ts +11 -0
  267. package/dist/providers/Auth/sessionTiming.d.ts.map +1 -0
  268. package/dist/providers/Auth/sessionTiming.js +18 -0
  269. package/dist/providers/Auth/sessionTiming.js.map +1 -0
  270. package/dist/providers/Auth/tabSessionSync/index.d.ts +17 -0
  271. package/dist/providers/Auth/tabSessionSync/index.d.ts.map +1 -0
  272. package/dist/providers/Auth/tabSessionSync/index.js +263 -0
  273. package/dist/providers/Auth/tabSessionSync/index.js.map +1 -0
  274. package/dist/providers/Auth/tabSessionSync/index.spec.js +463 -0
  275. package/dist/providers/Auth/tabSessionSync/index.spec.js.map +1 -0
  276. package/dist/providers/Auth/tabSessionSync/types.d.ts +107 -0
  277. package/dist/providers/Auth/tabSessionSync/types.d.ts.map +1 -0
  278. package/dist/providers/Auth/tabSessionSync/types.js +6 -0
  279. package/dist/providers/Auth/tabSessionSync/types.js.map +1 -0
  280. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts +11 -0
  281. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts.map +1 -0
  282. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js +90 -0
  283. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js.map +1 -0
  284. package/dist/providers/Auth/tabSessionSync/utilities.d.ts +26 -0
  285. package/dist/providers/Auth/tabSessionSync/utilities.d.ts.map +1 -0
  286. package/dist/providers/Auth/tabSessionSync/utilities.js +159 -0
  287. package/dist/providers/Auth/tabSessionSync/utilities.js.map +1 -0
  288. package/dist/providers/Auth/types.d.ts +65 -0
  289. package/dist/providers/Auth/types.d.ts.map +1 -0
  290. package/dist/providers/Auth/types.js +2 -0
  291. package/dist/providers/Auth/types.js.map +1 -0
  292. package/dist/providers/Auth/useAuthSessionTimers.d.ts +26 -0
  293. package/dist/providers/Auth/useAuthSessionTimers.d.ts.map +1 -0
  294. package/dist/providers/Auth/useAuthSessionTimers.js +203 -0
  295. package/dist/providers/Auth/useAuthSessionTimers.js.map +1 -0
  296. package/dist/providers/Auth/useAuthSessionTimers.spec.js +311 -0
  297. package/dist/providers/Auth/useAuthSessionTimers.spec.js.map +1 -0
  298. package/dist/providers/Branch/index.d.ts +68 -0
  299. package/dist/providers/Branch/index.d.ts.map +1 -0
  300. package/dist/providers/Branch/index.js +193 -0
  301. package/dist/providers/Branch/index.js.map +1 -0
  302. package/dist/providers/Branch/index.server.d.ts +14 -0
  303. package/dist/providers/Branch/index.server.d.ts.map +1 -0
  304. package/dist/providers/Branch/index.server.js +125 -0
  305. package/dist/providers/Branch/index.server.js.map +1 -0
  306. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  307. package/dist/providers/DocumentInfo/index.js +5 -1
  308. package/dist/providers/DocumentInfo/index.js.map +1 -1
  309. package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts +2 -1
  310. package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts.map +1 -1
  311. package/dist/providers/DocumentInfo/useGetDocPermissions.js +3 -1
  312. package/dist/providers/DocumentInfo/useGetDocPermissions.js.map +1 -1
  313. package/dist/providers/FormErrorHandler/index.d.ts +5 -1
  314. package/dist/providers/FormErrorHandler/index.d.ts.map +1 -1
  315. package/dist/providers/FormErrorHandler/index.js.map +1 -1
  316. package/dist/providers/Hierarchy/index.d.ts.map +1 -1
  317. package/dist/providers/Hierarchy/index.js +4 -1
  318. package/dist/providers/Hierarchy/index.js.map +1 -1
  319. package/dist/providers/Locale/index.d.ts.map +1 -1
  320. package/dist/providers/Locale/index.js +41 -36
  321. package/dist/providers/Locale/index.js.map +1 -1
  322. package/dist/providers/Preferences/index.d.ts +3 -1
  323. package/dist/providers/Preferences/index.d.ts.map +1 -1
  324. package/dist/providers/Preferences/index.js +9 -3
  325. package/dist/providers/Preferences/index.js.map +1 -1
  326. package/dist/providers/Root/index.js +4 -4
  327. package/dist/providers/Root/index.js.map +1 -1
  328. package/dist/providers/RouteTransition/ProgressBar/index.js +4 -1
  329. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  330. package/dist/providers/RouteTransition/ProgressBar/index.spec.js +44 -0
  331. package/dist/providers/RouteTransition/ProgressBar/index.spec.js.map +1 -0
  332. package/dist/providers/RouteTransition/index.d.ts +2 -0
  333. package/dist/providers/RouteTransition/index.d.ts.map +1 -1
  334. package/dist/providers/RouteTransition/index.js +42 -14
  335. package/dist/providers/RouteTransition/index.js.map +1 -1
  336. package/dist/styles.css +1 -1
  337. package/dist/templates/Default/index.d.ts +1 -0
  338. package/dist/templates/Default/index.d.ts.map +1 -1
  339. package/dist/templates/Default/index.js +44 -36
  340. package/dist/templates/Default/index.js.map +1 -1
  341. package/dist/utilities/getAdminPreferences.d.ts +14 -0
  342. package/dist/utilities/getAdminPreferences.d.ts.map +1 -0
  343. package/dist/utilities/getAdminPreferences.js +22 -0
  344. package/dist/utilities/getAdminPreferences.js.map +1 -0
  345. package/dist/utilities/getRequestBranch.d.ts +20 -0
  346. package/dist/utilities/getRequestBranch.d.ts.map +1 -0
  347. package/dist/utilities/getRequestBranch.js +35 -0
  348. package/dist/utilities/getRequestBranch.js.map +1 -0
  349. package/dist/utilities/getVersions.d.ts +6 -1
  350. package/dist/utilities/getVersions.d.ts.map +1 -1
  351. package/dist/utilities/getVersions.js +5 -0
  352. package/dist/utilities/getVersions.js.map +1 -1
  353. package/dist/utilities/initReq.d.ts.map +1 -1
  354. package/dist/utilities/initReq.js +8 -0
  355. package/dist/utilities/initReq.js.map +1 -1
  356. package/dist/utilities/matchesSearchQuery.d.ts +12 -0
  357. package/dist/utilities/matchesSearchQuery.d.ts.map +1 -0
  358. package/dist/utilities/matchesSearchQuery.js +23 -0
  359. package/dist/utilities/matchesSearchQuery.js.map +1 -0
  360. package/dist/{elements/ColumnSelection/matchesColumnSearch.spec.js → utilities/matchesSearchQuery.spec.js} +29 -29
  361. package/dist/utilities/matchesSearchQuery.spec.js.map +1 -0
  362. package/dist/utilities/scheduleMergeHandler.d.ts +33 -0
  363. package/dist/utilities/scheduleMergeHandler.d.ts.map +1 -0
  364. package/dist/utilities/scheduleMergeHandler.js +119 -0
  365. package/dist/utilities/scheduleMergeHandler.js.map +1 -0
  366. package/dist/utilities/schedulePublishHandler.d.ts.map +1 -1
  367. package/dist/utilities/schedulePublishHandler.js +10 -0
  368. package/dist/utilities/schedulePublishHandler.js.map +1 -1
  369. package/dist/utilities/serverFunctionRegistry.d.ts.map +1 -1
  370. package/dist/utilities/serverFunctionRegistry.js +6 -0
  371. package/dist/utilities/serverFunctionRegistry.js.map +1 -1
  372. package/dist/views/API/index.client.d.ts.map +1 -1
  373. package/dist/views/API/index.client.js +10 -2
  374. package/dist/views/API/index.client.js.map +1 -1
  375. package/dist/views/Branch/BranchChanges/index.d.ts +23 -0
  376. package/dist/views/Branch/BranchChanges/index.d.ts.map +1 -0
  377. package/dist/views/Branch/BranchChanges/index.js +150 -0
  378. package/dist/views/Branch/BranchChanges/index.js.map +1 -0
  379. package/dist/views/Branch/ChangedDocuments/index.css +118 -0
  380. package/dist/views/Branch/ChangedDocuments/index.d.ts +34 -0
  381. package/dist/views/Branch/ChangedDocuments/index.d.ts.map +1 -0
  382. package/dist/views/Branch/ChangedDocuments/index.js +233 -0
  383. package/dist/views/Branch/ChangedDocuments/index.js.map +1 -0
  384. package/dist/views/Branch/DiscardChangesButton/index.d.ts +16 -0
  385. package/dist/views/Branch/DiscardChangesButton/index.d.ts.map +1 -0
  386. package/dist/views/Branch/DiscardChangesButton/index.js +106 -0
  387. package/dist/views/Branch/DiscardChangesButton/index.js.map +1 -0
  388. package/dist/views/Branch/Manage/index.d.ts +11 -0
  389. package/dist/views/Branch/Manage/index.d.ts.map +1 -0
  390. package/dist/views/Branch/Manage/index.js +71 -0
  391. package/dist/views/Branch/Manage/index.js.map +1 -0
  392. package/dist/views/Branch/MergeChangesButton/index.d.ts +14 -0
  393. package/dist/views/Branch/MergeChangesButton/index.d.ts.map +1 -0
  394. package/dist/views/Branch/MergeChangesButton/index.js +55 -0
  395. package/dist/views/Branch/MergeChangesButton/index.js.map +1 -0
  396. package/dist/views/Branch/MergeLedger/index.css +137 -0
  397. package/dist/views/Branch/MergeLedger/index.d.ts +31 -0
  398. package/dist/views/Branch/MergeLedger/index.d.ts.map +1 -0
  399. package/dist/views/Branch/MergeLedger/index.js +211 -0
  400. package/dist/views/Branch/MergeLedger/index.js.map +1 -0
  401. package/dist/views/Branch/ScheduledMerges/index.css +83 -0
  402. package/dist/views/Branch/ScheduledMerges/index.d.ts +32 -0
  403. package/dist/views/Branch/ScheduledMerges/index.d.ts.map +1 -0
  404. package/dist/views/Branch/ScheduledMerges/index.js +183 -0
  405. package/dist/views/Branch/ScheduledMerges/index.js.map +1 -0
  406. package/dist/views/Branch/index.css +77 -0
  407. package/dist/views/Branch/index.d.ts +17 -0
  408. package/dist/views/Branch/index.d.ts.map +1 -0
  409. package/dist/views/Branch/index.js +188 -0
  410. package/dist/views/Branch/index.js.map +1 -0
  411. package/dist/views/Branch/renderBranchDiff.d.ts +29 -0
  412. package/dist/views/Branch/renderBranchDiff.d.ts.map +1 -0
  413. package/dist/views/Branch/renderBranchDiff.js +151 -0
  414. package/dist/views/Branch/renderBranchDiff.js.map +1 -0
  415. package/dist/views/Branch/renderMergeDiff.d.ts +24 -0
  416. package/dist/views/Branch/renderMergeDiff.d.ts.map +1 -0
  417. package/dist/views/Branch/renderMergeDiff.js +94 -0
  418. package/dist/views/Branch/renderMergeDiff.js.map +1 -0
  419. package/dist/views/Branches/index.d.ts +16 -0
  420. package/dist/views/Branches/index.d.ts.map +1 -0
  421. package/dist/views/Branches/index.js +54 -0
  422. package/dist/views/Branches/index.js.map +1 -0
  423. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -1
  424. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +3 -2
  425. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  426. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts.map +1 -1
  427. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js +7 -7
  428. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
  429. package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
  430. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +104 -66
  431. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  432. package/dist/views/Dashboard/Default/ModularDashboard/index.css +33 -140
  433. package/dist/views/Document/getDocumentView.d.ts.map +1 -1
  434. package/dist/views/Document/getDocumentView.js +21 -2
  435. package/dist/views/Document/getDocumentView.js.map +1 -1
  436. package/dist/views/Document/getMetaBySegment.d.ts.map +1 -1
  437. package/dist/views/Document/getMetaBySegment.js +9 -0
  438. package/dist/views/Document/getMetaBySegment.js.map +1 -1
  439. package/dist/views/Document/index.d.ts +3 -1
  440. package/dist/views/Document/index.d.ts.map +1 -1
  441. package/dist/views/Document/index.js +8 -1
  442. package/dist/views/Document/index.js.map +1 -1
  443. package/dist/views/HierarchyList/HierarchyTable/index.d.ts.map +1 -1
  444. package/dist/views/HierarchyList/HierarchyTable/index.js +6 -2
  445. package/dist/views/HierarchyList/HierarchyTable/index.js.map +1 -1
  446. package/dist/views/List/ListHeader/index.d.ts +1 -10
  447. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  448. package/dist/views/List/ListHeader/index.js +1 -3
  449. package/dist/views/List/ListHeader/index.js.map +1 -1
  450. package/dist/views/List/index.client.d.ts.map +1 -1
  451. package/dist/views/List/index.client.js +0 -14
  452. package/dist/views/List/index.client.js.map +1 -1
  453. package/dist/views/List/index.css +5 -0
  454. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts.map +1 -1
  455. package/dist/views/Root/getCustomCollectionViewByRoute.js.map +1 -1
  456. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts.map +1 -1
  457. package/dist/views/Root/getCustomGlobalViewByRoute.js.map +1 -1
  458. package/dist/views/Root/getCustomViewByKey.d.ts.map +1 -1
  459. package/dist/views/Root/getCustomViewByKey.js.map +1 -1
  460. package/dist/views/Root/getRouteData.d.ts.map +1 -1
  461. package/dist/views/Root/getRouteData.js +12 -4
  462. package/dist/views/Root/getRouteData.js.map +1 -1
  463. package/dist/views/Root/index.d.ts.map +1 -1
  464. package/dist/views/Root/index.js +1 -0
  465. package/dist/views/Root/index.js.map +1 -1
  466. package/dist/views/Version/Default/index.css +26 -2
  467. package/dist/views/Version/Default/index.d.ts.map +1 -1
  468. package/dist/views/Version/Default/index.js +18 -6
  469. package/dist/views/Version/Default/index.js.map +1 -1
  470. package/dist/views/Version/Default/types.d.ts +9 -0
  471. package/dist/views/Version/Default/types.d.ts.map +1 -1
  472. package/dist/views/Version/Default/types.js.map +1 -1
  473. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
  474. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +8 -0
  475. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  476. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  477. package/dist/views/Version/Restore/index.js +6 -3
  478. package/dist/views/Version/Restore/index.js.map +1 -1
  479. package/dist/views/Version/index.d.ts.map +1 -1
  480. package/dist/views/Version/index.js +4 -0
  481. package/dist/views/Version/index.js.map +1 -1
  482. package/dist/views/Versions/buildColumns.d.ts +2 -1
  483. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  484. package/dist/views/Versions/buildColumns.js +21 -1
  485. package/dist/views/Versions/buildColumns.js.map +1 -1
  486. package/dist/views/Versions/cells/Branch/index.d.ts +12 -0
  487. package/dist/views/Versions/cells/Branch/index.d.ts.map +1 -0
  488. package/dist/views/Versions/cells/Branch/index.js +27 -0
  489. package/dist/views/Versions/cells/Branch/index.js.map +1 -0
  490. package/dist/views/Versions/index.client.d.ts +0 -1
  491. package/dist/views/Versions/index.client.d.ts.map +1 -1
  492. package/dist/views/Versions/index.client.js.map +1 -1
  493. package/dist/views/Versions/index.d.ts.map +1 -1
  494. package/dist/views/Versions/index.js +2 -14
  495. package/dist/views/Versions/index.js.map +1 -1
  496. package/package.json +5 -5
  497. package/dist/elements/ColumnSelection/matchesColumnSearch.d.ts +0 -10
  498. package/dist/elements/ColumnSelection/matchesColumnSearch.d.ts.map +0 -1
  499. package/dist/elements/ColumnSelection/matchesColumnSearch.js +0 -21
  500. package/dist/elements/ColumnSelection/matchesColumnSearch.js.map +0 -1
  501. package/dist/elements/ColumnSelection/matchesColumnSearch.spec.js.map +0 -1
@@ -93,7 +93,33 @@
93
93
  width: 100%;
94
94
  }
95
95
 
96
- .widget-wrapper--editing:hover .widget-wrapper__controls {
96
+ .widget-wrapper--editing .widget-wrapper__controls {
97
+ transition: opacity 0.2s ease;
98
+ }
99
+
100
+ .widget-wrapper--editing:hover .widget-wrapper__controls,
101
+ .widget-wrapper--editing:has(:focus-visible) .widget-wrapper__controls,
102
+ .widget-wrapper--controls-active .widget-wrapper__controls {
103
+ opacity: 1;
104
+ }
105
+
106
+ .widget-wrapper__edit-overlay {
107
+ position: absolute;
108
+ inset: 0;
109
+ z-index: 5;
110
+ pointer-events: none;
111
+ background: rgba(0, 0, 0, 0.35);
112
+ outline: var(--accessibility-outline);
113
+ outline-offset: var(--accessibility-outline-offset);
114
+ border-radius: var(--radius-medium);
115
+ box-sizing: border-box;
116
+ opacity: 0;
117
+ transition: opacity 0.2s ease;
118
+ }
119
+
120
+ .widget-wrapper--editing:hover .widget-wrapper__edit-overlay,
121
+ .widget-wrapper--editing:has(:focus-visible) .widget-wrapper__edit-overlay,
122
+ .widget-wrapper--controls-active .widget-wrapper__edit-overlay {
97
123
  opacity: 1;
98
124
  }
99
125
 
@@ -107,159 +133,26 @@
107
133
  gap: var(--spacer-2);
108
134
  }
109
135
 
110
- .widget-wrapper__delete-btn {
111
- display: flex;
112
- align-items: center;
113
- justify-content: center;
114
- width: var(--spacer-4);
115
- height: var(--spacer-4);
116
- background: var(--color-bg-danger);
117
- border: none;
118
- border-radius: var(--radius-small);
119
- cursor: pointer;
120
- color: var(--color-text-ondanger);
121
-
122
- &:hover {
123
- background: var(--color-bg-danger-hover);
124
- }
125
-
126
- &:active {
127
- background: var(--color-bg-danger-pressed);
128
- }
129
-
130
- &:focus-visible {
131
- outline: var(--accessibility-outline);
132
- outline-offset: var(--accessibility-outline-offset);
133
- }
134
-
135
- & svg {
136
- pointer-events: none;
137
- }
138
- }
139
-
140
- .widget-wrapper__edit-btn {
141
- display: flex;
142
- align-items: center;
143
- justify-content: center;
144
- width: var(--spacer-4);
145
- height: var(--spacer-4);
146
- background: var(--color-text);
147
- border: none;
148
- border-radius: var(--radius-small);
149
- cursor: pointer;
150
- color: var(--color-bg);
151
-
152
- & .icon {
153
- width: var(--spacer-3);
154
- height: var(--spacer-3);
155
- }
156
-
157
- &:hover {
158
- background: var(--color-text-secondary);
159
- }
160
-
161
- &:active {
162
- background: var(--color-text-tertiary);
163
- }
164
-
165
- & svg {
166
- pointer-events: none;
167
- }
168
- }
169
-
170
136
  .widget-wrapper__size-btn {
171
- display: flex;
172
- align-items: center;
173
- gap: var(--spacer-1);
174
- padding: var(--spacer-1) var(--spacer-2);
175
137
  min-width: auto;
176
- height: var(--spacer-4);
177
- background: var(--color-bg-inverse);
178
- border: none;
179
- border-radius: var(--radius-small);
180
- cursor: pointer;
181
- font-family: var(--text-body-small-font-family);
182
- font-size: var(--text-body-small-font-size);
183
- font-weight: var(--text-body-small-font-weight);
184
- line-height: var(--text-body-small-line-height);
185
- letter-spacing: var(--text-body-small-letter-spacing);
186
- color: var(--color-text-oninverse);
187
- white-space: nowrap;
188
-
189
- & .icon .stroke {
190
- stroke: var(--color-icon-oninverse);
191
- stroke-width: var(--stroke-width-medium);
192
- }
193
-
194
- &:hover {
195
- background: var(--color-bg-inverse-hover);
196
- }
197
-
198
- &:active {
199
- background: var(--color-bg-inverse-pressed);
200
- }
201
-
202
- &:disabled {
203
- opacity: 0.5;
204
- cursor: not-allowed;
205
- }
206
-
207
- &:disabled:hover {
208
- background: var(--color-bg-inverse);
209
- }
210
-
211
- &:focus-visible {
212
- outline: var(--accessibility-outline);
213
- outline-offset: var(--accessibility-outline-offset);
214
- }
215
138
 
216
- & svg {
217
- pointer-events: none;
139
+ & .btn__content {
140
+ gap: var(--spacer-1);
218
141
  }
219
142
  }
220
143
 
221
144
  .widget-wrapper__size-btn-percentage {
222
- font-family: var(--text-body-small-font-family);
223
- font-size: var(--text-body-small-font-size);
224
- margin-left: auto;
145
+ margin-left: var(--spacer-1);
225
146
  color: var(--color-text-tertiary);
226
147
  }
227
148
 
228
- .popup-button-list:has(.widget-wrapper__size-btn-label) .popup__scroll-container {
229
- padding: 0;
230
- }
231
-
232
- .popup__content:has(.widget-wrapper__size-btn-label) {
233
- padding: var(--spacer-1);
234
- box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
235
- }
236
-
237
- .popup-button-list__button:has(.widget-wrapper__size-btn-label) {
238
- display: flex !important;
239
- align-items: center !important;
240
- gap: var(--spacer-3);
241
- }
242
-
243
- .popup-button-list__button:has(.widget-wrapper__size-btn-label) .widget-wrapper__size-btn-label {
244
- flex: 0 0 auto;
245
- }
246
-
247
- .popup-button-list__button:has(.widget-wrapper__size-btn-label)
248
- .widget-wrapper__size-btn-percentage {
249
- margin-left: auto !important;
250
- }
251
-
252
149
  .step-nav .dashboard-breadcrumb-dropdown .btn {
253
150
  padding-right: var(--spacer-1);
254
151
  }
255
152
 
256
- /* .step-nav .dashboard-breadcrumb-dropdown {
257
- margin-left: calc(var(--spacer-2) * -1);
258
- } */
259
-
260
153
  .step-nav .dashboard-breadcrumb-dropdown__editing {
261
154
  align-items: center;
262
- display: flex !important;
155
+ display: flex;
263
156
  gap: var(--spacer-2-5);
264
157
 
265
158
  > span:first-child {
@@ -268,8 +161,8 @@
268
161
  }
269
162
 
270
163
  .step-nav .dashboard-breadcrumb-dropdown__actions {
271
- display: flex !important;
272
- gap: var(--spacer-2-5);
164
+ display: flex;
165
+ gap: var(--spacer-2);
273
166
  }
274
167
 
275
168
  .step-nav .dashboard-breadcrumb-dropdown__label {
@@ -1 +1 @@
1
- {"version":3,"file":"getDocumentView.d.ts","sourceRoot":"","sources":["../../../src/views/Document/getDocumentView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,gBAAgB,EAChB,yBAAyB,EACzB,6BAA6B,EAC7B,eAAe,EACf,qBAAqB,EACrB,yBAAyB,EAC1B,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAW9C,MAAM,MAAM,cAAc,CAAC,MAAM,SAAS,MAAM,IAAI;IAClD,SAAS,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;IAC5B,eAAe,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAA;CAC3C,CAAA;AAED,eAAO,MAAM,eAAe,+EAMzB;IACD,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,MAAM,EAAE,eAAe,CAAA;IACvB,cAAc,EAAE,6BAA6B,GAAG,yBAAyB,CAAA;IACzE,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB,KAAG;IACF,IAAI,EAAE,YAAY,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;CAChB,GAAG,IA2VH,CAAA"}
1
+ {"version":3,"file":"getDocumentView.d.ts","sourceRoot":"","sources":["../../../src/views/Document/getDocumentView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,gBAAgB,EAChB,yBAAyB,EACzB,6BAA6B,EAC7B,eAAe,EACf,qBAAqB,EACrB,yBAAyB,EAC1B,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAY9C,MAAM,MAAM,cAAc,CAAC,MAAM,SAAS,MAAM,IAAI;IAClD,SAAS,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;IAC5B,eAAe,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAA;CAC3C,CAAA;AAqBD,eAAO,MAAM,eAAe,+EAMzB;IACD,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,MAAM,EAAE,eAAe,CAAA;IACvB,cAAc,EAAE,6BAA6B,GAAG,yBAAyB,CAAA;IACzE,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB,KAAG;IACF,IAAI,EAAE,YAAY,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;CAChB,GAAG,IAiWH,CAAA"}
@@ -1,11 +1,27 @@
1
+ import { branchesCollectionSlug } from 'payload/shared';
1
2
  // eslint-disable-next-line payload/no-imports-from-exports-dir -- Server component must reference exports/client bundle for proper client boundary in prod builds
2
- import { DefaultEditView } from '../../exports/client/index.js';
3
+ import { BranchManageView, DefaultEditView } from '../../exports/client/index.js';
3
4
  import { APIView as DefaultAPIView } from '../API/index.js';
5
+ import { BranchChangesView } from '../Branch/index.js';
4
6
  import { UnauthorizedViewWithGutter } from '../Unauthorized/index.js';
5
7
  import { VersionView as DefaultVersionView } from '../Version/index.js';
6
8
  import { VersionsView as DefaultVersionsView } from '../Versions/index.js';
7
9
  import { getCustomDocumentViewByKey } from './getCustomDocumentViewByKey.js';
8
10
  import { getCustomViewByRoute } from './getCustomViewByRoute.js';
11
+ /**
12
+ * A branch's default view is what it changed, not its own form.
13
+ *
14
+ * The form — a name and a description — is incidental next to the reason the
15
+ * branch exists, so it moves one click away to `/manage`. Selected here by direct
16
+ * import rather than a config component path, the way `HierarchyView` is, so no
17
+ * import map is involved.
18
+ */
19
+ const getBranchView = (collectionConfig, segment) => {
20
+ if (collectionConfig?.slug !== branchesCollectionSlug) {
21
+ return null;
22
+ }
23
+ return segment === 'manage' ? BranchManageView : BranchChangesView;
24
+ };
9
25
  export const getDocumentView = ({
10
26
  collectionConfig,
11
27
  config,
@@ -61,7 +77,7 @@ export const getDocumentView = ({
61
77
  viewKey = customViewKey;
62
78
  View = CustomViewComponent;
63
79
  } else {
64
- View = getCustomDocumentViewByKey(views, 'default') || DefaultEditView;
80
+ View = getCustomDocumentViewByKey(views, 'default') || getBranchView(collectionConfig, undefined) || DefaultEditView;
65
81
  }
66
82
  break;
67
83
  }
@@ -112,6 +128,9 @@ export const getDocumentView = ({
112
128
  if (customViewKey) {
113
129
  viewKey = customViewKey;
114
130
  View = CustomViewComponent;
131
+ } else {
132
+ // --> /collections/payload-branches/:id/manage
133
+ View = getBranchView(collectionConfig, segment4);
115
134
  }
116
135
  break;
117
136
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getDocumentView.js","names":["DefaultEditView","APIView","DefaultAPIView","UnauthorizedViewWithGutter","VersionView","DefaultVersionView","VersionsView","DefaultVersionsView","getCustomDocumentViewByKey","getCustomViewByRoute","getDocumentView","collectionConfig","config","docPermissions","globalConfig","routeSegments","UnauthorizedView","View","viewKey","routes","admin","adminRoute","views","components","read","Error","collectionEntity","collectionSlug","segment3","segment4","segment5","remainingSegments","length","create","baseRoute","filter","Boolean","join","currentRoute","Component","CustomViewComponent","customViewKey","readVersions","isTrashedVersionView","globalEntity","globalSlug"],"sources":["../../../src/views/Document/getDocumentView.tsx"],"sourcesContent":["import type {\n AdminViewServerProps,\n PayloadComponent,\n SanitizedCollectionConfig,\n SanitizedCollectionPermission,\n SanitizedConfig,\n SanitizedGlobalConfig,\n SanitizedGlobalPermission,\n} from 'payload'\nimport type React from 'react'\n\nimport type { ViewToRender } from './index.js'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir -- Server component must reference exports/client bundle for proper client boundary in prod builds\nimport { DefaultEditView } from '../../exports/client/index.js'\nimport { APIView as DefaultAPIView } from '../API/index.js'\nimport { UnauthorizedViewWithGutter } from '../Unauthorized/index.js'\nimport { VersionView as DefaultVersionView } from '../Version/index.js'\nimport { VersionsView as DefaultVersionsView } from '../Versions/index.js'\nimport { getCustomDocumentViewByKey } from './getCustomDocumentViewByKey.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\n\nexport type ViewFromConfig<TProps extends object> = {\n Component?: React.FC<TProps>\n ComponentConfig?: PayloadComponent<TProps>\n}\n\nexport const getDocumentView = ({\n collectionConfig,\n config,\n docPermissions,\n globalConfig,\n routeSegments,\n}: {\n collectionConfig?: SanitizedCollectionConfig\n config: SanitizedConfig\n docPermissions: SanitizedCollectionPermission | SanitizedGlobalPermission\n globalConfig?: SanitizedGlobalConfig\n routeSegments: string[]\n}): {\n View: ViewToRender\n viewKey: string\n} | null => {\n const UnauthorizedView = UnauthorizedViewWithGutter as React.FC<AdminViewServerProps>\n\n // Conditionally import and lazy load the default view\n let View: ViewToRender = null\n let viewKey: string\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n const views =\n (collectionConfig && collectionConfig?.admin?.components?.views) ||\n (globalConfig && globalConfig?.admin?.components?.views)\n\n if (!docPermissions?.read) {\n throw new Error('not-found')\n }\n\n if (collectionConfig) {\n const [collectionEntity, collectionSlug, segment3, segment4, segment5, ...remainingSegments] =\n routeSegments\n\n // --> /collections/:collectionSlug/:id\n // --> /collections/:collectionSlug/create\n switch (routeSegments.length) {\n case 3: {\n switch (segment3) {\n // --> /collections/:collectionSlug/create\n case 'create': {\n if ('create' in docPermissions && docPermissions.create) {\n View = getCustomDocumentViewByKey(views, 'default') || DefaultEditView\n } else {\n View = UnauthorizedView\n }\n break\n }\n\n // --> /collections/:collectionSlug/:id\n default: {\n const baseRoute = [\n adminRoute !== '/' && adminRoute,\n 'collections',\n collectionSlug,\n segment3,\n ]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment4, segment5, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } = getCustomViewByRoute(\n {\n baseRoute,\n currentRoute,\n views,\n },\n )\n\n if (customViewKey) {\n viewKey = customViewKey\n View = CustomViewComponent\n } else {\n View = getCustomDocumentViewByKey(views, 'default') || DefaultEditView\n }\n\n break\n }\n }\n break\n }\n\n // --> /collections/:collectionSlug/:id/api\n // --> /collections/:collectionSlug/:id/versions\n // --> /collections/:collectionSlug/:id/<custom-segment>\n // --> /collections/:collectionSlug/trash/:id\n case 4: {\n // --> /collections/:collectionSlug/trash/:id\n if (segment3 === 'trash' && segment4) {\n View = getCustomDocumentViewByKey(views, 'default') || DefaultEditView\n break\n }\n switch (segment4) {\n // --> /collections/:collectionSlug/:id/api\n case 'api': {\n View = getCustomDocumentViewByKey(views, 'api') || DefaultAPIView\n break\n }\n\n case 'versions': {\n // --> /collections/:collectionSlug/:id/versions\n if (docPermissions?.readVersions) {\n View = getCustomDocumentViewByKey(views, 'versions') || DefaultVersionsView\n } else {\n View = UnauthorizedView\n }\n break\n }\n\n // --> /collections/:collectionSlug/:id/<custom-segment>\n default: {\n const baseRoute = [\n adminRoute !== '/' && adminRoute,\n 'collections',\n collectionSlug,\n segment3,\n ]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment4, segment5, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } = getCustomViewByRoute(\n {\n baseRoute,\n currentRoute,\n views,\n },\n )\n\n if (customViewKey) {\n viewKey = customViewKey\n View = CustomViewComponent\n }\n\n break\n }\n }\n break\n }\n\n // --> /collections/:collectionSlug/trash/:id/api\n // --> /collections/:collectionSlug/trash/:id/versions\n // --> /collections/:collectionSlug/trash/:id/<custom-segment>\n // --> /collections/:collectionSlug/:id/versions/:version\n case 5: {\n // --> /collections/:slug/trash/:id/api\n if (segment3 === 'trash') {\n switch (segment5) {\n case 'api': {\n View = getCustomDocumentViewByKey(views, 'api') || DefaultAPIView\n break\n }\n // --> /collections/:slug/trash/:id/versions\n case 'versions': {\n if (docPermissions?.readVersions) {\n View = getCustomDocumentViewByKey(views, 'versions') || DefaultVersionsView\n } else {\n View = UnauthorizedView\n }\n break\n }\n\n default: {\n View = getCustomDocumentViewByKey(views, 'default') || DefaultEditView\n break\n }\n }\n // --> /collections/:collectionSlug/:id/versions/:version\n } else if (segment4 === 'versions') {\n if (docPermissions?.readVersions) {\n View = getCustomDocumentViewByKey(views, 'version') || DefaultVersionView\n } else {\n View = UnauthorizedView\n }\n } else {\n // --> /collections/:collectionSlug/:id/<custom>/<custom>\n const baseRoute = [\n adminRoute !== '/' && adminRoute,\n collectionEntity,\n collectionSlug,\n segment3,\n ]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment4, segment5, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } = getCustomViewByRoute({\n baseRoute,\n currentRoute,\n views,\n })\n\n if (customViewKey) {\n viewKey = customViewKey\n View = CustomViewComponent\n }\n }\n\n break\n }\n\n // --> /collections/:collectionSlug/trash/:id/versions/:version\n // --> /collections/:collectionSlug/:id/<custom>/<custom>/<custom...>\n default: {\n // --> /collections/:collectionSlug/trash/:id/versions/:version\n const isTrashedVersionView = segment3 === 'trash' && segment5 === 'versions'\n\n if (isTrashedVersionView) {\n if (docPermissions?.readVersions) {\n View = getCustomDocumentViewByKey(views, 'version') || DefaultVersionView\n } else {\n View = UnauthorizedView\n }\n } else {\n // --> /collections/:collectionSlug/:id/<custom>/<custom>/<custom...>\n const baseRoute = [\n adminRoute !== '/' && adminRoute,\n collectionEntity,\n collectionSlug,\n segment3,\n ]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment4, segment5, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } = getCustomViewByRoute({\n baseRoute,\n currentRoute,\n views,\n })\n\n if (customViewKey) {\n viewKey = customViewKey\n View = CustomViewComponent\n }\n }\n\n break\n }\n }\n }\n\n if (globalConfig) {\n const [globalEntity, globalSlug, segment3, ...remainingSegments] = routeSegments\n\n switch (routeSegments.length) {\n // --> /globals/:globalSlug\n case 2: {\n View = getCustomDocumentViewByKey(views, 'default') || DefaultEditView\n break\n }\n\n case 3: {\n // --> /globals/:globalSlug/api\n // --> /globals/:globalSlug/versions\n // --> /globals/:globalSlug/<custom-segment>\n switch (segment3) {\n // --> /globals/:globalSlug/api\n case 'api': {\n View = getCustomDocumentViewByKey(views, 'api') || DefaultAPIView\n break\n }\n\n case 'versions': {\n // --> /globals/:globalSlug/versions\n if (docPermissions?.readVersions) {\n View = getCustomDocumentViewByKey(views, 'versions') || DefaultVersionsView\n } else {\n View = UnauthorizedView\n }\n break\n }\n\n // --> /globals/:globalSlug/<custom-segment>\n default: {\n if (docPermissions?.read) {\n const baseRoute = [adminRoute, globalEntity, globalSlug, segment3]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment3, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } =\n getCustomViewByRoute({\n baseRoute,\n currentRoute,\n views,\n })\n\n if (customViewKey) {\n viewKey = customViewKey\n\n View = CustomViewComponent\n } else {\n View = DefaultEditView\n }\n } else {\n View = UnauthorizedView\n }\n break\n }\n }\n break\n }\n\n // --> /globals/:globalSlug/versions/:version\n // --> /globals/:globalSlug/<custom-segment>/<custom-segment>\n default: {\n // --> /globals/:globalSlug/versions/:version\n if (segment3 === 'versions') {\n if (docPermissions?.readVersions) {\n View = getCustomDocumentViewByKey(views, 'version') || DefaultVersionView\n } else {\n View = UnauthorizedView\n }\n } else {\n // --> /globals/:globalSlug/<custom-segment>/<custom-segment>\n const baseRoute = [adminRoute !== '/' && adminRoute, 'globals', globalSlug]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment3, ...remainingSegments].filter(Boolean).join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } = getCustomViewByRoute({\n baseRoute,\n currentRoute,\n views,\n })\n\n if (customViewKey) {\n viewKey = customViewKey\n View = CustomViewComponent\n }\n }\n\n break\n }\n }\n }\n\n return {\n View,\n viewKey,\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"getDocumentView.js","names":["branchesCollectionSlug","BranchManageView","DefaultEditView","APIView","DefaultAPIView","BranchChangesView","UnauthorizedViewWithGutter","VersionView","DefaultVersionView","VersionsView","DefaultVersionsView","getCustomDocumentViewByKey","getCustomViewByRoute","getBranchView","collectionConfig","segment","slug","getDocumentView","config","docPermissions","globalConfig","routeSegments","UnauthorizedView","View","viewKey","routes","admin","adminRoute","views","components","read","Error","collectionEntity","collectionSlug","segment3","segment4","segment5","remainingSegments","length","create","baseRoute","filter","Boolean","join","currentRoute","Component","CustomViewComponent","customViewKey","undefined","readVersions","isTrashedVersionView","globalEntity","globalSlug"],"sources":["../../../src/views/Document/getDocumentView.tsx"],"sourcesContent":["import type {\n AdminViewServerProps,\n PayloadComponent,\n SanitizedCollectionConfig,\n SanitizedCollectionPermission,\n SanitizedConfig,\n SanitizedGlobalConfig,\n SanitizedGlobalPermission,\n} from 'payload'\nimport type React from 'react'\n\nimport { branchesCollectionSlug } from 'payload/shared'\n\nimport type { ViewToRender } from './index.js'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir -- Server component must reference exports/client bundle for proper client boundary in prod builds\nimport { BranchManageView, DefaultEditView } from '../../exports/client/index.js'\nimport { APIView as DefaultAPIView } from '../API/index.js'\nimport { BranchChangesView } from '../Branch/index.js'\nimport { UnauthorizedViewWithGutter } from '../Unauthorized/index.js'\nimport { VersionView as DefaultVersionView } from '../Version/index.js'\nimport { VersionsView as DefaultVersionsView } from '../Versions/index.js'\nimport { getCustomDocumentViewByKey } from './getCustomDocumentViewByKey.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\n\nexport type ViewFromConfig<TProps extends object> = {\n Component?: React.FC<TProps>\n ComponentConfig?: PayloadComponent<TProps>\n}\n\n/**\n * A branch's default view is what it changed, not its own form.\n *\n * The form — a name and a description — is incidental next to the reason the\n * branch exists, so it moves one click away to `/manage`. Selected here by direct\n * import rather than a config component path, the way `HierarchyView` is, so no\n * import map is involved.\n */\nconst getBranchView = (\n collectionConfig: SanitizedCollectionConfig | undefined,\n segment: string | undefined,\n): null | ViewToRender => {\n if (collectionConfig?.slug !== branchesCollectionSlug) {\n return null\n }\n\n return segment === 'manage' ? (BranchManageView as ViewToRender) : BranchChangesView\n}\n\nexport const getDocumentView = ({\n collectionConfig,\n config,\n docPermissions,\n globalConfig,\n routeSegments,\n}: {\n collectionConfig?: SanitizedCollectionConfig\n config: SanitizedConfig\n docPermissions: SanitizedCollectionPermission | SanitizedGlobalPermission\n globalConfig?: SanitizedGlobalConfig\n routeSegments: string[]\n}): {\n View: ViewToRender\n viewKey: string\n} | null => {\n const UnauthorizedView = UnauthorizedViewWithGutter as React.FC<AdminViewServerProps>\n\n // Conditionally import and lazy load the default view\n let View: ViewToRender = null\n let viewKey: string\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n const views =\n (collectionConfig && collectionConfig?.admin?.components?.views) ||\n (globalConfig && globalConfig?.admin?.components?.views)\n\n if (!docPermissions?.read) {\n throw new Error('not-found')\n }\n\n if (collectionConfig) {\n const [collectionEntity, collectionSlug, segment3, segment4, segment5, ...remainingSegments] =\n routeSegments\n\n // --> /collections/:collectionSlug/:id\n // --> /collections/:collectionSlug/create\n switch (routeSegments.length) {\n case 3: {\n switch (segment3) {\n // --> /collections/:collectionSlug/create\n case 'create': {\n if ('create' in docPermissions && docPermissions.create) {\n View = getCustomDocumentViewByKey(views, 'default') || DefaultEditView\n } else {\n View = UnauthorizedView\n }\n break\n }\n\n // --> /collections/:collectionSlug/:id\n default: {\n const baseRoute = [\n adminRoute !== '/' && adminRoute,\n 'collections',\n collectionSlug,\n segment3,\n ]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment4, segment5, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } = getCustomViewByRoute(\n {\n baseRoute,\n currentRoute,\n views,\n },\n )\n\n if (customViewKey) {\n viewKey = customViewKey\n View = CustomViewComponent\n } else {\n View =\n getCustomDocumentViewByKey(views, 'default') ||\n getBranchView(collectionConfig, undefined) ||\n DefaultEditView\n }\n\n break\n }\n }\n break\n }\n\n // --> /collections/:collectionSlug/:id/api\n // --> /collections/:collectionSlug/:id/versions\n // --> /collections/:collectionSlug/:id/<custom-segment>\n // --> /collections/:collectionSlug/trash/:id\n case 4: {\n // --> /collections/:collectionSlug/trash/:id\n if (segment3 === 'trash' && segment4) {\n View = getCustomDocumentViewByKey(views, 'default') || DefaultEditView\n break\n }\n switch (segment4) {\n // --> /collections/:collectionSlug/:id/api\n case 'api': {\n View = getCustomDocumentViewByKey(views, 'api') || DefaultAPIView\n break\n }\n\n case 'versions': {\n // --> /collections/:collectionSlug/:id/versions\n if (docPermissions?.readVersions) {\n View = getCustomDocumentViewByKey(views, 'versions') || DefaultVersionsView\n } else {\n View = UnauthorizedView\n }\n break\n }\n\n // --> /collections/:collectionSlug/:id/<custom-segment>\n default: {\n const baseRoute = [\n adminRoute !== '/' && adminRoute,\n 'collections',\n collectionSlug,\n segment3,\n ]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment4, segment5, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } = getCustomViewByRoute(\n {\n baseRoute,\n currentRoute,\n views,\n },\n )\n\n if (customViewKey) {\n viewKey = customViewKey\n View = CustomViewComponent\n } else {\n // --> /collections/payload-branches/:id/manage\n View = getBranchView(collectionConfig, segment4)\n }\n\n break\n }\n }\n break\n }\n\n // --> /collections/:collectionSlug/trash/:id/api\n // --> /collections/:collectionSlug/trash/:id/versions\n // --> /collections/:collectionSlug/trash/:id/<custom-segment>\n // --> /collections/:collectionSlug/:id/versions/:version\n case 5: {\n // --> /collections/:slug/trash/:id/api\n if (segment3 === 'trash') {\n switch (segment5) {\n case 'api': {\n View = getCustomDocumentViewByKey(views, 'api') || DefaultAPIView\n break\n }\n // --> /collections/:slug/trash/:id/versions\n case 'versions': {\n if (docPermissions?.readVersions) {\n View = getCustomDocumentViewByKey(views, 'versions') || DefaultVersionsView\n } else {\n View = UnauthorizedView\n }\n break\n }\n\n default: {\n View = getCustomDocumentViewByKey(views, 'default') || DefaultEditView\n break\n }\n }\n // --> /collections/:collectionSlug/:id/versions/:version\n } else if (segment4 === 'versions') {\n if (docPermissions?.readVersions) {\n View = getCustomDocumentViewByKey(views, 'version') || DefaultVersionView\n } else {\n View = UnauthorizedView\n }\n } else {\n // --> /collections/:collectionSlug/:id/<custom>/<custom>\n const baseRoute = [\n adminRoute !== '/' && adminRoute,\n collectionEntity,\n collectionSlug,\n segment3,\n ]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment4, segment5, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } = getCustomViewByRoute({\n baseRoute,\n currentRoute,\n views,\n })\n\n if (customViewKey) {\n viewKey = customViewKey\n View = CustomViewComponent\n }\n }\n\n break\n }\n\n // --> /collections/:collectionSlug/trash/:id/versions/:version\n // --> /collections/:collectionSlug/:id/<custom>/<custom>/<custom...>\n default: {\n // --> /collections/:collectionSlug/trash/:id/versions/:version\n const isTrashedVersionView = segment3 === 'trash' && segment5 === 'versions'\n\n if (isTrashedVersionView) {\n if (docPermissions?.readVersions) {\n View = getCustomDocumentViewByKey(views, 'version') || DefaultVersionView\n } else {\n View = UnauthorizedView\n }\n } else {\n // --> /collections/:collectionSlug/:id/<custom>/<custom>/<custom...>\n const baseRoute = [\n adminRoute !== '/' && adminRoute,\n collectionEntity,\n collectionSlug,\n segment3,\n ]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment4, segment5, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } = getCustomViewByRoute({\n baseRoute,\n currentRoute,\n views,\n })\n\n if (customViewKey) {\n viewKey = customViewKey\n View = CustomViewComponent\n }\n }\n\n break\n }\n }\n }\n\n if (globalConfig) {\n const [globalEntity, globalSlug, segment3, ...remainingSegments] = routeSegments\n\n switch (routeSegments.length) {\n // --> /globals/:globalSlug\n case 2: {\n View = getCustomDocumentViewByKey(views, 'default') || DefaultEditView\n break\n }\n\n case 3: {\n // --> /globals/:globalSlug/api\n // --> /globals/:globalSlug/versions\n // --> /globals/:globalSlug/<custom-segment>\n switch (segment3) {\n // --> /globals/:globalSlug/api\n case 'api': {\n View = getCustomDocumentViewByKey(views, 'api') || DefaultAPIView\n break\n }\n\n case 'versions': {\n // --> /globals/:globalSlug/versions\n if (docPermissions?.readVersions) {\n View = getCustomDocumentViewByKey(views, 'versions') || DefaultVersionsView\n } else {\n View = UnauthorizedView\n }\n break\n }\n\n // --> /globals/:globalSlug/<custom-segment>\n default: {\n if (docPermissions?.read) {\n const baseRoute = [adminRoute, globalEntity, globalSlug, segment3]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment3, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } =\n getCustomViewByRoute({\n baseRoute,\n currentRoute,\n views,\n })\n\n if (customViewKey) {\n viewKey = customViewKey\n\n View = CustomViewComponent\n } else {\n View = DefaultEditView\n }\n } else {\n View = UnauthorizedView\n }\n break\n }\n }\n break\n }\n\n // --> /globals/:globalSlug/versions/:version\n // --> /globals/:globalSlug/<custom-segment>/<custom-segment>\n default: {\n // --> /globals/:globalSlug/versions/:version\n if (segment3 === 'versions') {\n if (docPermissions?.readVersions) {\n View = getCustomDocumentViewByKey(views, 'version') || DefaultVersionView\n } else {\n View = UnauthorizedView\n }\n } else {\n // --> /globals/:globalSlug/<custom-segment>/<custom-segment>\n const baseRoute = [adminRoute !== '/' && adminRoute, 'globals', globalSlug]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment3, ...remainingSegments].filter(Boolean).join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } = getCustomViewByRoute({\n baseRoute,\n currentRoute,\n views,\n })\n\n if (customViewKey) {\n viewKey = customViewKey\n View = CustomViewComponent\n }\n }\n\n break\n }\n }\n }\n\n return {\n View,\n viewKey,\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"getMetaBySegment.d.ts","sourceRoot":"","sources":["../../../src/views/Document/getMetaBySegment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EACV,gBAAgB,EAEhB,UAAU,EACV,yBAAyB,EACzB,eAAe,EACf,qBAAqB,EACtB,MAAM,SAAS,CAAA;AAUhB,MAAM,MAAM,oBAAoB,GAAG;IACjC,UAAU,EAAE,gBAAgB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IACjD,gBAAgB,CAAC,EAAE,IAAI,GAAG,yBAAyB,CAAA;IACnD,MAAM,EAAE,eAAe,CAAA;IACvB,YAAY,CAAC,EAAE,IAAI,GAAG,qBAAqB,CAAA;IAC3C,IAAI,EAAE,UAAU,CAAA;IAChB,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;CACvF,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,0EAO1B,oBAAoB,KAAG,OAAO,CAAC,UAAU,CAiI3C,CAAA"}
1
+ {"version":3,"file":"getMetaBySegment.d.ts","sourceRoot":"","sources":["../../../src/views/Document/getMetaBySegment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EACV,gBAAgB,EAEhB,UAAU,EACV,yBAAyB,EACzB,eAAe,EACf,qBAAqB,EACtB,MAAM,SAAS,CAAA;AAYhB,MAAM,MAAM,oBAAoB,GAAG;IACjC,UAAU,EAAE,gBAAgB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IACjD,gBAAgB,CAAC,EAAE,IAAI,GAAG,yBAAyB,CAAA;IACnD,MAAM,EAAE,eAAe,CAAA;IACvB,YAAY,CAAC,EAAE,IAAI,GAAG,qBAAqB,CAAA;IAC3C,IAAI,EAAE,UAAU,CAAA;IAChB,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;CACvF,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,0EAO1B,oBAAoB,KAAG,OAAO,CAAC,UAAU,CAyI3C,CAAA"}
@@ -1,3 +1,4 @@
1
+ import { branchesCollectionSlug } from 'payload/shared';
1
2
  import { generateAPIViewMetadata } from '../API/generateAPIViewMetadata.js';
2
3
  import { generateVersionViewMetadata } from '../Version/generateVersionViewMetadata.js';
3
4
  import { generateVersionsViewMetadata } from '../Versions/generateVersionsViewMetadata.js';
@@ -38,6 +39,14 @@ export const getMetaBySegment = async ({
38
39
  case 'api':
39
40
  fn = generateAPIViewMetadata;
40
41
  break;
42
+ case 'manage':
43
+ // A branch's own fields, which is the edit view under another name.
44
+ // Without this the segment resolves to no generator and the page title
45
+ // reads "Not Found" over a perfectly good form.
46
+ if (collectionConfig?.slug === branchesCollectionSlug) {
47
+ fn = generateEditViewMetadata;
48
+ }
49
+ break;
41
50
  case 'versions':
42
51
  fn = generateVersionsViewMetadata;
43
52
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"getMetaBySegment.js","names":["generateAPIViewMetadata","generateVersionViewMetadata","generateVersionsViewMetadata","generateEditViewMetadata","getDocumentView","getMetaBySegment","adminViews","collectionConfig","config","globalConfig","i18n","params","rawSegments","segments","Array","isArray","fn","segmentOne","isCollection","isGlobal","isEditing","Boolean","length","args","isReadOnly","viewKey","docPermissions","create","delete","fields","read","readVersions","update","routeSegments","customViewConfig","admin","components","views","edit","view","notFound","generateMetadata"],"sources":["../../../src/views/Document/getMetaBySegment.ts"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type {\n AdminViewAdapter,\n EditConfig,\n MetaConfig,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n} from 'payload'\n\nimport type { GenerateEditViewMetadata } from '../API/generateAPIViewMetadata.js'\n\nimport { generateAPIViewMetadata } from '../API/generateAPIViewMetadata.js'\nimport { generateVersionViewMetadata } from '../Version/generateVersionViewMetadata.js'\nimport { generateVersionsViewMetadata } from '../Versions/generateVersionsViewMetadata.js'\nimport { generateEditViewMetadata } from './generateEditViewMetadata.js'\nimport { getDocumentView } from './index.js'\n\nexport type GetMetaBySegmentArgs = {\n adminViews: AdminViewAdapter<unknown, MetaConfig>\n collectionConfig?: null | SanitizedCollectionConfig\n config: SanitizedConfig\n globalConfig?: null | SanitizedGlobalConfig\n i18n: I18nClient\n params: { [key: string]: string | string[] | undefined; segments?: string | string[] }\n}\n\n/**\n * Resolves a collection/global document subview from route segments and returns\n * its `MetaConfig`. Shared by all framework adapters — segment-routing logic\n * lives here so adapters do not duplicate it.\n */\nexport const getMetaBySegment = async ({\n adminViews,\n collectionConfig,\n config,\n globalConfig,\n i18n,\n params,\n}: GetMetaBySegmentArgs): Promise<MetaConfig> => {\n const rawSegments = params.segments\n const segments = Array.isArray(rawSegments) ? rawSegments : []\n\n let fn: GenerateEditViewMetadata | null = null\n\n const [segmentOne] = segments\n const isCollection = segmentOne === 'collections'\n const isGlobal = segmentOne === 'globals'\n\n const isEditing =\n isGlobal || Boolean(isCollection && segments.length > 2 && segments[2] !== 'create')\n\n if (isCollection) {\n if (segments.length === 3) {\n fn = generateEditViewMetadata\n }\n\n if (segments.length === 4 && segments[2] === 'trash') {\n fn = (args) => generateEditViewMetadata({ ...args, isReadOnly: true })\n }\n\n if (segments.length === 4) {\n switch (segments[3]) {\n case 'api':\n fn = generateAPIViewMetadata\n break\n case 'versions':\n fn = generateVersionsViewMetadata\n break\n default:\n break\n }\n }\n\n if (segments.length === 5) {\n switch (segments[3]) {\n case 'versions':\n fn = generateVersionViewMetadata\n break\n default:\n break\n }\n }\n\n if (segments.length === 5 && segments[2] === 'trash') {\n switch (segments[4]) {\n case 'api':\n fn = generateAPIViewMetadata\n break\n case 'versions':\n fn = generateVersionsViewMetadata\n break\n default:\n break\n }\n }\n\n if (segments.length === 6 && segments[2] === 'trash' && segments[4] === 'versions') {\n fn = generateVersionViewMetadata\n }\n }\n\n if (isGlobal) {\n if (segments.length === 2) {\n fn = generateEditViewMetadata\n }\n\n if (segments.length === 3) {\n switch (segments[2]) {\n case 'api':\n fn = generateAPIViewMetadata\n break\n case 'versions':\n fn = generateVersionsViewMetadata\n break\n default:\n break\n }\n }\n\n if (segments.length === 4 && segments[2] === 'versions') {\n fn = generateVersionViewMetadata\n }\n }\n\n if (typeof fn === 'function') {\n return fn({\n collectionConfig,\n config,\n globalConfig,\n i18n,\n isEditing,\n })\n }\n\n const { viewKey } = getDocumentView({\n collectionConfig,\n config,\n docPermissions: {\n create: true,\n delete: true,\n fields: true,\n read: true,\n readVersions: true,\n update: true,\n },\n globalConfig,\n routeSegments: segments,\n })\n\n if (viewKey) {\n const customViewConfig =\n collectionConfig?.admin?.components?.views?.edit?.[viewKey] ||\n globalConfig?.admin?.components?.views?.edit?.[viewKey]\n\n if (customViewConfig) {\n return generateEditViewMetadata({\n collectionConfig,\n config,\n globalConfig,\n i18n,\n isEditing,\n view: viewKey as keyof EditConfig,\n })\n }\n }\n\n return adminViews.notFound.generateMetadata({ config, i18n })\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"getMetaBySegment.js","names":["branchesCollectionSlug","generateAPIViewMetadata","generateVersionViewMetadata","generateVersionsViewMetadata","generateEditViewMetadata","getDocumentView","getMetaBySegment","adminViews","collectionConfig","config","globalConfig","i18n","params","rawSegments","segments","Array","isArray","fn","segmentOne","isCollection","isGlobal","isEditing","Boolean","length","args","isReadOnly","slug","viewKey","docPermissions","create","delete","fields","read","readVersions","update","routeSegments","customViewConfig","admin","components","views","edit","view","notFound","generateMetadata"],"sources":["../../../src/views/Document/getMetaBySegment.ts"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type {\n AdminViewAdapter,\n EditConfig,\n MetaConfig,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n} from 'payload'\n\nimport { branchesCollectionSlug } from 'payload/shared'\n\nimport type { GenerateEditViewMetadata } from '../API/generateAPIViewMetadata.js'\n\nimport { generateAPIViewMetadata } from '../API/generateAPIViewMetadata.js'\nimport { generateVersionViewMetadata } from '../Version/generateVersionViewMetadata.js'\nimport { generateVersionsViewMetadata } from '../Versions/generateVersionsViewMetadata.js'\nimport { generateEditViewMetadata } from './generateEditViewMetadata.js'\nimport { getDocumentView } from './index.js'\n\nexport type GetMetaBySegmentArgs = {\n adminViews: AdminViewAdapter<unknown, MetaConfig>\n collectionConfig?: null | SanitizedCollectionConfig\n config: SanitizedConfig\n globalConfig?: null | SanitizedGlobalConfig\n i18n: I18nClient\n params: { [key: string]: string | string[] | undefined; segments?: string | string[] }\n}\n\n/**\n * Resolves a collection/global document subview from route segments and returns\n * its `MetaConfig`. Shared by all framework adapters — segment-routing logic\n * lives here so adapters do not duplicate it.\n */\nexport const getMetaBySegment = async ({\n adminViews,\n collectionConfig,\n config,\n globalConfig,\n i18n,\n params,\n}: GetMetaBySegmentArgs): Promise<MetaConfig> => {\n const rawSegments = params.segments\n const segments = Array.isArray(rawSegments) ? rawSegments : []\n\n let fn: GenerateEditViewMetadata | null = null\n\n const [segmentOne] = segments\n const isCollection = segmentOne === 'collections'\n const isGlobal = segmentOne === 'globals'\n\n const isEditing =\n isGlobal || Boolean(isCollection && segments.length > 2 && segments[2] !== 'create')\n\n if (isCollection) {\n if (segments.length === 3) {\n fn = generateEditViewMetadata\n }\n\n if (segments.length === 4 && segments[2] === 'trash') {\n fn = (args) => generateEditViewMetadata({ ...args, isReadOnly: true })\n }\n\n if (segments.length === 4) {\n switch (segments[3]) {\n case 'api':\n fn = generateAPIViewMetadata\n break\n case 'manage':\n // A branch's own fields, which is the edit view under another name.\n // Without this the segment resolves to no generator and the page title\n // reads \"Not Found\" over a perfectly good form.\n if (collectionConfig?.slug === branchesCollectionSlug) {\n fn = generateEditViewMetadata\n }\n break\n case 'versions':\n fn = generateVersionsViewMetadata\n break\n default:\n break\n }\n }\n\n if (segments.length === 5) {\n switch (segments[3]) {\n case 'versions':\n fn = generateVersionViewMetadata\n break\n default:\n break\n }\n }\n\n if (segments.length === 5 && segments[2] === 'trash') {\n switch (segments[4]) {\n case 'api':\n fn = generateAPIViewMetadata\n break\n case 'versions':\n fn = generateVersionsViewMetadata\n break\n default:\n break\n }\n }\n\n if (segments.length === 6 && segments[2] === 'trash' && segments[4] === 'versions') {\n fn = generateVersionViewMetadata\n }\n }\n\n if (isGlobal) {\n if (segments.length === 2) {\n fn = generateEditViewMetadata\n }\n\n if (segments.length === 3) {\n switch (segments[2]) {\n case 'api':\n fn = generateAPIViewMetadata\n break\n case 'versions':\n fn = generateVersionsViewMetadata\n break\n default:\n break\n }\n }\n\n if (segments.length === 4 && segments[2] === 'versions') {\n fn = generateVersionViewMetadata\n }\n }\n\n if (typeof fn === 'function') {\n return fn({\n collectionConfig,\n config,\n globalConfig,\n i18n,\n isEditing,\n })\n }\n\n const { viewKey } = getDocumentView({\n collectionConfig,\n config,\n docPermissions: {\n create: true,\n delete: true,\n fields: true,\n read: true,\n readVersions: true,\n update: true,\n },\n globalConfig,\n routeSegments: segments,\n })\n\n if (viewKey) {\n const customViewConfig =\n collectionConfig?.admin?.components?.views?.edit?.[viewKey] ||\n globalConfig?.admin?.components?.views?.edit?.[viewKey]\n\n if (customViewConfig) {\n return generateEditViewMetadata({\n collectionConfig,\n config,\n globalConfig,\n i18n,\n isEditing,\n view: viewKey as keyof EditConfig,\n })\n }\n }\n\n return adminViews.notFound.generateMetadata({ config, i18n })\n}\n"],"mappings":"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","ignoreList":[]}
@@ -20,5 +20,7 @@ export declare const renderDocument: ({ disableActions, documentSubViewType, dra
20
20
  data: Data;
21
21
  Document: React.ReactNode;
22
22
  }>;
23
- export declare function DocumentView(props: AdminViewServerProps): Promise<Iterable<React.ReactNode> | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | (string | number | bigint | boolean | Iterable<React.ReactNode> | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | React.ReactPortal)>;
23
+ export declare function DocumentView(props: {
24
+ overrideEntityVisibility?: boolean;
25
+ } & AdminViewServerProps): Promise<Iterable<React.ReactNode> | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | (string | number | bigint | boolean | Iterable<React.ReactNode> | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | React.ReactPortal)>;
24
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Document/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EAEpB,IAAI,EACJ,uBAAuB,EACvB,uBAAuB,EAEvB,iBAAiB,EACjB,gBAAgB,EAChB,gCAAgC,EACjC,MAAM,SAAS,CAAA;AAIhB,OAAO,KAAK,MAAM,OAAO,CAAA;AA6BzB,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,MAAM,MAAM,YAAY,GACpB,iBAAiB,GACjB,gBAAgB,CAAC,uBAAuB,CAAC,GACzC,KAAK,CAAC,EAAE,GACR,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,CAAA;AAErC;;;;;GAKG;AACH,eAAO,MAAM,cAAc,6PAgBxB;IACD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAA;IACzC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IACvC,QAAQ,CAAC,EAAE,gCAAgC,CAAA;CAC5C,GAAG,oBAAoB,KAAG,OAAO,CAAC;IACjC,IAAI,EAAE,IAAI,CAAA;IACV,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,CAsZA,CAAA;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,oBAAoB,+QAuB7D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Document/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EAEpB,IAAI,EACJ,uBAAuB,EACvB,uBAAuB,EAEvB,iBAAiB,EACjB,gBAAgB,EAChB,gCAAgC,EACjC,MAAM,SAAS,CAAA;AAIhB,OAAO,KAAK,MAAM,OAAO,CAAA;AA6BzB,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,MAAM,MAAM,YAAY,GACpB,iBAAiB,GACjB,gBAAgB,CAAC,uBAAuB,CAAC,GACzC,KAAK,CAAC,EAAE,GACR,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,CAAA;AAErC;;;;;GAKG;AACH,eAAO,MAAM,cAAc,6PAgBxB;IACD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAA;IACzC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IACvC,QAAQ,CAAC,EAAE,gCAAgC,CAAA;CAC5C,GAAG,oBAAoB,KAAG,OAAO,CAAC;IACjC,IAAI,EAAE,IAAI,CAAA;IACV,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,CA8ZA,CAAA;AAED,wBAAsB,YAAY,CAChC,KAAK,EAAE;IAAE,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,oBAAoB,+QAwBrE"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { isolateObjectProperty, logError } from 'payload';
3
- import { formatAdminURL, hasAutosaveEnabled, hasDraftsEnabled } from 'payload/shared';
3
+ import { formatAdminURL, hasAutosaveEnabled, hasDraftsEnabled, MAIN_BRANCH } from 'payload/shared';
4
4
  import React from 'react';
5
5
  import { DocumentHeader } from '../../elements/DocumentHeader/index.js';
6
6
  import { RenderServerComponent } from '../../elements/RenderServerComponent/index.js';
@@ -177,6 +177,7 @@ export const renderDocument = async ({
177
177
  state: formState
178
178
  }, hasScheduledPublish] = await Promise.all([getVersions({
179
179
  id: idFromArgs,
180
+ branch: req?.branch,
180
181
  collectionConfig,
181
182
  doc,
182
183
  docPermissions,
@@ -233,6 +234,12 @@ export const renderDocument = async ({
233
234
  if (locale?.code) {
234
235
  formattedParams.append('locale', locale.code);
235
236
  }
237
+ // The API view shows this URL as the request it made, so it has to name the
238
+ // branch the rest of the view is scoped to — otherwise it displays, and fetches,
239
+ // main's copy of the document being edited.
240
+ if (req.branch && req.branch !== MAIN_BRANCH) {
241
+ formattedParams.append('branch', req.branch);
242
+ }
236
243
  const apiQueryParams = `?${formattedParams.toString()}`;
237
244
  const apiURL = formatAdminURL({
238
245
  apiRoute,