@payloadcms/ui 3.80.0-internal.37a8509 → 3.80.0-internal.52ab774

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 (490) hide show
  1. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
  2. package/dist/elements/BulkUpload/EditForm/index.js +0 -12
  3. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  4. package/dist/elements/Button/index.d.ts.map +1 -1
  5. package/dist/elements/Button/index.js +5 -3
  6. package/dist/elements/Button/index.js.map +1 -1
  7. package/dist/elements/Button/index.scss +38 -5
  8. package/dist/elements/Button/types.d.ts +1 -1
  9. package/dist/elements/Button/types.d.ts.map +1 -1
  10. package/dist/elements/Button/types.js.map +1 -1
  11. package/dist/elements/CheckboxPopup/index.d.ts.map +1 -1
  12. package/dist/elements/CheckboxPopup/index.js +0 -1
  13. package/dist/elements/CheckboxPopup/index.js.map +1 -1
  14. package/dist/elements/CheckboxPopup/index.scss +1 -0
  15. package/dist/elements/CreateDocumentButton/index.d.ts +26 -0
  16. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -0
  17. package/dist/elements/CreateDocumentButton/index.js +182 -0
  18. package/dist/elements/CreateDocumentButton/index.js.map +1 -0
  19. package/dist/elements/DefaultListViewTabs/index.d.ts.map +1 -1
  20. package/dist/elements/DefaultListViewTabs/index.js +28 -54
  21. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  22. package/dist/elements/DelayedSpinner/index.d.ts +23 -0
  23. package/dist/elements/DelayedSpinner/index.d.ts.map +1 -0
  24. package/dist/elements/DelayedSpinner/index.js +61 -0
  25. package/dist/elements/DelayedSpinner/index.js.map +1 -0
  26. package/dist/elements/DocumentControls/index.d.ts +1 -0
  27. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  28. package/dist/elements/DocumentControls/index.js +6 -10
  29. package/dist/elements/DocumentControls/index.js.map +1 -1
  30. package/dist/elements/DocumentControls/index.scss +1 -1
  31. package/dist/elements/DocumentDrawer/index.d.ts.map +1 -1
  32. package/dist/elements/DocumentDrawer/index.js +54 -141
  33. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  34. package/dist/elements/DocumentDrawer/types.d.ts +7 -1
  35. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  36. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  37. package/dist/elements/DrawerActionHeader/index.d.ts.map +1 -1
  38. package/dist/elements/DrawerActionHeader/index.js +2 -0
  39. package/dist/elements/DrawerActionHeader/index.js.map +1 -1
  40. package/dist/elements/DrawerActionHeader/index.scss +2 -2
  41. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.d.ts +5 -0
  42. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.d.ts.map +1 -0
  43. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js +166 -0
  44. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js.map +1 -0
  45. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.scss +63 -0
  46. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.d.ts +5 -0
  47. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.d.ts.map +1 -0
  48. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js +161 -0
  49. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js.map +1 -0
  50. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.scss +105 -0
  51. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts +8 -0
  52. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -0
  53. package/dist/elements/Hierarchy/ColumnBrowser/index.js +473 -0
  54. package/dist/elements/Hierarchy/ColumnBrowser/index.js.map +1 -0
  55. package/dist/elements/Hierarchy/ColumnBrowser/index.scss +20 -0
  56. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts +106 -0
  57. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts.map +1 -0
  58. package/dist/elements/Hierarchy/ColumnBrowser/types.js +2 -0
  59. package/dist/elements/Hierarchy/ColumnBrowser/types.js.map +1 -0
  60. package/dist/elements/Hierarchy/DocHeaderButton/index.d.ts +11 -0
  61. package/dist/elements/Hierarchy/DocHeaderButton/index.d.ts.map +1 -0
  62. package/dist/elements/Hierarchy/DocHeaderButton/index.js +126 -0
  63. package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -0
  64. package/dist/elements/{FolderView/MoveDocToFolder → Hierarchy/DocHeaderButton}/index.scss +7 -1
  65. package/dist/elements/Hierarchy/DocHeaderButton/index.server.d.ts +10 -0
  66. package/dist/elements/Hierarchy/DocHeaderButton/index.server.d.ts.map +1 -0
  67. package/dist/elements/Hierarchy/DocHeaderButton/index.server.js +34 -0
  68. package/dist/elements/Hierarchy/DocHeaderButton/index.server.js.map +1 -0
  69. package/dist/elements/Hierarchy/Drawer/fetchAncestorPath.d.ts +15 -0
  70. package/dist/elements/Hierarchy/Drawer/fetchAncestorPath.d.ts.map +1 -0
  71. package/dist/elements/Hierarchy/Drawer/fetchAncestorPath.js +60 -0
  72. package/dist/elements/Hierarchy/Drawer/fetchAncestorPath.js.map +1 -0
  73. package/dist/elements/Hierarchy/Drawer/index.d.ts +20 -0
  74. package/dist/elements/Hierarchy/Drawer/index.d.ts.map +1 -0
  75. package/dist/elements/Hierarchy/Drawer/index.js +291 -0
  76. package/dist/elements/Hierarchy/Drawer/index.js.map +1 -0
  77. package/dist/elements/Hierarchy/Drawer/index.scss +81 -0
  78. package/dist/elements/Hierarchy/Drawer/types.d.ts +68 -0
  79. package/dist/elements/Hierarchy/Drawer/types.d.ts.map +1 -0
  80. package/dist/elements/Hierarchy/Drawer/types.js +3 -0
  81. package/dist/elements/Hierarchy/Drawer/types.js.map +1 -0
  82. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.d.ts +30 -0
  83. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.d.ts.map +1 -0
  84. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.js +148 -0
  85. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.js.map +1 -0
  86. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts +13 -0
  87. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +1 -0
  88. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +185 -0
  89. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +1 -0
  90. package/dist/elements/Hierarchy/Field/SelectedHierarchies.scss +78 -0
  91. package/dist/elements/Hierarchy/Field/index.client.d.ts +8 -0
  92. package/dist/elements/Hierarchy/Field/index.client.d.ts.map +1 -0
  93. package/dist/elements/Hierarchy/Field/index.client.js +186 -0
  94. package/dist/elements/Hierarchy/Field/index.client.js.map +1 -0
  95. package/dist/elements/Hierarchy/Field/index.scss +35 -0
  96. package/dist/elements/Hierarchy/Field/index.server.d.ts +3 -0
  97. package/dist/elements/Hierarchy/Field/index.server.d.ts.map +1 -0
  98. package/dist/elements/Hierarchy/Field/index.server.js +30 -0
  99. package/dist/elements/Hierarchy/Field/index.server.js.map +1 -0
  100. package/dist/elements/Hierarchy/HydrateProvider/index.d.ts +4 -0
  101. package/dist/elements/Hierarchy/HydrateProvider/index.d.ts.map +1 -0
  102. package/dist/elements/Hierarchy/HydrateProvider/index.js +70 -0
  103. package/dist/elements/Hierarchy/HydrateProvider/index.js.map +1 -0
  104. package/dist/elements/Hierarchy/MoveMany/index.d.ts +22 -0
  105. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -0
  106. package/dist/elements/Hierarchy/MoveMany/index.js +278 -0
  107. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -0
  108. package/dist/elements/Hierarchy/MoveMany/index.scss +7 -0
  109. package/dist/elements/Hierarchy/Search/HierarchySearchInput.d.ts +18 -0
  110. package/dist/elements/Hierarchy/Search/HierarchySearchInput.d.ts.map +1 -0
  111. package/dist/elements/Hierarchy/Search/HierarchySearchInput.js +115 -0
  112. package/dist/elements/Hierarchy/Search/HierarchySearchInput.js.map +1 -0
  113. package/dist/elements/Hierarchy/Search/HierarchySearchResultItem.d.ts +13 -0
  114. package/dist/elements/Hierarchy/Search/HierarchySearchResultItem.d.ts.map +1 -0
  115. package/dist/elements/Hierarchy/Search/HierarchySearchResultItem.js +88 -0
  116. package/dist/elements/Hierarchy/Search/HierarchySearchResultItem.js.map +1 -0
  117. package/dist/elements/Hierarchy/Search/HierarchySearchResults.d.ts +17 -0
  118. package/dist/elements/Hierarchy/Search/HierarchySearchResults.d.ts.map +1 -0
  119. package/dist/elements/Hierarchy/Search/HierarchySearchResults.js +85 -0
  120. package/dist/elements/Hierarchy/Search/HierarchySearchResults.js.map +1 -0
  121. package/dist/elements/Hierarchy/Search/index.d.ts +10 -0
  122. package/dist/elements/Hierarchy/Search/index.d.ts.map +1 -0
  123. package/dist/elements/Hierarchy/Search/index.js +144 -0
  124. package/dist/elements/Hierarchy/Search/index.js.map +1 -0
  125. package/dist/elements/Hierarchy/Search/index.scss +212 -0
  126. package/dist/elements/Hierarchy/Search/types.d.ts +21 -0
  127. package/dist/elements/Hierarchy/Search/types.d.ts.map +1 -0
  128. package/dist/elements/Hierarchy/Search/types.js +2 -0
  129. package/dist/elements/Hierarchy/Search/types.js.map +1 -0
  130. package/dist/elements/Hierarchy/Search/useHierarchySearch.d.ts +20 -0
  131. package/dist/elements/Hierarchy/Search/useHierarchySearch.d.ts.map +1 -0
  132. package/dist/elements/Hierarchy/Search/useHierarchySearch.js +122 -0
  133. package/dist/elements/Hierarchy/Search/useHierarchySearch.js.map +1 -0
  134. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts +21 -0
  135. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -0
  136. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +194 -0
  137. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -0
  138. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.d.ts +7 -0
  139. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.d.ts.map +1 -0
  140. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js +177 -0
  141. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js.map +1 -0
  142. package/dist/elements/Hierarchy/Tree/LoadMore/LoadMoreButton.d.ts +8 -0
  143. package/dist/elements/Hierarchy/Tree/LoadMore/LoadMoreButton.d.ts.map +1 -0
  144. package/dist/elements/Hierarchy/Tree/LoadMore/LoadMoreButton.js +36 -0
  145. package/dist/elements/Hierarchy/Tree/LoadMore/LoadMoreButton.js.map +1 -0
  146. package/dist/elements/Hierarchy/Tree/LoadMore/index.d.ts +12 -0
  147. package/dist/elements/Hierarchy/Tree/LoadMore/index.d.ts.map +1 -0
  148. package/dist/elements/Hierarchy/Tree/LoadMore/index.js +29 -0
  149. package/dist/elements/Hierarchy/Tree/LoadMore/index.js.map +1 -0
  150. package/dist/elements/Hierarchy/Tree/LoadMore/index.scss +26 -0
  151. package/dist/elements/Hierarchy/Tree/TreeConnector.d.ts +7 -0
  152. package/dist/elements/Hierarchy/Tree/TreeConnector.d.ts.map +1 -0
  153. package/dist/elements/Hierarchy/Tree/TreeConnector.js +23 -0
  154. package/dist/elements/Hierarchy/Tree/TreeConnector.js.map +1 -0
  155. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts +28 -0
  156. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts.map +1 -0
  157. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js +140 -0
  158. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js.map +1 -0
  159. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts +5 -0
  160. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -0
  161. package/dist/elements/Hierarchy/Tree/TreeNode/index.js +225 -0
  162. package/dist/elements/Hierarchy/Tree/TreeNode/index.js.map +1 -0
  163. package/dist/elements/Hierarchy/Tree/TreeNode/index.scss +110 -0
  164. package/dist/elements/Hierarchy/Tree/index.d.ts +5 -0
  165. package/dist/elements/Hierarchy/Tree/index.d.ts.map +1 -0
  166. package/dist/elements/Hierarchy/Tree/index.js +305 -0
  167. package/dist/elements/Hierarchy/Tree/index.js.map +1 -0
  168. package/dist/elements/Hierarchy/Tree/index.scss +60 -0
  169. package/dist/elements/Hierarchy/Tree/types.d.ts +76 -0
  170. package/dist/elements/Hierarchy/Tree/types.d.ts.map +1 -0
  171. package/dist/elements/Hierarchy/Tree/types.js +2 -0
  172. package/dist/elements/Hierarchy/Tree/types.js.map +1 -0
  173. package/dist/elements/Hierarchy/Tree/useChildren.d.ts +32 -0
  174. package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -0
  175. package/dist/elements/Hierarchy/Tree/useChildren.js +233 -0
  176. package/dist/elements/Hierarchy/Tree/useChildren.js.map +1 -0
  177. package/dist/elements/Link/index.d.ts +4 -0
  178. package/dist/elements/Link/index.d.ts.map +1 -1
  179. package/dist/elements/Link/index.js +5 -0
  180. package/dist/elements/Link/index.js.map +1 -1
  181. package/dist/elements/ListHeader/TitleActions/index.d.ts +0 -1
  182. package/dist/elements/ListHeader/TitleActions/index.d.ts.map +1 -1
  183. package/dist/elements/ListHeader/TitleActions/index.js +0 -1
  184. package/dist/elements/ListHeader/TitleActions/index.js.map +1 -1
  185. package/dist/elements/ListHeader/index.js +2 -2
  186. package/dist/elements/ListHeader/index.js.map +1 -1
  187. package/dist/elements/ListSelection/index.scss +2 -1
  188. package/dist/elements/LoadMoreRow/index.d.ts +15 -0
  189. package/dist/elements/LoadMoreRow/index.d.ts.map +1 -0
  190. package/dist/elements/LoadMoreRow/index.js +75 -0
  191. package/dist/elements/LoadMoreRow/index.js.map +1 -0
  192. package/dist/elements/LoadMoreRow/index.scss +42 -0
  193. package/dist/elements/Locked/index.scss +1 -1
  194. package/dist/elements/RelationshipTable/index.js +3 -3
  195. package/dist/elements/RelationshipTable/index.js.map +1 -1
  196. package/dist/elements/Spinner/index.d.ts +16 -0
  197. package/dist/elements/Spinner/index.d.ts.map +1 -0
  198. package/dist/elements/Spinner/index.js +49 -0
  199. package/dist/elements/Spinner/index.js.map +1 -0
  200. package/dist/elements/Spinner/index.scss +39 -0
  201. package/dist/elements/StepNav/index.d.ts.map +1 -1
  202. package/dist/elements/StepNav/index.js +10 -1
  203. package/dist/elements/StepNav/index.js.map +1 -1
  204. package/dist/elements/StepNav/types.d.ts +1 -0
  205. package/dist/elements/StepNav/types.d.ts.map +1 -1
  206. package/dist/elements/StepNav/types.js.map +1 -1
  207. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.d.ts +6 -0
  208. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.d.ts.map +1 -0
  209. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js +187 -0
  210. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js.map +1 -0
  211. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.scss +29 -0
  212. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  213. package/dist/elements/Table/DefaultCell/index.js +20 -0
  214. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  215. package/dist/elements/Tooltip/index.js +1 -1
  216. package/dist/elements/Tooltip/index.js.map +1 -1
  217. package/dist/elements/Tooltip/index.scss +1 -15
  218. package/dist/elements/withMergedProps/index.d.ts +1 -1
  219. package/dist/elements/withMergedProps/index.js +1 -1
  220. package/dist/elements/withMergedProps/index.js.map +1 -1
  221. package/dist/exports/client/index.d.ts +26 -9
  222. package/dist/exports/client/index.d.ts.map +1 -1
  223. package/dist/exports/client/index.js +14 -12
  224. package/dist/exports/client/index.js.map +4 -4
  225. package/dist/exports/rsc/index.d.ts +3 -3
  226. package/dist/exports/rsc/index.d.ts.map +1 -1
  227. package/dist/exports/rsc/index.js +3 -3
  228. package/dist/exports/rsc/index.js.map +1 -1
  229. package/dist/exports/shared/index.js.map +1 -1
  230. package/dist/fields/Join/index.d.ts.map +1 -1
  231. package/dist/fields/Join/index.js +1 -1
  232. package/dist/fields/Join/index.js.map +1 -1
  233. package/dist/fields/Null/index.d.ts +11 -0
  234. package/dist/fields/Null/index.d.ts.map +1 -0
  235. package/dist/fields/Null/index.js +13 -0
  236. package/dist/fields/Null/index.js.map +1 -0
  237. package/dist/icons/Chevron/index.d.ts.map +1 -1
  238. package/dist/icons/Chevron/index.js +5 -1
  239. package/dist/icons/Chevron/index.js.map +1 -1
  240. package/dist/icons/Document/index.d.ts +3 -1
  241. package/dist/icons/Document/index.d.ts.map +1 -1
  242. package/dist/icons/Document/index.js +4 -2
  243. package/dist/icons/Document/index.js.map +1 -1
  244. package/dist/icons/Document/index.scss +4 -0
  245. package/dist/icons/Filter/index.d.ts +4 -0
  246. package/dist/icons/Filter/index.d.ts.map +1 -0
  247. package/dist/icons/Filter/index.js +15 -0
  248. package/dist/icons/Filter/index.js.map +1 -0
  249. package/dist/icons/Filter/index.scss +13 -0
  250. package/dist/icons/Folder/index.d.ts +4 -2
  251. package/dist/icons/Folder/index.d.ts.map +1 -1
  252. package/dist/icons/Folder/index.js +4 -2
  253. package/dist/icons/Folder/index.js.map +1 -1
  254. package/dist/icons/Folder/index.scss +8 -0
  255. package/dist/icons/Lock/index.scss +1 -1
  256. package/dist/icons/Plus/index.d.ts.map +1 -1
  257. package/dist/icons/Plus/index.js +2 -1
  258. package/dist/icons/Plus/index.js.map +1 -1
  259. package/dist/icons/TableView/index.d.ts +3 -0
  260. package/dist/icons/TableView/index.d.ts.map +1 -0
  261. package/dist/icons/TableView/index.js +16 -0
  262. package/dist/icons/TableView/index.js.map +1 -0
  263. package/dist/icons/Tag/index.d.ts +8 -0
  264. package/dist/icons/Tag/index.d.ts.map +1 -0
  265. package/dist/icons/Tag/index.js +22 -0
  266. package/dist/icons/Tag/index.js.map +1 -0
  267. package/dist/icons/Tag/index.scss +14 -0
  268. package/dist/providers/DocumentSelection/index.d.ts +8 -0
  269. package/dist/providers/DocumentSelection/index.d.ts.map +1 -0
  270. package/dist/providers/DocumentSelection/index.js +239 -0
  271. package/dist/providers/DocumentSelection/index.js.map +1 -0
  272. package/dist/providers/DocumentSelection/types.d.ts +122 -0
  273. package/dist/providers/DocumentSelection/types.d.ts.map +1 -0
  274. package/dist/providers/DocumentSelection/types.js +5 -0
  275. package/dist/providers/DocumentSelection/types.js.map +1 -0
  276. package/dist/providers/Hierarchy/index.d.ts +5 -0
  277. package/dist/providers/Hierarchy/index.d.ts.map +1 -0
  278. package/dist/providers/Hierarchy/index.js +358 -0
  279. package/dist/providers/Hierarchy/index.js.map +1 -0
  280. package/dist/providers/Hierarchy/types.d.ts +106 -0
  281. package/dist/providers/Hierarchy/types.d.ts.map +1 -0
  282. package/dist/providers/Hierarchy/types.js +2 -0
  283. package/dist/providers/Hierarchy/types.js.map +1 -0
  284. package/dist/providers/Root/index.d.ts.map +1 -1
  285. package/dist/providers/Root/index.js +18 -15
  286. package/dist/providers/Root/index.js.map +1 -1
  287. package/dist/providers/ServerFunctions/index.d.ts +1 -6
  288. package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
  289. package/dist/providers/ServerFunctions/index.js +0 -18
  290. package/dist/providers/ServerFunctions/index.js.map +1 -1
  291. package/dist/providers/SidebarTabs/index.d.ts +19 -0
  292. package/dist/providers/SidebarTabs/index.d.ts.map +1 -0
  293. package/dist/providers/SidebarTabs/index.js +24 -0
  294. package/dist/providers/SidebarTabs/index.js.map +1 -0
  295. package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts +2 -1
  296. package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts.map +1 -1
  297. package/dist/providers/TableColumns/buildColumnState/renderCell.js +34 -1
  298. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
  299. package/dist/styles.css +1 -1
  300. package/dist/utilities/handleLivePreview.d.ts.map +1 -1
  301. package/dist/utilities/isSuperset.d.ts +6 -0
  302. package/dist/utilities/isSuperset.d.ts.map +1 -0
  303. package/dist/utilities/isSuperset.js +10 -0
  304. package/dist/utilities/isSuperset.js.map +1 -0
  305. package/dist/utilities/renderTable.d.ts +3 -1
  306. package/dist/utilities/renderTable.d.ts.map +1 -1
  307. package/dist/utilities/renderTable.js +9 -3
  308. package/dist/utilities/renderTable.js.map +1 -1
  309. package/dist/views/Edit/index.d.ts +1 -1
  310. package/dist/views/Edit/index.d.ts.map +1 -1
  311. package/dist/views/Edit/index.js +4 -2
  312. package/dist/views/Edit/index.js.map +1 -1
  313. package/dist/views/HierarchyList/DocumentListSelection/index.d.ts +10 -0
  314. package/dist/views/HierarchyList/DocumentListSelection/index.d.ts.map +1 -0
  315. package/dist/views/HierarchyList/DocumentListSelection/index.js +196 -0
  316. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -0
  317. package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts +21 -0
  318. package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts.map +1 -0
  319. package/dist/views/HierarchyList/HierarchyListHeader/index.js +68 -0
  320. package/dist/views/HierarchyList/HierarchyListHeader/index.js.map +1 -0
  321. package/dist/views/HierarchyList/HierarchyListHeader/index.scss +9 -0
  322. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.d.ts +4 -0
  323. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.d.ts.map +1 -0
  324. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js +104 -0
  325. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js.map +1 -0
  326. package/dist/views/HierarchyList/HierarchyTable/DateCell.d.ts +4 -0
  327. package/dist/views/HierarchyList/HierarchyTable/DateCell.d.ts.map +1 -0
  328. package/dist/views/HierarchyList/HierarchyTable/DateCell.js +53 -0
  329. package/dist/views/HierarchyList/HierarchyTable/DateCell.js.map +1 -0
  330. package/dist/views/HierarchyList/HierarchyTable/RelatedNameCell.d.ts +4 -0
  331. package/dist/views/HierarchyList/HierarchyTable/RelatedNameCell.d.ts.map +1 -0
  332. package/dist/views/HierarchyList/HierarchyTable/RelatedNameCell.js +128 -0
  333. package/dist/views/HierarchyList/HierarchyTable/RelatedNameCell.js.map +1 -0
  334. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts +99 -0
  335. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts.map +1 -0
  336. package/dist/views/HierarchyList/HierarchyTable/SlotTable.js +118 -0
  337. package/dist/views/HierarchyList/HierarchyTable/SlotTable.js.map +1 -0
  338. package/dist/views/HierarchyList/HierarchyTable/SlotTable.scss +214 -0
  339. package/dist/views/HierarchyList/HierarchyTable/index.d.ts +27 -0
  340. package/dist/views/HierarchyList/HierarchyTable/index.d.ts.map +1 -0
  341. package/dist/views/HierarchyList/HierarchyTable/index.js +388 -0
  342. package/dist/views/HierarchyList/HierarchyTable/index.js.map +1 -0
  343. package/dist/views/HierarchyList/HierarchyTable/index.scss +148 -0
  344. package/dist/views/HierarchyList/HierarchyTable/types.d.ts +20 -0
  345. package/dist/views/HierarchyList/HierarchyTable/types.d.ts.map +1 -0
  346. package/dist/views/HierarchyList/HierarchyTable/types.js +2 -0
  347. package/dist/views/HierarchyList/HierarchyTable/types.js.map +1 -0
  348. package/dist/views/HierarchyList/TypeFilter/index.d.ts +15 -0
  349. package/dist/views/HierarchyList/TypeFilter/index.d.ts.map +1 -0
  350. package/dist/views/HierarchyList/TypeFilter/index.js +37 -0
  351. package/dist/views/HierarchyList/TypeFilter/index.js.map +1 -0
  352. package/dist/views/HierarchyList/TypeFilter/index.scss +32 -0
  353. package/dist/views/HierarchyList/index.d.ts +5 -0
  354. package/dist/views/HierarchyList/index.d.ts.map +1 -0
  355. package/dist/views/HierarchyList/index.js +305 -0
  356. package/dist/views/HierarchyList/index.js.map +1 -0
  357. package/dist/views/HierarchyList/index.scss +72 -0
  358. package/dist/views/List/index.d.ts.map +1 -1
  359. package/dist/views/List/index.js +51 -7
  360. package/dist/views/List/index.js.map +1 -1
  361. package/package.json +4 -4
  362. package/dist/elements/FolderView/Breadcrumbs/index.d.ts +0 -19
  363. package/dist/elements/FolderView/Breadcrumbs/index.d.ts.map +0 -1
  364. package/dist/elements/FolderView/Breadcrumbs/index.js +0 -96
  365. package/dist/elements/FolderView/Breadcrumbs/index.js.map +0 -1
  366. package/dist/elements/FolderView/Breadcrumbs/index.scss +0 -56
  367. package/dist/elements/FolderView/BrowseByFolderButton/index.d.ts +0 -6
  368. package/dist/elements/FolderView/BrowseByFolderButton/index.d.ts.map +0 -1
  369. package/dist/elements/FolderView/BrowseByFolderButton/index.js +0 -40
  370. package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +0 -1
  371. package/dist/elements/FolderView/BrowseByFolderButton/index.scss +0 -30
  372. package/dist/elements/FolderView/Cell/index.client.d.ts +0 -13
  373. package/dist/elements/FolderView/Cell/index.client.d.ts.map +0 -1
  374. package/dist/elements/FolderView/Cell/index.client.js +0 -95
  375. package/dist/elements/FolderView/Cell/index.client.js.map +0 -1
  376. package/dist/elements/FolderView/Cell/index.server.d.ts +0 -4
  377. package/dist/elements/FolderView/Cell/index.server.d.ts.map +0 -1
  378. package/dist/elements/FolderView/Cell/index.server.js +0 -18
  379. package/dist/elements/FolderView/Cell/index.server.js.map +0 -1
  380. package/dist/elements/FolderView/ColoredFolderIcon/index.d.ts +0 -3
  381. package/dist/elements/FolderView/ColoredFolderIcon/index.d.ts.map +0 -1
  382. package/dist/elements/FolderView/ColoredFolderIcon/index.js +0 -9
  383. package/dist/elements/FolderView/ColoredFolderIcon/index.js.map +0 -1
  384. package/dist/elements/FolderView/ColoredFolderIcon/index.scss +0 -5
  385. package/dist/elements/FolderView/CurrentFolderActions/index.d.ts +0 -7
  386. package/dist/elements/FolderView/CurrentFolderActions/index.d.ts.map +0 -1
  387. package/dist/elements/FolderView/CurrentFolderActions/index.js +0 -162
  388. package/dist/elements/FolderView/CurrentFolderActions/index.js.map +0 -1
  389. package/dist/elements/FolderView/DragOverlaySelection/index.d.ts +0 -11
  390. package/dist/elements/FolderView/DragOverlaySelection/index.d.ts.map +0 -1
  391. package/dist/elements/FolderView/DragOverlaySelection/index.js +0 -62
  392. package/dist/elements/FolderView/DragOverlaySelection/index.js.map +0 -1
  393. package/dist/elements/FolderView/DragOverlaySelection/index.scss +0 -35
  394. package/dist/elements/FolderView/DraggableTableRow/index.d.ts +0 -18
  395. package/dist/elements/FolderView/DraggableTableRow/index.d.ts.map +0 -1
  396. package/dist/elements/FolderView/DraggableTableRow/index.js +0 -63
  397. package/dist/elements/FolderView/DraggableTableRow/index.js.map +0 -1
  398. package/dist/elements/FolderView/DraggableTableRow/index.scss +0 -135
  399. package/dist/elements/FolderView/DraggableWithClick/index.d.ts +0 -15
  400. package/dist/elements/FolderView/DraggableWithClick/index.d.ts.map +0 -1
  401. package/dist/elements/FolderView/DraggableWithClick/index.js +0 -86
  402. package/dist/elements/FolderView/DraggableWithClick/index.js.map +0 -1
  403. package/dist/elements/FolderView/DraggableWithClick/index.scss +0 -5
  404. package/dist/elements/FolderView/Drawers/EditFolderAction/index.d.ts +0 -7
  405. package/dist/elements/FolderView/Drawers/EditFolderAction/index.d.ts.map +0 -1
  406. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js +0 -39
  407. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js.map +0 -1
  408. package/dist/elements/FolderView/Drawers/MoveToFolder/index.d.ts +0 -37
  409. package/dist/elements/FolderView/Drawers/MoveToFolder/index.d.ts.map +0 -1
  410. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +0 -609
  411. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +0 -1
  412. package/dist/elements/FolderView/Drawers/MoveToFolder/index.scss +0 -30
  413. package/dist/elements/FolderView/FilterFolderTypePill/index.d.ts +0 -4
  414. package/dist/elements/FolderView/FilterFolderTypePill/index.d.ts.map +0 -1
  415. package/dist/elements/FolderView/FilterFolderTypePill/index.js +0 -102
  416. package/dist/elements/FolderView/FilterFolderTypePill/index.js.map +0 -1
  417. package/dist/elements/FolderView/FilterFolderTypePill/index.scss +0 -16
  418. package/dist/elements/FolderView/FolderField/index.scss +0 -12
  419. package/dist/elements/FolderView/FolderField/index.server.d.ts +0 -4
  420. package/dist/elements/FolderView/FolderField/index.server.d.ts.map +0 -1
  421. package/dist/elements/FolderView/FolderField/index.server.js +0 -16
  422. package/dist/elements/FolderView/FolderField/index.server.js.map +0 -1
  423. package/dist/elements/FolderView/FolderFileCard/index.d.ts +0 -30
  424. package/dist/elements/FolderView/FolderFileCard/index.d.ts.map +0 -1
  425. package/dist/elements/FolderView/FolderFileCard/index.js +0 -209
  426. package/dist/elements/FolderView/FolderFileCard/index.js.map +0 -1
  427. package/dist/elements/FolderView/FolderFileCard/index.scss +0 -247
  428. package/dist/elements/FolderView/FolderFileTable/index.d.ts +0 -8
  429. package/dist/elements/FolderView/FolderFileTable/index.d.ts.map +0 -1
  430. package/dist/elements/FolderView/FolderFileTable/index.js +0 -284
  431. package/dist/elements/FolderView/FolderFileTable/index.js.map +0 -1
  432. package/dist/elements/FolderView/FolderFileTable/index.scss +0 -11
  433. package/dist/elements/FolderView/FolderTypeField/index.d.ts +0 -4
  434. package/dist/elements/FolderView/FolderTypeField/index.d.ts.map +0 -1
  435. package/dist/elements/FolderView/FolderTypeField/index.js +0 -123
  436. package/dist/elements/FolderView/FolderTypeField/index.js.map +0 -1
  437. package/dist/elements/FolderView/ItemCardGrid/index.d.ts +0 -16
  438. package/dist/elements/FolderView/ItemCardGrid/index.d.ts.map +0 -1
  439. package/dist/elements/FolderView/ItemCardGrid/index.js +0 -34
  440. package/dist/elements/FolderView/ItemCardGrid/index.js.map +0 -1
  441. package/dist/elements/FolderView/ItemCardGrid/index.scss +0 -16
  442. package/dist/elements/FolderView/MoveDocToFolder/index.d.ts +0 -37
  443. package/dist/elements/FolderView/MoveDocToFolder/index.d.ts.map +0 -1
  444. package/dist/elements/FolderView/MoveDocToFolder/index.js +0 -292
  445. package/dist/elements/FolderView/MoveDocToFolder/index.js.map +0 -1
  446. package/dist/elements/FolderView/SimpleTable/index.d.ts +0 -19
  447. package/dist/elements/FolderView/SimpleTable/index.d.ts.map +0 -1
  448. package/dist/elements/FolderView/SimpleTable/index.js +0 -95
  449. package/dist/elements/FolderView/SimpleTable/index.js.map +0 -1
  450. package/dist/elements/FolderView/SimpleTable/index.scss +0 -59
  451. package/dist/elements/FolderView/SortByPill/index.d.ts +0 -4
  452. package/dist/elements/FolderView/SortByPill/index.d.ts.map +0 -1
  453. package/dist/elements/FolderView/SortByPill/index.js +0 -112
  454. package/dist/elements/FolderView/SortByPill/index.js.map +0 -1
  455. package/dist/elements/FolderView/SortByPill/index.scss +0 -16
  456. package/dist/elements/FolderView/ToggleViewButtons/index.d.ts +0 -8
  457. package/dist/elements/FolderView/ToggleViewButtons/index.d.ts.map +0 -1
  458. package/dist/elements/FolderView/ToggleViewButtons/index.js +0 -31
  459. package/dist/elements/FolderView/ToggleViewButtons/index.js.map +0 -1
  460. package/dist/elements/FolderView/ToggleViewButtons/index.scss +0 -17
  461. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.d.ts +0 -15
  462. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.d.ts.map +0 -1
  463. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +0 -182
  464. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +0 -1
  465. package/dist/providers/Folders/groupItemIDsByRelation.d.ts +0 -3
  466. package/dist/providers/Folders/groupItemIDsByRelation.d.ts.map +0 -1
  467. package/dist/providers/Folders/groupItemIDsByRelation.js +0 -10
  468. package/dist/providers/Folders/groupItemIDsByRelation.js.map +0 -1
  469. package/dist/providers/Folders/index.d.ts +0 -143
  470. package/dist/providers/Folders/index.d.ts.map +0 -1
  471. package/dist/providers/Folders/index.js +0 -641
  472. package/dist/providers/Folders/index.js.map +0 -1
  473. package/dist/utilities/getFolderResultsComponentAndData.d.ts +0 -25
  474. package/dist/utilities/getFolderResultsComponentAndData.d.ts.map +0 -1
  475. package/dist/utilities/getFolderResultsComponentAndData.js +0 -135
  476. package/dist/utilities/getFolderResultsComponentAndData.js.map +0 -1
  477. package/dist/views/BrowseByFolder/index.d.ts +0 -5
  478. package/dist/views/BrowseByFolder/index.d.ts.map +0 -1
  479. package/dist/views/BrowseByFolder/index.js +0 -342
  480. package/dist/views/BrowseByFolder/index.js.map +0 -1
  481. package/dist/views/BrowseByFolder/index.scss +0 -174
  482. package/dist/views/CollectionFolder/ListSelection/index.d.ts +0 -9
  483. package/dist/views/CollectionFolder/ListSelection/index.d.ts.map +0 -1
  484. package/dist/views/CollectionFolder/ListSelection/index.js +0 -180
  485. package/dist/views/CollectionFolder/ListSelection/index.js.map +0 -1
  486. package/dist/views/CollectionFolder/index.d.ts +0 -5
  487. package/dist/views/CollectionFolder/index.d.ts.map +0 -1
  488. package/dist/views/CollectionFolder/index.js +0 -325
  489. package/dist/views/CollectionFolder/index.js.map +0 -1
  490. package/dist/views/CollectionFolder/index.scss +0 -162
@@ -2,5 +2,9 @@
2
2
  .icon--document {
3
3
  height: var(--base);
4
4
  width: var(--base);
5
+
6
+ &.icon--muted {
7
+ color: var(--theme-elevation-400);
8
+ }
5
9
  }
6
10
  }
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import './index.scss';
3
+ export declare const FilterIcon: React.FC;
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/icons/Filter/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAS9B,CAAA"}
@@ -0,0 +1,15 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from 'react';
3
+ import './index.scss';
4
+ export const FilterIcon = () => /*#__PURE__*/_jsx("svg", {
5
+ className: "icon icon--filter",
6
+ fill: "none",
7
+ viewBox: "0 0 20 20",
8
+ xmlns: "http://www.w3.org/2000/svg",
9
+ children: /*#__PURE__*/_jsx("path", {
10
+ className: "stroke",
11
+ d: "M3 5H17M6 10H14M9 15H11",
12
+ strokeLinecap: "square"
13
+ })
14
+ });
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["React","FilterIcon","_jsx","className","fill","viewBox","xmlns","d","strokeLinecap"],"sources":["../../../src/icons/Filter/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.scss'\n\nexport const FilterIcon: React.FC = () => (\n <svg\n className=\"icon icon--filter\"\n fill=\"none\"\n viewBox=\"0 0 20 20\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path className=\"stroke\" d=\"M3 5H17M6 10H14M9 15H11\" strokeLinecap=\"square\" />\n </svg>\n)\n"],"mappings":";AAAA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,OAAO,MAAMC,UAAA,GAAuBA,CAAA,kBAClCC,IAAA,CAAC;EACCC,SAAA,EAAU;EACVC,IAAA,EAAK;EACLC,OAAA,EAAQ;EACRC,KAAA,EAAM;YAEN,aAAAJ,IAAA,CAAC;IAAKC,SAAA,EAAU;IAASI,CAAA,EAAE;IAA0BC,aAAA,EAAc","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ @import '../../scss/styles';
2
+
3
+ @layer payload-default {
4
+ .icon--filter {
5
+ height: $baseline;
6
+ width: $baseline;
7
+
8
+ .stroke {
9
+ stroke: currentColor;
10
+ stroke-width: 2px;
11
+ }
12
+ }
13
+ }
@@ -1,6 +1,8 @@
1
1
  import React from 'react';
2
2
  import './index.scss';
3
- export declare function FolderIcon({ className }: {
3
+ export type FolderIconProps = {
4
4
  className?: string;
5
- }): React.JSX.Element;
5
+ color?: 'dark' | 'default' | 'muted';
6
+ };
7
+ export declare function FolderIcon({ className, color }: FolderIconProps): React.JSX.Element;
6
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/icons/Folder/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAErB,wBAAgB,UAAU,CAAC,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,qBAgB/D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/icons/Folder/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAA;CACrC,CAAA;AAED,wBAAgB,UAAU,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,eAAe,qBAkB/D"}
@@ -2,10 +2,12 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import React from 'react';
3
3
  import './index.scss';
4
4
  export function FolderIcon({
5
- className
5
+ className,
6
+ color
6
7
  }) {
8
+ const colorClass = color ? `icon--folder--${color}` : '';
7
9
  return /*#__PURE__*/_jsx("svg", {
8
- className: [className, 'icon icon--folder'].filter(Boolean).join(' '),
10
+ className: [className, 'icon icon--folder', colorClass].filter(Boolean).join(' '),
9
11
  fill: "none",
10
12
  height: "16",
11
13
  viewBox: "0 0 16 16",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","FolderIcon","className","_jsx","filter","Boolean","join","fill","height","viewBox","width","xmlns","d"],"sources":["../../../src/icons/Folder/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.scss'\n\nexport function FolderIcon({ className }: { className?: string }) {\n return (\n <svg\n className={[className, 'icon icon--folder'].filter(Boolean).join(' ')}\n fill=\"none\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n width=\"16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M13.3333 13.3333C13.6869 13.3333 14.026 13.1929 14.2761 12.9428C14.5261 12.6928 14.6666 12.3536 14.6666 12V5.33333C14.6666 4.97971 14.5261 4.64057 14.2761 4.39052C14.026 4.14048 13.6869 4 13.3333 4H8.06659C7.84359 4.00219 7.62362 3.94841 7.42679 3.84359C7.22996 3.73877 7.06256 3.58625 6.93992 3.4L6.39992 2.6C6.27851 2.41565 6.11323 2.26432 5.91892 2.1596C5.7246 2.05488 5.50732 2.00004 5.28659 2H2.66659C2.31296 2 1.97382 2.14048 1.72378 2.39052C1.47373 2.64057 1.33325 2.97971 1.33325 3.33333V12C1.33325 12.3536 1.47373 12.6928 1.72378 12.9428C1.97382 13.1929 2.31296 13.3333 2.66659 13.3333H13.3333Z\"\n fill=\"currentColor\"\n />\n </svg>\n )\n}\n"],"mappings":";AAAA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,OAAO,SAASC,WAAW;EAAEC;AAAS,CAA0B;EAC9D,oBACEC,IAAA,CAAC;IACCD,SAAA,EAAW,CAACA,SAAA,EAAW,oBAAoB,CAACE,MAAM,CAACC,OAAA,EAASC,IAAI,CAAC;IACjEC,IAAA,EAAK;IACLC,MAAA,EAAO;IACPC,OAAA,EAAQ;IACRC,KAAA,EAAM;IACNC,KAAA,EAAM;cAEN,aAAAR,IAAA,CAAC;MACCS,CAAA,EAAE;MACFL,IAAA,EAAK;;;AAIb","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","FolderIcon","className","color","colorClass","_jsx","filter","Boolean","join","fill","height","viewBox","width","xmlns","d"],"sources":["../../../src/icons/Folder/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.scss'\n\nexport type FolderIconProps = {\n className?: string\n color?: 'dark' | 'default' | 'muted'\n}\n\nexport function FolderIcon({ className, color }: FolderIconProps) {\n const colorClass = color ? `icon--folder--${color}` : ''\n\n return (\n <svg\n className={[className, 'icon icon--folder', colorClass].filter(Boolean).join(' ')}\n fill=\"none\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n width=\"16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M13.3333 13.3333C13.6869 13.3333 14.026 13.1929 14.2761 12.9428C14.5261 12.6928 14.6666 12.3536 14.6666 12V5.33333C14.6666 4.97971 14.5261 4.64057 14.2761 4.39052C14.026 4.14048 13.6869 4 13.3333 4H8.06659C7.84359 4.00219 7.62362 3.94841 7.42679 3.84359C7.22996 3.73877 7.06256 3.58625 6.93992 3.4L6.39992 2.6C6.27851 2.41565 6.11323 2.26432 5.91892 2.1596C5.7246 2.05488 5.50732 2.00004 5.28659 2H2.66659C2.31296 2 1.97382 2.14048 1.72378 2.39052C1.47373 2.64057 1.33325 2.97971 1.33325 3.33333V12C1.33325 12.3536 1.47373 12.6928 1.72378 12.9428C1.97382 13.1929 2.31296 13.3333 2.66659 13.3333H13.3333Z\"\n fill=\"currentColor\"\n />\n </svg>\n )\n}\n"],"mappings":";AAAA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAOP,OAAO,SAASC,WAAW;EAAEC,SAAS;EAAEC;AAAK,CAAmB;EAC9D,MAAMC,UAAA,GAAaD,KAAA,GAAQ,iBAAiBA,KAAA,EAAO,GAAG;EAEtD,oBACEE,IAAA,CAAC;IACCH,SAAA,EAAW,CAACA,SAAA,EAAW,qBAAqBE,UAAA,CAAW,CAACE,MAAM,CAACC,OAAA,EAASC,IAAI,CAAC;IAC7EC,IAAA,EAAK;IACLC,MAAA,EAAO;IACPC,OAAA,EAAQ;IACRC,KAAA,EAAM;IACNC,KAAA,EAAM;cAEN,aAAAR,IAAA,CAAC;MACCS,CAAA,EAAE;MACFL,IAAA,EAAK;;;AAIb","ignoreList":[]}
@@ -2,5 +2,13 @@
2
2
  .icon--folder {
3
3
  height: var(--base);
4
4
  width: var(--base);
5
+
6
+ &--muted {
7
+ color: var(--theme-elevation-300);
8
+ }
9
+
10
+ &--dark {
11
+ color: var(--theme-elevation-800);
12
+ }
5
13
  }
6
14
  }
@@ -3,7 +3,7 @@
3
3
  @layer payload-default {
4
4
  .icon--lock {
5
5
  .stroke {
6
- stroke: currentColor;
6
+ stroke: var(--theme-text);
7
7
  stroke-width: $style-stroke-width;
8
8
  }
9
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/icons/Plus/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAc5B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/icons/Plus/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAe5B,CAAA"}
@@ -10,7 +10,8 @@ export const PlusIcon = () => /*#__PURE__*/_jsx("svg", {
10
10
  children: /*#__PURE__*/_jsx("path", {
11
11
  className: "stroke",
12
12
  d: "M5.33333 9.99998H14.6667M9.99999 5.33331V14.6666",
13
- strokeLinecap: "square"
13
+ strokeLinecap: "round",
14
+ strokeLinejoin: "round"
14
15
  })
15
16
  });
16
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","PlusIcon","_jsx","className","height","viewBox","width","xmlns","d","strokeLinecap"],"sources":["../../../src/icons/Plus/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.scss'\n\nexport const PlusIcon: React.FC = () => (\n <svg\n className=\"icon icon--plus\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n width=\"20\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n className=\"stroke\"\n d=\"M5.33333 9.99998H14.6667M9.99999 5.33331V14.6666\"\n strokeLinecap=\"square\"\n />\n </svg>\n)\n"],"mappings":";AAAA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,OAAO,MAAMC,QAAA,GAAqBA,CAAA,kBAChCC,IAAA,CAAC;EACCC,SAAA,EAAU;EACVC,MAAA,EAAO;EACPC,OAAA,EAAQ;EACRC,KAAA,EAAM;EACNC,KAAA,EAAM;YAEN,aAAAL,IAAA,CAAC;IACCC,SAAA,EAAU;IACVK,CAAA,EAAE;IACFC,aAAA,EAAc","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","PlusIcon","_jsx","className","height","viewBox","width","xmlns","d","strokeLinecap","strokeLinejoin"],"sources":["../../../src/icons/Plus/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.scss'\n\nexport const PlusIcon: React.FC = () => (\n <svg\n className=\"icon icon--plus\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n width=\"20\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n className=\"stroke\"\n d=\"M5.33333 9.99998H14.6667M9.99999 5.33331V14.6666\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n)\n"],"mappings":";AAAA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,OAAO,MAAMC,QAAA,GAAqBA,CAAA,kBAChCC,IAAA,CAAC;EACCC,SAAA,EAAU;EACVC,MAAA,EAAO;EACPC,OAAA,EAAQ;EACRC,KAAA,EAAM;EACNC,KAAA,EAAM;YAEN,aAAAL,IAAA,CAAC;IACCC,SAAA,EAAU;IACVK,CAAA,EAAE;IACFC,aAAA,EAAc;IACdC,cAAA,EAAe","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ export declare const TableViewIcon: () => React.JSX.Element;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/icons/TableView/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,aAAa,yBAazB,CAAA"}
@@ -0,0 +1,16 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from 'react';
3
+ export const TableViewIcon = () => {
4
+ return /*#__PURE__*/_jsx("svg", {
5
+ className: "icon icon--table-view",
6
+ fill: "currentColor",
7
+ height: "20",
8
+ viewBox: "0 0 16 16",
9
+ width: "20",
10
+ xmlns: "http://www.w3.org/2000/svg",
11
+ children: /*#__PURE__*/_jsx("path", {
12
+ d: "M2 10.4078H5.27273V13H2.90874C2.30955 12.9998 2 12.6052 2 12.3207V10.4078ZM5.27273 9.29666H2V6.70334H5.27273V9.29666ZM14 9.29666H6.36364V6.70334H14V9.29666ZM14 12.3207C14 12.6052 13.6905 12.9998 13.0913 13H6.36364V10.4078H14V12.3207ZM2 3.67925C2 3.39484 2.30955 3.00016 2.90874 3H5.27273V5.59223H2V3.67925ZM14 5.59223H6.36364V3H13.0913C13.6905 3.00016 14 3.39484 14 3.67925V5.59223Z"
13
+ })
14
+ });
15
+ };
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["React","TableViewIcon","_jsx","className","fill","height","viewBox","width","xmlns","d"],"sources":["../../../src/icons/TableView/index.tsx"],"sourcesContent":["import React from 'react'\n\nexport const TableViewIcon = () => {\n return (\n <svg\n className=\"icon icon--table-view\"\n fill=\"currentColor\"\n height=\"20\"\n viewBox=\"0 0 16 16\"\n width=\"20\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path d=\"M2 10.4078H5.27273V13H2.90874C2.30955 12.9998 2 12.6052 2 12.3207V10.4078ZM5.27273 9.29666H2V6.70334H5.27273V9.29666ZM14 9.29666H6.36364V6.70334H14V9.29666ZM14 12.3207C14 12.6052 13.6905 12.9998 13.0913 13H6.36364V10.4078H14V12.3207ZM2 3.67925C2 3.39484 2.30955 3.00016 2.90874 3H5.27273V5.59223H2V3.67925ZM14 5.59223H6.36364V3H13.0913C13.6905 3.00016 14 3.39484 14 3.67925V5.59223Z\" />\n </svg>\n )\n}\n"],"mappings":";AAAA,OAAOA,KAAA,MAAW;AAElB,OAAO,MAAMC,aAAA,GAAgBA,CAAA;EAC3B,oBACEC,IAAA,CAAC;IACCC,SAAA,EAAU;IACVC,IAAA,EAAK;IACLC,MAAA,EAAO;IACPC,OAAA,EAAQ;IACRC,KAAA,EAAM;IACNC,KAAA,EAAM;cAEN,aAAAN,IAAA,CAAC;MAAKO,CAAA,EAAE;;;AAGd","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import './index.scss';
3
+ export type TagIconProps = {
4
+ className?: string;
5
+ color?: 'dark' | 'default' | 'muted';
6
+ };
7
+ export declare function TagIcon({ className, color }: TagIconProps): React.JSX.Element;
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/icons/Tag/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAA;CACrC,CAAA;AAED,wBAAgB,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,YAAY,qBAkBzD"}
@@ -0,0 +1,22 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from 'react';
3
+ import './index.scss';
4
+ export function TagIcon({
5
+ className,
6
+ color
7
+ }) {
8
+ const colorClass = color ? `icon--tag--${color}` : '';
9
+ return /*#__PURE__*/_jsx("svg", {
10
+ className: [className, 'icon icon--tag', colorClass].filter(Boolean).join(' '),
11
+ fill: "none",
12
+ height: "16",
13
+ viewBox: "0 0 16 16",
14
+ width: "16",
15
+ xmlns: "http://www.w3.org/2000/svg",
16
+ children: /*#__PURE__*/_jsx("path", {
17
+ d: "M8.39065 1.72401C8.14066 1.47394 7.80157 1.33342 7.44798 1.33334H2.66665C2.31302 1.33334 1.97389 1.47382 1.72384 1.72387C1.47379 1.97392 1.33331 2.31305 1.33331 2.66668V7.44801C1.33339 7.8016 1.47391 8.14069 1.72398 8.39068L7.52665 14.1933C7.82966 14.4944 8.23948 14.6634 8.66665 14.6634C9.09382 14.6634 9.50364 14.4944 9.80665 14.1933L14.1933 9.80668C14.4944 9.50367 14.6634 9.09385 14.6634 8.66668C14.6634 8.23951 14.4944 7.82969 14.1933 7.52668L8.39065 1.72401ZM4.99998 5.66668C4.63179 5.66668 4.33331 5.3682 4.33331 5.00001C4.33331 4.63182 4.63179 4.33334 4.99998 4.33334C5.36817 4.33334 5.66665 4.63182 5.66665 5.00001C5.66665 5.3682 5.36817 5.66668 4.99998 5.66668Z",
18
+ fill: "currentColor"
19
+ })
20
+ });
21
+ }
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["React","TagIcon","className","color","colorClass","_jsx","filter","Boolean","join","fill","height","viewBox","width","xmlns","d"],"sources":["../../../src/icons/Tag/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.scss'\n\nexport type TagIconProps = {\n className?: string\n color?: 'dark' | 'default' | 'muted'\n}\n\nexport function TagIcon({ className, color }: TagIconProps) {\n const colorClass = color ? `icon--tag--${color}` : ''\n\n return (\n <svg\n className={[className, 'icon icon--tag', colorClass].filter(Boolean).join(' ')}\n fill=\"none\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n width=\"16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M8.39065 1.72401C8.14066 1.47394 7.80157 1.33342 7.44798 1.33334H2.66665C2.31302 1.33334 1.97389 1.47382 1.72384 1.72387C1.47379 1.97392 1.33331 2.31305 1.33331 2.66668V7.44801C1.33339 7.8016 1.47391 8.14069 1.72398 8.39068L7.52665 14.1933C7.82966 14.4944 8.23948 14.6634 8.66665 14.6634C9.09382 14.6634 9.50364 14.4944 9.80665 14.1933L14.1933 9.80668C14.4944 9.50367 14.6634 9.09385 14.6634 8.66668C14.6634 8.23951 14.4944 7.82969 14.1933 7.52668L8.39065 1.72401ZM4.99998 5.66668C4.63179 5.66668 4.33331 5.3682 4.33331 5.00001C4.33331 4.63182 4.63179 4.33334 4.99998 4.33334C5.36817 4.33334 5.66665 4.63182 5.66665 5.00001C5.66665 5.3682 5.36817 5.66668 4.99998 5.66668Z\"\n fill=\"currentColor\"\n />\n </svg>\n )\n}\n"],"mappings":";AAAA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAOP,OAAO,SAASC,QAAQ;EAAEC,SAAS;EAAEC;AAAK,CAAgB;EACxD,MAAMC,UAAA,GAAaD,KAAA,GAAQ,cAAcA,KAAA,EAAO,GAAG;EAEnD,oBACEE,IAAA,CAAC;IACCH,SAAA,EAAW,CAACA,SAAA,EAAW,kBAAkBE,UAAA,CAAW,CAACE,MAAM,CAACC,OAAA,EAASC,IAAI,CAAC;IAC1EC,IAAA,EAAK;IACLC,MAAA,EAAO;IACPC,OAAA,EAAQ;IACRC,KAAA,EAAM;IACNC,KAAA,EAAM;cAEN,aAAAR,IAAA,CAAC;MACCS,CAAA,EAAE;MACFL,IAAA,EAAK;;;AAIb","ignoreList":[]}
@@ -0,0 +1,14 @@
1
+ @layer payload-default {
2
+ .icon--tag {
3
+ height: var(--base);
4
+ width: var(--base);
5
+
6
+ &--muted {
7
+ color: var(--theme-elevation-300);
8
+ }
9
+
10
+ &--dark {
11
+ color: var(--theme-elevation-800);
12
+ }
13
+ }
14
+ }
@@ -0,0 +1,8 @@
1
+ import type React from 'react';
2
+ import type { CollectionData, CollectionSelectionState, DocumentSelectionContextValue, DocumentSelectionProviderProps, SelectableDocument, SelectionMetadata, SelectionState } from './types.js';
3
+ import { SelectAllStatus } from '../Selection/index.js';
4
+ export { SelectAllStatus };
5
+ export type { CollectionData, CollectionSelectionState, DocumentSelectionContextValue, DocumentSelectionProviderProps, SelectableDocument, SelectionMetadata, SelectionState, };
6
+ export declare const DocumentSelectionProvider: React.FC<DocumentSelectionProviderProps>;
7
+ export declare const useDocumentSelection: () => DocumentSelectionContextValue;
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/DocumentSelection/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,KAAK,EACV,cAAc,EACd,wBAAwB,EACxB,6BAA6B,EAC7B,8BAA8B,EAC9B,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACf,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,OAAO,EAAE,eAAe,EAAE,CAAA;AAC1B,YAAY,EACV,cAAc,EACd,wBAAwB,EACxB,6BAA6B,EAC7B,8BAA8B,EAC9B,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,GACf,CAAA;AAkCD,eAAO,MAAM,yBAAyB,EAAE,KAAK,CAAC,EAAE,CAAC,8BAA8B,CA6Q9E,CAAA;AAED,eAAO,MAAM,oBAAoB,QAAO,6BAQvC,CAAA"}
@@ -0,0 +1,239 @@
1
+ 'use client';
2
+
3
+ import { jsx as _jsx } from "react/jsx-runtime";
4
+ import { createContext, use, useCallback, useEffect, useMemo, useRef, useState } from 'react';
5
+ import { SelectAllStatus } from '../Selection/index.js';
6
+ export { SelectAllStatus };
7
+ const Context = /*#__PURE__*/createContext(undefined);
8
+ /**
9
+ * Creates an initial empty selection state for a collection.
10
+ */
11
+ const createEmptyCollectionState = () => ({
12
+ selectAllStatus: SelectAllStatus.None,
13
+ selected: new Map()
14
+ });
15
+ /**
16
+ * Computes the SelectAllStatus based on selection state and doc count.
17
+ * Presence in the map = selected (metadata object is stored).
18
+ */
19
+ const computeSelectAllStatus = ({
20
+ docCount,
21
+ selected
22
+ }) => {
23
+ if (!selected.size || docCount === 0) {
24
+ return SelectAllStatus.None;
25
+ }
26
+ if (selected.size === docCount) {
27
+ return SelectAllStatus.AllInPage;
28
+ }
29
+ return SelectAllStatus.Some;
30
+ };
31
+ export const DocumentSelectionProvider = ({
32
+ children,
33
+ collectionData,
34
+ currentUserId
35
+ }) => {
36
+ const contextRef = useRef({});
37
+ const [selections, setSelections] = useState(() => {
38
+ const initial = {};
39
+ for (const collectionSlug of Object.keys(collectionData)) {
40
+ initial[collectionSlug] = createEmptyCollectionState();
41
+ }
42
+ return initial;
43
+ });
44
+ // Reset selections when collectionData changes (new docs loaded)
45
+ useEffect(() => {
46
+ setSelections(() => {
47
+ const reset = {};
48
+ for (const collectionSlug_0 of Object.keys(collectionData)) {
49
+ reset[collectionSlug_0] = createEmptyCollectionState();
50
+ }
51
+ return reset;
52
+ });
53
+ }, [collectionData]);
54
+ const isLocked = useCallback(({
55
+ id,
56
+ collectionSlug: collectionSlug_1
57
+ }) => {
58
+ const docs = collectionData[collectionSlug_1]?.docs ?? [];
59
+ const doc = docs.find(d => d.id === id);
60
+ if (!doc) {
61
+ return false;
62
+ }
63
+ return Boolean(doc._isLocked && doc._userEditing?.id !== currentUserId);
64
+ }, [collectionData, currentUserId]);
65
+ const isSelected = useCallback(({
66
+ id: id_0,
67
+ collectionSlug: collectionSlug_2
68
+ }) => {
69
+ return selections[collectionSlug_2]?.selected.has(id_0) ?? false;
70
+ }, [selections]);
71
+ const getSelectAllStatus = useCallback(({
72
+ collectionSlug: collectionSlug_3
73
+ }) => {
74
+ return selections[collectionSlug_3]?.selectAllStatus ?? SelectAllStatus.None;
75
+ }, [selections]);
76
+ const getCollectionCount = useCallback(({
77
+ collectionSlug: collectionSlug_4
78
+ }) => {
79
+ return selections[collectionSlug_4]?.selected.size ?? 0;
80
+ }, [selections]);
81
+ const getTotalCount = useCallback(() => {
82
+ let total = 0;
83
+ for (const collectionSlug_5 of Object.keys(selections)) {
84
+ total += getCollectionCount({
85
+ collectionSlug: collectionSlug_5
86
+ });
87
+ }
88
+ return total;
89
+ }, [selections, getCollectionCount]);
90
+ const getSelectionsForActions = useCallback(() => {
91
+ const result = {};
92
+ for (const [collectionSlug_6, collectionState] of Object.entries(selections)) {
93
+ const ids = Array.from(collectionState.selected.keys());
94
+ if (ids.length > 0) {
95
+ result[collectionSlug_6] = {
96
+ ids,
97
+ totalCount: ids.length
98
+ };
99
+ }
100
+ }
101
+ return result;
102
+ }, [selections]);
103
+ const getSelectionsWithMetadata = useCallback(() => {
104
+ const result_0 = {};
105
+ for (const [collectionSlug_7, collectionState_0] of Object.entries(selections)) {
106
+ const selectionsArray = [];
107
+ for (const [id_1, metadata] of collectionState_0.selected) {
108
+ selectionsArray.push({
109
+ id: id_1,
110
+ metadata
111
+ });
112
+ }
113
+ if (selectionsArray.length > 0) {
114
+ result_0[collectionSlug_7] = {
115
+ selections: selectionsArray,
116
+ totalCount: selectionsArray.length
117
+ };
118
+ }
119
+ }
120
+ return result_0;
121
+ }, [selections]);
122
+ const toggleSelection = useCallback(({
123
+ id: id_2,
124
+ collectionSlug: collectionSlug_8,
125
+ metadata: metadata_0 = {}
126
+ }) => {
127
+ // Check if doc is locked
128
+ if (isLocked({
129
+ id: id_2,
130
+ collectionSlug: collectionSlug_8
131
+ })) {
132
+ return;
133
+ }
134
+ setSelections(prev => {
135
+ const collectionState_1 = prev[collectionSlug_8] ?? createEmptyCollectionState();
136
+ const isCurrentlySelected = collectionState_1.selected.has(id_2);
137
+ const newMap = new Map(collectionState_1.selected);
138
+ if (isCurrentlySelected) {
139
+ newMap.delete(id_2);
140
+ } else {
141
+ newMap.set(id_2, metadata_0);
142
+ }
143
+ const docCount = collectionData[collectionSlug_8]?.docs.length ?? 0;
144
+ const newSelectAllStatus = computeSelectAllStatus({
145
+ docCount,
146
+ selected: newMap
147
+ });
148
+ return {
149
+ ...prev,
150
+ [collectionSlug_8]: {
151
+ selectAllStatus: newSelectAllStatus,
152
+ selected: newMap
153
+ }
154
+ };
155
+ });
156
+ }, [collectionData, isLocked]);
157
+ const toggleAllInCollection = useCallback(({
158
+ collectionSlug: collectionSlug_9
159
+ }) => {
160
+ setSelections(prev_0 => {
161
+ const collectionState_2 = prev_0[collectionSlug_9] ?? createEmptyCollectionState();
162
+ const docs_0 = collectionData[collectionSlug_9]?.docs ?? [];
163
+ const currentStatus = collectionState_2.selectAllStatus;
164
+ // If already AllInPage, reset to None
165
+ if (currentStatus === SelectAllStatus.AllInPage) {
166
+ return {
167
+ ...prev_0,
168
+ [collectionSlug_9]: {
169
+ selectAllStatus: SelectAllStatus.None,
170
+ selected: new Map()
171
+ }
172
+ };
173
+ }
174
+ // Otherwise, select all non-locked docs with empty metadata
175
+ const newMap_0 = new Map();
176
+ for (const doc_0 of docs_0) {
177
+ const docIsLocked = Boolean(doc_0._isLocked && doc_0._userEditing?.id !== currentUserId);
178
+ if (!docIsLocked) {
179
+ newMap_0.set(doc_0.id, {});
180
+ }
181
+ }
182
+ const newSelectAllStatus_0 = computeSelectAllStatus({
183
+ docCount: docs_0.length,
184
+ selected: newMap_0
185
+ });
186
+ return {
187
+ ...prev_0,
188
+ [collectionSlug_9]: {
189
+ selectAllStatus: newSelectAllStatus_0,
190
+ selected: newMap_0
191
+ }
192
+ };
193
+ });
194
+ }, [collectionData, currentUserId]);
195
+ const clearCollection = useCallback(({
196
+ collectionSlug: collectionSlug_10
197
+ }) => {
198
+ setSelections(prev_1 => ({
199
+ ...prev_1,
200
+ [collectionSlug_10]: createEmptyCollectionState()
201
+ }));
202
+ }, []);
203
+ const clearAll = useCallback(() => {
204
+ setSelections(prev_2 => {
205
+ const cleared = {};
206
+ for (const collectionSlug_11 of Object.keys(prev_2)) {
207
+ cleared[collectionSlug_11] = createEmptyCollectionState();
208
+ }
209
+ return cleared;
210
+ });
211
+ }, []);
212
+ const contextValue = useMemo(() => ({
213
+ clearAll,
214
+ clearCollection,
215
+ getCollectionCount,
216
+ getSelectAllStatus,
217
+ getSelectionsForActions,
218
+ getSelectionsWithMetadata,
219
+ getTotalCount,
220
+ isLocked,
221
+ isSelected,
222
+ selections,
223
+ toggleAllInCollection,
224
+ toggleSelection
225
+ }), [clearAll, clearCollection, getCollectionCount, getSelectAllStatus, getSelectionsForActions, getSelectionsWithMetadata, getTotalCount, isLocked, isSelected, selections, toggleAllInCollection, toggleSelection]);
226
+ contextRef.current = contextValue;
227
+ return /*#__PURE__*/_jsx(Context, {
228
+ value: contextRef.current,
229
+ children: children
230
+ });
231
+ };
232
+ export const useDocumentSelection = () => {
233
+ const context = use(Context);
234
+ if (context === undefined) {
235
+ throw new Error('useDocumentSelection must be used within a DocumentSelectionProvider');
236
+ }
237
+ return context;
238
+ };
239
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["createContext","use","useCallback","useEffect","useMemo","useRef","useState","SelectAllStatus","Context","undefined","createEmptyCollectionState","selectAllStatus","None","selected","Map","computeSelectAllStatus","docCount","size","AllInPage","Some","DocumentSelectionProvider","children","collectionData","currentUserId","contextRef","selections","setSelections","initial","collectionSlug","Object","keys","reset","isLocked","id","docs","doc","find","d","Boolean","_isLocked","_userEditing","isSelected","has","getSelectAllStatus","getCollectionCount","getTotalCount","total","getSelectionsForActions","result","collectionState","entries","ids","Array","from","length","totalCount","getSelectionsWithMetadata","selectionsArray","metadata","push","toggleSelection","prev","isCurrentlySelected","newMap","delete","set","newSelectAllStatus","toggleAllInCollection","currentStatus","docIsLocked","clearCollection","clearAll","cleared","contextValue","current","_jsx","value","useDocumentSelection","context","Error"],"sources":["../../../src/providers/DocumentSelection/index.tsx"],"sourcesContent":["'use client'\nimport type React from 'react'\n\nimport { createContext, use, useCallback, useEffect, useMemo, useRef, useState } from 'react'\n\nimport type {\n CollectionData,\n CollectionSelectionState,\n DocumentSelectionContextValue,\n DocumentSelectionProviderProps,\n SelectableDocument,\n SelectionMetadata,\n SelectionState,\n} from './types.js'\n\nimport { SelectAllStatus } from '../Selection/index.js'\n\nexport { SelectAllStatus }\nexport type {\n CollectionData,\n CollectionSelectionState,\n DocumentSelectionContextValue,\n DocumentSelectionProviderProps,\n SelectableDocument,\n SelectionMetadata,\n SelectionState,\n}\n\nconst Context = createContext<DocumentSelectionContextValue | undefined>(undefined)\n\n/**\n * Creates an initial empty selection state for a collection.\n */\nconst createEmptyCollectionState = (): CollectionSelectionState => ({\n selectAllStatus: SelectAllStatus.None,\n selected: new Map(),\n})\n\n/**\n * Computes the SelectAllStatus based on selection state and doc count.\n * Presence in the map = selected (metadata object is stored).\n */\nconst computeSelectAllStatus = ({\n docCount,\n selected,\n}: {\n docCount: number\n selected: Map<number | string, SelectionMetadata>\n}): SelectAllStatus => {\n if (!selected.size || docCount === 0) {\n return SelectAllStatus.None\n }\n\n if (selected.size === docCount) {\n return SelectAllStatus.AllInPage\n }\n\n return SelectAllStatus.Some\n}\n\nexport const DocumentSelectionProvider: React.FC<DocumentSelectionProviderProps> = ({\n children,\n collectionData,\n currentUserId,\n}) => {\n const contextRef = useRef({} as DocumentSelectionContextValue)\n\n const [selections, setSelections] = useState<SelectionState>(() => {\n const initial: SelectionState = {}\n\n for (const collectionSlug of Object.keys(collectionData)) {\n initial[collectionSlug] = createEmptyCollectionState()\n }\n\n return initial\n })\n\n // Reset selections when collectionData changes (new docs loaded)\n useEffect(() => {\n setSelections(() => {\n const reset: SelectionState = {}\n\n for (const collectionSlug of Object.keys(collectionData)) {\n reset[collectionSlug] = createEmptyCollectionState()\n }\n\n return reset\n })\n }, [collectionData])\n\n const isLocked = useCallback(\n ({ id, collectionSlug }: { collectionSlug: string; id: number | string }): boolean => {\n const docs = collectionData[collectionSlug]?.docs ?? []\n const doc = docs.find((d) => d.id === id)\n\n if (!doc) {\n return false\n }\n\n return Boolean(doc._isLocked && doc._userEditing?.id !== currentUserId)\n },\n [collectionData, currentUserId],\n )\n\n const isSelected = useCallback(\n ({ id, collectionSlug }: { collectionSlug: string; id: number | string }): boolean => {\n return selections[collectionSlug]?.selected.has(id) ?? false\n },\n [selections],\n )\n\n const getSelectAllStatus = useCallback(\n ({ collectionSlug }: { collectionSlug: string }): SelectAllStatus => {\n return selections[collectionSlug]?.selectAllStatus ?? SelectAllStatus.None\n },\n [selections],\n )\n\n const getCollectionCount = useCallback(\n ({ collectionSlug }: { collectionSlug: string }): number => {\n return selections[collectionSlug]?.selected.size ?? 0\n },\n [selections],\n )\n\n const getTotalCount = useCallback((): number => {\n let total = 0\n\n for (const collectionSlug of Object.keys(selections)) {\n total += getCollectionCount({ collectionSlug })\n }\n\n return total\n }, [selections, getCollectionCount])\n\n const getSelectionsForActions = useCallback((): Record<\n string,\n { ids: (number | string)[]; totalCount: number }\n > => {\n const result: Record<string, { ids: (number | string)[]; totalCount: number }> = {}\n\n for (const [collectionSlug, collectionState] of Object.entries(selections)) {\n const ids = Array.from(collectionState.selected.keys())\n\n if (ids.length > 0) {\n result[collectionSlug] = {\n ids,\n totalCount: ids.length,\n }\n }\n }\n\n return result\n }, [selections])\n\n const getSelectionsWithMetadata = useCallback((): Record<\n string,\n {\n selections: Array<{ id: number | string; metadata: SelectionMetadata }>\n totalCount: number\n }\n > => {\n const result: Record<\n string,\n {\n selections: Array<{ id: number | string; metadata: SelectionMetadata }>\n totalCount: number\n }\n > = {}\n\n for (const [collectionSlug, collectionState] of Object.entries(selections)) {\n const selectionsArray: Array<{ id: number | string; metadata: SelectionMetadata }> = []\n\n for (const [id, metadata] of collectionState.selected) {\n selectionsArray.push({ id, metadata })\n }\n\n if (selectionsArray.length > 0) {\n result[collectionSlug] = {\n selections: selectionsArray,\n totalCount: selectionsArray.length,\n }\n }\n }\n\n return result\n }, [selections])\n\n const toggleSelection = useCallback(\n ({\n id,\n collectionSlug,\n metadata = {},\n }: {\n collectionSlug: string\n id: number | string\n metadata?: SelectionMetadata\n }): void => {\n // Check if doc is locked\n if (isLocked({ id, collectionSlug })) {\n return\n }\n\n setSelections((prev) => {\n const collectionState = prev[collectionSlug] ?? createEmptyCollectionState()\n const isCurrentlySelected = collectionState.selected.has(id)\n\n const newMap = new Map(collectionState.selected)\n\n if (isCurrentlySelected) {\n newMap.delete(id)\n } else {\n newMap.set(id, metadata)\n }\n\n const docCount = collectionData[collectionSlug]?.docs.length ?? 0\n const newSelectAllStatus = computeSelectAllStatus({ docCount, selected: newMap })\n\n return {\n ...prev,\n [collectionSlug]: {\n selectAllStatus: newSelectAllStatus,\n selected: newMap,\n },\n }\n })\n },\n [collectionData, isLocked],\n )\n\n const toggleAllInCollection = useCallback(\n ({ collectionSlug }: { collectionSlug: string }): void => {\n setSelections((prev) => {\n const collectionState = prev[collectionSlug] ?? createEmptyCollectionState()\n const docs = collectionData[collectionSlug]?.docs ?? []\n const currentStatus = collectionState.selectAllStatus\n\n // If already AllInPage, reset to None\n if (currentStatus === SelectAllStatus.AllInPage) {\n return {\n ...prev,\n [collectionSlug]: {\n selectAllStatus: SelectAllStatus.None,\n selected: new Map(),\n },\n }\n }\n\n // Otherwise, select all non-locked docs with empty metadata\n const newMap = new Map<number | string, SelectionMetadata>()\n\n for (const doc of docs) {\n const docIsLocked = Boolean(doc._isLocked && doc._userEditing?.id !== currentUserId)\n\n if (!docIsLocked) {\n newMap.set(doc.id, {})\n }\n }\n\n const newSelectAllStatus = computeSelectAllStatus({\n docCount: docs.length,\n selected: newMap,\n })\n\n return {\n ...prev,\n [collectionSlug]: {\n selectAllStatus: newSelectAllStatus,\n selected: newMap,\n },\n }\n })\n },\n [collectionData, currentUserId],\n )\n\n const clearCollection = useCallback(({ collectionSlug }: { collectionSlug: string }): void => {\n setSelections((prev) => ({\n ...prev,\n [collectionSlug]: createEmptyCollectionState(),\n }))\n }, [])\n\n const clearAll = useCallback((): void => {\n setSelections((prev) => {\n const cleared: SelectionState = {}\n\n for (const collectionSlug of Object.keys(prev)) {\n cleared[collectionSlug] = createEmptyCollectionState()\n }\n\n return cleared\n })\n }, [])\n\n const contextValue = useMemo<DocumentSelectionContextValue>(\n () => ({\n clearAll,\n clearCollection,\n getCollectionCount,\n getSelectAllStatus,\n getSelectionsForActions,\n getSelectionsWithMetadata,\n getTotalCount,\n isLocked,\n isSelected,\n selections,\n toggleAllInCollection,\n toggleSelection,\n }),\n [\n clearAll,\n clearCollection,\n getCollectionCount,\n getSelectAllStatus,\n getSelectionsForActions,\n getSelectionsWithMetadata,\n getTotalCount,\n isLocked,\n isSelected,\n selections,\n toggleAllInCollection,\n toggleSelection,\n ],\n )\n\n contextRef.current = contextValue\n\n return <Context value={contextRef.current}>{children}</Context>\n}\n\nexport const useDocumentSelection = (): DocumentSelectionContextValue => {\n const context = use(Context)\n\n if (context === undefined) {\n throw new Error('useDocumentSelection must be used within a DocumentSelectionProvider')\n }\n\n return context\n}\n"],"mappings":"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","ignoreList":[]}