@webiny/app-aco 5.38.0-beta.0 → 5.38.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/components/AdvancedSearch/AdvancedSearch.d.ts +3 -3
  2. package/components/AdvancedSearch/AdvancedSearch.js +4 -11
  3. package/components/AdvancedSearch/AdvancedSearch.js.map +1 -1
  4. package/components/AdvancedSearch/GraphQLInputMapper.d.ts +2 -1
  5. package/components/AdvancedSearch/GraphQLInputMapper.js +13 -1
  6. package/components/AdvancedSearch/GraphQLInputMapper.js.map +1 -1
  7. package/components/AdvancedSearch/GraphQLInputMapper.test.js +12 -0
  8. package/components/AdvancedSearch/GraphQLInputMapper.test.js.map +1 -1
  9. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/fields/Boolean.js +9 -6
  10. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilder/components/fields/Boolean.js.map +1 -1
  11. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawer.js +3 -4
  12. package/components/AdvancedSearch/QueryBuilderDrawer/QueryBuilderDrawer.js.map +1 -1
  13. package/components/AdvancedSearch/QueryManagerDialog/components/Description.js +2 -4
  14. package/components/AdvancedSearch/QueryManagerDialog/components/Description.js.map +1 -1
  15. package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialog.js +3 -4
  16. package/components/AdvancedSearch/QuerySaverDialog/QuerySaverDialog.js.map +1 -1
  17. package/components/AdvancedSearch/domain/Filter.d.ts +18 -18
  18. package/components/AdvancedSearch/domain/FilterMapper.js +4 -2
  19. package/components/AdvancedSearch/domain/FilterMapper.js.map +1 -1
  20. package/components/AdvancedSearch/domain/FilterRepository.d.ts +0 -2
  21. package/components/AdvancedSearch/domain/FilterRepository.js +0 -8
  22. package/components/AdvancedSearch/domain/FilterRepository.js.map +1 -1
  23. package/components/AdvancedSearch/domain/FilterRepositoryFactory.d.ts +9 -0
  24. package/components/AdvancedSearch/domain/FilterRepositoryFactory.js +35 -0
  25. package/components/AdvancedSearch/domain/FilterRepositoryFactory.js.map +1 -0
  26. package/components/AdvancedSearch/domain/index.d.ts +1 -0
  27. package/components/AdvancedSearch/domain/index.js +11 -0
  28. package/components/AdvancedSearch/domain/index.js.map +1 -1
  29. package/components/AdvancedSearch/index.d.ts +1 -0
  30. package/components/AdvancedSearch/index.js +11 -0
  31. package/components/AdvancedSearch/index.js.map +1 -1
  32. package/components/AdvancedSearch/useFilterRepository.d.ts +1 -0
  33. package/components/AdvancedSearch/useFilterRepository.js +15 -0
  34. package/components/AdvancedSearch/useFilterRepository.js.map +1 -0
  35. package/components/Dialogs/DialogSetPermissions/graphql.js +1 -1
  36. package/components/Dialogs/DialogSetPermissions/graphql.js.map +1 -1
  37. package/components/FolderGrid/Folder.js +3 -2
  38. package/components/FolderGrid/Folder.js.map +1 -1
  39. package/components/FolderGrid/styled.d.ts +1 -1
  40. package/components/FolderTree/ButtonCreate/index.d.ts +1 -0
  41. package/components/FolderTree/ButtonCreate/index.js +4 -2
  42. package/components/FolderTree/ButtonCreate/index.js.map +1 -1
  43. package/components/FolderTree/ButtonCreate/styled.js +1 -1
  44. package/components/FolderTree/ButtonCreate/styled.js.map +1 -1
  45. package/components/FolderTree/List/index.js +7 -2
  46. package/components/FolderTree/List/index.js.map +1 -1
  47. package/components/FolderTree/MenuActions/index.js +5 -0
  48. package/components/FolderTree/MenuActions/index.js.map +1 -1
  49. package/components/FolderTree/index.js +20 -11
  50. package/components/FolderTree/index.js.map +1 -1
  51. package/contexts/FoldersApi/FoldersApiProvider.d.ts +1 -1
  52. package/contexts/FoldersApi/FoldersApiProvider.js +3 -1
  53. package/contexts/FoldersApi/FoldersApiProvider.js.map +1 -1
  54. package/contexts/folders.d.ts +6 -0
  55. package/contexts/folders.js +33 -1
  56. package/contexts/folders.js.map +1 -1
  57. package/graphql/folders.gql.js +1 -1
  58. package/graphql/folders.gql.js.map +1 -1
  59. package/hooks/useFolders.d.ts +2 -1
  60. package/package.json +15 -15
  61. package/sorting.js +1 -1
  62. package/sorting.js.map +1 -1
  63. package/types.d.ts +3 -1
  64. package/types.js.map +1 -1
@@ -1,11 +1,11 @@
1
1
  /// <reference types="react" />
2
- import { FieldRaw, FilterDTO } from "./domain";
2
+ import { FieldRaw, FilterDTO, FilterRepository } from "./domain";
3
3
  interface AdvancedSearchProps {
4
4
  fields: FieldRaw[];
5
- namespace: string;
5
+ repository: FilterRepository;
6
6
  onApplyFilter: (data: FilterDTO | null) => void;
7
7
  }
8
- export declare const AdvancedSearch: (({ fields, namespace, onApplyFilter }: AdvancedSearchProps) => JSX.Element) & {
8
+ export declare const AdvancedSearch: (({ fields, repository, onApplyFilter }: AdvancedSearchProps) => JSX.Element) & {
9
9
  displayName: string;
10
10
  };
11
11
  export {};
@@ -8,12 +8,9 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.AdvancedSearch = void 0;
9
9
  var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
10
10
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
11
  var _react = _interopRequireWildcard(require("react"));
13
12
  var _mobxReactLite = require("mobx-react-lite");
14
- var _reactHooks = require("@apollo/react-hooks");
15
13
  var _domain = require("./domain");
16
- var _gateways = require("./gateways");
17
14
  var _AdvancedSearchPresenter = require("./AdvancedSearchPresenter");
18
15
  var _Button = require("./Button");
19
16
  var _Feedback = require("./Feedback");
@@ -24,15 +21,11 @@ var _SelectedFilter = require("./SelectedFilter");
24
21
  var _AdvancedSearch = require("./AdvancedSearch.styled");
25
22
  var AdvancedSearch = (0, _mobxReactLite.observer)(function (_ref) {
26
23
  var fields = _ref.fields,
27
- namespace = _ref.namespace,
24
+ repository = _ref.repository,
28
25
  onApplyFilter = _ref.onApplyFilter;
29
- var client = (0, _reactHooks.useApolloClient)();
30
- var _useState = (0, _react.useState)(_domain.FilterRepository.getInstance(new _gateways.FiltersGraphQLGateway(client), namespace)),
31
- _useState2 = (0, _slicedToArray2.default)(_useState, 1),
32
- repository = _useState2[0];
33
- var _useState3 = (0, _react.useState)(new _AdvancedSearchPresenter.AdvancedSearchPresenter(repository)),
34
- _useState4 = (0, _slicedToArray2.default)(_useState3, 1),
35
- presenter = _useState4[0];
26
+ var presenter = (0, _react.useMemo)(function () {
27
+ return new _AdvancedSearchPresenter.AdvancedSearchPresenter(repository);
28
+ }, [_domain.FilterRepository]);
36
29
  (0, _react.useEffect)(function () {
37
30
  presenter.load();
38
31
  }, []);
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_mobxReactLite","_reactHooks","_domain","_gateways","_AdvancedSearchPresenter","_Button","_Feedback","_QueryManagerDialog","_QueryBuilderDrawer","_QuerySaverDialog","_SelectedFilter","_AdvancedSearch","AdvancedSearch","observer","_ref","fields","namespace","onApplyFilter","client","useApolloClient","_useState","useState","FilterRepository","getInstance","FiltersGraphQLGateway","_useState2","_slicedToArray2","default","repository","_useState3","AdvancedSearchPresenter","_useState4","presenter","useEffect","load","applyFilter","_ref2","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","filter","wrap","_callee$","_context","prev","next","vm","appliedFilter","stop","_x","apply","arguments","unsetFilter","deleteFilter","_ref3","_callee2","filterId","_presenter$vm$applied","_callee2$","_context2","id","_x2","persistAndApplyFilter","_ref4","_callee3","_callee3$","_context3","persistFilter","_x3","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","exports"],"sources":["AdvancedSearch.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\n\nimport { FieldRaw, FilterDTO, FilterRepository } from \"./domain\";\nimport { FiltersGraphQLGateway } from \"./gateways\";\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\";\n\ninterface AdvancedSearchProps {\n fields: FieldRaw[];\n namespace: string;\n onApplyFilter: (data: FilterDTO | null) => void;\n}\n\nexport const AdvancedSearch = observer(\n ({ fields, namespace, onApplyFilter }: AdvancedSearchProps) => {\n const client = useApolloClient();\n\n const [repository] = useState(\n FilterRepository.getInstance(new FiltersGraphQLGateway(client), namespace)\n );\n const [presenter] = useState<AdvancedSearchPresenter>(\n new AdvancedSearchPresenter(repository)\n );\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 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={fields}\n onClose={() => presenter.closeBuilder()}\n onSave={filter => presenter.saveFilter(filter)}\n onApply={applyFilter}\n onValidationError={message => presenter.showFeedback(message)}\n filter={presenter.vm.currentFilter}\n vm={presenter.vm.builderVm}\n />\n <QuerySaverDialog\n onSave={persistAndApplyFilter}\n onClose={() => presenter.closeSaver()}\n filter={presenter.vm.currentFilter}\n vm={presenter.vm.saverVm}\n />\n </>\n ) : null}\n <Feedback\n isOpen={presenter.vm.feedbackVm.isOpen}\n message={presenter.vm.feedbackVm.message}\n />\n </>\n );\n }\n);\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_mobxReactLite","_domain","_AdvancedSearchPresenter","_Button","_Feedback","_QueryManagerDialog","_QueryBuilderDrawer","_QuerySaverDialog","_SelectedFilter","_AdvancedSearch","AdvancedSearch","observer","_ref","fields","repository","onApplyFilter","presenter","useMemo","AdvancedSearchPresenter","FilterRepository","useEffect","load","applyFilter","_ref2","_asyncToGenerator2","default","_regeneratorRuntime2","mark","_callee","filter","wrap","_callee$","_context","prev","next","vm","appliedFilter","stop","_x","apply","arguments","unsetFilter","deleteFilter","_ref3","_callee2","filterId","_presenter$vm$applied","_callee2$","_context2","id","_x2","persistAndApplyFilter","_ref4","_callee3","_callee3$","_context3","persistFilter","_x3","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","exports"],"sources":["AdvancedSearch.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from \"react\";\nimport { observer } from \"mobx-react-lite\";\n\nimport { 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\";\n\ninterface 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 presenter = useMemo<AdvancedSearchPresenter>(() => {\n return new AdvancedSearchPresenter(repository);\n }, [FilterRepository]);\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 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={fields}\n onClose={() => presenter.closeBuilder()}\n onSave={filter => presenter.saveFilter(filter)}\n onApply={applyFilter}\n onValidationError={message => presenter.showFeedback(message)}\n filter={presenter.vm.currentFilter}\n vm={presenter.vm.builderVm}\n />\n <QuerySaverDialog\n onSave={persistAndApplyFilter}\n onClose={() => presenter.closeSaver()}\n filter={presenter.vm.currentFilter}\n vm={presenter.vm.saverVm}\n />\n </>\n ) : null}\n <Feedback\n isOpen={presenter.vm.feedbackVm.isOpen}\n message={presenter.vm.feedbackVm.message}\n />\n </>\n );\n }\n);\n"],"mappings":"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"}
@@ -3,8 +3,9 @@ export declare class GraphQLInputMapper {
3
3
  static toGraphQL(configuration: FilterDTO): {
4
4
  [x: string]: {
5
5
  [x: string]: {
6
- [x: string]: string;
6
+ [x: string]: string | boolean;
7
7
  }[];
8
8
  }[];
9
9
  };
10
+ private static convertToBooleanOrString;
10
11
  }
@@ -15,16 +15,28 @@ var GraphQLInputMapper = /*#__PURE__*/function () {
15
15
  (0, _createClass2.default)(GraphQLInputMapper, null, [{
16
16
  key: "toGraphQL",
17
17
  value: function toGraphQL(configuration) {
18
+ var _this = this;
18
19
  return (0, _defineProperty2.default)({}, configuration.operation, configuration.groups.map(function (group) {
19
20
  return (0, _defineProperty2.default)({}, group.operation, group.filters.map(function (filter) {
20
21
  var field = filter.field,
21
22
  condition = filter.condition,
22
23
  value = filter.value;
23
24
  var key = "".concat(field).concat(condition).trim();
24
- return (0, _defineProperty2.default)({}, key, value);
25
+ return (0, _defineProperty2.default)({}, key, _this.convertToBooleanOrString(value));
25
26
  }));
26
27
  }));
27
28
  }
29
+ }, {
30
+ key: "convertToBooleanOrString",
31
+ value: function convertToBooleanOrString(value) {
32
+ if (value === "true") {
33
+ return true;
34
+ }
35
+ if (value === "false") {
36
+ return false;
37
+ }
38
+ return value !== null && value !== void 0 ? value : "";
39
+ }
28
40
  }]);
29
41
  return GraphQLInputMapper;
30
42
  }();
@@ -1 +1 @@
1
- {"version":3,"names":["GraphQLInputMapper","_classCallCheck2","default","_createClass2","key","value","toGraphQL","configuration","_defineProperty2","operation","groups","map","group","filters","filter","field","condition","concat","trim","exports"],"sources":["GraphQLInputMapper.ts"],"sourcesContent":["import { FilterDTO } from \"~/components/AdvancedSearch/domain\";\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 const key = `${field}${condition}`.trim();\n\n return { [key]: value };\n })\n };\n })\n };\n }\n}\n"],"mappings":";;;;;;;;;;IAEaA,kBAAkB;EAAA,SAAAA,mBAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAF,kBAAA;EAAA;EAAA,IAAAG,aAAA,CAAAD,OAAA,EAAAF,kBAAA;IAAAI,GAAA;IAAAC,KAAA,EAC3B,SAAAC,UAAiBC,aAAwB,EAAE;MACvC,WAAAC,gBAAA,CAAAN,OAAA,MACKK,aAAa,CAACE,SAAS,EAAGF,aAAa,CAACG,MAAM,CAACC,GAAG,CAAC,UAAAC,KAAK,EAAI;QACzD,WAAAJ,gBAAA,CAAAN,OAAA,MACKU,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;YAAEX,KAAK,GAAKS,MAAM,CAAhBT,KAAK;UAC/B,IAAMD,GAAG,GAAG,GAAAa,MAAA,CAAGF,KAAK,EAAAE,MAAA,CAAGD,SAAS,EAAGE,IAAI,CAAC,CAAC;UAEzC,WAAAV,gBAAA,CAAAN,OAAA,MAAUE,GAAG,EAAGC,KAAK;QACzB,CAAC,CAAC;MAEV,CAAC,CAAC;IAEV;EAAC;EAAA,OAAAL,kBAAA;AAAA;AAAAmB,OAAA,CAAAnB,kBAAA,GAAAA,kBAAA"}
1
+ {"version":3,"names":["GraphQLInputMapper","_classCallCheck2","default","_createClass2","key","value","toGraphQL","configuration","_this","_defineProperty2","operation","groups","map","group","filters","filter","field","condition","concat","trim","convertToBooleanOrString","exports"],"sources":["GraphQLInputMapper.ts"],"sourcesContent":["import { FilterDTO } from \"~/components/AdvancedSearch/domain\";\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 const key = `${field}${condition}`.trim();\n\n return { [key]: this.convertToBooleanOrString(value) };\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"],"mappings":";;;;;;;;;;IAEaA,kBAAkB;EAAA,SAAAA,mBAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAF,kBAAA;EAAA;EAAA,IAAAG,aAAA,CAAAD,OAAA,EAAAF,kBAAA;IAAAI,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;UAC/B,IAAMD,GAAG,GAAG,GAAAc,MAAA,CAAGF,KAAK,EAAAE,MAAA,CAAGD,SAAS,EAAGE,IAAI,CAAC,CAAC;UAEzC,WAAAV,gBAAA,CAAAP,OAAA,MAAUE,GAAG,EAAGI,KAAI,CAACY,wBAAwB,CAACf,KAAK,CAAC;QACxD,CAAC,CAAC;MAEV,CAAC,CAAC;IAEV;EAAC;IAAAD,GAAA;IAAAC,KAAA,EAED,SAAAe,yBAAwCf,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,aAALA,KAAK,cAALA,KAAK,GAAI,EAAE;IACtB;EAAC;EAAA,OAAAL,kBAAA;AAAA;AAAAqB,OAAA,CAAArB,kBAAA,GAAAA,kBAAA"}
@@ -31,6 +31,14 @@ describe("GraphQLInputMapper", function () {
31
31
  field: "field-4",
32
32
  condition: "_not_contains",
33
33
  value: "value-4"
34
+ }, {
35
+ field: "boolean-field-true",
36
+ condition: " ",
37
+ value: "true"
38
+ }, {
39
+ field: "boolean-field-false",
40
+ condition: " ",
41
+ value: "false"
34
42
  }]
35
43
  }]
36
44
  };
@@ -43,6 +51,10 @@ describe("GraphQLInputMapper", function () {
43
51
  "field-3_startsWith": "value-3"
44
52
  }, {
45
53
  "field-4_not_contains": "value-4"
54
+ }, {
55
+ "boolean-field-true": true
56
+ }, {
57
+ "boolean-field-false": false
46
58
  }])]));
47
59
  });
48
60
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_GraphQLInputMapper","require","_domain","describe","it","filterDTO","id","name","operation","Operation","AND","groups","filters","field","condition","value","OR","output","GraphQLInputMapper","toGraphQL","expect","toEqual","_defineProperty2","default"],"sources":["GraphQLInputMapper.test.ts"],"sourcesContent":["import { GraphQLInputMapper } from \"./GraphQLInputMapper\";\nimport { Operation, FilterDTO } from \"./domain\";\n\ndescribe(\"GraphQLInputMapper\", () => {\n it(\"should return a GraphQL formatted output based on the received FilterDTO\", () => {\n const filterDTO: FilterDTO = {\n id: \"any-id\",\n name: \"Untitled\",\n operation: Operation.AND,\n groups: [\n {\n operation: Operation.AND,\n filters: [\n {\n field: \"field-1\",\n condition: \" \",\n value: \"value-1\"\n },\n {\n field: \"field-2\",\n condition: \"_not\",\n value: \"value-2\"\n }\n ]\n },\n {\n operation: Operation.OR,\n filters: [\n {\n field: \"field-3\",\n condition: \"_startsWith\",\n value: \"value-3\"\n },\n {\n field: \"field-4\",\n condition: \"_not_contains\",\n value: \"value-4\"\n }\n ]\n }\n ]\n };\n\n const output = GraphQLInputMapper.toGraphQL(filterDTO);\n\n expect(output).toEqual({\n [Operation.AND]: [\n {\n [Operation.AND]: [\n {\n \"field-1\": \"value-1\"\n },\n {\n \"field-2_not\": \"value-2\"\n }\n ]\n },\n {\n [Operation.OR]: [\n {\n \"field-3_startsWith\": \"value-3\"\n },\n {\n \"field-4_not_contains\": \"value-4\"\n }\n ]\n }\n ]\n });\n });\n});\n"],"mappings":";;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAEAE,QAAQ,CAAC,oBAAoB,EAAE,YAAM;EACjCC,EAAE,CAAC,0EAA0E,EAAE,YAAM;IACjF,IAAMC,SAAoB,GAAG;MACzBC,EAAE,EAAE,QAAQ;MACZC,IAAI,EAAE,UAAU;MAChBC,SAAS,EAAEC,iBAAS,CAACC,GAAG;MACxBC,MAAM,EAAE,CACJ;QACIH,SAAS,EAAEC,iBAAS,CAACC,GAAG;QACxBE,OAAO,EAAE,CACL;UACIC,KAAK,EAAE,SAAS;UAChBC,SAAS,EAAE,GAAG;UACdC,KAAK,EAAE;QACX,CAAC,EACD;UACIF,KAAK,EAAE,SAAS;UAChBC,SAAS,EAAE,MAAM;UACjBC,KAAK,EAAE;QACX,CAAC;MAET,CAAC,EACD;QACIP,SAAS,EAAEC,iBAAS,CAACO,EAAE;QACvBJ,OAAO,EAAE,CACL;UACIC,KAAK,EAAE,SAAS;UAChBC,SAAS,EAAE,aAAa;UACxBC,KAAK,EAAE;QACX,CAAC,EACD;UACIF,KAAK,EAAE,SAAS;UAChBC,SAAS,EAAE,eAAe;UAC1BC,KAAK,EAAE;QACX,CAAC;MAET,CAAC;IAET,CAAC;IAED,IAAME,MAAM,GAAGC,sCAAkB,CAACC,SAAS,CAACd,SAAS,CAAC;IAEtDe,MAAM,CAACH,MAAM,CAAC,CAACI,OAAO,KAAAC,gBAAA,CAAAC,OAAA,MACjBd,iBAAS,CAACC,GAAG,EAAG,KAAAY,gBAAA,CAAAC,OAAA,MAERd,iBAAS,CAACC,GAAG,EAAG,CACb;MACI,SAAS,EAAE;IACf,CAAC,EACD;MACI,aAAa,EAAE;IACnB,CAAC,CACJ,OAAAY,gBAAA,CAAAC,OAAA,MAGAd,iBAAS,CAACO,EAAE,EAAG,CACZ;MACI,oBAAoB,EAAE;IAC1B,CAAC,EACD;MACI,sBAAsB,EAAE;IAC5B,CAAC,CACJ,EAER,CACJ,CAAC;EACN,CAAC,CAAC;AACN,CAAC,CAAC"}
1
+ {"version":3,"names":["_GraphQLInputMapper","require","_domain","describe","it","filterDTO","id","name","operation","Operation","AND","groups","filters","field","condition","value","OR","output","GraphQLInputMapper","toGraphQL","expect","toEqual","_defineProperty2","default"],"sources":["GraphQLInputMapper.test.ts"],"sourcesContent":["import { GraphQLInputMapper } from \"./GraphQLInputMapper\";\nimport { Operation, FilterDTO } from \"./domain\";\n\ndescribe(\"GraphQLInputMapper\", () => {\n it(\"should return a GraphQL formatted output based on the received FilterDTO\", () => {\n const filterDTO: FilterDTO = {\n id: \"any-id\",\n name: \"Untitled\",\n operation: Operation.AND,\n groups: [\n {\n operation: Operation.AND,\n filters: [\n {\n field: \"field-1\",\n condition: \" \",\n value: \"value-1\"\n },\n {\n field: \"field-2\",\n condition: \"_not\",\n value: \"value-2\"\n }\n ]\n },\n {\n operation: Operation.OR,\n filters: [\n {\n field: \"field-3\",\n condition: \"_startsWith\",\n value: \"value-3\"\n },\n {\n field: \"field-4\",\n condition: \"_not_contains\",\n value: \"value-4\"\n },\n {\n field: \"boolean-field-true\",\n condition: \" \",\n value: \"true\"\n },\n {\n field: \"boolean-field-false\",\n condition: \" \",\n value: \"false\"\n }\n ]\n }\n ]\n };\n\n const output = GraphQLInputMapper.toGraphQL(filterDTO);\n\n expect(output).toEqual({\n [Operation.AND]: [\n {\n [Operation.AND]: [\n {\n \"field-1\": \"value-1\"\n },\n {\n \"field-2_not\": \"value-2\"\n }\n ]\n },\n {\n [Operation.OR]: [\n {\n \"field-3_startsWith\": \"value-3\"\n },\n {\n \"field-4_not_contains\": \"value-4\"\n },\n {\n \"boolean-field-true\": true\n },\n {\n \"boolean-field-false\": false\n }\n ]\n }\n ]\n });\n });\n});\n"],"mappings":";;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAEAE,QAAQ,CAAC,oBAAoB,EAAE,YAAM;EACjCC,EAAE,CAAC,0EAA0E,EAAE,YAAM;IACjF,IAAMC,SAAoB,GAAG;MACzBC,EAAE,EAAE,QAAQ;MACZC,IAAI,EAAE,UAAU;MAChBC,SAAS,EAAEC,iBAAS,CAACC,GAAG;MACxBC,MAAM,EAAE,CACJ;QACIH,SAAS,EAAEC,iBAAS,CAACC,GAAG;QACxBE,OAAO,EAAE,CACL;UACIC,KAAK,EAAE,SAAS;UAChBC,SAAS,EAAE,GAAG;UACdC,KAAK,EAAE;QACX,CAAC,EACD;UACIF,KAAK,EAAE,SAAS;UAChBC,SAAS,EAAE,MAAM;UACjBC,KAAK,EAAE;QACX,CAAC;MAET,CAAC,EACD;QACIP,SAAS,EAAEC,iBAAS,CAACO,EAAE;QACvBJ,OAAO,EAAE,CACL;UACIC,KAAK,EAAE,SAAS;UAChBC,SAAS,EAAE,aAAa;UACxBC,KAAK,EAAE;QACX,CAAC,EACD;UACIF,KAAK,EAAE,SAAS;UAChBC,SAAS,EAAE,eAAe;UAC1BC,KAAK,EAAE;QACX,CAAC,EACD;UACIF,KAAK,EAAE,oBAAoB;UAC3BC,SAAS,EAAE,GAAG;UACdC,KAAK,EAAE;QACX,CAAC,EACD;UACIF,KAAK,EAAE,qBAAqB;UAC5BC,SAAS,EAAE,GAAG;UACdC,KAAK,EAAE;QACX,CAAC;MAET,CAAC;IAET,CAAC;IAED,IAAME,MAAM,GAAGC,sCAAkB,CAACC,SAAS,CAACd,SAAS,CAAC;IAEtDe,MAAM,CAACH,MAAM,CAAC,CAACI,OAAO,KAAAC,gBAAA,CAAAC,OAAA,MACjBd,iBAAS,CAACC,GAAG,EAAG,KAAAY,gBAAA,CAAAC,OAAA,MAERd,iBAAS,CAACC,GAAG,EAAG,CACb;MACI,SAAS,EAAE;IACf,CAAC,EACD;MACI,aAAa,EAAE;IACnB,CAAC,CACJ,OAAAY,gBAAA,CAAAC,OAAA,MAGAd,iBAAS,CAACO,EAAE,EAAG,CACZ;MACI,oBAAoB,EAAE;IAC1B,CAAC,EACD;MACI,sBAAsB,EAAE;IAC5B,CAAC,EACD;MACI,oBAAoB,EAAE;IAC1B,CAAC,EACD;MACI,qBAAqB,EAAE;IAC3B,CAAC,CACJ,EAER,CACJ,CAAC;EACN,CAAC,CAAC;AACN,CAAC,CAAC"}
@@ -14,19 +14,22 @@ var Boolean = function Boolean(_ref) {
14
14
  name: name
15
15
  }, function (_ref2) {
16
16
  var value = _ref2.value,
17
- _onChange = _ref2.onChange;
18
- return /*#__PURE__*/_react.default.createElement(_Radio.RadioGroup, null, function () {
17
+ _onChange = _ref2.onChange,
18
+ validation = _ref2.validation;
19
+ return /*#__PURE__*/_react.default.createElement(_Radio.RadioGroup, {
20
+ validation: validation
21
+ }, function () {
19
22
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Radio.Radio, {
20
23
  label: "True",
21
- value: value,
24
+ value: value === "true",
22
25
  onChange: function onChange() {
23
- _onChange(true);
26
+ _onChange("true");
24
27
  }
25
28
  }), /*#__PURE__*/_react.default.createElement(_Radio.Radio, {
26
29
  label: "False",
27
- value: !value,
30
+ value: value === "false",
28
31
  onChange: function onChange() {
29
- _onChange(false);
32
+ _onChange("false");
30
33
  }
31
34
  }));
32
35
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_form","_Radio","Boolean","_ref","name","default","createElement","Bind","_ref2","value","onChange","RadioGroup","Fragment","Radio","label","exports"],"sources":["Boolean.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Bind } from \"@webiny/form\";\nimport { Radio, RadioGroup } from \"@webiny/ui/Radio\";\n\ninterface BooleanProps {\n name: string;\n}\n\nexport const Boolean = ({ name }: BooleanProps) => {\n return (\n <Bind name={name}>\n {({ value, onChange }) => (\n <RadioGroup>\n {() => {\n return (\n <>\n <Radio\n label=\"True\"\n value={value}\n onChange={() => {\n onChange(true);\n }}\n />\n <Radio\n label=\"False\"\n value={!value}\n onChange={() => {\n onChange(false);\n }}\n />\n </>\n );\n }}\n </RadioGroup>\n )}\n </Bind>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAMO,IAAMG,OAAO,GAAG,SAAVA,OAAOA,CAAAC,IAAA,EAA+B;EAAA,IAAzBC,IAAI,GAAAD,IAAA,CAAJC,IAAI;EAC1B,oBACIP,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACN,KAAA,CAAAO,IAAI;IAACH,IAAI,EAAEA;EAAK,GACZ,UAAAI,KAAA;IAAA,IAAGC,KAAK,GAAAD,KAAA,CAALC,KAAK;MAAEC,SAAQ,GAAAF,KAAA,CAARE,QAAQ;IAAA,oBACfb,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACL,MAAA,CAAAU,UAAU,QACN,YAAM;MACH,oBACId,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAAAT,MAAA,CAAAQ,OAAA,CAAAO,QAAA,qBACIf,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACL,MAAA,CAAAY,KAAK;QACFC,KAAK,EAAC,MAAM;QACZL,KAAK,EAAEA,KAAM;QACbC,QAAQ,EAAE,SAAAA,SAAA,EAAM;UACZA,SAAQ,CAAC,IAAI,CAAC;QAClB;MAAE,CACL,CAAC,eACFb,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACL,MAAA,CAAAY,KAAK;QACFC,KAAK,EAAC,OAAO;QACbL,KAAK,EAAE,CAACA,KAAM;QACdC,QAAQ,EAAE,SAAAA,SAAA,EAAM;UACZA,SAAQ,CAAC,KAAK,CAAC;QACnB;MAAE,CACL,CACH,CAAC;IAEX,CACQ,CAAC;EAAA,CAEf,CAAC;AAEf,CAAC;AAACK,OAAA,CAAAb,OAAA,GAAAA,OAAA"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_form","_Radio","Boolean","_ref","name","default","createElement","Bind","_ref2","value","onChange","validation","RadioGroup","Fragment","Radio","label","exports"],"sources":["Boolean.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Bind } from \"@webiny/form\";\nimport { Radio, RadioGroup } from \"@webiny/ui/Radio\";\n\ninterface BooleanProps {\n name: string;\n}\n\nexport const Boolean = ({ name }: BooleanProps) => {\n return (\n <Bind name={name}>\n {({ value, onChange, validation }) => (\n <RadioGroup validation={validation}>\n {() => {\n return (\n <>\n <Radio\n label=\"True\"\n value={value === \"true\"}\n onChange={() => {\n onChange(\"true\");\n }}\n />\n <Radio\n label=\"False\"\n value={value === \"false\"}\n onChange={() => {\n onChange(\"false\");\n }}\n />\n </>\n );\n }}\n </RadioGroup>\n )}\n </Bind>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAMO,IAAMG,OAAO,GAAG,SAAVA,OAAOA,CAAAC,IAAA,EAA+B;EAAA,IAAzBC,IAAI,GAAAD,IAAA,CAAJC,IAAI;EAC1B,oBACIP,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACN,KAAA,CAAAO,IAAI;IAACH,IAAI,EAAEA;EAAK,GACZ,UAAAI,KAAA;IAAA,IAAGC,KAAK,GAAAD,KAAA,CAALC,KAAK;MAAEC,SAAQ,GAAAF,KAAA,CAARE,QAAQ;MAAEC,UAAU,GAAAH,KAAA,CAAVG,UAAU;IAAA,oBAC3Bd,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACL,MAAA,CAAAW,UAAU;MAACD,UAAU,EAAEA;IAAW,GAC9B,YAAM;MACH,oBACId,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAAAT,MAAA,CAAAQ,OAAA,CAAAQ,QAAA,qBACIhB,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACL,MAAA,CAAAa,KAAK;QACFC,KAAK,EAAC,MAAM;QACZN,KAAK,EAAEA,KAAK,KAAK,MAAO;QACxBC,QAAQ,EAAE,SAAAA,SAAA,EAAM;UACZA,SAAQ,CAAC,MAAM,CAAC;QACpB;MAAE,CACL,CAAC,eACFb,MAAA,CAAAQ,OAAA,CAAAC,aAAA,CAACL,MAAA,CAAAa,KAAK;QACFC,KAAK,EAAC,OAAO;QACbN,KAAK,EAAEA,KAAK,KAAK,OAAQ;QACzBC,QAAQ,EAAE,SAAAA,SAAA,EAAM;UACZA,SAAQ,CAAC,OAAO,CAAC;QACrB;MAAE,CACL,CACH,CAAC;IAEX,CACQ,CAAC;EAAA,CAEf,CAAC;AAEf,CAAC;AAACM,OAAA,CAAAd,OAAA,GAAAA,OAAA"}
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.QueryBuilderDrawer = void 0;
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
9
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
10
  var _react = _interopRequireWildcard(require("react"));
12
11
  var _mobxReactLite = require("mobx-react-lite");
@@ -21,9 +20,9 @@ var _excluded = ["filter"]; // @ts-ignore
21
20
  var QueryBuilderDrawer = (0, _mobxReactLite.observer)(function (_ref) {
22
21
  var filter = _ref.filter,
23
22
  props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
24
- var _useState = (0, _react.useState)(new _QueryBuilderDrawerPresenter.QueryBuilderDrawerPresenter(props.fields)),
25
- _useState2 = (0, _slicedToArray2.default)(_useState, 1),
26
- presenter = _useState2[0];
23
+ var presenter = (0, _react.useMemo)(function () {
24
+ return new _QueryBuilderDrawerPresenter.QueryBuilderDrawerPresenter(props.fields);
25
+ }, [props.fields]);
27
26
  (0, _react.useEffect)(function () {
28
27
  presenter.load(filter);
29
28
  }, [filter]);
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_mobxReactLite","_Drawer","_reactHotkeyz","_Footer","_Header","_QueryBuilder","_QueryBuilderDrawer","_QueryBuilderDrawerPresenter","_excluded","QueryBuilderDrawer","observer","_ref","filter","props","_objectWithoutProperties2","default","_useState","useState","QueryBuilderDrawerPresenter","fields","_useState2","_slicedToArray2","presenter","useEffect","load","onChange","data","setFilter","onApply","onValidationError","vm","invalidMessage","onSave","useHotkeys","zIndex","disabled","isOpen","keys","esc","onClose","ref","useRef","createElement","DrawerContainer","modal","open","dir","DrawerContent","Header","QueryBuilder","onForm","form","current","onSubmit","onDeleteGroup","groupIndex","deleteGroup","onSetFilterFieldData","filterIndex","setFilterFieldData","onDeleteFilterFromGroup","deleteFilterFromGroup","onAddNewFilterToGroup","addNewFilterToGroup","onAddGroup","addGroup","Footer","formRef","exports"],"sources":["QueryBuilderDrawer.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\";\nimport { observer } from \"mobx-react-lite\";\n\nimport { FormAPI } from \"@webiny/form\";\nimport { DrawerContent } from \"@webiny/ui/Drawer\";\n// @ts-ignore\nimport { useHotkeys } from \"react-hotkeyz\";\nimport { Footer } from \"./Footer\";\nimport { Header } from \"./Header\";\nimport { QueryBuilder } from \"./QueryBuilder\";\n\nimport { FieldRaw, FilterDTO } from \"~/components/AdvancedSearch/domain\";\n\nimport { DrawerContainer } from \"./QueryBuilderDrawer.styled\";\nimport { QueryBuilderDrawerPresenter, QueryBuilderFormData } from \"./QueryBuilderDrawerPresenter\";\n\ninterface QueryBuilderDrawerProps {\n fields: FieldRaw[];\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] = useState<QueryBuilderDrawerPresenter>(\n new QueryBuilderDrawerPresenter(props.fields)\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} dir=\"rtl\">\n <DrawerContent dir=\"ltr\">\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 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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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_mobxReactLite","_Drawer","_reactHotkeyz","_Footer","_Header","_QueryBuilder","_QueryBuilderDrawer","_QueryBuilderDrawerPresenter","_excluded","QueryBuilderDrawer","observer","_ref","filter","props","_objectWithoutProperties2","default","presenter","useMemo","QueryBuilderDrawerPresenter","fields","useEffect","load","onChange","data","setFilter","onApply","onValidationError","vm","invalidMessage","onSave","useHotkeys","zIndex","disabled","isOpen","keys","esc","onClose","ref","useRef","createElement","DrawerContainer","modal","open","dir","DrawerContent","Header","QueryBuilder","onForm","form","current","onSubmit","onDeleteGroup","groupIndex","deleteGroup","onSetFilterFieldData","filterIndex","setFilterFieldData","onDeleteFilterFromGroup","deleteFilterFromGroup","onAddNewFilterToGroup","addNewFilterToGroup","onAddGroup","addGroup","Footer","formRef","exports"],"sources":["QueryBuilderDrawer.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useRef } from \"react\";\nimport { observer } from \"mobx-react-lite\";\n\nimport { FormAPI } from \"@webiny/form\";\nimport { DrawerContent } from \"@webiny/ui/Drawer\";\n// @ts-ignore\nimport { useHotkeys } from \"react-hotkeyz\";\nimport { Footer } from \"./Footer\";\nimport { Header } from \"./Header\";\nimport { QueryBuilder } from \"./QueryBuilder\";\n\nimport { FieldRaw, FilterDTO } from \"~/components/AdvancedSearch/domain\";\n\nimport { DrawerContainer } from \"./QueryBuilderDrawer.styled\";\nimport { QueryBuilderDrawerPresenter, QueryBuilderFormData } from \"./QueryBuilderDrawerPresenter\";\n\ninterface QueryBuilderDrawerProps {\n fields: FieldRaw[];\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(props.fields);\n }, [props.fields]);\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} dir=\"rtl\">\n <DrawerContent dir=\"ltr\">\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 vm={presenter.vm}\n />\n <Footer formRef={ref} onClose={props.onClose} onSave={onSave} />\n </DrawerContent>\n </DrawerContainer>\n );\n});\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAGA,IAAAE,OAAA,GAAAF,OAAA;AAEA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,aAAA,GAAAN,OAAA;AAIA,IAAAO,mBAAA,GAAAP,OAAA;AACA,IAAAQ,4BAAA,GAAAR,OAAA;AAAkG,IAAAS,SAAA,eATlG;AAuBO,IAAMC,kBAAkB,GAAG,IAAAC,uBAAQ,EAAC,UAAAC,IAAA,EAAmD;EAAA,IAAhDC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAKC,KAAK,OAAAC,yBAAA,CAAAC,OAAA,EAAAJ,IAAA,EAAAH,SAAA;EAC1D,IAAMQ,SAAS,GAAG,IAAAC,cAAO,EAA8B,YAAM;IACzD,OAAO,IAAIC,wDAA2B,CAACL,KAAK,CAACM,MAAM,CAAC;EACxD,CAAC,EAAE,CAACN,KAAK,CAACM,MAAM,CAAC,CAAC;EAElB,IAAAC,gBAAS,EAAC,YAAM;IACZJ,SAAS,CAACK,IAAI,CAACT,MAAM,CAAC;EAC1B,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EAEZ,IAAMU,SAAQ,GAAG,SAAXA,QAAQA,CAAIC,IAA0B,EAAK;IAC7CP,SAAS,CAACQ,SAAS,CAACD,IAAI,CAAC;EAC7B,CAAC;EAED,IAAME,OAAO,GAAG,SAAVA,OAAOA,CAAA,EAAS;IAClBT,SAAS,CAACS,OAAO,CACb,UAAAb,MAAM,EAAI;MACNC,KAAK,CAACY,OAAO,CAACb,MAAM,CAAC;IACzB,CAAC,EACD,YAAM;MACFC,KAAK,CAACa,iBAAiB,CAACV,SAAS,CAACW,EAAE,CAACC,cAAc,CAAC;IACxD,CACJ,CAAC;EACL,CAAC;EAED,IAAMC,MAAM,GAAG,SAATA,MAAMA,CAAA,EAAS;IACjBb,SAAS,CAACa,MAAM,CACZ,UAAAjB,MAAM,EAAI;MACNC,KAAK,CAACgB,MAAM,CAACjB,MAAM,CAAC;IACxB,CAAC,EACD,YAAM;MACFC,KAAK,CAACa,iBAAiB,CAACV,SAAS,CAACW,EAAE,CAACC,cAAc,CAAC;IACxD,CACJ,CAAC;EACL,CAAC;EAED,IAAAE,wBAAU,EAAC;IACPC,MAAM,EAAE,EAAE;IACVC,QAAQ,EAAE,CAACnB,KAAK,CAACc,EAAE,CAACM,MAAM;IAC1BC,IAAI,EAAE;MACFC,GAAG,EAAEtB,KAAK,CAACuB;IACf;EACJ,CAAC,CAAC;EAEF,IAAMC,GAAG,GAAG,IAAAC,aAAM,EAAiB,IAAI,CAAC;EAExC,oBACIzC,MAAA,CAAAkB,OAAA,CAAAwB,aAAA,CAACjC,mBAAA,CAAAkC,eAAe;IAACC,KAAK;IAACC,IAAI,EAAE7B,KAAK,CAACc,EAAE,CAACM,MAAO;IAACG,OAAO,EAAEvB,KAAK,CAACuB,OAAQ;IAACO,GAAG,EAAC;EAAK,gBAC3E9C,MAAA,CAAAkB,OAAA,CAAAwB,aAAA,CAACtC,OAAA,CAAA2C,aAAa;IAACD,GAAG,EAAC;EAAK,gBACpB9C,MAAA,CAAAkB,OAAA,CAAAwB,aAAA,CAACnC,OAAA,CAAAyC,MAAM;IAACT,OAAO,EAAEvB,KAAK,CAACuB;EAAQ,CAAE,CAAC,eAClCvC,MAAA,CAAAkB,OAAA,CAAAwB,aAAA,CAAClC,aAAA,CAAAyC,YAAY;IACTC,MAAM,EAAE,SAAAA,OAAAC,IAAI;MAAA,OAAKX,GAAG,CAACY,OAAO,GAAGD,IAAI;IAAA,CAAE;IACrCE,QAAQ,EAAEzB,OAAQ;IAClBH,QAAQ,EAAE,SAAAA,SAAAC,IAAI;MAAA,OAAID,SAAQ,CAACC,IAAI,CAAC;IAAA,CAAC;IACjC4B,aAAa,EAAE,SAAAA,cAAAC,UAAU;MAAA,OAAIpC,SAAS,CAACqC,WAAW,CAACD,UAAU,CAAC;IAAA,CAAC;IAC/DE,oBAAoB,EAAE,SAAAA,qBAACF,UAAU,EAAEG,WAAW,EAAEhC,IAAI;MAAA,OAChDP,SAAS,CAACwC,kBAAkB,CAACJ,UAAU,EAAEG,WAAW,EAAEhC,IAAI,CAAC;IAAA,CAC9D;IACDkC,uBAAuB,EAAE,SAAAA,wBAACL,UAAU,EAAEG,WAAW;MAAA,OAC7CvC,SAAS,CAAC0C,qBAAqB,CAACN,UAAU,EAAEG,WAAW,CAAC;IAAA,CAC3D;IACDI,qBAAqB,EAAE,SAAAA,sBAAAP,UAAU;MAAA,OAAIpC,SAAS,CAAC4C,mBAAmB,CAACR,UAAU,CAAC;IAAA,CAAC;IAC/ES,UAAU,EAAE,SAAAA,WAAA;MAAA,OAAM7C,SAAS,CAAC8C,QAAQ,CAAC,CAAC;IAAA,CAAC;IACvCnC,EAAE,EAAEX,SAAS,CAACW;EAAG,CACpB,CAAC,eACF9B,MAAA,CAAAkB,OAAA,CAAAwB,aAAA,CAACpC,OAAA,CAAA4D,MAAM;IAACC,OAAO,EAAE3B,GAAI;IAACD,OAAO,EAAEvB,KAAK,CAACuB,OAAQ;IAACP,MAAM,EAAEA;EAAO,CAAE,CACpD,CACF,CAAC;AAE1B,CAAC,CAAC;AAACoC,OAAA,CAAAxD,kBAAA,GAAAA,kBAAA"}
@@ -7,11 +7,9 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.Description = void 0;
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
  var _List = require("@webiny/ui/List");
10
- var _timeagoReact = _interopRequireDefault(require("timeago-react"));
11
- // @ts-ignore
12
-
10
+ var _TimeAgo = require("@webiny/ui/TimeAgo");
13
11
  var Description = function Description(props) {
14
- return /*#__PURE__*/_react.default.createElement(_List.ListItemTextSecondary, null, "Created", " ", /*#__PURE__*/_react.default.createElement(_timeagoReact.default, {
12
+ return /*#__PURE__*/_react.default.createElement(_List.ListItemTextSecondary, null, "Created", " ", /*#__PURE__*/_react.default.createElement(_TimeAgo.TimeAgo, {
15
13
  datetime: props.createdOn
16
14
  }), props.children && " - ".concat(props.children));
17
15
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_List","_timeagoReact","Description","props","default","createElement","ListItemTextSecondary","datetime","createdOn","children","concat","exports"],"sources":["Description.tsx"],"sourcesContent":["import React from \"react\";\nimport { ListItemTextSecondary } from \"@webiny/ui/List\";\n\n// @ts-ignore\nimport TimeAgo from \"timeago-react\";\n\nexport interface DescriptionProps {\n children?: string;\n createdOn: string;\n}\n\nexport const Description = (props: DescriptionProps) => {\n return (\n <ListItemTextSecondary>\n {\"Created\"} <TimeAgo datetime={props.createdOn} />\n {props.children && ` - ${props.children}`}\n </ListItemTextSecondary>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAGA,IAAAE,aAAA,GAAAH,sBAAA,CAAAC,OAAA;AADA;;AAQO,IAAMG,WAAW,GAAG,SAAdA,WAAWA,CAAIC,KAAuB,EAAK;EACpD,oBACIN,MAAA,CAAAO,OAAA,CAAAC,aAAA,CAACL,KAAA,CAAAM,qBAAqB,QACjB,SAAS,EAAC,GAAC,eAAAT,MAAA,CAAAO,OAAA,CAAAC,aAAA,CAACJ,aAAA,CAAAG,OAAO;IAACG,QAAQ,EAAEJ,KAAK,CAACK;EAAU,CAAE,CAAC,EACjDL,KAAK,CAACM,QAAQ,UAAAC,MAAA,CAAUP,KAAK,CAACM,QAAQ,CACpB,CAAC;AAEhC,CAAC;AAACE,OAAA,CAAAT,WAAA,GAAAA,WAAA"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_List","_TimeAgo","Description","props","default","createElement","ListItemTextSecondary","TimeAgo","datetime","createdOn","children","concat","exports"],"sources":["Description.tsx"],"sourcesContent":["import React from \"react\";\nimport { ListItemTextSecondary } from \"@webiny/ui/List\";\nimport { TimeAgo } from \"@webiny/ui/TimeAgo\";\n\nexport interface DescriptionProps {\n children?: string;\n createdOn: string;\n}\n\nexport const Description = (props: DescriptionProps) => {\n return (\n <ListItemTextSecondary>\n {\"Created\"} <TimeAgo datetime={props.createdOn} />\n {props.children && ` - ${props.children}`}\n </ListItemTextSecondary>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAOO,IAAMG,WAAW,GAAG,SAAdA,WAAWA,CAAIC,KAAuB,EAAK;EACpD,oBACIN,MAAA,CAAAO,OAAA,CAAAC,aAAA,CAACL,KAAA,CAAAM,qBAAqB,QACjB,SAAS,EAAC,GAAC,eAAAT,MAAA,CAAAO,OAAA,CAAAC,aAAA,CAACJ,QAAA,CAAAM,OAAO;IAACC,QAAQ,EAAEL,KAAK,CAACM;EAAU,CAAE,CAAC,EACjDN,KAAK,CAACO,QAAQ,UAAAC,MAAA,CAAUR,KAAK,CAACO,QAAQ,CACpB,CAAC;AAEhC,CAAC;AAACE,OAAA,CAAAV,WAAA,GAAAA,WAAA"}
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.QuerySaverDialog = void 0;
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
9
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
10
  var _react = _interopRequireWildcard(require("react"));
12
11
  var _mobxReactLite = require("mobx-react-lite");
@@ -22,9 +21,9 @@ var _excluded = ["filter"];
22
21
  var QuerySaverDialog = (0, _mobxReactLite.observer)(function (_ref) {
23
22
  var filter = _ref.filter,
24
23
  props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
25
- var _useState = (0, _react.useState)(new _QuerySaverDialogPresenter.QuerySaverDialogPresenter()),
26
- _useState2 = (0, _slicedToArray2.default)(_useState, 1),
27
- presenter = _useState2[0];
24
+ var presenter = (0, _react.useMemo)(function () {
25
+ return new _QuerySaverDialogPresenter.QuerySaverDialogPresenter();
26
+ }, []);
28
27
  (0, _react.useEffect)(function () {
29
28
  presenter.load(filter);
30
29
  }, [filter]);
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_mobxReactLite","_form","_Button","_Dialog","_Grid","_Input","_Progress","_QuerySaverDialogPresenter","_QuerySaverDialog","_excluded","QuerySaverDialog","observer","_ref","filter","props","_objectWithoutProperties2","default","_useState","useState","QuerySaverDialogPresenter","_useState2","_slicedToArray2","presenter","useEffect","load","onChange","data","setFilter","onSubmit","onSave","createElement","DialogContainer","open","vm","isOpen","onClose","Form","invalidFields","_ref2","Bind","form","Fragment","DialogTitle","isLoading","CircularProgress","label","loadingLabel","DialogContent","Grid","Cell","span","align","name","Input","type","rows","DialogActions","ButtonDefault","onClick","ButtonPrimary","submit","exports"],"sources":["QuerySaverDialog.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport { observer } from \"mobx-react-lite\";\n\nimport { Form } from \"@webiny/form\";\nimport { ButtonDefault, ButtonPrimary } from \"@webiny/ui/Button\";\nimport { DialogActions, DialogContent, DialogTitle } from \"@webiny/ui/Dialog\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\n\nimport { QuerySaverDialogFormData, QuerySaverDialogPresenter } from \"./QuerySaverDialogPresenter\";\n\nimport { FilterDTO } from \"../domain\";\n\nimport { DialogContainer } from \"./QuerySaverDialog.styled\";\n\ninterface QuerySaverDialogProps {\n onClose: () => void;\n onSave: (data: FilterDTO) => void;\n filter: FilterDTO;\n vm: {\n isOpen: boolean;\n isLoading: boolean;\n loadingLabel: string;\n };\n}\n\nexport const QuerySaverDialog = observer(({ filter, ...props }: QuerySaverDialogProps) => {\n const [presenter] = useState<QuerySaverDialogPresenter>(new QuerySaverDialogPresenter());\n\n useEffect(() => {\n presenter.load(filter);\n }, [filter]);\n\n const onChange = (data: QuerySaverDialogFormData) => {\n presenter.setFilter(data);\n };\n\n const onSubmit = () => {\n presenter.onSave(filter => {\n props.onSave(filter);\n });\n };\n\n return (\n <DialogContainer open={props.vm.isOpen} onClose={props.onClose}>\n {props.vm.isOpen ? (\n <Form\n data={presenter.vm.data}\n onChange={onChange}\n onSubmit={onSubmit}\n invalidFields={presenter.vm.invalidFields}\n >\n {({ Bind, form }) => (\n <>\n <DialogTitle>{\"Save search filter\"}</DialogTitle>\n {props.vm.isLoading && (\n <CircularProgress label={props.vm.loadingLabel} />\n )}\n <DialogContent>\n <Grid>\n <Cell span={12} align={\"middle\"}>\n <Bind name={\"name\"}>\n <Input type={\"text\"} label={\"Name\"} />\n </Bind>\n </Cell>\n <Cell span={12} align={\"middle\"}>\n <Bind name={\"description\"}>\n <Input type={\"text\"} label={\"Description\"} rows={6} />\n </Bind>\n </Cell>\n </Grid>\n </DialogContent>\n <DialogActions>\n <ButtonDefault onClick={props.onClose}>{\"Cancel\"}</ButtonDefault>\n <ButtonPrimary onClick={form.submit}>\n {\"Save and apply\"}\n </ButtonPrimary>\n </DialogActions>\n </>\n )}\n </Form>\n ) : null}\n </DialogContainer>\n );\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_mobxReactLite","_form","_Button","_Dialog","_Grid","_Input","_Progress","_QuerySaverDialogPresenter","_QuerySaverDialog","_excluded","QuerySaverDialog","observer","_ref","filter","props","_objectWithoutProperties2","default","presenter","useMemo","QuerySaverDialogPresenter","useEffect","load","onChange","data","setFilter","onSubmit","onSave","createElement","DialogContainer","open","vm","isOpen","onClose","Form","invalidFields","_ref2","Bind","form","Fragment","DialogTitle","isLoading","CircularProgress","label","loadingLabel","DialogContent","Grid","Cell","span","align","name","Input","type","rows","DialogActions","ButtonDefault","onClick","ButtonPrimary","submit","exports"],"sources":["QuerySaverDialog.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from \"react\";\nimport { observer } from \"mobx-react-lite\";\n\nimport { Form } from \"@webiny/form\";\nimport { ButtonDefault, ButtonPrimary } from \"@webiny/ui/Button\";\nimport { DialogActions, DialogContent, DialogTitle } from \"@webiny/ui/Dialog\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\n\nimport { QuerySaverDialogFormData, QuerySaverDialogPresenter } from \"./QuerySaverDialogPresenter\";\n\nimport { FilterDTO } from \"../domain\";\n\nimport { DialogContainer } from \"./QuerySaverDialog.styled\";\n\ninterface QuerySaverDialogProps {\n onClose: () => void;\n onSave: (data: FilterDTO) => void;\n filter: FilterDTO;\n vm: {\n isOpen: boolean;\n isLoading: boolean;\n loadingLabel: string;\n };\n}\n\nexport const QuerySaverDialog = observer(({ filter, ...props }: QuerySaverDialogProps) => {\n const presenter = useMemo<QuerySaverDialogPresenter>(() => {\n return new QuerySaverDialogPresenter();\n }, []);\n\n useEffect(() => {\n presenter.load(filter);\n }, [filter]);\n\n const onChange = (data: QuerySaverDialogFormData) => {\n presenter.setFilter(data);\n };\n\n const onSubmit = () => {\n presenter.onSave(filter => {\n props.onSave(filter);\n });\n };\n\n return (\n <DialogContainer open={props.vm.isOpen} onClose={props.onClose}>\n {props.vm.isOpen ? (\n <Form\n data={presenter.vm.data}\n onChange={onChange}\n onSubmit={onSubmit}\n invalidFields={presenter.vm.invalidFields}\n >\n {({ Bind, form }) => (\n <>\n <DialogTitle>{\"Save search filter\"}</DialogTitle>\n {props.vm.isLoading && (\n <CircularProgress label={props.vm.loadingLabel} />\n )}\n <DialogContent>\n <Grid>\n <Cell span={12} align={\"middle\"}>\n <Bind name={\"name\"}>\n <Input type={\"text\"} label={\"Name\"} />\n </Bind>\n </Cell>\n <Cell span={12} align={\"middle\"}>\n <Bind name={\"description\"}>\n <Input type={\"text\"} label={\"Description\"} rows={6} />\n </Bind>\n </Cell>\n </Grid>\n </DialogContent>\n <DialogActions>\n <ButtonDefault onClick={props.onClose}>{\"Cancel\"}</ButtonDefault>\n <ButtonPrimary onClick={form.submit}>\n {\"Save and apply\"}\n </ButtonPrimary>\n </DialogActions>\n </>\n )}\n </Form>\n ) : null}\n </DialogContainer>\n );\n});\n"],"mappings":"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"}
@@ -39,45 +39,45 @@ export declare const filterValidationSchema: zod.ZodObject<{
39
39
  condition: string;
40
40
  }>, "many">;
41
41
  }, "strip", zod.ZodTypeAny, {
42
+ operation: Operation;
42
43
  filters: {
43
44
  value: (string | number | boolean | [string | number | boolean, ...(string | number | boolean)[]]) & (string | number | boolean | [string | number | boolean, ...(string | number | boolean)[]] | undefined);
44
45
  field: string;
45
46
  condition: string;
46
47
  }[];
47
- operation: Operation;
48
48
  }, {
49
+ operation: Operation;
49
50
  filters: {
50
51
  value: (string | number | boolean | [string | number | boolean, ...(string | number | boolean)[]]) & (string | number | boolean | [string | number | boolean, ...(string | number | boolean)[]] | undefined);
51
52
  field: string;
52
53
  condition: string;
53
54
  }[];
54
- operation: Operation;
55
55
  }>, "many">;
56
56
  }, "strip", zod.ZodTypeAny, {
57
+ name: string;
58
+ description: string;
59
+ operation: Operation;
57
60
  groups: {
61
+ operation: Operation;
58
62
  filters: {
59
63
  value: (string | number | boolean | [string | number | boolean, ...(string | number | boolean)[]]) & (string | number | boolean | [string | number | boolean, ...(string | number | boolean)[]] | undefined);
60
64
  field: string;
61
65
  condition: string;
62
66
  }[];
63
- operation: Operation;
64
67
  }[];
65
- description: string;
66
- name: string;
67
- operation: Operation;
68
68
  id?: string | null | undefined;
69
69
  }, {
70
+ name: string;
71
+ description: string;
72
+ operation: Operation;
70
73
  groups: {
74
+ operation: Operation;
71
75
  filters: {
72
76
  value: (string | number | boolean | [string | number | boolean, ...(string | number | boolean)[]]) & (string | number | boolean | [string | number | boolean, ...(string | number | boolean)[]] | undefined);
73
77
  field: string;
74
78
  condition: string;
75
79
  }[];
76
- operation: Operation;
77
80
  }[];
78
- description: string;
79
- name: string;
80
- operation: Operation;
81
81
  id?: string | null | undefined;
82
82
  }>;
83
83
  export declare class Filter {
@@ -91,30 +91,30 @@ export declare class Filter {
91
91
  static createEmpty(): Filter;
92
92
  static create(data: FilterDTO): Filter;
93
93
  static validate(data: FilterDTO): zod.SafeParseReturnType<{
94
+ name: string;
95
+ description: string;
96
+ operation: Operation;
94
97
  groups: {
98
+ operation: Operation;
95
99
  filters: {
96
100
  value: (string | number | boolean | [string | number | boolean, ...(string | number | boolean)[]]) & (string | number | boolean | [string | number | boolean, ...(string | number | boolean)[]] | undefined);
97
101
  field: string;
98
102
  condition: string;
99
103
  }[];
100
- operation: Operation;
101
104
  }[];
102
- description: string;
103
- name: string;
104
- operation: Operation;
105
105
  id?: string | null | undefined;
106
106
  }, {
107
+ name: string;
108
+ description: string;
109
+ operation: Operation;
107
110
  groups: {
111
+ operation: Operation;
108
112
  filters: {
109
113
  value: (string | number | boolean | [string | number | boolean, ...(string | number | boolean)[]]) & (string | number | boolean | [string | number | boolean, ...(string | number | boolean)[]] | undefined);
110
114
  field: string;
111
115
  condition: string;
112
116
  }[];
113
- operation: Operation;
114
117
  }[];
115
- description: string;
116
- name: string;
117
- operation: Operation;
118
118
  id?: string | null | undefined;
119
119
  }>;
120
120
  protected constructor(data: {
@@ -24,9 +24,10 @@ var FilterMapper = /*#__PURE__*/function () {
24
24
  return {
25
25
  operation: group.operation,
26
26
  filters: group.filters.map(function (filter) {
27
+ var _filter$value;
27
28
  return {
28
29
  field: filter.field || "",
29
- value: filter.value || "",
30
+ value: ((_filter$value = filter.value) !== null && _filter$value !== void 0 ? _filter$value : "").toString(),
30
31
  condition: filter.condition || ""
31
32
  };
32
33
  })
@@ -46,9 +47,10 @@ var FilterMapper = /*#__PURE__*/function () {
46
47
  return {
47
48
  operation: group.operation,
48
49
  filters: group.filters.map(function (filter) {
50
+ var _filter$value2;
49
51
  return {
50
52
  field: filter.field || "",
51
- value: filter.value || "",
53
+ value: ((_filter$value2 = filter.value) !== null && _filter$value2 !== void 0 ? _filter$value2 : "").toString(),
52
54
  condition: filter.condition || ""
53
55
  };
54
56
  })
@@ -1 +1 @@
1
- {"version":3,"names":["FilterMapper","_classCallCheck2","default","_createClass2","key","value","toDTO","configuration","id","name","description","operation","createdOn","groups","map","group","filters","filter","field","condition","toStorage","exports"],"sources":["FilterMapper.ts"],"sourcesContent":["import { Filter, FilterDTO, FilterStorage } from \"../domain\";\n\nexport class FilterMapper {\n static toDTO(configuration: Filter | FilterDTO): FilterDTO {\n return {\n id: configuration.id,\n name: configuration.name,\n description: configuration.description || \"\",\n operation: configuration.operation,\n createdOn: configuration.createdOn || \"\",\n groups: configuration.groups.map(group => ({\n operation: group.operation,\n filters: group.filters.map(filter => ({\n field: filter.field || \"\",\n value: filter.value || \"\",\n condition: filter.condition || \"\"\n }))\n }))\n };\n }\n\n static toStorage(configuration: Filter | FilterDTO): FilterStorage {\n return {\n id: configuration.id,\n name: configuration.name,\n description: configuration.description,\n operation: configuration.operation,\n groups: configuration.groups.map(group => ({\n operation: group.operation,\n filters: group.filters.map(filter => ({\n field: filter.field || \"\",\n value: filter.value || \"\",\n condition: filter.condition || \"\"\n }))\n }))\n };\n }\n}\n"],"mappings":";;;;;;;;;IAEaA,YAAY;EAAA,SAAAA,aAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAF,YAAA;EAAA;EAAA,IAAAG,aAAA,CAAAD,OAAA,EAAAF,YAAA;IAAAI,GAAA;IAAAC,KAAA,EACrB,SAAAC,MAAaC,aAAiC,EAAa;MACvD,OAAO;QACHC,EAAE,EAAED,aAAa,CAACC,EAAE;QACpBC,IAAI,EAAEF,aAAa,CAACE,IAAI;QACxBC,WAAW,EAAEH,aAAa,CAACG,WAAW,IAAI,EAAE;QAC5CC,SAAS,EAAEJ,aAAa,CAACI,SAAS;QAClCC,SAAS,EAAEL,aAAa,CAACK,SAAS,IAAI,EAAE;QACxCC,MAAM,EAAEN,aAAa,CAACM,MAAM,CAACC,GAAG,CAAC,UAAAC,KAAK;UAAA,OAAK;YACvCJ,SAAS,EAAEI,KAAK,CAACJ,SAAS;YAC1BK,OAAO,EAAED,KAAK,CAACC,OAAO,CAACF,GAAG,CAAC,UAAAG,MAAM;cAAA,OAAK;gBAClCC,KAAK,EAAED,MAAM,CAACC,KAAK,IAAI,EAAE;gBACzBb,KAAK,EAAEY,MAAM,CAACZ,KAAK,IAAI,EAAE;gBACzBc,SAAS,EAAEF,MAAM,CAACE,SAAS,IAAI;cACnC,CAAC;YAAA,CAAC;UACN,CAAC;QAAA,CAAC;MACN,CAAC;IACL;EAAC;IAAAf,GAAA;IAAAC,KAAA,EAED,SAAAe,UAAiBb,aAAiC,EAAiB;MAC/D,OAAO;QACHC,EAAE,EAAED,aAAa,CAACC,EAAE;QACpBC,IAAI,EAAEF,aAAa,CAACE,IAAI;QACxBC,WAAW,EAAEH,aAAa,CAACG,WAAW;QACtCC,SAAS,EAAEJ,aAAa,CAACI,SAAS;QAClCE,MAAM,EAAEN,aAAa,CAACM,MAAM,CAACC,GAAG,CAAC,UAAAC,KAAK;UAAA,OAAK;YACvCJ,SAAS,EAAEI,KAAK,CAACJ,SAAS;YAC1BK,OAAO,EAAED,KAAK,CAACC,OAAO,CAACF,GAAG,CAAC,UAAAG,MAAM;cAAA,OAAK;gBAClCC,KAAK,EAAED,MAAM,CAACC,KAAK,IAAI,EAAE;gBACzBb,KAAK,EAAEY,MAAM,CAACZ,KAAK,IAAI,EAAE;gBACzBc,SAAS,EAAEF,MAAM,CAACE,SAAS,IAAI;cACnC,CAAC;YAAA,CAAC;UACN,CAAC;QAAA,CAAC;MACN,CAAC;IACL;EAAC;EAAA,OAAAnB,YAAA;AAAA;AAAAqB,OAAA,CAAArB,YAAA,GAAAA,YAAA"}
1
+ {"version":3,"names":["FilterMapper","_classCallCheck2","default","_createClass2","key","value","toDTO","configuration","id","name","description","operation","createdOn","groups","map","group","filters","filter","_filter$value","field","toString","condition","toStorage","_filter$value2","exports"],"sources":["FilterMapper.ts"],"sourcesContent":["import { Filter, FilterDTO, FilterStorage } from \"../domain\";\n\nexport class FilterMapper {\n static toDTO(configuration: Filter | FilterDTO): FilterDTO {\n return {\n id: configuration.id,\n name: configuration.name,\n description: configuration.description || \"\",\n operation: configuration.operation,\n createdOn: configuration.createdOn || \"\",\n groups: configuration.groups.map(group => ({\n operation: group.operation,\n filters: group.filters.map(filter => ({\n field: filter.field || \"\",\n value: (filter.value ?? \"\").toString(),\n condition: filter.condition || \"\"\n }))\n }))\n };\n }\n\n static toStorage(configuration: Filter | FilterDTO): FilterStorage {\n return {\n id: configuration.id,\n name: configuration.name,\n description: configuration.description,\n operation: configuration.operation,\n groups: configuration.groups.map(group => ({\n operation: group.operation,\n filters: group.filters.map(filter => ({\n field: filter.field || \"\",\n value: (filter.value ?? \"\").toString(),\n condition: filter.condition || \"\"\n }))\n }))\n };\n }\n}\n"],"mappings":";;;;;;;;;IAEaA,YAAY;EAAA,SAAAA,aAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAF,YAAA;EAAA;EAAA,IAAAG,aAAA,CAAAD,OAAA,EAAAF,YAAA;IAAAI,GAAA;IAAAC,KAAA,EACrB,SAAAC,MAAaC,aAAiC,EAAa;MACvD,OAAO;QACHC,EAAE,EAAED,aAAa,CAACC,EAAE;QACpBC,IAAI,EAAEF,aAAa,CAACE,IAAI;QACxBC,WAAW,EAAEH,aAAa,CAACG,WAAW,IAAI,EAAE;QAC5CC,SAAS,EAAEJ,aAAa,CAACI,SAAS;QAClCC,SAAS,EAAEL,aAAa,CAACK,SAAS,IAAI,EAAE;QACxCC,MAAM,EAAEN,aAAa,CAACM,MAAM,CAACC,GAAG,CAAC,UAAAC,KAAK;UAAA,OAAK;YACvCJ,SAAS,EAAEI,KAAK,CAACJ,SAAS;YAC1BK,OAAO,EAAED,KAAK,CAACC,OAAO,CAACF,GAAG,CAAC,UAAAG,MAAM;cAAA,IAAAC,aAAA;cAAA,OAAK;gBAClCC,KAAK,EAAEF,MAAM,CAACE,KAAK,IAAI,EAAE;gBACzBd,KAAK,EAAE,EAAAa,aAAA,GAACD,MAAM,CAACZ,KAAK,cAAAa,aAAA,cAAAA,aAAA,GAAI,EAAE,EAAEE,QAAQ,CAAC,CAAC;gBACtCC,SAAS,EAAEJ,MAAM,CAACI,SAAS,IAAI;cACnC,CAAC;YAAA,CAAC;UACN,CAAC;QAAA,CAAC;MACN,CAAC;IACL;EAAC;IAAAjB,GAAA;IAAAC,KAAA,EAED,SAAAiB,UAAiBf,aAAiC,EAAiB;MAC/D,OAAO;QACHC,EAAE,EAAED,aAAa,CAACC,EAAE;QACpBC,IAAI,EAAEF,aAAa,CAACE,IAAI;QACxBC,WAAW,EAAEH,aAAa,CAACG,WAAW;QACtCC,SAAS,EAAEJ,aAAa,CAACI,SAAS;QAClCE,MAAM,EAAEN,aAAa,CAACM,MAAM,CAACC,GAAG,CAAC,UAAAC,KAAK;UAAA,OAAK;YACvCJ,SAAS,EAAEI,KAAK,CAACJ,SAAS;YAC1BK,OAAO,EAAED,KAAK,CAACC,OAAO,CAACF,GAAG,CAAC,UAAAG,MAAM;cAAA,IAAAM,cAAA;cAAA,OAAK;gBAClCJ,KAAK,EAAEF,MAAM,CAACE,KAAK,IAAI,EAAE;gBACzBd,KAAK,EAAE,EAAAkB,cAAA,GAACN,MAAM,CAACZ,KAAK,cAAAkB,cAAA,cAAAA,cAAA,GAAI,EAAE,EAAEH,QAAQ,CAAC,CAAC;gBACtCC,SAAS,EAAEJ,MAAM,CAACI,SAAS,IAAI;cACnC,CAAC;YAAA,CAAC;UACN,CAAC;QAAA,CAAC;MACN,CAAC;IACL;EAAC;EAAA,OAAArB,YAAA;AAAA;AAAAwB,OAAA,CAAAxB,YAAA,GAAAA,YAAA"}
@@ -4,11 +4,9 @@ export declare class FilterRepository {
4
4
  private gateway;
5
5
  private sorter;
6
6
  private loading;
7
- private static instance;
8
7
  private filters;
9
8
  readonly namespace: string;
10
9
  constructor(gateway: FiltersGatewayInterface, namespace: string);
11
- static getInstance(gateway: FiltersGatewayInterface, namespace: string): FilterRepository;
12
10
  getFilters(): FilterDTO[];
13
11
  getLoading(): {
14
12
  isLoading: boolean;
@@ -262,14 +262,6 @@ var FilterRepository = /*#__PURE__*/function () {
262
262
  }
263
263
  return deleteFilter;
264
264
  }()
265
- }], [{
266
- key: "getInstance",
267
- value: function getInstance(gateway, namespace) {
268
- if (!FilterRepository.instance) {
269
- FilterRepository.instance = new FilterRepository(gateway, namespace);
270
- }
271
- return FilterRepository.instance;
272
- }
273
265
  }]);
274
266
  return FilterRepository;
275
267
  }();