@payloadcms/ui 3.2.3-canary.673b4b5 → 3.3.0

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 (342) hide show
  1. package/dist/elements/AddNewRelation/index.js +40 -40
  2. package/dist/elements/AddNewRelation/index.js.map +1 -1
  3. package/dist/elements/AddNewRelation/useRelatedCollections.js +3 -3
  4. package/dist/elements/AddNewRelation/useRelatedCollections.js.map +1 -1
  5. package/dist/elements/AnimateHeight/index.d.ts.map +1 -1
  6. package/dist/elements/AnimateHeight/index.js +4 -1
  7. package/dist/elements/AnimateHeight/index.js.map +1 -1
  8. package/dist/elements/AnimateHeight/usePatchAnimateHeight.d.ts +2 -1
  9. package/dist/elements/AnimateHeight/usePatchAnimateHeight.d.ts.map +1 -1
  10. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js +67 -79
  11. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js.map +1 -1
  12. package/dist/elements/ArrayAction/index.js +10 -10
  13. package/dist/elements/ArrayAction/index.js.map +1 -1
  14. package/dist/elements/BulkUpload/ActionsBar/index.js +13 -13
  15. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  16. package/dist/elements/BulkUpload/AddingFilesView/index.js +14 -14
  17. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  18. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +4 -4
  19. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  20. package/dist/elements/BulkUpload/DrawerCloseButton/index.js +3 -3
  21. package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
  22. package/dist/elements/BulkUpload/FileSidebar/index.js +29 -26
  23. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  24. package/dist/elements/BulkUpload/FormsManager/index.js +2 -0
  25. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  26. package/dist/elements/BulkUpload/index.js +8 -8
  27. package/dist/elements/BulkUpload/index.js.map +1 -1
  28. package/dist/elements/CodeEditor/CodeEditor.js +28 -32
  29. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  30. package/dist/elements/Collapsible/index.js +13 -13
  31. package/dist/elements/Collapsible/index.js.map +1 -1
  32. package/dist/elements/ColumnSelector/index.js +10 -10
  33. package/dist/elements/ColumnSelector/index.js.map +1 -1
  34. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  35. package/dist/elements/DatePicker/DatePicker.js +4 -4
  36. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  37. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  38. package/dist/elements/DeleteMany/index.js +10 -14
  39. package/dist/elements/DeleteMany/index.js.map +1 -1
  40. package/dist/elements/DocumentControls/index.js +9 -9
  41. package/dist/elements/DocumentControls/index.js.map +1 -1
  42. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +4 -4
  43. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  44. package/dist/elements/DocumentDrawer/index.js +47 -47
  45. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  46. package/dist/elements/DocumentLocked/index.js +21 -21
  47. package/dist/elements/DocumentLocked/index.js.map +1 -1
  48. package/dist/elements/DocumentTakeOver/index.js +10 -10
  49. package/dist/elements/DocumentTakeOver/index.js.map +1 -1
  50. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +9 -9
  51. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  52. package/dist/elements/DraggableSortable/index.js +11 -11
  53. package/dist/elements/DraggableSortable/index.js.map +1 -1
  54. package/dist/elements/DraggableSortable/useDraggableSortable/index.js +8 -8
  55. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  56. package/dist/elements/Drawer/index.js +38 -38
  57. package/dist/elements/Drawer/index.js.map +1 -1
  58. package/dist/elements/Drawer/useDrawerSlug.js +3 -3
  59. package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
  60. package/dist/elements/EditMany/index.d.ts.map +1 -1
  61. package/dist/elements/EditMany/index.js +32 -33
  62. package/dist/elements/EditMany/index.js.map +1 -1
  63. package/dist/elements/FieldSelect/index.js +17 -16
  64. package/dist/elements/FieldSelect/index.js.map +1 -1
  65. package/dist/elements/FileDetails/DraggableFileDetails/index.js +15 -15
  66. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  67. package/dist/elements/FileDetails/FileMeta/index.js +15 -15
  68. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  69. package/dist/elements/FullscreenModal/index.js +4 -4
  70. package/dist/elements/FullscreenModal/index.js.map +1 -1
  71. package/dist/elements/Hamburger/index.js +4 -4
  72. package/dist/elements/Hamburger/index.js.map +1 -1
  73. package/dist/elements/HydrateAuthProvider/index.js +3 -3
  74. package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
  75. package/dist/elements/LeaveWithoutSaving/index.js +11 -11
  76. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  77. package/dist/elements/ListDrawer/index.js +19 -18
  78. package/dist/elements/ListDrawer/index.js.map +1 -1
  79. package/dist/elements/ListSelection/index.js +3 -3
  80. package/dist/elements/ListSelection/index.js.map +1 -1
  81. package/dist/elements/Loading/index.js +15 -15
  82. package/dist/elements/Loading/index.js.map +1 -1
  83. package/dist/elements/LoadingOverlay/index.js +18 -16
  84. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  85. package/dist/elements/Localizer/LocalizerLabel/index.js +5 -5
  86. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  87. package/dist/elements/Localizer/index.d.ts.map +1 -1
  88. package/dist/elements/Localizer/index.js +20 -19
  89. package/dist/elements/Localizer/index.js.map +1 -1
  90. package/dist/elements/Locked/index.js +3 -3
  91. package/dist/elements/Locked/index.js.map +1 -1
  92. package/dist/elements/Logout/index.js +7 -7
  93. package/dist/elements/Logout/index.js.map +1 -1
  94. package/dist/elements/Nav/NavToggler/index.js +13 -13
  95. package/dist/elements/Nav/NavToggler/index.js.map +1 -1
  96. package/dist/elements/NavGroup/index.js +12 -12
  97. package/dist/elements/NavGroup/index.js.map +1 -1
  98. package/dist/elements/PerPage/index.js +7 -7
  99. package/dist/elements/PerPage/index.js.map +1 -1
  100. package/dist/elements/Pill/index.js +8 -8
  101. package/dist/elements/Pill/index.js.map +1 -1
  102. package/dist/elements/Popup/index.js +1 -0
  103. package/dist/elements/Popup/index.js.map +1 -1
  104. package/dist/elements/PreviewButton/index.js +3 -3
  105. package/dist/elements/PreviewButton/index.js.map +1 -1
  106. package/dist/elements/PublishButton/index.js +28 -28
  107. package/dist/elements/PublishButton/index.js.map +1 -1
  108. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  109. package/dist/elements/PublishMany/index.js +10 -10
  110. package/dist/elements/PublishMany/index.js.map +1 -1
  111. package/dist/elements/ReactSelect/Input/index.d.ts +2 -2
  112. package/dist/elements/ReactSelect/Input/index.d.ts.map +1 -1
  113. package/dist/elements/ReactSelect/Input/index.js.map +1 -1
  114. package/dist/elements/ReactSelect/MultiValue/index.js +10 -10
  115. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  116. package/dist/elements/ReactSelect/MultiValueRemove/index.js +5 -5
  117. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  118. package/dist/elements/ReactSelect/index.js.map +1 -1
  119. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +4 -4
  120. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
  121. package/dist/elements/RelationshipTable/index.js +278 -142
  122. package/dist/elements/RelationshipTable/index.js.map +1 -1
  123. package/dist/elements/RenderIfInViewport/index.js +3 -3
  124. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  125. package/dist/elements/RenderTitle/index.js +6 -6
  126. package/dist/elements/RenderTitle/index.js.map +1 -1
  127. package/dist/elements/SelectAll/index.js +3 -3
  128. package/dist/elements/SelectAll/index.js.map +1 -1
  129. package/dist/elements/SelectRow/index.js +6 -6
  130. package/dist/elements/SelectRow/index.js.map +1 -1
  131. package/dist/elements/ShimmerEffect/index.js +7 -7
  132. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  133. package/dist/elements/SortColumn/index.js +16 -16
  134. package/dist/elements/SortColumn/index.js.map +1 -1
  135. package/dist/elements/SortComplex/index.d.ts.map +1 -1
  136. package/dist/elements/SortComplex/index.js +38 -51
  137. package/dist/elements/SortComplex/index.js.map +1 -1
  138. package/dist/elements/Status/index.js +38 -35
  139. package/dist/elements/Status/index.js.map +1 -1
  140. package/dist/elements/StayLoggedIn/index.js +12 -12
  141. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  142. package/dist/elements/StepNav/SetStepNav.js +3 -3
  143. package/dist/elements/StepNav/SetStepNav.js.map +1 -1
  144. package/dist/elements/StepNav/context.js +3 -3
  145. package/dist/elements/StepNav/context.js.map +1 -1
  146. package/dist/elements/StepNav/index.js +9 -9
  147. package/dist/elements/StepNav/index.js.map +1 -1
  148. package/dist/elements/Table/DefaultCell/fields/Date/index.js +3 -3
  149. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  150. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +31 -31
  151. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  152. package/dist/elements/Table/DefaultCell/fields/Select/index.js +3 -3
  153. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  154. package/dist/elements/Table/DefaultCell/index.js +15 -15
  155. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  156. package/dist/elements/Table/RelationshipProvider/index.js +12 -9
  157. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  158. package/dist/elements/TableColumns/RenderDefaultCell/index.js +6 -6
  159. package/dist/elements/TableColumns/RenderDefaultCell/index.js.map +1 -1
  160. package/dist/elements/Thumbnail/index.js +27 -27
  161. package/dist/elements/Thumbnail/index.js.map +1 -1
  162. package/dist/elements/ThumbnailCard/index.js +10 -10
  163. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  164. package/dist/elements/Tooltip/index.js +29 -24
  165. package/dist/elements/Tooltip/index.js.map +1 -1
  166. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  167. package/dist/elements/UnpublishMany/index.js +11 -11
  168. package/dist/elements/UnpublishMany/index.js.map +1 -1
  169. package/dist/elements/Upload/index.js +5 -5
  170. package/dist/elements/Upload/index.js.map +1 -1
  171. package/dist/elements/WhereBuilder/Condition/Number/index.js +3 -3
  172. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  173. package/dist/elements/WhereBuilder/Condition/Select/index.js +13 -10
  174. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  175. package/dist/elements/WhereBuilder/Condition/Text/index.js +5 -5
  176. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  177. package/dist/elements/WhereBuilder/Condition/index.js +45 -45
  178. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  179. package/dist/elements/WhereBuilder/index.js +11 -11
  180. package/dist/elements/WhereBuilder/index.js.map +1 -1
  181. package/dist/exports/client/{DatePicker-QST7QHAX.js → CodeEditor-RZ32B2QF.js} +2 -2
  182. package/dist/exports/client/DatePicker-QW5V4BQV.js +14 -0
  183. package/dist/exports/client/DatePicker-QW5V4BQV.js.map +8 -0
  184. package/dist/exports/client/chunk-CKHKQPOO.js +26 -0
  185. package/dist/exports/client/{CodeEditor-5MCGR4GL.js.map → chunk-CKHKQPOO.js.map} +4 -4
  186. package/dist/exports/client/chunk-KZPVHMBR.js +29 -0
  187. package/dist/exports/client/chunk-KZPVHMBR.js.map +8 -0
  188. package/dist/exports/client/index.d.ts +4 -1
  189. package/dist/exports/client/index.d.ts.map +1 -1
  190. package/dist/exports/client/index.js +16 -16
  191. package/dist/exports/client/index.js.map +4 -4
  192. package/dist/fields/Array/ArrayRow.js +38 -38
  193. package/dist/fields/Array/ArrayRow.js.map +1 -1
  194. package/dist/fields/Array/index.d.ts.map +1 -1
  195. package/dist/fields/Array/index.js +27 -25
  196. package/dist/fields/Array/index.js.map +1 -1
  197. package/dist/fields/Blocks/BlockRow.js +51 -49
  198. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  199. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js +3 -3
  200. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js.map +1 -1
  201. package/dist/fields/Blocks/BlocksDrawer/index.js +13 -13
  202. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  203. package/dist/fields/Blocks/RowActions.js +25 -25
  204. package/dist/fields/Blocks/RowActions.js.map +1 -1
  205. package/dist/fields/Blocks/SectionTitle/index.js +8 -8
  206. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  207. package/dist/fields/Blocks/index.d.ts.map +1 -1
  208. package/dist/fields/Blocks/index.js +26 -24
  209. package/dist/fields/Blocks/index.js.map +1 -1
  210. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  211. package/dist/fields/Collapsible/index.js +4 -2
  212. package/dist/fields/Collapsible/index.js.map +1 -1
  213. package/dist/fields/ConfirmPassword/index.js +6 -6
  214. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  215. package/dist/fields/FieldLabel/index.js +18 -18
  216. package/dist/fields/FieldLabel/index.js.map +1 -1
  217. package/dist/fields/Group/index.d.ts.map +1 -1
  218. package/dist/fields/Group/index.js +6 -4
  219. package/dist/fields/Group/index.js.map +1 -1
  220. package/dist/fields/Hidden/index.js +7 -7
  221. package/dist/fields/Hidden/index.js.map +1 -1
  222. package/dist/fields/Number/index.js +5 -5
  223. package/dist/fields/Number/index.js.map +1 -1
  224. package/dist/fields/Password/input.js +24 -24
  225. package/dist/fields/Password/input.js.map +1 -1
  226. package/dist/fields/RadioGroup/Radio/index.js +9 -9
  227. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  228. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  229. package/dist/fields/RadioGroup/index.js +4 -2
  230. package/dist/fields/RadioGroup/index.js.map +1 -1
  231. package/dist/fields/Relationship/index.d.ts.map +1 -1
  232. package/dist/fields/Relationship/index.js +4 -2
  233. package/dist/fields/Relationship/index.js.map +1 -1
  234. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +18 -18
  235. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  236. package/dist/fields/Relationship/select-components/SingleValue/index.js +18 -18
  237. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  238. package/dist/fields/Select/Input.js +28 -28
  239. package/dist/fields/Select/Input.js.map +1 -1
  240. package/dist/fields/Tabs/Tab/index.js +10 -10
  241. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  242. package/dist/fields/Tabs/index.js +69 -69
  243. package/dist/fields/Tabs/index.js.map +1 -1
  244. package/dist/fields/Text/Input.js +24 -24
  245. package/dist/fields/Text/Input.js.map +1 -1
  246. package/dist/fields/Textarea/Input.js +19 -19
  247. package/dist/fields/Textarea/Input.js.map +1 -1
  248. package/dist/fields/Upload/HasMany/index.js +11 -11
  249. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  250. package/dist/fields/Upload/Input.js +109 -104
  251. package/dist/fields/Upload/Input.js.map +1 -1
  252. package/dist/fields/Upload/RelationshipContent/index.js +20 -20
  253. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  254. package/dist/forms/NullifyField/index.js +3 -3
  255. package/dist/forms/NullifyField/index.js.map +1 -1
  256. package/dist/forms/RenderFields/RenderField.js +9 -9
  257. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  258. package/dist/forms/RenderFields/index.js +16 -16
  259. package/dist/forms/RenderFields/index.js.map +1 -1
  260. package/dist/forms/WatchChildErrors/index.js +10 -10
  261. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  262. package/dist/forms/useField/index.js +44 -44
  263. package/dist/forms/useField/index.js.map +1 -1
  264. package/dist/hooks/useDebounce.js +3 -3
  265. package/dist/hooks/useDebounce.js.map +1 -1
  266. package/dist/hooks/useDebouncedEffect.js +6 -6
  267. package/dist/hooks/useDebouncedEffect.js.map +1 -1
  268. package/dist/hooks/useDelay.js +3 -3
  269. package/dist/hooks/useDelay.js.map +1 -1
  270. package/dist/hooks/useHotkey.js +18 -14
  271. package/dist/hooks/useHotkey.js.map +1 -1
  272. package/dist/hooks/usePayloadAPI.js +13 -13
  273. package/dist/hooks/usePayloadAPI.js.map +1 -1
  274. package/dist/hooks/useThrottledEffect.js +3 -3
  275. package/dist/hooks/useThrottledEffect.js.map +1 -1
  276. package/dist/providers/Actions/index.js +4 -4
  277. package/dist/providers/Actions/index.js.map +1 -1
  278. package/dist/providers/ClientFunction/index.js +3 -3
  279. package/dist/providers/ClientFunction/index.js.map +1 -1
  280. package/dist/providers/Config/index.js +9 -10
  281. package/dist/providers/Config/index.js.map +1 -1
  282. package/dist/providers/DocumentEvents/index.js +3 -3
  283. package/dist/providers/DocumentEvents/index.js.map +1 -1
  284. package/dist/providers/EditDepth/index.js +3 -3
  285. package/dist/providers/EditDepth/index.js.map +1 -1
  286. package/dist/providers/EntityVisibility/index.js +9 -10
  287. package/dist/providers/EntityVisibility/index.js.map +1 -1
  288. package/dist/providers/ListQuery/index.js +2 -2
  289. package/dist/providers/ListQuery/index.js.map +1 -1
  290. package/dist/providers/Locale/index.d.ts.map +1 -1
  291. package/dist/providers/Locale/index.js +65 -59
  292. package/dist/providers/Locale/index.js.map +1 -1
  293. package/dist/providers/Params/index.d.ts +16 -0
  294. package/dist/providers/Params/index.d.ts.map +1 -1
  295. package/dist/providers/Params/index.js +19 -4
  296. package/dist/providers/Params/index.js.map +1 -1
  297. package/dist/providers/RouteCache/index.js +6 -6
  298. package/dist/providers/RouteCache/index.js.map +1 -1
  299. package/dist/providers/SearchParams/index.d.ts +22 -4
  300. package/dist/providers/SearchParams/index.d.ts.map +1 -1
  301. package/dist/providers/SearchParams/index.js +28 -14
  302. package/dist/providers/SearchParams/index.js.map +1 -1
  303. package/dist/providers/Selection/index.d.ts.map +1 -1
  304. package/dist/providers/Selection/index.js +7 -8
  305. package/dist/providers/Selection/index.js.map +1 -1
  306. package/dist/providers/Theme/index.js +7 -7
  307. package/dist/providers/Theme/index.js.map +1 -1
  308. package/dist/providers/Translation/index.js +12 -12
  309. package/dist/providers/Translation/index.js.map +1 -1
  310. package/dist/providers/UploadEdits/index.js +3 -3
  311. package/dist/providers/UploadEdits/index.js.map +1 -1
  312. package/dist/styles.css +1 -1
  313. package/dist/utilities/buildClientFieldSchemaMap/index.js +2 -0
  314. package/dist/utilities/buildClientFieldSchemaMap/index.js.map +1 -1
  315. package/dist/utilities/buildFieldSchemaMap/index.js +2 -0
  316. package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
  317. package/dist/utilities/groupNavItems.js +3 -3
  318. package/dist/utilities/groupNavItems.js.map +1 -1
  319. package/dist/utilities/parseSearchParams.d.ts +4 -0
  320. package/dist/utilities/parseSearchParams.d.ts.map +1 -0
  321. package/dist/utilities/parseSearchParams.js +9 -0
  322. package/dist/utilities/parseSearchParams.js.map +1 -0
  323. package/dist/views/Edit/Auth/index.js +47 -47
  324. package/dist/views/Edit/Auth/index.js.map +1 -1
  325. package/dist/views/Edit/Auth/types.d.ts +1 -1
  326. package/dist/views/Edit/Auth/types.d.ts.map +1 -1
  327. package/dist/views/Edit/Auth/types.js.map +1 -1
  328. package/dist/views/Edit/SetDocumentStepNav/index.js +14 -14
  329. package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
  330. package/dist/views/Edit/SetDocumentTitle/index.js +5 -5
  331. package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
  332. package/dist/views/Edit/index.js +1 -1
  333. package/dist/views/Edit/index.js.map +1 -1
  334. package/dist/views/List/index.js +20 -24
  335. package/dist/views/List/index.js.map +1 -1
  336. package/package.json +16 -17
  337. package/dist/exports/client/CodeEditor-5MCGR4GL.js +0 -26
  338. package/dist/exports/client/chunk-4SO5UCQD.js +0 -14
  339. package/dist/exports/client/chunk-4SO5UCQD.js.map +0 -8
  340. package/dist/exports/client/chunk-5LUHGAPX.js +0 -30
  341. package/dist/exports/client/chunk-5LUHGAPX.js.map +0 -8
  342. /package/dist/exports/client/{DatePicker-QST7QHAX.js.map → CodeEditor-RZ32B2QF.js.map} +0 -0
@@ -3,9 +3,25 @@ import React from 'react';
3
3
  export type Params = ReturnType<typeof useNextParams>;
4
4
  interface IParamsContext extends Params {
5
5
  }
6
+ /**
7
+ * @deprecated
8
+ * The ParamsProvider is deprecated and will be removed in the next major release. Instead, use the `useParams` hook from `next/navigation` directly. See https://github.com/payloadcms/payload/pull/9581.
9
+ * @example
10
+ * ```tsx
11
+ * import { useParams } from 'next/navigation'
12
+ * ```
13
+ */
6
14
  export declare const ParamsProvider: React.FC<{
7
15
  children?: React.ReactNode;
8
16
  }>;
17
+ /**
18
+ * @deprecated
19
+ * The `useParams` hook is deprecated and will be removed in the next major release. Instead, use the `useParams` hook from `next/navigation` directly. See https://github.com/payloadcms/payload/pull/9581.
20
+ * @example
21
+ * ```tsx
22
+ * import { useParams } from 'next/navigation'
23
+ * ```
24
+ */
9
25
  export declare const useParams: () => IParamsContext;
10
26
  export {};
11
27
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Params/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAA;AACrD,UAAU,cAAe,SAAQ,MAAM;CAAG;AAK1C,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAGnE,CAAA;AAED,eAAO,MAAM,SAAS,QAAO,cAAqC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Params/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAA;AACrD,UAAU,cAAe,SAAQ,MAAM;CAAG;AAI1C;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAGnE,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,SAAS,QAAO,cAAqC,CAAA"}
@@ -5,7 +5,14 @@ import { jsx as _jsx } from "react/jsx-runtime";
5
5
  import { useParams as useNextParams } from 'next/navigation.js';
6
6
  import React, { createContext, useContext } from 'react';
7
7
  const Context = /*#__PURE__*/createContext({});
8
- // TODO: abstract the `next/navigation` dependency out from this provider so that it can be used in other contexts
8
+ /**
9
+ * @deprecated
10
+ * The ParamsProvider is deprecated and will be removed in the next major release. Instead, use the `useParams` hook from `next/navigation` directly. See https://github.com/payloadcms/payload/pull/9581.
11
+ * @example
12
+ * ```tsx
13
+ * import { useParams } from 'next/navigation'
14
+ * ```
15
+ */
9
16
  export const ParamsProvider = t0 => {
10
17
  const $ = _c(3);
11
18
  const {
@@ -13,19 +20,27 @@ export const ParamsProvider = t0 => {
13
20
  } = t0;
14
21
  const params = useNextParams();
15
22
  let t1;
16
- if ($[0] !== params || $[1] !== children) {
23
+ if ($[0] !== children || $[1] !== params) {
17
24
  t1 = _jsx(Context.Provider, {
18
25
  value: params,
19
26
  children
20
27
  });
21
- $[0] = params;
22
- $[1] = children;
28
+ $[0] = children;
29
+ $[1] = params;
23
30
  $[2] = t1;
24
31
  } else {
25
32
  t1 = $[2];
26
33
  }
27
34
  return t1;
28
35
  };
36
+ /**
37
+ * @deprecated
38
+ * The `useParams` hook is deprecated and will be removed in the next major release. Instead, use the `useParams` hook from `next/navigation` directly. See https://github.com/payloadcms/payload/pull/9581.
39
+ * @example
40
+ * ```tsx
41
+ * import { useParams } from 'next/navigation'
42
+ * ```
43
+ */
29
44
  export const useParams = () => {
30
45
  return useContext(Context);
31
46
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useParams","useNextParams","React","createContext","useContext","Context","ParamsProvider","t0","$","children","params","t1","_jsx","Provider","value"],"sources":["../../../src/providers/Params/index.tsx"],"sourcesContent":["'use client'\n\nimport { useParams as useNextParams } from 'next/navigation.js'\nimport React, { createContext, useContext } from 'react'\n\nexport type Params = ReturnType<typeof useNextParams>\ninterface IParamsContext extends Params {}\n\nconst Context = createContext<IParamsContext>({} as IParamsContext)\n\n// TODO: abstract the `next/navigation` dependency out from this provider so that it can be used in other contexts\nexport const ParamsProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) => {\n const params = useNextParams()\n return <Context.Provider value={params}>{children}</Context.Provider>\n}\n\nexport const useParams = (): IParamsContext => useContext(Context)\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,SAASC,SAAA,IAAaC,aAAa,QAAQ;AAC3C,OAAOC,KAAA,IAASC,aAAa,EAAEC,UAAU,QAAQ;AAKjD,MAAMC,OAAA,gBAAUF,aAAA,CAA8B,CAAC;AAE/C;AACA,OAAO,MAAMG,cAAA,GAA2DC,EAAA;EAAA,MAAAC,CAAA,GAAAT,EAAA;EAAC;IAAAU;EAAA,IAAAF,EAAY;EACnF,MAAAG,MAAA,GAAeT,aAAA;EAAA,IAAAU,EAAA;EAAA,IAAAH,CAAA,QAAAE,MAAA,IAAAF,CAAA,QAAAC,QAAA;IACRE,EAAA,GAAAC,IAAA,CAAAP,OAAA,CAAAQ,QAAA;MAAAC,KAAA,EAAyBJ,MAAA;MAAAD;IAAA,C;;;;;;;SAAzBE,E;CACT;AAEA,OAAO,MAAMX,SAAA,GAAYA,CAAA;EAAA,OAAsBI,UAAA,CAAAC,OAAW;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useParams","useNextParams","React","createContext","useContext","Context","ParamsProvider","t0","$","children","params","t1","_jsx","Provider","value"],"sources":["../../../src/providers/Params/index.tsx"],"sourcesContent":["'use client'\n\nimport { useParams as useNextParams } from 'next/navigation.js'\nimport React, { createContext, useContext } from 'react'\n\nexport type Params = ReturnType<typeof useNextParams>\ninterface IParamsContext extends Params {}\n\nconst Context = createContext<IParamsContext>({} as IParamsContext)\n\n/**\n * @deprecated\n * The ParamsProvider is deprecated and will be removed in the next major release. Instead, use the `useParams` hook from `next/navigation` directly. See https://github.com/payloadcms/payload/pull/9581.\n * @example\n * ```tsx\n * import { useParams } from 'next/navigation'\n * ```\n */\nexport const ParamsProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) => {\n const params = useNextParams()\n return <Context.Provider value={params}>{children}</Context.Provider>\n}\n\n/**\n * @deprecated\n * The `useParams` hook is deprecated and will be removed in the next major release. Instead, use the `useParams` hook from `next/navigation` directly. See https://github.com/payloadcms/payload/pull/9581.\n * @example\n * ```tsx\n * import { useParams } from 'next/navigation'\n * ```\n */\nexport const useParams = (): IParamsContext => useContext(Context)\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,SAASC,SAAA,IAAaC,aAAa,QAAQ;AAC3C,OAAOC,KAAA,IAASC,aAAa,EAAEC,UAAU,QAAQ;AAKjD,MAAMC,OAAA,gBAAUF,aAAA,CAA8B,CAAC;AAE/C;;;;;;;;AAQA,OAAO,MAAMG,cAAA,GAA2DC,EAAA;EAAA,MAAAC,CAAA,GAAAT,EAAA;EAAC;IAAAU;EAAA,IAAAF,EAAY;EACnF,MAAAG,MAAA,GAAeT,aAAA;EAAA,IAAAU,EAAA;EAAA,IAAAH,CAAA,QAAAC,QAAA,IAAAD,CAAA,QAAAE,MAAA;IACRC,EAAA,GAAAC,IAAA,CAAAP,OAAA,CAAAQ,QAAA;MAAAC,KAAA,EAAyBJ,MAAA;MAAAD;IAAA,C;;;;;;;SAAzBE,E;CACT;AAEA;;;;;;;;AAQA,OAAO,MAAMX,SAAA,GAAYA,CAAA;EAAA,OAAsBI,UAAA,CAAAC,OAAW;AAAA","ignoreList":[]}
@@ -36,25 +36,25 @@ export const RouteCache = t0 => {
36
36
  t2 = $[3];
37
37
  }
38
38
  let t3;
39
- if ($[4] !== pathname || $[5] !== clearRouteCache) {
39
+ if ($[4] !== clearRouteCache || $[5] !== pathname) {
40
40
  t3 = [pathname, clearRouteCache];
41
- $[4] = pathname;
42
- $[5] = clearRouteCache;
41
+ $[4] = clearRouteCache;
42
+ $[5] = pathname;
43
43
  $[6] = t3;
44
44
  } else {
45
45
  t3 = $[6];
46
46
  }
47
47
  useEffect(t2, t3);
48
48
  let t4;
49
- if ($[7] !== clearRouteCache || $[8] !== children) {
49
+ if ($[7] !== children || $[8] !== clearRouteCache) {
50
50
  t4 = _jsx(Context.Provider, {
51
51
  value: {
52
52
  clearRouteCache
53
53
  },
54
54
  children
55
55
  });
56
- $[7] = clearRouteCache;
57
- $[8] = children;
56
+ $[7] = children;
57
+ $[8] = clearRouteCache;
58
58
  $[9] = t4;
59
59
  } else {
60
60
  t4 = $[9];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","usePathname","useRouter","React","createContext","useCallback","useContext","useEffect","Context","clearRouteCache","RouteCache","t0","$","children","pathname","router","t1","refresh","t2","t3","t4","_jsx","Provider","value","useRouteCache"],"sources":["../../../src/providers/RouteCache/index.tsx"],"sourcesContent":["'use client'\n\nimport { usePathname, useRouter } from 'next/navigation.js'\nimport React, { createContext, useCallback, useContext, useEffect } from 'react'\n\nexport type RouteCacheContext = {\n clearRouteCache: () => void\n}\n\nconst Context = createContext<RouteCacheContext>({\n clearRouteCache: () => {},\n})\n\nexport const RouteCache: React.FC<{ children: React.ReactNode }> = ({ children }) => {\n const pathname = usePathname()\n const router = useRouter()\n\n const clearRouteCache = useCallback(() => {\n router.refresh()\n }, [router])\n\n useEffect(() => {\n clearRouteCache()\n }, [pathname, clearRouteCache])\n\n return <Context.Provider value={{ clearRouteCache }}>{children}</Context.Provider>\n}\n\nexport const useRouteCache = () => useContext(Context)\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,SAASC,WAAW,EAAEC,SAAS,QAAQ;AACvC,OAAOC,KAAA,IAASC,aAAa,EAAEC,WAAW,EAAEC,UAAU,EAAEC,SAAS,QAAQ;AAMzE,MAAMC,OAAA,gBAAUJ,aAAA,CAAiC;EAC/CK,eAAA,EAAiBA,CAAA,MAAO;AAC1B;AAEA,OAAO,MAAMC,UAAA,GAAsDC,EAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EAAC;IAAAa;EAAA,IAAAF,EAAY;EAC9E,MAAAG,QAAA,GAAiBb,WAAA;EACjB,MAAAc,MAAA,GAAeb,SAAA;EAAA,IAAAc,EAAA;EAAA,IAAAJ,CAAA,QAAAG,MAAA;IAEqBC,EAAA,GAAAA,CAAA;MAClCD,MAAA,CAAAE,OAAA,CAAc;IAAA;IAChBL,CAAA,MAAAG,MAAA;IAAAH,CAAA,MAAAI,EAAA;EAAA;IAAAA,EAAA,GAAAJ,CAAA;EAAA;EAFA,MAAAH,eAAA,GAAwBO,EAEb;EAAA,IAAAE,EAAA;EAAA,IAAAN,CAAA,QAAAH,eAAA;IAEDS,EAAA,GAAAA,CAAA;MACRT,eAAA;IAAA;IACFG,CAAA,MAAAH,eAAA;IAAAG,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EAAA,IAAAO,EAAA;EAAA,IAAAP,CAAA,QAAAE,QAAA,IAAAF,CAAA,QAAAH,eAAA;IAAGU,EAAA,IAACL,QAAA,EAAUL,eAAA;IAAgBG,CAAA,MAAAE,QAAA;IAAAF,CAAA,MAAAH,eAAA;IAAAG,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EAF9BL,SAAA,CAAUW,EAEV,EAAGC,EAA2B;EAAA,IAAAC,EAAA;EAAA,IAAAR,CAAA,QAAAH,eAAA,IAAAG,CAAA,QAAAC,QAAA;IAEvBO,EAAA,GAAAC,IAAA,CAAAb,OAAA,CAAAc,QAAA;MAAAC,KAAA;QAAAd;MAAA;MAAAI;IAAA,C;;;;;;;SAAAO,E;CACT;AAEA,OAAO,MAAMI,aAAA,GAAgBA,CAAA;EAAA,OAAMlB,UAAA,CAAAE,OAAW;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","usePathname","useRouter","React","createContext","useCallback","useContext","useEffect","Context","clearRouteCache","RouteCache","t0","$","children","pathname","router","t1","refresh","t2","t3","t4","_jsx","Provider","value","useRouteCache"],"sources":["../../../src/providers/RouteCache/index.tsx"],"sourcesContent":["'use client'\n\nimport { usePathname, useRouter } from 'next/navigation.js'\nimport React, { createContext, useCallback, useContext, useEffect } from 'react'\n\nexport type RouteCacheContext = {\n clearRouteCache: () => void\n}\n\nconst Context = createContext<RouteCacheContext>({\n clearRouteCache: () => {},\n})\n\nexport const RouteCache: React.FC<{ children: React.ReactNode }> = ({ children }) => {\n const pathname = usePathname()\n const router = useRouter()\n\n const clearRouteCache = useCallback(() => {\n router.refresh()\n }, [router])\n\n useEffect(() => {\n clearRouteCache()\n }, [pathname, clearRouteCache])\n\n return <Context.Provider value={{ clearRouteCache }}>{children}</Context.Provider>\n}\n\nexport const useRouteCache = () => useContext(Context)\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,SAASC,WAAW,EAAEC,SAAS,QAAQ;AACvC,OAAOC,KAAA,IAASC,aAAa,EAAEC,WAAW,EAAEC,UAAU,EAAEC,SAAS,QAAQ;AAMzE,MAAMC,OAAA,gBAAUJ,aAAA,CAAiC;EAC/CK,eAAA,EAAiBA,CAAA,MAAO;AAC1B;AAEA,OAAO,MAAMC,UAAA,GAAsDC,EAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EAAC;IAAAa;EAAA,IAAAF,EAAY;EAC9E,MAAAG,QAAA,GAAiBb,WAAA;EACjB,MAAAc,MAAA,GAAeb,SAAA;EAAA,IAAAc,EAAA;EAAA,IAAAJ,CAAA,QAAAG,MAAA;IAEqBC,EAAA,GAAAA,CAAA;MAClCD,MAAA,CAAAE,OAAA,CAAc;IAAA;IAChBL,CAAA,MAAAG,MAAA;IAAAH,CAAA,MAAAI,EAAA;EAAA;IAAAA,EAAA,GAAAJ,CAAA;EAAA;EAFA,MAAAH,eAAA,GAAwBO,EAEb;EAAA,IAAAE,EAAA;EAAA,IAAAN,CAAA,QAAAH,eAAA;IAEDS,EAAA,GAAAA,CAAA;MACRT,eAAA;IAAA;IACFG,CAAA,MAAAH,eAAA;IAAAG,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EAAA,IAAAO,EAAA;EAAA,IAAAP,CAAA,QAAAH,eAAA,IAAAG,CAAA,QAAAE,QAAA;IAAGK,EAAA,IAACL,QAAA,EAAUL,eAAA;IAAgBG,CAAA,MAAAH,eAAA;IAAAG,CAAA,MAAAE,QAAA;IAAAF,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EAF9BL,SAAA,CAAUW,EAEV,EAAGC,EAA2B;EAAA,IAAAC,EAAA;EAAA,IAAAR,CAAA,QAAAC,QAAA,IAAAD,CAAA,QAAAH,eAAA;IAEvBW,EAAA,GAAAC,IAAA,CAAAb,OAAA,CAAAc,QAAA;MAAAC,KAAA;QAAAd;MAAA;MAAAI;IAAA,C;;;;;;;SAAAO,E;CACT;AAEA,OAAO,MAAMI,aAAA,GAAgBA,CAAA;EAAA,OAAMlB,UAAA,CAAAE,OAAW;AAAA","ignoreList":[]}
@@ -1,17 +1,35 @@
1
- import type { ReadonlyURLSearchParams } from 'next/navigation.js';
2
1
  import * as qs from 'qs-esm';
3
2
  import React from 'react';
4
3
  export type SearchParamsContext = {
5
4
  searchParams: qs.ParsedQs;
6
5
  stringifyParams: ({ params, replace }: {
7
- params: State;
6
+ params: qs.ParsedQs;
8
7
  replace?: boolean;
9
8
  }) => string;
10
9
  };
11
- export type State = qs.ParsedQs;
12
- export declare function createParams(params: ReadonlyURLSearchParams): State;
10
+ /**
11
+ * @deprecated
12
+ * The SearchParamsProvider is deprecated and will be removed in the next major release. Instead, use the `useSearchParams` hook from `next/navigation` directly. See https://github.com/payloadcms/payload/pull/9581.
13
+ * @example
14
+ * ```tsx
15
+ * import { useSearchParams } from 'next/navigation'
16
+ * ```
17
+ */
13
18
  export declare const SearchParamsProvider: React.FC<{
14
19
  children?: React.ReactNode;
15
20
  }>;
21
+ /**
22
+ * @deprecated
23
+ * The `useSearchParams` hook is deprecated and will be removed in the next major release. Instead, use the `useSearchParams` hook from `next/navigation` directly. See https://github.com/payloadcms/payload/pull/9581.
24
+ * @example
25
+ * ```tsx
26
+ * import { useSearchParams } from 'next/navigation'
27
+ * ```
28
+ * If you need to parse the `where` query, you can do so with the `parseSearchParams` utility.
29
+ * ```tsx
30
+ * import { parseSearchParams } from '@payloadcms/ui'
31
+ * const parsedSearchParams = parseSearchParams(searchParams)
32
+ * ```
33
+ */
16
34
  export declare const useSearchParams: () => SearchParamsContext;
17
35
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/SearchParams/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAGjE,OAAO,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC5B,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,MAAM,MAAM,mBAAmB,GAAG;IAChC,YAAY,EAAE,EAAE,CAAC,QAAQ,CAAA;IACzB,eAAe,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;QAAE,MAAM,EAAE,KAAK,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,MAAM,CAAA;CACvF,CAAA;AAED,MAAM,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAA;AAS/B,wBAAgB,YAAY,CAAC,MAAM,EAAE,uBAAuB,GAAG,KAAK,CAOnE;AAGD,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAuBzE,CAAA;AAED,eAAO,MAAM,eAAe,QAAO,mBAA0C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/SearchParams/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC5B,OAAO,KAAoC,MAAM,OAAO,CAAA;AAIxD,MAAM,MAAM,mBAAmB,GAAG;IAChC,YAAY,EAAE,EAAE,CAAC,QAAQ,CAAA;IACzB,eAAe,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;QAAE,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,MAAM,CAAA;CAC7F,CAAA;AASD;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAuBzE,CAAA;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,QAAO,mBAA0C,CAAA"}
@@ -5,19 +5,20 @@ import { jsx as _jsx } from "react/jsx-runtime";
5
5
  import { useSearchParams as useNextSearchParams } from 'next/navigation.js';
6
6
  import * as qs from 'qs-esm';
7
7
  import React, { createContext, useContext } from 'react';
8
+ import { parseSearchParams } from '../../utilities/parseSearchParams.js';
8
9
  const initialContext = {
9
10
  searchParams: {},
10
11
  stringifyParams: () => ''
11
12
  };
12
13
  const Context = /*#__PURE__*/createContext(initialContext);
13
- export function createParams(params) {
14
- const search = params.toString();
15
- return qs.parse(search, {
16
- depth: 10,
17
- ignoreQueryPrefix: true
18
- });
19
- }
20
- // TODO: this provider should likely be marked as deprecated and then removed in the next major release
14
+ /**
15
+ * @deprecated
16
+ * The SearchParamsProvider is deprecated and will be removed in the next major release. Instead, use the `useSearchParams` hook from `next/navigation` directly. See https://github.com/payloadcms/payload/pull/9581.
17
+ * @example
18
+ * ```tsx
19
+ * import { useSearchParams } from 'next/navigation'
20
+ * ```
21
+ */
21
22
  export const SearchParamsProvider = t0 => {
22
23
  const $ = _c(11);
23
24
  const {
@@ -26,7 +27,7 @@ export const SearchParamsProvider = t0 => {
26
27
  const nextSearchParams = useNextSearchParams();
27
28
  let t1;
28
29
  if ($[0] !== nextSearchParams) {
29
- t1 = () => createParams(nextSearchParams);
30
+ t1 = () => parseSearchParams(nextSearchParams);
30
31
  $[0] = nextSearchParams;
31
32
  $[1] = t1;
32
33
  } else {
@@ -58,7 +59,7 @@ export const SearchParamsProvider = t0 => {
58
59
  let t4;
59
60
  if ($[4] !== nextSearchParams) {
60
61
  t3 = () => {
61
- setSearchParams(createParams(nextSearchParams));
62
+ setSearchParams(parseSearchParams(nextSearchParams));
62
63
  };
63
64
  t4 = [nextSearchParams];
64
65
  $[4] = nextSearchParams;
@@ -70,7 +71,7 @@ export const SearchParamsProvider = t0 => {
70
71
  }
71
72
  React.useEffect(t3, t4);
72
73
  let t5;
73
- if ($[7] !== searchParams || $[8] !== stringifyParams || $[9] !== children) {
74
+ if ($[7] !== children || $[8] !== searchParams || $[9] !== stringifyParams) {
74
75
  t5 = _jsx(Context.Provider, {
75
76
  value: {
76
77
  searchParams,
@@ -78,15 +79,28 @@ export const SearchParamsProvider = t0 => {
78
79
  },
79
80
  children
80
81
  });
81
- $[7] = searchParams;
82
- $[8] = stringifyParams;
83
- $[9] = children;
82
+ $[7] = children;
83
+ $[8] = searchParams;
84
+ $[9] = stringifyParams;
84
85
  $[10] = t5;
85
86
  } else {
86
87
  t5 = $[10];
87
88
  }
88
89
  return t5;
89
90
  };
91
+ /**
92
+ * @deprecated
93
+ * The `useSearchParams` hook is deprecated and will be removed in the next major release. Instead, use the `useSearchParams` hook from `next/navigation` directly. See https://github.com/payloadcms/payload/pull/9581.
94
+ * @example
95
+ * ```tsx
96
+ * import { useSearchParams } from 'next/navigation'
97
+ * ```
98
+ * If you need to parse the `where` query, you can do so with the `parseSearchParams` utility.
99
+ * ```tsx
100
+ * import { parseSearchParams } from '@payloadcms/ui'
101
+ * const parsedSearchParams = parseSearchParams(searchParams)
102
+ * ```
103
+ */
90
104
  export const useSearchParams = () => {
91
105
  return useContext(Context);
92
106
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useSearchParams","useNextSearchParams","qs","React","createContext","useContext","initialContext","searchParams","stringifyParams","Context","createParams","params","search","toString","parse","depth","ignoreQueryPrefix","SearchParamsProvider","t0","$","children","nextSearchParams","t1","setSearchParams","useState","t2","t3","replace","t4","undefined","stringify","addQueryPrefix","useEffect","t5","_jsx","Provider","value"],"sources":["../../../src/providers/SearchParams/index.tsx"],"sourcesContent":["'use client'\nimport type { ReadonlyURLSearchParams } from 'next/navigation.js'\n\nimport { useSearchParams as useNextSearchParams } from 'next/navigation.js'\nimport * as qs from 'qs-esm'\nimport React, { createContext, useContext } from 'react'\n\nexport type SearchParamsContext = {\n searchParams: qs.ParsedQs\n stringifyParams: ({ params, replace }: { params: State; replace?: boolean }) => string\n}\n\nexport type State = qs.ParsedQs\n\nconst initialContext: SearchParamsContext = {\n searchParams: {},\n stringifyParams: () => '',\n}\n\nconst Context = createContext(initialContext)\n\nexport function createParams(params: ReadonlyURLSearchParams): State {\n const search = params.toString()\n\n return qs.parse(search, {\n depth: 10,\n ignoreQueryPrefix: true,\n })\n}\n\n// TODO: this provider should likely be marked as deprecated and then removed in the next major release\nexport const SearchParamsProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) => {\n const nextSearchParams = useNextSearchParams()\n\n const [searchParams, setSearchParams] = React.useState(() => createParams(nextSearchParams))\n\n const stringifyParams = React.useCallback(\n ({ params, replace = false }: { params: State; replace?: boolean }) => {\n return qs.stringify(\n {\n ...(replace ? {} : searchParams),\n ...params,\n },\n { addQueryPrefix: true },\n )\n },\n [searchParams],\n )\n\n React.useEffect(() => {\n setSearchParams(createParams(nextSearchParams))\n }, [nextSearchParams])\n\n return <Context.Provider value={{ searchParams, stringifyParams }}>{children}</Context.Provider>\n}\n\nexport const useSearchParams = (): SearchParamsContext => useContext(Context)\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,SAASC,eAAA,IAAmBC,mBAAmB,QAAQ;AACvD,YAAYC,EAAA,MAAQ;AACpB,OAAOC,KAAA,IAASC,aAAa,EAAEC,UAAU,QAAQ;AASjD,MAAMC,cAAA,GAAsC;EAC1CC,YAAA,EAAc,CAAC;EACfC,eAAA,EAAiBA,CAAA,KAAM;AACzB;AAEA,MAAMC,OAAA,gBAAUL,aAAA,CAAcE,cAAA;AAE9B,OAAO,SAASI,aAAaC,MAA+B;EAC1D,MAAMC,MAAA,GAASD,MAAA,CAAOE,QAAQ;EAE9B,OAAOX,EAAA,CAAGY,KAAK,CAACF,MAAA,EAAQ;IACtBG,KAAA,EAAO;IACPC,iBAAA,EAAmB;EACrB;AACF;AAEA;AACA,OAAO,MAAMC,oBAAA,GAAiEC,EAAA;EAAA,MAAAC,CAAA,GAAApB,EAAA;EAAC;IAAAqB;EAAA,IAAAF,EAAY;EACzF,MAAAG,gBAAA,GAAyBpB,mBAAA;EAAA,IAAAqB,EAAA;EAAA,IAAAH,CAAA,QAAAE,gBAAA;IAE8BC,EAAA,GAAAA,CAAA,KAAMZ,YAAA,CAAaW,gBAAA;IAAAF,CAAA,MAAAE,gBAAA;IAAAF,CAAA,MAAAG,EAAA;EAAA;IAAAA,EAAA,GAAAH,CAAA;EAAA;EAA1E,OAAAZ,YAAA,EAAAgB,eAAA,IAAwCpB,KAAA,CAAAqB,QAAA,CAAeF,EAAmB;EAAA,IAAAG,EAAA;EAAA,IAAAN,CAAA,QAAAZ,YAAA;IAGxEkB,EAAA,GAAAC,EAAA;MAAC;QAAAf,MAAA;QAAAgB,OAAA,EAAAC;MAAA,IAAAF,EAAiE;MAAvD,MAAAC,OAAA,GAAAC,EAAe,KAAAC,SAAA,WAAfD,EAAe;MAAA,OACjB1B,EAAA,CAAA4B,SAAA;QAAA,IAECH,OAAA,QAAepB,YAAY;QAAA,GAC5BI;MAAM;QAAAoB,cAAA;MAAA,CAEY;IAAA;IAE3BZ,CAAA,MAAAZ,YAAA;IAAAY,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EATF,MAAAX,eAAA,GAAwBiB,EAUR;EAAA,IAAAC,EAAA;EAAA,IAAAE,EAAA;EAAA,IAAAT,CAAA,QAAAE,gBAAA;IAGAK,EAAA,GAAAA,CAAA;MACdH,eAAA,CAAgBb,YAAA,CAAaW,gBAAA;IAAA;IAC5BO,EAAA,IAACP,gBAAA;IAAiBF,CAAA,MAAAE,gBAAA;IAAAF,CAAA,MAAAO,EAAA;IAAAP,CAAA,MAAAS,EAAA;EAAA;IAAAF,EAAA,GAAAP,CAAA;IAAAS,EAAA,GAAAT,CAAA;EAAA;EAFrBhB,KAAA,CAAA6B,SAAA,CAAgBN,EAEhB,EAAGE,EAAkB;EAAA,IAAAK,EAAA;EAAA,IAAAd,CAAA,QAAAZ,YAAA,IAAAY,CAAA,QAAAX,eAAA,IAAAW,CAAA,QAAAC,QAAA;IAEda,EAAA,GAAAC,IAAA,CAAAzB,OAAA,CAAA0B,QAAA;MAAAC,KAAA;QAAA7B,YAAA;QAAAC;MAAA;MAAAY;IAAA,C;;;;;;;;SAAAa,E;CACT;AAEA,OAAO,MAAMjC,eAAA,GAAkBA,CAAA;EAAA,OAA2BK,UAAA,CAAAI,OAAW;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useSearchParams","useNextSearchParams","qs","React","createContext","useContext","parseSearchParams","initialContext","searchParams","stringifyParams","Context","SearchParamsProvider","t0","$","children","nextSearchParams","t1","setSearchParams","useState","t2","t3","params","replace","t4","undefined","stringify","addQueryPrefix","useEffect","t5","_jsx","Provider","value"],"sources":["../../../src/providers/SearchParams/index.tsx"],"sourcesContent":["'use client'\n\nimport { useSearchParams as useNextSearchParams } from 'next/navigation.js'\nimport * as qs from 'qs-esm'\nimport React, { createContext, useContext } from 'react'\n\nimport { parseSearchParams } from '../../utilities/parseSearchParams.js'\n\nexport type SearchParamsContext = {\n searchParams: qs.ParsedQs\n stringifyParams: ({ params, replace }: { params: qs.ParsedQs; replace?: boolean }) => string\n}\n\nconst initialContext: SearchParamsContext = {\n searchParams: {},\n stringifyParams: () => '',\n}\n\nconst Context = createContext(initialContext)\n\n/**\n * @deprecated\n * The SearchParamsProvider is deprecated and will be removed in the next major release. Instead, use the `useSearchParams` hook from `next/navigation` directly. See https://github.com/payloadcms/payload/pull/9581.\n * @example\n * ```tsx\n * import { useSearchParams } from 'next/navigation'\n * ```\n */\nexport const SearchParamsProvider: React.FC<{ children?: React.ReactNode }> = ({ children }) => {\n const nextSearchParams = useNextSearchParams()\n\n const [searchParams, setSearchParams] = React.useState(() => parseSearchParams(nextSearchParams))\n\n const stringifyParams = React.useCallback(\n ({ params, replace = false }: { params: qs.ParsedQs; replace?: boolean }) => {\n return qs.stringify(\n {\n ...(replace ? {} : searchParams),\n ...params,\n },\n { addQueryPrefix: true },\n )\n },\n [searchParams],\n )\n\n React.useEffect(() => {\n setSearchParams(parseSearchParams(nextSearchParams))\n }, [nextSearchParams])\n\n return <Context.Provider value={{ searchParams, stringifyParams }}>{children}</Context.Provider>\n}\n\n/**\n * @deprecated\n * The `useSearchParams` hook is deprecated and will be removed in the next major release. Instead, use the `useSearchParams` hook from `next/navigation` directly. See https://github.com/payloadcms/payload/pull/9581.\n * @example\n * ```tsx\n * import { useSearchParams } from 'next/navigation'\n * ```\n * If you need to parse the `where` query, you can do so with the `parseSearchParams` utility.\n * ```tsx\n * import { parseSearchParams } from '@payloadcms/ui'\n * const parsedSearchParams = parseSearchParams(searchParams)\n * ```\n */\nexport const useSearchParams = (): SearchParamsContext => useContext(Context)\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,SAASC,eAAA,IAAmBC,mBAAmB,QAAQ;AACvD,YAAYC,EAAA,MAAQ;AACpB,OAAOC,KAAA,IAASC,aAAa,EAAEC,UAAU,QAAQ;AAEjD,SAASC,iBAAiB,QAAQ;AAOlC,MAAMC,cAAA,GAAsC;EAC1CC,YAAA,EAAc,CAAC;EACfC,eAAA,EAAiBA,CAAA,KAAM;AACzB;AAEA,MAAMC,OAAA,gBAAUN,aAAA,CAAcG,cAAA;AAE9B;;;;;;;;AAQA,OAAO,MAAMI,oBAAA,GAAiEC,EAAA;EAAA,MAAAC,CAAA,GAAAd,EAAA;EAAC;IAAAe;EAAA,IAAAF,EAAY;EACzF,MAAAG,gBAAA,GAAyBd,mBAAA;EAAA,IAAAe,EAAA;EAAA,IAAAH,CAAA,QAAAE,gBAAA;IAE8BC,EAAA,GAAAA,CAAA,KAAMV,iBAAA,CAAkBS,gBAAA;IAAAF,CAAA,MAAAE,gBAAA;IAAAF,CAAA,MAAAG,EAAA;EAAA;IAAAA,EAAA,GAAAH,CAAA;EAAA;EAA/E,OAAAL,YAAA,EAAAS,eAAA,IAAwCd,KAAA,CAAAe,QAAA,CAAeF,EAAwB;EAAA,IAAAG,EAAA;EAAA,IAAAN,CAAA,QAAAL,YAAA;IAG7EW,EAAA,GAAAC,EAAA;MAAC;QAAAC,MAAA;QAAAC,OAAA,EAAAC;MAAA,IAAAH,EAAuE;MAA7D,MAAAE,OAAA,GAAAC,EAAe,KAAAC,SAAA,WAAfD,EAAe;MAAA,OACjBrB,EAAA,CAAAuB,SAAA;QAAA,IAECH,OAAA,QAAed,YAAY;QAAA,GAC5Ba;MAAM;QAAAK,cAAA;MAAA,CAEY;IAAA;IAE3Bb,CAAA,MAAAL,YAAA;IAAAK,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EATF,MAAAJ,eAAA,GAAwBU,EAUR;EAAA,IAAAC,EAAA;EAAA,IAAAG,EAAA;EAAA,IAAAV,CAAA,QAAAE,gBAAA;IAGAK,EAAA,GAAAA,CAAA;MACdH,eAAA,CAAgBX,iBAAA,CAAkBS,gBAAA;IAAA;IACjCQ,EAAA,IAACR,gBAAA;IAAiBF,CAAA,MAAAE,gBAAA;IAAAF,CAAA,MAAAO,EAAA;IAAAP,CAAA,MAAAU,EAAA;EAAA;IAAAH,EAAA,GAAAP,CAAA;IAAAU,EAAA,GAAAV,CAAA;EAAA;EAFrBV,KAAA,CAAAwB,SAAA,CAAgBP,EAEhB,EAAGG,EAAkB;EAAA,IAAAK,EAAA;EAAA,IAAAf,CAAA,QAAAC,QAAA,IAAAD,CAAA,QAAAL,YAAA,IAAAK,CAAA,QAAAJ,eAAA;IAEdmB,EAAA,GAAAC,IAAA,CAAAnB,OAAA,CAAAoB,QAAA;MAAAC,KAAA;QAAAvB,YAAA;QAAAC;MAAA;MAAAK;IAAA,C;;;;;;;;SAAAc,E;CACT;AAEA;;;;;;;;;;;;;AAaA,OAAO,MAAM5B,eAAA,GAAkBA,CAAA;EAAA,OAA2BK,UAAA,CAAAK,OAAW;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Selection/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAGhD,OAAO,KAA8E,MAAM,OAAO,CAAA;AAKlG,oBAAY,eAAe;IACzB,YAAY,iBAAiB;IAC7B,SAAS,cAAc;IACvB,IAAI,SAAS;IACb,IAAI,SAAS;CACd;AAED,KAAK,gBAAgB,GAAG;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,cAAc,EAAE,CAAC,gBAAgB,CAAC,EAAE,KAAK,KAAK,MAAM,CAAA;IACpD,SAAS,EAAE,eAAe,CAAA;IAC1B,QAAQ,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAA;IAC3C,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IAC3C,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAID,KAAK,KAAK,GAAG;IACX,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IAElC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,CAAA;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,IAAI,EAAE,UAAU,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAqK7C,CAAA;AAED,eAAO,MAAM,YAAY,QAAO,gBAAuC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Selection/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAIhD,OAAO,KAA8E,MAAM,OAAO,CAAA;AAKlG,oBAAY,eAAe;IACzB,YAAY,iBAAiB;IAC7B,SAAS,cAAc;IACvB,IAAI,SAAS;IACb,IAAI,SAAS;CACd;AAED,KAAK,gBAAgB,GAAG;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,cAAc,EAAE,CAAC,gBAAgB,CAAC,EAAE,KAAK,KAAK,MAAM,CAAA;IACpD,SAAS,EAAE,eAAe,CAAA;IAC1B,QAAQ,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAA;IAC3C,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IAC3C,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAID,KAAK,KAAK,GAAG;IACX,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IAElC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,CAAA;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,IAAI,EAAE,UAAU,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAqK7C,CAAA;AAED,eAAO,MAAM,YAAY,QAAO,gBAAuC,CAAA"}
@@ -1,17 +1,18 @@
1
1
  'use client';
2
2
 
3
3
  import { jsx as _jsx } from "react/jsx-runtime";
4
+ import { useSearchParams } from 'next/navigation.js';
4
5
  import * as qs from 'qs-esm';
5
6
  import React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react';
7
+ import { parseSearchParams } from '../../utilities/parseSearchParams.js';
6
8
  import { useLocale } from '../Locale/index.js';
7
- import { useSearchParams } from '../SearchParams/index.js';
8
- export var SelectAllStatus;
9
- (function (SelectAllStatus) {
9
+ export var SelectAllStatus = /*#__PURE__*/function (SelectAllStatus) {
10
10
  SelectAllStatus["AllAvailable"] = "allAvailable";
11
11
  SelectAllStatus["AllInPage"] = "allInPage";
12
12
  SelectAllStatus["None"] = "none";
13
13
  SelectAllStatus["Some"] = "some";
14
- })(SelectAllStatus || (SelectAllStatus = {}));
14
+ return SelectAllStatus;
15
+ }({});
15
16
  const Context = /*#__PURE__*/createContext({});
16
17
  export const SelectionProvider = ({
17
18
  children,
@@ -34,9 +35,7 @@ export const SelectionProvider = ({
34
35
  });
35
36
  const [selectAll, setSelectAll] = useState("none");
36
37
  const [count, setCount] = useState(0);
37
- const {
38
- searchParams
39
- } = useSearchParams();
38
+ const searchParams = useSearchParams();
40
39
  const toggleAll = useCallback((allAvailable = false) => {
41
40
  const rows_0 = new Map();
42
41
  if (allAvailable) {
@@ -83,7 +82,7 @@ export const SelectionProvider = ({
83
82
  const getQueryParams = useCallback(additionalWhereParams => {
84
83
  let where;
85
84
  if (selectAll === "allAvailable") {
86
- const params = searchParams?.where;
85
+ const params = parseSearchParams(searchParams)?.where;
87
86
  where = params || {
88
87
  id: {
89
88
  not_equals: ''
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["qs","React","createContext","useCallback","useContext","useEffect","useRef","useState","useLocale","useSearchParams","SelectAllStatus","Context","SelectionProvider","children","docs","totalDocs","user","contextRef","code","locale","selected","setSelected","rows","Map","forEach","id","set","selectAll","setSelectAll","count","setCount","searchParams","toggleAll","allAvailable","_isLocked","_userEditing","setSelection","doc","find","existingValue","get","isSelected","newMap","getQueryParams","additionalWhereParams","where","params","not_equals","ids","key","value","push","in","and","stringify","addQueryPrefix","some","all","size","_","length","newCount","current","_jsx","Provider","useSelection"],"sources":["../../../src/providers/Selection/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientUser, Where } from 'payload'\n\nimport * as qs from 'qs-esm'\nimport React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react'\n\nimport { useLocale } from '../Locale/index.js'\nimport { useSearchParams } from '../SearchParams/index.js'\n\nexport enum SelectAllStatus {\n AllAvailable = 'allAvailable',\n AllInPage = 'allInPage',\n None = 'none',\n Some = 'some',\n}\n\ntype SelectionContext = {\n count: number\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n getQueryParams: (additionalParams?: Where) => string\n selectAll: SelectAllStatus\n selected: Map<number | string, boolean>\n setSelection: (id: number | string) => void\n toggleAll: (allAvailable?: boolean) => void\n totalDocs: number\n}\n\nconst Context = createContext({} as SelectionContext)\n\ntype Props = {\n readonly children: React.ReactNode\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n readonly docs: any[]\n readonly totalDocs: number\n user: ClientUser\n}\n\nexport const SelectionProvider: React.FC<Props> = ({ children, docs = [], totalDocs, user }) => {\n const contextRef = useRef({} as SelectionContext)\n\n const { code: locale } = useLocale()\n\n const [selected, setSelected] = useState<SelectionContext['selected']>(() => {\n const rows = new Map()\n docs.forEach(({ id }) => {\n rows.set(id, false)\n })\n return rows\n })\n\n const [selectAll, setSelectAll] = useState<SelectAllStatus>(SelectAllStatus.None)\n const [count, setCount] = useState(0)\n const { searchParams } = useSearchParams()\n\n const toggleAll = useCallback(\n (allAvailable = false) => {\n const rows = new Map()\n if (allAvailable) {\n setSelectAll(SelectAllStatus.AllAvailable)\n docs.forEach(({ id, _isLocked, _userEditing }) => {\n if (!_isLocked || _userEditing?.id === user?.id) {\n rows.set(id, true)\n }\n })\n } else if (\n selectAll === SelectAllStatus.AllAvailable ||\n selectAll === SelectAllStatus.AllInPage\n ) {\n setSelectAll(SelectAllStatus.None)\n } else {\n docs.forEach(({ id, _isLocked, _userEditing }) => {\n if (!_isLocked || _userEditing?.id === user?.id) {\n rows.set(id, selectAll !== SelectAllStatus.Some)\n }\n })\n }\n\n setSelected(rows)\n },\n [docs, selectAll, user?.id],\n )\n\n const setSelection = useCallback(\n (id) => {\n const doc = docs.find((doc) => doc.id === id)\n\n if (doc?._isLocked && user?.id !== doc?._userEditing.id) {\n return // Prevent selection if the document is locked\n }\n\n const existingValue = selected.get(id)\n const isSelected = typeof existingValue === 'boolean' ? !existingValue : true\n\n let newMap = new Map()\n\n if (isSelected) {\n newMap = new Map(selected.set(id, isSelected))\n } else {\n newMap = new Map(selected.set(id, false))\n }\n\n setSelected(newMap)\n },\n [selected, docs, user?.id],\n )\n\n const getQueryParams = useCallback(\n (additionalWhereParams?: Where): string => {\n let where: Where\n\n if (selectAll === SelectAllStatus.AllAvailable) {\n const params = searchParams?.where as Where\n\n where = params || {\n id: { not_equals: '' },\n }\n } else {\n const ids = []\n\n for (const [key, value] of selected) {\n if (value) {\n ids.push(key)\n }\n }\n\n where = {\n id: {\n in: ids,\n },\n }\n }\n\n if (additionalWhereParams) {\n where = {\n and: [{ ...additionalWhereParams }, where],\n }\n }\n\n return qs.stringify(\n {\n locale,\n where,\n },\n { addQueryPrefix: true },\n )\n },\n [selectAll, selected, locale, searchParams],\n )\n\n useEffect(() => {\n if (selectAll === SelectAllStatus.AllAvailable) {\n return\n }\n let some = false\n let all = true\n\n if (!selected.size) {\n all = false\n some = false\n } else {\n for (const [_, value] of selected) {\n all = all && value\n some = some || value\n }\n }\n\n if (all && selected.size === docs.length) {\n setSelectAll(SelectAllStatus.AllInPage)\n } else if (some) {\n setSelectAll(SelectAllStatus.Some)\n } else {\n setSelectAll(SelectAllStatus.None)\n }\n }, [selectAll, selected, totalDocs, docs])\n\n useEffect(() => {\n let newCount = 0\n\n if (selectAll === SelectAllStatus.AllAvailable) {\n newCount = totalDocs\n } else {\n for (const [_, value] of selected) {\n if (value) {\n newCount++\n }\n }\n }\n\n setCount(newCount)\n }, [selectAll, selected, totalDocs])\n\n contextRef.current = {\n count,\n getQueryParams,\n selectAll,\n selected,\n setSelection,\n toggleAll,\n totalDocs,\n }\n\n return <Context.Provider value={contextRef.current}>{children}</Context.Provider>\n}\n\nexport const useSelection = (): SelectionContext => useContext(Context)\n"],"mappings":"AAAA;;;AAGA,YAAYA,EAAA,MAAQ;AACpB,OAAOC,KAAA,IAASC,aAAa,EAAEC,WAAW,EAAEC,UAAU,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ;AAE3F,SAASC,SAAS,QAAQ;AAC1B,SAASC,eAAe,QAAQ;;WAEpBC,eAAA;;;;;GAAAA,eAAA,KAAAA,eAAA;AAmBZ,MAAMC,OAAA,gBAAUT,aAAA,CAAc,CAAC;AAU/B,OAAO,MAAMU,iBAAA,GAAqCA,CAAC;EAAEC,QAAQ;EAAEC,IAAA,GAAO,EAAE;EAAEC,SAAS;EAAEC;AAAI,CAAE;EACzF,MAAMC,UAAA,GAAaX,MAAA,CAAO,CAAC;EAE3B,MAAM;IAAEY,IAAA,EAAMC;EAAM,CAAE,GAAGX,SAAA;EAEzB,MAAM,CAACY,QAAA,EAAUC,WAAA,CAAY,GAAGd,QAAA,CAAuC;IACrE,MAAMe,IAAA,GAAO,IAAIC,GAAA;IACjBT,IAAA,CAAKU,OAAO,CAAC,CAAC;MAAEC;IAAE,CAAE;MAClBH,IAAA,CAAKI,GAAG,CAACD,EAAA,EAAI;IACf;IACA,OAAOH,IAAA;EACT;EAEA,MAAM,CAACK,SAAA,EAAWC,YAAA,CAAa,GAAGrB,QAAA;EAClC,MAAM,CAACsB,KAAA,EAAOC,QAAA,CAAS,GAAGvB,QAAA,CAAS;EACnC,MAAM;IAAEwB;EAAY,CAAE,GAAGtB,eAAA;EAEzB,MAAMuB,SAAA,GAAY7B,WAAA,CAChB,CAAC8B,YAAA,GAAe,KAAK;IACnB,MAAMX,MAAA,GAAO,IAAIC,GAAA;IACjB,IAAIU,YAAA,EAAc;MAChBL,YAAA;MACAd,IAAA,CAAKU,OAAO,CAAC,CAAC;QAAEC,EAAE,EAAFA,IAAE;QAAES,SAAS;QAAEC;MAAY,CAAE;QAC3C,IAAI,CAACD,SAAA,IAAaC,YAAA,EAAcV,EAAA,KAAOT,IAAA,EAAMS,EAAA,EAAI;UAC/CH,MAAA,CAAKI,GAAG,CAACD,IAAA,EAAI;QACf;MACF;IACF,OAAO,IACLE,SAAA,uBACAA,SAAA,kBACA;MACAC,YAAA;IACF,OAAO;MACLd,IAAA,CAAKU,OAAO,CAAC,CAAC;QAAEC,EAAE,EAAFA,IAAE;QAAES,SAAS,EAATA,WAAS;QAAEC,YAAY,EAAZA;MAAY,CAAE;QAC3C,IAAI,CAACD,WAAA,IAAaC,cAAA,EAAcV,EAAA,KAAOT,IAAA,EAAMS,EAAA,EAAI;UAC/CH,MAAA,CAAKI,GAAG,CAACD,IAAA,EAAIE,SAAA;QACf;MACF;IACF;IAEAN,WAAA,CAAYC,MAAA;EACd,GACA,CAACR,IAAA,EAAMa,SAAA,EAAWX,IAAA,EAAMS,EAAA,CAAG;EAG7B,MAAMW,YAAA,GAAejC,WAAA,CAClBsB,IAAA;IACC,MAAMY,KAAA,GAAMvB,IAAA,CAAKwB,IAAI,CAAED,GAAA,IAAQA,GAAA,CAAIZ,EAAE,KAAKA,IAAA;IAE1C,IAAIY,KAAA,EAAKH,SAAA,IAAalB,IAAA,EAAMS,EAAA,KAAOY,KAAA,EAAKF,YAAA,CAAaV,EAAA,EAAI;MACvD,QAAO;IACT;IAEA,MAAMc,aAAA,GAAgBnB,QAAA,CAASoB,GAAG,CAACf,IAAA;IACnC,MAAMgB,UAAA,GAAa,OAAOF,aAAA,KAAkB,YAAY,CAACA,aAAA,GAAgB;IAEzE,IAAIG,MAAA,GAAS,IAAInB,GAAA;IAEjB,IAAIkB,UAAA,EAAY;MACdC,MAAA,GAAS,IAAInB,GAAA,CAAIH,QAAA,CAASM,GAAG,CAACD,IAAA,EAAIgB,UAAA;IACpC,OAAO;MACLC,MAAA,GAAS,IAAInB,GAAA,CAAIH,QAAA,CAASM,GAAG,CAACD,IAAA,EAAI;IACpC;IAEAJ,WAAA,CAAYqB,MAAA;EACd,GACA,CAACtB,QAAA,EAAUN,IAAA,EAAME,IAAA,EAAMS,EAAA,CAAG;EAG5B,MAAMkB,cAAA,GAAiBxC,WAAA,CACpByC,qBAAA;IACC,IAAIC,KAAA;IAEJ,IAAIlB,SAAA,qBAA4C;MAC9C,MAAMmB,MAAA,GAASf,YAAA,EAAcc,KAAA;MAE7BA,KAAA,GAAQC,MAAA,IAAU;QAChBrB,EAAA,EAAI;UAAEsB,UAAA,EAAY;QAAG;MACvB;IACF,OAAO;MACL,MAAMC,GAAA,GAAM,EAAE;MAEd,KAAK,MAAM,CAACC,GAAA,EAAKC,KAAA,CAAM,IAAI9B,QAAA,EAAU;QACnC,IAAI8B,KAAA,EAAO;UACTF,GAAA,CAAIG,IAAI,CAACF,GAAA;QACX;MACF;MAEAJ,KAAA,GAAQ;QACNpB,EAAA,EAAI;UACF2B,EAAA,EAAIJ;QACN;MACF;IACF;IAEA,IAAIJ,qBAAA,EAAuB;MACzBC,KAAA,GAAQ;QACNQ,GAAA,EAAK,CAAC;UAAE,GAAGT;QAAsB,GAAGC,KAAA;MACtC;IACF;IAEA,OAAO7C,EAAA,CAAGsD,SAAS,CACjB;MACEnC,MAAA;MACA0B;IACF,GACA;MAAEU,cAAA,EAAgB;IAAK;EAE3B,GACA,CAAC5B,SAAA,EAAWP,QAAA,EAAUD,MAAA,EAAQY,YAAA,CAAa;EAG7C1B,SAAA,CAAU;IACR,IAAIsB,SAAA,qBAA4C;MAC9C;IACF;IACA,IAAI6B,IAAA,GAAO;IACX,IAAIC,GAAA,GAAM;IAEV,IAAI,CAACrC,QAAA,CAASsC,IAAI,EAAE;MAClBD,GAAA,GAAM;MACND,IAAA,GAAO;IACT,OAAO;MACL,KAAK,MAAM,CAACG,CAAA,EAAGT,OAAA,CAAM,IAAI9B,QAAA,EAAU;QACjCqC,GAAA,GAAMA,GAAA,IAAOP,OAAA;QACbM,IAAA,GAAOA,IAAA,IAAQN,OAAA;MACjB;IACF;IAEA,IAAIO,GAAA,IAAOrC,QAAA,CAASsC,IAAI,KAAK5C,IAAA,CAAK8C,MAAM,EAAE;MACxChC,YAAA;IACF,OAAO,IAAI4B,IAAA,EAAM;MACf5B,YAAA;IACF,OAAO;MACLA,YAAA;IACF;EACF,GAAG,CAACD,SAAA,EAAWP,QAAA,EAAUL,SAAA,EAAWD,IAAA,CAAK;EAEzCT,SAAA,CAAU;IACR,IAAIwD,QAAA,GAAW;IAEf,IAAIlC,SAAA,qBAA4C;MAC9CkC,QAAA,GAAW9C,SAAA;IACb,OAAO;MACL,KAAK,MAAM,CAAC4C,GAAA,EAAGT,OAAA,CAAM,IAAI9B,QAAA,EAAU;QACjC,IAAI8B,OAAA,EAAO;UACTW,QAAA;QACF;MACF;IACF;IAEA/B,QAAA,CAAS+B,QAAA;EACX,GAAG,CAAClC,SAAA,EAAWP,QAAA,EAAUL,SAAA,CAAU;EAEnCE,UAAA,CAAW6C,OAAO,GAAG;IACnBjC,KAAA;IACAc,cAAA;IACAhB,SAAA;IACAP,QAAA;IACAgB,YAAA;IACAJ,SAAA;IACAjB;EACF;EAEA,oBAAOgD,IAAA,CAACpD,OAAA,CAAQqD,QAAQ;IAACd,KAAA,EAAOjC,UAAA,CAAW6C,OAAO;cAAGjD;;AACvD;AAEA,OAAO,MAAMoD,YAAA,GAAeA,CAAA;EAAA,OAAwB7D,UAAA,CAAAO,OAAW;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useSearchParams","qs","React","createContext","useCallback","useContext","useEffect","useRef","useState","parseSearchParams","useLocale","SelectAllStatus","Context","SelectionProvider","children","docs","totalDocs","user","contextRef","code","locale","selected","setSelected","rows","Map","forEach","id","set","selectAll","setSelectAll","count","setCount","searchParams","toggleAll","allAvailable","_isLocked","_userEditing","setSelection","doc","find","existingValue","get","isSelected","newMap","getQueryParams","additionalWhereParams","where","params","not_equals","ids","key","value","push","in","and","stringify","addQueryPrefix","some","all","size","_","length","newCount","current","_jsx","Provider","useSelection"],"sources":["../../../src/providers/Selection/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientUser, Where } from 'payload'\n\nimport { useSearchParams } from 'next/navigation.js'\nimport * as qs from 'qs-esm'\nimport React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react'\n\nimport { parseSearchParams } from '../../utilities/parseSearchParams.js'\nimport { useLocale } from '../Locale/index.js'\n\nexport enum SelectAllStatus {\n AllAvailable = 'allAvailable',\n AllInPage = 'allInPage',\n None = 'none',\n Some = 'some',\n}\n\ntype SelectionContext = {\n count: number\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n getQueryParams: (additionalParams?: Where) => string\n selectAll: SelectAllStatus\n selected: Map<number | string, boolean>\n setSelection: (id: number | string) => void\n toggleAll: (allAvailable?: boolean) => void\n totalDocs: number\n}\n\nconst Context = createContext({} as SelectionContext)\n\ntype Props = {\n readonly children: React.ReactNode\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n readonly docs: any[]\n readonly totalDocs: number\n user: ClientUser\n}\n\nexport const SelectionProvider: React.FC<Props> = ({ children, docs = [], totalDocs, user }) => {\n const contextRef = useRef({} as SelectionContext)\n\n const { code: locale } = useLocale()\n\n const [selected, setSelected] = useState<SelectionContext['selected']>(() => {\n const rows = new Map()\n docs.forEach(({ id }) => {\n rows.set(id, false)\n })\n return rows\n })\n\n const [selectAll, setSelectAll] = useState<SelectAllStatus>(SelectAllStatus.None)\n const [count, setCount] = useState(0)\n const searchParams = useSearchParams()\n\n const toggleAll = useCallback(\n (allAvailable = false) => {\n const rows = new Map()\n if (allAvailable) {\n setSelectAll(SelectAllStatus.AllAvailable)\n docs.forEach(({ id, _isLocked, _userEditing }) => {\n if (!_isLocked || _userEditing?.id === user?.id) {\n rows.set(id, true)\n }\n })\n } else if (\n selectAll === SelectAllStatus.AllAvailable ||\n selectAll === SelectAllStatus.AllInPage\n ) {\n setSelectAll(SelectAllStatus.None)\n } else {\n docs.forEach(({ id, _isLocked, _userEditing }) => {\n if (!_isLocked || _userEditing?.id === user?.id) {\n rows.set(id, selectAll !== SelectAllStatus.Some)\n }\n })\n }\n\n setSelected(rows)\n },\n [docs, selectAll, user?.id],\n )\n\n const setSelection = useCallback(\n (id) => {\n const doc = docs.find((doc) => doc.id === id)\n\n if (doc?._isLocked && user?.id !== doc?._userEditing.id) {\n return // Prevent selection if the document is locked\n }\n\n const existingValue = selected.get(id)\n const isSelected = typeof existingValue === 'boolean' ? !existingValue : true\n\n let newMap = new Map()\n\n if (isSelected) {\n newMap = new Map(selected.set(id, isSelected))\n } else {\n newMap = new Map(selected.set(id, false))\n }\n\n setSelected(newMap)\n },\n [selected, docs, user?.id],\n )\n\n const getQueryParams = useCallback(\n (additionalWhereParams?: Where): string => {\n let where: Where\n\n if (selectAll === SelectAllStatus.AllAvailable) {\n const params = parseSearchParams(searchParams)?.where as Where\n\n where = params || {\n id: { not_equals: '' },\n }\n } else {\n const ids = []\n\n for (const [key, value] of selected) {\n if (value) {\n ids.push(key)\n }\n }\n\n where = {\n id: {\n in: ids,\n },\n }\n }\n\n if (additionalWhereParams) {\n where = {\n and: [{ ...additionalWhereParams }, where],\n }\n }\n\n return qs.stringify(\n {\n locale,\n where,\n },\n { addQueryPrefix: true },\n )\n },\n [selectAll, selected, locale, searchParams],\n )\n\n useEffect(() => {\n if (selectAll === SelectAllStatus.AllAvailable) {\n return\n }\n let some = false\n let all = true\n\n if (!selected.size) {\n all = false\n some = false\n } else {\n for (const [_, value] of selected) {\n all = all && value\n some = some || value\n }\n }\n\n if (all && selected.size === docs.length) {\n setSelectAll(SelectAllStatus.AllInPage)\n } else if (some) {\n setSelectAll(SelectAllStatus.Some)\n } else {\n setSelectAll(SelectAllStatus.None)\n }\n }, [selectAll, selected, totalDocs, docs])\n\n useEffect(() => {\n let newCount = 0\n\n if (selectAll === SelectAllStatus.AllAvailable) {\n newCount = totalDocs\n } else {\n for (const [_, value] of selected) {\n if (value) {\n newCount++\n }\n }\n }\n\n setCount(newCount)\n }, [selectAll, selected, totalDocs])\n\n contextRef.current = {\n count,\n getQueryParams,\n selectAll,\n selected,\n setSelection,\n toggleAll,\n totalDocs,\n }\n\n return <Context.Provider value={contextRef.current}>{children}</Context.Provider>\n}\n\nexport const useSelection = (): SelectionContext => useContext(Context)\n"],"mappings":"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","ignoreList":[]}
@@ -46,7 +46,7 @@ export const ThemeProvider = t0 => {
46
46
  const [autoMode, setAutoMode] = useState();
47
47
  let t1;
48
48
  let t2;
49
- if ($[0] !== preselectedTheme || $[1] !== cookieKey) {
49
+ if ($[0] !== cookieKey || $[1] !== preselectedTheme) {
50
50
  t1 = () => {
51
51
  if (preselectedTheme !== "all") {
52
52
  return;
@@ -59,8 +59,8 @@ export const ThemeProvider = t0 => {
59
59
  setAutoMode(!themeFromCookies);
60
60
  };
61
61
  t2 = [preselectedTheme, cookieKey];
62
- $[0] = preselectedTheme;
63
- $[1] = cookieKey;
62
+ $[0] = cookieKey;
63
+ $[1] = preselectedTheme;
64
64
  $[2] = t1;
65
65
  $[3] = t2;
66
66
  } else {
@@ -93,7 +93,7 @@ export const ThemeProvider = t0 => {
93
93
  }
94
94
  const setTheme = t3;
95
95
  let t4;
96
- if ($[6] !== autoMode || $[7] !== setTheme || $[8] !== theme || $[9] !== children) {
96
+ if ($[6] !== autoMode || $[7] !== children || $[8] !== setTheme || $[9] !== theme) {
97
97
  t4 = _jsx(Context.Provider, {
98
98
  value: {
99
99
  autoMode,
@@ -103,9 +103,9 @@ export const ThemeProvider = t0 => {
103
103
  children
104
104
  });
105
105
  $[6] = autoMode;
106
- $[7] = setTheme;
107
- $[8] = theme;
108
- $[9] = children;
106
+ $[7] = children;
107
+ $[8] = setTheme;
108
+ $[9] = theme;
109
109
  $[10] = t4;
110
110
  } else {
111
111
  t4 = $[10];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","createContext","useCallback","useContext","useEffect","useState","useConfig","initialContext","autoMode","setTheme","theme","Context","setCookie","cname","cvalue","exdays","d","Date","setTime","getTime","expires","toUTCString","document","cookie","getTheme","cookieKey","themeFromCookies","window","split","find","row","startsWith","matchMedia","matches","documentElement","setAttribute","defaultTheme","ThemeProvider","t0","$","children","initialTheme","config","preselectedTheme","admin","cookiePrefix","setThemeState","setAutoMode","t1","t2","theme_0","t3","themeToSet","themeFromOS","t4","_jsx","Provider","value","useTheme"],"sources":["../../../src/providers/Theme/index.tsx"],"sourcesContent":["'use client'\nimport React, { createContext, useCallback, useContext, useEffect, useState } from 'react'\n\nimport { useConfig } from '../Config/index.js'\n\nexport type Theme = 'dark' | 'light'\n\nexport type ThemeContext = {\n autoMode: boolean\n setTheme: (theme: Theme) => void\n theme: Theme\n}\n\nconst initialContext: ThemeContext = {\n autoMode: true,\n setTheme: () => null,\n theme: 'light',\n}\n\nconst Context = createContext(initialContext)\n\nfunction setCookie(cname, cvalue, exdays) {\n const d = new Date()\n d.setTime(d.getTime() + exdays * 24 * 60 * 60 * 1000)\n const expires = 'expires=' + d.toUTCString()\n document.cookie = cname + '=' + cvalue + ';' + expires + ';path=/'\n}\n\nconst getTheme = (\n cookieKey,\n): {\n theme: Theme\n themeFromCookies: null | string\n} => {\n let theme: Theme\n\n const themeFromCookies = window.document.cookie\n .split('; ')\n .find((row) => row.startsWith(`${cookieKey}=`))\n ?.split('=')[1]\n\n if (themeFromCookies === 'light' || themeFromCookies === 'dark') {\n theme = themeFromCookies\n } else {\n theme =\n window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches\n ? 'dark'\n : 'light'\n }\n\n document.documentElement.setAttribute('data-theme', theme)\n\n return { theme, themeFromCookies }\n}\n\nexport const defaultTheme = 'light'\n\nexport const ThemeProvider: React.FC<{\n children?: React.ReactNode\n theme?: Theme\n}> = ({ children, theme: initialTheme }) => {\n const { config } = useConfig()\n\n const preselectedTheme = config.admin.theme\n const cookieKey = `${config.cookiePrefix || 'payload'}-theme`\n\n const [theme, setThemeState] = useState<Theme>(initialTheme || defaultTheme)\n\n const [autoMode, setAutoMode] = useState<boolean>()\n\n useEffect(() => {\n if (preselectedTheme !== 'all') {\n return\n }\n\n const { theme, themeFromCookies } = getTheme(cookieKey)\n setThemeState(theme)\n setAutoMode(!themeFromCookies)\n }, [preselectedTheme, cookieKey])\n\n const setTheme = useCallback(\n (themeToSet: 'auto' | Theme) => {\n if (themeToSet === 'light' || themeToSet === 'dark') {\n setThemeState(themeToSet)\n setAutoMode(false)\n setCookie(cookieKey, themeToSet, 365)\n document.documentElement.setAttribute('data-theme', themeToSet)\n } else if (themeToSet === 'auto') {\n // to delete the cookie, we set an expired date\n setCookie(cookieKey, themeToSet, -1)\n const themeFromOS =\n window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches\n ? 'dark'\n : 'light'\n document.documentElement.setAttribute('data-theme', themeFromOS)\n setAutoMode(true)\n setThemeState(themeFromOS)\n }\n },\n [cookieKey],\n )\n\n return <Context.Provider value={{ autoMode, setTheme, theme }}>{children}</Context.Provider>\n}\n\nexport const useTheme = (): ThemeContext => useContext(Context)\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","createContext","useCallback","useContext","useEffect","useState","useConfig","initialContext","autoMode","setTheme","theme","Context","setCookie","cname","cvalue","exdays","d","Date","setTime","getTime","expires","toUTCString","document","cookie","getTheme","cookieKey","themeFromCookies","window","split","find","row","startsWith","matchMedia","matches","documentElement","setAttribute","defaultTheme","ThemeProvider","t0","$","children","initialTheme","config","preselectedTheme","admin","cookiePrefix","setThemeState","setAutoMode","t1","t2","theme_0","t3","themeToSet","themeFromOS","t4","_jsx","Provider","value","useTheme"],"sources":["../../../src/providers/Theme/index.tsx"],"sourcesContent":["'use client'\nimport React, { createContext, useCallback, useContext, useEffect, useState } from 'react'\n\nimport { useConfig } from '../Config/index.js'\n\nexport type Theme = 'dark' | 'light'\n\nexport type ThemeContext = {\n autoMode: boolean\n setTheme: (theme: Theme) => void\n theme: Theme\n}\n\nconst initialContext: ThemeContext = {\n autoMode: true,\n setTheme: () => null,\n theme: 'light',\n}\n\nconst Context = createContext(initialContext)\n\nfunction setCookie(cname, cvalue, exdays) {\n const d = new Date()\n d.setTime(d.getTime() + exdays * 24 * 60 * 60 * 1000)\n const expires = 'expires=' + d.toUTCString()\n document.cookie = cname + '=' + cvalue + ';' + expires + ';path=/'\n}\n\nconst getTheme = (\n cookieKey,\n): {\n theme: Theme\n themeFromCookies: null | string\n} => {\n let theme: Theme\n\n const themeFromCookies = window.document.cookie\n .split('; ')\n .find((row) => row.startsWith(`${cookieKey}=`))\n ?.split('=')[1]\n\n if (themeFromCookies === 'light' || themeFromCookies === 'dark') {\n theme = themeFromCookies\n } else {\n theme =\n window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches\n ? 'dark'\n : 'light'\n }\n\n document.documentElement.setAttribute('data-theme', theme)\n\n return { theme, themeFromCookies }\n}\n\nexport const defaultTheme = 'light'\n\nexport const ThemeProvider: React.FC<{\n children?: React.ReactNode\n theme?: Theme\n}> = ({ children, theme: initialTheme }) => {\n const { config } = useConfig()\n\n const preselectedTheme = config.admin.theme\n const cookieKey = `${config.cookiePrefix || 'payload'}-theme`\n\n const [theme, setThemeState] = useState<Theme>(initialTheme || defaultTheme)\n\n const [autoMode, setAutoMode] = useState<boolean>()\n\n useEffect(() => {\n if (preselectedTheme !== 'all') {\n return\n }\n\n const { theme, themeFromCookies } = getTheme(cookieKey)\n setThemeState(theme)\n setAutoMode(!themeFromCookies)\n }, [preselectedTheme, cookieKey])\n\n const setTheme = useCallback(\n (themeToSet: 'auto' | Theme) => {\n if (themeToSet === 'light' || themeToSet === 'dark') {\n setThemeState(themeToSet)\n setAutoMode(false)\n setCookie(cookieKey, themeToSet, 365)\n document.documentElement.setAttribute('data-theme', themeToSet)\n } else if (themeToSet === 'auto') {\n // to delete the cookie, we set an expired date\n setCookie(cookieKey, themeToSet, -1)\n const themeFromOS =\n window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches\n ? 'dark'\n : 'light'\n document.documentElement.setAttribute('data-theme', themeFromOS)\n setAutoMode(true)\n setThemeState(themeFromOS)\n }\n },\n [cookieKey],\n )\n\n return <Context.Provider value={{ autoMode, setTheme, theme }}>{children}</Context.Provider>\n}\n\nexport const useTheme = (): ThemeContext => useContext(Context)\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,IAASC,aAAa,EAAEC,WAAW,EAAEC,UAAU,EAAEC,SAAS,EAAEC,QAAQ,QAAQ;AAEnF,SAASC,SAAS,QAAQ;AAU1B,MAAMC,cAAA,GAA+B;EACnCC,QAAA,EAAU;EACVC,QAAA,EAAUA,CAAA,KAAM;EAChBC,KAAA,EAAO;AACT;AAEA,MAAMC,OAAA,gBAAUV,aAAA,CAAcM,cAAA;AAE9B,SAASK,UAAUC,KAAK,EAAEC,MAAM,EAAEC,MAAM;EACtC,MAAMC,CAAA,GAAI,IAAIC,IAAA;EACdD,CAAA,CAAEE,OAAO,CAACF,CAAA,CAAEG,OAAO,KAAKJ,MAAA,GAAS,KAAK,KAAK,KAAK;EAChD,MAAMK,OAAA,GAAU,aAAaJ,CAAA,CAAEK,WAAW;EAC1CC,QAAA,CAASC,MAAM,GAAGV,KAAA,GAAQ,MAAMC,MAAA,GAAS,MAAMM,OAAA,GAAU;AAC3D;AAEA,MAAMI,QAAA,GACJC,SAAA;EAKA,IAAIf,KAAA;EAEJ,MAAMgB,gBAAA,GAAmBC,MAAA,CAAOL,QAAQ,CAACC,MAAM,CAC5CK,KAAK,CAAC,MACNC,IAAI,CAAEC,GAAA,IAAQA,GAAA,CAAIC,UAAU,CAAC,GAAGN,SAAA,GAAY,IAC3CG,KAAA,CAAM,IAAI,CAAC,EAAE;EAEjB,IAAIF,gBAAA,KAAqB,WAAWA,gBAAA,KAAqB,QAAQ;IAC/DhB,KAAA,GAAQgB,gBAAA;EACV,OAAO;IACLhB,KAAA,GACEiB,MAAA,CAAOK,UAAU,IAAIL,MAAA,CAAOK,UAAU,CAAC,gCAAgCC,OAAO,GAC1E,SACA;EACR;EAEAX,QAAA,CAASY,eAAe,CAACC,YAAY,CAAC,cAAczB,KAAA;EAEpD,OAAO;IAAEA,KAAA;IAAOgB;EAAiB;AACnC;AAEA,OAAO,MAAMU,YAAA,GAAe;AAE5B,OAAO,MAAMC,aAAA,GAGRC,EAAA;EAAA,MAAAC,CAAA,GAAAxC,EAAA;EAAC;IAAAyC,QAAA;IAAA9B,KAAA,EAAA+B;EAAA,IAAAH,EAAiC;EACrC;IAAAI;EAAA,IAAmBpC,SAAA;EAEnB,MAAAqC,gBAAA,GAAyBD,MAAA,CAAAE,KAAA,CAAAlC,KAAA;EACzB,MAAAe,SAAA,GAAkB,GAAGiB,MAAA,CAAAG,YAAA,IAAuB,iBAAiB;EAE7D,OAAAnC,KAAA,EAAAoC,aAAA,IAA+BzC,QAAA,CAAgBoC,YAAA,IAAAL,YAAgB;EAE/D,OAAA5B,QAAA,EAAAuC,WAAA,IAAgC1C,QAAA;EAAA,IAAA2C,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAV,CAAA,QAAAd,SAAA,IAAAc,CAAA,QAAAI,gBAAA;IAEtBK,EAAA,GAAAA,CAAA;MAAA,IACJL,gBAAA,KAAqB;QAAA;MAAA;MAIzB;QAAAjC,KAAA,EAAAwC,OAAA;QAAAxB;MAAA,IAAoCF,QAAA,CAASC,SAAA;MAC7CqB,aAAA,CAAcpC,OAAA;MACdqC,WAAA,EAAarB,gBAAA;IAAA;IACZuB,EAAA,IAACN,gBAAA,EAAkBlB,SAAA;IAAUc,CAAA,MAAAd,SAAA;IAAAc,CAAA,MAAAI,gBAAA;IAAAJ,CAAA,MAAAS,EAAA;IAAAT,CAAA,MAAAU,EAAA;EAAA;IAAAD,EAAA,GAAAT,CAAA;IAAAU,EAAA,GAAAV,CAAA;EAAA;EARhCnC,SAAA,CAAU4C,EAQV,EAAGC,EAA6B;EAAA,IAAAE,EAAA;EAAA,IAAAZ,CAAA,QAAAd,SAAA;IAG9B0B,EAAA,GAAAC,UAAA;MAAA,IACMA,UAAA,KAAe,WAAWA,UAAA,KAAe;QAC3CN,aAAA,CAAcM,UAAA;QACdL,WAAA,MAAY;QACZnC,SAAA,CAAUa,SAAA,EAAW2B,UAAA,KAAY;QACjC9B,QAAA,CAAAY,eAAA,CAAAC,YAAA,CAAsC,cAAciB,UAAA;MAAA;QAAA,IAC3CA,UAAA,KAAe;UAExBxC,SAAA,CAAUa,SAAA,EAAW2B,UAAA,IAAa;UAClC,MAAAC,WAAA,GACE1B,MAAA,CAAAK,UAAA,IAAqBL,MAAA,CAAAK,UAAA,CAAkB,gCAAAC,OAAuC,GAC1E,SACA;UACNX,QAAA,CAAAY,eAAA,CAAAC,YAAA,CAAsC,cAAckB,WAAA;UACpDN,WAAA,KAAY;UACZD,aAAA,CAAcO,WAAA;QAAA;MAAA;IAAA;IAElBd,CAAA,MAAAd,SAAA;IAAAc,CAAA,MAAAY,EAAA;EAAA;IAAAA,EAAA,GAAAZ,CAAA;EAAA;EAlBF,MAAA9B,QAAA,GAAiB0C,EAmBJ;EAAA,IAAAG,EAAA;EAAA,IAAAf,CAAA,QAAA/B,QAAA,IAAA+B,CAAA,QAAAC,QAAA,IAAAD,CAAA,QAAA9B,QAAA,IAAA8B,CAAA,QAAA7B,KAAA;IAGN4C,EAAA,GAAAC,IAAA,CAAA5C,OAAA,CAAA6C,QAAA;MAAAC,KAAA;QAAAjD,QAAA;QAAAC,QAAA;QAAAC;MAAA;MAAA8B;IAAA,C;;;;;;;;;SAAAc,E;CACT;AAEA,OAAO,MAAMI,QAAA,GAAWA,CAAA;EAAA,OAAoBvD,UAAA,CAAAQ,OAAW;AAAA","ignoreList":[]}
@@ -47,7 +47,7 @@ export const TranslationProvider = t0 => {
47
47
  }
48
48
  const nextT = t1;
49
49
  let t2;
50
- if ($[2] !== switchLanguageServerAction || $[3] !== router) {
50
+ if ($[2] !== router || $[3] !== switchLanguageServerAction) {
51
51
  t2 = async lang => {
52
52
  ;
53
53
  try {
@@ -58,8 +58,8 @@ export const TranslationProvider = t0 => {
58
58
  console.error(`Error loading language: "${lang}"`, error);
59
59
  }
60
60
  };
61
- $[2] = switchLanguageServerAction;
62
- $[3] = router;
61
+ $[2] = router;
62
+ $[3] = switchLanguageServerAction;
63
63
  $[4] = t2;
64
64
  } else {
65
65
  t2 = $[4];
@@ -85,7 +85,7 @@ export const TranslationProvider = t0 => {
85
85
  }
86
86
  useEffect(t3, t4);
87
87
  let t5;
88
- if ($[8] !== dateFNS || $[9] !== dateFNSKey || $[10] !== fallbackLang || $[11] !== language || $[12] !== nextT || $[13] !== translations || $[14] !== languageOptions || $[15] !== switchLanguage || $[16] !== children) {
88
+ if ($[8] !== children || $[9] !== dateFNS || $[10] !== dateFNSKey || $[11] !== fallbackLang || $[12] !== language || $[13] !== languageOptions || $[14] !== nextT || $[15] !== switchLanguage || $[16] !== translations) {
89
89
  t5 = _jsx(Context.Provider, {
90
90
  value: {
91
91
  i18n: {
@@ -102,15 +102,15 @@ export const TranslationProvider = t0 => {
102
102
  },
103
103
  children
104
104
  });
105
- $[8] = dateFNS;
106
- $[9] = dateFNSKey;
107
- $[10] = fallbackLang;
108
- $[11] = language;
109
- $[12] = nextT;
110
- $[13] = translations;
111
- $[14] = languageOptions;
105
+ $[8] = children;
106
+ $[9] = dateFNS;
107
+ $[10] = dateFNSKey;
108
+ $[11] = fallbackLang;
109
+ $[12] = language;
110
+ $[13] = languageOptions;
111
+ $[14] = nextT;
112
112
  $[15] = switchLanguage;
113
- $[16] = children;
113
+ $[16] = translations;
114
114
  $[17] = t5;
115
115
  } else {
116
116
  t5 = $[17];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","importDateFNSLocale","t","enUS","useRouter","React","createContext","useContext","useEffect","useState","Context","i18n","dateFNS","dateFNSKey","fallbackLanguage","language","key","translations","languageOptions","undefined","switchLanguage","TranslationProvider","t0","$","children","fallbackLang","switchLanguageServerAction","router","setDateFNS","t1","vars","nextT","t2","lang","refresh","t3","error","console","t4","loadDateFNS","imported","t5","_jsx","Provider","value","useTranslation"],"sources":["../../../src/providers/Translation/index.tsx"],"sourcesContent":["'use client'\nimport type {\n AcceptedLanguages,\n ClientTranslationKeys,\n ClientTranslationsObject,\n I18nClient,\n Language,\n TFunction,\n} from '@payloadcms/translations'\nimport type { Locale } from 'date-fns'\nimport type { ClientConfig, LanguageOptions } from 'payload'\n\nimport { importDateFNSLocale, t } from '@payloadcms/translations'\nimport { enUS } from 'date-fns/locale/en-US'\nimport { useRouter } from 'next/navigation.js'\nimport React, { createContext, useContext, useEffect, useState } from 'react'\n\ntype ContextType<\n TAdditionalTranslations = {},\n TAdditionalClientTranslationKeys extends string = never,\n> = {\n i18n: [TAdditionalClientTranslationKeys] extends [never]\n ? I18nClient\n : TAdditionalTranslations extends object\n ? I18nClient<TAdditionalTranslations, TAdditionalClientTranslationKeys>\n : I18nClient<ClientTranslationsObject, TAdditionalClientTranslationKeys>\n languageOptions: LanguageOptions\n switchLanguage?: (lang: AcceptedLanguages) => Promise<void>\n t: TFunction<ClientTranslationKeys | Extract<TAdditionalClientTranslationKeys, string>>\n}\n\nconst Context = createContext<ContextType<any, any>>({\n // Use `any` here to be replaced later with a more specific type when used\n i18n: {\n dateFNS: enUS,\n dateFNSKey: 'en-US',\n fallbackLanguage: 'en',\n language: 'en',\n t: (key) => key,\n translations: {} as any,\n },\n languageOptions: undefined,\n switchLanguage: undefined,\n t: (key) => undefined,\n})\n\ntype Props = {\n children: React.ReactNode\n dateFNSKey: Language['dateFNSKey']\n fallbackLang: ClientConfig['i18n']['fallbackLanguage']\n language: string\n languageOptions: LanguageOptions\n switchLanguageServerAction: (lang: string) => Promise<void>\n translations: I18nClient['translations']\n}\n\nexport const TranslationProvider: React.FC<Props> = ({\n children,\n dateFNSKey,\n fallbackLang,\n language,\n languageOptions,\n switchLanguageServerAction,\n translations,\n}) => {\n const router = useRouter()\n const [dateFNS, setDateFNS] = useState<Locale>()\n\n const nextT: ContextType['t'] = (key, vars): string =>\n t({\n key,\n translations,\n vars,\n })\n\n const switchLanguage = React.useCallback(\n async (lang: string) => {\n try {\n await switchLanguageServerAction(lang)\n router.refresh()\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(`Error loading language: \"${lang}\"`, error)\n }\n },\n [switchLanguageServerAction, router],\n )\n\n useEffect(() => {\n const loadDateFNS = async () => {\n const imported = await importDateFNSLocale(dateFNSKey)\n\n setDateFNS(imported)\n }\n\n void loadDateFNS()\n }, [dateFNSKey])\n\n return (\n <Context.Provider\n value={{\n i18n: {\n dateFNS,\n dateFNSKey,\n fallbackLanguage: fallbackLang,\n language,\n t: nextT,\n translations,\n },\n languageOptions,\n switchLanguage,\n t: nextT,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n\nexport const useTranslation = <\n TAdditionalTranslations = {},\n TAdditionalClientTranslationKeys extends string = never,\n>() => useContext<ContextType<TAdditionalTranslations, TAdditionalClientTranslationKeys>>(Context)\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAYA,SAASC,mBAAmB,EAAEC,CAAC,QAAQ;AACvC,SAASC,IAAI,QAAQ;AACrB,SAASC,SAAS,QAAQ;AAC1B,OAAOC,KAAA,IAASC,aAAa,EAAEC,UAAU,EAAEC,SAAS,EAAEC,QAAQ,QAAQ;AAgBtE,MAAMC,OAAA,gBAAUJ,aAAA,CAAqC;EACnD;EACAK,IAAA,EAAM;IACJC,OAAA,EAAST,IAAA;IACTU,UAAA,EAAY;IACZC,gBAAA,EAAkB;IAClBC,QAAA,EAAU;IACVb,CAAA,EAAIc,GAAA,IAAQA,GAAA;IACZC,YAAA,EAAc,CAAC;EACjB;EACAC,eAAA,EAAiBC,SAAA;EACjBC,cAAA,EAAgBD,SAAA;EAChBjB,CAAA,EAAIc,GAAA,IAAQG;AACd;AAYA,OAAO,MAAME,mBAAA,GAAuCC,EAAA;EAAA,MAAAC,CAAA,GAAAvB,EAAA;EAAC;IAAAwB,QAAA;IAAAX,UAAA;IAAAY,YAAA;IAAAV,QAAA;IAAAG,eAAA;IAAAQ,0BAAA;IAAAT;EAAA,IAAAK,EAQpD;EACC,MAAAK,MAAA,GAAevB,SAAA;EACf,OAAAQ,OAAA,EAAAgB,UAAA,IAA8BnB,QAAA;EAAA,IAAAoB,EAAA;EAAA,IAAAN,CAAA,QAAAN,YAAA;IAEEY,EAAA,GAAAA,CAAAb,GAAA,EAAAc,IAAA,KAC9B5B,CAAA;MAAAc,GAAA;MAAAC,YAAA;MAAAa;IAAA,CAIA;IAAAP,CAAA,MAAAN,YAAA;IAAAM,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EALF,MAAAQ,KAAA,GAAgCF,EAK9B;EAAA,IAAAG,EAAA;EAAA,IAAAT,CAAA,QAAAG,0BAAA,IAAAH,CAAA,QAAAI,MAAA;IAGAK,EAAA,SAAAC,IAAA;MAAA;MAAA;QAAA,MAEUP,0BAAA,CAA2BO,IAAA;QACjCN,MAAA,CAAAO,OAAA,CAAc;MAAA,SAAAC,EAAA;QACPC,KAAA,CAAAA,KAAA,CAAAA,CAAA,CAAAA,EAAA;QAEPC,OAAA,CAAAD,KAAA,CAAc,4BAA4BH,IAAA,GAAO,EAAEG,KAAA;MAAA;IAAA;IAEvDb,CAAA,MAAAG,0BAAA;IAAAH,CAAA,MAAAI,MAAA;IAAAJ,CAAA,MAAAS,EAAA;EAAA;IAAAA,EAAA,GAAAT,CAAA;EAAA;EATF,MAAAH,cAAA,GAAuBY,EAUe;EAAA,IAAAG,EAAA;EAAA,IAAAG,EAAA;EAAA,IAAAf,CAAA,QAAAV,UAAA;IAG5BsB,EAAA,GAAAA,CAAA;MACR,MAAAI,WAAA,SAAAA,CAAA;QACE,MAAAC,QAAA,SAAuBvC,mBAAA,CAAoBY,UAAA;QAE3Ce,UAAA,CAAWY,QAAA;MAAA;MAGRD,WAAA;IAAA;IACJD,EAAA,IAACzB,UAAA;IAAWU,CAAA,MAAAV,UAAA;IAAAU,CAAA,MAAAY,EAAA;IAAAZ,CAAA,MAAAe,EAAA;EAAA;IAAAH,EAAA,GAAAZ,CAAA;IAAAe,EAAA,GAAAf,CAAA;EAAA;EARff,SAAA,CAAU2B,EAQV,EAAGG,EAAY;EAAA,IAAAG,EAAA;EAAA,IAAAlB,CAAA,QAAAX,OAAA,IAAAW,CAAA,QAAAV,UAAA,IAAAU,CAAA,SAAAE,YAAA,IAAAF,CAAA,SAAAR,QAAA,IAAAQ,CAAA,SAAAQ,KAAA,IAAAR,CAAA,SAAAN,YAAA,IAAAM,CAAA,SAAAL,eAAA,IAAAK,CAAA,SAAAH,cAAA,IAAAG,CAAA,SAAAC,QAAA;IAGbiB,EAAA,GAAAC,IAAA,CAAAhC,OAAA,CAAAiC,QAAA;MAAAC,KAAA;QAAAjC,IAAA;UAAAC,OAAA;UAAAC,UAAA;UAAAC,gBAAA,EAKwBW,YAAA;UAAAV,QAAA;UAAAb,CAAA,EAEf6B,KAAA;UAAAd;QAAA;QAAAC,eAAA;QAAAE,cAAA;QAAAlB,CAAA,EAKF6B;MAAA;MAAAP;IAAA,C;;;;;;;;;;;;;;SAZPiB,E;CAkBJ;AAEA,OAAO,MAAMI,cAAA,GAAiBA,CAAA;EAAA,OAGvBtC,UAAA,CAAAG,OAAmF;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","importDateFNSLocale","t","enUS","useRouter","React","createContext","useContext","useEffect","useState","Context","i18n","dateFNS","dateFNSKey","fallbackLanguage","language","key","translations","languageOptions","undefined","switchLanguage","TranslationProvider","t0","$","children","fallbackLang","switchLanguageServerAction","router","setDateFNS","t1","vars","nextT","t2","lang","refresh","t3","error","console","t4","loadDateFNS","imported","t5","_jsx","Provider","value","useTranslation"],"sources":["../../../src/providers/Translation/index.tsx"],"sourcesContent":["'use client'\nimport type {\n AcceptedLanguages,\n ClientTranslationKeys,\n ClientTranslationsObject,\n I18nClient,\n Language,\n TFunction,\n} from '@payloadcms/translations'\nimport type { Locale } from 'date-fns'\nimport type { ClientConfig, LanguageOptions } from 'payload'\n\nimport { importDateFNSLocale, t } from '@payloadcms/translations'\nimport { enUS } from 'date-fns/locale/en-US'\nimport { useRouter } from 'next/navigation.js'\nimport React, { createContext, useContext, useEffect, useState } from 'react'\n\ntype ContextType<\n TAdditionalTranslations = {},\n TAdditionalClientTranslationKeys extends string = never,\n> = {\n i18n: [TAdditionalClientTranslationKeys] extends [never]\n ? I18nClient\n : TAdditionalTranslations extends object\n ? I18nClient<TAdditionalTranslations, TAdditionalClientTranslationKeys>\n : I18nClient<ClientTranslationsObject, TAdditionalClientTranslationKeys>\n languageOptions: LanguageOptions\n switchLanguage?: (lang: AcceptedLanguages) => Promise<void>\n t: TFunction<ClientTranslationKeys | Extract<TAdditionalClientTranslationKeys, string>>\n}\n\nconst Context = createContext<ContextType<any, any>>({\n // Use `any` here to be replaced later with a more specific type when used\n i18n: {\n dateFNS: enUS,\n dateFNSKey: 'en-US',\n fallbackLanguage: 'en',\n language: 'en',\n t: (key) => key,\n translations: {} as any,\n },\n languageOptions: undefined,\n switchLanguage: undefined,\n t: (key) => undefined,\n})\n\ntype Props = {\n children: React.ReactNode\n dateFNSKey: Language['dateFNSKey']\n fallbackLang: ClientConfig['i18n']['fallbackLanguage']\n language: string\n languageOptions: LanguageOptions\n switchLanguageServerAction: (lang: string) => Promise<void>\n translations: I18nClient['translations']\n}\n\nexport const TranslationProvider: React.FC<Props> = ({\n children,\n dateFNSKey,\n fallbackLang,\n language,\n languageOptions,\n switchLanguageServerAction,\n translations,\n}) => {\n const router = useRouter()\n const [dateFNS, setDateFNS] = useState<Locale>()\n\n const nextT: ContextType['t'] = (key, vars): string =>\n t({\n key,\n translations,\n vars,\n })\n\n const switchLanguage = React.useCallback(\n async (lang: string) => {\n try {\n await switchLanguageServerAction(lang)\n router.refresh()\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(`Error loading language: \"${lang}\"`, error)\n }\n },\n [switchLanguageServerAction, router],\n )\n\n useEffect(() => {\n const loadDateFNS = async () => {\n const imported = await importDateFNSLocale(dateFNSKey)\n\n setDateFNS(imported)\n }\n\n void loadDateFNS()\n }, [dateFNSKey])\n\n return (\n <Context.Provider\n value={{\n i18n: {\n dateFNS,\n dateFNSKey,\n fallbackLanguage: fallbackLang,\n language,\n t: nextT,\n translations,\n },\n languageOptions,\n switchLanguage,\n t: nextT,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n\nexport const useTranslation = <\n TAdditionalTranslations = {},\n TAdditionalClientTranslationKeys extends string = never,\n>() => useContext<ContextType<TAdditionalTranslations, TAdditionalClientTranslationKeys>>(Context)\n"],"mappings":"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","ignoreList":[]}
@@ -38,7 +38,7 @@ export const UploadEditsProvider = t0 => {
38
38
  }
39
39
  const updateUploadEdits = t2;
40
40
  let t3;
41
- if ($[2] !== uploadEdits || $[3] !== children) {
41
+ if ($[2] !== children || $[3] !== uploadEdits) {
42
42
  t3 = _jsx(Context.Provider, {
43
43
  value: {
44
44
  resetUploadEdits,
@@ -47,8 +47,8 @@ export const UploadEditsProvider = t0 => {
47
47
  },
48
48
  children
49
49
  });
50
- $[2] = uploadEdits;
51
- $[3] = children;
50
+ $[2] = children;
51
+ $[3] = uploadEdits;
52
52
  $[4] = t3;
53
53
  } else {
54
54
  t3 = $[4];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","Context","createContext","resetUploadEdits","undefined","updateUploadEdits","uploadEdits","UploadEditsProvider","t0","$","children","setUploadEdits","useState","t1","Symbol","for","t2","edits","prevEdits","t3","_jsx","Provider","value","useUploadEdits","useContext"],"sources":["../../../src/providers/UploadEdits/index.tsx"],"sourcesContent":["'use client'\nimport type { UploadEdits } from 'payload'\n\nimport React from 'react'\n\nexport type UploadEditsContext = {\n resetUploadEdits: () => void\n updateUploadEdits: (edits: UploadEdits) => void\n uploadEdits: UploadEdits\n}\n\nconst Context = React.createContext<UploadEditsContext>({\n resetUploadEdits: undefined,\n updateUploadEdits: undefined,\n uploadEdits: undefined,\n})\n\nexport const UploadEditsProvider = ({ children }) => {\n const [uploadEdits, setUploadEdits] = React.useState<UploadEdits>(undefined)\n\n const resetUploadEdits = () => {\n setUploadEdits({})\n }\n\n const updateUploadEdits = (edits: UploadEdits) => {\n setUploadEdits((prevEdits) => ({\n ...(prevEdits || {}),\n ...(edits || {}),\n }))\n }\n\n return (\n <Context.Provider value={{ resetUploadEdits, updateUploadEdits, uploadEdits }}>\n {children}\n </Context.Provider>\n )\n}\n\nexport const useUploadEdits = (): UploadEditsContext => React.useContext(Context)\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,OAAOC,KAAA,MAAW;AAQlB,MAAMC,OAAA,gBAAUD,KAAA,CAAME,aAAa,CAAqB;EACtDC,gBAAA,EAAkBC,SAAA;EAClBC,iBAAA,EAAmBD,SAAA;EACnBE,WAAA,EAAaF;AACf;AAEA,OAAO,MAAMG,mBAAA,GAAsBC,EAAA;EAAA,MAAAC,CAAA,GAAAV,EAAA;EAAC;IAAAW;EAAA,IAAAF,EAAY;EAC9C,OAAAF,WAAA,EAAAK,cAAA,IAAsCX,KAAA,CAAAY,QAAA,CAAAR,SAA4B;EAAA,IAAAS,EAAA;EAAA,IAAAJ,CAAA,QAAAK,MAAA,CAAAC,GAAA;IAEzCF,EAAA,GAAAA,CAAA;MACvBF,cAAA,GAAgB;IAAA;IAClBF,CAAA,MAAAI,EAAA;EAAA;IAAAA,EAAA,GAAAJ,CAAA;EAAA;EAFA,MAAAN,gBAAA,GAAyBU,EAEzB;EAAA,IAAAG,EAAA;EAAA,IAAAP,CAAA,QAAAK,MAAA,CAAAC,GAAA;IAE0BC,EAAA,GAAAC,KAAA;MACxBN,cAAA,CAAAO,SAAA;QAAA,IACMA,SAAA,MAAe;QAAA,IACfD,KAAA,MAAW;MAAA,EACjB;IAAA;IACFR,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EALA,MAAAJ,iBAAA,GAA0BW,EAK1B;EAAA,IAAAG,EAAA;EAAA,IAAAV,CAAA,QAAAH,WAAA,IAAAG,CAAA,QAAAC,QAAA;IAGES,EAAA,GAAAC,IAAA,CAAAnB,OAAA,CAAAoB,QAAA;MAAAC,KAAA;QAAAnB,gBAAA;QAAAE,iBAAA;QAAAC;MAAA;MAAAI;IAAA,C;;;;;;;SAAAS,E;CAIJ;AAEA,OAAO,MAAMI,cAAA,GAAiBA,CAAA;EAAA,OAA0BvB,KAAA,CAAAwB,UAAA,CAAAvB,OAAiB;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","Context","createContext","resetUploadEdits","undefined","updateUploadEdits","uploadEdits","UploadEditsProvider","t0","$","children","setUploadEdits","useState","t1","Symbol","for","t2","edits","prevEdits","t3","_jsx","Provider","value","useUploadEdits","useContext"],"sources":["../../../src/providers/UploadEdits/index.tsx"],"sourcesContent":["'use client'\nimport type { UploadEdits } from 'payload'\n\nimport React from 'react'\n\nexport type UploadEditsContext = {\n resetUploadEdits: () => void\n updateUploadEdits: (edits: UploadEdits) => void\n uploadEdits: UploadEdits\n}\n\nconst Context = React.createContext<UploadEditsContext>({\n resetUploadEdits: undefined,\n updateUploadEdits: undefined,\n uploadEdits: undefined,\n})\n\nexport const UploadEditsProvider = ({ children }) => {\n const [uploadEdits, setUploadEdits] = React.useState<UploadEdits>(undefined)\n\n const resetUploadEdits = () => {\n setUploadEdits({})\n }\n\n const updateUploadEdits = (edits: UploadEdits) => {\n setUploadEdits((prevEdits) => ({\n ...(prevEdits || {}),\n ...(edits || {}),\n }))\n }\n\n return (\n <Context.Provider value={{ resetUploadEdits, updateUploadEdits, uploadEdits }}>\n {children}\n </Context.Provider>\n )\n}\n\nexport const useUploadEdits = (): UploadEditsContext => React.useContext(Context)\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,OAAOC,KAAA,MAAW;AAQlB,MAAMC,OAAA,gBAAUD,KAAA,CAAME,aAAa,CAAqB;EACtDC,gBAAA,EAAkBC,SAAA;EAClBC,iBAAA,EAAmBD,SAAA;EACnBE,WAAA,EAAaF;AACf;AAEA,OAAO,MAAMG,mBAAA,GAAsBC,EAAA;EAAA,MAAAC,CAAA,GAAAV,EAAA;EAAC;IAAAW;EAAA,IAAAF,EAAY;EAC9C,OAAAF,WAAA,EAAAK,cAAA,IAAsCX,KAAA,CAAAY,QAAA,CAAAR,SAA4B;EAAA,IAAAS,EAAA;EAAA,IAAAJ,CAAA,QAAAK,MAAA,CAAAC,GAAA;IAEzCF,EAAA,GAAAA,CAAA;MACvBF,cAAA,GAAgB;IAAA;IAClBF,CAAA,MAAAI,EAAA;EAAA;IAAAA,EAAA,GAAAJ,CAAA;EAAA;EAFA,MAAAN,gBAAA,GAAyBU,EAEzB;EAAA,IAAAG,EAAA;EAAA,IAAAP,CAAA,QAAAK,MAAA,CAAAC,GAAA;IAE0BC,EAAA,GAAAC,KAAA;MACxBN,cAAA,CAAAO,SAAA;QAAA,IACMA,SAAA,MAAe;QAAA,IACfD,KAAA,MAAW;MAAA,EACjB;IAAA;IACFR,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EALA,MAAAJ,iBAAA,GAA0BW,EAK1B;EAAA,IAAAG,EAAA;EAAA,IAAAV,CAAA,QAAAC,QAAA,IAAAD,CAAA,QAAAH,WAAA;IAGEa,EAAA,GAAAC,IAAA,CAAAnB,OAAA,CAAAoB,QAAA;MAAAC,KAAA;QAAAnB,gBAAA;QAAAE,iBAAA;QAAAC;MAAA;MAAAI;IAAA,C;;;;;;;SAAAS,E;CAIJ;AAEA,OAAO,MAAMI,cAAA,GAAiBA,CAAA;EAAA,OAA0BvB,KAAA,CAAAwB,UAAA,CAAAvB,OAAiB;AAAA","ignoreList":[]}