@payloadcms/ui 3.0.0-beta.9 → 3.0.0-canary.220bb7c

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 (907) hide show
  1. package/dist/assets/index.d.ts +4 -2
  2. package/dist/assets/index.d.ts.map +1 -1
  3. package/dist/assets/index.js +4 -2
  4. package/dist/assets/index.js.map +1 -1
  5. package/dist/assets/payload-favicon-dark.png +0 -0
  6. package/dist/assets/payload-favicon-light.png +0 -0
  7. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  8. package/dist/elements/AppHeader/index.js +65 -40
  9. package/dist/elements/AppHeader/index.js.map +1 -1
  10. package/dist/elements/ArrayAction/index.d.ts +1 -0
  11. package/dist/elements/ArrayAction/index.d.ts.map +1 -1
  12. package/dist/elements/ArrayAction/index.js +77 -42
  13. package/dist/elements/ArrayAction/index.js.map +1 -1
  14. package/dist/elements/Autosave/index.d.ts.map +1 -1
  15. package/dist/elements/Autosave/index.js +30 -11
  16. package/dist/elements/Autosave/index.js.map +1 -1
  17. package/dist/elements/Banner/index.d.ts.map +1 -1
  18. package/dist/elements/Banner/index.js +18 -6
  19. package/dist/elements/Banner/index.js.map +1 -1
  20. package/dist/elements/Button/index.js +53 -31
  21. package/dist/elements/Button/index.js.map +1 -1
  22. package/dist/elements/Card/index.d.ts.map +1 -1
  23. package/dist/elements/Card/index.js +24 -15
  24. package/dist/elements/Card/index.js.map +1 -1
  25. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  26. package/dist/elements/CodeEditor/CodeEditor.js +4 -2
  27. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  28. package/dist/elements/CodeEditor/index.d.ts.map +1 -1
  29. package/dist/elements/CodeEditor/index.js +9 -6
  30. package/dist/elements/CodeEditor/index.js.map +1 -1
  31. package/dist/elements/Collapsible/index.js +63 -38
  32. package/dist/elements/Collapsible/index.js.map +1 -1
  33. package/dist/elements/Collapsible/provider.js +5 -3
  34. package/dist/elements/Collapsible/provider.js.map +1 -1
  35. package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
  36. package/dist/elements/ColumnSelector/index.js +31 -23
  37. package/dist/elements/ColumnSelector/index.js.map +1 -1
  38. package/dist/elements/CopyToClipboard/index.js +21 -11
  39. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  40. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  41. package/dist/elements/DatePicker/DatePicker.js +29 -17
  42. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  43. package/dist/elements/DatePicker/index.d.ts.map +1 -1
  44. package/dist/elements/DatePicker/index.js +8 -3
  45. package/dist/elements/DatePicker/index.js.map +1 -1
  46. package/dist/elements/DeleteDocument/index.js +57 -32
  47. package/dist/elements/DeleteDocument/index.js.map +1 -1
  48. package/dist/elements/DeleteMany/index.js +43 -23
  49. package/dist/elements/DeleteMany/index.js.map +1 -1
  50. package/dist/elements/DocumentControls/index.d.ts +1 -0
  51. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  52. package/dist/elements/DocumentControls/index.js +182 -102
  53. package/dist/elements/DocumentControls/index.js.map +1 -1
  54. package/dist/elements/DocumentControls/index.scss +2 -2
  55. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  56. package/dist/elements/DocumentDrawer/DrawerContent.js +37 -31
  57. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  58. package/dist/elements/DocumentDrawer/index.js +14 -8
  59. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  60. package/dist/elements/DocumentDrawer/types.d.ts +0 -1
  61. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  62. package/dist/elements/DocumentFields/index.d.ts.map +1 -1
  63. package/dist/elements/DocumentFields/index.js +54 -34
  64. package/dist/elements/DocumentFields/index.js.map +1 -1
  65. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +14 -11
  66. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  67. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
  68. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +19 -7
  69. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  70. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +3 -1
  71. package/dist/elements/DocumentHeader/Tabs/index.d.ts +2 -0
  72. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  73. package/dist/elements/DocumentHeader/Tabs/index.js +65 -56
  74. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  75. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts.map +1 -1
  76. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +15 -7
  77. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  78. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  79. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +1 -1
  80. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  81. package/dist/elements/DocumentHeader/index.d.ts +2 -0
  82. package/dist/elements/DocumentHeader/index.d.ts.map +1 -1
  83. package/dist/elements/DocumentHeader/index.js +22 -11
  84. package/dist/elements/DocumentHeader/index.js.map +1 -1
  85. package/dist/elements/DraggableSortable/DraggableSortableItem/index.d.ts.map +1 -1
  86. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +15 -11
  87. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  88. package/dist/elements/DraggableSortable/index.d.ts.map +1 -1
  89. package/dist/elements/DraggableSortable/index.js +13 -8
  90. package/dist/elements/DraggableSortable/index.js.map +1 -1
  91. package/dist/elements/DraggableSortable/useDraggableSortable/index.d.ts.map +1 -1
  92. package/dist/elements/DraggableSortable/useDraggableSortable/index.js +1 -0
  93. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  94. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts +0 -1
  95. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts.map +1 -1
  96. package/dist/elements/Drawer/index.js +58 -35
  97. package/dist/elements/Drawer/index.js.map +1 -1
  98. package/dist/elements/Drawer/types.d.ts +0 -1
  99. package/dist/elements/Drawer/types.d.ts.map +1 -1
  100. package/dist/elements/Drawer/useDrawerSlug.d.ts.map +1 -1
  101. package/dist/elements/Drawer/useDrawerSlug.js +1 -0
  102. package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
  103. package/dist/elements/Dropzone/index.d.ts.map +1 -1
  104. package/dist/elements/Dropzone/index.js +31 -18
  105. package/dist/elements/Dropzone/index.js.map +1 -1
  106. package/dist/elements/DuplicateDocument/index.js +37 -17
  107. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  108. package/dist/elements/EditMany/index.d.ts.map +1 -1
  109. package/dist/elements/EditMany/index.js +112 -76
  110. package/dist/elements/EditMany/index.js.map +1 -1
  111. package/dist/elements/EditUpload/index.d.ts +12 -2
  112. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  113. package/dist/elements/EditUpload/index.js +263 -178
  114. package/dist/elements/EditUpload/index.js.map +1 -1
  115. package/dist/elements/ErrorPill/index.d.ts +2 -2
  116. package/dist/elements/ErrorPill/index.d.ts.map +1 -1
  117. package/dist/elements/ErrorPill/index.js +15 -7
  118. package/dist/elements/ErrorPill/index.js.map +1 -1
  119. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  120. package/dist/elements/FieldSelect/index.js +46 -25
  121. package/dist/elements/FieldSelect/index.js.map +1 -1
  122. package/dist/elements/FileDetails/FileMeta/index.d.ts.map +1 -1
  123. package/dist/elements/FileDetails/FileMeta/index.js +55 -20
  124. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  125. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  126. package/dist/elements/FileDetails/index.js +43 -30
  127. package/dist/elements/FileDetails/index.js.map +1 -1
  128. package/dist/elements/GenerateConfirmation/index.js +48 -26
  129. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  130. package/dist/elements/Gutter/index.js +5 -3
  131. package/dist/elements/Gutter/index.js.map +1 -1
  132. package/dist/elements/Hamburger/index.js +48 -27
  133. package/dist/elements/Hamburger/index.js.map +1 -1
  134. package/dist/elements/HydrateClientUser/index.d.ts +2 -2
  135. package/dist/elements/HydrateClientUser/index.d.ts.map +1 -1
  136. package/dist/elements/HydrateClientUser/index.js.map +1 -1
  137. package/dist/elements/IDLabel/index.d.ts.map +1 -1
  138. package/dist/elements/IDLabel/index.js +10 -3
  139. package/dist/elements/IDLabel/index.js.map +1 -1
  140. package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts.map +1 -1
  141. package/dist/elements/ListControls/getTextFieldsToBeSearched.js +1 -1
  142. package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
  143. package/dist/elements/ListControls/index.d.ts.map +1 -1
  144. package/dist/elements/ListControls/index.js +108 -63
  145. package/dist/elements/ListControls/index.js.map +1 -1
  146. package/dist/elements/ListDrawer/DrawerContent.js +97 -67
  147. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  148. package/dist/elements/ListDrawer/index.js +14 -8
  149. package/dist/elements/ListDrawer/index.js.map +1 -1
  150. package/dist/elements/ListDrawer/types.d.ts +0 -1
  151. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  152. package/dist/elements/ListSelection/index.js +31 -17
  153. package/dist/elements/ListSelection/index.js.map +1 -1
  154. package/dist/elements/Loading/index.js +31 -18
  155. package/dist/elements/Loading/index.js.map +1 -1
  156. package/dist/elements/LoadingOverlay/index.js +13 -8
  157. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  158. package/dist/elements/Localizer/LocalizerLabel/index.d.ts.map +1 -1
  159. package/dist/elements/Localizer/LocalizerLabel/index.js +20 -9
  160. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  161. package/dist/elements/Localizer/index.d.ts.map +1 -1
  162. package/dist/elements/Localizer/index.js +32 -24
  163. package/dist/elements/Localizer/index.js.map +1 -1
  164. package/dist/elements/Logout/index.d.ts.map +1 -1
  165. package/dist/elements/Logout/index.js +10 -6
  166. package/dist/elements/Logout/index.js.map +1 -1
  167. package/dist/elements/Nav/NavHamburger/index.js +7 -5
  168. package/dist/elements/Nav/NavHamburger/index.js.map +1 -1
  169. package/dist/elements/Nav/NavToggler/index.js +5 -3
  170. package/dist/elements/Nav/NavToggler/index.js.map +1 -1
  171. package/dist/elements/Nav/NavWrapper/index.js +9 -6
  172. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  173. package/dist/elements/Nav/context.d.ts +1 -1
  174. package/dist/elements/Nav/context.d.ts.map +1 -1
  175. package/dist/elements/Nav/context.js +5 -3
  176. package/dist/elements/Nav/context.js.map +1 -1
  177. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  178. package/dist/elements/Nav/index.client.js +44 -36
  179. package/dist/elements/Nav/index.client.js.map +1 -1
  180. package/dist/elements/Nav/index.d.ts +2 -4
  181. package/dist/elements/Nav/index.d.ts.map +1 -1
  182. package/dist/elements/Nav/index.js +55 -20
  183. package/dist/elements/Nav/index.js.map +1 -1
  184. package/dist/elements/NavGroup/index.js +39 -24
  185. package/dist/elements/NavGroup/index.js.map +1 -1
  186. package/dist/elements/Pagination/ClickableArrow/index.d.ts.map +1 -1
  187. package/dist/elements/Pagination/ClickableArrow/index.js +6 -3
  188. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  189. package/dist/elements/Pagination/Page/index.d.ts.map +1 -1
  190. package/dist/elements/Pagination/Page/index.js +6 -3
  191. package/dist/elements/Pagination/Page/index.js.map +1 -1
  192. package/dist/elements/Pagination/Separator/index.d.ts.map +1 -1
  193. package/dist/elements/Pagination/Separator/index.js +6 -3
  194. package/dist/elements/Pagination/Separator/index.js.map +1 -1
  195. package/dist/elements/Pagination/index.js +17 -17
  196. package/dist/elements/Pagination/index.js.map +1 -1
  197. package/dist/elements/PerPage/index.js +46 -28
  198. package/dist/elements/PerPage/index.js.map +1 -1
  199. package/dist/elements/Pill/index.d.ts +0 -1
  200. package/dist/elements/Pill/index.d.ts.map +1 -1
  201. package/dist/elements/Pill/index.js +26 -13
  202. package/dist/elements/Pill/index.js.map +1 -1
  203. package/dist/elements/Popup/PopupButtonList/index.js +17 -12
  204. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  205. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  206. package/dist/elements/Popup/PopupTrigger/index.js +10 -6
  207. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  208. package/dist/elements/Popup/index.js +52 -35
  209. package/dist/elements/Popup/index.js.map +1 -1
  210. package/dist/elements/PreviewButton/index.js +6 -4
  211. package/dist/elements/PreviewButton/index.js.map +1 -1
  212. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  213. package/dist/elements/PreviewSizes/index.js +82 -49
  214. package/dist/elements/PreviewSizes/index.js.map +1 -1
  215. package/dist/elements/{Publish → PublishButton}/index.d.ts +1 -1
  216. package/dist/elements/PublishButton/index.d.ts.map +1 -0
  217. package/dist/elements/PublishButton/index.js +40 -0
  218. package/dist/elements/PublishButton/index.js.map +1 -0
  219. package/dist/elements/PublishMany/index.js +43 -23
  220. package/dist/elements/PublishMany/index.js.map +1 -1
  221. package/dist/elements/ReactSelect/ClearIndicator/index.d.ts.map +1 -1
  222. package/dist/elements/ReactSelect/ClearIndicator/index.js +19 -7
  223. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  224. package/dist/elements/ReactSelect/ClearIndicator/index.scss +4 -0
  225. package/dist/elements/ReactSelect/Control/index.d.ts.map +1 -1
  226. package/dist/elements/ReactSelect/Control/index.js +28 -23
  227. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  228. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts +8 -0
  229. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -0
  230. package/dist/elements/ReactSelect/DropdownIndicator/index.js +22 -0
  231. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -0
  232. package/dist/elements/ReactSelect/DropdownIndicator/index.scss +16 -0
  233. package/dist/elements/ReactSelect/Input/index.d.ts +5 -0
  234. package/dist/elements/ReactSelect/Input/index.d.ts.map +1 -0
  235. package/dist/elements/ReactSelect/Input/index.js +17 -0
  236. package/dist/elements/ReactSelect/Input/index.js.map +1 -0
  237. package/dist/elements/ReactSelect/MultiValue/index.d.ts +1 -0
  238. package/dist/elements/ReactSelect/MultiValue/index.d.ts.map +1 -1
  239. package/dist/elements/ReactSelect/MultiValue/index.js +31 -22
  240. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  241. package/dist/elements/ReactSelect/MultiValueLabel/index.d.ts.map +1 -1
  242. package/dist/elements/ReactSelect/MultiValueLabel/index.js +12 -9
  243. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  244. package/dist/elements/ReactSelect/MultiValueLabel/index.scss +4 -0
  245. package/dist/elements/ReactSelect/MultiValueRemove/index.d.ts +1 -1
  246. package/dist/elements/ReactSelect/MultiValueRemove/index.d.ts.map +1 -1
  247. package/dist/elements/ReactSelect/MultiValueRemove/index.js +21 -8
  248. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  249. package/dist/elements/ReactSelect/SingleValue/index.d.ts.map +1 -1
  250. package/dist/elements/ReactSelect/SingleValue/index.js +12 -7
  251. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  252. package/dist/elements/ReactSelect/ValueContainer/index.d.ts.map +1 -1
  253. package/dist/elements/ReactSelect/ValueContainer/index.js +8 -3
  254. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  255. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  256. package/dist/elements/ReactSelect/index.js +50 -19
  257. package/dist/elements/ReactSelect/index.js.map +1 -1
  258. package/dist/elements/ReactSelect/index.scss +1 -1
  259. package/dist/elements/ReactSelect/types.d.ts +1 -1
  260. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  261. package/dist/elements/ReactSelect/types.js.map +1 -1
  262. package/dist/elements/RenderCustomClientComponent/index.d.ts +8 -0
  263. package/dist/elements/RenderCustomClientComponent/index.d.ts.map +1 -0
  264. package/dist/elements/RenderCustomClientComponent/index.js +19 -0
  265. package/dist/elements/RenderCustomClientComponent/index.js.map +1 -0
  266. package/dist/elements/RenderCustomComponent/index.d.ts +9 -0
  267. package/dist/elements/RenderCustomComponent/index.d.ts.map +1 -1
  268. package/dist/elements/RenderCustomComponent/index.js +17 -4
  269. package/dist/elements/RenderCustomComponent/index.js.map +1 -1
  270. package/dist/elements/RenderTitle/index.d.ts.map +1 -1
  271. package/dist/elements/RenderTitle/index.js +16 -9
  272. package/dist/elements/RenderTitle/index.js.map +1 -1
  273. package/dist/elements/{Save → SaveButton}/index.d.ts +1 -1
  274. package/dist/elements/SaveButton/index.d.ts.map +1 -0
  275. package/dist/elements/{Save → SaveButton}/index.js +16 -6
  276. package/dist/elements/SaveButton/index.js.map +1 -0
  277. package/dist/elements/{SaveDraft → SaveDraftButton}/index.d.ts +1 -1
  278. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -0
  279. package/dist/elements/{SaveDraft → SaveDraftButton}/index.js +16 -9
  280. package/dist/elements/SaveDraftButton/index.js.map +1 -0
  281. package/dist/elements/SearchFilter/index.d.ts.map +1 -1
  282. package/dist/elements/SearchFilter/index.js +15 -9
  283. package/dist/elements/SearchFilter/index.js.map +1 -1
  284. package/dist/elements/SelectAll/index.js +2 -1
  285. package/dist/elements/SelectAll/index.js.map +1 -1
  286. package/dist/elements/SelectRow/index.js +2 -1
  287. package/dist/elements/SelectRow/index.js.map +1 -1
  288. package/dist/elements/ShimmerEffect/index.js +23 -20
  289. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  290. package/dist/elements/SortColumn/index.js +43 -31
  291. package/dist/elements/SortColumn/index.js.map +1 -1
  292. package/dist/elements/SortComplex/index.d.ts.map +1 -1
  293. package/dist/elements/SortComplex/index.js +42 -23
  294. package/dist/elements/SortComplex/index.js.map +1 -1
  295. package/dist/elements/Status/index.js +94 -41
  296. package/dist/elements/Status/index.js.map +1 -1
  297. package/dist/elements/StayLoggedIn/index.d.ts +2 -4
  298. package/dist/elements/StayLoggedIn/index.d.ts.map +1 -1
  299. package/dist/elements/StayLoggedIn/index.js +45 -24
  300. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  301. package/dist/elements/StayLoggedIn/index.scss +1 -1
  302. package/dist/elements/StepNav/index.d.ts.map +1 -1
  303. package/dist/elements/StepNav/index.js +67 -35
  304. package/dist/elements/StepNav/index.js.map +1 -1
  305. package/dist/elements/StepNav/index.scss +12 -2
  306. package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts.map +1 -1
  307. package/dist/elements/Table/DefaultCell/fields/Array/index.js +5 -2
  308. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  309. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
  310. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +5 -2
  311. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  312. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts.map +1 -1
  313. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +11 -3
  314. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  315. package/dist/elements/Table/DefaultCell/fields/Code/index.d.ts.map +1 -1
  316. package/dist/elements/Table/DefaultCell/fields/Code/index.js +8 -3
  317. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  318. package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts.map +1 -1
  319. package/dist/elements/Table/DefaultCell/fields/Date/index.js +11 -8
  320. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  321. package/dist/elements/Table/DefaultCell/fields/File/index.d.ts.map +1 -1
  322. package/dist/elements/Table/DefaultCell/fields/File/index.js +22 -16
  323. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  324. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +8 -4
  325. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  326. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
  327. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +46 -27
  328. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  329. package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts.map +1 -1
  330. package/dist/elements/Table/DefaultCell/fields/Select/index.js +5 -2
  331. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  332. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js +5 -2
  333. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  334. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  335. package/dist/elements/Table/DefaultCell/index.js +36 -22
  336. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  337. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  338. package/dist/elements/Table/RelationshipProvider/index.js +9 -7
  339. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  340. package/dist/elements/Table/TableCellProvider/index.d.ts +0 -2
  341. package/dist/elements/Table/TableCellProvider/index.d.ts.map +1 -1
  342. package/dist/elements/Table/TableCellProvider/index.js +7 -6
  343. package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
  344. package/dist/elements/Table/index.d.ts +1 -0
  345. package/dist/elements/Table/index.d.ts.map +1 -1
  346. package/dist/elements/Table/index.js +39 -24
  347. package/dist/elements/Table/index.js.map +1 -1
  348. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  349. package/dist/elements/TableColumns/buildColumnState.js +17 -7
  350. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  351. package/dist/elements/TableColumns/filterFields.d.ts.map +1 -1
  352. package/dist/elements/TableColumns/filterFields.js +2 -1
  353. package/dist/elements/TableColumns/filterFields.js.map +1 -1
  354. package/dist/elements/TableColumns/index.js +5 -3
  355. package/dist/elements/TableColumns/index.js.map +1 -1
  356. package/dist/elements/Thumbnail/index.js +14 -8
  357. package/dist/elements/Thumbnail/index.js.map +1 -1
  358. package/dist/elements/ThumbnailCard/index.d.ts.map +1 -1
  359. package/dist/elements/ThumbnailCard/index.js +15 -7
  360. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  361. package/dist/elements/Tooltip/index.d.ts +5 -1
  362. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  363. package/dist/elements/Tooltip/index.js +42 -27
  364. package/dist/elements/Tooltip/index.js.map +1 -1
  365. package/dist/elements/Tooltip/index.scss +12 -10
  366. package/dist/elements/Translation/index.d.ts +2 -2
  367. package/dist/elements/Translation/index.d.ts.map +1 -1
  368. package/dist/elements/Translation/index.js +19 -16
  369. package/dist/elements/Translation/index.js.map +1 -1
  370. package/dist/elements/UnpublishMany/index.js +42 -22
  371. package/dist/elements/UnpublishMany/index.js.map +1 -1
  372. package/dist/elements/Upload/index.d.ts.map +1 -1
  373. package/dist/elements/Upload/index.js +143 -75
  374. package/dist/elements/Upload/index.js.map +1 -1
  375. package/dist/elements/Upload/index.scss +12 -1
  376. package/dist/elements/ViewDescription/index.js +6 -4
  377. package/dist/elements/ViewDescription/index.js.map +1 -1
  378. package/dist/elements/WhereBuilder/Condition/Date/index.d.ts.map +1 -1
  379. package/dist/elements/WhereBuilder/Condition/Date/index.js +11 -8
  380. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  381. package/dist/elements/WhereBuilder/Condition/Number/index.d.ts.map +1 -1
  382. package/dist/elements/WhereBuilder/Condition/Number/index.js +3 -1
  383. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  384. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
  385. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +148 -109
  386. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  387. package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts +3 -3
  388. package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts.map +1 -1
  389. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  390. package/dist/elements/WhereBuilder/Condition/Select/index.d.ts.map +1 -1
  391. package/dist/elements/WhereBuilder/Condition/Select/index.js +3 -1
  392. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  393. package/dist/elements/WhereBuilder/Condition/Text/index.d.ts.map +1 -1
  394. package/dist/elements/WhereBuilder/Condition/Text/index.js +3 -1
  395. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  396. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  397. package/dist/elements/WhereBuilder/Condition/index.js +87 -68
  398. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  399. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  400. package/dist/elements/WhereBuilder/index.js +150 -118
  401. package/dist/elements/WhereBuilder/index.js.map +1 -1
  402. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts.map +1 -1
  403. package/dist/elements/WhereBuilder/reduceFieldMap.js +2 -0
  404. package/dist/elements/WhereBuilder/reduceFieldMap.js.map +1 -1
  405. package/dist/elements/WithServerSideProps/index.d.ts +3 -0
  406. package/dist/elements/WithServerSideProps/index.d.ts.map +1 -0
  407. package/dist/elements/WithServerSideProps/index.js +22 -0
  408. package/dist/elements/WithServerSideProps/index.js.map +1 -0
  409. package/dist/elements/withMergedProps/index.d.ts +4 -0
  410. package/dist/elements/withMergedProps/index.d.ts.map +1 -1
  411. package/dist/elements/withMergedProps/index.js +13 -3
  412. package/dist/elements/withMergedProps/index.js.map +1 -1
  413. package/dist/exports/elements.d.ts +3 -2
  414. package/dist/exports/elements.d.ts.map +1 -1
  415. package/dist/exports/elements.js +5 -2
  416. package/dist/exports/elements.js.map +1 -1
  417. package/dist/exports/fields.d.ts +2 -0
  418. package/dist/exports/fields.d.ts.map +1 -0
  419. package/dist/exports/fields.js +3 -0
  420. package/dist/exports/fields.js.map +1 -0
  421. package/dist/exports/providers.d.ts +2 -0
  422. package/dist/exports/providers.d.ts.map +1 -0
  423. package/dist/exports/providers.js +3 -0
  424. package/dist/exports/providers.js.map +1 -0
  425. package/dist/fields/Array/ArrayRow.d.ts +1 -0
  426. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  427. package/dist/fields/Array/ArrayRow.js +54 -46
  428. package/dist/fields/Array/ArrayRow.js.map +1 -1
  429. package/dist/fields/Array/index.d.ts +1 -2
  430. package/dist/fields/Array/index.d.ts.map +1 -1
  431. package/dist/fields/Array/index.js +145 -102
  432. package/dist/fields/Array/index.js.map +1 -1
  433. package/dist/fields/Array/index.scss +0 -4
  434. package/dist/fields/Blocks/BlockRow.d.ts +1 -0
  435. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  436. package/dist/fields/Blocks/BlockRow.js +62 -52
  437. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  438. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.d.ts.map +1 -1
  439. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js +13 -7
  440. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js.map +1 -1
  441. package/dist/fields/Blocks/BlocksDrawer/index.js +36 -28
  442. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  443. package/dist/fields/Blocks/RowActions.d.ts +1 -0
  444. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  445. package/dist/fields/Blocks/RowActions.js +31 -24
  446. package/dist/fields/Blocks/RowActions.js.map +1 -1
  447. package/dist/fields/Blocks/SectionTitle/index.d.ts.map +1 -1
  448. package/dist/fields/Blocks/SectionTitle/index.js +15 -12
  449. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  450. package/dist/fields/Blocks/index.d.ts +2 -2
  451. package/dist/fields/Blocks/index.d.ts.map +1 -1
  452. package/dist/fields/Blocks/index.js +163 -113
  453. package/dist/fields/Blocks/index.js.map +1 -1
  454. package/dist/fields/Blocks/index.scss +0 -4
  455. package/dist/fields/Checkbox/Input.d.ts +6 -7
  456. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  457. package/dist/fields/Checkbox/Input.js +41 -26
  458. package/dist/fields/Checkbox/Input.js.map +1 -1
  459. package/dist/fields/Checkbox/index.d.ts +2 -1
  460. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  461. package/dist/fields/Checkbox/index.js +40 -32
  462. package/dist/fields/Checkbox/index.js.map +1 -1
  463. package/dist/fields/Checkbox/index.scss +0 -4
  464. package/dist/fields/Checkbox/types.d.ts +0 -2
  465. package/dist/fields/Checkbox/types.d.ts.map +1 -1
  466. package/dist/fields/Checkbox/types.js.map +1 -1
  467. package/dist/fields/Code/index.d.ts +1 -2
  468. package/dist/fields/Code/index.d.ts.map +1 -1
  469. package/dist/fields/Code/index.js +41 -25
  470. package/dist/fields/Code/index.js.map +1 -1
  471. package/dist/fields/Collapsible/index.d.ts +0 -2
  472. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  473. package/dist/fields/Collapsible/index.js +63 -45
  474. package/dist/fields/Collapsible/index.js.map +1 -1
  475. package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
  476. package/dist/fields/ConfirmPassword/index.js +29 -18
  477. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  478. package/dist/fields/DateTime/index.d.ts +1 -2
  479. package/dist/fields/DateTime/index.d.ts.map +1 -1
  480. package/dist/fields/DateTime/index.js +42 -30
  481. package/dist/fields/DateTime/index.js.map +1 -1
  482. package/dist/fields/DateTime/index.scss +0 -6
  483. package/dist/fields/Email/index.d.ts +1 -2
  484. package/dist/fields/Email/index.d.ts.map +1 -1
  485. package/dist/fields/Email/index.js +44 -28
  486. package/dist/fields/Email/index.js.map +1 -1
  487. package/dist/fields/Group/index.d.ts +0 -2
  488. package/dist/fields/Group/index.d.ts.map +1 -1
  489. package/dist/fields/Group/index.js +64 -40
  490. package/dist/fields/Group/index.js.map +1 -1
  491. package/dist/fields/Group/provider.js +5 -3
  492. package/dist/fields/Group/provider.js.map +1 -1
  493. package/dist/fields/HiddenInput/index.d.ts.map +1 -1
  494. package/dist/fields/HiddenInput/index.js +3 -2
  495. package/dist/fields/HiddenInput/index.js.map +1 -1
  496. package/dist/fields/JSON/index.d.ts +2 -2
  497. package/dist/fields/JSON/index.d.ts.map +1 -1
  498. package/dist/fields/JSON/index.js +68 -28
  499. package/dist/fields/JSON/index.js.map +1 -1
  500. package/dist/fields/Number/index.d.ts +1 -2
  501. package/dist/fields/Number/index.d.ts.map +1 -1
  502. package/dist/fields/Number/index.js +84 -64
  503. package/dist/fields/Number/index.js.map +1 -1
  504. package/dist/fields/Password/index.d.ts +0 -1
  505. package/dist/fields/Password/index.d.ts.map +1 -1
  506. package/dist/fields/Password/index.js +38 -25
  507. package/dist/fields/Password/index.js.map +1 -1
  508. package/dist/fields/Point/index.d.ts +0 -2
  509. package/dist/fields/Point/index.d.ts.map +1 -1
  510. package/dist/fields/Point/index.js +73 -37
  511. package/dist/fields/Point/index.js.map +1 -1
  512. package/dist/fields/RadioGroup/Radio/index.d.ts +1 -0
  513. package/dist/fields/RadioGroup/Radio/index.d.ts.map +1 -1
  514. package/dist/fields/RadioGroup/Radio/index.js +31 -19
  515. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  516. package/dist/fields/RadioGroup/Radio/index.scss +2 -29
  517. package/dist/fields/RadioGroup/index.d.ts +1 -2
  518. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  519. package/dist/fields/RadioGroup/index.js +66 -52
  520. package/dist/fields/RadioGroup/index.js.map +1 -1
  521. package/dist/fields/RadioGroup/index.scss +28 -4
  522. package/dist/fields/Relationship/AddNew/index.js +67 -44
  523. package/dist/fields/Relationship/AddNew/index.js.map +1 -1
  524. package/dist/fields/Relationship/findOptionsByValue.js +1 -1
  525. package/dist/fields/Relationship/findOptionsByValue.js.map +1 -1
  526. package/dist/fields/Relationship/index.d.ts.map +1 -1
  527. package/dist/fields/Relationship/index.js +129 -108
  528. package/dist/fields/Relationship/index.js.map +1 -1
  529. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
  530. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +49 -26
  531. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  532. package/dist/fields/Relationship/select-components/MultiValueLabel/index.scss +4 -0
  533. package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
  534. package/dist/fields/Relationship/select-components/SingleValue/index.js +50 -25
  535. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  536. package/dist/fields/Relationship/select-components/SingleValue/index.scss +2 -2
  537. package/dist/fields/Relationship/types.d.ts +4 -5
  538. package/dist/fields/Relationship/types.d.ts.map +1 -1
  539. package/dist/fields/Relationship/types.js.map +1 -1
  540. package/dist/fields/RichText/index.d.ts +0 -2
  541. package/dist/fields/RichText/index.d.ts.map +1 -1
  542. package/dist/fields/RichText/index.js.map +1 -1
  543. package/dist/fields/Row/index.js +23 -19
  544. package/dist/fields/Row/index.js.map +1 -1
  545. package/dist/fields/Row/provider.js +5 -3
  546. package/dist/fields/Row/provider.js.map +1 -1
  547. package/dist/fields/Select/Input.d.ts +11 -0
  548. package/dist/fields/Select/Input.d.ts.map +1 -0
  549. package/dist/fields/Select/Input.js +87 -0
  550. package/dist/fields/Select/Input.js.map +1 -0
  551. package/dist/fields/Select/index.d.ts +4 -3
  552. package/dist/fields/Select/index.d.ts.map +1 -1
  553. package/dist/fields/Select/index.js +27 -58
  554. package/dist/fields/Select/index.js.map +1 -1
  555. package/dist/fields/Tabs/Tab/index.js +26 -16
  556. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  557. package/dist/fields/Tabs/index.d.ts.map +1 -1
  558. package/dist/fields/Tabs/index.js +48 -32
  559. package/dist/fields/Tabs/index.js.map +1 -1
  560. package/dist/fields/Tabs/provider.js +5 -3
  561. package/dist/fields/Tabs/provider.js.map +1 -1
  562. package/dist/fields/Text/Input.d.ts.map +1 -1
  563. package/dist/fields/Text/Input.js +69 -49
  564. package/dist/fields/Text/Input.js.map +1 -1
  565. package/dist/fields/Text/index.d.ts.map +1 -1
  566. package/dist/fields/Text/index.js +10 -8
  567. package/dist/fields/Text/index.js.map +1 -1
  568. package/dist/fields/Text/types.d.ts +1 -2
  569. package/dist/fields/Text/types.d.ts.map +1 -1
  570. package/dist/fields/Text/types.js.map +1 -1
  571. package/dist/fields/Textarea/Input.d.ts.map +1 -1
  572. package/dist/fields/Textarea/Input.js +54 -33
  573. package/dist/fields/Textarea/Input.js.map +1 -1
  574. package/dist/fields/Textarea/index.d.ts.map +1 -1
  575. package/dist/fields/Textarea/index.js +8 -6
  576. package/dist/fields/Textarea/index.js.map +1 -1
  577. package/dist/fields/Textarea/types.d.ts +1 -2
  578. package/dist/fields/Textarea/types.d.ts.map +1 -1
  579. package/dist/fields/Textarea/types.js.map +1 -1
  580. package/dist/fields/Upload/Input.d.ts.map +1 -1
  581. package/dist/fields/Upload/Input.js +74 -44
  582. package/dist/fields/Upload/Input.js.map +1 -1
  583. package/dist/fields/Upload/index.d.ts.map +1 -1
  584. package/dist/fields/Upload/index.js +7 -6
  585. package/dist/fields/Upload/index.js.map +1 -1
  586. package/dist/fields/Upload/types.d.ts +0 -1
  587. package/dist/fields/Upload/types.d.ts.map +1 -1
  588. package/dist/fields/Upload/types.js.map +1 -1
  589. package/dist/fields/shared/index.d.ts +4 -2
  590. package/dist/fields/shared/index.d.ts.map +1 -1
  591. package/dist/fields/shared/index.js.map +1 -1
  592. package/dist/forms/FieldDescription/index.js +8 -4
  593. package/dist/forms/FieldDescription/index.js.map +1 -1
  594. package/dist/forms/FieldError/index.js +10 -5
  595. package/dist/forms/FieldError/index.js.map +1 -1
  596. package/dist/forms/FieldError/index.scss +1 -2
  597. package/dist/forms/FieldLabel/index.d.ts.map +1 -1
  598. package/dist/forms/FieldLabel/index.js +17 -7
  599. package/dist/forms/FieldLabel/index.js.map +1 -1
  600. package/dist/forms/FieldPropsProvider/index.d.ts +3 -0
  601. package/dist/forms/FieldPropsProvider/index.d.ts.map +1 -1
  602. package/dist/forms/FieldPropsProvider/index.js +10 -6
  603. package/dist/forms/FieldPropsProvider/index.js.map +1 -1
  604. package/dist/forms/Form/context.d.ts +3 -1
  605. package/dist/forms/Form/context.d.ts.map +1 -1
  606. package/dist/forms/Form/context.js +3 -1
  607. package/dist/forms/Form/context.js.map +1 -1
  608. package/dist/forms/Form/getSiblingData.d.ts.map +1 -1
  609. package/dist/forms/Form/getSiblingData.js +1 -0
  610. package/dist/forms/Form/getSiblingData.js.map +1 -1
  611. package/dist/forms/Form/index.d.ts.map +1 -1
  612. package/dist/forms/Form/index.js +50 -20
  613. package/dist/forms/Form/index.js.map +1 -1
  614. package/dist/forms/Form/initContextState.d.ts.map +1 -1
  615. package/dist/forms/Form/initContextState.js +1 -0
  616. package/dist/forms/Form/initContextState.js.map +1 -1
  617. package/dist/forms/Form/mergeErrorPaths.js +1 -1
  618. package/dist/forms/Form/mergeErrorPaths.js.map +1 -1
  619. package/dist/forms/Form/types.d.ts +2 -0
  620. package/dist/forms/Form/types.d.ts.map +1 -1
  621. package/dist/forms/Form/types.js.map +1 -1
  622. package/dist/forms/NullifyField/index.js +8 -5
  623. package/dist/forms/NullifyField/index.js.map +1 -1
  624. package/dist/forms/RenderFields/RenderField.d.ts +1 -0
  625. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  626. package/dist/forms/RenderFields/RenderField.js +9 -4
  627. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  628. package/dist/forms/RenderFields/index.d.ts.map +1 -1
  629. package/dist/forms/RenderFields/index.js +28 -22
  630. package/dist/forms/RenderFields/index.js.map +1 -1
  631. package/dist/forms/RenderFields/index.scss +5 -0
  632. package/dist/forms/RenderFields/types.d.ts +8 -1
  633. package/dist/forms/RenderFields/types.d.ts.map +1 -1
  634. package/dist/forms/RenderFields/types.js.map +1 -1
  635. package/dist/forms/RowLabel/Context/index.js +5 -3
  636. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  637. package/dist/forms/RowLabel/index.js +9 -6
  638. package/dist/forms/RowLabel/index.js.map +1 -1
  639. package/dist/forms/RowLabel/types.d.ts +4 -5
  640. package/dist/forms/RowLabel/types.d.ts.map +1 -1
  641. package/dist/forms/RowLabel/types.js +1 -4
  642. package/dist/forms/RowLabel/types.js.map +1 -1
  643. package/dist/forms/Submit/index.d.ts.map +1 -1
  644. package/dist/forms/Submit/index.js +15 -11
  645. package/dist/forms/Submit/index.js.map +1 -1
  646. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts +3 -5
  647. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
  648. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js +2 -1
  649. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  650. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.d.ts +5 -3
  651. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.d.ts.map +1 -1
  652. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.js +4 -3
  653. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.js.map +1 -1
  654. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.d.ts +5 -3
  655. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.d.ts.map +1 -1
  656. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.js +4 -3
  657. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.js.map +1 -1
  658. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.d.ts +5 -3
  659. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.d.ts.map +1 -1
  660. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js +22 -15
  661. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js.map +1 -1
  662. package/dist/forms/buildStateFromSchema/index.d.ts +3 -5
  663. package/dist/forms/buildStateFromSchema/index.d.ts.map +1 -1
  664. package/dist/forms/buildStateFromSchema/index.js +3 -2
  665. package/dist/forms/buildStateFromSchema/index.js.map +1 -1
  666. package/dist/forms/buildStateFromSchema/iterateFields.d.ts +3 -5
  667. package/dist/forms/buildStateFromSchema/iterateFields.d.ts.map +1 -1
  668. package/dist/forms/buildStateFromSchema/iterateFields.js.map +1 -1
  669. package/dist/forms/useField/index.d.ts.map +1 -1
  670. package/dist/forms/useField/index.js +8 -3
  671. package/dist/forms/useField/index.js.map +1 -1
  672. package/dist/forms/useField/types.d.ts +1 -0
  673. package/dist/forms/useField/types.d.ts.map +1 -1
  674. package/dist/forms/useField/types.js.map +1 -1
  675. package/dist/forms/withCondition/WatchCondition.js +4 -1
  676. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  677. package/dist/forms/withCondition/index.js +7 -3
  678. package/dist/forms/withCondition/index.js.map +1 -1
  679. package/dist/graphics/Account/Default/index.js +22 -16
  680. package/dist/graphics/Account/Default/index.js.map +1 -1
  681. package/dist/graphics/Account/Gravatar/index.js +2 -1
  682. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  683. package/dist/graphics/Account/index.d.ts +0 -1
  684. package/dist/graphics/Account/index.d.ts.map +1 -1
  685. package/dist/graphics/Account/index.js +4 -21
  686. package/dist/graphics/Account/index.js.map +1 -1
  687. package/dist/graphics/DefaultBlockImage/index.js +32 -21
  688. package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
  689. package/dist/graphics/ExternalLink/index.js +9 -7
  690. package/dist/graphics/ExternalLink/index.js.map +1 -1
  691. package/dist/graphics/File/index.js +20 -14
  692. package/dist/graphics/File/index.js.map +1 -1
  693. package/dist/graphics/Icon/index.d.ts +3 -1
  694. package/dist/graphics/Icon/index.d.ts.map +1 -1
  695. package/dist/graphics/Icon/index.js +17 -38
  696. package/dist/graphics/Icon/index.js.map +1 -1
  697. package/dist/graphics/Logo/index.d.ts +2 -4
  698. package/dist/graphics/Logo/index.d.ts.map +1 -1
  699. package/dist/graphics/Logo/index.js +49 -25
  700. package/dist/graphics/Logo/index.js.map +1 -1
  701. package/dist/graphics/Search/index.js +23 -18
  702. package/dist/graphics/Search/index.js.map +1 -1
  703. package/dist/hooks/useDebouncedCallback.js +1 -1
  704. package/dist/hooks/useDebouncedCallback.js.map +1 -1
  705. package/dist/hooks/useDelay.js +1 -1
  706. package/dist/hooks/useDelay.js.map +1 -1
  707. package/dist/hooks/useDelayedRender.d.ts.map +1 -1
  708. package/dist/hooks/useDelayedRender.js +1 -1
  709. package/dist/hooks/useDelayedRender.js.map +1 -1
  710. package/dist/hooks/useIntersect.js +1 -1
  711. package/dist/hooks/useIntersect.js.map +1 -1
  712. package/dist/icons/Calendar/index.js +34 -27
  713. package/dist/icons/Calendar/index.js.map +1 -1
  714. package/dist/icons/Check/index.js +18 -13
  715. package/dist/icons/Check/index.js.map +1 -1
  716. package/dist/icons/Chevron/index.js +8 -6
  717. package/dist/icons/Chevron/index.js.map +1 -1
  718. package/dist/icons/CloseMenu/index.js +22 -17
  719. package/dist/icons/CloseMenu/index.js.map +1 -1
  720. package/dist/icons/CodeBlock/index.js +14 -9
  721. package/dist/icons/CodeBlock/index.js.map +1 -1
  722. package/dist/icons/Copy/index.js +17 -12
  723. package/dist/icons/Copy/index.js.map +1 -1
  724. package/dist/icons/DragHandle/index.js +42 -33
  725. package/dist/icons/DragHandle/index.js.map +1 -1
  726. package/dist/icons/Edit/index.d.ts +3 -1
  727. package/dist/icons/Edit/index.d.ts.map +1 -1
  728. package/dist/icons/Edit/index.js +26 -17
  729. package/dist/icons/Edit/index.js.map +1 -1
  730. package/dist/icons/Line/index.js +11 -9
  731. package/dist/icons/Line/index.js.map +1 -1
  732. package/dist/icons/Link/index.js +14 -9
  733. package/dist/icons/Link/index.js.map +1 -1
  734. package/dist/icons/LogOut/index.js +25 -15
  735. package/dist/icons/LogOut/index.js.map +1 -1
  736. package/dist/icons/Menu/index.js +27 -21
  737. package/dist/icons/Menu/index.js.map +1 -1
  738. package/dist/icons/MinimizeMaximize/index.js +35 -19
  739. package/dist/icons/MinimizeMaximize/index.js.map +1 -1
  740. package/dist/icons/More/index.js +24 -18
  741. package/dist/icons/More/index.js.map +1 -1
  742. package/dist/icons/Plus/index.d.ts.map +1 -1
  743. package/dist/icons/Plus/index.js +21 -15
  744. package/dist/icons/Plus/index.js.map +1 -1
  745. package/dist/icons/Plus/index.scss +0 -3
  746. package/dist/icons/Search/index.js +19 -14
  747. package/dist/icons/Search/index.js.map +1 -1
  748. package/dist/icons/Swap/index.js +29 -22
  749. package/dist/icons/Swap/index.js.map +1 -1
  750. package/dist/icons/X/index.js +20 -15
  751. package/dist/icons/X/index.js.map +1 -1
  752. package/dist/providers/Actions/index.js +5 -3
  753. package/dist/providers/Actions/index.js.map +1 -1
  754. package/dist/providers/Auth/index.d.ts.map +1 -1
  755. package/dist/providers/Auth/index.js +11 -7
  756. package/dist/providers/Auth/index.js.map +1 -1
  757. package/dist/providers/ClientFunction/index.js +8 -5
  758. package/dist/providers/ClientFunction/index.js.map +1 -1
  759. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts +3 -2
  760. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts.map +1 -1
  761. package/dist/providers/ComponentMap/buildComponentMap/actions.js +3 -2
  762. package/dist/providers/ComponentMap/buildComponentMap/actions.js.map +1 -1
  763. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts +6 -5
  764. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts.map +1 -1
  765. package/dist/providers/ComponentMap/buildComponentMap/collections.js +32 -18
  766. package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +1 -1
  767. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts +5 -4
  768. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +1 -1
  769. package/dist/providers/ComponentMap/buildComponentMap/fields.js +78 -58
  770. package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +1 -1
  771. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts +12 -9
  772. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts.map +1 -1
  773. package/dist/providers/ComponentMap/buildComponentMap/globals.js +26 -12
  774. package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +1 -1
  775. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts +4 -4
  776. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts.map +1 -1
  777. package/dist/providers/ComponentMap/buildComponentMap/index.js +33 -20
  778. package/dist/providers/ComponentMap/buildComponentMap/index.js.map +1 -1
  779. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts +5 -1
  780. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts.map +1 -1
  781. package/dist/providers/ComponentMap/buildComponentMap/types.js.map +1 -1
  782. package/dist/providers/ComponentMap/index.d.ts +0 -1
  783. package/dist/providers/ComponentMap/index.d.ts.map +1 -1
  784. package/dist/providers/ComponentMap/index.js +5 -4
  785. package/dist/providers/ComponentMap/index.js.map +1 -1
  786. package/dist/providers/Config/index.js +5 -3
  787. package/dist/providers/Config/index.js.map +1 -1
  788. package/dist/providers/DocumentEvents/index.js +5 -3
  789. package/dist/providers/DocumentEvents/index.js.map +1 -1
  790. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  791. package/dist/providers/DocumentInfo/index.js +162 -104
  792. package/dist/providers/DocumentInfo/index.js.map +1 -1
  793. package/dist/providers/DocumentInfo/types.d.ts +6 -1
  794. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  795. package/dist/providers/DocumentInfo/types.js.map +1 -1
  796. package/dist/providers/EditDepth/index.js +5 -3
  797. package/dist/providers/EditDepth/index.js.map +1 -1
  798. package/dist/providers/EntityVisibility/index.d.ts +1 -1
  799. package/dist/providers/EntityVisibility/index.d.ts.map +1 -1
  800. package/dist/providers/EntityVisibility/index.js +5 -3
  801. package/dist/providers/EntityVisibility/index.js.map +1 -1
  802. package/dist/providers/FieldComponents/index.js +5 -3
  803. package/dist/providers/FieldComponents/index.js.map +1 -1
  804. package/dist/providers/FormQueryParams/index.js +5 -3
  805. package/dist/providers/FormQueryParams/index.js.map +1 -1
  806. package/dist/providers/ListInfo/index.js +5 -3
  807. package/dist/providers/ListInfo/index.js.map +1 -1
  808. package/dist/providers/ListQuery/index.js +5 -3
  809. package/dist/providers/ListQuery/index.js.map +1 -1
  810. package/dist/providers/Locale/index.js +5 -3
  811. package/dist/providers/Locale/index.js.map +1 -1
  812. package/dist/providers/Operation/index.js +5 -3
  813. package/dist/providers/Operation/index.js.map +1 -1
  814. package/dist/providers/Params/index.js +5 -3
  815. package/dist/providers/Params/index.js.map +1 -1
  816. package/dist/providers/Preferences/index.js +5 -3
  817. package/dist/providers/Preferences/index.js.map +1 -1
  818. package/dist/providers/Root/index.d.ts +5 -4
  819. package/dist/providers/Root/index.d.ts.map +1 -1
  820. package/dist/providers/Root/index.js +76 -28
  821. package/dist/providers/Root/index.js.map +1 -1
  822. package/dist/providers/RouteCache/index.js +5 -3
  823. package/dist/providers/RouteCache/index.js.map +1 -1
  824. package/dist/providers/SearchParams/index.js +5 -3
  825. package/dist/providers/SearchParams/index.js.map +1 -1
  826. package/dist/providers/Selection/index.js +5 -3
  827. package/dist/providers/Selection/index.js.map +1 -1
  828. package/dist/providers/Theme/index.d.ts +3 -0
  829. package/dist/providers/Theme/index.d.ts.map +1 -1
  830. package/dist/providers/Theme/index.js +31 -19
  831. package/dist/providers/Theme/index.js.map +1 -1
  832. package/dist/providers/Translation/index.d.ts +11 -13
  833. package/dist/providers/Translation/index.d.ts.map +1 -1
  834. package/dist/providers/Translation/index.js +8 -5
  835. package/dist/providers/Translation/index.js.map +1 -1
  836. package/dist/scss/app.scss +0 -6
  837. package/dist/templates/Default/NavHamburger/index.js +2 -1
  838. package/dist/templates/Default/NavHamburger/index.js.map +1 -1
  839. package/dist/templates/Default/Wrapper/index.js +5 -3
  840. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  841. package/dist/templates/Default/index.d.ts +4 -4
  842. package/dist/templates/Default/index.d.ts.map +1 -1
  843. package/dist/templates/Default/index.js +53 -22
  844. package/dist/templates/Default/index.js.map +1 -1
  845. package/dist/templates/Minimal/index.js +8 -5
  846. package/dist/templates/Minimal/index.js.map +1 -1
  847. package/dist/utilities/buildFieldSchemaMap/index.d.ts +8 -0
  848. package/dist/utilities/buildFieldSchemaMap/index.d.ts.map +1 -0
  849. package/dist/utilities/buildFieldSchemaMap/index.js +29 -0
  850. package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -0
  851. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts +14 -0
  852. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -0
  853. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +75 -0
  854. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -0
  855. package/dist/utilities/buildFieldSchemaMap/types.d.ts +3 -0
  856. package/dist/utilities/buildFieldSchemaMap/types.d.ts.map +1 -0
  857. package/dist/utilities/buildFieldSchemaMap/types.js +3 -0
  858. package/dist/utilities/buildFieldSchemaMap/types.js.map +1 -0
  859. package/dist/utilities/buildFormState.d.ts +7 -0
  860. package/dist/utilities/buildFormState.d.ts.map +1 -0
  861. package/dist/utilities/buildFormState.js +162 -0
  862. package/dist/utilities/buildFormState.js.map +1 -0
  863. package/dist/utilities/dateLocales.d.ts +26 -26
  864. package/dist/utilities/dateLocales.js +26 -26
  865. package/dist/utilities/dateLocales.js.map +1 -1
  866. package/dist/utilities/formatDate.d.ts +2 -2
  867. package/dist/utilities/formatDate.d.ts.map +1 -1
  868. package/dist/utilities/formatDate.js.map +1 -1
  869. package/dist/utilities/formatDocTitle.d.ts +1 -1
  870. package/dist/utilities/formatDocTitle.d.ts.map +1 -1
  871. package/dist/utilities/formatDocTitle.js.map +1 -1
  872. package/dist/utilities/generateFieldID.d.ts +1 -1
  873. package/dist/utilities/generateFieldID.d.ts.map +1 -1
  874. package/dist/utilities/generateFieldID.js +2 -2
  875. package/dist/utilities/generateFieldID.js.map +1 -1
  876. package/dist/utilities/getFormState.d.ts +1 -0
  877. package/dist/utilities/getFormState.d.ts.map +1 -1
  878. package/dist/utilities/getFormState.js +5 -2
  879. package/dist/utilities/getFormState.js.map +1 -1
  880. package/dist/utilities/groupNavItems.d.ts +2 -2
  881. package/dist/utilities/groupNavItems.d.ts.map +1 -1
  882. package/dist/utilities/groupNavItems.js.map +1 -1
  883. package/dist/utilities/hasSavePermission.d.ts +8 -0
  884. package/dist/utilities/hasSavePermission.d.ts.map +1 -0
  885. package/dist/utilities/hasSavePermission.js +12 -0
  886. package/dist/utilities/hasSavePermission.js.map +1 -0
  887. package/dist/utilities/isEditing.d.ts +6 -0
  888. package/dist/utilities/isEditing.d.ts.map +1 -0
  889. package/dist/utilities/isEditing.js +3 -0
  890. package/dist/utilities/isEditing.js.map +1 -0
  891. package/dist/utilities/reduceFieldsToValues.d.ts.map +1 -1
  892. package/dist/utilities/reduceFieldsToValues.js +1 -0
  893. package/dist/utilities/reduceFieldsToValues.js.map +1 -1
  894. package/package.json +54 -38
  895. package/dist/elements/Publish/index.d.ts.map +0 -1
  896. package/dist/elements/Publish/index.js +0 -87
  897. package/dist/elements/Publish/index.js.map +0 -1
  898. package/dist/elements/Save/index.d.ts.map +0 -1
  899. package/dist/elements/Save/index.js.map +0 -1
  900. package/dist/elements/SaveDraft/index.d.ts.map +0 -1
  901. package/dist/elements/SaveDraft/index.js.map +0 -1
  902. package/dist/providers/ComponentMap/buildComponentMap/WithServerSideProps.d.ts +0 -3
  903. package/dist/providers/ComponentMap/buildComponentMap/WithServerSideProps.d.ts.map +0 -1
  904. package/dist/providers/ComponentMap/buildComponentMap/WithServerSideProps.js +0 -19
  905. package/dist/providers/ComponentMap/buildComponentMap/WithServerSideProps.js.map +0 -1
  906. /package/dist/assets/{favicon.svg → payload-favicon.svg} +0 -0
  907. /package/dist/assets/{og-image.png → static-og-image.png} +0 -0
@@ -1,11 +1,13 @@
1
1
  'use client';
2
- import { LoadingOverlay } from '@payloadcms/ui/elements/Loading';
3
- import { formatDocTitle } from '@payloadcms/ui/utilities/formatDocTitle';
4
- import { getFormState } from '@payloadcms/ui/utilities/getFormState';
5
- import { reduceFieldsToValues } from '@payloadcms/ui/utilities/reduceFieldsToValues';
2
+ import { jsx as _jsx } from "react/jsx-runtime";
6
3
  import { notFound } from 'next/navigation.js';
7
4
  import qs from 'qs';
8
- import React, { createContext, useCallback, useContext, useEffect, useState } from 'react';
5
+ import React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react';
6
+ import { formatDocTitle } from '../../utilities/formatDocTitle.js';
7
+ import { getFormState } from '../../utilities/getFormState.js';
8
+ import { hasSavePermission as getHasSavePermission } from '../../utilities/hasSavePermission.js';
9
+ import { isEditing as getIsEditing } from '../../utilities/isEditing.js';
10
+ import { reduceFieldsToValues } from '../../utilities/reduceFieldsToValues.js';
9
11
  import { useAuth } from '../Auth/index.js';
10
12
  import { useConfig } from '../Config/index.js';
11
13
  import { useLocale } from '../Locale/index.js';
@@ -14,47 +16,66 @@ import { useTranslation } from '../Translation/index.js';
14
16
  const Context = /*#__PURE__*/ createContext({});
15
17
  export const useDocumentInfo = ()=>useContext(Context);
16
18
  export const DocumentInfoProvider = ({ children, ...props })=>{
17
- const { id, collectionSlug, globalSlug, onLoadError, onSave: onSaveFromProps } = props;
19
+ const { id, collectionSlug, docPermissions: docPermissionsFromProps, globalSlug, hasPublishPermission: hasPublishPermissionFromProps, hasSavePermission: hasSavePermissionFromProps, initialData: initialDataFromProps, initialState: initialStateFromProps, onLoadError, onSave: onSaveFromProps } = props;
20
+ const { admin: { dateFormat }, collections, globals, routes: { api }, serverURL } = useConfig();
21
+ const collectionConfig = collections.find((c)=>c.slug === collectionSlug);
22
+ const globalConfig = globals.find((g)=>g.slug === globalSlug);
23
+ const docConfig = collectionConfig || globalConfig;
24
+ const { i18n } = useTranslation();
25
+ const [documentTitle, setDocumentTitle] = useState(()=>{
26
+ if (!initialDataFromProps) return '';
27
+ return formatDocTitle({
28
+ collectionConfig,
29
+ data: {
30
+ ...initialDataFromProps,
31
+ id
32
+ },
33
+ dateFormat,
34
+ fallback: id?.toString(),
35
+ globalConfig,
36
+ i18n
37
+ });
38
+ });
18
39
  const [isLoading, setIsLoading] = useState(false);
19
40
  const [isError, setIsError] = useState(false);
20
- const [documentTitle, setDocumentTitle] = useState('');
21
- const [initialData, setInitialData] = useState();
22
- const [initialState, setInitialState] = useState();
41
+ const [data, setData] = useState(initialDataFromProps);
42
+ const [initialState, setInitialState] = useState(initialStateFromProps);
23
43
  const [publishedDoc, setPublishedDoc] = useState(null);
24
44
  const [versions, setVersions] = useState(null);
25
- const [docPermissions, setDocPermissions] = useState(null);
26
- const [hasSavePermission, setHasSavePermission] = useState(null);
45
+ const [docPermissions, setDocPermissions] = useState(docPermissionsFromProps);
46
+ const [hasSavePermission, setHasSavePermission] = useState(hasSavePermissionFromProps);
47
+ const [hasPublishPermission, setHasPublishPermission] = useState(hasPublishPermissionFromProps);
48
+ const isInitializing = initialState === undefined || data === undefined;
49
+ const hasInitializedDocPermissions = useRef(false);
27
50
  const [unpublishedVersions, setUnpublishedVersions] = useState(null);
28
51
  const { getPreference, setPreference } = usePreferences();
29
- const { i18n } = useTranslation();
30
52
  const { permissions } = useAuth();
31
53
  const { code: locale } = useLocale();
32
- const { admin: { dateFormat }, collections, globals, routes: { api }, serverURL } = useConfig();
33
- const collectionConfig = collections.find((c)=>c.slug === collectionSlug);
34
- const globalConfig = globals.find((g)=>g.slug === globalSlug);
35
- const docConfig = collectionConfig || globalConfig;
54
+ const prevLocale = useRef(locale);
36
55
  const versionsConfig = docConfig?.versions;
37
56
  const baseURL = `${serverURL}${api}`;
38
57
  let slug;
39
- let pluralType;
40
58
  let preferencesKey;
41
59
  if (globalSlug) {
42
60
  slug = globalSlug;
43
- pluralType = 'globals';
44
61
  preferencesKey = `global-${slug}`;
45
62
  }
46
63
  if (collectionSlug) {
47
64
  slug = collectionSlug;
48
- pluralType = 'collections';
49
65
  if (id) {
50
66
  preferencesKey = `collection-${slug}-${id}`;
51
67
  }
52
68
  }
53
- const isEditing = Boolean(id);
69
+ const isEditing = getIsEditing({
70
+ id,
71
+ collectionSlug,
72
+ globalSlug
73
+ });
74
+ const operation = isEditing ? 'update' : 'create';
75
+ const shouldFetchVersions = Boolean(versionsConfig && docPermissions?.readVersions?.permission);
54
76
  const getVersions = useCallback(async ()=>{
55
77
  let versionFetchURL;
56
78
  let publishedFetchURL;
57
- const shouldFetchVersions = Boolean(versionsConfig);
58
79
  let unpublishedVersionJSON = null;
59
80
  let versionJSON = null;
60
81
  let shouldFetch = true;
@@ -165,43 +186,70 @@ export const DocumentInfoProvider = ({ children, ...props })=>{
165
186
  id,
166
187
  baseURL,
167
188
  locale,
168
- versionsConfig
189
+ versionsConfig,
190
+ shouldFetchVersions
169
191
  ]);
170
- const getDocPermissions = React.useCallback(async ()=>{
171
- let docAccessURL;
192
+ const getDocPermissions = React.useCallback(async (data)=>{
172
193
  const params = {
173
194
  locale: locale || undefined
174
195
  };
175
- if (pluralType === 'globals') {
176
- docAccessURL = `/globals/${slug}/access`;
177
- } else if (pluralType === 'collections' && id) {
178
- docAccessURL = `/${slug}/access/${id}`;
179
- }
180
- if (docAccessURL) {
181
- const res = await fetch(`${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`, {
182
- credentials: 'include',
183
- headers: {
184
- 'Accept-Language': i18n.language
185
- }
186
- });
187
- const json = await res.json();
188
- setDocPermissions(json);
189
- setHasSavePermission(json?.update?.permission);
196
+ const newIsEditing = getIsEditing({
197
+ id: data?.id,
198
+ collectionSlug,
199
+ globalSlug
200
+ });
201
+ if (newIsEditing) {
202
+ const docAccessURL = collectionSlug ? `/${collectionSlug}/access/${data.id}` : globalSlug ? `/globals/${globalSlug}/access` : null;
203
+ if (docAccessURL) {
204
+ const res = await fetch(`${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`, {
205
+ credentials: 'include',
206
+ headers: {
207
+ 'Accept-Language': i18n.language
208
+ }
209
+ });
210
+ const json = await res.json();
211
+ const publishedAccessJSON = await fetch(`${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`, {
212
+ body: JSON.stringify({
213
+ data: {
214
+ ...data || {},
215
+ _status: 'published'
216
+ }
217
+ }),
218
+ credentials: 'include',
219
+ headers: {
220
+ 'Accept-Language': i18n.language
221
+ },
222
+ method: 'POST'
223
+ }).then((res)=>res.json());
224
+ setDocPermissions(json);
225
+ setHasSavePermission(getHasSavePermission({
226
+ collectionSlug,
227
+ docPermissions: json,
228
+ globalSlug,
229
+ isEditing: newIsEditing
230
+ }));
231
+ setHasPublishPermission(publishedAccessJSON?.update?.permission);
232
+ }
190
233
  } else {
191
- // fallback to permissions from the entity type
192
- // (i.e. create has no id)
193
- setDocPermissions(permissions?.[pluralType]?.[slug]);
194
- setHasSavePermission(permissions?.[pluralType]?.[slug]?.update?.permission);
234
+ // when creating new documents, there is no permissions saved for this document yet
235
+ // use the generic entity permissions instead
236
+ const newDocPermissions = collectionSlug ? permissions?.collections?.[collectionSlug] : permissions?.globals?.[globalSlug];
237
+ setDocPermissions(newDocPermissions);
238
+ setHasSavePermission(getHasSavePermission({
239
+ collectionSlug,
240
+ docPermissions: newDocPermissions,
241
+ globalSlug,
242
+ isEditing: newIsEditing
243
+ }));
195
244
  }
196
245
  }, [
197
246
  serverURL,
198
247
  api,
199
- pluralType,
200
- slug,
201
- id,
202
248
  permissions,
203
249
  i18n.language,
204
- locale
250
+ locale,
251
+ collectionSlug,
252
+ globalSlug
205
253
  ]);
206
254
  const getDocPreferences = useCallback(()=>{
207
255
  return getPreference(preferencesKey);
@@ -247,71 +295,79 @@ export const DocumentInfoProvider = ({ children, ...props })=>{
247
295
  docPreferences,
248
296
  globalSlug,
249
297
  locale,
250
- operation: isEditing ? 'update' : 'create',
298
+ operation,
251
299
  schemaPath: collectionSlug || globalSlug
252
300
  },
253
301
  serverURL
254
302
  });
303
+ const newData = json.doc;
255
304
  setInitialState(newState);
256
- setInitialData(json.doc);
305
+ setData(newData);
306
+ await getDocPermissions(newData);
257
307
  }, [
258
308
  api,
259
309
  collectionSlug,
260
310
  getDocPreferences,
261
311
  globalSlug,
262
312
  id,
263
- isEditing,
313
+ operation,
264
314
  locale,
265
315
  onSaveFromProps,
266
- serverURL
316
+ serverURL,
317
+ getDocPermissions
267
318
  ]);
268
319
  useEffect(()=>{
269
320
  const abortController = new AbortController();
270
- const getInitialState = async ()=>{
271
- setIsError(false);
272
- setIsLoading(true);
273
- try {
274
- const result = await getFormState({
275
- apiRoute: api,
276
- body: {
277
- id,
278
- collectionSlug,
279
- globalSlug,
280
- locale,
281
- operation: isEditing ? 'update' : 'create',
282
- schemaPath: collectionSlug || globalSlug
283
- },
284
- onError: onLoadError,
285
- serverURL,
286
- signal: abortController.signal
287
- });
288
- setInitialData(reduceFieldsToValues(result, true));
289
- setInitialState(result);
290
- } catch (err) {
291
- if (!abortController.signal.aborted) {
292
- if (typeof onLoadError === 'function') {
293
- void onLoadError();
321
+ const localeChanged = locale !== prevLocale.current;
322
+ if (initialStateFromProps === undefined || initialDataFromProps === undefined || localeChanged) {
323
+ if (localeChanged) prevLocale.current = locale;
324
+ const getInitialState = async ()=>{
325
+ setIsError(false);
326
+ setIsLoading(true);
327
+ try {
328
+ const result = await getFormState({
329
+ apiRoute: api,
330
+ body: {
331
+ id,
332
+ collectionSlug,
333
+ globalSlug,
334
+ locale,
335
+ operation,
336
+ schemaPath: collectionSlug || globalSlug
337
+ },
338
+ onError: onLoadError,
339
+ serverURL,
340
+ signal: abortController.signal
341
+ });
342
+ setData(reduceFieldsToValues(result, true));
343
+ setInitialState(result);
344
+ } catch (err) {
345
+ if (!abortController.signal.aborted) {
346
+ if (typeof onLoadError === 'function') {
347
+ void onLoadError();
348
+ }
349
+ setIsError(true);
350
+ setIsLoading(false);
294
351
  }
295
- setIsError(true);
296
- setIsLoading(false);
297
352
  }
298
- }
299
- setIsLoading(false);
300
- };
301
- void getInitialState();
353
+ setIsLoading(false);
354
+ };
355
+ void getInitialState();
356
+ }
302
357
  return ()=>{
303
358
  abortController.abort();
304
359
  };
305
360
  }, [
306
361
  api,
307
- isEditing,
362
+ operation,
308
363
  collectionSlug,
309
364
  serverURL,
310
365
  id,
311
- getPreference,
312
366
  globalSlug,
313
367
  locale,
314
- onLoadError
368
+ onLoadError,
369
+ initialDataFromProps,
370
+ initialStateFromProps
315
371
  ]);
316
372
  useEffect(()=>{
317
373
  void getVersions();
@@ -322,7 +378,7 @@ export const DocumentInfoProvider = ({ children, ...props })=>{
322
378
  setDocumentTitle(formatDocTitle({
323
379
  collectionConfig,
324
380
  data: {
325
- ...initialData,
381
+ ...data,
326
382
  id
327
383
  },
328
384
  dateFormat,
@@ -332,7 +388,7 @@ export const DocumentInfoProvider = ({ children, ...props })=>{
332
388
  }));
333
389
  }, [
334
390
  collectionConfig,
335
- initialData,
391
+ data,
336
392
  dateFormat,
337
393
  i18n,
338
394
  id,
@@ -340,30 +396,28 @@ export const DocumentInfoProvider = ({ children, ...props })=>{
340
396
  ]);
341
397
  useEffect(()=>{
342
398
  const loadDocPermissions = async ()=>{
343
- const docPermissions = props.docPermissions;
344
- const hasSavePermission = props.hasSavePermission;
345
- if (!docPermissions || hasSavePermission === undefined || hasSavePermission === null) {
346
- await getDocPermissions();
347
- } else {
348
- setDocPermissions(docPermissions);
349
- setHasSavePermission(hasSavePermission);
399
+ const docPermissions = docPermissionsFromProps;
400
+ const hasSavePermission = hasSavePermissionFromProps;
401
+ const hasPublishPermission = hasPublishPermissionFromProps;
402
+ if (!docPermissions || hasSavePermission === undefined || hasSavePermission === null || hasPublishPermission === undefined || hasPublishPermission === null) {
403
+ await getDocPermissions(data);
350
404
  }
351
405
  };
352
- if (collectionSlug || globalSlug) {
406
+ if (!hasInitializedDocPermissions.current && data && (collectionSlug || globalSlug)) {
407
+ hasInitializedDocPermissions.current = true;
353
408
  void loadDocPermissions();
354
409
  }
355
410
  }, [
356
411
  getDocPermissions,
357
- props.docPermissions,
358
- props.hasSavePermission,
412
+ docPermissionsFromProps,
413
+ hasSavePermissionFromProps,
414
+ hasPublishPermissionFromProps,
359
415
  setDocPermissions,
360
416
  collectionSlug,
361
- globalSlug
417
+ globalSlug,
418
+ data
362
419
  ]);
363
420
  if (isError) notFound();
364
- if (!initialState || isLoading) {
365
- return /*#__PURE__*/ React.createElement(LoadingOverlay, null);
366
- }
367
421
  const value = {
368
422
  ...props,
369
423
  docConfig,
@@ -371,9 +425,12 @@ export const DocumentInfoProvider = ({ children, ...props })=>{
371
425
  getDocPermissions,
372
426
  getDocPreferences,
373
427
  getVersions,
428
+ hasPublishPermission,
374
429
  hasSavePermission,
375
- initialData,
430
+ initialData: data,
376
431
  initialState,
432
+ isInitializing,
433
+ isLoading,
377
434
  onSave,
378
435
  publishedDoc,
379
436
  setDocFieldPreferences,
@@ -382,9 +439,10 @@ export const DocumentInfoProvider = ({ children, ...props })=>{
382
439
  unpublishedVersions,
383
440
  versions
384
441
  };
385
- return /*#__PURE__*/ React.createElement(Context.Provider, {
386
- value: value
387
- }, children);
442
+ return /*#__PURE__*/ _jsx(Context.Provider, {
443
+ value: value,
444
+ children: children
445
+ });
388
446
  };
389
447
 
390
448
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/providers/DocumentInfo/index.tsx"],"sourcesContent":["'use client'\nimport type { PaginatedDocs, TypeWithVersion } from 'payload/database'\nimport type { Data, FormState, TypeWithTimestamps } from 'payload/types'\nimport type { DocumentPermissions, DocumentPreferences, TypeWithID, Where } from 'payload/types'\n\nimport { LoadingOverlay } from '@payloadcms/ui/elements/Loading'\nimport { formatDocTitle } from '@payloadcms/ui/utilities/formatDocTitle'\nimport { getFormState } from '@payloadcms/ui/utilities/getFormState'\nimport { reduceFieldsToValues } from '@payloadcms/ui/utilities/reduceFieldsToValues'\nimport { notFound } from 'next/navigation.js'\nimport qs from 'qs'\nimport React, { createContext, useCallback, useContext, useEffect, useState } from 'react'\n\nimport type { DocumentInfoContext, DocumentInfoProps } from './types.js'\n\nimport { useAuth } from '../Auth/index.js'\nimport { useConfig } from '../Config/index.js'\nimport { useLocale } from '../Locale/index.js'\nimport { usePreferences } from '../Preferences/index.js'\nimport { useTranslation } from '../Translation/index.js'\n\nconst Context = createContext({} as DocumentInfoContext)\n\nexport type * from './types.js'\n\nexport const useDocumentInfo = (): DocumentInfoContext => useContext(Context)\n\nexport const DocumentInfoProvider: React.FC<\n DocumentInfoProps & {\n children: React.ReactNode\n }\n> = ({ children, ...props }) => {\n const { id, collectionSlug, globalSlug, onLoadError, onSave: onSaveFromProps } = props\n const [isLoading, setIsLoading] = useState(false)\n const [isError, setIsError] = useState(false)\n const [documentTitle, setDocumentTitle] = useState('')\n const [initialData, setInitialData] = useState<Data>()\n const [initialState, setInitialState] = useState<FormState>()\n const [publishedDoc, setPublishedDoc] = useState<TypeWithID & TypeWithTimestamps>(null)\n const [versions, setVersions] = useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n const [docPermissions, setDocPermissions] = useState<DocumentPermissions>(null)\n const [hasSavePermission, setHasSavePermission] = useState<boolean>(null)\n const [unpublishedVersions, setUnpublishedVersions] =\n useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n\n const { getPreference, setPreference } = usePreferences()\n const { i18n } = useTranslation()\n const { permissions } = useAuth()\n const { code: locale } = useLocale()\n\n const {\n admin: { dateFormat },\n collections,\n globals,\n routes: { api },\n serverURL,\n } = useConfig()\n\n const collectionConfig = collections.find((c) => c.slug === collectionSlug)\n const globalConfig = globals.find((g) => g.slug === globalSlug)\n const docConfig = collectionConfig || globalConfig\n const versionsConfig = docConfig?.versions\n\n const baseURL = `${serverURL}${api}`\n let slug: string\n let pluralType: 'collections' | 'globals'\n let preferencesKey: string\n\n if (globalSlug) {\n slug = globalSlug\n pluralType = 'globals'\n preferencesKey = `global-${slug}`\n }\n\n if (collectionSlug) {\n slug = collectionSlug\n pluralType = 'collections'\n\n if (id) {\n preferencesKey = `collection-${slug}-${id}`\n }\n }\n\n const isEditing = Boolean(id)\n\n const getVersions = useCallback(async () => {\n let versionFetchURL\n let publishedFetchURL\n const shouldFetchVersions = Boolean(versionsConfig)\n let unpublishedVersionJSON = null\n let versionJSON = null\n let shouldFetch = true\n\n const versionParams = {\n depth: 0,\n where: {\n and: [],\n },\n }\n\n const publishedVersionParams: { depth: number; locale: string; where: Where } = {\n depth: 0,\n locale: locale || undefined,\n where: {\n and: [\n {\n or: [\n {\n _status: {\n equals: 'published',\n },\n },\n {\n _status: {\n exists: false,\n },\n },\n ],\n },\n ],\n },\n }\n\n if (globalSlug) {\n versionFetchURL = `${baseURL}/globals/${globalSlug}/versions`\n publishedFetchURL = `${baseURL}/globals/${globalSlug}?${qs.stringify(publishedVersionParams)}`\n }\n\n if (collectionSlug) {\n versionFetchURL = `${baseURL}/${collectionSlug}/versions`\n\n publishedVersionParams.where.and.push({\n id: {\n equals: id,\n },\n })\n\n publishedFetchURL = `${baseURL}/${collectionSlug}?${qs.stringify(publishedVersionParams)}`\n\n if (!id) {\n shouldFetch = false\n }\n\n versionParams.where.and.push({\n parent: {\n equals: id,\n },\n })\n }\n\n if (shouldFetch) {\n let publishedJSON\n\n if (versionsConfig?.drafts) {\n publishedJSON = await fetch(publishedFetchURL, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n }).then((res) => res.json())\n\n if (collectionSlug) {\n publishedJSON = publishedJSON?.docs?.[0]\n }\n }\n\n if (shouldFetchVersions) {\n versionJSON = await fetch(`${versionFetchURL}?${qs.stringify(versionParams)}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n }).then((res) => res.json())\n\n if (publishedJSON?.updatedAt) {\n const newerVersionParams = {\n ...versionParams,\n where: {\n ...versionParams.where,\n and: [\n ...versionParams.where.and,\n {\n updatedAt: {\n greater_than: publishedJSON?.updatedAt,\n },\n },\n ],\n },\n }\n\n // Get any newer versions available\n const newerVersionRes = await fetch(\n `${versionFetchURL}?${qs.stringify(newerVersionParams)}`,\n {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n },\n )\n\n if (newerVersionRes.status === 200) {\n unpublishedVersionJSON = await newerVersionRes.json()\n }\n }\n }\n\n setPublishedDoc(publishedJSON)\n setVersions(versionJSON)\n setUnpublishedVersions(unpublishedVersionJSON)\n }\n }, [i18n, globalSlug, collectionSlug, id, baseURL, locale, versionsConfig])\n\n const getDocPermissions = React.useCallback(async () => {\n let docAccessURL: string\n const params = {\n locale: locale || undefined,\n }\n if (pluralType === 'globals') {\n docAccessURL = `/globals/${slug}/access`\n } else if (pluralType === 'collections' && id) {\n docAccessURL = `/${slug}/access/${id}`\n }\n\n if (docAccessURL) {\n const res = await fetch(`${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n const json = await res.json()\n\n setDocPermissions(json)\n setHasSavePermission(json?.update?.permission)\n } else {\n // fallback to permissions from the entity type\n // (i.e. create has no id)\n setDocPermissions(permissions?.[pluralType]?.[slug])\n setHasSavePermission(permissions?.[pluralType]?.[slug]?.update?.permission)\n }\n }, [serverURL, api, pluralType, slug, id, permissions, i18n.language, locale])\n\n const getDocPreferences = useCallback(() => {\n return getPreference<DocumentPreferences>(preferencesKey)\n }, [getPreference, preferencesKey])\n\n const setDocFieldPreferences = useCallback<DocumentInfoContext['setDocFieldPreferences']>(\n async (path, fieldPreferences) => {\n const allPreferences = await getDocPreferences()\n\n if (preferencesKey) {\n try {\n await setPreference(preferencesKey, {\n ...allPreferences,\n fields: {\n ...(allPreferences?.fields || {}),\n [path]: {\n ...allPreferences?.fields?.[path],\n ...fieldPreferences,\n },\n },\n })\n } catch (e) {\n console.error(e) // eslint-disable-line no-console\n }\n }\n },\n [setPreference, preferencesKey, getDocPreferences],\n )\n\n const onSave = React.useCallback<DocumentInfoContext['onSave']>(\n async (json) => {\n if (typeof onSaveFromProps === 'function') {\n void onSaveFromProps(json)\n }\n\n const docPreferences = await getDocPreferences()\n\n const newState = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n data: json.doc,\n docPreferences,\n globalSlug,\n locale,\n operation: isEditing ? 'update' : 'create',\n schemaPath: collectionSlug || globalSlug,\n },\n serverURL,\n })\n\n setInitialState(newState)\n setInitialData(json.doc)\n },\n [\n api,\n collectionSlug,\n getDocPreferences,\n globalSlug,\n id,\n isEditing,\n locale,\n onSaveFromProps,\n serverURL,\n ],\n )\n\n useEffect(() => {\n const abortController = new AbortController()\n\n const getInitialState = async () => {\n setIsError(false)\n setIsLoading(true)\n\n try {\n const result = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n globalSlug,\n locale,\n operation: isEditing ? 'update' : 'create',\n schemaPath: collectionSlug || globalSlug,\n },\n onError: onLoadError,\n serverURL,\n signal: abortController.signal,\n })\n\n setInitialData(reduceFieldsToValues(result, true))\n setInitialState(result)\n } catch (err) {\n if (!abortController.signal.aborted) {\n if (typeof onLoadError === 'function') {\n void onLoadError()\n }\n setIsError(true)\n setIsLoading(false)\n }\n }\n\n setIsLoading(false)\n }\n\n void getInitialState()\n\n return () => {\n abortController.abort()\n }\n }, [\n api,\n isEditing,\n collectionSlug,\n serverURL,\n id,\n getPreference,\n globalSlug,\n locale,\n onLoadError,\n ])\n\n useEffect(() => {\n void getVersions()\n }, [getVersions])\n\n useEffect(() => {\n setDocumentTitle(\n formatDocTitle({\n collectionConfig,\n data: { ...initialData, id },\n dateFormat,\n fallback: id?.toString(),\n globalConfig,\n i18n,\n }),\n )\n }, [collectionConfig, initialData, dateFormat, i18n, id, globalConfig])\n\n useEffect(() => {\n const loadDocPermissions = async () => {\n const docPermissions: DocumentPermissions = props.docPermissions\n const hasSavePermission: boolean = props.hasSavePermission\n\n if (!docPermissions || hasSavePermission === undefined || hasSavePermission === null) {\n await getDocPermissions()\n } else {\n setDocPermissions(docPermissions)\n setHasSavePermission(hasSavePermission)\n }\n }\n\n if (collectionSlug || globalSlug) {\n void loadDocPermissions()\n }\n }, [\n getDocPermissions,\n props.docPermissions,\n props.hasSavePermission,\n setDocPermissions,\n collectionSlug,\n globalSlug,\n ])\n\n if (isError) notFound()\n\n if (!initialState || isLoading) {\n return <LoadingOverlay />\n }\n\n const value: DocumentInfoContext = {\n ...props,\n docConfig,\n docPermissions,\n getDocPermissions,\n getDocPreferences,\n getVersions,\n hasSavePermission,\n initialData,\n initialState,\n onSave,\n publishedDoc,\n setDocFieldPreferences,\n setDocumentTitle,\n title: documentTitle,\n unpublishedVersions,\n versions,\n }\n\n return <Context.Provider value={value}>{children}</Context.Provider>\n}\n"],"names":["LoadingOverlay","formatDocTitle","getFormState","reduceFieldsToValues","notFound","qs","React","createContext","useCallback","useContext","useEffect","useState","useAuth","useConfig","useLocale","usePreferences","useTranslation","Context","useDocumentInfo","DocumentInfoProvider","children","props","id","collectionSlug","globalSlug","onLoadError","onSave","onSaveFromProps","isLoading","setIsLoading","isError","setIsError","documentTitle","setDocumentTitle","initialData","setInitialData","initialState","setInitialState","publishedDoc","setPublishedDoc","versions","setVersions","docPermissions","setDocPermissions","hasSavePermission","setHasSavePermission","unpublishedVersions","setUnpublishedVersions","getPreference","setPreference","i18n","permissions","code","locale","admin","dateFormat","collections","globals","routes","api","serverURL","collectionConfig","find","c","slug","globalConfig","g","docConfig","versionsConfig","baseURL","pluralType","preferencesKey","isEditing","Boolean","getVersions","versionFetchURL","publishedFetchURL","shouldFetchVersions","unpublishedVersionJSON","versionJSON","shouldFetch","versionParams","depth","where","and","publishedVersionParams","undefined","or","_status","equals","exists","stringify","push","parent","publishedJSON","drafts","fetch","credentials","headers","language","then","res","json","docs","updatedAt","newerVersionParams","greater_than","newerVersionRes","status","getDocPermissions","docAccessURL","params","update","permission","getDocPreferences","setDocFieldPreferences","path","fieldPreferences","allPreferences","fields","e","console","error","docPreferences","newState","apiRoute","body","data","doc","operation","schemaPath","abortController","AbortController","getInitialState","result","onError","signal","err","aborted","abort","fallback","toString","loadDocPermissions","value","title","Provider"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../src/providers/DocumentInfo/index.tsx"],"sourcesContent":["'use client'\nimport type { PaginatedDocs, TypeWithVersion } from 'payload/database'\nimport type { Data, FormState, TypeWithTimestamps } from 'payload/types'\nimport type { DocumentPermissions, DocumentPreferences, TypeWithID, Where } from 'payload/types'\n\nimport { notFound } from 'next/navigation.js'\nimport qs from 'qs'\nimport React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react'\n\nimport type { DocumentInfoContext, DocumentInfoProps } from './types.js'\n\nimport { formatDocTitle } from '../../utilities/formatDocTitle.js'\nimport { getFormState } from '../../utilities/getFormState.js'\nimport { hasSavePermission as getHasSavePermission } from '../../utilities/hasSavePermission.js'\nimport { isEditing as getIsEditing } from '../../utilities/isEditing.js'\nimport { reduceFieldsToValues } from '../../utilities/reduceFieldsToValues.js'\nimport { useAuth } from '../Auth/index.js'\nimport { useConfig } from '../Config/index.js'\nimport { useLocale } from '../Locale/index.js'\nimport { usePreferences } from '../Preferences/index.js'\nimport { useTranslation } from '../Translation/index.js'\n\nconst Context = createContext({} as DocumentInfoContext)\n\nexport type * from './types.js'\n\nexport const useDocumentInfo = (): DocumentInfoContext => useContext(Context)\n\nexport const DocumentInfoProvider: React.FC<\n DocumentInfoProps & {\n children: React.ReactNode\n }\n> = ({ children, ...props }) => {\n const {\n id,\n collectionSlug,\n docPermissions: docPermissionsFromProps,\n globalSlug,\n hasPublishPermission: hasPublishPermissionFromProps,\n hasSavePermission: hasSavePermissionFromProps,\n initialData: initialDataFromProps,\n initialState: initialStateFromProps,\n onLoadError,\n onSave: onSaveFromProps,\n } = props\n\n const {\n admin: { dateFormat },\n collections,\n globals,\n routes: { api },\n serverURL,\n } = useConfig()\n\n const collectionConfig = collections.find((c) => c.slug === collectionSlug)\n const globalConfig = globals.find((g) => g.slug === globalSlug)\n const docConfig = collectionConfig || globalConfig\n\n const { i18n } = useTranslation()\n\n const [documentTitle, setDocumentTitle] = useState(() => {\n if (!initialDataFromProps) return ''\n\n return formatDocTitle({\n collectionConfig,\n data: { ...initialDataFromProps, id },\n dateFormat,\n fallback: id?.toString(),\n globalConfig,\n i18n,\n })\n })\n\n const [isLoading, setIsLoading] = useState(false)\n const [isError, setIsError] = useState(false)\n const [data, setData] = useState<Data>(initialDataFromProps)\n const [initialState, setInitialState] = useState<FormState>(initialStateFromProps)\n const [publishedDoc, setPublishedDoc] = useState<TypeWithID & TypeWithTimestamps>(null)\n const [versions, setVersions] = useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n const [docPermissions, setDocPermissions] = useState<DocumentPermissions>(docPermissionsFromProps)\n const [hasSavePermission, setHasSavePermission] = useState<boolean>(hasSavePermissionFromProps)\n const [hasPublishPermission, setHasPublishPermission] = useState<boolean>(\n hasPublishPermissionFromProps,\n )\n const isInitializing = initialState === undefined || data === undefined\n const hasInitializedDocPermissions = useRef(false)\n const [unpublishedVersions, setUnpublishedVersions] =\n useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n\n const { getPreference, setPreference } = usePreferences()\n const { permissions } = useAuth()\n const { code: locale } = useLocale()\n const prevLocale = useRef(locale)\n\n const versionsConfig = docConfig?.versions\n\n const baseURL = `${serverURL}${api}`\n let slug: string\n let preferencesKey: string\n\n if (globalSlug) {\n slug = globalSlug\n preferencesKey = `global-${slug}`\n }\n\n if (collectionSlug) {\n slug = collectionSlug\n\n if (id) {\n preferencesKey = `collection-${slug}-${id}`\n }\n }\n\n const isEditing = getIsEditing({ id, collectionSlug, globalSlug })\n const operation = isEditing ? 'update' : 'create'\n const shouldFetchVersions = Boolean(versionsConfig && docPermissions?.readVersions?.permission)\n\n const getVersions = useCallback(async () => {\n let versionFetchURL\n let publishedFetchURL\n let unpublishedVersionJSON = null\n let versionJSON = null\n let shouldFetch = true\n\n const versionParams = {\n depth: 0,\n where: {\n and: [],\n },\n }\n\n const publishedVersionParams: { depth: number; locale: string; where: Where } = {\n depth: 0,\n locale: locale || undefined,\n where: {\n and: [\n {\n or: [\n {\n _status: {\n equals: 'published',\n },\n },\n {\n _status: {\n exists: false,\n },\n },\n ],\n },\n ],\n },\n }\n\n if (globalSlug) {\n versionFetchURL = `${baseURL}/globals/${globalSlug}/versions`\n publishedFetchURL = `${baseURL}/globals/${globalSlug}?${qs.stringify(publishedVersionParams)}`\n }\n\n if (collectionSlug) {\n versionFetchURL = `${baseURL}/${collectionSlug}/versions`\n\n publishedVersionParams.where.and.push({\n id: {\n equals: id,\n },\n })\n\n publishedFetchURL = `${baseURL}/${collectionSlug}?${qs.stringify(publishedVersionParams)}`\n\n if (!id) {\n shouldFetch = false\n }\n\n versionParams.where.and.push({\n parent: {\n equals: id,\n },\n })\n }\n\n if (shouldFetch) {\n let publishedJSON\n\n if (versionsConfig?.drafts) {\n publishedJSON = await fetch(publishedFetchURL, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n }).then((res) => res.json())\n\n if (collectionSlug) {\n publishedJSON = publishedJSON?.docs?.[0]\n }\n }\n\n if (shouldFetchVersions) {\n versionJSON = await fetch(`${versionFetchURL}?${qs.stringify(versionParams)}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n }).then((res) => res.json())\n\n if (publishedJSON?.updatedAt) {\n const newerVersionParams = {\n ...versionParams,\n where: {\n ...versionParams.where,\n and: [\n ...versionParams.where.and,\n {\n updatedAt: {\n greater_than: publishedJSON?.updatedAt,\n },\n },\n ],\n },\n }\n\n // Get any newer versions available\n const newerVersionRes = await fetch(\n `${versionFetchURL}?${qs.stringify(newerVersionParams)}`,\n {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n },\n )\n\n if (newerVersionRes.status === 200) {\n unpublishedVersionJSON = await newerVersionRes.json()\n }\n }\n }\n\n setPublishedDoc(publishedJSON)\n setVersions(versionJSON)\n setUnpublishedVersions(unpublishedVersionJSON)\n }\n }, [i18n, globalSlug, collectionSlug, id, baseURL, locale, versionsConfig, shouldFetchVersions])\n\n const getDocPermissions = React.useCallback(\n async (data: Data) => {\n const params = {\n locale: locale || undefined,\n }\n\n const newIsEditing = getIsEditing({ id: data?.id, collectionSlug, globalSlug })\n\n if (newIsEditing) {\n const docAccessURL = collectionSlug\n ? `/${collectionSlug}/access/${data.id}`\n : globalSlug\n ? `/globals/${globalSlug}/access`\n : null\n\n if (docAccessURL) {\n const res = await fetch(`${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n const json: DocumentPermissions = await res.json()\n const publishedAccessJSON = await fetch(\n `${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`,\n {\n body: JSON.stringify({\n data: {\n ...(data || {}),\n _status: 'published',\n },\n }),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n method: 'POST',\n },\n ).then((res) => res.json())\n\n setDocPermissions(json)\n\n setHasSavePermission(\n getHasSavePermission({\n collectionSlug,\n docPermissions: json,\n globalSlug,\n isEditing: newIsEditing,\n }),\n )\n\n setHasPublishPermission(publishedAccessJSON?.update?.permission)\n }\n } else {\n // when creating new documents, there is no permissions saved for this document yet\n // use the generic entity permissions instead\n const newDocPermissions = collectionSlug\n ? permissions?.collections?.[collectionSlug]\n : permissions?.globals?.[globalSlug]\n\n setDocPermissions(newDocPermissions)\n\n setHasSavePermission(\n getHasSavePermission({\n collectionSlug,\n docPermissions: newDocPermissions,\n globalSlug,\n isEditing: newIsEditing,\n }),\n )\n }\n },\n [serverURL, api, permissions, i18n.language, locale, collectionSlug, globalSlug],\n )\n\n const getDocPreferences = useCallback(() => {\n return getPreference<DocumentPreferences>(preferencesKey)\n }, [getPreference, preferencesKey])\n\n const setDocFieldPreferences = useCallback<DocumentInfoContext['setDocFieldPreferences']>(\n async (path, fieldPreferences) => {\n const allPreferences = await getDocPreferences()\n\n if (preferencesKey) {\n try {\n await setPreference(preferencesKey, {\n ...allPreferences,\n fields: {\n ...(allPreferences?.fields || {}),\n [path]: {\n ...allPreferences?.fields?.[path],\n ...fieldPreferences,\n },\n },\n })\n } catch (e) {\n console.error(e) // eslint-disable-line no-console\n }\n }\n },\n [setPreference, preferencesKey, getDocPreferences],\n )\n\n const onSave = React.useCallback<DocumentInfoContext['onSave']>(\n async (json) => {\n if (typeof onSaveFromProps === 'function') {\n void onSaveFromProps(json)\n }\n\n const docPreferences = await getDocPreferences()\n\n const newState = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n data: json.doc,\n docPreferences,\n globalSlug,\n locale,\n operation,\n schemaPath: collectionSlug || globalSlug,\n },\n serverURL,\n })\n\n const newData = json.doc\n\n setInitialState(newState)\n setData(newData)\n await getDocPermissions(newData)\n },\n [\n api,\n collectionSlug,\n getDocPreferences,\n globalSlug,\n id,\n operation,\n locale,\n onSaveFromProps,\n serverURL,\n getDocPermissions,\n ],\n )\n\n useEffect(() => {\n const abortController = new AbortController()\n const localeChanged = locale !== prevLocale.current\n\n if (\n initialStateFromProps === undefined ||\n initialDataFromProps === undefined ||\n localeChanged\n ) {\n if (localeChanged) prevLocale.current = locale\n\n const getInitialState = async () => {\n setIsError(false)\n setIsLoading(true)\n\n try {\n const result = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n globalSlug,\n locale,\n operation,\n schemaPath: collectionSlug || globalSlug,\n },\n onError: onLoadError,\n serverURL,\n signal: abortController.signal,\n })\n\n setData(reduceFieldsToValues(result, true))\n setInitialState(result)\n } catch (err) {\n if (!abortController.signal.aborted) {\n if (typeof onLoadError === 'function') {\n void onLoadError()\n }\n setIsError(true)\n setIsLoading(false)\n }\n }\n setIsLoading(false)\n }\n\n void getInitialState()\n }\n\n return () => {\n abortController.abort()\n }\n }, [\n api,\n operation,\n collectionSlug,\n serverURL,\n id,\n globalSlug,\n locale,\n onLoadError,\n initialDataFromProps,\n initialStateFromProps,\n ])\n\n useEffect(() => {\n void getVersions()\n }, [getVersions])\n\n useEffect(() => {\n setDocumentTitle(\n formatDocTitle({\n collectionConfig,\n data: { ...data, id },\n dateFormat,\n fallback: id?.toString(),\n globalConfig,\n i18n,\n }),\n )\n }, [collectionConfig, data, dateFormat, i18n, id, globalConfig])\n\n useEffect(() => {\n const loadDocPermissions = async () => {\n const docPermissions: DocumentPermissions = docPermissionsFromProps\n const hasSavePermission: boolean = hasSavePermissionFromProps\n const hasPublishPermission: boolean = hasPublishPermissionFromProps\n\n if (\n !docPermissions ||\n hasSavePermission === undefined ||\n hasSavePermission === null ||\n hasPublishPermission === undefined ||\n hasPublishPermission === null\n ) {\n await getDocPermissions(data)\n }\n }\n\n if (!hasInitializedDocPermissions.current && data && (collectionSlug || globalSlug)) {\n hasInitializedDocPermissions.current = true\n void loadDocPermissions()\n }\n }, [\n getDocPermissions,\n docPermissionsFromProps,\n hasSavePermissionFromProps,\n hasPublishPermissionFromProps,\n setDocPermissions,\n collectionSlug,\n globalSlug,\n data,\n ])\n\n if (isError) notFound()\n\n const value: DocumentInfoContext = {\n ...props,\n docConfig,\n docPermissions,\n getDocPermissions,\n getDocPreferences,\n getVersions,\n hasPublishPermission,\n hasSavePermission,\n initialData: data,\n initialState,\n isInitializing,\n isLoading,\n onSave,\n publishedDoc,\n setDocFieldPreferences,\n setDocumentTitle,\n title: documentTitle,\n unpublishedVersions,\n versions,\n }\n\n return <Context.Provider value={value}>{children}</Context.Provider>\n}\n"],"names":["notFound","qs","React","createContext","useCallback","useContext","useEffect","useRef","useState","formatDocTitle","getFormState","hasSavePermission","getHasSavePermission","isEditing","getIsEditing","reduceFieldsToValues","useAuth","useConfig","useLocale","usePreferences","useTranslation","Context","useDocumentInfo","DocumentInfoProvider","children","props","id","collectionSlug","docPermissions","docPermissionsFromProps","globalSlug","hasPublishPermission","hasPublishPermissionFromProps","hasSavePermissionFromProps","initialData","initialDataFromProps","initialState","initialStateFromProps","onLoadError","onSave","onSaveFromProps","admin","dateFormat","collections","globals","routes","api","serverURL","collectionConfig","find","c","slug","globalConfig","g","docConfig","i18n","documentTitle","setDocumentTitle","data","fallback","toString","isLoading","setIsLoading","isError","setIsError","setData","setInitialState","publishedDoc","setPublishedDoc","versions","setVersions","setDocPermissions","setHasSavePermission","setHasPublishPermission","isInitializing","undefined","hasInitializedDocPermissions","unpublishedVersions","setUnpublishedVersions","getPreference","setPreference","permissions","code","locale","prevLocale","versionsConfig","baseURL","preferencesKey","operation","shouldFetchVersions","Boolean","readVersions","permission","getVersions","versionFetchURL","publishedFetchURL","unpublishedVersionJSON","versionJSON","shouldFetch","versionParams","depth","where","and","publishedVersionParams","or","_status","equals","exists","stringify","push","parent","publishedJSON","drafts","fetch","credentials","headers","language","then","res","json","docs","updatedAt","newerVersionParams","greater_than","newerVersionRes","status","getDocPermissions","params","newIsEditing","docAccessURL","publishedAccessJSON","body","JSON","method","update","newDocPermissions","getDocPreferences","setDocFieldPreferences","path","fieldPreferences","allPreferences","fields","e","console","error","docPreferences","newState","apiRoute","doc","schemaPath","newData","abortController","AbortController","localeChanged","current","getInitialState","result","onError","signal","err","aborted","abort","loadDocPermissions","value","title","Provider"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -13,19 +13,24 @@ export type DocumentInfoProps = {
13
13
  disableLeaveWithoutSaving?: boolean;
14
14
  docPermissions?: DocumentPermissions;
15
15
  globalSlug?: SanitizedGlobalConfig['slug'];
16
+ hasPublishPermission?: boolean;
16
17
  hasSavePermission?: boolean;
17
18
  id: null | number | string;
19
+ initialData?: Data;
20
+ initialState?: FormState;
18
21
  isEditing?: boolean;
19
22
  onLoadError?: (data?: any) => Promise<void> | void;
20
23
  onSave?: (data: Data) => Promise<void> | void;
21
24
  };
22
25
  export type DocumentInfoContext = DocumentInfoProps & {
23
26
  docConfig?: ClientCollectionConfig | ClientGlobalConfig;
24
- getDocPermissions: () => Promise<void>;
27
+ getDocPermissions: (data?: Data) => Promise<void>;
25
28
  getDocPreferences: () => Promise<DocumentPreferences>;
26
29
  getVersions: () => Promise<void>;
27
30
  initialData: Data;
28
31
  initialState?: FormState;
32
+ isInitializing: boolean;
33
+ isLoading: boolean;
29
34
  preferencesKey?: string;
30
35
  publishedDoc?: TypeWithID & TypeWithTimestamps & {
31
36
  _status?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/DocumentInfo/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,KAAK,EACV,sBAAsB,EACtB,kBAAkB,EAClB,IAAI,EACJ,mBAAmB,EACnB,mBAAmB,EACnB,SAAS,EACT,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,UAAU,EACV,kBAAkB,EACnB,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC/B,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAClD,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,yBAAyB,CAAC,EAAE,OAAO,CAAA;IACnC,cAAc,CAAC,EAAE,mBAAmB,CAAA;IACpC,UAAU,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAA;IAC1C,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,EAAE,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAA;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAClD,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CAC9C,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,GAAG;IACpD,SAAS,CAAC,EAAE,sBAAsB,GAAG,kBAAkB,CAAA;IACvD,iBAAiB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACtC,iBAAiB,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAA;IACrD,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,WAAW,EAAE,IAAI,CAAA;IACjB,YAAY,CAAC,EAAE,SAAS,CAAA;IACxB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,YAAY,CAAC,EAAE,UAAU,GAAG,kBAAkB,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACrE,sBAAsB,EAAE,CACtB,KAAK,EAAE,MAAM,EACb,gBAAgB,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,KAC5E,IAAI,CAAA;IACT,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,mBAAmB,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;IACzD,QAAQ,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;IAC9C,aAAa,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;CACpD,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/DocumentInfo/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/providers/DocumentInfo/types.ts"],"sourcesContent":["import type { PaginatedDocs, TypeWithVersion } from 'payload/database'\nimport type {\n ClientCollectionConfig,\n ClientGlobalConfig,\n Data,\n DocumentPermissions,\n DocumentPreferences,\n FormState,\n InsideFieldsPreferences,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n TypeWithID,\n TypeWithTimestamps,\n} from 'payload/types'\nimport type React from 'react'\n\nexport type DocumentInfoProps = {\n AfterDocument?: React.ReactNode\n AfterFields?: React.ReactNode\n BeforeDocument?: React.ReactNode\n BeforeFields?: React.ReactNode\n action?: string\n apiURL?: string\n collectionSlug?: SanitizedCollectionConfig['slug']\n disableActions?: boolean\n disableLeaveWithoutSaving?: boolean\n docPermissions?: DocumentPermissions\n globalSlug?: SanitizedGlobalConfig['slug']\n hasSavePermission?: boolean\n id: null | number | string\n isEditing?: boolean\n onLoadError?: (data?: any) => Promise<void> | void\n onSave?: (data: Data) => Promise<void> | void\n}\n\nexport type DocumentInfoContext = DocumentInfoProps & {\n docConfig?: ClientCollectionConfig | ClientGlobalConfig\n getDocPermissions: () => Promise<void>\n getDocPreferences: () => Promise<DocumentPreferences>\n getVersions: () => Promise<void>\n initialData: Data\n initialState?: FormState\n preferencesKey?: string\n publishedDoc?: TypeWithID & TypeWithTimestamps & { _status?: string }\n setDocFieldPreferences: (\n field: string,\n fieldPreferences: Partial<InsideFieldsPreferences> & { [key: string]: unknown },\n ) => void\n setDocumentTitle: (title: string) => void\n slug?: string\n title: string\n unpublishedVersions?: PaginatedDocs<TypeWithVersion<any>>\n versions?: PaginatedDocs<TypeWithVersion<any>>\n versionsCount?: PaginatedDocs<TypeWithVersion<any>>\n}\n"],"names":[],"rangeMappings":"","mappings":"AAmCA,WAmBC"}
1
+ {"version":3,"sources":["../../../src/providers/DocumentInfo/types.ts"],"sourcesContent":["import type { PaginatedDocs, TypeWithVersion } from 'payload/database'\nimport type {\n ClientCollectionConfig,\n ClientGlobalConfig,\n Data,\n DocumentPermissions,\n DocumentPreferences,\n FormState,\n InsideFieldsPreferences,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n TypeWithID,\n TypeWithTimestamps,\n} from 'payload/types'\nimport type React from 'react'\n\nexport type DocumentInfoProps = {\n AfterDocument?: React.ReactNode\n AfterFields?: React.ReactNode\n BeforeDocument?: React.ReactNode\n BeforeFields?: React.ReactNode\n action?: string\n apiURL?: string\n collectionSlug?: SanitizedCollectionConfig['slug']\n disableActions?: boolean\n disableLeaveWithoutSaving?: boolean\n docPermissions?: DocumentPermissions\n globalSlug?: SanitizedGlobalConfig['slug']\n hasPublishPermission?: boolean\n hasSavePermission?: boolean\n id: null | number | string\n initialData?: Data\n initialState?: FormState\n isEditing?: boolean\n onLoadError?: (data?: any) => Promise<void> | void\n onSave?: (data: Data) => Promise<void> | void\n}\n\nexport type DocumentInfoContext = DocumentInfoProps & {\n docConfig?: ClientCollectionConfig | ClientGlobalConfig\n getDocPermissions: (data?: Data) => Promise<void>\n getDocPreferences: () => Promise<DocumentPreferences>\n getVersions: () => Promise<void>\n initialData: Data\n initialState?: FormState\n isInitializing: boolean\n isLoading: boolean\n preferencesKey?: string\n publishedDoc?: TypeWithID & TypeWithTimestamps & { _status?: string }\n setDocFieldPreferences: (\n field: string,\n fieldPreferences: Partial<InsideFieldsPreferences> & { [key: string]: unknown },\n ) => void\n setDocumentTitle: (title: string) => void\n slug?: string\n title: string\n unpublishedVersions?: PaginatedDocs<TypeWithVersion<any>>\n versions?: PaginatedDocs<TypeWithVersion<any>>\n versionsCount?: PaginatedDocs<TypeWithVersion<any>>\n}\n"],"names":[],"rangeMappings":"","mappings":"AAsCA,WAqBC"}
@@ -1,9 +1,11 @@
1
1
  'use client';
2
+ import { jsx as _jsx } from "react/jsx-runtime";
2
3
  import React, { createContext, useContext } from 'react';
3
4
  export const EditDepthContext = /*#__PURE__*/ createContext(0);
4
- export const EditDepthProvider = ({ children, depth })=>/*#__PURE__*/ React.createElement(EditDepthContext.Provider, {
5
- value: depth
6
- }, children);
5
+ export const EditDepthProvider = ({ children, depth })=>/*#__PURE__*/ _jsx(EditDepthContext.Provider, {
6
+ value: depth,
7
+ children: children
8
+ });
7
9
  export const useEditDepth = ()=>useContext(EditDepthContext);
8
10
 
9
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/providers/EditDepth/index.tsx"],"sourcesContent":["'use client'\nimport React, { createContext, useContext } from 'react'\n\nexport const EditDepthContext = createContext(0)\n\nexport const EditDepthProvider: React.FC<{ children: React.ReactNode; depth: number }> = ({\n children,\n depth,\n}) => <EditDepthContext.Provider value={depth}>{children}</EditDepthContext.Provider>\n\nexport const useEditDepth = (): number => useContext(EditDepthContext)\n"],"names":["React","createContext","useContext","EditDepthContext","EditDepthProvider","children","depth","Provider","value","useEditDepth"],"rangeMappings":";;;;;;","mappings":"AAAA;AACA,OAAOA,SAASC,aAAa,EAAEC,UAAU,QAAQ,QAAO;AAExD,OAAO,MAAMC,iCAAmBF,cAAc,GAAE;AAEhD,OAAO,MAAMG,oBAA4E,CAAC,EACxFC,QAAQ,EACRC,KAAK,EACN,iBAAK,oBAACH,iBAAiBI,QAAQ;QAACC,OAAOF;OAAQD,UAAqC;AAErF,OAAO,MAAMI,eAAe,IAAcP,WAAWC,kBAAiB"}
1
+ {"version":3,"sources":["../../../src/providers/EditDepth/index.tsx"],"sourcesContent":["'use client'\nimport React, { createContext, useContext } from 'react'\n\nexport const EditDepthContext = createContext(0)\n\nexport const EditDepthProvider: React.FC<{ children: React.ReactNode; depth: number }> = ({\n children,\n depth,\n}) => <EditDepthContext.Provider value={depth}>{children}</EditDepthContext.Provider>\n\nexport const useEditDepth = (): number => useContext(EditDepthContext)\n"],"names":["React","createContext","useContext","EditDepthContext","EditDepthProvider","children","depth","Provider","value","useEditDepth"],"rangeMappings":";;;;;;;;","mappings":"AAAA;;AACA,OAAOA,SAASC,aAAa,EAAEC,UAAU,QAAQ,QAAO;AAExD,OAAO,MAAMC,iCAAmBF,cAAc,GAAE;AAEhD,OAAO,MAAMG,oBAA4E,CAAC,EACxFC,QAAQ,EACRC,KAAK,EACN,iBAAK,KAACH,iBAAiBI,QAAQ;QAACC,OAAOF;kBAAQD;OAAqC;AAErF,OAAO,MAAMI,eAAe,IAAcP,WAAWC,kBAAiB"}
@@ -1,4 +1,4 @@
1
- import type { SanitizedCollectionConfig, SanitizedGlobalConfig, VisibleEntities } from 'packages/payload/src/exports/types.js';
1
+ import type { SanitizedCollectionConfig, SanitizedGlobalConfig, VisibleEntities } from 'payload/types';
2
2
  import React from 'react';
3
3
  export type VisibleEntitiesContextType = {
4
4
  isEntityVisible: ({ collectionSlug, globalSlug, }: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/EntityVisibility/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,yBAAyB,EACzB,qBAAqB,EACrB,eAAe,EAChB,MAAM,uCAAuC,CAAA;AAE9C,OAAO,KAAiD,MAAM,OAAO,CAAA;AAErE,MAAM,MAAM,0BAA0B,GAAG;IACvC,eAAe,EAAE,CAAC,EAChB,cAAc,EACd,UAAU,GACX,EAAE;QACD,cAAc,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;QAClD,UAAU,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAA;KAC3C,KAAK,OAAO,CAAA;IACb,eAAe,EAAE,eAAe,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,uBAAuB,2CAAkD,CAAA;AAEtF,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC;IAC9C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC,CA2BA,CAAA;AAED,eAAO,MAAM,mBAAmB,QAAO,0BACF,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/EntityVisibility/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,yBAAyB,EACzB,qBAAqB,EACrB,eAAe,EAChB,MAAM,eAAe,CAAA;AAEtB,OAAO,KAAiD,MAAM,OAAO,CAAA;AAErE,MAAM,MAAM,0BAA0B,GAAG;IACvC,eAAe,EAAE,CAAC,EAChB,cAAc,EACd,UAAU,GACX,EAAE;QACD,cAAc,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;QAClD,UAAU,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAA;KAC3C,KAAK,OAAO,CAAA;IACb,eAAe,EAAE,eAAe,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,uBAAuB,2CAAkD,CAAA;AAEtF,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC;IAC9C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC,CA2BA,CAAA;AAED,eAAO,MAAM,mBAAmB,QAAO,0BACF,CAAA"}
@@ -1,4 +1,5 @@
1
1
  'use client';
2
+ import { jsx as _jsx } from "react/jsx-runtime";
2
3
  import React, { createContext, useCallback, useContext } from 'react';
3
4
  export const EntityVisibilityContext = /*#__PURE__*/ createContext({});
4
5
  export const EntityVisibilityProvider = ({ children, visibleEntities })=>{
@@ -13,12 +14,13 @@ export const EntityVisibilityProvider = ({ children, visibleEntities })=>{
13
14
  }, [
14
15
  visibleEntities
15
16
  ]);
16
- return /*#__PURE__*/ React.createElement(EntityVisibilityContext.Provider, {
17
+ return /*#__PURE__*/ _jsx(EntityVisibilityContext.Provider, {
17
18
  value: {
18
19
  isEntityVisible,
19
20
  visibleEntities
20
- }
21
- }, children);
21
+ },
22
+ children: children
23
+ });
22
24
  };
23
25
  export const useEntityVisibility = ()=>useContext(EntityVisibilityContext);
24
26