@webiny/app-aco 5.41.4 → 5.42.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/components/AdvancedSearch/AdvancedSearch.js.map +1 -1
  2. package/components/AdvancedSearch/AdvancedSearchPresenter.js.map +1 -1
  3. package/components/AdvancedSearch/GraphQLInputMapper.js.map +1 -1
  4. package/components/AdvancedSearch/QueryBuilderDrawer/Footer.js.map +1 -1
  5. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/QueryBuilder.js.map +1 -1
  6. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/Filter.js.map +1 -1
  7. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/OperationSelector.js.map +1 -1
  8. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawer.js.map +1 -1
  9. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawerPresenter.js.map +1 -1
  10. package/components/AdvancedSearch/QueryManagerDialog/components/FilterList.js.map +1 -1
  11. package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialogPresenter.js.map +1 -1
  12. package/components/AdvancedSearch/domain/Field.js.map +1 -1
  13. package/components/AdvancedSearch/domain/FieldMapper.js.map +1 -1
  14. package/components/AdvancedSearch/domain/Filter.js.map +1 -1
  15. package/components/AdvancedSearch/domain/FilterMapper.js.map +1 -1
  16. package/components/AdvancedSearch/domain/FilterRepository.js.map +1 -1
  17. package/components/AdvancedSearch/domain/FilterRepositoryFactory.js.map +1 -1
  18. package/components/AdvancedSearch/domain/Loading.js.map +1 -1
  19. package/components/AdvancedSearch/domain/Sorter.js.map +1 -1
  20. package/components/AdvancedSearch/fields/Boolean.js.map +1 -1
  21. package/components/AdvancedSearch/fields/PredefinedValues.js.map +1 -1
  22. package/components/AdvancedSearch/gateways/FiltersGraphQLGateway.js.map +1 -1
  23. package/components/FolderGrid/Folder.js.map +1 -1
  24. package/components/FolderTree/ButtonCreate/index.js.map +1 -1
  25. package/components/FolderTree/List/index.js +5 -1
  26. package/components/FolderTree/List/index.js.map +1 -1
  27. package/components/FolderTree/List/utils.js +3 -3
  28. package/components/FolderTree/List/utils.js.map +1 -1
  29. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityDecorator.js.map +1 -1
  30. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityPresenter.js.map +1 -1
  31. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepository.js.map +1 -1
  32. package/components/Table/components/Table/ColumnVisibility/ColumnsVisibilityRepositoryFactory.js.map +1 -1
  33. package/components/Table/components/Table/Columns/Column.js.map +1 -1
  34. package/components/Table/components/Table/Columns/ColumnMapper.js.map +1 -1
  35. package/components/Table/components/Table/Columns/ColumnsPresenter.js.map +1 -1
  36. package/components/Table/components/Table/Columns/ColumnsRepository.js.map +1 -1
  37. package/components/Table/components/Table/Columns/ColumnsRepositoryFactory.js.map +1 -1
  38. package/components/Table/components/Table/TableInner.js.map +1 -1
  39. package/components/Table/components/Table/gateways/ColumnsVisibilityLocalStorageGateway.js.map +1 -1
  40. package/components/Table/components/Table/gateways/LocalStorage.js.map +1 -1
  41. package/contexts/FoldersApi/FoldersApiProvider.js +3 -3
  42. package/contexts/FoldersApi/FoldersApiProvider.js.map +1 -1
  43. package/contexts/acoList.js.map +1 -1
  44. package/contexts/app.js.map +1 -1
  45. package/contexts/folders.js.map +1 -1
  46. package/contexts/records.js +20 -0
  47. package/contexts/records.js.map +1 -1
  48. package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemGraphic.js.map +1 -1
  49. package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemMeta.js +5 -2
  50. package/dialogs/DialogSetPermissions/UsersTeamsSelection/ListItemMeta.js.map +1 -1
  51. package/dialogs/useCreateDialog.js.map +1 -1
  52. package/dialogs/useDeleteDialog.js.map +1 -1
  53. package/dialogs/useEditDialog.js.map +1 -1
  54. package/dialogs/useMoveToFolderDialog.js.map +1 -1
  55. package/dialogs/useSetPermissionsDialog.js.map +1 -1
  56. package/hooks/useRecords.js.map +1 -1
  57. package/package.json +19 -25
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_mobxReactLite","_domain","_AdvancedSearchPresenter","_Button","_Feedback","_QueryManagerDialog","_QueryBuilderDrawer","_QuerySaverDialog","_SelectedFilter","_AdvancedSearch","_config","AdvancedSearch","exports","observer","_ref","fields","repository","onApplyFilter","_useAcoConfig","useAcoConfig","advancedSearch","presenter","useMemo","AdvancedSearchPresenter","useEffect","load","applyFilter","filter","vm","appliedFilter","unsetFilter","deleteFilter","filterId","id","persistAndApplyFilter","persistFilter","fieldsWithRenderer","fieldDTOs","FieldMapper","toDTO","map","field","Field","createFromRaw","config","fieldRenderers","find","type","element","_objectSpread2","default","createElement","Fragment","AdvancedSearchContainer","Button","onClick","openManager","SelectedFilter","onEdit","editAppliedFilter","onDelete","QueryManagerDialog","onClose","closeManager","onCreate","createFilter","editFilter","onRename","renameFilter","onClone","cloneFilter","onSelect","managerVm","currentFilter","QueryBuilderDrawer","closeBuilder","onSave","saveFilter","onApply","onValidationError","message","showFeedback","builderVm","QuerySaverDialog","closeSaver","saverVm","Feedback","isOpen","feedbackVm"],"sources":["AdvancedSearch.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from \"react\";\nimport { observer } from \"mobx-react-lite\";\n\nimport { Field, FieldMapper, FieldRaw, FilterDTO, FilterRepository } from \"./domain\";\n\nimport { AdvancedSearchPresenter } from \"./AdvancedSearchPresenter\";\n\nimport { Button } from \"./Button\";\nimport { Feedback } from \"./Feedback\";\nimport { QueryManagerDialog } from \"./QueryManagerDialog\";\nimport { QueryBuilderDrawer } from \"./QueryBuilderDrawer\";\nimport { QuerySaverDialog } from \"./QuerySaverDialog\";\nimport { SelectedFilter } from \"./SelectedFilter\";\n\nimport { AdvancedSearchContainer } from \"./AdvancedSearch.styled\";\nimport { useAcoConfig } from \"~/config\";\n\nexport interface AdvancedSearchProps {\n fields: FieldRaw[];\n repository: FilterRepository;\n onApplyFilter: (data: FilterDTO | null) => void;\n}\n\nexport const AdvancedSearch = observer(\n ({ fields, repository, onApplyFilter }: AdvancedSearchProps) => {\n const { advancedSearch } = useAcoConfig();\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 const fieldsWithRenderer = useMemo(() => {\n const fieldDTOs = FieldMapper.toDTO(fields.map(field => Field.createFromRaw(field)));\n\n return fieldDTOs.map(field => {\n const config = advancedSearch.fieldRenderers.find(\n config => config.type === field.type\n );\n const element = config?.element ?? null;\n return { ...field, element };\n });\n }, [fields, advancedSearch.fieldRenderers]);\n\n return (\n <>\n <AdvancedSearchContainer>\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 </AdvancedSearchContainer>\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={fieldsWithRenderer}\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 <Feedback\n isOpen={presenter.vm.feedbackVm.isOpen}\n message={presenter.vm.feedbackVm.message}\n />\n </>\n );\n }\n);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_mobxReactLite","_domain","_AdvancedSearchPresenter","_Button","_Feedback","_QueryManagerDialog","_QueryBuilderDrawer","_QuerySaverDialog","_SelectedFilter","_AdvancedSearch","_config","AdvancedSearch","exports","observer","_ref","fields","repository","onApplyFilter","_useAcoConfig","useAcoConfig","advancedSearch","presenter","useMemo","AdvancedSearchPresenter","useEffect","load","applyFilter","filter","vm","appliedFilter","unsetFilter","deleteFilter","filterId","id","persistAndApplyFilter","persistFilter","fieldsWithRenderer","fieldDTOs","FieldMapper","toDTO","map","field","Field","createFromRaw","config","fieldRenderers","find","type","element","_objectSpread2","default","createElement","Fragment","AdvancedSearchContainer","Button","onClick","openManager","SelectedFilter","onEdit","editAppliedFilter","onDelete","QueryManagerDialog","onClose","closeManager","onCreate","createFilter","editFilter","onRename","renameFilter","onClone","cloneFilter","onSelect","managerVm","currentFilter","QueryBuilderDrawer","closeBuilder","onSave","saveFilter","onApply","onValidationError","message","showFeedback","builderVm","QuerySaverDialog","closeSaver","saverVm","Feedback","isOpen","feedbackVm"],"sources":["AdvancedSearch.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from \"react\";\nimport { observer } from \"mobx-react-lite\";\n\nimport { Field, FieldMapper, FieldRaw, FilterDTO, FilterRepository } from \"./domain\";\n\nimport { AdvancedSearchPresenter } from \"./AdvancedSearchPresenter\";\n\nimport { Button } from \"./Button\";\nimport { Feedback } from \"./Feedback\";\nimport { QueryManagerDialog } from \"./QueryManagerDialog\";\nimport { QueryBuilderDrawer } from \"./QueryBuilderDrawer\";\nimport { QuerySaverDialog } from \"./QuerySaverDialog\";\nimport { SelectedFilter } from \"./SelectedFilter\";\n\nimport { AdvancedSearchContainer } from \"./AdvancedSearch.styled\";\nimport { useAcoConfig } from \"~/config\";\n\nexport interface AdvancedSearchProps {\n fields: FieldRaw[];\n repository: FilterRepository;\n onApplyFilter: (data: FilterDTO | null) => void;\n}\n\nexport const AdvancedSearch = observer(\n ({ fields, repository, onApplyFilter }: AdvancedSearchProps) => {\n const { advancedSearch } = useAcoConfig();\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 const fieldsWithRenderer = useMemo(() => {\n const fieldDTOs = FieldMapper.toDTO(fields.map(field => Field.createFromRaw(field)));\n\n return fieldDTOs.map(field => {\n const config = advancedSearch.fieldRenderers.find(\n config => config.type === field.type\n );\n const element = config?.element ?? null;\n return { ...field, element };\n });\n }, [fields, advancedSearch.fieldRenderers]);\n\n return (\n <>\n <AdvancedSearchContainer>\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 </AdvancedSearchContainer>\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={fieldsWithRenderer}\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 <Feedback\n isOpen={presenter.vm.feedbackVm.isOpen}\n message={presenter.vm.feedbackVm.message}\n />\n </>\n );\n }\n);\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_domain","AdvancedSearchPresenter","exports","repository","_classCallCheck2","default","_defineProperty2","feedback","Feedback","makeAutoObservable","_createClass2","key","value","load","listFilters","get","vm","isOpen","showManager","view","isLoading","getLoading","loadingLabel","filters","getFilters","map","filter","id","name","description","createdOn","length","Boolean","message","showBuilder","showSaver","appliedFilter","currentFilter","feedbackVm","managerVm","builderVm","saverVm","openManager","closeManager","openBuilder","closeBuilder","openSaver","closeSaver","showFeedback","applyFilter","_this","filterDto","result","getFilterById","runInAction","unsetFilter","editAppliedFilter","renameFilter","filterId","_this2","createFilter","FilterMapper","toDTO","Filter","createEmpty","cloneFilter","_this3","create","_objectSpread2","concat","editFilter","_this4","deleteFilter","_this5","saveFilter","persistFilter","_this6","updateFilterIntoRepository","createFilterIntoRepository","_this7","newFilter","_this8","updateFilter"],"sources":["AdvancedSearchPresenter.ts"],"sourcesContent":["import { makeAutoObservable, runInAction } from \"mobx\";\nimport {\n Feedback,\n Filter,\n FilterDTO,\n FilterMapper,\n FilterRepository\n} 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":["_mobx","require","_domain","AdvancedSearchPresenter","exports","repository","_classCallCheck2","default","_defineProperty2","feedback","Feedback","makeAutoObservable","_createClass2","key","value","load","listFilters","get","vm","isOpen","showManager","view","isLoading","getLoading","loadingLabel","filters","getFilters","map","filter","id","name","description","createdOn","length","Boolean","message","showBuilder","showSaver","appliedFilter","currentFilter","feedbackVm","managerVm","builderVm","saverVm","openManager","closeManager","openBuilder","closeBuilder","openSaver","closeSaver","showFeedback","applyFilter","_this","filterDto","result","getFilterById","runInAction","unsetFilter","editAppliedFilter","renameFilter","filterId","_this2","createFilter","FilterMapper","toDTO","Filter","createEmpty","cloneFilter","_this3","create","_objectSpread2","concat","editFilter","_this4","deleteFilter","_this5","saveFilter","persistFilter","_this6","updateFilterIntoRepository","createFilterIntoRepository","_this7","newFilter","_this8","updateFilter"],"sources":["AdvancedSearchPresenter.ts"],"sourcesContent":["import { makeAutoObservable, runInAction } from \"mobx\";\nimport {\n Feedback,\n Filter,\n FilterDTO,\n FilterMapper,\n FilterRepository\n} 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 +1 @@
1
- {"version":3,"names":["_get","_interopRequireDefault","require","GraphQLInputMapper","exports","_classCallCheck2","default","_createClass2","key","value","toGraphQL","configuration","_this","_defineProperty2","operation","groups","map","group","filters","filter","field","condition","keys","trim","split","shift","length","createNestedObject","createKeys","convertToBooleanOrString","values","JSON","parse","get","_unused","concat","reduceRight","acc"],"sources":["GraphQLInputMapper.ts"],"sourcesContent":["import get from \"lodash/get\";\nimport { 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,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA6B,IAOhBC,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA;EAAA,SAAAA,mBAAA;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,kBAAA;EAAA;EAAA,WAAAI,aAAA,CAAAD,OAAA,EAAAH,kBAAA;IAAAK,GAAA;IAAAC,KAAA,EAC3B,SAAAC,UAAiBC,aAAwB,EAAE;MAAA,IAAAC,KAAA;MACvC,WAAAC,gBAAA,CAAAP,OAAA,MACKK,aAAa,CAACG,SAAS,EAAGH,aAAa,CAACI,MAAM,CAACC,GAAG,CAAC,UAAAC,KAAK,EAAI;QACzD,WAAAJ,gBAAA,CAAAP,OAAA,MACKW,KAAK,CAACH,SAAS,EAAGG,KAAK,CAACC,OAAO,CAACF,GAAG,CAAC,UAAAG,MAAM,EAAI;UAC3C,IAAQC,KAAK,GAAuBD,MAAM,CAAlCC,KAAK;YAAEC,SAAS,GAAYF,MAAM,CAA3BE,SAAS;YAAEZ,KAAK,GAAKU,MAAM,CAAhBV,KAAK;UAE/B,IAAMa,IAAI,GAAGF,KAAK,CAACG,IAAI,CAAC,CAAC,CAACC,KAAK,CAAC,GAAG,CAAC;UACpCF,IAAI,CAACG,KAAK,CAAC,CAAC;UAEZ,IAAIH,IAAI,CAACI,MAAM,KAAK,CAAC,EAAE;YACnB,OAAOd,KAAI,CAACe,kBAAkB,CAC1Bf,KAAI,CAACgB,UAAU,CAACR,KAAK,EAAEC,SAAS,CAAC,EACjCT,KAAI,CAACiB,wBAAwB,CAACpB,KAAK,CACvC,CAAC;UACL;UAEA,IAAI;YACA,IAAMqB,MAAM,GAAGC,IAAI,CAACC,KAAK,CAACvB,KAAK,CAAC;YAChC,OAAOG,KAAI,CAACe,kBAAkB,CAC1Bf,KAAI,CAACgB,UAAU,CAACR,KAAK,EAAEC,SAAS,CAAC,EACjCT,KAAI,CAACiB,wBAAwB,CAAC,IAAAI,YAAG,EAACH,MAAM,EAAER,IAAI,CAAC,CACnD,CAAC;UACL,CAAC,CAAC,OAAAY,OAAA,EAAM;YACJ,OAAOtB,KAAI,CAACe,kBAAkB,CAC1Bf,KAAI,CAACgB,UAAU,CAACR,KAAK,EAAEC,SAAS,CAAC,EACjCT,KAAI,CAACiB,wBAAwB,CAACpB,KAAK,CACvC,CAAC;UACL;QACJ,CAAC,CAAC;MAEV,CAAC,CAAC;IAEV;EAAC;IAAAD,GAAA;IAAAC,KAAA,EAED,SAAAoB,yBAAwCpB,KAAuB,EAAoB;MAC/E,IAAIA,KAAK,KAAK,MAAM,EAAE;QAClB,OAAO,IAAI;MACf;MAEA,IAAIA,KAAK,KAAK,OAAO,EAAE;QACnB,OAAO,KAAK;MAChB;MAEA,OAAOA,KAAK,IAAI,EAAE;IACtB;EAAC;IAAAD,GAAA;IAAAC,KAAA,EAED,SAAAmB,WAA0BR,KAAa,EAAEC,SAAiB,EAAY;MAClE,OAAO,GAAAc,MAAA,CAAGf,KAAK,EAAAe,MAAA,CAAGd,SAAS,EAAGE,IAAI,CAAC,CAAC,CAACC,KAAK,CAAC,GAAG,CAAC;IACnD;EAAC;IAAAhB,GAAA;IAAAC,KAAA,EAED,SAAAkB,mBAAkCL,IAAc,EAAEb,KAAuB,EAAgB;MACrF,OAAOa,IAAI,CAACc,WAAW,CAAC,UAACC,GAAG,EAAE7B,GAAG;QAAA,WAAAK,gBAAA,CAAAP,OAAA,MAASE,GAAG,EAAG6B,GAAG;MAAA,CAAG,EAAE5B,KAAgC,CAAC;IAC7F;EAAC;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["_get","_interopRequireDefault","require","GraphQLInputMapper","exports","_classCallCheck2","default","_createClass2","key","value","toGraphQL","configuration","_this","_defineProperty2","operation","groups","map","group","filters","filter","field","condition","keys","trim","split","shift","length","createNestedObject","createKeys","convertToBooleanOrString","values","JSON","parse","get","_unused","concat","reduceRight","acc"],"sources":["GraphQLInputMapper.ts"],"sourcesContent":["import get from \"lodash/get\";\nimport { 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,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA6B,IAOhBC,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA;EAAA,SAAAA,mBAAA;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,kBAAA;EAAA;EAAA,WAAAI,aAAA,CAAAD,OAAA,EAAAH,kBAAA;IAAAK,GAAA;IAAAC,KAAA,EAC3B,SAAOC,SAASA,CAACC,aAAwB,EAAE;MAAA,IAAAC,KAAA;MACvC,WAAAC,gBAAA,CAAAP,OAAA,MACKK,aAAa,CAACG,SAAS,EAAGH,aAAa,CAACI,MAAM,CAACC,GAAG,CAAC,UAAAC,KAAK,EAAI;QACzD,WAAAJ,gBAAA,CAAAP,OAAA,MACKW,KAAK,CAACH,SAAS,EAAGG,KAAK,CAACC,OAAO,CAACF,GAAG,CAAC,UAAAG,MAAM,EAAI;UAC3C,IAAQC,KAAK,GAAuBD,MAAM,CAAlCC,KAAK;YAAEC,SAAS,GAAYF,MAAM,CAA3BE,SAAS;YAAEZ,KAAK,GAAKU,MAAM,CAAhBV,KAAK;UAE/B,IAAMa,IAAI,GAAGF,KAAK,CAACG,IAAI,CAAC,CAAC,CAACC,KAAK,CAAC,GAAG,CAAC;UACpCF,IAAI,CAACG,KAAK,CAAC,CAAC;UAEZ,IAAIH,IAAI,CAACI,MAAM,KAAK,CAAC,EAAE;YACnB,OAAOd,KAAI,CAACe,kBAAkB,CAC1Bf,KAAI,CAACgB,UAAU,CAACR,KAAK,EAAEC,SAAS,CAAC,EACjCT,KAAI,CAACiB,wBAAwB,CAACpB,KAAK,CACvC,CAAC;UACL;UAEA,IAAI;YACA,IAAMqB,MAAM,GAAGC,IAAI,CAACC,KAAK,CAACvB,KAAK,CAAC;YAChC,OAAOG,KAAI,CAACe,kBAAkB,CAC1Bf,KAAI,CAACgB,UAAU,CAACR,KAAK,EAAEC,SAAS,CAAC,EACjCT,KAAI,CAACiB,wBAAwB,CAAC,IAAAI,YAAG,EAACH,MAAM,EAAER,IAAI,CAAC,CACnD,CAAC;UACL,CAAC,CAAC,OAAAY,OAAA,EAAM;YACJ,OAAOtB,KAAI,CAACe,kBAAkB,CAC1Bf,KAAI,CAACgB,UAAU,CAACR,KAAK,EAAEC,SAAS,CAAC,EACjCT,KAAI,CAACiB,wBAAwB,CAACpB,KAAK,CACvC,CAAC;UACL;QACJ,CAAC,CAAC;MAEV,CAAC,CAAC;IAEV;EAAC;IAAAD,GAAA;IAAAC,KAAA,EAED,SAAeoB,wBAAwBA,CAACpB,KAAuB,EAAoB;MAC/E,IAAIA,KAAK,KAAK,MAAM,EAAE;QAClB,OAAO,IAAI;MACf;MAEA,IAAIA,KAAK,KAAK,OAAO,EAAE;QACnB,OAAO,KAAK;MAChB;MAEA,OAAOA,KAAK,IAAI,EAAE;IACtB;EAAC;IAAAD,GAAA;IAAAC,KAAA,EAED,SAAemB,UAAUA,CAACR,KAAa,EAAEC,SAAiB,EAAY;MAClE,OAAO,GAAAc,MAAA,CAAGf,KAAK,EAAAe,MAAA,CAAGd,SAAS,EAAGE,IAAI,CAAC,CAAC,CAACC,KAAK,CAAC,GAAG,CAAC;IACnD;EAAC;IAAAhB,GAAA;IAAAC,KAAA,EAED,SAAekB,kBAAkBA,CAACL,IAAc,EAAEb,KAAuB,EAAgB;MACrF,OAAOa,IAAI,CAACc,WAAW,CAAC,UAACC,GAAG,EAAE7B,GAAG;QAAA,WAAAK,gBAAA,CAAAP,OAAA,MAASE,GAAG,EAAG6B,GAAG;MAAA,CAAG,EAAE5B,KAAgC,CAAC;IAC7F;EAAC;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_Button","_QueryBuilderDrawer","Footer","exports","props","default","createElement","SimpleFormFooter","ButtonDefault","onClick","onSave","onClose","ButtonPrimary","formRef","current","submit"],"sources":["Footer.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { FormAPI } from \"@webiny/form\";\nimport { ButtonDefault, ButtonPrimary } from \"@webiny/ui/Button\";\n\nimport { SimpleFormFooter } from \"./QueryBuilderDrawer.styled\";\n\ninterface FooterProps {\n onClose: () => void;\n formRef: React.RefObject<FormAPI>;\n onSave: () => void;\n}\n\nexport const Footer = (props: FooterProps) => {\n return (\n <SimpleFormFooter>\n <div>\n <ButtonDefault onClick={props.onSave}>Save filter</ButtonDefault>\n </div>\n <div>\n <ButtonDefault onClick={props.onClose}>Cancel</ButtonDefault>\n <ButtonPrimary onClick={() => props.formRef.current?.submit()}>\n Apply filter\n </ButtonPrimary>\n </div>\n </SimpleFormFooter>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,OAAA,GAAAD,OAAA;AAEA,IAAAE,mBAAA,GAAAF,OAAA;AAQO,IAAMG,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,SAATA,MAAMA,CAAIE,KAAkB,EAAK;EAC1C,oBACIP,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACL,mBAAA,CAAAM,gBAAgB,qBACbV,MAAA,CAAAQ,OAAA,CAAAC,aAAA,2BACIT,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACN,OAAA,CAAAQ,aAAa;IAACC,OAAO,EAAEL,KAAK,CAACM;EAAO,GAAC,aAA0B,CAC/D,CAAC,eACNb,MAAA,CAAAQ,OAAA,CAAAC,aAAA,2BACIT,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACN,OAAA,CAAAQ,aAAa;IAACC,OAAO,EAAEL,KAAK,CAACO;EAAQ,GAAC,QAAqB,CAAC,eAC7Dd,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACN,OAAA,CAAAY,aAAa;IAACH,OAAO,EAAE,SAAAA,QAAA;MAAA,OAAML,KAAK,CAACS,OAAO,CAACC,OAAO,EAAEC,MAAM,CAAC,CAAC;IAAA;EAAC,GAAC,cAEhD,CACd,CACS,CAAC;AAE3B,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_Button","_QueryBuilderDrawer","Footer","exports","props","default","createElement","SimpleFormFooter","ButtonDefault","onClick","onSave","onClose","ButtonPrimary","formRef","current","submit"],"sources":["Footer.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { FormAPI } from \"@webiny/form\";\nimport { ButtonDefault, ButtonPrimary } from \"@webiny/ui/Button\";\n\nimport { SimpleFormFooter } from \"./QueryBuilderDrawer.styled\";\n\ninterface FooterProps {\n onClose: () => void;\n formRef: React.RefObject<FormAPI>;\n onSave: () => void;\n}\n\nexport const Footer = (props: FooterProps) => {\n return (\n <SimpleFormFooter>\n <div>\n <ButtonDefault onClick={props.onSave}>Save filter</ButtonDefault>\n </div>\n <div>\n <ButtonDefault onClick={props.onClose}>Cancel</ButtonDefault>\n <ButtonPrimary onClick={() => props.formRef.current?.submit()}>\n Apply filter\n </ButtonPrimary>\n </div>\n </SimpleFormFooter>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,OAAA,GAAAD,OAAA;AAEA,IAAAE,mBAAA,GAAAF,OAAA;AAQO,IAAMG,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,SAATA,MAAMA,CAAIE,KAAkB,EAAK;EAC1C,oBACIP,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACL,mBAAA,CAAAM,gBAAgB,qBACbV,MAAA,CAAAQ,OAAA,CAAAC,aAAA,2BACIT,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACN,OAAA,CAAAQ,aAAa;IAACC,OAAO,EAAEL,KAAK,CAACM;EAAO,GAAC,aAA0B,CAC/D,CAAC,eACNb,MAAA,CAAAQ,OAAA,CAAAC,aAAA,2BACIT,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACN,OAAA,CAAAQ,aAAa;IAACC,OAAO,EAAEL,KAAK,CAACO;EAAQ,GAAC,QAAqB,CAAC,eAC7Dd,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACN,OAAA,CAAAY,aAAa;IAACH,OAAO,EAAE,SAATA,OAAOA,CAAA;MAAA,OAAQL,KAAK,CAACS,OAAO,CAACC,OAAO,EAAEC,MAAM,CAAC,CAAC;IAAA;EAAC,GAAC,cAEhD,CACd,CACS,CAAC;AAE3B,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_delete_outline","_Accordion","_form","_components","_Querybuilder","QueryBuilder","exports","props","formRef","React","createRef","useEffect","current","onForm","default","createElement","Form","ref","data","vm","onChange","onSubmit","invalidFields","Content","Panel","Details","name","description","Accordion","elevation","groups","map","group","groupIndex","AccordionItemInner","key","concat","AccordionItem","title","open","actions","Actions","Element","element","FilterOperationContainer","OperationSelector","label","Action","icon","ReactComponent","onClick","onDeleteGroup","disabled","canDelete","filters","filter","filterIndex","Fragment","Filter","fields","onFieldSelectChange","onSetFilterFieldData","onDelete","onDeleteFilterFromGroup","FilterOperationLabel","show","length","operation","AddFilter","onAddNewFilterToGroup","GroupOperationLabel","AddGroup","onAddGroup"],"sources":["QueryBuilder.tsx"],"sourcesContent":["import React, { Fragment, useEffect } from \"react\";\nimport { ReactComponent as DeleteIcon } from \"@material-design-icons/svg/outlined/delete_outline.svg\";\n\nimport { Accordion, AccordionItem } from \"@webiny/ui/Accordion\";\nimport { Form, FormAPI, FormOnSubmit } from \"@webiny/form\";\n\nimport { QueryBuilderFormData, QueryBuilderViewModel } from \"../QueryBuilderDrawerPresenter\";\n\nimport {\n AddFilter,\n AddGroup,\n Details,\n Filter,\n FilterOperationLabel,\n GroupOperationLabel,\n OperationSelector\n} from \"./components\";\n\nimport { AccordionItemInner, Content, FilterOperationContainer } from \"./Querybuilder.styled\";\nimport { FieldDTOWithElement } from \"~/components/AdvancedSearch/domain\";\n\nexport interface QueryBuilderProps {\n onForm: (form: FormAPI) => void;\n onSubmit: FormOnSubmit<QueryBuilderFormData>;\n onChange: (data: QueryBuilderFormData) => void;\n onDeleteGroup: (groupIndex: number) => void;\n onSetFilterFieldData: (groupIndex: number, filterIndex: number, data: string) => void;\n onDeleteFilterFromGroup: (groupIndex: number, filterIndex: number) => void;\n onAddNewFilterToGroup: (groupIndex: number) => void;\n onAddGroup: () => void;\n fields: FieldDTOWithElement[];\n vm: QueryBuilderViewModel;\n}\n\nexport const QueryBuilder = (props: QueryBuilderProps) => {\n const formRef = React.createRef<FormAPI>();\n\n useEffect(() => {\n if (formRef.current) {\n props.onForm(formRef.current);\n }\n }, []);\n\n return (\n <Form\n ref={formRef}\n data={props.vm.data}\n onChange={props.onChange}\n onSubmit={props.onSubmit}\n invalidFields={props.vm.invalidFields}\n >\n {() => (\n <Content>\n <Content.Panel>\n <Details name={props.vm.name} description={props.vm.description} />\n <Accordion elevation={1}>\n {props.vm.data.groups.map((group, groupIndex, groups) => (\n <AccordionItemInner key={`group-${groupIndex}`}>\n <AccordionItem\n title={group.title}\n open={group.open}\n actions={\n <AccordionItem.Actions>\n <AccordionItem.Element\n element={\n <FilterOperationContainer>\n <OperationSelector\n label={\"Match all conditions\"}\n name={`groups.${groupIndex}.operation`}\n />\n </FilterOperationContainer>\n }\n />\n <AccordionItem.Action\n icon={<DeleteIcon />}\n onClick={() => props.onDeleteGroup(groupIndex)}\n disabled={!group.canDelete}\n />\n </AccordionItem.Actions>\n }\n >\n {group.filters.map((filter, filterIndex, filters) => (\n <Fragment key={filterIndex}>\n <Filter\n name={`groups.${groupIndex}.filters.${filterIndex}`}\n filter={filter}\n fields={props.fields}\n onFieldSelectChange={data =>\n props.onSetFilterFieldData(\n groupIndex,\n filterIndex,\n data\n )\n }\n onDelete={() => {\n props.onDeleteFilterFromGroup(\n groupIndex,\n filterIndex\n );\n }}\n />\n <FilterOperationLabel\n show={filters.length !== filterIndex + 1}\n operation={group.operation}\n />\n </Fragment>\n ))}\n <AddFilter\n onClick={() => props.onAddNewFilterToGroup(groupIndex)}\n />\n </AccordionItem>\n <GroupOperationLabel\n show={groups.length !== groupIndex + 1}\n operation={props.vm.data.operation}\n />\n </AccordionItemInner>\n ))}\n </Accordion>\n <AddGroup onClick={() => props.onAddGroup()} />\n </Content.Panel>\n </Content>\n )}\n </Form>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_delete_outline","_Accordion","_form","_components","_Querybuilder","QueryBuilder","exports","props","formRef","React","createRef","useEffect","current","onForm","default","createElement","Form","ref","data","vm","onChange","onSubmit","invalidFields","Content","Panel","Details","name","description","Accordion","elevation","groups","map","group","groupIndex","AccordionItemInner","key","concat","AccordionItem","title","open","actions","Actions","Element","element","FilterOperationContainer","OperationSelector","label","Action","icon","ReactComponent","onClick","onDeleteGroup","disabled","canDelete","filters","filter","filterIndex","Fragment","Filter","fields","onFieldSelectChange","onSetFilterFieldData","onDelete","onDeleteFilterFromGroup","FilterOperationLabel","show","length","operation","AddFilter","onAddNewFilterToGroup","GroupOperationLabel","AddGroup","onAddGroup"],"sources":["QueryBuilder.tsx"],"sourcesContent":["import React, { Fragment, useEffect } from \"react\";\nimport { ReactComponent as DeleteIcon } from \"@material-design-icons/svg/outlined/delete_outline.svg\";\n\nimport { Accordion, AccordionItem } from \"@webiny/ui/Accordion\";\nimport { Form, FormAPI, FormOnSubmit } from \"@webiny/form\";\n\nimport { QueryBuilderFormData, QueryBuilderViewModel } from \"../QueryBuilderDrawerPresenter\";\n\nimport {\n AddFilter,\n AddGroup,\n Details,\n Filter,\n FilterOperationLabel,\n GroupOperationLabel,\n OperationSelector\n} from \"./components\";\n\nimport { AccordionItemInner, Content, FilterOperationContainer } from \"./Querybuilder.styled\";\nimport { FieldDTOWithElement } from \"~/components/AdvancedSearch/domain\";\n\nexport interface QueryBuilderProps {\n onForm: (form: FormAPI) => void;\n onSubmit: FormOnSubmit<QueryBuilderFormData>;\n onChange: (data: QueryBuilderFormData) => void;\n onDeleteGroup: (groupIndex: number) => void;\n onSetFilterFieldData: (groupIndex: number, filterIndex: number, data: string) => void;\n onDeleteFilterFromGroup: (groupIndex: number, filterIndex: number) => void;\n onAddNewFilterToGroup: (groupIndex: number) => void;\n onAddGroup: () => void;\n fields: FieldDTOWithElement[];\n vm: QueryBuilderViewModel;\n}\n\nexport const QueryBuilder = (props: QueryBuilderProps) => {\n const formRef = React.createRef<FormAPI>();\n\n useEffect(() => {\n if (formRef.current) {\n props.onForm(formRef.current);\n }\n }, []);\n\n return (\n <Form\n ref={formRef}\n data={props.vm.data}\n onChange={props.onChange}\n onSubmit={props.onSubmit}\n invalidFields={props.vm.invalidFields}\n >\n {() => (\n <Content>\n <Content.Panel>\n <Details name={props.vm.name} description={props.vm.description} />\n <Accordion elevation={1}>\n {props.vm.data.groups.map((group, groupIndex, groups) => (\n <AccordionItemInner key={`group-${groupIndex}`}>\n <AccordionItem\n title={group.title}\n open={group.open}\n actions={\n <AccordionItem.Actions>\n <AccordionItem.Element\n element={\n <FilterOperationContainer>\n <OperationSelector\n label={\"Match all conditions\"}\n name={`groups.${groupIndex}.operation`}\n />\n </FilterOperationContainer>\n }\n />\n <AccordionItem.Action\n icon={<DeleteIcon />}\n onClick={() => props.onDeleteGroup(groupIndex)}\n disabled={!group.canDelete}\n />\n </AccordionItem.Actions>\n }\n >\n {group.filters.map((filter, filterIndex, filters) => (\n <Fragment key={filterIndex}>\n <Filter\n name={`groups.${groupIndex}.filters.${filterIndex}`}\n filter={filter}\n fields={props.fields}\n onFieldSelectChange={data =>\n props.onSetFilterFieldData(\n groupIndex,\n filterIndex,\n data\n )\n }\n onDelete={() => {\n props.onDeleteFilterFromGroup(\n groupIndex,\n filterIndex\n );\n }}\n />\n <FilterOperationLabel\n show={filters.length !== filterIndex + 1}\n operation={group.operation}\n />\n </Fragment>\n ))}\n <AddFilter\n onClick={() => props.onAddNewFilterToGroup(groupIndex)}\n />\n </AccordionItem>\n <GroupOperationLabel\n show={groups.length !== groupIndex + 1}\n operation={props.vm.data.operation}\n />\n </AccordionItemInner>\n ))}\n </Accordion>\n <AddGroup onClick={() => props.onAddGroup()} />\n </Content.Panel>\n </Content>\n )}\n </Form>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_form","_AutoComplete","_Grid","_Select","_InputField","_controls","_Querybuilder","Filter","exports","_ref","name","onDelete","onFieldSelectChange","fields","filter","default","createElement","FilterContainer","Grid","Cell","span","CellInner","align","Bind","concat","_ref2","value","validation","options","map","field","id","label","AutoComplete","find","option","onChange","selected","_ref3","Select","conditions","condition","InputField","RemoveFilter","onClick","disabled","canDelete"],"sources":["Filter.tsx"],"sourcesContent":["import React from \"react\";\nimport { Bind } from \"@webiny/form\";\nimport { AutoComplete } from \"@webiny/ui/AutoComplete\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { Select } from \"@webiny/ui/Select\";\n\nimport { InputField } from \"./InputField\";\nimport { RemoveFilter } from \"./controls\";\n\nimport { FieldDTOWithElement, FilterGroupFilterDTO } from \"../../../domain\";\n\nimport { CellInner, FilterContainer } from \"../Querybuilder.styled\";\n\ninterface FilterProps {\n name: string;\n filter: FilterGroupFilterDTO & { canDelete: boolean };\n fields: FieldDTOWithElement[];\n onDelete: () => void;\n onFieldSelectChange: (data: string) => void;\n}\n\nexport const Filter = ({ name, onDelete, onFieldSelectChange, fields, filter }: FilterProps) => {\n return (\n <FilterContainer>\n <Grid>\n <Cell span={4}>\n <CellInner align={\"left\"}>\n <Bind name={`${name}.field`}>\n {({ value, validation }) => {\n const options = fields.map(field => ({\n id: field.value,\n name: field.label\n }));\n\n return (\n <AutoComplete\n label={\"Field\"}\n options={options}\n value={options.find(option => option.id === value)}\n onChange={selected => {\n /**\n * Update the selected value only if it's different from the current value.\n * When the value is populated from data, onChange might trigger re-rendering of the form and clear related fields.\n */\n if (selected !== value) {\n onFieldSelectChange(selected);\n }\n }}\n validation={validation}\n />\n );\n }}\n </Bind>\n </CellInner>\n </Cell>\n <Cell span={3}>\n <CellInner align={\"left\"}>\n {filter.field && (\n <Bind name={`${name}.condition`}>\n {({ value, onChange, validation }) => (\n <Select\n label={\"Condition\"}\n options={\n fields.find(field => field.value === filter.field)\n ?.conditions || []\n }\n value={value}\n onChange={onChange}\n validation={validation}\n />\n )}\n </Bind>\n )}\n </CellInner>\n </Cell>\n <Cell span={4} align={\"middle\"}>\n <CellInner align={\"left\"}>\n {filter.condition && (\n <InputField\n name={`${name}.value`}\n field={fields.find(field => field.value === filter.field)}\n />\n )}\n </CellInner>\n </Cell>\n <Cell span={1} align={\"middle\"}>\n <CellInner align={\"center\"}>\n <RemoveFilter onClick={onDelete} disabled={!filter.canDelete} />\n </CellInner>\n </Cell>\n </Grid>\n </FilterContainer>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_form","_AutoComplete","_Grid","_Select","_InputField","_controls","_Querybuilder","Filter","exports","_ref","name","onDelete","onFieldSelectChange","fields","filter","default","createElement","FilterContainer","Grid","Cell","span","CellInner","align","Bind","concat","_ref2","value","validation","options","map","field","id","label","AutoComplete","find","option","onChange","selected","_ref3","Select","conditions","condition","InputField","RemoveFilter","onClick","disabled","canDelete"],"sources":["Filter.tsx"],"sourcesContent":["import React from \"react\";\nimport { Bind } from \"@webiny/form\";\nimport { AutoComplete } from \"@webiny/ui/AutoComplete\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { Select } from \"@webiny/ui/Select\";\n\nimport { InputField } from \"./InputField\";\nimport { RemoveFilter } from \"./controls\";\n\nimport { FieldDTOWithElement, FilterGroupFilterDTO } from \"../../../domain\";\n\nimport { CellInner, FilterContainer } from \"../Querybuilder.styled\";\n\ninterface FilterProps {\n name: string;\n filter: FilterGroupFilterDTO & { canDelete: boolean };\n fields: FieldDTOWithElement[];\n onDelete: () => void;\n onFieldSelectChange: (data: string) => void;\n}\n\nexport const Filter = ({ name, onDelete, onFieldSelectChange, fields, filter }: FilterProps) => {\n return (\n <FilterContainer>\n <Grid>\n <Cell span={4}>\n <CellInner align={\"left\"}>\n <Bind name={`${name}.field`}>\n {({ value, validation }) => {\n const options = fields.map(field => ({\n id: field.value,\n name: field.label\n }));\n\n return (\n <AutoComplete\n label={\"Field\"}\n options={options}\n value={options.find(option => option.id === value)}\n onChange={selected => {\n /**\n * Update the selected value only if it's different from the current value.\n * When the value is populated from data, onChange might trigger re-rendering of the form and clear related fields.\n */\n if (selected !== value) {\n onFieldSelectChange(selected);\n }\n }}\n validation={validation}\n />\n );\n }}\n </Bind>\n </CellInner>\n </Cell>\n <Cell span={3}>\n <CellInner align={\"left\"}>\n {filter.field && (\n <Bind name={`${name}.condition`}>\n {({ value, onChange, validation }) => (\n <Select\n label={\"Condition\"}\n options={\n fields.find(field => field.value === filter.field)\n ?.conditions || []\n }\n value={value}\n onChange={onChange}\n validation={validation}\n />\n )}\n </Bind>\n )}\n </CellInner>\n </Cell>\n <Cell span={4} align={\"middle\"}>\n <CellInner align={\"left\"}>\n {filter.condition && (\n <InputField\n name={`${name}.value`}\n field={fields.find(field => field.value === filter.field)}\n />\n )}\n </CellInner>\n </Cell>\n <Cell span={1} align={\"middle\"}>\n <CellInner align={\"center\"}>\n <RemoveFilter onClick={onDelete} disabled={!filter.canDelete} />\n </CellInner>\n </Cell>\n </Grid>\n </FilterContainer>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_form","_Switch","_domain","OperationSelector","exports","_ref","label","name","getValue","value","Operation","AND","setValue","OR","default","createElement","Bind","_ref2","onChange","Switch"],"sources":["OperationSelector.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Bind } from \"@webiny/form\";\nimport { Switch } from \"@webiny/ui/Switch\";\nimport { Operation } from \"~/components/AdvancedSearch/domain\";\n\ninterface OperationSelectorProps {\n label: string;\n name: string;\n}\n\nexport const OperationSelector = ({ label, name }: OperationSelectorProps) => {\n const getValue = (value: Operation): boolean => {\n return value === Operation.AND;\n };\n\n const setValue = (value: boolean): Operation => {\n if (value) {\n return Operation.AND;\n } else {\n return Operation.OR;\n }\n };\n\n return (\n <Bind name={name}>\n {({ value, onChange }) => (\n <Switch\n label={label}\n value={getValue(value)}\n onChange={value => onChange(setValue(value))}\n />\n )}\n </Bind>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAOO,IAAMI,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,SAApBA,iBAAiBA,CAAAE,IAAA,EAAgD;EAAA,IAA1CC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,IAAI,GAAAF,IAAA,CAAJE,IAAI;EAC3C,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,KAAgB,EAAc;IAC5C,OAAOA,KAAK,KAAKC,iBAAS,CAACC,GAAG;EAClC,CAAC;EAED,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAIH,KAAc,EAAgB;IAC5C,IAAIA,KAAK,EAAE;MACP,OAAOC,iBAAS,CAACC,GAAG;IACxB,CAAC,MAAM;MACH,OAAOD,iBAAS,CAACG,EAAE;IACvB;EACJ,CAAC;EAED,oBACIhB,MAAA,CAAAiB,OAAA,CAAAC,aAAA,CAACf,KAAA,CAAAgB,IAAI;IAACT,IAAI,EAAEA;EAAK,GACZ,UAAAU,KAAA;IAAA,IAAGR,KAAK,GAAAQ,KAAA,CAALR,KAAK;MAAES,SAAQ,GAAAD,KAAA,CAARC,QAAQ;IAAA,oBACfrB,MAAA,CAAAiB,OAAA,CAAAC,aAAA,CAACd,OAAA,CAAAkB,MAAM;MACHb,KAAK,EAAEA,KAAM;MACbG,KAAK,EAAED,QAAQ,CAACC,KAAK,CAAE;MACvBS,QAAQ,EAAE,SAAAA,SAAAT,KAAK;QAAA,OAAIS,SAAQ,CAACN,QAAQ,CAACH,KAAK,CAAC,CAAC;MAAA;IAAC,CAChD,CAAC;EAAA,CAEJ,CAAC;AAEf,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_form","_Switch","_domain","OperationSelector","exports","_ref","label","name","getValue","value","Operation","AND","setValue","OR","default","createElement","Bind","_ref2","onChange","Switch"],"sources":["OperationSelector.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Bind } from \"@webiny/form\";\nimport { Switch } from \"@webiny/ui/Switch\";\nimport { Operation } from \"~/components/AdvancedSearch/domain\";\n\ninterface OperationSelectorProps {\n label: string;\n name: string;\n}\n\nexport const OperationSelector = ({ label, name }: OperationSelectorProps) => {\n const getValue = (value: Operation): boolean => {\n return value === Operation.AND;\n };\n\n const setValue = (value: boolean): Operation => {\n if (value) {\n return Operation.AND;\n } else {\n return Operation.OR;\n }\n };\n\n return (\n <Bind name={name}>\n {({ value, onChange }) => (\n <Switch\n label={label}\n value={getValue(value)}\n onChange={value => onChange(setValue(value))}\n />\n )}\n </Bind>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAOO,IAAMI,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,SAApBA,iBAAiBA,CAAAE,IAAA,EAAgD;EAAA,IAA1CC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,IAAI,GAAAF,IAAA,CAAJE,IAAI;EAC3C,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,KAAgB,EAAc;IAC5C,OAAOA,KAAK,KAAKC,iBAAS,CAACC,GAAG;EAClC,CAAC;EAED,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAIH,KAAc,EAAgB;IAC5C,IAAIA,KAAK,EAAE;MACP,OAAOC,iBAAS,CAACC,GAAG;IACxB,CAAC,MAAM;MACH,OAAOD,iBAAS,CAACG,EAAE;IACvB;EACJ,CAAC;EAED,oBACIhB,MAAA,CAAAiB,OAAA,CAAAC,aAAA,CAACf,KAAA,CAAAgB,IAAI;IAACT,IAAI,EAAEA;EAAK,GACZ,UAAAU,KAAA;IAAA,IAAGR,KAAK,GAAAQ,KAAA,CAALR,KAAK;MAAES,SAAQ,GAAAD,KAAA,CAARC,QAAQ;IAAA,oBACfrB,MAAA,CAAAiB,OAAA,CAAAC,aAAA,CAACd,OAAA,CAAAkB,MAAM;MACHb,KAAK,EAAEA,KAAM;MACbG,KAAK,EAAED,QAAQ,CAACC,KAAK,CAAE;MACvBS,QAAQ,EAAE,SAAVA,QAAQA,CAAET,KAAK;QAAA,OAAIS,SAAQ,CAACN,QAAQ,CAACH,KAAK,CAAC,CAAC;MAAA;IAAC,CAChD,CAAC;EAAA,CAEJ,CAAC;AAEf,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_mobxReactLite","_Drawer","_reactHotkeyz","_Footer","_Header","_QueryBuilder","_QueryBuilderDrawer","_QueryBuilderDrawerPresenter","_excluded","QueryBuilderDrawer","exports","observer","_ref","filter","props","_objectWithoutProperties2","default","presenter","useMemo","QueryBuilderDrawerPresenter","useEffect","load","onChange","data","setFilter","onApply","onValidationError","vm","invalidMessage","onSave","useHotkeys","zIndex","disabled","isOpen","keys","esc","onClose","ref","useRef","createElement","DrawerContainer","modal","open","DrawerContent","Header","QueryBuilder","onForm","form","current","onSubmit","onDeleteGroup","groupIndex","deleteGroup","onSetFilterFieldData","filterIndex","setFilterFieldData","onDeleteFilterFromGroup","deleteFilterFromGroup","onAddNewFilterToGroup","addNewFilterToGroup","onAddGroup","addGroup","fields","Footer","formRef"],"sources":["QueryBuilderDrawer.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useRef } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { FormAPI } from \"@webiny/form\";\nimport { DrawerContent } from \"@webiny/ui/Drawer\";\n// @ts-expect-error\nimport { useHotkeys } from \"react-hotkeyz\";\nimport { Footer } from \"./Footer\";\nimport { Header } from \"./Header\";\nimport { QueryBuilder } from \"./QueryBuilder\";\n\nimport { FieldDTOWithElement, FilterDTO } from \"~/components/AdvancedSearch/domain\";\n\nimport { DrawerContainer } from \"./QueryBuilderDrawer.styled\";\nimport { QueryBuilderDrawerPresenter, QueryBuilderFormData } from \"./QueryBuilderDrawerPresenter\";\n\ninterface QueryBuilderDrawerProps {\n fields: FieldDTOWithElement[];\n onClose: () => void;\n onSave: (data: FilterDTO) => void;\n onApply: (data: FilterDTO) => void;\n onValidationError: (message: string) => void;\n filter: FilterDTO;\n vm: {\n isOpen: boolean;\n };\n}\n\nexport const QueryBuilderDrawer = observer(({ filter, ...props }: QueryBuilderDrawerProps) => {\n const presenter = useMemo<QueryBuilderDrawerPresenter>(() => {\n return new QueryBuilderDrawerPresenter();\n }, []);\n\n useEffect(() => {\n presenter.load(filter);\n }, [filter]);\n\n const onChange = (data: QueryBuilderFormData) => {\n presenter.setFilter(data);\n };\n\n const onApply = () => {\n presenter.onApply(\n filter => {\n props.onApply(filter);\n },\n () => {\n props.onValidationError(presenter.vm.invalidMessage);\n }\n );\n };\n\n const onSave = () => {\n presenter.onSave(\n filter => {\n props.onSave(filter);\n },\n () => {\n props.onValidationError(presenter.vm.invalidMessage);\n }\n );\n };\n\n useHotkeys({\n zIndex: 55,\n disabled: !props.vm.isOpen,\n keys: {\n esc: props.onClose\n }\n });\n\n const ref = useRef<FormAPI | null>(null);\n\n return (\n <DrawerContainer modal open={props.vm.isOpen} onClose={props.onClose}>\n <DrawerContent>\n <Header onClose={props.onClose} />\n <QueryBuilder\n onForm={form => (ref.current = form)}\n onSubmit={onApply}\n onChange={data => onChange(data)}\n onDeleteGroup={groupIndex => presenter.deleteGroup(groupIndex)}\n onSetFilterFieldData={(groupIndex, filterIndex, data) =>\n presenter.setFilterFieldData(groupIndex, filterIndex, data)\n }\n onDeleteFilterFromGroup={(groupIndex, filterIndex) =>\n presenter.deleteFilterFromGroup(groupIndex, filterIndex)\n }\n onAddNewFilterToGroup={groupIndex => presenter.addNewFilterToGroup(groupIndex)}\n onAddGroup={() => presenter.addGroup()}\n fields={props.fields}\n vm={presenter.vm}\n />\n <Footer formRef={ref} onClose={props.onClose} onSave={onSave} />\n </DrawerContent>\n </DrawerContainer>\n );\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_mobxReactLite","_Drawer","_reactHotkeyz","_Footer","_Header","_QueryBuilder","_QueryBuilderDrawer","_QueryBuilderDrawerPresenter","_excluded","QueryBuilderDrawer","exports","observer","_ref","filter","props","_objectWithoutProperties2","default","presenter","useMemo","QueryBuilderDrawerPresenter","useEffect","load","onChange","data","setFilter","onApply","onValidationError","vm","invalidMessage","onSave","useHotkeys","zIndex","disabled","isOpen","keys","esc","onClose","ref","useRef","createElement","DrawerContainer","modal","open","DrawerContent","Header","QueryBuilder","onForm","form","current","onSubmit","onDeleteGroup","groupIndex","deleteGroup","onSetFilterFieldData","filterIndex","setFilterFieldData","onDeleteFilterFromGroup","deleteFilterFromGroup","onAddNewFilterToGroup","addNewFilterToGroup","onAddGroup","addGroup","fields","Footer","formRef"],"sources":["QueryBuilderDrawer.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useRef } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { FormAPI } from \"@webiny/form\";\nimport { DrawerContent } from \"@webiny/ui/Drawer\";\n// @ts-expect-error\nimport { useHotkeys } from \"react-hotkeyz\";\nimport { Footer } from \"./Footer\";\nimport { Header } from \"./Header\";\nimport { QueryBuilder } from \"./QueryBuilder\";\n\nimport { FieldDTOWithElement, FilterDTO } from \"~/components/AdvancedSearch/domain\";\n\nimport { DrawerContainer } from \"./QueryBuilderDrawer.styled\";\nimport { QueryBuilderDrawerPresenter, QueryBuilderFormData } from \"./QueryBuilderDrawerPresenter\";\n\ninterface QueryBuilderDrawerProps {\n fields: FieldDTOWithElement[];\n onClose: () => void;\n onSave: (data: FilterDTO) => void;\n onApply: (data: FilterDTO) => void;\n onValidationError: (message: string) => void;\n filter: FilterDTO;\n vm: {\n isOpen: boolean;\n };\n}\n\nexport const QueryBuilderDrawer = observer(({ filter, ...props }: QueryBuilderDrawerProps) => {\n const presenter = useMemo<QueryBuilderDrawerPresenter>(() => {\n return new QueryBuilderDrawerPresenter();\n }, []);\n\n useEffect(() => {\n presenter.load(filter);\n }, [filter]);\n\n const onChange = (data: QueryBuilderFormData) => {\n presenter.setFilter(data);\n };\n\n const onApply = () => {\n presenter.onApply(\n filter => {\n props.onApply(filter);\n },\n () => {\n props.onValidationError(presenter.vm.invalidMessage);\n }\n );\n };\n\n const onSave = () => {\n presenter.onSave(\n filter => {\n props.onSave(filter);\n },\n () => {\n props.onValidationError(presenter.vm.invalidMessage);\n }\n );\n };\n\n useHotkeys({\n zIndex: 55,\n disabled: !props.vm.isOpen,\n keys: {\n esc: props.onClose\n }\n });\n\n const ref = useRef<FormAPI | null>(null);\n\n return (\n <DrawerContainer modal open={props.vm.isOpen} onClose={props.onClose}>\n <DrawerContent>\n <Header onClose={props.onClose} />\n <QueryBuilder\n onForm={form => (ref.current = form)}\n onSubmit={onApply}\n onChange={data => onChange(data)}\n onDeleteGroup={groupIndex => presenter.deleteGroup(groupIndex)}\n onSetFilterFieldData={(groupIndex, filterIndex, data) =>\n presenter.setFilterFieldData(groupIndex, filterIndex, data)\n }\n onDeleteFilterFromGroup={(groupIndex, filterIndex) =>\n presenter.deleteFilterFromGroup(groupIndex, filterIndex)\n }\n onAddNewFilterToGroup={groupIndex => presenter.addNewFilterToGroup(groupIndex)}\n onAddGroup={() => presenter.addGroup()}\n fields={props.fields}\n vm={presenter.vm}\n />\n <Footer formRef={ref} onClose={props.onClose} onSave={onSave} />\n </DrawerContent>\n </DrawerContainer>\n );\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_domain","QueryBuilderDrawerPresenter","exports","_classCallCheck2","default","_defineProperty2","filter","undefined","makeAutoObservable","_createClass2","key","value","load","get","name","description","invalidFields","invalidMessage","data","operation","Operation","AND","groups","map","group","groupIndex","title","concat","open","canDelete","filters","filterIndex","field","condition","addGroup","push","deleteGroup","_","index","length","addNewFilterToGroup","deleteFilterFromGroup","setFilterFieldData","_toConsumableArray2","slice","setFilter","_objectSpread3","formWasSubmitted","validateFilter","onApply","onSuccess","onError","result","success","onSave","validation","Filter","validate","error","issues","reduce","acc","issue","path","join","message"],"sources":["QueryBuilderDrawerPresenter.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { Filter, FilterDTO, FilterGroupDTO, FilterGroupFilterDTO, Operation } from \"../domain\";\nimport { FormInvalidFields } from \"@webiny/form\";\n\nexport interface QueryBuilderDrawerPresenterInterface {\n load(filter: FilterDTO): void;\n addGroup(): void;\n deleteGroup(groupIndex: number): void;\n addNewFilterToGroup(groupIndex: number): void;\n deleteFilterFromGroup(groupIndex: number, filterIndex: number): void;\n setFilterFieldData(groupIndex: number, filterIndex: number, data: string): void;\n setFilter(data: QueryBuilderFormData): void;\n onApply(onSuccess?: (filter: FilterDTO) => void, onError?: (filter: FilterDTO) => void): void;\n onSave(onSuccess?: (filter: FilterDTO) => void, onError?: (filter: FilterDTO) => void): void;\n get vm(): QueryBuilderViewModel;\n}\n\nexport interface QueryBuilderViewModel {\n name: string;\n description: string;\n invalidFields: FormInvalidFields;\n invalidMessage: string;\n data: QueryBuilderFormData;\n}\n\nexport interface QueryBuilderFormData {\n operation: Operation;\n groups: {\n operation: Operation;\n title: string;\n open: boolean;\n canDelete: boolean;\n filters: (FilterGroupFilterDTO & { canDelete: boolean })[];\n }[];\n}\n\nexport class QueryBuilderDrawerPresenter implements QueryBuilderDrawerPresenterInterface {\n private formWasSubmitted = false;\n private invalidFields: QueryBuilderViewModel[\"invalidFields\"] = {};\n private invalidMessage = \"\";\n private filter: FilterDTO | undefined;\n\n constructor() {\n this.filter = undefined;\n makeAutoObservable(this);\n }\n\n load(filter: FilterDTO) {\n this.filter = filter;\n }\n\n get vm() {\n return {\n name: this.filter?.name || \"\",\n description: this.filter?.description || \"\",\n invalidFields: this.invalidFields,\n invalidMessage: this.invalidMessage,\n data: {\n operation: this.filter?.operation || Operation.AND,\n groups:\n this.filter?.groups.map((group: FilterGroupDTO, groupIndex) => {\n return {\n title: `Filter group #${groupIndex + 1}`,\n open: true,\n operation: group.operation,\n canDelete: groupIndex !== 0,\n filters: group.filters.map((filter, filterIndex) => ({\n field: filter.field,\n condition: filter.condition,\n value: filter.value,\n canDelete: filterIndex !== 0\n }))\n };\n }) || []\n }\n };\n }\n\n addGroup() {\n if (!this.filter) {\n return;\n }\n\n this.filter.groups.push({\n operation: Operation.AND,\n filters: [{ field: \"\", value: \"\", condition: \"\" }]\n });\n }\n\n deleteGroup(groupIndex: number) {\n if (!this.filter) {\n return;\n }\n\n this.filter.groups = this.filter.groups.filter((_, index) => index !== groupIndex);\n\n // Make sure we always have at least 1 group!\n if (this.filter.groups.length === 0) {\n this.addGroup();\n }\n }\n\n addNewFilterToGroup(groupIndex: number) {\n if (!this.filter) {\n return;\n }\n\n this.filter.groups[groupIndex].filters.push({\n field: \"\",\n value: \"\",\n condition: \"\"\n });\n }\n\n deleteFilterFromGroup(groupIndex: number, filterIndex: number) {\n if (!this.filter) {\n return;\n }\n\n const filters = this.filter.groups[groupIndex].filters;\n this.filter.groups[groupIndex].filters = filters.filter(\n (_, index) => index !== filterIndex\n );\n\n // Make sure we always have at least 1 filter!\n if (this.filter.groups[groupIndex].filters.length === 0) {\n this.filter.groups[groupIndex].filters.push({\n field: \"\",\n value: \"\",\n condition: \"\"\n });\n }\n }\n\n setFilterFieldData(groupIndex: number, filterIndex: number, data: string) {\n if (!this.filter) {\n return;\n }\n\n this.filter.groups[groupIndex].filters = [\n ...this.filter.groups[groupIndex].filters.slice(0, filterIndex),\n {\n field: data,\n value: \"\",\n condition: \"\"\n },\n ...this.filter.groups[groupIndex].filters.slice(filterIndex + 1)\n ];\n }\n\n setFilter(data: QueryBuilderFormData) {\n if (!this.filter) {\n return;\n }\n\n this.filter = {\n ...this.filter,\n operation: data.operation,\n groups: data.groups.map(group => ({\n operation: group.operation,\n filters: group.filters\n }))\n };\n\n if (this.formWasSubmitted) {\n this.validateFilter(this.filter);\n }\n }\n\n onApply(onSuccess?: (filter: FilterDTO) => void, onError?: (filter: FilterDTO) => void) {\n if (!this.filter) {\n return;\n }\n\n const result = this.validateFilter(this.filter);\n if (result.success) {\n onSuccess && onSuccess(this.filter);\n } else {\n onError && onError(this.filter);\n }\n }\n\n onSave(onSuccess?: (filter: FilterDTO) => void, onError?: (filter: FilterDTO) => void) {\n if (!this.filter) {\n return;\n }\n\n const result = this.validateFilter(this.filter);\n if (result.success) {\n onSuccess && onSuccess(this.filter);\n } else {\n onError && onError(this.filter);\n }\n }\n\n private validateFilter(data: FilterDTO) {\n this.formWasSubmitted = true;\n const validation = Filter.validate(data);\n\n if (!validation.success) {\n this.invalidMessage = \"Error during the validation: check the filter configuration.\";\n this.invalidFields = validation.error.issues.reduce((acc, issue) => {\n return {\n ...acc,\n [issue.path.join(\".\")]: issue.message\n };\n }, {});\n } else {\n this.invalidMessage = \"\";\n this.invalidFields = {};\n }\n\n return validation;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_domain","QueryBuilderDrawerPresenter","exports","_classCallCheck2","default","_defineProperty2","filter","undefined","makeAutoObservable","_createClass2","key","value","load","get","name","description","invalidFields","invalidMessage","data","operation","Operation","AND","groups","map","group","groupIndex","title","concat","open","canDelete","filters","filterIndex","field","condition","addGroup","push","deleteGroup","_","index","length","addNewFilterToGroup","deleteFilterFromGroup","setFilterFieldData","_toConsumableArray2","slice","setFilter","_objectSpread3","formWasSubmitted","validateFilter","onApply","onSuccess","onError","result","success","onSave","validation","Filter","validate","error","issues","reduce","acc","issue","path","join","message"],"sources":["QueryBuilderDrawerPresenter.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\nimport { Filter, FilterDTO, FilterGroupDTO, FilterGroupFilterDTO, Operation } from \"../domain\";\nimport { FormInvalidFields } from \"@webiny/form\";\n\nexport interface QueryBuilderDrawerPresenterInterface {\n load(filter: FilterDTO): void;\n addGroup(): void;\n deleteGroup(groupIndex: number): void;\n addNewFilterToGroup(groupIndex: number): void;\n deleteFilterFromGroup(groupIndex: number, filterIndex: number): void;\n setFilterFieldData(groupIndex: number, filterIndex: number, data: string): void;\n setFilter(data: QueryBuilderFormData): void;\n onApply(onSuccess?: (filter: FilterDTO) => void, onError?: (filter: FilterDTO) => void): void;\n onSave(onSuccess?: (filter: FilterDTO) => void, onError?: (filter: FilterDTO) => void): void;\n get vm(): QueryBuilderViewModel;\n}\n\nexport interface QueryBuilderViewModel {\n name: string;\n description: string;\n invalidFields: FormInvalidFields;\n invalidMessage: string;\n data: QueryBuilderFormData;\n}\n\nexport interface QueryBuilderFormData {\n operation: Operation;\n groups: {\n operation: Operation;\n title: string;\n open: boolean;\n canDelete: boolean;\n filters: (FilterGroupFilterDTO & { canDelete: boolean })[];\n }[];\n}\n\nexport class QueryBuilderDrawerPresenter implements QueryBuilderDrawerPresenterInterface {\n private formWasSubmitted = false;\n private invalidFields: QueryBuilderViewModel[\"invalidFields\"] = {};\n private invalidMessage = \"\";\n private filter: FilterDTO | undefined;\n\n constructor() {\n this.filter = undefined;\n makeAutoObservable(this);\n }\n\n load(filter: FilterDTO) {\n this.filter = filter;\n }\n\n get vm() {\n return {\n name: this.filter?.name || \"\",\n description: this.filter?.description || \"\",\n invalidFields: this.invalidFields,\n invalidMessage: this.invalidMessage,\n data: {\n operation: this.filter?.operation || Operation.AND,\n groups:\n this.filter?.groups.map((group: FilterGroupDTO, groupIndex) => {\n return {\n title: `Filter group #${groupIndex + 1}`,\n open: true,\n operation: group.operation,\n canDelete: groupIndex !== 0,\n filters: group.filters.map((filter, filterIndex) => ({\n field: filter.field,\n condition: filter.condition,\n value: filter.value,\n canDelete: filterIndex !== 0\n }))\n };\n }) || []\n }\n };\n }\n\n addGroup() {\n if (!this.filter) {\n return;\n }\n\n this.filter.groups.push({\n operation: Operation.AND,\n filters: [{ field: \"\", value: \"\", condition: \"\" }]\n });\n }\n\n deleteGroup(groupIndex: number) {\n if (!this.filter) {\n return;\n }\n\n this.filter.groups = this.filter.groups.filter((_, index) => index !== groupIndex);\n\n // Make sure we always have at least 1 group!\n if (this.filter.groups.length === 0) {\n this.addGroup();\n }\n }\n\n addNewFilterToGroup(groupIndex: number) {\n if (!this.filter) {\n return;\n }\n\n this.filter.groups[groupIndex].filters.push({\n field: \"\",\n value: \"\",\n condition: \"\"\n });\n }\n\n deleteFilterFromGroup(groupIndex: number, filterIndex: number) {\n if (!this.filter) {\n return;\n }\n\n const filters = this.filter.groups[groupIndex].filters;\n this.filter.groups[groupIndex].filters = filters.filter(\n (_, index) => index !== filterIndex\n );\n\n // Make sure we always have at least 1 filter!\n if (this.filter.groups[groupIndex].filters.length === 0) {\n this.filter.groups[groupIndex].filters.push({\n field: \"\",\n value: \"\",\n condition: \"\"\n });\n }\n }\n\n setFilterFieldData(groupIndex: number, filterIndex: number, data: string) {\n if (!this.filter) {\n return;\n }\n\n this.filter.groups[groupIndex].filters = [\n ...this.filter.groups[groupIndex].filters.slice(0, filterIndex),\n {\n field: data,\n value: \"\",\n condition: \"\"\n },\n ...this.filter.groups[groupIndex].filters.slice(filterIndex + 1)\n ];\n }\n\n setFilter(data: QueryBuilderFormData) {\n if (!this.filter) {\n return;\n }\n\n this.filter = {\n ...this.filter,\n operation: data.operation,\n groups: data.groups.map(group => ({\n operation: group.operation,\n filters: group.filters\n }))\n };\n\n if (this.formWasSubmitted) {\n this.validateFilter(this.filter);\n }\n }\n\n onApply(onSuccess?: (filter: FilterDTO) => void, onError?: (filter: FilterDTO) => void) {\n if (!this.filter) {\n return;\n }\n\n const result = this.validateFilter(this.filter);\n if (result.success) {\n onSuccess && onSuccess(this.filter);\n } else {\n onError && onError(this.filter);\n }\n }\n\n onSave(onSuccess?: (filter: FilterDTO) => void, onError?: (filter: FilterDTO) => void) {\n if (!this.filter) {\n return;\n }\n\n const result = this.validateFilter(this.filter);\n if (result.success) {\n onSuccess && onSuccess(this.filter);\n } else {\n onError && onError(this.filter);\n }\n }\n\n private validateFilter(data: FilterDTO) {\n this.formWasSubmitted = true;\n const validation = Filter.validate(data);\n\n if (!validation.success) {\n this.invalidMessage = \"Error during the validation: check the filter configuration.\";\n this.invalidFields = validation.error.issues.reduce((acc, issue) => {\n return {\n ...acc,\n [issue.path.join(\".\")]: issue.message\n };\n }, {});\n } else {\n this.invalidMessage = \"\";\n this.invalidFields = {};\n }\n\n return validation;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_saved_search","_more_vert","_Button","_List","_Tooltip","_Menu","_QueryManagerDialog","_Description","FilterList","exports","props","default","createElement","List","twoLine","nonInteractive","filters","map","filter","ListItem","key","id","ListItemText","ListItemTextPrimary","name","Description","createdOn","description","ListItemMeta","ListActions","Tooltip","content","placement","IconButton","icon","ReactComponent","label","onClick","onSelect","Menu","handle","MenuItem","onEdit","onRename","onClone","onDelete"],"sources":["FilterList.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { ReactComponent as SavedSearchIcon } from \"@material-design-icons/svg/outlined/saved_search.svg\";\nimport { ReactComponent as MoreIcon } from \"@material-design-icons/svg/outlined/more_vert.svg\";\n\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { List, ListItem, ListItemMeta, ListItemText, ListItemTextPrimary } from \"@webiny/ui/List\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { Menu, MenuItem } from \"@webiny/ui/Menu\";\n\nimport { ListActions } from \"../QueryManagerDialog.styled\";\nimport { QueryManagerFilter } from \"../QueryManagerDialog\";\nimport { Description } from \"~/components/AdvancedSearch/QueryManagerDialog/components/Description\";\n\ntype filterCallback = (filterId: string) => void;\n\ninterface FilterListProps {\n onEdit: filterCallback;\n onRename: filterCallback;\n onDelete: filterCallback;\n onSelect: filterCallback;\n onClone: filterCallback;\n filters: QueryManagerFilter[];\n}\n\nexport const FilterList = (props: FilterListProps) => {\n return (\n <List twoLine nonInteractive>\n {props.filters.map(filter => (\n <ListItem key={filter.id}>\n <ListItemText>\n <ListItemTextPrimary>{filter.name}</ListItemTextPrimary>\n <Description createdOn={filter.createdOn}>{filter.description}</Description>\n </ListItemText>\n <ListItemMeta>\n <ListActions>\n <Tooltip content={\"Apply filter\"} placement={\"left\"}>\n <IconButton\n icon={<SavedSearchIcon />}\n label={\"Apply filter\"}\n onClick={() => props.onSelect(filter.id)}\n />\n </Tooltip>\n <Menu handle={<IconButton icon={<MoreIcon />} label={\"Open menu\"} />}>\n <MenuItem onClick={() => props.onEdit(filter.id)}>Edit</MenuItem>\n <MenuItem onClick={() => props.onRename(filter.id)}>\n Rename\n </MenuItem>\n <MenuItem onClick={() => props.onClone(filter.id)}>Clone</MenuItem>\n <MenuItem onClick={() => props.onDelete(filter.id)}>\n Delete\n </MenuItem>\n </Menu>\n </ListActions>\n </ListItemMeta>\n </ListItem>\n ))}\n </List>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_saved_search","_more_vert","_Button","_List","_Tooltip","_Menu","_QueryManagerDialog","_Description","FilterList","exports","props","default","createElement","List","twoLine","nonInteractive","filters","map","filter","ListItem","key","id","ListItemText","ListItemTextPrimary","name","Description","createdOn","description","ListItemMeta","ListActions","Tooltip","content","placement","IconButton","icon","ReactComponent","label","onClick","onSelect","Menu","handle","MenuItem","onEdit","onRename","onClone","onDelete"],"sources":["FilterList.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { ReactComponent as SavedSearchIcon } from \"@material-design-icons/svg/outlined/saved_search.svg\";\nimport { ReactComponent as MoreIcon } from \"@material-design-icons/svg/outlined/more_vert.svg\";\n\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { List, ListItem, ListItemMeta, ListItemText, ListItemTextPrimary } from \"@webiny/ui/List\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { Menu, MenuItem } from \"@webiny/ui/Menu\";\n\nimport { ListActions } from \"../QueryManagerDialog.styled\";\nimport { QueryManagerFilter } from \"../QueryManagerDialog\";\nimport { Description } from \"~/components/AdvancedSearch/QueryManagerDialog/components/Description\";\n\ntype filterCallback = (filterId: string) => void;\n\ninterface FilterListProps {\n onEdit: filterCallback;\n onRename: filterCallback;\n onDelete: filterCallback;\n onSelect: filterCallback;\n onClone: filterCallback;\n filters: QueryManagerFilter[];\n}\n\nexport const FilterList = (props: FilterListProps) => {\n return (\n <List twoLine nonInteractive>\n {props.filters.map(filter => (\n <ListItem key={filter.id}>\n <ListItemText>\n <ListItemTextPrimary>{filter.name}</ListItemTextPrimary>\n <Description createdOn={filter.createdOn}>{filter.description}</Description>\n </ListItemText>\n <ListItemMeta>\n <ListActions>\n <Tooltip content={\"Apply filter\"} placement={\"left\"}>\n <IconButton\n icon={<SavedSearchIcon />}\n label={\"Apply filter\"}\n onClick={() => props.onSelect(filter.id)}\n />\n </Tooltip>\n <Menu handle={<IconButton icon={<MoreIcon />} label={\"Open menu\"} />}>\n <MenuItem onClick={() => props.onEdit(filter.id)}>Edit</MenuItem>\n <MenuItem onClick={() => props.onRename(filter.id)}>\n Rename\n </MenuItem>\n <MenuItem onClick={() => props.onClone(filter.id)}>Clone</MenuItem>\n <MenuItem onClick={() => props.onDelete(filter.id)}>\n Delete\n </MenuItem>\n </Menu>\n </ListActions>\n </ListItemMeta>\n </ListItem>\n ))}\n </List>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_domain","QuerySaverDialogPresenter","exports","_classCallCheck2","default","_defineProperty2","filter","undefined","makeAutoObservable","_createClass2","key","value","load","get","invalidFields","data","name","description","setFilter","_objectSpread3","formWasSubmitted","validateFilter","onSave","onSuccess","onError","result","success","validation","Filter","validate","error","issues","reduce","acc","issue","path","join","message"],"sources":["QuerySaverDialogPresenter.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\n\nimport { Filter, FilterDTO } from \"../domain\";\nimport { FormInvalidFields } from \"@webiny/form\";\n\nexport interface QuerySaverDialogPresenterInterface {\n load(filter: FilterDTO): void;\n setFilter(data: QuerySaverDialogFormData): void;\n onSave(\n onSuccess?: (filter: FilterDTO) => void,\n onError?: (\n filter: FilterDTO,\n invalidFields: QuerySaverDialogViewModel[\"invalidFields\"]\n ) => void\n ): Promise<void>;\n get vm(): {\n invalidFields: QuerySaverDialogViewModel[\"invalidFields\"];\n data: QuerySaverDialogFormData;\n };\n}\n\nexport interface QuerySaverDialogFormData {\n name: string;\n description?: string;\n}\n\nexport interface QuerySaverDialogViewModel {\n filter: FilterDTO | undefined;\n invalidFields: FormInvalidFields;\n}\n\nexport class QuerySaverDialogPresenter implements QuerySaverDialogPresenterInterface {\n private filter: QuerySaverDialogViewModel[\"filter\"];\n private invalidFields: QuerySaverDialogViewModel[\"invalidFields\"] = {};\n private formWasSubmitted = false;\n\n constructor() {\n this.filter = undefined;\n makeAutoObservable(this);\n }\n\n load(filter: FilterDTO) {\n this.filter = filter;\n }\n\n get vm() {\n return {\n invalidFields: this.invalidFields,\n data: {\n name: this.filter?.name || \"\",\n description: this.filter?.description || \"\"\n }\n };\n }\n\n setFilter(data: QuerySaverDialogFormData) {\n if (!this.filter) {\n return;\n }\n\n this.filter = {\n ...this.filter,\n ...data\n };\n\n if (this.formWasSubmitted) {\n this.validateFilter(this.filter);\n }\n }\n\n async onSave(\n onSuccess?: (filter: FilterDTO) => void,\n onError?: (\n filter: FilterDTO,\n invalidFields: QuerySaverDialogViewModel[\"invalidFields\"]\n ) => void\n ) {\n if (!this.filter) {\n return;\n }\n\n const result = this.validateFilter(this.filter);\n if (result.success) {\n onSuccess && onSuccess(this.filter);\n } else {\n onError && onError(this.filter, this.invalidFields);\n }\n }\n\n private validateFilter(data: FilterDTO) {\n this.formWasSubmitted = true;\n const validation = Filter.validate(data);\n\n if (!validation.success) {\n this.invalidFields = validation.error.issues.reduce((acc, issue) => {\n return {\n ...acc,\n [issue.path.join(\".\")]: issue.message\n };\n }, {});\n } else {\n this.invalidFields = {};\n }\n\n return validation;\n }\n}\n"],"mappings":";;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAA8C,IA6BjCE,yBAAyB,GAAAC,OAAA,CAAAD,yBAAA;EAKlC,SAAAA,0BAAA,EAAc;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,yBAAA;IAAA,IAAAI,gBAAA,CAAAD,OAAA,yBAHsD,CAAC,CAAC;IAAA,IAAAC,gBAAA,CAAAD,OAAA,4BAC3C,KAAK;IAG5B,IAAI,CAACE,MAAM,GAAGC,SAAS;IACvB,IAAAC,wBAAkB,EAAC,IAAI,CAAC;EAC5B;EAAC,WAAAC,aAAA,CAAAL,OAAA,EAAAH,yBAAA;IAAAS,GAAA;IAAAC,KAAA,EAED,SAAAC,KAAKN,MAAiB,EAAE;MACpB,IAAI,CAACA,MAAM,GAAGA,MAAM;IACxB;EAAC;IAAAI,GAAA;IAAAG,GAAA,EAED,SAAAA,IAAA,EAAS;MACL,OAAO;QACHC,aAAa,EAAE,IAAI,CAACA,aAAa;QACjCC,IAAI,EAAE;UACFC,IAAI,EAAE,IAAI,CAACV,MAAM,EAAEU,IAAI,IAAI,EAAE;UAC7BC,WAAW,EAAE,IAAI,CAACX,MAAM,EAAEW,WAAW,IAAI;QAC7C;MACJ,CAAC;IACL;EAAC;IAAAP,GAAA;IAAAC,KAAA,EAED,SAAAO,UAAUH,IAA8B,EAAE;MACtC,IAAI,CAAC,IAAI,CAACT,MAAM,EAAE;QACd;MACJ;MAEA,IAAI,CAACA,MAAM,OAAAa,cAAA,CAAAf,OAAA,MAAAe,cAAA,CAAAf,OAAA,MACJ,IAAI,CAACE,MAAM,GACXS,IAAI,CACV;MAED,IAAI,IAAI,CAACK,gBAAgB,EAAE;QACvB,IAAI,CAACC,cAAc,CAAC,IAAI,CAACf,MAAM,CAAC;MACpC;IACJ;EAAC;IAAAI,GAAA;IAAAC,KAAA,EAED,eAAAW,OACIC,SAAuC,EACvCC,OAGS,EACX;MACE,IAAI,CAAC,IAAI,CAAClB,MAAM,EAAE;QACd;MACJ;MAEA,IAAMmB,MAAM,GAAG,IAAI,CAACJ,cAAc,CAAC,IAAI,CAACf,MAAM,CAAC;MAC/C,IAAImB,MAAM,CAACC,OAAO,EAAE;QAChBH,SAAS,IAAIA,SAAS,CAAC,IAAI,CAACjB,MAAM,CAAC;MACvC,CAAC,MAAM;QACHkB,OAAO,IAAIA,OAAO,CAAC,IAAI,CAAClB,MAAM,EAAE,IAAI,CAACQ,aAAa,CAAC;MACvD;IACJ;EAAC;IAAAJ,GAAA;IAAAC,KAAA,EAED,SAAAU,eAAuBN,IAAe,EAAE;MACpC,IAAI,CAACK,gBAAgB,GAAG,IAAI;MAC5B,IAAMO,UAAU,GAAGC,cAAM,CAACC,QAAQ,CAACd,IAAI,CAAC;MAExC,IAAI,CAACY,UAAU,CAACD,OAAO,EAAE;QACrB,IAAI,CAACZ,aAAa,GAAGa,UAAU,CAACG,KAAK,CAACC,MAAM,CAACC,MAAM,CAAC,UAACC,GAAG,EAAEC,KAAK,EAAK;UAChE,WAAAf,cAAA,CAAAf,OAAA,MAAAe,cAAA,CAAAf,OAAA,MACO6B,GAAG,WAAA5B,gBAAA,CAAAD,OAAA,MACL8B,KAAK,CAACC,IAAI,CAACC,IAAI,CAAC,GAAG,CAAC,EAAGF,KAAK,CAACG,OAAO;QAE7C,CAAC,EAAE,CAAC,CAAC,CAAC;MACV,CAAC,MAAM;QACH,IAAI,CAACvB,aAAa,GAAG,CAAC,CAAC;MAC3B;MAEA,OAAOa,UAAU;IACrB;EAAC;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_domain","QuerySaverDialogPresenter","exports","_classCallCheck2","default","_defineProperty2","filter","undefined","makeAutoObservable","_createClass2","key","value","load","get","invalidFields","data","name","description","setFilter","_objectSpread3","formWasSubmitted","validateFilter","onSave","onSuccess","onError","result","success","validation","Filter","validate","error","issues","reduce","acc","issue","path","join","message"],"sources":["QuerySaverDialogPresenter.ts"],"sourcesContent":["import { makeAutoObservable } from \"mobx\";\n\nimport { Filter, FilterDTO } from \"../domain\";\nimport { FormInvalidFields } from \"@webiny/form\";\n\nexport interface QuerySaverDialogPresenterInterface {\n load(filter: FilterDTO): void;\n setFilter(data: QuerySaverDialogFormData): void;\n onSave(\n onSuccess?: (filter: FilterDTO) => void,\n onError?: (\n filter: FilterDTO,\n invalidFields: QuerySaverDialogViewModel[\"invalidFields\"]\n ) => void\n ): Promise<void>;\n get vm(): {\n invalidFields: QuerySaverDialogViewModel[\"invalidFields\"];\n data: QuerySaverDialogFormData;\n };\n}\n\nexport interface QuerySaverDialogFormData {\n name: string;\n description?: string;\n}\n\nexport interface QuerySaverDialogViewModel {\n filter: FilterDTO | undefined;\n invalidFields: FormInvalidFields;\n}\n\nexport class QuerySaverDialogPresenter implements QuerySaverDialogPresenterInterface {\n private filter: QuerySaverDialogViewModel[\"filter\"];\n private invalidFields: QuerySaverDialogViewModel[\"invalidFields\"] = {};\n private formWasSubmitted = false;\n\n constructor() {\n this.filter = undefined;\n makeAutoObservable(this);\n }\n\n load(filter: FilterDTO) {\n this.filter = filter;\n }\n\n get vm() {\n return {\n invalidFields: this.invalidFields,\n data: {\n name: this.filter?.name || \"\",\n description: this.filter?.description || \"\"\n }\n };\n }\n\n setFilter(data: QuerySaverDialogFormData) {\n if (!this.filter) {\n return;\n }\n\n this.filter = {\n ...this.filter,\n ...data\n };\n\n if (this.formWasSubmitted) {\n this.validateFilter(this.filter);\n }\n }\n\n async onSave(\n onSuccess?: (filter: FilterDTO) => void,\n onError?: (\n filter: FilterDTO,\n invalidFields: QuerySaverDialogViewModel[\"invalidFields\"]\n ) => void\n ) {\n if (!this.filter) {\n return;\n }\n\n const result = this.validateFilter(this.filter);\n if (result.success) {\n onSuccess && onSuccess(this.filter);\n } else {\n onError && onError(this.filter, this.invalidFields);\n }\n }\n\n private validateFilter(data: FilterDTO) {\n this.formWasSubmitted = true;\n const validation = Filter.validate(data);\n\n if (!validation.success) {\n this.invalidFields = validation.error.issues.reduce((acc, issue) => {\n return {\n ...acc,\n [issue.path.join(\".\")]: issue.message\n };\n }, {});\n } else {\n this.invalidFields = {};\n }\n\n return validation;\n }\n}\n"],"mappings":";;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAA8C,IA6BjCE,yBAAyB,GAAAC,OAAA,CAAAD,yBAAA;EAKlC,SAAAA,0BAAA,EAAc;IAAA,IAAAE,gBAAA,CAAAC,OAAA,QAAAH,yBAAA;IAAA,IAAAI,gBAAA,CAAAD,OAAA,yBAHsD,CAAC,CAAC;IAAA,IAAAC,gBAAA,CAAAD,OAAA,4BAC3C,KAAK;IAG5B,IAAI,CAACE,MAAM,GAAGC,SAAS;IACvB,IAAAC,wBAAkB,EAAC,IAAI,CAAC;EAC5B;EAAC,WAAAC,aAAA,CAAAL,OAAA,EAAAH,yBAAA;IAAAS,GAAA;IAAAC,KAAA,EAED,SAAAC,IAAIA,CAACN,MAAiB,EAAE;MACpB,IAAI,CAACA,MAAM,GAAGA,MAAM;IACxB;EAAC;IAAAI,GAAA;IAAAG,GAAA,EAED,SAAAA,IAAA,EAAS;MACL,OAAO;QACHC,aAAa,EAAE,IAAI,CAACA,aAAa;QACjCC,IAAI,EAAE;UACFC,IAAI,EAAE,IAAI,CAACV,MAAM,EAAEU,IAAI,IAAI,EAAE;UAC7BC,WAAW,EAAE,IAAI,CAACX,MAAM,EAAEW,WAAW,IAAI;QAC7C;MACJ,CAAC;IACL;EAAC;IAAAP,GAAA;IAAAC,KAAA,EAED,SAAAO,SAASA,CAACH,IAA8B,EAAE;MACtC,IAAI,CAAC,IAAI,CAACT,MAAM,EAAE;QACd;MACJ;MAEA,IAAI,CAACA,MAAM,OAAAa,cAAA,CAAAf,OAAA,MAAAe,cAAA,CAAAf,OAAA,MACJ,IAAI,CAACE,MAAM,GACXS,IAAI,CACV;MAED,IAAI,IAAI,CAACK,gBAAgB,EAAE;QACvB,IAAI,CAACC,cAAc,CAAC,IAAI,CAACf,MAAM,CAAC;MACpC;IACJ;EAAC;IAAAI,GAAA;IAAAC,KAAA,EAED,eAAMW,MAAMA,CACRC,SAAuC,EACvCC,OAGS,EACX;MACE,IAAI,CAAC,IAAI,CAAClB,MAAM,EAAE;QACd;MACJ;MAEA,IAAMmB,MAAM,GAAG,IAAI,CAACJ,cAAc,CAAC,IAAI,CAACf,MAAM,CAAC;MAC/C,IAAImB,MAAM,CAACC,OAAO,EAAE;QAChBH,SAAS,IAAIA,SAAS,CAAC,IAAI,CAACjB,MAAM,CAAC;MACvC,CAAC,MAAM;QACHkB,OAAO,IAAIA,OAAO,CAAC,IAAI,CAAClB,MAAM,EAAE,IAAI,CAACQ,aAAa,CAAC;MACvD;IACJ;EAAC;IAAAJ,GAAA;IAAAC,KAAA,EAED,SAAQU,cAAcA,CAACN,IAAe,EAAE;MACpC,IAAI,CAACK,gBAAgB,GAAG,IAAI;MAC5B,IAAMO,UAAU,GAAGC,cAAM,CAACC,QAAQ,CAACd,IAAI,CAAC;MAExC,IAAI,CAACY,UAAU,CAACD,OAAO,EAAE;QACrB,IAAI,CAACZ,aAAa,GAAGa,UAAU,CAACG,KAAK,CAACC,MAAM,CAACC,MAAM,CAAC,UAACC,GAAG,EAAEC,KAAK,EAAK;UAChE,WAAAf,cAAA,CAAAf,OAAA,MAAAe,cAAA,CAAAf,OAAA,MACO6B,GAAG,WAAA5B,gBAAA,CAAAD,OAAA,MACL8B,KAAK,CAACC,IAAI,CAACC,IAAI,CAAC,GAAG,CAAC,EAAGF,KAAK,CAACG,OAAO;QAE7C,CAAC,EAAE,CAAC,CAAC,CAAC;MACV,CAAC,MAAM;QACH,IAAI,CAACvB,aAAa,GAAG,CAAC,CAAC;MAC3B;MAEA,OAAOa,UAAU;IACrB;EAAC;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["FieldType","exports","Field","label","value","type","conditions","predefined","settings","_classCallCheck2","default","_createClass2","key","createFromRaw","fieldRaw","Value","createFromField","Type","Condition","Predefined","Settings","rawData","REF","concat","id","createFrom","field","_this","createConditions","map","condition","predefinedValues","enabled","_this2","rawPredefined","values","DATETIME_WITH_TIMEZONE","DATETIME_WITHOUT_TIMEZONE","PREDEFINED_VALUES","TIME","DATE","BOOLEAN","NUMBER","TEXT","modelIds","models","model","modelId"],"sources":["Field.ts"],"sourcesContent":["import { CmsModelField } from \"@webiny/app-headless-cms-common/types/model\";\n\nexport type FieldRaw = Pick<\n CmsModelField,\n \"id\" | \"type\" | \"label\" | \"multipleValues\" | \"predefinedValues\" | \"settings\"\n>;\n\nexport enum FieldType {\n TEXT = \"text\",\n NUMBER = \"number\",\n BOOLEAN = \"boolean\",\n DATE = \"date\",\n TIME = \"time\",\n DATETIME_WITH_TIMEZONE = \"dateTimeWithTimezone\",\n DATETIME_WITHOUT_TIMEZONE = \"dateTimeWithoutTimezone\",\n PREDEFINED_VALUES = \"predefinedValues\",\n REF = \"ref\"\n}\n\nexport interface ConditionDTO {\n label: string;\n value: string;\n}\n\nexport interface PredefinedDTO {\n label: string;\n value: string;\n}\n\nexport interface SettingsDTO {\n modelIds: string[];\n}\n\nexport interface FieldDTO {\n label: string;\n value: string;\n conditions: ConditionDTO[];\n type: FieldType;\n predefined: PredefinedDTO[];\n settings: SettingsDTO;\n}\n\nexport interface FieldDTOWithElement extends FieldDTO {\n element: React.ReactElement | null;\n}\n\nexport class Field {\n public readonly label: string;\n public readonly value: Value;\n public readonly type: Type;\n public readonly conditions: Condition[];\n public readonly predefined: Predefined[];\n public readonly settings: Settings;\n\n static createFromRaw(fieldRaw: FieldRaw) {\n const label = fieldRaw.label;\n const value = Value.createFromField(fieldRaw);\n const type = Type.createFromField(fieldRaw);\n const conditions = Condition.createFromField(fieldRaw);\n const predefined = Predefined.createFromField(fieldRaw);\n const settings = Settings.createFromField(fieldRaw);\n\n return new Field(label, value, type, conditions, predefined, settings);\n }\n\n private constructor(\n label: string,\n value: Value,\n type: Type,\n conditions: Condition[],\n predefined: Predefined[],\n settings: Settings\n ) {\n this.label = label;\n this.value = value;\n this.type = type;\n this.predefined = predefined;\n this.conditions = conditions;\n this.settings = settings;\n }\n}\n\nexport class Value {\n public readonly value: string;\n\n static createFromField(rawData: FieldRaw) {\n if (rawData.type === FieldType.REF) {\n return new Value(`${rawData.id}.entryId`);\n }\n\n return new Value(rawData.id);\n }\n\n private constructor(value: string) {\n this.value = value;\n }\n}\n\nexport class Condition {\n public readonly label: string;\n public readonly value: string;\n\n static createFrom(rawData: ConditionDTO) {\n return new Condition(rawData.label, rawData.value);\n }\n\n static createFromField(field: FieldRaw) {\n const createConditions = (conditions: { label: string; value: string }[]) => {\n return conditions.map(condition => this.createFrom(condition));\n };\n\n switch (field.type) {\n case \"text\":\n if (field.predefinedValues?.enabled) {\n return createConditions([\n { label: \"is equal to\", value: \" \" },\n { label: \"is not equal to\", value: \"_not\" }\n ]);\n }\n\n return createConditions([\n { label: \"is equal to\", value: \" \" },\n { label: \"contains\", value: \"_contains\" },\n { label: \"starts with\", value: \"_startsWith\" },\n { label: \"is not equal to\", value: \"_not\" },\n { label: \"doesn't contain\", value: \"_not_contains\" },\n { label: \"doesn't start with\", value: \"_not_startsWith\" }\n ]);\n\n case \"long-text\":\n return createConditions([\n { label: \"contains\", value: \"_contains\" },\n { label: \"doesn't contain\", value: \"_not_contains\" }\n ]);\n\n case \"boolean\":\n return createConditions([\n { label: \"is equal to\", value: \" \" },\n { label: \"is not equal to\", value: \"_not\" }\n ]);\n\n case \"number\":\n return createConditions([\n { label: \"is equal to\", value: \" \" },\n { label: \"is not equal to\", value: \"_not\" },\n { label: \"is less than\", value: \"_lt\" },\n { label: \"is less or equal to\", value: \"_lte\" },\n { label: \"is greater than\", value: \"_gt\" },\n { label: \"is greater or equal to\", value: \"_gte\" }\n ]);\n\n case \"datetime\":\n return createConditions([\n { label: \"is equal to\", value: \" \" },\n { label: \"is not equal to\", value: \"_not\" },\n { label: \"is before\", value: \"_lt\" },\n { label: \"is before or equal to\", value: \"_lte\" },\n { label: \"is after\", value: \"_gt\" },\n { label: \"is after or equal to\", value: \"_gte\" }\n ]);\n\n case \"ref\":\n return createConditions([\n { label: \"contains\", value: \" \" },\n { label: \"doesn't contain\", value: \"_not\" }\n ]);\n\n default:\n return [];\n }\n }\n\n private constructor(label: string, value: string) {\n this.label = label;\n this.value = value;\n }\n}\n\nexport class Predefined {\n public readonly label: string;\n public readonly value: string;\n\n static createFrom(rawData: PredefinedDTO) {\n return new Predefined(rawData.label, rawData.value);\n }\n\n static createFromField(field: FieldRaw) {\n const rawPredefined = field.predefinedValues?.values || [];\n return rawPredefined.map(predefined => this.createFrom(predefined));\n }\n\n private constructor(label: string, value: string) {\n this.label = label;\n this.value = value;\n }\n}\n\nexport class Type {\n public readonly value: FieldType;\n\n static createFromField(rawData: FieldRaw) {\n if (rawData.settings?.type === FieldType.DATETIME_WITH_TIMEZONE) {\n return new Type(FieldType.DATETIME_WITH_TIMEZONE);\n }\n\n if (rawData.settings?.type === FieldType.DATETIME_WITHOUT_TIMEZONE) {\n return new Type(FieldType.DATETIME_WITHOUT_TIMEZONE);\n }\n\n if (rawData.predefinedValues?.enabled) {\n return new Type(FieldType.PREDEFINED_VALUES);\n }\n\n if (rawData.type === \"datetime\") {\n const value =\n rawData.settings?.type === FieldType.TIME ? FieldType.TIME : FieldType.DATE;\n return new Type(value);\n }\n\n if (rawData.type === FieldType.BOOLEAN) {\n return new Type(FieldType.BOOLEAN);\n }\n\n if (rawData.type === FieldType.NUMBER) {\n return new Type(FieldType.NUMBER);\n }\n\n if (rawData.type === FieldType.REF) {\n return new Type(FieldType.REF);\n }\n\n return new Type(FieldType.TEXT);\n }\n\n private constructor(value: FieldType) {\n this.value = value;\n }\n}\n\nexport class Settings {\n public readonly modelIds: string[];\n\n static createFromField(rawData: FieldRaw) {\n const modelIds = rawData.settings?.models?.map(model => model.modelId) || [];\n return new Settings(modelIds);\n }\n\n private constructor(modelIds: string[]) {\n this.modelIds = modelIds;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["FieldType","exports","Field","label","value","type","conditions","predefined","settings","_classCallCheck2","default","_createClass2","key","createFromRaw","fieldRaw","Value","createFromField","Type","Condition","Predefined","Settings","rawData","REF","concat","id","createFrom","field","_this","createConditions","map","condition","predefinedValues","enabled","_this2","rawPredefined","values","DATETIME_WITH_TIMEZONE","DATETIME_WITHOUT_TIMEZONE","PREDEFINED_VALUES","TIME","DATE","BOOLEAN","NUMBER","TEXT","modelIds","models","model","modelId"],"sources":["Field.ts"],"sourcesContent":["import { CmsModelField } from \"@webiny/app-headless-cms-common/types/model\";\n\nexport type FieldRaw = Pick<\n CmsModelField,\n \"id\" | \"type\" | \"label\" | \"multipleValues\" | \"predefinedValues\" | \"settings\"\n>;\n\nexport enum FieldType {\n TEXT = \"text\",\n NUMBER = \"number\",\n BOOLEAN = \"boolean\",\n DATE = \"date\",\n TIME = \"time\",\n DATETIME_WITH_TIMEZONE = \"dateTimeWithTimezone\",\n DATETIME_WITHOUT_TIMEZONE = \"dateTimeWithoutTimezone\",\n PREDEFINED_VALUES = \"predefinedValues\",\n REF = \"ref\"\n}\n\nexport interface ConditionDTO {\n label: string;\n value: string;\n}\n\nexport interface PredefinedDTO {\n label: string;\n value: string;\n}\n\nexport interface SettingsDTO {\n modelIds: string[];\n}\n\nexport interface FieldDTO {\n label: string;\n value: string;\n conditions: ConditionDTO[];\n type: FieldType;\n predefined: PredefinedDTO[];\n settings: SettingsDTO;\n}\n\nexport interface FieldDTOWithElement extends FieldDTO {\n element: React.ReactElement | null;\n}\n\nexport class Field {\n public readonly label: string;\n public readonly value: Value;\n public readonly type: Type;\n public readonly conditions: Condition[];\n public readonly predefined: Predefined[];\n public readonly settings: Settings;\n\n static createFromRaw(fieldRaw: FieldRaw) {\n const label = fieldRaw.label;\n const value = Value.createFromField(fieldRaw);\n const type = Type.createFromField(fieldRaw);\n const conditions = Condition.createFromField(fieldRaw);\n const predefined = Predefined.createFromField(fieldRaw);\n const settings = Settings.createFromField(fieldRaw);\n\n return new Field(label, value, type, conditions, predefined, settings);\n }\n\n private constructor(\n label: string,\n value: Value,\n type: Type,\n conditions: Condition[],\n predefined: Predefined[],\n settings: Settings\n ) {\n this.label = label;\n this.value = value;\n this.type = type;\n this.predefined = predefined;\n this.conditions = conditions;\n this.settings = settings;\n }\n}\n\nexport class Value {\n public readonly value: string;\n\n static createFromField(rawData: FieldRaw) {\n if (rawData.type === FieldType.REF) {\n return new Value(`${rawData.id}.entryId`);\n }\n\n return new Value(rawData.id);\n }\n\n private constructor(value: string) {\n this.value = value;\n }\n}\n\nexport class Condition {\n public readonly label: string;\n public readonly value: string;\n\n static createFrom(rawData: ConditionDTO) {\n return new Condition(rawData.label, rawData.value);\n }\n\n static createFromField(field: FieldRaw) {\n const createConditions = (conditions: { label: string; value: string }[]) => {\n return conditions.map(condition => this.createFrom(condition));\n };\n\n switch (field.type) {\n case \"text\":\n if (field.predefinedValues?.enabled) {\n return createConditions([\n { label: \"is equal to\", value: \" \" },\n { label: \"is not equal to\", value: \"_not\" }\n ]);\n }\n\n return createConditions([\n { label: \"is equal to\", value: \" \" },\n { label: \"contains\", value: \"_contains\" },\n { label: \"starts with\", value: \"_startsWith\" },\n { label: \"is not equal to\", value: \"_not\" },\n { label: \"doesn't contain\", value: \"_not_contains\" },\n { label: \"doesn't start with\", value: \"_not_startsWith\" }\n ]);\n\n case \"long-text\":\n return createConditions([\n { label: \"contains\", value: \"_contains\" },\n { label: \"doesn't contain\", value: \"_not_contains\" }\n ]);\n\n case \"boolean\":\n return createConditions([\n { label: \"is equal to\", value: \" \" },\n { label: \"is not equal to\", value: \"_not\" }\n ]);\n\n case \"number\":\n return createConditions([\n { label: \"is equal to\", value: \" \" },\n { label: \"is not equal to\", value: \"_not\" },\n { label: \"is less than\", value: \"_lt\" },\n { label: \"is less or equal to\", value: \"_lte\" },\n { label: \"is greater than\", value: \"_gt\" },\n { label: \"is greater or equal to\", value: \"_gte\" }\n ]);\n\n case \"datetime\":\n return createConditions([\n { label: \"is equal to\", value: \" \" },\n { label: \"is not equal to\", value: \"_not\" },\n { label: \"is before\", value: \"_lt\" },\n { label: \"is before or equal to\", value: \"_lte\" },\n { label: \"is after\", value: \"_gt\" },\n { label: \"is after or equal to\", value: \"_gte\" }\n ]);\n\n case \"ref\":\n return createConditions([\n { label: \"contains\", value: \" \" },\n { label: \"doesn't contain\", value: \"_not\" }\n ]);\n\n default:\n return [];\n }\n }\n\n private constructor(label: string, value: string) {\n this.label = label;\n this.value = value;\n }\n}\n\nexport class Predefined {\n public readonly label: string;\n public readonly value: string;\n\n static createFrom(rawData: PredefinedDTO) {\n return new Predefined(rawData.label, rawData.value);\n }\n\n static createFromField(field: FieldRaw) {\n const rawPredefined = field.predefinedValues?.values || [];\n return rawPredefined.map(predefined => this.createFrom(predefined));\n }\n\n private constructor(label: string, value: string) {\n this.label = label;\n this.value = value;\n }\n}\n\nexport class Type {\n public readonly value: FieldType;\n\n static createFromField(rawData: FieldRaw) {\n if (rawData.settings?.type === FieldType.DATETIME_WITH_TIMEZONE) {\n return new Type(FieldType.DATETIME_WITH_TIMEZONE);\n }\n\n if (rawData.settings?.type === FieldType.DATETIME_WITHOUT_TIMEZONE) {\n return new Type(FieldType.DATETIME_WITHOUT_TIMEZONE);\n }\n\n if (rawData.predefinedValues?.enabled) {\n return new Type(FieldType.PREDEFINED_VALUES);\n }\n\n if (rawData.type === \"datetime\") {\n const value =\n rawData.settings?.type === FieldType.TIME ? FieldType.TIME : FieldType.DATE;\n return new Type(value);\n }\n\n if (rawData.type === FieldType.BOOLEAN) {\n return new Type(FieldType.BOOLEAN);\n }\n\n if (rawData.type === FieldType.NUMBER) {\n return new Type(FieldType.NUMBER);\n }\n\n if (rawData.type === FieldType.REF) {\n return new Type(FieldType.REF);\n }\n\n return new Type(FieldType.TEXT);\n }\n\n private constructor(value: FieldType) {\n this.value = value;\n }\n}\n\nexport class Settings {\n public readonly modelIds: string[];\n\n static createFromField(rawData: FieldRaw) {\n const modelIds = rawData.settings?.models?.map(model => model.modelId) || [];\n return new Settings(modelIds);\n }\n\n private constructor(modelIds: string[]) {\n this.modelIds = modelIds;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["FieldMapper","exports","_classCallCheck2","default","_createClass2","key","value","toDTO","configuration","map","field","label","ValueMapper","conditions","ConditionMapper","predefined","PredefinedMapper","type","TypeMapper","settings","SettingsMapper","condition","predefineds","modelIds"],"sources":["FieldMapper.ts"],"sourcesContent":["import {\n Condition,\n ConditionDTO,\n Field,\n FieldDTO,\n Predefined,\n PredefinedDTO,\n Type,\n FieldType,\n Value,\n Settings,\n SettingsDTO\n} from \"./Field\";\n\nexport class FieldMapper {\n static toDTO(configuration: Field[]): FieldDTO[] {\n return configuration.map(field => {\n return {\n label: field.label,\n value: ValueMapper.toDTO(field.value),\n conditions: ConditionMapper.toDTO(field.conditions),\n predefined: PredefinedMapper.toDTO(field.predefined),\n type: TypeMapper.toDTO(field.type),\n settings: SettingsMapper.toDTO(field.settings)\n };\n });\n }\n}\n\nexport class ValueMapper {\n static toDTO(value: Value): string {\n return value.value;\n }\n}\n\nexport class ConditionMapper {\n static toDTO(conditions: Condition[]): ConditionDTO[] {\n return conditions.map(condition => ({\n value: condition.value || \"\",\n label: condition.label || \"\"\n }));\n }\n}\n\nexport class PredefinedMapper {\n static toDTO(predefineds: Predefined[]): PredefinedDTO[] {\n return predefineds.map(predefined => ({\n value: predefined.value || \"\",\n label: predefined.label || \"\"\n }));\n }\n}\n\nexport class TypeMapper {\n static toDTO(type: Type): FieldType {\n return type.value;\n }\n}\n\nexport class SettingsMapper {\n static toDTO(settings: Settings): SettingsDTO {\n return {\n modelIds: settings.modelIds\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["FieldMapper","exports","_classCallCheck2","default","_createClass2","key","value","toDTO","configuration","map","field","label","ValueMapper","conditions","ConditionMapper","predefined","PredefinedMapper","type","TypeMapper","settings","SettingsMapper","condition","predefineds","modelIds"],"sources":["FieldMapper.ts"],"sourcesContent":["import {\n Condition,\n ConditionDTO,\n Field,\n FieldDTO,\n Predefined,\n PredefinedDTO,\n Type,\n FieldType,\n Value,\n Settings,\n SettingsDTO\n} from \"./Field\";\n\nexport class FieldMapper {\n static toDTO(configuration: Field[]): FieldDTO[] {\n return configuration.map(field => {\n return {\n label: field.label,\n value: ValueMapper.toDTO(field.value),\n conditions: ConditionMapper.toDTO(field.conditions),\n predefined: PredefinedMapper.toDTO(field.predefined),\n type: TypeMapper.toDTO(field.type),\n settings: SettingsMapper.toDTO(field.settings)\n };\n });\n }\n}\n\nexport class ValueMapper {\n static toDTO(value: Value): string {\n return value.value;\n }\n}\n\nexport class ConditionMapper {\n static toDTO(conditions: Condition[]): ConditionDTO[] {\n return conditions.map(condition => ({\n value: condition.value || \"\",\n label: condition.label || \"\"\n }));\n }\n}\n\nexport class PredefinedMapper {\n static toDTO(predefineds: Predefined[]): PredefinedDTO[] {\n return predefineds.map(predefined => ({\n value: predefined.value || \"\",\n label: predefined.label || \"\"\n }));\n }\n}\n\nexport class TypeMapper {\n static toDTO(type: Type): FieldType {\n return type.value;\n }\n}\n\nexport class SettingsMapper {\n static toDTO(settings: Settings): SettingsDTO {\n return {\n modelIds: settings.modelIds\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}