@webiny/app-aco 0.0.0-unstable.7be00a75a9 → 0.0.0-unstable.7c2def32a7

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 (243) hide show
  1. package/app.js +5 -1
  2. package/app.js.map +1 -1
  3. package/components/Actions/DeleteFolder/DeleteFolder.js +1 -1
  4. package/components/Actions/DeleteFolder/DeleteFolder.js.map +1 -1
  5. package/components/AdvancedSearch/AdvancedSearch.d.ts +2 -2
  6. package/components/AdvancedSearch/AdvancedSearch.js +1 -1
  7. package/components/AdvancedSearch/AdvancedSearch.js.map +1 -1
  8. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/OperationSelector.js +2 -2
  9. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/OperationSelector.js.map +1 -1
  10. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawer.d.ts +2 -2
  11. package/components/AdvancedSearch/SelectedFilter/SelectedFilter.js +1 -1
  12. package/components/AdvancedSearch/SelectedFilter/SelectedFilter.js.map +1 -1
  13. package/components/AdvancedSearch/domain/Filter.d.ts +1 -1
  14. package/components/AdvancedSearch/domain/FilterRepositoryFactory.d.ts +2 -2
  15. package/components/AdvancedSearch/domain/FilterRepositoryFactory.js.map +1 -1
  16. package/components/AdvancedSearch/gateways/FiltersGraphQLGateway.d.ts +2 -2
  17. package/components/AdvancedSearch/gateways/FiltersGraphQLGateway.js +9 -10
  18. package/components/AdvancedSearch/gateways/FiltersGraphQLGateway.js.map +1 -1
  19. package/components/AdvancedSearch/gateways/filters.gql.d.ts +5 -5
  20. package/components/AdvancedSearch/gateways/filters.gql.js +5 -6
  21. package/components/AdvancedSearch/gateways/filters.gql.js.map +1 -1
  22. package/components/AdvancedSearch/useFilterRepository.js +7 -2
  23. package/components/AdvancedSearch/useFilterRepository.js.map +1 -1
  24. package/components/FolderTree/List/List.js +14 -6
  25. package/components/FolderTree/List/List.js.map +1 -1
  26. package/components/Table/cells/CellAuthor.d.ts +2 -0
  27. package/components/Table/cells/CellAuthor.js +10 -0
  28. package/components/Table/cells/CellAuthor.js.map +1 -0
  29. package/components/Table/cells/CellCreated.d.ts +2 -0
  30. package/components/Table/cells/CellCreated.js +13 -0
  31. package/components/Table/cells/CellCreated.js.map +1 -0
  32. package/components/Table/cells/CellModified.d.ts +2 -0
  33. package/components/Table/cells/CellModified.js +13 -0
  34. package/components/Table/cells/CellModified.js.map +1 -0
  35. package/components/Table/cells/index.d.ts +3 -0
  36. package/components/Table/cells/index.js +3 -0
  37. package/components/Table/components/Table/TableInner.d.ts +2 -2
  38. package/components/Table/createTableData.d.ts +7 -5
  39. package/components/Table/createTableData.js +22 -7
  40. package/components/Table/createTableData.js.map +1 -1
  41. package/components/Table/index.d.ts +2 -2
  42. package/components/Table/index.js +2 -2
  43. package/components/index.d.ts +0 -1
  44. package/components/index.js +0 -1
  45. package/config/AcoConfig.d.ts +8 -12
  46. package/config/advanced-search/FieldRenderer.d.ts +3 -1
  47. package/config/folder/Action.d.ts +1 -1
  48. package/config/folder/index.d.ts +3 -2
  49. package/config/index.d.ts +0 -1
  50. package/config/index.js +0 -1
  51. package/config/record/Action.d.ts +1 -1
  52. package/config/record/index.d.ts +1 -1
  53. package/config/table/Column.d.ts +8 -39
  54. package/config/table/Column.js +4 -67
  55. package/config/table/Column.js.map +1 -1
  56. package/config/table/Sorting.d.ts +2 -11
  57. package/config/table/Sorting.js +1 -28
  58. package/config/table/index.d.ts +5 -9
  59. package/contexts/index.d.ts +0 -3
  60. package/contexts/index.js +0 -3
  61. package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemMeta.js +5 -0
  62. package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemMeta.js.map +1 -1
  63. package/dialogs/DialogSetPermissions/graphql.d.ts +1 -1
  64. package/dialogs/DialogSetPermissions/graphql.js +1 -2
  65. package/dialogs/DialogSetPermissions/graphql.js.map +1 -1
  66. package/dialogs/useConfirmMoveFolderDialog.d.ts +1 -0
  67. package/dialogs/useConfirmMoveFolderDialog.js +3 -2
  68. package/dialogs/useConfirmMoveFolderDialog.js.map +1 -1
  69. package/dialogs/useCreateDialog.js +5 -9
  70. package/dialogs/useCreateDialog.js.map +1 -1
  71. package/dialogs/useEditDialog.js +2 -2
  72. package/dialogs/useEditDialog.js.map +1 -1
  73. package/dialogs/useSetPermissionsDialog.js +16 -4
  74. package/dialogs/useSetPermissionsDialog.js.map +1 -1
  75. package/domain/folder/Folder.d.ts +2 -1
  76. package/domain/folder/Folder.js.map +1 -1
  77. package/features/folders/cache/FoldersCacheFactory.d.ts +3 -1
  78. package/features/folders/cache/FoldersCacheFactory.js +5 -0
  79. package/features/folders/cache/FoldersCacheFactory.js.map +1 -1
  80. package/features/folders/cache/updateDescendantPermissions.d.ts +12 -0
  81. package/features/folders/cache/updateDescendantPermissions.js +27 -0
  82. package/features/folders/cache/updateDescendantPermissions.js.map +1 -0
  83. package/features/folders/createFolder/CreateFolderGqlGateway.d.ts +3 -3
  84. package/features/folders/createFolder/CreateFolderGqlGateway.js +15 -16
  85. package/features/folders/createFolder/CreateFolderGqlGateway.js.map +1 -1
  86. package/features/folders/deleteFolder/DeleteFolderGqlGateway.d.ts +3 -3
  87. package/features/folders/deleteFolder/DeleteFolderGqlGateway.js +5 -6
  88. package/features/folders/deleteFolder/DeleteFolderGqlGateway.js.map +1 -1
  89. package/features/folders/folderEvents/AddCreatedFolderToCache.d.ts +22 -0
  90. package/features/folders/folderEvents/AddCreatedFolderToCache.js +24 -0
  91. package/features/folders/folderEvents/AddCreatedFolderToCache.js.map +1 -0
  92. package/features/folders/folderEvents/FolderCreatedEvent.d.ts +14 -0
  93. package/features/folders/folderEvents/FolderCreatedEvent.js +13 -0
  94. package/features/folders/folderEvents/FolderCreatedEvent.js.map +1 -0
  95. package/features/folders/folderEvents/FolderDeletedEvent.d.ts +9 -0
  96. package/features/folders/folderEvents/FolderDeletedEvent.js +13 -0
  97. package/features/folders/folderEvents/FolderDeletedEvent.js.map +1 -0
  98. package/features/folders/folderEvents/FolderEvents.test.d.ts +1 -0
  99. package/features/folders/folderEvents/FolderEvents.test.js +238 -0
  100. package/features/folders/folderEvents/FolderEvents.test.js.map +1 -0
  101. package/features/folders/folderEvents/FolderUpdatedEvent.d.ts +12 -0
  102. package/features/folders/folderEvents/FolderUpdatedEvent.js +13 -0
  103. package/features/folders/folderEvents/FolderUpdatedEvent.js.map +1 -0
  104. package/features/folders/folderEvents/FolderWebsocketMessages.d.ts +15 -0
  105. package/features/folders/folderEvents/FolderWebsocketMessages.js +48 -0
  106. package/features/folders/folderEvents/FolderWebsocketMessages.js.map +1 -0
  107. package/features/folders/folderEvents/RefreshUpdatedFolderInCache.d.ts +19 -0
  108. package/features/folders/folderEvents/RefreshUpdatedFolderInCache.js +27 -0
  109. package/features/folders/folderEvents/RefreshUpdatedFolderInCache.js.map +1 -0
  110. package/features/folders/folderEvents/RemoveDeletedFolderFromCache.d.ts +13 -0
  111. package/features/folders/folderEvents/RemoveDeletedFolderFromCache.js +15 -0
  112. package/features/folders/folderEvents/RemoveDeletedFolderFromCache.js.map +1 -0
  113. package/features/folders/folderEvents/abstractions.d.ts +28 -0
  114. package/features/folders/folderEvents/abstractions.js +7 -0
  115. package/features/folders/folderEvents/abstractions.js.map +1 -0
  116. package/features/folders/folderEvents/feature.d.ts +9 -0
  117. package/features/folders/folderEvents/feature.js +21 -0
  118. package/features/folders/folderEvents/feature.js.map +1 -0
  119. package/features/folders/folderEvents/index.d.ts +5 -0
  120. package/features/folders/folderEvents/index.js +5 -0
  121. package/features/folders/folderModelProvider/FolderModelProvider.js +30 -31
  122. package/features/folders/folderModelProvider/FolderModelProvider.js.map +1 -1
  123. package/features/folders/folderModelProvider/GetFolderModelGqlGateway.d.ts +3 -3
  124. package/features/folders/folderModelProvider/GetFolderModelGqlGateway.js +5 -7
  125. package/features/folders/folderModelProvider/GetFolderModelGqlGateway.js.map +1 -1
  126. package/features/folders/getFolder/GetFolderGqlGateway.d.ts +3 -3
  127. package/features/folders/getFolder/GetFolderGqlGateway.js +5 -7
  128. package/features/folders/getFolder/GetFolderGqlGateway.js.map +1 -1
  129. package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCase.d.ts +4 -3
  130. package/features/folders/getFolderExtensionsFields/useFolderExtensionsFields.d.ts +4 -3
  131. package/features/folders/getFolderLevelPermission/GetFolderLevelPermission.test.js +12 -16
  132. package/features/folders/getFolderLevelPermission/GetFolderLevelPermission.test.js.map +1 -1
  133. package/features/folders/getFolderLevelPermission/decorators/GetFolderLevelPermissionWithFlpDecorator.d.ts +3 -3
  134. package/features/folders/getFolderLevelPermission/decorators/GetFolderLevelPermissionWithFlpDecorator.js +5 -5
  135. package/features/folders/getFolderLevelPermission/decorators/GetFolderLevelPermissionWithFlpDecorator.js.map +1 -1
  136. package/features/folders/listFolders/ListFoldersGqlGateway.d.ts +1 -1
  137. package/features/folders/listFolders/ListFoldersGqlGateway.js +1 -2
  138. package/features/folders/listFolders/ListFoldersGqlGateway.js.map +1 -1
  139. package/features/folders/listFolders/useListFolders.d.ts +1 -1
  140. package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsGqlGateway.d.ts +3 -3
  141. package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsGqlGateway.js +5 -7
  142. package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsGqlGateway.js.map +1 -1
  143. package/features/folders/listFoldersByParentIds/useListFoldersByParentIds.d.ts +2 -2
  144. package/features/folders/loadFolderHierarchy/useLoadFolderHierarchy.d.ts +2 -2
  145. package/features/folders/updateFolder/UpdateFolderGqlGateway.d.ts +3 -3
  146. package/features/folders/updateFolder/UpdateFolderGqlGateway.js +6 -7
  147. package/features/folders/updateFolder/UpdateFolderGqlGateway.js.map +1 -1
  148. package/features/folders/updateFolder/decorators/RepositoryWithPermissionsChange.d.ts +1 -4
  149. package/features/folders/updateFolder/decorators/RepositoryWithPermissionsChange.js +3 -30
  150. package/features/folders/updateFolder/decorators/RepositoryWithPermissionsChange.js.map +1 -1
  151. package/features/folders/updateFolder/decorators/{UseCaseWithoutInheritedPermissions.d.ts → UseCaseWithoutReadOnlyPermissions.d.ts} +2 -2
  152. package/features/folders/updateFolder/decorators/{UseCaseWithoutInheritedPermissions.js → UseCaseWithoutReadOnlyPermissions.js} +6 -6
  153. package/features/folders/updateFolder/decorators/UseCaseWithoutReadOnlyPermissions.js.map +1 -0
  154. package/features/folders/updateFolder/feature.js +2 -2
  155. package/features/folders/updateFolder/feature.js.map +1 -1
  156. package/hooks/index.d.ts +0 -6
  157. package/hooks/index.js +0 -6
  158. package/index.d.ts +3 -2
  159. package/index.js +2 -2
  160. package/package.json +23 -29
  161. package/presentation/folderTree/FolderTree.js +13 -5
  162. package/presentation/folderTree/FolderTree.js.map +1 -1
  163. package/presentation/folderTree/FolderTreePresenter.d.ts +5 -1
  164. package/presentation/folderTree/FolderTreePresenter.js +49 -31
  165. package/presentation/folderTree/FolderTreePresenter.js.map +1 -1
  166. package/presentation/folderTree/FolderTreePresenter.test.js +111 -7
  167. package/presentation/folderTree/FolderTreePresenter.test.js.map +1 -1
  168. package/table.types.d.ts +2 -9
  169. package/types.d.ts +5 -26
  170. package/types.js.map +1 -1
  171. package/components/Extensions/Extensions.d.ts +0 -2
  172. package/components/Extensions/Extensions.js +0 -30
  173. package/components/Extensions/Extensions.js.map +0 -1
  174. package/components/Extensions/index.d.ts +0 -1
  175. package/components/Extensions/index.js +0 -1
  176. package/config/folder/createFolderFieldDecoratorFactory.d.ts +0 -13
  177. package/config/folder/createFolderFieldDecoratorFactory.js +0 -17
  178. package/config/folder/createFolderFieldDecoratorFactory.js.map +0 -1
  179. package/config/table/Sorting.js.map +0 -1
  180. package/contexts/acoList.d.ts +0 -49
  181. package/contexts/acoList.js +0 -303
  182. package/contexts/acoList.js.map +0 -1
  183. package/contexts/app.d.ts +0 -33
  184. package/contexts/app.js +0 -47
  185. package/contexts/app.js.map +0 -1
  186. package/contexts/folders.d.ts +0 -12
  187. package/contexts/folders.js +0 -32
  188. package/contexts/folders.js.map +0 -1
  189. package/contexts/navigateFolder.d.ts +0 -17
  190. package/contexts/navigateFolder.js +0 -54
  191. package/contexts/navigateFolder.js.map +0 -1
  192. package/contexts/records.d.ts +0 -31
  193. package/contexts/records.js +0 -316
  194. package/contexts/records.js.map +0 -1
  195. package/exports/admin/aco.d.ts +0 -2
  196. package/exports/admin/aco.js +0 -2
  197. package/features/folders/updateFolder/decorators/UseCaseWithoutInheritedPermissions.js.map +0 -1
  198. package/graphql/app.gql.d.ts +0 -17
  199. package/graphql/app.gql.js +0 -22
  200. package/graphql/app.gql.js.map +0 -1
  201. package/graphql/records/common.d.ts +0 -4
  202. package/graphql/records/common.js +0 -57
  203. package/graphql/records/common.js.map +0 -1
  204. package/graphql/records/getRecord.d.ts +0 -2
  205. package/graphql/records/getRecord.js +0 -5
  206. package/graphql/records/getRecord.js.map +0 -1
  207. package/graphql/records/listRecords.d.ts +0 -2
  208. package/graphql/records/listRecords.js +0 -26
  209. package/graphql/records/listRecords.js.map +0 -1
  210. package/graphql/records/moveRecord.d.ts +0 -2
  211. package/graphql/records/moveRecord.js +0 -16
  212. package/graphql/records/moveRecord.js.map +0 -1
  213. package/graphql/records/types.d.ts +0 -108
  214. package/graphql/records/types.js +0 -0
  215. package/graphql/records.gql.d.ts +0 -3
  216. package/graphql/records.gql.js +0 -3
  217. package/handlers.d.ts +0 -23
  218. package/handlers.js +0 -22
  219. package/handlers.js.map +0 -1
  220. package/hooks/useAcoApp.d.ts +0 -2
  221. package/hooks/useAcoApp.js +0 -16
  222. package/hooks/useAcoApp.js.map +0 -1
  223. package/hooks/useAcoList.d.ts +0 -3
  224. package/hooks/useAcoList.js +0 -10
  225. package/hooks/useAcoList.js.map +0 -1
  226. package/hooks/useFolderModel.d.ts +0 -2
  227. package/hooks/useFolderModel.js +0 -16
  228. package/hooks/useFolderModel.js.map +0 -1
  229. package/hooks/useFoldersType.d.ts +0 -1
  230. package/hooks/useFoldersType.js +0 -12
  231. package/hooks/useFoldersType.js.map +0 -1
  232. package/hooks/useNavigateFolder.d.ts +0 -2
  233. package/hooks/useNavigateFolder.js +0 -10
  234. package/hooks/useNavigateFolder.js.map +0 -1
  235. package/hooks/useRecords.d.ts +0 -62
  236. package/hooks/useRecords.js +0 -64
  237. package/hooks/useRecords.js.map +0 -1
  238. package/hooks/useTags.d.ts +0 -14
  239. package/hooks/useTags.js +0 -27
  240. package/hooks/useTags.js.map +0 -1
  241. package/sorting.d.ts +0 -9
  242. package/sorting.js +0 -31
  243. package/sorting.js.map +0 -1
@@ -1,7 +1,9 @@
1
+ export { createRecordsData } from "@webiny/app-admin/components/Table/createTableData.js";
1
2
  import type { FolderDto } from "../../domain/folder/FolderDto.js";
2
- import type { FolderTableRow, RecordTableRow } from "../../table.types.js";
3
- export declare const createRecordsData: <T extends {
4
- id: string;
5
- $selectable?: boolean;
6
- }>(items: T[]) => RecordTableRow<T>[];
3
+ import type { FolderTableRow } from "../../table.types.js";
7
4
  export declare const createFoldersData: (items: FolderDto[]) => FolderTableRow[];
5
+ export interface FolderSortConfig {
6
+ field: string;
7
+ direction: "ASC" | "DESC";
8
+ }
9
+ export declare function sortFolders(folders: FolderDto[], sort: FolderSortConfig | undefined): FolderDto[];
@@ -1,15 +1,30 @@
1
- const createRecordsData = (items)=>items.map((item)=>({
2
- id: item.id,
3
- $type: "RECORD",
4
- $selectable: void 0 !== item.$selectable ? item.$selectable : true,
5
- data: item
6
- }));
7
1
  const createFoldersData = (items)=>items.map((item)=>({
8
2
  id: item.id,
9
3
  $type: "FOLDER",
10
4
  $selectable: false,
11
5
  data: item
12
6
  }));
13
- export { createFoldersData, createRecordsData };
7
+ const FOLDER_SORT_FIELDS = {
8
+ name: (f)=>f.title,
9
+ title: (f)=>f.title,
10
+ createdOn: (f)=>f.createdOn,
11
+ savedOn: (f)=>f.savedOn,
12
+ modifiedOn: (f)=>f.modifiedOn ?? f.savedOn,
13
+ createdBy: (f)=>f.createdBy.displayName,
14
+ savedBy: (f)=>f.savedBy.displayName,
15
+ modifiedBy: (f)=>f.modifiedBy ? f.modifiedBy.displayName : f.savedBy.displayName
16
+ };
17
+ function sortFolders(folders, sort) {
18
+ if (!sort || 0 === folders.length) return folders;
19
+ const accessor = FOLDER_SORT_FIELDS[sort.field];
20
+ if (!accessor) return folders;
21
+ const desc = "DESC" === sort.direction;
22
+ return folders.slice().sort((a, b)=>{
23
+ const cmp = accessor(a).localeCompare(accessor(b));
24
+ return desc ? -cmp : cmp;
25
+ });
26
+ }
27
+ export { createRecordsData } from "@webiny/app-admin/components/Table/createTableData.js";
28
+ export { createFoldersData, sortFolders };
14
29
 
15
30
  //# sourceMappingURL=createTableData.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"components/Table/createTableData.js","sources":["../../../src/components/Table/createTableData.ts"],"sourcesContent":["import type { FolderDto } from \"~/domain/folder/FolderDto.js\";\nimport type { FolderTableRow, RecordTableRow } from \"~/table.types.js\";\n\nexport const createRecordsData = <T extends { id: string; $selectable?: boolean }>(\n items: T[]\n): RecordTableRow<T>[] => {\n return items.map(item => ({\n id: item.id,\n $type: \"RECORD\",\n $selectable: item.$selectable !== undefined ? item.$selectable : true,\n data: item\n }));\n};\n\nexport const createFoldersData = (items: FolderDto[]): FolderTableRow[] => {\n return items.map(item => ({\n id: item.id,\n $type: \"FOLDER\",\n $selectable: false,\n data: item\n }));\n};\n"],"names":["createRecordsData","items","item","undefined","createFoldersData"],"mappings":"AAGO,MAAMA,oBAAoB,CAC7BC,QAEOA,MAAM,GAAG,CAACC,CAAAA,OAAS;YACtB,IAAIA,KAAK,EAAE;YACX,OAAO;YACP,aAAaA,AAAqBC,WAArBD,KAAK,WAAW,GAAiBA,KAAK,WAAW,GAAG;YACjE,MAAMA;QACV;AAGG,MAAME,oBAAoB,CAACH,QACvBA,MAAM,GAAG,CAACC,CAAAA,OAAS;YACtB,IAAIA,KAAK,EAAE;YACX,OAAO;YACP,aAAa;YACb,MAAMA;QACV"}
1
+ {"version":3,"file":"components/Table/createTableData.js","sources":["../../../src/components/Table/createTableData.ts"],"sourcesContent":["export { createRecordsData } from \"@webiny/app-admin/components/Table/createTableData.js\";\n\nimport type { FolderDto } from \"~/domain/folder/FolderDto.js\";\nimport type { FolderTableRow } from \"~/table.types.js\";\n\nexport const createFoldersData = (items: FolderDto[]): FolderTableRow[] => {\n return items.map(item => ({\n id: item.id,\n $type: \"FOLDER\",\n $selectable: false,\n data: item\n }));\n};\n\nexport interface FolderSortConfig {\n field: string;\n direction: \"ASC\" | \"DESC\";\n}\n\nconst FOLDER_SORT_FIELDS: Record<string, (folder: FolderDto) => string> = {\n name: f => f.title,\n title: f => f.title,\n createdOn: f => f.createdOn,\n savedOn: f => f.savedOn,\n modifiedOn: f => f.modifiedOn ?? f.savedOn,\n createdBy: f => f.createdBy.displayName,\n savedBy: f => f.savedBy.displayName,\n modifiedBy: f => (f.modifiedBy ? f.modifiedBy.displayName : f.savedBy.displayName)\n};\n\nexport function sortFolders(folders: FolderDto[], sort: FolderSortConfig | undefined): FolderDto[] {\n if (!sort || folders.length === 0) {\n return folders;\n }\n\n const accessor = FOLDER_SORT_FIELDS[sort.field];\n if (!accessor) {\n return folders;\n }\n\n const desc = sort.direction === \"DESC\";\n\n return folders.slice().sort((a, b) => {\n const cmp = accessor(a).localeCompare(accessor(b));\n return desc ? -cmp : cmp;\n });\n}\n"],"names":["createFoldersData","items","item","FOLDER_SORT_FIELDS","f","sortFolders","folders","sort","accessor","desc","a","b","cmp"],"mappings":"AAKO,MAAMA,oBAAoB,CAACC,QACvBA,MAAM,GAAG,CAACC,CAAAA,OAAS;YACtB,IAAIA,KAAK,EAAE;YACX,OAAO;YACP,aAAa;YACb,MAAMA;QACV;AAQJ,MAAMC,qBAAoE;IACtE,MAAMC,CAAAA,IAAKA,EAAE,KAAK;IAClB,OAAOA,CAAAA,IAAKA,EAAE,KAAK;IACnB,WAAWA,CAAAA,IAAKA,EAAE,SAAS;IAC3B,SAASA,CAAAA,IAAKA,EAAE,OAAO;IACvB,YAAYA,CAAAA,IAAKA,EAAE,UAAU,IAAIA,EAAE,OAAO;IAC1C,WAAWA,CAAAA,IAAKA,EAAE,SAAS,CAAC,WAAW;IACvC,SAASA,CAAAA,IAAKA,EAAE,OAAO,CAAC,WAAW;IACnC,YAAYA,CAAAA,IAAMA,EAAE,UAAU,GAAGA,EAAE,UAAU,CAAC,WAAW,GAAGA,EAAE,OAAO,CAAC,WAAW;AACrF;AAEO,SAASC,YAAYC,OAAoB,EAAEC,IAAkC;IAChF,IAAI,CAACA,QAAQD,AAAmB,MAAnBA,QAAQ,MAAM,EACvB,OAAOA;IAGX,MAAME,WAAWL,kBAAkB,CAACI,KAAK,KAAK,CAAC;IAC/C,IAAI,CAACC,UACD,OAAOF;IAGX,MAAMG,OAAOF,AAAmB,WAAnBA,KAAK,SAAS;IAE3B,OAAOD,QAAQ,KAAK,GAAG,IAAI,CAAC,CAACI,GAAGC;QAC5B,MAAMC,MAAMJ,SAASE,GAAG,aAAa,CAACF,SAASG;QAC/C,OAAOF,OAAO,CAACG,MAAMA;IACzB;AACJ"}
@@ -1,3 +1,3 @@
1
- export * from "./components/index.js";
1
+ export { Table, createUseTableRow, TableRowProvider, TableRowContext } from "@webiny/app-admin/components/Table/index.js";
2
+ export { CellAuthor, CellCreated, CellModified } from "@webiny/app-admin/components/Table/cells/index.js";
2
3
  export * from "./createTableData.js";
3
- export * from "./useTableRow.js";
@@ -1,3 +1,3 @@
1
- export * from "./components/index.js";
2
1
  export * from "./createTableData.js";
3
- export * from "./useTableRow.js";
2
+ export { Table, TableRowContext, TableRowProvider, createUseTableRow } from "@webiny/app-admin/components/Table/index.js";
3
+ export { CellAuthor, CellCreated, CellModified } from "@webiny/app-admin/components/Table/cells/index.js";
@@ -1,6 +1,5 @@
1
1
  export * from "./Actions/index.js";
2
2
  export * from "./AdvancedSearch/index.js";
3
- export * from "./Extensions/index.js";
4
3
  export * from "./FolderGrid/index.js";
5
4
  export * from "./FolderIcons/index.js";
6
5
  export * from "./FolderTree/index.js";
@@ -1,6 +1,5 @@
1
1
  export * from "./Actions/index.js";
2
2
  export * from "./AdvancedSearch/index.js";
3
- export * from "./Extensions/index.js";
4
3
  export * from "./FolderGrid/index.js";
5
4
  export * from "./FolderIcons/index.js";
6
5
  export * from "./FolderTree/index.js";
@@ -15,28 +15,24 @@ export declare const AcoConfig: (({ priority, children }: import("@webiny/react-
15
15
  };
16
16
  };
17
17
  Folder: {
18
- Action: (({ name, after, before, remove, element }: import("./folder/Action.js").ActionProps) => import("react").JSX.Element) & {
18
+ Action: typeof import("./folder/Action.js").BaseAction & {
19
19
  OptionsMenuItem: (props: import("@webiny/app-admin/index.js").OptionsMenuItemProps) => React.JSX.Element;
20
20
  };
21
- DropConfirmation: ({ value }: import("./folder/DropConfirmation.js").DropConfirmationProps) => import("react").JSX.Element;
21
+ DropConfirmation: typeof import("./folder/DropConfirmation.js").DropConfirmation;
22
22
  };
23
23
  Record: {
24
- Action: (({ name, after, before, remove, element }: import("./record/Action.js").ActionProps) => import("react").JSX.Element) & {
24
+ Action: typeof import("./record/Action.js").BaseAction & {
25
25
  OptionsMenuItem: (props: import("@webiny/app-admin/index.js").OptionsMenuItemProps) => React.JSX.Element;
26
26
  OptionsMenuLink: (props: import("@webiny/app-admin/index.js").OptionsMenuLinkProps) => React.JSX.Element;
27
27
  };
28
28
  };
29
29
  Table: {
30
- Column: import("react").FC<import("./table/Column.js").ColumnProps> & {
31
- isFolderRow: (row: import("../table.types.js").TableRow) => row is import("../table.types.js").FolderTableRow;
32
- createUseTableRow: <TBaseRow = Record<string, any>>() => {
33
- (): import("../index.js").TableRowContextData<TBaseRow>;
34
- <TUserRow>(): import("../index.js").TableRowContextData<TBaseRow & {
35
- data: TUserRow;
36
- }>;
37
- };
30
+ Column: import("react").FC<import("@webiny/app-admin/config/table/Column.js").ColumnProps> & {
31
+ createUseTableRow: typeof import("@webiny/app-admin/index.js").createUseTableRow;
32
+ } & {
33
+ isFolderRow: (row: import("@webiny/app-admin/index.js").TableRow) => row is import("../table.types.js").FolderTableRow;
38
34
  };
39
- Sorting: ({ name, field, order }: import("./table/Sorting.js").SortingProps) => import("react").JSX.Element;
35
+ Sorting: ({ name, field, order }: import("@webiny/app-admin/config/table/Sorting.js").SortingProps) => React.JSX.Element;
40
36
  };
41
37
  };
42
38
  export interface AcoConfig {
@@ -10,7 +10,9 @@ export interface FieldRendererProps {
10
10
  element: React.ReactElement;
11
11
  type: FieldType;
12
12
  }
13
- export declare const FieldRenderer: (({ name, type, element }: FieldRendererProps) => React.JSX.Element) & {
13
+ declare const BaseFieldRenderer: ({ name, type, element }: FieldRendererProps) => React.JSX.Element;
14
+ export declare const FieldRenderer: typeof BaseFieldRenderer & {
14
15
  useInputField: () => import("~/components/AdvancedSearch/useInputField.js").InputFieldContext;
15
16
  FieldType: typeof FieldType;
16
17
  };
18
+ export {};
@@ -11,6 +11,6 @@ export interface ActionProps {
11
11
  after?: string;
12
12
  }
13
13
  export declare const BaseAction: ({ name, after, before, remove, element }: ActionProps) => React.JSX.Element;
14
- export declare const Action: (({ name, after, before, remove, element }: ActionProps) => React.JSX.Element) & {
14
+ export declare const Action: typeof BaseAction & {
15
15
  OptionsMenuItem: (props: import("@webiny/app-admin").OptionsMenuItemProps) => React.JSX.Element;
16
16
  };
@@ -1,11 +1,12 @@
1
1
  import type { ActionConfig } from "./Action.js";
2
+ import { DropConfirmation } from "./DropConfirmation.js";
2
3
  export interface FolderConfig {
3
4
  actions: ActionConfig[];
4
5
  dropConfirmation: boolean;
5
6
  }
6
7
  export declare const Folder: {
7
- Action: (({ name, after, before, remove, element }: import("./Action.js").ActionProps) => import("react").JSX.Element) & {
8
+ Action: typeof import("./Action.js").BaseAction & {
8
9
  OptionsMenuItem: (props: import("@webiny/app-admin/index.js").OptionsMenuItemProps) => React.JSX.Element;
9
10
  };
10
- DropConfirmation: ({ value }: import("./DropConfirmation.js").DropConfirmationProps) => import("react").JSX.Element;
11
+ DropConfirmation: typeof DropConfirmation;
11
12
  };
package/config/index.d.ts CHANGED
@@ -1,2 +1 @@
1
1
  export * from "./AcoConfig.js";
2
- export * from "./folder/createFolderFieldDecoratorFactory.js";
package/config/index.js CHANGED
@@ -1,2 +1 @@
1
1
  export * from "./AcoConfig.js";
2
- export * from "./folder/createFolderFieldDecoratorFactory.js";
@@ -11,7 +11,7 @@ export interface ActionProps {
11
11
  after?: string;
12
12
  }
13
13
  export declare const BaseAction: ({ name, after, before, remove, element }: ActionProps) => React.JSX.Element;
14
- export declare const Action: (({ name, after, before, remove, element }: ActionProps) => React.JSX.Element) & {
14
+ export declare const Action: typeof BaseAction & {
15
15
  OptionsMenuItem: (props: import("@webiny/app-admin").OptionsMenuItemProps) => React.JSX.Element;
16
16
  OptionsMenuLink: (props: import("@webiny/app-admin").OptionsMenuLinkProps) => React.JSX.Element;
17
17
  };
@@ -3,7 +3,7 @@ export interface RecordConfig {
3
3
  actions: ActionConfig[];
4
4
  }
5
5
  export declare const Record: {
6
- Action: (({ name, after, before, remove, element }: import("./Action.js").ActionProps) => import("react").JSX.Element) & {
6
+ Action: typeof import("./Action.js").BaseAction & {
7
7
  OptionsMenuItem: (props: import("@webiny/app-admin/index.js").OptionsMenuItemProps) => React.JSX.Element;
8
8
  OptionsMenuLink: (props: import("@webiny/app-admin/index.js").OptionsMenuLinkProps) => React.JSX.Element;
9
9
  };
@@ -1,40 +1,9 @@
1
- import type { ReactElement } from "react";
2
- import React from "react";
3
- import type { FolderTableRow, TableRow } from "../../table.types.js";
4
- export interface ColumnConfig {
5
- cell: string | ReactElement;
6
- className: string;
7
- header: string | ReactElement;
8
- hideable: boolean;
9
- name: string;
10
- resizable: boolean;
11
- size: number;
12
- sortable: boolean;
13
- truncate: boolean;
14
- visible: boolean;
15
- }
16
- export interface ColumnProps {
17
- after?: string;
18
- before?: string;
19
- cell?: string | ReactElement;
20
- className?: string;
21
- truncate?: boolean;
22
- header?: string | ReactElement;
23
- hideable?: boolean;
24
- name: string;
25
- path?: string;
26
- remove?: boolean;
27
- resizable?: boolean;
28
- size?: number;
29
- sortable?: boolean;
30
- visible?: boolean;
31
- }
32
- export declare const Column: React.FC<ColumnProps> & {
33
- isFolderRow: (row: TableRow) => row is FolderTableRow;
34
- createUseTableRow: <TBaseRow = Record<string, any>>() => {
35
- (): import("~/components/Table/useTableRow.js").TableRowContextData<TBaseRow>;
36
- <TUserRow>(): import("~/components/Table/useTableRow.js").TableRowContextData<TBaseRow & {
37
- data: TUserRow;
38
- }>;
39
- };
1
+ import type { TableRow } from "../../table.types.js";
2
+ import type { FolderTableRow } from "../../table.types.js";
3
+ export type { ColumnConfig, ColumnProps } from "@webiny/app-admin/config/table/Column.js";
4
+ declare const isFolderRow: (row: TableRow) => row is FolderTableRow;
5
+ export declare const Column: import("react").FC<import("@webiny/app-admin/config/table/Column.js").ColumnProps> & {
6
+ createUseTableRow: typeof import("@webiny/app-admin/components").createUseTableRow;
7
+ } & {
8
+ isFolderRow: typeof isFolderRow;
40
9
  };
@@ -1,71 +1,8 @@
1
- import react from "react";
2
- import { Property, useIdGenerator } from "@webiny/react-properties";
3
- import { createUseTableRow } from "../../components/Table/useTableRow.js";
4
- const BaseColumn = ({ after, before, cell, className, header, hideable = true, truncate = true, name, path = "", remove = false, resizable = true, size = 100, sortable = false, visible = true })=>{
5
- const getId = useIdGenerator("tableColumn");
6
- const placeAfter = void 0 !== after ? getId(after) : void 0;
7
- const placeBefore = void 0 !== before ? getId(before) : void 0;
8
- return /*#__PURE__*/ react.createElement(Property, {
9
- id: "table",
10
- name: "table"
11
- }, /*#__PURE__*/ react.createElement(Property, {
12
- id: getId(name),
13
- name: "columns",
14
- remove: remove,
15
- array: true,
16
- before: placeBefore,
17
- after: placeAfter
18
- }, /*#__PURE__*/ react.createElement(Property, {
19
- id: getId(name, "name"),
20
- name: "name",
21
- value: name
22
- }), /*#__PURE__*/ react.createElement(Property, {
23
- id: getId(name, "path"),
24
- name: "path",
25
- value: path
26
- }), /*#__PURE__*/ react.createElement(Property, {
27
- id: getId(name, "sortable"),
28
- name: "sortable",
29
- value: sortable
30
- }), /*#__PURE__*/ react.createElement(Property, {
31
- id: getId(name, "resizable"),
32
- name: "resizable",
33
- value: resizable
34
- }), /*#__PURE__*/ react.createElement(Property, {
35
- id: getId(name, "truncate"),
36
- name: "truncate",
37
- value: truncate
38
- }), /*#__PURE__*/ react.createElement(Property, {
39
- id: getId(name, "hideable"),
40
- name: "hideable",
41
- value: hideable
42
- }), /*#__PURE__*/ react.createElement(Property, {
43
- id: getId(name, "size"),
44
- name: "size",
45
- value: size
46
- }), /*#__PURE__*/ react.createElement(Property, {
47
- id: getId(name, "visible"),
48
- name: "visible",
49
- value: visible
50
- }), header ? /*#__PURE__*/ react.createElement(Property, {
51
- id: getId(name, "header"),
52
- name: "header",
53
- value: header
54
- }) : null, cell ? /*#__PURE__*/ react.createElement(Property, {
55
- id: getId(name, "cell"),
56
- name: "cell",
57
- value: cell
58
- }) : null, className ? /*#__PURE__*/ react.createElement(Property, {
59
- id: getId(name, "className"),
60
- name: "className",
61
- value: className
62
- }) : null));
63
- };
1
+ import { Column } from "@webiny/app-admin/config/table/Column.js";
64
2
  const isFolderRow = (row)=>"FOLDER" === row.$type;
65
- const Column = Object.assign(BaseColumn, {
66
- isFolderRow: isFolderRow,
67
- createUseTableRow: createUseTableRow
3
+ const Column_Column = Object.assign(Column, {
4
+ isFolderRow: isFolderRow
68
5
  });
69
- export { Column };
6
+ export { Column_Column as Column };
70
7
 
71
8
  //# sourceMappingURL=Column.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config/table/Column.js","sources":["../../../src/config/table/Column.tsx"],"sourcesContent":["import type { ReactElement } from \"react\";\nimport React from \"react\";\nimport { Property, useIdGenerator } from \"@webiny/react-properties\";\nimport { createUseTableRow } from \"~/components/Table/useTableRow.js\";\nimport type { FolderTableRow, TableRow } from \"~/table.types.js\";\n\nexport interface ColumnConfig {\n cell: string | ReactElement;\n className: string;\n header: string | ReactElement;\n hideable: boolean;\n name: string;\n resizable: boolean;\n size: number;\n sortable: boolean;\n truncate: boolean;\n visible: boolean;\n}\n\nexport interface ColumnProps {\n after?: string;\n before?: string;\n cell?: string | ReactElement;\n className?: string;\n truncate?: boolean;\n header?: string | ReactElement;\n hideable?: boolean;\n name: string;\n path?: string;\n remove?: boolean;\n resizable?: boolean;\n size?: number;\n sortable?: boolean;\n visible?: boolean;\n}\n\nconst BaseColumn: React.FC<ColumnProps> = ({\n after = undefined,\n before = undefined,\n cell,\n className = undefined,\n header = undefined,\n hideable = true,\n truncate = true,\n name,\n path = \"\",\n remove = false,\n resizable = true,\n size = 100,\n sortable = false,\n visible = true\n}) => {\n const getId = useIdGenerator(\"tableColumn\");\n\n const placeAfter = after !== undefined ? getId(after) : undefined;\n const placeBefore = before !== undefined ? getId(before) : undefined;\n\n return (\n <Property id=\"table\" name={\"table\"}>\n <Property\n id={getId(name)}\n name={\"columns\"}\n remove={remove}\n array={true}\n before={placeBefore}\n after={placeAfter}\n >\n <Property id={getId(name, \"name\")} name={\"name\"} value={name} />\n <Property id={getId(name, \"path\")} name={\"path\"} value={path} />\n <Property id={getId(name, \"sortable\")} name={\"sortable\"} value={sortable} />\n <Property id={getId(name, \"resizable\")} name={\"resizable\"} value={resizable} />\n <Property id={getId(name, \"truncate\")} name={\"truncate\"} value={truncate} />\n <Property id={getId(name, \"hideable\")} name={\"hideable\"} value={hideable} />\n <Property id={getId(name, \"size\")} name={\"size\"} value={size} />\n <Property id={getId(name, \"visible\")} name={\"visible\"} value={visible} />\n {header ? (\n <Property id={getId(name, \"header\")} name={\"header\"} value={header} />\n ) : null}\n {cell ? <Property id={getId(name, \"cell\")} name={\"cell\"} value={cell} /> : null}\n {className ? (\n <Property id={getId(name, \"className\")} name={\"className\"} value={className} />\n ) : null}\n </Property>\n </Property>\n );\n};\n\nconst isFolderRow = (row: TableRow): row is FolderTableRow => {\n return row.$type === \"FOLDER\";\n};\n\nexport const Column = Object.assign(BaseColumn, { isFolderRow, createUseTableRow });\n"],"names":["BaseColumn","after","before","cell","className","header","hideable","truncate","name","path","remove","resizable","size","sortable","visible","getId","useIdGenerator","placeAfter","undefined","placeBefore","Property","isFolderRow","row","Column","Object","createUseTableRow"],"mappings":";;;AAoCA,MAAMA,aAAoC,CAAC,EACvCC,KAAiB,EACjBC,MAAkB,EAClBC,IAAI,EACJC,SAAqB,EACrBC,MAAkB,EAClBC,WAAW,IAAI,EACfC,WAAW,IAAI,EACfC,IAAI,EACJC,OAAO,EAAE,EACTC,SAAS,KAAK,EACdC,YAAY,IAAI,EAChBC,OAAO,GAAG,EACVC,WAAW,KAAK,EAChBC,UAAU,IAAI,EACjB;IACG,MAAMC,QAAQC,eAAe;IAE7B,MAAMC,aAAahB,AAAUiB,WAAVjB,QAAsBc,MAAMd,SAASiB;IACxD,MAAMC,cAAcjB,AAAWgB,WAAXhB,SAAuBa,MAAMb,UAAUgB;IAE3D,OAAO,WAAP,GACI,oBAACE,UAAQA;QAAC,IAAG;QAAQ,MAAM;qBACvB,oBAACA,UAAQA;QACL,IAAIL,MAAMP;QACV,MAAM;QACN,QAAQE;QACR,OAAO;QACP,QAAQS;QACR,OAAOF;qBAEP,oBAACG,UAAQA;QAAC,IAAIL,MAAMP,MAAM;QAAS,MAAM;QAAQ,OAAOA;sBACxD,oBAACY,UAAQA;QAAC,IAAIL,MAAMP,MAAM;QAAS,MAAM;QAAQ,OAAOC;sBACxD,oBAACW,UAAQA;QAAC,IAAIL,MAAMP,MAAM;QAAa,MAAM;QAAY,OAAOK;sBAChE,oBAACO,UAAQA;QAAC,IAAIL,MAAMP,MAAM;QAAc,MAAM;QAAa,OAAOG;sBAClE,oBAACS,UAAQA;QAAC,IAAIL,MAAMP,MAAM;QAAa,MAAM;QAAY,OAAOD;sBAChE,oBAACa,UAAQA;QAAC,IAAIL,MAAMP,MAAM;QAAa,MAAM;QAAY,OAAOF;sBAChE,oBAACc,UAAQA;QAAC,IAAIL,MAAMP,MAAM;QAAS,MAAM;QAAQ,OAAOI;sBACxD,oBAACQ,UAAQA;QAAC,IAAIL,MAAMP,MAAM;QAAY,MAAM;QAAW,OAAOM;QAC7DT,SAAS,WAATA,GACG,oBAACe,UAAQA;QAAC,IAAIL,MAAMP,MAAM;QAAW,MAAM;QAAU,OAAOH;SAC5D,MACHF,OAAO,WAAPA,GAAO,oBAACiB,UAAQA;QAAC,IAAIL,MAAMP,MAAM;QAAS,MAAM;QAAQ,OAAOL;SAAW,MAC1EC,YAAY,WAAZA,GACG,oBAACgB,UAAQA;QAAC,IAAIL,MAAMP,MAAM;QAAc,MAAM;QAAa,OAAOJ;SAClE;AAIpB;AAEA,MAAMiB,cAAc,CAACC,MACVA,AAAc,aAAdA,IAAI,KAAK;AAGb,MAAMC,SAASC,OAAO,MAAM,CAACxB,YAAY;IAAEqB,aAAAA;IAAaI,mBAAiBA;AAAC"}
1
+ {"version":3,"file":"config/table/Column.js","sources":["../../../src/config/table/Column.tsx"],"sourcesContent":["import { Column as BaseColumn } from \"@webiny/app-admin/config/table/Column.js\";\nimport type { TableRow } from \"~/table.types.js\";\nimport type { FolderTableRow } from \"~/table.types.js\";\n\nexport type { ColumnConfig, ColumnProps } from \"@webiny/app-admin/config/table/Column.js\";\n\nconst isFolderRow = (row: TableRow): row is FolderTableRow => {\n return row.$type === \"FOLDER\";\n};\n\nexport const Column = Object.assign(BaseColumn, { isFolderRow });\n"],"names":["isFolderRow","row","Column","Object","BaseColumn"],"mappings":";AAMA,MAAMA,cAAc,CAACC,MACVA,AAAc,aAAdA,IAAI,KAAK;AAGb,MAAMC,gBAASC,OAAO,MAAM,CAACC,QAAY;IAAEJ,aAAAA;AAAY"}
@@ -1,11 +1,2 @@
1
- import React from "react";
2
- export interface SortingConfig {
3
- field: string;
4
- order: "asc" | "desc";
5
- }
6
- export interface SortingProps {
7
- name: string;
8
- field: string;
9
- order?: "asc" | "desc";
10
- }
11
- export declare const Sorting: ({ name, field, order }: SortingProps) => React.JSX.Element;
1
+ export { Sorting } from "@webiny/app-admin/config/table/Sorting.js";
2
+ export type { SortingConfig, SortingProps } from "@webiny/app-admin/config/table/Sorting.js";
@@ -1,28 +1 @@
1
- import react from "react";
2
- import { Property, useIdGenerator } from "@webiny/react-properties";
3
- const Sorting = ({ name, field, order = "desc" })=>{
4
- const getId = useIdGenerator("tableSorting");
5
- return /*#__PURE__*/ react.createElement(Property, {
6
- id: "table",
7
- name: "table"
8
- }, /*#__PURE__*/ react.createElement(Property, {
9
- id: getId(name),
10
- name: "sorting",
11
- array: true
12
- }, /*#__PURE__*/ react.createElement(Property, {
13
- id: getId(name, "name"),
14
- name: "name",
15
- value: name
16
- }), /*#__PURE__*/ react.createElement(Property, {
17
- id: getId(name, "field"),
18
- name: "field",
19
- value: field
20
- }), /*#__PURE__*/ react.createElement(Property, {
21
- id: getId(name, "order"),
22
- name: "order",
23
- value: order
24
- })));
25
- };
26
- export { Sorting };
27
-
28
- //# sourceMappingURL=Sorting.js.map
1
+ export { Sorting } from "@webiny/app-admin/config/table/Sorting.js";
@@ -5,14 +5,10 @@ export interface TableConfig {
5
5
  sorting: SortingConfig[];
6
6
  }
7
7
  export declare const Table: {
8
- Column: import("react").FC<import("./Column.js").ColumnProps> & {
9
- isFolderRow: (row: import("../../table.types.js").TableRow) => row is import("../../table.types.js").FolderTableRow;
10
- createUseTableRow: <TBaseRow = Record<string, any>>() => {
11
- (): import("../../index.js").TableRowContextData<TBaseRow>;
12
- <TUserRow>(): import("../../index.js").TableRowContextData<TBaseRow & {
13
- data: TUserRow;
14
- }>;
15
- };
8
+ Column: import("react").FC<import("@webiny/app-admin/config/table/Column.js").ColumnProps> & {
9
+ createUseTableRow: typeof import("@webiny/app-admin/index.js").createUseTableRow;
10
+ } & {
11
+ isFolderRow: (row: import("@webiny/app-admin/index.js").TableRow) => row is import("../../table.types.js").FolderTableRow;
16
12
  };
17
- Sorting: ({ name, field, order }: import("./Sorting.js").SortingProps) => import("react").JSX.Element;
13
+ Sorting: ({ name, field, order }: import("@webiny/app-admin/config/table/Sorting.js").SortingProps) => React.JSX.Element;
18
14
  };
@@ -1,4 +1 @@
1
- export { AcoAppProvider as AcoProvider, type AcoAppProviderProps } from "../contexts/app.js";
2
1
  export { FolderProvider, type FolderContext } from "./folder.js";
3
- export { NavigateFolderProvider, type NavigateFolderContext, type NavigateFolderProviderProps } from "./navigateFolder.js";
4
- export { SearchRecordsProvider, type SearchRecordsContext, type ListRecordsParams } from "./records.js";
package/contexts/index.js CHANGED
@@ -1,4 +1 @@
1
- export { AcoAppProvider as AcoProvider } from "./app.js";
2
1
  export { FolderProvider } from "./folder.js";
3
- export { NavigateFolderProvider } from "./navigateFolder.js";
4
- export { SearchRecordsProvider } from "./records.js";
@@ -38,6 +38,11 @@ const ListItemMeta = ({ permission, target, targetsList, onRemoveAccess, onUpdat
38
38
  disabled = false;
39
39
  removePermissionDisabled = true;
40
40
  }
41
+ if (permission.plugin) {
42
+ message = "Defined in code and cannot be changed here.";
43
+ disabled = true;
44
+ removePermissionDisabled = true;
45
+ }
41
46
  if (identity.id === target.id) {
42
47
  message = "You can't change your own permissions.";
43
48
  if (permission.inheritedFrom?.startsWith("team:")) {
@@ -1 +1 @@
1
- {"version":3,"file":"dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemMeta.js","sources":["../../../../src/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemMeta.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { ReactComponent as More } from \"@webiny/icons/arrow_drop_down.svg\";\nimport { Button, DropdownMenu, Text, Tooltip } from \"@webiny/admin-ui\";\nimport { useSecurity } from \"@webiny/app-admin\";\nimport type { FolderAccessLevel, FolderLevelPermissionsTarget, FolderPermission } from \"~/types.js\";\n\nconst TARGET_LEVELS = [\n {\n id: \"no-access\",\n label: \"No Access\",\n description: \"Cannot view or modify content\"\n },\n {\n id: \"viewer\",\n label: \"Viewer\",\n description: \"Can view content, but not modify it\"\n },\n {\n id: \"editor\",\n label: \"Editor\",\n description: \"Can view and modify content\"\n },\n {\n id: \"owner\",\n label: \"Owner\",\n description: \"Can edit and manage content permissions\"\n }\n];\n\ninterface ListItemMetaProps {\n permission: FolderPermission;\n target: FolderLevelPermissionsTarget;\n targetsList: FolderLevelPermissionsTarget[];\n onRemoveAccess: (params: { permission: FolderPermission }) => void;\n onUpdatePermission: (params: { permission: FolderPermission }) => void;\n}\n\nexport const ListItemMeta = ({\n permission,\n target,\n targetsList,\n onRemoveAccess,\n onUpdatePermission\n}: ListItemMetaProps) => {\n const { identity } = useSecurity();\n\n const currentLevel = useMemo(() => {\n return TARGET_LEVELS.find(level => level.id === permission.level)!;\n }, [permission.level]);\n\n const { isListDisabled, isRemovePermissionDisabled, tooltipMessage } = useMemo(() => {\n let message = null;\n let disabled = false;\n let removePermissionDisabled = false;\n\n if (permission.inheritedFrom?.startsWith(\"parent:\")) {\n message = \"Inherited from parent folder.\";\n disabled = false; // Still allow interaction, just inform user\n removePermissionDisabled = true;\n }\n\n if (identity!.id === target.id) {\n message = \"You can't change your own permissions.\";\n if (permission.inheritedFrom?.startsWith(\"team:\")) {\n const team = targetsList.find(t => t.target === permission.inheritedFrom);\n message += \" Access to this folder is managed by a team\";\n if (team) {\n message += ` (${team.name})`;\n }\n message += \".\";\n }\n disabled = true;\n removePermissionDisabled = true;\n }\n\n return {\n isListDisabled: disabled,\n isRemovePermissionDisabled: removePermissionDisabled,\n tooltipMessage: message\n };\n }, [permission, identity, target, targetsList]);\n\n const handle = useMemo(() => {\n let handle = (\n <Button\n variant={\"ghost\"}\n disabled={!!isListDisabled}\n text={currentLevel.label}\n icon={<More />}\n iconPosition={\"end\"}\n />\n );\n\n if (tooltipMessage) {\n handle = <Tooltip content={tooltipMessage} trigger={handle} />;\n }\n\n return handle;\n }, [tooltipMessage, isListDisabled, currentLevel.label]);\n\n return (\n <DropdownMenu trigger={handle}>\n {TARGET_LEVELS.map(level => (\n <DropdownMenu.CheckboxItem\n key={level.id}\n checked={currentLevel.id === level.id}\n text={\n <div>\n <Text as={\"div\"}>{level.label}</Text>\n <Text as={\"div\"} size={\"sm\"} className={\"text-neutral-strong\"}>\n {level.description}\n </Text>\n </div>\n }\n onClick={() => {\n // Needed to do this with a short delay because of a visual glitch.\n setTimeout(() => {\n onUpdatePermission({\n permission: {\n ...permission,\n level: level.id as FolderAccessLevel\n }\n });\n }, 75);\n }}\n />\n ))}\n <DropdownMenu.Separator />\n <DropdownMenu.Item\n onClick={() => onRemoveAccess({ permission })}\n text={\"Remove permission\"}\n disabled={isRemovePermissionDisabled}\n />\n </DropdownMenu>\n );\n};\n"],"names":["TARGET_LEVELS","ListItemMeta","permission","target","targetsList","onRemoveAccess","onUpdatePermission","identity","useSecurity","currentLevel","useMemo","level","isListDisabled","isRemovePermissionDisabled","tooltipMessage","message","disabled","removePermissionDisabled","team","t","handle","Button","More","Tooltip","DropdownMenu","Text","setTimeout"],"mappings":";;;;AAMA,MAAMA,gBAAgB;IAClB;QACI,IAAI;QACJ,OAAO;QACP,aAAa;IACjB;IACA;QACI,IAAI;QACJ,OAAO;QACP,aAAa;IACjB;IACA;QACI,IAAI;QACJ,OAAO;QACP,aAAa;IACjB;IACA;QACI,IAAI;QACJ,OAAO;QACP,aAAa;IACjB;CACH;AAUM,MAAMC,eAAe,CAAC,EACzBC,UAAU,EACVC,MAAM,EACNC,WAAW,EACXC,cAAc,EACdC,kBAAkB,EACF;IAChB,MAAM,EAAEC,QAAQ,EAAE,GAAGC;IAErB,MAAMC,eAAeC,QAAQ,IAClBV,cAAc,IAAI,CAACW,CAAAA,QAASA,MAAM,EAAE,KAAKT,WAAW,KAAK,GACjE;QAACA,WAAW,KAAK;KAAC;IAErB,MAAM,EAAEU,cAAc,EAAEC,0BAA0B,EAAEC,cAAc,EAAE,GAAGJ,QAAQ;QAC3E,IAAIK,UAAU;QACd,IAAIC,WAAW;QACf,IAAIC,2BAA2B;QAE/B,IAAIf,WAAW,aAAa,EAAE,WAAW,YAAY;YACjDa,UAAU;YACVC,WAAW;YACXC,2BAA2B;QAC/B;QAEA,IAAIV,SAAU,EAAE,KAAKJ,OAAO,EAAE,EAAE;YAC5BY,UAAU;YACV,IAAIb,WAAW,aAAa,EAAE,WAAW,UAAU;gBAC/C,MAAMgB,OAAOd,YAAY,IAAI,CAACe,CAAAA,IAAKA,EAAE,MAAM,KAAKjB,WAAW,aAAa;gBACxEa,WAAW;gBACX,IAAIG,MACAH,WAAW,CAAC,EAAE,EAAEG,KAAK,IAAI,CAAC,CAAC,CAAC;gBAEhCH,WAAW;YACf;YACAC,WAAW;YACXC,2BAA2B;QAC/B;QAEA,OAAO;YACH,gBAAgBD;YAChB,4BAA4BC;YAC5B,gBAAgBF;QACpB;IACJ,GAAG;QAACb;QAAYK;QAAUJ;QAAQC;KAAY;IAE9C,MAAMgB,SAASV,QAAQ;QACnB,IAAIU,SAAS,WAATA,GACA,oBAACC,QAAMA;YACH,SAAS;YACT,UAAU,CAAC,CAACT;YACZ,MAAMH,aAAa,KAAK;YACxB,oBAAM,oBAACa,gBAAIA;YACX,cAAc;;QAItB,IAAIR,gBACAM,SAAS,WAATA,GAAS,oBAACG,SAAOA;YAAC,SAAST;YAAgB,SAASM;;QAGxD,OAAOA;IACX,GAAG;QAACN;QAAgBF;QAAgBH,aAAa,KAAK;KAAC;IAEvD,OAAO,WAAP,GACI,oBAACe,cAAYA;QAAC,SAASJ;OAClBpB,cAAc,GAAG,CAACW,CAAAA,QAAAA,WAAAA,GACf,oBAACa,aAAa,YAAY;YACtB,KAAKb,MAAM,EAAE;YACb,SAASF,aAAa,EAAE,KAAKE,MAAM,EAAE;YACrC,oBACI,oBAAC,2BACG,oBAACc,MAAIA;gBAAC,IAAI;eAAQd,MAAM,KAAK,iBAC7B,oBAACc,MAAIA;gBAAC,IAAI;gBAAO,MAAM;gBAAM,WAAW;eACnCd,MAAM,WAAW;YAI9B,SAAS;gBAELe,WAAW;oBACPpB,mBAAmB;wBACf,YAAY;4BACR,GAAGJ,UAAU;4BACb,OAAOS,MAAM,EAAE;wBACnB;oBACJ;gBACJ,GAAG;YACP;2BAGR,oBAACa,aAAa,SAAS,uBACvB,oBAACA,aAAa,IAAI;QACd,SAAS,IAAMnB,eAAe;gBAAEH;YAAW;QAC3C,MAAM;QACN,UAAUW;;AAI1B"}
1
+ {"version":3,"file":"dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemMeta.js","sources":["../../../../src/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemMeta.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { ReactComponent as More } from \"@webiny/icons/arrow_drop_down.svg\";\nimport { Button, DropdownMenu, Text, Tooltip } from \"@webiny/admin-ui\";\nimport { useSecurity } from \"@webiny/app-admin\";\nimport type { FolderAccessLevel, FolderLevelPermissionsTarget, FolderPermission } from \"~/types.js\";\n\nconst TARGET_LEVELS = [\n {\n id: \"no-access\",\n label: \"No Access\",\n description: \"Cannot view or modify content\"\n },\n {\n id: \"viewer\",\n label: \"Viewer\",\n description: \"Can view content, but not modify it\"\n },\n {\n id: \"editor\",\n label: \"Editor\",\n description: \"Can view and modify content\"\n },\n {\n id: \"owner\",\n label: \"Owner\",\n description: \"Can edit and manage content permissions\"\n }\n];\n\ninterface ListItemMetaProps {\n permission: FolderPermission;\n target: FolderLevelPermissionsTarget;\n targetsList: FolderLevelPermissionsTarget[];\n onRemoveAccess: (params: { permission: FolderPermission }) => void;\n onUpdatePermission: (params: { permission: FolderPermission }) => void;\n}\n\nexport const ListItemMeta = ({\n permission,\n target,\n targetsList,\n onRemoveAccess,\n onUpdatePermission\n}: ListItemMetaProps) => {\n const { identity } = useSecurity();\n\n const currentLevel = useMemo(() => {\n return TARGET_LEVELS.find(level => level.id === permission.level)!;\n }, [permission.level]);\n\n const { isListDisabled, isRemovePermissionDisabled, tooltipMessage } = useMemo(() => {\n let message = null;\n let disabled = false;\n let removePermissionDisabled = false;\n\n if (permission.inheritedFrom?.startsWith(\"parent:\")) {\n message = \"Inherited from parent folder.\";\n disabled = false; // Still allow interaction, just inform user\n removePermissionDisabled = true;\n }\n\n if (permission.plugin) {\n message = \"Defined in code and cannot be changed here.\";\n disabled = true;\n removePermissionDisabled = true;\n }\n\n if (identity!.id === target.id) {\n message = \"You can't change your own permissions.\";\n if (permission.inheritedFrom?.startsWith(\"team:\")) {\n const team = targetsList.find(t => t.target === permission.inheritedFrom);\n message += \" Access to this folder is managed by a team\";\n if (team) {\n message += ` (${team.name})`;\n }\n message += \".\";\n }\n disabled = true;\n removePermissionDisabled = true;\n }\n\n return {\n isListDisabled: disabled,\n isRemovePermissionDisabled: removePermissionDisabled,\n tooltipMessage: message\n };\n }, [permission, identity, target, targetsList]);\n\n const handle = useMemo(() => {\n let handle = (\n <Button\n variant={\"ghost\"}\n disabled={!!isListDisabled}\n text={currentLevel.label}\n icon={<More />}\n iconPosition={\"end\"}\n />\n );\n\n if (tooltipMessage) {\n handle = <Tooltip content={tooltipMessage} trigger={handle} />;\n }\n\n return handle;\n }, [tooltipMessage, isListDisabled, currentLevel.label]);\n\n return (\n <DropdownMenu trigger={handle}>\n {TARGET_LEVELS.map(level => (\n <DropdownMenu.CheckboxItem\n key={level.id}\n checked={currentLevel.id === level.id}\n text={\n <div>\n <Text as={\"div\"}>{level.label}</Text>\n <Text as={\"div\"} size={\"sm\"} className={\"text-neutral-strong\"}>\n {level.description}\n </Text>\n </div>\n }\n onClick={() => {\n // Needed to do this with a short delay because of a visual glitch.\n setTimeout(() => {\n onUpdatePermission({\n permission: {\n ...permission,\n level: level.id as FolderAccessLevel\n }\n });\n }, 75);\n }}\n />\n ))}\n <DropdownMenu.Separator />\n <DropdownMenu.Item\n onClick={() => onRemoveAccess({ permission })}\n text={\"Remove permission\"}\n disabled={isRemovePermissionDisabled}\n />\n </DropdownMenu>\n );\n};\n"],"names":["TARGET_LEVELS","ListItemMeta","permission","target","targetsList","onRemoveAccess","onUpdatePermission","identity","useSecurity","currentLevel","useMemo","level","isListDisabled","isRemovePermissionDisabled","tooltipMessage","message","disabled","removePermissionDisabled","team","t","handle","Button","More","Tooltip","DropdownMenu","Text","setTimeout"],"mappings":";;;;AAMA,MAAMA,gBAAgB;IAClB;QACI,IAAI;QACJ,OAAO;QACP,aAAa;IACjB;IACA;QACI,IAAI;QACJ,OAAO;QACP,aAAa;IACjB;IACA;QACI,IAAI;QACJ,OAAO;QACP,aAAa;IACjB;IACA;QACI,IAAI;QACJ,OAAO;QACP,aAAa;IACjB;CACH;AAUM,MAAMC,eAAe,CAAC,EACzBC,UAAU,EACVC,MAAM,EACNC,WAAW,EACXC,cAAc,EACdC,kBAAkB,EACF;IAChB,MAAM,EAAEC,QAAQ,EAAE,GAAGC;IAErB,MAAMC,eAAeC,QAAQ,IAClBV,cAAc,IAAI,CAACW,CAAAA,QAASA,MAAM,EAAE,KAAKT,WAAW,KAAK,GACjE;QAACA,WAAW,KAAK;KAAC;IAErB,MAAM,EAAEU,cAAc,EAAEC,0BAA0B,EAAEC,cAAc,EAAE,GAAGJ,QAAQ;QAC3E,IAAIK,UAAU;QACd,IAAIC,WAAW;QACf,IAAIC,2BAA2B;QAE/B,IAAIf,WAAW,aAAa,EAAE,WAAW,YAAY;YACjDa,UAAU;YACVC,WAAW;YACXC,2BAA2B;QAC/B;QAEA,IAAIf,WAAW,MAAM,EAAE;YACnBa,UAAU;YACVC,WAAW;YACXC,2BAA2B;QAC/B;QAEA,IAAIV,SAAU,EAAE,KAAKJ,OAAO,EAAE,EAAE;YAC5BY,UAAU;YACV,IAAIb,WAAW,aAAa,EAAE,WAAW,UAAU;gBAC/C,MAAMgB,OAAOd,YAAY,IAAI,CAACe,CAAAA,IAAKA,EAAE,MAAM,KAAKjB,WAAW,aAAa;gBACxEa,WAAW;gBACX,IAAIG,MACAH,WAAW,CAAC,EAAE,EAAEG,KAAK,IAAI,CAAC,CAAC,CAAC;gBAEhCH,WAAW;YACf;YACAC,WAAW;YACXC,2BAA2B;QAC/B;QAEA,OAAO;YACH,gBAAgBD;YAChB,4BAA4BC;YAC5B,gBAAgBF;QACpB;IACJ,GAAG;QAACb;QAAYK;QAAUJ;QAAQC;KAAY;IAE9C,MAAMgB,SAASV,QAAQ;QACnB,IAAIU,SAAS,WAATA,GACA,oBAACC,QAAMA;YACH,SAAS;YACT,UAAU,CAAC,CAACT;YACZ,MAAMH,aAAa,KAAK;YACxB,oBAAM,oBAACa,gBAAIA;YACX,cAAc;;QAItB,IAAIR,gBACAM,SAAS,WAATA,GAAS,oBAACG,SAAOA;YAAC,SAAST;YAAgB,SAASM;;QAGxD,OAAOA;IACX,GAAG;QAACN;QAAgBF;QAAgBH,aAAa,KAAK;KAAC;IAEvD,OAAO,WAAP,GACI,oBAACe,cAAYA;QAAC,SAASJ;OAClBpB,cAAc,GAAG,CAACW,CAAAA,QAAAA,WAAAA,GACf,oBAACa,aAAa,YAAY;YACtB,KAAKb,MAAM,EAAE;YACb,SAASF,aAAa,EAAE,KAAKE,MAAM,EAAE;YACrC,oBACI,oBAAC,2BACG,oBAACc,MAAIA;gBAAC,IAAI;eAAQd,MAAM,KAAK,iBAC7B,oBAACc,MAAIA;gBAAC,IAAI;gBAAO,MAAM;gBAAM,WAAW;eACnCd,MAAM,WAAW;YAI9B,SAAS;gBAELe,WAAW;oBACPpB,mBAAmB;wBACf,YAAY;4BACR,GAAGJ,UAAU;4BACb,OAAOS,MAAM,EAAE;wBACnB;oBACJ;gBACJ,GAAG;YACP;2BAGR,oBAACa,aAAa,SAAS,uBACvB,oBAACA,aAAa,IAAI;QACd,SAAS,IAAMnB,eAAe;gBAAEH;YAAW;QAC3C,MAAM;QACN,UAAUW;;AAI1B"}
@@ -1 +1 @@
1
- export declare const LIST_FOLDER_LEVEL_PERMISSIONS_TARGETS: import("graphql").DocumentNode;
1
+ export declare const LIST_FOLDER_LEVEL_PERMISSIONS_TARGETS = "\n query ListFolderLevelPermissionsTargets {\n aco {\n listFolderLevelPermissionsTargets {\n data {\n id\n type\n target\n name\n meta\n }\n error {\n code\n data\n message\n }\n }\n }\n }\n";
@@ -1,5 +1,4 @@
1
- import graphql_tag from "graphql-tag";
2
- const LIST_FOLDER_LEVEL_PERMISSIONS_TARGETS = graphql_tag`
1
+ const LIST_FOLDER_LEVEL_PERMISSIONS_TARGETS = `
3
2
  query ListFolderLevelPermissionsTargets {
4
3
  aco {
5
4
  listFolderLevelPermissionsTargets {
@@ -1 +1 @@
1
- {"version":3,"file":"dialogs/DialogSetPermissions/graphql.js","sources":["../../../src/dialogs/DialogSetPermissions/graphql.ts"],"sourcesContent":["import gql from \"graphql-tag\";\n\nexport const LIST_FOLDER_LEVEL_PERMISSIONS_TARGETS = gql`\n query ListFolderLevelPermissionsTargets {\n aco {\n listFolderLevelPermissionsTargets {\n data {\n id\n type\n target\n name\n meta\n }\n error {\n code\n data\n message\n }\n }\n }\n }\n`;\n"],"names":["LIST_FOLDER_LEVEL_PERMISSIONS_TARGETS","gql"],"mappings":";AAEO,MAAMA,wCAAwCC,WAAG,CAAC;;;;;;;;;;;;;;;;;;;AAmBzD,CAAC"}
1
+ {"version":3,"file":"dialogs/DialogSetPermissions/graphql.js","sources":["../../../src/dialogs/DialogSetPermissions/graphql.ts"],"sourcesContent":["export const LIST_FOLDER_LEVEL_PERMISSIONS_TARGETS = /* GraphQL */ `\n query ListFolderLevelPermissionsTargets {\n aco {\n listFolderLevelPermissionsTargets {\n data {\n id\n type\n target\n name\n meta\n }\n error {\n code\n data\n message\n }\n }\n }\n }\n`;\n"],"names":["LIST_FOLDER_LEVEL_PERMISSIONS_TARGETS"],"mappings":"AAAO,MAAMA,wCAAsD,CAAC;;;;;;;;;;;;;;;;;;;AAmBpE,CAAC"}
@@ -3,6 +3,7 @@ interface ShowDialogParams {
3
3
  folder: FolderDto;
4
4
  targetFolder: FolderDto;
5
5
  onAccept: (folder: FolderDto, targetFolder: FolderDto) => Promise<void>;
6
+ onClose?: () => void;
6
7
  }
7
8
  interface UseConfirmMoveFolderDialogResponse {
8
9
  showDialog: (params: ShowDialogParams) => void;
@@ -1,14 +1,15 @@
1
1
  import { useDialogs } from "@webiny/app-admin";
2
2
  const useConfirmMoveFolderDialog = ()=>{
3
3
  const dialogs = useDialogs();
4
- const showDialog = ({ folder, targetFolder, onAccept })=>{
4
+ const showDialog = ({ folder, targetFolder, onAccept, onClose })=>{
5
5
  dialogs.showDialog({
6
6
  title: "Move folder",
7
7
  content: `You are about to move the folder "${folder.title}" into "${targetFolder.title}"! Are you sure you want to continue?`,
8
8
  acceptLabel: "Move folder",
9
9
  cancelLabel: "Cancel",
10
10
  loadingLabel: "Moving folder...",
11
- onAccept: ()=>onAccept(folder, targetFolder)
11
+ onAccept: ()=>onAccept(folder, targetFolder),
12
+ onClose
12
13
  });
13
14
  };
14
15
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"dialogs/useConfirmMoveFolderDialog.js","sources":["../../src/dialogs/useConfirmMoveFolderDialog.tsx"],"sourcesContent":["import { useDialogs } from \"@webiny/app-admin\";\nimport type { FolderDto } from \"~/domain/folder/FolderDto.js\";\n\ninterface ShowDialogParams {\n folder: FolderDto;\n targetFolder: FolderDto;\n onAccept: (folder: FolderDto, targetFolder: FolderDto) => Promise<void>;\n}\n\ninterface UseConfirmMoveFolderDialogResponse {\n showDialog: (params: ShowDialogParams) => void;\n}\n\nexport const useConfirmMoveFolderDialog = (): UseConfirmMoveFolderDialogResponse => {\n const dialogs = useDialogs();\n\n const showDialog = ({ folder, targetFolder, onAccept }: ShowDialogParams) => {\n dialogs.showDialog({\n title: \"Move folder\",\n content: `You are about to move the folder \"${folder.title}\" into \"${targetFolder.title}\"! Are you sure you want to continue?`,\n acceptLabel: \"Move folder\",\n cancelLabel: \"Cancel\",\n loadingLabel: \"Moving folder...\",\n onAccept: () => onAccept(folder, targetFolder)\n });\n };\n\n return {\n showDialog\n };\n};\n"],"names":["useConfirmMoveFolderDialog","dialogs","useDialogs","showDialog","folder","targetFolder","onAccept"],"mappings":";AAaO,MAAMA,6BAA6B;IACtC,MAAMC,UAAUC;IAEhB,MAAMC,aAAa,CAAC,EAAEC,MAAM,EAAEC,YAAY,EAAEC,QAAQ,EAAoB;QACpEL,QAAQ,UAAU,CAAC;YACf,OAAO;YACP,SAAS,CAAC,kCAAkC,EAAEG,OAAO,KAAK,CAAC,QAAQ,EAAEC,aAAa,KAAK,CAAC,qCAAqC,CAAC;YAC9H,aAAa;YACb,aAAa;YACb,cAAc;YACd,UAAU,IAAMC,SAASF,QAAQC;QACrC;IACJ;IAEA,OAAO;QACHF;IACJ;AACJ"}
1
+ {"version":3,"file":"dialogs/useConfirmMoveFolderDialog.js","sources":["../../src/dialogs/useConfirmMoveFolderDialog.tsx"],"sourcesContent":["import { useDialogs } from \"@webiny/app-admin\";\nimport type { FolderDto } from \"~/domain/folder/FolderDto.js\";\n\ninterface ShowDialogParams {\n folder: FolderDto;\n targetFolder: FolderDto;\n onAccept: (folder: FolderDto, targetFolder: FolderDto) => Promise<void>;\n onClose?: () => void;\n}\n\ninterface UseConfirmMoveFolderDialogResponse {\n showDialog: (params: ShowDialogParams) => void;\n}\n\nexport const useConfirmMoveFolderDialog = (): UseConfirmMoveFolderDialogResponse => {\n const dialogs = useDialogs();\n\n const showDialog = ({ folder, targetFolder, onAccept, onClose }: ShowDialogParams) => {\n dialogs.showDialog({\n title: \"Move folder\",\n content: `You are about to move the folder \"${folder.title}\" into \"${targetFolder.title}\"! Are you sure you want to continue?`,\n acceptLabel: \"Move folder\",\n cancelLabel: \"Cancel\",\n loadingLabel: \"Moving folder...\",\n onAccept: () => onAccept(folder, targetFolder),\n onClose\n });\n };\n\n return {\n showDialog\n };\n};\n"],"names":["useConfirmMoveFolderDialog","dialogs","useDialogs","showDialog","folder","targetFolder","onAccept","onClose"],"mappings":";AAcO,MAAMA,6BAA6B;IACtC,MAAMC,UAAUC;IAEhB,MAAMC,aAAa,CAAC,EAAEC,MAAM,EAAEC,YAAY,EAAEC,QAAQ,EAAEC,OAAO,EAAoB;QAC7EN,QAAQ,UAAU,CAAC;YACf,OAAO;YACP,SAAS,CAAC,kCAAkC,EAAEG,OAAO,KAAK,CAAC,QAAQ,EAAEC,aAAa,KAAK,CAAC,qCAAqC,CAAC;YAC9H,aAAa;YACb,aAAa;YACb,cAAc;YACd,UAAU,IAAMC,SAASF,QAAQC;YACjCE;QACJ;IACJ;IAEA,OAAO;QACHJ;IACJ;AACJ"}
@@ -1,24 +1,20 @@
1
1
  import react, { useCallback, useState } from "react";
2
- import slugify from "slugify";
2
+ import { useStringFormatter } from "@webiny/app-admin/features/stringFormatter/useStringFormatter.js";
3
3
  import { Grid, Input } from "@webiny/admin-ui";
4
4
  import { useDialogs, useSnackbar } from "@webiny/app-admin";
5
5
  import { Bind, useForm } from "@webiny/form";
6
6
  import { validation } from "@webiny/validation";
7
- import { Extensions, FolderTree } from "../components/index.js";
7
+ import { FolderTree } from "../components/index.js";
8
8
  import { ROOT_FOLDER } from "../constants.js";
9
9
  import { useCreateFolder } from "../features/folders/createFolder/index.js";
10
10
  import { ParentFolderField } from "./ParentFolderField.js";
11
11
  const FormComponent = ({ currentParentId = null })=>{
12
12
  const [parentId, setParentId] = useState(currentParentId);
13
13
  const form = useForm();
14
+ const stringFormatter = useStringFormatter();
14
15
  const generateSlug = ()=>{
15
16
  if (form.data.slug || !form.data.title) return;
16
- form.setValue("slug", slugify(form.data.title, {
17
- replacement: "-",
18
- lower: true,
19
- remove: /[*#?<>_{}[\]+~.()'"!:;@]/g,
20
- trim: false
21
- }));
17
+ form.setValue("slug", stringFormatter.slugify(form.data.title));
22
18
  };
23
19
  return /*#__PURE__*/ react.createElement(react.Fragment, null, /*#__PURE__*/ react.createElement(Grid, null, /*#__PURE__*/ react.createElement(Grid.Column, {
24
20
  span: 12
@@ -52,7 +48,7 @@ const FormComponent = ({ currentParentId = null })=>{
52
48
  setParentId(folder.id);
53
49
  onChange(folder.id === ROOT_FOLDER ? null : folder.id);
54
50
  }
55
- }))))), /*#__PURE__*/ react.createElement(Extensions, null));
51
+ }))))));
56
52
  };
57
53
  const useCreateDialog = ()=>{
58
54
  const dialogs = useDialogs();