@payloadcms/ui 3.0.0-beta.3 → 3.0.0-beta.31

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 (371) hide show
  1. package/dist/assets/index.d.ts +3 -1
  2. package/dist/assets/index.d.ts.map +1 -1
  3. package/dist/assets/index.js +3 -1
  4. package/dist/assets/index.js.map +1 -1
  5. package/dist/assets/payload-favicon-dark.png +0 -0
  6. package/dist/assets/payload-favicon-light.png +0 -0
  7. package/dist/elements/ArrayAction/index.d.ts +1 -0
  8. package/dist/elements/ArrayAction/index.d.ts.map +1 -1
  9. package/dist/elements/ArrayAction/index.js +3 -3
  10. package/dist/elements/ArrayAction/index.js.map +1 -1
  11. package/dist/elements/Autosave/index.d.ts.map +1 -1
  12. package/dist/elements/Autosave/index.js +15 -3
  13. package/dist/elements/Autosave/index.js.map +1 -1
  14. package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
  15. package/dist/elements/ColumnSelector/index.js +8 -2
  16. package/dist/elements/ColumnSelector/index.js.map +1 -1
  17. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  18. package/dist/elements/DocumentControls/index.js +2 -1
  19. package/dist/elements/DocumentControls/index.js.map +1 -1
  20. package/dist/elements/DocumentControls/index.scss +2 -2
  21. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  22. package/dist/elements/DocumentDrawer/DrawerContent.js +7 -7
  23. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  24. package/dist/elements/DocumentDrawer/types.d.ts +0 -1
  25. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  26. package/dist/elements/DocumentFields/index.js +1 -1
  27. package/dist/elements/DocumentFields/index.js.map +1 -1
  28. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
  29. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +3 -2
  30. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  31. package/dist/elements/DocumentHeader/Tabs/index.d.ts +2 -0
  32. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  33. package/dist/elements/DocumentHeader/Tabs/index.js +3 -2
  34. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  35. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  36. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +1 -1
  37. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  38. package/dist/elements/DocumentHeader/index.d.ts +2 -0
  39. package/dist/elements/DocumentHeader/index.d.ts.map +1 -1
  40. package/dist/elements/DocumentHeader/index.js +3 -2
  41. package/dist/elements/DocumentHeader/index.js.map +1 -1
  42. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts +0 -1
  43. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts.map +1 -1
  44. package/dist/elements/Drawer/types.d.ts +0 -1
  45. package/dist/elements/Drawer/types.d.ts.map +1 -1
  46. package/dist/elements/EditMany/index.js +2 -2
  47. package/dist/elements/EditMany/index.js.map +1 -1
  48. package/dist/elements/EditUpload/index.d.ts +12 -0
  49. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  50. package/dist/elements/EditUpload/index.js +25 -25
  51. package/dist/elements/EditUpload/index.js.map +1 -1
  52. package/dist/elements/ErrorPill/index.d.ts +2 -2
  53. package/dist/elements/ErrorPill/index.d.ts.map +1 -1
  54. package/dist/elements/ErrorPill/index.js.map +1 -1
  55. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  56. package/dist/elements/FieldSelect/index.js +4 -1
  57. package/dist/elements/FieldSelect/index.js.map +1 -1
  58. package/dist/elements/HydrateClientUser/index.d.ts +3 -2
  59. package/dist/elements/HydrateClientUser/index.d.ts.map +1 -1
  60. package/dist/elements/HydrateClientUser/index.js.map +1 -1
  61. package/dist/elements/ListControls/index.d.ts.map +1 -1
  62. package/dist/elements/ListControls/index.js +16 -3
  63. package/dist/elements/ListControls/index.js.map +1 -1
  64. package/dist/elements/ListDrawer/types.d.ts +0 -1
  65. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  66. package/dist/elements/Nav/index.d.ts +2 -2
  67. package/dist/elements/Nav/index.d.ts.map +1 -1
  68. package/dist/elements/Nav/index.js +15 -8
  69. package/dist/elements/Nav/index.js.map +1 -1
  70. package/dist/elements/Pill/index.d.ts +0 -1
  71. package/dist/elements/Pill/index.d.ts.map +1 -1
  72. package/dist/elements/Publish/index.js +1 -1
  73. package/dist/elements/Publish/index.js.map +1 -1
  74. package/dist/elements/PublishMany/index.js +1 -1
  75. package/dist/elements/PublishMany/index.js.map +1 -1
  76. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  77. package/dist/elements/ReactSelect/index.js +4 -1
  78. package/dist/elements/ReactSelect/index.js.map +1 -1
  79. package/dist/elements/RenderCustomComponent/index.d.ts +5 -0
  80. package/dist/elements/RenderCustomComponent/index.d.ts.map +1 -1
  81. package/dist/elements/RenderCustomComponent/index.js +11 -2
  82. package/dist/elements/RenderCustomComponent/index.js.map +1 -1
  83. package/dist/elements/Save/index.d.ts.map +1 -1
  84. package/dist/elements/Save/index.js +7 -1
  85. package/dist/elements/Save/index.js.map +1 -1
  86. package/dist/elements/SaveDraft/index.d.ts.map +1 -1
  87. package/dist/elements/SaveDraft/index.js +8 -5
  88. package/dist/elements/SaveDraft/index.js.map +1 -1
  89. package/dist/elements/Status/index.js.map +1 -1
  90. package/dist/elements/StayLoggedIn/index.d.ts +2 -4
  91. package/dist/elements/StayLoggedIn/index.d.ts.map +1 -1
  92. package/dist/elements/StayLoggedIn/index.js +7 -6
  93. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  94. package/dist/elements/StayLoggedIn/index.scss +1 -1
  95. package/dist/elements/StepNav/index.scss +1 -2
  96. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts.map +1 -1
  97. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +6 -2
  98. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  99. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +1 -1
  100. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  101. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  102. package/dist/elements/Table/DefaultCell/index.js +1 -1
  103. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  104. package/dist/elements/Table/index.d.ts +1 -0
  105. package/dist/elements/Table/index.d.ts.map +1 -1
  106. package/dist/elements/Table/index.js.map +1 -1
  107. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  108. package/dist/elements/TableColumns/buildColumnState.js +7 -1
  109. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  110. package/dist/elements/Translation/index.d.ts +2 -2
  111. package/dist/elements/Translation/index.d.ts.map +1 -1
  112. package/dist/elements/Translation/index.js.map +1 -1
  113. package/dist/elements/Upload/index.d.ts.map +1 -1
  114. package/dist/elements/Upload/index.js +37 -1
  115. package/dist/elements/Upload/index.js.map +1 -1
  116. package/dist/elements/Upload/index.scss +12 -1
  117. package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts +3 -3
  118. package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts.map +1 -1
  119. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  120. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  121. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  122. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts.map +1 -1
  123. package/dist/elements/WhereBuilder/reduceFieldMap.js +1 -0
  124. package/dist/elements/WhereBuilder/reduceFieldMap.js.map +1 -1
  125. package/dist/elements/WithServerSideProps/index.d.ts +3 -0
  126. package/dist/elements/WithServerSideProps/index.d.ts.map +1 -0
  127. package/dist/elements/WithServerSideProps/index.js +19 -0
  128. package/dist/elements/WithServerSideProps/index.js.map +1 -0
  129. package/dist/elements/withMergedProps/index.d.ts +2 -1
  130. package/dist/elements/withMergedProps/index.d.ts.map +1 -1
  131. package/dist/elements/withMergedProps/index.js +7 -1
  132. package/dist/elements/withMergedProps/index.js.map +1 -1
  133. package/dist/exports/elements.d.ts +3 -2
  134. package/dist/exports/elements.d.ts.map +1 -1
  135. package/dist/exports/elements.js +5 -2
  136. package/dist/exports/elements.js.map +1 -1
  137. package/dist/exports/fields.d.ts +2 -0
  138. package/dist/exports/fields.d.ts.map +1 -0
  139. package/dist/exports/fields.js +3 -0
  140. package/dist/exports/fields.js.map +1 -0
  141. package/dist/exports/providers.d.ts +2 -0
  142. package/dist/exports/providers.d.ts.map +1 -0
  143. package/dist/exports/providers.js +3 -0
  144. package/dist/exports/providers.js.map +1 -0
  145. package/dist/fields/Array/ArrayRow.d.ts +1 -0
  146. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  147. package/dist/fields/Array/ArrayRow.js +4 -3
  148. package/dist/fields/Array/ArrayRow.js.map +1 -1
  149. package/dist/fields/Array/index.d.ts +1 -2
  150. package/dist/fields/Array/index.d.ts.map +1 -1
  151. package/dist/fields/Array/index.js +4 -3
  152. package/dist/fields/Array/index.js.map +1 -1
  153. package/dist/fields/Blocks/BlockRow.d.ts +1 -0
  154. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  155. package/dist/fields/Blocks/BlockRow.js +4 -3
  156. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  157. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  158. package/dist/fields/Blocks/RowActions.d.ts +1 -0
  159. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  160. package/dist/fields/Blocks/RowActions.js +2 -1
  161. package/dist/fields/Blocks/RowActions.js.map +1 -1
  162. package/dist/fields/Blocks/index.d.ts +2 -2
  163. package/dist/fields/Blocks/index.d.ts.map +1 -1
  164. package/dist/fields/Blocks/index.js +3 -2
  165. package/dist/fields/Blocks/index.js.map +1 -1
  166. package/dist/fields/Checkbox/Input.d.ts +3 -3
  167. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  168. package/dist/fields/Checkbox/Input.js.map +1 -1
  169. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  170. package/dist/fields/Checkbox/index.js +3 -1
  171. package/dist/fields/Checkbox/index.js.map +1 -1
  172. package/dist/fields/Checkbox/types.d.ts +0 -2
  173. package/dist/fields/Checkbox/types.d.ts.map +1 -1
  174. package/dist/fields/Checkbox/types.js.map +1 -1
  175. package/dist/fields/Code/index.d.ts +1 -2
  176. package/dist/fields/Code/index.d.ts.map +1 -1
  177. package/dist/fields/Code/index.js.map +1 -1
  178. package/dist/fields/Collapsible/index.d.ts +0 -2
  179. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  180. package/dist/fields/Collapsible/index.js +2 -2
  181. package/dist/fields/Collapsible/index.js.map +1 -1
  182. package/dist/fields/ConfirmPassword/index.js +1 -1
  183. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  184. package/dist/fields/DateTime/index.d.ts +1 -2
  185. package/dist/fields/DateTime/index.d.ts.map +1 -1
  186. package/dist/fields/DateTime/index.js.map +1 -1
  187. package/dist/fields/Email/index.d.ts +1 -2
  188. package/dist/fields/Email/index.d.ts.map +1 -1
  189. package/dist/fields/Email/index.js.map +1 -1
  190. package/dist/fields/Group/index.d.ts +0 -2
  191. package/dist/fields/Group/index.d.ts.map +1 -1
  192. package/dist/fields/Group/index.js +3 -3
  193. package/dist/fields/Group/index.js.map +1 -1
  194. package/dist/fields/HiddenInput/index.d.ts +1 -1
  195. package/dist/fields/HiddenInput/index.d.ts.map +1 -1
  196. package/dist/fields/HiddenInput/index.js.map +1 -1
  197. package/dist/fields/JSON/index.d.ts +2 -2
  198. package/dist/fields/JSON/index.d.ts.map +1 -1
  199. package/dist/fields/JSON/index.js +20 -1
  200. package/dist/fields/JSON/index.js.map +1 -1
  201. package/dist/fields/Number/index.d.ts +1 -2
  202. package/dist/fields/Number/index.d.ts.map +1 -1
  203. package/dist/fields/Number/index.js.map +1 -1
  204. package/dist/fields/Password/index.d.ts +0 -1
  205. package/dist/fields/Password/index.d.ts.map +1 -1
  206. package/dist/fields/Password/index.js.map +1 -1
  207. package/dist/fields/Point/index.d.ts +0 -2
  208. package/dist/fields/Point/index.d.ts.map +1 -1
  209. package/dist/fields/Point/index.js +2 -2
  210. package/dist/fields/Point/index.js.map +1 -1
  211. package/dist/fields/RadioGroup/Radio/index.d.ts +1 -0
  212. package/dist/fields/RadioGroup/Radio/index.d.ts.map +1 -1
  213. package/dist/fields/RadioGroup/Radio/index.js +5 -2
  214. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  215. package/dist/fields/RadioGroup/Radio/index.scss +0 -28
  216. package/dist/fields/RadioGroup/index.d.ts +1 -2
  217. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  218. package/dist/fields/RadioGroup/index.js +1 -0
  219. package/dist/fields/RadioGroup/index.js.map +1 -1
  220. package/dist/fields/RadioGroup/index.scss +28 -0
  221. package/dist/fields/Relationship/types.d.ts +4 -5
  222. package/dist/fields/Relationship/types.d.ts.map +1 -1
  223. package/dist/fields/Relationship/types.js.map +1 -1
  224. package/dist/fields/RichText/index.d.ts +0 -2
  225. package/dist/fields/RichText/index.d.ts.map +1 -1
  226. package/dist/fields/RichText/index.js.map +1 -1
  227. package/dist/fields/Select/index.d.ts +1 -2
  228. package/dist/fields/Select/index.d.ts.map +1 -1
  229. package/dist/fields/Select/index.js.map +1 -1
  230. package/dist/fields/Text/index.d.ts.map +1 -1
  231. package/dist/fields/Text/index.js +2 -1
  232. package/dist/fields/Text/index.js.map +1 -1
  233. package/dist/fields/Text/types.d.ts +1 -2
  234. package/dist/fields/Text/types.d.ts.map +1 -1
  235. package/dist/fields/Text/types.js.map +1 -1
  236. package/dist/fields/Textarea/index.d.ts.map +1 -1
  237. package/dist/fields/Textarea/index.js +2 -1
  238. package/dist/fields/Textarea/index.js.map +1 -1
  239. package/dist/fields/Textarea/types.d.ts +1 -2
  240. package/dist/fields/Textarea/types.d.ts.map +1 -1
  241. package/dist/fields/Textarea/types.js.map +1 -1
  242. package/dist/fields/Upload/types.d.ts +0 -1
  243. package/dist/fields/Upload/types.d.ts.map +1 -1
  244. package/dist/fields/Upload/types.js.map +1 -1
  245. package/dist/fields/shared/index.d.ts +4 -2
  246. package/dist/fields/shared/index.d.ts.map +1 -1
  247. package/dist/fields/shared/index.js.map +1 -1
  248. package/dist/forms/FieldLabel/index.d.ts.map +1 -1
  249. package/dist/forms/FieldLabel/index.js +3 -1
  250. package/dist/forms/FieldLabel/index.js.map +1 -1
  251. package/dist/forms/FieldPropsProvider/index.d.ts +2 -0
  252. package/dist/forms/FieldPropsProvider/index.d.ts.map +1 -1
  253. package/dist/forms/FieldPropsProvider/index.js +5 -3
  254. package/dist/forms/FieldPropsProvider/index.js.map +1 -1
  255. package/dist/forms/RenderFields/RenderField.d.ts +1 -0
  256. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  257. package/dist/forms/RenderFields/RenderField.js +2 -1
  258. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  259. package/dist/forms/RenderFields/index.d.ts.map +1 -1
  260. package/dist/forms/RenderFields/index.js +2 -1
  261. package/dist/forms/RenderFields/index.js.map +1 -1
  262. package/dist/forms/RowLabel/types.d.ts +4 -5
  263. package/dist/forms/RowLabel/types.d.ts.map +1 -1
  264. package/dist/forms/RowLabel/types.js +1 -4
  265. package/dist/forms/RowLabel/types.js.map +1 -1
  266. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts +3 -5
  267. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
  268. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js +2 -1
  269. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  270. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.d.ts +2 -2
  271. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.d.ts.map +1 -1
  272. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.js.map +1 -1
  273. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.d.ts +2 -2
  274. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.d.ts.map +1 -1
  275. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.js.map +1 -1
  276. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.d.ts +2 -2
  277. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.d.ts.map +1 -1
  278. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js +1 -0
  279. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js.map +1 -1
  280. package/dist/forms/buildStateFromSchema/index.d.ts +3 -5
  281. package/dist/forms/buildStateFromSchema/index.d.ts.map +1 -1
  282. package/dist/forms/buildStateFromSchema/index.js.map +1 -1
  283. package/dist/forms/buildStateFromSchema/iterateFields.d.ts +3 -5
  284. package/dist/forms/buildStateFromSchema/iterateFields.d.ts.map +1 -1
  285. package/dist/forms/buildStateFromSchema/iterateFields.js.map +1 -1
  286. package/dist/forms/useField/index.d.ts.map +1 -1
  287. package/dist/forms/useField/index.js +3 -1
  288. package/dist/forms/useField/index.js.map +1 -1
  289. package/dist/graphics/Account/index.js +0 -9
  290. package/dist/graphics/Account/index.js.map +1 -1
  291. package/dist/graphics/Logo/index.d.ts +2 -2
  292. package/dist/graphics/Logo/index.d.ts.map +1 -1
  293. package/dist/graphics/Logo/index.js +4 -3
  294. package/dist/graphics/Logo/index.js.map +1 -1
  295. package/dist/providers/Auth/index.d.ts.map +1 -1
  296. package/dist/providers/Auth/index.js +2 -1
  297. package/dist/providers/Auth/index.js.map +1 -1
  298. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts +2 -1
  299. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts.map +1 -1
  300. package/dist/providers/ComponentMap/buildComponentMap/actions.js +7 -3
  301. package/dist/providers/ComponentMap/buildComponentMap/actions.js.map +1 -1
  302. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts +5 -4
  303. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts.map +1 -1
  304. package/dist/providers/ComponentMap/buildComponentMap/collections.js +50 -17
  305. package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +1 -1
  306. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts +4 -3
  307. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +1 -1
  308. package/dist/providers/ComponentMap/buildComponentMap/fields.js +92 -46
  309. package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +1 -1
  310. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts +11 -8
  311. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts.map +1 -1
  312. package/dist/providers/ComponentMap/buildComponentMap/globals.js +34 -9
  313. package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +1 -1
  314. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts +4 -3
  315. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts.map +1 -1
  316. package/dist/providers/ComponentMap/buildComponentMap/index.js +27 -9
  317. package/dist/providers/ComponentMap/buildComponentMap/index.js.map +1 -1
  318. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts +4 -0
  319. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts.map +1 -1
  320. package/dist/providers/ComponentMap/buildComponentMap/types.js.map +1 -1
  321. package/dist/providers/DocumentInfo/index.js +8 -7
  322. package/dist/providers/DocumentInfo/index.js.map +1 -1
  323. package/dist/providers/EntityVisibility/index.d.ts +1 -1
  324. package/dist/providers/EntityVisibility/index.d.ts.map +1 -1
  325. package/dist/providers/EntityVisibility/index.js.map +1 -1
  326. package/dist/providers/Root/index.d.ts +2 -2
  327. package/dist/providers/Root/index.d.ts.map +1 -1
  328. package/dist/providers/Root/index.js +2 -1
  329. package/dist/providers/Root/index.js.map +1 -1
  330. package/dist/providers/Translation/index.d.ts +10 -8
  331. package/dist/providers/Translation/index.d.ts.map +1 -1
  332. package/dist/providers/Translation/index.js +2 -1
  333. package/dist/providers/Translation/index.js.map +1 -1
  334. package/dist/scss/app.scss +2 -3
  335. package/dist/scss/vars.scss +0 -7
  336. package/dist/templates/Default/index.d.ts +2 -2
  337. package/dist/templates/Default/index.d.ts.map +1 -1
  338. package/dist/templates/Default/index.js +5 -5
  339. package/dist/templates/Default/index.js.map +1 -1
  340. package/dist/utilities/formatDate.d.ts +2 -2
  341. package/dist/utilities/formatDate.d.ts.map +1 -1
  342. package/dist/utilities/formatDate.js.map +1 -1
  343. package/dist/utilities/formatDocTitle.d.ts +1 -1
  344. package/dist/utilities/formatDocTitle.d.ts.map +1 -1
  345. package/dist/utilities/formatDocTitle.js.map +1 -1
  346. package/dist/utilities/generateFieldID.d.ts +1 -1
  347. package/dist/utilities/generateFieldID.d.ts.map +1 -1
  348. package/dist/utilities/generateFieldID.js +2 -2
  349. package/dist/utilities/generateFieldID.js.map +1 -1
  350. package/dist/utilities/groupNavItems.d.ts +2 -2
  351. package/dist/utilities/groupNavItems.d.ts.map +1 -1
  352. package/dist/utilities/groupNavItems.js.map +1 -1
  353. package/package.json +35 -34
  354. package/dist/assets/fonts/SuisseIntl-Bold.woff +0 -0
  355. package/dist/assets/fonts/SuisseIntl-Bold.woff2 +0 -0
  356. package/dist/assets/fonts/SuisseIntl-Medium.woff +0 -0
  357. package/dist/assets/fonts/SuisseIntl-Medium.woff2 +0 -0
  358. package/dist/assets/fonts/SuisseIntl-SemiBold.woff +0 -0
  359. package/dist/assets/fonts/SuisseIntl-SemiBold.woff2 +0 -0
  360. package/dist/assets/fonts/SuisseIntl.woff +0 -0
  361. package/dist/assets/fonts/SuisseIntl.woff2 +0 -0
  362. package/dist/assets/fonts/merriweather-v30-latin-900.woff +0 -0
  363. package/dist/assets/fonts/merriweather-v30-latin-900.woff2 +0 -0
  364. package/dist/assets/fonts/merriweather-v30-latin-900italic.woff +0 -0
  365. package/dist/assets/fonts/merriweather-v30-latin-900italic.woff2 +0 -0
  366. package/dist/assets/fonts/merriweather-v30-latin-italic.woff +0 -0
  367. package/dist/assets/fonts/merriweather-v30-latin-italic.woff2 +0 -0
  368. package/dist/assets/fonts/merriweather-v30-latin-regular.woff +0 -0
  369. package/dist/assets/fonts/merriweather-v30-latin-regular.woff2 +0 -0
  370. package/dist/scss/fonts.scss +0 -75
  371. /package/dist/assets/{favicon.svg → payload-favicon.svg} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/RenderCustomComponent/index.tsx"],"sourcesContent":["import React from 'react'\n\nexport type RenderCustomComponentProps = {\n CustomComponent?: React.ComponentType<any>\n DefaultComponent: React.ComponentType<any>\n componentProps?: Record<string, any>\n}\n\nexport const RenderCustomComponent: React.FC<RenderCustomComponentProps> = (props) => {\n const { CustomComponent, DefaultComponent, componentProps = {} } = props\n\n if (CustomComponent) {\n return <CustomComponent {...componentProps} />\n }\n\n if (DefaultComponent) {\n return <DefaultComponent {...componentProps} />\n }\n\n return null\n}\n"],"names":["React","RenderCustomComponent","props","CustomComponent","DefaultComponent","componentProps"],"rangeMappings":";;;;;;;;;;","mappings":"AAAA,OAAOA,WAAW,QAAO;AAQzB,OAAO,MAAMC,wBAA8D,CAACC;IAC1E,MAAM,EAAEC,eAAe,EAAEC,gBAAgB,EAAEC,iBAAiB,CAAC,CAAC,EAAE,GAAGH;IAEnE,IAAIC,iBAAiB;QACnB,qBAAO,oBAACA,iBAAoBE;IAC9B;IAEA,IAAID,kBAAkB;QACpB,qBAAO,oBAACA,kBAAqBC;IAC/B;IAEA,OAAO;AACT,EAAC"}
1
+ {"version":3,"sources":["../../../src/elements/RenderCustomComponent/index.tsx"],"sourcesContent":["import type { Payload } from 'payload'\n\nimport { WithServerSideProps } from '@payloadcms/ui/elements/WithServerSideProps'\nimport React from 'react'\n\nexport type RenderCustomComponentProps = {\n CustomComponent?: React.ComponentType<any>\n DefaultComponent: React.ComponentType<any>\n componentProps?: Record<string, any>\n /**\n * Payload automatically gets added to the component if it's an RSC\n */\n payload?: Payload\n}\n\nexport const RenderCustomComponent: React.FC<RenderCustomComponentProps> = (props) => {\n const { CustomComponent, DefaultComponent, componentProps = {} } = props\n\n if (CustomComponent) {\n return <WithServerSideProps Component={CustomComponent} payload={null} {...componentProps} />\n }\n\n if (DefaultComponent) {\n return <WithServerSideProps Component={DefaultComponent} payload={null} {...componentProps} />\n }\n\n return null\n}\n"],"names":["WithServerSideProps","React","RenderCustomComponent","props","CustomComponent","DefaultComponent","componentProps","Component","payload"],"rangeMappings":";;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,mBAAmB,QAAQ,8CAA6C;AACjF,OAAOC,WAAW,QAAO;AAYzB,OAAO,MAAMC,wBAA8D,CAACC;IAC1E,MAAM,EAAEC,eAAe,EAAEC,gBAAgB,EAAEC,iBAAiB,CAAC,CAAC,EAAE,GAAGH;IAEnE,IAAIC,iBAAiB;QACnB,qBAAO,oBAACJ;YAAoBO,WAAWH;YAAiBI,SAAS;YAAO,GAAGF,cAAc;;IAC3F;IAEA,IAAID,kBAAkB;QACpB,qBAAO,oBAACL;YAAoBO,WAAWF;YAAkBG,SAAS;YAAO,GAAGF,cAAc;;IAC5F;IAEA,OAAO;AACT,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Save/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAiB,MAAM,OAAO,CAAA;AAQrC,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CA0B1D,CAAA;AAED,KAAK,KAAK,GAAG;IACX,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAClC,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAIhC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Save/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAiB,MAAM,OAAO,CAAA;AASrC,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAiC1D,CAAA;AAED,KAAK,KAAK,GAAG;IACX,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAClC,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAIhC,CAAA"}
@@ -1,16 +1,20 @@
1
1
  'use client';
2
2
  import React, { useRef } from 'react';
3
- import { useForm } from '../../forms/Form/context.js';
3
+ import { useForm, useFormModified } from '../../forms/Form/context.js';
4
4
  import { FormSubmit } from '../../forms/Submit/index.js';
5
5
  import { useHotkey } from '../../hooks/useHotkey.js';
6
6
  import { useEditDepth } from '../../providers/EditDepth/index.js';
7
+ import { useOperation } from '../../providers/Operation/index.js';
7
8
  import { useTranslation } from '../../providers/Translation/index.js';
8
9
  export const DefaultSaveButton = ({ label: labelProp })=>{
9
10
  const { t } = useTranslation();
10
11
  const { submit } = useForm();
12
+ const modified = useFormModified();
11
13
  const label = labelProp || t('general:save');
12
14
  const ref = useRef(null);
13
15
  const editDepth = useEditDepth();
16
+ const operation = useOperation();
17
+ const forceDisable = operation === 'update' && !modified;
14
18
  useHotkey({
15
19
  cmdCtrlKey: true,
16
20
  editDepth,
@@ -18,6 +22,7 @@ export const DefaultSaveButton = ({ label: labelProp })=>{
18
22
  's'
19
23
  ]
20
24
  }, (e)=>{
25
+ if (forceDisable) return;
21
26
  e.preventDefault();
22
27
  e.stopPropagation();
23
28
  if (ref?.current) {
@@ -26,6 +31,7 @@ export const DefaultSaveButton = ({ label: labelProp })=>{
26
31
  });
27
32
  return /*#__PURE__*/ React.createElement(FormSubmit, {
28
33
  buttonId: "action-save",
34
+ disabled: forceDisable,
29
35
  onClick: ()=>submit(),
30
36
  ref: ref,
31
37
  size: "small",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/Save/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useRef } from 'react'\n\nimport { useForm } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nexport const DefaultSaveButton: React.FC<{ label?: string }> = ({ label: labelProp }) => {\n const { t } = useTranslation()\n const { submit } = useForm()\n const label = labelProp || t('general:save')\n const ref = useRef<HTMLButtonElement>(null)\n const editDepth = useEditDepth()\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n e.preventDefault()\n e.stopPropagation()\n if (ref?.current) {\n ref.current.click()\n }\n })\n\n return (\n <FormSubmit\n buttonId=\"action-save\"\n onClick={() => submit()}\n ref={ref}\n size=\"small\"\n type=\"button\"\n >\n {label}\n </FormSubmit>\n )\n}\n\ntype Props = {\n CustomComponent?: React.ReactNode\n}\n\nexport const Save: React.FC<Props> = ({ CustomComponent }) => {\n if (CustomComponent) return CustomComponent\n\n return <DefaultSaveButton />\n}\n"],"names":["React","useRef","useForm","FormSubmit","useHotkey","useEditDepth","useTranslation","DefaultSaveButton","label","labelProp","t","submit","ref","editDepth","cmdCtrlKey","keyCodes","e","preventDefault","stopPropagation","current","click","buttonId","onClick","size","type","Save","CustomComponent"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAEA,OAAOA,SAASC,MAAM,QAAQ,QAAO;AAErC,SAASC,OAAO,QAAQ,8BAA6B;AACrD,SAASC,UAAU,QAAQ,8BAA6B;AACxD,SAASC,SAAS,QAAQ,2BAA0B;AACpD,SAASC,YAAY,QAAQ,qCAAoC;AACjE,SAASC,cAAc,QAAQ,uCAAsC;AAErE,OAAO,MAAMC,oBAAkD,CAAC,EAAEC,OAAOC,SAAS,EAAE;IAClF,MAAM,EAAEC,CAAC,EAAE,GAAGJ;IACd,MAAM,EAAEK,MAAM,EAAE,GAAGT;IACnB,MAAMM,QAAQC,aAAaC,EAAE;IAC7B,MAAME,MAAMX,OAA0B;IACtC,MAAMY,YAAYR;IAElBD,UAAU;QAAEU,YAAY;QAAMD;QAAWE,UAAU;YAAC;SAAI;IAAC,GAAG,CAACC;QAC3DA,EAAEC,cAAc;QAChBD,EAAEE,eAAe;QACjB,IAAIN,KAAKO,SAAS;YAChBP,IAAIO,OAAO,CAACC,KAAK;QACnB;IACF;IAEA,qBACE,oBAACjB;QACCkB,UAAS;QACTC,SAAS,IAAMX;QACfC,KAAKA;QACLW,MAAK;QACLC,MAAK;OAEJhB;AAGP,EAAC;AAMD,OAAO,MAAMiB,OAAwB,CAAC,EAAEC,eAAe,EAAE;IACvD,IAAIA,iBAAiB,OAAOA;IAE5B,qBAAO,oBAACnB;AACV,EAAC"}
1
+ {"version":3,"sources":["../../../src/elements/Save/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useRef } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nexport const DefaultSaveButton: React.FC<{ label?: string }> = ({ label: labelProp }) => {\n const { t } = useTranslation()\n const { submit } = useForm()\n const modified = useFormModified()\n const label = labelProp || t('general:save')\n const ref = useRef<HTMLButtonElement>(null)\n const editDepth = useEditDepth()\n const operation = useOperation()\n\n const forceDisable = operation === 'update' && !modified\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n if (forceDisable) return\n\n e.preventDefault()\n e.stopPropagation()\n if (ref?.current) {\n ref.current.click()\n }\n })\n\n return (\n <FormSubmit\n buttonId=\"action-save\"\n disabled={forceDisable}\n onClick={() => submit()}\n ref={ref}\n size=\"small\"\n type=\"button\"\n >\n {label}\n </FormSubmit>\n )\n}\n\ntype Props = {\n CustomComponent?: React.ReactNode\n}\n\nexport const Save: React.FC<Props> = ({ CustomComponent }) => {\n if (CustomComponent) return CustomComponent\n\n return <DefaultSaveButton />\n}\n"],"names":["React","useRef","useForm","useFormModified","FormSubmit","useHotkey","useEditDepth","useOperation","useTranslation","DefaultSaveButton","label","labelProp","t","submit","modified","ref","editDepth","operation","forceDisable","cmdCtrlKey","keyCodes","e","preventDefault","stopPropagation","current","click","buttonId","disabled","onClick","size","type","Save","CustomComponent"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAEA,OAAOA,SAASC,MAAM,QAAQ,QAAO;AAErC,SAASC,OAAO,EAAEC,eAAe,QAAQ,8BAA6B;AACtE,SAASC,UAAU,QAAQ,8BAA6B;AACxD,SAASC,SAAS,QAAQ,2BAA0B;AACpD,SAASC,YAAY,QAAQ,qCAAoC;AACjE,SAASC,YAAY,QAAQ,qCAAoC;AACjE,SAASC,cAAc,QAAQ,uCAAsC;AAErE,OAAO,MAAMC,oBAAkD,CAAC,EAAEC,OAAOC,SAAS,EAAE;IAClF,MAAM,EAAEC,CAAC,EAAE,GAAGJ;IACd,MAAM,EAAEK,MAAM,EAAE,GAAGX;IACnB,MAAMY,WAAWX;IACjB,MAAMO,QAAQC,aAAaC,EAAE;IAC7B,MAAMG,MAAMd,OAA0B;IACtC,MAAMe,YAAYV;IAClB,MAAMW,YAAYV;IAElB,MAAMW,eAAeD,cAAc,YAAY,CAACH;IAEhDT,UAAU;QAAEc,YAAY;QAAMH;QAAWI,UAAU;YAAC;SAAI;IAAC,GAAG,CAACC;QAC3D,IAAIH,cAAc;QAElBG,EAAEC,cAAc;QAChBD,EAAEE,eAAe;QACjB,IAAIR,KAAKS,SAAS;YAChBT,IAAIS,OAAO,CAACC,KAAK;QACnB;IACF;IAEA,qBACE,oBAACrB;QACCsB,UAAS;QACTC,UAAUT;QACVU,SAAS,IAAMf;QACfE,KAAKA;QACLc,MAAK;QACLC,MAAK;OAEJpB;AAGP,EAAC;AAMD,OAAO,MAAMqB,OAAwB,CAAC,EAAEC,eAAe,EAAE;IACvD,IAAIA,iBAAiB,OAAOA;IAE5B,qBAAO,oBAACvB;AACV,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/SaveDraft/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA8B,MAAM,OAAO,CAAA;AA8ElD,KAAK,KAAK,GAAG;IACX,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAClC,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAIrC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/SaveDraft/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAkFlD,KAAK,KAAK,GAAG;IACX,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAClC,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAIrC,CAAA"}
@@ -7,6 +7,7 @@ import { useConfig } from '../../providers/Config/index.js';
7
7
  import { useDocumentInfo } from '../../providers/DocumentInfo/index.js';
8
8
  import { useEditDepth } from '../../providers/EditDepth/index.js';
9
9
  import { useLocale } from '../../providers/Locale/index.js';
10
+ import { useOperation } from '../../providers/Operation/index.js';
10
11
  import { useTranslation } from '../../providers/Translation/index.js';
11
12
  const baseClass = 'save-draft';
12
13
  const DefaultSaveDraftButton = ()=>{
@@ -18,7 +19,10 @@ const DefaultSaveDraftButton = ()=>{
18
19
  const editDepth = useEditDepth();
19
20
  const { t } = useTranslation();
20
21
  const { submit } = useForm();
22
+ const operation = useOperation();
23
+ const forceDisable = operation === 'update' && !modified;
21
24
  const saveDraft = useCallback(async ()=>{
25
+ if (forceDisable) return;
22
26
  const search = `?locale=${locale}&depth=0&fallback-locale=null&draft=true`;
23
27
  let action;
24
28
  let method = 'POST';
@@ -44,7 +48,8 @@ const DefaultSaveDraftButton = ()=>{
44
48
  serverURL,
45
49
  api,
46
50
  locale,
47
- id
51
+ id,
52
+ forceDisable
48
53
  ]);
49
54
  useHotkey({
50
55
  cmdCtrlKey: true,
@@ -53,9 +58,7 @@ const DefaultSaveDraftButton = ()=>{
53
58
  's'
54
59
  ]
55
60
  }, (e)=>{
56
- if (!modified) {
57
- return;
58
- }
61
+ if (forceDisable) return;
59
62
  e.preventDefault();
60
63
  e.stopPropagation();
61
64
  if (ref?.current) {
@@ -66,7 +69,7 @@ const DefaultSaveDraftButton = ()=>{
66
69
  buttonId: "action-save-draft",
67
70
  buttonStyle: "secondary",
68
71
  className: baseClass,
69
- disabled: !modified,
72
+ disabled: forceDisable,
70
73
  onClick: saveDraft,
71
74
  ref: ref,
72
75
  size: "small",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/SaveDraft/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useRef } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nconst baseClass = 'save-draft'\n\nconst DefaultSaveDraftButton: React.FC = () => {\n const {\n routes: { api },\n serverURL,\n } = useConfig()\n const { id, collectionSlug, globalSlug } = useDocumentInfo()\n const modified = useFormModified()\n const { code: locale } = useLocale()\n const ref = useRef<HTMLButtonElement>(null)\n const editDepth = useEditDepth()\n const { t } = useTranslation()\n const { submit } = useForm()\n\n const saveDraft = useCallback(async () => {\n const search = `?locale=${locale}&depth=0&fallback-locale=null&draft=true`\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = `${serverURL}${api}/${collectionSlug}${id ? `/${id}` : ''}${search}`\n if (id) method = 'PATCH'\n }\n\n if (globalSlug) {\n action = `${serverURL}${api}/globals/${globalSlug}${search}`\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [submit, collectionSlug, globalSlug, serverURL, api, locale, id])\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n if (!modified) {\n return\n }\n\n e.preventDefault()\n e.stopPropagation()\n if (ref?.current) {\n ref.current.click()\n }\n })\n\n return (\n <FormSubmit\n buttonId=\"action-save-draft\"\n buttonStyle=\"secondary\"\n className={baseClass}\n disabled={!modified}\n onClick={saveDraft}\n ref={ref}\n size=\"small\"\n type=\"button\"\n >\n {t('version:saveDraft')}\n </FormSubmit>\n )\n}\n\ntype Props = {\n CustomComponent?: React.ReactNode\n}\n\nexport const SaveDraft: React.FC<Props> = ({ CustomComponent }) => {\n if (CustomComponent) return CustomComponent\n\n return <DefaultSaveDraftButton />\n}\n"],"names":["React","useCallback","useRef","useForm","useFormModified","FormSubmit","useHotkey","useConfig","useDocumentInfo","useEditDepth","useLocale","useTranslation","baseClass","DefaultSaveDraftButton","routes","api","serverURL","id","collectionSlug","globalSlug","modified","code","locale","ref","editDepth","t","submit","saveDraft","search","action","method","overrides","_status","skipValidation","cmdCtrlKey","keyCodes","e","preventDefault","stopPropagation","current","click","buttonId","buttonStyle","className","disabled","onClick","size","type","SaveDraft","CustomComponent"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAEA,OAAOA,SAASC,WAAW,EAAEC,MAAM,QAAQ,QAAO;AAElD,SAASC,OAAO,EAAEC,eAAe,QAAQ,8BAA6B;AACtE,SAASC,UAAU,QAAQ,8BAA6B;AACxD,SAASC,SAAS,QAAQ,2BAA0B;AACpD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,YAAY,QAAQ,qCAAoC;AACjE,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AAErE,MAAMC,YAAY;AAElB,MAAMC,yBAAmC;IACvC,MAAM,EACJC,QAAQ,EAAEC,GAAG,EAAE,EACfC,SAAS,EACV,GAAGT;IACJ,MAAM,EAAEU,EAAE,EAAEC,cAAc,EAAEC,UAAU,EAAE,GAAGX;IAC3C,MAAMY,WAAWhB;IACjB,MAAM,EAAEiB,MAAMC,MAAM,EAAE,GAAGZ;IACzB,MAAMa,MAAMrB,OAA0B;IACtC,MAAMsB,YAAYf;IAClB,MAAM,EAAEgB,CAAC,EAAE,GAAGd;IACd,MAAM,EAAEe,MAAM,EAAE,GAAGvB;IAEnB,MAAMwB,YAAY1B,YAAY;QAC5B,MAAM2B,SAAS,CAAC,QAAQ,EAAEN,OAAO,wCAAwC,CAAC;QAC1E,IAAIO;QACJ,IAAIC,SAAS;QAEb,IAAIZ,gBAAgB;YAClBW,SAAS,CAAC,EAAEb,UAAU,EAAED,IAAI,CAAC,EAAEG,eAAe,EAAED,KAAK,CAAC,CAAC,EAAEA,GAAG,CAAC,GAAG,GAAG,EAAEW,OAAO,CAAC;YAC7E,IAAIX,IAAIa,SAAS;QACnB;QAEA,IAAIX,YAAY;YACdU,SAAS,CAAC,EAAEb,UAAU,EAAED,IAAI,SAAS,EAAEI,WAAW,EAAES,OAAO,CAAC;QAC9D;QAEA,MAAMF,OAAO;YACXG;YACAC;YACAC,WAAW;gBACTC,SAAS;YACX;YACAC,gBAAgB;QAClB;IACF,GAAG;QAACP;QAAQR;QAAgBC;QAAYH;QAAWD;QAAKO;QAAQL;KAAG;IAEnEX,UAAU;QAAE4B,YAAY;QAAMV;QAAWW,UAAU;YAAC;SAAI;IAAC,GAAG,CAACC;QAC3D,IAAI,CAAChB,UAAU;YACb;QACF;QAEAgB,EAAEC,cAAc;QAChBD,EAAEE,eAAe;QACjB,IAAIf,KAAKgB,SAAS;YAChBhB,IAAIgB,OAAO,CAACC,KAAK;QACnB;IACF;IAEA,qBACE,oBAACnC;QACCoC,UAAS;QACTC,aAAY;QACZC,WAAW/B;QACXgC,UAAU,CAACxB;QACXyB,SAASlB;QACTJ,KAAKA;QACLuB,MAAK;QACLC,MAAK;OAEJtB,EAAE;AAGT;AAMA,OAAO,MAAMuB,YAA6B,CAAC,EAAEC,eAAe,EAAE;IAC5D,IAAIA,iBAAiB,OAAOA;IAE5B,qBAAO,oBAACpC;AACV,EAAC"}
1
+ {"version":3,"sources":["../../../src/elements/SaveDraft/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useRef } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nconst baseClass = 'save-draft'\n\nconst DefaultSaveDraftButton: React.FC = () => {\n const {\n routes: { api },\n serverURL,\n } = useConfig()\n const { id, collectionSlug, globalSlug } = useDocumentInfo()\n const modified = useFormModified()\n const { code: locale } = useLocale()\n const ref = useRef<HTMLButtonElement>(null)\n const editDepth = useEditDepth()\n const { t } = useTranslation()\n const { submit } = useForm()\n const operation = useOperation()\n\n const forceDisable = operation === 'update' && !modified\n\n const saveDraft = useCallback(async () => {\n if (forceDisable) return\n\n const search = `?locale=${locale}&depth=0&fallback-locale=null&draft=true`\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = `${serverURL}${api}/${collectionSlug}${id ? `/${id}` : ''}${search}`\n if (id) method = 'PATCH'\n }\n\n if (globalSlug) {\n action = `${serverURL}${api}/globals/${globalSlug}${search}`\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [submit, collectionSlug, globalSlug, serverURL, api, locale, id, forceDisable])\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n if (forceDisable) return\n\n e.preventDefault()\n e.stopPropagation()\n if (ref?.current) {\n ref.current.click()\n }\n })\n\n return (\n <FormSubmit\n buttonId=\"action-save-draft\"\n buttonStyle=\"secondary\"\n className={baseClass}\n disabled={forceDisable}\n onClick={saveDraft}\n ref={ref}\n size=\"small\"\n type=\"button\"\n >\n {t('version:saveDraft')}\n </FormSubmit>\n )\n}\n\ntype Props = {\n CustomComponent?: React.ReactNode\n}\n\nexport const SaveDraft: React.FC<Props> = ({ CustomComponent }) => {\n if (CustomComponent) return CustomComponent\n\n return <DefaultSaveDraftButton />\n}\n"],"names":["React","useCallback","useRef","useForm","useFormModified","FormSubmit","useHotkey","useConfig","useDocumentInfo","useEditDepth","useLocale","useOperation","useTranslation","baseClass","DefaultSaveDraftButton","routes","api","serverURL","id","collectionSlug","globalSlug","modified","code","locale","ref","editDepth","t","submit","operation","forceDisable","saveDraft","search","action","method","overrides","_status","skipValidation","cmdCtrlKey","keyCodes","e","preventDefault","stopPropagation","current","click","buttonId","buttonStyle","className","disabled","onClick","size","type","SaveDraft","CustomComponent"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAEA,OAAOA,SAASC,WAAW,EAAEC,MAAM,QAAQ,QAAO;AAElD,SAASC,OAAO,EAAEC,eAAe,QAAQ,8BAA6B;AACtE,SAASC,UAAU,QAAQ,8BAA6B;AACxD,SAASC,SAAS,QAAQ,2BAA0B;AACpD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,YAAY,QAAQ,qCAAoC;AACjE,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,YAAY,QAAQ,qCAAoC;AACjE,SAASC,cAAc,QAAQ,uCAAsC;AAErE,MAAMC,YAAY;AAElB,MAAMC,yBAAmC;IACvC,MAAM,EACJC,QAAQ,EAAEC,GAAG,EAAE,EACfC,SAAS,EACV,GAAGV;IACJ,MAAM,EAAEW,EAAE,EAAEC,cAAc,EAAEC,UAAU,EAAE,GAAGZ;IAC3C,MAAMa,WAAWjB;IACjB,MAAM,EAAEkB,MAAMC,MAAM,EAAE,GAAGb;IACzB,MAAMc,MAAMtB,OAA0B;IACtC,MAAMuB,YAAYhB;IAClB,MAAM,EAAEiB,CAAC,EAAE,GAAGd;IACd,MAAM,EAAEe,MAAM,EAAE,GAAGxB;IACnB,MAAMyB,YAAYjB;IAElB,MAAMkB,eAAeD,cAAc,YAAY,CAACP;IAEhD,MAAMS,YAAY7B,YAAY;QAC5B,IAAI4B,cAAc;QAElB,MAAME,SAAS,CAAC,QAAQ,EAAER,OAAO,wCAAwC,CAAC;QAC1E,IAAIS;QACJ,IAAIC,SAAS;QAEb,IAAId,gBAAgB;YAClBa,SAAS,CAAC,EAAEf,UAAU,EAAED,IAAI,CAAC,EAAEG,eAAe,EAAED,KAAK,CAAC,CAAC,EAAEA,GAAG,CAAC,GAAG,GAAG,EAAEa,OAAO,CAAC;YAC7E,IAAIb,IAAIe,SAAS;QACnB;QAEA,IAAIb,YAAY;YACdY,SAAS,CAAC,EAAEf,UAAU,EAAED,IAAI,SAAS,EAAEI,WAAW,EAAEW,OAAO,CAAC;QAC9D;QAEA,MAAMJ,OAAO;YACXK;YACAC;YACAC,WAAW;gBACTC,SAAS;YACX;YACAC,gBAAgB;QAClB;IACF,GAAG;QAACT;QAAQR;QAAgBC;QAAYH;QAAWD;QAAKO;QAAQL;QAAIW;KAAa;IAEjFvB,UAAU;QAAE+B,YAAY;QAAMZ;QAAWa,UAAU;YAAC;SAAI;IAAC,GAAG,CAACC;QAC3D,IAAIV,cAAc;QAElBU,EAAEC,cAAc;QAChBD,EAAEE,eAAe;QACjB,IAAIjB,KAAKkB,SAAS;YAChBlB,IAAIkB,OAAO,CAACC,KAAK;QACnB;IACF;IAEA,qBACE,oBAACtC;QACCuC,UAAS;QACTC,aAAY;QACZC,WAAWjC;QACXkC,UAAUlB;QACVmB,SAASlB;QACTN,KAAKA;QACLyB,MAAK;QACLC,MAAK;OAEJxB,EAAE;AAGT;AAMA,OAAO,MAAMyB,YAA6B,CAAC,EAAEC,eAAe,EAAE;IAC5D,IAAIA,iBAAiB,OAAOA;IAE5B,qBAAO,oBAACtC;AACV,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/Status/index.tsx"],"sourcesContent":["'use client'\nimport * as facelessUIImport from '@faceless-ui/modal'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'react-toastify'\n\nimport { useForm } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { MinimalTemplate } from '../../templates/Minimal/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { Button } from '../Button/index.js'\nimport './index.scss'\n\nconst baseClass = 'status'\n\nexport const Status: React.FC = () => {\n const { Modal, useModal } = facelessUIImport\n\n const {\n id,\n collectionSlug,\n docPermissions,\n getVersions,\n globalSlug,\n publishedDoc,\n unpublishedVersions,\n } = useDocumentInfo()\n const { toggleModal } = useModal()\n const {\n routes: { api },\n serverURL,\n } = useConfig()\n const [processing, setProcessing] = useState(false)\n const { reset: resetForm } = useForm()\n const { code: locale } = useLocale()\n const { i18n, t } = useTranslation()\n\n const unPublishModalSlug = `confirm-un-publish-${id}`\n const revertModalSlug = `confirm-revert-${id}`\n\n let statusToRender\n\n if (unpublishedVersions?.docs?.length > 0 && publishedDoc) {\n statusToRender = 'changed'\n } else if (!publishedDoc) {\n statusToRender = 'draft'\n } else if (publishedDoc && unpublishedVersions?.docs?.length <= 1) {\n statusToRender = 'published'\n }\n\n const performAction = useCallback(\n async (action: 'revert' | 'unpublish') => {\n let url\n let method\n let body\n\n setProcessing(true)\n\n if (action === 'unpublish') {\n body = {\n _status: 'draft',\n }\n }\n\n if (action === 'revert') {\n body = publishedDoc\n }\n\n if (collectionSlug) {\n url = `${serverURL}${api}/${collectionSlug}/${id}?locale=${locale}&fallback-locale=null`\n method = 'patch'\n }\n if (globalSlug) {\n url = `${serverURL}${api}/globals/${globalSlug}?locale=${locale}&fallback-locale=null`\n method = 'post'\n }\n\n const res = await requests[method](url, {\n body: JSON.stringify(body),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n\n if (res.status === 200) {\n let data\n const json = await res.json()\n\n if (globalSlug) {\n data = json.result\n } else if (collectionSlug) {\n data = json.doc\n }\n\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n resetForm(data)\n toast.success(json.message)\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n getVersions()\n } else {\n toast.error(t('error:unPublishingDocument'))\n }\n\n setProcessing(false)\n if (action === 'revert') {\n toggleModal(revertModalSlug)\n }\n\n if (action === 'unpublish') {\n toggleModal(unPublishModalSlug)\n }\n },\n [\n api,\n collectionSlug,\n getVersions,\n globalSlug,\n i18n.language,\n id,\n locale,\n publishedDoc,\n resetForm,\n revertModalSlug,\n serverURL,\n t,\n toggleModal,\n unPublishModalSlug,\n ],\n )\n\n const canUpdate = docPermissions?.update?.permission\n\n if (statusToRender) {\n return (\n <div\n className={baseClass}\n title={`${t('version:status')}: ${t(`version:${statusToRender}`)}`}\n >\n <div className={`${baseClass}__value-wrap`}>\n <span className={`${baseClass}__label`}>{t('version:status')}:&nbsp;</span>\n <span className={`${baseClass}__value`}>{t(`version:${statusToRender}`)}</span>\n {canUpdate && statusToRender === 'published' && (\n <React.Fragment>\n &nbsp;&mdash;&nbsp;\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__action`}\n onClick={() => toggleModal(unPublishModalSlug)}\n >\n {t('version:unpublish')}\n </Button>\n <Modal className={`${baseClass}__modal`} slug={unPublishModalSlug}>\n <MinimalTemplate className={`${baseClass}__modal-template`}>\n <h1>{t('version:confirmUnpublish')}</h1>\n <p>{t('version:aboutToUnpublish')}</p>\n <Button\n buttonStyle=\"secondary\"\n onClick={processing ? undefined : () => toggleModal(unPublishModalSlug)}\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button onClick={processing ? undefined : () => performAction('unpublish')}>\n {t(processing ? 'version:unpublishing' : 'general:confirm')}\n </Button>\n </MinimalTemplate>\n </Modal>\n </React.Fragment>\n )}\n {canUpdate && statusToRender === 'changed' && (\n <React.Fragment>\n &nbsp;&mdash;&nbsp;\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__action`}\n id=\"action-revert-to-published\"\n onClick={() => toggleModal(revertModalSlug)}\n >\n {t('version:revertToPublished')}\n </Button>\n <Modal className={`${baseClass}__modal`} slug={revertModalSlug}>\n <MinimalTemplate className={`${baseClass}__modal-template`}>\n <h1>{t('version:confirmRevertToSaved')}</h1>\n <p>{t('version:aboutToRevertToPublished')}</p>\n <Button\n buttonStyle=\"secondary\"\n onClick={processing ? undefined : () => toggleModal(revertModalSlug)}\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button\n id=\"action-revert-to-published-confirm\"\n onClick={processing ? undefined : () => performAction('revert')}\n >\n {t(processing ? 'version:reverting' : 'general:confirm')}\n </Button>\n </MinimalTemplate>\n </Modal>\n </React.Fragment>\n )}\n </div>\n </div>\n )\n }\n\n return null\n}\n"],"names":["facelessUIImport","React","useCallback","useState","toast","useForm","useConfig","useDocumentInfo","useLocale","useTranslation","MinimalTemplate","requests","Button","baseClass","Status","Modal","useModal","id","collectionSlug","docPermissions","getVersions","globalSlug","publishedDoc","unpublishedVersions","toggleModal","routes","api","serverURL","processing","setProcessing","reset","resetForm","code","locale","i18n","t","unPublishModalSlug","revertModalSlug","statusToRender","docs","length","performAction","action","url","method","body","_status","res","JSON","stringify","headers","language","status","data","json","result","doc","success","message","error","canUpdate","update","permission","div","className","title","span","Fragment","buttonStyle","onClick","slug","h1","p","undefined","type"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AACA,YAAYA,sBAAsB,qBAAoB;AACtD,OAAOC,SAASC,WAAW,EAAEC,QAAQ,QAAQ,QAAO;AACpD,SAASC,KAAK,QAAQ,iBAAgB;AAEtC,SAASC,OAAO,QAAQ,8BAA6B;AACrD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,eAAe,QAAQ,mCAAkC;AAClE,SAASC,QAAQ,QAAQ,yBAAwB;AACjD,SAASC,MAAM,QAAQ,qBAAoB;AAG3C,MAAMC,YAAY;AAElB,OAAO,MAAMC,SAAmB;IAC9B,MAAM,EAAEC,KAAK,EAAEC,QAAQ,EAAE,GAAGhB;IAE5B,MAAM,EACJiB,EAAE,EACFC,cAAc,EACdC,cAAc,EACdC,WAAW,EACXC,UAAU,EACVC,YAAY,EACZC,mBAAmB,EACpB,GAAGhB;IACJ,MAAM,EAAEiB,WAAW,EAAE,GAAGR;IACxB,MAAM,EACJS,QAAQ,EAAEC,GAAG,EAAE,EACfC,SAAS,EACV,GAAGrB;IACJ,MAAM,CAACsB,YAAYC,cAAc,GAAG1B,SAAS;IAC7C,MAAM,EAAE2B,OAAOC,SAAS,EAAE,GAAG1B;IAC7B,MAAM,EAAE2B,MAAMC,MAAM,EAAE,GAAGzB;IACzB,MAAM,EAAE0B,IAAI,EAAEC,CAAC,EAAE,GAAG1B;IAEpB,MAAM2B,qBAAqB,CAAC,mBAAmB,EAAEnB,GAAG,CAAC;IACrD,MAAMoB,kBAAkB,CAAC,eAAe,EAAEpB,GAAG,CAAC;IAE9C,IAAIqB;IAEJ,IAAIf,qBAAqBgB,MAAMC,SAAS,KAAKlB,cAAc;QACzDgB,iBAAiB;IACnB,OAAO,IAAI,CAAChB,cAAc;QACxBgB,iBAAiB;IACnB,OAAO,IAAIhB,gBAAgBC,qBAAqBgB,MAAMC,UAAU,GAAG;QACjEF,iBAAiB;IACnB;IAEA,MAAMG,gBAAgBvC,YACpB,OAAOwC;QACL,IAAIC;QACJ,IAAIC;QACJ,IAAIC;QAEJhB,cAAc;QAEd,IAAIa,WAAW,aAAa;YAC1BG,OAAO;gBACLC,SAAS;YACX;QACF;QAEA,IAAIJ,WAAW,UAAU;YACvBG,OAAOvB;QACT;QAEA,IAAIJ,gBAAgB;YAClByB,MAAM,CAAC,EAAEhB,UAAU,EAAED,IAAI,CAAC,EAAER,eAAe,CAAC,EAAED,GAAG,QAAQ,EAAEgB,OAAO,qBAAqB,CAAC;YACxFW,SAAS;QACX;QACA,IAAIvB,YAAY;YACdsB,MAAM,CAAC,EAAEhB,UAAU,EAAED,IAAI,SAAS,EAAEL,WAAW,QAAQ,EAAEY,OAAO,qBAAqB,CAAC;YACtFW,SAAS;QACX;QAEA,MAAMG,MAAM,MAAMpC,QAAQ,CAACiC,OAAO,CAACD,KAAK;YACtCE,MAAMG,KAAKC,SAAS,CAACJ;YACrBK,SAAS;gBACP,mBAAmBhB,KAAKiB,QAAQ;gBAChC,gBAAgB;YAClB;QACF;QAEA,IAAIJ,IAAIK,MAAM,KAAK,KAAK;YACtB,IAAIC;YACJ,MAAMC,OAAO,MAAMP,IAAIO,IAAI;YAE3B,IAAIjC,YAAY;gBACdgC,OAAOC,KAAKC,MAAM;YACpB,OAAO,IAAIrC,gBAAgB;gBACzBmC,OAAOC,KAAKE,GAAG;YACjB;YAEA,mEAAmE;YACnEzB,UAAUsB;YACVjD,MAAMqD,OAAO,CAACH,KAAKI,OAAO;YAC1B,mEAAmE;YACnEtC;QACF,OAAO;YACLhB,MAAMuD,KAAK,CAACxB,EAAE;QAChB;QAEAN,cAAc;QACd,IAAIa,WAAW,UAAU;YACvBlB,YAAYa;QACd;QAEA,IAAIK,WAAW,aAAa;YAC1BlB,YAAYY;QACd;IACF,GACA;QACEV;QACAR;QACAE;QACAC;QACAa,KAAKiB,QAAQ;QACblC;QACAgB;QACAX;QACAS;QACAM;QACAV;QACAQ;QACAX;QACAY;KACD;IAGH,MAAMwB,YAAYzC,gBAAgB0C,QAAQC;IAE1C,IAAIxB,gBAAgB;QAClB,qBACE,oBAACyB;YACCC,WAAWnD;YACXoD,OAAO,CAAC,EAAE9B,EAAE,kBAAkB,EAAE,EAAEA,EAAE,CAAC,QAAQ,EAAEG,eAAe,CAAC,EAAE,CAAC;yBAElE,oBAACyB;YAAIC,WAAW,CAAC,EAAEnD,UAAU,YAAY,CAAC;yBACxC,oBAACqD;YAAKF,WAAW,CAAC,EAAEnD,UAAU,OAAO,CAAC;WAAGsB,EAAE,mBAAkB,qBAC7D,oBAAC+B;YAAKF,WAAW,CAAC,EAAEnD,UAAU,OAAO,CAAC;WAAGsB,EAAE,CAAC,QAAQ,EAAEG,eAAe,CAAC,IACrEsB,aAAatB,mBAAmB,6BAC/B,oBAACrC,MAAMkE,QAAQ,QAAC,qBAEd,oBAACvD;YACCwD,aAAY;YACZJ,WAAW,CAAC,EAAEnD,UAAU,QAAQ,CAAC;YACjCwD,SAAS,IAAM7C,YAAYY;WAE1BD,EAAE,qCAEL,oBAACpB;YAAMiD,WAAW,CAAC,EAAEnD,UAAU,OAAO,CAAC;YAAEyD,MAAMlC;yBAC7C,oBAAC1B;YAAgBsD,WAAW,CAAC,EAAEnD,UAAU,gBAAgB,CAAC;yBACxD,oBAAC0D,YAAIpC,EAAE,4CACP,oBAACqC,WAAGrC,EAAE,4CACN,oBAACvB;YACCwD,aAAY;YACZC,SAASzC,aAAa6C,YAAY,IAAMjD,YAAYY;YACpDsC,MAAK;WAEJvC,EAAE,kCAEL,oBAACvB;YAAOyD,SAASzC,aAAa6C,YAAY,IAAMhC,cAAc;WAC3DN,EAAEP,aAAa,yBAAyB,wBAMlDgC,aAAatB,mBAAmB,2BAC/B,oBAACrC,MAAMkE,QAAQ,QAAC,qBAEd,oBAACvD;YACCwD,aAAY;YACZJ,WAAW,CAAC,EAAEnD,UAAU,QAAQ,CAAC;YACjCI,IAAG;YACHoD,SAAS,IAAM7C,YAAYa;WAE1BF,EAAE,6CAEL,oBAACpB;YAAMiD,WAAW,CAAC,EAAEnD,UAAU,OAAO,CAAC;YAAEyD,MAAMjC;yBAC7C,oBAAC3B;YAAgBsD,WAAW,CAAC,EAAEnD,UAAU,gBAAgB,CAAC;yBACxD,oBAAC0D,YAAIpC,EAAE,gDACP,oBAACqC,WAAGrC,EAAE,oDACN,oBAACvB;YACCwD,aAAY;YACZC,SAASzC,aAAa6C,YAAY,IAAMjD,YAAYa;YACpDqC,MAAK;WAEJvC,EAAE,kCAEL,oBAACvB;YACCK,IAAG;YACHoD,SAASzC,aAAa6C,YAAY,IAAMhC,cAAc;WAErDN,EAAEP,aAAa,sBAAsB;IASxD;IAEA,OAAO;AACT,EAAC"}
1
+ {"version":3,"sources":["../../../src/elements/Status/index.tsx"],"sourcesContent":["'use client'\nimport * as facelessUIImport from '@faceless-ui/modal'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'react-toastify'\n\nimport { useForm } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { MinimalTemplate } from '../../templates/Minimal/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { Button } from '../Button/index.js'\nimport './index.scss'\n\nconst baseClass = 'status'\n\nexport const Status: React.FC = () => {\n const { Modal, useModal } = facelessUIImport\n\n const {\n id,\n collectionSlug,\n docPermissions,\n getVersions,\n globalSlug,\n publishedDoc,\n unpublishedVersions,\n } = useDocumentInfo()\n const { toggleModal } = useModal()\n const {\n routes: { api },\n serverURL,\n } = useConfig()\n const [processing, setProcessing] = useState(false)\n const { reset: resetForm } = useForm()\n const { code: locale } = useLocale()\n const { i18n, t } = useTranslation()\n\n const unPublishModalSlug = `confirm-un-publish-${id}`\n const revertModalSlug = `confirm-revert-${id}`\n\n let statusToRender: 'changed' | 'draft' | 'published'\n\n if (unpublishedVersions?.docs?.length > 0 && publishedDoc) {\n statusToRender = 'changed'\n } else if (!publishedDoc) {\n statusToRender = 'draft'\n } else if (publishedDoc && unpublishedVersions?.docs?.length <= 1) {\n statusToRender = 'published'\n }\n\n const performAction = useCallback(\n async (action: 'revert' | 'unpublish') => {\n let url\n let method\n let body\n\n setProcessing(true)\n\n if (action === 'unpublish') {\n body = {\n _status: 'draft',\n }\n }\n\n if (action === 'revert') {\n body = publishedDoc\n }\n\n if (collectionSlug) {\n url = `${serverURL}${api}/${collectionSlug}/${id}?locale=${locale}&fallback-locale=null`\n method = 'patch'\n }\n if (globalSlug) {\n url = `${serverURL}${api}/globals/${globalSlug}?locale=${locale}&fallback-locale=null`\n method = 'post'\n }\n\n const res = await requests[method](url, {\n body: JSON.stringify(body),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n\n if (res.status === 200) {\n let data\n const json = await res.json()\n\n if (globalSlug) {\n data = json.result\n } else if (collectionSlug) {\n data = json.doc\n }\n\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n resetForm(data)\n toast.success(json.message)\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n getVersions()\n } else {\n toast.error(t('error:unPublishingDocument'))\n }\n\n setProcessing(false)\n if (action === 'revert') {\n toggleModal(revertModalSlug)\n }\n\n if (action === 'unpublish') {\n toggleModal(unPublishModalSlug)\n }\n },\n [\n api,\n collectionSlug,\n getVersions,\n globalSlug,\n i18n.language,\n id,\n locale,\n publishedDoc,\n resetForm,\n revertModalSlug,\n serverURL,\n t,\n toggleModal,\n unPublishModalSlug,\n ],\n )\n\n const canUpdate = docPermissions?.update?.permission\n\n if (statusToRender) {\n return (\n <div\n className={baseClass}\n title={`${t('version:status')}: ${t(`version:${statusToRender}`)}`}\n >\n <div className={`${baseClass}__value-wrap`}>\n <span className={`${baseClass}__label`}>{t('version:status')}:&nbsp;</span>\n <span className={`${baseClass}__value`}>{t(`version:${statusToRender}`)}</span>\n {canUpdate && statusToRender === 'published' && (\n <React.Fragment>\n &nbsp;&mdash;&nbsp;\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__action`}\n onClick={() => toggleModal(unPublishModalSlug)}\n >\n {t('version:unpublish')}\n </Button>\n <Modal className={`${baseClass}__modal`} slug={unPublishModalSlug}>\n <MinimalTemplate className={`${baseClass}__modal-template`}>\n <h1>{t('version:confirmUnpublish')}</h1>\n <p>{t('version:aboutToUnpublish')}</p>\n <Button\n buttonStyle=\"secondary\"\n onClick={processing ? undefined : () => toggleModal(unPublishModalSlug)}\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button onClick={processing ? undefined : () => performAction('unpublish')}>\n {t(processing ? 'version:unpublishing' : 'general:confirm')}\n </Button>\n </MinimalTemplate>\n </Modal>\n </React.Fragment>\n )}\n {canUpdate && statusToRender === 'changed' && (\n <React.Fragment>\n &nbsp;&mdash;&nbsp;\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__action`}\n id=\"action-revert-to-published\"\n onClick={() => toggleModal(revertModalSlug)}\n >\n {t('version:revertToPublished')}\n </Button>\n <Modal className={`${baseClass}__modal`} slug={revertModalSlug}>\n <MinimalTemplate className={`${baseClass}__modal-template`}>\n <h1>{t('version:confirmRevertToSaved')}</h1>\n <p>{t('version:aboutToRevertToPublished')}</p>\n <Button\n buttonStyle=\"secondary\"\n onClick={processing ? undefined : () => toggleModal(revertModalSlug)}\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button\n id=\"action-revert-to-published-confirm\"\n onClick={processing ? undefined : () => performAction('revert')}\n >\n {t(processing ? 'version:reverting' : 'general:confirm')}\n </Button>\n </MinimalTemplate>\n </Modal>\n </React.Fragment>\n )}\n </div>\n </div>\n )\n }\n\n return null\n}\n"],"names":["facelessUIImport","React","useCallback","useState","toast","useForm","useConfig","useDocumentInfo","useLocale","useTranslation","MinimalTemplate","requests","Button","baseClass","Status","Modal","useModal","id","collectionSlug","docPermissions","getVersions","globalSlug","publishedDoc","unpublishedVersions","toggleModal","routes","api","serverURL","processing","setProcessing","reset","resetForm","code","locale","i18n","t","unPublishModalSlug","revertModalSlug","statusToRender","docs","length","performAction","action","url","method","body","_status","res","JSON","stringify","headers","language","status","data","json","result","doc","success","message","error","canUpdate","update","permission","div","className","title","span","Fragment","buttonStyle","onClick","slug","h1","p","undefined","type"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -1,7 +1,5 @@
1
1
  import React from 'react';
2
- export type StayLoggedInProps = {
3
- refreshCookie: () => void;
4
- };
5
2
  import './index.scss';
6
- export declare const StayLoggedInModal: React.FC<StayLoggedInProps>;
3
+ export declare const stayLoggedInModalSlug = "stay-logged-in";
4
+ export declare const StayLoggedInModal: React.FC;
7
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/StayLoggedIn/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,aAAa,EAAE,MAAM,IAAI,CAAA;CAC1B,CAAA;AAKD,OAAO,cAAc,CAAA;AAMrB,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA0CzD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/StayLoggedIn/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,qBAAqB,mBAAmB,CAAA;AAErD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EA2CrC,CAAA"}
@@ -1,5 +1,6 @@
1
1
  'use client';
2
2
  import * as facelessUIImport from '@faceless-ui/modal';
3
+ import { useAuth } from '@payloadcms/ui/providers/Auth';
3
4
  // TODO: abstract the `next/navigation` dependency out from this component
4
5
  import { useRouter } from 'next/navigation.js';
5
6
  import React from 'react';
@@ -7,10 +8,10 @@ import { Button } from '../../elements/Button/index.js';
7
8
  import { useConfig } from '../../providers/Config/index.js';
8
9
  import { useTranslation } from '../../providers/Translation/index.js';
9
10
  const baseClass = 'stay-logged-in';
10
- const modalSlug = 'stay-logged-in';
11
- export const StayLoggedInModal = (props)=>{
11
+ export const stayLoggedInModalSlug = 'stay-logged-in';
12
+ export const StayLoggedInModal = ()=>{
12
13
  const { Modal, useModal } = facelessUIImport;
13
- const { refreshCookie } = props;
14
+ const { refreshCookie } = useAuth();
14
15
  const router = useRouter();
15
16
  const config = useConfig();
16
17
  const { admin: { logoutRoute }, routes: { admin } } = config;
@@ -18,7 +19,7 @@ export const StayLoggedInModal = (props)=>{
18
19
  const { t } = useTranslation();
19
20
  return /*#__PURE__*/ React.createElement(Modal, {
20
21
  className: baseClass,
21
- slug: "stay-logged-in"
22
+ slug: stayLoggedInModalSlug
22
23
  }, /*#__PURE__*/ React.createElement("div", {
23
24
  className: `${baseClass}__wrapper`
24
25
  }, /*#__PURE__*/ React.createElement("div", {
@@ -28,13 +29,13 @@ export const StayLoggedInModal = (props)=>{
28
29
  }, /*#__PURE__*/ React.createElement(Button, {
29
30
  buttonStyle: "secondary",
30
31
  onClick: ()=>{
31
- toggleModal(modalSlug);
32
+ toggleModal(stayLoggedInModalSlug);
32
33
  router.push(`${admin}${logoutRoute}`);
33
34
  }
34
35
  }, t('authentication:logOut')), /*#__PURE__*/ React.createElement(Button, {
35
36
  onClick: ()=>{
36
37
  refreshCookie();
37
- toggleModal(modalSlug);
38
+ toggleModal(stayLoggedInModalSlug);
38
39
  }
39
40
  }, t('authentication:stayLoggedIn')))));
40
41
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/StayLoggedIn/index.tsx"],"sourcesContent":["'use client'\nimport * as facelessUIImport from '@faceless-ui/modal'\n// TODO: abstract the `next/navigation` dependency out from this component\nimport { useRouter } from 'next/navigation.js'\nimport React from 'react'\n\nexport type StayLoggedInProps = {\n refreshCookie: () => void\n}\n\nimport { Button } from '../../elements/Button/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'stay-logged-in'\n\nconst modalSlug = 'stay-logged-in'\n\nexport const StayLoggedInModal: React.FC<StayLoggedInProps> = (props) => {\n const { Modal, useModal } = facelessUIImport\n\n const { refreshCookie } = props\n const router = useRouter()\n const config = useConfig()\n const {\n admin: { logoutRoute },\n routes: { admin },\n } = config\n const { toggleModal } = useModal()\n const { t } = useTranslation()\n\n return (\n <Modal className={baseClass} slug=\"stay-logged-in\">\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('authentication:stayLoggedIn')}</h1>\n <p>{t('authentication:youAreInactive')}</p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n onClick={() => {\n toggleModal(modalSlug)\n router.push(`${admin}${logoutRoute}`)\n }}\n >\n {t('authentication:logOut')}\n </Button>\n <Button\n onClick={() => {\n refreshCookie()\n toggleModal(modalSlug)\n }}\n >\n {t('authentication:stayLoggedIn')}\n </Button>\n </div>\n </div>\n </Modal>\n )\n}\n"],"names":["facelessUIImport","useRouter","React","Button","useConfig","useTranslation","baseClass","modalSlug","StayLoggedInModal","props","Modal","useModal","refreshCookie","router","config","admin","logoutRoute","routes","toggleModal","t","className","slug","div","h1","p","buttonStyle","onClick","push"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AACA,YAAYA,sBAAsB,qBAAoB;AACtD,0EAA0E;AAC1E,SAASC,SAAS,QAAQ,qBAAoB;AAC9C,OAAOC,WAAW,QAAO;AAMzB,SAASC,MAAM,QAAQ,iCAAgC;AACvD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AAGrE,MAAMC,YAAY;AAElB,MAAMC,YAAY;AAElB,OAAO,MAAMC,oBAAiD,CAACC;IAC7D,MAAM,EAAEC,KAAK,EAAEC,QAAQ,EAAE,GAAGX;IAE5B,MAAM,EAAEY,aAAa,EAAE,GAAGH;IAC1B,MAAMI,SAASZ;IACf,MAAMa,SAASV;IACf,MAAM,EACJW,OAAO,EAAEC,WAAW,EAAE,EACtBC,QAAQ,EAAEF,KAAK,EAAE,EAClB,GAAGD;IACJ,MAAM,EAAEI,WAAW,EAAE,GAAGP;IACxB,MAAM,EAAEQ,CAAC,EAAE,GAAGd;IAEd,qBACE,oBAACK;QAAMU,WAAWd;QAAWe,MAAK;qBAChC,oBAACC;QAAIF,WAAW,CAAC,EAAEd,UAAU,SAAS,CAAC;qBACrC,oBAACgB;QAAIF,WAAW,CAAC,EAAEd,UAAU,SAAS,CAAC;qBACrC,oBAACiB,YAAIJ,EAAE,+CACP,oBAACK,WAAGL,EAAE,kDAER,oBAACG;QAAIF,WAAW,CAAC,EAAEd,UAAU,UAAU,CAAC;qBACtC,oBAACH;QACCsB,aAAY;QACZC,SAAS;YACPR,YAAYX;YACZM,OAAOc,IAAI,CAAC,CAAC,EAAEZ,MAAM,EAAEC,YAAY,CAAC;QACtC;OAECG,EAAE,yCAEL,oBAAChB;QACCuB,SAAS;YACPd;YACAM,YAAYX;QACd;OAECY,EAAE;AAMf,EAAC"}
1
+ {"version":3,"sources":["../../../src/elements/StayLoggedIn/index.tsx"],"sourcesContent":["'use client'\nimport * as facelessUIImport from '@faceless-ui/modal'\nimport { useAuth } from '@payloadcms/ui/providers/Auth'\n// TODO: abstract the `next/navigation` dependency out from this component\nimport { useRouter } from 'next/navigation.js'\nimport React from 'react'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'stay-logged-in'\n\nexport const stayLoggedInModalSlug = 'stay-logged-in'\n\nexport const StayLoggedInModal: React.FC = () => {\n const { Modal, useModal } = facelessUIImport\n const { refreshCookie } = useAuth()\n\n const router = useRouter()\n const config = useConfig()\n\n const {\n admin: { logoutRoute },\n routes: { admin },\n } = config\n const { toggleModal } = useModal()\n const { t } = useTranslation()\n\n return (\n <Modal className={baseClass} slug={stayLoggedInModalSlug}>\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('authentication:stayLoggedIn')}</h1>\n <p>{t('authentication:youAreInactive')}</p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n onClick={() => {\n toggleModal(stayLoggedInModalSlug)\n router.push(`${admin}${logoutRoute}`)\n }}\n >\n {t('authentication:logOut')}\n </Button>\n <Button\n onClick={() => {\n refreshCookie()\n toggleModal(stayLoggedInModalSlug)\n }}\n >\n {t('authentication:stayLoggedIn')}\n </Button>\n </div>\n </div>\n </Modal>\n )\n}\n"],"names":["facelessUIImport","useAuth","useRouter","React","Button","useConfig","useTranslation","baseClass","stayLoggedInModalSlug","StayLoggedInModal","Modal","useModal","refreshCookie","router","config","admin","logoutRoute","routes","toggleModal","t","className","slug","div","h1","p","buttonStyle","onClick","push"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AACA,YAAYA,sBAAsB,qBAAoB;AACtD,SAASC,OAAO,QAAQ,gCAA+B;AACvD,0EAA0E;AAC1E,SAASC,SAAS,QAAQ,qBAAoB;AAC9C,OAAOC,WAAW,QAAO;AAEzB,SAASC,MAAM,QAAQ,iCAAgC;AACvD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AAGrE,MAAMC,YAAY;AAElB,OAAO,MAAMC,wBAAwB,iBAAgB;AAErD,OAAO,MAAMC,oBAA8B;IACzC,MAAM,EAAEC,KAAK,EAAEC,QAAQ,EAAE,GAAGX;IAC5B,MAAM,EAAEY,aAAa,EAAE,GAAGX;IAE1B,MAAMY,SAASX;IACf,MAAMY,SAAST;IAEf,MAAM,EACJU,OAAO,EAAEC,WAAW,EAAE,EACtBC,QAAQ,EAAEF,KAAK,EAAE,EAClB,GAAGD;IACJ,MAAM,EAAEI,WAAW,EAAE,GAAGP;IACxB,MAAM,EAAEQ,CAAC,EAAE,GAAGb;IAEd,qBACE,oBAACI;QAAMU,WAAWb;QAAWc,MAAMb;qBACjC,oBAACc;QAAIF,WAAW,CAAC,EAAEb,UAAU,SAAS,CAAC;qBACrC,oBAACe;QAAIF,WAAW,CAAC,EAAEb,UAAU,SAAS,CAAC;qBACrC,oBAACgB,YAAIJ,EAAE,+CACP,oBAACK,WAAGL,EAAE,kDAER,oBAACG;QAAIF,WAAW,CAAC,EAAEb,UAAU,UAAU,CAAC;qBACtC,oBAACH;QACCqB,aAAY;QACZC,SAAS;YACPR,YAAYV;YACZK,OAAOc,IAAI,CAAC,CAAC,EAAEZ,MAAM,EAAEC,YAAY,CAAC;QACtC;OAECG,EAAE,yCAEL,oBAACf;QACCsB,SAAS;YACPd;YACAM,YAAYV;QACd;OAECW,EAAE;AAMf,EAAC"}
@@ -1,4 +1,4 @@
1
- @import '../../../scss/styles.scss';
1
+ @import '../../scss/styles.scss';
2
2
 
3
3
  .stay-logged-in {
4
4
  @include blur-bg;
@@ -2,6 +2,7 @@
2
2
 
3
3
  .step-nav {
4
4
  display: flex;
5
+ align-items: center;
5
6
  gap: calc(var(--base) / 2);
6
7
 
7
8
  &::after {
@@ -56,8 +57,6 @@
56
57
  }
57
58
 
58
59
  span {
59
- display: flex;
60
- align-items: center;
61
60
  max-width: base(8);
62
61
  text-overflow: ellipsis;
63
62
  overflow: hidden;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/elements/Table/DefaultCell/fields/Checkbox/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAA;AAE9D,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAIrE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/elements/Table/DefaultCell/fields/Checkbox/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAA;AAG9D,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAOrE,CAAA"}
@@ -1,7 +1,11 @@
1
1
  'use client';
2
+ import { useTranslation } from '@payloadcms/ui/providers/Translation';
2
3
  import React from 'react';
3
- export const CheckboxCell = ({ cellData })=>/*#__PURE__*/ React.createElement("code", {
4
+ export const CheckboxCell = ({ cellData })=>{
5
+ const { t } = useTranslation();
6
+ return /*#__PURE__*/ React.createElement("code", {
4
7
  className: "bool-cell"
5
- }, /*#__PURE__*/ React.createElement("span", null, JSON.stringify(cellData)));
8
+ }, /*#__PURE__*/ React.createElement("span", null, t(`general:${cellData}`).toLowerCase()));
9
+ };
6
10
 
7
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/elements/Table/DefaultCell/fields/Checkbox/index.tsx"],"sourcesContent":["'use client'\nimport type { DefaultCellComponentProps } from 'payload/types'\n\nimport React from 'react'\n\nimport './index.scss'\n\nexport const CheckboxCell: React.FC<DefaultCellComponentProps<boolean>> = ({ cellData }) => (\n <code className=\"bool-cell\">\n <span>{JSON.stringify(cellData)}</span>\n </code>\n)\n"],"names":["React","CheckboxCell","cellData","code","className","span","JSON","stringify"],"rangeMappings":";;;;","mappings":"AAAA;AAGA,OAAOA,WAAW,QAAO;AAIzB,OAAO,MAAMC,eAA6D,CAAC,EAAEC,QAAQ,EAAE,iBACrF,oBAACC;QAAKC,WAAU;qBACd,oBAACC,cAAMC,KAAKC,SAAS,CAACL,YAEzB"}
1
+ {"version":3,"sources":["../../../../../../src/elements/Table/DefaultCell/fields/Checkbox/index.tsx"],"sourcesContent":["'use client'\nimport type { DefaultCellComponentProps } from 'payload/types'\n\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport React from 'react'\n\nimport './index.scss'\n\nexport const CheckboxCell: React.FC<DefaultCellComponentProps<boolean>> = ({ cellData }) => {\n const { t } = useTranslation()\n return (\n <code className=\"bool-cell\">\n <span>{t(`general:${cellData}`).toLowerCase()}</span>\n </code>\n )\n}\n"],"names":["useTranslation","React","CheckboxCell","cellData","t","code","className","span","toLowerCase"],"rangeMappings":";;;;;;;;","mappings":"AAAA;AAGA,SAASA,cAAc,QAAQ,uCAAsC;AACrE,OAAOC,WAAW,QAAO;AAIzB,OAAO,MAAMC,eAA6D,CAAC,EAAEC,QAAQ,EAAE;IACrF,MAAM,EAAEC,CAAC,EAAE,GAAGJ;IACd,qBACE,oBAACK;QAAKC,WAAU;qBACd,oBAACC,cAAMH,EAAE,CAAC,QAAQ,EAAED,SAAS,CAAC,EAAEK,WAAW;AAGjD,EAAC"}
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  import React from 'react';
3
3
  export const JSONCell = ({ cellData })=>{
4
- const textToShow = cellData.length > 100 ? `${cellData.substring(0, 100)}\u2026` : cellData;
4
+ const textToShow = cellData?.length > 100 ? `${cellData.substring(0, 100)}\u2026` : cellData;
5
5
  return /*#__PURE__*/ React.createElement("code", {
6
6
  className: "json-cell"
7
7
  }, /*#__PURE__*/ React.createElement("span", null, JSON.stringify(textToShow)));
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/elements/Table/DefaultCell/fields/JSON/index.tsx"],"sourcesContent":["'use client'\nimport type { DefaultCellComponentProps } from 'payload/types'\n\nimport React from 'react'\n\nimport './index.scss'\n\nexport const JSONCell: React.FC<DefaultCellComponentProps<string>> = ({ cellData }) => {\n const textToShow = cellData.length > 100 ? `${cellData.substring(0, 100)}\\u2026` : cellData\n\n return (\n <code className=\"json-cell\">\n <span>{JSON.stringify(textToShow)}</span>\n </code>\n )\n}\n"],"names":["React","JSONCell","cellData","textToShow","length","substring","code","className","span","JSON","stringify"],"rangeMappings":";;;;;;;","mappings":"AAAA;AAGA,OAAOA,WAAW,QAAO;AAIzB,OAAO,MAAMC,WAAwD,CAAC,EAAEC,QAAQ,EAAE;IAChF,MAAMC,aAAaD,SAASE,MAAM,GAAG,MAAM,CAAC,EAAEF,SAASG,SAAS,CAAC,GAAG,KAAK,MAAM,CAAC,GAAGH;IAEnF,qBACE,oBAACI;QAAKC,WAAU;qBACd,oBAACC,cAAMC,KAAKC,SAAS,CAACP;AAG5B,EAAC"}
1
+ {"version":3,"sources":["../../../../../../src/elements/Table/DefaultCell/fields/JSON/index.tsx"],"sourcesContent":["'use client'\nimport type { DefaultCellComponentProps } from 'payload/types'\n\nimport React from 'react'\n\nimport './index.scss'\n\nexport const JSONCell: React.FC<DefaultCellComponentProps<string>> = ({ cellData }) => {\n const textToShow = cellData?.length > 100 ? `${cellData.substring(0, 100)}\\u2026` : cellData\n\n return (\n <code className=\"json-cell\">\n <span>{JSON.stringify(textToShow)}</span>\n </code>\n )\n}\n"],"names":["React","JSONCell","cellData","textToShow","length","substring","code","className","span","JSON","stringify"],"rangeMappings":";;;;;;;","mappings":"AAAA;AAGA,OAAOA,WAAW,QAAO;AAIzB,OAAO,MAAMC,WAAwD,CAAC,EAAEC,QAAQ,EAAE;IAChF,MAAMC,aAAaD,UAAUE,SAAS,MAAM,CAAC,EAAEF,SAASG,SAAS,CAAC,GAAG,KAAK,MAAM,CAAC,GAAGH;IAEpF,qBACE,oBAACI;QAAKC,WAAU;qBACd,oBAACC,cAAMC,KAAKC,SAAS,CAACP;AAG5B,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Table/DefaultCell/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,kBAAkB,EAA6B,MAAM,eAAe,CAAA;AAYlF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAoHpD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Table/DefaultCell/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,kBAAkB,EAA6B,MAAM,eAAe,CAAA;AAYlF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAqHpD,CAAA"}
@@ -45,7 +45,7 @@ export const DefaultCell = (props)=>{
45
45
  rowData: rowData
46
46
  }));
47
47
  }
48
- const DefaultCellComponent = cellComponents[fieldType];
48
+ const DefaultCellComponent = typeof cellData !== 'undefined' && cellComponents[fieldType];
49
49
  let CellComponent = cellData && (CellComponentOverride ? /*#__PURE__*/ React.createElement(TableCellProvider, {
50
50
  richTextComponentMap: richTextComponentMap
51
51
  }, CellComponentOverride) : null);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/elements/Table/DefaultCell/index.tsx"],"sourcesContent":["'use client'\nimport LinkImport from 'next/link.js'\nimport React from 'react' // TODO: abstract this out to support all routers\n\nimport type { CellComponentProps, DefaultCellComponentProps } from 'payload/types'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { TableCellProvider, useTableCell } from '@payloadcms/ui/elements/Table'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\n\nimport { CodeCell } from './fields/Code/index.js'\nimport { cellComponents } from './fields/index.js'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nexport const DefaultCell: React.FC<CellComponentProps> = (props) => {\n const {\n name,\n CellComponentOverride,\n className: classNameFromProps,\n fieldType,\n isFieldAffectingData,\n label,\n onClick: onClickFromProps,\n richTextComponentMap,\n } = props\n\n const { i18n } = useTranslation()\n\n const {\n routes: { admin: adminRoute },\n } = useConfig()\n\n const cellContext = useTableCell()\n\n const { cellData, cellProps, columnIndex, customCellContext, rowData } = cellContext || {}\n\n const { className: classNameFromContext, link, onClick: onClickFromContext } = cellProps || {}\n\n const className = classNameFromProps || classNameFromContext\n\n const onClick = onClickFromProps || onClickFromContext\n\n let WrapElement: React.ComponentType<any> | string = 'span'\n\n const wrapElementProps: {\n className?: string\n href?: string\n onClick?: () => void\n type?: 'button'\n } = {\n className,\n }\n\n const isLink = link !== undefined ? link : columnIndex === 0\n\n if (isLink) {\n WrapElement = Link\n wrapElementProps.href = customCellContext?.collectionSlug\n ? `${adminRoute}/collections/${customCellContext?.collectionSlug}/${rowData.id}`\n : ''\n }\n\n if (typeof onClick === 'function') {\n WrapElement = 'button'\n wrapElementProps.type = 'button'\n wrapElementProps.onClick = () => {\n onClick({\n cellData,\n collectionSlug: customCellContext?.collectionSlug,\n rowData,\n })\n }\n }\n\n if (name === 'id') {\n return (\n <WrapElement {...wrapElementProps}>\n <CodeCell cellData={`ID: ${cellData}`} name={name} nowrap rowData={rowData} />\n </WrapElement>\n )\n }\n\n const DefaultCellComponent: React.FC<DefaultCellComponentProps> = cellComponents[fieldType]\n\n let CellComponent: React.ReactNode =\n cellData &&\n (CellComponentOverride ? ( // CellComponentOverride is used for richText\n <TableCellProvider richTextComponentMap={richTextComponentMap}>\n {CellComponentOverride}\n </TableCellProvider>\n ) : null)\n\n if (!CellComponent && DefaultCellComponent) {\n CellComponent = (\n <DefaultCellComponent\n cellData={cellData}\n customCellContext={customCellContext}\n rowData={rowData}\n {...props}\n />\n )\n } else if (!CellComponent && !DefaultCellComponent) {\n // DefaultCellComponent does not exist for certain field types like `text`\n if (customCellContext.uploadConfig && isFieldAffectingData && name === 'filename') {\n const FileCellComponent = cellComponents.File\n CellComponent = (\n <FileCellComponent\n cellData={cellData}\n customCellContext={customCellContext}\n rowData={rowData}\n {...props}\n />\n )\n } else {\n return (\n <WrapElement {...wrapElementProps}>\n {(cellData === '' || typeof cellData === 'undefined') &&\n 'label' in props &&\n i18n.t('general:noLabel', {\n label: getTranslation(label || 'data', i18n),\n })}\n {typeof cellData === 'string' && cellData}\n {typeof cellData === 'number' && cellData}\n {typeof cellData === 'object' && JSON.stringify(cellData)}\n </WrapElement>\n )\n }\n }\n\n return <WrapElement {...wrapElementProps}>{CellComponent}</WrapElement>\n}\n"],"names":["LinkImport","React","getTranslation","TableCellProvider","useTableCell","useConfig","useTranslation","CodeCell","cellComponents","Link","default","DefaultCell","props","name","CellComponentOverride","className","classNameFromProps","fieldType","isFieldAffectingData","label","onClick","onClickFromProps","richTextComponentMap","i18n","routes","admin","adminRoute","cellContext","cellData","cellProps","columnIndex","customCellContext","rowData","classNameFromContext","link","onClickFromContext","WrapElement","wrapElementProps","isLink","undefined","href","collectionSlug","id","type","nowrap","DefaultCellComponent","CellComponent","uploadConfig","FileCellComponent","File","t","JSON","stringify"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/elements/Table/DefaultCell/index.tsx"],"sourcesContent":["'use client'\nimport LinkImport from 'next/link.js'\nimport React from 'react' // TODO: abstract this out to support all routers\n\nimport type { CellComponentProps, DefaultCellComponentProps } from 'payload/types'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { TableCellProvider, useTableCell } from '@payloadcms/ui/elements/Table'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\n\nimport { CodeCell } from './fields/Code/index.js'\nimport { cellComponents } from './fields/index.js'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nexport const DefaultCell: React.FC<CellComponentProps> = (props) => {\n const {\n name,\n CellComponentOverride,\n className: classNameFromProps,\n fieldType,\n isFieldAffectingData,\n label,\n onClick: onClickFromProps,\n richTextComponentMap,\n } = props\n\n const { i18n } = useTranslation()\n\n const {\n routes: { admin: adminRoute },\n } = useConfig()\n\n const cellContext = useTableCell()\n\n const { cellData, cellProps, columnIndex, customCellContext, rowData } = cellContext || {}\n\n const { className: classNameFromContext, link, onClick: onClickFromContext } = cellProps || {}\n\n const className = classNameFromProps || classNameFromContext\n\n const onClick = onClickFromProps || onClickFromContext\n\n let WrapElement: React.ComponentType<any> | string = 'span'\n\n const wrapElementProps: {\n className?: string\n href?: string\n onClick?: () => void\n type?: 'button'\n } = {\n className,\n }\n\n const isLink = link !== undefined ? link : columnIndex === 0\n\n if (isLink) {\n WrapElement = Link\n wrapElementProps.href = customCellContext?.collectionSlug\n ? `${adminRoute}/collections/${customCellContext?.collectionSlug}/${rowData.id}`\n : ''\n }\n\n if (typeof onClick === 'function') {\n WrapElement = 'button'\n wrapElementProps.type = 'button'\n wrapElementProps.onClick = () => {\n onClick({\n cellData,\n collectionSlug: customCellContext?.collectionSlug,\n rowData,\n })\n }\n }\n\n if (name === 'id') {\n return (\n <WrapElement {...wrapElementProps}>\n <CodeCell cellData={`ID: ${cellData}`} name={name} nowrap rowData={rowData} />\n </WrapElement>\n )\n }\n\n const DefaultCellComponent: React.FC<DefaultCellComponentProps> =\n typeof cellData !== 'undefined' && cellComponents[fieldType]\n\n let CellComponent: React.ReactNode =\n cellData &&\n (CellComponentOverride ? ( // CellComponentOverride is used for richText\n <TableCellProvider richTextComponentMap={richTextComponentMap}>\n {CellComponentOverride}\n </TableCellProvider>\n ) : null)\n\n if (!CellComponent && DefaultCellComponent) {\n CellComponent = (\n <DefaultCellComponent\n cellData={cellData}\n customCellContext={customCellContext}\n rowData={rowData}\n {...props}\n />\n )\n } else if (!CellComponent && !DefaultCellComponent) {\n // DefaultCellComponent does not exist for certain field types like `text`\n if (customCellContext.uploadConfig && isFieldAffectingData && name === 'filename') {\n const FileCellComponent = cellComponents.File\n CellComponent = (\n <FileCellComponent\n cellData={cellData}\n customCellContext={customCellContext}\n rowData={rowData}\n {...props}\n />\n )\n } else {\n return (\n <WrapElement {...wrapElementProps}>\n {(cellData === '' || typeof cellData === 'undefined') &&\n 'label' in props &&\n i18n.t('general:noLabel', {\n label: getTranslation(label || 'data', i18n),\n })}\n {typeof cellData === 'string' && cellData}\n {typeof cellData === 'number' && cellData}\n {typeof cellData === 'object' && JSON.stringify(cellData)}\n </WrapElement>\n )\n }\n }\n\n return <WrapElement {...wrapElementProps}>{CellComponent}</WrapElement>\n}\n"],"names":["LinkImport","React","getTranslation","TableCellProvider","useTableCell","useConfig","useTranslation","CodeCell","cellComponents","Link","default","DefaultCell","props","name","CellComponentOverride","className","classNameFromProps","fieldType","isFieldAffectingData","label","onClick","onClickFromProps","richTextComponentMap","i18n","routes","admin","adminRoute","cellContext","cellData","cellProps","columnIndex","customCellContext","rowData","classNameFromContext","link","onClickFromContext","WrapElement","wrapElementProps","isLink","undefined","href","collectionSlug","id","type","nowrap","DefaultCellComponent","CellComponent","uploadConfig","FileCellComponent","File","t","JSON","stringify"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -10,6 +10,7 @@ export type Column = {
10
10
  Label: React.ReactNode;
11
11
  accessor: string;
12
12
  active: boolean;
13
+ admin?: FieldBase['admin'];
13
14
  cellProps?: Partial<CellComponentProps>;
14
15
  components: {
15
16
  Cell: React.ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Table/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAElE,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,cAAc,8BAA8B,CAAA;AAE5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEhD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yDAAyD,CAAA;AAGvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,cAAc,CAAA;AAErB,OAAO,EAAE,iBAAiB,EAAE,CAAA;AAI5B,MAAM,MAAM,MAAM,GAAG;IACnB,KAAK,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAA;IACvC,UAAU,EAAE;QACV,IAAI,EAAE,KAAK,CAAC,SAAS,CAAA;QACrB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAA;KACzB,CAAA;IACD,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,CAAA;IACvB,IAAI,EAAE,MAAM,UAAU,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,KAAK,GAAG;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;IAC/B,QAAQ,EAAE,QAAQ,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAgDjC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Table/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAElE,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,cAAc,8BAA8B,CAAA;AAE5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEhD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yDAAyD,CAAA;AAGvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAChE,OAAO,cAAc,CAAA;AAErB,OAAO,EAAE,iBAAiB,EAAE,CAAA;AAI5B,MAAM,MAAM,MAAM,GAAG;IACnB,KAAK,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,KAAK,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAA;IACvC,UAAU,EAAE;QACV,IAAI,EAAE,KAAK,CAAC,SAAS,CAAA;QACrB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAA;KACzB,CAAA;IACD,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,CAAA;IACvB,IAAI,EAAE,MAAM,UAAU,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,KAAK,GAAG;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;IAC/B,QAAQ,EAAE,QAAQ,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAgDjC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/Table/index.tsx"],"sourcesContent":["'use client'\nimport type { CellComponentProps, FieldBase } from 'payload/types'\n\nimport React from 'react'\n\nexport * from './TableCellProvider/index.js'\n\nimport type { FieldTypes } from 'payload/config'\n\nimport type { FieldMap } from '../../providers/ComponentMap/buildComponentMap/types.js'\n\nimport { useTableColumns } from '../TableColumns/index.js'\nimport { TableCellProvider } from './TableCellProvider/index.js'\nimport './index.scss'\n\nexport { TableCellProvider }\n\nconst baseClass = 'table'\n\nexport type Column = {\n Label: React.ReactNode\n accessor: string\n active: boolean\n cellProps?: Partial<CellComponentProps>\n components: {\n Cell: React.ReactNode\n Heading: React.ReactNode\n }\n name: FieldBase['name']\n type: keyof FieldTypes\n}\n\nexport type Props = {\n columns?: Column[]\n customCellContext?: Record<string, unknown>\n data: Record<string, unknown>[]\n fieldMap: FieldMap\n}\n\nexport const Table: React.FC<Props> = ({ columns: columnsFromProps, customCellContext, data }) => {\n const { columns: columnsFromContext } = useTableColumns()\n\n const columns = columnsFromProps || columnsFromContext\n\n const activeColumns = columns?.filter((col) => col?.active)\n\n if (!activeColumns || activeColumns.length === 0) {\n return <div>No columns selected</div>\n }\n\n return (\n <div className={baseClass}>\n <table cellPadding=\"0\" cellSpacing=\"0\">\n <thead>\n <tr>\n {activeColumns.map((col, i) => (\n <th id={`heading-${col.accessor}`} key={i}>\n {col.components.Heading}\n </th>\n ))}\n </tr>\n </thead>\n <tbody>\n {data &&\n data.map((row, rowIndex) => (\n <tr className={`row-${rowIndex + 1}`} key={rowIndex}>\n {activeColumns.map((col, colIndex) => {\n return (\n <td className={`cell-${col.accessor}`} key={colIndex}>\n <TableCellProvider\n cellData={row[col.accessor]}\n cellProps={col?.cellProps}\n columnIndex={colIndex}\n customCellContext={customCellContext}\n rowData={row}\n >\n {col.components.Cell}\n </TableCellProvider>\n </td>\n )\n })}\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n )\n}\n"],"names":["React","useTableColumns","TableCellProvider","baseClass","Table","columns","columnsFromProps","customCellContext","data","columnsFromContext","activeColumns","filter","col","active","length","div","className","table","cellPadding","cellSpacing","thead","tr","map","i","th","id","accessor","key","components","Heading","tbody","row","rowIndex","colIndex","td","cellData","cellProps","columnIndex","rowData","Cell"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAGA,OAAOA,WAAW,QAAO;AAEzB,cAAc,+BAA8B;AAM5C,SAASC,eAAe,QAAQ,2BAA0B;AAC1D,SAASC,iBAAiB,QAAQ,+BAA8B;AAGhE,SAASA,iBAAiB,GAAE;AAE5B,MAAMC,YAAY;AAsBlB,OAAO,MAAMC,QAAyB,CAAC,EAAEC,SAASC,gBAAgB,EAAEC,iBAAiB,EAAEC,IAAI,EAAE;IAC3F,MAAM,EAAEH,SAASI,kBAAkB,EAAE,GAAGR;IAExC,MAAMI,UAAUC,oBAAoBG;IAEpC,MAAMC,gBAAgBL,SAASM,OAAO,CAACC,MAAQA,KAAKC;IAEpD,IAAI,CAACH,iBAAiBA,cAAcI,MAAM,KAAK,GAAG;QAChD,qBAAO,oBAACC,aAAI;IACd;IAEA,qBACE,oBAACA;QAAIC,WAAWb;qBACd,oBAACc;QAAMC,aAAY;QAAIC,aAAY;qBACjC,oBAACC,6BACC,oBAACC,YACEX,cAAcY,GAAG,CAAC,CAACV,KAAKW,kBACvB,oBAACC;YAAGC,IAAI,CAAC,QAAQ,EAAEb,IAAIc,QAAQ,CAAC,CAAC;YAAEC,KAAKJ;WACrCX,IAAIgB,UAAU,CAACC,OAAO,oBAK/B,oBAACC,eACEtB,QACCA,KAAKc,GAAG,CAAC,CAACS,KAAKC,yBACb,oBAACX;YAAGL,WAAW,CAAC,IAAI,EAAEgB,WAAW,EAAE,CAAC;YAAEL,KAAKK;WACxCtB,cAAcY,GAAG,CAAC,CAACV,KAAKqB;YACvB,qBACE,oBAACC;gBAAGlB,WAAW,CAAC,KAAK,EAAEJ,IAAIc,QAAQ,CAAC,CAAC;gBAAEC,KAAKM;6BAC1C,oBAAC/B;gBACCiC,UAAUJ,GAAG,CAACnB,IAAIc,QAAQ,CAAC;gBAC3BU,WAAWxB,KAAKwB;gBAChBC,aAAaJ;gBACb1B,mBAAmBA;gBACnB+B,SAASP;eAERnB,IAAIgB,UAAU,CAACW,IAAI;QAI5B;AAOhB,EAAC"}
1
+ {"version":3,"sources":["../../../src/elements/Table/index.tsx"],"sourcesContent":["'use client'\nimport type { CellComponentProps, FieldBase } from 'payload/types'\n\nimport React from 'react'\n\nexport * from './TableCellProvider/index.js'\n\nimport type { FieldTypes } from 'payload/config'\n\nimport type { FieldMap } from '../../providers/ComponentMap/buildComponentMap/types.js'\n\nimport { useTableColumns } from '../TableColumns/index.js'\nimport { TableCellProvider } from './TableCellProvider/index.js'\nimport './index.scss'\n\nexport { TableCellProvider }\n\nconst baseClass = 'table'\n\nexport type Column = {\n Label: React.ReactNode\n accessor: string\n active: boolean\n admin?: FieldBase['admin']\n cellProps?: Partial<CellComponentProps>\n components: {\n Cell: React.ReactNode\n Heading: React.ReactNode\n }\n name: FieldBase['name']\n type: keyof FieldTypes\n}\n\nexport type Props = {\n columns?: Column[]\n customCellContext?: Record<string, unknown>\n data: Record<string, unknown>[]\n fieldMap: FieldMap\n}\n\nexport const Table: React.FC<Props> = ({ columns: columnsFromProps, customCellContext, data }) => {\n const { columns: columnsFromContext } = useTableColumns()\n\n const columns = columnsFromProps || columnsFromContext\n\n const activeColumns = columns?.filter((col) => col?.active)\n\n if (!activeColumns || activeColumns.length === 0) {\n return <div>No columns selected</div>\n }\n\n return (\n <div className={baseClass}>\n <table cellPadding=\"0\" cellSpacing=\"0\">\n <thead>\n <tr>\n {activeColumns.map((col, i) => (\n <th id={`heading-${col.accessor}`} key={i}>\n {col.components.Heading}\n </th>\n ))}\n </tr>\n </thead>\n <tbody>\n {data &&\n data.map((row, rowIndex) => (\n <tr className={`row-${rowIndex + 1}`} key={rowIndex}>\n {activeColumns.map((col, colIndex) => {\n return (\n <td className={`cell-${col.accessor}`} key={colIndex}>\n <TableCellProvider\n cellData={row[col.accessor]}\n cellProps={col?.cellProps}\n columnIndex={colIndex}\n customCellContext={customCellContext}\n rowData={row}\n >\n {col.components.Cell}\n </TableCellProvider>\n </td>\n )\n })}\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n )\n}\n"],"names":["React","useTableColumns","TableCellProvider","baseClass","Table","columns","columnsFromProps","customCellContext","data","columnsFromContext","activeColumns","filter","col","active","length","div","className","table","cellPadding","cellSpacing","thead","tr","map","i","th","id","accessor","key","components","Heading","tbody","row","rowIndex","colIndex","td","cellData","cellProps","columnIndex","rowData","Cell"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAGA,OAAOA,WAAW,QAAO;AAEzB,cAAc,+BAA8B;AAM5C,SAASC,eAAe,QAAQ,2BAA0B;AAC1D,SAASC,iBAAiB,QAAQ,+BAA8B;AAGhE,SAASA,iBAAiB,GAAE;AAE5B,MAAMC,YAAY;AAuBlB,OAAO,MAAMC,QAAyB,CAAC,EAAEC,SAASC,gBAAgB,EAAEC,iBAAiB,EAAEC,IAAI,EAAE;IAC3F,MAAM,EAAEH,SAASI,kBAAkB,EAAE,GAAGR;IAExC,MAAMI,UAAUC,oBAAoBG;IAEpC,MAAMC,gBAAgBL,SAASM,OAAO,CAACC,MAAQA,KAAKC;IAEpD,IAAI,CAACH,iBAAiBA,cAAcI,MAAM,KAAK,GAAG;QAChD,qBAAO,oBAACC,aAAI;IACd;IAEA,qBACE,oBAACA;QAAIC,WAAWb;qBACd,oBAACc;QAAMC,aAAY;QAAIC,aAAY;qBACjC,oBAACC,6BACC,oBAACC,YACEX,cAAcY,GAAG,CAAC,CAACV,KAAKW,kBACvB,oBAACC;YAAGC,IAAI,CAAC,QAAQ,EAAEb,IAAIc,QAAQ,CAAC,CAAC;YAAEC,KAAKJ;WACrCX,IAAIgB,UAAU,CAACC,OAAO,oBAK/B,oBAACC,eACEtB,QACCA,KAAKc,GAAG,CAAC,CAACS,KAAKC,yBACb,oBAACX;YAAGL,WAAW,CAAC,IAAI,EAAEgB,WAAW,EAAE,CAAC;YAAEL,KAAKK;WACxCtB,cAAcY,GAAG,CAAC,CAACV,KAAKqB;YACvB,qBACE,oBAACC;gBAAGlB,WAAW,CAAC,KAAK,EAAEJ,IAAIc,QAAQ,CAAC,CAAC;gBAAEC,KAAKM;6BAC1C,oBAAC/B;gBACCiC,UAAUJ,GAAG,CAACnB,IAAIc,QAAQ,CAAC;gBAC3BU,WAAWxB,KAAKwB;gBAChBC,aAAaJ;gBACb1B,mBAAmBA;gBACnB+B,SAASP;eAERnB,IAAIgB,UAAU,CAACW,IAAI;QAI5B;AAOhB,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildColumnState.d.ts","sourceRoot":"","sources":["../../../src/elements/TableColumns/buildColumnState.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,yBAAyB,EAAE,MAAM,eAAe,CAAA;AAGvF,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;AAU/C,KAAK,IAAI,GAAG;IACV,SAAS,EAAE,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAA;IACxC,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,OAAO,CAAC,EAAE,iBAAiB,CAAA;IAC3B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,QAAQ,EAAE,QAAQ,CAAA;IAClB,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;CAC7D,CAAA;AACD,eAAO,MAAM,gBAAgB,SAAU,IAAI,KAAG,MAAM,EAiJnD,CAAA"}
1
+ {"version":3,"file":"buildColumnState.d.ts","sourceRoot":"","sources":["../../../src/elements/TableColumns/buildColumnState.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,yBAAyB,EAAE,MAAM,eAAe,CAAA;AAGvF,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;AAU/C,KAAK,IAAI,GAAG;IACV,SAAS,EAAE,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAA;IACxC,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,OAAO,CAAC,EAAE,iBAAiB,CAAA;IAC3B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,QAAQ,EAAE,QAAQ,CAAA;IAClB,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;CAC7D,CAAA;AACD,eAAO,MAAM,gBAAgB,SAAU,IAAI,KAAG,MAAM,EAuJnD,CAAA"}
@@ -54,7 +54,8 @@ export const buildColumnState = (args)=>{
54
54
  const CustomLabelToRender = field && 'fieldComponentProps' in field && 'CustomLabel' in field.fieldComponentProps && field.fieldComponentProps.CustomLabel !== undefined ? field.fieldComponentProps.CustomLabel : undefined;
55
55
  const Label = /*#__PURE__*/ React.createElement(FieldLabel, {
56
56
  CustomLabel: CustomLabelToRender,
57
- ...field.fieldComponentProps?.labelProps,
57
+ label: field.fieldComponentProps?.label,
58
+ ...field.fieldComponentProps?.labelProps || {},
58
59
  unstyled: true
59
60
  });
60
61
  const Heading = /*#__PURE__*/ React.createElement(SortColumn, {
@@ -71,7 +72,12 @@ export const buildColumnState = (args)=>{
71
72
  Label,
72
73
  accessor: name,
73
74
  active,
75
+ admin: {
76
+ disableListColumn: field.disableListColumn,
77
+ disableListFilter: field.disableListFilter
78
+ },
74
79
  cellProps: {
80
+ ...field.cellComponentProps,
75
81
  ...cellProps?.[index],
76
82
  link: isFirstActiveColumn,
77
83
  relationTo: field.type === 'relationship' && 'relationTo' in field.fieldComponentProps ? field.fieldComponentProps.relationTo : undefined
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/TableColumns/buildColumnState.tsx"],"sourcesContent":["import { FieldLabel } from '@payloadcms/ui/forms/FieldLabel'\nimport { type CellComponentProps, 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 { flattenFieldMap } from '../../utilities/flattenFieldMap.js'\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\ntype Args = {\n cellProps: Partial<CellComponentProps>[]\n columnPreferences: ColumnPreferences\n columns?: ColumnPreferences\n enableRowSelections: boolean\n fieldMap: FieldMap\n useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n}\nexport const buildColumnState = (args: Args): Column[] => {\n const { cellProps, columnPreferences, columns, enableRowSelections, fieldMap, useAsTitle } = args\n\n let sortedFieldMap = flattenFieldMap(fieldMap)\n\n // place the `ID` field first, if it exists\n // do the same for the `useAsTitle` field with precedence over the `ID` field\n // then sort the rest of the fields based on the `defaultColumns` or `columnPreferences`\n const idFieldIndex = sortedFieldMap.findIndex((field) => field.name === 'id')\n\n if (idFieldIndex > -1) {\n const idField = sortedFieldMap.splice(idFieldIndex, 1)[0]\n sortedFieldMap.unshift(idField)\n }\n\n const useAsTitleFieldIndex = useAsTitle\n ? sortedFieldMap.findIndex((field) => field.name === useAsTitle)\n : -1\n\n if (useAsTitleFieldIndex > -1) {\n const useAsTitleField = sortedFieldMap.splice(useAsTitleFieldIndex, 1)[0]\n sortedFieldMap.unshift(useAsTitleField)\n }\n\n const sortTo = columnPreferences || columns\n\n if (sortTo) {\n // sort the fields to the order of `defaultColumns` or `columnPreferences`\n sortedFieldMap = sortedFieldMap.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 (columns && Array.isArray(columns) && columns.length > 0) {\n active = columns.find((column) => column.accessor === field.name)?.active\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 CustomLabelToRender =\n field &&\n 'fieldComponentProps' in field &&\n 'CustomLabel' in field.fieldComponentProps &&\n field.fieldComponentProps.CustomLabel !== undefined\n ? field.fieldComponentProps.CustomLabel\n : undefined\n\n const Label = (\n <FieldLabel\n CustomLabel={CustomLabelToRender}\n {...field.fieldComponentProps?.labelProps}\n unstyled\n />\n )\n\n const Heading = (\n <SortColumn\n Label={Label}\n disable={\n ('disableSort' in field && Boolean(field.disableSort)) ||\n fieldIsPresentationalOnly(field) ||\n undefined\n }\n // eslint-disable-next-line react/jsx-no-duplicate-props\n label={\n 'fieldComponentProps' in field && 'label' in field.fieldComponentProps\n ? field.fieldComponentProps.label\n : undefined\n }\n name={'name' in field ? field.name : undefined}\n />\n )\n\n if (field) {\n const column: Column = {\n name,\n type: field.type,\n Label,\n accessor: name,\n active,\n cellProps: {\n ...cellProps?.[index],\n link: isFirstActiveColumn,\n relationTo:\n field.type === 'relationship' && 'relationTo' in field.fieldComponentProps\n ? field.fieldComponentProps.relationTo\n : undefined,\n },\n components: {\n Cell,\n Heading,\n },\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":["FieldLabel","React","flattenFieldMap","SelectAll","SelectRow","SortColumn","DefaultCell","fieldIsPresentationalOnly","field","type","buildColumnState","args","cellProps","columnPreferences","columns","enableRowSelections","fieldMap","useAsTitle","sortedFieldMap","idFieldIndex","findIndex","name","idField","splice","unshift","useAsTitleFieldIndex","useAsTitleField","sortTo","sort","a","b","aIndex","column","accessor","bIndex","activeColumnsIndices","sorted","reduce","acc","index","columnPreference","find","preference","active","Array","isArray","length","includes","push","isFirstActiveColumn","undefined","Cell","CustomCell","cellComponentProps","CustomLabelToRender","fieldComponentProps","CustomLabel","Label","labelProps","unstyled","Heading","disable","Boolean","disableSort","label","link","relationTo","components"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,UAAU,QAAQ,kCAAiC;AAE5D,OAAOC,WAAW,QAAO;AAMzB,SAASC,eAAe,QAAQ,qCAAoC;AACpE,SAASC,SAAS,QAAQ,wBAAuB;AACjD,SAASC,SAAS,QAAQ,wBAAuB;AACjD,SAASC,UAAU,QAAQ,yBAAwB;AACnD,SAASC,WAAW,QAAQ,gCAA+B;AAE3D,MAAMC,4BAA4B,CAACC,QAAgCA,MAAMC,IAAI,KAAK;AAUlF,OAAO,MAAMC,mBAAmB,CAACC;IAC/B,MAAM,EAAEC,SAAS,EAAEC,iBAAiB,EAAEC,OAAO,EAAEC,mBAAmB,EAAEC,QAAQ,EAAEC,UAAU,EAAE,GAAGN;IAE7F,IAAIO,iBAAiBhB,gBAAgBc;IAErC,2CAA2C;IAC3C,6EAA6E;IAC7E,wFAAwF;IACxF,MAAMG,eAAeD,eAAeE,SAAS,CAAC,CAACZ,QAAUA,MAAMa,IAAI,KAAK;IAExE,IAAIF,eAAe,CAAC,GAAG;QACrB,MAAMG,UAAUJ,eAAeK,MAAM,CAACJ,cAAc,EAAE,CAAC,EAAE;QACzDD,eAAeM,OAAO,CAACF;IACzB;IAEA,MAAMG,uBAAuBR,aACzBC,eAAeE,SAAS,CAAC,CAACZ,QAAUA,MAAMa,IAAI,KAAKJ,cACnD,CAAC;IAEL,IAAIQ,uBAAuB,CAAC,GAAG;QAC7B,MAAMC,kBAAkBR,eAAeK,MAAM,CAACE,sBAAsB,EAAE,CAAC,EAAE;QACzEP,eAAeM,OAAO,CAACE;IACzB;IAEA,MAAMC,SAASd,qBAAqBC;IAEpC,IAAIa,QAAQ;QACV,0EAA0E;QAC1ET,iBAAiBA,eAAeU,IAAI,CAAC,CAACC,GAAGC;YACvC,MAAMC,SAASJ,OAAOP,SAAS,CAAC,CAACY,SAAW,UAAUH,KAAKG,OAAOC,QAAQ,KAAKJ,EAAER,IAAI;YACrF,MAAMa,SAASP,OAAOP,SAAS,CAAC,CAACY,SAAW,UAAUF,KAAKE,OAAOC,QAAQ,KAAKH,EAAET,IAAI;YACrF,IAAIU,WAAW,CAAC,KAAKG,WAAW,CAAC,GAAG,OAAO;YAC3C,IAAIH,WAAW,CAAC,GAAG,OAAO;YAC1B,IAAIG,WAAW,CAAC,GAAG,OAAO,CAAC;YAC3B,OAAOH,SAASG;QAClB;IACF;IAEA,MAAMC,uBAAuB,EAAE;IAE/B,MAAMC,SAASlB,eAAemB,MAAM,CAAC,CAACC,KAAK9B,OAAO+B;QAChD,MAAMC,mBAAmB3B,mBAAmB4B,KAC1C,CAACC,aAAe,UAAUlC,SAASkC,WAAWT,QAAQ,KAAKzB,MAAMa,IAAI;QAGvE,IAAIsB,SAAS;QAEb,IAAIH,kBAAkB;YACpBG,SAASH,iBAAiBG,MAAM;QAClC,OAAO,IAAI7B,WAAW8B,MAAMC,OAAO,CAAC/B,YAAYA,QAAQgC,MAAM,GAAG,GAAG;YAClEH,SAAS7B,QAAQ2B,IAAI,CAAC,CAACT,SAAWA,OAAOC,QAAQ,KAAKzB,MAAMa,IAAI,GAAGsB;QACrE,OAAO,IAAIR,qBAAqBW,MAAM,GAAG,GAAG;YAC1CH,SAAS;QACX;QAEA,IAAIA,UAAU,CAACR,qBAAqBY,QAAQ,CAACR,QAAQ;YACnDJ,qBAAqBa,IAAI,CAACT;QAC5B;QAEA,MAAMU,sBAAsBd,oBAAoB,CAAC,EAAE,KAAKI;QAExD,MAAMlB,OAAO,UAAUb,QAAQA,MAAMa,IAAI,GAAG6B;QAE5C,MAAMC,OACJ3C,MAAM4C,UAAU,KAAKF,YACnB1C,MAAM4C,UAAU,iBAEhB,oBAAC9C,aAAgBE,MAAM6C,kBAAkB;QAG7C,MAAMC,sBACJ9C,SACA,yBAAyBA,SACzB,iBAAiBA,MAAM+C,mBAAmB,IAC1C/C,MAAM+C,mBAAmB,CAACC,WAAW,KAAKN,YACtC1C,MAAM+C,mBAAmB,CAACC,WAAW,GACrCN;QAEN,MAAMO,sBACJ,oBAACzD;YACCwD,aAAaF;YACZ,GAAG9C,MAAM+C,mBAAmB,EAAEG,UAAU;YACzCC,UAAAA;;QAIJ,MAAMC,wBACJ,oBAACvD;YACCoD,OAAOA;YACPI,SACE,AAAC,iBAAiBrD,SAASsD,QAAQtD,MAAMuD,WAAW,KACpDxD,0BAA0BC,UAC1B0C;YAEF,wDAAwD;YACxDc,OACE,yBAAyBxD,SAAS,WAAWA,MAAM+C,mBAAmB,GAClE/C,MAAM+C,mBAAmB,CAACS,KAAK,GAC/Bd;YAEN7B,MAAM,UAAUb,QAAQA,MAAMa,IAAI,GAAG6B;;QAIzC,IAAI1C,OAAO;YACT,MAAMwB,SAAiB;gBACrBX;gBACAZ,MAAMD,MAAMC,IAAI;gBAChBgD;gBACAxB,UAAUZ;gBACVsB;gBACA/B,WAAW;oBACT,GAAGA,WAAW,CAAC2B,MAAM;oBACrB0B,MAAMhB;oBACNiB,YACE1D,MAAMC,IAAI,KAAK,kBAAkB,gBAAgBD,MAAM+C,mBAAmB,GACtE/C,MAAM+C,mBAAmB,CAACW,UAAU,GACpChB;gBACR;gBACAiB,YAAY;oBACVhB;oBACAS;gBACF;YACF;YAEAtB,IAAIU,IAAI,CAAChB;QACX;QAEA,OAAOM;IACT,GAAG,EAAE;IAEL,IAAIvB,qBAAqB;QACvBqB,OAAOZ,OAAO,CAAC;YACbH,MAAM;YACNY,UAAU;YACVU,QAAQ;YACRwB,YAAY;gBACVhB,oBAAM,oBAAC/C;gBACPwD,uBAAS,oBAACzD;YACZ;YACA6D,OAAO;QACT;IACF;IAEA,OAAO5B;AACT,EAAC"}
1
+ {"version":3,"sources":["../../../src/elements/TableColumns/buildColumnState.tsx"],"sourcesContent":["import { FieldLabel } from '@payloadcms/ui/forms/FieldLabel'\nimport { type CellComponentProps, 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 { flattenFieldMap } from '../../utilities/flattenFieldMap.js'\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\ntype Args = {\n cellProps: Partial<CellComponentProps>[]\n columnPreferences: ColumnPreferences\n columns?: ColumnPreferences\n enableRowSelections: boolean\n fieldMap: FieldMap\n useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n}\nexport const buildColumnState = (args: Args): Column[] => {\n const { cellProps, columnPreferences, columns, enableRowSelections, fieldMap, useAsTitle } = args\n\n let sortedFieldMap = flattenFieldMap(fieldMap)\n\n // place the `ID` field first, if it exists\n // do the same for the `useAsTitle` field with precedence over the `ID` field\n // then sort the rest of the fields based on the `defaultColumns` or `columnPreferences`\n const idFieldIndex = sortedFieldMap.findIndex((field) => field.name === 'id')\n\n if (idFieldIndex > -1) {\n const idField = sortedFieldMap.splice(idFieldIndex, 1)[0]\n sortedFieldMap.unshift(idField)\n }\n\n const useAsTitleFieldIndex = useAsTitle\n ? sortedFieldMap.findIndex((field) => field.name === useAsTitle)\n : -1\n\n if (useAsTitleFieldIndex > -1) {\n const useAsTitleField = sortedFieldMap.splice(useAsTitleFieldIndex, 1)[0]\n sortedFieldMap.unshift(useAsTitleField)\n }\n\n const sortTo = columnPreferences || columns\n\n if (sortTo) {\n // sort the fields to the order of `defaultColumns` or `columnPreferences`\n sortedFieldMap = sortedFieldMap.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 (columns && Array.isArray(columns) && columns.length > 0) {\n active = columns.find((column) => column.accessor === field.name)?.active\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 CustomLabelToRender =\n field &&\n 'fieldComponentProps' in field &&\n 'CustomLabel' in field.fieldComponentProps &&\n field.fieldComponentProps.CustomLabel !== undefined\n ? field.fieldComponentProps.CustomLabel\n : undefined\n\n const Label = (\n <FieldLabel\n CustomLabel={CustomLabelToRender}\n label={field.fieldComponentProps?.label}\n {...(field.fieldComponentProps?.labelProps || {})}\n unstyled\n />\n )\n\n const Heading = (\n <SortColumn\n Label={Label}\n disable={\n ('disableSort' in field && Boolean(field.disableSort)) ||\n fieldIsPresentationalOnly(field) ||\n undefined\n }\n // eslint-disable-next-line react/jsx-no-duplicate-props\n label={\n 'fieldComponentProps' in field && 'label' in field.fieldComponentProps\n ? field.fieldComponentProps.label\n : undefined\n }\n name={'name' in field ? field.name : undefined}\n />\n )\n\n if (field) {\n const column: Column = {\n name,\n type: field.type,\n Label,\n accessor: name,\n active,\n admin: {\n disableListColumn: field.disableListColumn,\n disableListFilter: field.disableListFilter,\n },\n cellProps: {\n ...field.cellComponentProps,\n ...cellProps?.[index],\n link: isFirstActiveColumn,\n relationTo:\n field.type === 'relationship' && 'relationTo' in field.fieldComponentProps\n ? field.fieldComponentProps.relationTo\n : undefined,\n },\n components: {\n Cell,\n Heading,\n },\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":["FieldLabel","React","flattenFieldMap","SelectAll","SelectRow","SortColumn","DefaultCell","fieldIsPresentationalOnly","field","type","buildColumnState","args","cellProps","columnPreferences","columns","enableRowSelections","fieldMap","useAsTitle","sortedFieldMap","idFieldIndex","findIndex","name","idField","splice","unshift","useAsTitleFieldIndex","useAsTitleField","sortTo","sort","a","b","aIndex","column","accessor","bIndex","activeColumnsIndices","sorted","reduce","acc","index","columnPreference","find","preference","active","Array","isArray","length","includes","push","isFirstActiveColumn","undefined","Cell","CustomCell","cellComponentProps","CustomLabelToRender","fieldComponentProps","CustomLabel","Label","label","labelProps","unstyled","Heading","disable","Boolean","disableSort","admin","disableListColumn","disableListFilter","link","relationTo","components"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -1,10 +1,10 @@
1
- import type { TFunction } from '@payloadcms/translations';
1
+ import type { ClientTranslationKeys, TFunction } from '@payloadcms/translations';
2
2
  import * as React from 'react';
3
3
  export type TranslationProps = {
4
4
  elements?: Record<string, React.FC<{
5
5
  children: React.ReactNode;
6
6
  }>>;
7
- i18nKey: string;
7
+ i18nKey: ClientTranslationKeys;
8
8
  t: TFunction;
9
9
  variables?: Record<string, unknown>;
10
10
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Translation/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEzD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAkC9B,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;QAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;KAAE,CAAC,CAAC,CAAA;IAClE,OAAO,EAAE,MAAM,CAAA;IACf,CAAC,EAAE,SAAS,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAQlD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Translation/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEhF,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAkC9B,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;QAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;KAAE,CAAC,CAAC,CAAA;IAClE,OAAO,EAAE,qBAAqB,CAAA;IAC9B,CAAC,EAAE,SAAS,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAQlD,CAAA"}