@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
@@ -33,17 +33,17 @@ const DraggablePill = props => {
33
33
  } = useDraggableSortable(t0);
34
34
  const t1 = isDragging && `${baseClass}--is-dragging`;
35
35
  let t2;
36
- if ($[2] !== t1 || $[3] !== className) {
36
+ if ($[2] !== className || $[3] !== t1) {
37
37
  t2 = [t1, className].filter(Boolean);
38
- $[2] = t1;
39
- $[3] = className;
38
+ $[2] = className;
39
+ $[3] = t1;
40
40
  $[4] = t2;
41
41
  } else {
42
42
  t2 = $[4];
43
43
  }
44
44
  const t3 = t2.join(" ");
45
45
  let t4;
46
- if ($[5] !== transform || $[6] !== listeners || $[7] !== attributes || $[8] !== setNodeRef || $[9] !== props || $[10] !== t3) {
46
+ if ($[5] !== attributes || $[6] !== listeners || $[7] !== props || $[8] !== setNodeRef || $[9] !== t3 || $[10] !== transform) {
47
47
  t4 = _jsx(StaticPill, {
48
48
  ...props,
49
49
  className: t3,
@@ -56,12 +56,12 @@ const DraggablePill = props => {
56
56
  }
57
57
  }
58
58
  });
59
- $[5] = transform;
59
+ $[5] = attributes;
60
60
  $[6] = listeners;
61
- $[7] = attributes;
61
+ $[7] = props;
62
62
  $[8] = setNodeRef;
63
- $[9] = props;
64
- $[10] = t3;
63
+ $[9] = t3;
64
+ $[10] = transform;
65
65
  $[11] = t4;
66
66
  } else {
67
67
  t4 = $[11];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","LinkWithDefault","Link","default","React","useDraggableSortable","baseClass","DraggablePill","props","$","id","className","t0","attributes","isDragging","listeners","setNodeRef","transform","t1","t2","filter","Boolean","t3","join","t4","_jsx","StaticPill","elementProps","ref","style","alignIcon","ariaChecked","ariaControls","ariaExpanded","ariaLabel","children","draggable","icon","onClick","pillStyle","rounded","to","classes","Element","_jsxs","href","type","undefined","Pill"],"sources":["../../../src/elements/Pill/index.tsx"],"sourcesContent":["'use client'\nimport type { ElementType, HTMLAttributes } from 'react'\n\nimport LinkWithDefault from 'next/link.js'\nconst Link = LinkWithDefault.default\nimport React from 'react' // TODO: abstract this out to support all routers\n\nexport type PillProps = {\n alignIcon?: 'left' | 'right'\n 'aria-checked'?: boolean\n 'aria-controls'?: string\n 'aria-expanded'?: boolean\n 'aria-label'?: string\n children?: React.ReactNode\n className?: string\n draggable?: boolean\n elementProps?: {\n ref: React.RefCallback<HTMLElement>\n } & HTMLAttributes<HTMLElement>\n icon?: React.ReactNode\n id?: string\n onClick?: () => void\n pillStyle?: 'dark' | 'error' | 'light' | 'light-gray' | 'success' | 'warning' | 'white'\n rounded?: boolean\n to?: string\n}\n\nexport type RenderedTypeProps = {\n children: React.ReactNode\n className?: string\n onClick?: () => void\n to: string\n type?: 'button'\n}\n\nimport { useDraggableSortable } from '../DraggableSortable/useDraggableSortable/index.js'\nimport './index.scss'\n\nconst baseClass = 'pill'\n\nconst DraggablePill: React.FC<PillProps> = (props) => {\n const { id, className } = props\n\n const { attributes, isDragging, listeners, setNodeRef, transform } = useDraggableSortable({\n id,\n })\n\n return (\n <StaticPill\n {...props}\n className={[isDragging && `${baseClass}--is-dragging`, className].filter(Boolean).join(' ')}\n elementProps={{\n ...listeners,\n ...attributes,\n ref: setNodeRef,\n style: {\n transform,\n },\n }}\n />\n )\n}\n\nconst StaticPill: React.FC<PillProps> = (props) => {\n const {\n alignIcon = 'right',\n 'aria-checked': ariaChecked,\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-label': ariaLabel,\n children,\n className,\n draggable,\n elementProps,\n icon,\n onClick,\n pillStyle = 'light',\n rounded,\n to,\n } = props\n\n const classes = [\n baseClass,\n `${baseClass}--style-${pillStyle}`,\n className && className,\n to && `${baseClass}--has-link`,\n (to || onClick) && `${baseClass}--has-action`,\n icon && `${baseClass}--has-icon`,\n icon && `${baseClass}--align-icon-${alignIcon}`,\n draggable && `${baseClass}--draggable`,\n rounded && `${baseClass}--rounded`,\n ]\n .filter(Boolean)\n .join(' ')\n\n let Element: ElementType | React.FC<RenderedTypeProps> = 'div'\n\n if (onClick && !to) {\n Element = 'button'\n }\n if (to) {\n Element = Link\n }\n\n return (\n <Element\n {...elementProps}\n aria-checked={ariaChecked}\n aria-controls={ariaControls}\n aria-expanded={ariaExpanded}\n aria-label={ariaLabel}\n className={classes}\n href={to || null}\n onClick={onClick}\n type={Element === 'button' ? 'button' : undefined}\n >\n <span className={`${baseClass}__label`}>{children}</span>\n {icon && <span className={`${baseClass}__icon`}>{icon}</span>}\n </Element>\n )\n}\n\nexport const Pill: React.FC<PillProps> = (props) => {\n const { draggable } = props\n\n if (draggable) {\n return <DraggablePill {...props} />\n }\n return <StaticPill {...props} />\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","LinkWithDefault","Link","default","React","useDraggableSortable","baseClass","DraggablePill","props","$","id","className","t0","attributes","isDragging","listeners","setNodeRef","transform","t1","t2","filter","Boolean","t3","join","t4","_jsx","StaticPill","elementProps","ref","style","alignIcon","ariaChecked","ariaControls","ariaExpanded","ariaLabel","children","draggable","icon","onClick","pillStyle","rounded","to","classes","Element","_jsxs","href","type","undefined","Pill"],"sources":["../../../src/elements/Pill/index.tsx"],"sourcesContent":["'use client'\nimport type { ElementType, HTMLAttributes } from 'react'\n\nimport LinkWithDefault from 'next/link.js'\nconst Link = LinkWithDefault.default\nimport React from 'react' // TODO: abstract this out to support all routers\n\nexport type PillProps = {\n alignIcon?: 'left' | 'right'\n 'aria-checked'?: boolean\n 'aria-controls'?: string\n 'aria-expanded'?: boolean\n 'aria-label'?: string\n children?: React.ReactNode\n className?: string\n draggable?: boolean\n elementProps?: {\n ref: React.RefCallback<HTMLElement>\n } & HTMLAttributes<HTMLElement>\n icon?: React.ReactNode\n id?: string\n onClick?: () => void\n pillStyle?: 'dark' | 'error' | 'light' | 'light-gray' | 'success' | 'warning' | 'white'\n rounded?: boolean\n to?: string\n}\n\nexport type RenderedTypeProps = {\n children: React.ReactNode\n className?: string\n onClick?: () => void\n to: string\n type?: 'button'\n}\n\nimport { useDraggableSortable } from '../DraggableSortable/useDraggableSortable/index.js'\nimport './index.scss'\n\nconst baseClass = 'pill'\n\nconst DraggablePill: React.FC<PillProps> = (props) => {\n const { id, className } = props\n\n const { attributes, isDragging, listeners, setNodeRef, transform } = useDraggableSortable({\n id,\n })\n\n return (\n <StaticPill\n {...props}\n className={[isDragging && `${baseClass}--is-dragging`, className].filter(Boolean).join(' ')}\n elementProps={{\n ...listeners,\n ...attributes,\n ref: setNodeRef,\n style: {\n transform,\n },\n }}\n />\n )\n}\n\nconst StaticPill: React.FC<PillProps> = (props) => {\n const {\n alignIcon = 'right',\n 'aria-checked': ariaChecked,\n 'aria-controls': ariaControls,\n 'aria-expanded': ariaExpanded,\n 'aria-label': ariaLabel,\n children,\n className,\n draggable,\n elementProps,\n icon,\n onClick,\n pillStyle = 'light',\n rounded,\n to,\n } = props\n\n const classes = [\n baseClass,\n `${baseClass}--style-${pillStyle}`,\n className && className,\n to && `${baseClass}--has-link`,\n (to || onClick) && `${baseClass}--has-action`,\n icon && `${baseClass}--has-icon`,\n icon && `${baseClass}--align-icon-${alignIcon}`,\n draggable && `${baseClass}--draggable`,\n rounded && `${baseClass}--rounded`,\n ]\n .filter(Boolean)\n .join(' ')\n\n let Element: ElementType | React.FC<RenderedTypeProps> = 'div'\n\n if (onClick && !to) {\n Element = 'button'\n }\n if (to) {\n Element = Link\n }\n\n return (\n <Element\n {...elementProps}\n aria-checked={ariaChecked}\n aria-controls={ariaControls}\n aria-expanded={ariaExpanded}\n aria-label={ariaLabel}\n className={classes}\n href={to || null}\n onClick={onClick}\n type={Element === 'button' ? 'button' : undefined}\n >\n <span className={`${baseClass}__label`}>{children}</span>\n {icon && <span className={`${baseClass}__icon`}>{icon}</span>}\n </Element>\n )\n}\n\nexport const Pill: React.FC<PillProps> = (props) => {\n const { draggable } = props\n\n if (draggable) {\n return <DraggablePill {...props} />\n }\n return <StaticPill {...props} />\n}\n"],"mappings":"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","ignoreList":[]}
@@ -60,6 +60,7 @@ export const Popup = props => {
60
60
  let boundingBottomPos = document.documentElement.clientHeight;
61
61
  let boundingLeftPos = 0;
62
62
  if (boundingRef?.current) {
63
+ ;
63
64
  ({
64
65
  bottom: boundingBottomPos,
65
66
  left: boundingLeftPos,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["PopupList","useWindowInfo","React","useCallback","useEffect","useRef","useState","useIntersect","PopupTrigger","baseClass","Popup","props","boundingRef","button","buttonClassName","buttonSize","buttonType","caret","children","className","disabled","forceOpen","horizontalAlign","horizontalAlignFromProps","initActive","noBackground","onToggleOpen","render","showOnHover","showScrollbar","size","verticalAlign","verticalAlignFromProps","height","windowHeight","width","windowWidth","intersectionRef","intersectionEntry","root","current","rootMargin","threshold","contentRef","active","setActive","setVerticalAlign","setHorizontalAlign","setPosition","horizontal","vertical","bounds","getBoundingClientRect","bottom","contentBottomPos","left","contentLeftPos","right","contentRightPos","top","contentTopPos","boundingTopPos","boundingRightPos","document","documentElement","clientWidth","boundingBottomPos","clientHeight","boundingLeftPos","handleClickOutside","e","contains","target","addEventListener","removeEventListener","classes","filter","Boolean","join","_jsxs","_jsx","onMouseEnter","onMouseLeave","ref","close"],"sources":["../../../src/elements/Popup/index.tsx"],"sourcesContent":["'use client'\nimport type { CSSProperties } from 'react'\n\nexport * as PopupList from './PopupButtonList/index.js'\n\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport React, { useCallback, useEffect, useRef, useState } from 'react'\n\nimport { useIntersect } from '../../hooks/useIntersect.js'\nimport './index.scss'\nimport { PopupTrigger } from './PopupTrigger/index.js'\n\nconst baseClass = 'popup'\n\nexport type PopupProps = {\n backgroundColor?: CSSProperties['backgroundColor']\n boundingRef?: React.RefObject<HTMLElement>\n button?: React.ReactNode\n buttonClassName?: string\n buttonSize?: 'large' | 'medium' | 'small'\n buttonType?: 'custom' | 'default' | 'none'\n caret?: boolean\n children?: React.ReactNode\n className?: string\n disabled?: boolean\n forceOpen?: boolean\n horizontalAlign?: 'center' | 'left' | 'right'\n initActive?: boolean\n noBackground?: boolean\n onToggleOpen?: (active: boolean) => void\n render?: (any) => React.ReactNode\n showOnHover?: boolean\n showScrollbar?: boolean\n size?: 'fit-content' | 'large' | 'medium' | 'small'\n verticalAlign?: 'bottom' | 'top'\n}\n\nexport const Popup: React.FC<PopupProps> = (props) => {\n const {\n boundingRef,\n button,\n buttonClassName,\n buttonSize,\n buttonType = 'default',\n caret = true,\n children,\n className,\n disabled,\n forceOpen,\n horizontalAlign: horizontalAlignFromProps = 'left',\n initActive = false,\n noBackground,\n onToggleOpen,\n render,\n showOnHover = false,\n showScrollbar = false,\n size = 'medium',\n verticalAlign: verticalAlignFromProps = 'top',\n } = props\n const { height: windowHeight, width: windowWidth } = useWindowInfo()\n const [intersectionRef, intersectionEntry] = useIntersect({\n root: boundingRef?.current || null,\n rootMargin: '-100px 0px 0px 0px',\n threshold: 1,\n })\n\n const contentRef = useRef(null)\n const [active, setActive] = useState(initActive)\n const [verticalAlign, setVerticalAlign] = useState(verticalAlignFromProps)\n const [horizontalAlign, setHorizontalAlign] = useState(horizontalAlignFromProps)\n\n const setPosition = useCallback(\n ({ horizontal = false, vertical = false }) => {\n if (contentRef.current) {\n const bounds = contentRef.current.getBoundingClientRect()\n\n const {\n bottom: contentBottomPos,\n left: contentLeftPos,\n right: contentRightPos,\n top: contentTopPos,\n } = bounds\n\n let boundingTopPos = 100\n let boundingRightPos = document.documentElement.clientWidth\n let boundingBottomPos = document.documentElement.clientHeight\n let boundingLeftPos = 0\n\n if (boundingRef?.current) {\n ;({\n bottom: boundingBottomPos,\n left: boundingLeftPos,\n right: boundingRightPos,\n top: boundingTopPos,\n } = boundingRef.current.getBoundingClientRect())\n }\n\n if (horizontal) {\n if (contentRightPos > boundingRightPos && contentLeftPos > boundingLeftPos) {\n setHorizontalAlign('right')\n } else if (contentLeftPos < boundingLeftPos && contentRightPos < boundingRightPos) {\n setHorizontalAlign('left')\n }\n }\n\n if (vertical) {\n if (contentTopPos < boundingTopPos && contentBottomPos < boundingBottomPos) {\n setVerticalAlign('bottom')\n } else if (contentBottomPos > boundingBottomPos && contentTopPos > boundingTopPos) {\n setVerticalAlign('top')\n }\n }\n }\n },\n [boundingRef],\n )\n\n const handleClickOutside = useCallback(\n (e) => {\n if (contentRef.current.contains(e.target)) {\n return\n }\n\n setActive(false)\n },\n [contentRef],\n )\n\n useEffect(() => {\n setPosition({ horizontal: true })\n }, [intersectionEntry, setPosition, windowWidth])\n\n useEffect(() => {\n setPosition({ vertical: true })\n }, [intersectionEntry, setPosition, windowHeight])\n\n useEffect(() => {\n if (typeof onToggleOpen === 'function') {\n onToggleOpen(active)\n }\n\n if (active) {\n document.addEventListener('mousedown', handleClickOutside)\n } else {\n document.removeEventListener('mousedown', handleClickOutside)\n }\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside)\n }\n }, [active, handleClickOutside, onToggleOpen])\n\n useEffect(() => {\n setActive(forceOpen)\n }, [forceOpen])\n\n const classes = [\n baseClass,\n className,\n `${baseClass}--size-${size}`,\n buttonSize && `${baseClass}--button-size-${buttonSize}`,\n `${baseClass}--v-align-${verticalAlign}`,\n `${baseClass}--h-align-${horizontalAlign}`,\n active && `${baseClass}--active`,\n showScrollbar && `${baseClass}--show-scrollbar`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <div className={classes}>\n <div className={`${baseClass}__trigger-wrap`}>\n {showOnHover ? (\n <div\n className={`${baseClass}__on-hover-watch`}\n onMouseEnter={() => setActive(true)}\n onMouseLeave={() => setActive(false)}\n >\n <PopupTrigger\n {...{\n active,\n button,\n buttonType,\n className: buttonClassName,\n disabled,\n noBackground,\n setActive,\n size: buttonSize,\n }}\n />\n </div>\n ) : (\n <PopupTrigger\n {...{\n active,\n button,\n buttonType,\n className: buttonClassName,\n disabled,\n noBackground,\n setActive,\n size: buttonSize,\n }}\n />\n )}\n </div>\n\n <div className={`${baseClass}__content`} ref={contentRef}>\n <div className={`${baseClass}__hide-scrollbar`} ref={intersectionRef}>\n <div className={`${baseClass}__scroll-container`}>\n <div className={`${baseClass}__scroll-content`}>\n {render && render({ close: () => setActive(false) })}\n {children && children}\n </div>\n </div>\n </div>\n\n {caret && <div className={`${baseClass}__caret`} />}\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["PopupList","useWindowInfo","React","useCallback","useEffect","useRef","useState","useIntersect","PopupTrigger","baseClass","Popup","props","boundingRef","button","buttonClassName","buttonSize","buttonType","caret","children","className","disabled","forceOpen","horizontalAlign","horizontalAlignFromProps","initActive","noBackground","onToggleOpen","render","showOnHover","showScrollbar","size","verticalAlign","verticalAlignFromProps","height","windowHeight","width","windowWidth","intersectionRef","intersectionEntry","root","current","rootMargin","threshold","contentRef","active","setActive","setVerticalAlign","setHorizontalAlign","setPosition","horizontal","vertical","bounds","getBoundingClientRect","bottom","contentBottomPos","left","contentLeftPos","right","contentRightPos","top","contentTopPos","boundingTopPos","boundingRightPos","document","documentElement","clientWidth","boundingBottomPos","clientHeight","boundingLeftPos","handleClickOutside","e","contains","target","addEventListener","removeEventListener","classes","filter","Boolean","join","_jsxs","_jsx","onMouseEnter","onMouseLeave","ref","close"],"sources":["../../../src/elements/Popup/index.tsx"],"sourcesContent":["'use client'\nimport type { CSSProperties } from 'react'\n\nexport * as PopupList from './PopupButtonList/index.js'\n\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport React, { useCallback, useEffect, useRef, useState } from 'react'\n\nimport { useIntersect } from '../../hooks/useIntersect.js'\nimport './index.scss'\nimport { PopupTrigger } from './PopupTrigger/index.js'\n\nconst baseClass = 'popup'\n\nexport type PopupProps = {\n backgroundColor?: CSSProperties['backgroundColor']\n boundingRef?: React.RefObject<HTMLElement>\n button?: React.ReactNode\n buttonClassName?: string\n buttonSize?: 'large' | 'medium' | 'small'\n buttonType?: 'custom' | 'default' | 'none'\n caret?: boolean\n children?: React.ReactNode\n className?: string\n disabled?: boolean\n forceOpen?: boolean\n horizontalAlign?: 'center' | 'left' | 'right'\n initActive?: boolean\n noBackground?: boolean\n onToggleOpen?: (active: boolean) => void\n render?: (any) => React.ReactNode\n showOnHover?: boolean\n showScrollbar?: boolean\n size?: 'fit-content' | 'large' | 'medium' | 'small'\n verticalAlign?: 'bottom' | 'top'\n}\n\nexport const Popup: React.FC<PopupProps> = (props) => {\n const {\n boundingRef,\n button,\n buttonClassName,\n buttonSize,\n buttonType = 'default',\n caret = true,\n children,\n className,\n disabled,\n forceOpen,\n horizontalAlign: horizontalAlignFromProps = 'left',\n initActive = false,\n noBackground,\n onToggleOpen,\n render,\n showOnHover = false,\n showScrollbar = false,\n size = 'medium',\n verticalAlign: verticalAlignFromProps = 'top',\n } = props\n const { height: windowHeight, width: windowWidth } = useWindowInfo()\n const [intersectionRef, intersectionEntry] = useIntersect({\n root: boundingRef?.current || null,\n rootMargin: '-100px 0px 0px 0px',\n threshold: 1,\n })\n\n const contentRef = useRef(null)\n const [active, setActive] = useState(initActive)\n const [verticalAlign, setVerticalAlign] = useState(verticalAlignFromProps)\n const [horizontalAlign, setHorizontalAlign] = useState(horizontalAlignFromProps)\n\n const setPosition = useCallback(\n ({ horizontal = false, vertical = false }) => {\n if (contentRef.current) {\n const bounds = contentRef.current.getBoundingClientRect()\n\n const {\n bottom: contentBottomPos,\n left: contentLeftPos,\n right: contentRightPos,\n top: contentTopPos,\n } = bounds\n\n let boundingTopPos = 100\n let boundingRightPos = document.documentElement.clientWidth\n let boundingBottomPos = document.documentElement.clientHeight\n let boundingLeftPos = 0\n\n if (boundingRef?.current) {\n ;({\n bottom: boundingBottomPos,\n left: boundingLeftPos,\n right: boundingRightPos,\n top: boundingTopPos,\n } = boundingRef.current.getBoundingClientRect())\n }\n\n if (horizontal) {\n if (contentRightPos > boundingRightPos && contentLeftPos > boundingLeftPos) {\n setHorizontalAlign('right')\n } else if (contentLeftPos < boundingLeftPos && contentRightPos < boundingRightPos) {\n setHorizontalAlign('left')\n }\n }\n\n if (vertical) {\n if (contentTopPos < boundingTopPos && contentBottomPos < boundingBottomPos) {\n setVerticalAlign('bottom')\n } else if (contentBottomPos > boundingBottomPos && contentTopPos > boundingTopPos) {\n setVerticalAlign('top')\n }\n }\n }\n },\n [boundingRef],\n )\n\n const handleClickOutside = useCallback(\n (e) => {\n if (contentRef.current.contains(e.target)) {\n return\n }\n\n setActive(false)\n },\n [contentRef],\n )\n\n useEffect(() => {\n setPosition({ horizontal: true })\n }, [intersectionEntry, setPosition, windowWidth])\n\n useEffect(() => {\n setPosition({ vertical: true })\n }, [intersectionEntry, setPosition, windowHeight])\n\n useEffect(() => {\n if (typeof onToggleOpen === 'function') {\n onToggleOpen(active)\n }\n\n if (active) {\n document.addEventListener('mousedown', handleClickOutside)\n } else {\n document.removeEventListener('mousedown', handleClickOutside)\n }\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside)\n }\n }, [active, handleClickOutside, onToggleOpen])\n\n useEffect(() => {\n setActive(forceOpen)\n }, [forceOpen])\n\n const classes = [\n baseClass,\n className,\n `${baseClass}--size-${size}`,\n buttonSize && `${baseClass}--button-size-${buttonSize}`,\n `${baseClass}--v-align-${verticalAlign}`,\n `${baseClass}--h-align-${horizontalAlign}`,\n active && `${baseClass}--active`,\n showScrollbar && `${baseClass}--show-scrollbar`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <div className={classes}>\n <div className={`${baseClass}__trigger-wrap`}>\n {showOnHover ? (\n <div\n className={`${baseClass}__on-hover-watch`}\n onMouseEnter={() => setActive(true)}\n onMouseLeave={() => setActive(false)}\n >\n <PopupTrigger\n {...{\n active,\n button,\n buttonType,\n className: buttonClassName,\n disabled,\n noBackground,\n setActive,\n size: buttonSize,\n }}\n />\n </div>\n ) : (\n <PopupTrigger\n {...{\n active,\n button,\n buttonType,\n className: buttonClassName,\n disabled,\n noBackground,\n setActive,\n size: buttonSize,\n }}\n />\n )}\n </div>\n\n <div className={`${baseClass}__content`} ref={contentRef}>\n <div className={`${baseClass}__hide-scrollbar`} ref={intersectionRef}>\n <div className={`${baseClass}__scroll-container`}>\n <div className={`${baseClass}__scroll-content`}>\n {render && render({ close: () => setActive(false) })}\n {children && children}\n </div>\n </div>\n </div>\n\n {caret && <div className={`${baseClass}__caret`} />}\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -23,7 +23,7 @@ export const PreviewButton = () => {
23
23
  t0 = $[1];
24
24
  }
25
25
  let t1;
26
- if ($[2] !== t0 || $[3] !== label) {
26
+ if ($[2] !== label || $[3] !== t0) {
27
27
  t1 = _jsx(Button, {
28
28
  buttonStyle: "secondary",
29
29
  className: baseClass,
@@ -33,8 +33,8 @@ export const PreviewButton = () => {
33
33
  size: "medium",
34
34
  children: label
35
35
  });
36
- $[2] = t0;
37
- $[3] = label;
36
+ $[2] = label;
37
+ $[3] = t0;
38
38
  $[4] = t1;
39
39
  } else {
40
40
  t1 = $[4];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","Button","usePreviewURL","baseClass","PreviewButton","$","generatePreviewURL","label","t0","openPreviewWindow","t1","_jsx","buttonStyle","className","icon","iconPosition","onClick","size","children"],"sources":["../../../src/elements/PreviewButton/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { Button } from '../Button/index.js'\nimport { usePreviewURL } from './usePreviewURL.js'\n\nconst baseClass = 'preview-btn'\n\nexport const PreviewButton: React.FC = () => {\n const { generatePreviewURL, label } = usePreviewURL()\n\n return (\n <Button\n buttonStyle=\"secondary\"\n className={baseClass}\n icon={'link'}\n iconPosition=\"left\"\n // disabled={disabled}\n onClick={() =>\n generatePreviewURL({\n openPreviewWindow: true,\n })\n }\n size=\"medium\"\n >\n {label}\n </Button>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAElB,SAASC,MAAM,QAAQ;AACvB,SAASC,aAAa,QAAQ;AAE9B,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,aAAA,GAA0BA,CAAA;EAAA,MAAAC,CAAA,GAAAN,EAAA;EACrC;IAAAO,kBAAA;IAAAC;EAAA,IAAsCL,aAAA;EAAA,IAAAM,EAAA;EAAA,IAAAH,CAAA,QAAAC,kBAAA;IASzBE,EAAA,GAAAA,CAAA,KACPF,kBAAA;MAAAG,iBAAA;IAAA,CAEA;IAAAJ,CAAA,MAAAC,kBAAA;IAAAD,CAAA,MAAAG,EAAA;EAAA;IAAAA,EAAA,GAAAH,CAAA;EAAA;EAAA,IAAAK,EAAA;EAAA,IAAAL,CAAA,QAAAG,EAAA,IAAAH,CAAA,QAAAE,KAAA;IATJG,EAAA,GAAAC,IAAA,CAAAV,MAAA;MAAAW,WAAA,EACc;MAAAC,SAAA,EAAAV,SAAA;MAAAW,IAAA,EAEN;MAAAC,YAAA,EACO;MAAAC,OAAA,EAEJR,EAGP;MAAAS,IAAA,EAEG;MAAAC,QAAA,EAEJX;IAAA,C;;;;;;;SAbHG,E;CAgBJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","Button","usePreviewURL","baseClass","PreviewButton","$","generatePreviewURL","label","t0","openPreviewWindow","t1","_jsx","buttonStyle","className","icon","iconPosition","onClick","size","children"],"sources":["../../../src/elements/PreviewButton/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { Button } from '../Button/index.js'\nimport { usePreviewURL } from './usePreviewURL.js'\n\nconst baseClass = 'preview-btn'\n\nexport const PreviewButton: React.FC = () => {\n const { generatePreviewURL, label } = usePreviewURL()\n\n return (\n <Button\n buttonStyle=\"secondary\"\n className={baseClass}\n icon={'link'}\n iconPosition=\"left\"\n // disabled={disabled}\n onClick={() =>\n generatePreviewURL({\n openPreviewWindow: true,\n })\n }\n size=\"medium\"\n >\n {label}\n </Button>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAElB,SAASC,MAAM,QAAQ;AACvB,SAASC,aAAa,QAAQ;AAE9B,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,aAAA,GAA0BA,CAAA;EAAA,MAAAC,CAAA,GAAAN,EAAA;EACrC;IAAAO,kBAAA;IAAAC;EAAA,IAAsCL,aAAA;EAAA,IAAAM,EAAA;EAAA,IAAAH,CAAA,QAAAC,kBAAA;IASzBE,EAAA,GAAAA,CAAA,KACPF,kBAAA;MAAAG,iBAAA;IAAA,CAEA;IAAAJ,CAAA,MAAAC,kBAAA;IAAAD,CAAA,MAAAG,EAAA;EAAA;IAAAA,EAAA,GAAAH,CAAA;EAAA;EAAA,IAAAK,EAAA;EAAA,IAAAL,CAAA,QAAAE,KAAA,IAAAF,CAAA,QAAAG,EAAA;IATJE,EAAA,GAAAC,IAAA,CAAAV,MAAA;MAAAW,WAAA,EACc;MAAAC,SAAA,EAAAV,SAAA;MAAAW,IAAA,EAEN;MAAAC,YAAA,EACO;MAAAC,OAAA,EAEJR,EAGP;MAAAS,IAAA,EAEG;MAAAC,QAAA,EAEJX;IAAA,C;;;;;;;SAbHG,E;CAgBJ","ignoreList":[]}
@@ -71,7 +71,7 @@ export const PublishButton = t0 => {
71
71
  const operation = useOperation();
72
72
  const forceDisable = operation === "update" && !modified;
73
73
  let t3;
74
- if ($[3] !== forceDisable || $[4] !== locale || $[5] !== collectionSlug || $[6] !== serverURL || $[7] !== api || $[8] !== id || $[9] !== globalSlug || $[10] !== submit) {
74
+ if ($[3] !== api || $[4] !== collectionSlug || $[5] !== forceDisable || $[6] !== globalSlug || $[7] !== id || $[8] !== locale || $[9] !== serverURL || $[10] !== submit) {
75
75
  t3 = async () => {
76
76
  if (forceDisable) {
77
77
  return;
@@ -97,13 +97,13 @@ export const PublishButton = t0 => {
97
97
  skipValidation: true
98
98
  });
99
99
  };
100
- $[3] = forceDisable;
101
- $[4] = locale;
102
- $[5] = collectionSlug;
103
- $[6] = serverURL;
104
- $[7] = api;
105
- $[8] = id;
106
- $[9] = globalSlug;
100
+ $[3] = api;
101
+ $[4] = collectionSlug;
102
+ $[5] = forceDisable;
103
+ $[6] = globalSlug;
104
+ $[7] = id;
105
+ $[8] = locale;
106
+ $[9] = serverURL;
107
107
  $[10] = submit;
108
108
  $[11] = t3;
109
109
  } else {
@@ -130,7 +130,7 @@ export const PublishButton = t0 => {
130
130
  t5 = $[14];
131
131
  }
132
132
  let t6;
133
- if ($[15] !== saveDraft || $[16] !== docConfig.versions) {
133
+ if ($[15] !== docConfig || $[16] !== saveDraft) {
134
134
  t6 = e => {
135
135
  e.preventDefault();
136
136
  e.stopPropagation();
@@ -138,15 +138,15 @@ export const PublishButton = t0 => {
138
138
  saveDraft();
139
139
  }
140
140
  };
141
- $[15] = saveDraft;
142
- $[16] = docConfig.versions;
141
+ $[15] = docConfig;
142
+ $[16] = saveDraft;
143
143
  $[17] = t6;
144
144
  } else {
145
145
  t6 = $[17];
146
146
  }
147
147
  useHotkey(t5, t6);
148
148
  let t7;
149
- if ($[18] !== submit || $[19] !== setUnpublishedVersionCount || $[20] !== setHasPublishedDoc) {
149
+ if ($[18] !== setHasPublishedDoc || $[19] !== setUnpublishedVersionCount || $[20] !== submit) {
150
150
  t7 = () => {
151
151
  submit({
152
152
  overrides: {
@@ -156,16 +156,16 @@ export const PublishButton = t0 => {
156
156
  setUnpublishedVersionCount(0);
157
157
  setHasPublishedDoc(true);
158
158
  };
159
- $[18] = submit;
159
+ $[18] = setHasPublishedDoc;
160
160
  $[19] = setUnpublishedVersionCount;
161
- $[20] = setHasPublishedDoc;
161
+ $[20] = submit;
162
162
  $[21] = t7;
163
163
  } else {
164
164
  t7 = $[21];
165
165
  }
166
166
  const publish = t7;
167
167
  let t8;
168
- if ($[22] !== serverURL || $[23] !== api || $[24] !== globalSlug || $[25] !== collectionSlug || $[26] !== id || $[27] !== submit || $[28] !== setHasPublishedDoc) {
168
+ if ($[22] !== api || $[23] !== collectionSlug || $[24] !== globalSlug || $[25] !== id || $[26] !== serverURL || $[27] !== setHasPublishedDoc || $[28] !== submit) {
169
169
  t8 = locale_0 => {
170
170
  const params = qs.stringify({
171
171
  publishSpecificLocale: locale_0
@@ -179,13 +179,13 @@ export const PublishButton = t0 => {
179
179
  });
180
180
  setHasPublishedDoc(true);
181
181
  };
182
- $[22] = serverURL;
183
- $[23] = api;
182
+ $[22] = api;
183
+ $[23] = collectionSlug;
184
184
  $[24] = globalSlug;
185
- $[25] = collectionSlug;
186
- $[26] = id;
187
- $[27] = submit;
188
- $[28] = setHasPublishedDoc;
185
+ $[25] = id;
186
+ $[26] = serverURL;
187
+ $[27] = setHasPublishedDoc;
188
+ $[28] = submit;
189
189
  $[29] = t8;
190
190
  } else {
191
191
  t8 = $[29];
@@ -196,7 +196,7 @@ export const PublishButton = t0 => {
196
196
  }
197
197
  const t9 = !canPublish;
198
198
  let t10;
199
- if ($[30] !== localization || $[31] !== i18n || $[32] !== code || $[33] !== publishSpecificLocale || $[34] !== t) {
199
+ if ($[30] !== code || $[31] !== i18n?.language || $[32] !== localization || $[33] !== publishSpecificLocale || $[34] !== t) {
200
200
  t10 = localization ? t11 => {
201
201
  const {
202
202
  close
@@ -216,9 +216,9 @@ export const PublishButton = t0 => {
216
216
  }
217
217
  });
218
218
  } : undefined;
219
- $[30] = localization;
220
- $[31] = i18n;
221
- $[32] = code;
219
+ $[30] = code;
220
+ $[31] = i18n?.language;
221
+ $[32] = localization;
222
222
  $[33] = publishSpecificLocale;
223
223
  $[34] = t;
224
224
  $[35] = t10;
@@ -226,7 +226,7 @@ export const PublishButton = t0 => {
226
226
  t10 = $[35];
227
227
  }
228
228
  let t11;
229
- if ($[36] !== t9 || $[37] !== publish || $[38] !== t10 || $[39] !== label) {
229
+ if ($[36] !== label || $[37] !== publish || $[38] !== t10 || $[39] !== t9) {
230
230
  t11 = _jsx(FormSubmit, {
231
231
  buttonId: "action-save",
232
232
  disabled: t9,
@@ -236,10 +236,10 @@ export const PublishButton = t0 => {
236
236
  type: "button",
237
237
  children: label
238
238
  });
239
- $[36] = t9;
239
+ $[36] = label;
240
240
  $[37] = publish;
241
241
  $[38] = t10;
242
- $[39] = label;
242
+ $[39] = t9;
243
243
  $[40] = t11;
244
244
  } else {
245
245
  t11 = $[40];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","qs","React","useCallback","useForm","useFormModified","FormSubmit","useHotkey","useConfig","useDocumentInfo","useEditDepth","useLocale","useOperation","useTranslation","PopupList","PublishButton","t0","$","label","labelProp","id","collectionSlug","docConfig","globalSlug","hasPublishedDoc","hasPublishPermission","setHasPublishedDoc","setUnpublishedVersionCount","unpublishedVersionCount","config","submit","modified","editDepth","code","locale","localization","routes","t1","serverURL","api","i18n","t","t2","hasNewerVersions","canPublish","operation","forceDisable","t3","search","action","method","overrides","_status","skipValidation","saveDraft","t4","Symbol","for","t5","cmdCtrlKey","keyCodes","t6","versions","e","preventDefault","stopPropagation","drafts","autosave","t7","publish","t8","locale_0","params","stringify","publishSpecificLocale","action_0","t9","t10","t11","close","locales","map","locale_1","formattedLabel","language","isActive","_jsx","ButtonGroup","children","Button","onClick","undefined","buttonId","disabled","size","SubMenuPopupContent","type"],"sources":["../../../src/elements/PublishButton/index.tsx"],"sourcesContent":["'use client'\n\nimport * as qs from 'qs-esm'\nimport React, { useCallback } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { PopupList } from '../Popup/index.js'\n\nexport const PublishButton: React.FC<{ label?: string }> = ({ label: labelProp }) => {\n const {\n id,\n collectionSlug,\n docConfig,\n globalSlug,\n hasPublishedDoc,\n hasPublishPermission,\n setHasPublishedDoc,\n setUnpublishedVersionCount,\n unpublishedVersionCount,\n } = useDocumentInfo()\n\n const { config } = useConfig()\n const { submit } = useForm()\n const modified = useFormModified()\n const editDepth = useEditDepth()\n const { code: locale } = useLocale()\n\n const {\n localization,\n routes: { api },\n serverURL,\n } = config\n\n const { i18n, t } = useTranslation()\n const { code } = useLocale()\n const label = labelProp || t('version:publishChanges')\n\n const hasNewerVersions = unpublishedVersionCount > 0\n const canPublish = hasPublishPermission && (modified || hasNewerVersions || !hasPublishedDoc)\n const operation = useOperation()\n\n const forceDisable = operation === 'update' && !modified\n\n const saveDraft = useCallback(async () => {\n if (forceDisable) {\n return\n }\n\n const search = `?locale=${locale}&depth=0&fallback-locale=null&draft=true`\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = `${serverURL}${api}/${collectionSlug}${id ? `/${id}` : ''}${search}`\n if (id) {\n method = 'PATCH'\n }\n }\n\n if (globalSlug) {\n action = `${serverURL}${api}/globals/${globalSlug}${search}`\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [submit, collectionSlug, globalSlug, serverURL, api, locale, id, forceDisable])\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n e.preventDefault()\n e.stopPropagation()\n\n if (saveDraft && docConfig.versions?.drafts && docConfig.versions?.drafts?.autosave) {\n void saveDraft()\n }\n })\n\n const publish = useCallback(() => {\n void submit({\n overrides: {\n _status: 'published',\n },\n })\n\n setUnpublishedVersionCount(0)\n setHasPublishedDoc(true)\n }, [setHasPublishedDoc, submit, setUnpublishedVersionCount])\n\n const publishSpecificLocale = useCallback(\n (locale) => {\n const params = qs.stringify({\n publishSpecificLocale: locale,\n })\n\n const action = `${serverURL}${api}${\n globalSlug ? `/globals/${globalSlug}` : `/${collectionSlug}/${id ? `${'/' + id}` : ''}`\n }${params ? '?' + params : ''}`\n\n void submit({\n action,\n overrides: {\n _status: 'published',\n },\n })\n\n setHasPublishedDoc(true)\n },\n [api, collectionSlug, globalSlug, id, serverURL, setHasPublishedDoc, submit],\n )\n\n if (!hasPublishPermission) {\n return null\n }\n\n return (\n <FormSubmit\n buttonId=\"action-save\"\n disabled={!canPublish}\n onClick={publish}\n size=\"medium\"\n SubMenuPopupContent={\n localization\n ? ({ close }) =>\n localization.locales.map((locale) => {\n const formattedLabel =\n typeof locale.label === 'string'\n ? locale.label\n : locale.label && locale.label[i18n?.language]\n\n const isActive = typeof locale === 'string' ? locale === code : locale.code === code\n\n if (isActive) {\n return (\n <PopupList.ButtonGroup key={locale.code}>\n <PopupList.Button\n onClick={() => [publishSpecificLocale(locale.code), close()]}\n >\n {t('version:publishIn', { locale: formattedLabel || locale.code })}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )\n }\n })\n : undefined\n }\n type=\"button\"\n >\n {label}\n </FormSubmit>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","qs","React","useCallback","useForm","useFormModified","FormSubmit","useHotkey","useConfig","useDocumentInfo","useEditDepth","useLocale","useOperation","useTranslation","PopupList","PublishButton","t0","$","label","labelProp","id","collectionSlug","docConfig","globalSlug","hasPublishedDoc","hasPublishPermission","setHasPublishedDoc","setUnpublishedVersionCount","unpublishedVersionCount","config","submit","modified","editDepth","code","locale","localization","routes","t1","serverURL","api","i18n","t","t2","hasNewerVersions","canPublish","operation","forceDisable","t3","search","action","method","overrides","_status","skipValidation","saveDraft","t4","Symbol","for","t5","cmdCtrlKey","keyCodes","t6","e","preventDefault","stopPropagation","versions","drafts","autosave","t7","publish","t8","locale_0","params","stringify","publishSpecificLocale","action_0","t9","t10","language","t11","close","locales","map","locale_1","formattedLabel","isActive","_jsx","ButtonGroup","children","Button","onClick","undefined","buttonId","disabled","size","SubMenuPopupContent","type"],"sources":["../../../src/elements/PublishButton/index.tsx"],"sourcesContent":["'use client'\n\nimport * as qs from 'qs-esm'\nimport React, { useCallback } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { PopupList } from '../Popup/index.js'\n\nexport const PublishButton: React.FC<{ label?: string }> = ({ label: labelProp }) => {\n const {\n id,\n collectionSlug,\n docConfig,\n globalSlug,\n hasPublishedDoc,\n hasPublishPermission,\n setHasPublishedDoc,\n setUnpublishedVersionCount,\n unpublishedVersionCount,\n } = useDocumentInfo()\n\n const { config } = useConfig()\n const { submit } = useForm()\n const modified = useFormModified()\n const editDepth = useEditDepth()\n const { code: locale } = useLocale()\n\n const {\n localization,\n routes: { api },\n serverURL,\n } = config\n\n const { i18n, t } = useTranslation()\n const { code } = useLocale()\n const label = labelProp || t('version:publishChanges')\n\n const hasNewerVersions = unpublishedVersionCount > 0\n const canPublish = hasPublishPermission && (modified || hasNewerVersions || !hasPublishedDoc)\n const operation = useOperation()\n\n const forceDisable = operation === 'update' && !modified\n\n const saveDraft = useCallback(async () => {\n if (forceDisable) {\n return\n }\n\n const search = `?locale=${locale}&depth=0&fallback-locale=null&draft=true`\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = `${serverURL}${api}/${collectionSlug}${id ? `/${id}` : ''}${search}`\n if (id) {\n method = 'PATCH'\n }\n }\n\n if (globalSlug) {\n action = `${serverURL}${api}/globals/${globalSlug}${search}`\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [submit, collectionSlug, globalSlug, serverURL, api, locale, id, forceDisable])\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n e.preventDefault()\n e.stopPropagation()\n\n if (saveDraft && docConfig.versions?.drafts && docConfig.versions?.drafts?.autosave) {\n void saveDraft()\n }\n })\n\n const publish = useCallback(() => {\n void submit({\n overrides: {\n _status: 'published',\n },\n })\n\n setUnpublishedVersionCount(0)\n setHasPublishedDoc(true)\n }, [setHasPublishedDoc, submit, setUnpublishedVersionCount])\n\n const publishSpecificLocale = useCallback(\n (locale) => {\n const params = qs.stringify({\n publishSpecificLocale: locale,\n })\n\n const action = `${serverURL}${api}${\n globalSlug ? `/globals/${globalSlug}` : `/${collectionSlug}/${id ? `${'/' + id}` : ''}`\n }${params ? '?' + params : ''}`\n\n void submit({\n action,\n overrides: {\n _status: 'published',\n },\n })\n\n setHasPublishedDoc(true)\n },\n [api, collectionSlug, globalSlug, id, serverURL, setHasPublishedDoc, submit],\n )\n\n if (!hasPublishPermission) {\n return null\n }\n\n return (\n <FormSubmit\n buttonId=\"action-save\"\n disabled={!canPublish}\n onClick={publish}\n size=\"medium\"\n SubMenuPopupContent={\n localization\n ? ({ close }) =>\n localization.locales.map((locale) => {\n const formattedLabel =\n typeof locale.label === 'string'\n ? locale.label\n : locale.label && locale.label[i18n?.language]\n\n const isActive = typeof locale === 'string' ? locale === code : locale.code === code\n\n if (isActive) {\n return (\n <PopupList.ButtonGroup key={locale.code}>\n <PopupList.Button\n onClick={() => [publishSpecificLocale(locale.code), close()]}\n >\n {t('version:publishIn', { locale: formattedLabel || locale.code })}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )\n }\n })\n : undefined\n }\n type=\"button\"\n >\n {label}\n </FormSubmit>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,YAAYC,EAAA,MAAQ;AACpB,OAAOC,KAAA,IAASC,WAAW,QAAQ;AAEnC,SAASC,OAAO,EAAEC,eAAe,QAAQ;AACzC,SAASC,UAAU,QAAQ;AAC3B,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,SAASC,eAAe,QAAQ;AAChC,SAASC,YAAY,QAAQ;AAC7B,SAASC,SAAS,QAAQ;AAC1B,SAASC,YAAY,QAAQ;AAC7B,SAASC,cAAc,QAAQ;AAC/B,SAASC,SAAS,QAAQ;AAE1B,OAAO,MAAMC,aAAA,GAA8CC,EAAA;EAAA,MAAAC,CAAA,GAAAjB,EAAA;EAAC;IAAAkB,KAAA,EAAAC;EAAA,IAAAH,EAAoB;EAC9E;IAAAI,EAAA;IAAAC,cAAA;IAAAC,SAAA;IAAAC,UAAA;IAAAC,eAAA;IAAAC,oBAAA;IAAAC,kBAAA;IAAAC,0BAAA;IAAAC;EAAA,IAUInB,eAAA;EAEJ;IAAAoB;EAAA,IAAmBrB,SAAA;EACnB;IAAAsB;EAAA,IAAmB1B,OAAA;EACnB,MAAA2B,QAAA,GAAiB1B,eAAA;EACjB,MAAA2B,SAAA,GAAkBtB,YAAA;EAClB;IAAAuB,IAAA,EAAAC;EAAA,IAAyBvB,SAAA;EAEzB;IAAAwB,YAAA;IAAAC,MAAA,EAAAC,EAAA;IAAAC;EAAA,IAIIT,MAAA;EAFM;IAAAU;EAAA,IAAAF,EAAO;EAIjB;IAAAG,IAAA;IAAAC;EAAA,IAAoB5B,cAAA;EACpB;IAAAoB;EAAA,IAAiBtB,SAAA;EAAA,IAAA+B,EAAA;EAAA,IAAAzB,CAAA,QAAAE,SAAA,IAAAF,CAAA,QAAAwB,CAAA;IACHC,EAAA,GAAAvB,SAAA,IAAasB,CAAA,CAAE;IAAAxB,CAAA,MAAAE,SAAA;IAAAF,CAAA,MAAAwB,CAAA;IAAAxB,CAAA,MAAAyB,EAAA;EAAA;IAAAA,EAAA,GAAAzB,CAAA;EAAA;EAA7B,MAAAC,KAAA,GAAcwB,EAAe;EAE7B,MAAAC,gBAAA,GAAyBf,uBAAA,IAA0B;EACnD,MAAAgB,UAAA,GAAmBnB,oBAAA,KAAyBM,QAAA,IAAYY,gBAAA,KAAqBnB,eAAc;EAC3F,MAAAqB,SAAA,GAAkBjC,YAAA;EAElB,MAAAkC,YAAA,GAAqBD,SAAA,KAAc,aAAad,QAAA;EAAA,IAAAgB,EAAA;EAAA,IAAA9B,CAAA,QAAAsB,GAAA,IAAAtB,CAAA,QAAAI,cAAA,IAAAJ,CAAA,QAAA6B,YAAA,IAAA7B,CAAA,QAAAM,UAAA,IAAAN,CAAA,QAAAG,EAAA,IAAAH,CAAA,QAAAiB,MAAA,IAAAjB,CAAA,QAAAqB,SAAA,IAAArB,CAAA,SAAAa,MAAA;IAElBiB,EAAA,SAAAA,CAAA;MAAA,IACxBD,YAAA;QAAA;MAAA;MAIJ,MAAAE,MAAA,GAAe,WAAWd,MAAA,0CAAgD;MACtEe,GAAA,CAAAA,MAAA;MACJ,IAAAC,MAAA,GAAa;MAAA,IAET7B,cAAA;QACF4B,MAAA,CAAAA,CAAA,CAASA,GAAGX,SAAA,GAAYC,GAAA,IAAOlB,cAAA,GAAiBD,EAAA,GAAK,IAAIA,EAAA,EAAI,GAAG,KAAK4B,MAAA,EAAQ;QAA7E,IACI5B,EAAA;UACF8B,MAAA,CAAAA,CAAA,CAASA,OAAA;QAAT;MAAA;MAAA,IAIA3B,UAAA;QACF0B,MAAA,CAAAA,CAAA,CAASA,GAAGX,SAAA,GAAYC,GAAA,YAAehB,UAAA,GAAayB,MAAA,EAAQ;MAA5D;MAAA,MAGIlB,MAAA;QAAAmB,MAAA;QAAAC,MAAA;QAAAC,SAAA;UAAAC,OAAA,EAIO;QAAA;QAAAC,cAAA;MAAA,CAGb;IAAA;IACFpC,CAAA,MAAAsB,GAAA;IAAAtB,CAAA,MAAAI,cAAA;IAAAJ,CAAA,MAAA6B,YAAA;IAAA7B,CAAA,MAAAM,UAAA;IAAAN,CAAA,MAAAG,EAAA;IAAAH,CAAA,MAAAiB,MAAA;IAAAjB,CAAA,MAAAqB,SAAA;IAAArB,CAAA,OAAAa,MAAA;IAAAb,CAAA,OAAA8B,EAAA;EAAA;IAAAA,EAAA,GAAA9B,CAAA;EAAA;EA5BA,MAAAqC,SAAA,GAAkBP,EA4B+D;EAAA,IAAAQ,EAAA;EAAA,IAAAtC,CAAA,SAAAuC,MAAA,CAAAC,GAAA;IAE9BF,EAAA,IAAC;IAAItC,CAAA,OAAAsC,EAAA;EAAA;IAAAA,EAAA,GAAAtC,CAAA;EAAA;EAAA,IAAAyC,EAAA;EAAA,IAAAzC,CAAA,SAAAe,SAAA;IAA9C0B,EAAA;MAAAC,UAAA;MAAA3B,SAAA;MAAA4B,QAAA,EAAyCL;IAAK;IAACtC,CAAA,OAAAe,SAAA;IAAAf,CAAA,OAAAyC,EAAA;EAAA;IAAAA,EAAA,GAAAzC,CAAA;EAAA;EAAA,IAAA4C,EAAA;EAAA,IAAA5C,CAAA,SAAAK,SAAA,IAAAL,CAAA,SAAAqC,SAAA;IAAGO,EAAA,GAAAC,CAAA;MAC1DA,CAAA,CAAAC,cAAA,CAAgB;MAChBD,CAAA,CAAAE,eAAA,CAAiB;MAAA,IAEbV,SAAA,IAAahC,SAAA,CAAA2C,QAAA,EAAAC,MAAoB,IAAU5C,SAAA,CAAA2C,QAAA,EAAAC,MAAA,EAAAC,QAA4B;QACpEb,SAAA;MAAA;IAAA;IAETrC,CAAA,OAAAK,SAAA;IAAAL,CAAA,OAAAqC,SAAA;IAAArC,CAAA,OAAA4C,EAAA;EAAA;IAAAA,EAAA,GAAA5C,CAAA;EAAA;EAPAV,SAAA,CAAUmD,EAA+C,EAAGG,EAO5D;EAAA,IAAAO,EAAA;EAAA,IAAAnD,CAAA,SAAAS,kBAAA,IAAAT,CAAA,SAAAU,0BAAA,IAAAV,CAAA,SAAAa,MAAA;IAE4BsC,EAAA,GAAAA,CAAA;MACrBtC,MAAA;QAAAqB,SAAA;UAAAC,OAAA,EAEQ;QAAA;MAAA,CAEb;MAEAzB,0BAAA,EAA2B;MAC3BD,kBAAA,KAAmB;IAAA;IACrBT,CAAA,OAAAS,kBAAA;IAAAT,CAAA,OAAAU,0BAAA;IAAAV,CAAA,OAAAa,MAAA;IAAAb,CAAA,OAAAmD,EAAA;EAAA;IAAAA,EAAA,GAAAnD,CAAA;EAAA;EATA,MAAAoD,OAAA,GAAgBD,EAS2C;EAAA,IAAAE,EAAA;EAAA,IAAArD,CAAA,SAAAsB,GAAA,IAAAtB,CAAA,SAAAI,cAAA,IAAAJ,CAAA,SAAAM,UAAA,IAAAN,CAAA,SAAAG,EAAA,IAAAH,CAAA,SAAAqB,SAAA,IAAArB,CAAA,SAAAS,kBAAA,IAAAT,CAAA,SAAAa,MAAA;IAGzDwC,EAAA,GAAAC,QAAA;MACE,MAAAC,MAAA,GAAevE,EAAA,CAAAwE,SAAA;QAAAC,qBAAA,EACUxC;MAAA,CACzB;MAEA,MAAAyC,QAAA,GAAe,GAAGrC,SAAA,GAAYC,GAAA,GAC5BhB,UAAA,GAAa,YAAYA,UAAA,EAAY,GAAG,IAAIF,cAAA,IAAkBD,EAAA,GAAK,GAAG,MAAMA,EAAA,EAAI,GAAG,IAAI,GACtFoD,MAAA,GAAS,MAAMA,MAAA,GAAS,IAAI;MAE1B1C,MAAA;QAAAmB,MAAA,EACHA,QAAA;QAAAE,SAAA;UAAAC,OAAA,EAEW;QAAA;MAAA,CAEb;MAEA1B,kBAAA,KAAmB;IAAA;IACrBT,CAAA,OAAAsB,GAAA;IAAAtB,CAAA,OAAAI,cAAA;IAAAJ,CAAA,OAAAM,UAAA;IAAAN,CAAA,OAAAG,EAAA;IAAAH,CAAA,OAAAqB,SAAA;IAAArB,CAAA,OAAAS,kBAAA;IAAAT,CAAA,OAAAa,MAAA;IAAAb,CAAA,OAAAqD,EAAA;EAAA;IAAAA,EAAA,GAAArD,CAAA;EAAA;EAlBF,MAAAyD,qBAAA,GAA8BJ,EAmBgD;EAAA,KAGzE7C,oBAAA;IAAA;EAAA;EAOS,MAAAmD,EAAA,IAAChC,UAAA;EAAA,IAAAiC,GAAA;EAAA,IAAA5D,CAAA,SAAAgB,IAAA,IAAAhB,CAAA,SAAAuB,IAAA,EAAAsC,QAAA,IAAA7D,CAAA,SAAAkB,YAAA,IAAAlB,CAAA,SAAAyD,qBAAA,IAAAzD,CAAA,SAAAwB,CAAA;IAIToC,GAAA,GAAA1C,YAAA,GAAA4C,GAAA;MACK;QAAAC;MAAA,IAAAD,GAAS;MAAA,OACR5C,YAAA,CAAA8C,OAAA,CAAAC,GAAA,CAAAC,QAAA;QACE,MAAAC,cAAA,GACE,OAAOlD,QAAA,CAAAhB,KAAA,KAAiB,WACpBgB,QAAA,CAAAhB,KAAA,GACAgB,QAAA,CAAAhB,KAAA,IAAgBgB,QAAA,CAAAhB,KAAA,CAAasB,IAAA,EAAAsC,QAAA,CAAe;QAElD,MAAAO,QAAA,GAAiB,OAAOnD,QAAA,KAAW,WAAWA,QAAA,KAAWD,IAAA,GAAOC,QAAA,CAAAD,IAAA,KAAgBA,IAAA;QAAA,IAE5EoD,QAAA;UAAA,OAEAC,IAAA,CAAAxE,SAAA,CAAAyE,WAAA;YAAAC,QAAA,EACEF,IAAA,CAAAxE,SAAA,CAAA2E,MAAA;cAAAC,OAAA,EAAAA,CAAA,MACkBhB,qBAAA,CAAsBxC,QAAA,CAAAD,IAAW,GAAG+C,KAAA;cAAAQ,QAAA,EAEnD/C,CAAA,CAAE;gBAAAP,MAAA,EAA+BkD,cAAA,IAAkBlD,QAAA,CAAAD;cAAW,CAAC;YAAA,C;aAJxCC,QAAA,CAAAD,IAAW;QAAA;MAAA,CAS7C;IAAA,IAAA0D,SACF;IAAA1E,CAAA,OAAAgB,IAAA;IAAAhB,CAAA,OAAAuB,IAAA,EAAAsC,QAAA;IAAA7D,CAAA,OAAAkB,YAAA;IAAAlB,CAAA,OAAAyD,qBAAA;IAAAzD,CAAA,OAAAwB,CAAA;IAAAxB,CAAA,OAAA4D,GAAA;EAAA;IAAAA,GAAA,GAAA5D,CAAA;EAAA;EAAA,IAAA8D,GAAA;EAAA,IAAA9D,CAAA,SAAAC,KAAA,IAAAD,CAAA,SAAAoD,OAAA,IAAApD,CAAA,SAAA4D,GAAA,IAAA5D,CAAA,SAAA2D,EAAA;IA5BRG,GAAA,GAAAO,IAAA,CAAAhF,UAAA;MAAAsF,QAAA,EACW;MAAAC,QAAA,EACCjB,EAAC;MAAAc,OAAA,EACFrB,OAAA;MAAAyB,IAAA,EACJ;MAAAC,mBAAA,EAEHlB,GAsBI;MAAAmB,IAAA,EAED;MAAAR,QAAA,EAEJtE;IAAA,C;;;;;;;;;SAhCH6D,G;CAmCJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/PublishMany/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAKrD,OAAO,KAAgC,MAAM,OAAO,CAAA;AAYpD,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,sBAAsB,CAAA;CACnC,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAkJlD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/PublishMany/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAMrD,OAAO,KAAgC,MAAM,OAAO,CAAA;AAYpD,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,sBAAsB,CAAA;CACnC,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAsJlD,CAAA"}
@@ -3,16 +3,17 @@
3
3
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
4
  import { Modal, useModal } from '@faceless-ui/modal';
5
5
  import { getTranslation } from '@payloadcms/translations';
6
- import { useRouter } from 'next/navigation.js';
6
+ import { useRouter, useSearchParams } from 'next/navigation.js';
7
+ import * as qs from 'qs-esm';
7
8
  import React, { useCallback, useState } from 'react';
8
9
  import { toast } from 'sonner';
9
10
  import { useAuth } from '../../providers/Auth/index.js';
10
11
  import { useConfig } from '../../providers/Config/index.js';
11
12
  import { useRouteCache } from '../../providers/RouteCache/index.js';
12
- import { useSearchParams } from '../../providers/SearchParams/index.js';
13
13
  import { SelectAllStatus, useSelection } from '../../providers/Selection/index.js';
14
14
  import { useTranslation } from '../../providers/Translation/index.js';
15
15
  import { requests } from '../../utilities/api.js';
16
+ import { parseSearchParams } from '../../utilities/parseSearchParams.js';
16
17
  import { Button } from '../Button/index.js';
17
18
  import { Pill } from '../Pill/index.js';
18
19
  import './index.scss';
@@ -55,9 +56,7 @@ export const PublishMany = props => {
55
56
  } = useSelection();
56
57
  const [submitted, setSubmitted] = useState(false);
57
58
  const router = useRouter();
58
- const {
59
- stringifyParams
60
- } = useSearchParams();
59
+ const searchParams = useSearchParams();
61
60
  const collectionPermissions = permissions?.collections?.[slug];
62
61
  const hasPermission = collectionPermissions?.update;
63
62
  const modalSlug = `publish-${slug}`;
@@ -94,10 +93,11 @@ export const PublishMany = props => {
94
93
  description: json.errors.map(error => error.message).join('\n')
95
94
  });
96
95
  }
97
- router.replace(stringifyParams({
98
- params: {
99
- page: selectAll ? '1' : undefined
100
- }
96
+ router.replace(qs.stringify({
97
+ ...parseSearchParams(searchParams),
98
+ page: selectAll ? '1' : undefined
99
+ }, {
100
+ addQueryPrefix: true
101
101
  }));
102
102
  clearRouteCache() // Use clearRouteCache instead of router.refresh, as we only need to clear the cache if the user has route caching enabled - clearRouteCache checks for this
103
103
  ;
@@ -113,7 +113,7 @@ export const PublishMany = props => {
113
113
  return addDefaultError();
114
114
  }
115
115
  });
116
- }, [addDefaultError, api, getQueryParams, i18n, modalSlug, plural, selectAll, serverURL, singular, slug, t, toggleModal, router, stringifyParams, clearRouteCache]);
116
+ }, [serverURL, api, slug, getQueryParams, i18n, toggleModal, modalSlug, plural, singular, t, router, searchParams, selectAll, clearRouteCache, addDefaultError]);
117
117
  if (!versions?.drafts || selectAll === SelectAllStatus.None || !hasPermission) {
118
118
  return null;
119
119
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Modal","useModal","getTranslation","useRouter","React","useCallback","useState","toast","useAuth","useConfig","useRouteCache","useSearchParams","SelectAllStatus","useSelection","useTranslation","requests","Button","Pill","baseClass","PublishMany","props","clearRouteCache","collection","slug","labels","plural","singular","versions","config","routes","api","serverURL","permissions","toggleModal","i18n","t","getQueryParams","selectAll","submitted","setSubmitted","router","stringifyParams","collectionPermissions","collections","hasPermission","update","modalSlug","addDefaultError","error","handlePublish","patch","_status","not_equals","body","JSON","stringify","headers","language","then","res","json","deletedDocs","docs","length","successLabel","status","success","count","label","errors","message","description","map","join","replace","params","page","undefined","forEach","e","drafts","None","_jsxs","Fragment","_jsx","className","onClick","buttonStyle","id","size","type"],"sources":["../../../src/elements/PublishMany/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { Modal, useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { useSearchParams } from '../../providers/SearchParams/index.js'\nimport { SelectAllStatus, useSelection } from '../../providers/Selection/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { Button } from '../Button/index.js'\nimport { Pill } from '../Pill/index.js'\nimport './index.scss'\n\nconst baseClass = 'publish-many'\n\nexport type PublishManyProps = {\n collection: ClientCollectionConfig\n}\n\nexport const PublishMany: React.FC<PublishManyProps> = (props) => {\n const { clearRouteCache } = useRouteCache()\n\n const { collection: { slug, labels: { plural, singular }, versions } = {} } = props\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n const { permissions } = useAuth()\n const { toggleModal } = useModal()\n const { i18n, t } = useTranslation()\n const { getQueryParams, selectAll } = useSelection()\n const [submitted, setSubmitted] = useState(false)\n const router = useRouter()\n const { stringifyParams } = useSearchParams()\n\n const collectionPermissions = permissions?.collections?.[slug]\n const hasPermission = collectionPermissions?.update\n\n const modalSlug = `publish-${slug}`\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:unknown'))\n }, [t])\n\n const handlePublish = useCallback(async () => {\n setSubmitted(true)\n await requests\n .patch(\n `${serverURL}${api}/${slug}${getQueryParams({ _status: { not_equals: 'published' } })}&draft=true`,\n {\n body: JSON.stringify({\n _status: 'published',\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n },\n )\n .then(async (res) => {\n try {\n const json = await res.json()\n toggleModal(modalSlug)\n\n const deletedDocs = json?.docs.length || 0\n const successLabel = deletedDocs > 1 ? plural : singular\n\n if (res.status < 400 || deletedDocs > 0) {\n toast.success(\n t('general:updatedCountSuccessfully', {\n count: deletedDocs,\n label: getTranslation(successLabel, i18n),\n }),\n )\n if (json?.errors.length > 0) {\n toast.error(json.message, {\n description: json.errors.map((error) => error.message).join('\\n'),\n })\n }\n router.replace(\n stringifyParams({\n params: {\n page: selectAll ? '1' : undefined,\n },\n }),\n )\n\n clearRouteCache() // Use clearRouteCache instead of router.refresh, as we only need to clear the cache if the user has route caching enabled - clearRouteCache checks for this\n return null\n }\n\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n addDefaultError()\n }\n return false\n } catch (e) {\n return addDefaultError()\n }\n })\n }, [\n addDefaultError,\n api,\n getQueryParams,\n i18n,\n modalSlug,\n plural,\n selectAll,\n serverURL,\n singular,\n slug,\n t,\n toggleModal,\n router,\n stringifyParams,\n clearRouteCache,\n ])\n\n if (!versions?.drafts || selectAll === SelectAllStatus.None || !hasPermission) {\n return null\n }\n\n return (\n <React.Fragment>\n <Pill\n className={`${baseClass}__toggle`}\n onClick={() => {\n setSubmitted(false)\n toggleModal(modalSlug)\n }}\n >\n {t('version:publish')}\n </Pill>\n <Modal className={baseClass} slug={modalSlug}>\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('version:confirmPublish')}</h1>\n <p>{t('version:aboutToPublishSelection', { label: getTranslation(plural, i18n) })}</p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n id=\"confirm-cancel\"\n onClick={submitted ? undefined : () => toggleModal(modalSlug)}\n size=\"large\"\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button\n id=\"confirm-publish\"\n onClick={submitted ? undefined : handlePublish}\n size=\"large\"\n >\n {submitted ? t('version:publishing') : t('general:confirm')}\n </Button>\n </div>\n </div>\n </Modal>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Modal","useModal","getTranslation","useRouter","useSearchParams","qs","React","useCallback","useState","toast","useAuth","useConfig","useRouteCache","SelectAllStatus","useSelection","useTranslation","requests","parseSearchParams","Button","Pill","baseClass","PublishMany","props","clearRouteCache","collection","slug","labels","plural","singular","versions","config","routes","api","serverURL","permissions","toggleModal","i18n","t","getQueryParams","selectAll","submitted","setSubmitted","router","searchParams","collectionPermissions","collections","hasPermission","update","modalSlug","addDefaultError","error","handlePublish","patch","_status","not_equals","body","JSON","stringify","headers","language","then","res","json","deletedDocs","docs","length","successLabel","status","success","count","label","errors","message","description","map","join","replace","page","undefined","addQueryPrefix","forEach","e","drafts","None","_jsxs","Fragment","_jsx","className","onClick","buttonStyle","id","size","type"],"sources":["../../../src/elements/PublishMany/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { Modal, useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { SelectAllStatus, useSelection } from '../../providers/Selection/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { parseSearchParams } from '../../utilities/parseSearchParams.js'\nimport { Button } from '../Button/index.js'\nimport { Pill } from '../Pill/index.js'\nimport './index.scss'\n\nconst baseClass = 'publish-many'\n\nexport type PublishManyProps = {\n collection: ClientCollectionConfig\n}\n\nexport const PublishMany: React.FC<PublishManyProps> = (props) => {\n const { clearRouteCache } = useRouteCache()\n\n const { collection: { slug, labels: { plural, singular }, versions } = {} } = props\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n const { permissions } = useAuth()\n const { toggleModal } = useModal()\n const { i18n, t } = useTranslation()\n const { getQueryParams, selectAll } = useSelection()\n const [submitted, setSubmitted] = useState(false)\n const router = useRouter()\n const searchParams = useSearchParams()\n\n const collectionPermissions = permissions?.collections?.[slug]\n const hasPermission = collectionPermissions?.update\n\n const modalSlug = `publish-${slug}`\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:unknown'))\n }, [t])\n\n const handlePublish = useCallback(async () => {\n setSubmitted(true)\n await requests\n .patch(\n `${serverURL}${api}/${slug}${getQueryParams({ _status: { not_equals: 'published' } })}&draft=true`,\n {\n body: JSON.stringify({\n _status: 'published',\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n },\n )\n .then(async (res) => {\n try {\n const json = await res.json()\n toggleModal(modalSlug)\n\n const deletedDocs = json?.docs.length || 0\n const successLabel = deletedDocs > 1 ? plural : singular\n\n if (res.status < 400 || deletedDocs > 0) {\n toast.success(\n t('general:updatedCountSuccessfully', {\n count: deletedDocs,\n label: getTranslation(successLabel, i18n),\n }),\n )\n\n if (json?.errors.length > 0) {\n toast.error(json.message, {\n description: json.errors.map((error) => error.message).join('\\n'),\n })\n }\n\n router.replace(\n qs.stringify(\n {\n ...parseSearchParams(searchParams),\n page: selectAll ? '1' : undefined,\n },\n { addQueryPrefix: true },\n ),\n )\n\n clearRouteCache() // Use clearRouteCache instead of router.refresh, as we only need to clear the cache if the user has route caching enabled - clearRouteCache checks for this\n return null\n }\n\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n addDefaultError()\n }\n return false\n } catch (e) {\n return addDefaultError()\n }\n })\n }, [\n serverURL,\n api,\n slug,\n getQueryParams,\n i18n,\n toggleModal,\n modalSlug,\n plural,\n singular,\n t,\n router,\n searchParams,\n selectAll,\n clearRouteCache,\n addDefaultError,\n ])\n\n if (!versions?.drafts || selectAll === SelectAllStatus.None || !hasPermission) {\n return null\n }\n\n return (\n <React.Fragment>\n <Pill\n className={`${baseClass}__toggle`}\n onClick={() => {\n setSubmitted(false)\n toggleModal(modalSlug)\n }}\n >\n {t('version:publish')}\n </Pill>\n <Modal className={baseClass} slug={modalSlug}>\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('version:confirmPublish')}</h1>\n <p>{t('version:aboutToPublishSelection', { label: getTranslation(plural, i18n) })}</p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n id=\"confirm-cancel\"\n onClick={submitted ? undefined : () => toggleModal(modalSlug)}\n size=\"large\"\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button\n id=\"confirm-publish\"\n onClick={submitted ? undefined : handlePublish}\n size=\"large\"\n >\n {submitted ? t('version:publishing') : t('general:confirm')}\n </Button>\n </div>\n </div>\n </Modal>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import type { ControlProps } from 'react-select';
1
+ import type { InputProps } from 'react-select';
2
2
  import React from 'react';
3
3
  import type { Option } from '../types.js';
4
- export declare const Input: React.FC<ControlProps<Option, any>>;
4
+ export declare const Input: React.FC<InputProps<Option, any>>;
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/ReactSelect/Input/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAEhD,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAcrD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/ReactSelect/Input/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAE9C,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAanD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","components","SelectComponents","Input","props","_jsx","Fragment","undefined"],"sources":["../../../../src/elements/ReactSelect/Input/index.tsx"],"sourcesContent":["'use client'\nimport type { ControlProps } from 'react-select'\n\nimport React from 'react'\nimport { components as SelectComponents } from 'react-select'\n\nimport type { Option } from '../types.js'\n\nexport const Input: React.FC<ControlProps<Option, any>> = (props) => {\n return (\n <React.Fragment>\n {/* @ts-expect-error // TODO Fix this - Broke with React 19 types */}\n <SelectComponents.Input\n {...props}\n /**\n * Adding `aria-activedescendant` fixes hydration error\n * source: https://github.com/JedWatson/react-select/issues/5459#issuecomment-1878037196\n */\n aria-activedescendant={undefined}\n />\n </React.Fragment>\n )\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,KAAA,MAAW;AAClB,SAASC,UAAA,IAAcC,gBAAgB,QAAQ;AAI/C,OAAO,MAAMC,KAAA,GAA8CC,KAAA;EACzD,oBACEC,IAAA,CAACL,KAAA,CAAMM,QAAQ;cAEb,aAAAD,IAAA,CAACH,gBAAA,CAAiBC,KAAK;MACpB,GAAGC,KAAK;MACT;;;;MAIA,yBAAuBG;;;AAI/B","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","components","SelectComponents","Input","props","_jsx","Fragment","undefined"],"sources":["../../../../src/elements/ReactSelect/Input/index.tsx"],"sourcesContent":["'use client'\nimport type { InputProps } from 'react-select'\n\nimport React from 'react'\nimport { components as SelectComponents } from 'react-select'\n\nimport type { Option } from '../types.js'\n\nexport const Input: React.FC<InputProps<Option, any>> = (props) => {\n return (\n <React.Fragment>\n <SelectComponents.Input\n {...props}\n /**\n * Adding `aria-activedescendant` fixes hydration error\n * source: https://github.com/JedWatson/react-select/issues/5459#issuecomment-1878037196\n */\n aria-activedescendant={undefined}\n />\n </React.Fragment>\n )\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,KAAA,MAAW;AAClB,SAASC,UAAA,IAAcC,gBAAgB,QAAQ;AAI/C,OAAO,MAAMC,KAAA,GAA4CC,KAAA;EACvD,oBACEC,IAAA,CAACL,KAAA,CAAMM,QAAQ;cACb,aAAAD,IAAA,CAACH,gBAAA,CAAiBC,KAAK;MACpB,GAAGC,KAAK;MACT;;;;MAIA,yBAAuBG;;;AAI/B","ignoreList":[]}
@@ -86,7 +86,7 @@ export const MultiValue = props => {
86
86
  }
87
87
  const classes = t9.join(" ");
88
88
  let t10;
89
- if ($[14] !== isSortable || $[15] !== attributes || $[16] !== listeners || $[17] !== disableMouseDown || $[18] !== transform || $[19] !== innerProps || $[20] !== setNodeRef || $[21] !== props || $[22] !== classes) {
89
+ if ($[14] !== attributes || $[15] !== classes || $[16] !== disableMouseDown || $[17] !== innerProps || $[18] !== isSortable || $[19] !== listeners || $[20] !== props || $[21] !== setNodeRef || $[22] !== transform) {
90
90
  let t11;
91
91
  if ($[24] !== disableMouseDown) {
92
92
  t11 = e => {
@@ -118,15 +118,15 @@ export const MultiValue = props => {
118
118
  }
119
119
  })
120
120
  });
121
- $[14] = isSortable;
122
- $[15] = attributes;
123
- $[16] = listeners;
124
- $[17] = disableMouseDown;
125
- $[18] = transform;
126
- $[19] = innerProps;
127
- $[20] = setNodeRef;
128
- $[21] = props;
129
- $[22] = classes;
121
+ $[14] = attributes;
122
+ $[15] = classes;
123
+ $[16] = disableMouseDown;
124
+ $[17] = innerProps;
125
+ $[18] = isSortable;
126
+ $[19] = listeners;
127
+ $[20] = props;
128
+ $[21] = setNodeRef;
129
+ $[22] = transform;
130
130
  $[23] = t10;
131
131
  } else {
132
132
  t10 = $[23];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","components","SelectComponents","useDraggableSortable","baseClass","generateMultiValueDraggableID","optionData","valueFunction","value","MultiValue","props","$","className","data","innerProps","isDisabled","selectProps","t0","t1","undefined","customProps","t2","getOptionValue","isSortable","t3","disableMouseDown","t4","t5","t6","id","disabled","attributes","isDragging","listeners","setNodeRef","transform","t7","t8","t9","filter","Boolean","classes","join","t10","t11","e","stopPropagation","_jsx","Fragment","children","onMouseDown","ref","style"],"sources":["../../../../src/elements/ReactSelect/MultiValue/index.tsx"],"sourcesContent":["'use client'\nimport type { MultiValueProps } from 'react-select'\n\nimport React from 'react'\nimport { components as SelectComponents } from 'react-select'\n\nimport type { Option } from '../types.js'\n\nimport { useDraggableSortable } from '../../DraggableSortable/useDraggableSortable/index.js'\nimport './index.scss'\n\nconst baseClass = 'multi-value'\n\nexport function generateMultiValueDraggableID(optionData, valueFunction) {\n return typeof valueFunction === 'function' ? valueFunction(optionData) : optionData.value\n}\nexport const MultiValue: React.FC<MultiValueProps<Option>> = (props) => {\n const {\n className,\n data,\n innerProps,\n isDisabled,\n // @ts-expect-error // TODO Fix this - moduleResolution 16 breaks our declare module\n selectProps: { customProps: { disableMouseDown } = {}, getOptionValue, isSortable } = {},\n } = props\n\n const { attributes, isDragging, listeners, setNodeRef, transform } = useDraggableSortable({\n id: generateMultiValueDraggableID(data, getOptionValue),\n disabled: !isSortable,\n })\n\n const classes = [\n baseClass,\n className,\n !isDisabled && isSortable && 'draggable',\n isDragging && `${baseClass}--is-dragging`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <React.Fragment>\n <SelectComponents.MultiValue\n {...props}\n className={classes}\n innerProps={{\n ...(isSortable\n ? {\n ...attributes,\n ...listeners,\n }\n : {}),\n ...innerProps,\n onMouseDown: (e) => {\n if (!disableMouseDown) {\n // we need to prevent the dropdown from opening when clicking on the drag handle, but not when a modal is open (i.e. the 'Relationship' field component)\n e.stopPropagation()\n }\n },\n ref: setNodeRef,\n style: isSortable\n ? {\n transform,\n ...attributes?.style,\n }\n : {},\n }}\n />\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","components","SelectComponents","useDraggableSortable","baseClass","generateMultiValueDraggableID","optionData","valueFunction","value","MultiValue","props","$","className","data","innerProps","isDisabled","selectProps","t0","t1","undefined","customProps","t2","getOptionValue","isSortable","t3","disableMouseDown","t4","t5","t6","id","disabled","attributes","isDragging","listeners","setNodeRef","transform","t7","t8","t9","filter","Boolean","classes","join","t10","t11","e","stopPropagation","_jsx","Fragment","children","onMouseDown","ref","style"],"sources":["../../../../src/elements/ReactSelect/MultiValue/index.tsx"],"sourcesContent":["'use client'\nimport type { MultiValueProps } from 'react-select'\n\nimport React from 'react'\nimport { components as SelectComponents } from 'react-select'\n\nimport type { Option } from '../types.js'\n\nimport { useDraggableSortable } from '../../DraggableSortable/useDraggableSortable/index.js'\nimport './index.scss'\n\nconst baseClass = 'multi-value'\n\nexport function generateMultiValueDraggableID(optionData, valueFunction) {\n return typeof valueFunction === 'function' ? valueFunction(optionData) : optionData.value\n}\nexport const MultiValue: React.FC<MultiValueProps<Option>> = (props) => {\n const {\n className,\n data,\n innerProps,\n isDisabled,\n // @ts-expect-error // TODO Fix this - moduleResolution 16 breaks our declare module\n selectProps: { customProps: { disableMouseDown } = {}, getOptionValue, isSortable } = {},\n } = props\n\n const { attributes, isDragging, listeners, setNodeRef, transform } = useDraggableSortable({\n id: generateMultiValueDraggableID(data, getOptionValue),\n disabled: !isSortable,\n })\n\n const classes = [\n baseClass,\n className,\n !isDisabled && isSortable && 'draggable',\n isDragging && `${baseClass}--is-dragging`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <React.Fragment>\n <SelectComponents.MultiValue\n {...props}\n className={classes}\n innerProps={{\n ...(isSortable\n ? {\n ...attributes,\n ...listeners,\n }\n : {}),\n ...innerProps,\n onMouseDown: (e) => {\n if (!disableMouseDown) {\n // we need to prevent the dropdown from opening when clicking on the drag handle, but not when a modal is open (i.e. the 'Relationship' field component)\n e.stopPropagation()\n }\n },\n ref: setNodeRef,\n style: isSortable\n ? {\n transform,\n ...attributes?.style,\n }\n : {},\n }}\n />\n </React.Fragment>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,OAAOC,KAAA,MAAW;AAClB,SAASC,UAAA,IAAcC,gBAAgB,QAAQ;AAI/C,SAASC,oBAAoB,QAAQ;AACrC,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,SAASC,8BAA8BC,UAAU,EAAEC,aAAa;EACrE,OAAO,OAAOA,aAAA,KAAkB,aAAaA,aAAA,CAAcD,UAAA,IAAcA,UAAA,CAAWE,KAAK;AAC3F;AACA,OAAO,MAAMC,UAAA,GAAgDC,KAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EAC3D;IAAAa,SAAA;IAAAC,IAAA;IAAAC,UAAA;IAAAC,UAAA;IAAAC,WAAA,EAAAC;EAAA,IAOIP,KAAA;EAAA,IAAAQ,EAAA;EAAA,IAAAP,CAAA,QAAAM,EAAA;IADWC,EAAA,GAAAD,EAA2E,KAAAE,SAAA,QAA3EF,EAA2E;IAAAN,CAAA,MAAAM,EAAA;IAAAN,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EAA3E;IAAAS,WAAA,EAAAC,EAAA;IAAAC,cAAA;IAAAC;EAAA,IAAAL,EAA2E;EAAA,IAAAM,EAAA;EAAA,IAAAb,CAAA,QAAAU,EAAA;IAA5DG,EAAA,GAAAH,EAAyB,KAAAF,SAAA,QAAzBE,EAAyB;IAAAV,CAAA,MAAAU,EAAA;IAAAV,CAAA,MAAAa,EAAA;EAAA;IAAAA,EAAA,GAAAb,CAAA;EAAA;EAAzB;IAAAc;EAAA,IAAAD,EAAyB;EAAA,IAAAE,EAAA;EAAA,IAAAf,CAAA,QAAAE,IAAA,IAAAF,CAAA,QAAAW,cAAA;IAIjDI,EAAA,GAAArB,6BAAA,CAA8BQ,IAAA,EAAMS,cAAA;IAAAX,CAAA,MAAAE,IAAA;IAAAF,CAAA,MAAAW,cAAA;IAAAX,CAAA,MAAAe,EAAA;EAAA;IAAAA,EAAA,GAAAf,CAAA;EAAA;EAC9B,MAAAgB,EAAA,IAACJ,UAAA;EAAA,IAAAK,EAAA;EAAA,IAAAjB,CAAA,QAAAe,EAAA,IAAAf,CAAA,QAAAgB,EAAA;IAF6EC,EAAA;MAAAC,EAAA,EACpFH,EAAoC;MAAAI,QAAA,EAC9BH;IAAC;IACbhB,CAAA,MAAAe,EAAA;IAAAf,CAAA,MAAAgB,EAAA;IAAAhB,CAAA,MAAAiB,EAAA;EAAA;IAAAA,EAAA,GAAAjB,CAAA;EAAA;EAHA;IAAAoB,UAAA;IAAAC,UAAA;IAAAC,SAAA;IAAAC,UAAA;IAAAC;EAAA,IAAqEhC,oBAAA,CAAqByB,EAG1F;EAKE,MAAAQ,EAAA,IAACrB,UAAA,IAAcQ,UAAA,IAAc;EAC7B,MAAAc,EAAA,GAAAL,UAAA,IAAc,GAAA5B,SAAA,eAA2B;EAAA,IAAAkC,EAAA;EAAA,IAAA3B,CAAA,SAAAC,SAAA,IAAAD,CAAA,SAAAyB,EAAA,IAAAzB,CAAA,SAAA0B,EAAA;IAJ3BC,EAAA,IAAAlC,SAAA,EAEdQ,SAAA,EACAwB,EAA6B,EAC7BC,EAAyC,EAAAE,MAAA,CAAAC,OAEjC;IAAA7B,CAAA,OAAAC,SAAA;IAAAD,CAAA,OAAAyB,EAAA;IAAAzB,CAAA,OAAA0B,EAAA;IAAA1B,CAAA,OAAA2B,EAAA;EAAA;IAAAA,EAAA,GAAA3B,CAAA;EAAA;EANV,MAAA8B,OAAA,GAAgBH,EAMN,CAAAI,IAAA,CACF;EAAA,IAAAC,GAAA;EAAA,IAAAhC,CAAA,SAAAoB,UAAA,IAAApB,CAAA,SAAA8B,OAAA,IAAA9B,CAAA,SAAAc,gBAAA,IAAAd,CAAA,SAAAG,UAAA,IAAAH,CAAA,SAAAY,UAAA,IAAAZ,CAAA,SAAAsB,SAAA,IAAAtB,CAAA,SAAAD,KAAA,IAAAC,CAAA,SAAAuB,UAAA,IAAAvB,CAAA,SAAAwB,SAAA;IAAA,IAAAS,GAAA;IAAA,IAAAjC,CAAA,SAAAc,gBAAA;MAeamB,GAAA,GAAAC,CAAA;QAAA,KACNpB,gBAAA;UAEHoB,CAAA,CAAAC,eAAA,CAAiB;QAAA;MAAA;MAErBnC,CAAA,OAAAc,gBAAA;MAAAd,CAAA,OAAAiC,GAAA;IAAA;MAAAA,GAAA,GAAAjC,CAAA;IAAA;IAjBNgC,GAAA,GAAAI,IAAA,CAAA/C,KAAA,CAAAgD,QAAA;MAAAC,QAAA,EACEF,IAAA,CAAA7C,gBAAA,CAAAO,UAAA;QAAA,GACMC,KAAK;QAAAE,SAAA,EACE6B,OAAA;QAAA3B,UAAA;UAAA,IAELS,UAAA;YAAA,GAEKQ,UAAU;YAAA,GACVE;UAAS,MAEZ;UAAA,GACHnB,UAAU;UAAAoC,WAAA,EACAN,GAKb;UAAAO,GAAA,EACKjB,UAAA;UAAAkB,KAAA,EACE7B,UAAA;YAAAY,SAAA;YAAA,GAGEJ,UAAA,EAAAqB;UAAA;QAEJ;MAAA,C;;;;;;;;;;;;;;;SAxBXT,G;CA6BJ","ignoreList":[]}