@payloadcms/ui 4.0.0-internal.af6aad0 → 4.0.0-internal.b8e7c89

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 (510) hide show
  1. package/dist/elements/AddNewRelation/index.css +4 -0
  2. package/dist/elements/AddNewRelation/index.js +2 -2
  3. package/dist/elements/AddNewRelation/index.js.map +1 -1
  4. package/dist/elements/AppHeader/index.css +0 -4
  5. package/dist/elements/AppHeader/index.d.ts +8 -1
  6. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  7. package/dist/elements/AppHeader/index.js +14 -5
  8. package/dist/elements/AppHeader/index.js.map +1 -1
  9. package/dist/elements/Autosave/index.d.ts.map +1 -1
  10. package/dist/elements/Autosave/index.js +2 -3
  11. package/dist/elements/Autosave/index.js.map +1 -1
  12. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  13. package/dist/elements/BulkUpload/FormsManager/index.js +2 -3
  14. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  15. package/dist/elements/Button/index.css +0 -23
  16. package/dist/elements/Button/types.d.ts +1 -1
  17. package/dist/elements/Button/types.d.ts.map +1 -1
  18. package/dist/elements/Button/types.js.map +1 -1
  19. package/dist/elements/CopyLocaleData/index.d.ts.map +1 -1
  20. package/dist/elements/CopyLocaleData/index.js +8 -9
  21. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  22. package/dist/elements/DefaultListViewTabs/index.css +0 -1
  23. package/dist/elements/DefaultListViewTabs/index.d.ts.map +1 -1
  24. package/dist/elements/DefaultListViewTabs/index.js +62 -84
  25. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  26. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  27. package/dist/elements/DeleteMany/index.js +2 -3
  28. package/dist/elements/DeleteMany/index.js.map +1 -1
  29. package/dist/elements/DocumentDrawer/types.d.ts +1 -1
  30. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  31. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  32. package/dist/elements/Drawer/types.d.ts +2 -2
  33. package/dist/elements/Drawer/types.d.ts.map +1 -1
  34. package/dist/elements/Drawer/types.js.map +1 -1
  35. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  36. package/dist/elements/DuplicateDocument/index.js +2 -3
  37. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  38. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  39. package/dist/elements/EditMany/DrawerContent.js +2 -3
  40. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  41. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.css +4 -22
  42. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.d.ts.map +1 -1
  43. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js +49 -68
  44. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js.map +1 -1
  45. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.css +15 -100
  46. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.d.ts.map +1 -1
  47. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js +137 -97
  48. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js.map +1 -1
  49. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts +1 -1
  50. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -1
  51. package/dist/elements/Hierarchy/ColumnBrowser/index.js +23 -51
  52. package/dist/elements/Hierarchy/ColumnBrowser/index.js.map +1 -1
  53. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts +3 -26
  54. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts.map +1 -1
  55. package/dist/elements/Hierarchy/ColumnBrowser/types.js.map +1 -1
  56. package/dist/elements/Hierarchy/DocHeaderButton/index.d.ts.map +1 -1
  57. package/dist/elements/Hierarchy/DocHeaderButton/index.js +1 -6
  58. package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -1
  59. package/dist/elements/Hierarchy/DocHeaderButton/index.server.js +3 -1
  60. package/dist/elements/Hierarchy/DocHeaderButton/index.server.js.map +1 -1
  61. package/dist/elements/Hierarchy/Field/SelectedHierarchies.css +36 -0
  62. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts +13 -0
  63. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +1 -0
  64. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +141 -0
  65. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +1 -0
  66. package/dist/elements/Hierarchy/Field/index.client.d.ts +0 -5
  67. package/dist/elements/Hierarchy/Field/index.client.d.ts.map +1 -1
  68. package/dist/elements/Hierarchy/Field/index.client.js +95 -120
  69. package/dist/elements/Hierarchy/Field/index.client.js.map +1 -1
  70. package/dist/elements/Hierarchy/Field/index.css +34 -3
  71. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts +4 -18
  72. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -1
  73. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js +24 -88
  74. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -1
  75. package/dist/elements/Hierarchy/Modal/index.css +53 -4
  76. package/dist/elements/Hierarchy/Modal/index.d.ts +2 -5
  77. package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -1
  78. package/dist/elements/Hierarchy/Modal/index.js +99 -136
  79. package/dist/elements/Hierarchy/Modal/index.js.map +1 -1
  80. package/dist/elements/Hierarchy/Modal/types.d.ts +0 -15
  81. package/dist/elements/Hierarchy/Modal/types.d.ts.map +1 -1
  82. package/dist/elements/Hierarchy/Modal/types.js.map +1 -1
  83. package/dist/elements/Hierarchy/MoveMany/index.d.ts +3 -7
  84. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
  85. package/dist/elements/Hierarchy/MoveMany/index.js +171 -45
  86. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
  87. package/dist/elements/Hierarchy/Search/index.css +9 -2
  88. package/dist/elements/Hierarchy/Search/index.d.ts.map +1 -1
  89. package/dist/elements/Hierarchy/Search/index.js +73 -6
  90. package/dist/elements/Hierarchy/Search/index.js.map +1 -1
  91. package/dist/elements/Hierarchy/Search/types.d.ts +6 -2
  92. package/dist/elements/Hierarchy/Search/types.d.ts.map +1 -1
  93. package/dist/elements/Hierarchy/Search/types.js.map +1 -1
  94. package/dist/elements/Hierarchy/Search/useHierarchySearch.d.ts.map +1 -1
  95. package/dist/elements/Hierarchy/Search/useHierarchySearch.js +2 -3
  96. package/dist/elements/Hierarchy/Search/useHierarchySearch.js.map +1 -1
  97. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts +4 -0
  98. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -1
  99. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +186 -101
  100. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
  101. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.d.ts.map +1 -1
  102. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js +21 -1
  103. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js.map +1 -1
  104. package/dist/elements/Hierarchy/Tree/LoadMore/index.css +3 -3
  105. package/dist/elements/Hierarchy/Tree/TreeNode/index.css +29 -59
  106. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts +1 -1
  107. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
  108. package/dist/elements/Hierarchy/Tree/TreeNode/index.js +10 -54
  109. package/dist/elements/Hierarchy/Tree/TreeNode/index.js.map +1 -1
  110. package/dist/elements/Hierarchy/Tree/index.css +9 -8
  111. package/dist/elements/Hierarchy/Tree/index.d.ts.map +1 -1
  112. package/dist/elements/Hierarchy/Tree/index.js +47 -29
  113. package/dist/elements/Hierarchy/Tree/index.js.map +1 -1
  114. package/dist/elements/Hierarchy/Tree/types.d.ts +1 -9
  115. package/dist/elements/Hierarchy/Tree/types.d.ts.map +1 -1
  116. package/dist/elements/Hierarchy/Tree/types.js.map +1 -1
  117. package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -1
  118. package/dist/elements/Hierarchy/Tree/useChildren.js +1 -11
  119. package/dist/elements/Hierarchy/Tree/useChildren.js.map +1 -1
  120. package/dist/elements/ListControls/index.d.ts.map +1 -1
  121. package/dist/elements/ListControls/index.js +2 -3
  122. package/dist/elements/ListControls/index.js.map +1 -1
  123. package/dist/elements/ListControls/types.d.ts +0 -4
  124. package/dist/elements/ListControls/types.d.ts.map +1 -1
  125. package/dist/elements/ListControls/types.js.map +1 -1
  126. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.d.ts.map +1 -1
  127. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +2 -3
  128. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  129. package/dist/elements/LivePreview/Window/index.js +1 -1
  130. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  131. package/dist/elements/Localizer/index.js +1 -1
  132. package/dist/elements/Localizer/index.js.map +1 -1
  133. package/dist/elements/Nav/NavSidebarToggle/index.js +1 -1
  134. package/dist/elements/Nav/NavSidebarToggle/index.js.map +1 -1
  135. package/dist/elements/Nav/NavWrapper/index.d.ts +0 -1
  136. package/dist/elements/Nav/NavWrapper/index.d.ts.map +1 -1
  137. package/dist/elements/Nav/NavWrapper/index.js +18 -12
  138. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  139. package/dist/elements/Nav/SidebarTabs/index.css +2 -1
  140. package/dist/elements/Nav/context.d.ts +1 -0
  141. package/dist/elements/Nav/context.d.ts.map +1 -1
  142. package/dist/elements/Nav/context.js +67 -92
  143. package/dist/elements/Nav/context.js.map +1 -1
  144. package/dist/elements/Nav/index.css +42 -47
  145. package/dist/elements/Nav/index.d.ts +0 -4
  146. package/dist/elements/Nav/index.d.ts.map +1 -1
  147. package/dist/elements/Nav/index.js +1 -16
  148. package/dist/elements/Nav/index.js.map +1 -1
  149. package/dist/elements/NavGroup/index.css +15 -29
  150. package/dist/elements/Popup/PopupButtonList/index.css +16 -32
  151. package/dist/elements/Popup/index.css +0 -6
  152. package/dist/elements/Popup/index.d.ts +0 -10
  153. package/dist/elements/Popup/index.d.ts.map +1 -1
  154. package/dist/elements/Popup/index.js +5 -12
  155. package/dist/elements/Popup/index.js.map +1 -1
  156. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
  157. package/dist/elements/PublishButton/ScheduleDrawer/index.js +8 -30
  158. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  159. package/dist/elements/PublishButton/ScheduleDrawer/types.d.ts +1 -1
  160. package/dist/elements/PublishButton/ScheduleDrawer/types.d.ts.map +1 -1
  161. package/dist/elements/PublishButton/ScheduleDrawer/types.js.map +1 -1
  162. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  163. package/dist/elements/PublishButton/index.js +5 -6
  164. package/dist/elements/PublishButton/index.js.map +1 -1
  165. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  166. package/dist/elements/PublishMany/DrawerContent.js +2 -3
  167. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  168. package/dist/elements/ReactSelect/types.d.ts +0 -5
  169. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  170. package/dist/elements/ReactSelect/types.js.map +1 -1
  171. package/dist/elements/RestoreMany/index.d.ts.map +1 -1
  172. package/dist/elements/RestoreMany/index.js +2 -3
  173. package/dist/elements/RestoreMany/index.js.map +1 -1
  174. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  175. package/dist/elements/SaveDraftButton/index.js +2 -3
  176. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  177. package/dist/elements/SelectAll/index.d.ts.map +1 -1
  178. package/dist/elements/SelectAll/index.js +2 -1
  179. package/dist/elements/SelectAll/index.js.map +1 -1
  180. package/dist/elements/SelectRow/index.d.ts.map +1 -1
  181. package/dist/elements/SelectRow/index.js +2 -1
  182. package/dist/elements/SelectRow/index.js.map +1 -1
  183. package/dist/elements/SidebarRow/index.css +5 -1
  184. package/dist/elements/SidebarToggle/index.css +1 -3
  185. package/dist/elements/Status/index.d.ts.map +1 -1
  186. package/dist/elements/Status/index.js +2 -3
  187. package/dist/elements/Status/index.js.map +1 -1
  188. package/dist/elements/StepNav/index.d.ts.map +1 -1
  189. package/dist/elements/StepNav/index.js +10 -14
  190. package/dist/elements/StepNav/index.js.map +1 -1
  191. package/dist/elements/StepNav/types.d.ts +0 -6
  192. package/dist/elements/StepNav/types.d.ts.map +1 -1
  193. package/dist/elements/StepNav/types.js.map +1 -1
  194. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.css +7 -5
  195. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.d.ts.map +1 -1
  196. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js +3 -14
  197. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js.map +1 -1
  198. package/dist/elements/Table/OrderableTable.d.ts.map +1 -1
  199. package/dist/elements/Table/OrderableTable.js +2 -3
  200. package/dist/elements/Table/OrderableTable.js.map +1 -1
  201. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  202. package/dist/elements/Table/RelationshipProvider/index.js +2 -3
  203. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  204. package/dist/elements/UnpublishButton/index.d.ts.map +1 -1
  205. package/dist/elements/UnpublishButton/index.js +3 -4
  206. package/dist/elements/UnpublishButton/index.js.map +1 -1
  207. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  208. package/dist/elements/UnpublishMany/DrawerContent.js +2 -3
  209. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  210. package/dist/elements/UserMenu/LanguageMenu/index.d.ts.map +1 -1
  211. package/dist/elements/UserMenu/LanguageMenu/index.js +39 -83
  212. package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -1
  213. package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -1
  214. package/dist/elements/UserMenu/SettingsMenu/index.js +21 -57
  215. package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -1
  216. package/dist/elements/UserMenu/ThemeMenu/index.d.ts.map +1 -1
  217. package/dist/elements/UserMenu/ThemeMenu/index.js +39 -83
  218. package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -1
  219. package/dist/elements/UserMenu/index.css +2 -32
  220. package/dist/elements/UserMenu/index.d.ts +0 -1
  221. package/dist/elements/UserMenu/index.d.ts.map +1 -1
  222. package/dist/elements/UserMenu/index.js +51 -77
  223. package/dist/elements/UserMenu/index.js.map +1 -1
  224. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +1 -1
  225. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  226. package/dist/exports/client/index.d.ts +0 -4
  227. package/dist/exports/client/index.d.ts.map +1 -1
  228. package/dist/exports/client/index.js +1 -1
  229. package/dist/exports/client/index.js.map +3 -3
  230. package/dist/fields/Array/index.d.ts.map +1 -1
  231. package/dist/fields/Array/index.js +2 -3
  232. package/dist/fields/Array/index.js.map +1 -1
  233. package/dist/fields/Blocks/index.d.ts.map +1 -1
  234. package/dist/fields/Blocks/index.js +2 -3
  235. package/dist/fields/Blocks/index.js.map +1 -1
  236. package/dist/fields/Checkbox/Input.d.ts +2 -2
  237. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  238. package/dist/fields/Checkbox/Input.js +152 -134
  239. package/dist/fields/Checkbox/Input.js.map +1 -1
  240. package/dist/fields/Checkbox/index.css +155 -168
  241. package/dist/fields/FieldLabel/index.d.ts.map +1 -1
  242. package/dist/fields/FieldLabel/index.js +4 -5
  243. package/dist/fields/FieldLabel/index.js.map +1 -1
  244. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  245. package/dist/fields/Relationship/Input.js +8 -27
  246. package/dist/fields/Relationship/Input.js.map +1 -1
  247. package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
  248. package/dist/fields/Relationship/optionsReducer.js +0 -2
  249. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  250. package/dist/fields/Relationship/types.d.ts +0 -24
  251. package/dist/fields/Relationship/types.d.ts.map +1 -1
  252. package/dist/fields/Relationship/types.js.map +1 -1
  253. package/dist/fields/Slug/index.d.ts.map +1 -1
  254. package/dist/fields/Slug/index.js +2 -3
  255. package/dist/fields/Slug/index.js.map +1 -1
  256. package/dist/fields/Upload/Input.d.ts.map +1 -1
  257. package/dist/fields/Upload/Input.js +2 -3
  258. package/dist/fields/Upload/Input.js.map +1 -1
  259. package/dist/fields/Upload/Input.spec.js +2 -1
  260. package/dist/fields/Upload/Input.spec.js.map +1 -1
  261. package/dist/fields/shared/index.d.ts +1 -1
  262. package/dist/fields/shared/index.d.ts.map +1 -1
  263. package/dist/fields/shared/index.js.map +1 -1
  264. package/dist/forms/Form/index.d.ts.map +1 -1
  265. package/dist/forms/Form/index.js +2 -3
  266. package/dist/forms/Form/index.js.map +1 -1
  267. package/dist/forms/NullifyField/index.d.ts.map +1 -1
  268. package/dist/forms/NullifyField/index.js +2 -3
  269. package/dist/forms/NullifyField/index.js.map +1 -1
  270. package/dist/hooks/usePayloadAPI.d.ts.map +1 -1
  271. package/dist/hooks/usePayloadAPI.js +2 -3
  272. package/dist/hooks/usePayloadAPI.js.map +1 -1
  273. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  274. package/dist/providers/DocumentInfo/index.js +2 -3
  275. package/dist/providers/DocumentInfo/index.js.map +1 -1
  276. package/dist/providers/Hierarchy/index.d.ts.map +1 -1
  277. package/dist/providers/Hierarchy/index.js +24 -53
  278. package/dist/providers/Hierarchy/index.js.map +1 -1
  279. package/dist/providers/Hierarchy/types.d.ts +0 -2
  280. package/dist/providers/Hierarchy/types.d.ts.map +1 -1
  281. package/dist/providers/Hierarchy/types.js.map +1 -1
  282. package/dist/providers/LivePreview/index.d.ts.map +1 -1
  283. package/dist/providers/LivePreview/index.js +13 -6
  284. package/dist/providers/LivePreview/index.js.map +1 -1
  285. package/dist/providers/Locale/index.d.ts +1 -5
  286. package/dist/providers/Locale/index.d.ts.map +1 -1
  287. package/dist/providers/Locale/index.js +61 -139
  288. package/dist/providers/Locale/index.js.map +1 -1
  289. package/dist/providers/Selection/index.d.ts.map +1 -1
  290. package/dist/providers/Selection/index.js +2 -3
  291. package/dist/providers/Selection/index.js.map +1 -1
  292. package/dist/providers/ServerFunctions/index.d.ts +5 -1
  293. package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
  294. package/dist/providers/ServerFunctions/index.js +15 -0
  295. package/dist/providers/ServerFunctions/index.js.map +1 -1
  296. package/dist/providers/TableColumns/buildColumnState/index.d.ts.map +1 -1
  297. package/dist/providers/TableColumns/buildColumnState/index.js +0 -1
  298. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  299. package/dist/styles.css +1 -1
  300. package/dist/templates/Default/Wrapper/index.css +1 -2
  301. package/dist/templates/Default/Wrapper/index.d.ts +0 -2
  302. package/dist/templates/Default/Wrapper/index.d.ts.map +1 -1
  303. package/dist/templates/Default/Wrapper/index.js +6 -12
  304. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  305. package/dist/templates/Default/index.css +1 -3
  306. package/dist/templates/Default/index.d.ts.map +1 -1
  307. package/dist/templates/Default/index.js +15 -17
  308. package/dist/templates/Default/index.js.map +1 -1
  309. package/dist/utilities/formatAbsoluteURL.d.ts +1 -1
  310. package/dist/utilities/formatAbsoluteURL.d.ts.map +1 -1
  311. package/dist/utilities/formatAbsoluteURL.js +18 -8
  312. package/dist/utilities/formatAbsoluteURL.js.map +1 -1
  313. package/dist/utilities/formatAbsoluteURL.spec.js +27 -0
  314. package/dist/utilities/formatAbsoluteURL.spec.js.map +1 -0
  315. package/dist/utilities/getHasScheduledPublish.d.ts +2 -3
  316. package/dist/utilities/getHasScheduledPublish.d.ts.map +1 -1
  317. package/dist/utilities/getHasScheduledPublish.js +2 -5
  318. package/dist/utilities/getHasScheduledPublish.js.map +1 -1
  319. package/dist/utilities/isAbsoluteURL.d.ts +3 -0
  320. package/dist/utilities/isAbsoluteURL.d.ts.map +1 -0
  321. package/dist/utilities/isAbsoluteURL.js +15 -0
  322. package/dist/utilities/isAbsoluteURL.js.map +1 -0
  323. package/dist/utilities/isAbsoluteURL.spec.js +11 -0
  324. package/dist/utilities/isAbsoluteURL.spec.js.map +1 -0
  325. package/dist/utilities/isHttpURL.d.ts +3 -0
  326. package/dist/utilities/isHttpURL.d.ts.map +1 -0
  327. package/dist/utilities/isHttpURL.js +12 -0
  328. package/dist/utilities/isHttpURL.js.map +1 -0
  329. package/dist/utilities/isHttpURL.spec.js +25 -0
  330. package/dist/utilities/isHttpURL.spec.js.map +1 -0
  331. package/dist/utilities/schedulePublishHandler.d.ts +8 -1
  332. package/dist/utilities/schedulePublishHandler.d.ts.map +1 -1
  333. package/dist/utilities/schedulePublishHandler.js +68 -4
  334. package/dist/utilities/schedulePublishHandler.js.map +1 -1
  335. package/dist/utilities/serverFunctionRegistry.d.ts.map +1 -1
  336. package/dist/utilities/serverFunctionRegistry.js +2 -1
  337. package/dist/utilities/serverFunctionRegistry.js.map +1 -1
  338. package/dist/utilities/slugify.d.ts.map +1 -1
  339. package/dist/utilities/slugify.js +2 -0
  340. package/dist/utilities/slugify.js.map +1 -1
  341. package/dist/views/API/index.client.d.ts.map +1 -1
  342. package/dist/views/API/index.client.js +2 -3
  343. package/dist/views/API/index.client.js.map +1 -1
  344. package/dist/views/Document/index.d.ts.map +1 -1
  345. package/dist/views/Document/index.js +1 -2
  346. package/dist/views/Document/index.js.map +1 -1
  347. package/dist/views/HierarchyList/DocumentListSelection/index.d.ts.map +1 -1
  348. package/dist/views/HierarchyList/DocumentListSelection/index.js +105 -100
  349. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  350. package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts +1 -6
  351. package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts.map +1 -1
  352. package/dist/views/HierarchyList/HierarchyListHeader/index.js +8 -10
  353. package/dist/views/HierarchyList/HierarchyListHeader/index.js.map +1 -1
  354. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.d.ts.map +1 -1
  355. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js +10 -11
  356. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js.map +1 -1
  357. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts.map +1 -1
  358. package/dist/views/HierarchyList/HierarchyTable/SlotTable.js +6 -3
  359. package/dist/views/HierarchyList/HierarchyTable/SlotTable.js.map +1 -1
  360. package/dist/views/HierarchyList/HierarchyTable/index.css +0 -51
  361. package/dist/views/HierarchyList/HierarchyTable/index.d.ts +1 -13
  362. package/dist/views/HierarchyList/HierarchyTable/index.d.ts.map +1 -1
  363. package/dist/views/HierarchyList/HierarchyTable/index.js +38 -156
  364. package/dist/views/HierarchyList/HierarchyTable/index.js.map +1 -1
  365. package/dist/views/HierarchyList/HierarchyTable/types.d.ts +0 -6
  366. package/dist/views/HierarchyList/HierarchyTable/types.d.ts.map +1 -1
  367. package/dist/views/HierarchyList/HierarchyTable/types.js.map +1 -1
  368. package/dist/views/HierarchyList/index.d.ts.map +1 -1
  369. package/dist/views/HierarchyList/index.js +20 -103
  370. package/dist/views/HierarchyList/index.js.map +1 -1
  371. package/dist/views/List/ListSelection/index.d.ts.map +1 -1
  372. package/dist/views/List/ListSelection/index.js +122 -138
  373. package/dist/views/List/ListSelection/index.js.map +1 -1
  374. package/dist/views/List/handleHierarchy.d.ts +1 -6
  375. package/dist/views/List/handleHierarchy.d.ts.map +1 -1
  376. package/dist/views/List/handleHierarchy.js +3 -34
  377. package/dist/views/List/handleHierarchy.js.map +1 -1
  378. package/dist/views/List/index.client.d.ts.map +1 -1
  379. package/dist/views/List/index.client.js +5 -129
  380. package/dist/views/List/index.client.js.map +1 -1
  381. package/dist/views/List/index.d.ts.map +1 -1
  382. package/dist/views/List/index.js +16 -27
  383. package/dist/views/List/index.js.map +1 -1
  384. package/dist/views/Root/getRouteData.d.ts.map +1 -1
  385. package/dist/views/Root/getRouteData.js +2 -8
  386. package/dist/views/Root/getRouteData.js.map +1 -1
  387. package/dist/views/Version/Default/SetStepNav.d.ts.map +1 -1
  388. package/dist/views/Version/Default/SetStepNav.js +10 -13
  389. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  390. package/dist/views/Version/Default/index.d.ts.map +1 -1
  391. package/dist/views/Version/Default/index.js +12 -13
  392. package/dist/views/Version/Default/index.js.map +1 -1
  393. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts +1 -0
  394. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts.map +1 -1
  395. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +56 -50
  396. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  397. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
  398. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +41 -27
  399. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  400. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.spec.js +258 -0
  401. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.spec.js.map +1 -0
  402. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts.map +1 -1
  403. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +10 -0
  404. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  405. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.d.ts.map +1 -1
  406. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +33 -1
  407. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  408. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js +56 -2
  409. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js.map +1 -1
  410. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.d.ts +8 -2
  411. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.d.ts.map +1 -1
  412. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +17 -19
  413. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  414. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +3 -13
  415. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +1 -1
  416. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.d.ts.map +1 -1
  417. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.js +2 -3
  418. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.js.map +1 -1
  419. package/package.json +6 -5
  420. package/dist/elements/Hierarchy/CreateNewButton/index.css +0 -9
  421. package/dist/elements/Hierarchy/CreateNewButton/index.d.ts +0 -9
  422. package/dist/elements/Hierarchy/CreateNewButton/index.d.ts.map +0 -1
  423. package/dist/elements/Hierarchy/CreateNewButton/index.js +0 -111
  424. package/dist/elements/Hierarchy/CreateNewButton/index.js.map +0 -1
  425. package/dist/elements/Hierarchy/Modal/Footer/index.css +0 -45
  426. package/dist/elements/Hierarchy/Modal/Footer/index.d.ts +0 -28
  427. package/dist/elements/Hierarchy/Modal/Footer/index.d.ts.map +0 -1
  428. package/dist/elements/Hierarchy/Modal/Footer/index.js +0 -166
  429. package/dist/elements/Hierarchy/Modal/Footer/index.js.map +0 -1
  430. package/dist/elements/Hierarchy/getFolderHierarchySlug.d.ts +0 -22
  431. package/dist/elements/Hierarchy/getFolderHierarchySlug.d.ts.map +0 -1
  432. package/dist/elements/Hierarchy/getFolderHierarchySlug.js +0 -17
  433. package/dist/elements/Hierarchy/getFolderHierarchySlug.js.map +0 -1
  434. package/dist/elements/Hierarchy/move/moveDocuments.d.ts +0 -34
  435. package/dist/elements/Hierarchy/move/moveDocuments.d.ts.map +0 -1
  436. package/dist/elements/Hierarchy/move/moveDocuments.js +0 -94
  437. package/dist/elements/Hierarchy/move/moveDocuments.js.map +0 -1
  438. package/dist/elements/SegmentedControl/index.css +0 -58
  439. package/dist/elements/SegmentedControl/index.d.ts +0 -19
  440. package/dist/elements/SegmentedControl/index.d.ts.map +0 -1
  441. package/dist/elements/SegmentedControl/index.js +0 -104
  442. package/dist/elements/SegmentedControl/index.js.map +0 -1
  443. package/dist/elements/StepNav/DropTarget/index.css +0 -20
  444. package/dist/elements/StepNav/DropTarget/index.d.ts +0 -16
  445. package/dist/elements/StepNav/DropTarget/index.d.ts.map +0 -1
  446. package/dist/elements/StepNav/DropTarget/index.js +0 -71
  447. package/dist/elements/StepNav/DropTarget/index.js.map +0 -1
  448. package/dist/elements/UserMenu/HoverSubmenuGroup.d.ts +0 -18
  449. package/dist/elements/UserMenu/HoverSubmenuGroup.d.ts.map +0 -1
  450. package/dist/elements/UserMenu/HoverSubmenuGroup.js +0 -38
  451. package/dist/elements/UserMenu/HoverSubmenuGroup.js.map +0 -1
  452. package/dist/elements/UserMenu/useHoverSubmenu.d.ts +0 -21
  453. package/dist/elements/UserMenu/useHoverSubmenu.d.ts.map +0 -1
  454. package/dist/elements/UserMenu/useHoverSubmenu.js +0 -260
  455. package/dist/elements/UserMenu/useHoverSubmenu.js.map +0 -1
  456. package/dist/elements/ViewModeToggle/index.d.ts +0 -8
  457. package/dist/elements/ViewModeToggle/index.d.ts.map +0 -1
  458. package/dist/elements/ViewModeToggle/index.js +0 -29
  459. package/dist/elements/ViewModeToggle/index.js.map +0 -1
  460. package/dist/icons/CollapseLayers/index.css +0 -5
  461. package/dist/icons/CollapseLayers/index.d.ts +0 -7
  462. package/dist/icons/CollapseLayers/index.d.ts.map +0 -1
  463. package/dist/icons/CollapseLayers/index.js +0 -23
  464. package/dist/icons/CollapseLayers/index.js.map +0 -1
  465. package/dist/icons/Table/index.css +0 -5
  466. package/dist/icons/Table/index.d.ts +0 -7
  467. package/dist/icons/Table/index.d.ts.map +0 -1
  468. package/dist/icons/Table/index.js +0 -25
  469. package/dist/icons/Table/index.js.map +0 -1
  470. package/dist/providers/HierarchyDnd/index.css +0 -51
  471. package/dist/providers/HierarchyDnd/index.d.ts +0 -21
  472. package/dist/providers/HierarchyDnd/index.d.ts.map +0 -1
  473. package/dist/providers/HierarchyDnd/index.js +0 -163
  474. package/dist/providers/HierarchyDnd/index.js.map +0 -1
  475. package/dist/providers/HierarchyDnd/types.d.ts +0 -56
  476. package/dist/providers/HierarchyDnd/types.d.ts.map +0 -1
  477. package/dist/providers/HierarchyDnd/types.js +0 -21
  478. package/dist/providers/HierarchyDnd/types.js.map +0 -1
  479. package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.css +0 -216
  480. package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.d.ts +0 -20
  481. package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.d.ts.map +0 -1
  482. package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.js +0 -182
  483. package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.js.map +0 -1
  484. package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.css +0 -38
  485. package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.d.ts +0 -15
  486. package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.d.ts.map +0 -1
  487. package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.js +0 -85
  488. package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.js.map +0 -1
  489. package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.css +0 -98
  490. package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.d.ts +0 -27
  491. package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.d.ts.map +0 -1
  492. package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.js +0 -84
  493. package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.js.map +0 -1
  494. package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.d.ts +0 -19
  495. package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.d.ts.map +0 -1
  496. package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.js +0 -100
  497. package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.js.map +0 -1
  498. package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.d.ts +0 -53
  499. package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.d.ts.map +0 -1
  500. package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.js +0 -145
  501. package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.js.map +0 -1
  502. package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.d.ts +0 -8
  503. package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.d.ts.map +0 -1
  504. package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.js +0 -21
  505. package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.js.map +0 -1
  506. package/dist/views/HierarchyList/HierarchyCards/index.css +0 -115
  507. package/dist/views/HierarchyList/HierarchyCards/index.d.ts +0 -80
  508. package/dist/views/HierarchyList/HierarchyCards/index.d.ts.map +0 -1
  509. package/dist/views/HierarchyList/HierarchyCards/index.js +0 -457
  510. package/dist/views/HierarchyList/HierarchyCards/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","appendUploadSelectFields","formatAdminURL","qs","React","createContext","use","useCallback","useEffect","useReducer","useRef","useDebounce","useConfig","useLocale","useTranslation","reducer","Context","RelationshipProvider","t0","$","children","t1","Symbol","for","documents","dispatchDocuments","debouncedDocuments","config","t2","collections","routes","t3","api","i18n","code","locale","prevLocale","t4","t5","reloadAll","undefined","Object","entries","forEach","t6","slug","docs","idsToLoad","t7","id","value","push","length","url","apiRoute","path","params","URLSearchParams","select","append","collection","find","fieldToSelect","admin","useAsTitle","upload","collectionConfig","idsToString","map","_temp","join","query","toString","stringify","result","fetch","credentials","headers","language","ok","json","type","relationTo","loadRelationshipDocs","current","relationships","getRelationships","t8","_jsx","useListRelationships","id_0","String"],"sources":["../../../../src/elements/Table/RelationshipProvider/index.tsx"],"sourcesContent":["'use client'\nimport type { SelectType, TypeWithID } from 'payload'\n\nimport { appendUploadSelectFields, formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { createContext, use, useCallback, useEffect, useReducer, useRef } from 'react'\n\nimport { useDebounce } from '../../../hooks/useDebounce.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useLocale } from '../../../providers/Locale/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { reducer } from './reducer.js'\n\n// documents are first set to null when requested\n// set to false when no doc is returned\n// or set to the document returned\nexport type Documents = {\n [slug: string]: {\n [id: number | string]: false | null | TypeWithID\n }\n}\n\ntype ListRelationshipContext = {\n documents: Documents\n getRelationships: (\n docs: {\n relationTo: string\n value: number | string\n }[],\n ) => void\n}\n\nconst Context = createContext({} as ListRelationshipContext)\n\nexport const RelationshipProvider: React.FC<{ readonly children?: React.ReactNode }> = ({\n children,\n}) => {\n const [documents, dispatchDocuments] = useReducer(reducer, {})\n const debouncedDocuments = useDebounce(documents, 100)\n\n const {\n config: {\n collections,\n routes: { api },\n },\n } = useConfig()\n\n const { i18n } = useTranslation()\n const { code: locale } = useLocale()\n const prevLocale = useRef(locale)\n\n const loadRelationshipDocs = useCallback(\n (reloadAll = false) => {\n Object.entries(debouncedDocuments).forEach(async ([slug, docs]) => {\n const idsToLoad: (number | string)[] = []\n\n Object.entries(docs).forEach(([id, value]) => {\n if (value === null || reloadAll) {\n idsToLoad.push(id)\n }\n })\n\n if (idsToLoad.length > 0) {\n const url = formatAdminURL({ apiRoute: api, path: `/${slug}` })\n\n const params = new URLSearchParams()\n const select: SelectType = {}\n\n params.append('depth', '0')\n params.append('draft', 'true')\n params.append('limit', '250')\n\n const collection = collections.find((c) => c.slug === slug)\n\n if (!collection) {\n return\n }\n\n const fieldToSelect = collection.admin.useAsTitle ?? 'id'\n\n select[fieldToSelect] = true\n\n if (collection.upload) {\n appendUploadSelectFields({ collectionConfig: collection, select })\n }\n\n if (locale) {\n params.append('locale', locale)\n }\n\n const idsToString = idsToLoad.map((id) => String(id))\n params.append('where[id][in]', idsToString.join(','))\n\n const query = `?${params.toString()}&${qs.stringify({ select })}`\n\n const result = await fetch(`${url}${query}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (result.ok) {\n const json = await result.json()\n if (json.docs) {\n dispatchDocuments({\n type: 'ADD_LOADED',\n docs: json.docs,\n idsToLoad,\n relationTo: slug,\n })\n }\n } else {\n dispatchDocuments({ type: 'ADD_LOADED', docs: [], idsToLoad, relationTo: slug })\n }\n }\n })\n },\n [debouncedDocuments, api, i18n, locale, collections],\n )\n\n useEffect(() => {\n void loadRelationshipDocs(locale && prevLocale.current !== locale)\n prevLocale.current = locale\n }, [locale, loadRelationshipDocs])\n\n const getRelationships = useCallback(\n (relationships: { relationTo: string; value: number | string }[]) => {\n dispatchDocuments({ type: 'REQUEST', docs: relationships })\n },\n [],\n )\n\n return <Context value={{ documents, getRelationships }}>{children}</Context>\n}\n\nexport const useListRelationships = (): ListRelationshipContext => use(Context)\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","appendUploadSelectFields","formatAdminURL","qs","React","createContext","use","useCallback","useEffect","useReducer","useRef","useDebounce","useConfig","useLocale","useTranslation","reducer","Context","RelationshipProvider","t0","$","children","t1","Symbol","for","documents","dispatchDocuments","debouncedDocuments","config","t2","collections","routes","t3","api","i18n","currentLocale","locale","code","prevLocale","t4","t5","reloadAll","undefined","Object","entries","forEach","t6","slug","docs","idsToLoad","t7","id","value","push","length","url","apiRoute","path","params","URLSearchParams","select","append","collection","find","fieldToSelect","admin","useAsTitle","upload","collectionConfig","idsToString","map","_temp","join","query","toString","stringify","result","fetch","credentials","headers","language","ok","json","type","relationTo","loadRelationshipDocs","current","relationships","getRelationships","t8","_jsx","useListRelationships","id_0","String"],"sources":["../../../../src/elements/Table/RelationshipProvider/index.tsx"],"sourcesContent":["'use client'\nimport type { SelectType, TypeWithID } from 'payload'\n\nimport { appendUploadSelectFields, formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { createContext, use, useCallback, useEffect, useReducer, useRef } from 'react'\n\nimport { useDebounce } from '../../../hooks/useDebounce.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useLocale } from '../../../providers/Locale/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { reducer } from './reducer.js'\n\n// documents are first set to null when requested\n// set to false when no doc is returned\n// or set to the document returned\nexport type Documents = {\n [slug: string]: {\n [id: number | string]: false | null | TypeWithID\n }\n}\n\ntype ListRelationshipContext = {\n documents: Documents\n getRelationships: (\n docs: {\n relationTo: string\n value: number | string\n }[],\n ) => void\n}\n\nconst Context = createContext({} as ListRelationshipContext)\n\nexport const RelationshipProvider: React.FC<{ readonly children?: React.ReactNode }> = ({\n children,\n}) => {\n const [documents, dispatchDocuments] = useReducer(reducer, {})\n const debouncedDocuments = useDebounce(documents, 100)\n\n const {\n config: {\n collections,\n routes: { api },\n },\n } = useConfig()\n\n const { i18n } = useTranslation()\n const currentLocale = useLocale()\n const locale = currentLocale?.code\n const prevLocale = useRef(locale)\n\n const loadRelationshipDocs = useCallback(\n (reloadAll = false) => {\n Object.entries(debouncedDocuments).forEach(async ([slug, docs]) => {\n const idsToLoad: (number | string)[] = []\n\n Object.entries(docs).forEach(([id, value]) => {\n if (value === null || reloadAll) {\n idsToLoad.push(id)\n }\n })\n\n if (idsToLoad.length > 0) {\n const url = formatAdminURL({ apiRoute: api, path: `/${slug}` })\n\n const params = new URLSearchParams()\n const select: SelectType = {}\n\n params.append('depth', '0')\n params.append('draft', 'true')\n params.append('limit', '250')\n\n const collection = collections.find((c) => c.slug === slug)\n\n if (!collection) {\n return\n }\n\n const fieldToSelect = collection.admin.useAsTitle ?? 'id'\n\n select[fieldToSelect] = true\n\n if (collection.upload) {\n appendUploadSelectFields({ collectionConfig: collection, select })\n }\n\n if (locale) {\n params.append('locale', locale)\n }\n\n const idsToString = idsToLoad.map((id) => String(id))\n params.append('where[id][in]', idsToString.join(','))\n\n const query = `?${params.toString()}&${qs.stringify({ select })}`\n\n const result = await fetch(`${url}${query}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (result.ok) {\n const json = await result.json()\n if (json.docs) {\n dispatchDocuments({\n type: 'ADD_LOADED',\n docs: json.docs,\n idsToLoad,\n relationTo: slug,\n })\n }\n } else {\n dispatchDocuments({ type: 'ADD_LOADED', docs: [], idsToLoad, relationTo: slug })\n }\n }\n })\n },\n [debouncedDocuments, api, i18n, locale, collections],\n )\n\n useEffect(() => {\n void loadRelationshipDocs(locale && prevLocale.current !== locale)\n prevLocale.current = locale\n }, [locale, loadRelationshipDocs])\n\n const getRelationships = useCallback(\n (relationships: { relationTo: string; value: number | string }[]) => {\n dispatchDocuments({ type: 'REQUEST', docs: relationships })\n },\n [],\n )\n\n return <Context value={{ documents, getRelationships }}>{children}</Context>\n}\n\nexport const useListRelationships = (): ListRelationshipContext => use(Context)\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/UnpublishButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAA;AAMzD,OAAO,KAAgC,MAAM,OAAO,CAAA;AAWpD,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EAAE,SAAS,GACjB,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,0BAA+B,qBA8LtD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/UnpublishButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAA;AAMzD,OAAO,KAAgC,MAAM,OAAO,CAAA;AAWpD,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EAAE,SAAS,GACjB,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,0BAA+B,qBAgMtD"}
@@ -41,10 +41,9 @@ export function UnpublishButton({
41
41
  const {
42
42
  reset: resetForm
43
43
  } = useForm();
44
- const {
45
- code: localeCode,
46
- label: localeLabel
47
- } = useLocale();
44
+ const locale = useLocale();
45
+ const localeCode = locale?.code;
46
+ const localeLabel = locale?.label;
48
47
  const [unpublishAll, setUnpublishAll] = useState(false);
49
48
  const unPublishModalSlug = `confirm-un-publish-${id}`;
50
49
  const {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useModal","getTranslation","formatAdminURL","hasLocalizeStatusEnabled","qs","React","useCallback","useState","toast","useForm","useConfig","useDocumentInfo","useLocale","useTranslation","requests","ConfirmationModal","PopupList","UnpublishButton","label","labelProp","id","collectionSlug","data","dataFromProps","globalSlug","hasPublishedDoc","hasPublishPermission","incrementVersionCount","isTrashed","setHasPublishedDoc","setMostRecentVersionIsAutosaved","setUnpublishedVersionCount","toggleModal","config","getEntityConfig","reset","resetForm","code","localeCode","localeLabel","unpublishAll","setUnpublishAll","unPublishModalSlug","routes","api","serverURL","i18n","t","entityConfig","useMemo","unpublish","url","method","queryString","stringify","depth","locale","undefined","unpublishAllLocales","addQueryPrefix","apiRoute","path","res","body","JSON","_status","headers","language","status","success","json","errors","message","error","catch","drafts","versions","hasDraftsEnabled","canUnpublish","canUnpublishCurrentLocale","Boolean","_jsxs","Fragment","_jsx","Button","onClick","confirmingLabel","heading","modalSlug","onConfirm"],"sources":["../../../src/elements/UnpublishButton/index.tsx"],"sourcesContent":["'use client'\n\nimport type { UnpublishButtonClientProps } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL, hasLocalizeStatusEnabled } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { useForm } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { PopupList } from '../Popup/index.js'\nexport function UnpublishButton({\n label: labelProp,\n}: { label?: string } & UnpublishButtonClientProps = {}) {\n const {\n id,\n collectionSlug,\n data: dataFromProps,\n globalSlug,\n hasPublishedDoc,\n hasPublishPermission,\n incrementVersionCount,\n isTrashed,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n } = useDocumentInfo()\n const { toggleModal } = useModal()\n\n const { config, getEntityConfig } = useConfig()\n const { reset: resetForm } = useForm()\n const { code: localeCode, label: localeLabel } = useLocale()\n const [unpublishAll, setUnpublishAll] = useState(false)\n const unPublishModalSlug = `confirm-un-publish-${id}`\n\n const {\n routes: { api },\n serverURL,\n } = config\n\n const { i18n, t } = useTranslation()\n\n const entityConfig = React.useMemo(() => {\n if (collectionSlug) {\n return getEntityConfig({ collectionSlug })\n }\n\n if (globalSlug) {\n return getEntityConfig({ globalSlug })\n }\n }, [collectionSlug, globalSlug, getEntityConfig])\n\n const unpublish = useCallback(\n (unpublishAll?: boolean) => {\n void (async () => {\n let url\n let method\n\n const queryString = qs.stringify(\n {\n depth: 0,\n 'fallback-locale': 'null',\n locale: unpublishAll ? undefined : localeCode,\n unpublishAllLocales: unpublishAll,\n },\n { addQueryPrefix: true },\n )\n\n if (collectionSlug) {\n url = formatAdminURL({\n apiRoute: api,\n path: `/${collectionSlug}/${id}${queryString}`,\n serverURL,\n })\n method = 'patch'\n }\n\n if (globalSlug) {\n url = formatAdminURL({\n apiRoute: api,\n path: `/globals/${globalSlug}${queryString}`,\n serverURL,\n })\n method = 'post'\n }\n\n try {\n const res = await requests[method](url, {\n body: JSON.stringify({ _status: 'draft' }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n\n if (res.status === 200) {\n void resetForm({\n ...(dataFromProps || {}),\n _status: 'draft',\n })\n\n toast.success(t('version:unpublishedSuccessfully'))\n if (!unpublishAll) {\n incrementVersionCount()\n }\n setUnpublishedVersionCount(1)\n setMostRecentVersionIsAutosaved(false)\n setHasPublishedDoc(false)\n } else {\n try {\n const json = await res.json()\n if (json.errors?.[0]?.message) {\n toast.error(json.errors[0].message)\n } else if (json.error) {\n toast.error(json.error)\n } else {\n toast.error(t('error:unPublishingDocument'))\n }\n } catch {\n toast.error(t('error:unPublishingDocument'))\n }\n }\n } catch {\n toast.error(t('error:unPublishingDocument'))\n }\n })().catch(() => {\n toast.error(t('error:unPublishingDocument'))\n })\n },\n [\n dataFromProps,\n resetForm,\n collectionSlug,\n globalSlug,\n serverURL,\n api,\n localeCode,\n id,\n i18n.language,\n incrementVersionCount,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n t,\n ],\n )\n\n const drafts = entityConfig?.versions?.drafts\n const hasDraftsEnabled = typeof drafts === 'object' && drafts !== null\n\n const canUnpublish = React.useMemo(() => {\n return hasDraftsEnabled && hasPublishPermission && hasPublishedDoc && !isTrashed\n }, [hasPublishPermission, hasPublishedDoc, isTrashed, hasDraftsEnabled])\n\n const canUnpublishCurrentLocale = React.useMemo(() => {\n if (!canUnpublish) {\n return false\n }\n\n return Boolean(entityConfig && hasLocalizeStatusEnabled(entityConfig))\n }, [canUnpublish, entityConfig])\n\n const label = getTranslation(localeLabel, i18n)\n\n if (!canUnpublish) {\n return null\n }\n\n return (\n <React.Fragment>\n <PopupList.Button\n id=\"action-unpublish\"\n onClick={() => {\n setUnpublishAll(true)\n toggleModal(unPublishModalSlug)\n }}\n >\n {labelProp || t('version:unpublish')}\n </PopupList.Button>\n {canUnpublishCurrentLocale && (\n <PopupList.Button\n id=\"action-unpublish-locale\"\n onClick={() => {\n setUnpublishAll(false)\n toggleModal(unPublishModalSlug)\n }}\n >\n {labelProp ? `${labelProp} [${label}]` : t('version:unpublishIn', { locale: label })}\n </PopupList.Button>\n )}\n <ConfirmationModal\n body={\n !unpublishAll\n ? t('version:aboutToUnpublishIn', { locale: label })\n : t('version:aboutToUnpublish')\n }\n confirmingLabel={t('version:unpublishing')}\n heading={t('version:confirmUnpublish')}\n modalSlug={unPublishModalSlug}\n onConfirm={() => unpublish(unpublishAll)}\n />\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useModal","getTranslation","formatAdminURL","hasLocalizeStatusEnabled","qs","React","useCallback","useState","toast","useForm","useConfig","useDocumentInfo","useLocale","useTranslation","requests","ConfirmationModal","PopupList","UnpublishButton","label","labelProp","id","collectionSlug","data","dataFromProps","globalSlug","hasPublishedDoc","hasPublishPermission","incrementVersionCount","isTrashed","setHasPublishedDoc","setMostRecentVersionIsAutosaved","setUnpublishedVersionCount","toggleModal","config","getEntityConfig","reset","resetForm","locale","localeCode","code","localeLabel","unpublishAll","setUnpublishAll","unPublishModalSlug","routes","api","serverURL","i18n","t","entityConfig","useMemo","unpublish","url","method","queryString","stringify","depth","undefined","unpublishAllLocales","addQueryPrefix","apiRoute","path","res","body","JSON","_status","headers","language","status","success","json","errors","message","error","catch","drafts","versions","hasDraftsEnabled","canUnpublish","canUnpublishCurrentLocale","Boolean","_jsxs","Fragment","_jsx","Button","onClick","confirmingLabel","heading","modalSlug","onConfirm"],"sources":["../../../src/elements/UnpublishButton/index.tsx"],"sourcesContent":["'use client'\n\nimport type { UnpublishButtonClientProps } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL, hasLocalizeStatusEnabled } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { useForm } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { PopupList } from '../Popup/index.js'\nexport function UnpublishButton({\n label: labelProp,\n}: { label?: string } & UnpublishButtonClientProps = {}) {\n const {\n id,\n collectionSlug,\n data: dataFromProps,\n globalSlug,\n hasPublishedDoc,\n hasPublishPermission,\n incrementVersionCount,\n isTrashed,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n } = useDocumentInfo()\n const { toggleModal } = useModal()\n\n const { config, getEntityConfig } = useConfig()\n const { reset: resetForm } = useForm()\n const locale = useLocale()\n const localeCode = locale?.code\n const localeLabel = locale?.label\n const [unpublishAll, setUnpublishAll] = useState(false)\n const unPublishModalSlug = `confirm-un-publish-${id}`\n\n const {\n routes: { api },\n serverURL,\n } = config\n\n const { i18n, t } = useTranslation()\n\n const entityConfig = React.useMemo(() => {\n if (collectionSlug) {\n return getEntityConfig({ collectionSlug })\n }\n\n if (globalSlug) {\n return getEntityConfig({ globalSlug })\n }\n }, [collectionSlug, globalSlug, getEntityConfig])\n\n const unpublish = useCallback(\n (unpublishAll?: boolean) => {\n void (async () => {\n let url\n let method\n\n const queryString = qs.stringify(\n {\n depth: 0,\n 'fallback-locale': 'null',\n locale: unpublishAll ? undefined : localeCode,\n unpublishAllLocales: unpublishAll,\n },\n { addQueryPrefix: true },\n )\n\n if (collectionSlug) {\n url = formatAdminURL({\n apiRoute: api,\n path: `/${collectionSlug}/${id}${queryString}`,\n serverURL,\n })\n method = 'patch'\n }\n\n if (globalSlug) {\n url = formatAdminURL({\n apiRoute: api,\n path: `/globals/${globalSlug}${queryString}`,\n serverURL,\n })\n method = 'post'\n }\n\n try {\n const res = await requests[method](url, {\n body: JSON.stringify({ _status: 'draft' }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n\n if (res.status === 200) {\n void resetForm({\n ...(dataFromProps || {}),\n _status: 'draft',\n })\n\n toast.success(t('version:unpublishedSuccessfully'))\n if (!unpublishAll) {\n incrementVersionCount()\n }\n setUnpublishedVersionCount(1)\n setMostRecentVersionIsAutosaved(false)\n setHasPublishedDoc(false)\n } else {\n try {\n const json = await res.json()\n if (json.errors?.[0]?.message) {\n toast.error(json.errors[0].message)\n } else if (json.error) {\n toast.error(json.error)\n } else {\n toast.error(t('error:unPublishingDocument'))\n }\n } catch {\n toast.error(t('error:unPublishingDocument'))\n }\n }\n } catch {\n toast.error(t('error:unPublishingDocument'))\n }\n })().catch(() => {\n toast.error(t('error:unPublishingDocument'))\n })\n },\n [\n dataFromProps,\n resetForm,\n collectionSlug,\n globalSlug,\n serverURL,\n api,\n localeCode,\n id,\n i18n.language,\n incrementVersionCount,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n t,\n ],\n )\n\n const drafts = entityConfig?.versions?.drafts\n const hasDraftsEnabled = typeof drafts === 'object' && drafts !== null\n\n const canUnpublish = React.useMemo(() => {\n return hasDraftsEnabled && hasPublishPermission && hasPublishedDoc && !isTrashed\n }, [hasPublishPermission, hasPublishedDoc, isTrashed, hasDraftsEnabled])\n\n const canUnpublishCurrentLocale = React.useMemo(() => {\n if (!canUnpublish) {\n return false\n }\n\n return Boolean(entityConfig && hasLocalizeStatusEnabled(entityConfig))\n }, [canUnpublish, entityConfig])\n\n const label = getTranslation(localeLabel, i18n)\n\n if (!canUnpublish) {\n return null\n }\n\n return (\n <React.Fragment>\n <PopupList.Button\n id=\"action-unpublish\"\n onClick={() => {\n setUnpublishAll(true)\n toggleModal(unPublishModalSlug)\n }}\n >\n {labelProp || t('version:unpublish')}\n </PopupList.Button>\n {canUnpublishCurrentLocale && (\n <PopupList.Button\n id=\"action-unpublish-locale\"\n onClick={() => {\n setUnpublishAll(false)\n toggleModal(unPublishModalSlug)\n }}\n >\n {labelProp ? `${labelProp} [${label}]` : t('version:unpublishIn', { locale: label })}\n </PopupList.Button>\n )}\n <ConfirmationModal\n body={\n !unpublishAll\n ? t('version:aboutToUnpublishIn', { locale: label })\n : t('version:aboutToUnpublish')\n }\n confirmingLabel={t('version:unpublishing')}\n heading={t('version:confirmUnpublish')}\n modalSlug={unPublishModalSlug}\n onConfirm={() => unpublish(unpublishAll)}\n />\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerContent.d.ts","sourceRoot":"","sources":["../../../src/elements/UnpublishMany/DrawerContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAKpC,OAAO,KAAsB,MAAM,OAAO,CAAA;AAG1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAWpD,KAAK,+BAA+B,GAAG;IACrC,UAAU,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAA;IAC5C,UAAU,EAAE,MAAM,CAAA;IAClB,GAAG,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,SAAS,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,+BAA+B,qBA4JhF"}
1
+ {"version":3,"file":"DrawerContent.d.ts","sourceRoot":"","sources":["../../../src/elements/UnpublishMany/DrawerContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAKpC,OAAO,KAAsB,MAAM,OAAO,CAAA;AAG1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAWpD,KAAK,+BAA+B,GAAG;IACrC,UAAU,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAA;IAC5C,UAAU,EAAE,MAAM,CAAA;IAClB,GAAG,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,SAAS,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,+BAA+B,qBA6JhF"}
@@ -35,9 +35,8 @@ export function UnpublishManyDrawerContent(props) {
35
35
  }
36
36
  }
37
37
  } = useConfig();
38
- const {
39
- code: locale
40
- } = useLocale();
38
+ const currentLocale = useLocale();
39
+ const locale = currentLocale?.code;
41
40
  const {
42
41
  i18n,
43
42
  t
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerContent.js","names":["getTranslation","combineWhereConstraints","formatAdminURL","mergeListSearchAndWhere","qs","React","useCallback","toast","useConfig","useLocale","useRouteCache","useRouter","useSearchParams","useTranslation","requests","parseSearchParams","ConfirmationModal","UnpublishManyDrawerContent","props","collection","slug","labels","plural","singular","drawerSlug","ids","onSuccess","selectAll","where","config","routes","api","code","locale","i18n","t","searchParams","router","clearRouteCache","addDefaultError","error","queryString","useMemo","whereConstraints","_status","not_equals","push","queryWithSearch","collectionConfig","search","get","id","in","stringify","select","addQueryPrefix","handleUnpublish","url","apiRoute","path","patch","body","JSON","headers","language","then","res","json","deletedDocs","docs","length","successLabel","status","success","count","label","errors","message","description","map","join","replace","page","undefined","forEach","_err","_jsx","confirmingLabel","heading","modalSlug","onConfirm"],"sources":["../../../src/elements/UnpublishMany/DrawerContent.tsx"],"sourcesContent":["import type { Where } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { combineWhereConstraints, formatAdminURL, mergeListSearchAndWhere } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback } from 'react'\nimport { toast } from 'sonner'\n\nimport type { UnpublishManyProps } from './index.js'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { useRouter, useSearchParams } from '../../providers/RouterAdapter/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { parseSearchParams } from '../../utilities/parseSearchParams.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\n\ntype UnpublishManyDrawerContentProps = {\n collection: UnpublishManyProps['collection']\n drawerSlug: string\n ids: (number | string)[]\n onSuccess?: () => void\n selectAll: boolean\n where?: Where\n}\n\nexport function UnpublishManyDrawerContent(props: UnpublishManyDrawerContentProps) {\n const {\n collection,\n collection: { slug, labels: { plural, singular } } = {},\n drawerSlug,\n ids,\n onSuccess,\n selectAll,\n where,\n } = props\n\n const {\n config: {\n routes: { api },\n },\n } = useConfig()\n const { code: locale } = useLocale()\n const { i18n, t } = useTranslation()\n const searchParams = useSearchParams()\n const router = useRouter()\n const { clearRouteCache } = useRouteCache()\n const addDefaultError = useCallback(() => {\n toast.error(t('error:unknown'))\n }, [t])\n\n const queryString = React.useMemo((): string => {\n const whereConstraints: Where[] = [\n {\n _status: {\n not_equals: 'draft',\n },\n },\n ]\n\n if (where) {\n whereConstraints.push(where)\n }\n\n const queryWithSearch = mergeListSearchAndWhere({\n collectionConfig: collection,\n search: searchParams.get('search'),\n })\n\n if (queryWithSearch) {\n whereConstraints.push(queryWithSearch)\n }\n\n if (!selectAll) {\n // If we're not selecting all, we need to select specific docs\n whereConstraints.push({\n id: {\n in: ids || [],\n },\n })\n }\n\n return qs.stringify(\n {\n locale,\n select: {},\n where: combineWhereConstraints(whereConstraints),\n },\n { addQueryPrefix: true },\n )\n }, [collection, searchParams, selectAll, ids, locale, where])\n\n const handleUnpublish = useCallback(async () => {\n const url = formatAdminURL({\n apiRoute: api,\n path: `/${slug}${queryString}`,\n })\n await requests\n .patch(url, {\n body: JSON.stringify({\n _status: 'draft',\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n .then(async (res) => {\n try {\n const json = await res.json()\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()\n\n if (typeof onSuccess === 'function') {\n onSuccess()\n }\n\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 (_err) {\n return addDefaultError()\n }\n })\n }, [\n api,\n slug,\n queryString,\n i18n,\n plural,\n singular,\n t,\n router,\n searchParams,\n selectAll,\n clearRouteCache,\n addDefaultError,\n onSuccess,\n ])\n\n return (\n <ConfirmationModal\n body={t('version:aboutToUnpublishSelection', { label: getTranslation(plural, i18n) })}\n confirmingLabel={t('version:unpublishing')}\n heading={t('version:confirmUnpublish')}\n modalSlug={drawerSlug}\n onConfirm={handleUnpublish}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DrawerContent.js","names":["getTranslation","combineWhereConstraints","formatAdminURL","mergeListSearchAndWhere","qs","React","useCallback","toast","useConfig","useLocale","useRouteCache","useRouter","useSearchParams","useTranslation","requests","parseSearchParams","ConfirmationModal","UnpublishManyDrawerContent","props","collection","slug","labels","plural","singular","drawerSlug","ids","onSuccess","selectAll","where","config","routes","api","currentLocale","locale","code","i18n","t","searchParams","router","clearRouteCache","addDefaultError","error","queryString","useMemo","whereConstraints","_status","not_equals","push","queryWithSearch","collectionConfig","search","get","id","in","stringify","select","addQueryPrefix","handleUnpublish","url","apiRoute","path","patch","body","JSON","headers","language","then","res","json","deletedDocs","docs","length","successLabel","status","success","count","label","errors","message","description","map","join","replace","page","undefined","forEach","_err","_jsx","confirmingLabel","heading","modalSlug","onConfirm"],"sources":["../../../src/elements/UnpublishMany/DrawerContent.tsx"],"sourcesContent":["import type { Where } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { combineWhereConstraints, formatAdminURL, mergeListSearchAndWhere } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback } from 'react'\nimport { toast } from 'sonner'\n\nimport type { UnpublishManyProps } from './index.js'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { useRouter, useSearchParams } from '../../providers/RouterAdapter/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { parseSearchParams } from '../../utilities/parseSearchParams.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\n\ntype UnpublishManyDrawerContentProps = {\n collection: UnpublishManyProps['collection']\n drawerSlug: string\n ids: (number | string)[]\n onSuccess?: () => void\n selectAll: boolean\n where?: Where\n}\n\nexport function UnpublishManyDrawerContent(props: UnpublishManyDrawerContentProps) {\n const {\n collection,\n collection: { slug, labels: { plural, singular } } = {},\n drawerSlug,\n ids,\n onSuccess,\n selectAll,\n where,\n } = props\n\n const {\n config: {\n routes: { api },\n },\n } = useConfig()\n const currentLocale = useLocale()\n const locale = currentLocale?.code\n const { i18n, t } = useTranslation()\n const searchParams = useSearchParams()\n const router = useRouter()\n const { clearRouteCache } = useRouteCache()\n const addDefaultError = useCallback(() => {\n toast.error(t('error:unknown'))\n }, [t])\n\n const queryString = React.useMemo((): string => {\n const whereConstraints: Where[] = [\n {\n _status: {\n not_equals: 'draft',\n },\n },\n ]\n\n if (where) {\n whereConstraints.push(where)\n }\n\n const queryWithSearch = mergeListSearchAndWhere({\n collectionConfig: collection,\n search: searchParams.get('search'),\n })\n\n if (queryWithSearch) {\n whereConstraints.push(queryWithSearch)\n }\n\n if (!selectAll) {\n // If we're not selecting all, we need to select specific docs\n whereConstraints.push({\n id: {\n in: ids || [],\n },\n })\n }\n\n return qs.stringify(\n {\n locale,\n select: {},\n where: combineWhereConstraints(whereConstraints),\n },\n { addQueryPrefix: true },\n )\n }, [collection, searchParams, selectAll, ids, locale, where])\n\n const handleUnpublish = useCallback(async () => {\n const url = formatAdminURL({\n apiRoute: api,\n path: `/${slug}${queryString}`,\n })\n await requests\n .patch(url, {\n body: JSON.stringify({\n _status: 'draft',\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n .then(async (res) => {\n try {\n const json = await res.json()\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()\n\n if (typeof onSuccess === 'function') {\n onSuccess()\n }\n\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 (_err) {\n return addDefaultError()\n }\n })\n }, [\n api,\n slug,\n queryString,\n i18n,\n plural,\n singular,\n t,\n router,\n searchParams,\n selectAll,\n clearRouteCache,\n addDefaultError,\n onSuccess,\n ])\n\n return (\n <ConfirmationModal\n body={t('version:aboutToUnpublishSelection', { label: getTranslation(plural, i18n) })}\n confirmingLabel={t('version:unpublishing')}\n heading={t('version:confirmUnpublish')}\n modalSlug={drawerSlug}\n onConfirm={handleUnpublish}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/UserMenu/LanguageMenu/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAsBvC,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CACnC,CA+DA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/UserMenu/LanguageMenu/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAsBvC,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CACnC,CAsDA,CAAA"}
@@ -7,7 +7,6 @@ import { ChevronIcon } from '../../../icons/Chevron/index.js';
7
7
  import { LanguageIcon } from '../../../icons/Language/index.js';
8
8
  import { useTranslation } from '../../../providers/Translation/index.js';
9
9
  import { Popup, PopupList } from '../../Popup/index.js';
10
- import { useHoverSubmenu } from '../useHoverSubmenu.js';
11
10
  export const LanguageMenuContent = () => {
12
11
  const $ = _c(4);
13
12
  const {
@@ -47,21 +46,13 @@ export const LanguageMenuContent = () => {
47
46
  return t0;
48
47
  };
49
48
  export const LanguageMenu = t0 => {
50
- const $ = _c(15);
49
+ const $ = _c(5);
51
50
  const {
52
51
  onMobileOpen
53
52
  } = t0;
54
53
  const {
55
54
  t
56
55
  } = useTranslation();
57
- const {
58
- close,
59
- contentRef,
60
- isOpen,
61
- keepOpen,
62
- open,
63
- triggerRef
64
- } = useHoverSubmenu("language");
65
56
  if (onMobileOpen) {
66
57
  let t1;
67
58
  if ($[0] !== onMobileOpen || $[1] !== t) {
@@ -71,7 +62,7 @@ export const LanguageMenu = t0 => {
71
62
  onClick: onMobileOpen,
72
63
  type: "button",
73
64
  children: [_jsx("span", {
74
- className: "popup-button-list__icon",
65
+ className: "popup-button-list__submenu-icon",
75
66
  children: _jsx(LanguageIcon, {
76
67
  size: 24
77
68
  })
@@ -95,83 +86,48 @@ export const LanguageMenu = t0 => {
95
86
  return t1;
96
87
  }
97
88
  let t1;
98
- if ($[3] !== close) {
99
- t1 = nextOpen => {
100
- if (!nextOpen) {
101
- close();
102
- }
103
- };
104
- $[3] = close;
105
- $[4] = t1;
106
- } else {
107
- t1 = $[4];
108
- }
109
- let t2;
110
- if ($[5] !== open || $[6] !== t || $[7] !== triggerRef) {
111
- t2 = t3 => {
112
- const {
113
- active,
114
- onClick,
115
- onKeyDown,
116
- ...aria
117
- } = t3;
118
- return _jsxs("button", {
119
- ...aria,
120
- className: "popup-button-list__button popup-button-list__button--submenu-trigger popup-button-list__button--submenu-trigger-language",
121
- onClick,
122
- onKeyDown,
123
- onMouseEnter: open,
124
- ref: triggerRef,
125
- type: "button",
126
- children: [_jsx("span", {
127
- className: "popup-button-list__icon",
128
- children: _jsx(LanguageIcon, {
129
- size: 24
130
- })
131
- }), _jsx("span", {
132
- className: "popup-button-list__label",
133
- children: t("general:language")
134
- }), _jsx("span", {
135
- className: "popup-button-list__chevron",
136
- children: _jsx(ChevronIcon, {
137
- direction: "right",
138
- size: 16
139
- })
140
- })]
141
- });
142
- };
143
- $[5] = open;
144
- $[6] = t;
145
- $[7] = triggerRef;
146
- $[8] = t2;
147
- } else {
148
- t2 = $[8];
149
- }
150
- let t3;
151
- if ($[9] !== contentRef || $[10] !== isOpen || $[11] !== keepOpen || $[12] !== t1 || $[13] !== t2) {
152
- t3 = _jsx(Popup, {
153
- forceOpen: isOpen,
154
- onToggleOpen: t1,
155
- renderButton: t2,
89
+ if ($[3] !== t) {
90
+ t1 = _jsx(Popup, {
91
+ renderButton: t2 => {
92
+ const {
93
+ active,
94
+ onClick,
95
+ onKeyDown,
96
+ ...aria
97
+ } = t2;
98
+ return _jsxs("button", {
99
+ ...aria,
100
+ className: ["popup-button-list__button", "popup-button-list__button--submenu-trigger", active && "popup-button-list__button--selected"].filter(Boolean).join(" "),
101
+ onClick,
102
+ onKeyDown,
103
+ type: "button",
104
+ children: [_jsx("span", {
105
+ className: "popup-button-list__submenu-icon",
106
+ children: _jsx(LanguageIcon, {
107
+ size: 24
108
+ })
109
+ }), _jsx("span", {
110
+ className: "popup-button-list__label",
111
+ children: t("general:language")
112
+ }), _jsx("span", {
113
+ className: "popup-button-list__chevron",
114
+ children: _jsx(ChevronIcon, {
115
+ direction: "right",
116
+ size: 16
117
+ })
118
+ })]
119
+ });
120
+ },
156
121
  side: "left",
157
122
  size: "large",
158
123
  theme: "dark",
159
- children: _jsx("div", {
160
- className: "popup-button-list__submenu-content-language",
161
- onMouseEnter: keepOpen,
162
- ref: contentRef,
163
- children: _jsx(LanguageMenuContent, {})
164
- })
124
+ children: _jsx(LanguageMenuContent, {})
165
125
  });
166
- $[9] = contentRef;
167
- $[10] = isOpen;
168
- $[11] = keepOpen;
169
- $[12] = t1;
170
- $[13] = t2;
171
- $[14] = t3;
126
+ $[3] = t;
127
+ $[4] = t1;
172
128
  } else {
173
- t3 = $[14];
129
+ t1 = $[4];
174
130
  }
175
- return t3;
131
+ return t1;
176
132
  };
177
133
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","ChevronIcon","LanguageIcon","useTranslation","Popup","PopupList","useHoverSubmenu","LanguageMenuContent","$","i18n","languageOptions","switchLanguage","t0","_jsx","children","RadioGroup","map","t1","label","value","RadioGroupItem","active","language","onClick","LanguageMenu","onMobileOpen","t","close","contentRef","isOpen","keepOpen","open","triggerRef","_jsxs","className","type","size","direction","nextOpen","t2","t3","onKeyDown","aria","onMouseEnter","ref","forceOpen","onToggleOpen","renderButton","theme"],"sources":["../../../../src/elements/UserMenu/LanguageMenu/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { ChevronIcon } from '../../../icons/Chevron/index.js'\nimport { LanguageIcon } from '../../../icons/Language/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Popup, PopupList } from '../../Popup/index.js'\nimport { useHoverSubmenu } from '../useHoverSubmenu.js'\n\nexport const LanguageMenuContent: React.FC = () => {\n const { i18n, languageOptions, switchLanguage } = useTranslation()\n\n return (\n <div data-popup-prevent-close>\n <PopupList.RadioGroup>\n {languageOptions?.map(({ label, value }) => (\n <PopupList.RadioGroupItem\n active={i18n.language === value}\n key={value}\n onClick={() => {\n if (switchLanguage) {\n void switchLanguage(value)\n }\n }}\n >\n {label}\n </PopupList.RadioGroupItem>\n ))}\n </PopupList.RadioGroup>\n </div>\n )\n}\n\nexport const LanguageMenu: React.FC<{\n readonly onMobileOpen?: () => void\n}> = ({ onMobileOpen }) => {\n const { t } = useTranslation()\n const { close, contentRef, isOpen, keepOpen, open, triggerRef } = useHoverSubmenu('language')\n\n if (onMobileOpen) {\n return (\n <button\n className=\"popup-button-list__button popup-button-list__button--submenu-trigger\"\n data-popup-prevent-close\n onClick={onMobileOpen}\n type=\"button\"\n >\n <span className=\"popup-button-list__icon\">\n <LanguageIcon size={24} />\n </span>\n <span className=\"popup-button-list__label\">{t('general:language')}</span>\n <span className=\"popup-button-list__chevron\">\n <ChevronIcon direction=\"right\" size={24} />\n </span>\n </button>\n )\n }\n\n return (\n <Popup\n forceOpen={isOpen}\n onToggleOpen={(nextOpen) => {\n if (!nextOpen) {\n close()\n }\n }}\n renderButton={({ active, onClick, onKeyDown, ...aria }) => (\n <button\n {...aria}\n className=\"popup-button-list__button popup-button-list__button--submenu-trigger popup-button-list__button--submenu-trigger-language\"\n onClick={onClick}\n onKeyDown={onKeyDown}\n onMouseEnter={open}\n ref={triggerRef as React.Ref<HTMLButtonElement>}\n type=\"button\"\n >\n <span className=\"popup-button-list__icon\">\n <LanguageIcon size={24} />\n </span>\n <span className=\"popup-button-list__label\">{t('general:language')}</span>\n <span className=\"popup-button-list__chevron\">\n <ChevronIcon direction=\"right\" size={16} />\n </span>\n </button>\n )}\n side=\"left\"\n size=\"large\"\n theme=\"dark\"\n >\n <div\n className=\"popup-button-list__submenu-content-language\"\n onMouseEnter={keepOpen}\n ref={contentRef as React.Ref<HTMLDivElement>}\n >\n <LanguageMenuContent />\n </div>\n </Popup>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAElB,SAASC,WAAW,QAAQ;AAC5B,SAASC,YAAY,QAAQ;AAC7B,SAASC,cAAc,QAAQ;AAC/B,SAASC,KAAK,EAAEC,SAAS,QAAQ;AACjC,SAASC,eAAe,QAAQ;AAEhC,OAAO,MAAMC,mBAAA,GAAgCA,CAAA;EAAA,MAAAC,CAAA,GAAAT,EAAA;EAC3C;IAAAU,IAAA;IAAAC,eAAA;IAAAC;EAAA,IAAkDR,cAAA;EAAA,IAAAS,EAAA;EAAA,IAAAJ,CAAA,QAAAC,IAAA,IAAAD,CAAA,QAAAE,eAAA,IAAAF,CAAA,QAAAG,cAAA;IAGhDC,EAAA,GAAAC,IAAA,CAAC;MAAA;MAAAC,QAAA,EACCD,IAAA,CAAAR,SAAA,CAAAU,UAAA;QAAAD,QAAA,EACGJ,eAAA,EAAAM,GAAA,CAAAC,EAAA;UAAsB;YAAAC,KAAA;YAAAC;UAAA,IAAAF,EAAgB;UAAA,OACrCJ,IAAA,CAAAR,SAAA,CAAAe,cAAA;YAAAC,MAAA,EACUZ,IAAA,CAAAa,QAAA,KAAkBH,KAAA;YAAAI,OAAA,EAAAA,CAAA;cAAA,IAGpBZ,cAAA;gBACGA,cAAA,CAAeQ,KAAA;cAAA;YAAA;YAAAL,QAAA,EAIvBI;UAAA,GAPIC,KAAA;QAAA;MAAA,C;;;;;;;;;SALbP,E;CAkBJ;AAEA,OAAO,MAAMY,YAAA,GAERZ,EAAA;EAAA,MAAAJ,CAAA,GAAAT,EAAA;EAAC;IAAA0B;EAAA,IAAAb,EAAgB;EACpB;IAAAc;EAAA,IAAcvB,cAAA;EACd;IAAAwB,KAAA;IAAAC,UAAA;IAAAC,MAAA;IAAAC,QAAA;IAAAC,IAAA;IAAAC;EAAA,IAAkE1B,eAAA,CAAgB;EAAA,IAE9EmB,YAAA;IAAA,IAAAR,EAAA;IAAA,IAAAT,CAAA,QAAAiB,YAAA,IAAAjB,CAAA,QAAAkB,CAAA;MAEAT,EAAA,GAAAgB,KAAA,CAAC;QAAAC,SAAA,EACW;QAAA;QAAAX,OAAA,EAEDE,YAAA;QAAAU,IAAA,EACJ;QAAArB,QAAA,GAELD,IAAA,CAAC;UAAAqB,SAAA,EAAe;UAAApB,QAAA,EACdD,IAAA,CAAAX,YAAA;YAAAkC,IAAA;UAAA,C;YAEFvB,IAAA,CAAC;UAAAqB,SAAA,EAAe;UAAApB,QAAA,EAA4BY,CAAA,CAAE;QAAA,C,GAC9Cb,IAAA,CAAC;UAAAqB,SAAA,EAAe;UAAApB,QAAA,EACdD,IAAA,CAAAZ,WAAA;YAAAoC,SAAA,EAAuB;YAAAD,IAAA;UAAA,C;;;;;;;;;WAX3BnB,E;;;;IAoBcA,EAAA,GAAAqB,QAAA;MAAA,KACPA,QAAA;QACHX,KAAA;MAAA;IAAA;IAEJnB,CAAA,MAAAmB,KAAA;IAAAnB,CAAA,MAAAS,EAAA;EAAA;IAAAA,EAAA,GAAAT,CAAA;EAAA;EAAA,IAAA+B,EAAA;EAAA,IAAA/B,CAAA,QAAAuB,IAAA,IAAAvB,CAAA,QAAAkB,CAAA,IAAAlB,CAAA,QAAAwB,UAAA;IACcO,EAAA,GAAAC,EAAA;MAAC;QAAAnB,MAAA;QAAAE,OAAA;QAAAkB,SAAA;QAAA,GAAAC;MAAA,IAAAF,EAAuC;MAAA,OACpDP,KAAA,CAAC;QAAA,GACKS,IAAI;QAAAR,SAAA,EACE;QAAAX,OAAA;QAAAkB,SAAA;QAAAE,YAAA,EAGIZ,IAAA;QAAAa,GAAA,EACTZ,UAAA;QAAAG,IAAA,EACA;QAAArB,QAAA,GAELD,IAAA,CAAC;UAAAqB,SAAA,EAAe;UAAApB,QAAA,EACdD,IAAA,CAAAX,YAAA;YAAAkC,IAAA;UAAA,C;YAEFvB,IAAA,CAAC;UAAAqB,SAAA,EAAe;UAAApB,QAAA,EAA4BY,CAAA,CAAE;QAAA,C,GAC9Cb,IAAA,CAAC;UAAAqB,SAAA,EAAe;UAAApB,QAAA,EACdD,IAAA,CAAAZ,WAAA;YAAAoC,SAAA,EAAuB;YAAAD,IAAA;UAAA,C;;;;;;;;;;;;;IAtB/BI,EAAA,GAAA3B,IAAA,CAAAT,KAAA;MAAAyC,SAAA,EACahB,MAAA;MAAAiB,YAAA,EACG7B,EAId;MAAA8B,YAAA,EACcR,E;YAmBT;MAAAH,IAAA,EACA;MAAAY,KAAA,EACC;MAAAlC,QAAA,EAEND,IAAA,CAAC;QAAAqB,SAAA,EACW;QAAAS,YAAA,EACIb,QAAA;QAAAc,GAAA,EACThB,UAAA;QAAAd,QAAA,EAELD,IAAA,CAAAN,mBAAA,IAAC;MAAA,C;;;;;;;;;;;SAnCLiC,E;CAuCJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","ChevronIcon","LanguageIcon","useTranslation","Popup","PopupList","LanguageMenuContent","$","i18n","languageOptions","switchLanguage","t0","_jsx","children","RadioGroup","map","t1","label","value","RadioGroupItem","active","language","onClick","LanguageMenu","onMobileOpen","t","_jsxs","className","type","size","direction","renderButton","t2","onKeyDown","aria","filter","Boolean","join","theme"],"sources":["../../../../src/elements/UserMenu/LanguageMenu/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { ChevronIcon } from '../../../icons/Chevron/index.js'\nimport { LanguageIcon } from '../../../icons/Language/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Popup, PopupList } from '../../Popup/index.js'\n\nexport const LanguageMenuContent: React.FC = () => {\n const { i18n, languageOptions, switchLanguage } = useTranslation()\n\n return (\n <div data-popup-prevent-close>\n <PopupList.RadioGroup>\n {languageOptions?.map(({ label, value }) => (\n <PopupList.RadioGroupItem\n active={i18n.language === value}\n key={value}\n onClick={() => {\n if (switchLanguage) {\n void switchLanguage(value)\n }\n }}\n >\n {label}\n </PopupList.RadioGroupItem>\n ))}\n </PopupList.RadioGroup>\n </div>\n )\n}\n\nexport const LanguageMenu: React.FC<{\n readonly onMobileOpen?: () => void\n}> = ({ onMobileOpen }) => {\n const { t } = useTranslation()\n\n if (onMobileOpen) {\n return (\n <button\n className=\"popup-button-list__button popup-button-list__button--submenu-trigger\"\n data-popup-prevent-close\n onClick={onMobileOpen}\n type=\"button\"\n >\n <span className=\"popup-button-list__submenu-icon\">\n <LanguageIcon size={24} />\n </span>\n <span className=\"popup-button-list__label\">{t('general:language')}</span>\n <span className=\"popup-button-list__chevron\">\n <ChevronIcon direction=\"right\" size={24} />\n </span>\n </button>\n )\n }\n\n return (\n <Popup\n renderButton={({ active, onClick, onKeyDown, ...aria }) => (\n <button\n {...aria}\n className={[\n 'popup-button-list__button',\n 'popup-button-list__button--submenu-trigger',\n active && 'popup-button-list__button--selected',\n ]\n .filter(Boolean)\n .join(' ')}\n onClick={onClick}\n onKeyDown={onKeyDown}\n type=\"button\"\n >\n <span className=\"popup-button-list__submenu-icon\">\n <LanguageIcon size={24} />\n </span>\n <span className=\"popup-button-list__label\">{t('general:language')}</span>\n <span className=\"popup-button-list__chevron\">\n <ChevronIcon direction=\"right\" size={16} />\n </span>\n </button>\n )}\n side=\"left\"\n size=\"large\"\n theme=\"dark\"\n >\n <LanguageMenuContent />\n </Popup>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAElB,SAASC,WAAW,QAAQ;AAC5B,SAASC,YAAY,QAAQ;AAC7B,SAASC,cAAc,QAAQ;AAC/B,SAASC,KAAK,EAAEC,SAAS,QAAQ;AAEjC,OAAO,MAAMC,mBAAA,GAAgCA,CAAA;EAAA,MAAAC,CAAA,GAAAR,EAAA;EAC3C;IAAAS,IAAA;IAAAC,eAAA;IAAAC;EAAA,IAAkDP,cAAA;EAAA,IAAAQ,EAAA;EAAA,IAAAJ,CAAA,QAAAC,IAAA,IAAAD,CAAA,QAAAE,eAAA,IAAAF,CAAA,QAAAG,cAAA;IAGhDC,EAAA,GAAAC,IAAA,CAAC;MAAA;MAAAC,QAAA,EACCD,IAAA,CAAAP,SAAA,CAAAS,UAAA;QAAAD,QAAA,EACGJ,eAAA,EAAAM,GAAA,CAAAC,EAAA;UAAsB;YAAAC,KAAA;YAAAC;UAAA,IAAAF,EAAgB;UAAA,OACrCJ,IAAA,CAAAP,SAAA,CAAAc,cAAA;YAAAC,MAAA,EACUZ,IAAA,CAAAa,QAAA,KAAkBH,KAAA;YAAAI,OAAA,EAAAA,CAAA;cAAA,IAGpBZ,cAAA;gBACGA,cAAA,CAAeQ,KAAA;cAAA;YAAA;YAAAL,QAAA,EAIvBI;UAAA,GAPIC,KAAA;QAAA;MAAA,C;;;;;;;;;SALbP,E;CAkBJ;AAEA,OAAO,MAAMY,YAAA,GAERZ,EAAA;EAAA,MAAAJ,CAAA,GAAAR,EAAA;EAAC;IAAAyB;EAAA,IAAAb,EAAgB;EACpB;IAAAc;EAAA,IAActB,cAAA;EAAA,IAEVqB,YAAA;IAAA,IAAAR,EAAA;IAAA,IAAAT,CAAA,QAAAiB,YAAA,IAAAjB,CAAA,QAAAkB,CAAA;MAEAT,EAAA,GAAAU,KAAA,CAAC;QAAAC,SAAA,EACW;QAAA;QAAAL,OAAA,EAEDE,YAAA;QAAAI,IAAA,EACJ;QAAAf,QAAA,GAELD,IAAA,CAAC;UAAAe,SAAA,EAAe;UAAAd,QAAA,EACdD,IAAA,CAAAV,YAAA;YAAA2B,IAAA;UAAA,C;YAEFjB,IAAA,CAAC;UAAAe,SAAA,EAAe;UAAAd,QAAA,EAA4BY,CAAA,CAAE;QAAA,C,GAC9Cb,IAAA,CAAC;UAAAe,SAAA,EAAe;UAAAd,QAAA,EACdD,IAAA,CAAAX,WAAA;YAAA6B,SAAA,EAAuB;YAAAD,IAAA;UAAA,C;;;;;;;;;WAX3Bb,E;;;;IAkBFA,EAAA,GAAAJ,IAAA,CAAAR,KAAA;MAAA2B,YAAA,EAAAC,EAAA;QACiB;UAAAZ,MAAA;UAAAE,OAAA;UAAAW,SAAA;UAAA,GAAAC;QAAA,IAAAF,EAAuC;QAAA,OACpDN,KAAA,CAAC;UAAA,GACKQ,IAAI;UAAAP,SAAA,EACG,CACT,6BACA,8CACAP,MAAA,IAAU,uCAAAe,MAAA,CAAAC,OAEF,EAAAC,IAAA,CACF;UAAAf,OAAA;UAAAW,SAAA;UAAAL,IAAA,EAGH;UAAAf,QAAA,GAELD,IAAA,CAAC;YAAAe,SAAA,EAAe;YAAAd,QAAA,EACdD,IAAA,CAAAV,YAAA;cAAA2B,IAAA;YAAA,C;cAEFjB,IAAA,CAAC;YAAAe,SAAA,EAAe;YAAAd,QAAA,EAA4BY,CAAA,CAAE;UAAA,C,GAC9Cb,IAAA,CAAC;YAAAe,SAAA,EAAe;YAAAd,QAAA,EACdD,IAAA,CAAAX,WAAA;cAAA6B,SAAA,EAAuB;cAAAD,IAAA;YAAA,C;;;;YAIxB;MAAAA,IAAA,EACA;MAAAS,KAAA,EACC;MAAAzB,QAAA,EAEND,IAAA,CAAAN,mBAAA,IAAC;IAAA,C;;;;;;SA5BHU,E;CA+BJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/UserMenu/SettingsMenu/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmB,MAAM,OAAO,CAAA;AASvC,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;CACzB,CAAA;AAED,KAAK,iBAAiB,GAAG;IACvB,MAAM,EAAE,qBAAqB,EAAE,CAAA;IAC/B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,MAAM,EAAE,qBAAqB,EAAE,CAAA;CAAE,CAY7E,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA+DpD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/UserMenu/SettingsMenu/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAQvC,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;CACzB,CAAA;AAED,KAAK,iBAAiB,GAAG;IACvB,MAAM,EAAE,qBAAqB,EAAE,CAAA;IAC/B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,MAAM,EAAE,qBAAqB,EAAE,CAAA;CAAE,CAY7E,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAsDpD,CAAA"}
@@ -8,7 +8,6 @@ import { GearIcon } from '../../../icons/Gear/index.js';
8
8
  import { useTranslation } from '../../../providers/Translation/index.js';
9
9
  import { MenuSeparator } from '../../MenuSeparator/index.js';
10
10
  import { Popup, PopupList } from '../../Popup/index.js';
11
- import { useHoverSubmenu } from '../useHoverSubmenu.js';
12
11
  export const SettingsMenuContent = ({
13
12
  groups
14
13
  }) => /*#__PURE__*/_jsx(_Fragment, {
@@ -21,7 +20,7 @@ export const SettingsMenuContent = ({
21
20
  }, `settings-group-${group.group}-${groupIndex}`))
22
21
  });
23
22
  export const SettingsMenu = t0 => {
24
- const $ = _c(16);
23
+ const $ = _c(8);
25
24
  const {
26
25
  groups,
27
26
  onMobileOpen
@@ -29,14 +28,6 @@ export const SettingsMenu = t0 => {
29
28
  const {
30
29
  t
31
30
  } = useTranslation();
32
- const {
33
- close,
34
- contentRef,
35
- isOpen,
36
- keepOpen,
37
- open,
38
- triggerRef
39
- } = useHoverSubmenu("settings");
40
31
  if (onMobileOpen) {
41
32
  let t1;
42
33
  if ($[0] !== onMobileOpen || $[1] !== t) {
@@ -46,7 +37,7 @@ export const SettingsMenu = t0 => {
46
37
  onClick: onMobileOpen,
47
38
  type: "button",
48
39
  children: [_jsx("span", {
49
- className: "popup-button-list__icon",
40
+ className: "popup-button-list__submenu-icon",
50
41
  children: _jsx(GearIcon, {
51
42
  size: 24
52
43
  })
@@ -70,36 +61,22 @@ export const SettingsMenu = t0 => {
70
61
  return t1;
71
62
  }
72
63
  let t1;
73
- if ($[3] !== close) {
74
- t1 = nextOpen => {
75
- if (!nextOpen) {
76
- close();
77
- }
78
- };
79
- $[3] = close;
80
- $[4] = t1;
81
- } else {
82
- t1 = $[4];
83
- }
84
- let t2;
85
- if ($[5] !== open || $[6] !== t || $[7] !== triggerRef) {
86
- t2 = t3 => {
64
+ if ($[3] !== t) {
65
+ t1 = t2 => {
87
66
  const {
88
67
  active,
89
68
  onClick,
90
69
  onKeyDown,
91
70
  ...aria
92
- } = t3;
71
+ } = t2;
93
72
  return _jsxs("button", {
94
73
  ...aria,
95
- className: "popup-button-list__button popup-button-list__button--submenu-trigger popup-button-list__button--submenu-trigger-settings",
74
+ className: ["popup-button-list__button", "popup-button-list__button--submenu-trigger", active && "popup-button-list__button--selected"].filter(Boolean).join(" "),
96
75
  onClick,
97
76
  onKeyDown,
98
- onMouseEnter: open,
99
- ref: triggerRef,
100
77
  type: "button",
101
78
  children: [_jsx("span", {
102
- className: "popup-button-list__icon",
79
+ className: "popup-button-list__submenu-icon",
103
80
  children: _jsx(GearIcon, {
104
81
  size: 24
105
82
  })
@@ -115,41 +92,28 @@ export const SettingsMenu = t0 => {
115
92
  })]
116
93
  });
117
94
  };
118
- $[5] = open;
119
- $[6] = t;
120
- $[7] = triggerRef;
121
- $[8] = t2;
95
+ $[3] = t;
96
+ $[4] = t1;
122
97
  } else {
123
- t2 = $[8];
98
+ t1 = $[4];
124
99
  }
125
- let t3;
126
- if ($[9] !== contentRef || $[10] !== groups || $[11] !== isOpen || $[12] !== keepOpen || $[13] !== t1 || $[14] !== t2) {
127
- t3 = _jsx(Popup, {
128
- forceOpen: isOpen,
129
- onToggleOpen: t1,
130
- renderButton: t2,
100
+ let t2;
101
+ if ($[5] !== groups || $[6] !== t1) {
102
+ t2 = _jsx(Popup, {
103
+ renderButton: t1,
131
104
  side: "left",
132
105
  size: "large",
133
106
  theme: "dark",
134
- children: _jsx("div", {
135
- className: "popup-button-list__submenu-content-settings",
136
- onMouseEnter: keepOpen,
137
- ref: contentRef,
138
- children: _jsx(SettingsMenuContent, {
139
- groups
140
- })
107
+ children: _jsx(SettingsMenuContent, {
108
+ groups
141
109
  })
142
110
  });
143
- $[9] = contentRef;
144
- $[10] = groups;
145
- $[11] = isOpen;
146
- $[12] = keepOpen;
147
- $[13] = t1;
148
- $[14] = t2;
149
- $[15] = t3;
111
+ $[5] = groups;
112
+ $[6] = t1;
113
+ $[7] = t2;
150
114
  } else {
151
- t3 = $[15];
115
+ t2 = $[7];
152
116
  }
153
- return t3;
117
+ return t2;
154
118
  };
155
119
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","Fragment","ChevronIcon","GearIcon","useTranslation","MenuSeparator","Popup","PopupList","useHoverSubmenu","SettingsMenuContent","groups","_jsx","_Fragment","map","group","groupIndex","_jsxs","GroupLabel","label","items","item","itemIndex","SettingsMenu","t0","$","onMobileOpen","t","close","contentRef","isOpen","keepOpen","open","triggerRef","t1","className","onClick","type","children","size","direction","nextOpen","t2","t3","active","onKeyDown","aria","onMouseEnter","ref","forceOpen","onToggleOpen","renderButton","theme"],"sources":["../../../../src/elements/UserMenu/SettingsMenu/index.tsx"],"sourcesContent":["'use client'\nimport React, { Fragment } from 'react'\n\nimport { ChevronIcon } from '../../../icons/Chevron/index.js'\nimport { GearIcon } from '../../../icons/Gear/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { MenuSeparator } from '../../MenuSeparator/index.js'\nimport { Popup, PopupList } from '../../Popup/index.js'\nimport { useHoverSubmenu } from '../useHoverSubmenu.js'\n\nexport type UserMenuSettingsGroup = {\n group?: string\n items: React.ReactNode[]\n}\n\ntype SettingsMenuProps = {\n groups: UserMenuSettingsGroup[]\n onMobileOpen?: () => void\n}\n\nexport const SettingsMenuContent: React.FC<{ groups: UserMenuSettingsGroup[] }> = ({ groups }) => (\n <>\n {groups.map((group, groupIndex) => (\n <Fragment key={`settings-group-${group.group}-${groupIndex}`}>\n {groupIndex > 0 && <MenuSeparator />}\n {group.group && <PopupList.GroupLabel label={group.group} />}\n {group.items.map((item, itemIndex) => (\n <Fragment key={`settings-item-${groupIndex}-${itemIndex}`}>{item}</Fragment>\n ))}\n </Fragment>\n ))}\n </>\n)\n\nexport const SettingsMenu: React.FC<SettingsMenuProps> = ({ groups, onMobileOpen }) => {\n const { t } = useTranslation()\n const { close, contentRef, isOpen, keepOpen, open, triggerRef } = useHoverSubmenu('settings')\n\n if (onMobileOpen) {\n return (\n <button\n className=\"popup-button-list__button popup-button-list__button--submenu-trigger\"\n data-popup-prevent-close\n onClick={onMobileOpen}\n type=\"button\"\n >\n <span className=\"popup-button-list__icon\">\n <GearIcon size={24} />\n </span>\n <span className=\"popup-button-list__label\">{t('general:settings')}</span>\n <span className=\"popup-button-list__chevron\">\n <ChevronIcon direction=\"right\" size={24} />\n </span>\n </button>\n )\n }\n\n return (\n <Popup\n forceOpen={isOpen}\n onToggleOpen={(nextOpen) => {\n if (!nextOpen) {\n close()\n }\n }}\n renderButton={({ active, onClick, onKeyDown, ...aria }) => (\n <button\n {...aria}\n className=\"popup-button-list__button popup-button-list__button--submenu-trigger popup-button-list__button--submenu-trigger-settings\"\n onClick={onClick}\n onKeyDown={onKeyDown}\n onMouseEnter={open}\n ref={triggerRef as React.Ref<HTMLButtonElement>}\n type=\"button\"\n >\n <span className=\"popup-button-list__icon\">\n <GearIcon size={24} />\n </span>\n <span className=\"popup-button-list__label\">{t('general:settings')}</span>\n <span className=\"popup-button-list__chevron\">\n <ChevronIcon direction=\"right\" size={16} />\n </span>\n </button>\n )}\n side=\"left\"\n size=\"large\"\n theme=\"dark\"\n >\n <div\n className=\"popup-button-list__submenu-content-settings\"\n onMouseEnter={keepOpen}\n ref={contentRef as React.Ref<HTMLDivElement>}\n >\n <SettingsMenuContent groups={groups} />\n </div>\n </Popup>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","Fragment","ChevronIcon","GearIcon","useTranslation","MenuSeparator","Popup","PopupList","SettingsMenuContent","groups","_jsx","_Fragment","map","group","groupIndex","_jsxs","GroupLabel","label","items","item","itemIndex","SettingsMenu","t0","$","onMobileOpen","t","t1","className","onClick","type","children","size","direction","t2","active","onKeyDown","aria","filter","Boolean","join","renderButton","theme"],"sources":["../../../../src/elements/UserMenu/SettingsMenu/index.tsx"],"sourcesContent":["'use client'\nimport React, { Fragment } from 'react'\n\nimport { ChevronIcon } from '../../../icons/Chevron/index.js'\nimport { GearIcon } from '../../../icons/Gear/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { MenuSeparator } from '../../MenuSeparator/index.js'\nimport { Popup, PopupList } from '../../Popup/index.js'\n\nexport type UserMenuSettingsGroup = {\n group?: string\n items: React.ReactNode[]\n}\n\ntype SettingsMenuProps = {\n groups: UserMenuSettingsGroup[]\n onMobileOpen?: () => void\n}\n\nexport const SettingsMenuContent: React.FC<{ groups: UserMenuSettingsGroup[] }> = ({ groups }) => (\n <>\n {groups.map((group, groupIndex) => (\n <Fragment key={`settings-group-${group.group}-${groupIndex}`}>\n {groupIndex > 0 && <MenuSeparator />}\n {group.group && <PopupList.GroupLabel label={group.group} />}\n {group.items.map((item, itemIndex) => (\n <Fragment key={`settings-item-${groupIndex}-${itemIndex}`}>{item}</Fragment>\n ))}\n </Fragment>\n ))}\n </>\n)\n\nexport const SettingsMenu: React.FC<SettingsMenuProps> = ({ groups, onMobileOpen }) => {\n const { t } = useTranslation()\n\n if (onMobileOpen) {\n return (\n <button\n className=\"popup-button-list__button popup-button-list__button--submenu-trigger\"\n data-popup-prevent-close\n onClick={onMobileOpen}\n type=\"button\"\n >\n <span className=\"popup-button-list__submenu-icon\">\n <GearIcon size={24} />\n </span>\n <span className=\"popup-button-list__label\">{t('general:settings')}</span>\n <span className=\"popup-button-list__chevron\">\n <ChevronIcon direction=\"right\" size={24} />\n </span>\n </button>\n )\n }\n\n return (\n <Popup\n renderButton={({ active, onClick, onKeyDown, ...aria }) => (\n <button\n {...aria}\n className={[\n 'popup-button-list__button',\n 'popup-button-list__button--submenu-trigger',\n active && 'popup-button-list__button--selected',\n ]\n .filter(Boolean)\n .join(' ')}\n onClick={onClick}\n onKeyDown={onKeyDown}\n type=\"button\"\n >\n <span className=\"popup-button-list__submenu-icon\">\n <GearIcon size={24} />\n </span>\n <span className=\"popup-button-list__label\">{t('general:settings')}</span>\n <span className=\"popup-button-list__chevron\">\n <ChevronIcon direction=\"right\" size={16} />\n </span>\n </button>\n )}\n side=\"left\"\n size=\"large\"\n theme=\"dark\"\n >\n <SettingsMenuContent groups={groups} />\n </Popup>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,IAASC,QAAQ,QAAQ;AAEhC,SAASC,WAAW,QAAQ;AAC5B,SAASC,QAAQ,QAAQ;AACzB,SAASC,cAAc,QAAQ;AAC/B,SAASC,aAAa,QAAQ;AAC9B,SAASC,KAAK,EAAEC,SAAS,QAAQ;AAYjC,OAAO,MAAMC,mBAAA,GAAqEA,CAAC;EAAEC;AAAM,CAAE,kBAC3FC,IAAA,CAAAC,SAAA;YACGF,MAAA,CAAOG,GAAG,CAAC,CAACC,KAAA,EAAOC,UAAA,kBAClBC,KAAA,CAACd,QAAA;eACEa,UAAA,GAAa,kBAAKJ,IAAA,CAACL,aAAA,OACnBQ,KAAA,CAAMA,KAAK,iBAAIH,IAAA,CAACH,SAAA,CAAUS,UAAU;MAACC,KAAA,EAAOJ,KAAA,CAAMA;QAClDA,KAAA,CAAMK,KAAK,CAACN,GAAG,CAAC,CAACO,IAAA,EAAMC,SAAA,kBACtBV,IAAA,CAACT,QAAA;gBAA2DkB;OAA7C,iBAAiBL,UAAA,IAAcM,SAAA,EAAW;KAJ9C,kBAAkBP,KAAA,CAAMA,KAAK,IAAIC,UAAA,EAAY;;AAWlE,OAAO,MAAMO,YAAA,GAA4CC,EAAA;EAAA,MAAAC,CAAA,GAAAxB,EAAA;EAAC;IAAAU,MAAA;IAAAe;EAAA,IAAAF,EAAwB;EAChF;IAAAG;EAAA,IAAcrB,cAAA;EAAA,IAEVoB,YAAA;IAAA,IAAAE,EAAA;IAAA,IAAAH,CAAA,QAAAC,YAAA,IAAAD,CAAA,QAAAE,CAAA;MAEAC,EAAA,GAAAX,KAAA,CAAC;QAAAY,SAAA,EACW;QAAA;QAAAC,OAAA,EAEDJ,YAAA;QAAAK,IAAA,EACJ;QAAAC,QAAA,GAELpB,IAAA,CAAC;UAAAiB,SAAA,EAAe;UAAAG,QAAA,EACdpB,IAAA,CAAAP,QAAA;YAAA4B,IAAA;UAAA,C;YAEFrB,IAAA,CAAC;UAAAiB,SAAA,EAAe;UAAAG,QAAA,EAA4BL,CAAA,CAAE;QAAA,C,GAC9Cf,IAAA,CAAC;UAAAiB,SAAA,EAAe;UAAAG,QAAA,EACdpB,IAAA,CAAAR,WAAA;YAAA8B,SAAA,EAAuB;YAAAD,IAAA;UAAA,C;;;;;;;;;WAX3BL,E;;;;IAmBcA,EAAA,GAAAO,EAAA;MAAC;QAAAC,MAAA;QAAAN,OAAA;QAAAO,SAAA;QAAA,GAAAC;MAAA,IAAAH,EAAuC;MAAA,OACpDlB,KAAA,CAAC;QAAA,GACKqB,IAAI;QAAAT,SAAA,EACG,CACT,6BACA,8CACAO,MAAA,IAAU,uCAAAG,MAAA,CAAAC,OAEF,EAAAC,IAAA,CACF;QAAAX,OAAA;QAAAO,SAAA;QAAAN,IAAA,EAGH;QAAAC,QAAA,GAELpB,IAAA,CAAC;UAAAiB,SAAA,EAAe;UAAAG,QAAA,EACdpB,IAAA,CAAAP,QAAA;YAAA4B,IAAA;UAAA,C;YAEFrB,IAAA,CAAC;UAAAiB,SAAA,EAAe;UAAAG,QAAA,EAA4BL,CAAA,CAAE;QAAA,C,GAC9Cf,IAAA,CAAC;UAAAiB,SAAA,EAAe;UAAAG,QAAA,EACdpB,IAAA,CAAAR,WAAA;YAAA8B,SAAA,EAAuB;YAAAD,IAAA;UAAA,C;;;;;;;;;;;IApB/BE,EAAA,GAAAvB,IAAA,CAAAJ,KAAA;MAAAkC,YAAA,EACgBd,E;YAuBT;MAAAK,IAAA,EACA;MAAAU,KAAA,EACC;MAAAX,QAAA,EAENpB,IAAA,CAAAF,mBAAA;QAAAC;MAAA,C;;;;;;;;SA5BFwB,E;CA+BJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/UserMenu/ThemeMenu/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AASzB,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EA2BpC,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;IAC/B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CACnC,CA+DA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/UserMenu/ThemeMenu/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EA2BpC,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;IAC/B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CACnC,CAsDA,CAAA"}