@webiny/app-aco 6.0.0-alpha.5 → 6.0.0-rc.0
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/README.md +6 -404
- package/app.js +1 -1
- package/app.js.map +1 -1
- package/components/Actions/DeleteFolder/DeleteFolder.js +4 -4
- package/components/Actions/DeleteFolder/DeleteFolder.js.map +1 -1
- package/components/Actions/DeleteFolder/index.d.ts +1 -1
- package/components/Actions/DeleteFolder/index.js +1 -1
- package/components/Actions/DeleteFolder/index.js.map +1 -1
- package/components/Actions/EditFolder/EditFolder.js +3 -3
- package/components/Actions/EditFolder/EditFolder.js.map +1 -1
- package/components/Actions/EditFolder/index.d.ts +1 -1
- package/components/Actions/EditFolder/index.js +1 -1
- package/components/Actions/EditFolder/index.js.map +1 -1
- package/components/Actions/SetFolderPemissions/SetFolderPermissions.js +3 -3
- package/components/Actions/SetFolderPemissions/SetFolderPermissions.js.map +1 -1
- package/components/Actions/SetFolderPemissions/index.d.ts +1 -1
- package/components/Actions/SetFolderPemissions/index.js +1 -1
- package/components/Actions/SetFolderPemissions/index.js.map +1 -1
- package/components/Actions/index.d.ts +3 -3
- package/components/Actions/index.js +3 -3
- package/components/Actions/index.js.map +1 -1
- package/components/AdvancedSearch/AdvancedSearch.d.ts +1 -1
- package/components/AdvancedSearch/AdvancedSearch.js +7 -7
- package/components/AdvancedSearch/AdvancedSearch.js.map +1 -1
- package/components/AdvancedSearch/AdvancedSearchConfigs.js +4 -4
- package/components/AdvancedSearch/AdvancedSearchConfigs.js.map +1 -1
- package/components/AdvancedSearch/AdvancedSearchPresenter.d.ts +1 -1
- package/components/AdvancedSearch/AdvancedSearchPresenter.js +1 -1
- package/components/AdvancedSearch/AdvancedSearchPresenter.js.map +1 -1
- package/components/AdvancedSearch/AdvancedSearchPresenter.test.js +18 -17
- package/components/AdvancedSearch/AdvancedSearchPresenter.test.js.map +1 -1
- package/components/AdvancedSearch/Button/index.d.ts +1 -1
- package/components/AdvancedSearch/Button/index.js +1 -1
- package/components/AdvancedSearch/Button/index.js.map +1 -1
- package/components/AdvancedSearch/GraphQLInputMapper.d.ts +2 -2
- package/components/AdvancedSearch/GraphQLInputMapper.js +1 -1
- package/components/AdvancedSearch/GraphQLInputMapper.js.map +1 -1
- package/components/AdvancedSearch/GraphQLInputMapper.test.js +3 -2
- package/components/AdvancedSearch/GraphQLInputMapper.test.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/QueryBuilder.d.ts +2 -2
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/QueryBuilder.js +4 -5
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/QueryBuilder.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/Details.js +6 -6
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/Details.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/Filter.d.ts +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/Filter.js +6 -6
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/Filter.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/FilterOperationLabel.js +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/FilterOperationLabel.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/GroupOperationLabel.js +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/GroupOperationLabel.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/InputField.d.ts +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/InputField.js +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/InputField.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/OperationSelector.js +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/OperationSelector.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/controls/AddFilter.js +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/controls/AddFilter.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/controls/AddGroup.js +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/controls/AddGroup.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/controls/index.d.ts +3 -3
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/controls/index.js +3 -3
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/controls/index.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/index.d.ts +7 -7
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/index.js +7 -7
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/index.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/index.d.ts +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/index.js +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/index.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawer.d.ts +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawer.js +2 -2
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawer.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawerPresenter.d.ts +2 -2
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawerPresenter.js +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawerPresenter.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawerPresenter.test.js +11 -10
- package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawerPresenter.test.js.map +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/index.d.ts +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/index.js +1 -1
- package/components/AdvancedSearch/QueryBuilderDrawer/index.js.map +1 -1
- package/components/AdvancedSearch/QueryManagerDialog/QueryManagerDialog.js +3 -3
- package/components/AdvancedSearch/QueryManagerDialog/QueryManagerDialog.js.map +1 -1
- package/components/AdvancedSearch/QueryManagerDialog/components/Empty.js +5 -5
- package/components/AdvancedSearch/QueryManagerDialog/components/Empty.js.map +1 -1
- package/components/AdvancedSearch/QueryManagerDialog/components/FilterList.d.ts +1 -1
- package/components/AdvancedSearch/QueryManagerDialog/components/FilterList.js +1 -1
- package/components/AdvancedSearch/QueryManagerDialog/components/FilterList.js.map +1 -1
- package/components/AdvancedSearch/QueryManagerDialog/components/index.d.ts +2 -2
- package/components/AdvancedSearch/QueryManagerDialog/components/index.js +2 -2
- package/components/AdvancedSearch/QueryManagerDialog/components/index.js.map +1 -1
- package/components/AdvancedSearch/QueryManagerDialog/index.d.ts +1 -1
- package/components/AdvancedSearch/QueryManagerDialog/index.js +1 -1
- package/components/AdvancedSearch/QueryManagerDialog/index.js.map +1 -1
- package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialog.d.ts +1 -1
- package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialog.js +3 -3
- package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialog.js.map +1 -1
- package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialogPresenter.d.ts +1 -1
- package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialogPresenter.js +1 -1
- package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialogPresenter.js.map +1 -1
- package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialogPresenter.test.js +5 -4
- package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialogPresenter.test.js.map +1 -1
- package/components/AdvancedSearch/QuerySaverDialog/index.d.ts +1 -1
- package/components/AdvancedSearch/QuerySaverDialog/index.js +1 -1
- package/components/AdvancedSearch/QuerySaverDialog/index.js.map +1 -1
- package/components/AdvancedSearch/SelectedFilter/SelectedFilter.d.ts +1 -1
- package/components/AdvancedSearch/SelectedFilter/SelectedFilter.js +2 -2
- package/components/AdvancedSearch/SelectedFilter/SelectedFilter.js.map +1 -1
- package/components/AdvancedSearch/SelectedFilter/index.d.ts +1 -1
- package/components/AdvancedSearch/SelectedFilter/index.js +1 -1
- package/components/AdvancedSearch/SelectedFilter/index.js.map +1 -1
- package/components/AdvancedSearch/domain/Field.d.ts +2 -3
- 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 +5 -5
- package/components/AdvancedSearch/domain/Filter.js +1 -1
- package/components/AdvancedSearch/domain/Filter.js.map +1 -1
- 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 +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 +2 -2
- package/components/AdvancedSearch/domain/FilterRepositoryFactory.js.map +1 -1
- package/components/AdvancedSearch/domain/Sorter.js +1 -1
- package/components/AdvancedSearch/domain/Sorter.js.map +1 -1
- package/components/AdvancedSearch/domain/index.d.ts +10 -10
- package/components/AdvancedSearch/domain/index.js +10 -10
- package/components/AdvancedSearch/domain/index.js.map +1 -1
- package/components/AdvancedSearch/fields/Boolean.js +2 -2
- package/components/AdvancedSearch/fields/Boolean.js.map +1 -1
- package/components/AdvancedSearch/fields/DateWithTimezone.js +4 -4
- package/components/AdvancedSearch/fields/DateWithTimezone.js.map +1 -1
- package/components/AdvancedSearch/fields/DateWithoutTimezone.js +1 -1
- package/components/AdvancedSearch/fields/DateWithoutTimezone.js.map +1 -1
- package/components/AdvancedSearch/fields/Input.js +1 -1
- package/components/AdvancedSearch/fields/Input.js.map +1 -1
- package/components/AdvancedSearch/fields/PredefinedValues.js +1 -1
- package/components/AdvancedSearch/fields/PredefinedValues.js.map +1 -1
- package/components/AdvancedSearch/fields/index.d.ts +5 -5
- package/components/AdvancedSearch/fields/index.js +5 -5
- package/components/AdvancedSearch/fields/index.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 +6 -6
- package/components/AdvancedSearch/gateways/FiltersGraphQLGateway.js +1 -1
- 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/gateways/index.d.ts +2 -2
- package/components/AdvancedSearch/gateways/index.js +1 -2
- package/components/AdvancedSearch/gateways/index.js.map +1 -1
- package/components/AdvancedSearch/index.d.ts +8 -6
- package/components/AdvancedSearch/index.js +10 -14
- package/components/AdvancedSearch/index.js.map +1 -1
- package/components/AdvancedSearch/useFilterRepository.d.ts +1 -1
- package/components/AdvancedSearch/useFilterRepository.js +1 -1
- package/components/AdvancedSearch/useFilterRepository.js.map +1 -1
- package/components/AdvancedSearch/useInputField.d.ts +3 -4
- package/components/AdvancedSearch/useInputField.js.map +1 -1
- package/components/Extensions/Extensions.js +5 -7
- package/components/Extensions/Extensions.js.map +1 -1
- package/components/Extensions/index.d.ts +1 -1
- package/components/Extensions/index.js +1 -1
- package/components/Extensions/index.js.map +1 -1
- package/components/FolderGrid/FolderGridItem.d.ts +4 -2
- package/components/FolderGrid/FolderGridItem.js +22 -17
- package/components/FolderGrid/FolderGridItem.js.map +1 -1
- package/components/FolderGrid/index.d.ts +1 -1
- package/components/FolderGrid/index.js +1 -1
- package/components/FolderGrid/index.js.map +1 -1
- package/components/FolderTree/ButtonCreate/ButtonCreate.js +2 -2
- package/components/FolderTree/ButtonCreate/ButtonCreate.js.map +1 -1
- package/components/FolderTree/ButtonCreate/index.d.ts +1 -1
- package/components/FolderTree/ButtonCreate/index.js +1 -1
- package/components/FolderTree/ButtonCreate/index.js.map +1 -1
- package/components/FolderTree/Empty/Empty.js +1 -1
- package/components/FolderTree/Empty/Empty.js.map +1 -1
- package/components/FolderTree/Empty/index.d.ts +1 -1
- package/components/FolderTree/Empty/index.js +1 -1
- package/components/FolderTree/Empty/index.js.map +1 -1
- package/components/FolderTree/List/List.d.ts +7 -4
- package/components/FolderTree/List/List.js +45 -8
- package/components/FolderTree/List/List.js.map +1 -1
- package/components/FolderTree/List/index.d.ts +1 -1
- package/components/FolderTree/List/index.js +1 -1
- package/components/FolderTree/List/index.js.map +1 -1
- package/components/FolderTree/List/utils.d.ts +3 -3
- package/components/FolderTree/List/utils.js +1 -1
- package/components/FolderTree/List/utils.js.map +1 -1
- package/components/FolderTree/Loader/Loader.js +2 -2
- package/components/FolderTree/Loader/Loader.js.map +1 -1
- package/components/FolderTree/Loader/index.d.ts +1 -1
- package/components/FolderTree/Loader/index.js +1 -1
- package/components/FolderTree/Loader/index.js.map +1 -1
- package/components/FolderTree/MenuActions/MenuActions.d.ts +6 -1
- package/components/FolderTree/MenuActions/MenuActions.js +6 -8
- package/components/FolderTree/MenuActions/MenuActions.js.map +1 -1
- package/components/FolderTree/MenuActions/index.d.ts +1 -1
- package/components/FolderTree/MenuActions/index.js +1 -1
- package/components/FolderTree/MenuActions/index.js.map +1 -1
- package/components/FolderTree/Node/Node.d.ts +3 -1
- package/components/FolderTree/Node/Node.js +8 -5
- package/components/FolderTree/Node/Node.js.map +1 -1
- package/components/FolderTree/Node/index.d.ts +1 -1
- package/components/FolderTree/Node/index.js +1 -1
- package/components/FolderTree/Node/index.js.map +1 -1
- package/components/FolderTree/NodePreview/NodePreview.js +2 -2
- package/components/FolderTree/NodePreview/NodePreview.js.map +1 -1
- package/components/FolderTree/NodePreview/index.d.ts +1 -1
- package/components/FolderTree/NodePreview/index.js +1 -1
- package/components/FolderTree/NodePreview/index.js.map +1 -1
- package/components/FolderTree/index.d.ts +7 -4
- package/components/FolderTree/index.js +15 -11
- package/components/FolderTree/index.js.map +1 -1
- package/components/Search/Search.d.ts +1 -1
- package/components/Search/Search.js +1 -1
- package/components/Search/Search.js.map +1 -1
- package/components/Search/index.d.ts +1 -1
- package/components/Search/index.js +1 -1
- package/components/Search/index.js.map +1 -1
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityDecorator.d.ts +3 -3
- 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 +11 -10
- 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 +2 -2
- package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepositoryFactory.js +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/ColumnVisibility/index.d.ts +7 -7
- package/components/Table/components/Table/ColumnVisibility/index.js +5 -7
- package/components/Table/components/Table/ColumnVisibility/index.js.map +1 -1
- package/components/Table/components/Table/Columns/Column.d.ts +4 -1
- package/components/Table/components/Table/Columns/Column.js +1 -0
- package/components/Table/components/Table/Columns/Column.js.map +1 -1
- package/components/Table/components/Table/Columns/ColumnMapper.d.ts +1 -1
- package/components/Table/components/Table/Columns/ColumnMapper.js +4 -0
- package/components/Table/components/Table/Columns/ColumnMapper.js.map +1 -1
- package/components/Table/components/Table/Columns/ColumnsPresenter.d.ts +2 -2
- package/components/Table/components/Table/Columns/ColumnsPresenter.js.map +1 -1
- package/components/Table/components/Table/Columns/ColumnsPresenter.test.js +7 -4
- 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 +2 -2
- package/components/Table/components/Table/Columns/ColumnsRepositoryFactory.js +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/Columns/index.d.ts +6 -6
- package/components/Table/components/Table/Columns/index.js +5 -6
- package/components/Table/components/Table/Columns/index.js.map +1 -1
- package/components/Table/components/Table/Table.d.ts +4 -2
- package/components/Table/components/Table/Table.js +11 -12
- package/components/Table/components/Table/Table.js.map +1 -1
- package/components/Table/components/Table/TableInner.d.ts +5 -5
- package/components/Table/components/Table/TableInner.js +2 -2
- package/components/Table/components/Table/TableInner.js.map +1 -1
- package/components/Table/components/Table/gateways/ColumnsVisibilityLocalStorageGateway.d.ts +5 -3
- package/components/Table/components/Table/gateways/ColumnsVisibilityLocalStorageGateway.js +5 -5
- package/components/Table/components/Table/gateways/ColumnsVisibilityLocalStorageGateway.js.map +1 -1
- package/components/Table/components/Table/gateways/index.d.ts +2 -2
- package/components/Table/components/Table/gateways/index.js +1 -2
- package/components/Table/components/Table/gateways/index.js.map +1 -1
- package/components/Table/components/Table/index.d.ts +1 -1
- package/components/Table/components/Table/index.js +1 -1
- package/components/Table/components/Table/index.js.map +1 -1
- package/components/Table/components/index.d.ts +1 -1
- package/components/Table/components/index.js +1 -1
- package/components/Table/components/index.js.map +1 -1
- package/components/Table/createTableData.d.ts +4 -3
- package/components/Table/createTableData.js +1 -1
- package/components/Table/createTableData.js.map +1 -1
- package/components/Table/index.d.ts +3 -3
- package/components/Table/index.js +3 -3
- package/components/Table/index.js.map +1 -1
- package/components/index.d.ts +8 -8
- package/components/index.js +8 -8
- package/components/index.js.map +1 -1
- package/config/AcoConfig.d.ts +31 -36
- package/config/AcoConfig.js +8 -9
- package/config/AcoConfig.js.map +1 -1
- package/config/advanced-search/FieldRenderer.d.ts +2 -2
- package/config/advanced-search/FieldRenderer.js +2 -2
- package/config/advanced-search/FieldRenderer.js.map +1 -1
- package/config/advanced-search/index.d.ts +4 -5
- package/config/advanced-search/index.js +1 -1
- package/config/advanced-search/index.js.map +1 -1
- package/config/folder/DropConfirmation.d.ts +5 -0
- package/config/folder/DropConfirmation.js +17 -0
- package/config/folder/DropConfirmation.js.map +1 -0
- package/config/folder/index.d.ts +5 -4
- package/config/folder/index.js +4 -2
- package/config/folder/index.js.map +1 -1
- package/config/index.d.ts +2 -2
- package/config/index.js +2 -2
- package/config/index.js.map +1 -1
- package/config/record/index.d.ts +4 -5
- package/config/record/index.js +1 -1
- package/config/record/index.js.map +1 -1
- package/config/table/Column.d.ts +4 -3
- package/config/table/Column.js +6 -1
- package/config/table/Column.js.map +1 -1
- package/config/table/index.d.ts +7 -8
- package/config/table/index.js +2 -2
- package/config/table/index.js.map +1 -1
- package/constants.d.ts +1 -1
- package/constants.js +1 -1
- package/constants.js.map +1 -1
- package/contexts/acoList.d.ts +4 -2
- package/contexts/acoList.js +20 -15
- package/contexts/acoList.js.map +1 -1
- package/contexts/app.d.ts +10 -18
- package/contexts/app.js +25 -156
- package/contexts/app.js.map +1 -1
- package/contexts/folder.d.ts +3 -3
- package/contexts/folder.js.map +1 -1
- package/contexts/folders.js +16 -3
- package/contexts/folders.js.map +1 -1
- package/contexts/index.d.ts +4 -2
- package/contexts/index.js +4 -2
- package/contexts/index.js.map +1 -1
- package/contexts/navigateFolder.d.ts +0 -2
- package/contexts/navigateFolder.js +14 -16
- package/contexts/navigateFolder.js.map +1 -1
- package/contexts/records.d.ts +4 -2
- package/contexts/records.js +27 -34
- package/contexts/records.js.map +1 -1
- package/dialogs/DialogSetPermissions/UsersTeamsMultiAutocomplete.d.ts +1 -1
- package/dialogs/DialogSetPermissions/UsersTeamsMultiAutocomplete.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 +2 -2
- package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemMeta.js.map +1 -1
- package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemText.d.ts +1 -1
- package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemText.js +2 -2
- package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemText.js.map +1 -1
- package/dialogs/DialogSetPermissions/UsersTeamsSelection.d.ts +1 -1
- package/dialogs/DialogSetPermissions/UsersTeamsSelection.js +4 -4
- package/dialogs/DialogSetPermissions/UsersTeamsSelection.js.map +1 -1
- package/dialogs/ParentFolderField.js +1 -1
- package/dialogs/ParentFolderField.js.map +1 -1
- package/dialogs/index.d.ts +6 -5
- package/dialogs/index.js +6 -5
- package/dialogs/index.js.map +1 -1
- package/dialogs/useConfirmMoveFolderDialog.d.ts +11 -0
- package/dialogs/useConfirmMoveFolderDialog.js +23 -0
- package/dialogs/useConfirmMoveFolderDialog.js.map +1 -0
- package/dialogs/useCreateDialog.js +4 -4
- package/dialogs/useCreateDialog.js.map +1 -1
- package/dialogs/useDeleteDialog.d.ts +2 -2
- package/dialogs/useDeleteDialog.js +2 -2
- package/dialogs/useDeleteDialog.js.map +1 -1
- package/dialogs/useEditDialog.d.ts +2 -2
- package/dialogs/useEditDialog.js +4 -4
- package/dialogs/useEditDialog.js.map +1 -1
- package/dialogs/useMoveToFolderDialog.js +3 -3
- package/dialogs/useMoveToFolderDialog.js.map +1 -1
- package/dialogs/useSetPermissionsDialog.d.ts +2 -2
- package/dialogs/useSetPermissionsDialog.js +4 -4
- package/dialogs/useSetPermissionsDialog.js.map +1 -1
- package/{features/folders → domain/folder}/Folder.d.ts +1 -1
- package/{features/folders → domain/folder}/Folder.js +1 -1
- package/domain/folder/Folder.js.map +1 -0
- package/{features/folders/createFolder/FolderGqlDto.d.ts → domain/folder/FolderDto.d.ts} +9 -8
- package/domain/folder/FolderDto.js.map +1 -0
- package/domain/folder/FolderDtoMapper.d.ts +5 -0
- package/{features/folders/listFoldersByParentIds/FolderDto.js → domain/folder/FolderDtoMapper.js} +15 -19
- package/domain/folder/FolderDtoMapper.js.map +1 -0
- package/domain/folder/FolderIdentity.d.ts +10 -0
- package/domain/folder/FolderIdentity.js +21 -0
- package/domain/folder/FolderIdentity.js.map +1 -0
- package/domain/folder/RootFolder.d.ts +4 -0
- package/domain/folder/RootFolder.js +28 -0
- package/domain/folder/RootFolder.js.map +1 -0
- package/exports/admin/aco.d.ts +2 -0
- package/exports/admin/aco.js +4 -0
- package/exports/admin/aco.js.map +1 -0
- package/features/folders/abstractions.d.ts +32 -0
- package/features/folders/abstractions.js +8 -0
- package/features/folders/abstractions.js.map +1 -0
- package/features/folders/cache/FoldersCacheFactory.d.ts +2 -2
- package/features/folders/cache/FoldersCacheFactory.js +1 -1
- package/features/folders/cache/FoldersCacheFactory.js.map +1 -1
- package/features/folders/cache/ListCache.js +1 -1
- package/features/folders/cache/ListCache.js.map +1 -1
- package/features/folders/cache/LoadedFoldersCacheFactory.d.ts +1 -1
- package/features/folders/cache/LoadedFoldersCacheFactory.js +1 -1
- package/features/folders/cache/LoadedFoldersCacheFactory.js.map +1 -1
- package/features/folders/cache/index.d.ts +4 -4
- package/features/folders/cache/index.js +4 -4
- package/features/folders/cache/index.js.map +1 -1
- package/features/folders/createFolder/CreateFolder.test.js +34 -14
- package/features/folders/createFolder/CreateFolder.test.js.map +1 -1
- package/features/folders/createFolder/CreateFolderGqlGateway.d.ts +16 -10
- package/features/folders/createFolder/CreateFolderGqlGateway.js +12 -4
- package/features/folders/createFolder/CreateFolderGqlGateway.js.map +1 -1
- package/features/folders/createFolder/CreateFolderRepository.d.ts +12 -7
- package/features/folders/createFolder/CreateFolderRepository.js +13 -5
- package/features/folders/createFolder/CreateFolderRepository.js.map +1 -1
- package/features/folders/createFolder/CreateFolderUseCase.d.ts +8 -5
- package/features/folders/createFolder/CreateFolderUseCase.js +7 -2
- package/features/folders/createFolder/CreateFolderUseCase.js.map +1 -1
- package/features/folders/createFolder/abstractions.d.ts +41 -0
- package/features/folders/createFolder/abstractions.js +15 -0
- package/features/folders/createFolder/abstractions.js.map +1 -0
- package/features/folders/createFolder/feature.d.ts +3 -0
- package/features/folders/createFolder/feature.js +20 -0
- package/features/folders/createFolder/feature.js.map +1 -0
- package/features/folders/createFolder/index.d.ts +1 -1
- package/features/folders/createFolder/index.js +1 -1
- package/features/folders/createFolder/index.js.map +1 -1
- package/features/folders/createFolder/useCreateFolder.d.ts +2 -2
- package/features/folders/createFolder/useCreateFolder.js +8 -14
- package/features/folders/createFolder/useCreateFolder.js.map +1 -1
- package/features/folders/deleteFolder/DeleteFolder.test.js +29 -19
- package/features/folders/deleteFolder/DeleteFolder.test.js.map +1 -1
- package/features/folders/deleteFolder/DeleteFolderGqlGateway.d.ts +9 -5
- package/features/folders/deleteFolder/DeleteFolderGqlGateway.js +7 -1
- package/features/folders/deleteFolder/DeleteFolderGqlGateway.js.map +1 -1
- package/features/folders/deleteFolder/DeleteFolderRepository.d.ts +10 -7
- package/features/folders/deleteFolder/DeleteFolderRepository.js +11 -4
- package/features/folders/deleteFolder/DeleteFolderRepository.js.map +1 -1
- package/features/folders/deleteFolder/DeleteFolderUseCase.d.ts +8 -5
- package/features/folders/deleteFolder/DeleteFolderUseCase.js +8 -11
- package/features/folders/deleteFolder/DeleteFolderUseCase.js.map +1 -1
- package/features/folders/deleteFolder/abstractions.d.ts +21 -0
- package/features/folders/deleteFolder/abstractions.js +15 -0
- package/features/folders/deleteFolder/abstractions.js.map +1 -0
- package/features/folders/deleteFolder/feature.d.ts +3 -0
- package/features/folders/deleteFolder/feature.js +20 -0
- package/features/folders/deleteFolder/feature.js.map +1 -0
- package/features/folders/deleteFolder/index.d.ts +1 -1
- package/features/folders/deleteFolder/index.js +1 -1
- package/features/folders/deleteFolder/index.js.map +1 -1
- package/features/folders/deleteFolder/useDeleteFolder.d.ts +1 -2
- package/features/folders/deleteFolder/useDeleteFolder.js +8 -13
- package/features/folders/deleteFolder/useDeleteFolder.js.map +1 -1
- package/features/folders/feature.d.ts +1 -0
- package/features/folders/feature.js +45 -0
- package/features/folders/feature.js.map +1 -0
- package/features/folders/folderModelProvider/FolderModelContext.d.ts +2 -0
- package/features/folders/folderModelProvider/FolderModelContext.js +28 -0
- package/features/folders/folderModelProvider/FolderModelContext.js.map +1 -0
- package/features/folders/{getFolderModel → folderModelProvider}/FolderModelDto.d.ts +1 -1
- package/features/folders/{getFolderModel → folderModelProvider}/FolderModelDto.js.map +1 -1
- package/features/folders/folderModelProvider/FolderModelProvider.d.ts +13 -0
- package/features/folders/folderModelProvider/FolderModelProvider.js +58 -0
- package/features/folders/folderModelProvider/FolderModelProvider.js.map +1 -0
- package/features/folders/folderModelProvider/GetFolderModelGqlGateway.d.ts +22 -0
- package/features/folders/{getFolderModel → folderModelProvider}/GetFolderModelGqlGateway.js +7 -1
- package/features/folders/folderModelProvider/GetFolderModelGqlGateway.js.map +1 -0
- package/features/folders/folderModelProvider/GetFolderModelRepository.d.ts +13 -0
- package/features/folders/{getFolderModel → folderModelProvider}/GetFolderModelRepository.js +6 -1
- package/features/folders/folderModelProvider/GetFolderModelRepository.js.map +1 -0
- package/features/folders/folderModelProvider/abstractions.d.ts +20 -0
- package/features/folders/folderModelProvider/abstractions.js +5 -0
- package/features/folders/folderModelProvider/abstractions.js.map +1 -0
- package/features/folders/folderModelProvider/feature.d.ts +3 -0
- package/features/folders/folderModelProvider/feature.js +20 -0
- package/features/folders/folderModelProvider/feature.js.map +1 -0
- package/features/folders/folderModelProvider/index.d.ts +1 -0
- package/features/folders/folderModelProvider/index.js +3 -0
- package/features/folders/folderModelProvider/index.js.map +1 -0
- package/features/folders/getDescendantFolders/GetDescendantFolders.test.js +34 -19
- package/features/folders/getDescendantFolders/GetDescendantFolders.test.js.map +1 -1
- package/features/folders/getDescendantFolders/GetDescendantFoldersRepository.d.ts +11 -7
- package/features/folders/getDescendantFolders/GetDescendantFoldersRepository.js +16 -3
- package/features/folders/getDescendantFolders/GetDescendantFoldersRepository.js.map +1 -1
- package/features/folders/getDescendantFolders/GetDescendantFoldersUseCase.d.ts +8 -12
- package/features/folders/getDescendantFolders/GetDescendantFoldersUseCase.js +8 -11
- package/features/folders/getDescendantFolders/GetDescendantFoldersUseCase.js.map +1 -1
- package/features/folders/getDescendantFolders/abstractions.d.ts +23 -0
- package/features/folders/getDescendantFolders/abstractions.js +13 -0
- package/features/folders/getDescendantFolders/abstractions.js.map +1 -0
- package/features/folders/getDescendantFolders/feature.d.ts +3 -0
- package/features/folders/getDescendantFolders/feature.js +18 -0
- package/features/folders/getDescendantFolders/feature.js.map +1 -0
- package/features/folders/getDescendantFolders/index.d.ts +1 -1
- package/features/folders/getDescendantFolders/index.js +1 -1
- package/features/folders/getDescendantFolders/index.js.map +1 -1
- package/features/folders/getDescendantFolders/useGetDescendantFolders.d.ts +1 -1
- package/features/folders/getDescendantFolders/useGetDescendantFolders.js +8 -11
- package/features/folders/getDescendantFolders/useGetDescendantFolders.js.map +1 -1
- package/features/folders/getFolder/GetFolderGqlGateway.d.ts +18 -9
- package/features/folders/getFolder/GetFolderGqlGateway.js +12 -7
- package/features/folders/getFolder/GetFolderGqlGateway.js.map +1 -1
- package/features/folders/getFolder/GetFolderRepository.d.ts +9 -6
- package/features/folders/getFolder/GetFolderRepository.js +9 -2
- package/features/folders/getFolder/GetFolderRepository.js.map +1 -1
- package/features/folders/getFolder/GetFolderUseCase.d.ts +8 -5
- package/features/folders/getFolder/GetFolderUseCase.js +8 -3
- package/features/folders/getFolder/GetFolderUseCase.js.map +1 -1
- package/features/folders/getFolder/abstractions.d.ts +22 -0
- package/features/folders/getFolder/abstractions.js +15 -0
- package/features/folders/getFolder/abstractions.js.map +1 -0
- package/features/folders/getFolder/feature.d.ts +3 -0
- package/features/folders/getFolder/feature.js +20 -0
- package/features/folders/getFolder/feature.js.map +1 -0
- package/features/folders/getFolder/index.d.ts +1 -1
- package/features/folders/getFolder/index.js +1 -1
- package/features/folders/getFolder/index.js.map +1 -1
- package/features/folders/getFolder/useGetFolder.d.ts +1 -2
- package/features/folders/getFolder/useGetFolder.js +8 -14
- package/features/folders/getFolder/useGetFolder.js.map +1 -1
- package/features/folders/getFolderAncestors/GetFolderAncestors.test.js +34 -19
- package/features/folders/getFolderAncestors/GetFolderAncestors.test.js.map +1 -1
- package/features/folders/getFolderAncestors/GetFolderAncestorsRepository.d.ts +11 -6
- package/features/folders/getFolderAncestors/GetFolderAncestorsRepository.js +15 -2
- package/features/folders/getFolderAncestors/GetFolderAncestorsRepository.js.map +1 -1
- package/features/folders/getFolderAncestors/GetFolderAncestorsUseCase.d.ts +8 -12
- package/features/folders/getFolderAncestors/GetFolderAncestorsUseCase.js +8 -11
- package/features/folders/getFolderAncestors/GetFolderAncestorsUseCase.js.map +1 -1
- package/features/folders/getFolderAncestors/abstractions.d.ts +23 -0
- package/features/folders/getFolderAncestors/abstractions.js +13 -0
- package/features/folders/getFolderAncestors/abstractions.js.map +1 -0
- package/features/folders/getFolderAncestors/feature.d.ts +3 -0
- package/features/folders/getFolderAncestors/feature.js +18 -0
- package/features/folders/getFolderAncestors/feature.js.map +1 -0
- package/features/folders/getFolderAncestors/index.d.ts +1 -1
- package/features/folders/getFolderAncestors/index.js +1 -1
- package/features/folders/getFolderAncestors/index.js.map +1 -1
- package/features/folders/getFolderAncestors/useGetFolderAncestors.d.ts +1 -1
- package/features/folders/getFolderAncestors/useGetFolderAncestors.js +8 -11
- package/features/folders/getFolderAncestors/useGetFolderAncestors.js.map +1 -1
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFields.test.js +55 -33
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFields.test.js.map +1 -1
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCase.d.ts +31 -27
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCase.js +30 -9
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCase.js.map +1 -1
- package/features/folders/getFolderExtensionsFields/abstractions.d.ts +15 -0
- package/features/folders/getFolderExtensionsFields/abstractions.js +11 -0
- package/features/folders/getFolderExtensionsFields/abstractions.js.map +1 -0
- package/features/folders/getFolderExtensionsFields/feature.d.ts +3 -0
- package/features/folders/getFolderExtensionsFields/feature.js +25 -0
- package/features/folders/getFolderExtensionsFields/feature.js.map +1 -0
- package/features/folders/getFolderExtensionsFields/filters/CmsNamespaceFilter.d.ts +12 -0
- package/features/folders/getFolderExtensionsFields/filters/CmsNamespaceFilter.js +25 -0
- package/features/folders/getFolderExtensionsFields/filters/CmsNamespaceFilter.js.map +1 -0
- package/features/folders/getFolderExtensionsFields/filters/FmFileNamespaceFilter.d.ts +12 -0
- package/features/folders/getFolderExtensionsFields/filters/FmFileNamespaceFilter.js +24 -0
- package/features/folders/getFolderExtensionsFields/filters/FmFileNamespaceFilter.js.map +1 -0
- package/features/folders/getFolderExtensionsFields/filters/GlobalNamespaceFilter.d.ts +9 -0
- package/features/folders/getFolderExtensionsFields/filters/GlobalNamespaceFilter.js +14 -0
- package/features/folders/getFolderExtensionsFields/filters/GlobalNamespaceFilter.js.map +1 -0
- package/features/folders/getFolderExtensionsFields/index.d.ts +1 -1
- package/features/folders/getFolderExtensionsFields/index.js +1 -1
- package/features/folders/getFolderExtensionsFields/index.js.map +1 -1
- package/features/folders/getFolderExtensionsFields/useFolderExtensionsFields.d.ts +23 -0
- package/features/folders/getFolderExtensionsFields/useFolderExtensionsFields.js +19 -0
- package/features/folders/getFolderExtensionsFields/useFolderExtensionsFields.js.map +1 -0
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermission.test.js +98 -70
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermission.test.js.map +1 -1
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionUseCase.d.ts +6 -2
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionUseCase.js +6 -1
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionUseCase.js.map +1 -1
- package/features/folders/getFolderLevelPermission/abstractions.d.ts +8 -0
- package/features/folders/getFolderLevelPermission/abstractions.js +4 -0
- package/features/folders/getFolderLevelPermission/abstractions.js.map +1 -0
- package/features/folders/getFolderLevelPermission/decorators/GetFolderLevelPermissionWithFlpDecorator.d.ts +15 -0
- package/features/folders/getFolderLevelPermission/decorators/GetFolderLevelPermissionWithFlpDecorator.js +29 -0
- package/features/folders/getFolderLevelPermission/decorators/GetFolderLevelPermissionWithFlpDecorator.js.map +1 -0
- package/features/folders/getFolderLevelPermission/feature.d.ts +3 -0
- package/features/folders/getFolderLevelPermission/feature.js +21 -0
- package/features/folders/getFolderLevelPermission/feature.js.map +1 -0
- package/features/folders/getFolderLevelPermission/index.d.ts +1 -1
- package/features/folders/getFolderLevelPermission/index.js +1 -1
- package/features/folders/getFolderLevelPermission/index.js.map +1 -1
- package/features/folders/getFolderLevelPermission/useGetFolderLevelPermission.d.ts +1 -1
- package/features/folders/getFolderLevelPermission/useGetFolderLevelPermission.js +7 -10
- package/features/folders/getFolderLevelPermission/useGetFolderLevelPermission.js.map +1 -1
- package/features/folders/listFolders/ListFolders.test.js +87 -53
- package/features/folders/listFolders/ListFolders.test.js.map +1 -1
- package/features/folders/listFolders/ListFoldersGqlGateway.d.ts +14 -9
- package/features/folders/listFolders/ListFoldersGqlGateway.js +18 -46
- package/features/folders/listFolders/ListFoldersGqlGateway.js.map +1 -1
- package/features/folders/listFolders/ListFoldersRepository.d.ts +9 -7
- package/features/folders/listFolders/ListFoldersRepository.js +11 -7
- package/features/folders/listFolders/ListFoldersRepository.js.map +1 -1
- package/features/folders/listFolders/ListFoldersUseCase.d.ts +7 -4
- package/features/folders/listFolders/ListFoldersUseCase.js +6 -1
- package/features/folders/listFolders/ListFoldersUseCase.js.map +1 -1
- package/features/folders/listFolders/ListFoldersUseCaseWithLoading.d.ts +9 -5
- package/features/folders/listFolders/ListFoldersUseCaseWithLoading.js +11 -5
- package/features/folders/listFolders/ListFoldersUseCaseWithLoading.js.map +1 -1
- package/features/folders/listFolders/abstractions.d.ts +22 -0
- package/features/folders/listFolders/abstractions.js +6 -0
- package/features/folders/listFolders/abstractions.js.map +1 -0
- package/features/folders/listFolders/feature.d.ts +4 -0
- package/features/folders/listFolders/feature.js +31 -0
- package/features/folders/listFolders/feature.js.map +1 -0
- package/features/folders/listFolders/index.d.ts +2 -2
- package/features/folders/listFolders/index.js +2 -2
- package/features/folders/listFolders/index.js.map +1 -1
- package/features/folders/listFolders/useListFolders.d.ts +2 -2
- package/features/folders/listFolders/useListFolders.js +11 -17
- package/features/folders/listFolders/useListFolders.js.map +1 -1
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIds.test.js +180 -206
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIds.test.js.map +1 -1
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsGqlGateway.d.ts +14 -9
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsGqlGateway.js +16 -41
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsGqlGateway.js.map +1 -1
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsRepository.d.ts +10 -8
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsRepository.js +12 -9
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsRepository.js.map +1 -1
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCase.d.ts +8 -5
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCase.js +9 -6
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCase.js.map +1 -1
- package/features/folders/listFoldersByParentIds/abstractions.d.ts +22 -0
- package/features/folders/listFoldersByParentIds/abstractions.js +6 -0
- package/features/folders/listFoldersByParentIds/abstractions.js.map +1 -0
- package/features/folders/listFoldersByParentIds/decorators/RepositoryWithLoadedCache.d.ts +12 -0
- package/features/folders/listFoldersByParentIds/decorators/RepositoryWithLoadedCache.js +30 -0
- package/features/folders/listFoldersByParentIds/decorators/RepositoryWithLoadedCache.js.map +1 -0
- package/features/folders/listFoldersByParentIds/decorators/UseCaseWithLoading.d.ts +13 -0
- package/features/folders/listFoldersByParentIds/decorators/UseCaseWithLoading.js +27 -0
- package/features/folders/listFoldersByParentIds/decorators/UseCaseWithLoading.js.map +1 -0
- package/features/folders/listFoldersByParentIds/feature.d.ts +4 -0
- package/features/folders/listFoldersByParentIds/feature.js +35 -0
- package/features/folders/listFoldersByParentIds/feature.js.map +1 -0
- package/features/folders/listFoldersByParentIds/index.d.ts +1 -1
- package/features/folders/listFoldersByParentIds/index.js +1 -1
- package/features/folders/listFoldersByParentIds/index.js.map +1 -1
- package/features/folders/listFoldersByParentIds/useListFoldersByParentIds.d.ts +2 -2
- package/features/folders/listFoldersByParentIds/useListFoldersByParentIds.js +13 -21
- package/features/folders/listFoldersByParentIds/useListFoldersByParentIds.js.map +1 -1
- package/features/folders/loadFolderHierarchy/LoadFolderHierarchy.test.js +150 -0
- package/features/folders/loadFolderHierarchy/LoadFolderHierarchy.test.js.map +1 -0
- package/features/folders/loadFolderHierarchy/LoadFolderHierarchyGqlGateway.d.ts +35 -0
- package/features/folders/loadFolderHierarchy/LoadFolderHierarchyGqlGateway.js +57 -0
- package/features/folders/loadFolderHierarchy/LoadFolderHierarchyGqlGateway.js.map +1 -0
- package/features/folders/loadFolderHierarchy/LoadFolderHierarchyRepository.d.ts +16 -0
- package/features/folders/loadFolderHierarchy/LoadFolderHierarchyRepository.js +49 -0
- package/features/folders/loadFolderHierarchy/LoadFolderHierarchyRepository.js.map +1 -0
- package/features/folders/loadFolderHierarchy/LoadFolderHierarchyUseCase.d.ts +10 -0
- package/features/folders/loadFolderHierarchy/LoadFolderHierarchyUseCase.js +15 -0
- package/features/folders/loadFolderHierarchy/LoadFolderHierarchyUseCase.js.map +1 -0
- package/features/folders/loadFolderHierarchy/LoadFolderHierarchyUseCaseWithLoading.d.ts +12 -0
- package/features/folders/loadFolderHierarchy/LoadFolderHierarchyUseCaseWithLoading.js +18 -0
- package/features/folders/loadFolderHierarchy/LoadFolderHierarchyUseCaseWithLoading.js.map +1 -0
- package/features/folders/loadFolderHierarchy/abstractions.d.ts +27 -0
- package/features/folders/loadFolderHierarchy/abstractions.js +6 -0
- package/features/folders/loadFolderHierarchy/abstractions.js.map +1 -0
- package/features/folders/loadFolderHierarchy/feature.d.ts +4 -0
- package/features/folders/loadFolderHierarchy/feature.js +31 -0
- package/features/folders/loadFolderHierarchy/feature.js.map +1 -0
- package/features/folders/loadFolderHierarchy/index.d.ts +1 -0
- package/features/folders/loadFolderHierarchy/index.js +3 -0
- package/features/folders/loadFolderHierarchy/index.js.map +1 -0
- package/features/folders/loadFolderHierarchy/useLoadFolderHierarchy.d.ts +7 -0
- package/features/folders/loadFolderHierarchy/useLoadFolderHierarchy.js +53 -0
- package/features/folders/loadFolderHierarchy/useLoadFolderHierarchy.js.map +1 -0
- package/features/folders/updateFolder/UpdateFolder.test.js +154 -112
- package/features/folders/updateFolder/UpdateFolder.test.js.map +1 -1
- package/features/folders/updateFolder/UpdateFolderGqlGateway.d.ts +16 -10
- package/features/folders/updateFolder/UpdateFolderGqlGateway.js +13 -5
- package/features/folders/updateFolder/UpdateFolderGqlGateway.js.map +1 -1
- package/features/folders/updateFolder/UpdateFolderRepository.d.ts +9 -6
- package/features/folders/updateFolder/UpdateFolderRepository.js +12 -7
- package/features/folders/updateFolder/UpdateFolderRepository.js.map +1 -1
- package/features/folders/updateFolder/UpdateFolderUseCase.d.ts +9 -5
- package/features/folders/updateFolder/UpdateFolderUseCase.js +9 -12
- package/features/folders/updateFolder/UpdateFolderUseCase.js.map +1 -1
- package/features/folders/updateFolder/abstractions.d.ts +42 -0
- package/features/folders/updateFolder/abstractions.js +6 -0
- package/features/folders/updateFolder/abstractions.js.map +1 -0
- package/features/folders/updateFolder/decorators/RepositoryWithPathChange.d.ts +15 -0
- package/features/folders/updateFolder/{UpdateFolderRepositoryWithPathChange.js → decorators/RepositoryWithPathChange.js} +12 -6
- package/features/folders/updateFolder/decorators/RepositoryWithPathChange.js.map +1 -0
- package/features/folders/updateFolder/decorators/RepositoryWithPermissionsChange.d.ts +16 -0
- package/features/folders/updateFolder/{UpdateFolderRepositoryWithPermissionsChange.js → decorators/RepositoryWithPermissionsChange.js} +13 -7
- package/features/folders/updateFolder/decorators/RepositoryWithPermissionsChange.js.map +1 -0
- package/features/folders/updateFolder/decorators/UseCaseWithLoading.d.ts +12 -0
- package/features/folders/updateFolder/decorators/UseCaseWithLoading.js +18 -0
- package/features/folders/updateFolder/decorators/UseCaseWithLoading.js.map +1 -0
- package/features/folders/updateFolder/decorators/UseCaseWithoutInheritedPermissions.d.ts +10 -0
- package/features/folders/updateFolder/decorators/UseCaseWithoutInheritedPermissions.js +20 -0
- package/features/folders/updateFolder/decorators/UseCaseWithoutInheritedPermissions.js.map +1 -0
- package/features/folders/updateFolder/feature.d.ts +4 -0
- package/features/folders/updateFolder/feature.js +39 -0
- package/features/folders/updateFolder/feature.js.map +1 -0
- package/features/folders/updateFolder/index.d.ts +1 -1
- package/features/folders/updateFolder/index.js +1 -1
- package/features/folders/updateFolder/index.js.map +1 -1
- package/features/folders/updateFolder/useUpdateFolder.d.ts +3 -2
- package/features/folders/updateFolder/useUpdateFolder.js +20 -14
- 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/getRecord.d.ts +2 -2
- package/graphql/records/getRecord.js +2 -21
- package/graphql/records/getRecord.js.map +1 -1
- package/graphql/records/listRecords.d.ts +2 -2
- package/graphql/records/listRecords.js +13 -34
- package/graphql/records/listRecords.js.map +1 -1
- package/graphql/records/moveRecord.d.ts +2 -2
- package/graphql/records/moveRecord.js +3 -15
- 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.gql.d.ts +3 -7
- package/graphql/records.gql.js +3 -7
- package/graphql/records.gql.js.map +1 -1
- package/handlers.d.ts +2 -2
- package/handlers.js.map +1 -1
- package/hooks/index.d.ts +7 -9
- package/hooks/index.js +7 -9
- package/hooks/index.js.map +1 -1
- package/hooks/useAcoApp.d.ts +1 -1
- package/hooks/useAcoApp.js +2 -5
- package/hooks/useAcoApp.js.map +1 -1
- package/hooks/useAcoList.d.ts +2 -2
- package/hooks/useAcoList.js +1 -1
- package/hooks/useAcoList.js.map +1 -1
- package/hooks/useFolder.d.ts +1 -1
- package/hooks/useFolder.js +1 -1
- package/hooks/useFolder.js.map +1 -1
- package/hooks/useFolderModel.d.ts +2 -0
- package/hooks/useFolderModel.js +18 -0
- package/hooks/useFolderModel.js.map +1 -0
- package/hooks/useFoldersType.js +1 -1
- package/hooks/useFoldersType.js.map +1 -1
- package/hooks/useNavigateFolder.d.ts +1 -1
- package/hooks/useNavigateFolder.js +1 -1
- package/hooks/useNavigateFolder.js.map +1 -1
- package/hooks/useRecords.d.ts +24 -25
- package/hooks/useRecords.js +3 -3
- package/hooks/useRecords.js.map +1 -1
- package/hooks/useTags.d.ts +2 -2
- package/hooks/useTags.js +2 -2
- package/hooks/useTags.js.map +1 -1
- package/index.d.ts +22 -10
- package/index.js +23 -8
- package/index.js.map +1 -1
- package/package.json +27 -30
- package/sorting.d.ts +1 -1
- package/sorting.js +1 -1
- package/sorting.js.map +1 -1
- package/table.types.d.ts +7 -5
- package/table.types.js.map +1 -1
- package/types.d.ts +5 -93
- package/types.js +0 -8
- package/types.js.map +1 -1
- package/components/AdvancedSearch/AdvancedSearchDebounceRender.d.ts +0 -15
- package/components/AdvancedSearch/AdvancedSearchDebounceRender.js +0 -36
- package/components/AdvancedSearch/AdvancedSearchDebounceRender.js.map +0 -1
- package/components/Table/components/Table/gateways/LocalStorage.d.ts +0 -6
- package/components/Table/components/Table/gateways/LocalStorage.js +0 -14
- package/components/Table/components/Table/gateways/LocalStorage.js.map +0 -1
- package/contexts/DisplayError/index.d.ts +0 -6
- package/contexts/DisplayError/index.js +0 -12
- package/contexts/DisplayError/index.js.map +0 -1
- package/contexts/Loading/Loading.d.ts +0 -2
- package/contexts/Loading/Loading.js +0 -9
- package/contexts/Loading/Loading.js.map +0 -1
- package/contexts/Loading/index.d.ts +0 -1
- package/contexts/Loading/index.js +0 -3
- package/contexts/Loading/index.js.map +0 -1
- package/contexts/navigateFolderWithRouter.d.ts +0 -8
- package/contexts/navigateFolderWithRouter.js +0 -81
- package/contexts/navigateFolderWithRouter.js.map +0 -1
- package/features/folders/Folder.js.map +0 -1
- package/features/folders/createFolder/CreateFolder.d.ts +0 -5
- package/features/folders/createFolder/CreateFolder.js +0 -16
- package/features/folders/createFolder/CreateFolder.js.map +0 -1
- package/features/folders/createFolder/CreateFolderUseCaseWithLoading.d.ts +0 -8
- package/features/folders/createFolder/CreateFolderUseCaseWithLoading.js +0 -12
- package/features/folders/createFolder/CreateFolderUseCaseWithLoading.js.map +0 -1
- package/features/folders/createFolder/FolderDto.d.ts +0 -9
- package/features/folders/createFolder/FolderDto.js.map +0 -1
- package/features/folders/createFolder/FolderGqlDto.js +0 -3
- package/features/folders/createFolder/FolderGqlDto.js.map +0 -1
- package/features/folders/createFolder/ICreateFolderGateway.d.ts +0 -5
- package/features/folders/createFolder/ICreateFolderGateway.js +0 -3
- package/features/folders/createFolder/ICreateFolderGateway.js.map +0 -1
- package/features/folders/createFolder/ICreateFolderRepository.d.ts +0 -4
- package/features/folders/createFolder/ICreateFolderRepository.js +0 -3
- package/features/folders/createFolder/ICreateFolderRepository.js.map +0 -1
- package/features/folders/createFolder/ICreateFolderUseCase.d.ts +0 -12
- package/features/folders/createFolder/ICreateFolderUseCase.js +0 -3
- package/features/folders/createFolder/ICreateFolderUseCase.js.map +0 -1
- package/features/folders/deleteFolder/DeleteFolder.d.ts +0 -5
- package/features/folders/deleteFolder/DeleteFolder.js +0 -16
- package/features/folders/deleteFolder/DeleteFolder.js.map +0 -1
- package/features/folders/deleteFolder/DeleteFolderUseCaseWithLoading.d.ts +0 -8
- package/features/folders/deleteFolder/DeleteFolderUseCaseWithLoading.js +0 -12
- package/features/folders/deleteFolder/DeleteFolderUseCaseWithLoading.js.map +0 -1
- package/features/folders/deleteFolder/IDeleteFolderGateway.d.ts +0 -3
- package/features/folders/deleteFolder/IDeleteFolderGateway.js +0 -3
- package/features/folders/deleteFolder/IDeleteFolderGateway.js.map +0 -1
- package/features/folders/deleteFolder/IDeleteFolderRepository.d.ts +0 -4
- package/features/folders/deleteFolder/IDeleteFolderRepository.js +0 -3
- package/features/folders/deleteFolder/IDeleteFolderRepository.js.map +0 -1
- package/features/folders/deleteFolder/IDeleteFolderUseCase.d.ts +0 -12
- package/features/folders/deleteFolder/IDeleteFolderUseCase.js +0 -3
- package/features/folders/deleteFolder/IDeleteFolderUseCase.js.map +0 -1
- package/features/folders/getDescendantFolders/FolderDto.d.ts +0 -9
- package/features/folders/getDescendantFolders/FolderDto.js +0 -3
- package/features/folders/getDescendantFolders/FolderDto.js.map +0 -1
- package/features/folders/getDescendantFolders/GetDescendantFolders.d.ts +0 -4
- package/features/folders/getDescendantFolders/GetDescendantFolders.js +0 -12
- package/features/folders/getDescendantFolders/GetDescendantFolders.js.map +0 -1
- package/features/folders/getDescendantFolders/IGetDescendantFoldersRepository.d.ts +0 -4
- package/features/folders/getDescendantFolders/IGetDescendantFoldersRepository.js +0 -3
- package/features/folders/getDescendantFolders/IGetDescendantFoldersRepository.js.map +0 -1
- package/features/folders/getDescendantFolders/IGetDescendantFoldersUseCase.d.ts +0 -7
- package/features/folders/getDescendantFolders/IGetDescendantFoldersUseCase.js +0 -3
- package/features/folders/getDescendantFolders/IGetDescendantFoldersUseCase.js.map +0 -1
- package/features/folders/getFolder/GetFolder.d.ts +0 -5
- package/features/folders/getFolder/GetFolder.js +0 -16
- package/features/folders/getFolder/GetFolder.js.map +0 -1
- package/features/folders/getFolder/GetFolderUseCaseWithLoading.d.ts +0 -8
- package/features/folders/getFolder/GetFolderUseCaseWithLoading.js +0 -12
- package/features/folders/getFolder/GetFolderUseCaseWithLoading.js.map +0 -1
- package/features/folders/getFolder/IGetFolderGateway.d.ts +0 -22
- package/features/folders/getFolder/IGetFolderGateway.js +0 -3
- package/features/folders/getFolder/IGetFolderGateway.js.map +0 -1
- package/features/folders/getFolder/IGetFolderRepository.d.ts +0 -3
- package/features/folders/getFolder/IGetFolderRepository.js +0 -3
- package/features/folders/getFolder/IGetFolderRepository.js.map +0 -1
- package/features/folders/getFolder/IGetFolderUseCase.d.ts +0 -6
- package/features/folders/getFolder/IGetFolderUseCase.js +0 -3
- package/features/folders/getFolder/IGetFolderUseCase.js.map +0 -1
- package/features/folders/getFolderAncestors/FolderDto.d.ts +0 -9
- package/features/folders/getFolderAncestors/FolderDto.js +0 -3
- package/features/folders/getFolderAncestors/FolderDto.js.map +0 -1
- package/features/folders/getFolderAncestors/GetFolderAncestors.d.ts +0 -4
- package/features/folders/getFolderAncestors/GetFolderAncestors.js +0 -12
- package/features/folders/getFolderAncestors/GetFolderAncestors.js.map +0 -1
- package/features/folders/getFolderAncestors/IGetFolderAncestorsRepository.d.ts +0 -4
- package/features/folders/getFolderAncestors/IGetFolderAncestorsRepository.js +0 -3
- package/features/folders/getFolderAncestors/IGetFolderAncestorsRepository.js.map +0 -1
- package/features/folders/getFolderAncestors/IGetFolderAncestorsUseCase.d.ts +0 -7
- package/features/folders/getFolderAncestors/IGetFolderAncestorsUseCase.js +0 -3
- package/features/folders/getFolderAncestors/IGetFolderAncestorsUseCase.js.map +0 -1
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFields.d.ts +0 -5
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFields.js +0 -22
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFields.js.map +0 -1
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsRepository.d.ts +0 -26
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsRepository.js +0 -10
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsRepository.js.map +0 -1
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCaseWithNamespace.d.ts +0 -28
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCaseWithNamespace.js +0 -22
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCaseWithNamespace.js.map +0 -1
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCaseWithNamespaceAndModelId.d.ts +0 -29
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCaseWithNamespaceAndModelId.js +0 -24
- package/features/folders/getFolderExtensionsFields/GetFolderExtensionsFieldsUseCaseWithNamespaceAndModelId.js.map +0 -1
- package/features/folders/getFolderExtensionsFields/IGetFolderExtensionsFieldsRepository.d.ts +0 -4
- package/features/folders/getFolderExtensionsFields/IGetFolderExtensionsFieldsRepository.js +0 -3
- package/features/folders/getFolderExtensionsFields/IGetFolderExtensionsFieldsRepository.js.map +0 -1
- package/features/folders/getFolderExtensionsFields/IGetFolderExtensionsFieldsUseCase.d.ts +0 -6
- package/features/folders/getFolderExtensionsFields/IGetFolderExtensionsFieldsUseCase.js +0 -3
- package/features/folders/getFolderExtensionsFields/IGetFolderExtensionsFieldsUseCase.js.map +0 -1
- package/features/folders/getFolderExtensionsFields/useGetFolderExtensionsFields.d.ts +0 -24
- package/features/folders/getFolderExtensionsFields/useGetFolderExtensionsFields.js +0 -17
- package/features/folders/getFolderExtensionsFields/useGetFolderExtensionsFields.js.map +0 -1
- package/features/folders/getFolderHierarchy/FolderDto.d.ts +0 -26
- package/features/folders/getFolderHierarchy/FolderDto.js +0 -34
- package/features/folders/getFolderHierarchy/FolderDto.js.map +0 -1
- package/features/folders/getFolderHierarchy/FolderGqlDto.d.ts +0 -21
- package/features/folders/getFolderHierarchy/FolderGqlDto.js +0 -3
- package/features/folders/getFolderHierarchy/FolderGqlDto.js.map +0 -1
- package/features/folders/getFolderHierarchy/GetFolderHierarchy.d.ts +0 -14
- package/features/folders/getFolderHierarchy/GetFolderHierarchy.js +0 -22
- package/features/folders/getFolderHierarchy/GetFolderHierarchy.js.map +0 -1
- package/features/folders/getFolderHierarchy/GetFolderHierarchy.test.js +0 -205
- package/features/folders/getFolderHierarchy/GetFolderHierarchy.test.js.map +0 -1
- package/features/folders/getFolderHierarchy/GetFolderHierarchyGqlGateway.d.ts +0 -31
- package/features/folders/getFolderHierarchy/GetFolderHierarchyGqlGateway.js +0 -82
- package/features/folders/getFolderHierarchy/GetFolderHierarchyGqlGateway.js.map +0 -1
- package/features/folders/getFolderHierarchy/GetFolderHierarchyRepository.d.ts +0 -12
- package/features/folders/getFolderHierarchy/GetFolderHierarchyRepository.js +0 -28
- package/features/folders/getFolderHierarchy/GetFolderHierarchyRepository.js.map +0 -1
- package/features/folders/getFolderHierarchy/GetFolderHierarchyUseCase.d.ts +0 -7
- package/features/folders/getFolderHierarchy/GetFolderHierarchyUseCase.js +0 -14
- package/features/folders/getFolderHierarchy/GetFolderHierarchyUseCase.js.map +0 -1
- package/features/folders/getFolderHierarchy/GetFolderHierarchyUseCaseWithLoading.d.ts +0 -8
- package/features/folders/getFolderHierarchy/GetFolderHierarchyUseCaseWithLoading.js +0 -12
- package/features/folders/getFolderHierarchy/GetFolderHierarchyUseCaseWithLoading.js.map +0 -1
- package/features/folders/getFolderHierarchy/IGetFolderHierarchyGateway.d.ts +0 -12
- package/features/folders/getFolderHierarchy/IGetFolderHierarchyGateway.js +0 -3
- package/features/folders/getFolderHierarchy/IGetFolderHierarchyGateway.js.map +0 -1
- package/features/folders/getFolderHierarchy/IGetFolderHierarchyRepository.d.ts +0 -6
- package/features/folders/getFolderHierarchy/IGetFolderHierarchyRepository.js +0 -3
- package/features/folders/getFolderHierarchy/IGetFolderHierarchyRepository.js.map +0 -1
- package/features/folders/getFolderHierarchy/IGetFolderHierarchyUseCase.d.ts +0 -6
- package/features/folders/getFolderHierarchy/IGetFolderHierarchyUseCase.js +0 -3
- package/features/folders/getFolderHierarchy/IGetFolderHierarchyUseCase.js.map +0 -1
- package/features/folders/getFolderHierarchy/index.d.ts +0 -1
- package/features/folders/getFolderHierarchy/index.js +0 -3
- package/features/folders/getFolderHierarchy/index.js.map +0 -1
- package/features/folders/getFolderHierarchy/useGetFolderHierarchy.d.ts +0 -6
- package/features/folders/getFolderHierarchy/useGetFolderHierarchy.js +0 -51
- package/features/folders/getFolderHierarchy/useGetFolderHierarchy.js.map +0 -1
- package/features/folders/getFolderLevelPermission/FolderPermissionName.d.ts +0 -1
- package/features/folders/getFolderLevelPermission/FolderPermissionName.js +0 -3
- package/features/folders/getFolderLevelPermission/FolderPermissionName.js.map +0 -1
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermission.d.ts +0 -5
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermission.js +0 -16
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermission.js.map +0 -1
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionRepository.d.ts +0 -10
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionRepository.js +0 -15
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionRepository.js.map +0 -1
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionWithFlpUseCase.d.ts +0 -7
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionWithFlpUseCase.js +0 -10
- package/features/folders/getFolderLevelPermission/GetFolderLevelPermissionWithFlpUseCase.js.map +0 -1
- package/features/folders/getFolderLevelPermission/IGetFolderLevelPermissionRepository.d.ts +0 -3
- package/features/folders/getFolderLevelPermission/IGetFolderLevelPermissionRepository.js +0 -3
- package/features/folders/getFolderLevelPermission/IGetFolderLevelPermissionRepository.js.map +0 -1
- package/features/folders/getFolderLevelPermission/IGetFolderLevelPermissionUseCase.d.ts +0 -6
- package/features/folders/getFolderLevelPermission/IGetFolderLevelPermissionUseCase.js +0 -3
- package/features/folders/getFolderLevelPermission/IGetFolderLevelPermissionUseCase.js.map +0 -1
- package/features/folders/getFolderModel/FolderModelContext.d.ts +0 -3
- package/features/folders/getFolderModel/FolderModelContext.js +0 -60
- package/features/folders/getFolderModel/FolderModelContext.js.map +0 -1
- package/features/folders/getFolderModel/GetFolderModel.d.ts +0 -11
- package/features/folders/getFolderModel/GetFolderModel.js +0 -14
- package/features/folders/getFolderModel/GetFolderModel.js.map +0 -1
- package/features/folders/getFolderModel/GetFolderModel.test.d.ts +0 -1
- package/features/folders/getFolderModel/GetFolderModel.test.js +0 -74
- package/features/folders/getFolderModel/GetFolderModel.test.js.map +0 -1
- package/features/folders/getFolderModel/GetFolderModelGqlGateway.d.ts +0 -18
- package/features/folders/getFolderModel/GetFolderModelGqlGateway.js.map +0 -1
- package/features/folders/getFolderModel/GetFolderModelRepository.d.ts +0 -10
- package/features/folders/getFolderModel/GetFolderModelRepository.js.map +0 -1
- package/features/folders/getFolderModel/GetFolderModelUseCase.d.ts +0 -7
- package/features/folders/getFolderModel/GetFolderModelUseCase.js +0 -10
- package/features/folders/getFolderModel/GetFolderModelUseCase.js.map +0 -1
- package/features/folders/getFolderModel/IGetFolderModelGateway.d.ts +0 -4
- package/features/folders/getFolderModel/IGetFolderModelGateway.js +0 -3
- package/features/folders/getFolderModel/IGetFolderModelGateway.js.map +0 -1
- package/features/folders/getFolderModel/IGetFolderModelRepository.d.ts +0 -6
- package/features/folders/getFolderModel/IGetFolderModelRepository.js +0 -3
- package/features/folders/getFolderModel/IGetFolderModelRepository.js.map +0 -1
- package/features/folders/getFolderModel/IGetFolderModelUseCase.d.ts +0 -3
- package/features/folders/getFolderModel/IGetFolderModelUseCase.js +0 -3
- package/features/folders/getFolderModel/IGetFolderModelUseCase.js.map +0 -1
- package/features/folders/getFolderModel/index.d.ts +0 -3
- package/features/folders/getFolderModel/index.js +0 -5
- package/features/folders/getFolderModel/index.js.map +0 -1
- package/features/folders/getFolderModel/useFolderModel.d.ts +0 -1
- package/features/folders/getFolderModel/useFolderModel.js +0 -11
- package/features/folders/getFolderModel/useFolderModel.js.map +0 -1
- package/features/folders/index.d.ts +0 -14
- package/features/folders/index.js +0 -16
- package/features/folders/index.js.map +0 -1
- package/features/folders/listFolders/FolderDto.d.ts +0 -26
- package/features/folders/listFolders/FolderDto.js +0 -34
- package/features/folders/listFolders/FolderDto.js.map +0 -1
- package/features/folders/listFolders/FolderGqlDto.d.ts +0 -21
- package/features/folders/listFolders/FolderGqlDto.js +0 -3
- package/features/folders/listFolders/FolderGqlDto.js.map +0 -1
- package/features/folders/listFolders/IListFoldersGateway.d.ts +0 -7
- package/features/folders/listFolders/IListFoldersGateway.js +0 -3
- package/features/folders/listFolders/IListFoldersGateway.js.map +0 -1
- package/features/folders/listFolders/IListFoldersRepository.d.ts +0 -3
- package/features/folders/listFolders/IListFoldersRepository.js +0 -3
- package/features/folders/listFolders/IListFoldersRepository.js.map +0 -1
- package/features/folders/listFolders/IListFoldersUseCase.d.ts +0 -3
- package/features/folders/listFolders/IListFoldersUseCase.js +0 -3
- package/features/folders/listFolders/IListFoldersUseCase.js.map +0 -1
- package/features/folders/listFolders/ListFolders.d.ts +0 -14
- package/features/folders/listFolders/ListFolders.js +0 -21
- package/features/folders/listFolders/ListFolders.js.map +0 -1
- package/features/folders/listFolders/ListFoldersCompressedGqlGateway.d.ts +0 -26
- package/features/folders/listFolders/ListFoldersCompressedGqlGateway.js +0 -83
- package/features/folders/listFolders/ListFoldersCompressedGqlGateway.js.map +0 -1
- package/features/folders/listFoldersByParentIds/FolderDto.d.ts +0 -26
- package/features/folders/listFoldersByParentIds/FolderDto.js.map +0 -1
- package/features/folders/listFoldersByParentIds/FolderGqlDto.d.ts +0 -21
- package/features/folders/listFoldersByParentIds/FolderGqlDto.js +0 -3
- package/features/folders/listFoldersByParentIds/FolderGqlDto.js.map +0 -1
- package/features/folders/listFoldersByParentIds/IListFoldersByParentIdsGateway.d.ts +0 -8
- package/features/folders/listFoldersByParentIds/IListFoldersByParentIdsGateway.js +0 -3
- package/features/folders/listFoldersByParentIds/IListFoldersByParentIdsGateway.js.map +0 -1
- package/features/folders/listFoldersByParentIds/IListFoldersByParentIdsRepository.d.ts +0 -6
- package/features/folders/listFoldersByParentIds/IListFoldersByParentIdsRepository.js +0 -3
- package/features/folders/listFoldersByParentIds/IListFoldersByParentIdsRepository.js.map +0 -1
- package/features/folders/listFoldersByParentIds/IListFoldersByParentIdsUseCase.d.ts +0 -6
- package/features/folders/listFoldersByParentIds/IListFoldersByParentIdsUseCase.js +0 -3
- package/features/folders/listFoldersByParentIds/IListFoldersByParentIdsUseCase.js.map +0 -1
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIds.d.ts +0 -14
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIds.js +0 -24
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIds.js.map +0 -1
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsRepositoryWithLoadedCache.d.ts +0 -8
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsRepositoryWithLoadedCache.js +0 -23
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsRepositoryWithLoadedCache.js.map +0 -1
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCaseWithLoading.d.ts +0 -10
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCaseWithLoading.js +0 -21
- package/features/folders/listFoldersByParentIds/ListFoldersByParentIdsUseCaseWithLoading.js.map +0 -1
- package/features/folders/updateFolder/FolderDto.d.ts +0 -9
- package/features/folders/updateFolder/FolderDto.js +0 -3
- package/features/folders/updateFolder/FolderDto.js.map +0 -1
- package/features/folders/updateFolder/FolderGqlDto.d.ts +0 -21
- package/features/folders/updateFolder/FolderGqlDto.js +0 -3
- package/features/folders/updateFolder/FolderGqlDto.js.map +0 -1
- package/features/folders/updateFolder/IUpdateFolderGateway.d.ts +0 -5
- package/features/folders/updateFolder/IUpdateFolderGateway.js +0 -3
- package/features/folders/updateFolder/IUpdateFolderGateway.js.map +0 -1
- package/features/folders/updateFolder/IUpdateFolderRepository.d.ts +0 -4
- package/features/folders/updateFolder/IUpdateFolderRepository.js +0 -3
- package/features/folders/updateFolder/IUpdateFolderRepository.js.map +0 -1
- package/features/folders/updateFolder/IUpdateFolderUseCase.d.ts +0 -13
- package/features/folders/updateFolder/IUpdateFolderUseCase.js +0 -3
- package/features/folders/updateFolder/IUpdateFolderUseCase.js.map +0 -1
- package/features/folders/updateFolder/UpdateFolder.d.ts +0 -5
- package/features/folders/updateFolder/UpdateFolder.js +0 -22
- package/features/folders/updateFolder/UpdateFolder.js.map +0 -1
- package/features/folders/updateFolder/UpdateFolderRepositoryWithPathChange.d.ts +0 -11
- package/features/folders/updateFolder/UpdateFolderRepositoryWithPathChange.js.map +0 -1
- package/features/folders/updateFolder/UpdateFolderRepositoryWithPermissionsChange.d.ts +0 -12
- package/features/folders/updateFolder/UpdateFolderRepositoryWithPermissionsChange.js.map +0 -1
- package/features/folders/updateFolder/UpdateFolderUseCaseWithLoading.d.ts +0 -8
- package/features/folders/updateFolder/UpdateFolderUseCaseWithLoading.js +0 -12
- package/features/folders/updateFolder/UpdateFolderUseCaseWithLoading.js.map +0 -1
- package/features/folders/updateFolder/UpdateFolderUseCaseWithoutInheritedPermissions.d.ts +0 -6
- package/features/folders/updateFolder/UpdateFolderUseCaseWithoutInheritedPermissions.js +0 -15
- package/features/folders/updateFolder/UpdateFolderUseCaseWithoutInheritedPermissions.js.map +0 -1
- package/features/index.d.ts +0 -1
- package/features/index.js +0 -3
- package/features/index.js.map +0 -1
- package/graphql/records/createRecord.d.ts +0 -2
- package/graphql/records/createRecord.js +0 -24
- package/graphql/records/createRecord.js.map +0 -1
- package/graphql/records/deleteRecord.d.ts +0 -2
- package/graphql/records/deleteRecord.js +0 -22
- package/graphql/records/deleteRecord.js.map +0 -1
- package/graphql/records/listTags.d.ts +0 -2
- package/graphql/records/listTags.js +0 -25
- package/graphql/records/listTags.js.map +0 -1
- package/graphql/records/updateRecord.d.ts +0 -2
- package/graphql/records/updateRecord.js +0 -24
- package/graphql/records/updateRecord.js.map +0 -1
- package/hooks/useFolders.d.ts +0 -20
- package/hooks/useFolders.js +0 -56
- package/hooks/useFolders.js.map +0 -1
- package/hooks/useGetFolderGraphQLSelection.d.ts +0 -1
- package/hooks/useGetFolderGraphQLSelection.js +0 -42
- package/hooks/useGetFolderGraphQLSelection.js.map +0 -1
- /package/{features/folders/createFolder → domain/folder}/FolderDto.js +0 -0
- /package/features/folders/{getFolderModel → folderModelProvider}/FolderModelDto.js +0 -0
- /package/features/folders/{getFolderHierarchy/GetFolderHierarchy.test.d.ts → loadFolderHierarchy/LoadFolderHierarchy.test.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEffect","useMemo","observer","useToast","AdvancedSearchPresenter","Button","QueryManagerDialog","QueryBuilderDrawer","QuerySaverDialog","SelectedFilter","AdvancedSearch","fields","repository","onApplyFilter","showToast","presenter","load","applyFilter","filter","vm","appliedFilter","unsetFilter","deleteFilter","filterId","id","persistAndApplyFilter","persistFilter","feedbackVm","isOpen","title","message","createElement","Fragment","className","onClick","openManager","onEdit","editAppliedFilter","onDelete","onClose","closeManager","onCreate","createFilter","editFilter","onRename","renameFilter","onClone","cloneFilter","onSelect","managerVm","currentFilter","closeBuilder","onSave","saveFilter","onApply","onValidationError","showFeedback","builderVm","closeSaver","saverVm"],"sources":["AdvancedSearch.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { useToast } from \"@webiny/admin-ui\";\n\nimport type { FieldDTOWithElement, FilterDTO, FilterRepository } from \"./domain\";\n\nimport { AdvancedSearchPresenter } from \"./AdvancedSearchPresenter\";\n\nimport { Button } from \"./Button\";\nimport { QueryManagerDialog } from \"./QueryManagerDialog\";\nimport { QueryBuilderDrawer } from \"./QueryBuilderDrawer\";\nimport { QuerySaverDialog } from \"./QuerySaverDialog\";\nimport { SelectedFilter } from \"./SelectedFilter\";\n\nexport interface AdvancedSearchProps {\n fields: FieldDTOWithElement[];\n repository: FilterRepository;\n onApplyFilter: (data: FilterDTO | null) => void;\n}\n\nexport const AdvancedSearch = observer(\n ({ fields, repository, onApplyFilter }: AdvancedSearchProps) => {\n const { showToast } = useToast();\n\n const presenter = useMemo<AdvancedSearchPresenter>(() => {\n return new AdvancedSearchPresenter(repository);\n }, [repository]);\n\n useEffect(() => {\n presenter.load();\n }, []);\n\n const applyFilter = async (filter: string | FilterDTO) => {\n await presenter.applyFilter(filter);\n if (presenter.vm.appliedFilter) {\n onApplyFilter(presenter.vm.appliedFilter);\n }\n };\n\n const unsetFilter = () => {\n if (presenter.vm.appliedFilter) {\n presenter.unsetFilter();\n onApplyFilter(null);\n }\n };\n\n const deleteFilter = async (filterId: string) => {\n await presenter.deleteFilter(filterId);\n if (filterId === presenter.vm.appliedFilter?.id) {\n unsetFilter();\n }\n };\n\n const persistAndApplyFilter = async (filter: FilterDTO) => {\n await presenter.persistFilter(filter);\n onApplyFilter(filter);\n };\n\n useEffect(() => {\n if (presenter.vm.feedbackVm.isOpen) {\n showToast({\n title: presenter.vm.feedbackVm.message\n });\n }\n }, [presenter.vm.feedbackVm.isOpen, presenter.vm.feedbackVm.message]);\n\n return (\n <>\n <div
|
|
1
|
+
{"version":3,"names":["React","useEffect","useMemo","observer","useToast","AdvancedSearchPresenter","Button","QueryManagerDialog","QueryBuilderDrawer","QuerySaverDialog","SelectedFilter","AdvancedSearch","fields","repository","onApplyFilter","showToast","presenter","load","applyFilter","filter","vm","appliedFilter","unsetFilter","deleteFilter","filterId","id","persistAndApplyFilter","persistFilter","feedbackVm","isOpen","title","message","createElement","Fragment","className","onClick","openManager","onEdit","editAppliedFilter","onDelete","onClose","closeManager","onCreate","createFilter","editFilter","onRename","renameFilter","onClone","cloneFilter","onSelect","managerVm","currentFilter","closeBuilder","onSave","saveFilter","onApply","onValidationError","showFeedback","builderVm","closeSaver","saverVm"],"sources":["AdvancedSearch.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { useToast } from \"@webiny/admin-ui\";\n\nimport type { FieldDTOWithElement, FilterDTO, FilterRepository } from \"./domain/index.js\";\n\nimport { AdvancedSearchPresenter } from \"./AdvancedSearchPresenter.js\";\n\nimport { Button } from \"./Button/index.js\";\nimport { QueryManagerDialog } from \"./QueryManagerDialog/index.js\";\nimport { QueryBuilderDrawer } from \"./QueryBuilderDrawer/index.js\";\nimport { QuerySaverDialog } from \"./QuerySaverDialog/index.js\";\nimport { SelectedFilter } from \"./SelectedFilter/index.js\";\n\nexport interface AdvancedSearchProps {\n fields: FieldDTOWithElement[];\n repository: FilterRepository;\n onApplyFilter: (data: FilterDTO | null) => void;\n}\n\nexport const AdvancedSearch = observer(\n ({ fields, repository, onApplyFilter }: AdvancedSearchProps) => {\n const { showToast } = useToast();\n\n const presenter = useMemo<AdvancedSearchPresenter>(() => {\n return new AdvancedSearchPresenter(repository);\n }, [repository]);\n\n useEffect(() => {\n presenter.load();\n }, []);\n\n const applyFilter = async (filter: string | FilterDTO) => {\n await presenter.applyFilter(filter);\n if (presenter.vm.appliedFilter) {\n onApplyFilter(presenter.vm.appliedFilter);\n }\n };\n\n const unsetFilter = () => {\n if (presenter.vm.appliedFilter) {\n presenter.unsetFilter();\n onApplyFilter(null);\n }\n };\n\n const deleteFilter = async (filterId: string) => {\n await presenter.deleteFilter(filterId);\n if (filterId === presenter.vm.appliedFilter?.id) {\n unsetFilter();\n }\n };\n\n const persistAndApplyFilter = async (filter: FilterDTO) => {\n await presenter.persistFilter(filter);\n onApplyFilter(filter);\n };\n\n useEffect(() => {\n if (presenter.vm.feedbackVm.isOpen) {\n showToast({\n title: presenter.vm.feedbackVm.message\n });\n }\n }, [presenter.vm.feedbackVm.isOpen, presenter.vm.feedbackVm.message]);\n\n return (\n <>\n <div className={\"flex flex-row-reverse justify-between items-center gap-sm\"}>\n <Button onClick={() => presenter.openManager()} />\n {presenter.vm.appliedFilter ? (\n <SelectedFilter\n filter={presenter.vm.appliedFilter}\n onEdit={() => presenter.editAppliedFilter()}\n onDelete={unsetFilter}\n />\n ) : null}\n </div>\n <QueryManagerDialog\n onClose={() => presenter.closeManager()}\n onCreate={() => presenter.createFilter()}\n onEdit={filterId => presenter.editFilter(filterId)}\n onRename={filterId => presenter.renameFilter(filterId)}\n onClone={filterId => presenter.cloneFilter(filterId)}\n onDelete={deleteFilter}\n onSelect={applyFilter}\n vm={presenter.vm.managerVm}\n />\n {presenter.vm.currentFilter ? (\n <>\n <QueryBuilderDrawer\n fields={fields}\n onClose={() => presenter.closeBuilder()}\n onSave={filter => presenter.saveFilter(filter)}\n onApply={applyFilter}\n onValidationError={message => presenter.showFeedback(message)}\n filter={presenter.vm.currentFilter}\n vm={presenter.vm.builderVm}\n />\n <QuerySaverDialog\n onSave={persistAndApplyFilter}\n onClose={() => presenter.closeSaver()}\n filter={presenter.vm.currentFilter}\n vm={presenter.vm.saverVm}\n />\n </>\n ) : null}\n </>\n );\n }\n);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { AcoConfig } from "../../config";
|
|
3
|
-
import { FieldType } from "./domain";
|
|
4
|
-
import { Boolean, DateWithoutTimezone, DateWithTimezone, Input, PredefinedValues } from "./fields";
|
|
2
|
+
import { AcoConfig } from "../../config/index.js";
|
|
3
|
+
import { FieldType } from "./domain/index.js";
|
|
4
|
+
import { Boolean, DateWithoutTimezone, DateWithTimezone, Input, PredefinedValues } from "./fields/index.js";
|
|
5
5
|
const {
|
|
6
6
|
AdvancedSearch
|
|
7
7
|
} = AcoConfig;
|
|
8
8
|
export const AdvancedSearchConfigs = /*#__PURE__*/React.memo(() => {
|
|
9
|
-
return /*#__PURE__*/React.createElement(
|
|
9
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(AdvancedSearch.FieldRenderer, {
|
|
10
10
|
name: "text",
|
|
11
11
|
type: FieldType.TEXT,
|
|
12
12
|
element: /*#__PURE__*/React.createElement(Input, null)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","AcoConfig","FieldType","Boolean","DateWithoutTimezone","DateWithTimezone","Input","PredefinedValues","AdvancedSearch","AdvancedSearchConfigs","memo","createElement","FieldRenderer","name","type","TEXT","element","DATE","TIME","NUMBER","BOOLEAN","DATETIME_WITH_TIMEZONE","DATETIME_WITHOUT_TIMEZONE","PREDEFINED_VALUES","displayName"],"sources":["AdvancedSearchConfigs.tsx"],"sourcesContent":["import React from \"react\";\nimport { AcoConfig } from \"~/config\";\nimport { FieldType } from \"~/components/AdvancedSearch/domain\";\nimport {\n Boolean,\n DateWithoutTimezone,\n DateWithTimezone,\n Input,\n PredefinedValues\n} from \"~/components/AdvancedSearch/fields\";\n\nconst { AdvancedSearch } = AcoConfig;\n\nexport const AdvancedSearchConfigs = React.memo(() => {\n return (\n
|
|
1
|
+
{"version":3,"names":["React","AcoConfig","FieldType","Boolean","DateWithoutTimezone","DateWithTimezone","Input","PredefinedValues","AdvancedSearch","AdvancedSearchConfigs","memo","createElement","Fragment","FieldRenderer","name","type","TEXT","element","DATE","TIME","NUMBER","BOOLEAN","DATETIME_WITH_TIMEZONE","DATETIME_WITHOUT_TIMEZONE","PREDEFINED_VALUES","displayName"],"sources":["AdvancedSearchConfigs.tsx"],"sourcesContent":["import React from \"react\";\nimport { AcoConfig } from \"~/config/index.js\";\nimport { FieldType } from \"~/components/AdvancedSearch/domain/index.js\";\nimport {\n Boolean,\n DateWithoutTimezone,\n DateWithTimezone,\n Input,\n PredefinedValues\n} from \"~/components/AdvancedSearch/fields/index.js\";\n\nconst { AdvancedSearch } = AcoConfig;\n\nexport const AdvancedSearchConfigs = React.memo(() => {\n return (\n <>\n <AdvancedSearch.FieldRenderer name={\"text\"} type={FieldType.TEXT} element={<Input />} />\n <AdvancedSearch.FieldRenderer name={\"date\"} type={FieldType.DATE} element={<Input />} />\n <AdvancedSearch.FieldRenderer name={\"time\"} type={FieldType.TIME} element={<Input />} />\n <AdvancedSearch.FieldRenderer\n name={\"number\"}\n type={FieldType.NUMBER}\n element={<Input />}\n />\n <AdvancedSearch.FieldRenderer\n name={\"boolean\"}\n type={FieldType.BOOLEAN}\n element={<Boolean />}\n />\n <AdvancedSearch.FieldRenderer\n name={\"dateTimeWithTimezone\"}\n type={FieldType.DATETIME_WITH_TIMEZONE}\n element={<DateWithTimezone />}\n />\n <AdvancedSearch.FieldRenderer\n name={\"dateTimeWithoutTimezone\"}\n type={FieldType.DATETIME_WITHOUT_TIMEZONE}\n element={<DateWithoutTimezone />}\n />\n <AdvancedSearch.FieldRenderer\n name={\"predefinedValues\"}\n type={FieldType.PREDEFINED_VALUES}\n element={<PredefinedValues />}\n />\n </>\n );\n});\n\nAdvancedSearchConfigs.displayName = \"AdvancedSearchConfigs\";\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS;AAClB,SAASC,SAAS;AAClB,SACIC,OAAO,EACPC,mBAAmB,EACnBC,gBAAgB,EAChBC,KAAK,EACLC,gBAAgB;AAGpB,MAAM;EAAEC;AAAe,CAAC,GAAGP,SAAS;AAEpC,OAAO,MAAMQ,qBAAqB,gBAAGT,KAAK,CAACU,IAAI,CAAC,MAAM;EAClD,oBACIV,KAAA,CAAAW,aAAA,CAAAX,KAAA,CAAAY,QAAA,qBACIZ,KAAA,CAAAW,aAAA,CAACH,cAAc,CAACK,aAAa;IAACC,IAAI,EAAE,MAAO;IAACC,IAAI,EAAEb,SAAS,CAACc,IAAK;IAACC,OAAO,eAAEjB,KAAA,CAAAW,aAAA,CAACL,KAAK,MAAE;EAAE,CAAE,CAAC,eACxFN,KAAA,CAAAW,aAAA,CAACH,cAAc,CAACK,aAAa;IAACC,IAAI,EAAE,MAAO;IAACC,IAAI,EAAEb,SAAS,CAACgB,IAAK;IAACD,OAAO,eAAEjB,KAAA,CAAAW,aAAA,CAACL,KAAK,MAAE;EAAE,CAAE,CAAC,eACxFN,KAAA,CAAAW,aAAA,CAACH,cAAc,CAACK,aAAa;IAACC,IAAI,EAAE,MAAO;IAACC,IAAI,EAAEb,SAAS,CAACiB,IAAK;IAACF,OAAO,eAAEjB,KAAA,CAAAW,aAAA,CAACL,KAAK,MAAE;EAAE,CAAE,CAAC,eACxFN,KAAA,CAAAW,aAAA,CAACH,cAAc,CAACK,aAAa;IACzBC,IAAI,EAAE,QAAS;IACfC,IAAI,EAAEb,SAAS,CAACkB,MAAO;IACvBH,OAAO,eAAEjB,KAAA,CAAAW,aAAA,CAACL,KAAK,MAAE;EAAE,CACtB,CAAC,eACFN,KAAA,CAAAW,aAAA,CAACH,cAAc,CAACK,aAAa;IACzBC,IAAI,EAAE,SAAU;IAChBC,IAAI,EAAEb,SAAS,CAACmB,OAAQ;IACxBJ,OAAO,eAAEjB,KAAA,CAAAW,aAAA,CAACR,OAAO,MAAE;EAAE,CACxB,CAAC,eACFH,KAAA,CAAAW,aAAA,CAACH,cAAc,CAACK,aAAa;IACzBC,IAAI,EAAE,sBAAuB;IAC7BC,IAAI,EAAEb,SAAS,CAACoB,sBAAuB;IACvCL,OAAO,eAAEjB,KAAA,CAAAW,aAAA,CAACN,gBAAgB,MAAE;EAAE,CACjC,CAAC,eACFL,KAAA,CAAAW,aAAA,CAACH,cAAc,CAACK,aAAa;IACzBC,IAAI,EAAE,yBAA0B;IAChCC,IAAI,EAAEb,SAAS,CAACqB,yBAA0B;IAC1CN,OAAO,eAAEjB,KAAA,CAAAW,aAAA,CAACP,mBAAmB,MAAE;EAAE,CACpC,CAAC,eACFJ,KAAA,CAAAW,aAAA,CAACH,cAAc,CAACK,aAAa;IACzBC,IAAI,EAAE,kBAAmB;IACzBC,IAAI,EAAEb,SAAS,CAACsB,iBAAkB;IAClCP,OAAO,eAAEjB,KAAA,CAAAW,aAAA,CAACJ,gBAAgB,MAAE;EAAE,CACjC,CACH,CAAC;AAEX,CAAC,CAAC;AAEFE,qBAAqB,CAACgB,WAAW,GAAG,uBAAuB","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { makeAutoObservable, runInAction } from "mobx";
|
|
2
|
-
import { Feedback, Filter, FilterMapper } from "./domain";
|
|
2
|
+
import { Feedback, Filter, FilterMapper } from "./domain/index.js";
|
|
3
3
|
export class AdvancedSearchPresenter {
|
|
4
4
|
showBuilder = false;
|
|
5
5
|
showManager = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["makeAutoObservable","runInAction","Feedback","Filter","FilterMapper","AdvancedSearchPresenter","showBuilder","showManager","showSaver","currentFilter","appliedFilter","constructor","repository","feedback","load","listFilters","managerVm","vm","isOpen","view","isLoading","getLoading","loadingLabel","filters","getFilters","map","filter","id","name","description","createdOn","length","feedbackVm","Boolean","message","builderVm","saverVm","openManager","closeManager","openBuilder","closeBuilder","openSaver","closeSaver","showFeedback","applyFilter","filterDto","result","getFilterById","unsetFilter","editAppliedFilter","renameFilter","filterId","createFilter","toDTO","createEmpty","cloneFilter","create","editFilter","deleteFilter","saveFilter","persistFilter","updateFilterIntoRepository","createFilterIntoRepository","newFilter","updateFilter"],"sources":["AdvancedSearchPresenter.ts"],"sourcesContent":["import { makeAutoObservable, runInAction } from \"mobx\";\nimport type { FilterDTO, FilterRepository } from \"~/components/AdvancedSearch/domain\";\nimport { Feedback, Filter, FilterMapper } from \"~/components/AdvancedSearch/domain\";\n\nexport interface AdvancedSearchPresenterInterface {\n load(): Promise<void>;\n openManager(): void;\n closeManager(): void;\n openBuilder(): void;\n closeBuilder(): void;\n openSaver(): void;\n closeSaver(): void;\n showFeedback(message: string): void;\n applyFilter(filter: string | FilterDTO): Promise<void>;\n unsetFilter(): void;\n editAppliedFilter(): void;\n createFilter(): void;\n editFilter(filterId: string): Promise<void>;\n deleteFilter(id: string): Promise<void>;\n saveFilter(filter: FilterDTO): void;\n renameFilter(filterId: string): Promise<void>;\n cloneFilter(filterId: string): Promise<void>;\n persistFilter(filter: FilterDTO): Promise<void>;\n get vm(): {\n currentFilter: FilterDTO | null;\n appliedFilter: FilterDTO | null;\n feedbackVm: {\n isOpen: boolean;\n message: string;\n };\n managerVm: {\n isOpen: boolean;\n view: string;\n isLoading: boolean;\n loadingLabel: string;\n filters: Array<{\n id: string;\n name: string;\n description: string;\n createdOn: string;\n }>;\n };\n builderVm: {\n isOpen: boolean;\n };\n saverVm: {\n isOpen: boolean;\n isLoading: boolean;\n loadingLabel: string;\n };\n };\n}\n\nexport class AdvancedSearchPresenter implements AdvancedSearchPresenterInterface {\n private repository: FilterRepository;\n private readonly feedback: Feedback;\n private showBuilder = false;\n private showManager = false;\n private showSaver = false;\n private currentFilter: FilterDTO | null = null;\n private appliedFilter: FilterDTO | null = null;\n\n constructor(repository: FilterRepository) {\n this.repository = repository;\n this.feedback = new Feedback();\n makeAutoObservable(this);\n }\n\n async load() {\n await this.repository.listFilters();\n }\n\n private get managerVm() {\n const vm = {\n isOpen: this.showManager,\n view: \"EMPTY\",\n isLoading: this.repository.getLoading().isLoading,\n loadingLabel: this.repository.getLoading().loadingLabel,\n filters: this.repository.getFilters().map(filter => ({\n id: filter.id,\n name: filter.name,\n description: filter.description || \"\",\n createdOn: filter.createdOn || \"\"\n }))\n };\n\n if (this.repository.getFilters().length !== 0) {\n vm.view = \"LIST\";\n }\n\n return vm;\n }\n\n private get feedbackVm() {\n return {\n isOpen: Boolean(this.feedback.message || this.repository.getLoading().message),\n message: this.feedback.message || this.repository.getLoading().message\n };\n }\n\n private get builderVm() {\n return {\n isOpen: this.showBuilder\n };\n }\n\n private get saverVm() {\n return {\n isOpen: this.showSaver,\n isLoading: this.repository.getLoading().isLoading,\n loadingLabel: this.repository.getLoading().loadingLabel\n };\n }\n\n get vm() {\n return {\n appliedFilter: this.appliedFilter,\n currentFilter: this.currentFilter,\n feedbackVm: this.feedbackVm,\n managerVm: this.managerVm,\n builderVm: this.builderVm,\n saverVm: this.saverVm\n };\n }\n\n openManager() {\n this.showManager = true;\n }\n\n closeManager() {\n this.showManager = false;\n }\n\n openBuilder() {\n this.showBuilder = true;\n }\n\n closeBuilder() {\n this.showBuilder = false;\n }\n\n openSaver() {\n this.showSaver = true;\n }\n\n closeSaver() {\n this.showSaver = false;\n }\n\n showFeedback(message: string) {\n this.feedback.message = message;\n }\n\n async applyFilter(filter: string | FilterDTO): Promise<void> {\n let filterDto: FilterDTO;\n\n if (typeof filter === \"string\") {\n const result = await this.repository.getFilterById(filter);\n\n if (!result) {\n return;\n }\n\n filterDto = result;\n } else {\n filterDto = filter;\n }\n\n runInAction(() => {\n this.appliedFilter = filterDto;\n this.currentFilter = null;\n this.closeManager();\n this.closeBuilder();\n this.closeSaver();\n });\n }\n\n unsetFilter() {\n this.appliedFilter = null;\n this.currentFilter = null;\n }\n\n editAppliedFilter() {\n this.currentFilter = this.appliedFilter;\n this.openBuilder();\n }\n\n async renameFilter(filterId: string) {\n const filter = await this.repository.getFilterById(filterId);\n\n if (!filter) {\n return;\n }\n\n runInAction(() => {\n this.currentFilter = filter;\n this.closeManager();\n this.closeBuilder();\n this.openSaver();\n });\n }\n\n createFilter() {\n this.currentFilter = FilterMapper.toDTO(Filter.createEmpty());\n this.closeManager();\n this.openBuilder();\n this.closeSaver();\n }\n\n async cloneFilter(filterId: string) {\n const filter = await this.repository.getFilterById(filterId);\n\n if (!filter) {\n return;\n }\n\n runInAction(() => {\n this.currentFilter = FilterMapper.toDTO(\n Filter.create({ ...filter, id: \"\", name: `Clone of ${filter.name}` })\n );\n this.closeManager();\n this.openBuilder();\n this.closeSaver();\n });\n }\n\n async editFilter(filterId: string) {\n const filter = await this.repository.getFilterById(filterId);\n\n if (!filter) {\n return;\n }\n\n runInAction(() => {\n this.currentFilter = filter;\n this.closeManager();\n this.openBuilder();\n this.closeSaver();\n });\n }\n\n async deleteFilter(filterId: string) {\n await this.repository.deleteFilter(filterId);\n\n runInAction(() => {\n this.currentFilter = null;\n });\n }\n\n saveFilter(filter: FilterDTO) {\n this.currentFilter = filter;\n this.closeManager();\n this.openBuilder();\n this.openSaver();\n }\n\n async persistFilter(filter: FilterDTO) {\n if (filter.id) {\n await this.updateFilterIntoRepository(filter);\n } else {\n await this.createFilterIntoRepository(filter);\n }\n\n runInAction(() => {\n this.closeManager();\n this.closeBuilder();\n this.closeSaver();\n });\n }\n\n private async createFilterIntoRepository(filterDto: FilterDTO) {\n const newFilter = await this.repository.createFilter(filterDto);\n\n if (!newFilter) {\n return;\n }\n\n /**\n * repository.createFilter returns generates the filter id.\n * We need to set it back as appliedFilter, otherwise further actions on the filter would fail (update/delete).\n */\n runInAction(() => {\n this.appliedFilter = newFilter;\n this.currentFilter = null;\n });\n }\n\n private async updateFilterIntoRepository(filter: FilterDTO) {\n await this.repository.updateFilter(filter);\n\n runInAction(() => {\n this.appliedFilter = filter;\n this.currentFilter = null;\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["makeAutoObservable","runInAction","Feedback","Filter","FilterMapper","AdvancedSearchPresenter","showBuilder","showManager","showSaver","currentFilter","appliedFilter","constructor","repository","feedback","load","listFilters","managerVm","vm","isOpen","view","isLoading","getLoading","loadingLabel","filters","getFilters","map","filter","id","name","description","createdOn","length","feedbackVm","Boolean","message","builderVm","saverVm","openManager","closeManager","openBuilder","closeBuilder","openSaver","closeSaver","showFeedback","applyFilter","filterDto","result","getFilterById","unsetFilter","editAppliedFilter","renameFilter","filterId","createFilter","toDTO","createEmpty","cloneFilter","create","editFilter","deleteFilter","saveFilter","persistFilter","updateFilterIntoRepository","createFilterIntoRepository","newFilter","updateFilter"],"sources":["AdvancedSearchPresenter.ts"],"sourcesContent":["import { makeAutoObservable, runInAction } from \"mobx\";\nimport type { FilterDTO, FilterRepository } from \"~/components/AdvancedSearch/domain/index.js\";\nimport { Feedback, Filter, FilterMapper } from \"~/components/AdvancedSearch/domain/index.js\";\n\nexport interface AdvancedSearchPresenterInterface {\n load(): Promise<void>;\n openManager(): void;\n closeManager(): void;\n openBuilder(): void;\n closeBuilder(): void;\n openSaver(): void;\n closeSaver(): void;\n showFeedback(message: string): void;\n applyFilter(filter: string | FilterDTO): Promise<void>;\n unsetFilter(): void;\n editAppliedFilter(): void;\n createFilter(): void;\n editFilter(filterId: string): Promise<void>;\n deleteFilter(id: string): Promise<void>;\n saveFilter(filter: FilterDTO): void;\n renameFilter(filterId: string): Promise<void>;\n cloneFilter(filterId: string): Promise<void>;\n persistFilter(filter: FilterDTO): Promise<void>;\n get vm(): {\n currentFilter: FilterDTO | null;\n appliedFilter: FilterDTO | null;\n feedbackVm: {\n isOpen: boolean;\n message: string;\n };\n managerVm: {\n isOpen: boolean;\n view: string;\n isLoading: boolean;\n loadingLabel: string;\n filters: Array<{\n id: string;\n name: string;\n description: string;\n createdOn: string;\n }>;\n };\n builderVm: {\n isOpen: boolean;\n };\n saverVm: {\n isOpen: boolean;\n isLoading: boolean;\n loadingLabel: string;\n };\n };\n}\n\nexport class AdvancedSearchPresenter implements AdvancedSearchPresenterInterface {\n private repository: FilterRepository;\n private readonly feedback: Feedback;\n private showBuilder = false;\n private showManager = false;\n private showSaver = false;\n private currentFilter: FilterDTO | null = null;\n private appliedFilter: FilterDTO | null = null;\n\n constructor(repository: FilterRepository) {\n this.repository = repository;\n this.feedback = new Feedback();\n makeAutoObservable(this);\n }\n\n async load() {\n await this.repository.listFilters();\n }\n\n private get managerVm() {\n const vm = {\n isOpen: this.showManager,\n view: \"EMPTY\",\n isLoading: this.repository.getLoading().isLoading,\n loadingLabel: this.repository.getLoading().loadingLabel,\n filters: this.repository.getFilters().map(filter => ({\n id: filter.id,\n name: filter.name,\n description: filter.description || \"\",\n createdOn: filter.createdOn || \"\"\n }))\n };\n\n if (this.repository.getFilters().length !== 0) {\n vm.view = \"LIST\";\n }\n\n return vm;\n }\n\n private get feedbackVm() {\n return {\n isOpen: Boolean(this.feedback.message || this.repository.getLoading().message),\n message: this.feedback.message || this.repository.getLoading().message\n };\n }\n\n private get builderVm() {\n return {\n isOpen: this.showBuilder\n };\n }\n\n private get saverVm() {\n return {\n isOpen: this.showSaver,\n isLoading: this.repository.getLoading().isLoading,\n loadingLabel: this.repository.getLoading().loadingLabel\n };\n }\n\n get vm() {\n return {\n appliedFilter: this.appliedFilter,\n currentFilter: this.currentFilter,\n feedbackVm: this.feedbackVm,\n managerVm: this.managerVm,\n builderVm: this.builderVm,\n saverVm: this.saverVm\n };\n }\n\n openManager() {\n this.showManager = true;\n }\n\n closeManager() {\n this.showManager = false;\n }\n\n openBuilder() {\n this.showBuilder = true;\n }\n\n closeBuilder() {\n this.showBuilder = false;\n }\n\n openSaver() {\n this.showSaver = true;\n }\n\n closeSaver() {\n this.showSaver = false;\n }\n\n showFeedback(message: string) {\n this.feedback.message = message;\n }\n\n async applyFilter(filter: string | FilterDTO): Promise<void> {\n let filterDto: FilterDTO;\n\n if (typeof filter === \"string\") {\n const result = await this.repository.getFilterById(filter);\n\n if (!result) {\n return;\n }\n\n filterDto = result;\n } else {\n filterDto = filter;\n }\n\n runInAction(() => {\n this.appliedFilter = filterDto;\n this.currentFilter = null;\n this.closeManager();\n this.closeBuilder();\n this.closeSaver();\n });\n }\n\n unsetFilter() {\n this.appliedFilter = null;\n this.currentFilter = null;\n }\n\n editAppliedFilter() {\n this.currentFilter = this.appliedFilter;\n this.openBuilder();\n }\n\n async renameFilter(filterId: string) {\n const filter = await this.repository.getFilterById(filterId);\n\n if (!filter) {\n return;\n }\n\n runInAction(() => {\n this.currentFilter = filter;\n this.closeManager();\n this.closeBuilder();\n this.openSaver();\n });\n }\n\n createFilter() {\n this.currentFilter = FilterMapper.toDTO(Filter.createEmpty());\n this.closeManager();\n this.openBuilder();\n this.closeSaver();\n }\n\n async cloneFilter(filterId: string) {\n const filter = await this.repository.getFilterById(filterId);\n\n if (!filter) {\n return;\n }\n\n runInAction(() => {\n this.currentFilter = FilterMapper.toDTO(\n Filter.create({ ...filter, id: \"\", name: `Clone of ${filter.name}` })\n );\n this.closeManager();\n this.openBuilder();\n this.closeSaver();\n });\n }\n\n async editFilter(filterId: string) {\n const filter = await this.repository.getFilterById(filterId);\n\n if (!filter) {\n return;\n }\n\n runInAction(() => {\n this.currentFilter = filter;\n this.closeManager();\n this.openBuilder();\n this.closeSaver();\n });\n }\n\n async deleteFilter(filterId: string) {\n await this.repository.deleteFilter(filterId);\n\n runInAction(() => {\n this.currentFilter = null;\n });\n }\n\n saveFilter(filter: FilterDTO) {\n this.currentFilter = filter;\n this.closeManager();\n this.openBuilder();\n this.openSaver();\n }\n\n async persistFilter(filter: FilterDTO) {\n if (filter.id) {\n await this.updateFilterIntoRepository(filter);\n } else {\n await this.createFilterIntoRepository(filter);\n }\n\n runInAction(() => {\n this.closeManager();\n this.closeBuilder();\n this.closeSaver();\n });\n }\n\n private async createFilterIntoRepository(filterDto: FilterDTO) {\n const newFilter = await this.repository.createFilter(filterDto);\n\n if (!newFilter) {\n return;\n }\n\n /**\n * repository.createFilter returns generates the filter id.\n * We need to set it back as appliedFilter, otherwise further actions on the filter would fail (update/delete).\n */\n runInAction(() => {\n this.appliedFilter = newFilter;\n this.currentFilter = null;\n });\n }\n\n private async updateFilterIntoRepository(filter: FilterDTO) {\n await this.repository.updateFilter(filter);\n\n runInAction(() => {\n this.appliedFilter = filter;\n this.currentFilter = null;\n });\n }\n}\n"],"mappings":"AAAA,SAASA,kBAAkB,EAAEC,WAAW,QAAQ,MAAM;AAEtD,SAASC,QAAQ,EAAEC,MAAM,EAAEC,YAAY;AAmDvC,OAAO,MAAMC,uBAAuB,CAA6C;EAGrEC,WAAW,GAAG,KAAK;EACnBC,WAAW,GAAG,KAAK;EACnBC,SAAS,GAAG,KAAK;EACjBC,aAAa,GAAqB,IAAI;EACtCC,aAAa,GAAqB,IAAI;EAE9CC,WAAWA,CAACC,UAA4B,EAAE;IACtC,IAAI,CAACA,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACC,QAAQ,GAAG,IAAIX,QAAQ,CAAC,CAAC;IAC9BF,kBAAkB,CAAC,IAAI,CAAC;EAC5B;EAEA,MAAMc,IAAIA,CAAA,EAAG;IACT,MAAM,IAAI,CAACF,UAAU,CAACG,WAAW,CAAC,CAAC;EACvC;EAEA,IAAYC,SAASA,CAAA,EAAG;IACpB,MAAMC,EAAE,GAAG;MACPC,MAAM,EAAE,IAAI,CAACX,WAAW;MACxBY,IAAI,EAAE,OAAO;MACbC,SAAS,EAAE,IAAI,CAACR,UAAU,CAACS,UAAU,CAAC,CAAC,CAACD,SAAS;MACjDE,YAAY,EAAE,IAAI,CAACV,UAAU,CAACS,UAAU,CAAC,CAAC,CAACC,YAAY;MACvDC,OAAO,EAAE,IAAI,CAACX,UAAU,CAACY,UAAU,CAAC,CAAC,CAACC,GAAG,CAACC,MAAM,KAAK;QACjDC,EAAE,EAAED,MAAM,CAACC,EAAE;QACbC,IAAI,EAAEF,MAAM,CAACE,IAAI;QACjBC,WAAW,EAAEH,MAAM,CAACG,WAAW,IAAI,EAAE;QACrCC,SAAS,EAAEJ,MAAM,CAACI,SAAS,IAAI;MACnC,CAAC,CAAC;IACN,CAAC;IAED,IAAI,IAAI,CAAClB,UAAU,CAACY,UAAU,CAAC,CAAC,CAACO,MAAM,KAAK,CAAC,EAAE;MAC3Cd,EAAE,CAACE,IAAI,GAAG,MAAM;IACpB;IAEA,OAAOF,EAAE;EACb;EAEA,IAAYe,UAAUA,CAAA,EAAG;IACrB,OAAO;MACHd,MAAM,EAAEe,OAAO,CAAC,IAAI,CAACpB,QAAQ,CAACqB,OAAO,IAAI,IAAI,CAACtB,UAAU,CAACS,UAAU,CAAC,CAAC,CAACa,OAAO,CAAC;MAC9EA,OAAO,EAAE,IAAI,CAACrB,QAAQ,CAACqB,OAAO,IAAI,IAAI,CAACtB,UAAU,CAACS,UAAU,CAAC,CAAC,CAACa;IACnE,CAAC;EACL;EAEA,IAAYC,SAASA,CAAA,EAAG;IACpB,OAAO;MACHjB,MAAM,EAAE,IAAI,CAACZ;IACjB,CAAC;EACL;EAEA,IAAY8B,OAAOA,CAAA,EAAG;IAClB,OAAO;MACHlB,MAAM,EAAE,IAAI,CAACV,SAAS;MACtBY,SAAS,EAAE,IAAI,CAACR,UAAU,CAACS,UAAU,CAAC,CAAC,CAACD,SAAS;MACjDE,YAAY,EAAE,IAAI,CAACV,UAAU,CAACS,UAAU,CAAC,CAAC,CAACC;IAC/C,CAAC;EACL;EAEA,IAAIL,EAAEA,CAAA,EAAG;IACL,OAAO;MACHP,aAAa,EAAE,IAAI,CAACA,aAAa;MACjCD,aAAa,EAAE,IAAI,CAACA,aAAa;MACjCuB,UAAU,EAAE,IAAI,CAACA,UAAU;MAC3BhB,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBmB,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBC,OAAO,EAAE,IAAI,CAACA;IAClB,CAAC;EACL;EAEAC,WAAWA,CAAA,EAAG;IACV,IAAI,CAAC9B,WAAW,GAAG,IAAI;EAC3B;EAEA+B,YAAYA,CAAA,EAAG;IACX,IAAI,CAAC/B,WAAW,GAAG,KAAK;EAC5B;EAEAgC,WAAWA,CAAA,EAAG;IACV,IAAI,CAACjC,WAAW,GAAG,IAAI;EAC3B;EAEAkC,YAAYA,CAAA,EAAG;IACX,IAAI,CAAClC,WAAW,GAAG,KAAK;EAC5B;EAEAmC,SAASA,CAAA,EAAG;IACR,IAAI,CAACjC,SAAS,GAAG,IAAI;EACzB;EAEAkC,UAAUA,CAAA,EAAG;IACT,IAAI,CAAClC,SAAS,GAAG,KAAK;EAC1B;EAEAmC,YAAYA,CAACT,OAAe,EAAE;IAC1B,IAAI,CAACrB,QAAQ,CAACqB,OAAO,GAAGA,OAAO;EACnC;EAEA,MAAMU,WAAWA,CAAClB,MAA0B,EAAiB;IACzD,IAAImB,SAAoB;IAExB,IAAI,OAAOnB,MAAM,KAAK,QAAQ,EAAE;MAC5B,MAAMoB,MAAM,GAAG,MAAM,IAAI,CAAClC,UAAU,CAACmC,aAAa,CAACrB,MAAM,CAAC;MAE1D,IAAI,CAACoB,MAAM,EAAE;QACT;MACJ;MAEAD,SAAS,GAAGC,MAAM;IACtB,CAAC,MAAM;MACHD,SAAS,GAAGnB,MAAM;IACtB;IAEAzB,WAAW,CAAC,MAAM;MACd,IAAI,CAACS,aAAa,GAAGmC,SAAS;MAC9B,IAAI,CAACpC,aAAa,GAAG,IAAI;MACzB,IAAI,CAAC6B,YAAY,CAAC,CAAC;MACnB,IAAI,CAACE,YAAY,CAAC,CAAC;MACnB,IAAI,CAACE,UAAU,CAAC,CAAC;IACrB,CAAC,CAAC;EACN;EAEAM,WAAWA,CAAA,EAAG;IACV,IAAI,CAACtC,aAAa,GAAG,IAAI;IACzB,IAAI,CAACD,aAAa,GAAG,IAAI;EAC7B;EAEAwC,iBAAiBA,CAAA,EAAG;IAChB,IAAI,CAACxC,aAAa,GAAG,IAAI,CAACC,aAAa;IACvC,IAAI,CAAC6B,WAAW,CAAC,CAAC;EACtB;EAEA,MAAMW,YAAYA,CAACC,QAAgB,EAAE;IACjC,MAAMzB,MAAM,GAAG,MAAM,IAAI,CAACd,UAAU,CAACmC,aAAa,CAACI,QAAQ,CAAC;IAE5D,IAAI,CAACzB,MAAM,EAAE;MACT;IACJ;IAEAzB,WAAW,CAAC,MAAM;MACd,IAAI,CAACQ,aAAa,GAAGiB,MAAM;MAC3B,IAAI,CAACY,YAAY,CAAC,CAAC;MACnB,IAAI,CAACE,YAAY,CAAC,CAAC;MACnB,IAAI,CAACC,SAAS,CAAC,CAAC;IACpB,CAAC,CAAC;EACN;EAEAW,YAAYA,CAAA,EAAG;IACX,IAAI,CAAC3C,aAAa,GAAGL,YAAY,CAACiD,KAAK,CAAClD,MAAM,CAACmD,WAAW,CAAC,CAAC,CAAC;IAC7D,IAAI,CAAChB,YAAY,CAAC,CAAC;IACnB,IAAI,CAACC,WAAW,CAAC,CAAC;IAClB,IAAI,CAACG,UAAU,CAAC,CAAC;EACrB;EAEA,MAAMa,WAAWA,CAACJ,QAAgB,EAAE;IAChC,MAAMzB,MAAM,GAAG,MAAM,IAAI,CAACd,UAAU,CAACmC,aAAa,CAACI,QAAQ,CAAC;IAE5D,IAAI,CAACzB,MAAM,EAAE;MACT;IACJ;IAEAzB,WAAW,CAAC,MAAM;MACd,IAAI,CAACQ,aAAa,GAAGL,YAAY,CAACiD,KAAK,CACnClD,MAAM,CAACqD,MAAM,CAAC;QAAE,GAAG9B,MAAM;QAAEC,EAAE,EAAE,EAAE;QAAEC,IAAI,EAAE,YAAYF,MAAM,CAACE,IAAI;MAAG,CAAC,CACxE,CAAC;MACD,IAAI,CAACU,YAAY,CAAC,CAAC;MACnB,IAAI,CAACC,WAAW,CAAC,CAAC;MAClB,IAAI,CAACG,UAAU,CAAC,CAAC;IACrB,CAAC,CAAC;EACN;EAEA,MAAMe,UAAUA,CAACN,QAAgB,EAAE;IAC/B,MAAMzB,MAAM,GAAG,MAAM,IAAI,CAACd,UAAU,CAACmC,aAAa,CAACI,QAAQ,CAAC;IAE5D,IAAI,CAACzB,MAAM,EAAE;MACT;IACJ;IAEAzB,WAAW,CAAC,MAAM;MACd,IAAI,CAACQ,aAAa,GAAGiB,MAAM;MAC3B,IAAI,CAACY,YAAY,CAAC,CAAC;MACnB,IAAI,CAACC,WAAW,CAAC,CAAC;MAClB,IAAI,CAACG,UAAU,CAAC,CAAC;IACrB,CAAC,CAAC;EACN;EAEA,MAAMgB,YAAYA,CAACP,QAAgB,EAAE;IACjC,MAAM,IAAI,CAACvC,UAAU,CAAC8C,YAAY,CAACP,QAAQ,CAAC;IAE5ClD,WAAW,CAAC,MAAM;MACd,IAAI,CAACQ,aAAa,GAAG,IAAI;IAC7B,CAAC,CAAC;EACN;EAEAkD,UAAUA,CAACjC,MAAiB,EAAE;IAC1B,IAAI,CAACjB,aAAa,GAAGiB,MAAM;IAC3B,IAAI,CAACY,YAAY,CAAC,CAAC;IACnB,IAAI,CAACC,WAAW,CAAC,CAAC;IAClB,IAAI,CAACE,SAAS,CAAC,CAAC;EACpB;EAEA,MAAMmB,aAAaA,CAAClC,MAAiB,EAAE;IACnC,IAAIA,MAAM,CAACC,EAAE,EAAE;MACX,MAAM,IAAI,CAACkC,0BAA0B,CAACnC,MAAM,CAAC;IACjD,CAAC,MAAM;MACH,MAAM,IAAI,CAACoC,0BAA0B,CAACpC,MAAM,CAAC;IACjD;IAEAzB,WAAW,CAAC,MAAM;MACd,IAAI,CAACqC,YAAY,CAAC,CAAC;MACnB,IAAI,CAACE,YAAY,CAAC,CAAC;MACnB,IAAI,CAACE,UAAU,CAAC,CAAC;IACrB,CAAC,CAAC;EACN;EAEA,MAAcoB,0BAA0BA,CAACjB,SAAoB,EAAE;IAC3D,MAAMkB,SAAS,GAAG,MAAM,IAAI,CAACnD,UAAU,CAACwC,YAAY,CAACP,SAAS,CAAC;IAE/D,IAAI,CAACkB,SAAS,EAAE;MACZ;IACJ;;IAEA;AACR;AACA;AACA;IACQ9D,WAAW,CAAC,MAAM;MACd,IAAI,CAACS,aAAa,GAAGqD,SAAS;MAC9B,IAAI,CAACtD,aAAa,GAAG,IAAI;IAC7B,CAAC,CAAC;EACN;EAEA,MAAcoD,0BAA0BA,CAACnC,MAAiB,EAAE;IACxD,MAAM,IAAI,CAACd,UAAU,CAACoD,YAAY,CAACtC,MAAM,CAAC;IAE1CzB,WAAW,CAAC,MAAM;MACd,IAAI,CAACS,aAAa,GAAGgB,MAAM;MAC3B,IAAI,CAACjB,aAAa,GAAG,IAAI;IAC7B,CAAC,CAAC;EACN;AACJ","ignoreList":[]}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { describe, it, vi, expect, beforeEach } from "vitest";
|
|
2
|
+
import { AdvancedSearchPresenter } from "./AdvancedSearchPresenter.js";
|
|
3
|
+
import { FilterRepository, Operation } from "./domain/index.js";
|
|
3
4
|
const mockGateway = {
|
|
4
|
-
list:
|
|
5
|
-
get:
|
|
6
|
-
create:
|
|
7
|
-
update:
|
|
8
|
-
delete:
|
|
5
|
+
list: vi.fn(),
|
|
6
|
+
get: vi.fn(),
|
|
7
|
+
create: vi.fn(),
|
|
8
|
+
update: vi.fn(),
|
|
9
|
+
delete: vi.fn()
|
|
9
10
|
};
|
|
10
11
|
const createMockGateway = ({
|
|
11
12
|
list,
|
|
@@ -58,28 +59,28 @@ describe("AdvancedSearchPresenter", () => {
|
|
|
58
59
|
createdOn: new Date().toString()
|
|
59
60
|
};
|
|
60
61
|
const gateway = createMockGateway({
|
|
61
|
-
list:
|
|
62
|
+
list: vi.fn().mockImplementation(() => {
|
|
62
63
|
return Promise.resolve([filter1, filter2]);
|
|
63
64
|
}),
|
|
64
|
-
get:
|
|
65
|
+
get: vi.fn().mockImplementation(() => {
|
|
65
66
|
return Promise.resolve(filter1);
|
|
66
67
|
}),
|
|
67
|
-
create:
|
|
68
|
+
create: vi.fn().mockImplementation(() => {
|
|
68
69
|
return Promise.resolve(filter1);
|
|
69
70
|
}),
|
|
70
|
-
update:
|
|
71
|
+
update: vi.fn().mockImplementation(() => {
|
|
71
72
|
return Promise.resolve({
|
|
72
73
|
...filter1,
|
|
73
74
|
name: "Filter 1 - Edit"
|
|
74
75
|
});
|
|
75
76
|
}),
|
|
76
|
-
delete:
|
|
77
|
+
delete: vi.fn().mockImplementation(() => {
|
|
77
78
|
return Promise.resolve(true);
|
|
78
79
|
})
|
|
79
80
|
});
|
|
80
81
|
let presenter;
|
|
81
82
|
beforeEach(() => {
|
|
82
|
-
|
|
83
|
+
vi.clearAllMocks();
|
|
83
84
|
const repository = new FilterRepository(gateway, namespace);
|
|
84
85
|
presenter = new AdvancedSearchPresenter(repository);
|
|
85
86
|
});
|
|
@@ -614,7 +615,7 @@ describe("AdvancedSearchPresenter", () => {
|
|
|
614
615
|
it("should be able to handle an empty list - error from the gateway", async () => {
|
|
615
616
|
const message = "Gateway error while listing filters";
|
|
616
617
|
const gateway = createMockGateway({
|
|
617
|
-
list:
|
|
618
|
+
list: vi.fn().mockRejectedValue(new Error(message))
|
|
618
619
|
});
|
|
619
620
|
const repository = new FilterRepository(gateway, namespace);
|
|
620
621
|
const presenter = new AdvancedSearchPresenter(repository);
|
|
@@ -638,7 +639,7 @@ describe("AdvancedSearchPresenter", () => {
|
|
|
638
639
|
const message = "Gateway error while creating filter";
|
|
639
640
|
const createGateway = createMockGateway({
|
|
640
641
|
...gateway,
|
|
641
|
-
create:
|
|
642
|
+
create: vi.fn().mockRejectedValue(new Error(message))
|
|
642
643
|
});
|
|
643
644
|
const repository = new FilterRepository(createGateway, namespace);
|
|
644
645
|
const presenter = new AdvancedSearchPresenter(repository);
|
|
@@ -673,7 +674,7 @@ describe("AdvancedSearchPresenter", () => {
|
|
|
673
674
|
const message = "Gateway error while updating filter";
|
|
674
675
|
const updateGateway = createMockGateway({
|
|
675
676
|
...gateway,
|
|
676
|
-
update:
|
|
677
|
+
update: vi.fn().mockRejectedValue(new Error(message))
|
|
677
678
|
});
|
|
678
679
|
const repository = new FilterRepository(updateGateway, namespace);
|
|
679
680
|
const presenter = new AdvancedSearchPresenter(repository);
|
|
@@ -698,7 +699,7 @@ describe("AdvancedSearchPresenter", () => {
|
|
|
698
699
|
const message = "Gateway error while deleting filter";
|
|
699
700
|
const updateGateway = createMockGateway({
|
|
700
701
|
...gateway,
|
|
701
|
-
delete:
|
|
702
|
+
delete: vi.fn().mockRejectedValue(new Error(message))
|
|
702
703
|
});
|
|
703
704
|
const repository = new FilterRepository(updateGateway, namespace);
|
|
704
705
|
const presenter = new AdvancedSearchPresenter(repository);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AdvancedSearchPresenter","FilterRepository","Operation","mockGateway","list","jest","fn","get","create","update","delete","createMockGateway","deleteFn","describe","namespace","demoFilter","field","value","condition","demoGroup","operation","AND","filters","filter1","id","name","description","groups","createdOn","Date","toString","filter2","gateway","mockImplementation","Promise","resolve","presenter","beforeEach","clearAllMocks","repository","it","load","expect","toBeCalledTimes","vm","toEqual","appliedFilter","currentFilter","feedbackVm","isOpen","message","managerVm","view","isLoading","loadingLabel","builderVm","saverVm","loadPromise","toMatchObject","applyFilter","unsetFilter","editAppliedFilter","openManager","createFilter","filter","OR","saveFilter","persistPromise","persistFilter","toHaveBeenCalledWith","any","String","length","toBe","editFilter","renameFilter","cloneFilter","clonedFilter","deleteFilter","mockRejectedValue","Error","createGateway","updateGateway","showFeedback"],"sources":["AdvancedSearchPresenter.test.ts"],"sourcesContent":["import { AdvancedSearchPresenter } from \"./AdvancedSearchPresenter\";\nimport type { FilterDTO, FilterGroupDTO, FilterGroupFilterDTO } from \"./domain\";\nimport { FilterRepository, Operation } from \"./domain\";\nimport type { FiltersGatewayInterface } from \"./gateways\";\n\nconst mockGateway: FiltersGatewayInterface = {\n list: jest.fn(),\n get: jest.fn(),\n create: jest.fn(),\n update: jest.fn(),\n delete: jest.fn()\n};\n\nconst createMockGateway = ({\n list,\n get,\n create,\n update,\n delete: deleteFn\n}: Partial<FiltersGatewayInterface>): FiltersGatewayInterface => ({\n ...mockGateway,\n ...(list && { list }),\n ...(get && { get }),\n ...(create && { create }),\n ...(update && { update }),\n ...(deleteFn && { delete: deleteFn })\n});\n\ndescribe(\"AdvancedSearchPresenter\", () => {\n const namespace = \"namespace\";\n\n const demoFilter: FilterGroupFilterDTO = {\n field: \"any-field\",\n value: \"any-value\",\n condition: \"any-condition\"\n };\n\n const demoGroup: FilterGroupDTO = {\n operation: Operation.AND,\n filters: [demoFilter]\n };\n\n const filter1: FilterDTO = {\n id: \"filter-1\",\n name: \"Filter 1\",\n description: \"Filter description\",\n operation: Operation.AND,\n groups: [demoGroup],\n createdOn: new Date().toString()\n };\n\n const filter2: FilterDTO = {\n id: \"filter-2\",\n name: \"Filter 2\",\n operation: Operation.AND,\n groups: [demoGroup],\n createdOn: new Date().toString()\n };\n\n const gateway = createMockGateway({\n list: jest.fn().mockImplementation(() => {\n return Promise.resolve([filter1, filter2]);\n }),\n get: jest.fn().mockImplementation(() => {\n return Promise.resolve(filter1);\n }),\n create: jest.fn().mockImplementation(() => {\n return Promise.resolve(filter1);\n }),\n update: jest.fn().mockImplementation(() => {\n return Promise.resolve({ ...filter1, name: \"Filter 1 - Edit\" });\n }),\n delete: jest.fn().mockImplementation(() => {\n return Promise.resolve(true);\n })\n });\n\n let presenter: AdvancedSearchPresenter;\n\n beforeEach(() => {\n jest.clearAllMocks();\n\n const repository = new FilterRepository(gateway, namespace);\n presenter = new AdvancedSearchPresenter(repository);\n });\n\n it(\"should create a presenter and list filters from the gateway\", async () => {\n // let's load some filters\n await presenter.load();\n\n expect(gateway.list).toBeCalledTimes(1);\n\n expect(presenter.vm).toEqual({\n appliedFilter: null,\n currentFilter: null,\n feedbackVm: {\n isOpen: false,\n message: \"\"\n },\n managerVm: {\n isOpen: false,\n view: \"LIST\",\n isLoading: false,\n loadingLabel: \"\",\n filters: [\n {\n id: filter1.id,\n name: filter1.name,\n description: filter1.description,\n createdOn: filter1.createdOn\n },\n {\n id: filter2.id,\n name: filter2.name,\n description: \"\",\n createdOn: filter2.createdOn\n }\n ]\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: false,\n isLoading: false,\n loadingLabel: \"\"\n }\n });\n });\n\n it(\"should transition to loading state and then to list state\", async () => {\n const loadPromise = presenter.load();\n\n expect(presenter.vm.managerVm).toMatchObject({\n isOpen: false,\n isLoading: true,\n loadingLabel: \"Listing filters\",\n view: \"EMPTY\",\n filters: []\n });\n\n await loadPromise;\n\n expect(presenter.vm.managerVm).toMatchObject({\n isOpen: false,\n isLoading: false,\n loadingLabel: \"\",\n view: \"LIST\"\n });\n });\n\n it(\"should be able to apply a filter via filterId\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's apply a filter\n await presenter.applyFilter(\"filter-1\");\n\n expect(presenter.vm).toMatchObject({\n appliedFilter: filter1,\n currentFilter: null,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: false\n }\n });\n });\n\n it(\"should be able to apply directly a filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's apply a filter\n presenter.applyFilter(filter2);\n\n expect(presenter.vm).toMatchObject({\n appliedFilter: filter2,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: false\n }\n });\n });\n\n it(\"should be able to unset a filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's apply and unset the filter\n await presenter.applyFilter(\"filter-1\");\n presenter.unsetFilter();\n\n expect(presenter.vm).toMatchObject({\n appliedFilter: null,\n currentFilter: null\n });\n });\n\n it(\"should be able to edit an already applied filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's apply and unset the filter\n await presenter.applyFilter(\"filter-1\");\n presenter.editAppliedFilter();\n\n expect(presenter.vm).toMatchObject({\n appliedFilter: filter1,\n currentFilter: filter1,\n builderVm: {\n isOpen: true\n }\n });\n });\n\n it(\"should be create a new filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's open the filter manager\n presenter.openManager();\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: true\n }\n });\n\n // Let's create a new filter via builder\n presenter.createFilter();\n expect(presenter.vm).toMatchObject({\n currentFilter: {\n id: \"\",\n name: \"Draft filter\",\n description: \"\",\n operation: Operation.AND,\n groups: [\n {\n operation: Operation.AND,\n filters: [\n {\n field: \"\",\n condition: \"\",\n value: \"\"\n }\n ]\n }\n ]\n },\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: true\n },\n saverVm: {\n isOpen: false\n }\n });\n\n // Let's change the Filter and open the saver\n const filter = {\n id: \"\",\n name: \"Draft filter\",\n description: \"\",\n operation: Operation.AND,\n groups: [\n {\n operation: Operation.OR,\n filters: [\n {\n field: \"Field value\",\n condition: \"field_condition\",\n value: \"Any value\"\n }\n ]\n }\n ]\n };\n presenter.saveFilter(filter);\n expect(presenter.vm).toMatchObject({\n currentFilter: filter,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: true\n },\n saverVm: {\n isOpen: true\n }\n });\n\n // Let's save it via the gateway\n const persistPromise = presenter.persistFilter(filter);\n\n // Let's check the transition to loading state\n expect(presenter.vm.saverVm).toMatchObject({\n isOpen: true,\n isLoading: true,\n loadingLabel: \"Creating filter...\"\n });\n\n await persistPromise;\n\n expect(gateway.create).toBeCalledTimes(1);\n expect(gateway.create).toHaveBeenCalledWith({\n id: expect.any(String),\n name: \"Draft filter\",\n description: \"\",\n namespace,\n operation: Operation.AND,\n groups: [filter.groups[0]]\n });\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: false\n },\n feedbackVm: {\n isOpen: true,\n message: 'Filter \"Draft filter\" was successfully created.'\n }\n });\n\n // Let's open the manager again and check if the new filter is there.\n // Be aware: data comes from the mocked gateway\n presenter.openManager();\n expect(presenter.vm.managerVm.filters.length).toBe(3);\n expect(presenter.vm.managerVm.filters[0]).toEqual({\n id: filter1.id,\n name: filter1.name,\n description: filter1.description,\n createdOn: filter1.createdOn\n });\n });\n\n it(\"should be able to update an existing filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's open the filter manager\n presenter.openManager();\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: true\n }\n });\n\n // Let's select a filter to edit in the builder\n await presenter.editFilter(\"filter-1\");\n expect(presenter.vm).toMatchObject({\n currentFilter: filter1,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: true\n },\n saverVm: {\n isOpen: false\n }\n });\n\n // Let's change the Filter and open the saver\n const filter = {\n ...filter1,\n groups: [\n {\n operation: Operation.OR,\n filters: [\n {\n field: \"Field value\",\n condition: \"field_condition\",\n value: \"Any value\"\n }\n ]\n }\n ]\n };\n presenter.saveFilter(filter);\n expect(presenter.vm).toMatchObject({\n currentFilter: filter,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: true\n },\n saverVm: {\n isOpen: true\n }\n });\n\n // Let's save it via the gateway\n const persistPromise = presenter.persistFilter(filter);\n\n // Let's check the transition to loading state\n expect(presenter.vm.saverVm).toMatchObject({\n isOpen: true,\n isLoading: true,\n loadingLabel: \"Updating filter...\"\n });\n\n await persistPromise;\n\n expect(gateway.update).toBeCalledTimes(1);\n expect(gateway.update).toHaveBeenCalledWith({\n id: \"filter-1\",\n name: \"Filter 1\",\n description: \"Filter description\",\n operation: Operation.AND,\n groups: [filter.groups[0]]\n });\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: false\n },\n feedbackVm: {\n isOpen: true,\n message: 'Filter \"Filter 1\" was successfully updated.'\n }\n });\n\n // Let's open the manager again and check if the new data is there.\n // Be aware: data comes from the mocked gateway\n presenter.openManager();\n expect(presenter.vm.managerVm.filters.length).toBe(2);\n expect(presenter.vm.managerVm.filters[0]).toEqual({\n id: filter1.id,\n name: \"Filter 1 - Edit\",\n description: filter1.description,\n createdOn: filter1.createdOn\n });\n });\n\n it(\"should be able to rename a filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's open the filter manager\n presenter.openManager();\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: true\n }\n });\n\n // Let's rename a filter\n await presenter.renameFilter(\"filter-1\");\n\n expect(presenter.vm).toMatchObject({\n currentFilter: filter1,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: true\n }\n });\n\n // Let's save it via the gateway\n const persistPromise = presenter.persistFilter({\n ...filter1,\n name: `${filter1.name} - Edit`\n });\n\n // Let's check the transition to loading state\n expect(presenter.vm.saverVm).toMatchObject({\n isOpen: true,\n isLoading: true,\n loadingLabel: \"Updating filter...\"\n });\n\n await persistPromise;\n\n expect(gateway.update).toBeCalledTimes(1);\n expect(gateway.update).toHaveBeenCalledWith({\n id: \"filter-1\",\n name: `${filter1.name} - Edit`,\n description: \"Filter description\",\n operation: Operation.AND,\n groups: [filter1.groups[0]]\n });\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: false\n },\n feedbackVm: {\n isOpen: true,\n message: `Filter \"${filter1.name} - Edit\" was successfully updated.`\n }\n });\n\n // Let's open the manager again and check if the new data is there.\n // Be aware: data comes from the mocked gateway\n presenter.openManager();\n expect(presenter.vm.managerVm.filters.length).toBe(2);\n expect(presenter.vm.managerVm.filters[0]).toEqual({\n id: filter1.id,\n name: `${filter1.name} - Edit`,\n description: filter1.description,\n createdOn: filter1.createdOn\n });\n });\n\n it(\"should be able to clone a filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's open the filter manager\n presenter.openManager();\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: true\n }\n });\n\n // Let's clone a filter\n await presenter.cloneFilter(\"filter-1\");\n\n const clonedFilter = {\n ...filter1,\n id: \"\",\n name: `Clone of ${filter1.name}`\n };\n\n expect(presenter.vm).toMatchObject({\n currentFilter: clonedFilter,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: true\n },\n saverVm: {\n isOpen: false\n }\n });\n\n presenter.saveFilter(clonedFilter);\n expect(presenter.vm).toMatchObject({\n currentFilter: clonedFilter,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: true\n },\n saverVm: {\n isOpen: true\n }\n });\n\n // Let's save it via the gateway\n const persistPromise = presenter.persistFilter(clonedFilter);\n\n // Let's check the transition to loading state\n expect(presenter.vm.saverVm).toMatchObject({\n isOpen: true,\n isLoading: true,\n loadingLabel: \"Creating filter...\"\n });\n\n await persistPromise;\n\n expect(gateway.create).toBeCalledTimes(1);\n expect(gateway.create).toHaveBeenCalledWith({\n id: expect.any(String),\n name: `Clone of ${filter1.name}`,\n description: \"Filter description\",\n namespace,\n operation: Operation.AND,\n groups: [filter1.groups[0]]\n });\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: false\n },\n feedbackVm: {\n isOpen: true,\n message: `Filter \"Clone of ${filter1.name}\" was successfully created.`\n }\n });\n\n // Let's open the manager again and check if the new data is there\n presenter.openManager();\n expect(presenter.vm.managerVm.filters.length).toBe(3);\n });\n\n it(\"should be able to delete a filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's open the filter manager\n presenter.openManager();\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: true\n }\n });\n\n // Let's delete a filter\n await presenter.deleteFilter(\"filter-1\");\n expect(gateway.delete).toBeCalledTimes(1);\n expect(gateway.delete).toHaveBeenCalledWith(\"filter-1\");\n expect(presenter.vm).toMatchObject({\n currentFilter: null,\n feedbackVm: {\n isOpen: true,\n message: 'Filter \"Filter 1\" was successfully deleted.'\n }\n });\n\n // Let's check if the filter has been deleted and is not in the manager.\n // Be aware: data comes from the mocked gateway\n presenter.openManager();\n expect(presenter.vm.managerVm.filters.length).toBe(1);\n expect(presenter.vm.managerVm.filters[0]).toEqual({\n id: filter2.id,\n name: filter2.name,\n description: \"\",\n createdOn: filter2.createdOn\n });\n });\n\n it(\"should be able to handle an empty list - error from the gateway\", async () => {\n const message = \"Gateway error while listing filters\";\n const gateway = createMockGateway({\n list: jest.fn().mockRejectedValue(new Error(message))\n });\n\n const repository = new FilterRepository(gateway, namespace);\n const presenter = new AdvancedSearchPresenter(repository);\n\n // Let's load the app, without filters\n await presenter.load();\n\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: false,\n view: \"EMPTY\",\n loadingLabel: \"\",\n filters: []\n },\n feedbackVm: {\n isOpen: true,\n message\n }\n });\n });\n\n it(\"should be able to handle error while creating the filter\", async () => {\n const message = \"Gateway error while creating filter\";\n const createGateway = createMockGateway({\n ...gateway,\n create: jest.fn().mockRejectedValue(new Error(message))\n });\n\n const repository = new FilterRepository(createGateway, namespace);\n const presenter = new AdvancedSearchPresenter(repository);\n\n // Let's load some filters\n await presenter.load();\n\n // Let's try to save a Filter\n const filter = {\n id: \"\",\n name: \"Draft filter\",\n description: \"\",\n operation: Operation.AND,\n groups: [\n {\n operation: Operation.OR,\n filters: [\n {\n field: \"Field value\",\n condition: \"field_condition\",\n value: \"Any value\"\n }\n ]\n }\n ]\n };\n\n await presenter.persistFilter(filter);\n\n expect(presenter.vm).toMatchObject({\n feedbackVm: {\n isOpen: true,\n message\n }\n });\n });\n\n it(\"should be able to handle error while updating a filter\", async () => {\n const message = \"Gateway error while updating filter\";\n const updateGateway = createMockGateway({\n ...gateway,\n update: jest.fn().mockRejectedValue(new Error(message))\n });\n\n const repository = new FilterRepository(updateGateway, namespace);\n const presenter = new AdvancedSearchPresenter(repository);\n\n // Let's load some filters\n await presenter.load();\n\n // Let's try to save a Filter\n const filter = {\n ...filter1,\n name: filter1 + \" - Edit\"\n };\n\n await presenter.persistFilter(filter);\n\n expect(presenter.vm).toMatchObject({\n feedbackVm: {\n isOpen: true,\n message\n }\n });\n });\n\n it(\"should be able to handle error while deleting a filter\", async () => {\n const message = \"Gateway error while deleting filter\";\n const updateGateway = createMockGateway({\n ...gateway,\n delete: jest.fn().mockRejectedValue(new Error(message))\n });\n\n const repository = new FilterRepository(updateGateway, namespace);\n const presenter = new AdvancedSearchPresenter(repository);\n\n // Let's load some filters\n await presenter.load();\n\n await presenter.deleteFilter(filter1.id);\n\n expect(presenter.vm).toMatchObject({\n feedbackVm: {\n isOpen: true,\n message\n }\n });\n });\n\n it(\"should be able to show a feedback message\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's show any random feedback message\n presenter.showFeedback(\"Any message\");\n expect(presenter.vm).toMatchObject({\n currentFilter: null,\n feedbackVm: {\n isOpen: true,\n message: \"Any message\"\n }\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["describe","it","vi","expect","beforeEach","AdvancedSearchPresenter","FilterRepository","Operation","mockGateway","list","fn","get","create","update","delete","createMockGateway","deleteFn","namespace","demoFilter","field","value","condition","demoGroup","operation","AND","filters","filter1","id","name","description","groups","createdOn","Date","toString","filter2","gateway","mockImplementation","Promise","resolve","presenter","clearAllMocks","repository","load","toBeCalledTimes","vm","toEqual","appliedFilter","currentFilter","feedbackVm","isOpen","message","managerVm","view","isLoading","loadingLabel","builderVm","saverVm","loadPromise","toMatchObject","applyFilter","unsetFilter","editAppliedFilter","openManager","createFilter","filter","OR","saveFilter","persistPromise","persistFilter","toHaveBeenCalledWith","any","String","length","toBe","editFilter","renameFilter","cloneFilter","clonedFilter","deleteFilter","mockRejectedValue","Error","createGateway","updateGateway","showFeedback"],"sources":["AdvancedSearchPresenter.test.ts"],"sourcesContent":["import { describe, it, vi, expect, beforeEach } from \"vitest\";\nimport { AdvancedSearchPresenter } from \"./AdvancedSearchPresenter.js\";\nimport {\n type FilterDTO,\n type FilterGroupDTO,\n type FilterGroupFilterDTO,\n FilterRepository,\n Operation\n} from \"./domain/index.js\";\nimport { type FiltersGatewayInterface } from \"./gateways/index.js\";\n\nconst mockGateway: FiltersGatewayInterface = {\n list: vi.fn<FiltersGatewayInterface[\"list\"]>(),\n get: vi.fn<FiltersGatewayInterface[\"get\"]>(),\n create: vi.fn<FiltersGatewayInterface[\"create\"]>(),\n update: vi.fn<FiltersGatewayInterface[\"update\"]>(),\n delete: vi.fn<FiltersGatewayInterface[\"delete\"]>()\n};\n\nconst createMockGateway = ({\n list,\n get,\n create,\n update,\n delete: deleteFn\n}: Partial<FiltersGatewayInterface>): FiltersGatewayInterface => ({\n ...mockGateway,\n ...(list && { list }),\n ...(get && { get }),\n ...(create && { create }),\n ...(update && { update }),\n ...(deleteFn && { delete: deleteFn })\n});\n\ndescribe(\"AdvancedSearchPresenter\", () => {\n const namespace = \"namespace\";\n\n const demoFilter: FilterGroupFilterDTO = {\n field: \"any-field\",\n value: \"any-value\",\n condition: \"any-condition\"\n };\n\n const demoGroup: FilterGroupDTO = {\n operation: Operation.AND,\n filters: [demoFilter]\n };\n\n const filter1: FilterDTO = {\n id: \"filter-1\",\n name: \"Filter 1\",\n description: \"Filter description\",\n operation: Operation.AND,\n groups: [demoGroup],\n createdOn: new Date().toString()\n };\n\n const filter2: FilterDTO = {\n id: \"filter-2\",\n name: \"Filter 2\",\n operation: Operation.AND,\n groups: [demoGroup],\n createdOn: new Date().toString()\n };\n\n const gateway = createMockGateway({\n list: vi.fn<FiltersGatewayInterface[\"list\"]>().mockImplementation(() => {\n return Promise.resolve([filter1, filter2]);\n }),\n get: vi.fn<FiltersGatewayInterface[\"get\"]>().mockImplementation(() => {\n return Promise.resolve(filter1);\n }),\n create: vi.fn<FiltersGatewayInterface[\"create\"]>().mockImplementation(() => {\n return Promise.resolve(filter1);\n }),\n update: vi.fn<FiltersGatewayInterface[\"update\"]>().mockImplementation(() => {\n return Promise.resolve({ ...filter1, name: \"Filter 1 - Edit\" });\n }),\n delete: vi.fn<FiltersGatewayInterface[\"delete\"]>().mockImplementation(() => {\n return Promise.resolve(true);\n })\n });\n\n let presenter: AdvancedSearchPresenter;\n\n beforeEach(() => {\n vi.clearAllMocks();\n\n const repository = new FilterRepository(gateway, namespace);\n presenter = new AdvancedSearchPresenter(repository);\n });\n\n it(\"should create a presenter and list filters from the gateway\", async () => {\n // let's load some filters\n await presenter.load();\n\n expect(gateway.list).toBeCalledTimes(1);\n\n expect(presenter.vm).toEqual({\n appliedFilter: null,\n currentFilter: null,\n feedbackVm: {\n isOpen: false,\n message: \"\"\n },\n managerVm: {\n isOpen: false,\n view: \"LIST\",\n isLoading: false,\n loadingLabel: \"\",\n filters: [\n {\n id: filter1.id,\n name: filter1.name,\n description: filter1.description,\n createdOn: filter1.createdOn\n },\n {\n id: filter2.id,\n name: filter2.name,\n description: \"\",\n createdOn: filter2.createdOn\n }\n ]\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: false,\n isLoading: false,\n loadingLabel: \"\"\n }\n });\n });\n\n it(\"should transition to loading state and then to list state\", async () => {\n const loadPromise = presenter.load();\n\n expect(presenter.vm.managerVm).toMatchObject({\n isOpen: false,\n isLoading: true,\n loadingLabel: \"Listing filters\",\n view: \"EMPTY\",\n filters: []\n });\n\n await loadPromise;\n\n expect(presenter.vm.managerVm).toMatchObject({\n isOpen: false,\n isLoading: false,\n loadingLabel: \"\",\n view: \"LIST\"\n });\n });\n\n it(\"should be able to apply a filter via filterId\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's apply a filter\n await presenter.applyFilter(\"filter-1\");\n\n expect(presenter.vm).toMatchObject({\n appliedFilter: filter1,\n currentFilter: null,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: false\n }\n });\n });\n\n it(\"should be able to apply directly a filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's apply a filter\n presenter.applyFilter(filter2);\n\n expect(presenter.vm).toMatchObject({\n appliedFilter: filter2,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: false\n }\n });\n });\n\n it(\"should be able to unset a filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's apply and unset the filter\n await presenter.applyFilter(\"filter-1\");\n presenter.unsetFilter();\n\n expect(presenter.vm).toMatchObject({\n appliedFilter: null,\n currentFilter: null\n });\n });\n\n it(\"should be able to edit an already applied filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's apply and unset the filter\n await presenter.applyFilter(\"filter-1\");\n presenter.editAppliedFilter();\n\n expect(presenter.vm).toMatchObject({\n appliedFilter: filter1,\n currentFilter: filter1,\n builderVm: {\n isOpen: true\n }\n });\n });\n\n it(\"should be create a new filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's open the filter manager\n presenter.openManager();\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: true\n }\n });\n\n // Let's create a new filter via builder\n presenter.createFilter();\n expect(presenter.vm).toMatchObject({\n currentFilter: {\n id: \"\",\n name: \"Draft filter\",\n description: \"\",\n operation: Operation.AND,\n groups: [\n {\n operation: Operation.AND,\n filters: [\n {\n field: \"\",\n condition: \"\",\n value: \"\"\n }\n ]\n }\n ]\n },\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: true\n },\n saverVm: {\n isOpen: false\n }\n });\n\n // Let's change the Filter and open the saver\n const filter = {\n id: \"\",\n name: \"Draft filter\",\n description: \"\",\n operation: Operation.AND,\n groups: [\n {\n operation: Operation.OR,\n filters: [\n {\n field: \"Field value\",\n condition: \"field_condition\",\n value: \"Any value\"\n }\n ]\n }\n ]\n };\n presenter.saveFilter(filter);\n expect(presenter.vm).toMatchObject({\n currentFilter: filter,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: true\n },\n saverVm: {\n isOpen: true\n }\n });\n\n // Let's save it via the gateway\n const persistPromise = presenter.persistFilter(filter);\n\n // Let's check the transition to loading state\n expect(presenter.vm.saverVm).toMatchObject({\n isOpen: true,\n isLoading: true,\n loadingLabel: \"Creating filter...\"\n });\n\n await persistPromise;\n\n expect(gateway.create).toBeCalledTimes(1);\n expect(gateway.create).toHaveBeenCalledWith({\n id: expect.any(String),\n name: \"Draft filter\",\n description: \"\",\n namespace,\n operation: Operation.AND,\n groups: [filter.groups[0]]\n });\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: false\n },\n feedbackVm: {\n isOpen: true,\n message: 'Filter \"Draft filter\" was successfully created.'\n }\n });\n\n // Let's open the manager again and check if the new filter is there.\n // Be aware: data comes from the mocked gateway\n presenter.openManager();\n expect(presenter.vm.managerVm.filters.length).toBe(3);\n expect(presenter.vm.managerVm.filters[0]).toEqual({\n id: filter1.id,\n name: filter1.name,\n description: filter1.description,\n createdOn: filter1.createdOn\n });\n });\n\n it(\"should be able to update an existing filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's open the filter manager\n presenter.openManager();\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: true\n }\n });\n\n // Let's select a filter to edit in the builder\n await presenter.editFilter(\"filter-1\");\n expect(presenter.vm).toMatchObject({\n currentFilter: filter1,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: true\n },\n saverVm: {\n isOpen: false\n }\n });\n\n // Let's change the Filter and open the saver\n const filter = {\n ...filter1,\n groups: [\n {\n operation: Operation.OR,\n filters: [\n {\n field: \"Field value\",\n condition: \"field_condition\",\n value: \"Any value\"\n }\n ]\n }\n ]\n };\n presenter.saveFilter(filter);\n expect(presenter.vm).toMatchObject({\n currentFilter: filter,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: true\n },\n saverVm: {\n isOpen: true\n }\n });\n\n // Let's save it via the gateway\n const persistPromise = presenter.persistFilter(filter);\n\n // Let's check the transition to loading state\n expect(presenter.vm.saverVm).toMatchObject({\n isOpen: true,\n isLoading: true,\n loadingLabel: \"Updating filter...\"\n });\n\n await persistPromise;\n\n expect(gateway.update).toBeCalledTimes(1);\n expect(gateway.update).toHaveBeenCalledWith({\n id: \"filter-1\",\n name: \"Filter 1\",\n description: \"Filter description\",\n operation: Operation.AND,\n groups: [filter.groups[0]]\n });\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: false\n },\n feedbackVm: {\n isOpen: true,\n message: 'Filter \"Filter 1\" was successfully updated.'\n }\n });\n\n // Let's open the manager again and check if the new data is there.\n // Be aware: data comes from the mocked gateway\n presenter.openManager();\n expect(presenter.vm.managerVm.filters.length).toBe(2);\n expect(presenter.vm.managerVm.filters[0]).toEqual({\n id: filter1.id,\n name: \"Filter 1 - Edit\",\n description: filter1.description,\n createdOn: filter1.createdOn\n });\n });\n\n it(\"should be able to rename a filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's open the filter manager\n presenter.openManager();\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: true\n }\n });\n\n // Let's rename a filter\n await presenter.renameFilter(\"filter-1\");\n\n expect(presenter.vm).toMatchObject({\n currentFilter: filter1,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: true\n }\n });\n\n // Let's save it via the gateway\n const persistPromise = presenter.persistFilter({\n ...filter1,\n name: `${filter1.name} - Edit`\n });\n\n // Let's check the transition to loading state\n expect(presenter.vm.saverVm).toMatchObject({\n isOpen: true,\n isLoading: true,\n loadingLabel: \"Updating filter...\"\n });\n\n await persistPromise;\n\n expect(gateway.update).toBeCalledTimes(1);\n expect(gateway.update).toHaveBeenCalledWith({\n id: \"filter-1\",\n name: `${filter1.name} - Edit`,\n description: \"Filter description\",\n operation: Operation.AND,\n groups: [filter1.groups[0]]\n });\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: false\n },\n feedbackVm: {\n isOpen: true,\n message: `Filter \"${filter1.name} - Edit\" was successfully updated.`\n }\n });\n\n // Let's open the manager again and check if the new data is there.\n // Be aware: data comes from the mocked gateway\n presenter.openManager();\n expect(presenter.vm.managerVm.filters.length).toBe(2);\n expect(presenter.vm.managerVm.filters[0]).toEqual({\n id: filter1.id,\n name: `${filter1.name} - Edit`,\n description: filter1.description,\n createdOn: filter1.createdOn\n });\n });\n\n it(\"should be able to clone a filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's open the filter manager\n presenter.openManager();\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: true\n }\n });\n\n // Let's clone a filter\n await presenter.cloneFilter(\"filter-1\");\n\n const clonedFilter = {\n ...filter1,\n id: \"\",\n name: `Clone of ${filter1.name}`\n };\n\n expect(presenter.vm).toMatchObject({\n currentFilter: clonedFilter,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: true\n },\n saverVm: {\n isOpen: false\n }\n });\n\n presenter.saveFilter(clonedFilter);\n expect(presenter.vm).toMatchObject({\n currentFilter: clonedFilter,\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: true\n },\n saverVm: {\n isOpen: true\n }\n });\n\n // Let's save it via the gateway\n const persistPromise = presenter.persistFilter(clonedFilter);\n\n // Let's check the transition to loading state\n expect(presenter.vm.saverVm).toMatchObject({\n isOpen: true,\n isLoading: true,\n loadingLabel: \"Creating filter...\"\n });\n\n await persistPromise;\n\n expect(gateway.create).toBeCalledTimes(1);\n expect(gateway.create).toHaveBeenCalledWith({\n id: expect.any(String),\n name: `Clone of ${filter1.name}`,\n description: \"Filter description\",\n namespace,\n operation: Operation.AND,\n groups: [filter1.groups[0]]\n });\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: false\n },\n builderVm: {\n isOpen: false\n },\n saverVm: {\n isOpen: false\n },\n feedbackVm: {\n isOpen: true,\n message: `Filter \"Clone of ${filter1.name}\" was successfully created.`\n }\n });\n\n // Let's open the manager again and check if the new data is there\n presenter.openManager();\n expect(presenter.vm.managerVm.filters.length).toBe(3);\n });\n\n it(\"should be able to delete a filter\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's open the filter manager\n presenter.openManager();\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: true\n }\n });\n\n // Let's delete a filter\n await presenter.deleteFilter(\"filter-1\");\n expect(gateway.delete).toBeCalledTimes(1);\n expect(gateway.delete).toHaveBeenCalledWith(\"filter-1\");\n expect(presenter.vm).toMatchObject({\n currentFilter: null,\n feedbackVm: {\n isOpen: true,\n message: 'Filter \"Filter 1\" was successfully deleted.'\n }\n });\n\n // Let's check if the filter has been deleted and is not in the manager.\n // Be aware: data comes from the mocked gateway\n presenter.openManager();\n expect(presenter.vm.managerVm.filters.length).toBe(1);\n expect(presenter.vm.managerVm.filters[0]).toEqual({\n id: filter2.id,\n name: filter2.name,\n description: \"\",\n createdOn: filter2.createdOn\n });\n });\n\n it(\"should be able to handle an empty list - error from the gateway\", async () => {\n const message = \"Gateway error while listing filters\";\n const gateway = createMockGateway({\n list: vi.fn<FiltersGatewayInterface[\"list\"]>().mockRejectedValue(new Error(message))\n });\n\n const repository = new FilterRepository(gateway, namespace);\n const presenter = new AdvancedSearchPresenter(repository);\n\n // Let's load the app, without filters\n await presenter.load();\n\n expect(presenter.vm).toMatchObject({\n managerVm: {\n isOpen: false,\n view: \"EMPTY\",\n loadingLabel: \"\",\n filters: []\n },\n feedbackVm: {\n isOpen: true,\n message\n }\n });\n });\n\n it(\"should be able to handle error while creating the filter\", async () => {\n const message = \"Gateway error while creating filter\";\n const createGateway = createMockGateway({\n ...gateway,\n create: vi.fn<FiltersGatewayInterface[\"create\"]>().mockRejectedValue(new Error(message))\n });\n\n const repository = new FilterRepository(createGateway, namespace);\n const presenter = new AdvancedSearchPresenter(repository);\n\n // Let's load some filters\n await presenter.load();\n\n // Let's try to save a Filter\n const filter = {\n id: \"\",\n name: \"Draft filter\",\n description: \"\",\n operation: Operation.AND,\n groups: [\n {\n operation: Operation.OR,\n filters: [\n {\n field: \"Field value\",\n condition: \"field_condition\",\n value: \"Any value\"\n }\n ]\n }\n ]\n };\n\n await presenter.persistFilter(filter);\n\n expect(presenter.vm).toMatchObject({\n feedbackVm: {\n isOpen: true,\n message\n }\n });\n });\n\n it(\"should be able to handle error while updating a filter\", async () => {\n const message = \"Gateway error while updating filter\";\n const updateGateway = createMockGateway({\n ...gateway,\n update: vi.fn<FiltersGatewayInterface[\"update\"]>().mockRejectedValue(new Error(message))\n });\n\n const repository = new FilterRepository(updateGateway, namespace);\n const presenter = new AdvancedSearchPresenter(repository);\n\n // Let's load some filters\n await presenter.load();\n\n // Let's try to save a Filter\n const filter = {\n ...filter1,\n name: filter1 + \" - Edit\"\n };\n\n await presenter.persistFilter(filter);\n\n expect(presenter.vm).toMatchObject({\n feedbackVm: {\n isOpen: true,\n message\n }\n });\n });\n\n it(\"should be able to handle error while deleting a filter\", async () => {\n const message = \"Gateway error while deleting filter\";\n const updateGateway = createMockGateway({\n ...gateway,\n delete: vi.fn<FiltersGatewayInterface[\"delete\"]>().mockRejectedValue(new Error(message))\n });\n\n const repository = new FilterRepository(updateGateway, namespace);\n const presenter = new AdvancedSearchPresenter(repository);\n\n // Let's load some filters\n await presenter.load();\n\n await presenter.deleteFilter(filter1.id);\n\n expect(presenter.vm).toMatchObject({\n feedbackVm: {\n isOpen: true,\n message\n }\n });\n });\n\n it(\"should be able to show a feedback message\", async () => {\n // let's load some filters\n await presenter.load();\n\n // Let's show any random feedback message\n presenter.showFeedback(\"Any message\");\n expect(presenter.vm).toMatchObject({\n currentFilter: null,\n feedbackVm: {\n isOpen: true,\n message: \"Any message\"\n }\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from "./Button";
|
|
1
|
+
export * from "./Button.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["index.tsx"],"sourcesContent":["export * from \"./Button\";\n"],"mappings":"AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":[],"sources":["index.tsx"],"sourcesContent":["export * from \"./Button.js\";\n"],"mappings":"AAAA","ignoreList":[]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type { FilterDTO } from "
|
|
1
|
+
import type { FilterDTO } from "../../components/AdvancedSearch/domain/index.js";
|
|
2
2
|
interface NestedObject {
|
|
3
3
|
[key: string]: string | boolean | NestedObject;
|
|
4
4
|
}
|
|
5
5
|
export declare class GraphQLInputMapper {
|
|
6
6
|
static toGraphQL(configuration: FilterDTO): {
|
|
7
|
-
[
|
|
7
|
+
[configuration.operation]: {
|
|
8
8
|
[x: string]: NestedObject[];
|
|
9
9
|
}[];
|
|
10
10
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["get","GraphQLInputMapper","toGraphQL","configuration","operation","groups","map","group","filters","filter","field","condition","value","keys","trim","split","shift","length","createNestedObject","createKeys","convertToBooleanOrString","values","JSON","parse","reduceRight","acc","key"],"sources":["GraphQLInputMapper.ts"],"sourcesContent":["import get from \"lodash/get\";\nimport type { FilterDTO } from \"~/components/AdvancedSearch/domain\";\n\ninterface NestedObject {\n [key: string]: string | boolean | NestedObject;\n}\n\nexport class GraphQLInputMapper {\n static toGraphQL(configuration: FilterDTO) {\n return {\n [configuration.operation]: configuration.groups.map(group => {\n return {\n [group.operation]: group.filters.map(filter => {\n const { field, condition, value } = filter;\n\n const keys = field.trim().split(\".\");\n keys.shift();\n\n if (keys.length === 0) {\n return this.createNestedObject(\n this.createKeys(field, condition),\n this.convertToBooleanOrString(value)\n );\n }\n\n try {\n const values = JSON.parse(value);\n return this.createNestedObject(\n this.createKeys(field, condition),\n this.convertToBooleanOrString(get(values, keys))\n );\n } catch {\n return this.createNestedObject(\n this.createKeys(field, condition),\n this.convertToBooleanOrString(value)\n );\n }\n })\n };\n })\n };\n }\n\n private static convertToBooleanOrString(value: string | boolean): string | boolean {\n if (value === \"true\") {\n return true;\n }\n\n if (value === \"false\") {\n return false;\n }\n\n return value ?? \"\";\n }\n\n private static createKeys(field: string, condition: string): string[] {\n return `${field}${condition}`.trim().split(\".\");\n }\n\n private static createNestedObject(keys: string[], value: string | boolean): NestedObject {\n return keys.reduceRight((acc, key) => ({ [key]: acc }), value as unknown as NestedObject);\n }\n}\n"],"mappings":"AAAA,OAAOA,GAAG,MAAM,
|
|
1
|
+
{"version":3,"names":["get","GraphQLInputMapper","toGraphQL","configuration","operation","groups","map","group","filters","filter","field","condition","value","keys","trim","split","shift","length","createNestedObject","createKeys","convertToBooleanOrString","values","JSON","parse","reduceRight","acc","key"],"sources":["GraphQLInputMapper.ts"],"sourcesContent":["import get from \"lodash/get.js\";\nimport type { FilterDTO } from \"~/components/AdvancedSearch/domain/index.js\";\n\ninterface NestedObject {\n [key: string]: string | boolean | NestedObject;\n}\n\nexport class GraphQLInputMapper {\n static toGraphQL(configuration: FilterDTO) {\n return {\n [configuration.operation]: configuration.groups.map(group => {\n return {\n [group.operation]: group.filters.map(filter => {\n const { field, condition, value } = filter;\n\n const keys = field.trim().split(\".\");\n keys.shift();\n\n if (keys.length === 0) {\n return this.createNestedObject(\n this.createKeys(field, condition),\n this.convertToBooleanOrString(value)\n );\n }\n\n try {\n const values = JSON.parse(value);\n return this.createNestedObject(\n this.createKeys(field, condition),\n this.convertToBooleanOrString(get(values, keys))\n );\n } catch {\n return this.createNestedObject(\n this.createKeys(field, condition),\n this.convertToBooleanOrString(value)\n );\n }\n })\n };\n })\n };\n }\n\n private static convertToBooleanOrString(value: string | boolean): string | boolean {\n if (value === \"true\") {\n return true;\n }\n\n if (value === \"false\") {\n return false;\n }\n\n return value ?? \"\";\n }\n\n private static createKeys(field: string, condition: string): string[] {\n return `${field}${condition}`.trim().split(\".\");\n }\n\n private static createNestedObject(keys: string[], value: string | boolean): NestedObject {\n return keys.reduceRight((acc, key) => ({ [key]: acc }), value as unknown as NestedObject);\n }\n}\n"],"mappings":"AAAA,OAAOA,GAAG,MAAM,eAAe;AAO/B,OAAO,MAAMC,kBAAkB,CAAC;EAC5B,OAAOC,SAASA,CAACC,aAAwB,EAAE;IACvC,OAAO;MACH,CAACA,aAAa,CAACC,SAAS,GAAGD,aAAa,CAACE,MAAM,CAACC,GAAG,CAACC,KAAK,IAAI;QACzD,OAAO;UACH,CAACA,KAAK,CAACH,SAAS,GAAGG,KAAK,CAACC,OAAO,CAACF,GAAG,CAACG,MAAM,IAAI;YAC3C,MAAM;cAAEC,KAAK;cAAEC,SAAS;cAAEC;YAAM,CAAC,GAAGH,MAAM;YAE1C,MAAMI,IAAI,GAAGH,KAAK,CAACI,IAAI,CAAC,CAAC,CAACC,KAAK,CAAC,GAAG,CAAC;YACpCF,IAAI,CAACG,KAAK,CAAC,CAAC;YAEZ,IAAIH,IAAI,CAACI,MAAM,KAAK,CAAC,EAAE;cACnB,OAAO,IAAI,CAACC,kBAAkB,CAC1B,IAAI,CAACC,UAAU,CAACT,KAAK,EAAEC,SAAS,CAAC,EACjC,IAAI,CAACS,wBAAwB,CAACR,KAAK,CACvC,CAAC;YACL;YAEA,IAAI;cACA,MAAMS,MAAM,GAAGC,IAAI,CAACC,KAAK,CAACX,KAAK,CAAC;cAChC,OAAO,IAAI,CAACM,kBAAkB,CAC1B,IAAI,CAACC,UAAU,CAACT,KAAK,EAAEC,SAAS,CAAC,EACjC,IAAI,CAACS,wBAAwB,CAACpB,GAAG,CAACqB,MAAM,EAAER,IAAI,CAAC,CACnD,CAAC;YACL,CAAC,CAAC,MAAM;cACJ,OAAO,IAAI,CAACK,kBAAkB,CAC1B,IAAI,CAACC,UAAU,CAACT,KAAK,EAAEC,SAAS,CAAC,EACjC,IAAI,CAACS,wBAAwB,CAACR,KAAK,CACvC,CAAC;YACL;UACJ,CAAC;QACL,CAAC;MACL,CAAC;IACL,CAAC;EACL;EAEA,OAAeQ,wBAAwBA,CAACR,KAAuB,EAAoB;IAC/E,IAAIA,KAAK,KAAK,MAAM,EAAE;MAClB,OAAO,IAAI;IACf;IAEA,IAAIA,KAAK,KAAK,OAAO,EAAE;MACnB,OAAO,KAAK;IAChB;IAEA,OAAOA,KAAK,IAAI,EAAE;EACtB;EAEA,OAAeO,UAAUA,CAACT,KAAa,EAAEC,SAAiB,EAAY;IAClE,OAAO,GAAGD,KAAK,GAAGC,SAAS,EAAE,CAACG,IAAI,CAAC,CAAC,CAACC,KAAK,CAAC,GAAG,CAAC;EACnD;EAEA,OAAeG,kBAAkBA,CAACL,IAAc,EAAED,KAAuB,EAAgB;IACrF,OAAOC,IAAI,CAACW,WAAW,CAAC,CAACC,GAAG,EAAEC,GAAG,MAAM;MAAE,CAACA,GAAG,GAAGD;IAAI,CAAC,CAAC,EAAEb,KAAgC,CAAC;EAC7F;AACJ","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { describe, it, expect } from "vitest";
|
|
2
|
+
import { GraphQLInputMapper } from "./GraphQLInputMapper.js";
|
|
3
|
+
import { Operation } from "./domain/index.js";
|
|
3
4
|
describe("GraphQLInputMapper", () => {
|
|
4
5
|
it("should return a GraphQL formatted output based on the received FilterDTO", () => {
|
|
5
6
|
const filterDTO = {
|