@payloadcms/ui 4.0.0-internal.d3909a9 → 4.0.0-internal.d7d662c

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 (761) hide show
  1. package/dist/css/app.css +2 -2
  2. package/dist/css/colors.css +65 -0
  3. package/dist/elements/APIKeyInput/index.js +22 -23
  4. package/dist/elements/APIKeyInput/index.js.map +1 -1
  5. package/dist/elements/AddNewRelation/index.js +17 -19
  6. package/dist/elements/AddNewRelation/index.js.map +1 -1
  7. package/dist/elements/ArrayAction/index.js +39 -30
  8. package/dist/elements/ArrayAction/index.js.map +1 -1
  9. package/dist/elements/Autosave/index.js +234 -142
  10. package/dist/elements/Autosave/index.js.map +1 -1
  11. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  12. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  13. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  14. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  15. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  16. package/dist/elements/BulkUpload/EditMany/index.js +29 -21
  17. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  18. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  19. package/dist/elements/BulkUpload/index.js +63 -23
  20. package/dist/elements/BulkUpload/index.js.map +1 -1
  21. package/dist/elements/BulkUpload/useUploadCollectionOptions.js.map +1 -1
  22. package/dist/elements/Button/index.css +3 -3
  23. package/dist/elements/Button/index.d.ts.map +1 -1
  24. package/dist/elements/Button/index.js +2 -1
  25. package/dist/elements/Button/index.js.map +1 -1
  26. package/dist/elements/Button/types.d.ts +1 -0
  27. package/dist/elements/Button/types.d.ts.map +1 -1
  28. package/dist/elements/Button/types.js.map +1 -1
  29. package/dist/elements/CardGrid/index.css +0 -1
  30. package/dist/elements/Chip/index.js.map +1 -1
  31. package/dist/elements/ClipboardAction/ClipboardActionLabel.js.map +1 -1
  32. package/dist/elements/ClipboardAction/index.js +213 -88
  33. package/dist/elements/ClipboardAction/index.js.map +1 -1
  34. package/dist/elements/CloseModalOnRouteChange/index.js.map +1 -1
  35. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  36. package/dist/elements/CodeEditor/CodeEditor.js +95 -56
  37. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  38. package/dist/elements/CollapseAllToggle/index.js +47 -32
  39. package/dist/elements/CollapseAllToggle/index.js.map +1 -1
  40. package/dist/elements/Collapsible/index.css +15 -4
  41. package/dist/elements/Collapsible/index.d.ts.map +1 -1
  42. package/dist/elements/Collapsible/index.js +46 -38
  43. package/dist/elements/Collapsible/index.js.map +1 -1
  44. package/dist/elements/Collapsible/provider.js +37 -14
  45. package/dist/elements/Collapsible/provider.js.map +1 -1
  46. package/dist/elements/ColumnSelection/Popup.css +4 -0
  47. package/dist/elements/ColumnSelection/Popup.js +10 -2
  48. package/dist/elements/ColumnSelection/Popup.js.map +1 -1
  49. package/dist/elements/ColumnSelection/index.js.map +1 -1
  50. package/dist/elements/CommandPalette/index.css +8 -0
  51. package/dist/elements/ConfirmationModal/index.d.ts +3 -0
  52. package/dist/elements/ConfirmationModal/index.d.ts.map +1 -1
  53. package/dist/elements/ConfirmationModal/index.js +2 -0
  54. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  55. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  56. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  57. package/dist/elements/CreateDocumentButton/index.js +45 -43
  58. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  59. package/dist/elements/DatePicker/index.css +5 -0
  60. package/dist/elements/DatePicker/useDatePickerKeyboard.js.map +1 -1
  61. package/dist/elements/DefaultListViewTabs/index.css +4 -0
  62. package/dist/elements/DefaultListViewTabs/index.js +47 -37
  63. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  64. package/dist/elements/DelayedSpinner/index.js.map +1 -1
  65. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  66. package/dist/elements/DeleteDocument/index.js +1 -3
  67. package/dist/elements/DeleteDocument/index.js.map +1 -1
  68. package/dist/elements/Dialog/DialogCancel/index.js.map +1 -1
  69. package/dist/elements/Dialog/DialogConfirm/index.js.map +1 -1
  70. package/dist/elements/Dialog/DialogHeader/index.js.map +1 -1
  71. package/dist/elements/Dialog/DialogModal/index.js.map +1 -1
  72. package/dist/elements/DocumentCard/index.d.ts +2 -0
  73. package/dist/elements/DocumentCard/index.d.ts.map +1 -1
  74. package/dist/elements/DocumentCard/index.js +2 -0
  75. package/dist/elements/DocumentCard/index.js.map +1 -1
  76. package/dist/elements/DocumentControls/index.js +1 -1
  77. package/dist/elements/DocumentControls/index.js.map +1 -1
  78. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  79. package/dist/elements/DocumentFields/index.js +125 -64
  80. package/dist/elements/DocumentFields/index.js.map +1 -1
  81. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +1 -1
  82. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts.map +1 -1
  83. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +80 -34
  84. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  85. package/dist/elements/DocumentHeader/Tabs/Tab/index.css +4 -0
  86. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  87. package/dist/elements/DocumentLocked/index.d.ts.map +1 -1
  88. package/dist/elements/DocumentLocked/index.js +1 -0
  89. package/dist/elements/DocumentLocked/index.js.map +1 -1
  90. package/dist/elements/DocumentStaleData/index.js.map +1 -1
  91. package/dist/elements/DocumentTakeOver/index.js.map +1 -1
  92. package/dist/elements/DraggableSortable/DragOverlayPreview/index.js +2 -0
  93. package/dist/elements/DraggableSortable/DragOverlayPreview/index.js.map +1 -1
  94. package/dist/elements/DraggableSortable/DraggableSortableItem/index.d.ts.map +1 -1
  95. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +10 -7
  96. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  97. package/dist/elements/DraggableSortable/DraggableSortableItem/types.d.ts +2 -0
  98. package/dist/elements/DraggableSortable/DraggableSortableItem/types.d.ts.map +1 -1
  99. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js.map +1 -1
  100. package/dist/elements/DraggableSortable/index.d.ts.map +1 -1
  101. package/dist/elements/DraggableSortable/index.js +104 -170
  102. package/dist/elements/DraggableSortable/index.js.map +1 -1
  103. package/dist/elements/DraggableSortable/types.d.ts +1 -0
  104. package/dist/elements/DraggableSortable/types.d.ts.map +1 -1
  105. package/dist/elements/DraggableSortable/types.js.map +1 -1
  106. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  107. package/dist/elements/DraggableSortable/useRowAccessibility.d.ts +14 -0
  108. package/dist/elements/DraggableSortable/useRowAccessibility.d.ts.map +1 -0
  109. package/dist/elements/DraggableSortable/useRowAccessibility.js +99 -0
  110. package/dist/elements/DraggableSortable/useRowAccessibility.js.map +1 -0
  111. package/dist/elements/Drawer/index.js +138 -81
  112. package/dist/elements/Drawer/index.js.map +1 -1
  113. package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
  114. package/dist/elements/DrawerActionHeader/index.js.map +1 -1
  115. package/dist/elements/DrawerHeader/index.js.map +1 -1
  116. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +177 -62
  117. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  118. package/dist/elements/EditMany/DrawerContent.js +1 -1
  119. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  120. package/dist/elements/EditMany/index.js.map +1 -1
  121. package/dist/elements/FieldDiffContainer/index.d.ts.map +1 -1
  122. package/dist/elements/FieldDiffContainer/index.js +7 -1
  123. package/dist/elements/FieldDiffContainer/index.js.map +1 -1
  124. package/dist/elements/FieldDiffLabel/index.d.ts +1 -0
  125. package/dist/elements/FieldDiffLabel/index.d.ts.map +1 -1
  126. package/dist/elements/FieldDiffLabel/index.js +2 -0
  127. package/dist/elements/FieldDiffLabel/index.js.map +1 -1
  128. package/dist/elements/FieldSelect/index.js +23 -14
  129. package/dist/elements/FieldSelect/index.js.map +1 -1
  130. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  131. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  132. package/dist/elements/FileManager/FilePreview/index.js.map +1 -1
  133. package/dist/elements/FileManager/index.js.map +1 -1
  134. package/dist/elements/FullscreenModal/index.js.map +1 -1
  135. package/dist/elements/GenerateConfirmation/index.js +21 -21
  136. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  137. package/dist/elements/GroupBy/Popup.js.map +1 -1
  138. package/dist/elements/GroupBy/index.js +120 -66
  139. package/dist/elements/GroupBy/index.js.map +1 -1
  140. package/dist/elements/HTMLDiff/colors.css +7 -0
  141. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js.map +1 -1
  142. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js +51 -42
  143. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js.map +1 -1
  144. package/dist/elements/Hierarchy/DocHeaderButton/index.js +1 -1
  145. package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -1
  146. package/dist/elements/Hierarchy/EditButton/index.js.map +1 -1
  147. package/dist/elements/Hierarchy/HydrateProvider/index.js.map +1 -1
  148. package/dist/elements/Hierarchy/Modal/Footer/index.js.map +1 -1
  149. package/dist/elements/Hierarchy/Search/HierarchySearchResultItem.js +25 -18
  150. package/dist/elements/Hierarchy/Search/HierarchySearchResultItem.js.map +1 -1
  151. package/dist/elements/Hierarchy/Search/HierarchySearchResults.js.map +1 -1
  152. package/dist/elements/Hierarchy/Search/index.js.map +1 -1
  153. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
  154. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js.map +1 -1
  155. package/dist/elements/Hierarchy/Tree/index.d.ts.map +1 -1
  156. package/dist/elements/Hierarchy/Tree/index.js +10 -5
  157. package/dist/elements/Hierarchy/Tree/index.js.map +1 -1
  158. package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
  159. package/dist/elements/HydratePreferences/index.js.map +1 -1
  160. package/dist/elements/IDLabel/index.js.map +1 -1
  161. package/dist/elements/InputStepper/index.js.map +1 -1
  162. package/dist/elements/ItemsDrawer/ItemSearch/index.js.map +1 -1
  163. package/dist/elements/ItemsDrawer/index.js +186 -105
  164. package/dist/elements/ItemsDrawer/index.js.map +1 -1
  165. package/dist/elements/LLMInstructionsDescription/index.js.map +1 -1
  166. package/dist/elements/LLMInstructionsMenuItem/index.js.map +1 -1
  167. package/dist/elements/LayoutToggle/index.js.map +1 -1
  168. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  169. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +1 -1
  170. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
  171. package/dist/elements/Link/index.js +1 -1
  172. package/dist/elements/Link/index.js.map +1 -1
  173. package/dist/elements/ListColumnSelectionButton/index.js.map +1 -1
  174. package/dist/elements/ListControls/index.js.map +1 -1
  175. package/dist/elements/ListDrawer/DrawerContent.js +1 -1
  176. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  177. package/dist/elements/ListDrawer/Provider.d.ts +3 -2
  178. package/dist/elements/ListDrawer/Provider.d.ts.map +1 -1
  179. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  180. package/dist/elements/ListDrawer/index.js.map +1 -1
  181. package/dist/elements/ListGroupByButton/index.js.map +1 -1
  182. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  183. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.js.map +1 -1
  184. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -1
  185. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  186. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +11 -12
  187. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -1
  188. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +1 -1
  189. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  190. package/dist/elements/ListSelection/index.js.map +1 -1
  191. package/dist/elements/ListWhereBuilder/index.js.map +1 -1
  192. package/dist/elements/LivePreview/DeviceContainer/index.js.map +1 -1
  193. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  194. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  195. package/dist/elements/LivePreview/Toolbar/index.js.map +1 -1
  196. package/dist/elements/LivePreview/ToolbarArea/index.js.map +1 -1
  197. package/dist/elements/LivePreview/Window/index.d.ts.map +1 -1
  198. package/dist/elements/LivePreview/Window/index.js +6 -1
  199. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  200. package/dist/elements/LoadMoreRow/index.js.map +1 -1
  201. package/dist/elements/Loading/index.js +62 -18
  202. package/dist/elements/Loading/index.js.map +1 -1
  203. package/dist/elements/LoadingOverlay/index.js +93 -49
  204. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  205. package/dist/elements/Localizer/index.js +133 -108
  206. package/dist/elements/Localizer/index.js.map +1 -1
  207. package/dist/elements/Locked/index.js +54 -37
  208. package/dist/elements/Locked/index.js.map +1 -1
  209. package/dist/elements/Logout/index.js.map +1 -1
  210. package/dist/elements/MiniCarousel/index.js +102 -38
  211. package/dist/elements/MiniCarousel/index.js.map +1 -1
  212. package/dist/elements/Modal/index.d.ts.map +1 -1
  213. package/dist/elements/Modal/index.js +13 -1
  214. package/dist/elements/Modal/index.js.map +1 -1
  215. package/dist/elements/Nav/NavSidebarToggle/index.js.map +1 -1
  216. package/dist/elements/Nav/NavWrapper/index.js +13 -14
  217. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  218. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
  219. package/dist/elements/Nav/SidebarTabs/TabError/index.js.map +1 -1
  220. package/dist/elements/Nav/SidebarTabs/index.client.d.ts.map +1 -1
  221. package/dist/elements/Nav/SidebarTabs/index.client.js +31 -20
  222. package/dist/elements/Nav/SidebarTabs/index.client.js.map +1 -1
  223. package/dist/elements/Nav/index.client.js.map +1 -1
  224. package/dist/elements/Nav/index.css +5 -0
  225. package/dist/elements/NavGroup/index.css +27 -3
  226. package/dist/elements/NavGroup/index.js +31 -38
  227. package/dist/elements/NavGroup/index.js.map +1 -1
  228. package/dist/elements/NoListResults/index.css +1 -0
  229. package/dist/elements/NoListResults/index.js +1 -1
  230. package/dist/elements/NoListResults/index.js.map +1 -1
  231. package/dist/elements/PageControls/GroupByPageControls.js.map +1 -1
  232. package/dist/elements/PageControls/index.js.map +1 -1
  233. package/dist/elements/Pagination/ClickableArrow/index.js +10 -11
  234. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  235. package/dist/elements/Pagination/SimplePagination/index.js.map +1 -1
  236. package/dist/elements/Pagination/index.js +36 -37
  237. package/dist/elements/Pagination/index.js.map +1 -1
  238. package/dist/elements/PerPage/index.js.map +1 -1
  239. package/dist/elements/Pill/index.js.map +1 -1
  240. package/dist/elements/Popup/index.d.ts.map +1 -1
  241. package/dist/elements/Popup/index.js +19 -3
  242. package/dist/elements/Popup/index.js.map +1 -1
  243. package/dist/elements/PreviewButton/index.js.map +1 -1
  244. package/dist/elements/PreviewSizes/index.js +141 -70
  245. package/dist/elements/PreviewSizes/index.js.map +1 -1
  246. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
  247. package/dist/elements/PublishButton/ScheduleDrawer/index.js +16 -8
  248. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  249. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  250. package/dist/elements/PublishButton/index.js +1 -0
  251. package/dist/elements/PublishButton/index.js.map +1 -1
  252. package/dist/elements/PublishMany/DrawerContent.js +1 -1
  253. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  254. package/dist/elements/PublishMany/index.js +32 -24
  255. package/dist/elements/PublishMany/index.js.map +1 -1
  256. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +194 -100
  257. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  258. package/dist/elements/QueryPresets/fields/GroupByField/index.js +78 -29
  259. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  260. package/dist/elements/QueryPresets/fields/Heading/index.js.map +1 -1
  261. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  262. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  263. package/dist/elements/ReactSelect/MultiValue/index.js +19 -9
  264. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  265. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  266. package/dist/elements/ReactSelect/MultiValueRemove/index.js +38 -29
  267. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  268. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  269. package/dist/elements/ReactSelect/index.css +4 -0
  270. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  271. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
  272. package/dist/elements/RelationshipTable/index.js +1 -1
  273. package/dist/elements/RelationshipTable/index.js.map +1 -1
  274. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  275. package/dist/elements/RenderTitle/index.js.map +1 -1
  276. package/dist/elements/RestoreMany/index.js +1 -1
  277. package/dist/elements/RestoreMany/index.js.map +1 -1
  278. package/dist/elements/SchedulePublishButton/index.js +111 -39
  279. package/dist/elements/SchedulePublishButton/index.js.map +1 -1
  280. package/dist/elements/Search/SearchInput/index.js.map +1 -1
  281. package/dist/elements/SegmentedControl/index.js.map +1 -1
  282. package/dist/elements/SelectAll/index.js.map +1 -1
  283. package/dist/elements/SelectRow/index.js +31 -21
  284. package/dist/elements/SelectRow/index.js.map +1 -1
  285. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  286. package/dist/elements/SidebarToggle/index.js.map +1 -1
  287. package/dist/elements/SkipToContent/index.js.map +1 -1
  288. package/dist/elements/SortHeader/index.js.map +1 -1
  289. package/dist/elements/SortRow/index.js.map +1 -1
  290. package/dist/elements/Spinner/index.js.map +1 -1
  291. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  292. package/dist/elements/StepNav/SetStepNav.js.map +1 -1
  293. package/dist/elements/StepNav/context.js.map +1 -1
  294. package/dist/elements/Switch/index.css +2 -2
  295. package/dist/elements/Switch/index.js.map +1 -1
  296. package/dist/elements/Table/DefaultCell/fields/Array/index.js +28 -9
  297. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  298. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +80 -27
  299. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  300. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +9 -10
  301. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  302. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  303. package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts.map +1 -1
  304. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +21 -32
  305. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  306. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  307. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  308. package/dist/elements/Table/DefaultCell/fields/Status/index.js.map +1 -1
  309. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  310. package/dist/elements/Table/GridNavigation/useGridNavigation.js.map +1 -1
  311. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  312. package/dist/elements/Table/TableIdentity.js +32 -16
  313. package/dist/elements/Table/TableIdentity.js.map +1 -1
  314. package/dist/elements/Table/useAriaSort.js.map +1 -1
  315. package/dist/elements/Thumbnail/index.js +133 -53
  316. package/dist/elements/Thumbnail/index.js.map +1 -1
  317. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  318. package/dist/elements/TimezonePicker/index.js +113 -54
  319. package/dist/elements/TimezonePicker/index.js.map +1 -1
  320. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  321. package/dist/elements/Tooltip/index.js.map +1 -1
  322. package/dist/elements/TrashBanner/index.js.map +1 -1
  323. package/dist/elements/UnpublishMany/DrawerContent.js +1 -1
  324. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  325. package/dist/elements/UnpublishMany/index.js +32 -24
  326. package/dist/elements/UnpublishMany/index.js.map +1 -1
  327. package/dist/elements/Upload/UploadFromURLModal/index.js.map +1 -1
  328. package/dist/elements/Upload/index.js.map +1 -1
  329. package/dist/elements/Upload/usePasteFromClipboard.js.map +1 -1
  330. package/dist/elements/Upload/useUploadFromUrl.js.map +1 -1
  331. package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -1
  332. package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -1
  333. package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -1
  334. package/dist/elements/UserMenu/index.d.ts.map +1 -1
  335. package/dist/elements/UserMenu/index.js +2 -1
  336. package/dist/elements/UserMenu/index.js.map +1 -1
  337. package/dist/elements/ViewDescription/index.js.map +1 -1
  338. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  339. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  340. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  341. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  342. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  343. package/dist/elements/WhereBuilder/Condition/index.js +1 -0
  344. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  345. package/dist/exports/client/{CodeEditor-I6PL55BF.js → CodeEditor-23ZGBN6S.js} +2 -2
  346. package/dist/exports/client/{DatePicker-RFCB5VGD.js → DatePicker-AZBZPMY6.js} +2 -2
  347. package/dist/exports/client/chunk-EXVR6BZK.js +27 -0
  348. package/dist/exports/client/chunk-EXVR6BZK.js.map +7 -0
  349. package/dist/exports/client/{chunk-AVJIZPR3.js → chunk-SMBFG6XU.js} +1 -1
  350. package/dist/exports/client/{chunk-AVJIZPR3.js.map → chunk-SMBFG6XU.js.map} +1 -1
  351. package/dist/exports/client/{chunk-O2RR6XEH.js → chunk-ZP2PB6M4.js} +2 -2
  352. package/dist/exports/client/{chunk-O2RR6XEH.js.map → chunk-ZP2PB6M4.js.map} +1 -1
  353. package/dist/exports/client/index.d.ts +2 -2
  354. package/dist/exports/client/index.d.ts.map +1 -1
  355. package/dist/exports/client/index.js +27 -27
  356. package/dist/exports/client/index.js.map +4 -4
  357. package/dist/exports/rsc/index.d.ts +1 -1
  358. package/dist/exports/rsc/index.d.ts.map +1 -1
  359. package/dist/exports/rsc/index.js +1 -1
  360. package/dist/exports/rsc/index.js.map +1 -1
  361. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  362. package/dist/fields/Array/ArrayRow.js +207 -99
  363. package/dist/fields/Array/ArrayRow.js.map +1 -1
  364. package/dist/fields/Array/index.d.ts.map +1 -1
  365. package/dist/fields/Array/index.js +521 -308
  366. package/dist/fields/Array/index.js.map +1 -1
  367. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  368. package/dist/fields/Blocks/BlockRow.js +224 -136
  369. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  370. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
  371. package/dist/fields/Blocks/BlockSelector/index.js +114 -74
  372. package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
  373. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  374. package/dist/fields/Blocks/RowActions.js +75 -55
  375. package/dist/fields/Blocks/RowActions.js.map +1 -1
  376. package/dist/fields/Blocks/SectionTitle/index.css +4 -0
  377. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  378. package/dist/fields/Blocks/index.d.ts.map +1 -1
  379. package/dist/fields/Blocks/index.js +1 -0
  380. package/dist/fields/Blocks/index.js.map +1 -1
  381. package/dist/fields/Checkbox/index.css +3 -3
  382. package/dist/fields/Code/index.d.ts.map +1 -1
  383. package/dist/fields/Code/index.js +3 -2
  384. package/dist/fields/Code/index.js.map +1 -1
  385. package/dist/fields/Collapsible/index.js +114 -73
  386. package/dist/fields/Collapsible/index.js.map +1 -1
  387. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  388. package/dist/fields/DateTime/index.js +215 -121
  389. package/dist/fields/DateTime/index.js.map +1 -1
  390. package/dist/fields/FieldDescription/index.js +29 -21
  391. package/dist/fields/FieldDescription/index.js.map +1 -1
  392. package/dist/fields/FieldError/index.js.map +1 -1
  393. package/dist/fields/FieldLabel/index.js.map +1 -1
  394. package/dist/fields/Group/index.js +75 -46
  395. package/dist/fields/Group/index.js.map +1 -1
  396. package/dist/fields/Hidden/index.js +23 -15
  397. package/dist/fields/Hidden/index.js.map +1 -1
  398. package/dist/fields/JSON/index.d.ts.map +1 -1
  399. package/dist/fields/JSON/index.js +3 -2
  400. package/dist/fields/JSON/index.js.map +1 -1
  401. package/dist/fields/Number/Input.js.map +1 -1
  402. package/dist/fields/Password/input.js +46 -27
  403. package/dist/fields/Password/input.js.map +1 -1
  404. package/dist/fields/RadioGroup/Radio/index.js +35 -35
  405. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  406. package/dist/fields/Relationship/Input.js +14 -14
  407. package/dist/fields/Relationship/Input.js.map +1 -1
  408. package/dist/fields/Relationship/index.js +216 -111
  409. package/dist/fields/Relationship/index.js.map +1 -1
  410. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  411. package/dist/fields/Relationship/select-components/SingleValue/index.js +9 -11
  412. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  413. package/dist/fields/Select/Input.js +26 -10
  414. package/dist/fields/Select/Input.js.map +1 -1
  415. package/dist/fields/Select/index.js +158 -77
  416. package/dist/fields/Select/index.js.map +1 -1
  417. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  418. package/dist/fields/Tabs/index.css +11 -15
  419. package/dist/fields/Tabs/index.js +120 -112
  420. package/dist/fields/Tabs/index.js.map +1 -1
  421. package/dist/fields/Text/Input.d.ts.map +1 -1
  422. package/dist/fields/Text/Input.js +2 -2
  423. package/dist/fields/Text/Input.js.map +1 -1
  424. package/dist/fields/Text/index.js +172 -95
  425. package/dist/fields/Text/index.js.map +1 -1
  426. package/dist/fields/Text/types.d.ts +2 -1
  427. package/dist/fields/Text/types.d.ts.map +1 -1
  428. package/dist/fields/Text/types.js.map +1 -1
  429. package/dist/fields/Textarea/Input.js +58 -28
  430. package/dist/fields/Textarea/Input.js.map +1 -1
  431. package/dist/fields/Textarea/index.js +97 -55
  432. package/dist/fields/Textarea/index.js.map +1 -1
  433. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  434. package/dist/fields/Upload/Input.d.ts.map +1 -1
  435. package/dist/fields/Upload/Input.js +16 -7
  436. package/dist/fields/Upload/Input.js.map +1 -1
  437. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  438. package/dist/fields/Upload/index.css +9 -0
  439. package/dist/fields/Upload/index.js +101 -63
  440. package/dist/fields/Upload/index.js.map +1 -1
  441. package/dist/fields/shared/useRowFocus.js.map +1 -1
  442. package/dist/forms/Form/context.js.map +1 -1
  443. package/dist/forms/Form/index.d.ts.map +1 -1
  444. package/dist/forms/Form/index.js +27 -8
  445. package/dist/forms/Form/index.js.map +1 -1
  446. package/dist/forms/Form/types.d.ts +1 -1
  447. package/dist/forms/Form/types.d.ts.map +1 -1
  448. package/dist/forms/Form/types.js.map +1 -1
  449. package/dist/forms/NullifyField/index.js.map +1 -1
  450. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  451. package/dist/forms/RenderFields/context.js +3 -2
  452. package/dist/forms/RenderFields/context.js.map +1 -1
  453. package/dist/forms/RenderFields/index.js.map +1 -1
  454. package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
  455. package/dist/forms/RowLabel/Context/index.js +58 -18
  456. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  457. package/dist/forms/Submit/index.js +12 -13
  458. package/dist/forms/Submit/index.js.map +1 -1
  459. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  460. package/dist/forms/useField/index.js +1 -1
  461. package/dist/forms/useField/index.js.map +1 -1
  462. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  463. package/dist/graphics/Account/Gravatar/index.js +32 -17
  464. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  465. package/dist/graphics/Account/index.js +27 -18
  466. package/dist/graphics/Account/index.js.map +1 -1
  467. package/dist/hooks/useControllableState.js.map +1 -1
  468. package/dist/hooks/useDebounce.js.map +1 -1
  469. package/dist/hooks/useDebouncedCallback.js.map +1 -1
  470. package/dist/hooks/useDebouncedEffect.js.map +1 -1
  471. package/dist/hooks/useDelay.js.map +1 -1
  472. package/dist/hooks/useDelayedRender.js.map +1 -1
  473. package/dist/hooks/useElementHeightVariable.js.map +1 -1
  474. package/dist/hooks/useHotkey.js.map +1 -1
  475. package/dist/hooks/useIntersect.js.map +1 -1
  476. package/dist/hooks/usePayloadAPI.js.map +1 -1
  477. package/dist/hooks/usePopupWindow.js.map +1 -1
  478. package/dist/hooks/useRelatedCollections.js.map +1 -1
  479. package/dist/hooks/useResize.js.map +1 -1
  480. package/dist/hooks/useThrottledEffect.d.ts.map +1 -1
  481. package/dist/hooks/useThrottledEffect.js +21 -24
  482. package/dist/hooks/useThrottledEffect.js.map +1 -1
  483. package/dist/hooks/useUseAsTitle.js.map +1 -1
  484. package/dist/layouts/Root/RootProviders.d.ts.map +1 -1
  485. package/dist/layouts/Root/RootProviders.js +31 -28
  486. package/dist/layouts/Root/RootProviders.js.map +1 -1
  487. package/dist/providers/Actions/index.js.map +1 -1
  488. package/dist/providers/Auth/AuthSessionDebug/index.js.map +1 -1
  489. package/dist/providers/Auth/index.js +2 -2
  490. package/dist/providers/Auth/index.js.map +1 -1
  491. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js.map +1 -1
  492. package/dist/providers/ClientFunction/index.js.map +1 -1
  493. package/dist/providers/Config/index.js +65 -32
  494. package/dist/providers/Config/index.js.map +1 -1
  495. package/dist/providers/DocumentEvents/index.js.map +1 -1
  496. package/dist/providers/EditDepth/index.js.map +1 -1
  497. package/dist/providers/Embed/index.js.map +1 -1
  498. package/dist/providers/EntityVisibility/index.js.map +1 -1
  499. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  500. package/dist/providers/ListQuery/index.js +5 -5
  501. package/dist/providers/ListQuery/index.js.map +1 -1
  502. package/dist/providers/ListQuery/types.d.ts +6 -1
  503. package/dist/providers/ListQuery/types.d.ts.map +1 -1
  504. package/dist/providers/ListQuery/types.js.map +1 -1
  505. package/dist/providers/ModalAccessibility/index.js.map +1 -1
  506. package/dist/providers/ModalFocus/index.d.ts +15 -0
  507. package/dist/providers/ModalFocus/index.d.ts.map +1 -0
  508. package/dist/providers/ModalFocus/index.js +70 -0
  509. package/dist/providers/ModalFocus/index.js.map +1 -0
  510. package/dist/providers/RouteCache/index.js.map +1 -1
  511. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  512. package/dist/providers/RouteTransition/index.d.ts +3 -2
  513. package/dist/providers/RouteTransition/index.d.ts.map +1 -1
  514. package/dist/providers/RouteTransition/index.js +78 -105
  515. package/dist/providers/RouteTransition/index.js.map +1 -1
  516. package/dist/providers/RouterAdapter/index.js.map +1 -1
  517. package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
  518. package/dist/providers/TableColumns/index.d.ts.map +1 -1
  519. package/dist/providers/TableColumns/index.js +18 -35
  520. package/dist/providers/TableColumns/index.js.map +1 -1
  521. package/dist/providers/Theme/index.js.map +1 -1
  522. package/dist/providers/ToastContainer/index.js.map +1 -1
  523. package/dist/providers/Translation/index.js.map +1 -1
  524. package/dist/providers/UploadControls/index.js.map +1 -1
  525. package/dist/providers/UploadEdits/index.js.map +1 -1
  526. package/dist/providers/UploadHandlers/index.js.map +1 -1
  527. package/dist/styles.css +66 -1
  528. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  529. package/dist/utilities/serverFunctionRegistry.js +2 -2
  530. package/dist/utilities/serverFunctionRegistry.js.map +1 -1
  531. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  532. package/dist/views/API/index.client.d.ts.map +1 -1
  533. package/dist/views/API/index.client.js +1 -0
  534. package/dist/views/API/index.client.js.map +1 -1
  535. package/dist/views/Account/ResetPreferences/index.js +17 -17
  536. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  537. package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
  538. package/dist/views/Account/ToggleHighContrast/index.js.map +1 -1
  539. package/dist/views/Account/ToggleTheme/index.js +106 -27
  540. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  541. package/dist/views/Account/index.client.js.map +1 -1
  542. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  543. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
  544. package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
  545. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +373 -151
  546. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  547. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  548. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.d.ts.map +1 -1
  549. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js +2 -1
  550. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js.map +1 -1
  551. package/dist/views/Edit/Auth/APIKeyGenerationModal.js.map +1 -1
  552. package/dist/views/Edit/Auth/index.d.ts.map +1 -1
  553. package/dist/views/Edit/Auth/index.js +13 -11
  554. package/dist/views/Edit/Auth/index.js.map +1 -1
  555. package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
  556. package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
  557. package/dist/views/Edit/index.d.ts.map +1 -1
  558. package/dist/views/Edit/index.js +27 -16
  559. package/dist/views/Edit/index.js.map +1 -1
  560. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  561. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +45 -41
  562. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  563. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  564. package/dist/views/HierarchyList/HierarchyListHeader/index.js.map +1 -1
  565. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js.map +1 -1
  566. package/dist/views/HierarchyList/HierarchyTable/DateCell.js +8 -9
  567. package/dist/views/HierarchyList/HierarchyTable/DateCell.js.map +1 -1
  568. package/dist/views/HierarchyList/HierarchyTable/RelatedNameCell.js.map +1 -1
  569. package/dist/views/HierarchyList/TypeFilter/index.js.map +1 -1
  570. package/dist/views/HierarchyList/index.js +2 -2
  571. package/dist/views/HierarchyList/index.js.map +1 -1
  572. package/dist/views/List/DocumentGrid/index.js.map +1 -1
  573. package/dist/views/List/GroupedDocumentGrid/index.js.map +1 -1
  574. package/dist/views/List/ListSelection/index.js.map +1 -1
  575. package/dist/views/Login/LoginField/index.js.map +1 -1
  576. package/dist/views/Login/LoginForm/index.js.map +1 -1
  577. package/dist/views/Logout/LogoutClient.js.map +1 -1
  578. package/dist/views/NotFound/index.client.js.map +1 -1
  579. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  580. package/dist/views/Verify/index.client.js.map +1 -1
  581. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  582. package/dist/views/Version/Default/index.js +321 -181
  583. package/dist/views/Version/Default/index.js.map +1 -1
  584. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  585. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
  586. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js +9 -11
  587. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js.map +1 -1
  588. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  589. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +41 -29
  590. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
  591. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  592. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  593. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +19 -19
  594. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  595. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  596. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  597. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  598. package/dist/views/Version/Restore/index.js +176 -77
  599. package/dist/views/Version/Restore/index.js.map +1 -1
  600. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
  601. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  602. package/dist/views/Version/SelectComparison/index.js +113 -33
  603. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  604. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  605. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.js.map +1 -1
  606. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  607. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  608. package/dist/views/Versions/cells/VersionDrawerCreatedAtCell/index.js.map +1 -1
  609. package/dist/views/Versions/index.client.js +9 -11
  610. package/dist/views/Versions/index.client.js.map +1 -1
  611. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.css +28 -0
  612. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.d.ts +16 -0
  613. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.d.ts.map +1 -0
  614. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.js +98 -0
  615. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.js.map +1 -0
  616. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.css +70 -0
  617. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.d.ts +13 -0
  618. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.d.ts.map +1 -0
  619. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.js +81 -0
  620. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.js.map +1 -0
  621. package/dist/widgets/{RecentlyViewed/pinnedPreferences.d.ts → Activity/Tabs/PinnedDocuments/preferences.d.ts} +6 -9
  622. package/dist/widgets/Activity/Tabs/PinnedDocuments/preferences.d.ts.map +1 -0
  623. package/dist/widgets/{RecentlyViewed/pinnedPreferences.js → Activity/Tabs/PinnedDocuments/preferences.js} +3 -22
  624. package/dist/widgets/Activity/Tabs/PinnedDocuments/preferences.js.map +1 -0
  625. package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.d.ts +39 -0
  626. package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.d.ts.map +1 -0
  627. package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.js +83 -0
  628. package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.js.map +1 -0
  629. package/dist/widgets/Activity/Tabs/RecentDocuments/index.d.ts +9 -0
  630. package/dist/widgets/Activity/Tabs/RecentDocuments/index.d.ts.map +1 -0
  631. package/dist/widgets/Activity/Tabs/RecentDocuments/index.js +23 -0
  632. package/dist/widgets/Activity/Tabs/RecentDocuments/index.js.map +1 -0
  633. package/dist/widgets/Activity/components/DocumentList/index.css +61 -0
  634. package/dist/widgets/Activity/components/DocumentList/index.d.ts +15 -0
  635. package/dist/widgets/Activity/components/DocumentList/index.d.ts.map +1 -0
  636. package/dist/widgets/Activity/components/DocumentList/index.js +56 -0
  637. package/dist/widgets/Activity/components/DocumentList/index.js.map +1 -0
  638. package/dist/widgets/Activity/components/EmptyState/index.css +47 -0
  639. package/dist/widgets/Activity/components/EmptyState/index.d.ts +12 -0
  640. package/dist/widgets/Activity/components/EmptyState/index.d.ts.map +1 -0
  641. package/dist/widgets/Activity/components/EmptyState/index.js +37 -0
  642. package/dist/widgets/Activity/components/EmptyState/index.js.map +1 -0
  643. package/dist/widgets/Activity/components/Pagination/index.css +42 -0
  644. package/dist/widgets/Activity/components/Pagination/index.d.ts +20 -0
  645. package/dist/widgets/Activity/components/Pagination/index.d.ts.map +1 -0
  646. package/dist/widgets/Activity/components/Pagination/index.js +125 -0
  647. package/dist/widgets/Activity/components/Pagination/index.js.map +1 -0
  648. package/dist/widgets/Activity/components/StatusPill/index.css +24 -0
  649. package/dist/widgets/Activity/components/StatusPill/index.d.ts +8 -0
  650. package/dist/widgets/Activity/components/StatusPill/index.d.ts.map +1 -0
  651. package/dist/widgets/Activity/components/StatusPill/index.js +18 -0
  652. package/dist/widgets/Activity/components/StatusPill/index.js.map +1 -0
  653. package/dist/widgets/Activity/index.client.d.ts +15 -0
  654. package/dist/widgets/Activity/index.client.d.ts.map +1 -0
  655. package/dist/widgets/Activity/index.client.js +186 -0
  656. package/dist/widgets/Activity/index.client.js.map +1 -0
  657. package/dist/widgets/Activity/index.css +320 -0
  658. package/dist/widgets/Activity/index.d.ts +13 -0
  659. package/dist/widgets/Activity/index.d.ts.map +1 -0
  660. package/dist/widgets/Activity/index.js +100 -0
  661. package/dist/widgets/Activity/index.js.map +1 -0
  662. package/dist/widgets/{RecentlyViewed/index.client.d.ts → Activity/types.d.ts} +5 -13
  663. package/dist/widgets/Activity/types.d.ts.map +1 -0
  664. package/dist/widgets/Activity/types.js +2 -0
  665. package/dist/widgets/Activity/types.js.map +1 -0
  666. package/dist/widgets/Activity/utils/cache.d.ts +33 -0
  667. package/dist/widgets/Activity/utils/cache.d.ts.map +1 -0
  668. package/dist/widgets/Activity/utils/cache.js +72 -0
  669. package/dist/widgets/Activity/utils/cache.js.map +1 -0
  670. package/dist/widgets/Activity/utils/constants.d.ts +5 -0
  671. package/dist/widgets/Activity/utils/constants.d.ts.map +1 -0
  672. package/dist/widgets/Activity/utils/constants.js +4 -0
  673. package/dist/widgets/Activity/utils/constants.js.map +1 -0
  674. package/dist/widgets/Activity/utils/documents.d.ts +11 -0
  675. package/dist/widgets/Activity/utils/documents.d.ts.map +1 -0
  676. package/dist/widgets/Activity/utils/documents.js +38 -0
  677. package/dist/widgets/Activity/utils/documents.js.map +1 -0
  678. package/dist/widgets/Activity/utils/getActivityWidgetDocs.d.ts +20 -0
  679. package/dist/widgets/Activity/utils/getActivityWidgetDocs.d.ts.map +1 -0
  680. package/dist/widgets/{RecentlyViewed/getDocuments.js → Activity/utils/getActivityWidgetDocs.js} +18 -19
  681. package/dist/widgets/Activity/utils/getActivityWidgetDocs.js.map +1 -0
  682. package/dist/widgets/Activity/utils/state.d.ts +44 -0
  683. package/dist/widgets/Activity/utils/state.d.ts.map +1 -0
  684. package/dist/widgets/Activity/utils/state.js +80 -0
  685. package/dist/widgets/Activity/utils/state.js.map +1 -0
  686. package/dist/widgets/Activity/utils/useActivityDocuments.d.ts +35 -0
  687. package/dist/widgets/Activity/utils/useActivityDocuments.d.ts.map +1 -0
  688. package/dist/widgets/Activity/utils/useActivityDocuments.js +141 -0
  689. package/dist/widgets/Activity/utils/useActivityDocuments.js.map +1 -0
  690. package/dist/widgets/Activity/utils/usePageSize.d.ts +11 -0
  691. package/dist/widgets/Activity/utils/usePageSize.d.ts.map +1 -0
  692. package/dist/widgets/Activity/utils/usePageSize.js +35 -0
  693. package/dist/widgets/Activity/utils/usePageSize.js.map +1 -0
  694. package/dist/widgets/CollectionCards/index.client.d.ts +3 -0
  695. package/dist/widgets/CollectionCards/index.client.d.ts.map +1 -1
  696. package/dist/widgets/CollectionCards/index.client.js +3 -0
  697. package/dist/widgets/CollectionCards/index.client.js.map +1 -1
  698. package/dist/widgets/CollectionCards/index.d.ts +3 -0
  699. package/dist/widgets/CollectionCards/index.d.ts.map +1 -1
  700. package/dist/widgets/CollectionCards/index.js +3 -0
  701. package/dist/widgets/CollectionCards/index.js.map +1 -1
  702. package/dist/widgets/CollectionQuery/SortField/index.d.ts +3 -0
  703. package/dist/widgets/CollectionQuery/SortField/index.d.ts.map +1 -1
  704. package/dist/widgets/CollectionQuery/SortField/index.js +181 -73
  705. package/dist/widgets/CollectionQuery/SortField/index.js.map +1 -1
  706. package/dist/widgets/CollectionQuery/index.d.ts +3 -0
  707. package/dist/widgets/CollectionQuery/index.d.ts.map +1 -1
  708. package/dist/widgets/CollectionQuery/index.js +3 -0
  709. package/dist/widgets/CollectionQuery/index.js.map +1 -1
  710. package/dist/widgets/UploadDropzone/CollectionsField/index.d.ts +3 -0
  711. package/dist/widgets/UploadDropzone/CollectionsField/index.d.ts.map +1 -1
  712. package/dist/widgets/UploadDropzone/CollectionsField/index.js +65 -14
  713. package/dist/widgets/UploadDropzone/CollectionsField/index.js.map +1 -1
  714. package/dist/widgets/UploadDropzone/index.client.d.ts +3 -0
  715. package/dist/widgets/UploadDropzone/index.client.d.ts.map +1 -1
  716. package/dist/widgets/UploadDropzone/index.client.js +3 -0
  717. package/dist/widgets/UploadDropzone/index.client.js.map +1 -1
  718. package/dist/widgets/UploadDropzone/index.d.ts +3 -0
  719. package/dist/widgets/UploadDropzone/index.d.ts.map +1 -1
  720. package/dist/widgets/UploadDropzone/index.js +3 -0
  721. package/dist/widgets/UploadDropzone/index.js.map +1 -1
  722. package/dist/widgets/Welcome/index.d.ts +3 -0
  723. package/dist/widgets/Welcome/index.d.ts.map +1 -1
  724. package/dist/widgets/Welcome/index.js +3 -0
  725. package/dist/widgets/Welcome/index.js.map +1 -1
  726. package/dist/widgets/WidgetCard/index.css +0 -20
  727. package/dist/widgets/{RecentlyViewed/CollectionsField → shared/CollectionFilter}/index.css +2 -2
  728. package/dist/widgets/{RecentlyViewed/CollectionsField → shared/CollectionFilter}/index.d.ts +3 -1
  729. package/dist/widgets/shared/CollectionFilter/index.d.ts.map +1 -0
  730. package/dist/widgets/shared/CollectionFilter/index.js +170 -0
  731. package/dist/widgets/shared/CollectionFilter/index.js.map +1 -0
  732. package/package.json +8 -7
  733. package/dist/exports/client/chunk-R7M6BG75.js +0 -27
  734. package/dist/exports/client/chunk-R7M6BG75.js.map +0 -7
  735. package/dist/widgets/RecentlyViewed/CollectionsField/index.d.ts.map +0 -1
  736. package/dist/widgets/RecentlyViewed/CollectionsField/index.js +0 -102
  737. package/dist/widgets/RecentlyViewed/CollectionsField/index.js.map +0 -1
  738. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.css +0 -41
  739. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.d.ts +0 -19
  740. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.d.ts.map +0 -1
  741. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.js +0 -121
  742. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.js.map +0 -1
  743. package/dist/widgets/RecentlyViewed/getDocuments.d.ts +0 -20
  744. package/dist/widgets/RecentlyViewed/getDocuments.d.ts.map +0 -1
  745. package/dist/widgets/RecentlyViewed/getDocuments.js.map +0 -1
  746. package/dist/widgets/RecentlyViewed/index.client.d.ts.map +0 -1
  747. package/dist/widgets/RecentlyViewed/index.client.js +0 -409
  748. package/dist/widgets/RecentlyViewed/index.client.js.map +0 -1
  749. package/dist/widgets/RecentlyViewed/index.css +0 -352
  750. package/dist/widgets/RecentlyViewed/index.d.ts +0 -10
  751. package/dist/widgets/RecentlyViewed/index.d.ts.map +0 -1
  752. package/dist/widgets/RecentlyViewed/index.js +0 -47
  753. package/dist/widgets/RecentlyViewed/index.js.map +0 -1
  754. package/dist/widgets/RecentlyViewed/pinnedPreferences.d.ts.map +0 -1
  755. package/dist/widgets/RecentlyViewed/pinnedPreferences.js.map +0 -1
  756. package/dist/widgets/RecentlyViewed/recents.d.ts +0 -8
  757. package/dist/widgets/RecentlyViewed/recents.d.ts.map +0 -1
  758. package/dist/widgets/RecentlyViewed/recents.js +0 -19
  759. package/dist/widgets/RecentlyViewed/recents.js.map +0 -1
  760. /package/dist/exports/client/{CodeEditor-I6PL55BF.js.map → CodeEditor-23ZGBN6S.js.map} +0 -0
  761. /package/dist/exports/client/{DatePicker-RFCB5VGD.js.map → DatePicker-AZBZPMY6.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"BlockRow.js","names":["getTranslation","React","Collapsible","ErrorPill","Pill","ShimmerEffect","useFormSubmitted","RenderFields","RowLabel","useThrottledValue","useTranslation","RowActions","SectionTitle","baseClass","BlockRow","addRow","attributes","block","blocks","copyRow","duplicateRow","errorCount","fields","hasMaxRows","isDragging","isLoading","isLoadingFromProps","isSortable","Label","labels","listeners","moveRow","parentPath","pasteRow","pasteRowBelow","path","permissions","readOnly","removeRow","row","rowCount","rowIndex","schemaPath","setCollapse","setNodeRef","transform","transition","i18n","hasSubmitted","pasteData","useMemo","schemaBlocks","fieldHasErrors","showBlockName","admin","disableBlockName","classNames","filter","Boolean","join","blockPermissions","permissionsBlockSpecific","slug","hasReadPermission","read","missingCreateOrUpdate","create","update","hasRestrictiveStructure","Object","keys","length","_jsx","id","split","ref","style","zIndex","undefined","actions","blockType","className","collapsibleStyle","dragHandleProps","header","height","width","_jsxs","CustomComponent","label","_Fragment","String","padStart","pillStyle","size","singular","rowNumber","count","withMessage","isCollapsed","collapsed","onToggle","parentIndexPath","parentSchemaPath"],"sources":["../../../src/fields/Blocks/BlockRow.tsx"],"sourcesContent":["'use client'\nimport type { ClientBlock, ClientField, Labels, Row, SanitizedFieldPermissions } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { UseDraggableSortableReturn } from '../../elements/DraggableSortable/useDraggableSortable/types.js'\nimport type { RenderFieldsProps } from '../../forms/RenderFields/types.js'\n\nimport { Collapsible } from '../../elements/Collapsible/index.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { Pill } from '../../elements/Pill/index.js'\nimport { ShimmerEffect } from '../../elements/ShimmerEffect/index.js'\nimport { useFormSubmitted } from '../../forms/Form/context.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { RowLabel } from '../../forms/RowLabel/index.js'\nimport { useThrottledValue } from '../../hooks/useThrottledValue.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { RowActions } from './RowActions.js'\nimport { SectionTitle } from './SectionTitle/index.js'\n\nconst baseClass = 'blocks-field'\n\ntype BlocksFieldProps = {\n addRow: (rowIndex: number, blockType: string) => Promise<void> | void\n block: ClientBlock\n blocks: (ClientBlock | string)[] | ClientBlock[]\n copyRow: (rowIndex: number) => void\n duplicateRow: (rowIndex: number) => void\n errorCount: number\n fields: ClientField[]\n hasMaxRows?: boolean\n isLoading?: boolean\n isSortable?: boolean\n Label?: React.ReactNode\n labels: Labels\n moveRow: (fromIndex: number, toIndex: number) => void\n parentPath: string\n pasteRow: (rowIndex: number) => void\n pasteRowBelow: (rowIndex: number) => void\n path: string\n permissions: SanitizedFieldPermissions\n readOnly: boolean\n removeRow: (rowIndex: number) => void\n row: Row\n rowCount: number\n rowIndex: number\n schemaPath: string\n setCollapse: (id: string, collapsed: boolean) => void\n} & UseDraggableSortableReturn\n\nexport const BlockRow: React.FC<BlocksFieldProps> = ({\n addRow,\n attributes,\n block,\n blocks,\n copyRow,\n duplicateRow,\n errorCount,\n fields,\n hasMaxRows,\n isDragging,\n isLoading: isLoadingFromProps,\n isSortable,\n Label,\n labels,\n listeners,\n moveRow,\n parentPath,\n pasteRow,\n pasteRowBelow,\n path,\n permissions,\n readOnly,\n removeRow,\n row,\n rowCount,\n rowIndex,\n schemaPath,\n setCollapse,\n setNodeRef,\n transform,\n transition,\n}) => {\n const isLoading = useThrottledValue(isLoadingFromProps, 500)\n\n const { i18n } = useTranslation()\n const hasSubmitted = useFormSubmitted()\n\n const pasteData = React.useMemo(\n () => ({ path, schemaBlocks: blocks as ClientBlock[] }),\n [path, blocks],\n )\n\n const fieldHasErrors = hasSubmitted && errorCount > 0\n\n const showBlockName = !block.admin?.disableBlockName\n\n const classNames = [\n `${baseClass}__row`,\n fieldHasErrors ? `${baseClass}__row--has-errors` : `${baseClass}__row--no-errors`,\n isDragging && `${baseClass}__row--is-dragging`,\n ]\n .filter(Boolean)\n .join(' ')\n\n let blockPermissions: RenderFieldsProps['permissions'] = true\n\n if (permissions === true) {\n blockPermissions = true\n } else {\n const permissionsBlockSpecific = permissions?.blocks?.[block.slug] || permissions?.blocks\n if (permissionsBlockSpecific === true) {\n blockPermissions = true\n } else if (permissionsBlockSpecific?.fields) {\n blockPermissions = permissionsBlockSpecific.fields\n } else {\n // Check if we should fall back to read-only mode based on permission structure\n // This handles cases where field-level access control exists but block permissions were sanitized\n if (typeof permissions === 'object' && permissions && !permissionsBlockSpecific) {\n // If permissions object exists but has no block-specific permissions,\n // check if it has any restrictive characteristics\n const hasReadPermission = permissions.read === true\n const missingCreateOrUpdate = !permissions.create || !permissions.update\n const hasRestrictiveStructure =\n hasReadPermission &&\n (missingCreateOrUpdate ||\n (typeof permissions === 'object' &&\n Object.keys(permissions).length === 1 &&\n permissions.read))\n\n if (hasRestrictiveStructure) {\n blockPermissions = { read: true }\n } else {\n blockPermissions = permissionsBlockSpecific?.fields\n }\n } else {\n blockPermissions = permissionsBlockSpecific?.fields\n }\n }\n }\n\n return (\n <div\n id={`${parentPath?.split('.').join('-')}-row-${rowIndex}`}\n key={`${parentPath}-row-${row.id}`}\n ref={setNodeRef}\n style={{\n transform,\n transition,\n zIndex: isDragging ? 1 : undefined,\n }}\n >\n <Collapsible\n actions={\n !readOnly ? (\n <RowActions\n addRow={addRow}\n blocks={blocks}\n blockType={row.blockType}\n copyRow={copyRow}\n duplicateRow={duplicateRow}\n fields={block.fields}\n hasMaxRows={hasMaxRows}\n isSortable={isSortable}\n labels={labels}\n moveRow={moveRow}\n pasteData={pasteData}\n pasteRow={pasteRow}\n pasteRowBelow={pasteRowBelow}\n removeRow={removeRow}\n rowCount={rowCount}\n rowIndex={rowIndex}\n />\n ) : undefined\n }\n className={classNames}\n collapsibleStyle={fieldHasErrors ? 'error' : 'default'}\n dragHandleProps={\n isSortable && !readOnly\n ? {\n id: row.id,\n attributes,\n listeners,\n }\n : undefined\n }\n header={\n isLoading ? (\n <ShimmerEffect height=\"1rem\" width=\"8rem\" />\n ) : (\n <div className={`${baseClass}__block-header`}>\n <RowLabel\n CustomComponent={Label}\n label={\n <>\n <span className={`${baseClass}__block-number`}>\n {String(rowIndex + 1).padStart(2, '0')}\n </span>\n <Pill\n className={`${baseClass}__block-pill ${baseClass}__block-pill-${row.blockType}`}\n pillStyle=\"white\"\n size=\"small\"\n >\n {getTranslation(block.labels.singular, i18n)}\n </Pill>\n {showBlockName && (\n <SectionTitle path={`${path}.blockName`} readOnly={readOnly} />\n )}\n </>\n }\n path={path}\n rowNumber={rowIndex}\n />\n {fieldHasErrors && <ErrorPill count={errorCount} i18n={i18n} withMessage />}\n </div>\n )\n }\n isCollapsed={row.collapsed}\n key={row.id}\n onToggle={(collapsed) => setCollapse(row.id, collapsed)}\n >\n {isLoading ? (\n <ShimmerEffect />\n ) : (\n <RenderFields\n className={`${baseClass}__fields`}\n fields={fields}\n parentIndexPath=\"\"\n parentPath={path}\n parentSchemaPath={schemaPath}\n permissions={blockPermissions}\n readOnly={readOnly}\n />\n )}\n </Collapsible>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"BlockRow.js","names":["c","_c","getTranslation","React","Collapsible","ErrorPill","Pill","ShimmerEffect","useFormSubmitted","RenderFields","RowLabel","useThrottledValue","useTranslation","RowActions","SectionTitle","baseClass","BlockRow","t0","$","addRow","attributes","block","blocks","copyRow","duplicateRow","errorCount","fields","hasMaxRows","isDragging","isLoading","isLoadingFromProps","isSortable","Label","labels","listeners","moveRow","parentPath","pasteRow","pasteRowBelow","path","permissions","readOnly","removeRow","row","rowCount","rowIndex","schemaPath","setActivatorNodeRef","setCollapse","setNodeRef","transform","transition","i18n","hasSubmitted","t1","schemaBlocks","pasteData","fieldHasErrors","showBlockName","admin","disableBlockName","t2","t3","t4","filter","Boolean","classNames","join","t5","slug","blockType","collapsed","id","blockPermissions","permissionsBlockSpecific","hasReadPermission","read","missingCreateOrUpdate","create","update","hasRestrictiveStructure","Object","keys","length","t6","split","t7","_jsx","ref","style","zIndex","undefined","children","actions","className","collapsibleStyle","dragHandleProps","header","height","width","_jsxs","CustomComponent","label","_Fragment","String","padStart","pillStyle","size","singular","count","withMessage","onToggle","parentIndexPath","parentSchemaPath"],"sources":["../../../src/fields/Blocks/BlockRow.tsx"],"sourcesContent":["'use client'\nimport type { ClientBlock, ClientField, Labels, Row, SanitizedFieldPermissions } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { UseDraggableSortableReturn } from '../../elements/DraggableSortable/useDraggableSortable/types.js'\nimport type { RenderFieldsProps } from '../../forms/RenderFields/types.js'\n\nimport { Collapsible } from '../../elements/Collapsible/index.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { Pill } from '../../elements/Pill/index.js'\nimport { ShimmerEffect } from '../../elements/ShimmerEffect/index.js'\nimport { useFormSubmitted } from '../../forms/Form/context.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { RowLabel } from '../../forms/RowLabel/index.js'\nimport { useThrottledValue } from '../../hooks/useThrottledValue.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { RowActions } from './RowActions.js'\nimport { SectionTitle } from './SectionTitle/index.js'\n\nconst baseClass = 'blocks-field'\n\ntype BlocksFieldProps = {\n addRow: (rowIndex: number, blockType: string) => Promise<void> | void\n block: ClientBlock\n blocks: (ClientBlock | string)[] | ClientBlock[]\n copyRow: (rowIndex: number) => void\n duplicateRow: (rowIndex: number) => void\n errorCount: number\n fields: ClientField[]\n hasMaxRows?: boolean\n isLoading?: boolean\n isSortable?: boolean\n Label?: React.ReactNode\n labels: Labels\n moveRow: (fromIndex: number, toIndex: number) => void\n parentPath: string\n pasteRow: (rowIndex: number) => void\n pasteRowBelow: (rowIndex: number) => void\n path: string\n permissions: SanitizedFieldPermissions\n readOnly: boolean\n removeRow: (rowIndex: number) => void\n row: Row\n rowCount: number\n rowIndex: number\n schemaPath: string\n setCollapse: (id: string, collapsed: boolean) => void\n} & UseDraggableSortableReturn\n\nexport const BlockRow: React.FC<BlocksFieldProps> = ({\n addRow,\n attributes,\n block,\n blocks,\n copyRow,\n duplicateRow,\n errorCount,\n fields,\n hasMaxRows,\n isDragging,\n isLoading: isLoadingFromProps,\n isSortable,\n Label,\n labels,\n listeners,\n moveRow,\n parentPath,\n pasteRow,\n pasteRowBelow,\n path,\n permissions,\n readOnly,\n removeRow,\n row,\n rowCount,\n rowIndex,\n schemaPath,\n setActivatorNodeRef,\n setCollapse,\n setNodeRef,\n transform,\n transition,\n}) => {\n const isLoading = useThrottledValue(isLoadingFromProps, 500)\n\n const { i18n } = useTranslation()\n const hasSubmitted = useFormSubmitted()\n\n const pasteData = React.useMemo(\n () => ({ path, schemaBlocks: blocks as ClientBlock[] }),\n [path, blocks],\n )\n\n const fieldHasErrors = hasSubmitted && errorCount > 0\n\n const showBlockName = !block.admin?.disableBlockName\n\n const classNames = [\n `${baseClass}__row`,\n fieldHasErrors ? `${baseClass}__row--has-errors` : `${baseClass}__row--no-errors`,\n isDragging && `${baseClass}__row--is-dragging`,\n ]\n .filter(Boolean)\n .join(' ')\n\n let blockPermissions: RenderFieldsProps['permissions'] = true\n\n if (permissions === true) {\n blockPermissions = true\n } else {\n const permissionsBlockSpecific = permissions?.blocks?.[block.slug] || permissions?.blocks\n if (permissionsBlockSpecific === true) {\n blockPermissions = true\n } else if (permissionsBlockSpecific?.fields) {\n blockPermissions = permissionsBlockSpecific.fields\n } else {\n // Check if we should fall back to read-only mode based on permission structure\n // This handles cases where field-level access control exists but block permissions were sanitized\n if (typeof permissions === 'object' && permissions && !permissionsBlockSpecific) {\n // If permissions object exists but has no block-specific permissions,\n // check if it has any restrictive characteristics\n const hasReadPermission = permissions.read === true\n const missingCreateOrUpdate = !permissions.create || !permissions.update\n const hasRestrictiveStructure =\n hasReadPermission &&\n (missingCreateOrUpdate ||\n (typeof permissions === 'object' &&\n Object.keys(permissions).length === 1 &&\n permissions.read))\n\n if (hasRestrictiveStructure) {\n blockPermissions = { read: true }\n } else {\n blockPermissions = permissionsBlockSpecific?.fields\n }\n } else {\n blockPermissions = permissionsBlockSpecific?.fields\n }\n }\n }\n\n return (\n <div\n id={`${parentPath?.split('.').join('-')}-row-${rowIndex}`}\n key={`${parentPath}-row-${row.id}`}\n ref={setNodeRef}\n style={{\n transform,\n transition,\n zIndex: isDragging ? 1 : undefined,\n }}\n >\n <Collapsible\n actions={\n !readOnly ? (\n <RowActions\n addRow={addRow}\n blocks={blocks}\n blockType={row.blockType}\n copyRow={copyRow}\n duplicateRow={duplicateRow}\n fields={block.fields}\n hasMaxRows={hasMaxRows}\n isSortable={isSortable}\n labels={labels}\n moveRow={moveRow}\n pasteData={pasteData}\n pasteRow={pasteRow}\n pasteRowBelow={pasteRowBelow}\n removeRow={removeRow}\n rowCount={rowCount}\n rowIndex={rowIndex}\n />\n ) : undefined\n }\n className={classNames}\n collapsibleStyle={fieldHasErrors ? 'error' : 'default'}\n dragHandleProps={\n isSortable && !readOnly\n ? {\n id: row.id,\n attributes,\n listeners,\n setActivatorNodeRef,\n }\n : undefined\n }\n header={\n isLoading ? (\n <ShimmerEffect height=\"1rem\" width=\"8rem\" />\n ) : (\n <div className={`${baseClass}__block-header`}>\n <RowLabel\n CustomComponent={Label}\n label={\n <>\n <span className={`${baseClass}__block-number`}>\n {String(rowIndex + 1).padStart(2, '0')}\n </span>\n <Pill\n className={`${baseClass}__block-pill ${baseClass}__block-pill-${row.blockType}`}\n pillStyle=\"white\"\n size=\"small\"\n >\n {getTranslation(block.labels.singular, i18n)}\n </Pill>\n {showBlockName && (\n <SectionTitle path={`${path}.blockName`} readOnly={readOnly} />\n )}\n </>\n }\n path={path}\n rowNumber={rowIndex}\n />\n {fieldHasErrors && <ErrorPill count={errorCount} i18n={i18n} withMessage />}\n </div>\n )\n }\n isCollapsed={row.collapsed}\n key={row.id}\n onToggle={(collapsed) => setCollapse(row.id, collapsed)}\n >\n {isLoading ? (\n <ShimmerEffect />\n ) : (\n <RenderFields\n className={`${baseClass}__fields`}\n fields={fields}\n parentIndexPath=\"\"\n parentPath={path}\n parentSchemaPath={schemaPath}\n permissions={blockPermissions}\n readOnly={readOnly}\n />\n )}\n </Collapsible>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","useState","SearchInput","useTranslation","baseClass","BlockSearch","props","$","setSearchTerm","t","value","setValue","t0","search","handleChange","t1","t2","_jsx","className","children","onChange","onClear","placeholder"],"sources":["../../../../../src/fields/Blocks/BlockSelector/BlockSearch/index.tsx"],"sourcesContent":["'use client'\nimport React, { useState } from 'react'\n\nimport { SearchInput } from '../../../../elements/Search/SearchInput/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'block-search'\n\nexport const BlockSearch: React.FC<{ setSearchTerm: (term: string) => void }> = (props) => {\n const { setSearchTerm } = props\n const { t } = useTranslation()\n const [value, setValue] = useState('')\n\n const handleChange = (search: string) => {\n setValue(search)\n setSearchTerm(search)\n }\n\n return (\n <div className={baseClass}>\n <SearchInput\n aria-label={t('fields:searchForBlock')}\n className={`${baseClass}__input`}\n onChange={handleChange}\n onClear={() => handleChange('')}\n placeholder={t('fields:searchForBlock')}\n value={value}\n />\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,IAASC,QAAQ,QAAQ;AAEhC,SAASC,WAAW,QAAQ;AAC5B,SAASC,cAAc,QAAQ;AAC/B,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,WAAA,GAAmEC,KAAA;EAAA,MAAAC,CAAA,GAAAR,EAAA;EAC9E;IAAAS;EAAA,IAA0BF,KAAA;EAC1B;IAAAG;EAAA,IAAcN,cAAA;EACd,OAAAO,KAAA,EAAAC,QAAA,IAA0BV,QAAA,CAAS;EAAA,IAAAW,EAAA;EAAA,IAAAL,CAAA,QAAAC,aAAA;IAEdI,EAAA,GAAAC,MAAA;MACnBF,QAAA,CAASE,MAAA;MACTL,aAAA,CAAcK,MAAA;IAAA;IAChBN,CAAA,MAAAC,aAAA;IAAAD,CAAA,MAAAK,EAAA;EAAA;IAAAA,EAAA,GAAAL,CAAA;EAAA;EAHA,MAAAO,YAAA,GAAqBF,EAGrB;EAAA,IAAAG,EAAA;EAAA,IAAAR,CAAA,QAAAO,YAAA,IAAAP,CAAA,QAAAE,CAAA,IAAAF,CAAA,QAAAG,KAAA;IAAA,IAAAM,EAAA;IAAA,IAAAT,CAAA,QAAAO,YAAA;MAQeE,EAAA,GAAAA,CAAA,KAAMF,YAAA,CAAa;MAAAP,CAAA,MAAAO,YAAA;MAAAP,CAAA,MAAAS,EAAA;IAAA;MAAAA,EAAA,GAAAT,CAAA;IAAA;IALhCQ,EAAA,GAAAE,IAAA,CAAC;MAAAC,SAAA,EAAAd,SAAA;MAAAe,QAAA,EACCF,IAAA,CAAAf,WAAA;QAAA,cACcO,CAAA,CAAE;QAAAS,SAAA,EACH,GAAAd,SAAA,SAAqB;QAAAgB,QAAA,EACtBN,YAAA;QAAAO,OAAA,EACDL,EAAmB;QAAAM,WAAA,EACfb,CAAA,CAAE;QAAAC;MAAA,C;;;;;;;;;SANnBK,E;CAWJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useState","SearchInput","useTranslation","baseClass","BlockSearch","props","$","setSearchTerm","t","value","setValue","t0","search","handleChange","t1","t2","_jsx","className","children","onChange","onClear","placeholder"],"sources":["../../../../../src/fields/Blocks/BlockSelector/BlockSearch/index.tsx"],"sourcesContent":["'use client'\nimport React, { useState } from 'react'\n\nimport { SearchInput } from '../../../../elements/Search/SearchInput/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'block-search'\n\nexport const BlockSearch: React.FC<{ setSearchTerm: (term: string) => void }> = (props) => {\n const { setSearchTerm } = props\n const { t } = useTranslation()\n const [value, setValue] = useState('')\n\n const handleChange = (search: string) => {\n setValue(search)\n setSearchTerm(search)\n }\n\n return (\n <div className={baseClass}>\n <SearchInput\n aria-label={t('fields:searchForBlock')}\n className={`${baseClass}__input`}\n onChange={handleChange}\n onClear={() => handleChange('')}\n placeholder={t('fields:searchForBlock')}\n value={value}\n />\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,IAASC,QAAQ,QAAQ;AAEhC,SAASC,WAAW,QAAQ;AAC5B,SAASC,cAAc,QAAQ;AAC/B,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,WAAA,GAAmEC,KAAA;EAAA,MAAAC,CAAA,GAAAR,EAAA;EAC9E;IAAAS;EAAA,IAA0BF,KAAA;EAC1B;IAAAG;EAAA,IAAcN,cAAA;EACd,OAAAO,KAAA,EAAAC,QAAA,IAA0BV,QAAA,CAAS;EAAA,IAAAW,EAAA;EAAA,IAAAL,CAAA,QAAAC,aAAA;IAEdI,EAAA,GAAAC,MAAA;MACnBF,QAAA,CAASE,MAAA;MACTL,aAAA,CAAcK,MAAA;IAAA,CAChB;IAAAN,CAAA,MAAAC,aAAA;IAAAD,CAAA,MAAAK,EAAA;EAAA;IAAAA,EAAA,GAAAL,CAAA;EAAA;EAHA,MAAAO,YAAA,GAAqBF,EAGrB;EAAA,IAAAG,EAAA;EAAA,IAAAR,CAAA,QAAAO,YAAA,IAAAP,CAAA,QAAAE,CAAA,IAAAF,CAAA,QAAAG,KAAA;IAAA,IAAAM,EAAA;IAAA,IAAAT,CAAA,QAAAO,YAAA;MAQeE,EAAA,GAAAA,CAAA,KAAMF,YAAA,CAAa;MAAAP,CAAA,MAAAO,YAAA;MAAAP,CAAA,MAAAS,EAAA;IAAA;MAAAA,EAAA,GAAAT,CAAA;IAAA;IALhCQ,EAAA,GAAAE,IAAA,CAAC;MAAAC,SAAA,EAAed,SAAA;MAAAe,QAAA,EACdF,IAAA,CAACf,WAAA;QAAA,cACaO,CAAA,CAAE;QAAAS,SAAA,EACH,GAAGd,SAAA,SAAkB;QAAAgB,QAAA,EACtBN,YAAA;QAAAO,OAAA,EACDL,EAAmB;QAAAM,WAAA,EACfb,CAAA,CAAE;QAAAC;;;;;;;;;;SANnBK,E;CAWJ","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  'use client';
2
2
 
3
+ import { c as _c } from "react/compiler-runtime";
3
4
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
5
  import { getTranslation } from '@payloadcms/translations';
5
6
  import React, { Fragment, useEffect, useMemo, useState } from 'react';
@@ -21,6 +22,7 @@ const getBlockLabel = (block, i18n) => {
21
22
  return '';
22
23
  };
23
24
  export const BlockSelector = props => {
25
+ const $ = _c(17);
24
26
  const {
25
27
  blocks,
26
28
  onDoubleClick,
@@ -28,7 +30,7 @@ export const BlockSelector = props => {
28
30
  searchTerm: searchTermFromProps,
29
31
  selectedBlock
30
32
  } = props;
31
- const [searchTerm, setSearchTerm] = useControllableState(searchTermFromProps ?? '');
33
+ const [searchTerm, setSearchTerm] = useControllableState(searchTermFromProps ?? "");
32
34
  const [filteredBlocks, setFilteredBlocks] = useState(blocks);
33
35
  const {
34
36
  i18n
@@ -36,14 +38,15 @@ export const BlockSelector = props => {
36
38
  const {
37
39
  config
38
40
  } = useConfig();
39
- const blockGroups = useMemo(() => {
40
- const groups = {
41
+ let groups;
42
+ if ($[0] !== filteredBlocks || $[1] !== i18n) {
43
+ groups = {
41
44
  _none: []
42
45
  };
43
46
  filteredBlocks.forEach(block => {
44
- if (typeof block === 'object' && block.admin?.group) {
47
+ if (typeof block === "object" && block.admin?.group) {
45
48
  const group = block.admin.group;
46
- const label = typeof group === 'string' ? group : getTranslation(group, i18n);
49
+ const label = typeof group === "string" ? group : getTranslation(group, i18n);
47
50
  if (Object.hasOwn(groups, label)) {
48
51
  groups[label].push(block);
49
52
  } else {
@@ -53,75 +56,112 @@ export const BlockSelector = props => {
53
56
  groups._none.push(block);
54
57
  }
55
58
  });
56
- return groups;
57
- }, [filteredBlocks, i18n]);
58
- useEffect(() => {
59
- const searchTermToUse = searchTerm.toLowerCase();
60
- const matchingBlocks = blocks?.reduce((matchedBlocks, _block) => {
61
- const block_0 = typeof _block === 'string' ? config.blocksMap[_block] : _block;
62
- const blockLabel = getBlockLabel(block_0, i18n);
63
- if (blockLabel.includes(searchTermToUse)) {
64
- matchedBlocks.push(block_0);
65
- }
66
- return matchedBlocks;
67
- }, []);
68
- setFilteredBlocks(matchingBlocks);
69
- }, [searchTerm, blocks, i18n, config.blocksMap]);
70
- return /*#__PURE__*/_jsxs(Fragment, {
71
- children: [/*#__PURE__*/_jsx(BlockSearch, {
72
- setSearchTerm: setSearchTerm
73
- }), /*#__PURE__*/_jsx("div", {
74
- className: `${baseClass}__blocks-wrapper`,
75
- children: /*#__PURE__*/_jsx("ul", {
76
- className: `${baseClass}__block-groups`,
77
- children: Object.entries(blockGroups).map(([groupLabel, groupBlocks]) => !groupBlocks.length ? null : /*#__PURE__*/_jsxs("li", {
78
- className: [`${baseClass}__block-group`, groupLabel === '_none' && `${baseClass}__block-group-none`].filter(Boolean).join(' '),
79
- children: [groupLabel !== '_none' && /*#__PURE__*/_jsx("h3", {
80
- className: `${baseClass}__block-group-label`,
81
- children: groupLabel
82
- }), /*#__PURE__*/_jsx("ul", {
83
- className: `${baseClass}__blocks`,
84
- children: groupBlocks.map((_block_0, index) => {
85
- const block_1 = typeof _block_0 === 'string' ? config.blocksMap[_block_0] : _block_0;
86
- const {
87
- slug,
88
- admin,
89
- imageAltText,
90
- imageURL,
91
- labels: blockLabels
92
- } = block_1;
93
- const thumbnailURL = admin?.images?.thumbnail ? typeof admin.images.thumbnail === 'string' ? admin.images.thumbnail : admin.images.thumbnail.url : imageURL;
94
- const thumbnailAlt = admin?.images?.thumbnail && typeof admin.images.thumbnail !== 'string' ? admin.images.thumbnail.alt : imageAltText;
95
- return /*#__PURE__*/_jsx("li", {
96
- className: `${baseClass}__block`,
97
- children: /*#__PURE__*/_jsx(ThumbnailCard, {
98
- alignLabel: "left",
99
- isSelected: selectedBlock === slug,
100
- label: getTranslation(blockLabels?.singular, i18n),
101
- onClick: () => {
102
- if (typeof onSelect === 'function') {
103
- onSelect(slug);
104
- }
105
- },
106
- onDoubleClick: () => {
107
- if (typeof onDoubleClick === 'function') {
108
- onDoubleClick(slug);
109
- }
110
- },
111
- thumbnail: /*#__PURE__*/_jsx("div", {
112
- className: `${baseClass}__default-image`,
113
- children: thumbnailURL ? /*#__PURE__*/_jsx("img", {
114
- alt: thumbnailAlt,
115
- src: thumbnailURL
116
- }) : /*#__PURE__*/_jsx(DefaultBlockImage, {})
117
- })
59
+ $[0] = filteredBlocks;
60
+ $[1] = i18n;
61
+ $[2] = groups;
62
+ } else {
63
+ groups = $[2];
64
+ }
65
+ const blockGroups = groups;
66
+ let t0;
67
+ let t1;
68
+ if ($[3] !== blocks || $[4] !== config.blocksMap || $[5] !== i18n || $[6] !== searchTerm) {
69
+ t0 = () => {
70
+ const searchTermToUse = searchTerm.toLowerCase();
71
+ const matchingBlocks = blocks?.reduce((matchedBlocks, _block) => {
72
+ const block_0 = typeof _block === "string" ? config.blocksMap[_block] : _block;
73
+ const blockLabel = getBlockLabel(block_0, i18n);
74
+ if (blockLabel.includes(searchTermToUse)) {
75
+ matchedBlocks.push(block_0);
76
+ }
77
+ return matchedBlocks;
78
+ }, []);
79
+ setFilteredBlocks(matchingBlocks);
80
+ };
81
+ t1 = [searchTerm, blocks, i18n, config.blocksMap];
82
+ $[3] = blocks;
83
+ $[4] = config.blocksMap;
84
+ $[5] = i18n;
85
+ $[6] = searchTerm;
86
+ $[7] = t0;
87
+ $[8] = t1;
88
+ } else {
89
+ t0 = $[7];
90
+ t1 = $[8];
91
+ }
92
+ useEffect(t0, t1);
93
+ let t2;
94
+ if ($[9] !== blockGroups || $[10] !== config.blocksMap || $[11] !== i18n || $[12] !== onDoubleClick || $[13] !== onSelect || $[14] !== selectedBlock || $[15] !== setSearchTerm) {
95
+ t2 = _jsxs(Fragment, {
96
+ children: [_jsx(BlockSearch, {
97
+ setSearchTerm
98
+ }), _jsx("div", {
99
+ className: `${baseClass}__blocks-wrapper`,
100
+ children: _jsx("ul", {
101
+ className: `${baseClass}__block-groups`,
102
+ children: Object.entries(blockGroups).map(t3 => {
103
+ const [groupLabel, groupBlocks] = t3;
104
+ return !groupBlocks.length ? null : _jsxs("li", {
105
+ className: [`${baseClass}__block-group`, groupLabel === "_none" && `${baseClass}__block-group-none`].filter(Boolean).join(" "),
106
+ children: [groupLabel !== "_none" && _jsx("h3", {
107
+ className: `${baseClass}__block-group-label`,
108
+ children: groupLabel
109
+ }), _jsx("ul", {
110
+ className: `${baseClass}__blocks`,
111
+ children: groupBlocks.map((_block_0, index) => {
112
+ const block_1 = typeof _block_0 === "string" ? config.blocksMap[_block_0] : _block_0;
113
+ const {
114
+ slug,
115
+ admin,
116
+ imageAltText,
117
+ imageURL,
118
+ labels: blockLabels
119
+ } = block_1;
120
+ const thumbnailURL = admin?.images?.thumbnail ? typeof admin.images.thumbnail === "string" ? admin.images.thumbnail : admin.images.thumbnail.url : imageURL;
121
+ const thumbnailAlt = admin?.images?.thumbnail && typeof admin.images.thumbnail !== "string" ? admin.images.thumbnail.alt : imageAltText;
122
+ return _jsx("li", {
123
+ className: `${baseClass}__block`,
124
+ children: _jsx(ThumbnailCard, {
125
+ alignLabel: "left",
126
+ isSelected: selectedBlock === slug,
127
+ label: getTranslation(blockLabels?.singular, i18n),
128
+ onClick: () => {
129
+ if (typeof onSelect === "function") {
130
+ onSelect(slug);
131
+ }
132
+ },
133
+ onDoubleClick: () => {
134
+ if (typeof onDoubleClick === "function") {
135
+ onDoubleClick(slug);
136
+ }
137
+ },
138
+ thumbnail: _jsx("div", {
139
+ className: `${baseClass}__default-image`,
140
+ children: thumbnailURL ? _jsx("img", {
141
+ alt: thumbnailAlt,
142
+ src: thumbnailURL
143
+ }) : _jsx(DefaultBlockImage, {})
144
+ })
145
+ })
146
+ }, index);
118
147
  })
119
- }, index);
120
- })
121
- })]
122
- }, groupLabel))
123
- })
124
- })]
125
- });
148
+ })]
149
+ }, groupLabel);
150
+ })
151
+ })
152
+ })]
153
+ });
154
+ $[9] = blockGroups;
155
+ $[10] = config.blocksMap;
156
+ $[11] = i18n;
157
+ $[12] = onDoubleClick;
158
+ $[13] = onSelect;
159
+ $[14] = selectedBlock;
160
+ $[15] = setSearchTerm;
161
+ $[16] = t2;
162
+ } else {
163
+ t2 = $[16];
164
+ }
165
+ return t2;
126
166
  };
127
167
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["getTranslation","React","Fragment","useEffect","useMemo","useState","ThumbnailCard","DefaultBlockImage","useControllableState","useConfig","useTranslation","BlockSearch","baseClass","getBlockLabel","block","i18n","labels","singular","toLowerCase","BlockSelector","props","blocks","onDoubleClick","onSelect","searchTerm","searchTermFromProps","selectedBlock","setSearchTerm","filteredBlocks","setFilteredBlocks","config","blockGroups","groups","_none","forEach","admin","group","label","Object","hasOwn","push","searchTermToUse","matchingBlocks","reduce","matchedBlocks","_block","blocksMap","blockLabel","includes","_jsxs","_jsx","className","entries","map","groupLabel","groupBlocks","length","filter","Boolean","join","index","slug","imageAltText","imageURL","blockLabels","thumbnailURL","images","thumbnail","url","thumbnailAlt","alt","alignLabel","isSelected","onClick","src"],"sources":["../../../../src/fields/Blocks/BlockSelector/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient } from '@payloadcms/translations'\nimport type { ClientBlock } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { Fragment, useEffect, useMemo, useState } from 'react'\n\nimport { ThumbnailCard } from '../../../elements/ThumbnailCard/index.js'\nimport { DefaultBlockImage } from '../../../graphics/DefaultBlockImage/index.js'\nimport { useControllableState } from '../../../hooks/useControllableState.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { BlockSearch } from './BlockSearch/index.js'\nimport './index.css'\n\nexport type Props = {\n readonly blocks: (ClientBlock | string)[]\n readonly onDoubleClick?: (blockType: string) => void\n readonly onSelect?: (blockType: string) => void\n /**\n * Control the search term state externally\n */\n searchTerm?: string\n readonly selectedBlock?: null | string\n}\n\nconst baseClass = 'blocks-drawer'\n\nconst getBlockLabel = (block: ClientBlock, i18n: I18nClient) => {\n if (typeof block.labels.singular === 'string') {\n return block.labels.singular.toLowerCase()\n }\n if (typeof block.labels.singular === 'object') {\n return getTranslation(block.labels.singular, i18n).toLowerCase()\n }\n return ''\n}\n\nexport const BlockSelector: React.FC<Props> = (props) => {\n const { blocks, onDoubleClick, onSelect, searchTerm: searchTermFromProps, selectedBlock } = props\n\n const [searchTerm, setSearchTerm] = useControllableState(searchTermFromProps ?? '')\n\n const [filteredBlocks, setFilteredBlocks] = useState(blocks)\n const { i18n } = useTranslation()\n const { config } = useConfig()\n\n const blockGroups = useMemo(() => {\n const groups: Record<string, (ClientBlock | string)[]> = {\n _none: [],\n }\n\n filteredBlocks.forEach((block) => {\n if (typeof block === 'object' && block.admin?.group) {\n const group = block.admin.group\n const label = typeof group === 'string' ? group : getTranslation(group, i18n)\n\n if (Object.hasOwn(groups, label)) {\n groups[label].push(block)\n } else {\n groups[label] = [block]\n }\n } else {\n groups._none.push(block)\n }\n })\n\n return groups\n }, [filteredBlocks, i18n])\n\n useEffect(() => {\n const searchTermToUse = searchTerm.toLowerCase()\n\n const matchingBlocks = blocks?.reduce((matchedBlocks, _block) => {\n const block = typeof _block === 'string' ? config.blocksMap[_block] : _block\n const blockLabel = getBlockLabel(block, i18n)\n if (blockLabel.includes(searchTermToUse)) {\n matchedBlocks.push(block)\n }\n return matchedBlocks\n }, [])\n\n setFilteredBlocks(matchingBlocks)\n }, [searchTerm, blocks, i18n, config.blocksMap])\n\n return (\n <Fragment>\n <BlockSearch setSearchTerm={setSearchTerm} />\n <div className={`${baseClass}__blocks-wrapper`}>\n <ul className={`${baseClass}__block-groups`}>\n {Object.entries(blockGroups).map(([groupLabel, groupBlocks]) =>\n !groupBlocks.length ? null : (\n <li\n className={[\n `${baseClass}__block-group`,\n groupLabel === '_none' && `${baseClass}__block-group-none`,\n ]\n .filter(Boolean)\n .join(' ')}\n key={groupLabel}\n >\n {groupLabel !== '_none' && (\n <h3 className={`${baseClass}__block-group-label`}>{groupLabel}</h3>\n )}\n <ul className={`${baseClass}__blocks`}>\n {groupBlocks.map((_block, index) => {\n const block = typeof _block === 'string' ? config.blocksMap[_block] : _block\n\n const { slug, admin, imageAltText, imageURL, labels: blockLabels } = block\n\n const thumbnailURL = admin?.images?.thumbnail\n ? typeof admin.images.thumbnail === 'string'\n ? admin.images.thumbnail\n : admin.images.thumbnail.url\n : imageURL\n const thumbnailAlt =\n admin?.images?.thumbnail && typeof admin.images.thumbnail !== 'string'\n ? admin.images.thumbnail.alt\n : imageAltText\n\n return (\n <li className={`${baseClass}__block`} key={index}>\n <ThumbnailCard\n alignLabel=\"left\"\n isSelected={selectedBlock === slug}\n label={getTranslation(blockLabels?.singular, i18n)}\n onClick={() => {\n if (typeof onSelect === 'function') {\n onSelect(slug)\n }\n }}\n onDoubleClick={() => {\n if (typeof onDoubleClick === 'function') {\n onDoubleClick(slug)\n }\n }}\n thumbnail={\n <div className={`${baseClass}__default-image`}>\n {thumbnailURL ? (\n <img alt={thumbnailAlt} src={thumbnailURL} />\n ) : (\n <DefaultBlockImage />\n )}\n </div>\n }\n />\n </li>\n )\n })}\n </ul>\n </li>\n ),\n )}\n </ul>\n </div>\n </Fragment>\n )\n}\n"],"mappings":"AAAA;;;AAIA,SAASA,cAAc,QAAQ;AAC/B,OAAOC,KAAA,IAASC,QAAQ,EAAEC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,QAAQ;AAE9D,SAASC,aAAa,QAAQ;AAC9B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,oBAAoB,QAAQ;AACrC,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAC/B,SAASC,WAAW,QAAQ;AAC5B,OAAO;AAaP,MAAMC,SAAA,GAAY;AAElB,MAAMC,aAAA,GAAgBA,CAACC,KAAA,EAAoBC,IAAA;EACzC,IAAI,OAAOD,KAAA,CAAME,MAAM,CAACC,QAAQ,KAAK,UAAU;IAC7C,OAAOH,KAAA,CAAME,MAAM,CAACC,QAAQ,CAACC,WAAW;EAC1C;EACA,IAAI,OAAOJ,KAAA,CAAME,MAAM,CAACC,QAAQ,KAAK,UAAU;IAC7C,OAAOjB,cAAA,CAAec,KAAA,CAAME,MAAM,CAACC,QAAQ,EAAEF,IAAA,EAAMG,WAAW;EAChE;EACA,OAAO;AACT;AAEA,OAAO,MAAMC,aAAA,GAAkCC,KAAA;EAC7C,MAAM;IAAEC,MAAM;IAAEC,aAAa;IAAEC,QAAQ;IAAEC,UAAA,EAAYC,mBAAmB;IAAEC;EAAa,CAAE,GAAGN,KAAA;EAE5F,MAAM,CAACI,UAAA,EAAYG,aAAA,CAAc,GAAGnB,oBAAA,CAAqBiB,mBAAA,IAAuB;EAEhF,MAAM,CAACG,cAAA,EAAgBC,iBAAA,CAAkB,GAAGxB,QAAA,CAASgB,MAAA;EACrD,MAAM;IAAEN;EAAI,CAAE,GAAGL,cAAA;EACjB,MAAM;IAAEoB;EAAM,CAAE,GAAGrB,SAAA;EAEnB,MAAMsB,WAAA,GAAc3B,OAAA,CAAQ;IAC1B,MAAM4B,MAAA,GAAmD;MACvDC,KAAA,EAAO;IACT;IAEAL,cAAA,CAAeM,OAAO,CAAEpB,KAAA;MACtB,IAAI,OAAOA,KAAA,KAAU,YAAYA,KAAA,CAAMqB,KAAK,EAAEC,KAAA,EAAO;QACnD,MAAMA,KAAA,GAAQtB,KAAA,CAAMqB,KAAK,CAACC,KAAK;QAC/B,MAAMC,KAAA,GAAQ,OAAOD,KAAA,KAAU,WAAWA,KAAA,GAAQpC,cAAA,CAAeoC,KAAA,EAAOrB,IAAA;QAExE,IAAIuB,MAAA,CAAOC,MAAM,CAACP,MAAA,EAAQK,KAAA,GAAQ;UAChCL,MAAM,CAACK,KAAA,CAAM,CAACG,IAAI,CAAC1B,KAAA;QACrB,OAAO;UACLkB,MAAM,CAACK,KAAA,CAAM,GAAG,CAACvB,KAAA,CAAM;QACzB;MACF,OAAO;QACLkB,MAAA,CAAOC,KAAK,CAACO,IAAI,CAAC1B,KAAA;MACpB;IACF;IAEA,OAAOkB,MAAA;EACT,GAAG,CAACJ,cAAA,EAAgBb,IAAA,CAAK;EAEzBZ,SAAA,CAAU;IACR,MAAMsC,eAAA,GAAkBjB,UAAA,CAAWN,WAAW;IAE9C,MAAMwB,cAAA,GAAiBrB,MAAA,EAAQsB,MAAA,CAAO,CAACC,aAAA,EAAeC,MAAA;MACpD,MAAM/B,OAAA,GAAQ,OAAO+B,MAAA,KAAW,WAAWf,MAAA,CAAOgB,SAAS,CAACD,MAAA,CAAO,GAAGA,MAAA;MACtE,MAAME,UAAA,GAAalC,aAAA,CAAcC,OAAA,EAAOC,IAAA;MACxC,IAAIgC,UAAA,CAAWC,QAAQ,CAACP,eAAA,GAAkB;QACxCG,aAAA,CAAcJ,IAAI,CAAC1B,OAAA;MACrB;MACA,OAAO8B,aAAA;IACT,GAAG,EAAE;IAELf,iBAAA,CAAkBa,cAAA;EACpB,GAAG,CAAClB,UAAA,EAAYH,MAAA,EAAQN,IAAA,EAAMe,MAAA,CAAOgB,SAAS,CAAC;EAE/C,oBACEG,KAAA,CAAC/C,QAAA;4BACCgD,IAAA,CAACvC,WAAA;MAAYgB,aAAA,EAAeA;qBAC5BuB,IAAA,CAAC;MAAIC,SAAA,EAAW,GAAGvC,SAAA,kBAA2B;gBAC5C,aAAAsC,IAAA,CAAC;QAAGC,SAAA,EAAW,GAAGvC,SAAA,gBAAyB;kBACxC0B,MAAA,CAAOc,OAAO,CAACrB,WAAA,EAAasB,GAAG,CAAC,CAAC,CAACC,UAAA,EAAYC,WAAA,CAAY,KACzD,CAACA,WAAA,CAAYC,MAAM,GAAG,oBACpBP,KAAA,CAAC;UACCE,SAAA,EAAW,CACT,GAAGvC,SAAA,eAAwB,EAC3B0C,UAAA,KAAe,WAAW,GAAG1C,SAAA,oBAA6B,CAC3D,CACE6C,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;qBAGPL,UAAA,KAAe,wBACdJ,IAAA,CAAC;YAAGC,SAAA,EAAW,GAAGvC,SAAA,qBAA8B;sBAAG0C;2BAErDJ,IAAA,CAAC;YAAGC,SAAA,EAAW,GAAGvC,SAAA,UAAmB;sBAClC2C,WAAA,CAAYF,GAAG,CAAC,CAACR,QAAA,EAAQe,KAAA;cACxB,MAAM9C,OAAA,GAAQ,OAAO+B,QAAA,KAAW,WAAWf,MAAA,CAAOgB,SAAS,CAACD,QAAA,CAAO,GAAGA,QAAA;cAEtE,MAAM;gBAAEgB,IAAI;gBAAE1B,KAAK;gBAAE2B,YAAY;gBAAEC,QAAQ;gBAAE/C,MAAA,EAAQgD;cAAW,CAAE,GAAGlD,OAAA;cAErE,MAAMmD,YAAA,GAAe9B,KAAA,EAAO+B,MAAA,EAAQC,SAAA,GAChC,OAAOhC,KAAA,CAAM+B,MAAM,CAACC,SAAS,KAAK,WAChChC,KAAA,CAAM+B,MAAM,CAACC,SAAS,GACtBhC,KAAA,CAAM+B,MAAM,CAACC,SAAS,CAACC,GAAG,GAC5BL,QAAA;cACJ,MAAMM,YAAA,GACJlC,KAAA,EAAO+B,MAAA,EAAQC,SAAA,IAAa,OAAOhC,KAAA,CAAM+B,MAAM,CAACC,SAAS,KAAK,WAC1DhC,KAAA,CAAM+B,MAAM,CAACC,SAAS,CAACG,GAAG,GAC1BR,YAAA;cAEN,oBACEZ,IAAA,CAAC;gBAAGC,SAAA,EAAW,GAAGvC,SAAA,SAAkB;0BAClC,aAAAsC,IAAA,CAAC5C,aAAA;kBACCiE,UAAA,EAAW;kBACXC,UAAA,EAAY9C,aAAA,KAAkBmC,IAAA;kBAC9BxB,KAAA,EAAOrC,cAAA,CAAegE,WAAA,EAAa/C,QAAA,EAAUF,IAAA;kBAC7C0D,OAAA,EAASA,CAAA;oBACP,IAAI,OAAOlD,QAAA,KAAa,YAAY;sBAClCA,QAAA,CAASsC,IAAA;oBACX;kBACF;kBACAvC,aAAA,EAAeA,CAAA;oBACb,IAAI,OAAOA,aAAA,KAAkB,YAAY;sBACvCA,aAAA,CAAcuC,IAAA;oBAChB;kBACF;kBACAM,SAAA,eACEjB,IAAA,CAAC;oBAAIC,SAAA,EAAW,GAAGvC,SAAA,iBAA0B;8BAC1CqD,YAAA,gBACCf,IAAA,CAAC;sBAAIoB,GAAA,EAAKD,YAAA;sBAAcK,GAAA,EAAKT;sCAE7Bf,IAAA,CAAC3C,iBAAA;;;iBApBgCqD,KAAA;YA2B/C;;WAjDGN,UAAA;;;;AA0DrB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","React","Fragment","useEffect","useMemo","useState","ThumbnailCard","DefaultBlockImage","useControllableState","useConfig","useTranslation","BlockSearch","baseClass","getBlockLabel","block","i18n","labels","singular","toLowerCase","BlockSelector","props","$","blocks","onDoubleClick","onSelect","searchTerm","searchTermFromProps","selectedBlock","setSearchTerm","filteredBlocks","setFilteredBlocks","config","groups","_none","forEach","admin","group","label","Object","hasOwn","push","blockGroups","t0","t1","blocksMap","searchTermToUse","matchingBlocks","reduce","matchedBlocks","_block","block_0","blockLabel","includes","t2","_jsxs","children","_jsx","className","entries","map","t3","groupLabel","groupBlocks","length","filter","Boolean","join","_block_0","index","block_1","slug","imageAltText","imageURL","blockLabels","thumbnailURL","images","thumbnail","url","thumbnailAlt","alt","alignLabel","isSelected","onClick","src"],"sources":["../../../../src/fields/Blocks/BlockSelector/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient } from '@payloadcms/translations'\nimport type { ClientBlock } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { Fragment, useEffect, useMemo, useState } from 'react'\n\nimport { ThumbnailCard } from '../../../elements/ThumbnailCard/index.js'\nimport { DefaultBlockImage } from '../../../graphics/DefaultBlockImage/index.js'\nimport { useControllableState } from '../../../hooks/useControllableState.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { BlockSearch } from './BlockSearch/index.js'\nimport './index.css'\n\nexport type Props = {\n readonly blocks: (ClientBlock | string)[]\n readonly onDoubleClick?: (blockType: string) => void\n readonly onSelect?: (blockType: string) => void\n /**\n * Control the search term state externally\n */\n searchTerm?: string\n readonly selectedBlock?: null | string\n}\n\nconst baseClass = 'blocks-drawer'\n\nconst getBlockLabel = (block: ClientBlock, i18n: I18nClient) => {\n if (typeof block.labels.singular === 'string') {\n return block.labels.singular.toLowerCase()\n }\n if (typeof block.labels.singular === 'object') {\n return getTranslation(block.labels.singular, i18n).toLowerCase()\n }\n return ''\n}\n\nexport const BlockSelector: React.FC<Props> = (props) => {\n const { blocks, onDoubleClick, onSelect, searchTerm: searchTermFromProps, selectedBlock } = props\n\n const [searchTerm, setSearchTerm] = useControllableState(searchTermFromProps ?? '')\n\n const [filteredBlocks, setFilteredBlocks] = useState(blocks)\n const { i18n } = useTranslation()\n const { config } = useConfig()\n\n const blockGroups = useMemo(() => {\n const groups: Record<string, (ClientBlock | string)[]> = {\n _none: [],\n }\n\n filteredBlocks.forEach((block) => {\n if (typeof block === 'object' && block.admin?.group) {\n const group = block.admin.group\n const label = typeof group === 'string' ? group : getTranslation(group, i18n)\n\n if (Object.hasOwn(groups, label)) {\n groups[label].push(block)\n } else {\n groups[label] = [block]\n }\n } else {\n groups._none.push(block)\n }\n })\n\n return groups\n }, [filteredBlocks, i18n])\n\n useEffect(() => {\n const searchTermToUse = searchTerm.toLowerCase()\n\n const matchingBlocks = blocks?.reduce((matchedBlocks, _block) => {\n const block = typeof _block === 'string' ? config.blocksMap[_block] : _block\n const blockLabel = getBlockLabel(block, i18n)\n if (blockLabel.includes(searchTermToUse)) {\n matchedBlocks.push(block)\n }\n return matchedBlocks\n }, [])\n\n setFilteredBlocks(matchingBlocks)\n }, [searchTerm, blocks, i18n, config.blocksMap])\n\n return (\n <Fragment>\n <BlockSearch setSearchTerm={setSearchTerm} />\n <div className={`${baseClass}__blocks-wrapper`}>\n <ul className={`${baseClass}__block-groups`}>\n {Object.entries(blockGroups).map(([groupLabel, groupBlocks]) =>\n !groupBlocks.length ? null : (\n <li\n className={[\n `${baseClass}__block-group`,\n groupLabel === '_none' && `${baseClass}__block-group-none`,\n ]\n .filter(Boolean)\n .join(' ')}\n key={groupLabel}\n >\n {groupLabel !== '_none' && (\n <h3 className={`${baseClass}__block-group-label`}>{groupLabel}</h3>\n )}\n <ul className={`${baseClass}__blocks`}>\n {groupBlocks.map((_block, index) => {\n const block = typeof _block === 'string' ? config.blocksMap[_block] : _block\n\n const { slug, admin, imageAltText, imageURL, labels: blockLabels } = block\n\n const thumbnailURL = admin?.images?.thumbnail\n ? typeof admin.images.thumbnail === 'string'\n ? admin.images.thumbnail\n : admin.images.thumbnail.url\n : imageURL\n const thumbnailAlt =\n admin?.images?.thumbnail && typeof admin.images.thumbnail !== 'string'\n ? admin.images.thumbnail.alt\n : imageAltText\n\n return (\n <li className={`${baseClass}__block`} key={index}>\n <ThumbnailCard\n alignLabel=\"left\"\n isSelected={selectedBlock === slug}\n label={getTranslation(blockLabels?.singular, i18n)}\n onClick={() => {\n if (typeof onSelect === 'function') {\n onSelect(slug)\n }\n }}\n onDoubleClick={() => {\n if (typeof onDoubleClick === 'function') {\n onDoubleClick(slug)\n }\n }}\n thumbnail={\n <div className={`${baseClass}__default-image`}>\n {thumbnailURL ? (\n <img alt={thumbnailAlt} src={thumbnailURL} />\n ) : (\n <DefaultBlockImage />\n )}\n </div>\n }\n />\n </li>\n )\n })}\n </ul>\n </li>\n ),\n )}\n </ul>\n </div>\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useModal","getTranslation","React","useCallback","useEffect","useState","Drawer","useTranslation","BlockSelector","BlocksDrawer","props","$","addRow","addRowIndex","blocks","drawerSlug","labels","closeModal","isModalOpen","i18n","t","searchTermOverride","setSearchTermOverride","selectedBlock","setSelectedBlock","t0","t1","t2","handleInsert","t3","slug","handleDoubleClick","t4","t5","singular","_jsx","headerActions","disabled","label","onClick","style","title","children","onDoubleClick","onSelect","searchTerm"],"sources":["../../../../src/fields/Blocks/BlocksDrawer/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientBlock, Labels } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport { Drawer } from '../../../elements/Drawer/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { BlockSelector } from '../BlockSelector/index.js'\n\nexport type Props = {\n readonly addRow: (index: number, blockType?: string) => Promise<void> | void\n readonly addRowIndex: number\n readonly blocks: (ClientBlock | string)[]\n readonly drawerSlug: string\n readonly labels: Labels\n}\n\nexport const BlocksDrawer: React.FC<Props> = (props) => {\n const { addRow, addRowIndex, blocks, drawerSlug, labels } = props\n\n const { closeModal, isModalOpen } = useModal()\n const { i18n, t } = useTranslation()\n const [searchTermOverride, setSearchTermOverride] = useState('')\n const [selectedBlock, setSelectedBlock] = useState<null | string>(null)\n\n useEffect(() => {\n if (!isModalOpen(drawerSlug)) {\n setSearchTermOverride('')\n setSelectedBlock(null)\n }\n }, [isModalOpen, drawerSlug])\n\n const handleInsert = useCallback(() => {\n if (selectedBlock) {\n void addRow(addRowIndex, selectedBlock)\n closeModal(drawerSlug)\n }\n }, [selectedBlock, addRow, addRowIndex, closeModal, drawerSlug])\n\n const handleDoubleClick = useCallback(\n (slug: string) => {\n void addRow(addRowIndex, slug)\n closeModal(drawerSlug)\n },\n [addRow, addRowIndex, closeModal, drawerSlug],\n )\n\n return (\n <Drawer\n headerActions={[\n {\n disabled: !selectedBlock,\n label: 'Insert',\n onClick: handleInsert,\n style: 'primary',\n },\n ]}\n slug={drawerSlug}\n title={t('fields:addLabel', { label: getTranslation(labels.singular, i18n) })}\n >\n <BlockSelector\n blocks={blocks}\n onDoubleClick={handleDoubleClick}\n onSelect={setSelectedBlock}\n searchTerm={searchTermOverride}\n selectedBlock={selectedBlock}\n />\n </Drawer>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useModal","getTranslation","React","useCallback","useEffect","useState","Drawer","useTranslation","BlockSelector","BlocksDrawer","props","$","addRow","addRowIndex","blocks","drawerSlug","labels","closeModal","isModalOpen","i18n","t","searchTermOverride","setSearchTermOverride","selectedBlock","setSelectedBlock","t0","t1","t2","handleInsert","t3","slug","handleDoubleClick","t4","t5","singular","_jsx","headerActions","disabled","label","onClick","style","title","children","onDoubleClick","onSelect","searchTerm"],"sources":["../../../../src/fields/Blocks/BlocksDrawer/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientBlock, Labels } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport { Drawer } from '../../../elements/Drawer/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { BlockSelector } from '../BlockSelector/index.js'\n\nexport type Props = {\n readonly addRow: (index: number, blockType?: string) => Promise<void> | void\n readonly addRowIndex: number\n readonly blocks: (ClientBlock | string)[]\n readonly drawerSlug: string\n readonly labels: Labels\n}\n\nexport const BlocksDrawer: React.FC<Props> = (props) => {\n const { addRow, addRowIndex, blocks, drawerSlug, labels } = props\n\n const { closeModal, isModalOpen } = useModal()\n const { i18n, t } = useTranslation()\n const [searchTermOverride, setSearchTermOverride] = useState('')\n const [selectedBlock, setSelectedBlock] = useState<null | string>(null)\n\n useEffect(() => {\n if (!isModalOpen(drawerSlug)) {\n setSearchTermOverride('')\n setSelectedBlock(null)\n }\n }, [isModalOpen, drawerSlug])\n\n const handleInsert = useCallback(() => {\n if (selectedBlock) {\n void addRow(addRowIndex, selectedBlock)\n closeModal(drawerSlug)\n }\n }, [selectedBlock, addRow, addRowIndex, closeModal, drawerSlug])\n\n const handleDoubleClick = useCallback(\n (slug: string) => {\n void addRow(addRowIndex, slug)\n closeModal(drawerSlug)\n },\n [addRow, addRowIndex, closeModal, drawerSlug],\n )\n\n return (\n <Drawer\n headerActions={[\n {\n disabled: !selectedBlock,\n label: 'Insert',\n onClick: handleInsert,\n style: 'primary',\n },\n ]}\n slug={drawerSlug}\n title={t('fields:addLabel', { label: getTranslation(labels.singular, i18n) })}\n >\n <BlockSelector\n blocks={blocks}\n onDoubleClick={handleDoubleClick}\n onSelect={setSelectedBlock}\n searchTerm={searchTermOverride}\n selectedBlock={selectedBlock}\n />\n </Drawer>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -10,7 +10,7 @@ import { useDrawerSlug } from '../../elements/Drawer/useDrawerSlug.js';
10
10
  import { useTranslation } from '../../providers/Translation/index.js';
11
11
  import { BlocksDrawer } from './BlocksDrawer/index.js';
12
12
  export const RowActions = props => {
13
- const $ = _c(31);
13
+ const $ = _c(39);
14
14
  const {
15
15
  addRow,
16
16
  blocks,
@@ -36,60 +36,78 @@ export const RowActions = props => {
36
36
  i18n
37
37
  } = useTranslation();
38
38
  const drawerSlug = useDrawerSlug("blocks-drawer");
39
- const block = blocks.find(candidate => typeof candidate !== "string" && candidate.slug === blockType);
40
- const rowLabel = `${block ? getTranslation(block.labels.singular, i18n) : blockType} ${rowIndex + 1}`;
41
- const [indexToAdd, setIndexToAdd] = React.useState(null);
42
39
  let t0;
43
- if ($[0] !== addRow || $[1] !== closeModal || $[2] !== drawerSlug || $[3] !== indexToAdd) {
44
- t0 = (_, rowBlockType) => {
45
- if (typeof addRow === "function") {
46
- addRow(indexToAdd, rowBlockType);
47
- }
48
- closeModal(drawerSlug);
49
- };
50
- $[0] = addRow;
51
- $[1] = closeModal;
52
- $[2] = drawerSlug;
53
- $[3] = indexToAdd;
54
- $[4] = t0;
40
+ if ($[0] !== blockType || $[1] !== blocks || $[2] !== i18n) {
41
+ let t1;
42
+ if ($[4] !== blockType) {
43
+ t1 = candidate => typeof candidate !== "string" && candidate.slug === blockType;
44
+ $[4] = blockType;
45
+ $[5] = t1;
46
+ } else {
47
+ t1 = $[5];
48
+ }
49
+ const block = blocks.find(t1);
50
+ t0 = block ? getTranslation(block.labels.singular, i18n) : blockType;
51
+ $[0] = blockType;
52
+ $[1] = blocks;
53
+ $[2] = i18n;
54
+ $[3] = t0;
55
55
  } else {
56
- t0 = $[4];
56
+ t0 = $[3];
57
57
  }
58
+ const rowLabel = `${t0} ${rowIndex + 1}`;
59
+ const [indexToAdd, setIndexToAdd] = React.useState(null);
58
60
  let t1;
59
- if ($[5] !== blockType || $[6] !== blocks || $[7] !== copyRow || $[8] !== drawerSlug || $[9] !== duplicateRow || $[10] !== hasMaxRows || $[11] !== isSortable || $[12] !== labels || $[13] !== moveRow || $[14] !== openModal || $[15] !== pasteData || $[16] !== pasteRow || $[17] !== pasteRowBelow || $[18] !== removeRow || $[19] !== rowCount || $[20] !== rowIndex || $[21] !== rowLabel || $[22] !== t0) {
61
+ if ($[6] !== addRow || $[7] !== blockType || $[8] !== blocks || $[9] !== closeModal || $[10] !== copyRow || $[11] !== drawerSlug || $[12] !== duplicateRow || $[13] !== hasMaxRows || $[14] !== indexToAdd || $[15] !== isSortable || $[16] !== labels || $[17] !== moveRow || $[18] !== openModal || $[19] !== pasteData || $[20] !== pasteRow || $[21] !== pasteRowBelow || $[22] !== removeRow || $[23] !== rowCount || $[24] !== rowIndex || $[25] !== rowLabel) {
60
62
  let t2;
61
- if ($[24] !== drawerSlug || $[25] !== openModal) {
62
- t2 = index => {
63
+ if ($[27] !== addRow || $[28] !== closeModal || $[29] !== drawerSlug || $[30] !== indexToAdd) {
64
+ t2 = (_, rowBlockType) => {
65
+ if (typeof addRow === "function") {
66
+ addRow(indexToAdd, rowBlockType);
67
+ }
68
+ closeModal(drawerSlug);
69
+ };
70
+ $[27] = addRow;
71
+ $[28] = closeModal;
72
+ $[29] = drawerSlug;
73
+ $[30] = indexToAdd;
74
+ $[31] = t2;
75
+ } else {
76
+ t2 = $[31];
77
+ }
78
+ let t3;
79
+ if ($[32] !== drawerSlug || $[33] !== openModal) {
80
+ t3 = index => {
63
81
  setIndexToAdd(index);
64
82
  openModal(drawerSlug);
65
83
  };
66
- $[24] = drawerSlug;
67
- $[25] = openModal;
68
- $[26] = t2;
84
+ $[32] = drawerSlug;
85
+ $[33] = openModal;
86
+ $[34] = t3;
69
87
  } else {
70
- t2 = $[26];
88
+ t3 = $[34];
71
89
  }
72
- let t3;
73
- if ($[27] !== blockType || $[28] !== duplicateRow || $[29] !== rowIndex) {
74
- t3 = () => duplicateRow(rowIndex, blockType);
75
- $[27] = blockType;
76
- $[28] = duplicateRow;
77
- $[29] = rowIndex;
78
- $[30] = t3;
90
+ let t4;
91
+ if ($[35] !== blockType || $[36] !== duplicateRow || $[37] !== rowIndex) {
92
+ t4 = () => duplicateRow(rowIndex, blockType);
93
+ $[35] = blockType;
94
+ $[36] = duplicateRow;
95
+ $[37] = rowIndex;
96
+ $[38] = t4;
79
97
  } else {
80
- t3 = $[30];
98
+ t4 = $[38];
81
99
  }
82
100
  t1 = _jsxs(React.Fragment, {
83
101
  children: [_jsx(BlocksDrawer, {
84
- addRow: t0,
102
+ addRow: t2,
85
103
  addRowIndex: rowIndex,
86
104
  blocks,
87
105
  drawerSlug,
88
106
  labels
89
107
  }), _jsx(ArrayAction, {
90
- addRow: t2,
108
+ addRow: t3,
91
109
  copyRow,
92
- duplicateRow: t3,
110
+ duplicateRow: t4,
93
111
  hasMaxRows,
94
112
  index: rowIndex,
95
113
  isSortable,
@@ -102,27 +120,29 @@ export const RowActions = props => {
102
120
  rowCount
103
121
  })]
104
122
  });
105
- $[5] = blockType;
106
- $[6] = blocks;
107
- $[7] = copyRow;
108
- $[8] = drawerSlug;
109
- $[9] = duplicateRow;
110
- $[10] = hasMaxRows;
111
- $[11] = isSortable;
112
- $[12] = labels;
113
- $[13] = moveRow;
114
- $[14] = openModal;
115
- $[15] = pasteData;
116
- $[16] = pasteRow;
117
- $[17] = pasteRowBelow;
118
- $[18] = removeRow;
119
- $[19] = rowCount;
120
- $[20] = rowIndex;
121
- $[21] = rowLabel;
122
- $[22] = t0;
123
- $[23] = t1;
123
+ $[6] = addRow;
124
+ $[7] = blockType;
125
+ $[8] = blocks;
126
+ $[9] = closeModal;
127
+ $[10] = copyRow;
128
+ $[11] = drawerSlug;
129
+ $[12] = duplicateRow;
130
+ $[13] = hasMaxRows;
131
+ $[14] = indexToAdd;
132
+ $[15] = isSortable;
133
+ $[16] = labels;
134
+ $[17] = moveRow;
135
+ $[18] = openModal;
136
+ $[19] = pasteData;
137
+ $[20] = pasteRow;
138
+ $[21] = pasteRowBelow;
139
+ $[22] = removeRow;
140
+ $[23] = rowCount;
141
+ $[24] = rowIndex;
142
+ $[25] = rowLabel;
143
+ $[26] = t1;
124
144
  } else {
125
- t1 = $[23];
145
+ t1 = $[26];
126
146
  }
127
147
  return t1;
128
148
  };