@webiny/app-aco 6.0.0-alpha.0 → 6.0.0-alpha.2
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.
- package/components/AdvancedSearch/AdvancedSearch.d.ts +1 -1
- package/components/AdvancedSearch/AdvancedSearch.js.map +1 -1
- package/components/AdvancedSearch/AdvancedSearchPresenter.d.ts +1 -1
- package/components/AdvancedSearch/AdvancedSearchPresenter.js.map +1 -1
- package/components/AdvancedSearch/AdvancedSearchPresenter.test.js.map +1 -1
- package/components/AdvancedSearch/GraphQLInputMapper.d.ts +1 -1
- package/components/AdvancedSearch/GraphQLInputMapper.js.map +1 -1
- package/components/AdvancedSearch/GraphQLInputMapper.test.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/QueryBuilder.d.ts +3 -3
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/QueryBuilder.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/Filter.d.ts +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/Filter.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/InputField.d.ts +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/InputField.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawer.d.ts +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawer.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawerPresenter.d.ts +3 -2
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawerPresenter.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawerPresenter.test.js.map +1 -1
- package/components/AdvancedSearch/QueryManagerDialog/components/FilterList.d.ts +1 -1
- package/components/AdvancedSearch/QueryManagerDialog/components/FilterList.js.map +1 -1
- package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialog.d.ts +1 -1
- package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialog.js.map +1 -1
- package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialogPresenter.d.ts +2 -2
- package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialogPresenter.js.map +1 -1
- package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialogPresenter.test.js.map +1 -1
- package/components/AdvancedSearch/SelectedFilter/SelectedFilter.d.ts +1 -1
- package/components/AdvancedSearch/SelectedFilter/SelectedFilter.js.map +1 -1
- package/components/AdvancedSearch/domain/Field.d.ts +1 -1
- package/components/AdvancedSearch/domain/Field.js.map +1 -1
- package/components/AdvancedSearch/domain/FieldMapper.d.ts +1 -1
- package/components/AdvancedSearch/domain/FieldMapper.js.map +1 -1
- package/components/AdvancedSearch/domain/Filter.d.ts +24 -24
- package/components/AdvancedSearch/domain/FilterMapper.d.ts +1 -1
- package/components/AdvancedSearch/domain/FilterMapper.js.map +1 -1
- package/components/AdvancedSearch/domain/FilterRepository.d.ts +2 -2
- package/components/AdvancedSearch/domain/FilterRepository.js.map +1 -1
- package/components/AdvancedSearch/domain/FilterRepositoryFactory.d.ts +1 -1
- package/components/AdvancedSearch/domain/FilterRepositoryFactory.js.map +1 -1
- package/components/AdvancedSearch/gateways/FiltersGatewayInterface.d.ts +2 -2
- package/components/AdvancedSearch/gateways/FiltersGatewayInterface.js.map +1 -1
- package/components/AdvancedSearch/gateways/FiltersGraphQLGateway.d.ts +3 -3
- package/components/AdvancedSearch/gateways/FiltersGraphQLGateway.js.map +1 -1
- package/components/AdvancedSearch/gateways/filters.types.d.ts +2 -2
- package/components/AdvancedSearch/gateways/filters.types.js.map +1 -1
- package/components/AdvancedSearch/index.d.ts +2 -2
- package/components/AdvancedSearch/index.js.map +1 -1
- package/components/AdvancedSearch/useInputField.d.ts +1 -1
- package/components/AdvancedSearch/useInputField.js.map +1 -1
- package/components/FolderTree/List/List.d.ts +1 -1
- package/components/FolderTree/List/List.js +15 -1
- package/components/FolderTree/List/List.js.map +1 -1
- package/components/FolderTree/List/utils.d.ts +1 -1
- package/components/FolderTree/List/utils.js.map +1 -1
- package/components/FolderTree/MenuActions/MenuActions.js +2 -0
- package/components/FolderTree/MenuActions/MenuActions.js.map +1 -1
- package/components/FolderTree/index.d.ts +1 -1
- package/components/FolderTree/index.js.map +1 -1
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityDecorator.d.ts +2 -2
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityDecorator.js.map +1 -1
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityPresenter.d.ts +1 -1
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityPresenter.js.map +1 -1
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityPresenter.test.js.map +1 -1
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepository.d.ts +2 -2
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepository.js.map +1 -1
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepositoryFactory.d.ts +1 -1
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepositoryFactory.js.map +1 -1
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityUpdater.d.ts +2 -2
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityUpdater.js.map +1 -1
- package/components/Table/components/Table/Columns/Column.d.ts +2 -2
- package/components/Table/components/Table/Columns/Column.js.map +1 -1
- package/components/Table/components/Table/Columns/ColumnMapper.d.ts +2 -2
- package/components/Table/components/Table/Columns/ColumnMapper.js.map +1 -1
- package/components/Table/components/Table/Columns/ColumnsPresenter.d.ts +1 -1
- package/components/Table/components/Table/Columns/ColumnsPresenter.js.map +1 -1
- package/components/Table/components/Table/Columns/ColumnsPresenter.test.js.map +1 -1
- package/components/Table/components/Table/Columns/ColumnsRepository.d.ts +2 -2
- package/components/Table/components/Table/Columns/ColumnsRepository.js.map +1 -1
- package/components/Table/components/Table/Columns/ColumnsRepositoryFactory.d.ts +1 -1
- package/components/Table/components/Table/Columns/ColumnsRepositoryFactory.js.map +1 -1
- package/components/Table/components/Table/Columns/IColumnsRepository.d.ts +1 -1
- package/components/Table/components/Table/Columns/IColumnsRepository.js.map +1 -1
- package/components/Table/components/Table/Table.d.ts +4 -3
- package/components/Table/components/Table/Table.js.map +1 -1
- package/components/Table/components/Table/TableInner.d.ts +8 -6
- package/components/Table/components/Table/TableInner.js.map +1 -1
- package/components/Table/components/Table/TablePresenter.d.ts +1 -1
- package/components/Table/components/Table/TablePresenter.js.map +1 -1
- package/components/Table/components/Table/gateways/ColumnsVisibilityLocalStorageGateway.d.ts +1 -1
- package/components/Table/components/Table/gateways/ColumnsVisibilityLocalStorageGateway.js.map +1 -1
- package/components/Table/createTableData.d.ts +6 -6
- package/components/Table/createTableData.js +8 -8
- package/components/Table/createTableData.js.map +1 -1
- package/components/Table/useTableRow.d.ts +9 -4
- package/components/Table/useTableRow.js +10 -3
- package/components/Table/useTableRow.js.map +1 -1
- package/config/AcoConfig.d.ts +12 -7
- package/config/AcoConfig.js +0 -5
- package/config/AcoConfig.js.map +1 -1
- package/config/advanced-search/index.d.ts +1 -1
- package/config/advanced-search/index.js.map +1 -1
- package/config/folder/createFolderFieldDecoratorFactory.d.ts +1 -1
- package/config/folder/createFolderFieldDecoratorFactory.js.map +1 -1
- package/config/folder/index.d.ts +1 -1
- package/config/folder/index.js.map +1 -1
- package/config/record/index.d.ts +1 -1
- package/config/record/index.js.map +1 -1
- package/config/table/Column.d.ts +10 -4
- package/config/table/Column.js.map +1 -1
- package/config/table/index.d.ts +9 -4
- package/config/table/index.js.map +1 -1
- package/contexts/acoList.d.ts +1 -1
- package/contexts/acoList.js.map +1 -1
- package/contexts/app.d.ts +2 -2
- package/contexts/app.js.map +1 -1
- package/contexts/folder.d.ts +1 -1
- package/contexts/folder.js.map +1 -1
- package/contexts/folders.d.ts +2 -1
- package/contexts/folders.js.map +1 -1
- package/contexts/index.d.ts +1 -1
- package/contexts/index.js +1 -1
- package/contexts/index.js.map +1 -1
- package/contexts/records.d.ts +3 -2
- package/contexts/records.js.map +1 -1
- package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemGraphic.d.ts +1 -1
- package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemGraphic.js.map +1 -1
- package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemMeta.d.ts +1 -1
- package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemMeta.js.map +1 -1
- package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemText.d.ts +1 -1
- package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemText.js.map +1 -1
- package/dialogs/DialogSetPermissions/UsersTeamsSelection.d.ts +1 -1
- package/dialogs/DialogSetPermissions/UsersTeamsSelection.js.map +1 -1
- package/dialogs/useCreateDialog.js.map +1 -1
- package/dialogs/useDeleteDialog.d.ts +1 -1
- package/dialogs/useDeleteDialog.js.map +1 -1
- package/dialogs/useEditDialog.d.ts +1 -1
- package/dialogs/useEditDialog.js.map +1 -1
- package/dialogs/useMoveToFolderDialog.d.ts +3 -2
- package/dialogs/useMoveToFolderDialog.js.map +1 -1
- package/dialogs/useSetPermissionsDialog.d.ts +1 -1
- package/dialogs/useSetPermissionsDialog.js.map +1 -1
- package/features/folders/Folder.d.ts +1 -1
- package/features/folders/Folder.js.map +1 -1
- package/features/folders/cache/FoldersCacheFactory.d.ts +1 -1
- package/features/folders/cache/FoldersCacheFactory.js.map +1 -1
- package/features/folders/createFolder/CreateFolder.d.ts +2 -2
- package/features/folders/createFolder/CreateFolder.js.map +1 -1
- package/features/folders/createFolder/CreateFolderGqlGateway.d.ts +4 -4
- package/features/folders/createFolder/CreateFolderGqlGateway.js.map +1 -1
- package/features/folders/createFolder/CreateFolderRepository.d.ts +3 -3
- package/features/folders/createFolder/CreateFolderRepository.js.map +1 -1
- package/features/folders/createFolder/CreateFolderUseCase.d.ts +2 -2
- package/features/folders/createFolder/CreateFolderUseCase.js.map +1 -1
- package/features/folders/createFolder/CreateFolderUseCaseWithLoading.d.ts +2 -2
- package/features/folders/createFolder/CreateFolderUseCaseWithLoading.js.map +1 -1
- package/features/folders/createFolder/FolderDto.d.ts +1 -1
- package/features/folders/createFolder/FolderDto.js.map +1 -1
- package/features/folders/createFolder/FolderGqlDto.d.ts +1 -1
- package/features/folders/createFolder/FolderGqlDto.js.map +1 -1
- package/features/folders/createFolder/ICreateFolderGateway.d.ts +2 -2
- package/features/folders/createFolder/ICreateFolderGateway.js.map +1 -1
- package/features/folders/createFolder/ICreateFolderRepository.d.ts +1 -1
- package/features/folders/createFolder/ICreateFolderRepository.js.map +1 -1
- package/features/folders/createFolder/ICreateFolderUseCase.d.ts +1 -1
- package/features/folders/createFolder/ICreateFolderUseCase.js.map +1 -1
- package/features/folders/createFolder/useCreateFolder.d.ts +1 -1
- package/features/folders/createFolder/useCreateFolder.js.map +1 -1
- package/features/folders/deleteFolder/DeleteFolder.d.ts +2 -2
- package/features/folders/deleteFolder/DeleteFolder.js.map +1 -1
- package/features/folders/deleteFolder/DeleteFolderGqlGateway.d.ts +3 -3
- package/features/folders/deleteFolder/DeleteFolderGqlGateway.js.map +1 -1
- package/features/folders/deleteFolder/DeleteFolderRepository.d.ts +4 -4
- package/features/folders/deleteFolder/DeleteFolderRepository.js.map +1 -1
- package/features/folders/deleteFolder/DeleteFolderUseCase.d.ts +2 -2
- package/features/folders/deleteFolder/DeleteFolderUseCase.js.map +1 -1
- package/features/folders/deleteFolder/DeleteFolderUseCaseWithLoading.d.ts +2 -2
- package/features/folders/deleteFolder/DeleteFolderUseCaseWithLoading.js.map +1 -1
- package/features/folders/deleteFolder/IDeleteFolderRepository.d.ts +1 -1
- package/features/folders/deleteFolder/IDeleteFolderRepository.js.map +1 -1
- package/features/folders/deleteFolder/IDeleteFolderUseCase.d.ts +1 -1
- package/features/folders/deleteFolder/IDeleteFolderUseCase.js.map +1 -1
- package/features/folders/deleteFolder/useDeleteFolder.d.ts +1 -1
- package/features/folders/deleteFolder/useDeleteFolder.js.map +1 -1
- package/features/folders/getDescendantFolders/FolderDto.d.ts +1 -1
- package/features/folders/getDescendantFolders/FolderDto.js.map +1 -1
- package/features/folders/getDescendantFolders/GetDescendantFolders.d.ts +1 -1
- package/features/folders/getDescendantFolders/GetDescendantFolders.js.map +1 -1
- package/features/folders/getDescendantFolders/GetDescendantFoldersRepository.d.ts +3 -3
- package/features/folders/getDescendantFolders/GetDescendantFoldersRepository.js.map +1 -1
- package/features/folders/getDescendantFolders/GetDescendantFoldersUseCase.d.ts +2 -2
- package/features/folders/getDescendantFolders/GetDescendantFoldersUseCase.js.map +1 -1
- package/features/folders/getDescendantFolders/IGetDescendantFoldersRepository.d.ts +1 -1
- package/features/folders/getDescendantFolders/IGetDescendantFoldersRepository.js.map +1 -1
- package/features/folders/getDescendantFolders/IGetDescendantFoldersUseCase.d.ts +1 -1
- package/features/folders/getDescendantFolders/IGetDescendantFoldersUseCase.js.map +1 -1
- package/features/folders/getFolder/GetFolder.d.ts +2 -2
- package/features/folders/getFolder/GetFolder.js.map +1 -1
- package/features/folders/getFolder/GetFolderGqlGateway.d.ts +3 -3
- package/features/folders/getFolder/GetFolderGqlGateway.js.map +1 -1
- package/features/folders/getFolder/GetFolderRepository.d.ts +3 -3
- package/features/folders/getFolder/GetFolderRepository.js.map +1 -1
- package/features/folders/getFolder/GetFolderUseCase.d.ts +2 -2
- package/features/folders/getFolder/GetFolderUseCase.js.map +1 -1
- package/features/folders/getFolder/GetFolderUseCaseWithLoading.d.ts +2 -2
- package/features/folders/getFolder/GetFolderUseCaseWithLoading.js.map +1 -1
- package/features/folders/getFolder/IGetFolderGateway.d.ts +1 -1
- package/features/folders/getFolder/IGetFolderGateway.js.map +1 -1
- package/features/folders/getFolder/useGetFolder.d.ts +1 -1
- package/features/folders/getFolder/useGetFolder.js.map +1 -1
- package/features/folders/getFolderAncestors/FolderDto.d.ts +9 -0
- package/features/folders/getFolderAncestors/FolderDto.js +3 -0
- package/features/folders/getFolderAncestors/FolderDto.js.map +1 -0
- package/features/folders/getFolderAncestors/GetFolderAncestors.d.ts +4 -0
- package/features/folders/getFolderAncestors/GetFolderAncestors.js +12 -0
- package/features/folders/getFolderAncestors/GetFolderAncestors.js.map +1 -0
- package/features/folders/getFolderAncestors/GetFolderAncestors.test.d.ts +1 -0
- package/features/folders/getFolderAncestors/GetFolderAncestors.test.js +97 -0
- package/features/folders/getFolderAncestors/GetFolderAncestors.test.js.map +1 -0
- package/features/folders/getFolderAncestors/GetFolderAncestorsRepository.d.ts +7 -0
- package/features/folders/getFolderAncestors/GetFolderAncestorsRepository.js +25 -0
- package/features/folders/getFolderAncestors/GetFolderAncestorsRepository.js.map +1 -0
- package/features/folders/getFolderAncestors/GetFolderAncestorsUseCase.d.ts +14 -0
- package/features/folders/getFolderAncestors/GetFolderAncestorsUseCase.js +18 -0
- package/features/folders/getFolderAncestors/GetFolderAncestorsUseCase.js.map +1 -0
- package/features/folders/getFolderAncestors/IGetFolderAncestorsRepository.d.ts +4 -0
- package/features/folders/getFolderAncestors/IGetFolderAncestorsRepository.js +3 -0
- package/features/folders/getFolderAncestors/IGetFolderAncestorsRepository.js.map +1 -0
- package/features/folders/getFolderAncestors/IGetFolderAncestorsUseCase.d.ts +7 -0
- package/features/folders/getFolderAncestors/IGetFolderAncestorsUseCase.js +3 -0
- package/features/folders/getFolderAncestors/IGetFolderAncestorsUseCase.js.map +1 -0
- package/features/folders/getFolderAncestors/index.d.ts +1 -0
- package/features/folders/getFolderAncestors/index.js +3 -0
- package/features/folders/getFolderAncestors/index.js.map +1 -0
- package/features/folders/getFolderAncestors/useGetFolderAncestors.d.ts +3 -0
- package/features/folders/getFolderAncestors/useGetFolderAncestors.js +17 -0
- package/features/folders/getFolderAncestors/useGetFolderAncestors.js.map +1 -0
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsRepository.d.ts +1 -1
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCase.d.ts +1 -1
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCaseWithNamespace.d.ts +1 -1
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCaseWithNamespaceAndModelId.d.ts +1 -1
- package/features/folders/getFolderExtensionsFields/IGetFolderExtensionsFieldsRepository.d.ts +1 -1
- package/features/folders/getFolderExtensionsFields/IGetFolderExtensionsFieldsRepository.js.map +1 -1
- package/features/folders/getFolderExtensionsFields/IGetFolderExtensionsFieldsUseCase.d.ts +1 -1
- package/features/folders/getFolderExtensionsFields/IGetFolderExtensionsFieldsUseCase.js.map +1 -1
- package/features/folders/getFolderExtensionsFields/useGetFolderExtensionsFields.d.ts +1 -1
- package/features/folders/getFolderHierarchy/FolderDto.d.ts +2 -2
- package/features/folders/getFolderHierarchy/FolderDto.js.map +1 -1
- package/features/folders/getFolderHierarchy/FolderGqlDto.d.ts +1 -1
- package/features/folders/getFolderHierarchy/FolderGqlDto.js.map +1 -1
- package/features/folders/getFolderHierarchy/GetFolderHierarchy.d.ts +5 -5
- package/features/folders/getFolderHierarchy/GetFolderHierarchy.js.map +1 -1
- package/features/folders/getFolderHierarchy/GetFolderHierarchyGqlGateway.d.ts +3 -3
- package/features/folders/getFolderHierarchy/GetFolderHierarchyGqlGateway.js.map +1 -1
- package/features/folders/getFolderHierarchy/GetFolderHierarchyRepository.d.ts +3 -3
- package/features/folders/getFolderHierarchy/GetFolderHierarchyRepository.js.map +1 -1
- package/features/folders/getFolderHierarchy/GetFolderHierarchyUseCase.d.ts +2 -2
- package/features/folders/getFolderHierarchy/GetFolderHierarchyUseCase.js.map +1 -1
- package/features/folders/getFolderHierarchy/GetFolderHierarchyUseCaseWithLoading.d.ts +2 -2
- package/features/folders/getFolderHierarchy/GetFolderHierarchyUseCaseWithLoading.js.map +1 -1
- package/features/folders/getFolderHierarchy/IGetFolderHierarchyGateway.d.ts +1 -1
- package/features/folders/getFolderHierarchy/IGetFolderHierarchyGateway.js.map +1 -1
- package/features/folders/getFolderHierarchy/useGetFolderHierarchy.d.ts +1 -1
- package/features/folders/getFolderHierarchy/useGetFolderHierarchy.js.map +1 -1
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermission.d.ts +2 -2
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermission.js.map +1 -1
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionRepository.d.ts +4 -4
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionRepository.js.map +1 -1
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionUseCase.d.ts +1 -1
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionUseCase.js.map +1 -1
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionWithFlpUseCase.d.ts +2 -2
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionWithFlpUseCase.js.map +1 -1
- package/features/folders/getFolderLevelPermission/useGetFolderLevelPermission.d.ts +1 -1
- package/features/folders/getFolderLevelPermission/useGetFolderLevelPermission.js.map +1 -1
- package/features/folders/getFolderModel/FolderModelContext.js.map +1 -1
- package/features/folders/getFolderModel/FolderModelDto.d.ts +1 -1
- package/features/folders/getFolderModel/FolderModelDto.js.map +1 -1
- package/features/folders/getFolderModel/GetFolderModel.d.ts +3 -3
- package/features/folders/getFolderModel/GetFolderModel.js.map +1 -1
- package/features/folders/getFolderModel/GetFolderModelGqlGateway.d.ts +4 -4
- package/features/folders/getFolderModel/GetFolderModelGqlGateway.js.map +1 -1
- package/features/folders/getFolderModel/GetFolderModelRepository.d.ts +2 -2
- package/features/folders/getFolderModel/GetFolderModelRepository.js.map +1 -1
- package/features/folders/getFolderModel/GetFolderModelUseCase.d.ts +2 -2
- package/features/folders/getFolderModel/GetFolderModelUseCase.js.map +1 -1
- package/features/folders/getFolderModel/IGetFolderModelGateway.d.ts +1 -1
- package/features/folders/getFolderModel/IGetFolderModelGateway.js.map +1 -1
- package/features/folders/getFolderModel/IGetFolderModelRepository.d.ts +1 -1
- package/features/folders/getFolderModel/IGetFolderModelRepository.js.map +1 -1
- package/features/folders/index.d.ts +1 -0
- package/features/folders/index.js +1 -0
- package/features/folders/index.js.map +1 -1
- package/features/folders/listFolders/FolderDto.d.ts +2 -2
- package/features/folders/listFolders/FolderDto.js.map +1 -1
- package/features/folders/listFolders/FolderGqlDto.d.ts +1 -1
- package/features/folders/listFolders/FolderGqlDto.js.map +1 -1
- package/features/folders/listFolders/IListFoldersGateway.d.ts +1 -1
- package/features/folders/listFolders/IListFoldersGateway.js.map +1 -1
- package/features/folders/listFolders/ListFolders.d.ts +5 -5
- package/features/folders/listFolders/ListFolders.js.map +1 -1
- package/features/folders/listFolders/ListFoldersCompressedGqlGateway.d.ts +3 -3
- package/features/folders/listFolders/ListFoldersCompressedGqlGateway.js.map +1 -1
- package/features/folders/listFolders/ListFoldersGqlGateway.d.ts +3 -3
- package/features/folders/listFolders/ListFoldersGqlGateway.js.map +1 -1
- package/features/folders/listFolders/ListFoldersRepository.d.ts +3 -3
- package/features/folders/listFolders/ListFoldersRepository.js.map +1 -1
- package/features/folders/listFolders/ListFoldersUseCase.d.ts +2 -2
- package/features/folders/listFolders/ListFoldersUseCase.js.map +1 -1
- package/features/folders/listFolders/ListFoldersUseCaseWithLoading.d.ts +2 -2
- package/features/folders/listFolders/ListFoldersUseCaseWithLoading.js.map +1 -1
- package/features/folders/listFolders/useListFolders.d.ts +1 -1
- package/features/folders/listFolders/useListFolders.js.map +1 -1
- package/features/folders/listFoldersByParentIds/FolderDto.d.ts +2 -2
- package/features/folders/listFoldersByParentIds/FolderDto.js.map +1 -1
- package/features/folders/listFoldersByParentIds/FolderGqlDto.d.ts +1 -1
- package/features/folders/listFoldersByParentIds/FolderGqlDto.js.map +1 -1
- package/features/folders/listFoldersByParentIds/IListFoldersByParentIdsGateway.d.ts +1 -1
- package/features/folders/listFoldersByParentIds/IListFoldersByParentIdsGateway.js.map +1 -1
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIds.d.ts +5 -5
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIds.js.map +1 -1
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsGqlGateway.d.ts +3 -3
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsGqlGateway.js.map +1 -1
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsRepository.d.ts +3 -3
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsRepository.js.map +1 -1
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsRepositoryWithLoadedCache.d.ts +2 -2
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsRepositoryWithLoadedCache.js.map +1 -1
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCase.d.ts +2 -2
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCase.js.map +1 -1
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCaseWithLoading.d.ts +3 -3
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCaseWithLoading.js.map +1 -1
- package/features/folders/listFoldersByParentIds/useListFoldersByParentIds.d.ts +1 -1
- package/features/folders/listFoldersByParentIds/useListFoldersByParentIds.js.map +1 -1
- package/features/folders/updateFolder/FolderDto.d.ts +1 -1
- package/features/folders/updateFolder/FolderDto.js.map +1 -1
- package/features/folders/updateFolder/FolderGqlDto.d.ts +1 -1
- package/features/folders/updateFolder/FolderGqlDto.js.map +1 -1
- package/features/folders/updateFolder/IUpdateFolderGateway.d.ts +2 -2
- package/features/folders/updateFolder/IUpdateFolderGateway.js.map +1 -1
- package/features/folders/updateFolder/IUpdateFolderRepository.d.ts +1 -1
- package/features/folders/updateFolder/IUpdateFolderRepository.js.map +1 -1
- package/features/folders/updateFolder/IUpdateFolderUseCase.d.ts +1 -1
- package/features/folders/updateFolder/IUpdateFolderUseCase.js.map +1 -1
- package/features/folders/updateFolder/UpdateFolder.d.ts +2 -2
- package/features/folders/updateFolder/UpdateFolder.js.map +1 -1
- package/features/folders/updateFolder/UpdateFolder.test.js.map +1 -1
- package/features/folders/updateFolder/UpdateFolderGqlGateway.d.ts +4 -4
- package/features/folders/updateFolder/UpdateFolderGqlGateway.js.map +1 -1
- package/features/folders/updateFolder/UpdateFolderRepository.d.ts +3 -3
- package/features/folders/updateFolder/UpdateFolderRepository.js.map +1 -1
- package/features/folders/updateFolder/UpdateFolderRepositoryWithPathChange.d.ts +2 -2
- package/features/folders/updateFolder/UpdateFolderRepositoryWithPathChange.js.map +1 -1
- package/features/folders/updateFolder/UpdateFolderRepositoryWithPermissionsChange.d.ts +2 -2
- package/features/folders/updateFolder/UpdateFolderRepositoryWithPermissionsChange.js.map +1 -1
- package/features/folders/updateFolder/UpdateFolderUseCase.d.ts +2 -2
- package/features/folders/updateFolder/UpdateFolderUseCase.js.map +1 -1
- package/features/folders/updateFolder/UpdateFolderUseCaseWithLoading.d.ts +2 -2
- package/features/folders/updateFolder/UpdateFolderUseCaseWithLoading.js.map +1 -1
- package/features/folders/updateFolder/UpdateFolderUseCaseWithoutInheritedPermissions.d.ts +1 -1
- package/features/folders/updateFolder/UpdateFolderUseCaseWithoutInheritedPermissions.js.map +1 -1
- package/features/folders/updateFolder/useUpdateFolder.d.ts +1 -1
- package/features/folders/updateFolder/useUpdateFolder.js.map +1 -1
- package/graphql/app.gql.d.ts +1 -1
- package/graphql/app.gql.js.map +1 -1
- package/graphql/records/common.d.ts +1 -1
- package/graphql/records/common.js.map +1 -1
- package/graphql/records/createRecord.d.ts +1 -1
- package/graphql/records/createRecord.js.map +1 -1
- package/graphql/records/deleteRecord.d.ts +1 -1
- package/graphql/records/deleteRecord.js.map +1 -1
- package/graphql/records/getRecord.d.ts +1 -1
- package/graphql/records/getRecord.js.map +1 -1
- package/graphql/records/listRecords.d.ts +1 -1
- package/graphql/records/listRecords.js.map +1 -1
- package/graphql/records/listTags.d.ts +1 -1
- package/graphql/records/listTags.js.map +1 -1
- package/graphql/records/moveRecord.d.ts +1 -1
- package/graphql/records/moveRecord.js.map +1 -1
- package/graphql/records/types.d.ts +1 -1
- package/graphql/records/types.js.map +1 -1
- package/graphql/records/updateRecord.d.ts +1 -1
- package/graphql/records/updateRecord.js.map +1 -1
- package/handlers.d.ts +4 -4
- package/handlers.js.map +1 -1
- package/hooks/useAcoApp.d.ts +1 -1
- package/hooks/useAcoApp.js.map +1 -1
- package/hooks/useAcoList.d.ts +2 -2
- package/hooks/useAcoList.js.map +1 -1
- package/hooks/useRecords.d.ts +2 -2
- package/hooks/useRecords.js.map +1 -1
- package/hooks/useTags.d.ts +1 -1
- package/hooks/useTags.js.map +1 -1
- package/index.d.ts +2 -0
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/package.json +18 -18
- package/sorting.d.ts +1 -1
- package/sorting.js.map +1 -1
- package/table.types.d.ts +6 -4
- package/table.types.js.map +1 -1
- package/types.d.ts +2 -2
- package/types.js +0 -1
- package/types.js.map +1 -1
package/contexts/records.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useMemo","sortBy","unionBy","lodashMerge","apolloFetchingHandler","loadingHandler","createCreateRecord","createDeleteRecord","createGetRecord","createListRecords","createListTags","createMoveRecord","createUpdateRecord","validateOrGetDefaultDbSort","useAcoApp","parseIdentifier","useStateIfMounted","useAcoConfig","SearchRecordsContext","createContext","undefined","defaultLoading","INIT","LIST","LIST_MORE","GET","MOVE","CREATE","UPDATE","DELETE","mergeAndSortTags","oldTagItems","newTags","length","newTagItems","map","tag","mergedTagItems","getResponseData","response","mode","content","search","defaultMeta","totalCount","hasMoreItems","cursor","SearchRecordsProvider","children","app","client","model","table","fieldIds","columns","config","name","filter","Boolean","records","setRecords","tags","setTags","loading","setLoading","meta","setMeta","Object","create","GET_RECORD","LIST_RECORDS","UPDATE_RECORD","MOVE_RECORD","DELETE_RECORD","CREATE_RECORD","LIST_TAGS","id","modelId","context","addRecordToCache","record","prev","updateRecordInCache","recordId","index","findIndex","item","itemId","next","removeRecordFromCache","startsWith","listRecords","params","after","limit","sort","sorting","where","action","data","variables","query","fetchPolicy","Error","responseMeta","error","message","getRecord","entryId","code","createRecord","mutate","mutation","updateRecord","contextFolderId","location","title","result","moveRecord","folderId","deleteRecord","listTags","createElement","Provider","value"],"sources":["records.tsx"],"sourcesContent":["import React, { ReactNode, useMemo } from \"react\";\nimport sortBy from \"lodash/sortBy\";\nimport unionBy from \"lodash/unionBy\";\nimport lodashMerge from \"lodash/merge\";\nimport { apolloFetchingHandler, loadingHandler } from \"~/handlers\";\nimport {\n createCreateRecord,\n createDeleteRecord,\n createGetRecord,\n createListRecords,\n createListTags,\n createMoveRecord,\n createUpdateRecord\n} from \"~/graphql/records.gql\";\nimport {\n AcoAppMode,\n CreateSearchRecordResponse,\n CreateSearchRecordVariables,\n DeletableSearchRecordItem,\n DeleteSearchRecordResponse,\n DeleteSearchRecordVariables,\n GetSearchRecordQueryVariables,\n GetSearchRecordResponse,\n ListMeta,\n ListSearchRecordsQueryVariables,\n ListSearchRecordsResponse,\n ListTagsQueryVariables,\n ListTagsResponse,\n ListTagsWhereQueryVariables,\n Loading,\n LoadingActions,\n MovableSearchRecordItem,\n MoveSearchRecordResponse,\n MoveSearchRecordVariables,\n SearchRecordItem,\n TagItem,\n UpdateSearchRecordResponse,\n UpdateSearchRecordVariables\n} from \"~/types\";\nimport { validateOrGetDefaultDbSort } from \"~/sorting\";\nimport { useAcoApp } from \"~/hooks\";\nimport { parseIdentifier } from \"@webiny/utils\";\nimport { useStateIfMounted } from \"@webiny/app-admin\";\nimport { useAcoConfig } from \"~/config\";\n\ninterface ListTagsParams {\n where?: ListTagsWhereQueryVariables;\n}\n\nexport type ListRecordsParams = ListSearchRecordsQueryVariables;\n\ninterface SearchRecordsContext {\n records: SearchRecordItem[];\n tags: TagItem[];\n loading: Loading<LoadingActions>;\n meta: ListMeta;\n listRecords: (params: ListRecordsParams) => Promise<SearchRecordItem[]>;\n getRecord: (id: string) => Promise<SearchRecordItem | null>;\n createRecord: (record: Omit<SearchRecordItem, \"id\">) => Promise<SearchRecordItem>;\n updateRecord: (record: SearchRecordItem, contextFolderId?: string) => Promise<SearchRecordItem>;\n moveRecord: (record: MovableSearchRecordItem) => Promise<void>;\n deleteRecord(record: DeletableSearchRecordItem): Promise<true>;\n listTags: (params: ListTagsParams) => Promise<TagItem[]>;\n addRecordToCache: (record: any) => void;\n updateRecordInCache: (record: any) => void;\n removeRecordFromCache: (id: string) => void;\n}\n\nexport const SearchRecordsContext = React.createContext<SearchRecordsContext | undefined>(\n undefined\n);\n\ninterface Props {\n children: ReactNode;\n}\n\nconst defaultLoading: Record<LoadingActions, boolean> = {\n INIT: true,\n LIST: false,\n LIST_MORE: false,\n GET: false,\n MOVE: false,\n CREATE: false,\n UPDATE: false,\n DELETE: false\n};\n\nconst mergeAndSortTags = (oldTagItems: TagItem[], newTags: string[]): TagItem[] => {\n if (!newTags.length) {\n return oldTagItems;\n }\n\n const newTagItems = newTags.map((tag: string) => ({ tag })); // create TagItem[] from array of strings\n const mergedTagItems = unionBy(oldTagItems, newTagItems, \"tag\"); // merge the two arrays\n\n return sortBy(mergedTagItems, [\"tag\"]);\n};\n\nconst getResponseData = (response: any, mode: AcoAppMode): any => {\n if (mode === \"cms\") {\n return response?.content || {};\n }\n return response.search?.content || {};\n};\n\nconst defaultMeta: ListMeta = {\n totalCount: 0,\n hasMoreItems: false,\n cursor: null\n};\n\nexport const SearchRecordsProvider = ({ children }: Props) => {\n const { app, client, mode } = useAcoApp();\n const { model } = app;\n\n /**\n * Retrieve all `fieldIds` from the ACO configuration, considering field `name`:\n * The result is a deduplicated flat array of unique field IDs.\n */\n const { table } = useAcoConfig();\n const fieldIds = table.columns.map(config => config.name).filter(Boolean);\n\n const [records, setRecords] = useStateIfMounted<SearchRecordItem[]>([]);\n const [tags, setTags] = useStateIfMounted<TagItem[]>([]);\n const [loading, setLoading] = useStateIfMounted<Loading<LoadingActions>>(defaultLoading);\n const [meta, setMeta] = useStateIfMounted<ListMeta>(Object.create(defaultMeta));\n\n const {\n GET_RECORD,\n LIST_RECORDS,\n UPDATE_RECORD,\n MOVE_RECORD,\n DELETE_RECORD,\n CREATE_RECORD,\n LIST_TAGS\n } = useMemo(() => {\n return {\n LIST_RECORDS: createListRecords(model, mode, fieldIds),\n UPDATE_RECORD: createUpdateRecord(model, mode),\n MOVE_RECORD: createMoveRecord(model, mode),\n GET_RECORD: createGetRecord(model, mode),\n LIST_TAGS: createListTags(model, mode),\n DELETE_RECORD: createDeleteRecord(model, mode),\n CREATE_RECORD: createCreateRecord(model, mode)\n };\n }, [app.id, model.modelId, fieldIds]);\n\n const context = useMemo<SearchRecordsContext>(() => {\n return {\n records,\n tags,\n loading,\n meta,\n addRecordToCache: (record: any) => {\n setRecords(prev => {\n return [record, ...prev];\n });\n setMeta(meta => ({\n ...meta,\n totalCount: ++meta.totalCount\n }));\n },\n updateRecordInCache: (record: any) => {\n const { id: recordId } = parseIdentifier(record.id);\n\n setRecords(prev => {\n const index = prev.findIndex(item => {\n const { id: itemId } = parseIdentifier(item.id);\n return itemId === recordId;\n });\n\n if (index >= 0) {\n const next = [...prev];\n next[index] = lodashMerge({}, prev[index], record);\n return next;\n }\n return [record, ...prev];\n });\n },\n removeRecordFromCache: (id: string) => {\n setRecords(prev => {\n return prev.filter(\n record => record.id !== id && !record.id.startsWith(`${id}#`)\n );\n });\n setMeta(meta => ({\n ...meta,\n totalCount: --meta.totalCount\n }));\n },\n\n async listRecords(params) {\n const { after, limit, sort: sorting, search, where } = params;\n\n /**\n * Avoiding fetching records in case they have already been fetched.\n * This happens when visiting a list with all records loaded and receives \"after\" param.\n */\n const totalCount = meta?.totalCount || 0;\n if (after && records.length === totalCount) {\n return records;\n }\n\n const action = after ? \"LIST_MORE\" : \"LIST\";\n const sort = validateOrGetDefaultDbSort(sorting);\n\n const { data: response } = await apolloFetchingHandler<ListSearchRecordsResponse>(\n loadingHandler(action, setLoading),\n () => {\n const variables: ListSearchRecordsQueryVariables = {\n where,\n search,\n limit,\n after,\n sort\n };\n return client.query<\n ListSearchRecordsResponse,\n ListSearchRecordsQueryVariables\n >({\n query: LIST_RECORDS,\n variables,\n fetchPolicy: \"network-only\"\n });\n }\n );\n\n if (!response) {\n throw new Error(\"Could not fetch records - no response.\");\n }\n\n const { data, meta: responseMeta, error } = getResponseData(response, mode);\n\n if (!data || !responseMeta) {\n throw new Error(error?.message || \"Could not fetch records.\");\n }\n\n setRecords(prev => {\n // If there's no cursor, it means we're receiving a new list of records from scratch.\n if (!after) {\n return data;\n }\n\n return [...prev, ...data];\n });\n\n setMeta(() => responseMeta);\n\n setLoading(prev => {\n return {\n ...prev,\n INIT: false\n };\n });\n\n return data;\n },\n async getRecord(id) {\n if (!id) {\n throw new Error(\"Record `id` is mandatory\");\n }\n\n const { id: recordId } = parseIdentifier(id);\n\n const { data: response } = await apolloFetchingHandler<GetSearchRecordResponse>(\n loadingHandler(\"GET\", setLoading),\n () =>\n client.query<GetSearchRecordResponse, GetSearchRecordQueryVariables>({\n query: GET_RECORD,\n variables: { entryId: recordId },\n fetchPolicy: \"network-only\"\n })\n );\n\n if (!response) {\n throw new Error(`Could not fetch record \"${recordId}\" - no response.`);\n }\n\n const { data, error } = getResponseData(response, mode);\n\n if (error && error.code !== \"NOT_FOUND\") {\n throw new Error(\"Network error while syncing record\");\n }\n\n if (!data) {\n // No record found - must be deleted by previous operation\n setRecords(prev => {\n return prev.filter(record => record.id !== recordId);\n });\n setMeta(meta => ({\n ...meta,\n totalCount: --meta.totalCount\n }));\n return data;\n }\n setRecords(prev => {\n const index = prev.findIndex(record => record.id === recordId);\n\n // No record found in the list - must be added by previous operation\n if (index === -1) {\n return [data, ...prev];\n }\n const next = [...prev];\n next[index] = data;\n return next;\n });\n\n setMeta(meta => ({\n ...meta,\n totalCount: ++meta.totalCount\n }));\n\n setTags(tags => {\n if (!data.tags || data.tags.length === 0) {\n return tags;\n }\n\n return mergeAndSortTags(tags, data.tags);\n });\n\n return data;\n },\n async createRecord(record) {\n if (!CREATE_RECORD) {\n throw new Error(\"Missing CREATE_RECORD operation.\");\n }\n\n const { data: response } = await apolloFetchingHandler<CreateSearchRecordResponse>(\n loadingHandler(\"CREATE\", setLoading),\n () =>\n client.mutate<CreateSearchRecordResponse, CreateSearchRecordVariables>({\n mutation: CREATE_RECORD,\n variables: {\n data: record\n }\n })\n );\n\n if (!response) {\n throw new Error(\"Network error while creating search record.\");\n }\n\n const { data, error } = getResponseData(response, mode);\n\n if (!data) {\n throw new Error(error?.message || \"Could not create record\");\n }\n\n setRecords(prev => {\n return [...prev, data];\n });\n\n setMeta(meta => ({\n ...meta,\n totalCount: ++meta.totalCount\n }));\n\n setTags(tags => {\n if (!data.tags || data.tags.length === 0) {\n return tags;\n }\n\n return mergeAndSortTags(tags, data.tags);\n });\n\n return data;\n },\n async updateRecord(record, contextFolderId) {\n if (!contextFolderId) {\n throw new Error(\"`folderId` is mandatory\");\n }\n if (!UPDATE_RECORD) {\n throw new Error(\"Missing UPDATE_RECORD operation.\");\n }\n\n const { id, location, data, title, content } = record;\n\n const { data: response } = await apolloFetchingHandler(\n loadingHandler(\"UPDATE\", setLoading),\n () =>\n client.mutate<UpdateSearchRecordResponse, UpdateSearchRecordVariables>({\n mutation: UPDATE_RECORD,\n variables: { id, data: { title, content, location, data } }\n })\n );\n\n if (!response) {\n throw new Error(\"Network error while updating record\");\n }\n\n const { data: result, error } = getResponseData(response, mode);\n\n if (!result) {\n throw new Error(error?.message || \"Could not update record\");\n }\n\n setRecords(records => {\n const index = records.findIndex(record => record.id === id);\n if (index === -1) {\n return [result, ...records];\n }\n\n const next = [...records];\n\n next[index] = result;\n\n return next;\n });\n\n setTags(tags => {\n if (!data.tags || data.tags.length === 0) {\n return tags;\n }\n\n return mergeAndSortTags(tags, data.tags);\n });\n\n return result;\n },\n moveRecord: async (record: MovableSearchRecordItem) => {\n const { id, location } = record;\n const { folderId } = location;\n\n const { data: response } = await apolloFetchingHandler(\n loadingHandler(\"MOVE\", setLoading),\n () =>\n client.mutate<MoveSearchRecordResponse, MoveSearchRecordVariables>({\n mutation: MOVE_RECORD,\n variables: {\n id,\n folderId\n }\n })\n );\n\n if (!response) {\n throw new Error(\"Network error while moving record.\");\n }\n\n const { data, error } = getResponseData(response, mode);\n\n if (!data) {\n throw new Error(error?.message || \"Could not move record.\");\n }\n setRecords(prev => {\n return prev.filter(record => record.id !== id);\n });\n setMeta(meta => ({\n ...meta,\n totalCount: --meta.totalCount\n }));\n },\n async deleteRecord(record) {\n if (!DELETE_RECORD) {\n throw new Error(\"Missing DELETE_RECORD operation.\");\n }\n const { id } = record;\n\n const { data: response } = await apolloFetchingHandler(\n loadingHandler(\"DELETE\", setLoading),\n () =>\n client.mutate<DeleteSearchRecordResponse, DeleteSearchRecordVariables>({\n mutation: DELETE_RECORD,\n variables: { id }\n })\n );\n\n if (!response) {\n throw new Error(\"Network error while deleting record.\");\n }\n\n const { data, error } = getResponseData(response, mode);\n\n if (!data) {\n throw new Error(error?.message || \"Could not delete record\");\n }\n\n setRecords(prev => {\n return prev.filter(record => record.id !== id);\n });\n\n setMeta(meta => ({\n ...meta,\n totalCount: --meta.totalCount\n }));\n\n return true;\n },\n async listTags(params) {\n if (!LIST_TAGS) {\n throw new Error(\"Missing LIST_TAGS operation.\");\n }\n\n const { data: response } = await apolloFetchingHandler(\n loadingHandler(\"LIST\", setLoading),\n () =>\n client.query<ListTagsResponse, ListTagsQueryVariables>({\n query: LIST_TAGS,\n variables: {\n where: params.where\n }\n })\n );\n\n if (!response) {\n throw new Error(\"Network error while fetching tags.\");\n }\n\n const { data, error } = getResponseData(response, mode);\n\n if (!data) {\n throw new Error(error?.message || \"Could not fetch tags\");\n }\n\n setTags(data);\n\n return data;\n }\n };\n }, [\n app.id,\n model.modelId,\n records,\n setRecords,\n tags,\n meta,\n loading,\n GET_RECORD,\n LIST_RECORDS,\n UPDATE_RECORD,\n DELETE_RECORD,\n MOVE_RECORD,\n CREATE_RECORD,\n LIST_TAGS\n ]);\n\n return (\n <SearchRecordsContext.Provider value={context}>{children}</SearchRecordsContext.Provider>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useMemo","sortBy","unionBy","lodashMerge","apolloFetchingHandler","loadingHandler","createCreateRecord","createDeleteRecord","createGetRecord","createListRecords","createListTags","createMoveRecord","createUpdateRecord","validateOrGetDefaultDbSort","useAcoApp","parseIdentifier","useStateIfMounted","useAcoConfig","SearchRecordsContext","createContext","undefined","defaultLoading","INIT","LIST","LIST_MORE","GET","MOVE","CREATE","UPDATE","DELETE","mergeAndSortTags","oldTagItems","newTags","length","newTagItems","map","tag","mergedTagItems","getResponseData","response","mode","content","search","defaultMeta","totalCount","hasMoreItems","cursor","SearchRecordsProvider","children","app","client","model","table","fieldIds","columns","config","name","filter","Boolean","records","setRecords","tags","setTags","loading","setLoading","meta","setMeta","Object","create","GET_RECORD","LIST_RECORDS","UPDATE_RECORD","MOVE_RECORD","DELETE_RECORD","CREATE_RECORD","LIST_TAGS","id","modelId","context","addRecordToCache","record","prev","updateRecordInCache","recordId","index","findIndex","item","itemId","next","removeRecordFromCache","startsWith","listRecords","params","after","limit","sort","sorting","where","action","data","variables","query","fetchPolicy","Error","responseMeta","error","message","getRecord","entryId","code","createRecord","mutate","mutation","updateRecord","contextFolderId","location","title","result","moveRecord","folderId","deleteRecord","listTags","createElement","Provider","value"],"sources":["records.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport React, { useMemo } from \"react\";\nimport sortBy from \"lodash/sortBy\";\nimport unionBy from \"lodash/unionBy\";\nimport lodashMerge from \"lodash/merge\";\nimport { apolloFetchingHandler, loadingHandler } from \"~/handlers\";\nimport {\n createCreateRecord,\n createDeleteRecord,\n createGetRecord,\n createListRecords,\n createListTags,\n createMoveRecord,\n createUpdateRecord\n} from \"~/graphql/records.gql\";\nimport type {\n AcoAppMode,\n CreateSearchRecordResponse,\n CreateSearchRecordVariables,\n DeletableSearchRecordItem,\n DeleteSearchRecordResponse,\n DeleteSearchRecordVariables,\n GetSearchRecordQueryVariables,\n GetSearchRecordResponse,\n ListMeta,\n ListSearchRecordsQueryVariables,\n ListSearchRecordsResponse,\n ListTagsQueryVariables,\n ListTagsResponse,\n ListTagsWhereQueryVariables,\n Loading,\n LoadingActions,\n MovableSearchRecordItem,\n MoveSearchRecordResponse,\n MoveSearchRecordVariables,\n SearchRecordItem,\n TagItem,\n UpdateSearchRecordResponse,\n UpdateSearchRecordVariables\n} from \"~/types\";\nimport { validateOrGetDefaultDbSort } from \"~/sorting\";\nimport { useAcoApp } from \"~/hooks\";\nimport { parseIdentifier } from \"@webiny/utils\";\nimport { useStateIfMounted } from \"@webiny/app-admin\";\nimport { useAcoConfig } from \"~/config\";\n\ninterface ListTagsParams {\n where?: ListTagsWhereQueryVariables;\n}\n\nexport type ListRecordsParams = ListSearchRecordsQueryVariables;\n\ninterface SearchRecordsContext {\n records: SearchRecordItem[];\n tags: TagItem[];\n loading: Loading<LoadingActions>;\n meta: ListMeta;\n listRecords: (params: ListRecordsParams) => Promise<SearchRecordItem[]>;\n getRecord: (id: string) => Promise<SearchRecordItem | null>;\n createRecord: (record: Omit<SearchRecordItem, \"id\">) => Promise<SearchRecordItem>;\n updateRecord: (record: SearchRecordItem, contextFolderId?: string) => Promise<SearchRecordItem>;\n moveRecord: (record: MovableSearchRecordItem) => Promise<void>;\n deleteRecord(record: DeletableSearchRecordItem): Promise<true>;\n listTags: (params: ListTagsParams) => Promise<TagItem[]>;\n addRecordToCache: (record: any) => void;\n updateRecordInCache: (record: any) => void;\n removeRecordFromCache: (id: string) => void;\n}\n\nexport const SearchRecordsContext = React.createContext<SearchRecordsContext | undefined>(\n undefined\n);\n\ninterface Props {\n children: ReactNode;\n}\n\nconst defaultLoading: Record<LoadingActions, boolean> = {\n INIT: true,\n LIST: false,\n LIST_MORE: false,\n GET: false,\n MOVE: false,\n CREATE: false,\n UPDATE: false,\n DELETE: false\n};\n\nconst mergeAndSortTags = (oldTagItems: TagItem[], newTags: string[]): TagItem[] => {\n if (!newTags.length) {\n return oldTagItems;\n }\n\n const newTagItems = newTags.map((tag: string) => ({ tag })); // create TagItem[] from array of strings\n const mergedTagItems = unionBy(oldTagItems, newTagItems, \"tag\"); // merge the two arrays\n\n return sortBy(mergedTagItems, [\"tag\"]);\n};\n\nconst getResponseData = (response: any, mode: AcoAppMode): any => {\n if (mode === \"cms\") {\n return response?.content || {};\n }\n return response.search?.content || {};\n};\n\nconst defaultMeta: ListMeta = {\n totalCount: 0,\n hasMoreItems: false,\n cursor: null\n};\n\nexport const SearchRecordsProvider = ({ children }: Props) => {\n const { app, client, mode } = useAcoApp();\n const { model } = app;\n\n /**\n * Retrieve all `fieldIds` from the ACO configuration, considering field `name`:\n * The result is a deduplicated flat array of unique field IDs.\n */\n const { table } = useAcoConfig();\n const fieldIds = table.columns.map(config => config.name).filter(Boolean);\n\n const [records, setRecords] = useStateIfMounted<SearchRecordItem[]>([]);\n const [tags, setTags] = useStateIfMounted<TagItem[]>([]);\n const [loading, setLoading] = useStateIfMounted<Loading<LoadingActions>>(defaultLoading);\n const [meta, setMeta] = useStateIfMounted<ListMeta>(Object.create(defaultMeta));\n\n const {\n GET_RECORD,\n LIST_RECORDS,\n UPDATE_RECORD,\n MOVE_RECORD,\n DELETE_RECORD,\n CREATE_RECORD,\n LIST_TAGS\n } = useMemo(() => {\n return {\n LIST_RECORDS: createListRecords(model, mode, fieldIds),\n UPDATE_RECORD: createUpdateRecord(model, mode),\n MOVE_RECORD: createMoveRecord(model, mode),\n GET_RECORD: createGetRecord(model, mode),\n LIST_TAGS: createListTags(model, mode),\n DELETE_RECORD: createDeleteRecord(model, mode),\n CREATE_RECORD: createCreateRecord(model, mode)\n };\n }, [app.id, model.modelId, fieldIds]);\n\n const context = useMemo<SearchRecordsContext>(() => {\n return {\n records,\n tags,\n loading,\n meta,\n addRecordToCache: (record: any) => {\n setRecords(prev => {\n return [record, ...prev];\n });\n setMeta(meta => ({\n ...meta,\n totalCount: ++meta.totalCount\n }));\n },\n updateRecordInCache: (record: any) => {\n const { id: recordId } = parseIdentifier(record.id);\n\n setRecords(prev => {\n const index = prev.findIndex(item => {\n const { id: itemId } = parseIdentifier(item.id);\n return itemId === recordId;\n });\n\n if (index >= 0) {\n const next = [...prev];\n next[index] = lodashMerge({}, prev[index], record);\n return next;\n }\n return [record, ...prev];\n });\n },\n removeRecordFromCache: (id: string) => {\n setRecords(prev => {\n return prev.filter(\n record => record.id !== id && !record.id.startsWith(`${id}#`)\n );\n });\n setMeta(meta => ({\n ...meta,\n totalCount: --meta.totalCount\n }));\n },\n\n async listRecords(params) {\n const { after, limit, sort: sorting, search, where } = params;\n\n /**\n * Avoiding fetching records in case they have already been fetched.\n * This happens when visiting a list with all records loaded and receives \"after\" param.\n */\n const totalCount = meta?.totalCount || 0;\n if (after && records.length === totalCount) {\n return records;\n }\n\n const action = after ? \"LIST_MORE\" : \"LIST\";\n const sort = validateOrGetDefaultDbSort(sorting);\n\n const { data: response } = await apolloFetchingHandler<ListSearchRecordsResponse>(\n loadingHandler(action, setLoading),\n () => {\n const variables: ListSearchRecordsQueryVariables = {\n where,\n search,\n limit,\n after,\n sort\n };\n return client.query<\n ListSearchRecordsResponse,\n ListSearchRecordsQueryVariables\n >({\n query: LIST_RECORDS,\n variables,\n fetchPolicy: \"network-only\"\n });\n }\n );\n\n if (!response) {\n throw new Error(\"Could not fetch records - no response.\");\n }\n\n const { data, meta: responseMeta, error } = getResponseData(response, mode);\n\n if (!data || !responseMeta) {\n throw new Error(error?.message || \"Could not fetch records.\");\n }\n\n setRecords(prev => {\n // If there's no cursor, it means we're receiving a new list of records from scratch.\n if (!after) {\n return data;\n }\n\n return [...prev, ...data];\n });\n\n setMeta(() => responseMeta);\n\n setLoading(prev => {\n return {\n ...prev,\n INIT: false\n };\n });\n\n return data;\n },\n async getRecord(id) {\n if (!id) {\n throw new Error(\"Record `id` is mandatory\");\n }\n\n const { id: recordId } = parseIdentifier(id);\n\n const { data: response } = await apolloFetchingHandler<GetSearchRecordResponse>(\n loadingHandler(\"GET\", setLoading),\n () =>\n client.query<GetSearchRecordResponse, GetSearchRecordQueryVariables>({\n query: GET_RECORD,\n variables: { entryId: recordId },\n fetchPolicy: \"network-only\"\n })\n );\n\n if (!response) {\n throw new Error(`Could not fetch record \"${recordId}\" - no response.`);\n }\n\n const { data, error } = getResponseData(response, mode);\n\n if (error && error.code !== \"NOT_FOUND\") {\n throw new Error(\"Network error while syncing record\");\n }\n\n if (!data) {\n // No record found - must be deleted by previous operation\n setRecords(prev => {\n return prev.filter(record => record.id !== recordId);\n });\n setMeta(meta => ({\n ...meta,\n totalCount: --meta.totalCount\n }));\n return data;\n }\n setRecords(prev => {\n const index = prev.findIndex(record => record.id === recordId);\n\n // No record found in the list - must be added by previous operation\n if (index === -1) {\n return [data, ...prev];\n }\n const next = [...prev];\n next[index] = data;\n return next;\n });\n\n setMeta(meta => ({\n ...meta,\n totalCount: ++meta.totalCount\n }));\n\n setTags(tags => {\n if (!data.tags || data.tags.length === 0) {\n return tags;\n }\n\n return mergeAndSortTags(tags, data.tags);\n });\n\n return data;\n },\n async createRecord(record) {\n if (!CREATE_RECORD) {\n throw new Error(\"Missing CREATE_RECORD operation.\");\n }\n\n const { data: response } = await apolloFetchingHandler<CreateSearchRecordResponse>(\n loadingHandler(\"CREATE\", setLoading),\n () =>\n client.mutate<CreateSearchRecordResponse, CreateSearchRecordVariables>({\n mutation: CREATE_RECORD,\n variables: {\n data: record\n }\n })\n );\n\n if (!response) {\n throw new Error(\"Network error while creating search record.\");\n }\n\n const { data, error } = getResponseData(response, mode);\n\n if (!data) {\n throw new Error(error?.message || \"Could not create record\");\n }\n\n setRecords(prev => {\n return [...prev, data];\n });\n\n setMeta(meta => ({\n ...meta,\n totalCount: ++meta.totalCount\n }));\n\n setTags(tags => {\n if (!data.tags || data.tags.length === 0) {\n return tags;\n }\n\n return mergeAndSortTags(tags, data.tags);\n });\n\n return data;\n },\n async updateRecord(record, contextFolderId) {\n if (!contextFolderId) {\n throw new Error(\"`folderId` is mandatory\");\n }\n if (!UPDATE_RECORD) {\n throw new Error(\"Missing UPDATE_RECORD operation.\");\n }\n\n const { id, location, data, title, content } = record;\n\n const { data: response } = await apolloFetchingHandler(\n loadingHandler(\"UPDATE\", setLoading),\n () =>\n client.mutate<UpdateSearchRecordResponse, UpdateSearchRecordVariables>({\n mutation: UPDATE_RECORD,\n variables: { id, data: { title, content, location, data } }\n })\n );\n\n if (!response) {\n throw new Error(\"Network error while updating record\");\n }\n\n const { data: result, error } = getResponseData(response, mode);\n\n if (!result) {\n throw new Error(error?.message || \"Could not update record\");\n }\n\n setRecords(records => {\n const index = records.findIndex(record => record.id === id);\n if (index === -1) {\n return [result, ...records];\n }\n\n const next = [...records];\n\n next[index] = result;\n\n return next;\n });\n\n setTags(tags => {\n if (!data.tags || data.tags.length === 0) {\n return tags;\n }\n\n return mergeAndSortTags(tags, data.tags);\n });\n\n return result;\n },\n moveRecord: async (record: MovableSearchRecordItem) => {\n const { id, location } = record;\n const { folderId } = location;\n\n const { data: response } = await apolloFetchingHandler(\n loadingHandler(\"MOVE\", setLoading),\n () =>\n client.mutate<MoveSearchRecordResponse, MoveSearchRecordVariables>({\n mutation: MOVE_RECORD,\n variables: {\n id,\n folderId\n }\n })\n );\n\n if (!response) {\n throw new Error(\"Network error while moving record.\");\n }\n\n const { data, error } = getResponseData(response, mode);\n\n if (!data) {\n throw new Error(error?.message || \"Could not move record.\");\n }\n setRecords(prev => {\n return prev.filter(record => record.id !== id);\n });\n setMeta(meta => ({\n ...meta,\n totalCount: --meta.totalCount\n }));\n },\n async deleteRecord(record) {\n if (!DELETE_RECORD) {\n throw new Error(\"Missing DELETE_RECORD operation.\");\n }\n const { id } = record;\n\n const { data: response } = await apolloFetchingHandler(\n loadingHandler(\"DELETE\", setLoading),\n () =>\n client.mutate<DeleteSearchRecordResponse, DeleteSearchRecordVariables>({\n mutation: DELETE_RECORD,\n variables: { id }\n })\n );\n\n if (!response) {\n throw new Error(\"Network error while deleting record.\");\n }\n\n const { data, error } = getResponseData(response, mode);\n\n if (!data) {\n throw new Error(error?.message || \"Could not delete record\");\n }\n\n setRecords(prev => {\n return prev.filter(record => record.id !== id);\n });\n\n setMeta(meta => ({\n ...meta,\n totalCount: --meta.totalCount\n }));\n\n return true;\n },\n async listTags(params) {\n if (!LIST_TAGS) {\n throw new Error(\"Missing LIST_TAGS operation.\");\n }\n\n const { data: response } = await apolloFetchingHandler(\n loadingHandler(\"LIST\", setLoading),\n () =>\n client.query<ListTagsResponse, ListTagsQueryVariables>({\n query: LIST_TAGS,\n variables: {\n where: params.where\n }\n })\n );\n\n if (!response) {\n throw new Error(\"Network error while fetching tags.\");\n }\n\n const { data, error } = getResponseData(response, mode);\n\n if (!data) {\n throw new Error(error?.message || \"Could not fetch tags\");\n }\n\n setTags(data);\n\n return data;\n }\n };\n }, [\n app.id,\n model.modelId,\n records,\n setRecords,\n tags,\n meta,\n loading,\n GET_RECORD,\n LIST_RECORDS,\n UPDATE_RECORD,\n DELETE_RECORD,\n MOVE_RECORD,\n CREATE_RECORD,\n LIST_TAGS\n ]);\n\n return (\n <SearchRecordsContext.Provider value={context}>{children}</SearchRecordsContext.Provider>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Avatar","ListItemGraphic","target","type","createElement","size","image","Image","src","meta","alt","fallback","Fallback","delayMs","name","charAt"],"sources":["ListItemGraphic.tsx"],"sourcesContent":["import React from \"react\";\nimport { Avatar } from \"@webiny/admin-ui\";\nimport { FolderLevelPermissionsTarget } from \"~/types\";\n\ninterface ListItemGraphicProps {\n target: FolderLevelPermissionsTarget;\n}\n\nexport const ListItemGraphic = ({ target }: ListItemGraphicProps) => {\n if (target.type === \"admin\") {\n return (\n <Avatar\n size={\"md\"}\n image={<Avatar.Image src={target.meta.image} alt={\"User's avatar.\"} />}\n fallback={<Avatar.Fallback delayMs={0}>{target.name.charAt(0)}</Avatar.Fallback>}\n />\n );\n }\n\n return (\n <Avatar\n size={\"md\"}\n fallback={<Avatar.Fallback delayMs={0}>{target.name.charAt(0)}</Avatar.Fallback>}\n />\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,MAAM,QAAQ,kBAAkB;AAOzC,OAAO,MAAMC,eAAe,GAAGA,CAAC;EAAEC;AAA6B,CAAC,KAAK;EACjE,IAAIA,MAAM,CAACC,IAAI,KAAK,OAAO,EAAE;IACzB,oBACIJ,KAAA,CAAAK,aAAA,CAACJ,MAAM;MACHK,IAAI,EAAE,IAAK;MACXC,KAAK,eAAEP,KAAA,CAAAK,aAAA,CAACJ,MAAM,CAACO,KAAK;QAACC,GAAG,EAAEN,MAAM,CAACO,IAAI,CAACH,KAAM;QAACI,GAAG,EAAE;MAAiB,CAAE,CAAE;MACvEC,QAAQ,eAAEZ,KAAA,CAAAK,aAAA,CAACJ,MAAM,CAACY,QAAQ;QAACC,OAAO,EAAE;MAAE,GAAEX,MAAM,CAACY,IAAI,CAACC,MAAM,CAAC,CAAC,CAAmB;IAAE,CACpF,CAAC;EAEV;EAEA,oBACIhB,KAAA,CAAAK,aAAA,CAACJ,MAAM;IACHK,IAAI,EAAE,IAAK;IACXM,QAAQ,eAAEZ,KAAA,CAAAK,aAAA,CAACJ,MAAM,CAACY,QAAQ;MAACC,OAAO,EAAE;IAAE,GAAEX,MAAM,CAACY,IAAI,CAACC,MAAM,CAAC,CAAC,CAAmB;EAAE,CACpF,CAAC;AAEV,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","Avatar","ListItemGraphic","target","type","createElement","size","image","Image","src","meta","alt","fallback","Fallback","delayMs","name","charAt"],"sources":["ListItemGraphic.tsx"],"sourcesContent":["import React from \"react\";\nimport { Avatar } from \"@webiny/admin-ui\";\nimport type { FolderLevelPermissionsTarget } from \"~/types\";\n\ninterface ListItemGraphicProps {\n target: FolderLevelPermissionsTarget;\n}\n\nexport const ListItemGraphic = ({ target }: ListItemGraphicProps) => {\n if (target.type === \"admin\") {\n return (\n <Avatar\n size={\"md\"}\n image={<Avatar.Image src={target.meta.image} alt={\"User's avatar.\"} />}\n fallback={<Avatar.Fallback delayMs={0}>{target.name.charAt(0)}</Avatar.Fallback>}\n />\n );\n }\n\n return (\n <Avatar\n size={\"md\"}\n fallback={<Avatar.Fallback delayMs={0}>{target.name.charAt(0)}</Avatar.Fallback>}\n />\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,MAAM,QAAQ,kBAAkB;AAOzC,OAAO,MAAMC,eAAe,GAAGA,CAAC;EAAEC;AAA6B,CAAC,KAAK;EACjE,IAAIA,MAAM,CAACC,IAAI,KAAK,OAAO,EAAE;IACzB,oBACIJ,KAAA,CAAAK,aAAA,CAACJ,MAAM;MACHK,IAAI,EAAE,IAAK;MACXC,KAAK,eAAEP,KAAA,CAAAK,aAAA,CAACJ,MAAM,CAACO,KAAK;QAACC,GAAG,EAAEN,MAAM,CAACO,IAAI,CAACH,KAAM;QAACI,GAAG,EAAE;MAAiB,CAAE,CAAE;MACvEC,QAAQ,eAAEZ,KAAA,CAAAK,aAAA,CAACJ,MAAM,CAACY,QAAQ;QAACC,OAAO,EAAE;MAAE,GAAEX,MAAM,CAACY,IAAI,CAACC,MAAM,CAAC,CAAC,CAAmB;IAAE,CACpF,CAAC;EAEV;EAEA,oBACIhB,KAAA,CAAAK,aAAA,CAACJ,MAAM;IACHK,IAAI,EAAE,IAAK;IACXM,QAAQ,eAAEZ,KAAA,CAAAK,aAAA,CAACJ,MAAM,CAACY,QAAQ;MAACC,OAAO,EAAE;IAAE,GAAEX,MAAM,CAACY,IAAI,CAACC,MAAM,CAAC,CAAC,CAAmB;EAAE,CACpF,CAAC;AAEV,CAAC","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { FolderLevelPermissionsTarget, FolderPermission } from "../../../types";
|
|
2
|
+
import type { FolderLevelPermissionsTarget, FolderPermission } from "../../../types";
|
|
3
3
|
interface ListItemMetaProps {
|
|
4
4
|
permission: FolderPermission;
|
|
5
5
|
target: FolderLevelPermissionsTarget;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useMemo","ReactComponent","More","Button","DropdownMenu","Text","Tooltip","useSecurity","TARGET_LEVELS","id","label","description","ListItemMeta","permission","target","targetsList","onRemoveAccess","onUpdatePermission","identity","currentLevel","find","level","isListDisabled","isRemovePermissionDisabled","tooltipMessage","message","disabled","removePermissionDisabled","inheritedFrom","startsWith","team","t","name","handle","createElement","variant","text","icon","iconPosition","content","trigger","map","CheckboxItem","key","checked","as","size","className","onClick","setTimeout","Separator","Item"],"sources":["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-security\";\nimport { FolderAccessLevel, FolderLevelPermissionsTarget, FolderPermission } from \"~/types\";\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={\"wby-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"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useMemo","ReactComponent","More","Button","DropdownMenu","Text","Tooltip","useSecurity","TARGET_LEVELS","id","label","description","ListItemMeta","permission","target","targetsList","onRemoveAccess","onUpdatePermission","identity","currentLevel","find","level","isListDisabled","isRemovePermissionDisabled","tooltipMessage","message","disabled","removePermissionDisabled","inheritedFrom","startsWith","team","t","name","handle","createElement","variant","text","icon","iconPosition","content","trigger","map","CheckboxItem","key","checked","as","size","className","onClick","setTimeout","Separator","Item"],"sources":["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-security\";\nimport type { FolderAccessLevel, FolderLevelPermissionsTarget, FolderPermission } from \"~/types\";\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={\"wby-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"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Text","useSecurity","ListItemText","target","identity","type","createElement","as","name","id","size","className","meta","email","Fragment"],"sources":["ListItemText.tsx"],"sourcesContent":["import React from \"react\";\nimport { Text } from \"@webiny/admin-ui\";\nimport { useSecurity } from \"@webiny/app-security\";\nimport { FolderLevelPermissionsTarget } from \"~/types\";\n\ninterface ListItemTextProps {\n target: FolderLevelPermissionsTarget;\n}\n\nexport const ListItemText = ({ target }: ListItemTextProps) => {\n const { identity } = useSecurity();\n\n if (target.type === \"admin\") {\n return (\n <div>\n <Text as=\"div\">\n {target.name} \n {target.id === identity!.id && <em>(you)</em>}\n </Text>\n <Text as={\"div\"} size={\"sm\"} className={\"wby-text-neutral-strong wby-font-normal\"}>\n {target.meta.email || \"E-mail not available.\"}\n </Text>\n </div>\n );\n }\n\n return <>{target.name}</>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,kBAAkB;AACvC,SAASC,WAAW,QAAQ,sBAAsB;AAOlD,OAAO,MAAMC,YAAY,GAAGA,CAAC;EAAEC;AAA0B,CAAC,KAAK;EAC3D,MAAM;IAAEC;EAAS,CAAC,GAAGH,WAAW,CAAC,CAAC;EAElC,IAAIE,MAAM,CAACE,IAAI,KAAK,OAAO,EAAE;IACzB,oBACIN,KAAA,CAAAO,aAAA,2BACIP,KAAA,CAAAO,aAAA,CAACN,IAAI;MAACO,EAAE,EAAC;IAAK,GACTJ,MAAM,CAACK,IAAI,EAAC,MACb,EAACL,MAAM,CAACM,EAAE,KAAKL,QAAQ,CAAEK,EAAE,iBAAIV,KAAA,CAAAO,aAAA,aAAI,OAAS,CAC1C,CAAC,eACPP,KAAA,CAAAO,aAAA,CAACN,IAAI;MAACO,EAAE,EAAE,KAAM;MAACG,IAAI,EAAE,IAAK;MAACC,SAAS,EAAE;IAA0C,GAC7ER,MAAM,CAACS,IAAI,CAACC,KAAK,IAAI,uBACpB,CACL,CAAC;EAEd;EAEA,oBAAOd,KAAA,CAAAO,aAAA,CAAAP,KAAA,CAAAe,QAAA,QAAGX,MAAM,CAACK,IAAO,CAAC;AAC7B,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","Text","useSecurity","ListItemText","target","identity","type","createElement","as","name","id","size","className","meta","email","Fragment"],"sources":["ListItemText.tsx"],"sourcesContent":["import React from \"react\";\nimport { Text } from \"@webiny/admin-ui\";\nimport { useSecurity } from \"@webiny/app-security\";\nimport type { FolderLevelPermissionsTarget } from \"~/types\";\n\ninterface ListItemTextProps {\n target: FolderLevelPermissionsTarget;\n}\n\nexport const ListItemText = ({ target }: ListItemTextProps) => {\n const { identity } = useSecurity();\n\n if (target.type === \"admin\") {\n return (\n <div>\n <Text as=\"div\">\n {target.name} \n {target.id === identity!.id && <em>(you)</em>}\n </Text>\n <Text as={\"div\"} size={\"sm\"} className={\"wby-text-neutral-strong wby-font-normal\"}>\n {target.meta.email || \"E-mail not available.\"}\n </Text>\n </div>\n );\n }\n\n return <>{target.name}</>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,kBAAkB;AACvC,SAASC,WAAW,QAAQ,sBAAsB;AAOlD,OAAO,MAAMC,YAAY,GAAGA,CAAC;EAAEC;AAA0B,CAAC,KAAK;EAC3D,MAAM;IAAEC;EAAS,CAAC,GAAGH,WAAW,CAAC,CAAC;EAElC,IAAIE,MAAM,CAACE,IAAI,KAAK,OAAO,EAAE;IACzB,oBACIN,KAAA,CAAAO,aAAA,2BACIP,KAAA,CAAAO,aAAA,CAACN,IAAI;MAACO,EAAE,EAAC;IAAK,GACTJ,MAAM,CAACK,IAAI,EAAC,MACb,EAACL,MAAM,CAACM,EAAE,KAAKL,QAAQ,CAAEK,EAAE,iBAAIV,KAAA,CAAAO,aAAA,aAAI,OAAS,CAC1C,CAAC,eACPP,KAAA,CAAAO,aAAA,CAACN,IAAI;MAACO,EAAE,EAAE,KAAM;MAACG,IAAI,EAAE,IAAK;MAACC,SAAS,EAAE;IAA0C,GAC7ER,MAAM,CAACS,IAAI,CAACC,KAAK,IAAI,uBACpB,CACL,CAAC;EAEd;EAEA,oBAAOd,KAAA,CAAAO,aAAA,CAAAP,KAAA,CAAAe,QAAA,QAAGX,MAAM,CAACK,IAAO,CAAC;AAC7B,CAAC","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { FolderLevelPermissionsTarget, FolderPermission } from "../../types";
|
|
2
|
+
import type { FolderLevelPermissionsTarget, FolderPermission } from "../../types";
|
|
3
3
|
interface UsersTeamsSelectionProps {
|
|
4
4
|
targetsList: FolderLevelPermissionsTarget[];
|
|
5
5
|
permissions: FolderPermission[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","List","Scrollbar","Text","ListItemGraphic","ListItemText","ListItemMeta","UsersTeamsSelection","permissions","targetsList","onRemoveAccess","onUpdatePermission","selection","map","permission","target","find","u","filter","Boolean","createElement","Fragment","as","className","style","height","item","Item","key","title","icon","actions","Object","assign"],"sources":["UsersTeamsSelection.tsx"],"sourcesContent":["import React from \"react\";\nimport { List, Scrollbar, Text } from \"@webiny/admin-ui\";\nimport { ListItemGraphic } from \"./UsersTeamsSelection/ListItemGraphic\";\nimport { ListItemText } from \"./UsersTeamsSelection/ListItemText\";\nimport { ListItemMeta } from \"./UsersTeamsSelection/ListItemMeta\";\nimport { FolderLevelPermissionsTarget, FolderPermission } from \"~/types\";\n\ninterface UsersTeamsSelectionProps {\n targetsList: FolderLevelPermissionsTarget[];\n permissions: FolderPermission[];\n onRemoveAccess: (params: { permission: FolderPermission }) => void;\n onUpdatePermission: (params: { permission: FolderPermission }) => void;\n}\n\ntype Selection = Array<{ permission: FolderPermission; target: FolderLevelPermissionsTarget }>;\n\nexport const UsersTeamsSelection = ({\n permissions = [],\n targetsList,\n onRemoveAccess,\n onUpdatePermission\n}: UsersTeamsSelectionProps) => {\n const selection = permissions\n .map(permission => {\n const target = targetsList.find(u => u.target === permission.target);\n if (target) {\n return { permission, target };\n }\n\n return null;\n })\n .filter(Boolean) as Selection;\n\n return (\n <>\n <Text as={\"div\"} className={\"wby-mb-md\"}>\n People and teams with access\n </Text>\n <Scrollbar style={{ height: \"300px\" }}>\n <List>\n {selection?.map(item => (\n <List.Item\n key={item!.permission.target}\n title={<ListItemText {...item} />}\n icon={<ListItemGraphic {...item} />}\n actions={\n <ListItemMeta\n {...item!}\n targetsList={targetsList}\n onRemoveAccess={onRemoveAccess}\n onUpdatePermission={onUpdatePermission}\n />\n }\n />\n ))}\n </List>\n </Scrollbar>\n </>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,SAAS,EAAEC,IAAI,QAAQ,kBAAkB;AACxD,SAASC,eAAe;AACxB,SAASC,YAAY;AACrB,SAASC,YAAY;AAYrB,OAAO,MAAMC,mBAAmB,GAAGA,CAAC;EAChCC,WAAW,GAAG,EAAE;EAChBC,WAAW;EACXC,cAAc;EACdC;AACsB,CAAC,KAAK;EAC5B,MAAMC,SAAS,GAAGJ,WAAW,CACxBK,GAAG,CAACC,UAAU,IAAI;IACf,MAAMC,MAAM,GAAGN,WAAW,CAACO,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACF,MAAM,KAAKD,UAAU,CAACC,MAAM,CAAC;IACpE,IAAIA,MAAM,EAAE;MACR,OAAO;QAAED,UAAU;QAAEC;MAAO,CAAC;IACjC;IAEA,OAAO,IAAI;EACf,CAAC,CAAC,CACDG,MAAM,CAACC,OAAO,CAAc;EAEjC,oBACInB,KAAA,CAAAoB,aAAA,CAAApB,KAAA,CAAAqB,QAAA,qBACIrB,KAAA,CAAAoB,aAAA,CAACjB,IAAI;IAACmB,EAAE,EAAE,KAAM;IAACC,SAAS,EAAE;EAAY,GAAC,8BAEnC,CAAC,eACPvB,KAAA,CAAAoB,aAAA,CAAClB,SAAS;IAACsB,KAAK,EAAE;MAAEC,MAAM,EAAE;IAAQ;EAAE,gBAClCzB,KAAA,CAAAoB,aAAA,CAACnB,IAAI,QACAW,SAAS,EAAEC,GAAG,CAACa,IAAI,iBAChB1B,KAAA,CAAAoB,aAAA,CAACnB,IAAI,CAAC0B,IAAI;IACNC,GAAG,EAAEF,IAAI,CAAEZ,UAAU,CAACC,MAAO;IAC7Bc,KAAK,eAAE7B,KAAA,CAAAoB,aAAA,CAACf,YAAY,EAAKqB,IAAO,CAAE;IAClCI,IAAI,eAAE9B,KAAA,CAAAoB,aAAA,CAAChB,eAAe,EAAKsB,IAAO,CAAE;IACpCK,OAAO,eACH/B,KAAA,CAAAoB,aAAA,CAACd,YAAY,EAAA0B,MAAA,CAAAC,MAAA,KACLP,IAAI;MACRjB,WAAW,EAAEA,WAAY;MACzBC,cAAc,EAAEA,cAAe;MAC/BC,kBAAkB,EAAEA;IAAmB,EAC1C;EACJ,CACJ,CACJ,CACC,CACC,CACb,CAAC;AAEX,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","List","Scrollbar","Text","ListItemGraphic","ListItemText","ListItemMeta","UsersTeamsSelection","permissions","targetsList","onRemoveAccess","onUpdatePermission","selection","map","permission","target","find","u","filter","Boolean","createElement","Fragment","as","className","style","height","item","Item","key","title","icon","actions","Object","assign"],"sources":["UsersTeamsSelection.tsx"],"sourcesContent":["import React from \"react\";\nimport { List, Scrollbar, Text } from \"@webiny/admin-ui\";\nimport { ListItemGraphic } from \"./UsersTeamsSelection/ListItemGraphic\";\nimport { ListItemText } from \"./UsersTeamsSelection/ListItemText\";\nimport { ListItemMeta } from \"./UsersTeamsSelection/ListItemMeta\";\nimport type { FolderLevelPermissionsTarget, FolderPermission } from \"~/types\";\n\ninterface UsersTeamsSelectionProps {\n targetsList: FolderLevelPermissionsTarget[];\n permissions: FolderPermission[];\n onRemoveAccess: (params: { permission: FolderPermission }) => void;\n onUpdatePermission: (params: { permission: FolderPermission }) => void;\n}\n\ntype Selection = Array<{ permission: FolderPermission; target: FolderLevelPermissionsTarget }>;\n\nexport const UsersTeamsSelection = ({\n permissions = [],\n targetsList,\n onRemoveAccess,\n onUpdatePermission\n}: UsersTeamsSelectionProps) => {\n const selection = permissions\n .map(permission => {\n const target = targetsList.find(u => u.target === permission.target);\n if (target) {\n return { permission, target };\n }\n\n return null;\n })\n .filter(Boolean) as Selection;\n\n return (\n <>\n <Text as={\"div\"} className={\"wby-mb-md\"}>\n People and teams with access\n </Text>\n <Scrollbar style={{ height: \"300px\" }}>\n <List>\n {selection?.map(item => (\n <List.Item\n key={item!.permission.target}\n title={<ListItemText {...item} />}\n icon={<ListItemGraphic {...item} />}\n actions={\n <ListItemMeta\n {...item!}\n targetsList={targetsList}\n onRemoveAccess={onRemoveAccess}\n onUpdatePermission={onUpdatePermission}\n />\n }\n />\n ))}\n </List>\n </Scrollbar>\n </>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,SAAS,EAAEC,IAAI,QAAQ,kBAAkB;AACxD,SAASC,eAAe;AACxB,SAASC,YAAY;AACrB,SAASC,YAAY;AAYrB,OAAO,MAAMC,mBAAmB,GAAGA,CAAC;EAChCC,WAAW,GAAG,EAAE;EAChBC,WAAW;EACXC,cAAc;EACdC;AACsB,CAAC,KAAK;EAC5B,MAAMC,SAAS,GAAGJ,WAAW,CACxBK,GAAG,CAACC,UAAU,IAAI;IACf,MAAMC,MAAM,GAAGN,WAAW,CAACO,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACF,MAAM,KAAKD,UAAU,CAACC,MAAM,CAAC;IACpE,IAAIA,MAAM,EAAE;MACR,OAAO;QAAED,UAAU;QAAEC;MAAO,CAAC;IACjC;IAEA,OAAO,IAAI;EACf,CAAC,CAAC,CACDG,MAAM,CAACC,OAAO,CAAc;EAEjC,oBACInB,KAAA,CAAAoB,aAAA,CAAApB,KAAA,CAAAqB,QAAA,qBACIrB,KAAA,CAAAoB,aAAA,CAACjB,IAAI;IAACmB,EAAE,EAAE,KAAM;IAACC,SAAS,EAAE;EAAY,GAAC,8BAEnC,CAAC,eACPvB,KAAA,CAAAoB,aAAA,CAAClB,SAAS;IAACsB,KAAK,EAAE;MAAEC,MAAM,EAAE;IAAQ;EAAE,gBAClCzB,KAAA,CAAAoB,aAAA,CAACnB,IAAI,QACAW,SAAS,EAAEC,GAAG,CAACa,IAAI,iBAChB1B,KAAA,CAAAoB,aAAA,CAACnB,IAAI,CAAC0B,IAAI;IACNC,GAAG,EAAEF,IAAI,CAAEZ,UAAU,CAACC,MAAO;IAC7Bc,KAAK,eAAE7B,KAAA,CAAAoB,aAAA,CAACf,YAAY,EAAKqB,IAAO,CAAE;IAClCI,IAAI,eAAE9B,KAAA,CAAAoB,aAAA,CAAChB,eAAe,EAAKsB,IAAO,CAAE;IACpCK,OAAO,eACH/B,KAAA,CAAAoB,aAAA,CAACd,YAAY,EAAA0B,MAAA,CAAAC,MAAA,KACLP,IAAI;MACRjB,WAAW,EAAEA,WAAY;MACzBC,cAAc,EAAEA,cAAe;MAC/BC,kBAAkB,EAAEA;IAAmB,EAC1C;EACJ,CACJ,CACJ,CACC,CACC,CACb,CAAC;AAEX,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useState","slugify","Grid","Input","useDialogs","useSnackbar","Bind","useForm","validation","Extensions","FolderTree","useCreateFolder","ROOT_FOLDER","ParentFolderField","FormComponent","currentParentId","parentId","setParentId","form","generateSlug","data","slug","title","setValue","replacement","lower","remove","trim","createElement","Fragment","Column","span","name","validators","create","bind","Object","assign","label","onBlur","size","required","autoFocus","defaultValue","onChange","focusedFolderId","onFolderClick","folder","id","useCreateDialog","dialogs","createFolder","showSnackbar","onAccept","error","message","showDialog","params","content","acceptLabel","cancelLabel","loadingLabel"],"sources":["useCreateDialog.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport slugify from \"slugify\";\nimport { Grid, Input } from \"@webiny/admin-ui\";\nimport { useDialogs, useSnackbar } from \"@webiny/app-admin\";\nimport { Bind,
|
|
1
|
+
{"version":3,"names":["React","useCallback","useState","slugify","Grid","Input","useDialogs","useSnackbar","Bind","useForm","validation","Extensions","FolderTree","useCreateFolder","ROOT_FOLDER","ParentFolderField","FormComponent","currentParentId","parentId","setParentId","form","generateSlug","data","slug","title","setValue","replacement","lower","remove","trim","createElement","Fragment","Column","span","name","validators","create","bind","Object","assign","label","onBlur","size","required","autoFocus","defaultValue","onChange","focusedFolderId","onFolderClick","folder","id","useCreateDialog","dialogs","createFolder","showSnackbar","onAccept","error","message","showDialog","params","content","acceptLabel","cancelLabel","loadingLabel"],"sources":["useCreateDialog.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport slugify from \"slugify\";\nimport { Grid, Input } from \"@webiny/admin-ui\";\nimport { useDialogs, useSnackbar } from \"@webiny/app-admin\";\nimport type { GenericFormData } from \"@webiny/form\";\nimport { Bind, useForm } from \"@webiny/form\";\nimport { validation } from \"@webiny/validation\";\nimport { Extensions, FolderTree } from \"~/components\";\nimport { useCreateFolder } from \"~/features\";\nimport { ROOT_FOLDER } from \"~/constants\";\nimport type { FolderItem } from \"~/types\";\nimport { ParentFolderField } from \"./ParentFolderField\";\n\ninterface ShowDialogParams {\n currentParentId?: string | null;\n}\n\ninterface UseCreateDialogResponse {\n showDialog: (params?: ShowDialogParams) => void;\n}\n\ninterface FormComponentProps {\n currentParentId?: string | null;\n}\n\nconst FormComponent = ({ currentParentId = null }: FormComponentProps) => {\n const [parentId, setParentId] = useState<string | null>(currentParentId);\n const form = useForm();\n\n const generateSlug = () => {\n if (form.data.slug || !form.data.title) {\n return;\n }\n\n // We want to update slug only when the folder is first being created.\n form.setValue(\n \"slug\",\n slugify(form.data.title, {\n replacement: \"-\",\n lower: true,\n remove: /[*#\\?<>_\\{\\}\\[\\]+~.()'\"!:;@]/g,\n trim: false\n })\n );\n };\n\n return (\n <>\n <Grid>\n <Grid.Column span={12}>\n <Bind name={\"title\"} validators={validation.create(\"required\")}>\n {bind => (\n <Input\n {...bind}\n label={\"Title\"}\n onBlur={generateSlug}\n size={\"lg\"}\n required\n autoFocus={true}\n />\n )}\n </Bind>\n </Grid.Column>\n <Grid.Column span={12}>\n <Bind name={\"slug\"} validators={validation.create(\"required,slug\")}>\n <Input label={\"Slug\"} size={\"lg\"} required />\n </Bind>\n </Grid.Column>\n <Grid.Column span={12}>\n <ParentFolderField>\n <Bind name={\"parentId\"} defaultValue={parentId}>\n {({ onChange }) => (\n <FolderTree\n focusedFolderId={parentId || ROOT_FOLDER}\n onFolderClick={folder => {\n setParentId(folder.id);\n onChange(folder.id === ROOT_FOLDER ? null : folder.id);\n }}\n />\n )}\n </Bind>\n </ParentFolderField>\n </Grid.Column>\n </Grid>\n <Extensions />\n </>\n );\n};\n\nexport const useCreateDialog = (): UseCreateDialogResponse => {\n const dialogs = useDialogs();\n const { createFolder } = useCreateFolder();\n const { showSnackbar } = useSnackbar();\n\n const onAccept = useCallback(async (data: FolderItem) => {\n try {\n await createFolder({\n ...data,\n parentId: data.parentId === ROOT_FOLDER ? null : data.parentId\n });\n showSnackbar(\"Folder created successfully!\");\n } catch (error) {\n showSnackbar(error.message);\n }\n }, []);\n\n const showDialog = (params?: ShowDialogParams) => {\n const { currentParentId = null } = params ?? {};\n\n dialogs.showDialog({\n title: \"Create a new folder\",\n content: <FormComponent currentParentId={currentParentId} />,\n acceptLabel: \"Create folder\",\n cancelLabel: \"Cancel\",\n loadingLabel: \"Creating folder...\",\n /**\n * We need to cast as there are no generics to pass for the onAccept function.\n */\n onAccept: onAccept as (data: GenericFormData) => Promise<void>\n });\n };\n\n return {\n showDialog\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useSnackbar","useDialogs","useDeleteFolder","useCallback","useDeleteDialog","dialogs","deleteFolder","showSnackbar","onAccept","folder","title","error","message","showDialog","content","acceptLabel","cancelLabel","loadingLabel"],"sources":["useDeleteDialog.tsx"],"sourcesContent":["import { useSnackbar } from \"@webiny/app-admin\";\nimport { useDialogs } from \"@webiny/app-admin\";\nimport { useDeleteFolder } from \"~/features\";\nimport { FolderItem } from \"~/types\";\nimport { useCallback } from \"react\";\n\ninterface ShowDialogParams {\n folder: FolderItem;\n}\n\ninterface UseDeleteDialogResponse {\n showDialog: (params: ShowDialogParams) => void;\n}\n\nexport const useDeleteDialog = (): UseDeleteDialogResponse => {\n const dialogs = useDialogs();\n const { deleteFolder } = useDeleteFolder();\n const { showSnackbar } = useSnackbar();\n\n const onAccept = useCallback(async (folder: FolderItem) => {\n try {\n await deleteFolder(folder);\n showSnackbar(`The folder \"${folder.title}\" was deleted successfully.`);\n } catch (error) {\n showSnackbar(error.message);\n }\n }, []);\n\n const showDialog = ({ folder }: ShowDialogParams) => {\n dialogs.showDialog({\n title: \"Delete folder\",\n content: `You are about to delete the folder \"${folder.title}\"! Are you sure you want to continue?`,\n acceptLabel: \"Delete folder\",\n cancelLabel: \"Cancel\",\n loadingLabel: \"Deleting folder...\",\n onAccept: () => onAccept(folder)\n });\n };\n\n return {\n showDialog\n };\n};\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,UAAU,QAAQ,mBAAmB;AAC9C,SAASC,eAAe;AAExB,SAASC,WAAW,QAAQ,OAAO;AAUnC,OAAO,MAAMC,eAAe,GAAGA,CAAA,KAA+B;EAC1D,MAAMC,OAAO,GAAGJ,UAAU,CAAC,CAAC;EAC5B,MAAM;IAAEK;EAAa,CAAC,GAAGJ,eAAe,CAAC,CAAC;EAC1C,MAAM;IAAEK;EAAa,CAAC,GAAGP,WAAW,CAAC,CAAC;EAEtC,MAAMQ,QAAQ,GAAGL,WAAW,CAAC,MAAOM,MAAkB,IAAK;IACvD,IAAI;MACA,MAAMH,YAAY,CAACG,MAAM,CAAC;MAC1BF,YAAY,CAAC,eAAeE,MAAM,CAACC,KAAK,6BAA6B,CAAC;IAC1E,CAAC,CAAC,OAAOC,KAAK,EAAE;MACZJ,YAAY,CAACI,KAAK,CAACC,OAAO,CAAC;IAC/B;EACJ,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,UAAU,GAAGA,CAAC;IAAEJ;EAAyB,CAAC,KAAK;IACjDJ,OAAO,CAACQ,UAAU,CAAC;MACfH,KAAK,EAAE,eAAe;MACtBI,OAAO,EAAE,uCAAuCL,MAAM,CAACC,KAAK,uCAAuC;MACnGK,WAAW,EAAE,eAAe;MAC5BC,WAAW,EAAE,QAAQ;MACrBC,YAAY,EAAE,oBAAoB;MAClCT,QAAQ,EAAEA,CAAA,KAAMA,QAAQ,CAACC,MAAM;IACnC,CAAC,CAAC;EACN,CAAC;EAED,OAAO;IACHI;EACJ,CAAC;AACL,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useSnackbar","useDialogs","useDeleteFolder","useCallback","useDeleteDialog","dialogs","deleteFolder","showSnackbar","onAccept","folder","title","error","message","showDialog","content","acceptLabel","cancelLabel","loadingLabel"],"sources":["useDeleteDialog.tsx"],"sourcesContent":["import { useSnackbar } from \"@webiny/app-admin\";\nimport { useDialogs } from \"@webiny/app-admin\";\nimport { useDeleteFolder } from \"~/features\";\nimport type { FolderItem } from \"~/types\";\nimport { useCallback } from \"react\";\n\ninterface ShowDialogParams {\n folder: FolderItem;\n}\n\ninterface UseDeleteDialogResponse {\n showDialog: (params: ShowDialogParams) => void;\n}\n\nexport const useDeleteDialog = (): UseDeleteDialogResponse => {\n const dialogs = useDialogs();\n const { deleteFolder } = useDeleteFolder();\n const { showSnackbar } = useSnackbar();\n\n const onAccept = useCallback(async (folder: FolderItem) => {\n try {\n await deleteFolder(folder);\n showSnackbar(`The folder \"${folder.title}\" was deleted successfully.`);\n } catch (error) {\n showSnackbar(error.message);\n }\n }, []);\n\n const showDialog = ({ folder }: ShowDialogParams) => {\n dialogs.showDialog({\n title: \"Delete folder\",\n content: `You are about to delete the folder \"${folder.title}\"! Are you sure you want to continue?`,\n acceptLabel: \"Delete folder\",\n cancelLabel: \"Cancel\",\n loadingLabel: \"Deleting folder...\",\n onAccept: () => onAccept(folder)\n });\n };\n\n return {\n showDialog\n };\n};\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,UAAU,QAAQ,mBAAmB;AAC9C,SAASC,eAAe;AAExB,SAASC,WAAW,QAAQ,OAAO;AAUnC,OAAO,MAAMC,eAAe,GAAGA,CAAA,KAA+B;EAC1D,MAAMC,OAAO,GAAGJ,UAAU,CAAC,CAAC;EAC5B,MAAM;IAAEK;EAAa,CAAC,GAAGJ,eAAe,CAAC,CAAC;EAC1C,MAAM;IAAEK;EAAa,CAAC,GAAGP,WAAW,CAAC,CAAC;EAEtC,MAAMQ,QAAQ,GAAGL,WAAW,CAAC,MAAOM,MAAkB,IAAK;IACvD,IAAI;MACA,MAAMH,YAAY,CAACG,MAAM,CAAC;MAC1BF,YAAY,CAAC,eAAeE,MAAM,CAACC,KAAK,6BAA6B,CAAC;IAC1E,CAAC,CAAC,OAAOC,KAAK,EAAE;MACZJ,YAAY,CAACI,KAAK,CAACC,OAAO,CAAC;IAC/B;EACJ,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,UAAU,GAAGA,CAAC;IAAEJ;EAAyB,CAAC,KAAK;IACjDJ,OAAO,CAACQ,UAAU,CAAC;MACfH,KAAK,EAAE,eAAe;MACtBI,OAAO,EAAE,uCAAuCL,MAAM,CAACC,KAAK,uCAAuC;MACnGK,WAAW,EAAE,eAAe;MAC5BC,WAAW,EAAE,QAAQ;MACrBC,YAAY,EAAE,oBAAoB;MAClCT,QAAQ,EAAEA,CAAA,KAAMA,QAAQ,CAACC,MAAM;IACnC,CAAC,CAAC;EACN,CAAC;EAED,OAAO;IACHI;EACJ,CAAC;AACL,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useState","Grid","Input","useSnackbar","useDialogs","Bind","validation","Extensions","FolderTree","ROOT_FOLDER","useUpdateFolder","ParentFolderField","FormComponent","folder","parentId","setParentId","createElement","Fragment","Column","span","name","defaultValue","title","validators","create","label","size","required","autoFocus","slug","onChange","focusedFolderId","hiddenFolderIds","id","onFolderClick","enableCreate","useEditDialog","dialog","updateFolder","showSnackbar","onAccept","data","error","message","showDialog","content","formData","acceptLabel","cancelLabel","loadingLabel"],"sources":["useEditDialog.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport { Grid, Input } from \"@webiny/admin-ui\";\nimport { useSnackbar, useDialogs } from \"@webiny/app-admin\";\nimport {
|
|
1
|
+
{"version":3,"names":["React","useCallback","useState","Grid","Input","useSnackbar","useDialogs","Bind","validation","Extensions","FolderTree","ROOT_FOLDER","useUpdateFolder","ParentFolderField","FormComponent","folder","parentId","setParentId","createElement","Fragment","Column","span","name","defaultValue","title","validators","create","label","size","required","autoFocus","slug","onChange","focusedFolderId","hiddenFolderIds","id","onFolderClick","enableCreate","useEditDialog","dialog","updateFolder","showSnackbar","onAccept","data","error","message","showDialog","content","formData","acceptLabel","cancelLabel","loadingLabel"],"sources":["useEditDialog.tsx"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport { Grid, Input } from \"@webiny/admin-ui\";\nimport { useSnackbar, useDialogs } from \"@webiny/app-admin\";\nimport type { GenericFormData } from \"@webiny/form\";\nimport { Bind } from \"@webiny/form\";\nimport { validation } from \"@webiny/validation\";\nimport { Extensions, FolderTree } from \"~/components\";\nimport { ROOT_FOLDER } from \"~/constants\";\nimport { useUpdateFolder } from \"~/features\";\nimport type { FolderItem } from \"~/types\";\nimport { ParentFolderField } from \"./ParentFolderField\";\n\ninterface ShowDialogParams {\n folder: FolderItem;\n}\n\ninterface UseEditDialogResponse {\n showDialog: (params: ShowDialogParams) => void;\n}\n\ninterface FormComponentProps {\n folder: FolderItem;\n}\n\nconst FormComponent = ({ folder }: FormComponentProps) => {\n const [parentId, setParentId] = useState<string | null>(folder.parentId);\n\n return (\n <>\n <Grid>\n <Grid.Column span={12}>\n <Bind\n name={\"title\"}\n defaultValue={folder.title}\n validators={[validation.create(\"required\")]}\n >\n <Input label={\"Title\"} size={\"lg\"} required autoFocus />\n </Bind>\n </Grid.Column>\n <Grid.Column span={12}>\n <Bind\n name={\"slug\"}\n defaultValue={folder.slug}\n validators={[validation.create(\"required,slug\")]}\n >\n <Input label={\"Slug\"} size={\"lg\"} required />\n </Bind>\n </Grid.Column>\n <Grid.Column span={12}>\n <ParentFolderField>\n <Bind name={\"parentId\"} defaultValue={parentId}>\n {({ onChange }) => (\n <FolderTree\n focusedFolderId={parentId || ROOT_FOLDER}\n hiddenFolderIds={[folder.id]}\n onFolderClick={folder => {\n setParentId(folder.id);\n onChange(folder.id === ROOT_FOLDER ? null : folder.id);\n }}\n enableCreate={true}\n />\n )}\n </Bind>\n </ParentFolderField>\n </Grid.Column>\n </Grid>\n <Extensions />\n </>\n );\n};\n\nexport const useEditDialog = (): UseEditDialogResponse => {\n const dialog = useDialogs();\n const { updateFolder } = useUpdateFolder();\n const { showSnackbar } = useSnackbar();\n\n const onAccept = useCallback(async (folder: FolderItem, data: GenericFormData) => {\n try {\n await updateFolder({\n ...folder,\n ...data\n });\n showSnackbar(`The folder \"${data.title}\" was updated successfully!`);\n } catch (error) {\n showSnackbar(error.message);\n }\n }, []);\n\n const showDialog = ({ folder }: ShowDialogParams) => {\n dialog.showDialog({\n title: \"Edit folder\",\n content: <FormComponent folder={folder} />,\n formData: folder,\n acceptLabel: \"Edit folder\",\n cancelLabel: \"Cancel\",\n loadingLabel: \"Editing folder...\",\n onAccept: (data: GenericFormData) => onAccept(folder, data)\n });\n };\n\n return {\n showDialog\n };\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,QAAQ,QAAQ,OAAO;AACpD,SAASC,IAAI,EAAEC,KAAK,QAAQ,kBAAkB;AAC9C,SAASC,WAAW,EAAEC,UAAU,QAAQ,mBAAmB;AAE3D,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASC,UAAU,EAAEC,UAAU;AAC/B,SAASC,WAAW;AACpB,SAASC,eAAe;AAExB,SAASC,iBAAiB;AAc1B,MAAMC,aAAa,GAAGA,CAAC;EAAEC;AAA2B,CAAC,KAAK;EACtD,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAGf,QAAQ,CAAgBa,MAAM,CAACC,QAAQ,CAAC;EAExE,oBACIhB,KAAA,CAAAkB,aAAA,CAAAlB,KAAA,CAAAmB,QAAA,qBACInB,KAAA,CAAAkB,aAAA,CAACf,IAAI,qBACDH,KAAA,CAAAkB,aAAA,CAACf,IAAI,CAACiB,MAAM;IAACC,IAAI,EAAE;EAAG,gBAClBrB,KAAA,CAAAkB,aAAA,CAACX,IAAI;IACDe,IAAI,EAAE,OAAQ;IACdC,YAAY,EAAER,MAAM,CAACS,KAAM;IAC3BC,UAAU,EAAE,CAACjB,UAAU,CAACkB,MAAM,CAAC,UAAU,CAAC;EAAE,gBAE5C1B,KAAA,CAAAkB,aAAA,CAACd,KAAK;IAACuB,KAAK,EAAE,OAAQ;IAACC,IAAI,EAAE,IAAK;IAACC,QAAQ;IAACC,SAAS;EAAA,CAAE,CACrD,CACG,CAAC,eACd9B,KAAA,CAAAkB,aAAA,CAACf,IAAI,CAACiB,MAAM;IAACC,IAAI,EAAE;EAAG,gBAClBrB,KAAA,CAAAkB,aAAA,CAACX,IAAI;IACDe,IAAI,EAAE,MAAO;IACbC,YAAY,EAAER,MAAM,CAACgB,IAAK;IAC1BN,UAAU,EAAE,CAACjB,UAAU,CAACkB,MAAM,CAAC,eAAe,CAAC;EAAE,gBAEjD1B,KAAA,CAAAkB,aAAA,CAACd,KAAK;IAACuB,KAAK,EAAE,MAAO;IAACC,IAAI,EAAE,IAAK;IAACC,QAAQ;EAAA,CAAE,CAC1C,CACG,CAAC,eACd7B,KAAA,CAAAkB,aAAA,CAACf,IAAI,CAACiB,MAAM;IAACC,IAAI,EAAE;EAAG,gBAClBrB,KAAA,CAAAkB,aAAA,CAACL,iBAAiB,qBACdb,KAAA,CAAAkB,aAAA,CAACX,IAAI;IAACe,IAAI,EAAE,UAAW;IAACC,YAAY,EAAEP;EAAS,GAC1C,CAAC;IAAEgB;EAAS,CAAC,kBACVhC,KAAA,CAAAkB,aAAA,CAACR,UAAU;IACPuB,eAAe,EAAEjB,QAAQ,IAAIL,WAAY;IACzCuB,eAAe,EAAE,CAACnB,MAAM,CAACoB,EAAE,CAAE;IAC7BC,aAAa,EAAErB,MAAM,IAAI;MACrBE,WAAW,CAACF,MAAM,CAACoB,EAAE,CAAC;MACtBH,QAAQ,CAACjB,MAAM,CAACoB,EAAE,KAAKxB,WAAW,GAAG,IAAI,GAAGI,MAAM,CAACoB,EAAE,CAAC;IAC1D,CAAE;IACFE,YAAY,EAAE;EAAK,CACtB,CAEH,CACS,CACV,CACX,CAAC,eACPrC,KAAA,CAAAkB,aAAA,CAACT,UAAU,MAAE,CACf,CAAC;AAEX,CAAC;AAED,OAAO,MAAM6B,aAAa,GAAGA,CAAA,KAA6B;EACtD,MAAMC,MAAM,GAAGjC,UAAU,CAAC,CAAC;EAC3B,MAAM;IAAEkC;EAAa,CAAC,GAAG5B,eAAe,CAAC,CAAC;EAC1C,MAAM;IAAE6B;EAAa,CAAC,GAAGpC,WAAW,CAAC,CAAC;EAEtC,MAAMqC,QAAQ,GAAGzC,WAAW,CAAC,OAAOc,MAAkB,EAAE4B,IAAqB,KAAK;IAC9E,IAAI;MACA,MAAMH,YAAY,CAAC;QACf,GAAGzB,MAAM;QACT,GAAG4B;MACP,CAAC,CAAC;MACFF,YAAY,CAAC,eAAeE,IAAI,CAACnB,KAAK,6BAA6B,CAAC;IACxE,CAAC,CAAC,OAAOoB,KAAK,EAAE;MACZH,YAAY,CAACG,KAAK,CAACC,OAAO,CAAC;IAC/B;EACJ,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,UAAU,GAAGA,CAAC;IAAE/B;EAAyB,CAAC,KAAK;IACjDwB,MAAM,CAACO,UAAU,CAAC;MACdtB,KAAK,EAAE,aAAa;MACpBuB,OAAO,eAAE/C,KAAA,CAAAkB,aAAA,CAACJ,aAAa;QAACC,MAAM,EAAEA;MAAO,CAAE,CAAC;MAC1CiC,QAAQ,EAAEjC,MAAM;MAChBkC,WAAW,EAAE,aAAa;MAC1BC,WAAW,EAAE,QAAQ;MACrBC,YAAY,EAAE,mBAAmB;MACjCT,QAAQ,EAAGC,IAAqB,IAAKD,QAAQ,CAAC3B,MAAM,EAAE4B,IAAI;IAC9D,CAAC,CAAC;EACN,CAAC;EAED,OAAO;IACHG;EACJ,CAAC;AACL,CAAC","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import type { GenericFormData } from "@webiny/form";
|
|
3
4
|
interface ShowDialogParams {
|
|
4
5
|
title?: ReactNode;
|
|
5
6
|
message?: ReactNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","i18n","Bind","useDialogs","FolderTree","ParentFolderField","t","ns","Message","helpText","focusedFolderId","createElement","Fragment","label","name","defaultValue","id","value","onChange","onFolderClick","enableCreate","useMoveToFolderDialog","dialogs","showDialog","title","message","acceptLabel","cancelLabel","loadingLabel","onAccept","onClose","content","data"],"sources":["useMoveToFolderDialog.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"names":["React","i18n","Bind","useDialogs","FolderTree","ParentFolderField","t","ns","Message","helpText","focusedFolderId","createElement","Fragment","label","name","defaultValue","id","value","onChange","onFolderClick","enableCreate","useMoveToFolderDialog","dialogs","showDialog","title","message","acceptLabel","cancelLabel","loadingLabel","onAccept","onClose","content","data"],"sources":["useMoveToFolderDialog.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport React from \"react\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport type { GenericFormData } from \"@webiny/form\";\nimport { Bind } from \"@webiny/form\";\nimport { useDialogs } from \"@webiny/app-admin\";\nimport { FolderTree } from \"~/components\";\nimport { ParentFolderField } from \"./ParentFolderField\";\n\nconst t = i18n.ns(\"app-aco/dialogs/use-move-to-folder-dialog\");\n\ninterface ShowDialogParams {\n title?: ReactNode;\n message?: ReactNode;\n acceptLabel?: ReactNode;\n cancelLabel?: ReactNode;\n loadingLabel?: ReactNode;\n focusedFolderId: string;\n onAccept: (data: GenericFormData) => void;\n onClose?: () => void;\n}\n\ninterface UseMoveToFolderDialogResponse {\n showDialog: (params: ShowDialogParams) => void;\n}\n\ninterface MessageProps {\n helpText: ReactNode;\n focusedFolderId: string;\n}\n\nexport const Message = ({ helpText, focusedFolderId }: MessageProps) => {\n return (\n <>\n <ParentFolderField label={helpText}>\n <Bind name={\"folder\"} defaultValue={{ id: focusedFolderId }}>\n {({ value, onChange }) => (\n <FolderTree\n focusedFolderId={value.id}\n onFolderClick={onChange}\n enableCreate={true}\n />\n )}\n </Bind>\n </ParentFolderField>\n </>\n );\n};\n\nexport const useMoveToFolderDialog = (): UseMoveToFolderDialogResponse => {\n const dialogs = useDialogs();\n\n const showDialog = ({\n title = t`Move item`,\n message = t`Are you sure you want to continue?`,\n acceptLabel = t`Move item`,\n cancelLabel = t`Cancel`,\n loadingLabel = t`Moving item`,\n onAccept,\n onClose,\n focusedFolderId\n }: ShowDialogParams) => {\n dialogs.showDialog({\n title,\n content: <Message helpText={message} focusedFolderId={focusedFolderId} />,\n acceptLabel,\n cancelLabel,\n loadingLabel,\n onAccept: (data: GenericFormData) => onAccept(data),\n onClose\n });\n };\n\n return {\n showDialog\n };\n};\n"],"mappings":"AACA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,kBAAkB;AAEvC,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,UAAU,QAAQ,mBAAmB;AAC9C,SAASC,UAAU;AACnB,SAASC,iBAAiB;AAE1B,MAAMC,CAAC,GAAGL,IAAI,CAACM,EAAE,CAAC,2CAA2C,CAAC;AAsB9D,OAAO,MAAMC,OAAO,GAAGA,CAAC;EAAEC,QAAQ;EAAEC;AAA8B,CAAC,KAAK;EACpE,oBACIV,KAAA,CAAAW,aAAA,CAAAX,KAAA,CAAAY,QAAA,qBACIZ,KAAA,CAAAW,aAAA,CAACN,iBAAiB;IAACQ,KAAK,EAAEJ;EAAS,gBAC/BT,KAAA,CAAAW,aAAA,CAACT,IAAI;IAACY,IAAI,EAAE,QAAS;IAACC,YAAY,EAAE;MAAEC,EAAE,EAAEN;IAAgB;EAAE,GACvD,CAAC;IAAEO,KAAK;IAAEC;EAAS,CAAC,kBACjBlB,KAAA,CAAAW,aAAA,CAACP,UAAU;IACPM,eAAe,EAAEO,KAAK,CAACD,EAAG;IAC1BG,aAAa,EAAED,QAAS;IACxBE,YAAY,EAAE;EAAK,CACtB,CAEH,CACS,CACrB,CAAC;AAEX,CAAC;AAED,OAAO,MAAMC,qBAAqB,GAAGA,CAAA,KAAqC;EACtE,MAAMC,OAAO,GAAGnB,UAAU,CAAC,CAAC;EAE5B,MAAMoB,UAAU,GAAGA,CAAC;IAChBC,KAAK,GAAGlB,CAAC,WAAW;IACpBmB,OAAO,GAAGnB,CAAC,oCAAoC;IAC/CoB,WAAW,GAAGpB,CAAC,WAAW;IAC1BqB,WAAW,GAAGrB,CAAC,QAAQ;IACvBsB,YAAY,GAAGtB,CAAC,aAAa;IAC7BuB,QAAQ;IACRC,OAAO;IACPpB;EACc,CAAC,KAAK;IACpBY,OAAO,CAACC,UAAU,CAAC;MACfC,KAAK;MACLO,OAAO,eAAE/B,KAAA,CAAAW,aAAA,CAACH,OAAO;QAACC,QAAQ,EAAEgB,OAAQ;QAACf,eAAe,EAAEA;MAAgB,CAAE,CAAC;MACzEgB,WAAW;MACXC,WAAW;MACXC,YAAY;MACZC,QAAQ,EAAGG,IAAqB,IAAKH,QAAQ,CAACG,IAAI,CAAC;MACnDF;IACJ,CAAC,CAAC;EACN,CAAC;EAED,OAAO;IACHP;EACJ,CAAC;AACL,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useEffect","useState","useQuery","Grid","useDialogs","useSnackbar","useBind","UsersTeamsMultiAutocomplete","UsersTeamsSelection","LIST_FOLDER_LEVEL_PERMISSIONS_TARGETS","useUpdateFolder","FormComponent","folder","permissions","setPermissions","listTargetsQuery","targetsList","data","aco","listFolderLevelPermissionsTargets","bind","name","onChange","addPermission","value","selectedUserOrTeam","length","newPermission","target","level","slice","updatePermission","permission","updatedPermission","map","removeUserTeam","item","filter","createElement","Column","span","options","onRemoveAccess","onUpdatePermission","useSetPermissionsDialog","dialogs","updateFolder","showSnackbar","onAccept","updateData","error","message","showDialog","title","content","acceptLabel","cancelLabel","loadingLabel"],"sources":["useSetPermissionsDialog.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from \"react\";\nimport { useQuery } from \"@apollo/react-hooks\";\nimport { Grid } from \"@webiny/admin-ui\";\nimport { useDialogs, useSnackbar } from \"@webiny/app-admin\";\nimport { GenericFormData
|
|
1
|
+
{"version":3,"names":["React","useCallback","useEffect","useState","useQuery","Grid","useDialogs","useSnackbar","useBind","UsersTeamsMultiAutocomplete","UsersTeamsSelection","LIST_FOLDER_LEVEL_PERMISSIONS_TARGETS","useUpdateFolder","FormComponent","folder","permissions","setPermissions","listTargetsQuery","targetsList","data","aco","listFolderLevelPermissionsTargets","bind","name","onChange","addPermission","value","selectedUserOrTeam","length","newPermission","target","level","slice","updatePermission","permission","updatedPermission","map","removeUserTeam","item","filter","createElement","Column","span","options","onRemoveAccess","onUpdatePermission","useSetPermissionsDialog","dialogs","updateFolder","showSnackbar","onAccept","updateData","error","message","showDialog","title","content","acceptLabel","cancelLabel","loadingLabel"],"sources":["useSetPermissionsDialog.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from \"react\";\nimport { useQuery } from \"@apollo/react-hooks\";\nimport { Grid } from \"@webiny/admin-ui\";\nimport { useDialogs, useSnackbar } from \"@webiny/app-admin\";\nimport type { GenericFormData } from \"@webiny/form\";\nimport { useBind } from \"@webiny/form\";\nimport { UsersTeamsMultiAutocomplete } from \"./DialogSetPermissions/UsersTeamsMultiAutocomplete\";\nimport { UsersTeamsSelection } from \"./DialogSetPermissions/UsersTeamsSelection\";\nimport { LIST_FOLDER_LEVEL_PERMISSIONS_TARGETS } from \"./DialogSetPermissions/graphql\";\nimport { useUpdateFolder } from \"~/features\";\nimport type { FolderItem, FolderLevelPermissionsTarget, FolderPermission } from \"~/types\";\n\ninterface ShowDialogParams {\n folder: FolderItem;\n}\n\ninterface UseSetPermissionsDialogResponse {\n showDialog: (params: ShowDialogParams) => void;\n}\n\ninterface FormComponentProps {\n folder: FolderItem;\n}\n\ninterface UpdatePermissionCallableParams {\n permission: FolderPermission;\n}\n\ninterface UpdatePermissionCallable {\n (params: UpdatePermissionCallableParams): void;\n}\n\ninterface RemoveUserTeamCallableParams {\n permission: FolderPermission;\n}\n\ninterface RemoveUserTeamCallable {\n (params: RemoveUserTeamCallableParams): void;\n}\n\nconst FormComponent = ({ folder }: FormComponentProps) => {\n const [permissions, setPermissions] = useState<FolderPermission[]>(folder.permissions || []); // Moved useState outside showDialog\n const listTargetsQuery = useQuery(LIST_FOLDER_LEVEL_PERMISSIONS_TARGETS);\n const targetsList: FolderLevelPermissionsTarget[] =\n listTargetsQuery.data?.aco.listFolderLevelPermissionsTargets.data || [];\n\n const bind = useBind({\n name: \"permissions\"\n });\n\n useEffect(() => {\n bind.onChange(permissions);\n }, [permissions]);\n\n const addPermission = useCallback(\n (value: FolderPermission[\"target\"][]) => {\n const selectedUserOrTeam = value[value.length - 1];\n const newPermission: FolderPermission = {\n target: selectedUserOrTeam,\n level: \"viewer\"\n };\n\n // We want to add the new permission to the 2nd position in the array.\n // The 1st position is reserved for the \"current user\" permission.\n setPermissions([permissions[0], newPermission, ...permissions.slice(1)]);\n },\n [permissions]\n );\n\n const updatePermission = useCallback<UpdatePermissionCallable>(\n ({ permission: updatedPermission }) => {\n setPermissions(\n permissions.map(permission => {\n if (permission.target === updatedPermission.target) {\n return updatedPermission;\n }\n return permission;\n })\n );\n },\n [permissions]\n );\n\n const removeUserTeam = useCallback<RemoveUserTeamCallable>(\n item => {\n setPermissions(\n permissions.filter(permission => permission.target !== item.permission.target)\n );\n },\n [permissions]\n );\n\n return (\n <Grid>\n <Grid.Column span={12}>\n <UsersTeamsMultiAutocomplete\n options={targetsList}\n value={permissions.map(permission => permission.target)}\n onChange={addPermission}\n />\n </Grid.Column>\n <Grid.Column span={12}>\n <UsersTeamsSelection\n permissions={permissions}\n targetsList={targetsList}\n onRemoveAccess={removeUserTeam}\n onUpdatePermission={updatePermission}\n />\n </Grid.Column>\n </Grid>\n );\n};\n\nexport const useSetPermissionsDialog = (): UseSetPermissionsDialogResponse => {\n const dialogs = useDialogs();\n const { updateFolder } = useUpdateFolder();\n const { showSnackbar } = useSnackbar();\n\n const onAccept = useCallback(async (folder: FolderItem, data: Partial<FolderItem>) => {\n const updateData = { ...folder, ...data };\n\n try {\n await updateFolder(updateData);\n showSnackbar(\"Folder permissions updated successfully!\");\n } catch (error) {\n showSnackbar(error.message);\n }\n }, []);\n\n const showDialog = ({ folder }: ShowDialogParams) => {\n dialogs.showDialog({\n title: `Manage permissions - ${folder.title}`,\n content: <FormComponent folder={folder} />,\n acceptLabel: \"Save\",\n cancelLabel: \"Cancel\",\n loadingLabel: \"Updating permissions...\",\n onAccept: (data: GenericFormData) => onAccept(folder, data)\n });\n };\n\n return {\n showDialog\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ROOT_FOLDER","Folder","constructor","folder","id","title","slug","type","parentId","path","permissions","hasNonInheritedPermissions","canManagePermissions","canManageStructure","canManageContent","createdBy","createdOn","savedBy","savedOn","modifiedBy","modifiedOn","extensions","create"],"sources":["Folder.ts"],"sourcesContent":["import { CmsIdentity, FolderPermission } from \"~/types\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\nexport interface FolderData {\n id?: string;\n title: string;\n slug: string;\n type: string;\n parentId: string | null;\n path?: string;\n permissions: FolderPermission[];\n hasNonInheritedPermissions?: boolean;\n canManagePermissions?: boolean;\n canManageStructure?: boolean;\n canManageContent?: boolean;\n createdBy?: CmsIdentity;\n createdOn?: string;\n savedBy?: CmsIdentity;\n savedOn?: string;\n modifiedBy?: CmsIdentity | null;\n modifiedOn?: string | null;\n extensions?: Record<string, any>;\n}\n\nexport class Folder {\n public id: string;\n public title: string;\n public slug: string;\n public type: string;\n public parentId: string | null;\n public path: string;\n public permissions: FolderPermission[];\n public hasNonInheritedPermissions?: boolean;\n public canManagePermissions?: boolean;\n public canManageStructure?: boolean;\n public canManageContent?: boolean;\n public createdBy?: CmsIdentity;\n public createdOn?: string;\n public savedBy?: CmsIdentity;\n public savedOn?: string;\n public modifiedBy?: CmsIdentity | null;\n public modifiedOn?: string | null;\n public extensions: Record<string, any>;\n\n protected constructor(folder: FolderData) {\n this.id = folder.id ?? \"\";\n this.title = folder.title;\n this.slug = folder.slug;\n this.type = folder.type;\n this.parentId = folder.parentId;\n this.path = folder.path ?? `${ROOT_FOLDER}/${folder.slug}`;\n this.permissions = folder.permissions;\n this.hasNonInheritedPermissions = folder.hasNonInheritedPermissions;\n this.canManagePermissions = folder.canManagePermissions;\n this.canManageStructure = folder.canManageStructure;\n this.canManageContent = folder.canManageContent;\n this.createdBy = folder.createdBy;\n this.createdOn = folder.createdOn;\n this.savedBy = folder.savedBy;\n this.savedOn = folder.savedOn;\n this.modifiedBy = folder.modifiedBy;\n this.modifiedOn = folder.modifiedOn;\n this.extensions = folder.extensions ?? {};\n }\n\n static create(folder: FolderData) {\n return new Folder(folder);\n }\n}\n"],"mappings":"AACA,SAASA,WAAW;AAuBpB,OAAO,MAAMC,MAAM,CAAC;EAoBNC,WAAWA,CAACC,MAAkB,EAAE;IACtC,IAAI,CAACC,EAAE,GAAGD,MAAM,CAACC,EAAE,IAAI,EAAE;IACzB,IAAI,CAACC,KAAK,GAAGF,MAAM,CAACE,KAAK;IACzB,IAAI,CAACC,IAAI,GAAGH,MAAM,CAACG,IAAI;IACvB,IAAI,CAACC,IAAI,GAAGJ,MAAM,CAACI,IAAI;IACvB,IAAI,CAACC,QAAQ,GAAGL,MAAM,CAACK,QAAQ;IAC/B,IAAI,CAACC,IAAI,GAAGN,MAAM,CAACM,IAAI,IAAI,GAAGT,WAAW,IAAIG,MAAM,CAACG,IAAI,EAAE;IAC1D,IAAI,CAACI,WAAW,GAAGP,MAAM,CAACO,WAAW;IACrC,IAAI,CAACC,0BAA0B,GAAGR,MAAM,CAACQ,0BAA0B;IACnE,IAAI,CAACC,oBAAoB,GAAGT,MAAM,CAACS,oBAAoB;IACvD,IAAI,CAACC,kBAAkB,GAAGV,MAAM,CAACU,kBAAkB;IACnD,IAAI,CAACC,gBAAgB,GAAGX,MAAM,CAACW,gBAAgB;IAC/C,IAAI,CAACC,SAAS,GAAGZ,MAAM,CAACY,SAAS;IACjC,IAAI,CAACC,SAAS,GAAGb,MAAM,CAACa,SAAS;IACjC,IAAI,CAACC,OAAO,GAAGd,MAAM,CAACc,OAAO;IAC7B,IAAI,CAACC,OAAO,GAAGf,MAAM,CAACe,OAAO;IAC7B,IAAI,CAACC,UAAU,GAAGhB,MAAM,CAACgB,UAAU;IACnC,IAAI,CAACC,UAAU,GAAGjB,MAAM,CAACiB,UAAU;IACnC,IAAI,CAACC,UAAU,GAAGlB,MAAM,CAACkB,UAAU,IAAI,CAAC,CAAC;EAC7C;EAEA,OAAOC,MAAMA,CAACnB,MAAkB,EAAE;IAC9B,OAAO,IAAIF,MAAM,CAACE,MAAM,CAAC;EAC7B;AACJ","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["ROOT_FOLDER","Folder","constructor","folder","id","title","slug","type","parentId","path","permissions","hasNonInheritedPermissions","canManagePermissions","canManageStructure","canManageContent","createdBy","createdOn","savedBy","savedOn","modifiedBy","modifiedOn","extensions","create"],"sources":["Folder.ts"],"sourcesContent":["import type { CmsIdentity, FolderPermission } from \"~/types\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\nexport interface FolderData {\n id?: string;\n title: string;\n slug: string;\n type: string;\n parentId: string | null;\n path?: string;\n permissions: FolderPermission[];\n hasNonInheritedPermissions?: boolean;\n canManagePermissions?: boolean;\n canManageStructure?: boolean;\n canManageContent?: boolean;\n createdBy?: CmsIdentity;\n createdOn?: string;\n savedBy?: CmsIdentity;\n savedOn?: string;\n modifiedBy?: CmsIdentity | null;\n modifiedOn?: string | null;\n extensions?: Record<string, any>;\n}\n\nexport class Folder {\n public id: string;\n public title: string;\n public slug: string;\n public type: string;\n public parentId: string | null;\n public path: string;\n public permissions: FolderPermission[];\n public hasNonInheritedPermissions?: boolean;\n public canManagePermissions?: boolean;\n public canManageStructure?: boolean;\n public canManageContent?: boolean;\n public createdBy?: CmsIdentity;\n public createdOn?: string;\n public savedBy?: CmsIdentity;\n public savedOn?: string;\n public modifiedBy?: CmsIdentity | null;\n public modifiedOn?: string | null;\n public extensions: Record<string, any>;\n\n protected constructor(folder: FolderData) {\n this.id = folder.id ?? \"\";\n this.title = folder.title;\n this.slug = folder.slug;\n this.type = folder.type;\n this.parentId = folder.parentId;\n this.path = folder.path ?? `${ROOT_FOLDER}/${folder.slug}`;\n this.permissions = folder.permissions;\n this.hasNonInheritedPermissions = folder.hasNonInheritedPermissions;\n this.canManagePermissions = folder.canManagePermissions;\n this.canManageStructure = folder.canManageStructure;\n this.canManageContent = folder.canManageContent;\n this.createdBy = folder.createdBy;\n this.createdOn = folder.createdOn;\n this.savedBy = folder.savedBy;\n this.savedOn = folder.savedOn;\n this.modifiedBy = folder.modifiedBy;\n this.modifiedOn = folder.modifiedOn;\n this.extensions = folder.extensions ?? {};\n }\n\n static create(folder: FolderData) {\n return new Folder(folder);\n }\n}\n"],"mappings":"AACA,SAASA,WAAW;AAuBpB,OAAO,MAAMC,MAAM,CAAC;EAoBNC,WAAWA,CAACC,MAAkB,EAAE;IACtC,IAAI,CAACC,EAAE,GAAGD,MAAM,CAACC,EAAE,IAAI,EAAE;IACzB,IAAI,CAACC,KAAK,GAAGF,MAAM,CAACE,KAAK;IACzB,IAAI,CAACC,IAAI,GAAGH,MAAM,CAACG,IAAI;IACvB,IAAI,CAACC,IAAI,GAAGJ,MAAM,CAACI,IAAI;IACvB,IAAI,CAACC,QAAQ,GAAGL,MAAM,CAACK,QAAQ;IAC/B,IAAI,CAACC,IAAI,GAAGN,MAAM,CAACM,IAAI,IAAI,GAAGT,WAAW,IAAIG,MAAM,CAACG,IAAI,EAAE;IAC1D,IAAI,CAACI,WAAW,GAAGP,MAAM,CAACO,WAAW;IACrC,IAAI,CAACC,0BAA0B,GAAGR,MAAM,CAACQ,0BAA0B;IACnE,IAAI,CAACC,oBAAoB,GAAGT,MAAM,CAACS,oBAAoB;IACvD,IAAI,CAACC,kBAAkB,GAAGV,MAAM,CAACU,kBAAkB;IACnD,IAAI,CAACC,gBAAgB,GAAGX,MAAM,CAACW,gBAAgB;IAC/C,IAAI,CAACC,SAAS,GAAGZ,MAAM,CAACY,SAAS;IACjC,IAAI,CAACC,SAAS,GAAGb,MAAM,CAACa,SAAS;IACjC,IAAI,CAACC,OAAO,GAAGd,MAAM,CAACc,OAAO;IAC7B,IAAI,CAACC,OAAO,GAAGf,MAAM,CAACe,OAAO;IAC7B,IAAI,CAACC,UAAU,GAAGhB,MAAM,CAACgB,UAAU;IACnC,IAAI,CAACC,UAAU,GAAGjB,MAAM,CAACiB,UAAU;IACnC,IAAI,CAACC,UAAU,GAAGlB,MAAM,CAACkB,UAAU,IAAI,CAAC,CAAC;EAC7C;EAEA,OAAOC,MAAMA,CAACnB,MAAkB,EAAE;IAC9B,OAAO,IAAIF,MAAM,CAACE,MAAM,CAAC;EAC7B;AACJ","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ListCache","FoldersCacheFactory","cache","Map","getCache","namespace","cacheKey","getCacheKey","has","set","get","folderCacheFactory"],"sources":["FoldersCacheFactory.ts"],"sourcesContent":["import { Folder } from \"../Folder\";\nimport { type IListCache, ListCache } from \"~/features/folders/cache/ListCache\";\n\nexport class FoldersCacheFactory {\n private cache: Map<string, IListCache<Folder>> = new Map();\n\n getCache(namespace: string) {\n const cacheKey = this.getCacheKey(namespace);\n\n if (!this.cache.has(cacheKey)) {\n this.cache.set(cacheKey, new ListCache<Folder>());\n }\n\n return this.cache.get(cacheKey) as ListCache<Folder>;\n }\n\n private getCacheKey(namespace: string) {\n return namespace;\n }\n}\n\nexport const folderCacheFactory = new FoldersCacheFactory();\n"],"mappings":"AACA,SAA0BA,SAAS;AAEnC,OAAO,MAAMC,mBAAmB,CAAC;EACrBC,KAAK,GAAoC,IAAIC,GAAG,CAAC,CAAC;EAE1DC,QAAQA,CAACC,SAAiB,EAAE;IACxB,MAAMC,QAAQ,GAAG,IAAI,CAACC,WAAW,CAACF,SAAS,CAAC;IAE5C,IAAI,CAAC,IAAI,CAACH,KAAK,CAACM,GAAG,CAACF,QAAQ,CAAC,EAAE;MAC3B,IAAI,CAACJ,KAAK,CAACO,GAAG,CAACH,QAAQ,EAAE,IAAIN,SAAS,CAAS,CAAC,CAAC;IACrD;IAEA,OAAO,IAAI,CAACE,KAAK,CAACQ,GAAG,CAACJ,QAAQ,CAAC;EACnC;EAEQC,WAAWA,CAACF,SAAiB,EAAE;IACnC,OAAOA,SAAS;EACpB;AACJ;AAEA,OAAO,MAAMM,kBAAkB,GAAG,IAAIV,mBAAmB,CAAC,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["ListCache","FoldersCacheFactory","cache","Map","getCache","namespace","cacheKey","getCacheKey","has","set","get","folderCacheFactory"],"sources":["FoldersCacheFactory.ts"],"sourcesContent":["import type { Folder } from \"../Folder\";\nimport { type IListCache, ListCache } from \"~/features/folders/cache/ListCache\";\n\nexport class FoldersCacheFactory {\n private cache: Map<string, IListCache<Folder>> = new Map();\n\n getCache(namespace: string) {\n const cacheKey = this.getCacheKey(namespace);\n\n if (!this.cache.has(cacheKey)) {\n this.cache.set(cacheKey, new ListCache<Folder>());\n }\n\n return this.cache.get(cacheKey) as ListCache<Folder>;\n }\n\n private getCacheKey(namespace: string) {\n return namespace;\n }\n}\n\nexport const folderCacheFactory = new FoldersCacheFactory();\n"],"mappings":"AACA,SAA0BA,SAAS;AAEnC,OAAO,MAAMC,mBAAmB,CAAC;EACrBC,KAAK,GAAoC,IAAIC,GAAG,CAAC,CAAC;EAE1DC,QAAQA,CAACC,SAAiB,EAAE;IACxB,MAAMC,QAAQ,GAAG,IAAI,CAACC,WAAW,CAACF,SAAS,CAAC;IAE5C,IAAI,CAAC,IAAI,CAACH,KAAK,CAACM,GAAG,CAACF,QAAQ,CAAC,EAAE;MAC3B,IAAI,CAACJ,KAAK,CAACO,GAAG,CAACH,QAAQ,EAAE,IAAIN,SAAS,CAAS,CAAC,CAAC;IACrD;IAEA,OAAO,IAAI,CAACE,KAAK,CAACQ,GAAG,CAACJ,QAAQ,CAAC;EACnC;EAEQC,WAAWA,CAACF,SAAiB,EAAE;IACnC,OAAOA,SAAS;EACpB;AACJ;AAEA,OAAO,MAAMM,kBAAkB,GAAG,IAAIV,mBAAmB,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ICreateFolderUseCase } from "./ICreateFolderUseCase";
|
|
2
|
-
import { ICreateFolderGateway } from "./ICreateFolderGateway";
|
|
1
|
+
import type { ICreateFolderUseCase } from "./ICreateFolderUseCase";
|
|
2
|
+
import type { ICreateFolderGateway } from "./ICreateFolderGateway";
|
|
3
3
|
export declare class CreateFolder {
|
|
4
4
|
static getInstance(type: string, gateway: ICreateFolderGateway): ICreateFolderUseCase;
|
|
5
5
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["loadingRepositoryFactory","CreateFolderRepository","CreateFolderUseCase","CreateFolderUseCaseWithLoading","folderCacheFactory","CreateFolder","getInstance","type","gateway","foldersCache","getCache","loadingRepository","getRepository","repository","useCase"],"sources":["CreateFolder.ts"],"sourcesContent":["import { loadingRepositoryFactory } from \"@webiny/app-utils\";\nimport { ICreateFolderUseCase } from \"./ICreateFolderUseCase\";\nimport { ICreateFolderGateway } from \"./ICreateFolderGateway\";\nimport { CreateFolderRepository } from \"./CreateFolderRepository\";\nimport { CreateFolderUseCase } from \"./CreateFolderUseCase\";\nimport { CreateFolderUseCaseWithLoading } from \"./CreateFolderUseCaseWithLoading\";\nimport { folderCacheFactory } from \"../cache\";\n\nexport class CreateFolder {\n public static getInstance(type: string, gateway: ICreateFolderGateway): ICreateFolderUseCase {\n const foldersCache = folderCacheFactory.getCache(type);\n const loadingRepository = loadingRepositoryFactory.getRepository(type);\n const repository = new CreateFolderRepository(foldersCache, gateway, type);\n const useCase = new CreateFolderUseCase(repository);\n return new CreateFolderUseCaseWithLoading(loadingRepository, useCase);\n }\n}\n"],"mappings":"AAAA,SAASA,wBAAwB,QAAQ,mBAAmB;AAG5D,SAASC,sBAAsB;AAC/B,SAASC,mBAAmB;AAC5B,SAASC,8BAA8B;AACvC,SAASC,kBAAkB;AAE3B,OAAO,MAAMC,YAAY,CAAC;EACtB,OAAcC,WAAWA,CAACC,IAAY,EAAEC,OAA6B,EAAwB;IACzF,MAAMC,YAAY,GAAGL,kBAAkB,CAACM,QAAQ,CAACH,IAAI,CAAC;IACtD,MAAMI,iBAAiB,GAAGX,wBAAwB,CAACY,aAAa,CAACL,IAAI,CAAC;IACtE,MAAMM,UAAU,GAAG,IAAIZ,sBAAsB,CAACQ,YAAY,EAAED,OAAO,EAAED,IAAI,CAAC;IAC1E,MAAMO,OAAO,GAAG,IAAIZ,mBAAmB,CAACW,UAAU,CAAC;IACnD,OAAO,IAAIV,8BAA8B,CAACQ,iBAAiB,EAAEG,OAAO,CAAC;EACzE;AACJ","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["loadingRepositoryFactory","CreateFolderRepository","CreateFolderUseCase","CreateFolderUseCaseWithLoading","folderCacheFactory","CreateFolder","getInstance","type","gateway","foldersCache","getCache","loadingRepository","getRepository","repository","useCase"],"sources":["CreateFolder.ts"],"sourcesContent":["import { loadingRepositoryFactory } from \"@webiny/app-utils\";\nimport type { ICreateFolderUseCase } from \"./ICreateFolderUseCase\";\nimport type { ICreateFolderGateway } from \"./ICreateFolderGateway\";\nimport { CreateFolderRepository } from \"./CreateFolderRepository\";\nimport { CreateFolderUseCase } from \"./CreateFolderUseCase\";\nimport { CreateFolderUseCaseWithLoading } from \"./CreateFolderUseCaseWithLoading\";\nimport { folderCacheFactory } from \"../cache\";\n\nexport class CreateFolder {\n public static getInstance(type: string, gateway: ICreateFolderGateway): ICreateFolderUseCase {\n const foldersCache = folderCacheFactory.getCache(type);\n const loadingRepository = loadingRepositoryFactory.getRepository(type);\n const repository = new CreateFolderRepository(foldersCache, gateway, type);\n const useCase = new CreateFolderUseCase(repository);\n return new CreateFolderUseCaseWithLoading(loadingRepository, useCase);\n }\n}\n"],"mappings":"AAAA,SAASA,wBAAwB,QAAQ,mBAAmB;AAG5D,SAASC,sBAAsB;AAC/B,SAASC,mBAAmB;AAC5B,SAASC,8BAA8B;AACvC,SAASC,kBAAkB;AAE3B,OAAO,MAAMC,YAAY,CAAC;EACtB,OAAcC,WAAWA,CAACC,IAAY,EAAEC,OAA6B,EAAwB;IACzF,MAAMC,YAAY,GAAGL,kBAAkB,CAACM,QAAQ,CAACH,IAAI,CAAC;IACtD,MAAMI,iBAAiB,GAAGX,wBAAwB,CAACY,aAAa,CAACL,IAAI,CAAC;IACtE,MAAMM,UAAU,GAAG,IAAIZ,sBAAsB,CAACQ,YAAY,EAAED,OAAO,EAAED,IAAI,CAAC;IAC1E,MAAMO,OAAO,GAAG,IAAIZ,mBAAmB,CAACW,UAAU,CAAC;IACnD,OAAO,IAAIV,8BAA8B,CAACQ,iBAAiB,EAAEG,OAAO,CAAC;EACzE;AACJ","ignoreList":[]}
|