@payloadcms/ui 3.0.0-alpha.49 → 3.0.0-alpha.50

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 (442) hide show
  1. package/dist/elements/Autosave/index.d.ts.map +1 -1
  2. package/dist/elements/Autosave/index.js +2 -43
  3. package/dist/elements/Autosave/index.js.map +1 -1
  4. package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
  5. package/dist/elements/ColumnSelector/index.js +2 -5
  6. package/dist/elements/ColumnSelector/index.js.map +1 -1
  7. package/dist/elements/DeleteDocument/index.js +2 -2
  8. package/dist/elements/DeleteDocument/index.js.map +1 -1
  9. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  10. package/dist/elements/DocumentControls/index.js +13 -4
  11. package/dist/elements/DocumentControls/index.js.map +1 -1
  12. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  13. package/dist/elements/DocumentDrawer/DrawerContent.js +31 -112
  14. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  15. package/dist/elements/DocumentDrawer/types.d.ts +0 -2
  16. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  17. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  18. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts +1 -0
  19. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts.map +1 -1
  20. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +8 -2
  21. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  22. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
  23. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +1 -0
  24. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  25. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  26. package/dist/elements/DocumentHeader/Tabs/index.js +4 -0
  27. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  28. package/dist/elements/EditMany/index.d.ts.map +1 -1
  29. package/dist/elements/EditMany/index.js +3 -25
  30. package/dist/elements/EditMany/index.js.map +1 -1
  31. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  32. package/dist/elements/FieldSelect/index.js +39 -12
  33. package/dist/elements/FieldSelect/index.js.map +1 -1
  34. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  35. package/dist/elements/FileDetails/index.js +2 -1
  36. package/dist/elements/FileDetails/index.js.map +1 -1
  37. package/dist/elements/ListControls/index.d.ts +0 -1
  38. package/dist/elements/ListControls/index.d.ts.map +1 -1
  39. package/dist/elements/ListControls/index.js +7 -6
  40. package/dist/elements/ListControls/index.js.map +1 -1
  41. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  42. package/dist/elements/ListDrawer/DrawerContent.js +5 -9
  43. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  44. package/dist/elements/Nav/index.client.d.ts +3 -0
  45. package/dist/elements/Nav/index.client.d.ts.map +1 -0
  46. package/dist/elements/Nav/index.client.js +77 -0
  47. package/dist/elements/Nav/index.client.js.map +1 -0
  48. package/dist/elements/Nav/index.d.ts +3 -7
  49. package/dist/elements/Nav/index.d.ts.map +1 -1
  50. package/dist/elements/Nav/index.js +4 -66
  51. package/dist/elements/Nav/index.js.map +1 -1
  52. package/dist/elements/PerPage/index.d.ts +1 -0
  53. package/dist/elements/PerPage/index.d.ts.map +1 -1
  54. package/dist/elements/PerPage/index.js +6 -4
  55. package/dist/elements/PerPage/index.js.map +1 -1
  56. package/dist/elements/PreviewButton/index.d.ts +4 -6
  57. package/dist/elements/PreviewButton/index.d.ts.map +1 -1
  58. package/dist/elements/PreviewButton/index.js +11 -65
  59. package/dist/elements/PreviewButton/index.js.map +1 -1
  60. package/dist/elements/PreviewButton/usePreviewURL.d.ts +9 -0
  61. package/dist/elements/PreviewButton/usePreviewURL.d.ts.map +1 -0
  62. package/dist/elements/PreviewButton/usePreviewURL.js +57 -0
  63. package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -0
  64. package/dist/elements/Publish/index.d.ts +4 -2
  65. package/dist/elements/Publish/index.d.ts.map +1 -1
  66. package/dist/elements/Publish/index.js +15 -25
  67. package/dist/elements/Publish/index.js.map +1 -1
  68. package/dist/elements/ReactSelect/MultiValue/index.d.ts.map +1 -1
  69. package/dist/elements/ReactSelect/MultiValue/index.js +2 -1
  70. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  71. package/dist/elements/ReactSelect/ValueContainer/index.scss +4 -0
  72. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  73. package/dist/elements/ReactSelect/index.js +4 -1
  74. package/dist/elements/ReactSelect/index.js.map +1 -1
  75. package/dist/elements/ReactSelect/types.d.ts +2 -0
  76. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  77. package/dist/elements/ReactSelect/types.js.map +1 -1
  78. package/dist/elements/Save/index.d.ts +4 -2
  79. package/dist/elements/Save/index.d.ts.map +1 -1
  80. package/dist/elements/Save/index.js +7 -14
  81. package/dist/elements/Save/index.js.map +1 -1
  82. package/dist/elements/SaveDraft/index.d.ts +1 -2
  83. package/dist/elements/SaveDraft/index.d.ts.map +1 -1
  84. package/dist/elements/SaveDraft/index.js +33 -42
  85. package/dist/elements/SaveDraft/index.js.map +1 -1
  86. package/dist/elements/SortColumn/index.d.ts +3 -1
  87. package/dist/elements/SortColumn/index.d.ts.map +1 -1
  88. package/dist/elements/SortColumn/index.js +5 -6
  89. package/dist/elements/SortColumn/index.js.map +1 -1
  90. package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts +3 -3
  91. package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts.map +1 -1
  92. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  93. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts +4 -4
  94. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
  95. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  96. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts +2 -2
  97. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts.map +1 -1
  98. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  99. package/dist/elements/Table/DefaultCell/fields/Code/index.d.ts +2 -2
  100. package/dist/elements/Table/DefaultCell/fields/Code/index.d.ts.map +1 -1
  101. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  102. package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts +2 -5
  103. package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts.map +1 -1
  104. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  105. package/dist/elements/Table/DefaultCell/fields/File/index.d.ts +2 -2
  106. package/dist/elements/Table/DefaultCell/fields/File/index.d.ts.map +1 -1
  107. package/dist/elements/Table/DefaultCell/fields/File/index.js +4 -3
  108. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  109. package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts +2 -2
  110. package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts.map +1 -1
  111. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  112. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts +4 -4
  113. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
  114. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  115. package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts +3 -3
  116. package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts.map +1 -1
  117. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  118. package/dist/elements/Table/DefaultCell/fields/Textarea/index.d.ts +2 -2
  119. package/dist/elements/Table/DefaultCell/fields/Textarea/index.d.ts.map +1 -1
  120. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  121. package/dist/elements/Table/DefaultCell/fields/index.d.ts +4 -4
  122. package/dist/elements/Table/DefaultCell/index.d.ts +2 -2
  123. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  124. package/dist/elements/Table/DefaultCell/index.js +4 -2
  125. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  126. package/dist/elements/Table/TableCellProvider/index.d.ts +11 -11
  127. package/dist/elements/Table/TableCellProvider/index.d.ts.map +1 -1
  128. package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
  129. package/dist/elements/Table/index.d.ts +8 -4
  130. package/dist/elements/Table/index.d.ts.map +1 -1
  131. package/dist/elements/Table/index.js +1 -0
  132. package/dist/elements/Table/index.js.map +1 -1
  133. package/dist/elements/TableColumns/{buildColumns.d.ts → buildColumnState.d.ts} +8 -6
  134. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -0
  135. package/dist/elements/TableColumns/{buildColumns.js → buildColumnState.js} +37 -13
  136. package/dist/elements/TableColumns/buildColumnState.js.map +1 -0
  137. package/dist/elements/TableColumns/filterFields.d.ts +3 -0
  138. package/dist/elements/TableColumns/filterFields.d.ts.map +1 -0
  139. package/dist/elements/TableColumns/filterFields.js +27 -0
  140. package/dist/elements/TableColumns/filterFields.js.map +1 -0
  141. package/dist/elements/TableColumns/getInitialColumns.d.ts +5 -0
  142. package/dist/elements/TableColumns/getInitialColumns.d.ts.map +1 -0
  143. package/dist/elements/TableColumns/getInitialColumns.js +48 -0
  144. package/dist/elements/TableColumns/getInitialColumns.js.map +1 -0
  145. package/dist/elements/TableColumns/index.d.ts +2 -2
  146. package/dist/elements/TableColumns/index.d.ts.map +1 -1
  147. package/dist/elements/TableColumns/index.js +11 -7
  148. package/dist/elements/TableColumns/index.js.map +1 -1
  149. package/dist/elements/Thumbnail/index.d.ts +6 -0
  150. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  151. package/dist/elements/Thumbnail/index.js +32 -16
  152. package/dist/elements/Thumbnail/index.js.map +1 -1
  153. package/dist/elements/ThumbnailCard/index.d.ts +1 -1
  154. package/dist/elements/ThumbnailCard/index.d.ts.map +1 -1
  155. package/dist/elements/ThumbnailCard/index.js +2 -6
  156. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  157. package/dist/elements/Tooltip/index.scss +4 -4
  158. package/dist/elements/Translation/index.d.ts.map +1 -1
  159. package/dist/elements/Translation/index.js +12 -9
  160. package/dist/elements/Translation/index.js.map +1 -1
  161. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
  162. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +11 -7
  163. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  164. package/dist/elements/WhereBuilder/Condition/index.d.ts +21 -4
  165. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  166. package/dist/elements/WhereBuilder/Condition/index.js +45 -61
  167. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  168. package/dist/elements/WhereBuilder/Condition/index.scss +6 -0
  169. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  170. package/dist/elements/WhereBuilder/index.js +134 -55
  171. package/dist/elements/WhereBuilder/index.js.map +1 -1
  172. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts +3 -0
  173. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts.map +1 -0
  174. package/dist/elements/WhereBuilder/reduceFieldMap.js +36 -0
  175. package/dist/elements/WhereBuilder/reduceFieldMap.js.map +1 -0
  176. package/dist/elements/withMergedProps/index.js +1 -1
  177. package/dist/elements/withMergedProps/index.js.map +1 -1
  178. package/dist/fields/Array/ArrayRow.d.ts +2 -0
  179. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  180. package/dist/fields/Array/ArrayRow.js +3 -3
  181. package/dist/fields/Array/ArrayRow.js.map +1 -1
  182. package/dist/fields/Array/index.d.ts +1 -1
  183. package/dist/fields/Array/index.d.ts.map +1 -1
  184. package/dist/fields/Array/index.js +23 -8
  185. package/dist/fields/Array/index.js.map +1 -1
  186. package/dist/fields/Blocks/BlockRow.d.ts +1 -0
  187. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  188. package/dist/fields/Blocks/BlockRow.js +2 -3
  189. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  190. package/dist/fields/Blocks/index.d.ts +0 -1
  191. package/dist/fields/Blocks/index.d.ts.map +1 -1
  192. package/dist/fields/Blocks/index.js +17 -5
  193. package/dist/fields/Blocks/index.js.map +1 -1
  194. package/dist/fields/Checkbox/Input.d.ts +2 -1
  195. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  196. package/dist/fields/Checkbox/Input.js +3 -1
  197. package/dist/fields/Checkbox/Input.js.map +1 -1
  198. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  199. package/dist/fields/Checkbox/index.js +6 -2
  200. package/dist/fields/Checkbox/index.js.map +1 -1
  201. package/dist/fields/Code/index.d.ts.map +1 -1
  202. package/dist/fields/Code/index.js +8 -3
  203. package/dist/fields/Code/index.js.map +1 -1
  204. package/dist/fields/Collapsible/index.d.ts +2 -1
  205. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  206. package/dist/fields/Collapsible/index.js +4 -3
  207. package/dist/fields/Collapsible/index.js.map +1 -1
  208. package/dist/fields/DateTime/index.d.ts.map +1 -1
  209. package/dist/fields/DateTime/index.js +7 -2
  210. package/dist/fields/DateTime/index.js.map +1 -1
  211. package/dist/fields/Email/index.d.ts.map +1 -1
  212. package/dist/fields/Email/index.js +7 -2
  213. package/dist/fields/Email/index.js.map +1 -1
  214. package/dist/fields/Group/index.d.ts +0 -1
  215. package/dist/fields/Group/index.d.ts.map +1 -1
  216. package/dist/fields/Group/index.js +9 -8
  217. package/dist/fields/Group/index.js.map +1 -1
  218. package/dist/fields/HiddenInput/index.d.ts +1 -0
  219. package/dist/fields/HiddenInput/index.d.ts.map +1 -1
  220. package/dist/fields/HiddenInput/index.js +4 -2
  221. package/dist/fields/HiddenInput/index.js.map +1 -1
  222. package/dist/fields/JSON/index.d.ts.map +1 -1
  223. package/dist/fields/JSON/index.js +8 -4
  224. package/dist/fields/JSON/index.js.map +1 -1
  225. package/dist/fields/Number/index.d.ts.map +1 -1
  226. package/dist/fields/Number/index.js +7 -2
  227. package/dist/fields/Number/index.js.map +1 -1
  228. package/dist/fields/Password/index.d.ts +0 -1
  229. package/dist/fields/Password/index.d.ts.map +1 -1
  230. package/dist/fields/Password/index.js +5 -2
  231. package/dist/fields/Password/index.js.map +1 -1
  232. package/dist/fields/Point/index.d.ts.map +1 -1
  233. package/dist/fields/Point/index.js +15 -10
  234. package/dist/fields/Point/index.js.map +1 -1
  235. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  236. package/dist/fields/RadioGroup/index.js +7 -2
  237. package/dist/fields/RadioGroup/index.js.map +1 -1
  238. package/dist/fields/Relationship/index.d.ts.map +1 -1
  239. package/dist/fields/Relationship/index.js +45 -14
  240. package/dist/fields/Relationship/index.js.map +1 -1
  241. package/dist/fields/Relationship/types.d.ts +3 -1
  242. package/dist/fields/Relationship/types.d.ts.map +1 -1
  243. package/dist/fields/Relationship/types.js.map +1 -1
  244. package/dist/fields/RichText/index.d.ts +2 -0
  245. package/dist/fields/RichText/index.d.ts.map +1 -1
  246. package/dist/fields/RichText/index.js.map +1 -1
  247. package/dist/fields/Row/index.d.ts.map +1 -1
  248. package/dist/fields/Row/index.js +2 -1
  249. package/dist/fields/Row/index.js.map +1 -1
  250. package/dist/fields/Select/index.d.ts +0 -1
  251. package/dist/fields/Select/index.d.ts.map +1 -1
  252. package/dist/fields/Select/index.js +8 -3
  253. package/dist/fields/Select/index.js.map +1 -1
  254. package/dist/fields/Tabs/index.d.ts +0 -1
  255. package/dist/fields/Tabs/index.d.ts.map +1 -1
  256. package/dist/fields/Tabs/index.js +2 -2
  257. package/dist/fields/Tabs/index.js.map +1 -1
  258. package/dist/fields/Text/Input.d.ts.map +1 -1
  259. package/dist/fields/Text/Input.js +4 -1
  260. package/dist/fields/Text/Input.js.map +1 -1
  261. package/dist/fields/Text/index.d.ts.map +1 -1
  262. package/dist/fields/Text/index.js +3 -1
  263. package/dist/fields/Text/index.js.map +1 -1
  264. package/dist/fields/Textarea/Input.d.ts.map +1 -1
  265. package/dist/fields/Textarea/Input.js +4 -1
  266. package/dist/fields/Textarea/Input.js.map +1 -1
  267. package/dist/fields/Textarea/index.d.ts.map +1 -1
  268. package/dist/fields/Textarea/index.js +3 -1
  269. package/dist/fields/Textarea/index.js.map +1 -1
  270. package/dist/fields/Upload/Input.d.ts.map +1 -1
  271. package/dist/fields/Upload/Input.js +10 -8
  272. package/dist/fields/Upload/Input.js.map +1 -1
  273. package/dist/fields/Upload/index.d.ts.map +1 -1
  274. package/dist/fields/Upload/index.js +6 -2
  275. package/dist/fields/Upload/index.js.map +1 -1
  276. package/dist/fields/shared/index.d.ts +1 -2
  277. package/dist/fields/shared/index.d.ts.map +1 -1
  278. package/dist/fields/shared/index.js.map +1 -1
  279. package/dist/forms/FieldDescription/index.d.ts +1 -2
  280. package/dist/forms/FieldDescription/index.d.ts.map +1 -1
  281. package/dist/forms/FieldDescription/index.js.map +1 -1
  282. package/dist/forms/FieldError/index.js +1 -1
  283. package/dist/forms/FieldError/index.js.map +1 -1
  284. package/dist/forms/FieldLabel/index.d.ts.map +1 -1
  285. package/dist/forms/FieldLabel/index.js +4 -4
  286. package/dist/forms/FieldLabel/index.js.map +1 -1
  287. package/dist/forms/FieldLabel/index.scss +1 -1
  288. package/dist/forms/FieldPropsProvider/index.d.ts +5 -0
  289. package/dist/forms/FieldPropsProvider/index.d.ts.map +1 -1
  290. package/dist/forms/FieldPropsProvider/index.js +5 -1
  291. package/dist/forms/FieldPropsProvider/index.js.map +1 -1
  292. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  293. package/dist/forms/Form/fieldReducer.js +6 -8
  294. package/dist/forms/Form/fieldReducer.js.map +1 -1
  295. package/dist/forms/Form/index.d.ts.map +1 -1
  296. package/dist/forms/Form/index.js +37 -20
  297. package/dist/forms/Form/index.js.map +1 -1
  298. package/dist/forms/Form/initContextState.d.ts.map +1 -1
  299. package/dist/forms/Form/initContextState.js +1 -0
  300. package/dist/forms/Form/initContextState.js.map +1 -1
  301. package/dist/forms/Form/mergeErrorPaths.d.ts +5 -0
  302. package/dist/forms/Form/mergeErrorPaths.d.ts.map +1 -0
  303. package/dist/forms/Form/mergeErrorPaths.js +29 -0
  304. package/dist/forms/Form/mergeErrorPaths.js.map +1 -0
  305. package/dist/forms/Form/mergeServerFormState.d.ts +1 -1
  306. package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
  307. package/dist/forms/Form/mergeServerFormState.js +36 -19
  308. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  309. package/dist/forms/Form/types.d.ts +8 -2
  310. package/dist/forms/Form/types.d.ts.map +1 -1
  311. package/dist/forms/Form/types.js.map +1 -1
  312. package/dist/forms/RenderFields/RenderField.d.ts +1 -0
  313. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  314. package/dist/forms/RenderFields/RenderField.js +12 -4
  315. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  316. package/dist/forms/RenderFields/index.d.ts.map +1 -1
  317. package/dist/forms/RenderFields/index.js +3 -3
  318. package/dist/forms/RenderFields/index.js.map +1 -1
  319. package/dist/forms/RenderFields/types.d.ts +1 -0
  320. package/dist/forms/RenderFields/types.d.ts.map +1 -1
  321. package/dist/forms/RenderFields/types.js.map +1 -1
  322. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts +4 -3
  323. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
  324. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js +67 -42
  325. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  326. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.d.ts +11 -0
  327. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.d.ts.map +1 -0
  328. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.js +13 -0
  329. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.js.map +1 -0
  330. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.d.ts +11 -0
  331. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.d.ts.map +1 -0
  332. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.js +16 -0
  333. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.js.map +1 -0
  334. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.d.ts +12 -0
  335. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.d.ts.map +1 -0
  336. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js +122 -0
  337. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js.map +1 -0
  338. package/dist/forms/buildStateFromSchema/index.d.ts +1 -0
  339. package/dist/forms/buildStateFromSchema/index.d.ts.map +1 -1
  340. package/dist/forms/buildStateFromSchema/index.js +10 -2
  341. package/dist/forms/buildStateFromSchema/index.js.map +1 -1
  342. package/dist/forms/buildStateFromSchema/iterateFields.d.ts +2 -2
  343. package/dist/forms/buildStateFromSchema/iterateFields.d.ts.map +1 -1
  344. package/dist/forms/buildStateFromSchema/iterateFields.js +4 -3
  345. package/dist/forms/buildStateFromSchema/iterateFields.js.map +1 -1
  346. package/dist/forms/useField/index.d.ts.map +1 -1
  347. package/dist/forms/useField/index.js +32 -12
  348. package/dist/forms/useField/index.js.map +1 -1
  349. package/dist/forms/useField/types.d.ts +1 -0
  350. package/dist/forms/useField/types.d.ts.map +1 -1
  351. package/dist/forms/useField/types.js.map +1 -1
  352. package/dist/forms/withCondition/WatchCondition.d.ts +3 -0
  353. package/dist/forms/withCondition/WatchCondition.d.ts.map +1 -1
  354. package/dist/forms/withCondition/WatchCondition.js +10 -2
  355. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  356. package/dist/forms/withCondition/index.js +4 -2
  357. package/dist/forms/withCondition/index.js.map +1 -1
  358. package/dist/hooks/usePayloadAPI.js +1 -1
  359. package/dist/hooks/usePayloadAPI.js.map +1 -1
  360. package/dist/hooks/useUseAsTitle.d.ts +3 -2
  361. package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
  362. package/dist/hooks/useUseAsTitle.js +5 -6
  363. package/dist/hooks/useUseAsTitle.js.map +1 -1
  364. package/dist/providers/ClientFunction/index.d.ts.map +1 -1
  365. package/dist/providers/ClientFunction/index.js +27 -5
  366. package/dist/providers/ClientFunction/index.js.map +1 -1
  367. package/dist/providers/ComponentMap/buildComponentMap/{mapActions.d.ts → actions.d.ts} +1 -1
  368. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts.map +1 -0
  369. package/dist/providers/ComponentMap/buildComponentMap/{mapActions.js → actions.js} +1 -1
  370. package/dist/providers/ComponentMap/buildComponentMap/actions.js.map +1 -0
  371. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts +13 -0
  372. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts.map +1 -0
  373. package/dist/providers/ComponentMap/buildComponentMap/collections.js +74 -0
  374. package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +1 -0
  375. package/dist/providers/ComponentMap/buildComponentMap/{mapFields.d.ts → fields.d.ts} +1 -1
  376. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +1 -0
  377. package/dist/providers/ComponentMap/buildComponentMap/{mapFields.js → fields.js} +43 -23
  378. package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +1 -0
  379. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts +12 -0
  380. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts.map +1 -0
  381. package/dist/providers/ComponentMap/buildComponentMap/globals.js +49 -0
  382. package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +1 -0
  383. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts +2 -2
  384. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts.map +1 -1
  385. package/dist/providers/ComponentMap/buildComponentMap/index.js +16 -83
  386. package/dist/providers/ComponentMap/buildComponentMap/index.js.map +1 -1
  387. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts +8 -3
  388. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts.map +1 -1
  389. package/dist/providers/ComponentMap/buildComponentMap/types.js.map +1 -1
  390. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  391. package/dist/providers/DocumentInfo/index.js +120 -96
  392. package/dist/providers/DocumentInfo/index.js.map +1 -1
  393. package/dist/providers/DocumentInfo/types.d.ts +12 -13
  394. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  395. package/dist/providers/DocumentInfo/types.js.map +1 -1
  396. package/dist/providers/EntityVisibility/index.d.ts +16 -0
  397. package/dist/providers/EntityVisibility/index.d.ts.map +1 -0
  398. package/dist/providers/EntityVisibility/index.js +25 -0
  399. package/dist/providers/EntityVisibility/index.js.map +1 -0
  400. package/dist/providers/ListInfo/index.d.ts +0 -1
  401. package/dist/providers/ListInfo/index.d.ts.map +1 -1
  402. package/dist/providers/ListInfo/index.js +2 -7
  403. package/dist/providers/ListInfo/index.js.map +1 -1
  404. package/dist/templates/Default/index.d.ts +2 -7
  405. package/dist/templates/Default/index.d.ts.map +1 -1
  406. package/dist/templates/Default/index.js +10 -12
  407. package/dist/templates/Default/index.js.map +1 -1
  408. package/dist/utilities/buildComponentMap.d.ts +1 -1
  409. package/dist/utilities/buildComponentMap.d.ts.map +1 -1
  410. package/dist/utilities/buildComponentMap.js +1 -1
  411. package/dist/utilities/buildComponentMap.js.map +1 -1
  412. package/dist/utilities/flattenFieldMap.d.ts +10 -0
  413. package/dist/utilities/flattenFieldMap.d.ts.map +1 -0
  414. package/dist/utilities/flattenFieldMap.js +33 -0
  415. package/dist/utilities/flattenFieldMap.js.map +1 -0
  416. package/dist/utilities/getFormState.d.ts +2 -0
  417. package/dist/utilities/getFormState.d.ts.map +1 -1
  418. package/dist/utilities/getFormState.js +8 -3
  419. package/dist/utilities/getFormState.js.map +1 -1
  420. package/package.json +10 -4
  421. package/dist/elements/TableColumns/buildColumns.d.ts.map +0 -1
  422. package/dist/elements/TableColumns/buildColumns.js.map +0 -1
  423. package/dist/elements/WhereBuilder/reducer.d.ts +0 -5
  424. package/dist/elements/WhereBuilder/reducer.d.ts.map +0 -1
  425. package/dist/elements/WhereBuilder/reducer.js +0 -78
  426. package/dist/elements/WhereBuilder/reducer.js.map +0 -1
  427. package/dist/forms/FieldDescription/types.d.ts +0 -8
  428. package/dist/forms/FieldDescription/types.d.ts.map +0 -1
  429. package/dist/forms/FieldDescription/types.js +0 -3
  430. package/dist/forms/FieldDescription/types.js.map +0 -1
  431. package/dist/hooks/useAdminThumbnail.d.ts +0 -3
  432. package/dist/hooks/useAdminThumbnail.d.ts.map +0 -1
  433. package/dist/hooks/useAdminThumbnail.js +0 -8
  434. package/dist/hooks/useAdminThumbnail.js.map +0 -1
  435. package/dist/hooks/useThumbnail.d.ts +0 -3
  436. package/dist/hooks/useThumbnail.d.ts.map +0 -1
  437. package/dist/hooks/useThumbnail.js +0 -45
  438. package/dist/hooks/useThumbnail.js.map +0 -1
  439. package/dist/providers/ComponentMap/buildComponentMap/mapActions.d.ts.map +0 -1
  440. package/dist/providers/ComponentMap/buildComponentMap/mapActions.js.map +0 -1
  441. package/dist/providers/ComponentMap/buildComponentMap/mapFields.d.ts.map +0 -1
  442. package/dist/providers/ComponentMap/buildComponentMap/mapFields.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/providers/DocumentInfo/index.tsx"],"sourcesContent":["'use client'\nimport type { PaginatedDocs, TypeWithVersion } from 'payload/database'\nimport type { FormState, TypeWithTimestamps } from 'payload/types'\nimport type { DocumentPermissions, DocumentPreferences, TypeWithID, Where } from 'payload/types'\n\nimport { LoadingOverlay } from '@payloadcms/ui/elements/Loading'\nimport usePayloadAPI from '@payloadcms/ui/hooks/usePayloadAPI'\nimport { formatDocTitle } from '@payloadcms/ui/utilities/formatDocTitle'\nimport { getFormState } from '@payloadcms/ui/utilities/getFormState'\nimport qs from 'qs'\nimport React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react'\n\nimport type { DocumentInfoContext, DocumentInfoProps } from './types.js'\n\nimport { useAuth } from '../Auth/index.js'\nimport { useConfig } from '../Config/index.js'\nimport { useLocale } from '../Locale/index.js'\nimport { usePreferences } from '../Preferences/index.js'\nimport { useTranslation } from '../Translation/index.js'\n\nconst Context = createContext({} as DocumentInfoContext)\n\nexport type * from './types.js'\n\nexport const useDocumentInfo = (): DocumentInfoContext => useContext(Context)\n\nexport const DocumentInfoProvider: React.FC<\n DocumentInfoProps & {\n children: React.ReactNode\n }\n> = ({ children, initialState: initialStateFromProps, title: titleFromProps, ...props }) => {\n const [documentTitle, setDocumentTitle] = useState(titleFromProps)\n\n const [initialState, setInitialState] = useState<FormState>(initialStateFromProps)\n\n const { id, collectionSlug, globalSlug } = 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 const versionsConfig = docConfig?.versions\n\n const { getPreference, setPreference } = usePreferences()\n const { i18n } = useTranslation()\n const { permissions } = useAuth()\n const { code } = useLocale()\n const [publishedDoc, setPublishedDoc] = useState<TypeWithID & TypeWithTimestamps>(null)\n const [versions, setVersions] = useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n const [docPermissions, setDocPermissions] = useState<DocumentPermissions>(null)\n const [hasSavePermission, setHasSavePermission] = useState<boolean>(null)\n\n const [unpublishedVersions, setUnpublishedVersions] =\n useState<PaginatedDocs<TypeWithVersion<any>>>(null)\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 /**\n *\n *\n * Fetching state from Server on the Client. Should be moved back to Document/index.tsx once next allows us to disable the router cache\n *\n *\n */\n const hasInitializedState = useRef(!!initialStateFromProps)\n\n // no need to an additional requests when creating new documents\n const isEditing = Boolean(id)\n\n const shouldLoadData = !hasInitializedState.current && !!(globalSlug || id)\n\n const [{ data, isError, isLoading: isLoadingDocument }] = usePayloadAPI(\n shouldLoadData\n ? `${baseURL}/${globalSlug ? 'globals/' : ''}${slug}${collectionSlug ? `/${id}` : ''}`\n : null,\n { initialParams: { depth: 0, draft: 'true', 'fallback-locale': 'null' } },\n )\n\n useEffect(() => {\n if (!hasInitializedState.current && (data || !shouldLoadData)) {\n const getInitialState = async () => {\n let docPreferences: DocumentPreferences = { fields: {} }\n\n if (id) {\n docPreferences = await getPreference(\n `${id ? 'collection' : 'global'}-${collectionSlug}-${id}`,\n )\n }\n\n const result = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n data: data || {},\n docPreferences,\n globalSlug,\n operation: isEditing ? 'update' : 'create',\n schemaPath: collectionSlug || globalSlug,\n },\n serverURL,\n })\n\n setInitialState(result)\n hasInitializedState.current = true\n }\n\n void getInitialState()\n }\n }, [api, data, isEditing, collectionSlug, serverURL, id, getPreference, globalSlug])\n\n /**\n *\n *\n * Fetching state from Server on the Client DONE\n *\n *\n */\n\n const getVersions = useCallback(async () => {\n let versionFetchURL\n let publishedFetchURL\n const shouldFetchVersions = Boolean(versionsConfig)\n let unpublishedVersionJSON = null\n let versionJSON = null\n let shouldFetch = true\n\n const versionParams = {\n depth: 0,\n where: {\n and: [],\n },\n }\n\n const publishedVersionParams: { depth: number; locale: string; where: Where } = {\n depth: 0,\n locale: code || 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, code, versionsConfig])\n\n const getDocPermissions = React.useCallback(async () => {\n let docAccessURL: string\n const params = {\n locale: code || undefined,\n }\n if (pluralType === 'globals') {\n docAccessURL = `/globals/${slug}/access`\n } else if (pluralType === 'collections' && id) {\n docAccessURL = `/${slug}/access/${id}`\n }\n\n if (docAccessURL) {\n const res = await fetch(`${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n const json = await res.json()\n\n setDocPermissions(json)\n setHasSavePermission(json?.update?.permission)\n } else {\n // fallback to permissions from the entity type\n // (i.e. create has no id)\n setDocPermissions(permissions?.[pluralType]?.[slug])\n setHasSavePermission(permissions?.[pluralType]?.[slug]?.update?.permission)\n }\n }, [serverURL, api, pluralType, slug, id, permissions, i18n.language, code])\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 useEffect(() => {\n void getVersions()\n }, [getVersions])\n\n useEffect(() => {\n if (titleFromProps) {\n setDocumentTitle(titleFromProps)\n } else {\n setDocumentTitle(\n formatDocTitle({\n collectionConfig,\n data,\n dateFormat,\n fallback: id?.toString(),\n globalConfig,\n i18n,\n }),\n )\n }\n }, [collectionConfig, data, dateFormat, i18n, titleFromProps, id, globalConfig])\n\n useEffect(() => {\n const loadDocPermissions = async () => {\n const docPermissions: DocumentPermissions = props.docPermissions\n const hasSavePermission: boolean = props.hasSavePermission\n\n if (!docPermissions || hasSavePermission === undefined || hasSavePermission === null) {\n await getDocPermissions()\n } else {\n setDocPermissions(docPermissions)\n setHasSavePermission(hasSavePermission)\n }\n }\n\n if (collectionSlug || globalSlug) {\n void loadDocPermissions()\n }\n }, [\n getDocPermissions,\n props.docPermissions,\n props.hasSavePermission,\n setDocPermissions,\n collectionSlug,\n globalSlug,\n ])\n\n if (!initialState || isLoadingDocument) {\n return <LoadingOverlay />\n }\n\n if (isError) return null\n\n const value: DocumentInfoContext = {\n ...props,\n docConfig,\n docPermissions,\n getDocPermissions,\n getDocPreferences,\n getVersions,\n hasSavePermission,\n initialState,\n onSave: props.onSave,\n publishedDoc,\n setDocFieldPreferences,\n setDocumentTitle,\n title: documentTitle,\n unpublishedVersions,\n versions,\n }\n\n return <Context.Provider value={value}>{children}</Context.Provider>\n}\n"],"names":["LoadingOverlay","usePayloadAPI","formatDocTitle","getFormState","qs","React","createContext","useCallback","useContext","useEffect","useRef","useState","useAuth","useConfig","useLocale","usePreferences","useTranslation","Context","useDocumentInfo","DocumentInfoProvider","children","initialState","initialStateFromProps","title","titleFromProps","props","documentTitle","setDocumentTitle","setInitialState","id","collectionSlug","globalSlug","admin","dateFormat","collections","globals","routes","api","serverURL","collectionConfig","find","c","slug","globalConfig","g","docConfig","versionsConfig","versions","getPreference","setPreference","i18n","permissions","code","publishedDoc","setPublishedDoc","setVersions","docPermissions","setDocPermissions","hasSavePermission","setHasSavePermission","unpublishedVersions","setUnpublishedVersions","baseURL","pluralType","preferencesKey","hasInitializedState","isEditing","Boolean","shouldLoadData","current","data","isError","isLoading","isLoadingDocument","initialParams","depth","draft","getInitialState","docPreferences","fields","result","apiRoute","body","operation","schemaPath","getVersions","versionFetchURL","publishedFetchURL","shouldFetchVersions","unpublishedVersionJSON","versionJSON","shouldFetch","versionParams","where","and","publishedVersionParams","locale","undefined","or","_status","equals","exists","stringify","push","parent","publishedJSON","drafts","fetch","credentials","headers","language","then","res","json","docs","updatedAt","newerVersionParams","greater_than","newerVersionRes","status","getDocPermissions","docAccessURL","params","update","permission","getDocPreferences","setDocFieldPreferences","path","fieldPreferences","allPreferences","e","console","error","fallback","toString","loadDocPermissions","value","onSave","Provider"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/providers/DocumentInfo/index.tsx"],"sourcesContent":["'use client'\nimport type { PaginatedDocs, TypeWithVersion } from 'payload/database'\nimport type { Data, FormState, TypeWithTimestamps } from 'payload/types'\nimport type { DocumentPermissions, DocumentPreferences, TypeWithID, Where } from 'payload/types'\n\nimport { LoadingOverlay } from '@payloadcms/ui/elements/Loading'\nimport { formatDocTitle } from '@payloadcms/ui/utilities/formatDocTitle'\nimport { getFormState } from '@payloadcms/ui/utilities/getFormState'\nimport { reduceFieldsToValues } from '@payloadcms/ui/utilities/reduceFieldsToValues'\nimport { notFound } from 'next/navigation.js'\nimport qs from 'qs'\nimport React, { createContext, useCallback, useContext, useEffect, useState } from 'react'\n\nimport type { DocumentInfoContext, DocumentInfoProps } from './types.js'\n\nimport { useAuth } from '../Auth/index.js'\nimport { useConfig } from '../Config/index.js'\nimport { useLocale } from '../Locale/index.js'\nimport { usePreferences } from '../Preferences/index.js'\nimport { useTranslation } from '../Translation/index.js'\n\nconst Context = createContext({} as DocumentInfoContext)\n\nexport type * from './types.js'\n\nexport const useDocumentInfo = (): DocumentInfoContext => useContext(Context)\n\nexport const DocumentInfoProvider: React.FC<\n DocumentInfoProps & {\n children: React.ReactNode\n }\n> = ({ children, ...props }) => {\n const { id, collectionSlug, globalSlug, onLoadError, onSave: onSaveFromProps } = props\n const [isLoading, setIsLoading] = useState(false)\n const [isError, setIsError] = useState(false)\n const [documentTitle, setDocumentTitle] = useState('')\n const [initialData, setInitialData] = useState<Data>()\n const [initialState, setInitialState] = useState<FormState>()\n const [publishedDoc, setPublishedDoc] = useState<TypeWithID & TypeWithTimestamps>(null)\n const [versions, setVersions] = useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n const [docPermissions, setDocPermissions] = useState<DocumentPermissions>(null)\n const [hasSavePermission, setHasSavePermission] = useState<boolean>(null)\n const [unpublishedVersions, setUnpublishedVersions] =\n useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n\n const { getPreference, setPreference } = usePreferences()\n const { i18n } = useTranslation()\n const { permissions } = useAuth()\n const { code: locale } = useLocale()\n\n const {\n admin: { dateFormat },\n collections,\n globals,\n routes: { api },\n serverURL,\n } = useConfig()\n\n const collectionConfig = collections.find((c) => c.slug === collectionSlug)\n const globalConfig = globals.find((g) => g.slug === globalSlug)\n const docConfig = collectionConfig || globalConfig\n const versionsConfig = docConfig?.versions\n\n const baseURL = `${serverURL}${api}`\n let slug: string\n let pluralType: 'collections' | 'globals'\n let preferencesKey: string\n\n if (globalSlug) {\n slug = globalSlug\n pluralType = 'globals'\n preferencesKey = `global-${slug}`\n }\n\n if (collectionSlug) {\n slug = collectionSlug\n pluralType = 'collections'\n\n if (id) {\n preferencesKey = `collection-${slug}-${id}`\n }\n }\n\n const isEditing = Boolean(id)\n\n const getVersions = useCallback(async () => {\n let versionFetchURL\n let publishedFetchURL\n const shouldFetchVersions = Boolean(versionsConfig)\n let unpublishedVersionJSON = null\n let versionJSON = null\n let shouldFetch = true\n\n const versionParams = {\n depth: 0,\n where: {\n and: [],\n },\n }\n\n const publishedVersionParams: { depth: number; locale: string; where: Where } = {\n depth: 0,\n locale: locale || undefined,\n where: {\n and: [\n {\n or: [\n {\n _status: {\n equals: 'published',\n },\n },\n {\n _status: {\n exists: false,\n },\n },\n ],\n },\n ],\n },\n }\n\n if (globalSlug) {\n versionFetchURL = `${baseURL}/globals/${globalSlug}/versions`\n publishedFetchURL = `${baseURL}/globals/${globalSlug}?${qs.stringify(publishedVersionParams)}`\n }\n\n if (collectionSlug) {\n versionFetchURL = `${baseURL}/${collectionSlug}/versions`\n\n publishedVersionParams.where.and.push({\n id: {\n equals: id,\n },\n })\n\n publishedFetchURL = `${baseURL}/${collectionSlug}?${qs.stringify(publishedVersionParams)}`\n\n if (!id) {\n shouldFetch = false\n }\n\n versionParams.where.and.push({\n parent: {\n equals: id,\n },\n })\n }\n\n if (shouldFetch) {\n let publishedJSON\n\n if (versionsConfig?.drafts) {\n publishedJSON = await fetch(publishedFetchURL, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n }).then((res) => res.json())\n\n if (collectionSlug) {\n publishedJSON = publishedJSON?.docs?.[0]\n }\n }\n\n if (shouldFetchVersions) {\n versionJSON = await fetch(`${versionFetchURL}?${qs.stringify(versionParams)}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n }).then((res) => res.json())\n\n if (publishedJSON?.updatedAt) {\n const newerVersionParams = {\n ...versionParams,\n where: {\n ...versionParams.where,\n and: [\n ...versionParams.where.and,\n {\n updatedAt: {\n greater_than: publishedJSON?.updatedAt,\n },\n },\n ],\n },\n }\n\n // Get any newer versions available\n const newerVersionRes = await fetch(\n `${versionFetchURL}?${qs.stringify(newerVersionParams)}`,\n {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n },\n )\n\n if (newerVersionRes.status === 200) {\n unpublishedVersionJSON = await newerVersionRes.json()\n }\n }\n }\n\n setPublishedDoc(publishedJSON)\n setVersions(versionJSON)\n setUnpublishedVersions(unpublishedVersionJSON)\n }\n }, [i18n, globalSlug, collectionSlug, id, baseURL, locale, versionsConfig])\n\n const getDocPermissions = React.useCallback(async () => {\n let docAccessURL: string\n const params = {\n locale: locale || undefined,\n }\n if (pluralType === 'globals') {\n docAccessURL = `/globals/${slug}/access`\n } else if (pluralType === 'collections' && id) {\n docAccessURL = `/${slug}/access/${id}`\n }\n\n if (docAccessURL) {\n const res = await fetch(`${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n const json = await res.json()\n\n setDocPermissions(json)\n setHasSavePermission(json?.update?.permission)\n } else {\n // fallback to permissions from the entity type\n // (i.e. create has no id)\n setDocPermissions(permissions?.[pluralType]?.[slug])\n setHasSavePermission(permissions?.[pluralType]?.[slug]?.update?.permission)\n }\n }, [serverURL, api, pluralType, slug, id, permissions, i18n.language, locale])\n\n const getDocPreferences = useCallback(() => {\n return getPreference<DocumentPreferences>(preferencesKey)\n }, [getPreference, preferencesKey])\n\n const setDocFieldPreferences = useCallback<DocumentInfoContext['setDocFieldPreferences']>(\n async (path, fieldPreferences) => {\n const allPreferences = await getDocPreferences()\n\n if (preferencesKey) {\n try {\n await setPreference(preferencesKey, {\n ...allPreferences,\n fields: {\n ...(allPreferences?.fields || {}),\n [path]: {\n ...allPreferences?.fields?.[path],\n ...fieldPreferences,\n },\n },\n })\n } catch (e) {\n console.error(e) // eslint-disable-line no-console\n }\n }\n },\n [setPreference, preferencesKey, getDocPreferences],\n )\n\n const onSave = React.useCallback<DocumentInfoContext['onSave']>(\n async (json) => {\n if (typeof onSaveFromProps === 'function') {\n void onSaveFromProps(json)\n }\n\n const docPreferences = await getDocPreferences()\n\n const newState = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n data: json.doc,\n docPreferences,\n globalSlug,\n locale,\n operation: isEditing ? 'update' : 'create',\n schemaPath: collectionSlug || globalSlug,\n },\n serverURL,\n })\n\n setInitialState(newState)\n setInitialData(json.doc)\n },\n [\n api,\n collectionSlug,\n getDocPreferences,\n globalSlug,\n id,\n isEditing,\n locale,\n onSaveFromProps,\n serverURL,\n ],\n )\n\n useEffect(() => {\n const abortController = new AbortController()\n\n const getInitialState = async () => {\n setIsError(false)\n setIsLoading(true)\n\n try {\n const result = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n globalSlug,\n locale,\n operation: isEditing ? 'update' : 'create',\n schemaPath: collectionSlug || globalSlug,\n },\n onError: onLoadError,\n serverURL,\n signal: abortController.signal,\n })\n\n setInitialData(reduceFieldsToValues(result, true))\n setInitialState(result)\n } catch (err) {\n if (!abortController.signal.aborted) {\n if (typeof onLoadError === 'function') {\n void onLoadError()\n }\n setIsError(true)\n setIsLoading(false)\n }\n }\n\n setIsLoading(false)\n }\n\n void getInitialState()\n\n return () => {\n abortController.abort()\n }\n }, [\n api,\n isEditing,\n collectionSlug,\n serverURL,\n id,\n getPreference,\n globalSlug,\n locale,\n onLoadError,\n ])\n\n useEffect(() => {\n void getVersions()\n }, [getVersions])\n\n useEffect(() => {\n setDocumentTitle(\n formatDocTitle({\n collectionConfig,\n data: { ...initialData, id },\n dateFormat,\n fallback: id?.toString(),\n globalConfig,\n i18n,\n }),\n )\n }, [collectionConfig, initialData, dateFormat, i18n, id, globalConfig])\n\n useEffect(() => {\n const loadDocPermissions = async () => {\n const docPermissions: DocumentPermissions = props.docPermissions\n const hasSavePermission: boolean = props.hasSavePermission\n\n if (!docPermissions || hasSavePermission === undefined || hasSavePermission === null) {\n await getDocPermissions()\n } else {\n setDocPermissions(docPermissions)\n setHasSavePermission(hasSavePermission)\n }\n }\n\n if (collectionSlug || globalSlug) {\n void loadDocPermissions()\n }\n }, [\n getDocPermissions,\n props.docPermissions,\n props.hasSavePermission,\n setDocPermissions,\n collectionSlug,\n globalSlug,\n ])\n\n if (isError) notFound()\n\n if (!initialState || isLoading) {\n return <LoadingOverlay />\n }\n\n const value: DocumentInfoContext = {\n ...props,\n docConfig,\n docPermissions,\n getDocPermissions,\n getDocPreferences,\n getVersions,\n hasSavePermission,\n initialData,\n initialState,\n onSave,\n publishedDoc,\n setDocFieldPreferences,\n setDocumentTitle,\n title: documentTitle,\n unpublishedVersions,\n versions,\n }\n\n return <Context.Provider value={value}>{children}</Context.Provider>\n}\n"],"names":["LoadingOverlay","formatDocTitle","getFormState","reduceFieldsToValues","notFound","qs","React","createContext","useCallback","useContext","useEffect","useState","useAuth","useConfig","useLocale","usePreferences","useTranslation","Context","useDocumentInfo","DocumentInfoProvider","children","props","id","collectionSlug","globalSlug","onLoadError","onSave","onSaveFromProps","isLoading","setIsLoading","isError","setIsError","documentTitle","setDocumentTitle","initialData","setInitialData","initialState","setInitialState","publishedDoc","setPublishedDoc","versions","setVersions","docPermissions","setDocPermissions","hasSavePermission","setHasSavePermission","unpublishedVersions","setUnpublishedVersions","getPreference","setPreference","i18n","permissions","code","locale","admin","dateFormat","collections","globals","routes","api","serverURL","collectionConfig","find","c","slug","globalConfig","g","docConfig","versionsConfig","baseURL","pluralType","preferencesKey","isEditing","Boolean","getVersions","versionFetchURL","publishedFetchURL","shouldFetchVersions","unpublishedVersionJSON","versionJSON","shouldFetch","versionParams","depth","where","and","publishedVersionParams","undefined","or","_status","equals","exists","stringify","push","parent","publishedJSON","drafts","fetch","credentials","headers","language","then","res","json","docs","updatedAt","newerVersionParams","greater_than","newerVersionRes","status","getDocPermissions","docAccessURL","params","update","permission","getDocPreferences","setDocFieldPreferences","path","fieldPreferences","allPreferences","fields","e","console","error","docPreferences","newState","apiRoute","body","data","doc","operation","schemaPath","abortController","AbortController","getInitialState","result","onError","signal","err","aborted","abort","fallback","toString","loadDocPermissions","value","title","Provider"],"mappings":"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"}
@@ -15,30 +15,29 @@ export type DocumentInfoProps = {
15
15
  globalSlug?: SanitizedGlobalConfig['slug'];
16
16
  hasSavePermission?: boolean;
17
17
  id: null | number | string;
18
- initialData?: Data;
19
- initialState?: FormState;
20
18
  isEditing?: boolean;
19
+ onLoadError?: (data?: any) => Promise<void> | void;
21
20
  onSave?: (data: Data) => Promise<void> | void;
22
- title?: string;
23
21
  };
24
- export type DocumentInfo = DocumentInfoProps & {
22
+ export type DocumentInfoContext = DocumentInfoProps & {
25
23
  docConfig?: ClientCollectionConfig | ClientGlobalConfig;
24
+ getDocPermissions: () => Promise<void>;
25
+ getDocPreferences: () => Promise<DocumentPreferences>;
26
+ getVersions: () => Promise<void>;
27
+ initialData: Data;
28
+ initialState?: FormState;
26
29
  preferencesKey?: string;
27
30
  publishedDoc?: TypeWithID & TypeWithTimestamps & {
28
31
  _status?: string;
29
32
  };
30
- slug?: string;
31
- unpublishedVersions?: PaginatedDocs<TypeWithVersion<any>>;
32
- versions?: PaginatedDocs<TypeWithVersion<any>>;
33
- versionsCount?: PaginatedDocs<TypeWithVersion<any>>;
34
- };
35
- export type DocumentInfoContext = DocumentInfo & {
36
- getDocPermissions: () => Promise<void>;
37
- getDocPreferences: () => Promise<DocumentPreferences>;
38
- getVersions: () => Promise<void>;
39
33
  setDocFieldPreferences: (field: string, fieldPreferences: Partial<InsideFieldsPreferences> & {
40
34
  [key: string]: unknown;
41
35
  }) => void;
42
36
  setDocumentTitle: (title: string) => void;
37
+ slug?: string;
38
+ title: string;
39
+ unpublishedVersions?: PaginatedDocs<TypeWithVersion<any>>;
40
+ versions?: PaginatedDocs<TypeWithVersion<any>>;
41
+ versionsCount?: PaginatedDocs<TypeWithVersion<any>>;
43
42
  };
44
43
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/DocumentInfo/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,KAAK,EACV,sBAAsB,EACtB,kBAAkB,EAClB,IAAI,EACJ,mBAAmB,EACnB,mBAAmB,EACnB,SAAS,EACT,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,UAAU,EACV,kBAAkB,EACnB,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC/B,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAClD,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,yBAAyB,CAAC,EAAE,OAAO,CAAA;IACnC,cAAc,CAAC,EAAE,mBAAmB,CAAA;IACpC,UAAU,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAA;IAC1C,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,EAAE,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAA;IAC1B,WAAW,CAAC,EAAE,IAAI,CAAA;IAClB,YAAY,CAAC,EAAE,SAAS,CAAA;IACxB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,iBAAiB,GAAG;IAC7C,SAAS,CAAC,EAAE,sBAAsB,GAAG,kBAAkB,CAAA;IACvD,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,YAAY,CAAC,EAAE,UAAU,GAAG,kBAAkB,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACrE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,mBAAmB,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;IACzD,QAAQ,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;IAC9C,aAAa,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;CACpD,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,YAAY,GAAG;IAC/C,iBAAiB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACtC,iBAAiB,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAA;IACrD,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,sBAAsB,EAAE,CACtB,KAAK,EAAE,MAAM,EACb,gBAAgB,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,KAC5E,IAAI,CAAA;IACT,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CAC1C,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/DocumentInfo/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,KAAK,EACV,sBAAsB,EACtB,kBAAkB,EAClB,IAAI,EACJ,mBAAmB,EACnB,mBAAmB,EACnB,SAAS,EACT,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,UAAU,EACV,kBAAkB,EACnB,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC/B,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAClD,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,yBAAyB,CAAC,EAAE,OAAO,CAAA;IACnC,cAAc,CAAC,EAAE,mBAAmB,CAAA;IACpC,UAAU,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAA;IAC1C,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,EAAE,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAA;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAClD,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CAC9C,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,GAAG;IACpD,SAAS,CAAC,EAAE,sBAAsB,GAAG,kBAAkB,CAAA;IACvD,iBAAiB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACtC,iBAAiB,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAA;IACrD,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,WAAW,EAAE,IAAI,CAAA;IACjB,YAAY,CAAC,EAAE,SAAS,CAAA;IACxB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,YAAY,CAAC,EAAE,UAAU,GAAG,kBAAkB,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACrE,sBAAsB,EAAE,CACtB,KAAK,EAAE,MAAM,EACb,gBAAgB,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,KAC5E,IAAI,CAAA;IACT,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,mBAAmB,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;IACzD,QAAQ,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;IAC9C,aAAa,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;CACpD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/providers/DocumentInfo/types.ts"],"sourcesContent":["import type { PaginatedDocs, TypeWithVersion } from 'payload/database'\nimport type {\n ClientCollectionConfig,\n ClientGlobalConfig,\n Data,\n DocumentPermissions,\n DocumentPreferences,\n FormState,\n InsideFieldsPreferences,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n TypeWithID,\n TypeWithTimestamps,\n} from 'payload/types'\nimport type React from 'react'\n\nexport type DocumentInfoProps = {\n AfterDocument?: React.ReactNode\n AfterFields?: React.ReactNode\n BeforeDocument?: React.ReactNode\n BeforeFields?: React.ReactNode\n action?: string\n apiURL?: string\n collectionSlug?: SanitizedCollectionConfig['slug']\n disableActions?: boolean\n disableLeaveWithoutSaving?: boolean\n docPermissions?: DocumentPermissions\n globalSlug?: SanitizedGlobalConfig['slug']\n hasSavePermission?: boolean\n id: null | number | string\n initialData?: Data\n initialState?: FormState\n isEditing?: boolean\n onSave?: (data: Data) => Promise<void> | void\n title?: string\n}\n\nexport type DocumentInfo = DocumentInfoProps & {\n docConfig?: ClientCollectionConfig | ClientGlobalConfig\n preferencesKey?: string\n publishedDoc?: TypeWithID & TypeWithTimestamps & { _status?: string }\n slug?: string\n unpublishedVersions?: PaginatedDocs<TypeWithVersion<any>>\n versions?: PaginatedDocs<TypeWithVersion<any>>\n versionsCount?: PaginatedDocs<TypeWithVersion<any>>\n}\n\nexport type DocumentInfoContext = DocumentInfo & {\n getDocPermissions: () => Promise<void>\n getDocPreferences: () => Promise<DocumentPreferences>\n getVersions: () => Promise<void>\n setDocFieldPreferences: (\n field: string,\n fieldPreferences: Partial<InsideFieldsPreferences> & { [key: string]: unknown },\n ) => void\n setDocumentTitle: (title: string) => void\n}\n"],"names":[],"mappings":"AA+CA,WASC"}
1
+ {"version":3,"sources":["../../../src/providers/DocumentInfo/types.ts"],"sourcesContent":["import type { PaginatedDocs, TypeWithVersion } from 'payload/database'\nimport type {\n ClientCollectionConfig,\n ClientGlobalConfig,\n Data,\n DocumentPermissions,\n DocumentPreferences,\n FormState,\n InsideFieldsPreferences,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n TypeWithID,\n TypeWithTimestamps,\n} from 'payload/types'\nimport type React from 'react'\n\nexport type DocumentInfoProps = {\n AfterDocument?: React.ReactNode\n AfterFields?: React.ReactNode\n BeforeDocument?: React.ReactNode\n BeforeFields?: React.ReactNode\n action?: string\n apiURL?: string\n collectionSlug?: SanitizedCollectionConfig['slug']\n disableActions?: boolean\n disableLeaveWithoutSaving?: boolean\n docPermissions?: DocumentPermissions\n globalSlug?: SanitizedGlobalConfig['slug']\n hasSavePermission?: boolean\n id: null | number | string\n isEditing?: boolean\n onLoadError?: (data?: any) => Promise<void> | void\n onSave?: (data: Data) => Promise<void> | void\n}\n\nexport type DocumentInfoContext = DocumentInfoProps & {\n docConfig?: ClientCollectionConfig | ClientGlobalConfig\n getDocPermissions: () => Promise<void>\n getDocPreferences: () => Promise<DocumentPreferences>\n getVersions: () => Promise<void>\n initialData: Data\n initialState?: FormState\n preferencesKey?: string\n publishedDoc?: TypeWithID & TypeWithTimestamps & { _status?: string }\n setDocFieldPreferences: (\n field: string,\n fieldPreferences: Partial<InsideFieldsPreferences> & { [key: string]: unknown },\n ) => void\n setDocumentTitle: (title: string) => void\n slug?: string\n title: string\n unpublishedVersions?: PaginatedDocs<TypeWithVersion<any>>\n versions?: PaginatedDocs<TypeWithVersion<any>>\n versionsCount?: PaginatedDocs<TypeWithVersion<any>>\n}\n"],"names":[],"mappings":"AAmCA,WAmBC"}
@@ -0,0 +1,16 @@
1
+ import type { SanitizedCollectionConfig, SanitizedGlobalConfig, VisibleEntities } from 'packages/payload/src/exports/types.js';
2
+ import React from 'react';
3
+ export type VisibleEntitiesContextType = {
4
+ isEntityVisible: ({ collectionSlug, globalSlug, }: {
5
+ collectionSlug?: SanitizedCollectionConfig['slug'];
6
+ globalSlug?: SanitizedGlobalConfig['slug'];
7
+ }) => boolean;
8
+ visibleEntities: VisibleEntities;
9
+ };
10
+ export declare const EntityVisibilityContext: React.Context<VisibleEntitiesContextType>;
11
+ export declare const EntityVisibilityProvider: React.FC<{
12
+ children: React.ReactNode;
13
+ visibleEntities?: VisibleEntities;
14
+ }>;
15
+ export declare const useEntityVisibility: () => VisibleEntitiesContextType;
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/EntityVisibility/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,yBAAyB,EACzB,qBAAqB,EACrB,eAAe,EAChB,MAAM,uCAAuC,CAAA;AAE9C,OAAO,KAAiD,MAAM,OAAO,CAAA;AAErE,MAAM,MAAM,0BAA0B,GAAG;IACvC,eAAe,EAAE,CAAC,EAChB,cAAc,EACd,UAAU,GACX,EAAE;QACD,cAAc,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;QAClD,UAAU,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAA;KAC3C,KAAK,OAAO,CAAA;IACb,eAAe,EAAE,eAAe,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,uBAAuB,2CAAkD,CAAA;AAEtF,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC;IAC9C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC,CA2BA,CAAA;AAED,eAAO,MAAM,mBAAmB,QAAO,0BACF,CAAA"}
@@ -0,0 +1,25 @@
1
+ 'use client';
2
+ import React, { createContext, useCallback, useContext } from 'react';
3
+ export const EntityVisibilityContext = /*#__PURE__*/ createContext({});
4
+ export const EntityVisibilityProvider = ({ children, visibleEntities })=>{
5
+ const isEntityVisible = useCallback(({ collectionSlug, globalSlug })=>{
6
+ if (collectionSlug) {
7
+ return visibleEntities.collections.includes(collectionSlug);
8
+ }
9
+ if (globalSlug) {
10
+ return visibleEntities.globals.includes(globalSlug);
11
+ }
12
+ return false;
13
+ }, [
14
+ visibleEntities
15
+ ]);
16
+ return /*#__PURE__*/ React.createElement(EntityVisibilityContext.Provider, {
17
+ value: {
18
+ isEntityVisible,
19
+ visibleEntities
20
+ }
21
+ }, children);
22
+ };
23
+ export const useEntityVisibility = ()=>useContext(EntityVisibilityContext);
24
+
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/providers/EntityVisibility/index.tsx"],"sourcesContent":["'use client'\nimport type {\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n VisibleEntities,\n} from 'packages/payload/src/exports/types.js'\n\nimport React, { createContext, useCallback, useContext } from 'react'\n\nexport type VisibleEntitiesContextType = {\n isEntityVisible: ({\n collectionSlug,\n globalSlug,\n }: {\n collectionSlug?: SanitizedCollectionConfig['slug']\n globalSlug?: SanitizedGlobalConfig['slug']\n }) => boolean\n visibleEntities: VisibleEntities\n}\n\nexport const EntityVisibilityContext = createContext({} as VisibleEntitiesContextType)\n\nexport const EntityVisibilityProvider: React.FC<{\n children: React.ReactNode\n visibleEntities?: VisibleEntities\n}> = ({ children, visibleEntities }) => {\n const isEntityVisible = useCallback(\n ({\n collectionSlug,\n globalSlug,\n }: {\n collectionSlug: SanitizedCollectionConfig['slug']\n globalSlug: SanitizedGlobalConfig['slug']\n }) => {\n if (collectionSlug) {\n return visibleEntities.collections.includes(collectionSlug)\n }\n\n if (globalSlug) {\n return visibleEntities.globals.includes(globalSlug)\n }\n\n return false\n },\n [visibleEntities],\n )\n\n return (\n <EntityVisibilityContext.Provider value={{ isEntityVisible, visibleEntities }}>\n {children}\n </EntityVisibilityContext.Provider>\n )\n}\n\nexport const useEntityVisibility = (): VisibleEntitiesContextType =>\n useContext(EntityVisibilityContext)\n"],"names":["React","createContext","useCallback","useContext","EntityVisibilityContext","EntityVisibilityProvider","children","visibleEntities","isEntityVisible","collectionSlug","globalSlug","collections","includes","globals","Provider","value","useEntityVisibility"],"mappings":"AAAA;AAOA,OAAOA,SAASC,aAAa,EAAEC,WAAW,EAAEC,UAAU,QAAQ,QAAO;AAarE,OAAO,MAAMC,wCAA0BH,cAAc,CAAC,GAAgC;AAEtF,OAAO,MAAMI,2BAGR,CAAC,EAAEC,QAAQ,EAAEC,eAAe,EAAE;IACjC,MAAMC,kBAAkBN,YACtB,CAAC,EACCO,cAAc,EACdC,UAAU,EAIX;QACC,IAAID,gBAAgB;YAClB,OAAOF,gBAAgBI,WAAW,CAACC,QAAQ,CAACH;QAC9C;QAEA,IAAIC,YAAY;YACd,OAAOH,gBAAgBM,OAAO,CAACD,QAAQ,CAACF;QAC1C;QAEA,OAAO;IACT,GACA;QAACH;KAAgB;IAGnB,qBACE,oBAACH,wBAAwBU,QAAQ;QAACC,OAAO;YAAEP;YAAiBD;QAAgB;OACzED;AAGP,EAAC;AAED,OAAO,MAAMU,sBAAsB,IACjCb,WAAWC,yBAAwB"}
@@ -15,7 +15,6 @@ export type ListInfoContext = {
15
15
  collectionSlug: string;
16
16
  hasCreatePermission: boolean;
17
17
  newDocumentURL: string;
18
- titleField?: FieldAffectingData;
19
18
  };
20
19
  export declare const useListInfo: () => ListInfoContext;
21
20
  export declare const ListInfoProvider: React.FC<ListInfoProps & {
@@ -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,eAAe,CAAA;AAEhG,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;IACtB,UAAU,CAAC,EAAE,kBAAkB,CAAA;CAChC,CAAA;AAID,eAAO,MAAM,WAAW,QAAO,eAAsC,CAAA;AAErE,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CACrC,aAAa,GAAG;IACd,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,CAcF,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,eAAe,CAAA;AAEhG,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,aAAa,GAAG;IACd,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,CAGF,CAAA"}
@@ -2,14 +2,9 @@
2
2
  import React, { createContext, useContext } from 'react';
3
3
  const Context = /*#__PURE__*/ createContext({});
4
4
  export const useListInfo = ()=>useContext(Context);
5
- export const ListInfoProvider = ({ children, collectionSlug, hasCreatePermission, newDocumentURL, titleField })=>{
5
+ export const ListInfoProvider = ({ children, ...props })=>{
6
6
  return /*#__PURE__*/ React.createElement(Context.Provider, {
7
- value: {
8
- collectionSlug,
9
- hasCreatePermission,
10
- newDocumentURL,
11
- titleField
12
- }
7
+ value: props
13
8
  }, children);
14
9
  };
15
10
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/providers/ListInfo/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientConfig, FieldAffectingData, SanitizedCollectionConfig } from 'payload/types'\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 titleField?: FieldAffectingData\n}\n\nconst Context = createContext({} as ListInfoContext)\n\nexport const useListInfo = (): ListInfoContext => useContext(Context)\n\nexport const ListInfoProvider: React.FC<\n ListInfoProps & {\n children: React.ReactNode\n }\n> = ({ children, collectionSlug, hasCreatePermission, newDocumentURL, titleField }) => {\n return (\n <Context.Provider\n value={{\n collectionSlug,\n hasCreatePermission,\n newDocumentURL,\n titleField,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n"],"names":["React","createContext","useContext","Context","useListInfo","ListInfoProvider","children","collectionSlug","hasCreatePermission","newDocumentURL","titleField","Provider","value"],"mappings":"AAAA;AAGA,OAAOA,SAASC,aAAa,EAAEC,UAAU,QAAQ,QAAO;AAuBxD,MAAMC,wBAAUF,cAAc,CAAC;AAE/B,OAAO,MAAMG,cAAc,IAAuBF,WAAWC,SAAQ;AAErE,OAAO,MAAME,mBAIT,CAAC,EAAEC,QAAQ,EAAEC,cAAc,EAAEC,mBAAmB,EAAEC,cAAc,EAAEC,UAAU,EAAE;IAChF,qBACE,oBAACP,QAAQQ,QAAQ;QACfC,OAAO;YACLL;YACAC;YACAC;YACAC;QACF;OAECJ;AAGP,EAAC"}
1
+ {"version":3,"sources":["../../../src/providers/ListInfo/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientConfig, FieldAffectingData, SanitizedCollectionConfig } from 'payload/types'\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 ListInfoProps & {\n children: React.ReactNode\n }\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,oBAACJ,QAAQK,QAAQ;QAACC,OAAOF;OAAQD;AAC1C,EAAC"}
@@ -1,16 +1,11 @@
1
- import type { Permissions, User } from 'payload/auth';
2
- import type { SanitizedConfig } from 'payload/types';
1
+ import type { SanitizedConfig, VisibleEntities } from 'payload/types';
3
2
  import React from 'react';
4
- export { NavHamburger } from './NavHamburger/index.js';
5
- export { Wrapper } from './Wrapper/index.js';
6
3
  import './index.scss';
7
4
  export type DefaultTemplateProps = {
8
5
  children?: React.ReactNode;
9
6
  className?: string;
10
7
  config: Promise<SanitizedConfig> | SanitizedConfig;
11
- i18n: any;
12
- permissions: Permissions;
13
- user: User;
8
+ visibleEntities?: VisibleEntities;
14
9
  };
15
10
  export declare const DefaultTemplate: React.FC<DefaultTemplateProps>;
16
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/templates/Default/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAEpD,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAEtD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,IAAI,EAAE,GAAG,CAAA;IACT,WAAW,EAAE,WAAW,CAAA;IACxB,IAAI,EAAE,IAAI,CAAA;CACX,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA4C1D,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/templates/Default/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAGrE,OAAO,KAAK,MAAM,OAAO,CAAA;AAUzB,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA0C1D,CAAA"}
@@ -1,20 +1,23 @@
1
+ import { EntityVisibilityProvider } from '@payloadcms/ui/providers/EntityVisibility';
1
2
  import React from 'react';
2
3
  import { AppHeader } from '../../elements/AppHeader/index.js';
3
4
  import { NavToggler } from '../../elements/Nav/NavToggler/index.js';
4
5
  import { DefaultNav } from '../../elements/Nav/index.js';
5
6
  import { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js';
6
7
  import { NavHamburger } from './NavHamburger/index.js';
7
- export { NavHamburger } from './NavHamburger/index.js';
8
8
  import { Wrapper } from './Wrapper/index.js';
9
- export { Wrapper } from './Wrapper/index.js';
10
9
  const baseClass = 'template-default';
11
- export const DefaultTemplate = async ({ children, className, config: configPromise, i18n, permissions, user })=>{
10
+ export const DefaultTemplate = async ({ children, className, config: configPromise, visibleEntities })=>{
12
11
  const config = await configPromise;
13
12
  const { admin: { components: { Nav: CustomNav } = {
14
13
  Nav: undefined
15
14
  } } = {} } = config || {};
16
- // #nav-toggler needs to be wrapped in a div, not Fragment. This fixes https://github.com/shadcn-ui/ui/issues/1355#issuecomment-1909192594
17
- return /*#__PURE__*/ React.createElement("div", null, /*#__PURE__*/ React.createElement("div", {
15
+ const navProps = {
16
+ config
17
+ };
18
+ return /*#__PURE__*/ React.createElement(EntityVisibilityProvider, {
19
+ visibleEntities: visibleEntities
20
+ }, /*#__PURE__*/ React.createElement("div", null, /*#__PURE__*/ React.createElement("div", {
18
21
  className: `${baseClass}__nav-toggler-wrapper`,
19
22
  id: "nav-toggler"
20
23
  }, /*#__PURE__*/ React.createElement(NavToggler, {
@@ -25,15 +28,10 @@ export const DefaultTemplate = async ({ children, className, config: configPromi
25
28
  }, /*#__PURE__*/ React.createElement(RenderCustomComponent, {
26
29
  CustomComponent: CustomNav,
27
30
  DefaultComponent: DefaultNav,
28
- componentProps: {
29
- config,
30
- i18n,
31
- permissions,
32
- user
33
- }
31
+ componentProps: navProps
34
32
  }), /*#__PURE__*/ React.createElement("div", {
35
33
  className: `${baseClass}__wrap`
36
- }, /*#__PURE__*/ React.createElement(AppHeader, null), children)));
34
+ }, /*#__PURE__*/ React.createElement(AppHeader, null), children))));
37
35
  };
38
36
 
39
37
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/templates/Default/index.tsx"],"sourcesContent":["import type { Permissions, User } from 'payload/auth'\nimport type { SanitizedConfig } from 'payload/types'\n\nimport React from 'react'\n\nimport { AppHeader } from '../../elements/AppHeader/index.js'\nimport { NavToggler } from '../../elements/Nav/NavToggler/index.js'\nimport { DefaultNav } from '../../elements/Nav/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { NavHamburger } from './NavHamburger/index.js'\nexport { NavHamburger } from './NavHamburger/index.js'\nimport { Wrapper } from './Wrapper/index.js'\nexport { Wrapper } from './Wrapper/index.js'\nimport './index.scss'\n\nconst baseClass = 'template-default'\n\nexport type DefaultTemplateProps = {\n children?: React.ReactNode\n className?: string\n config: Promise<SanitizedConfig> | SanitizedConfig\n i18n: any\n permissions: Permissions\n user: User\n}\n\nexport const DefaultTemplate: React.FC<DefaultTemplateProps> = async ({\n children,\n className,\n config: configPromise,\n i18n,\n permissions,\n user,\n}) => {\n const config = await configPromise\n\n const {\n admin: {\n components: { Nav: CustomNav } = {\n Nav: undefined,\n },\n } = {},\n } = config || {}\n\n // #nav-toggler needs to be wrapped in a div, not Fragment. This fixes https://github.com/shadcn-ui/ui/issues/1355#issuecomment-1909192594\n return (\n <div>\n <div className={`${baseClass}__nav-toggler-wrapper`} id=\"nav-toggler\">\n <NavToggler className={`${baseClass}__nav-toggler`}>\n <NavHamburger />\n </NavToggler>\n </div>\n <Wrapper baseClass={baseClass} className={className}>\n <RenderCustomComponent\n CustomComponent={CustomNav}\n DefaultComponent={DefaultNav}\n componentProps={{\n config,\n i18n,\n permissions,\n user,\n }}\n />\n <div className={`${baseClass}__wrap`}>\n <AppHeader />\n {children}\n </div>\n </Wrapper>\n </div>\n )\n}\n"],"names":["React","AppHeader","NavToggler","DefaultNav","RenderCustomComponent","NavHamburger","Wrapper","baseClass","DefaultTemplate","children","className","config","configPromise","i18n","permissions","user","admin","components","Nav","CustomNav","undefined","div","id","CustomComponent","DefaultComponent","componentProps"],"mappings":"AAGA,OAAOA,WAAW,QAAO;AAEzB,SAASC,SAAS,QAAQ,oCAAmC;AAC7D,SAASC,UAAU,QAAQ,yCAAwC;AACnE,SAASC,UAAU,QAAQ,8BAA6B;AACxD,SAASC,qBAAqB,QAAQ,gDAA+C;AACrF,SAASC,YAAY,QAAQ,0BAAyB;AACtD,SAASA,YAAY,QAAQ,0BAAyB;AACtD,SAASC,OAAO,QAAQ,qBAAoB;AAC5C,SAASA,OAAO,QAAQ,qBAAoB;AAG5C,MAAMC,YAAY;AAWlB,OAAO,MAAMC,kBAAkD,OAAO,EACpEC,QAAQ,EACRC,SAAS,EACTC,QAAQC,aAAa,EACrBC,IAAI,EACJC,WAAW,EACXC,IAAI,EACL;IACC,MAAMJ,SAAS,MAAMC;IAErB,MAAM,EACJI,OAAO,EACLC,YAAY,EAAEC,KAAKC,SAAS,EAAE,GAAG;QAC/BD,KAAKE;IACP,CAAC,EACF,GAAG,CAAC,CAAC,EACP,GAAGT,UAAU,CAAC;IAEf,0IAA0I;IAC1I,qBACE,oBAACU,2BACC,oBAACA;QAAIX,WAAW,CAAC,EAAEH,UAAU,qBAAqB,CAAC;QAAEe,IAAG;qBACtD,oBAACpB;QAAWQ,WAAW,CAAC,EAAEH,UAAU,aAAa,CAAC;qBAChD,oBAACF,qCAGL,oBAACC;QAAQC,WAAWA;QAAWG,WAAWA;qBACxC,oBAACN;QACCmB,iBAAiBJ;QACjBK,kBAAkBrB;QAClBsB,gBAAgB;YACdd;YACAE;YACAC;YACAC;QACF;sBAEF,oBAACM;QAAIX,WAAW,CAAC,EAAEH,UAAU,MAAM,CAAC;qBAClC,oBAACN,kBACAQ;AAKX,EAAC"}
1
+ {"version":3,"sources":["../../../src/templates/Default/index.tsx"],"sourcesContent":["import type { SanitizedConfig, VisibleEntities } from 'payload/types'\n\nimport { EntityVisibilityProvider } from '@payloadcms/ui/providers/EntityVisibility'\nimport React from 'react'\n\nimport type { NavProps } from '../../elements/Nav/index.js'\n\nimport { AppHeader } from '../../elements/AppHeader/index.js'\nimport { NavToggler } from '../../elements/Nav/NavToggler/index.js'\nimport { DefaultNav } from '../../elements/Nav/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { NavHamburger } from './NavHamburger/index.js'\nimport { Wrapper } from './Wrapper/index.js'\nimport './index.scss'\n\nconst baseClass = 'template-default'\n\nexport type DefaultTemplateProps = {\n children?: React.ReactNode\n className?: string\n config: Promise<SanitizedConfig> | SanitizedConfig\n visibleEntities?: VisibleEntities\n}\n\nexport const DefaultTemplate: React.FC<DefaultTemplateProps> = async ({\n children,\n className,\n config: configPromise,\n visibleEntities,\n}) => {\n const config = await configPromise\n\n const {\n admin: {\n components: { Nav: CustomNav } = {\n Nav: undefined,\n },\n } = {},\n } = config || {}\n\n const navProps: NavProps = {\n config,\n }\n\n return (\n <EntityVisibilityProvider visibleEntities={visibleEntities}>\n <div>\n <div className={`${baseClass}__nav-toggler-wrapper`} id=\"nav-toggler\">\n <NavToggler className={`${baseClass}__nav-toggler`}>\n <NavHamburger />\n </NavToggler>\n </div>\n <Wrapper baseClass={baseClass} className={className}>\n <RenderCustomComponent\n CustomComponent={CustomNav}\n DefaultComponent={DefaultNav}\n componentProps={navProps}\n />\n <div className={`${baseClass}__wrap`}>\n <AppHeader />\n {children}\n </div>\n </Wrapper>\n </div>\n </EntityVisibilityProvider>\n )\n}\n"],"names":["EntityVisibilityProvider","React","AppHeader","NavToggler","DefaultNav","RenderCustomComponent","NavHamburger","Wrapper","baseClass","DefaultTemplate","children","className","config","configPromise","visibleEntities","admin","components","Nav","CustomNav","undefined","navProps","div","id","CustomComponent","DefaultComponent","componentProps"],"mappings":"AAEA,SAASA,wBAAwB,QAAQ,4CAA2C;AACpF,OAAOC,WAAW,QAAO;AAIzB,SAASC,SAAS,QAAQ,oCAAmC;AAC7D,SAASC,UAAU,QAAQ,yCAAwC;AACnE,SAASC,UAAU,QAAQ,8BAA6B;AACxD,SAASC,qBAAqB,QAAQ,gDAA+C;AACrF,SAASC,YAAY,QAAQ,0BAAyB;AACtD,SAASC,OAAO,QAAQ,qBAAoB;AAG5C,MAAMC,YAAY;AASlB,OAAO,MAAMC,kBAAkD,OAAO,EACpEC,QAAQ,EACRC,SAAS,EACTC,QAAQC,aAAa,EACrBC,eAAe,EAChB;IACC,MAAMF,SAAS,MAAMC;IAErB,MAAM,EACJE,OAAO,EACLC,YAAY,EAAEC,KAAKC,SAAS,EAAE,GAAG;QAC/BD,KAAKE;IACP,CAAC,EACF,GAAG,CAAC,CAAC,EACP,GAAGP,UAAU,CAAC;IAEf,MAAMQ,WAAqB;QACzBR;IACF;IAEA,qBACE,oBAACZ;QAAyBc,iBAAiBA;qBACzC,oBAACO,2BACC,oBAACA;QAAIV,WAAW,CAAC,EAAEH,UAAU,qBAAqB,CAAC;QAAEc,IAAG;qBACtD,oBAACnB;QAAWQ,WAAW,CAAC,EAAEH,UAAU,aAAa,CAAC;qBAChD,oBAACF,qCAGL,oBAACC;QAAQC,WAAWA;QAAWG,WAAWA;qBACxC,oBAACN;QACCkB,iBAAiBL;QACjBM,kBAAkBpB;QAClBqB,gBAAgBL;sBAElB,oBAACC;QAAIV,WAAW,CAAC,EAAEH,UAAU,MAAM,CAAC;qBAClC,oBAACN,kBACAQ;AAMb,EAAC"}
@@ -1,4 +1,4 @@
1
+ export { mapFields } from '../providers/ComponentMap/buildComponentMap/fields.js';
1
2
  export { buildComponentMap } from '../providers/ComponentMap/buildComponentMap/index.js';
2
- export { mapFields } from '../providers/ComponentMap/buildComponentMap/mapFields.js';
3
3
  export type * from '../providers/ComponentMap/buildComponentMap/types.js';
4
4
  //# sourceMappingURL=buildComponentMap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildComponentMap.d.ts","sourceRoot":"","sources":["../../src/utilities/buildComponentMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sDAAsD,CAAA;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,0DAA0D,CAAA;AACpF,mBAAmB,sDAAsD,CAAA"}
1
+ {"version":3,"file":"buildComponentMap.d.ts","sourceRoot":"","sources":["../../src/utilities/buildComponentMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uDAAuD,CAAA;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,sDAAsD,CAAA;AACxF,mBAAmB,sDAAsD,CAAA"}
@@ -1,4 +1,4 @@
1
+ export { mapFields } from '../providers/ComponentMap/buildComponentMap/fields.js';
1
2
  export { buildComponentMap } from '../providers/ComponentMap/buildComponentMap/index.js';
2
- export { mapFields } from '../providers/ComponentMap/buildComponentMap/mapFields.js';
3
3
 
4
4
  //# sourceMappingURL=buildComponentMap.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/buildComponentMap.ts"],"sourcesContent":["export { buildComponentMap } from '../providers/ComponentMap/buildComponentMap/index.js'\nexport { mapFields } from '../providers/ComponentMap/buildComponentMap/mapFields.js'\nexport type * from '../providers/ComponentMap/buildComponentMap/types.js'\n"],"names":["buildComponentMap","mapFields"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,uDAAsD;AACxF,SAASC,SAAS,QAAQ,2DAA0D"}
1
+ {"version":3,"sources":["../../src/utilities/buildComponentMap.ts"],"sourcesContent":["export { mapFields } from '../providers/ComponentMap/buildComponentMap/fields.js'\nexport { buildComponentMap } from '../providers/ComponentMap/buildComponentMap/index.js'\nexport type * from '../providers/ComponentMap/buildComponentMap/types.js'\n"],"names":["mapFields","buildComponentMap"],"mappings":"AAAA,SAASA,SAAS,QAAQ,wDAAuD;AACjF,SAASC,iBAAiB,QAAQ,uDAAsD"}
@@ -0,0 +1,10 @@
1
+ import type { FieldMap } from '../providers/ComponentMap/buildComponentMap/types.js';
2
+ /**
3
+ * Flattens a collection's fields into a single array of fields, as long
4
+ * as the fields do not affect data.
5
+ *
6
+ * @param fields
7
+ * @param keepPresentationalFields if true, will skip flattening fields that are presentational only
8
+ */
9
+ export declare const flattenFieldMap: (fieldMap: FieldMap, keepPresentationalFields?: boolean) => FieldMap;
10
+ //# sourceMappingURL=flattenFieldMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flattenFieldMap.d.ts","sourceRoot":"","sources":["../../src/utilities/flattenFieldMap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sDAAsD,CAAA;AAEpF;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,kDAEC,OAAO,aA4BnC,CAAA"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Flattens a collection's fields into a single array of fields, as long
3
+ * as the fields do not affect data.
4
+ *
5
+ * @param fields
6
+ * @param keepPresentationalFields if true, will skip flattening fields that are presentational only
7
+ */ export const flattenFieldMap = (fieldMap, keepPresentationalFields)=>{
8
+ return fieldMap.reduce((acc, field)=>{
9
+ if ('name' in field || keepPresentationalFields && field.fieldIsPresentational) {
10
+ acc.push(field);
11
+ return acc;
12
+ } else if ('fieldMap' in field.fieldComponentProps) {
13
+ acc.push(...flattenFieldMap(field.fieldComponentProps.fieldMap, keepPresentationalFields));
14
+ } else if (field.type === 'tabs' && 'tabs' in field.fieldComponentProps && Array.isArray(field.fieldComponentProps.tabs)) {
15
+ return [
16
+ ...acc,
17
+ ...field.fieldComponentProps.tabs.reduce((tabAcc, tab)=>{
18
+ return [
19
+ ...tabAcc,
20
+ ...'name' in tab ? [
21
+ {
22
+ ...tab
23
+ }
24
+ ] : flattenFieldMap(tab.fieldMap, keepPresentationalFields)
25
+ ];
26
+ }, [])
27
+ ];
28
+ }
29
+ return acc;
30
+ }, []);
31
+ };
32
+
33
+ //# sourceMappingURL=flattenFieldMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utilities/flattenFieldMap.ts"],"sourcesContent":["import type { FieldMap } from '../providers/ComponentMap/buildComponentMap/types.js'\n\n/**\n * Flattens a collection's fields into a single array of fields, as long\n * as the fields do not affect data.\n *\n * @param fields\n * @param keepPresentationalFields if true, will skip flattening fields that are presentational only\n */\nexport const flattenFieldMap = (\n fieldMap: FieldMap,\n keepPresentationalFields?: boolean,\n): FieldMap => {\n return fieldMap.reduce((acc, field) => {\n if ('name' in field || (keepPresentationalFields && field.fieldIsPresentational)) {\n acc.push(field)\n return acc\n } else if ('fieldMap' in field.fieldComponentProps) {\n acc.push(...flattenFieldMap(field.fieldComponentProps.fieldMap, keepPresentationalFields))\n } else if (\n field.type === 'tabs' &&\n 'tabs' in field.fieldComponentProps &&\n Array.isArray(field.fieldComponentProps.tabs)\n ) {\n return [\n ...acc,\n ...field.fieldComponentProps.tabs.reduce((tabAcc, tab) => {\n return [\n ...tabAcc,\n ...('name' in tab\n ? [{ ...tab }]\n : flattenFieldMap(tab.fieldMap, keepPresentationalFields)),\n ]\n }, []),\n ]\n }\n\n return acc\n }, [])\n}\n"],"names":["flattenFieldMap","fieldMap","keepPresentationalFields","reduce","acc","field","fieldIsPresentational","push","fieldComponentProps","type","Array","isArray","tabs","tabAcc","tab"],"mappings":"AAEA;;;;;;CAMC,GACD,OAAO,MAAMA,kBAAkB,CAC7BC,UACAC;IAEA,OAAOD,SAASE,MAAM,CAAC,CAACC,KAAKC;QAC3B,IAAI,UAAUA,SAAUH,4BAA4BG,MAAMC,qBAAqB,EAAG;YAChFF,IAAIG,IAAI,CAACF;YACT,OAAOD;QACT,OAAO,IAAI,cAAcC,MAAMG,mBAAmB,EAAE;YAClDJ,IAAIG,IAAI,IAAIP,gBAAgBK,MAAMG,mBAAmB,CAACP,QAAQ,EAAEC;QAClE,OAAO,IACLG,MAAMI,IAAI,KAAK,UACf,UAAUJ,MAAMG,mBAAmB,IACnCE,MAAMC,OAAO,CAACN,MAAMG,mBAAmB,CAACI,IAAI,GAC5C;YACA,OAAO;mBACFR;mBACAC,MAAMG,mBAAmB,CAACI,IAAI,CAACT,MAAM,CAAC,CAACU,QAAQC;oBAChD,OAAO;2BACFD;2BACC,UAAUC,MACV;4BAAC;gCAAE,GAAGA,GAAG;4BAAC;yBAAE,GACZd,gBAAgBc,IAAIb,QAAQ,EAAEC;qBACnC;gBACH,GAAG,EAAE;aACN;QACH;QAEA,OAAOE;IACT,GAAG,EAAE;AACP,EAAC"}
@@ -3,6 +3,8 @@ import type { BuildFormStateArgs } from '../forms/buildStateFromSchema/index.js'
3
3
  export declare const getFormState: (args: {
4
4
  apiRoute: SanitizedConfig['routes']['api'];
5
5
  body: BuildFormStateArgs;
6
+ onError?: (data?: any) => Promise<void> | void;
6
7
  serverURL: SanitizedConfig['serverURL'];
8
+ signal?: AbortSignal;
7
9
  }) => Promise<FormState>;
8
10
  //# sourceMappingURL=getFormState.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getFormState.d.ts","sourceRoot":"","sources":["../../src/utilities/getFormState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAE/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAA;AAEhF,eAAO,MAAM,YAAY,SAAgB;IACvC,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAA;IAC1C,IAAI,EAAE,kBAAkB,CAAA;IACxB,SAAS,EAAE,eAAe,CAAC,WAAW,CAAC,CAAA;CACxC,KAAG,QAAQ,SAAS,CAkBpB,CAAA"}
1
+ {"version":3,"file":"getFormState.d.ts","sourceRoot":"","sources":["../../src/utilities/getFormState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAE/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAA;AAEhF,eAAO,MAAM,YAAY;cACb,eAAe,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;UACpC,kBAAkB;sBACN,GAAG,KAAK,QAAQ,IAAI,CAAC,GAAG,IAAI;eACnC,eAAe,CAAC,WAAW,CAAC;aAC9B,WAAW;MAClB,QAAQ,SAAS,CAwBpB,CAAA"}
@@ -1,16 +1,21 @@
1
1
  export const getFormState = async (args)=>{
2
- const { apiRoute, body, serverURL } = args;
2
+ const { apiRoute, body, onError, serverURL, signal } = args;
3
3
  const res = await fetch(`${serverURL}${apiRoute}/form-state`, {
4
4
  body: JSON.stringify(body),
5
5
  credentials: 'include',
6
6
  headers: {
7
7
  'Content-Type': 'application/json'
8
8
  },
9
- method: 'POST'
9
+ method: 'POST',
10
+ signal
10
11
  });
12
+ const json = await res.json();
11
13
  if (res.ok) {
12
- const json = await res.json();
13
14
  return json;
15
+ } else {
16
+ if (typeof onError === 'function') {
17
+ void onError(json);
18
+ }
14
19
  }
15
20
  return body?.formState;
16
21
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/getFormState.ts"],"sourcesContent":["import type { FormState, SanitizedConfig } from 'payload/types'\n\nimport type { BuildFormStateArgs } from '../forms/buildStateFromSchema/index.js'\n\nexport const getFormState = async (args: {\n apiRoute: SanitizedConfig['routes']['api']\n body: BuildFormStateArgs\n serverURL: SanitizedConfig['serverURL']\n}): Promise<FormState> => {\n const { apiRoute, body, serverURL } = args\n\n const res = await fetch(`${serverURL}${apiRoute}/form-state`, {\n body: JSON.stringify(body),\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'POST',\n })\n\n if (res.ok) {\n const json = (await res.json()) as FormState\n return json\n }\n\n return body?.formState\n}\n"],"names":["getFormState","args","apiRoute","body","serverURL","res","fetch","JSON","stringify","credentials","headers","method","ok","json","formState"],"mappings":"AAIA,OAAO,MAAMA,eAAe,OAAOC;IAKjC,MAAM,EAAEC,QAAQ,EAAEC,IAAI,EAAEC,SAAS,EAAE,GAAGH;IAEtC,MAAMI,MAAM,MAAMC,MAAM,CAAC,EAAEF,UAAU,EAAEF,SAAS,WAAW,CAAC,EAAE;QAC5DC,MAAMI,KAAKC,SAAS,CAACL;QACrBM,aAAa;QACbC,SAAS;YACP,gBAAgB;QAClB;QACAC,QAAQ;IACV;IAEA,IAAIN,IAAIO,EAAE,EAAE;QACV,MAAMC,OAAQ,MAAMR,IAAIQ,IAAI;QAC5B,OAAOA;IACT;IAEA,OAAOV,MAAMW;AACf,EAAC"}
1
+ {"version":3,"sources":["../../src/utilities/getFormState.ts"],"sourcesContent":["import type { FormState, SanitizedConfig } from 'payload/types'\n\nimport type { BuildFormStateArgs } from '../forms/buildStateFromSchema/index.js'\n\nexport const getFormState = async (args: {\n apiRoute: SanitizedConfig['routes']['api']\n body: BuildFormStateArgs\n onError?: (data?: any) => Promise<void> | void\n serverURL: SanitizedConfig['serverURL']\n signal?: AbortSignal\n}): Promise<FormState> => {\n const { apiRoute, body, onError, serverURL, signal } = args\n\n const res = await fetch(`${serverURL}${apiRoute}/form-state`, {\n body: JSON.stringify(body),\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'POST',\n signal,\n })\n\n const json = (await res.json()) as FormState\n\n if (res.ok) {\n return json\n } else {\n if (typeof onError === 'function') {\n void onError(json)\n }\n }\n\n return body?.formState\n}\n"],"names":["getFormState","args","apiRoute","body","onError","serverURL","signal","res","fetch","JSON","stringify","credentials","headers","method","json","ok","formState"],"mappings":"AAIA,OAAO,MAAMA,eAAe,OAAOC;IAOjC,MAAM,EAAEC,QAAQ,EAAEC,IAAI,EAAEC,OAAO,EAAEC,SAAS,EAAEC,MAAM,EAAE,GAAGL;IAEvD,MAAMM,MAAM,MAAMC,MAAM,CAAC,EAAEH,UAAU,EAAEH,SAAS,WAAW,CAAC,EAAE;QAC5DC,MAAMM,KAAKC,SAAS,CAACP;QACrBQ,aAAa;QACbC,SAAS;YACP,gBAAgB;QAClB;QACAC,QAAQ;QACRP;IACF;IAEA,MAAMQ,OAAQ,MAAMP,IAAIO,IAAI;IAE5B,IAAIP,IAAIQ,EAAE,EAAE;QACV,OAAOD;IACT,OAAO;QACL,IAAI,OAAOV,YAAY,YAAY;YACjC,KAAKA,QAAQU;QACf;IACF;IAEA,OAAOX,MAAMa;AACf,EAAC"}
package/package.json CHANGED
@@ -1,7 +1,13 @@
1
1
  {
2
2
  "name": "@payloadcms/ui",
3
- "version": "3.0.0-alpha.49",
3
+ "version": "3.0.0-alpha.50",
4
4
  "type": "module",
5
+ "homepage": "https://payloadcms.com",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "https://github.com/payloadcms/payload.git",
9
+ "directory": "packages/ui"
10
+ },
5
11
  "exports": {
6
12
  ".": "./dist/exports/index.js",
7
13
  "./assets/*": "./dist/assets/*",
@@ -101,7 +107,7 @@
101
107
  "webpack": "^5.78.0",
102
108
  "webpack-cli": "^5.1.4",
103
109
  "@payloadcms/eslint-config": "1.1.1",
104
- "payload": "3.0.0-alpha.49"
110
+ "payload": "3.0.0-alpha.50"
105
111
  },
106
112
  "dependencies": {
107
113
  "@dnd-kit/core": "6.0.8",
@@ -125,12 +131,12 @@
125
131
  "react-toastify": "10.0.4",
126
132
  "use-context-selector": "1.4.1",
127
133
  "uuid": "9.0.1",
128
- "@payloadcms/translations": "3.0.0-alpha.49"
134
+ "@payloadcms/translations": "3.0.0-alpha.50"
129
135
  },
130
136
  "peerDependencies": {
131
137
  "next": "14.2.0-canary.23",
132
138
  "react": "^18.0.0",
133
- "payload": "3.0.0-alpha.49"
139
+ "payload": "3.0.0-alpha.50"
134
140
  },
135
141
  "engines": {
136
142
  "node": ">=18.17.0"
@@ -1 +0,0 @@
1
- {"version":3,"file":"buildColumns.d.ts","sourceRoot":"","sources":["../../../src/elements/TableColumns/buildColumns.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,yBAAyB,EAAE,MAAM,eAAe,CAAA;AAG9E,OAAO,KAAK,EAAE,QAAQ,EAAe,MAAM,yDAAyD,CAAA;AACpG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AAC1E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAS/C,eAAO,MAAM,YAAY,SAAU;IACjC,SAAS,EAAE,QAAQ,SAAS,CAAC,EAAE,CAAA;IAC/B,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,QAAQ,EAAE,QAAQ,CAAA;IAClB,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;CAC7D,KAAG,MAAM,EAgHT,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/elements/TableColumns/buildColumns.tsx"],"sourcesContent":["import { type CellProps, type SanitizedCollectionConfig } from 'payload/types'\nimport React from 'react'\n\nimport type { FieldMap, MappedField } from '../../providers/ComponentMap/buildComponentMap/types.js'\nimport type { ColumnPreferences } from '../../providers/ListInfo/index.js'\nimport type { Column } from '../Table/index.js'\n\nimport { SelectAll } from '../SelectAll/index.js'\nimport { SelectRow } from '../SelectRow/index.js'\nimport { SortColumn } from '../SortColumn/index.js'\nimport { DefaultCell } from '../Table/DefaultCell/index.js'\n\nconst fieldIsPresentationalOnly = (field: MappedField): boolean => field.type === 'ui'\n\nexport const buildColumns = (args: {\n cellProps: Partial<CellProps>[]\n columnPreferences: ColumnPreferences\n defaultColumns?: string[]\n enableRowSelections: boolean\n fieldMap: FieldMap\n useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n}): Column[] => {\n const { cellProps, columnPreferences, defaultColumns, enableRowSelections, fieldMap } = args\n\n let sortedFieldMap = fieldMap\n\n const sortTo = defaultColumns || columnPreferences\n\n if (sortTo) {\n // sort the fields to the order of `defaultColumns` or `columnPreferences`\n // TODO: flatten top level field, i.e. `flattenTopLevelField()` from `payload` but that is typed for `Field`, not `fieldMap`\n sortedFieldMap = fieldMap.sort((a, b) => {\n const aIndex = sortTo.findIndex((column) => 'name' in a && column.accessor === a.name)\n const bIndex = sortTo.findIndex((column) => 'name' in b && column.accessor === b.name)\n if (aIndex === -1 && bIndex === -1) return 0\n if (aIndex === -1) return 1\n if (bIndex === -1) return -1\n return aIndex - bIndex\n })\n }\n\n const activeColumnsIndices = []\n\n const sorted = sortedFieldMap.reduce((acc, field, index) => {\n const columnPreference = columnPreferences?.find(\n (preference) => 'name' in field && preference.accessor === field.name,\n )\n\n let active = false\n\n if (columnPreference) {\n active = columnPreference.active\n } else if (defaultColumns && Array.isArray(defaultColumns) && defaultColumns.length > 0) {\n active = 'name' in field && defaultColumns.includes(field.name)\n } else if (activeColumnsIndices.length < 4) {\n active = true\n }\n\n if (active && !activeColumnsIndices.includes(index)) {\n activeColumnsIndices.push(index)\n }\n\n const isFirstActiveColumn = activeColumnsIndices[0] === index\n\n const name = 'name' in field ? field.name : undefined\n\n const Cell =\n field.CustomCell !== undefined ? (\n field.CustomCell\n ) : (\n <DefaultCell {...field.cellComponentProps} />\n )\n\n const Heading = (\n <SortColumn\n disable={\n ('disableSort' in field && Boolean(field.disableSort)) ||\n fieldIsPresentationalOnly(field) ||\n undefined\n }\n label={\n 'label' in field.fieldComponentProps &&\n field.fieldComponentProps.label &&\n typeof field.fieldComponentProps.label !== 'function'\n ? field.fieldComponentProps.label\n : 'name' in field\n ? field.name\n : undefined\n }\n name={'name' in field ? field.name : undefined}\n />\n )\n\n if (field) {\n const column: Column = {\n name,\n accessor: name,\n active,\n cellProps: {\n ...cellProps?.[index],\n link: isFirstActiveColumn,\n },\n components: {\n Cell,\n Heading,\n },\n label:\n 'label' in field.fieldComponentProps &&\n typeof field.fieldComponentProps.label !== 'function'\n ? field.fieldComponentProps.label\n : undefined,\n }\n\n acc.push(column)\n }\n\n return acc\n }, [])\n\n if (enableRowSelections) {\n sorted.unshift({\n name: '',\n accessor: '_select',\n active: true,\n components: {\n Cell: <SelectRow />,\n Heading: <SelectAll />,\n },\n label: null,\n })\n }\n\n return sorted\n}\n"],"names":["React","SelectAll","SelectRow","SortColumn","DefaultCell","fieldIsPresentationalOnly","field","type","buildColumns","args","cellProps","columnPreferences","defaultColumns","enableRowSelections","fieldMap","sortedFieldMap","sortTo","sort","a","b","aIndex","findIndex","column","accessor","name","bIndex","activeColumnsIndices","sorted","reduce","acc","index","columnPreference","find","preference","active","Array","isArray","length","includes","push","isFirstActiveColumn","undefined","Cell","CustomCell","cellComponentProps","Heading","disable","Boolean","disableSort","label","fieldComponentProps","link","components","unshift"],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import type { Where } from 'payload/types';
2
- import type { Action } from './types.js';
3
- declare const reducer: (callback?: (state: Where[]) => void) => (state: Where[], action: Action) => Where[];
4
- export default reducer;
5
- //# sourceMappingURL=reducer.d.ts.map