@payloadcms/ui 3.0.0-canary.95fcd13 → 3.0.0-canary.98cbdb9

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 (615) hide show
  1. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  2. package/dist/elements/AppHeader/index.js +5 -2
  3. package/dist/elements/AppHeader/index.js.map +1 -1
  4. package/dist/elements/AppHeader/index.scss +5 -3
  5. package/dist/elements/Autosave/index.d.ts.map +1 -1
  6. package/dist/elements/Autosave/index.js +3 -3
  7. package/dist/elements/Autosave/index.js.map +1 -1
  8. package/dist/elements/Card/index.scss +3 -3
  9. package/dist/elements/Collapsible/index.scss +4 -1
  10. package/dist/elements/ColumnSelector/index.d.ts +1 -1
  11. package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
  12. package/dist/elements/ColumnSelector/index.js +2 -2
  13. package/dist/elements/ColumnSelector/index.js.map +1 -1
  14. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  15. package/dist/elements/DeleteDocument/index.js +1 -1
  16. package/dist/elements/DeleteDocument/index.js.map +1 -1
  17. package/dist/elements/DeleteDocument/index.scss +1 -0
  18. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  19. package/dist/elements/DeleteMany/index.js +1 -1
  20. package/dist/elements/DeleteMany/index.js.map +1 -1
  21. package/dist/elements/DeleteMany/index.scss +1 -0
  22. package/dist/elements/DocumentControls/index.d.ts +10 -10
  23. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  24. package/dist/elements/DocumentControls/index.js +11 -13
  25. package/dist/elements/DocumentControls/index.js.map +1 -1
  26. package/dist/elements/DocumentControls/index.scss +18 -7
  27. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  28. package/dist/elements/DocumentDrawer/DrawerContent.js +6 -5
  29. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  30. package/dist/elements/DocumentDrawer/types.d.ts +10 -10
  31. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  32. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  33. package/dist/elements/DocumentFields/index.d.ts +9 -9
  34. package/dist/elements/DocumentFields/index.d.ts.map +1 -1
  35. package/dist/elements/DocumentFields/index.js +6 -5
  36. package/dist/elements/DocumentFields/index.js.map +1 -1
  37. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts +6 -6
  38. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts.map +1 -1
  39. package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
  40. package/dist/elements/Drawer/types.d.ts +7 -7
  41. package/dist/elements/Drawer/types.d.ts.map +1 -1
  42. package/dist/elements/Drawer/types.js.map +1 -1
  43. package/dist/elements/Dropzone/index.d.ts +5 -4
  44. package/dist/elements/Dropzone/index.d.ts.map +1 -1
  45. package/dist/elements/Dropzone/index.js +4 -2
  46. package/dist/elements/Dropzone/index.js.map +1 -1
  47. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  48. package/dist/elements/DuplicateDocument/index.js +1 -2
  49. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  50. package/dist/elements/DuplicateDocument/index.scss +1 -0
  51. package/dist/elements/EditMany/index.d.ts +3 -3
  52. package/dist/elements/EditMany/index.d.ts.map +1 -1
  53. package/dist/elements/EditMany/index.js +4 -4
  54. package/dist/elements/EditMany/index.js.map +1 -1
  55. package/dist/elements/EditMany/index.scss +4 -10
  56. package/dist/elements/FieldSelect/index.d.ts +4 -4
  57. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  58. package/dist/elements/FieldSelect/index.js +32 -21
  59. package/dist/elements/FieldSelect/index.js.map +1 -1
  60. package/dist/elements/GenerateConfirmation/index.scss +1 -0
  61. package/dist/elements/Hamburger/index.d.ts +2 -2
  62. package/dist/elements/Hamburger/index.d.ts.map +1 -1
  63. package/dist/elements/Hamburger/index.js +2 -1
  64. package/dist/elements/Hamburger/index.js.map +1 -1
  65. package/dist/elements/HydrateAuthProvider/index.d.ts +13 -0
  66. package/dist/elements/HydrateAuthProvider/index.d.ts.map +1 -0
  67. package/dist/elements/{HydrateClientUser → HydrateAuthProvider}/index.js +3 -6
  68. package/dist/elements/HydrateAuthProvider/index.js.map +1 -0
  69. package/dist/elements/IDLabel/index.scss +3 -2
  70. package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts +2 -2
  71. package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts.map +1 -1
  72. package/dist/elements/ListControls/getTextFieldsToBeSearched.js +4 -3
  73. package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
  74. package/dist/elements/ListControls/index.d.ts +8 -8
  75. package/dist/elements/ListControls/index.d.ts.map +1 -1
  76. package/dist/elements/ListControls/index.js +9 -9
  77. package/dist/elements/ListControls/index.js.map +1 -1
  78. package/dist/elements/ListControls/index.scss +14 -5
  79. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  80. package/dist/elements/ListDrawer/DrawerContent.js +14 -7
  81. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  82. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  83. package/dist/elements/ListDrawer/index.js +1 -1
  84. package/dist/elements/ListDrawer/index.js.map +1 -1
  85. package/dist/elements/ListDrawer/index.scss +4 -4
  86. package/dist/elements/ListDrawer/types.d.ts +6 -6
  87. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  88. package/dist/elements/ListDrawer/types.js.map +1 -1
  89. package/dist/elements/Localizer/LocalizerLabel/index.d.ts.map +1 -1
  90. package/dist/elements/Localizer/LocalizerLabel/index.js +5 -4
  91. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  92. package/dist/elements/Localizer/LocalizerLabel/index.scss +6 -0
  93. package/dist/elements/Localizer/index.js +1 -1
  94. package/dist/elements/Localizer/index.js.map +1 -1
  95. package/dist/elements/Logout/index.d.ts.map +1 -1
  96. package/dist/elements/Logout/index.js +6 -6
  97. package/dist/elements/Logout/index.js.map +1 -1
  98. package/dist/elements/Nav/context.d.ts +3 -0
  99. package/dist/elements/Nav/context.d.ts.map +1 -1
  100. package/dist/elements/Nav/context.js +16 -7
  101. package/dist/elements/Nav/context.js.map +1 -1
  102. package/dist/elements/Popup/index.d.ts +1 -1
  103. package/dist/elements/Popup/index.d.ts.map +1 -1
  104. package/dist/elements/Popup/index.js.map +1 -1
  105. package/dist/elements/PreviewButton/index.d.ts +2 -1
  106. package/dist/elements/PreviewButton/index.d.ts.map +1 -1
  107. package/dist/elements/PreviewButton/index.js +6 -1
  108. package/dist/elements/PreviewButton/index.js.map +1 -1
  109. package/dist/elements/PreviewButton/usePreviewURL.d.ts.map +1 -1
  110. package/dist/elements/PreviewButton/usePreviewURL.js +1 -1
  111. package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -1
  112. package/dist/elements/PublishButton/index.d.ts +2 -1
  113. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  114. package/dist/elements/PublishButton/index.js +4 -1
  115. package/dist/elements/PublishButton/index.js.map +1 -1
  116. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  117. package/dist/elements/PublishMany/index.js +1 -1
  118. package/dist/elements/PublishMany/index.js.map +1 -1
  119. package/dist/elements/PublishMany/index.scss +1 -0
  120. package/dist/elements/ReactSelect/Control/index.d.ts.map +1 -1
  121. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  122. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  123. package/dist/elements/ReactSelect/DropdownIndicator/index.js +1 -1
  124. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  125. package/dist/elements/ReactSelect/MultiValue/index.d.ts.map +1 -1
  126. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  127. package/dist/elements/ReactSelect/MultiValueLabel/index.d.ts.map +1 -1
  128. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  129. package/dist/elements/ReactSelect/SingleValue/index.d.ts.map +1 -1
  130. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  131. package/dist/elements/ReactSelect/ValueContainer/index.d.ts.map +1 -1
  132. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  133. package/dist/elements/ReactSelect/ValueContainer/index.scss +1 -1
  134. package/dist/elements/RenderTitle/index.scss +1 -1
  135. package/dist/elements/SaveButton/index.d.ts +2 -1
  136. package/dist/elements/SaveButton/index.d.ts.map +1 -1
  137. package/dist/elements/SaveButton/index.js +4 -1
  138. package/dist/elements/SaveButton/index.js.map +1 -1
  139. package/dist/elements/SaveDraftButton/index.d.ts +2 -1
  140. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  141. package/dist/elements/SaveDraftButton/index.js +5 -2
  142. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  143. package/dist/elements/Status/index.d.ts.map +1 -1
  144. package/dist/elements/Status/index.js +1 -1
  145. package/dist/elements/Status/index.js.map +1 -1
  146. package/dist/elements/Status/index.scss +1 -0
  147. package/dist/elements/StayLoggedIn/index.js +1 -1
  148. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  149. package/dist/elements/StayLoggedIn/index.scss +1 -0
  150. package/dist/elements/StepNav/index.d.ts +2 -2
  151. package/dist/elements/StepNav/index.d.ts.map +1 -1
  152. package/dist/elements/StepNav/index.js +11 -8
  153. package/dist/elements/StepNav/index.js.map +1 -1
  154. package/dist/elements/StepNav/index.scss +1 -1
  155. package/dist/elements/StepNav/types.d.ts +2 -2
  156. package/dist/elements/StepNav/types.js.map +1 -1
  157. package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts +2 -3
  158. package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts.map +1 -1
  159. package/dist/elements/Table/DefaultCell/fields/Array/index.js +2 -2
  160. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  161. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts +2 -4
  162. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
  163. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +1 -1
  164. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  165. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts +2 -2
  166. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts.map +1 -1
  167. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  168. package/dist/elements/Table/DefaultCell/fields/Code/index.d.ts +3 -3
  169. package/dist/elements/Table/DefaultCell/fields/Code/index.d.ts.map +1 -1
  170. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  171. package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts +2 -2
  172. package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts.map +1 -1
  173. package/dist/elements/Table/DefaultCell/fields/Date/index.js +3 -3
  174. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  175. package/dist/elements/Table/DefaultCell/fields/File/index.d.ts +2 -2
  176. package/dist/elements/Table/DefaultCell/fields/File/index.d.ts.map +1 -1
  177. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  178. package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts +2 -2
  179. package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts.map +1 -1
  180. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  181. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts +2 -4
  182. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
  183. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +6 -8
  184. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  185. package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts +2 -3
  186. package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts.map +1 -1
  187. package/dist/elements/Table/DefaultCell/fields/Select/index.js +1 -1
  188. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  189. package/dist/elements/Table/DefaultCell/fields/Textarea/index.d.ts +2 -2
  190. package/dist/elements/Table/DefaultCell/fields/Textarea/index.d.ts.map +1 -1
  191. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  192. package/dist/elements/Table/DefaultCell/fields/index.d.ts +4 -4
  193. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  194. package/dist/elements/Table/DefaultCell/index.js +16 -12
  195. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  196. package/dist/elements/Table/RelationshipProvider/index.d.ts +1 -1
  197. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  198. package/dist/elements/Table/RelationshipProvider/index.js +1 -2
  199. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  200. package/dist/elements/Table/TableCellProvider/index.d.ts +6 -6
  201. package/dist/elements/Table/TableCellProvider/index.d.ts.map +1 -1
  202. package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
  203. package/dist/elements/Table/index.d.ts +11 -14
  204. package/dist/elements/Table/index.d.ts.map +1 -1
  205. package/dist/elements/Table/index.js +7 -1
  206. package/dist/elements/Table/index.js.map +1 -1
  207. package/dist/elements/TableColumns/buildColumnState.d.ts +2 -2
  208. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  209. package/dist/elements/TableColumns/buildColumnState.js +30 -32
  210. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  211. package/dist/elements/TableColumns/filterFields.d.ts +2 -2
  212. package/dist/elements/TableColumns/filterFields.d.ts.map +1 -1
  213. package/dist/elements/TableColumns/filterFields.js +8 -11
  214. package/dist/elements/TableColumns/filterFields.js.map +1 -1
  215. package/dist/elements/TableColumns/getInitialColumns.d.ts +2 -3
  216. package/dist/elements/TableColumns/getInitialColumns.d.ts.map +1 -1
  217. package/dist/elements/TableColumns/getInitialColumns.js +9 -11
  218. package/dist/elements/TableColumns/getInitialColumns.js.map +1 -1
  219. package/dist/elements/TableColumns/index.d.ts +6 -6
  220. package/dist/elements/TableColumns/index.d.ts.map +1 -1
  221. package/dist/elements/TableColumns/index.js +8 -11
  222. package/dist/elements/TableColumns/index.js.map +1 -1
  223. package/dist/elements/ThumbnailCard/index.d.ts +2 -2
  224. package/dist/elements/ThumbnailCard/index.d.ts.map +1 -1
  225. package/dist/elements/ThumbnailCard/index.js +1 -1
  226. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  227. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  228. package/dist/elements/UnpublishMany/index.js +2 -2
  229. package/dist/elements/UnpublishMany/index.js.map +1 -1
  230. package/dist/elements/UnpublishMany/index.scss +1 -0
  231. package/dist/elements/Upload/index.d.ts +9 -9
  232. package/dist/elements/Upload/index.d.ts.map +1 -1
  233. package/dist/elements/Upload/index.js +9 -10
  234. package/dist/elements/Upload/index.js.map +1 -1
  235. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
  236. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +5 -5
  237. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  238. package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts +3 -3
  239. package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts.map +1 -1
  240. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  241. package/dist/elements/WhereBuilder/Condition/Text/index.d.ts +1 -2
  242. package/dist/elements/WhereBuilder/Condition/Text/index.d.ts.map +1 -1
  243. package/dist/elements/WhereBuilder/Condition/Text/index.js +1 -2
  244. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  245. package/dist/elements/WhereBuilder/Condition/index.d.ts +9 -9
  246. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  247. package/dist/elements/WhereBuilder/Condition/index.js +33 -22
  248. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  249. package/dist/elements/WhereBuilder/index.js +9 -8
  250. package/dist/elements/WhereBuilder/index.js.map +1 -1
  251. package/dist/elements/WhereBuilder/reduceClientFields.d.ts +15 -0
  252. package/dist/elements/WhereBuilder/reduceClientFields.d.ts.map +1 -0
  253. package/dist/elements/WhereBuilder/{reduceFieldMap.js → reduceClientFields.js} +28 -26
  254. package/dist/elements/WhereBuilder/reduceClientFields.js.map +1 -0
  255. package/dist/elements/WhereBuilder/types.d.ts +6 -5
  256. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  257. package/dist/elements/WhereBuilder/types.js.map +1 -1
  258. package/dist/exports/client/{CodeEditor-UPOVAXRP.js → CodeEditor-MODTAQNB.js} +1 -1
  259. package/dist/exports/client/{CodeEditor-UPOVAXRP.js.map → CodeEditor-MODTAQNB.js.map} +1 -1
  260. package/dist/exports/client/{DatePicker-XJHHMZP7.js → DatePicker-QKRYICNS.js} +2 -2
  261. package/dist/exports/client/chunk-HR5HEGNB.js +30 -0
  262. package/dist/exports/client/{chunk-TIH7OFW3.js.map → chunk-HR5HEGNB.js.map} +4 -4
  263. package/dist/exports/client/index.d.ts +11 -3
  264. package/dist/exports/client/index.d.ts.map +1 -1
  265. package/dist/exports/client/index.js +27 -27
  266. package/dist/exports/client/index.js.map +4 -4
  267. package/dist/exports/shared/index.d.ts +3 -1
  268. package/dist/exports/shared/index.d.ts.map +1 -1
  269. package/dist/exports/shared/index.js +2 -2
  270. package/dist/exports/shared/index.js.map +4 -4
  271. package/dist/fields/Array/ArrayRow.d.ts +21 -21
  272. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  273. package/dist/fields/Array/ArrayRow.js +3 -3
  274. package/dist/fields/Array/ArrayRow.js.map +1 -1
  275. package/dist/fields/Array/index.d.ts.map +1 -1
  276. package/dist/fields/Array/index.js +11 -9
  277. package/dist/fields/Array/index.js.map +1 -1
  278. package/dist/fields/Blocks/BlockRow.d.ts +3 -3
  279. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  280. package/dist/fields/Blocks/BlockRow.js +9 -6
  281. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  282. package/dist/fields/Blocks/BlocksDrawer/index.d.ts +6 -6
  283. package/dist/fields/Blocks/BlocksDrawer/index.d.ts.map +1 -1
  284. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  285. package/dist/fields/Blocks/RowActions.d.ts +13 -13
  286. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  287. package/dist/fields/Blocks/RowActions.js.map +1 -1
  288. package/dist/fields/Blocks/SectionTitle/index.scss +12 -2
  289. package/dist/fields/Blocks/index.d.ts +2 -2
  290. package/dist/fields/Blocks/index.d.ts.map +1 -1
  291. package/dist/fields/Blocks/index.js +10 -6
  292. package/dist/fields/Blocks/index.js.map +1 -1
  293. package/dist/fields/Blocks/index.scss +1 -0
  294. package/dist/fields/Checkbox/Input.d.ts +15 -15
  295. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  296. package/dist/fields/Checkbox/Input.js +9 -4
  297. package/dist/fields/Checkbox/Input.js.map +1 -1
  298. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  299. package/dist/fields/Checkbox/index.js +9 -6
  300. package/dist/fields/Checkbox/index.js.map +1 -1
  301. package/dist/fields/Code/index.d.ts.map +1 -1
  302. package/dist/fields/Code/index.js +14 -6
  303. package/dist/fields/Code/index.js.map +1 -1
  304. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  305. package/dist/fields/Collapsible/index.js +7 -5
  306. package/dist/fields/Collapsible/index.js.map +1 -1
  307. package/dist/fields/ConfirmPassword/index.d.ts +2 -2
  308. package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
  309. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  310. package/dist/fields/DateTime/index.d.ts.map +1 -1
  311. package/dist/fields/DateTime/index.js +14 -6
  312. package/dist/fields/DateTime/index.js.map +1 -1
  313. package/dist/fields/Email/index.d.ts.map +1 -1
  314. package/dist/fields/Email/index.js +15 -6
  315. package/dist/fields/Email/index.js.map +1 -1
  316. package/dist/fields/FieldDescription/index.d.ts.map +1 -1
  317. package/dist/fields/FieldDescription/index.js +8 -4
  318. package/dist/fields/FieldDescription/index.js.map +1 -1
  319. package/dist/fields/FieldError/index.d.ts.map +1 -1
  320. package/dist/fields/FieldError/index.js +8 -4
  321. package/dist/fields/FieldError/index.js.map +1 -1
  322. package/dist/fields/FieldLabel/index.d.ts.map +1 -1
  323. package/dist/fields/FieldLabel/index.js +8 -4
  324. package/dist/fields/FieldLabel/index.js.map +1 -1
  325. package/dist/fields/Group/index.d.ts.map +1 -1
  326. package/dist/fields/Group/index.js +63 -56
  327. package/dist/fields/Group/index.js.map +1 -1
  328. package/dist/fields/Hidden/index.d.ts.map +1 -1
  329. package/dist/fields/Hidden/index.js +1 -1
  330. package/dist/fields/Hidden/index.js.map +1 -1
  331. package/dist/fields/JSON/index.d.ts.map +1 -1
  332. package/dist/fields/JSON/index.js +14 -6
  333. package/dist/fields/JSON/index.js.map +1 -1
  334. package/dist/fields/Number/Input.d.ts +2 -0
  335. package/dist/fields/Number/Input.d.ts.map +1 -0
  336. package/dist/fields/Number/Input.js +2 -0
  337. package/dist/fields/Number/Input.js.map +1 -0
  338. package/dist/fields/Number/index.d.ts.map +1 -1
  339. package/dist/fields/Number/index.js +14 -6
  340. package/dist/fields/Number/index.js.map +1 -1
  341. package/dist/fields/Password/index.d.ts +1 -24
  342. package/dist/fields/Password/index.d.ts.map +1 -1
  343. package/dist/fields/Password/index.js +11 -8
  344. package/dist/fields/Password/index.js.map +1 -1
  345. package/dist/fields/Password/input.d.ts.map +1 -1
  346. package/dist/fields/Password/input.js +18 -8
  347. package/dist/fields/Password/input.js.map +1 -1
  348. package/dist/fields/Password/types.d.ts +32 -23
  349. package/dist/fields/Password/types.d.ts.map +1 -1
  350. package/dist/fields/Password/types.js.map +1 -1
  351. package/dist/fields/Point/index.d.ts.map +1 -1
  352. package/dist/fields/Point/index.js +23 -9
  353. package/dist/fields/Point/index.js.map +1 -1
  354. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  355. package/dist/fields/RadioGroup/index.js +7 -4
  356. package/dist/fields/RadioGroup/index.js.map +1 -1
  357. package/dist/fields/Relationship/AddNew/useRelatedCollections.js +1 -1
  358. package/dist/fields/Relationship/AddNew/useRelatedCollections.js.map +1 -1
  359. package/dist/fields/Relationship/index.d.ts.map +1 -1
  360. package/dist/fields/Relationship/index.js +8 -5
  361. package/dist/fields/Relationship/index.js.map +1 -1
  362. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
  363. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  364. package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
  365. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  366. package/dist/fields/RichText/index.d.ts +2 -2
  367. package/dist/fields/RichText/index.d.ts.map +1 -1
  368. package/dist/fields/RichText/index.js.map +1 -1
  369. package/dist/fields/Row/index.d.ts.map +1 -1
  370. package/dist/fields/Row/index.js +6 -8
  371. package/dist/fields/Row/index.js.map +1 -1
  372. package/dist/fields/Select/Input.d.ts +26 -6
  373. package/dist/fields/Select/Input.d.ts.map +1 -1
  374. package/dist/fields/Select/Input.js +13 -6
  375. package/dist/fields/Select/Input.js.map +1 -1
  376. package/dist/fields/Select/index.d.ts.map +1 -1
  377. package/dist/fields/Select/index.js +8 -9
  378. package/dist/fields/Select/index.js.map +1 -1
  379. package/dist/fields/Tabs/Tab/index.d.ts +5 -5
  380. package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
  381. package/dist/fields/Tabs/Tab/index.js +4 -5
  382. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  383. package/dist/fields/Tabs/index.d.ts.map +1 -1
  384. package/dist/fields/Tabs/index.js +10 -9
  385. package/dist/fields/Tabs/index.js.map +1 -1
  386. package/dist/fields/Tabs/index.scss +2 -1
  387. package/dist/fields/Text/Input.d.ts.map +1 -1
  388. package/dist/fields/Text/Input.js +13 -6
  389. package/dist/fields/Text/Input.js.map +1 -1
  390. package/dist/fields/Text/index.js +9 -10
  391. package/dist/fields/Text/index.js.map +1 -1
  392. package/dist/fields/Text/index.scss +6 -0
  393. package/dist/fields/Text/types.d.ts +32 -13
  394. package/dist/fields/Text/types.d.ts.map +1 -1
  395. package/dist/fields/Text/types.js.map +1 -1
  396. package/dist/fields/Textarea/Input.d.ts.map +1 -1
  397. package/dist/fields/Textarea/Input.js +13 -6
  398. package/dist/fields/Textarea/Input.js.map +1 -1
  399. package/dist/fields/Textarea/index.js +9 -10
  400. package/dist/fields/Textarea/index.js.map +1 -1
  401. package/dist/fields/Textarea/types.d.ts +28 -6
  402. package/dist/fields/Textarea/types.d.ts.map +1 -1
  403. package/dist/fields/Textarea/types.js.map +1 -1
  404. package/dist/fields/Upload/Input.d.ts +25 -12
  405. package/dist/fields/Upload/Input.d.ts.map +1 -1
  406. package/dist/fields/Upload/Input.js +5 -4
  407. package/dist/fields/Upload/Input.js.map +1 -1
  408. package/dist/fields/Upload/index.d.ts.map +1 -1
  409. package/dist/fields/Upload/index.js +7 -10
  410. package/dist/fields/Upload/index.js.map +1 -1
  411. package/dist/fields/index.d.ts +5 -1
  412. package/dist/fields/index.d.ts.map +1 -1
  413. package/dist/fields/index.js.map +1 -1
  414. package/dist/forms/FieldPropsProvider/index.d.ts +11 -11
  415. package/dist/forms/FieldPropsProvider/index.d.ts.map +1 -1
  416. package/dist/forms/FieldPropsProvider/index.js.map +1 -1
  417. package/dist/forms/Form/createNestedClientFieldPath.d.ts +3 -0
  418. package/dist/forms/Form/createNestedClientFieldPath.d.ts.map +1 -0
  419. package/dist/forms/Form/{createNestedFieldPath.js → createNestedClientFieldPath.js} +2 -13
  420. package/dist/forms/Form/createNestedClientFieldPath.js.map +1 -0
  421. package/dist/forms/Form/index.js +1 -1
  422. package/dist/forms/Form/index.js.map +1 -1
  423. package/dist/forms/Form/types.d.ts +3 -3
  424. package/dist/forms/Form/types.d.ts.map +1 -1
  425. package/dist/forms/Form/types.js.map +1 -1
  426. package/dist/forms/NullifyField/index.d.ts +3 -3
  427. package/dist/forms/NullifyField/index.d.ts.map +1 -1
  428. package/dist/forms/NullifyField/index.js +5 -15
  429. package/dist/forms/NullifyField/index.js.map +1 -1
  430. package/dist/forms/RenderFields/RenderField.d.ts +12 -15
  431. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  432. package/dist/forms/RenderFields/RenderField.js +34 -14
  433. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  434. package/dist/forms/RenderFields/index.d.ts.map +1 -1
  435. package/dist/forms/RenderFields/index.js +7 -14
  436. package/dist/forms/RenderFields/index.js.map +1 -1
  437. package/dist/forms/RenderFields/types.d.ts +11 -11
  438. package/dist/forms/RenderFields/types.d.ts.map +1 -1
  439. package/dist/forms/RenderFields/types.js.map +1 -1
  440. package/dist/forms/RowLabel/Context/index.d.ts +4 -4
  441. package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
  442. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  443. package/dist/forms/RowLabel/index.d.ts.map +1 -1
  444. package/dist/forms/RowLabel/index.js +8 -2
  445. package/dist/forms/RowLabel/index.js.map +1 -1
  446. package/dist/forms/RowLabel/types.d.ts +7 -8
  447. package/dist/forms/RowLabel/types.d.ts.map +1 -1
  448. package/dist/forms/RowLabel/types.js.map +1 -1
  449. package/dist/forms/WatchChildErrors/buildPathSegments.d.ts +2 -2
  450. package/dist/forms/WatchChildErrors/buildPathSegments.d.ts.map +1 -1
  451. package/dist/forms/WatchChildErrors/buildPathSegments.js +11 -10
  452. package/dist/forms/WatchChildErrors/buildPathSegments.js.map +1 -1
  453. package/dist/forms/WatchChildErrors/index.d.ts +2 -2
  454. package/dist/forms/WatchChildErrors/index.d.ts.map +1 -1
  455. package/dist/forms/WatchChildErrors/index.js +3 -3
  456. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  457. package/dist/forms/useField/index.js +1 -1
  458. package/dist/forms/useField/index.js.map +1 -1
  459. package/dist/forms/useField/types.d.ts +1 -1
  460. package/dist/forms/useField/types.js.map +1 -1
  461. package/dist/forms/withCondition/WatchCondition.d.ts +1 -1
  462. package/dist/forms/withCondition/WatchCondition.d.ts.map +1 -1
  463. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  464. package/dist/graphics/Account/index.d.ts.map +1 -1
  465. package/dist/graphics/Account/index.js +12 -6
  466. package/dist/graphics/Account/index.js.map +1 -1
  467. package/dist/hooks/useDelayedRender.d.ts.map +1 -1
  468. package/dist/hooks/useDelayedRender.js.map +1 -1
  469. package/dist/hooks/useUseAsTitle.d.ts +2 -2
  470. package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
  471. package/dist/hooks/useUseAsTitle.js +3 -3
  472. package/dist/hooks/useUseAsTitle.js.map +1 -1
  473. package/dist/icons/Chevron/index.js +1 -1
  474. package/dist/icons/Chevron/index.js.map +1 -1
  475. package/dist/icons/LogOut/index.d.ts.map +1 -1
  476. package/dist/icons/LogOut/index.js +2 -1
  477. package/dist/icons/LogOut/index.js.map +1 -1
  478. package/dist/providers/Actions/SetViewActions/index.d.ts +3 -3
  479. package/dist/providers/Actions/SetViewActions/index.d.ts.map +1 -1
  480. package/dist/providers/Actions/SetViewActions/index.js +1 -1
  481. package/dist/providers/Actions/SetViewActions/index.js.map +1 -1
  482. package/dist/providers/Actions/index.d.ts +6 -6
  483. package/dist/providers/Actions/index.d.ts.map +1 -1
  484. package/dist/providers/Actions/index.js +2 -2
  485. package/dist/providers/Actions/index.js.map +1 -1
  486. package/dist/providers/Auth/index.d.ts +6 -2
  487. package/dist/providers/Auth/index.d.ts.map +1 -1
  488. package/dist/providers/Auth/index.js +11 -5
  489. package/dist/providers/Auth/index.js.map +1 -1
  490. package/dist/providers/Config/RenderComponent.d.ts +12 -0
  491. package/dist/providers/Config/RenderComponent.d.ts.map +1 -0
  492. package/dist/providers/Config/RenderComponent.js +72 -0
  493. package/dist/providers/Config/RenderComponent.js.map +1 -0
  494. package/dist/providers/Config/createClientConfig/collections.d.ts +24 -0
  495. package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -0
  496. package/dist/providers/Config/createClientConfig/collections.js +173 -0
  497. package/dist/providers/Config/createClientConfig/collections.js.map +1 -0
  498. package/dist/providers/Config/createClientConfig/fields.d.ts +22 -0
  499. package/dist/providers/Config/createClientConfig/fields.d.ts.map +1 -0
  500. package/dist/providers/Config/createClientConfig/fields.js +299 -0
  501. package/dist/providers/Config/createClientConfig/fields.js.map +1 -0
  502. package/dist/providers/Config/createClientConfig/getComponent.d.ts +11 -0
  503. package/dist/providers/Config/createClientConfig/getComponent.d.ts.map +1 -0
  504. package/dist/providers/Config/createClientConfig/getComponent.js +30 -0
  505. package/dist/providers/Config/createClientConfig/getComponent.js.map +1 -0
  506. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts +11 -0
  507. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts.map +1 -0
  508. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js +91 -0
  509. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js.map +1 -0
  510. package/dist/providers/Config/createClientConfig/globals.d.ts +22 -0
  511. package/dist/providers/Config/createClientConfig/globals.d.ts.map +1 -0
  512. package/dist/providers/Config/createClientConfig/globals.js +103 -0
  513. package/dist/providers/Config/createClientConfig/globals.js.map +1 -0
  514. package/dist/providers/Config/createClientConfig/index.d.ts +21 -0
  515. package/dist/providers/Config/createClientConfig/index.d.ts.map +1 -0
  516. package/dist/providers/Config/createClientConfig/index.js +98 -0
  517. package/dist/providers/Config/createClientConfig/index.js.map +1 -0
  518. package/dist/providers/Config/index.d.ts +10 -3
  519. package/dist/providers/Config/index.d.ts.map +1 -1
  520. package/dist/providers/Config/index.js +17 -3
  521. package/dist/providers/Config/index.js.map +1 -1
  522. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  523. package/dist/providers/DocumentInfo/index.js +16 -16
  524. package/dist/providers/DocumentInfo/index.js.map +1 -1
  525. package/dist/providers/FieldComponents/index.d.ts +4 -3
  526. package/dist/providers/FieldComponents/index.d.ts.map +1 -1
  527. package/dist/providers/FieldComponents/index.js +2 -3
  528. package/dist/providers/FieldComponents/index.js.map +1 -1
  529. package/dist/providers/ListInfo/index.d.ts +12 -12
  530. package/dist/providers/ListInfo/index.d.ts.map +1 -1
  531. package/dist/providers/ListInfo/index.js.map +1 -1
  532. package/dist/providers/Locale/index.d.ts.map +1 -1
  533. package/dist/providers/Locale/index.js +1 -1
  534. package/dist/providers/Locale/index.js.map +1 -1
  535. package/dist/providers/Params/index.d.ts +2 -1
  536. package/dist/providers/Params/index.d.ts.map +1 -1
  537. package/dist/providers/Params/index.js.map +1 -1
  538. package/dist/providers/Preferences/index.js +1 -1
  539. package/dist/providers/Preferences/index.js.map +1 -1
  540. package/dist/providers/Root/index.d.ts +4 -3
  541. package/dist/providers/Root/index.d.ts.map +1 -1
  542. package/dist/providers/Root/index.js +47 -46
  543. package/dist/providers/Root/index.js.map +1 -1
  544. package/dist/scss/app.scss +4 -4
  545. package/dist/scss/toasts.scss +15 -14
  546. package/dist/scss/type.scss +1 -0
  547. package/dist/scss/vars.scss +1 -1
  548. package/dist/styles.css +1 -1
  549. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -1
  550. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +1 -0
  551. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  552. package/dist/utilities/buildFormState.d.ts.map +1 -1
  553. package/dist/utilities/buildFormState.js +19 -7
  554. package/dist/utilities/buildFormState.js.map +1 -1
  555. package/dist/utilities/flattenFieldMap.d.ts +2 -2
  556. package/dist/utilities/flattenFieldMap.d.ts.map +1 -1
  557. package/dist/utilities/flattenFieldMap.js +8 -8
  558. package/dist/utilities/flattenFieldMap.js.map +1 -1
  559. package/dist/utilities/groupNavItems.d.ts +3 -3
  560. package/dist/utilities/groupNavItems.d.ts.map +1 -1
  561. package/dist/utilities/groupNavItems.js.map +1 -1
  562. package/dist/utilities/reduceFieldsToValuesWithValidation.js +1 -1
  563. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  564. package/package.json +14 -8
  565. package/dist/elements/HydrateClientUser/index.d.ts +0 -6
  566. package/dist/elements/HydrateClientUser/index.d.ts.map +0 -1
  567. package/dist/elements/HydrateClientUser/index.js.map +0 -1
  568. package/dist/elements/RenderCustomClientComponent/index.d.ts +0 -8
  569. package/dist/elements/RenderCustomClientComponent/index.d.ts.map +0 -1
  570. package/dist/elements/RenderCustomClientComponent/index.js +0 -19
  571. package/dist/elements/RenderCustomClientComponent/index.js.map +0 -1
  572. package/dist/elements/RenderCustomComponent/index.d.ts +0 -17
  573. package/dist/elements/RenderCustomComponent/index.d.ts.map +0 -1
  574. package/dist/elements/RenderCustomComponent/index.js +0 -26
  575. package/dist/elements/RenderCustomComponent/index.js.map +0 -1
  576. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts +0 -14
  577. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts.map +0 -1
  578. package/dist/elements/WhereBuilder/reduceFieldMap.js.map +0 -1
  579. package/dist/exports/client/chunk-TIH7OFW3.js +0 -30
  580. package/dist/forms/Form/createNestedFieldPath.d.ts +0 -4
  581. package/dist/forms/Form/createNestedFieldPath.d.ts.map +0 -1
  582. package/dist/forms/Form/createNestedFieldPath.js.map +0 -1
  583. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts +0 -9
  584. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts.map +0 -1
  585. package/dist/providers/ComponentMap/buildComponentMap/actions.js +0 -45
  586. package/dist/providers/ComponentMap/buildComponentMap/actions.js.map +0 -1
  587. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts +0 -17
  588. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts.map +0 -1
  589. package/dist/providers/ComponentMap/buildComponentMap/collections.js +0 -117
  590. package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +0 -1
  591. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts +0 -17
  592. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +0 -1
  593. package/dist/providers/ComponentMap/buildComponentMap/fields.js +0 -696
  594. package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +0 -1
  595. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts +0 -18
  596. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts.map +0 -1
  597. package/dist/providers/ComponentMap/buildComponentMap/globals.js +0 -80
  598. package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +0 -1
  599. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts +0 -16
  600. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts.map +0 -1
  601. package/dist/providers/ComponentMap/buildComponentMap/index.js +0 -77
  602. package/dist/providers/ComponentMap/buildComponentMap/index.js.map +0 -1
  603. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts +0 -39
  604. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts.map +0 -1
  605. package/dist/providers/ComponentMap/buildComponentMap/types.js +0 -3
  606. package/dist/providers/ComponentMap/buildComponentMap/types.js.map +0 -1
  607. package/dist/providers/ComponentMap/index.d.ts +0 -25
  608. package/dist/providers/ComponentMap/index.d.ts.map +0 -1
  609. package/dist/providers/ComponentMap/index.js +0 -53
  610. package/dist/providers/ComponentMap/index.js.map +0 -1
  611. package/dist/utilities/buildComponentMap.d.ts +0 -4
  612. package/dist/utilities/buildComponentMap.d.ts.map +0 -1
  613. package/dist/utilities/buildComponentMap.js +0 -4
  614. package/dist/utilities/buildComponentMap.js.map +0 -1
  615. /package/dist/exports/client/{DatePicker-XJHHMZP7.js.map → DatePicker-QKRYICNS.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/providers/DocumentInfo/index.tsx"],"sourcesContent":["'use client'\nimport type {\n Data,\n DocumentPermissions,\n DocumentPreferences,\n FormState,\n PaginatedDocs,\n TypeWithID,\n TypeWithTimestamps,\n TypeWithVersion,\n Where,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\nimport { reduceFieldsToValues } from 'payload/shared'\nimport * as qs from 'qs-esm'\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 { 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'\nimport { UploadEditsProvider, useUploadEdits } from '../UploadEdits/index.js'\n\nconst Context = createContext({} as DocumentInfoContext)\n\nexport type * from './types.js'\n\nexport const useDocumentInfo = (): DocumentInfoContext => useContext(Context)\n\nconst DocumentInfo: React.FC<\n {\n children: React.ReactNode\n } & DocumentInfoProps\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 { uploadEdits } = useUploadEdits()\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 [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 const hasInitializedDocPermissions = useRef(false)\n // Separate locale cache used for handling permissions\n const prevLocalePermissions = useRef(locale)\n\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 = 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 idToUse = data?.id || id\n const newIsEditing = getIsEditing({ id: idToUse, collectionSlug, globalSlug })\n\n if (newIsEditing) {\n const docAccessURL = collectionSlug\n ? `/${collectionSlug}/access/${idToUse}`\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, id, 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 newData = collectionSlug ? json.doc : json.result\n\n const newState = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n data: newData,\n docPreferences,\n globalSlug,\n locale,\n operation,\n schemaPath: collectionSlug || globalSlug,\n },\n serverURL,\n })\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 try {\n abortController.abort()\n } catch (error) {\n // swallow error\n }\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 localeChanged = locale !== prevLocalePermissions.current\n\n if (data && (collectionSlug || globalSlug)) {\n if (localeChanged) {\n prevLocalePermissions.current = locale\n void getDocPermissions(data)\n } else if (\n hasInitializedDocPermissions.current === false &&\n (!docPermissions ||\n hasSavePermission === undefined ||\n hasSavePermission === null ||\n hasPublishPermission === undefined ||\n hasPublishPermission === null)\n ) {\n hasInitializedDocPermissions.current = true\n void getDocPermissions(data)\n }\n }\n }, [\n getDocPermissions,\n docPermissionsFromProps,\n hasSavePermissionFromProps,\n hasPublishPermissionFromProps,\n setDocPermissions,\n collectionSlug,\n globalSlug,\n data,\n locale,\n docPermissions,\n hasSavePermission,\n hasPublishPermission,\n ])\n\n const action: string = React.useMemo(() => {\n const docURL = `${baseURL}${pluralType === 'globals' ? `/globals` : ''}/${slug}${id ? `/${id}` : ''}`\n const params = {\n depth: 0,\n 'fallback-locale': 'null',\n locale,\n uploadEdits: uploadEdits || undefined,\n }\n\n return `${docURL}${qs.stringify(params, {\n addQueryPrefix: true,\n })}`\n }, [baseURL, locale, pluralType, id, slug, uploadEdits])\n\n if (isError) notFound()\n\n const value: DocumentInfoContext = {\n ...props,\n action,\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\nexport const DocumentInfoProvider: React.FC<\n {\n children: React.ReactNode\n } & DocumentInfoProps\n> = (props) => {\n return (\n <UploadEditsProvider>\n <DocumentInfo {...props} />\n </UploadEditsProvider>\n )\n}\n"],"names":["notFound","reduceFieldsToValues","qs","React","createContext","useCallback","useContext","useEffect","useRef","useState","formatDocTitle","getFormState","hasSavePermission","getHasSavePermission","isEditing","getIsEditing","useAuth","useConfig","useLocale","usePreferences","useTranslation","UploadEditsProvider","useUploadEdits","Context","useDocumentInfo","DocumentInfo","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","uploadEdits","documentTitle","setDocumentTitle","data","fallback","toString","isLoading","setIsLoading","isError","setIsError","setData","setInitialState","publishedDoc","setPublishedDoc","versions","setVersions","setDocPermissions","setHasSavePermission","setHasPublishPermission","isInitializing","undefined","unpublishedVersions","setUnpublishedVersions","getPreference","setPreference","permissions","code","locale","prevLocale","hasInitializedDocPermissions","prevLocalePermissions","versionsConfig","baseURL","pluralType","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","idToUse","newIsEditing","docAccessURL","publishedAccessJSON","body","JSON","method","update","newDocPermissions","getDocPreferences","setDocFieldPreferences","path","fieldPreferences","allPreferences","fields","e","console","error","docPreferences","newData","doc","result","newState","apiRoute","schemaPath","abortController","AbortController","localeChanged","current","getInitialState","onError","signal","err","aborted","abort","action","useMemo","docURL","addQueryPrefix","value","title","Provider","DocumentInfoProvider"],"mappings":"AAAA;;AAaA,SAASA,QAAQ,QAAQ,qBAAoB;AAC7C,SAASC,oBAAoB,QAAQ,iBAAgB;AACrD,YAAYC,QAAQ,SAAQ;AAC5B,OAAOC,SAASC,aAAa,EAAEC,WAAW,EAAEC,UAAU,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,QAAO;AAIlG,SAASC,cAAc,QAAQ,oCAAmC;AAClE,SAASC,YAAY,QAAQ,kCAAiC;AAC9D,SAASC,qBAAqBC,oBAAoB,QAAQ,uCAAsC;AAChG,SAASC,aAAaC,YAAY,QAAQ,+BAA8B;AACxE,SAASC,OAAO,QAAQ,mBAAkB;AAC1C,SAASC,SAAS,QAAQ,qBAAoB;AAC9C,SAASC,SAAS,QAAQ,qBAAoB;AAC9C,SAASC,cAAc,QAAQ,0BAAyB;AACxD,SAASC,cAAc,QAAQ,0BAAyB;AACxD,SAASC,mBAAmB,EAAEC,cAAc,QAAQ,0BAAyB;AAE7E,MAAMC,wBAAUnB,cAAc,CAAC;AAI/B,OAAO,MAAMoB,kBAAkB,IAA2BlB,WAAWiB,SAAQ;AAE7E,MAAME,eAIF,CAAC,EAAEC,QAAQ,EAAE,GAAGC,OAAO;IACzB,MAAM,EACJC,EAAE,EACFC,cAAc,EACdC,gBAAgBC,uBAAuB,EACvCC,UAAU,EACVC,sBAAsBC,6BAA6B,EACnDtB,mBAAmBuB,0BAA0B,EAC7CC,aAAaC,oBAAoB,EACjCC,cAAcC,qBAAqB,EACnCC,WAAW,EACXC,QAAQC,eAAe,EACxB,GAAGf;IAEJ,MAAM,EACJgB,OAAO,EAAEC,UAAU,EAAE,EACrBC,WAAW,EACXC,OAAO,EACPC,QAAQ,EAAEC,GAAG,EAAE,EACfC,SAAS,EACV,GAAGhC;IAEJ,MAAMiC,mBAAmBL,YAAYM,IAAI,CAAC,CAACC,IAAMA,EAAEC,IAAI,KAAKxB;IAC5D,MAAMyB,eAAeR,QAAQK,IAAI,CAAC,CAACI,IAAMA,EAAEF,IAAI,KAAKrB;IACpD,MAAMwB,YAAYN,oBAAoBI;IAEtC,MAAM,EAAEG,IAAI,EAAE,GAAGrC;IAEjB,MAAM,EAAEsC,WAAW,EAAE,GAAGpC;IAExB,MAAM,CAACqC,eAAeC,iBAAiB,GAAGnD,SAAS;QACjD,IAAI,CAAC4B,sBAAsB,OAAO;QAElC,OAAO3B,eAAe;YACpBwC;YACAW,MAAM;gBAAE,GAAGxB,oBAAoB;gBAAET;YAAG;YACpCgB;YACAkB,UAAUlC,IAAImC;YACdT;YACAG;QACF;IACF;IAEA,MAAM,CAACO,WAAWC,aAAa,GAAGxD,SAAS;IAC3C,MAAM,CAACyD,SAASC,WAAW,GAAG1D,SAAS;IACvC,MAAM,CAACoD,MAAMO,QAAQ,GAAG3D,SAAe4B;IACvC,MAAM,CAACC,cAAc+B,gBAAgB,GAAG5D,SAAoB8B;IAC5D,MAAM,CAAC+B,cAAcC,gBAAgB,GAAG9D,SAA0C;IAClF,MAAM,CAAC+D,UAAUC,YAAY,GAAGhE,SAA8C;IAC9E,MAAM,CAACqB,gBAAgB4C,kBAAkB,GAAGjE,SAA8BsB;IAC1E,MAAM,CAACnB,mBAAmB+D,qBAAqB,GAAGlE,SAAkB0B;IACpE,MAAM,CAACF,sBAAsB2C,wBAAwB,GAAGnE,SACtDyB;IAEF,MAAM2C,iBAAiBvC,iBAAiBwC,aAAajB,SAASiB;IAC9D,MAAM,CAACC,qBAAqBC,uBAAuB,GACjDvE,SAA8C;IAEhD,MAAM,EAAEwE,aAAa,EAAEC,aAAa,EAAE,GAAG/D;IACzC,MAAM,EAAEgE,WAAW,EAAE,GAAGnE;IACxB,MAAM,EAAEoE,MAAMC,MAAM,EAAE,GAAGnE;IACzB,MAAMoE,aAAa9E,OAAO6E;IAC1B,MAAME,+BAA+B/E,OAAO;IAC5C,sDAAsD;IACtD,MAAMgF,wBAAwBhF,OAAO6E;IAErC,MAAMI,iBAAiBjC,WAAWgB;IAElC,MAAMkB,UAAU,CAAC,EAAEzC,UAAU,EAAED,IAAI,CAAC;IACpC,IAAIK;IACJ,IAAIsC;IACJ,IAAIC;IAEJ,IAAI5D,YAAY;QACdqB,OAAOrB;QACP2D,aAAa;QACbC,iBAAiB,CAAC,OAAO,EAAEvC,KAAK,CAAC;IACnC;IAEA,IAAIxB,gBAAgB;QAClBwB,OAAOxB;QACP8D,aAAa;QAEb,IAAI/D,IAAI;YACNgE,iBAAiB,CAAC,WAAW,EAAEvC,KAAK,CAAC,EAAEzB,GAAG,CAAC;QAC7C;IACF;IAEA,MAAMd,YAAYC,aAAa;QAAEa;QAAIC;QAAgBG;IAAW;IAChE,MAAM6D,YAAY/E,YAAY,WAAW;IACzC,MAAMgF,sBAAsBC,QAAQN,kBAAkB3D,gBAAgBkE,cAAcC;IAEpF,MAAMC,cAAc7F,YAAY;QAC9B,IAAI8F;QACJ,IAAIC;QACJ,IAAIC,yBAAyB;QAC7B,IAAIC,cAAc;QAClB,IAAIC,cAAc;QAElB,MAAMC,gBAAgB;YACpBC,OAAO;YACPC,OAAO;gBACLC,KAAK,EAAE;YACT;QACF;QAEA,MAAMC,yBAA0E;YAC9EH,OAAO;YACPpB,QAAQA,UAAUP;YAClB4B,OAAO;gBACLC,KAAK;oBACH;wBACEE,IAAI;4BACF;gCACEC,SAAS;oCACPC,QAAQ;gCACV;4BACF;4BACA;gCACED,SAAS;oCACPE,QAAQ;gCACV;4BACF;yBACD;oBACH;iBACD;YACH;QACF;QAEA,IAAIhF,YAAY;YACdmE,kBAAkB,CAAC,EAAET,QAAQ,SAAS,EAAE1D,WAAW,SAAS,CAAC;YAC7DoE,oBAAoB,CAAC,EAAEV,QAAQ,SAAS,EAAE1D,WAAW,CAAC,EAAE9B,GAAG+G,SAAS,CAACL,wBAAwB,CAAC;QAChG;QAEA,IAAI/E,gBAAgB;YAClBsE,kBAAkB,CAAC,EAAET,QAAQ,CAAC,EAAE7D,eAAe,SAAS,CAAC;YAEzD+E,uBAAuBF,KAAK,CAACC,GAAG,CAACO,IAAI,CAAC;gBACpCtF,IAAI;oBACFmF,QAAQnF;gBACV;YACF;YAEAwE,oBAAoB,CAAC,EAAEV,QAAQ,CAAC,EAAE7D,eAAe,CAAC,EAAE3B,GAAG+G,SAAS,CAACL,wBAAwB,CAAC;YAE1F,IAAI,CAAChF,IAAI;gBACP2E,cAAc;YAChB;YAEAC,cAAcE,KAAK,CAACC,GAAG,CAACO,IAAI,CAAC;gBAC3BC,QAAQ;oBACNJ,QAAQnF;gBACV;YACF;QACF;QAEA,IAAI2E,aAAa;YACf,IAAIa;YAEJ,IAAI3B,gBAAgB4B,QAAQ;gBAC1BD,gBAAgB,MAAME,MAAMlB,mBAAmB;oBAC7CmB,aAAa;oBACbC,SAAS;wBACP,mBAAmB/D,KAAKgE,QAAQ;oBAClC;gBACF,GAAGC,IAAI,CAAC,CAACC,MAAQA,IAAIC,IAAI;gBAEzB,IAAI/F,gBAAgB;oBAClBuF,gBAAgBA,eAAeS,MAAM,CAAC,EAAE;gBAC1C;YACF;YAEA,IAAI/B,qBAAqB;gBACvBQ,cAAc,MAAMgB,MAAM,CAAC,EAAEnB,gBAAgB,CAAC,EAAEjG,GAAG+G,SAAS,CAACT,eAAe,CAAC,EAAE;oBAC7Ee,aAAa;oBACbC,SAAS;wBACP,mBAAmB/D,KAAKgE,QAAQ;oBAClC;gBACF,GAAGC,IAAI,CAAC,CAACC,MAAQA,IAAIC,IAAI;gBAEzB,IAAIR,eAAeU,WAAW;oBAC5B,MAAMC,qBAAqB;wBACzB,GAAGvB,aAAa;wBAChBE,OAAO;4BACL,GAAGF,cAAcE,KAAK;4BACtBC,KAAK;mCACAH,cAAcE,KAAK,CAACC,GAAG;gCAC1B;oCACEmB,WAAW;wCACTE,cAAcZ,eAAeU;oCAC/B;gCACF;6BACD;wBACH;oBACF;oBAEA,mCAAmC;oBACnC,MAAMG,kBAAkB,MAAMX,MAC5B,CAAC,EAAEnB,gBAAgB,CAAC,EAAEjG,GAAG+G,SAAS,CAACc,oBAAoB,CAAC,EACxD;wBACER,aAAa;wBACbC,SAAS;4BACP,mBAAmB/D,KAAKgE,QAAQ;wBAClC;oBACF;oBAGF,IAAIQ,gBAAgBC,MAAM,KAAK,KAAK;wBAClC7B,yBAAyB,MAAM4B,gBAAgBL,IAAI;oBACrD;gBACF;YACF;YAEArD,gBAAgB6C;YAChB3C,YAAY6B;YACZtB,uBAAuBqB;QACzB;IACF,GAAG;QAAC5C;QAAMzB;QAAYH;QAAgBD;QAAI8D;QAASL;QAAQI;QAAgBK;KAAoB;IAE/F,MAAMqC,oBAAoBhI,MAAME,WAAW,CACzC,OAAOwD;QACL,MAAMuE,SAAS;YACb/C,QAAQA,UAAUP;QACpB;QAEA,MAAMuD,UAAUxE,MAAMjC,MAAMA;QAC5B,MAAM0G,eAAevH,aAAa;YAAEa,IAAIyG;YAASxG;YAAgBG;QAAW;QAE5E,IAAIsG,cAAc;YAChB,MAAMC,eAAe1G,iBACjB,CAAC,CAAC,EAAEA,eAAe,QAAQ,EAAEwG,QAAQ,CAAC,GACtCrG,aACE,CAAC,SAAS,EAAEA,WAAW,OAAO,CAAC,GAC/B;YAEN,IAAIuG,cAAc;gBAChB,MAAMZ,MAAM,MAAML,MAAM,CAAC,EAAErE,UAAU,EAAED,IAAI,EAAEuF,aAAa,CAAC,EAAErI,GAAG+G,SAAS,CAACmB,QAAQ,CAAC,EAAE;oBACnFb,aAAa;oBACbC,SAAS;wBACP,mBAAmB/D,KAAKgE,QAAQ;oBAClC;gBACF;gBAEA,MAAMG,OAA4B,MAAMD,IAAIC,IAAI;gBAChD,MAAMY,sBAAsB,MAAMlB,MAChC,CAAC,EAAErE,UAAU,EAAED,IAAI,EAAEuF,aAAa,CAAC,EAAErI,GAAG+G,SAAS,CAACmB,QAAQ,CAAC,EAC3D;oBACEK,MAAMC,KAAKzB,SAAS,CAAC;wBACnBpD,MAAM;4BACJ,GAAIA,QAAQ,CAAC,CAAC;4BACdiD,SAAS;wBACX;oBACF;oBACAS,aAAa;oBACbC,SAAS;wBACP,mBAAmB/D,KAAKgE,QAAQ;oBAClC;oBACAkB,QAAQ;gBACV,GACAjB,IAAI,CAAC,CAACC,MAAQA,IAAIC,IAAI;gBAExBlD,kBAAkBkD;gBAElBjD,qBACE9D,qBAAqB;oBACnBgB;oBACAC,gBAAgB8F;oBAChB5F;oBACAlB,WAAWwH;gBACb;gBAGF1D,wBAAwB4D,qBAAqBI,QAAQ3C;YACvD;QACF,OAAO;YACL,mFAAmF;YACnF,6CAA6C;YAC7C,MAAM4C,oBAAoBhH,iBACtBsD,aAAatC,aAAa,CAAChB,eAAe,GAC1CsD,aAAarC,SAAS,CAACd,WAAW;YAEtC0C,kBAAkBmE;YAElBlE,qBACE9D,qBAAqB;gBACnBgB;gBACAC,gBAAgB+G;gBAChB7G;gBACAlB,WAAWwH;YACb;QAEJ;IACF,GACA;QAACrF;QAAWD;QAAKpB;QAAIuD;QAAa1B,KAAKgE,QAAQ;QAAEpC;QAAQxD;QAAgBG;KAAW;IAGtF,MAAM8G,oBAAoBzI,YAAY;QACpC,OAAO4E,cAAmCW;IAC5C,GAAG;QAACX;QAAeW;KAAe;IAElC,MAAMmD,yBAAyB1I,YAC7B,OAAO2I,MAAMC;QACX,MAAMC,iBAAiB,MAAMJ;QAE7B,IAAIlD,gBAAgB;YAClB,IAAI;gBACF,MAAMV,cAAcU,gBAAgB;oBAClC,GAAGsD,cAAc;oBACjBC,QAAQ;wBACN,GAAID,gBAAgBC,UAAU,CAAC,CAAC;wBAChC,CAACH,KAAK,EAAE;4BACN,GAAGE,gBAAgBC,QAAQ,CAACH,KAAK;4BACjC,GAAGC,gBAAgB;wBACrB;oBACF;gBACF;YACF,EAAE,OAAOG,GAAG;gBACVC,QAAQC,KAAK,CAACF,GAAG,iCAAiC;;YACpD;QACF;IACF,GACA;QAAClE;QAAeU;QAAgBkD;KAAkB;IAGpD,MAAMrG,SAAStC,MAAME,WAAW,CAC9B,OAAOuH;QACL,IAAI,OAAOlF,oBAAoB,YAAY;YACzC,KAAKA,gBAAgBkF;QACvB;QAEA,MAAM2B,iBAAiB,MAAMT;QAE7B,MAAMU,UAAU3H,iBAAiB+F,KAAK6B,GAAG,GAAG7B,KAAK8B,MAAM;QAEvD,MAAMC,WAAW,MAAMhJ,aAAa;YAClCiJ,UAAU5G;YACVyF,MAAM;gBACJ7G;gBACAC;gBACAgC,MAAM2F;gBACND;gBACAvH;gBACAqD;gBACAQ;gBACAgE,YAAYhI,kBAAkBG;YAChC;YACAiB;QACF;QAEAoB,gBAAgBsF;QAChBvF,QAAQoF;QACR,MAAMrB,kBAAkBqB;IAC1B,GACA;QACExG;QACAnB;QACAiH;QACA9G;QACAJ;QACAiE;QACAR;QACA3C;QACAO;QACAkF;KACD;IAGH5H,UAAU;QACR,MAAMuJ,kBAAkB,IAAIC;QAC5B,MAAMC,gBAAgB3E,WAAWC,WAAW2E,OAAO;QAEnD,IACE1H,0BAA0BuC,aAC1BzC,yBAAyByC,aACzBkF,eACA;YACA,IAAIA,eAAe1E,WAAW2E,OAAO,GAAG5E;YAExC,MAAM6E,kBAAkB;gBACtB/F,WAAW;gBACXF,aAAa;gBAEb,IAAI;oBACF,MAAMyF,SAAS,MAAM/I,aAAa;wBAChCiJ,UAAU5G;wBACVyF,MAAM;4BACJ7G;4BACAC;4BACAG;4BACAqD;4BACAQ;4BACAgE,YAAYhI,kBAAkBG;wBAChC;wBACAmI,SAAS3H;wBACTS;wBACAmH,QAAQN,gBAAgBM,MAAM;oBAChC;oBAEAhG,QAAQnE,qBAAqByJ,QAAQ;oBACrCrF,gBAAgBqF;gBAClB,EAAE,OAAOW,KAAK;oBACZ,IAAI,CAACP,gBAAgBM,MAAM,CAACE,OAAO,EAAE;wBACnC,IAAI,OAAO9H,gBAAgB,YAAY;4BACrC,KAAKA;wBACP;wBACA2B,WAAW;wBACXF,aAAa;oBACf;gBACF;gBACAA,aAAa;YACf;YAEA,KAAKiG;QACP;QAEA,OAAO;YACL,IAAI;gBACFJ,gBAAgBS,KAAK;YACvB,EAAE,OAAOjB,OAAO;YACd,gBAAgB;YAClB;QACF;IACF,GAAG;QACDtG;QACA6C;QACAhE;QACAoB;QACArB;QACAI;QACAqD;QACA7C;QACAH;QACAE;KACD;IAEDhC,UAAU;QACR,KAAK2F;IACP,GAAG;QAACA;KAAY;IAEhB3F,UAAU;QACRqD,iBACElD,eAAe;YACbwC;YACAW,MAAM;gBAAE,GAAGA,IAAI;gBAAEjC;YAAG;YACpBgB;YACAkB,UAAUlC,IAAImC;YACdT;YACAG;QACF;IAEJ,GAAG;QAACP;QAAkBW;QAAMjB;QAAYa;QAAM7B;QAAI0B;KAAa;IAE/D/C,UAAU;QACR,MAAMyJ,gBAAgB3E,WAAWG,sBAAsByE,OAAO;QAE9D,IAAIpG,QAAShC,CAAAA,kBAAkBG,UAAS,GAAI;YAC1C,IAAIgI,eAAe;gBACjBxE,sBAAsByE,OAAO,GAAG5E;gBAChC,KAAK8C,kBAAkBtE;YACzB,OAAO,IACL0B,6BAA6B0E,OAAO,KAAK,SACxC,CAAA,CAACnI,kBACAlB,sBAAsBkE,aACtBlE,sBAAsB,QACtBqB,yBAAyB6C,aACzB7C,yBAAyB,IAAG,GAC9B;gBACAsD,6BAA6B0E,OAAO,GAAG;gBACvC,KAAK9B,kBAAkBtE;YACzB;QACF;IACF,GAAG;QACDsE;QACApG;QACAI;QACAD;QACAwC;QACA7C;QACAG;QACA6B;QACAwB;QACAvD;QACAlB;QACAqB;KACD;IAED,MAAMuI,SAAiBrK,MAAMsK,OAAO,CAAC;QACnC,MAAMC,SAAS,CAAC,EAAEhF,QAAQ,EAAEC,eAAe,YAAY,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,EAAEtC,KAAK,EAAEzB,KAAK,CAAC,CAAC,EAAEA,GAAG,CAAC,GAAG,GAAG,CAAC;QACrG,MAAMwG,SAAS;YACb3B,OAAO;YACP,mBAAmB;YACnBpB;YACA3B,aAAaA,eAAeoB;QAC9B;QAEA,OAAO,CAAC,EAAE4F,OAAO,EAAExK,GAAG+G,SAAS,CAACmB,QAAQ;YACtCuC,gBAAgB;QAClB,GAAG,CAAC;IACN,GAAG;QAACjF;QAASL;QAAQM;QAAY/D;QAAIyB;QAAMK;KAAY;IAEvD,IAAIQ,SAASlE;IAEb,MAAM4K,QAA6B;QACjC,GAAGjJ,KAAK;QACR6I;QACAhH;QACA1B;QACAqG;QACAW;QACA5C;QACAjE;QACArB;QACAwB,aAAayB;QACbvB;QACAuC;QACAb;QACAvB;QACA6B;QACAyE;QACAnF;QACAiH,OAAOlH;QACPoB;QACAP;IACF;IAEA,qBAAO,KAACjD,QAAQuJ,QAAQ;QAACF,OAAOA;kBAAQlJ;;AAC1C;AAEA,OAAO,MAAMqJ,uBAIT,CAACpJ;IACH,qBACE,KAACN;kBACC,cAAA,KAACI;YAAc,GAAGE,KAAK;;;AAG7B,EAAC"}
1
+ {"version":3,"sources":["../../../src/providers/DocumentInfo/index.tsx"],"sourcesContent":["'use client'\nimport type {\n Data,\n DocumentPermissions,\n DocumentPreferences,\n FormState,\n PaginatedDocs,\n TypeWithID,\n TypeWithTimestamps,\n TypeWithVersion,\n Where,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\nimport { reduceFieldsToValues } from 'payload/shared'\nimport * as qs from 'qs-esm'\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 { 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'\nimport { UploadEditsProvider, useUploadEdits } from '../UploadEdits/index.js'\n\nconst Context = createContext({} as DocumentInfoContext)\n\nexport type * from './types.js'\n\nexport const useDocumentInfo = (): DocumentInfoContext => useContext(Context)\n\nconst DocumentInfo: React.FC<\n {\n children: React.ReactNode\n } & DocumentInfoProps\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 config: {\n admin: { dateFormat },\n collections,\n globals,\n routes: { api },\n serverURL,\n },\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 { uploadEdits } = useUploadEdits()\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 [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 const hasInitializedDocPermissions = useRef(false)\n // Separate locale cache used for handling permissions\n const prevLocalePermissions = useRef(locale)\n\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 = 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 idToUse = data?.id || id\n const newIsEditing = getIsEditing({ id: idToUse, collectionSlug, globalSlug })\n\n if (newIsEditing) {\n const docAccessURL = collectionSlug\n ? `/${collectionSlug}/access/${idToUse}`\n : globalSlug\n ? `/globals/${globalSlug}/access`\n : null\n\n if (docAccessURL) {\n const res = await fetch(`${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`, {\n body: JSON.stringify(data),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'post',\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 _status: 'published',\n }),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\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, id, 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 newData = collectionSlug ? json.doc : json.result\n\n const newState = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n data: newData,\n docPreferences,\n globalSlug,\n locale,\n operation,\n schemaPath: collectionSlug || globalSlug,\n },\n serverURL,\n })\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 const data = reduceFieldsToValues(result, true)\n setData(data)\n\n if (localeChanged) void getDocPermissions(data)\n\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 try {\n abortController.abort()\n } catch (error) {\n // swallow error\n }\n }\n }, [\n api,\n operation,\n collectionSlug,\n serverURL,\n id,\n globalSlug,\n locale,\n onLoadError,\n initialDataFromProps,\n initialStateFromProps,\n getDocPermissions,\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 if (data && (collectionSlug || globalSlug)) {\n if (\n hasInitializedDocPermissions.current === false &&\n (!docPermissions ||\n hasSavePermission === undefined ||\n hasSavePermission === null ||\n hasPublishPermission === undefined ||\n hasPublishPermission === null)\n ) {\n hasInitializedDocPermissions.current = true\n void getDocPermissions(data)\n }\n }\n }, [\n getDocPermissions,\n docPermissionsFromProps,\n hasSavePermissionFromProps,\n hasPublishPermissionFromProps,\n setDocPermissions,\n collectionSlug,\n globalSlug,\n data,\n docPermissions,\n hasSavePermission,\n hasPublishPermission,\n ])\n\n const action: string = React.useMemo(() => {\n const docURL = `${baseURL}${pluralType === 'globals' ? `/globals` : ''}/${slug}${id ? `/${id}` : ''}`\n const params = {\n depth: 0,\n 'fallback-locale': 'null',\n locale,\n uploadEdits: uploadEdits || undefined,\n }\n\n return `${docURL}${qs.stringify(params, {\n addQueryPrefix: true,\n })}`\n }, [baseURL, locale, pluralType, id, slug, uploadEdits])\n\n if (isError) notFound()\n\n const value: DocumentInfoContext = {\n ...props,\n action,\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\nexport const DocumentInfoProvider: React.FC<\n {\n children: React.ReactNode\n } & DocumentInfoProps\n> = (props) => {\n return (\n <UploadEditsProvider>\n <DocumentInfo {...props} />\n </UploadEditsProvider>\n )\n}\n"],"names":["notFound","reduceFieldsToValues","qs","React","createContext","useCallback","useContext","useEffect","useRef","useState","formatDocTitle","getFormState","hasSavePermission","getHasSavePermission","isEditing","getIsEditing","useAuth","useConfig","useLocale","usePreferences","useTranslation","UploadEditsProvider","useUploadEdits","Context","useDocumentInfo","DocumentInfo","children","props","id","collectionSlug","docPermissions","docPermissionsFromProps","globalSlug","hasPublishPermission","hasPublishPermissionFromProps","hasSavePermissionFromProps","initialData","initialDataFromProps","initialState","initialStateFromProps","onLoadError","onSave","onSaveFromProps","config","admin","dateFormat","collections","globals","routes","api","serverURL","collectionConfig","find","c","slug","globalConfig","g","docConfig","i18n","uploadEdits","documentTitle","setDocumentTitle","data","fallback","toString","isLoading","setIsLoading","isError","setIsError","setData","setInitialState","publishedDoc","setPublishedDoc","versions","setVersions","setDocPermissions","setHasSavePermission","setHasPublishPermission","isInitializing","undefined","unpublishedVersions","setUnpublishedVersions","getPreference","setPreference","permissions","code","locale","prevLocale","hasInitializedDocPermissions","prevLocalePermissions","versionsConfig","baseURL","pluralType","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","idToUse","newIsEditing","docAccessURL","body","JSON","method","publishedAccessJSON","update","newDocPermissions","getDocPreferences","setDocFieldPreferences","path","fieldPreferences","allPreferences","fields","e","console","error","docPreferences","newData","doc","result","newState","apiRoute","schemaPath","abortController","AbortController","localeChanged","current","getInitialState","onError","signal","err","aborted","abort","action","useMemo","docURL","addQueryPrefix","value","title","Provider","DocumentInfoProvider"],"mappings":"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"}
@@ -1,8 +1,9 @@
1
- import type { FieldTypes } from 'payload';
2
1
  import React from 'react';
3
- export type IFieldComponentsContext = FieldTypes;
2
+ import type { FieldTypesComponents } from '../../fields/index.js';
3
+ export type IFieldComponentsContext = FieldTypesComponents;
4
4
  export declare const FieldComponentsProvider: React.FC<{
5
- children: React.ReactNode;
5
+ readonly children: React.ReactNode;
6
+ readonly fieldComponents: FieldTypesComponents;
6
7
  }>;
7
8
  export declare const useFieldComponents: () => IFieldComponentsContext;
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/FieldComponents/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEzC,OAAO,KAAoC,MAAM,OAAO,CAAA;AAIxD,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAA;AAIhD,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC;IAC7C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,CAMA,CAAA;AAED,eAAO,MAAM,kBAAkB,QAAO,uBAA6D,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/FieldComponents/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAEjE,MAAM,MAAM,uBAAuB,GAAG,oBAAoB,CAAA;AAI1D,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC;IAC7C,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IAClC,QAAQ,CAAC,eAAe,EAAE,oBAAoB,CAAA;CAC/C,CAMA,CAAA;AAED,eAAO,MAAM,kBAAkB,QAAO,uBAA6D,CAAA"}
@@ -1,9 +1,8 @@
1
1
  'use client';
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import React, { createContext, useContext } from 'react';
4
- import { fieldComponents } from '../../fields/index.js';
5
- const FieldComponentsContext = /*#__PURE__*/ createContext(fieldComponents);
6
- export const FieldComponentsProvider = ({ children })=>{
4
+ const FieldComponentsContext = /*#__PURE__*/ createContext(null);
5
+ export const FieldComponentsProvider = ({ children, fieldComponents })=>{
7
6
  return /*#__PURE__*/ _jsx(FieldComponentsContext.Provider, {
8
7
  value: fieldComponents,
9
8
  children: children
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/providers/FieldComponents/index.tsx"],"sourcesContent":["'use client'\nimport type { FieldTypes } from 'payload'\n\nimport React, { createContext, useContext } from 'react'\n\nimport { fieldComponents } from '../../fields/index.js'\n\nexport type IFieldComponentsContext = FieldTypes\n\nconst FieldComponentsContext = createContext<IFieldComponentsContext>(fieldComponents)\n\nexport const FieldComponentsProvider: React.FC<{\n children: React.ReactNode\n}> = ({ children }) => {\n return (\n <FieldComponentsContext.Provider value={fieldComponents}>\n {children}\n </FieldComponentsContext.Provider>\n )\n}\n\nexport const useFieldComponents = (): IFieldComponentsContext => useContext(FieldComponentsContext)\n"],"names":["React","createContext","useContext","fieldComponents","FieldComponentsContext","FieldComponentsProvider","children","Provider","value","useFieldComponents"],"mappings":"AAAA;;AAGA,OAAOA,SAASC,aAAa,EAAEC,UAAU,QAAQ,QAAO;AAExD,SAASC,eAAe,QAAQ,wBAAuB;AAIvD,MAAMC,uCAAyBH,cAAuCE;AAEtE,OAAO,MAAME,0BAER,CAAC,EAAEC,QAAQ,EAAE;IAChB,qBACE,KAACF,uBAAuBG,QAAQ;QAACC,OAAOL;kBACrCG;;AAGP,EAAC;AAED,OAAO,MAAMG,qBAAqB,IAA+BP,WAAWE,wBAAuB"}
1
+ {"version":3,"sources":["../../../src/providers/FieldComponents/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { createContext, useContext } from 'react'\n\nimport type { FieldTypesComponents } from '../../fields/index.js'\n\nexport type IFieldComponentsContext = FieldTypesComponents\n\nconst FieldComponentsContext = createContext<IFieldComponentsContext>(null)\n\nexport const FieldComponentsProvider: React.FC<{\n readonly children: React.ReactNode\n readonly fieldComponents: FieldTypesComponents\n}> = ({ children, fieldComponents }) => {\n return (\n <FieldComponentsContext.Provider value={fieldComponents}>\n {children}\n </FieldComponentsContext.Provider>\n )\n}\n\nexport const useFieldComponents = (): IFieldComponentsContext => useContext(FieldComponentsContext)\n"],"names":["React","createContext","useContext","FieldComponentsContext","FieldComponentsProvider","children","fieldComponents","Provider","value","useFieldComponents"],"mappings":"AAAA;;AAEA,OAAOA,SAASC,aAAa,EAAEC,UAAU,QAAQ,QAAO;AAMxD,MAAMC,uCAAyBF,cAAuC;AAEtE,OAAO,MAAMG,0BAGR,CAAC,EAAEC,QAAQ,EAAEC,eAAe,EAAE;IACjC,qBACE,KAACH,uBAAuBI,QAAQ;QAACC,OAAOF;kBACrCD;;AAGP,EAAC;AAED,OAAO,MAAMI,qBAAqB,IAA+BP,WAAWC,wBAAuB"}
@@ -3,21 +3,21 @@ import React from 'react';
3
3
  import type { Column } from '../../elements/Table/index.js';
4
4
  export type ColumnPreferences = Pick<Column, 'accessor' | 'active'>[];
5
5
  export type ListInfoProps = {
6
- Header?: React.ReactNode;
7
- collectionConfig: ClientConfig['collections'][0];
8
- collectionSlug: SanitizedCollectionConfig['slug'];
9
- hasCreatePermission: boolean;
10
- newDocumentURL: string;
11
- titleField?: FieldAffectingData;
6
+ readonly Header?: React.ReactNode;
7
+ readonly collectionConfig: ClientConfig['collections'][0];
8
+ readonly collectionSlug: SanitizedCollectionConfig['slug'];
9
+ readonly hasCreatePermission: boolean;
10
+ readonly newDocumentURL: string;
11
+ readonly titleField?: FieldAffectingData;
12
12
  };
13
13
  export type ListInfoContext = {
14
- Header?: React.ReactNode;
15
- collectionSlug: string;
16
- hasCreatePermission: boolean;
17
- newDocumentURL: string;
18
- };
14
+ readonly Header?: React.ReactNode;
15
+ readonly collectionSlug: string;
16
+ readonly hasCreatePermission: boolean;
17
+ readonly newDocumentURL: string;
18
+ } & ListInfoProps;
19
19
  export declare const useListInfo: () => ListInfoContext;
20
20
  export declare const ListInfoProvider: React.FC<{
21
- children: React.ReactNode;
21
+ readonly children: React.ReactNode;
22
22
  } & ListInfoProps>;
23
23
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ListInfo/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAE1F,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAE3D,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAA;AAErE,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,gBAAgB,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IAChD,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IACjD,mBAAmB,EAAE,OAAO,CAAA;IAC5B,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,kBAAkB,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,cAAc,EAAE,MAAM,CAAA;CACvB,CAAA;AAID,eAAO,MAAM,WAAW,QAAO,eAAsC,CAAA;AAErE,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CACrC;IACE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,GAAG,aAAa,CAGlB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ListInfo/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAE1F,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAE3D,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAA;AAErE,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IACzD,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAC1D,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAA;IACrC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAA;CACzC,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAA;IACrC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;CAChC,GAAG,aAAa,CAAA;AAIjB,eAAO,MAAM,WAAW,QAAO,eAAsC,CAAA;AAErE,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CACrC;IACE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CACnC,GAAG,aAAa,CAGlB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/providers/ListInfo/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientConfig, FieldAffectingData, SanitizedCollectionConfig } from 'payload'\n\nimport React, { createContext, useContext } from 'react'\n\nimport type { Column } from '../../elements/Table/index.js'\n\nexport type ColumnPreferences = Pick<Column, 'accessor' | 'active'>[]\n\nexport type ListInfoProps = {\n Header?: React.ReactNode\n collectionConfig: ClientConfig['collections'][0]\n collectionSlug: SanitizedCollectionConfig['slug']\n hasCreatePermission: boolean\n newDocumentURL: string\n titleField?: FieldAffectingData\n}\n\nexport type ListInfoContext = {\n Header?: React.ReactNode\n collectionSlug: string\n hasCreatePermission: boolean\n newDocumentURL: string\n}\n\nconst Context = createContext({} as ListInfoContext)\n\nexport const useListInfo = (): ListInfoContext => useContext(Context)\n\nexport const ListInfoProvider: React.FC<\n {\n children: React.ReactNode\n } & ListInfoProps\n> = ({ children, ...props }) => {\n return <Context.Provider value={props}>{children}</Context.Provider>\n}\n"],"names":["React","createContext","useContext","Context","useListInfo","ListInfoProvider","children","props","Provider","value"],"mappings":"AAAA;;AAGA,OAAOA,SAASC,aAAa,EAAEC,UAAU,QAAQ,QAAO;AAsBxD,MAAMC,wBAAUF,cAAc,CAAC;AAE/B,OAAO,MAAMG,cAAc,IAAuBF,WAAWC,SAAQ;AAErE,OAAO,MAAME,mBAIT,CAAC,EAAEC,QAAQ,EAAE,GAAGC,OAAO;IACzB,qBAAO,KAACJ,QAAQK,QAAQ;QAACC,OAAOF;kBAAQD;;AAC1C,EAAC"}
1
+ {"version":3,"sources":["../../../src/providers/ListInfo/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientConfig, FieldAffectingData, SanitizedCollectionConfig } from 'payload'\n\nimport React, { createContext, useContext } from 'react'\n\nimport type { Column } from '../../elements/Table/index.js'\n\nexport type ColumnPreferences = Pick<Column, 'accessor' | 'active'>[]\n\nexport type ListInfoProps = {\n readonly Header?: React.ReactNode\n readonly collectionConfig: ClientConfig['collections'][0]\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly hasCreatePermission: boolean\n readonly newDocumentURL: string\n readonly titleField?: FieldAffectingData\n}\n\nexport type ListInfoContext = {\n readonly Header?: React.ReactNode\n readonly collectionSlug: string\n readonly hasCreatePermission: boolean\n readonly newDocumentURL: string\n} & ListInfoProps\n\nconst Context = createContext({} as ListInfoContext)\n\nexport const useListInfo = (): ListInfoContext => useContext(Context)\n\nexport const ListInfoProvider: React.FC<\n {\n readonly children: React.ReactNode\n } & ListInfoProps\n> = ({ children, ...props }) => {\n return <Context.Provider value={props}>{children}</Context.Provider>\n}\n"],"names":["React","createContext","useContext","Context","useListInfo","ListInfoProvider","children","props","Provider","value"],"mappings":"AAAA;;AAGA,OAAOA,SAASC,aAAa,EAAEC,UAAU,QAAQ,QAAO;AAsBxD,MAAMC,wBAAUF,cAAc,CAAC;AAE/B,OAAO,MAAMG,cAAc,IAAuBF,WAAWC,SAAQ;AAErE,OAAO,MAAME,mBAIT,CAAC,EAAEC,QAAQ,EAAE,GAAGC,OAAO;IACzB,qBAAO,KAACJ,QAAQK,QAAQ;QAACC,OAAOF;kBAAQD;;AAC1C,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Locale/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAErC,OAAO,KAAyD,MAAM,OAAO,CAAA;AAU7E,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAuEnE,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,QAAO,MAAmC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Locale/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAErC,OAAO,KAAyD,MAAM,OAAO,CAAA;AAU7E,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAyEnE,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,QAAO,MAAmC,CAAA"}
@@ -8,7 +8,7 @@ import { usePreferences } from '../Preferences/index.js';
8
8
  import { useSearchParams } from '../SearchParams/index.js';
9
9
  const LocaleContext = /*#__PURE__*/ createContext({});
10
10
  export const LocaleProvider = ({ children })=>{
11
- const { localization } = useConfig();
11
+ const { config: { localization } } = useConfig();
12
12
  const { user } = useAuth();
13
13
  const defaultLocale = localization && localization.defaultLocale ? localization.defaultLocale : 'en';
14
14
  const { searchParams } = useSearchParams();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/providers/Locale/index.tsx"],"sourcesContent":["'use client'\n\nimport type { Locale } from 'payload'\n\nimport React, { createContext, useContext, useEffect, useState } from 'react'\n\nimport { findLocaleFromCode } from '../../utilities/findLocaleFromCode.js'\nimport { useAuth } from '../Auth/index.js'\nimport { useConfig } from '../Config/index.js'\nimport { usePreferences } from '../Preferences/index.js'\nimport { useSearchParams } from '../SearchParams/index.js'\n\nconst LocaleContext = createContext({} as Locale)\n\nexport const LocaleProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) => {\n const { localization } = useConfig()\n\n const { user } = useAuth()\n const defaultLocale =\n localization && localization.defaultLocale ? localization.defaultLocale : 'en'\n\n const { searchParams } = useSearchParams()\n const localeFromParams = searchParams?.locale\n\n const [localeCode, setLocaleCode] = useState<string>(\n (localeFromParams as string) || defaultLocale,\n )\n\n const [locale, setLocale] = useState<Locale | null>(\n localization && findLocaleFromCode(localization, localeCode),\n )\n\n const { getPreference, setPreference } = usePreferences()\n\n const switchLocale = React.useCallback(\n async (newLocale: string) => {\n if (!localization) {\n return\n }\n\n const localeToSet =\n localization.localeCodes.indexOf(newLocale) > -1 ? newLocale : defaultLocale\n\n if (localeToSet !== localeCode) {\n setLocaleCode(localeToSet)\n setLocale(findLocaleFromCode(localization, localeToSet))\n try {\n if (user) await setPreference('locale', localeToSet)\n } catch (error) {\n // swallow error\n }\n }\n },\n [localization, setPreference, user, defaultLocale, localeCode],\n )\n\n useEffect(() => {\n async function setInitialLocale() {\n let localeToSet = defaultLocale\n\n if (typeof localeFromParams === 'string') {\n localeToSet = localeFromParams\n } else if (user) {\n try {\n localeToSet = await getPreference<string>('locale')\n } catch (error) {\n // swallow error\n }\n }\n\n await switchLocale(localeToSet)\n }\n\n void setInitialLocale()\n }, [\n defaultLocale,\n getPreference,\n localization,\n localeFromParams,\n setPreference,\n user,\n switchLocale,\n ])\n\n return <LocaleContext.Provider value={locale}>{children}</LocaleContext.Provider>\n}\n\n/**\n * A hook that returns the current locale object.\n */\nexport const useLocale = (): Locale => useContext(LocaleContext)\n"],"names":["React","createContext","useContext","useEffect","useState","findLocaleFromCode","useAuth","useConfig","usePreferences","useSearchParams","LocaleContext","LocaleProvider","children","localization","user","defaultLocale","searchParams","localeFromParams","locale","localeCode","setLocaleCode","setLocale","getPreference","setPreference","switchLocale","useCallback","newLocale","localeToSet","localeCodes","indexOf","error","setInitialLocale","Provider","value","useLocale"],"mappings":"AAAA;;AAIA,OAAOA,SAASC,aAAa,EAAEC,UAAU,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,QAAO;AAE7E,SAASC,kBAAkB,QAAQ,wCAAuC;AAC1E,SAASC,OAAO,QAAQ,mBAAkB;AAC1C,SAASC,SAAS,QAAQ,qBAAoB;AAC9C,SAASC,cAAc,QAAQ,0BAAyB;AACxD,SAASC,eAAe,QAAQ,2BAA0B;AAE1D,MAAMC,8BAAgBT,cAAc,CAAC;AAErC,OAAO,MAAMU,iBAA2D,CAAC,EAAEC,QAAQ,EAAE;IACnF,MAAM,EAAEC,YAAY,EAAE,GAAGN;IAEzB,MAAM,EAAEO,IAAI,EAAE,GAAGR;IACjB,MAAMS,gBACJF,gBAAgBA,aAAaE,aAAa,GAAGF,aAAaE,aAAa,GAAG;IAE5E,MAAM,EAAEC,YAAY,EAAE,GAAGP;IACzB,MAAMQ,mBAAmBD,cAAcE;IAEvC,MAAM,CAACC,YAAYC,cAAc,GAAGhB,SAClC,AAACa,oBAA+BF;IAGlC,MAAM,CAACG,QAAQG,UAAU,GAAGjB,SAC1BS,gBAAgBR,mBAAmBQ,cAAcM;IAGnD,MAAM,EAAEG,aAAa,EAAEC,aAAa,EAAE,GAAGf;IAEzC,MAAMgB,eAAexB,MAAMyB,WAAW,CACpC,OAAOC;QACL,IAAI,CAACb,cAAc;YACjB;QACF;QAEA,MAAMc,cACJd,aAAae,WAAW,CAACC,OAAO,CAACH,aAAa,CAAC,IAAIA,YAAYX;QAEjE,IAAIY,gBAAgBR,YAAY;YAC9BC,cAAcO;YACdN,UAAUhB,mBAAmBQ,cAAcc;YAC3C,IAAI;gBACF,IAAIb,MAAM,MAAMS,cAAc,UAAUI;YAC1C,EAAE,OAAOG,OAAO;YACd,gBAAgB;YAClB;QACF;IACF,GACA;QAACjB;QAAcU;QAAeT;QAAMC;QAAeI;KAAW;IAGhEhB,UAAU;QACR,eAAe4B;YACb,IAAIJ,cAAcZ;YAElB,IAAI,OAAOE,qBAAqB,UAAU;gBACxCU,cAAcV;YAChB,OAAO,IAAIH,MAAM;gBACf,IAAI;oBACFa,cAAc,MAAML,cAAsB;gBAC5C,EAAE,OAAOQ,OAAO;gBACd,gBAAgB;gBAClB;YACF;YAEA,MAAMN,aAAaG;QACrB;QAEA,KAAKI;IACP,GAAG;QACDhB;QACAO;QACAT;QACAI;QACAM;QACAT;QACAU;KACD;IAED,qBAAO,KAACd,cAAcsB,QAAQ;QAACC,OAAOf;kBAASN;;AACjD,EAAC;AAED;;CAEC,GACD,OAAO,MAAMsB,YAAY,IAAchC,WAAWQ,eAAc"}
1
+ {"version":3,"sources":["../../../src/providers/Locale/index.tsx"],"sourcesContent":["'use client'\n\nimport type { Locale } from 'payload'\n\nimport React, { createContext, useContext, useEffect, useState } from 'react'\n\nimport { findLocaleFromCode } from '../../utilities/findLocaleFromCode.js'\nimport { useAuth } from '../Auth/index.js'\nimport { useConfig } from '../Config/index.js'\nimport { usePreferences } from '../Preferences/index.js'\nimport { useSearchParams } from '../SearchParams/index.js'\n\nconst LocaleContext = createContext({} as Locale)\n\nexport const LocaleProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) => {\n const {\n config: { localization },\n } = useConfig()\n\n const { user } = useAuth()\n const defaultLocale =\n localization && localization.defaultLocale ? localization.defaultLocale : 'en'\n\n const { searchParams } = useSearchParams()\n const localeFromParams = searchParams?.locale\n\n const [localeCode, setLocaleCode] = useState<string>(\n (localeFromParams as string) || defaultLocale,\n )\n\n const [locale, setLocale] = useState<Locale | null>(\n localization && findLocaleFromCode(localization, localeCode),\n )\n\n const { getPreference, setPreference } = usePreferences()\n\n const switchLocale = React.useCallback(\n async (newLocale: string) => {\n if (!localization) {\n return\n }\n\n const localeToSet =\n localization.localeCodes.indexOf(newLocale) > -1 ? newLocale : defaultLocale\n\n if (localeToSet !== localeCode) {\n setLocaleCode(localeToSet)\n setLocale(findLocaleFromCode(localization, localeToSet))\n try {\n if (user) await setPreference('locale', localeToSet)\n } catch (error) {\n // swallow error\n }\n }\n },\n [localization, setPreference, user, defaultLocale, localeCode],\n )\n\n useEffect(() => {\n async function setInitialLocale() {\n let localeToSet = defaultLocale\n\n if (typeof localeFromParams === 'string') {\n localeToSet = localeFromParams\n } else if (user) {\n try {\n localeToSet = await getPreference<string>('locale')\n } catch (error) {\n // swallow error\n }\n }\n\n await switchLocale(localeToSet)\n }\n\n void setInitialLocale()\n }, [\n defaultLocale,\n getPreference,\n localization,\n localeFromParams,\n setPreference,\n user,\n switchLocale,\n ])\n\n return <LocaleContext.Provider value={locale}>{children}</LocaleContext.Provider>\n}\n\n/**\n * A hook that returns the current locale object.\n */\nexport const useLocale = (): Locale => useContext(LocaleContext)\n"],"names":["React","createContext","useContext","useEffect","useState","findLocaleFromCode","useAuth","useConfig","usePreferences","useSearchParams","LocaleContext","LocaleProvider","children","config","localization","user","defaultLocale","searchParams","localeFromParams","locale","localeCode","setLocaleCode","setLocale","getPreference","setPreference","switchLocale","useCallback","newLocale","localeToSet","localeCodes","indexOf","error","setInitialLocale","Provider","value","useLocale"],"mappings":"AAAA;;AAIA,OAAOA,SAASC,aAAa,EAAEC,UAAU,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,QAAO;AAE7E,SAASC,kBAAkB,QAAQ,wCAAuC;AAC1E,SAASC,OAAO,QAAQ,mBAAkB;AAC1C,SAASC,SAAS,QAAQ,qBAAoB;AAC9C,SAASC,cAAc,QAAQ,0BAAyB;AACxD,SAASC,eAAe,QAAQ,2BAA0B;AAE1D,MAAMC,8BAAgBT,cAAc,CAAC;AAErC,OAAO,MAAMU,iBAA2D,CAAC,EAAEC,QAAQ,EAAE;IACnF,MAAM,EACJC,QAAQ,EAAEC,YAAY,EAAE,EACzB,GAAGP;IAEJ,MAAM,EAAEQ,IAAI,EAAE,GAAGT;IACjB,MAAMU,gBACJF,gBAAgBA,aAAaE,aAAa,GAAGF,aAAaE,aAAa,GAAG;IAE5E,MAAM,EAAEC,YAAY,EAAE,GAAGR;IACzB,MAAMS,mBAAmBD,cAAcE;IAEvC,MAAM,CAACC,YAAYC,cAAc,GAAGjB,SAClC,AAACc,oBAA+BF;IAGlC,MAAM,CAACG,QAAQG,UAAU,GAAGlB,SAC1BU,gBAAgBT,mBAAmBS,cAAcM;IAGnD,MAAM,EAAEG,aAAa,EAAEC,aAAa,EAAE,GAAGhB;IAEzC,MAAMiB,eAAezB,MAAM0B,WAAW,CACpC,OAAOC;QACL,IAAI,CAACb,cAAc;YACjB;QACF;QAEA,MAAMc,cACJd,aAAae,WAAW,CAACC,OAAO,CAACH,aAAa,CAAC,IAAIA,YAAYX;QAEjE,IAAIY,gBAAgBR,YAAY;YAC9BC,cAAcO;YACdN,UAAUjB,mBAAmBS,cAAcc;YAC3C,IAAI;gBACF,IAAIb,MAAM,MAAMS,cAAc,UAAUI;YAC1C,EAAE,OAAOG,OAAO;YACd,gBAAgB;YAClB;QACF;IACF,GACA;QAACjB;QAAcU;QAAeT;QAAMC;QAAeI;KAAW;IAGhEjB,UAAU;QACR,eAAe6B;YACb,IAAIJ,cAAcZ;YAElB,IAAI,OAAOE,qBAAqB,UAAU;gBACxCU,cAAcV;YAChB,OAAO,IAAIH,MAAM;gBACf,IAAI;oBACFa,cAAc,MAAML,cAAsB;gBAC5C,EAAE,OAAOQ,OAAO;gBACd,gBAAgB;gBAClB;YACF;YAEA,MAAMN,aAAaG;QACrB;QAEA,KAAKI;IACP,GAAG;QACDhB;QACAO;QACAT;QACAI;QACAM;QACAT;QACAU;KACD;IAED,qBAAO,KAACf,cAAcuB,QAAQ;QAACC,OAAOf;kBAASP;;AACjD,EAAC;AAED;;CAEC,GACD,OAAO,MAAMuB,YAAY,IAAcjC,WAAWQ,eAAc"}
@@ -1,5 +1,6 @@
1
- import type { Params } from 'next/dist/shared/lib/router/utils/route-matcher.js';
1
+ import { useParams as useNextParams } from 'next/navigation.js';
2
2
  import React from 'react';
3
+ export type Params = ReturnType<typeof useNextParams>;
3
4
  interface IParamsContext extends Params {
4
5
  }
5
6
  export declare const ParamsProvider: React.FC<{
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Params/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oDAAoD,CAAA;AAGhF,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,UAAU,cAAe,SAAQ,MAAM;CAAG;AAK1C,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAGnE,CAAA;AAED,eAAO,MAAM,SAAS,QAAO,cAAqC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Params/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAA;AACrD,UAAU,cAAe,SAAQ,MAAM;CAAG;AAK1C,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAGnE,CAAA;AAED,eAAO,MAAM,SAAS,QAAO,cAAqC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/providers/Params/index.tsx"],"sourcesContent":["'use client'\nimport type { Params } from 'next/dist/shared/lib/router/utils/route-matcher.js'\n\nimport { useParams as useNextParams } from 'next/navigation.js'\nimport React, { createContext, useContext } from 'react'\n\ninterface IParamsContext extends Params {}\n\nconst Context = createContext<IParamsContext>({} as IParamsContext)\n\n// TODO: abstract the `next/navigation` dependency out from this provider so that it can be used in other contexts\nexport const ParamsProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) => {\n const params = useNextParams()\n return <Context.Provider value={params}>{children}</Context.Provider>\n}\n\nexport const useParams = (): IParamsContext => useContext(Context)\n"],"names":["useParams","useNextParams","React","createContext","useContext","Context","ParamsProvider","children","params","Provider","value"],"mappings":"AAAA;;AAGA,SAASA,aAAaC,aAAa,QAAQ,qBAAoB;AAC/D,OAAOC,SAASC,aAAa,EAAEC,UAAU,QAAQ,QAAO;AAIxD,MAAMC,wBAAUF,cAA8B,CAAC;AAE/C,kHAAkH;AAClH,OAAO,MAAMG,iBAA2D,CAAC,EAAEC,QAAQ,EAAE;IACnF,MAAMC,SAASP;IACf,qBAAO,KAACI,QAAQI,QAAQ;QAACC,OAAOF;kBAASD;;AAC3C,EAAC;AAED,OAAO,MAAMP,YAAY,IAAsBI,WAAWC,SAAQ"}
1
+ {"version":3,"sources":["../../../src/providers/Params/index.tsx"],"sourcesContent":["'use client'\n\nimport { useParams as useNextParams } from 'next/navigation.js'\nimport React, { createContext, useContext } from 'react'\n\nexport type Params = ReturnType<typeof useNextParams>\ninterface IParamsContext extends Params {}\n\nconst Context = createContext<IParamsContext>({} as IParamsContext)\n\n// TODO: abstract the `next/navigation` dependency out from this provider so that it can be used in other contexts\nexport const ParamsProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) => {\n const params = useNextParams()\n return <Context.Provider value={params}>{children}</Context.Provider>\n}\n\nexport const useParams = (): IParamsContext => useContext(Context)\n"],"names":["useParams","useNextParams","React","createContext","useContext","Context","ParamsProvider","children","params","Provider","value"],"mappings":"AAAA;;AAEA,SAASA,aAAaC,aAAa,QAAQ,qBAAoB;AAC/D,OAAOC,SAASC,aAAa,EAAEC,UAAU,QAAQ,QAAO;AAKxD,MAAMC,wBAAUF,cAA8B,CAAC;AAE/C,kHAAkH;AAClH,OAAO,MAAMG,iBAA2D,CAAC,EAAEC,QAAQ,EAAE;IACnF,MAAMC,SAASP;IACf,qBAAO,KAACI,QAAQI,QAAQ;QAACC,OAAOF;kBAASD;;AAC3C,EAAC;AAED,OAAO,MAAMP,YAAY,IAAsBI,WAAWC,SAAQ"}
@@ -20,7 +20,7 @@ export const PreferencesProvider = ({ children })=>{
20
20
  const contextRef = useRef({});
21
21
  const preferencesRef = useRef({});
22
22
  const pendingUpdate = useRef({});
23
- const config = useConfig();
23
+ const { config } = useConfig();
24
24
  const { user } = useAuth();
25
25
  const { i18n } = useTranslation();
26
26
  const { routes: { api }, serverURL } = config;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/providers/Preferences/index.tsx"],"sourcesContent":["'use client'\nimport { dequal } from 'dequal/lite' // lite: no need for Map and Set support\nimport React, { createContext, useCallback, useContext, useEffect, useRef } from 'react'\n\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { useAuth } from '../Auth/index.js'\nimport { useConfig } from '../Config/index.js'\n\ntype PreferencesContext = {\n getPreference: <T = any>(key: string) => Promise<T>\n /**\n * @param key - a string identifier for the property being set\n * @param value - preference data to store\n * @param merge - when true will combine the existing preference object batch the change into one request for objects, default = false\n */\n setPreference: <T = any>(key: string, value: T, merge?: boolean) => Promise<void>\n}\n\nconst Context = createContext({} as PreferencesContext)\n\nconst requestOptions = (value, language) => ({\n body: JSON.stringify({ value }),\n headers: {\n 'Accept-Language': language,\n 'Content-Type': 'application/json',\n },\n})\n\nexport const PreferencesProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) => {\n const contextRef = useRef({} as PreferencesContext)\n const preferencesRef = useRef({})\n const pendingUpdate = useRef({})\n const config = useConfig()\n const { user } = useAuth()\n const { i18n } = useTranslation()\n\n const {\n routes: { api },\n serverURL,\n } = config\n\n useEffect(() => {\n if (!user) {\n // clear preferences between users\n preferencesRef.current = {}\n }\n }, [user])\n\n const getPreference = useCallback(\n async <T = any,>(key: string): Promise<T> => {\n const prefs = preferencesRef.current\n if (typeof prefs[key] !== 'undefined') return prefs[key]\n const promise = new Promise((resolve: (value: T) => void) => {\n void (async () => {\n const request = await requests.get(`${serverURL}${api}/payload-preferences/${key}`, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n let value = null\n if (request.status === 200) {\n const preference = await request.json()\n value = preference.value\n }\n preferencesRef.current[key] = value\n resolve(value)\n })()\n })\n prefs[key] = promise\n return promise\n },\n [i18n.language, api, preferencesRef, serverURL],\n )\n\n const setPreference = useCallback(\n async (key: string, value: unknown, merge = false): Promise<void> => {\n if (merge === false) {\n preferencesRef.current[key] = value\n\n await requests.post(\n `${serverURL}${api}/payload-preferences/${key}`,\n requestOptions(value, i18n.language),\n )\n\n return\n }\n\n let newValue = value\n const currentPreference = await getPreference(key)\n // handle value objects where multiple values can be set under one key\n if (\n typeof value === 'object' &&\n typeof currentPreference === 'object' &&\n typeof newValue === 'object'\n ) {\n // merge the value with any existing preference for the key\n newValue = { ...(currentPreference || {}), ...value }\n\n if (dequal(newValue, currentPreference)) {\n return\n }\n\n // add the requested changes to a pendingUpdate batch for the key\n pendingUpdate.current[key] = {\n ...pendingUpdate.current[key],\n ...(newValue as Record<string, unknown>),\n }\n } else {\n if (newValue === currentPreference) {\n return\n }\n pendingUpdate.current[key] = newValue\n }\n\n const updatePreference = async () => {\n // compare the value stored in context before sending to eliminate duplicate requests\n if (dequal(pendingUpdate.current[key], preferencesRef.current[key])) {\n return\n }\n\n // preference set in context here to prevent other updatePreference at the same time\n preferencesRef.current[key] = pendingUpdate.current[key]\n\n await requests.post(\n `${serverURL}${api}/payload-preferences/${key}`,\n requestOptions(preferencesRef.current[key], i18n.language),\n )\n\n // reset any changes for this key after sending the request\n delete pendingUpdate.current[key]\n }\n\n // use timeout to allow multiple changes of different values using the same key in one request\n setTimeout(() => {\n void updatePreference()\n })\n },\n [api, getPreference, i18n.language, pendingUpdate, serverURL],\n )\n\n contextRef.current.getPreference = getPreference\n contextRef.current.setPreference = setPreference\n\n return <Context.Provider value={contextRef.current}>{children}</Context.Provider>\n}\n\nexport const usePreferences = (): PreferencesContext => useContext(Context)\n"],"names":["dequal","React","createContext","useCallback","useContext","useEffect","useRef","useTranslation","requests","useAuth","useConfig","Context","requestOptions","value","language","body","JSON","stringify","headers","PreferencesProvider","children","contextRef","preferencesRef","pendingUpdate","config","user","i18n","routes","api","serverURL","current","getPreference","key","prefs","promise","Promise","resolve","request","get","status","preference","json","setPreference","merge","post","newValue","currentPreference","updatePreference","setTimeout","Provider","usePreferences"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/providers/Preferences/index.tsx"],"sourcesContent":["'use client'\nimport { dequal } from 'dequal/lite' // lite: no need for Map and Set support\nimport React, { createContext, useCallback, useContext, useEffect, useRef } from 'react'\n\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { useAuth } from '../Auth/index.js'\nimport { useConfig } from '../Config/index.js'\n\ntype PreferencesContext = {\n getPreference: <T = any>(key: string) => Promise<T>\n /**\n * @param key - a string identifier for the property being set\n * @param value - preference data to store\n * @param merge - when true will combine the existing preference object batch the change into one request for objects, default = false\n */\n setPreference: <T = any>(key: string, value: T, merge?: boolean) => Promise<void>\n}\n\nconst Context = createContext({} as PreferencesContext)\n\nconst requestOptions = (value, language) => ({\n body: JSON.stringify({ value }),\n headers: {\n 'Accept-Language': language,\n 'Content-Type': 'application/json',\n },\n})\n\nexport const PreferencesProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) => {\n const contextRef = useRef({} as PreferencesContext)\n const preferencesRef = useRef({})\n const pendingUpdate = useRef({})\n const { config } = useConfig()\n const { user } = useAuth()\n const { i18n } = useTranslation()\n\n const {\n routes: { api },\n serverURL,\n } = config\n\n useEffect(() => {\n if (!user) {\n // clear preferences between users\n preferencesRef.current = {}\n }\n }, [user])\n\n const getPreference = useCallback(\n async <T = any,>(key: string): Promise<T> => {\n const prefs = preferencesRef.current\n if (typeof prefs[key] !== 'undefined') return prefs[key]\n const promise = new Promise((resolve: (value: T) => void) => {\n void (async () => {\n const request = await requests.get(`${serverURL}${api}/payload-preferences/${key}`, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n let value = null\n if (request.status === 200) {\n const preference = await request.json()\n value = preference.value\n }\n preferencesRef.current[key] = value\n resolve(value)\n })()\n })\n prefs[key] = promise\n return promise\n },\n [i18n.language, api, preferencesRef, serverURL],\n )\n\n const setPreference = useCallback(\n async (key: string, value: unknown, merge = false): Promise<void> => {\n if (merge === false) {\n preferencesRef.current[key] = value\n\n await requests.post(\n `${serverURL}${api}/payload-preferences/${key}`,\n requestOptions(value, i18n.language),\n )\n\n return\n }\n\n let newValue = value\n const currentPreference = await getPreference(key)\n // handle value objects where multiple values can be set under one key\n if (\n typeof value === 'object' &&\n typeof currentPreference === 'object' &&\n typeof newValue === 'object'\n ) {\n // merge the value with any existing preference for the key\n newValue = { ...(currentPreference || {}), ...value }\n\n if (dequal(newValue, currentPreference)) {\n return\n }\n\n // add the requested changes to a pendingUpdate batch for the key\n pendingUpdate.current[key] = {\n ...pendingUpdate.current[key],\n ...(newValue as Record<string, unknown>),\n }\n } else {\n if (newValue === currentPreference) {\n return\n }\n pendingUpdate.current[key] = newValue\n }\n\n const updatePreference = async () => {\n // compare the value stored in context before sending to eliminate duplicate requests\n if (dequal(pendingUpdate.current[key], preferencesRef.current[key])) {\n return\n }\n\n // preference set in context here to prevent other updatePreference at the same time\n preferencesRef.current[key] = pendingUpdate.current[key]\n\n await requests.post(\n `${serverURL}${api}/payload-preferences/${key}`,\n requestOptions(preferencesRef.current[key], i18n.language),\n )\n\n // reset any changes for this key after sending the request\n delete pendingUpdate.current[key]\n }\n\n // use timeout to allow multiple changes of different values using the same key in one request\n setTimeout(() => {\n void updatePreference()\n })\n },\n [api, getPreference, i18n.language, pendingUpdate, serverURL],\n )\n\n contextRef.current.getPreference = getPreference\n contextRef.current.setPreference = setPreference\n\n return <Context.Provider value={contextRef.current}>{children}</Context.Provider>\n}\n\nexport const usePreferences = (): PreferencesContext => useContext(Context)\n"],"names":["dequal","React","createContext","useCallback","useContext","useEffect","useRef","useTranslation","requests","useAuth","useConfig","Context","requestOptions","value","language","body","JSON","stringify","headers","PreferencesProvider","children","contextRef","preferencesRef","pendingUpdate","config","user","i18n","routes","api","serverURL","current","getPreference","key","prefs","promise","Promise","resolve","request","get","status","preference","json","setPreference","merge","post","newValue","currentPreference","updatePreference","setTimeout","Provider","usePreferences"],"mappings":"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"}
@@ -1,19 +1,20 @@
1
1
  import type { I18nClient, Language } from '@payloadcms/translations';
2
- import type { ClientConfig, LanguageOptions } from 'payload';
2
+ import type { ClientConfig, LanguageOptions, Permissions, User } from 'payload';
3
3
  import React from 'react';
4
- import type { ComponentMap } from '../ComponentMap/buildComponentMap/types.js';
5
4
  import type { Theme } from '../Theme/index.js';
6
5
  type Props = {
7
6
  children: React.ReactNode;
8
- componentMap: ComponentMap;
9
7
  config: ClientConfig;
10
8
  dateFNSKey: Language['dateFNSKey'];
11
9
  fallbackLang: ClientConfig['i18n']['fallbackLanguage'];
10
+ isNavOpen?: boolean;
12
11
  languageCode: string;
13
12
  languageOptions: LanguageOptions;
13
+ permissions: Permissions;
14
14
  switchLanguageServerAction?: (lang: string) => Promise<void>;
15
15
  theme: Theme;
16
16
  translations: I18nClient['translations'];
17
+ user: User | null;
17
18
  };
18
19
  export declare const RootProvider: React.FC<Props>;
19
20
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Root/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAK5D,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAA;AAC9E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAsB9C,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,YAAY,EAAE,YAAY,CAAA;IAC1B,MAAM,EAAE,YAAY,CAAA;IACpB,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAA;IAClC,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAA;IACtD,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,eAAe,CAAA;IAChC,0BAA0B,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5D,KAAK,EAAE,KAAK,CAAA;IACZ,YAAY,EAAE,UAAU,CAAC,cAAc,CAAC,CAAA;CACzC,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAwExC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Root/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAK/E,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAsB9C,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,MAAM,EAAE,YAAY,CAAA;IACpB,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAA;IAClC,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAA;IACtD,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,eAAe,CAAA;IAChC,WAAW,EAAE,WAAW,CAAA;IACxB,0BAA0B,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5D,KAAK,EAAE,KAAK,CAAA;IACZ,YAAY,EAAE,UAAU,CAAC,cAAc,CAAC,CAAA;IACxC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA0ExC,CAAA"}
@@ -8,10 +8,10 @@ import { LoadingOverlayProvider } from '../../elements/LoadingOverlay/index.js';
8
8
  import { NavProvider } from '../../elements/Nav/context.js';
9
9
  import { StayLoggedInModal } from '../../elements/StayLoggedIn/index.js';
10
10
  import { StepNavProvider } from '../../elements/StepNav/index.js';
11
+ import { fieldComponents } from '../../fields/index.js';
11
12
  import { ActionsProvider } from '../Actions/index.js';
12
13
  import { AuthProvider } from '../Auth/index.js';
13
14
  import { ClientFunctionProvider } from '../ClientFunction/index.js';
14
- import { ComponentMapProvider } from '../ComponentMap/index.js';
15
15
  import { ConfigProvider } from '../Config/index.js';
16
16
  import { DocumentEventsProvider } from '../DocumentEvents/index.js';
17
17
  import { FieldComponentsProvider } from '../FieldComponents/index.js';
@@ -23,51 +23,52 @@ import { SearchParamsProvider } from '../SearchParams/index.js';
23
23
  import { ThemeProvider } from '../Theme/index.js';
24
24
  import { ToastContainer } from '../ToastContainer/index.js';
25
25
  import { TranslationProvider } from '../Translation/index.js';
26
- export const RootProvider = ({ children, componentMap, config, dateFNSKey, fallbackLang, languageCode, languageOptions, switchLanguageServerAction, theme, translations })=>{
26
+ export const RootProvider = ({ children, config, dateFNSKey, fallbackLang, isNavOpen, languageCode, languageOptions, permissions, switchLanguageServerAction, theme, translations, user })=>{
27
27
  return /*#__PURE__*/ _jsxs(Fragment, {
28
28
  children: [
29
29
  /*#__PURE__*/ _jsx(RouteCache, {
30
30
  children: /*#__PURE__*/ _jsx(ConfigProvider, {
31
31
  config: config,
32
- children: /*#__PURE__*/ _jsx(ComponentMapProvider, {
33
- componentMap: componentMap,
34
- children: /*#__PURE__*/ _jsx(FieldComponentsProvider, {
35
- children: /*#__PURE__*/ _jsx(ClientFunctionProvider, {
36
- children: /*#__PURE__*/ _jsx(TranslationProvider, {
37
- dateFNSKey: dateFNSKey,
38
- fallbackLang: fallbackLang,
39
- language: languageCode,
40
- languageOptions: languageOptions,
41
- switchLanguageServerAction: switchLanguageServerAction,
42
- translations: translations,
43
- children: /*#__PURE__*/ _jsx(WindowInfoProvider, {
44
- breakpoints: {
45
- l: '(max-width: 1440px)',
46
- m: '(max-width: 1024px)',
47
- s: '(max-width: 768px)',
48
- xs: '(max-width: 400px)'
49
- },
50
- children: /*#__PURE__*/ _jsx(ScrollInfoProvider, {
51
- children: /*#__PURE__*/ _jsx(SearchParamsProvider, {
52
- children: /*#__PURE__*/ _jsx(ModalProvider, {
53
- classPrefix: "payload",
54
- transTime: 0,
55
- zIndex: "var(--z-modal)",
56
- children: /*#__PURE__*/ _jsxs(AuthProvider, {
57
- children: [
58
- /*#__PURE__*/ _jsx(PreferencesProvider, {
59
- children: /*#__PURE__*/ _jsx(ThemeProvider, {
60
- cookiePrefix: config.cookiePrefix,
61
- theme: theme,
62
- children: /*#__PURE__*/ _jsx(ParamsProvider, {
63
- children: /*#__PURE__*/ _jsx(LocaleProvider, {
64
- children: /*#__PURE__*/ _jsx(StepNavProvider, {
65
- children: /*#__PURE__*/ _jsx(LoadingOverlayProvider, {
66
- children: /*#__PURE__*/ _jsx(DocumentEventsProvider, {
67
- children: /*#__PURE__*/ _jsx(ActionsProvider, {
68
- children: /*#__PURE__*/ _jsx(NavProvider, {
69
- children: children
70
- })
32
+ children: /*#__PURE__*/ _jsx(FieldComponentsProvider, {
33
+ fieldComponents: fieldComponents,
34
+ children: /*#__PURE__*/ _jsx(ClientFunctionProvider, {
35
+ children: /*#__PURE__*/ _jsx(TranslationProvider, {
36
+ dateFNSKey: dateFNSKey,
37
+ fallbackLang: fallbackLang,
38
+ language: languageCode,
39
+ languageOptions: languageOptions,
40
+ switchLanguageServerAction: switchLanguageServerAction,
41
+ translations: translations,
42
+ children: /*#__PURE__*/ _jsx(WindowInfoProvider, {
43
+ breakpoints: {
44
+ l: '(max-width: 1440px)',
45
+ m: '(max-width: 1024px)',
46
+ s: '(max-width: 768px)',
47
+ xs: '(max-width: 400px)'
48
+ },
49
+ children: /*#__PURE__*/ _jsx(ScrollInfoProvider, {
50
+ children: /*#__PURE__*/ _jsx(SearchParamsProvider, {
51
+ children: /*#__PURE__*/ _jsx(ModalProvider, {
52
+ classPrefix: "payload",
53
+ transTime: 0,
54
+ zIndex: "var(--z-modal)",
55
+ children: /*#__PURE__*/ _jsxs(AuthProvider, {
56
+ permissions: permissions,
57
+ user: user,
58
+ children: [
59
+ /*#__PURE__*/ _jsx(PreferencesProvider, {
60
+ children: /*#__PURE__*/ _jsx(ThemeProvider, {
61
+ cookiePrefix: config.cookiePrefix,
62
+ theme: theme,
63
+ children: /*#__PURE__*/ _jsx(ParamsProvider, {
64
+ children: /*#__PURE__*/ _jsx(LocaleProvider, {
65
+ children: /*#__PURE__*/ _jsx(StepNavProvider, {
66
+ children: /*#__PURE__*/ _jsx(LoadingOverlayProvider, {
67
+ children: /*#__PURE__*/ _jsx(DocumentEventsProvider, {
68
+ children: /*#__PURE__*/ _jsx(ActionsProvider, {
69
+ children: /*#__PURE__*/ _jsx(NavProvider, {
70
+ initialIsOpen: isNavOpen,
71
+ children: children
71
72
  })
72
73
  })
73
74
  })
@@ -75,11 +76,11 @@ export const RootProvider = ({ children, componentMap, config, dateFNSKey, fallb
75
76
  })
76
77
  })
77
78
  })
78
- }),
79
- /*#__PURE__*/ _jsx(ModalContainer, {}),
80
- /*#__PURE__*/ _jsx(StayLoggedInModal, {})
81
- ]
82
- })
79
+ })
80
+ }),
81
+ /*#__PURE__*/ _jsx(ModalContainer, {}),
82
+ /*#__PURE__*/ _jsx(StayLoggedInModal, {})
83
+ ]
83
84
  })
84
85
  })
85
86
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/providers/Root/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient, Language } from '@payloadcms/translations'\nimport type { ClientConfig, LanguageOptions } from 'payload'\n\nimport { ModalContainer, ModalProvider } from '@faceless-ui/modal'\nimport { ScrollInfoProvider } from '@faceless-ui/scroll-info'\nimport { WindowInfoProvider } from '@faceless-ui/window-info'\nimport React, { Fragment } from 'react'\n\nimport type { ComponentMap } from '../ComponentMap/buildComponentMap/types.js'\nimport type { Theme } from '../Theme/index.js'\n\nimport { LoadingOverlayProvider } from '../../elements/LoadingOverlay/index.js'\nimport { NavProvider } from '../../elements/Nav/context.js'\nimport { StayLoggedInModal } from '../../elements/StayLoggedIn/index.js'\nimport { StepNavProvider } from '../../elements/StepNav/index.js'\nimport { ActionsProvider } from '../Actions/index.js'\nimport { AuthProvider } from '../Auth/index.js'\nimport { ClientFunctionProvider } from '../ClientFunction/index.js'\nimport { ComponentMapProvider } from '../ComponentMap/index.js'\nimport { ConfigProvider } from '../Config/index.js'\nimport { DocumentEventsProvider } from '../DocumentEvents/index.js'\nimport { FieldComponentsProvider } from '../FieldComponents/index.js'\nimport { LocaleProvider } from '../Locale/index.js'\nimport { ParamsProvider } from '../Params/index.js'\nimport { PreferencesProvider } from '../Preferences/index.js'\nimport { RouteCache } from '../RouteCache/index.js'\nimport { SearchParamsProvider } from '../SearchParams/index.js'\nimport { ThemeProvider } from '../Theme/index.js'\nimport { ToastContainer } from '../ToastContainer/index.js'\nimport { TranslationProvider } from '../Translation/index.js'\n\ntype Props = {\n children: React.ReactNode\n componentMap: ComponentMap\n config: ClientConfig\n dateFNSKey: Language['dateFNSKey']\n fallbackLang: ClientConfig['i18n']['fallbackLanguage']\n languageCode: string\n languageOptions: LanguageOptions\n switchLanguageServerAction?: (lang: string) => Promise<void>\n theme: Theme\n translations: I18nClient['translations']\n}\n\nexport const RootProvider: React.FC<Props> = ({\n children,\n componentMap,\n config,\n dateFNSKey,\n fallbackLang,\n languageCode,\n languageOptions,\n switchLanguageServerAction,\n theme,\n translations,\n}) => {\n return (\n <Fragment>\n <RouteCache>\n <ConfigProvider config={config}>\n <ComponentMapProvider componentMap={componentMap}>\n <FieldComponentsProvider>\n <ClientFunctionProvider>\n <TranslationProvider\n dateFNSKey={dateFNSKey}\n fallbackLang={fallbackLang}\n language={languageCode}\n languageOptions={languageOptions}\n switchLanguageServerAction={switchLanguageServerAction}\n translations={translations}\n >\n <WindowInfoProvider\n breakpoints={{\n l: '(max-width: 1440px)',\n m: '(max-width: 1024px)',\n s: '(max-width: 768px)',\n xs: '(max-width: 400px)',\n }}\n >\n <ScrollInfoProvider>\n <SearchParamsProvider>\n <ModalProvider classPrefix=\"payload\" transTime={0} zIndex=\"var(--z-modal)\">\n <AuthProvider>\n <PreferencesProvider>\n <ThemeProvider cookiePrefix={config.cookiePrefix} theme={theme}>\n <ParamsProvider>\n <LocaleProvider>\n <StepNavProvider>\n <LoadingOverlayProvider>\n <DocumentEventsProvider>\n <ActionsProvider>\n <NavProvider>{children}</NavProvider>\n </ActionsProvider>\n </DocumentEventsProvider>\n </LoadingOverlayProvider>\n </StepNavProvider>\n </LocaleProvider>\n </ParamsProvider>\n </ThemeProvider>\n </PreferencesProvider>\n <ModalContainer />\n <StayLoggedInModal />\n </AuthProvider>\n </ModalProvider>\n </SearchParamsProvider>\n </ScrollInfoProvider>\n </WindowInfoProvider>\n </TranslationProvider>\n </ClientFunctionProvider>\n </FieldComponentsProvider>\n </ComponentMapProvider>\n </ConfigProvider>\n </RouteCache>\n <ToastContainer />\n </Fragment>\n )\n}\n"],"names":["ModalContainer","ModalProvider","ScrollInfoProvider","WindowInfoProvider","React","Fragment","LoadingOverlayProvider","NavProvider","StayLoggedInModal","StepNavProvider","ActionsProvider","AuthProvider","ClientFunctionProvider","ComponentMapProvider","ConfigProvider","DocumentEventsProvider","FieldComponentsProvider","LocaleProvider","ParamsProvider","PreferencesProvider","RouteCache","SearchParamsProvider","ThemeProvider","ToastContainer","TranslationProvider","RootProvider","children","componentMap","config","dateFNSKey","fallbackLang","languageCode","languageOptions","switchLanguageServerAction","theme","translations","language","breakpoints","l","m","s","xs","classPrefix","transTime","zIndex","cookiePrefix"],"mappings":"AAAA;;AAIA,SAASA,cAAc,EAAEC,aAAa,QAAQ,qBAAoB;AAClE,SAASC,kBAAkB,QAAQ,2BAA0B;AAC7D,SAASC,kBAAkB,QAAQ,2BAA0B;AAC7D,OAAOC,SAASC,QAAQ,QAAQ,QAAO;AAKvC,SAASC,sBAAsB,QAAQ,yCAAwC;AAC/E,SAASC,WAAW,QAAQ,gCAA+B;AAC3D,SAASC,iBAAiB,QAAQ,uCAAsC;AACxE,SAASC,eAAe,QAAQ,kCAAiC;AACjE,SAASC,eAAe,QAAQ,sBAAqB;AACrD,SAASC,YAAY,QAAQ,mBAAkB;AAC/C,SAASC,sBAAsB,QAAQ,6BAA4B;AACnE,SAASC,oBAAoB,QAAQ,2BAA0B;AAC/D,SAASC,cAAc,QAAQ,qBAAoB;AACnD,SAASC,sBAAsB,QAAQ,6BAA4B;AACnE,SAASC,uBAAuB,QAAQ,8BAA6B;AACrE,SAASC,cAAc,QAAQ,qBAAoB;AACnD,SAASC,cAAc,QAAQ,qBAAoB;AACnD,SAASC,mBAAmB,QAAQ,0BAAyB;AAC7D,SAASC,UAAU,QAAQ,yBAAwB;AACnD,SAASC,oBAAoB,QAAQ,2BAA0B;AAC/D,SAASC,aAAa,QAAQ,oBAAmB;AACjD,SAASC,cAAc,QAAQ,6BAA4B;AAC3D,SAASC,mBAAmB,QAAQ,0BAAyB;AAe7D,OAAO,MAAMC,eAAgC,CAAC,EAC5CC,QAAQ,EACRC,YAAY,EACZC,MAAM,EACNC,UAAU,EACVC,YAAY,EACZC,YAAY,EACZC,eAAe,EACfC,0BAA0B,EAC1BC,KAAK,EACLC,YAAY,EACb;IACC,qBACE,MAAC9B;;0BACC,KAACe;0BACC,cAAA,KAACN;oBAAec,QAAQA;8BACtB,cAAA,KAACf;wBAAqBc,cAAcA;kCAClC,cAAA,KAACX;sCACC,cAAA,KAACJ;0CACC,cAAA,KAACY;oCACCK,YAAYA;oCACZC,cAAcA;oCACdM,UAAUL;oCACVC,iBAAiBA;oCACjBC,4BAA4BA;oCAC5BE,cAAcA;8CAEd,cAAA,KAAChC;wCACCkC,aAAa;4CACXC,GAAG;4CACHC,GAAG;4CACHC,GAAG;4CACHC,IAAI;wCACN;kDAEA,cAAA,KAACvC;sDACC,cAAA,KAACmB;0DACC,cAAA,KAACpB;oDAAcyC,aAAY;oDAAUC,WAAW;oDAAGC,QAAO;8DACxD,cAAA,MAACjC;;0EACC,KAACQ;0EACC,cAAA,KAACG;oEAAcuB,cAAcjB,OAAOiB,YAAY;oEAAEX,OAAOA;8EACvD,cAAA,KAAChB;kFACC,cAAA,KAACD;sFACC,cAAA,KAACR;0FACC,cAAA,KAACH;8FACC,cAAA,KAACS;kGACC,cAAA,KAACL;sGACC,cAAA,KAACH;0GAAamB;;;;;;;;;;0EAS9B,KAAC1B;0EACD,KAACQ;;;;;;;;;;;;;0BAYvB,KAACe;;;AAGP,EAAC"}
1
+ {"version":3,"sources":["../../../src/providers/Root/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient, Language } from '@payloadcms/translations'\nimport type { ClientConfig, LanguageOptions, Permissions, User } from 'payload'\n\nimport { ModalContainer, ModalProvider } from '@faceless-ui/modal'\nimport { ScrollInfoProvider } from '@faceless-ui/scroll-info'\nimport { WindowInfoProvider } from '@faceless-ui/window-info'\nimport React, { Fragment } from 'react'\n\nimport type { Theme } from '../Theme/index.js'\n\nimport { LoadingOverlayProvider } from '../../elements/LoadingOverlay/index.js'\nimport { NavProvider } from '../../elements/Nav/context.js'\nimport { StayLoggedInModal } from '../../elements/StayLoggedIn/index.js'\nimport { StepNavProvider } from '../../elements/StepNav/index.js'\nimport { fieldComponents } from '../../fields/index.js'\nimport { ActionsProvider } from '../Actions/index.js'\nimport { AuthProvider } from '../Auth/index.js'\nimport { ClientFunctionProvider } from '../ClientFunction/index.js'\nimport { ConfigProvider } from '../Config/index.js'\nimport { DocumentEventsProvider } from '../DocumentEvents/index.js'\nimport { FieldComponentsProvider } from '../FieldComponents/index.js'\nimport { LocaleProvider } from '../Locale/index.js'\nimport { ParamsProvider } from '../Params/index.js'\nimport { PreferencesProvider } from '../Preferences/index.js'\nimport { RouteCache } from '../RouteCache/index.js'\nimport { SearchParamsProvider } from '../SearchParams/index.js'\nimport { ThemeProvider } from '../Theme/index.js'\nimport { ToastContainer } from '../ToastContainer/index.js'\nimport { TranslationProvider } from '../Translation/index.js'\n\ntype Props = {\n children: React.ReactNode\n config: ClientConfig\n dateFNSKey: Language['dateFNSKey']\n fallbackLang: ClientConfig['i18n']['fallbackLanguage']\n isNavOpen?: boolean\n languageCode: string\n languageOptions: LanguageOptions\n permissions: Permissions\n switchLanguageServerAction?: (lang: string) => Promise<void>\n theme: Theme\n translations: I18nClient['translations']\n user: User | null\n}\n\nexport const RootProvider: React.FC<Props> = ({\n children,\n config,\n dateFNSKey,\n fallbackLang,\n isNavOpen,\n languageCode,\n languageOptions,\n permissions,\n switchLanguageServerAction,\n theme,\n translations,\n user,\n}) => {\n return (\n <Fragment>\n <RouteCache>\n <ConfigProvider config={config}>\n <FieldComponentsProvider fieldComponents={fieldComponents}>\n <ClientFunctionProvider>\n <TranslationProvider\n dateFNSKey={dateFNSKey}\n fallbackLang={fallbackLang}\n language={languageCode}\n languageOptions={languageOptions}\n switchLanguageServerAction={switchLanguageServerAction}\n translations={translations}\n >\n <WindowInfoProvider\n breakpoints={{\n l: '(max-width: 1440px)',\n m: '(max-width: 1024px)',\n s: '(max-width: 768px)',\n xs: '(max-width: 400px)',\n }}\n >\n <ScrollInfoProvider>\n <SearchParamsProvider>\n <ModalProvider classPrefix=\"payload\" transTime={0} zIndex=\"var(--z-modal)\">\n <AuthProvider permissions={permissions} user={user}>\n <PreferencesProvider>\n <ThemeProvider cookiePrefix={config.cookiePrefix} theme={theme}>\n <ParamsProvider>\n <LocaleProvider>\n <StepNavProvider>\n <LoadingOverlayProvider>\n <DocumentEventsProvider>\n <ActionsProvider>\n <NavProvider initialIsOpen={isNavOpen}>\n {children}\n </NavProvider>\n </ActionsProvider>\n </DocumentEventsProvider>\n </LoadingOverlayProvider>\n </StepNavProvider>\n </LocaleProvider>\n </ParamsProvider>\n </ThemeProvider>\n </PreferencesProvider>\n <ModalContainer />\n <StayLoggedInModal />\n </AuthProvider>\n </ModalProvider>\n </SearchParamsProvider>\n </ScrollInfoProvider>\n </WindowInfoProvider>\n </TranslationProvider>\n </ClientFunctionProvider>\n </FieldComponentsProvider>\n </ConfigProvider>\n </RouteCache>\n <ToastContainer />\n </Fragment>\n )\n}\n"],"names":["ModalContainer","ModalProvider","ScrollInfoProvider","WindowInfoProvider","React","Fragment","LoadingOverlayProvider","NavProvider","StayLoggedInModal","StepNavProvider","fieldComponents","ActionsProvider","AuthProvider","ClientFunctionProvider","ConfigProvider","DocumentEventsProvider","FieldComponentsProvider","LocaleProvider","ParamsProvider","PreferencesProvider","RouteCache","SearchParamsProvider","ThemeProvider","ToastContainer","TranslationProvider","RootProvider","children","config","dateFNSKey","fallbackLang","isNavOpen","languageCode","languageOptions","permissions","switchLanguageServerAction","theme","translations","user","language","breakpoints","l","m","s","xs","classPrefix","transTime","zIndex","cookiePrefix","initialIsOpen"],"mappings":"AAAA;;AAIA,SAASA,cAAc,EAAEC,aAAa,QAAQ,qBAAoB;AAClE,SAASC,kBAAkB,QAAQ,2BAA0B;AAC7D,SAASC,kBAAkB,QAAQ,2BAA0B;AAC7D,OAAOC,SAASC,QAAQ,QAAQ,QAAO;AAIvC,SAASC,sBAAsB,QAAQ,yCAAwC;AAC/E,SAASC,WAAW,QAAQ,gCAA+B;AAC3D,SAASC,iBAAiB,QAAQ,uCAAsC;AACxE,SAASC,eAAe,QAAQ,kCAAiC;AACjE,SAASC,eAAe,QAAQ,wBAAuB;AACvD,SAASC,eAAe,QAAQ,sBAAqB;AACrD,SAASC,YAAY,QAAQ,mBAAkB;AAC/C,SAASC,sBAAsB,QAAQ,6BAA4B;AACnE,SAASC,cAAc,QAAQ,qBAAoB;AACnD,SAASC,sBAAsB,QAAQ,6BAA4B;AACnE,SAASC,uBAAuB,QAAQ,8BAA6B;AACrE,SAASC,cAAc,QAAQ,qBAAoB;AACnD,SAASC,cAAc,QAAQ,qBAAoB;AACnD,SAASC,mBAAmB,QAAQ,0BAAyB;AAC7D,SAASC,UAAU,QAAQ,yBAAwB;AACnD,SAASC,oBAAoB,QAAQ,2BAA0B;AAC/D,SAASC,aAAa,QAAQ,oBAAmB;AACjD,SAASC,cAAc,QAAQ,6BAA4B;AAC3D,SAASC,mBAAmB,QAAQ,0BAAyB;AAiB7D,OAAO,MAAMC,eAAgC,CAAC,EAC5CC,QAAQ,EACRC,MAAM,EACNC,UAAU,EACVC,YAAY,EACZC,SAAS,EACTC,YAAY,EACZC,eAAe,EACfC,WAAW,EACXC,0BAA0B,EAC1BC,KAAK,EACLC,YAAY,EACZC,IAAI,EACL;IACC,qBACE,MAAChC;;0BACC,KAACe;0BACC,cAAA,KAACN;oBAAea,QAAQA;8BACtB,cAAA,KAACX;wBAAwBN,iBAAiBA;kCACxC,cAAA,KAACG;sCACC,cAAA,KAACW;gCACCI,YAAYA;gCACZC,cAAcA;gCACdS,UAAUP;gCACVC,iBAAiBA;gCACjBE,4BAA4BA;gCAC5BE,cAAcA;0CAEd,cAAA,KAACjC;oCACCoC,aAAa;wCACXC,GAAG;wCACHC,GAAG;wCACHC,GAAG;wCACHC,IAAI;oCACN;8CAEA,cAAA,KAACzC;kDACC,cAAA,KAACmB;sDACC,cAAA,KAACpB;gDAAc2C,aAAY;gDAAUC,WAAW;gDAAGC,QAAO;0DACxD,cAAA,MAAClC;oDAAaqB,aAAaA;oDAAaI,MAAMA;;sEAC5C,KAAClB;sEACC,cAAA,KAACG;gEAAcyB,cAAcpB,OAAOoB,YAAY;gEAAEZ,OAAOA;0EACvD,cAAA,KAACjB;8EACC,cAAA,KAACD;kFACC,cAAA,KAACR;sFACC,cAAA,KAACH;0FACC,cAAA,KAACS;8FACC,cAAA,KAACJ;kGACC,cAAA,KAACJ;4FAAYyC,eAAelB;sGACzBJ;;;;;;;;;;sEAUnB,KAAC1B;sEACD,KAACQ;;;;;;;;;;;;0BAWrB,KAACe;;;AAGP,EAAC"}