@digigov/react-modules 1.2.0-254f7786 → 1.2.0-290ada95

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 (76) hide show
  1. package/Faq/Results.d.ts +9 -0
  2. package/Faq/Results.js +34 -0
  3. package/Faq/hooks.d.ts +15 -0
  4. package/Faq/hooks.js +54 -0
  5. package/Faq/index.d.ts +43 -0
  6. package/Faq/index.js +197 -0
  7. package/Faq/slug.d.ts +1 -0
  8. package/Faq/slug.js +94 -0
  9. package/Faq/utils.d.ts +1 -0
  10. package/Faq/utils.js +3 -0
  11. package/FilteredResults/DataTable.js +12 -0
  12. package/FilteredResults/FilterChips.js +34 -0
  13. package/FilteredResults/FilterFields.js +13 -0
  14. package/FilteredResults/hooks.d.ts +1 -1
  15. package/FilteredResults/hooks.js +78 -0
  16. package/FilteredResults/index.js +96 -112
  17. package/index.d.ts +2 -1
  18. package/index.js +3 -3
  19. package/lazy.d.ts +17 -0
  20. package/lazy.js +28 -0
  21. package/package.json +12 -12
  22. package/registry.d.ts +14 -0
  23. package/registry.js +34 -0
  24. package/src/Faq/Faq.stories.js +7 -0
  25. package/src/Faq/Results.tsx +53 -0
  26. package/src/Faq/__stories__/Default.tsx +292 -0
  27. package/src/Faq/hooks.ts +89 -0
  28. package/src/Faq/index.test.tsx +24 -0
  29. package/src/Faq/index.tsx +286 -0
  30. package/src/Faq/slug.ts +140 -0
  31. package/src/Faq/splitted.test.tsx +19 -0
  32. package/src/Faq/utils.ts +5 -0
  33. package/src/FilteredResults/__stories__/Default.tsx +1 -1
  34. package/src/FilteredResults/index.test.tsx +14 -11
  35. package/src/FilteredResults/splitted.test.tsx +9 -5
  36. package/src/index.ts +1 -0
  37. package/{lazy/index.js → src/lazy.ts} +1 -0
  38. package/{registry/index.js → src/registry.ts} +10 -0
  39. package/FilteredResults/DataTable/index.js +0 -18
  40. package/FilteredResults/DataTable/package.json +0 -6
  41. package/FilteredResults/DataTable.js.map +0 -7
  42. package/FilteredResults/FilterChips/index.js +0 -52
  43. package/FilteredResults/FilterChips/package.json +0 -6
  44. package/FilteredResults/FilterChips.js.map +0 -7
  45. package/FilteredResults/FilterFields/index.js +0 -11
  46. package/FilteredResults/FilterFields/package.json +0 -6
  47. package/FilteredResults/FilterFields.js.map +0 -7
  48. package/FilteredResults/FilteredResults.stories.d.ts +0 -8
  49. package/FilteredResults/__stories__/Default.d.ts +0 -2
  50. package/FilteredResults/hooks/index.js +0 -105
  51. package/FilteredResults/hooks/package.json +0 -6
  52. package/FilteredResults/hooks.js.map +0 -7
  53. package/FilteredResults/index.js.map +0 -7
  54. package/FilteredResults/index.test.d.ts +0 -1
  55. package/FilteredResults/package.json +0 -6
  56. package/FilteredResults/splitted.test.d.ts +0 -1
  57. package/ReactModules.stories.d.ts +0 -4
  58. package/cjs/FilteredResults/DataTable/index.js +0 -42
  59. package/cjs/FilteredResults/DataTable.js.map +0 -7
  60. package/cjs/FilteredResults/FilterChips/index.js +0 -82
  61. package/cjs/FilteredResults/FilterChips.js.map +0 -7
  62. package/cjs/FilteredResults/FilterFields/index.js +0 -44
  63. package/cjs/FilteredResults/FilterFields.js.map +0 -7
  64. package/cjs/FilteredResults/hooks/index.js +0 -132
  65. package/cjs/FilteredResults/hooks.js.map +0 -7
  66. package/cjs/FilteredResults/index.js +0 -153
  67. package/cjs/FilteredResults/index.js.map +0 -7
  68. package/cjs/index.js +0 -22
  69. package/cjs/index.js.map +0 -7
  70. package/cjs/lazy/index.js +0 -43
  71. package/cjs/lazy.js.map +0 -7
  72. package/cjs/registry/index.js +0 -63
  73. package/cjs/registry.js.map +0 -7
  74. package/index.js.map +0 -7
  75. package/lazy/package.json +0 -6
  76. package/registry/package.json +0 -6
@@ -1,120 +1,104 @@
1
- import React, { useContext, useEffect } from "react";
2
- import FormBuilder from "@digigov/form/FormBuilder";
3
- import { FormContext } from "@digigov/form/FormContext";
4
- import { FilterChips } from "@digigov/react-modules/FilteredResults/FilterChips";
5
- import { FilterFields } from "@digigov/react-modules/FilteredResults/FilterFields";
6
- import FilterContainer, {
7
- FilterContent,
8
- FilterHeadingContainer
9
- } from "@digigov/ui/app/FilterContainer";
10
- import { Button } from "@digigov/ui/form/Button";
11
- import { Grid } from "@digigov/ui/layouts/Grid";
12
- import { SectionBreak } from "@digigov/ui/layouts/SectionBreak";
13
- import { Drawer, DrawerHeading } from "@digigov/ui/navigation/Drawer";
14
- import { useDrawer } from "@digigov/ui/navigation/Drawer/hooks";
15
- import { Heading } from "@digigov/ui/typography/Heading";
16
- const FormBuilderSyncValues = ({ values, autoSubmit }) => {
17
- const form = useContext(FormContext);
18
- const previousValues = form.getValues();
19
- useEffect(() => {
20
- const mergedObject = { ...values, ...previousValues };
21
- let shouldSubmit = false;
22
- for (const key in mergedObject) {
23
- if (values[key] !== void 0 && previousValues[key] !== values[key]) {
24
- shouldSubmit = true;
25
- previousValues[key] = values[key];
26
- form.setValue(key, values[key]);
27
- }
28
- }
29
- if (autoSubmit && shouldSubmit) {
30
- form.submit();
31
- }
32
- }, [values]);
33
- return /* @__PURE__ */ React.createElement(React.Fragment, null);
1
+ import react, { useContext, useEffect } from "react";
2
+ import FormBuilder from "@digigov/form/FormBuilder/index.js";
3
+ import { FormContext } from "@digigov/form/FormContext.js";
4
+ import { FilterChips } from "./FilterChips.js";
5
+ import { FilterFields } from "./FilterFields.js";
6
+ import FilterContainer, { FilterContent, FilterHeadingContainer } from "@digigov/ui/app/FilterContainer/index.js";
7
+ import { Button } from "@digigov/ui/form/Button/index.js";
8
+ import { Grid } from "@digigov/ui/layouts/Grid/index.js";
9
+ import { SectionBreak } from "@digigov/ui/layouts/SectionBreak/index.js";
10
+ import { Drawer, DrawerHeading } from "@digigov/ui/navigation/Drawer/index.js";
11
+ import { useDrawer } from "@digigov/ui/navigation/Drawer/hooks.js";
12
+ import { Heading } from "@digigov/ui/typography/Heading/index.js";
13
+ const FormBuilderSyncValues = ({ values, autoSubmit })=>{
14
+ const form = useContext(FormContext);
15
+ const previousValues = form.getValues();
16
+ useEffect(()=>{
17
+ const mergedObject = {
18
+ ...values,
19
+ ...previousValues
20
+ };
21
+ let shouldSubmit = false;
22
+ for(const key in mergedObject)if (void 0 !== values[key] && previousValues[key] !== values[key]) {
23
+ shouldSubmit = true;
24
+ previousValues[key] = values[key];
25
+ form.setValue(key, values[key]);
26
+ }
27
+ if (autoSubmit && shouldSubmit) form.submit();
28
+ }, [
29
+ values
30
+ ]);
31
+ return /*#__PURE__*/ react.createElement(react.Fragment, null);
34
32
  };
35
- const DrawerFilteredResults = React.forwardRef(
36
- function DrawerFilteredResults2({ fields, direction = "left", ...props }, ref) {
33
+ const FilteredResults_DrawerFilteredResults = /*#__PURE__*/ react.forwardRef(function({ fields, direction = 'left', ...props }, ref) {
37
34
  const { registerDrawer, registerAction, currentOpen } = useDrawer();
38
- return /* @__PURE__ */ React.createElement(React.Fragment, null, currentOpen && /* @__PURE__ */ React.createElement(Grid, { item: true, xs: 12, md: 12, lg: 4, ref }, /* @__PURE__ */ React.createElement(
39
- Drawer,
40
- {
41
- ...registerDrawer("filters-drawer", {
42
- upRelative: "lg",
43
- direction
44
- })
45
- },
46
- /* @__PURE__ */ React.createElement(DrawerHeading, { ...registerAction("filters-drawer", "close") }, /* @__PURE__ */ React.createElement(Heading, { size: "md" }, "\u03A6\u03AF\u03BB\u03C4\u03C1\u03B1")),
47
- /* @__PURE__ */ React.createElement(FilterContent, null, /* @__PURE__ */ React.createElement(FilterFields, { fields, horizontal: false }))
48
- )), /* @__PURE__ */ React.createElement(Grid, { item: true, xs: 12, md: 12, lg: currentOpen ? 8 : 12 }, /* @__PURE__ */ React.createElement(
49
- Button,
50
- {
35
+ return /*#__PURE__*/ react.createElement(react.Fragment, null, currentOpen && /*#__PURE__*/ react.createElement(Grid, {
36
+ item: true,
37
+ xs: 12,
38
+ md: 12,
39
+ lg: 4,
40
+ ref: ref
41
+ }, /*#__PURE__*/ react.createElement(Drawer, registerDrawer('filters-drawer', {
42
+ upRelative: 'lg',
43
+ direction
44
+ }), /*#__PURE__*/ react.createElement(DrawerHeading, registerAction('filters-drawer', 'close'), /*#__PURE__*/ react.createElement(Heading, {
45
+ size: "md"
46
+ }, "Φίλτρα")), /*#__PURE__*/ react.createElement(FilterContent, null, /*#__PURE__*/ react.createElement(FilterFields, {
47
+ fields: fields,
48
+ horizontal: false
49
+ })))), /*#__PURE__*/ react.createElement(Grid, {
50
+ item: true,
51
+ xs: 12,
52
+ md: 12,
53
+ lg: currentOpen ? 8 : 12
54
+ }, /*#__PURE__*/ react.createElement(Button, {
51
55
  mb: 4,
52
- ...registerAction(
53
- "filters-drawer",
54
- currentOpen === "filters-drawer" ? "close" : "open"
55
- ),
56
+ ...registerAction('filters-drawer', 'filters-drawer' === currentOpen ? 'close' : 'open'),
56
57
  color: "secondary"
57
- },
58
- "\u03A6\u03AF\u03BB\u03C4\u03C1\u03B1"
59
- ), /* @__PURE__ */ React.createElement(FilterChips, null), props.children));
60
- }
61
- );
62
- const BlockFilteredResults = React.forwardRef(
63
- function BlockFilteredResults2({ fields, ...props }, ref) {
64
- const [open, setOpen] = React.useState(true);
65
- return /* @__PURE__ */ React.createElement(Grid, { item: true, xs: 12, ref }, /* @__PURE__ */ React.createElement(FilterContainer, { open }, /* @__PURE__ */ React.createElement(FilterHeadingContainer, { onClick: () => setOpen(false) }, /* @__PURE__ */ React.createElement(Heading, { size: "md" }, "\u03A6\u03AF\u03BB\u03C4\u03C1\u03B1")), /* @__PURE__ */ React.createElement(FilterContent, null, /* @__PURE__ */ React.createElement(FilterChips, null), /* @__PURE__ */ React.createElement(FilterFields, { fields, horizontal: true }))), /* @__PURE__ */ React.createElement(
66
- Button,
67
- {
58
+ }, "Φίλτρα"), /*#__PURE__*/ react.createElement(FilterChips, null), props.children));
59
+ });
60
+ const FilteredResults_BlockFilteredResults = /*#__PURE__*/ react.forwardRef(function({ fields, ...props }, ref) {
61
+ const [open, setOpen] = react.useState(true);
62
+ return /*#__PURE__*/ react.createElement(Grid, {
63
+ item: true,
64
+ xs: 12,
65
+ ref: ref
66
+ }, /*#__PURE__*/ react.createElement(FilterContainer, {
67
+ open: open
68
+ }, /*#__PURE__*/ react.createElement(FilterHeadingContainer, {
69
+ onClick: ()=>setOpen(false)
70
+ }, /*#__PURE__*/ react.createElement(Heading, {
71
+ size: "md"
72
+ }, "Φίλτρα")), /*#__PURE__*/ react.createElement(FilterContent, null, /*#__PURE__*/ react.createElement(FilterChips, null), /*#__PURE__*/ react.createElement(FilterFields, {
73
+ fields: fields,
74
+ horizontal: true
75
+ }))), /*#__PURE__*/ react.createElement(Button, {
68
76
  color: "secondary",
69
77
  mdUpHidden: true,
70
78
  mb: 4,
71
- onClick: () => setOpen(true)
72
- },
73
- "\u03A6\u03AF\u03BB\u03C4\u03C1\u03B1"
74
- ), /* @__PURE__ */ React.createElement(SectionBreak, { size: "md", visible: false }), props.children);
75
- }
76
- );
77
- const FilteredResults = React.forwardRef(function FilteredResults2({
78
- fields,
79
- onSearch,
80
- variant = "block",
81
- defaultFilters,
82
- currentFilters,
83
- children
84
- }, ref) {
85
- const isDrawer = variant.startsWith("drawer-");
86
- return /* @__PURE__ */ React.createElement(
87
- FormBuilder,
88
- {
89
- onSubmit: onSearch,
90
- initial: defaultFilters,
91
- fields,
92
- grid: true,
93
- ref
94
- },
95
- currentFilters && /* @__PURE__ */ React.createElement(FormBuilderSyncValues, { values: currentFilters, autoSubmit: true }),
96
- isDrawer ? (
97
- // @ts-ignore
98
- /* @__PURE__ */ React.createElement(
99
- DrawerFilteredResults,
100
- {
101
- fields,
102
- direction: variant.split("-")[1]
103
- },
104
- children
105
- )
106
- ) : (
107
- // @ts-ignore
108
- /* @__PURE__ */ React.createElement(BlockFilteredResults, { fields }, children)
109
- )
110
- );
79
+ onClick: ()=>setOpen(true)
80
+ }, "Φίλτρα"), /*#__PURE__*/ react.createElement(SectionBreak, {
81
+ size: "md",
82
+ visible: false
83
+ }), props.children);
111
84
  });
112
- var FilteredResults_default = FilteredResults;
113
- export {
114
- BlockFilteredResults,
115
- DrawerFilteredResults,
116
- FilteredResults,
117
- FormBuilderSyncValues,
118
- FilteredResults_default as default
119
- };
120
- //# sourceMappingURL=index.js.map
85
+ const FilteredResults_FilteredResults = /*#__PURE__*/ react.forwardRef(function({ fields, onSearch, variant = 'block', defaultFilters, currentFilters, children }, ref) {
86
+ const isDrawer = variant.startsWith('drawer-');
87
+ return /*#__PURE__*/ react.createElement(FormBuilder, {
88
+ onSubmit: onSearch,
89
+ initial: defaultFilters,
90
+ fields: fields,
91
+ grid: true,
92
+ ref: ref
93
+ }, currentFilters && /*#__PURE__*/ react.createElement(FormBuilderSyncValues, {
94
+ values: currentFilters,
95
+ autoSubmit: true
96
+ }), isDrawer ? /*#__PURE__*/ react.createElement(FilteredResults_DrawerFilteredResults, {
97
+ fields: fields,
98
+ direction: variant.split('-')[1]
99
+ }, children) : /*#__PURE__*/ react.createElement(FilteredResults_BlockFilteredResults, {
100
+ fields: fields
101
+ }, children));
102
+ });
103
+ const src_FilteredResults = FilteredResults_FilteredResults;
104
+ export { FilteredResults_BlockFilteredResults as BlockFilteredResults, FilteredResults_DrawerFilteredResults as DrawerFilteredResults, FilteredResults_FilteredResults as FilteredResults, FormBuilderSyncValues, src_FilteredResults as default };
package/index.d.ts CHANGED
@@ -1 +1,2 @@
1
- export * from '@digigov/react-modules/FilteredResults';
1
+ export * from './FilteredResults/index.js';
2
+ export * from './Faq/index.js';
package/index.js CHANGED
@@ -1,7 +1,7 @@
1
- /** @license Digigov v1.2.0-254f7786
1
+ /** @license Digigov v1.2.0-290ada95
2
2
  *
3
3
  * This source code is licensed under the BSD-2-Clause license found in the
4
4
  * LICENSE file in the root directory of this source tree.
5
5
  */
6
- export * from "@digigov/react-modules/FilteredResults";
7
- //# sourceMappingURL=index.js.map
6
+ export * from "./FilteredResults/index.js";
7
+ export * from "./Faq/index.js";
package/lazy.d.ts ADDED
@@ -0,0 +1,17 @@
1
+ declare const _default: {
2
+ FormBuilderSyncValues: import("react").LazyExoticComponent<({ values, autoSubmit }: {
3
+ values: any;
4
+ autoSubmit: any;
5
+ }) => import("react").JSX.Element>;
6
+ DrawerFilteredResults: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("react").RefAttributes<HTMLDivElement>>>;
7
+ BlockFilteredResults: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("react").RefAttributes<HTMLDivElement>>>;
8
+ FilteredResults: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("./FilteredResults/index.js").FilteredResultsProps<Record<string, import("./FilteredResults/index.js").ScalarType>, Record<string, import("./FilteredResults/index.js").ScalarType>> & import("react").RefAttributes<HTMLFormElement>>>;
9
+ Faq: import("react").LazyExoticComponent<import("react").ForwardRefExoticComponent<import("./Faq/index.js").FaqProps & import("react").RefAttributes<HTMLDivElement>>>;
10
+ DataTable: import("react").LazyExoticComponent<typeof import("./FilteredResults/DataTable.js").DataTable>;
11
+ FilterChips: import("react").LazyExoticComponent<() => import("react").JSX.Element | null>;
12
+ FilterFields: import("react").LazyExoticComponent<({ fields, horizontal }: {
13
+ fields: any;
14
+ horizontal: any;
15
+ }) => import("react").JSX.Element>;
16
+ };
17
+ export default _default;
package/lazy.js ADDED
@@ -0,0 +1,28 @@
1
+ import { lazy } from "react";
2
+ const src_lazy = {
3
+ FormBuilderSyncValues: lazy(()=>import("./FilteredResults/index.js").then((module)=>({
4
+ default: module['FormBuilderSyncValues']
5
+ }))),
6
+ DrawerFilteredResults: lazy(()=>import("./FilteredResults/index.js").then((module)=>({
7
+ default: module['DrawerFilteredResults']
8
+ }))),
9
+ BlockFilteredResults: lazy(()=>import("./FilteredResults/index.js").then((module)=>({
10
+ default: module['BlockFilteredResults']
11
+ }))),
12
+ FilteredResults: lazy(()=>import("./FilteredResults/index.js").then((module)=>({
13
+ default: module['FilteredResults']
14
+ }))),
15
+ Faq: lazy(()=>import("./Faq/index.js").then((module)=>({
16
+ default: module['Faq']
17
+ }))),
18
+ DataTable: lazy(()=>import("./FilteredResults/DataTable.js").then((module)=>({
19
+ default: module['DataTable']
20
+ }))),
21
+ FilterChips: lazy(()=>import("./FilteredResults/FilterChips.js").then((module)=>({
22
+ default: module['FilterChips']
23
+ }))),
24
+ FilterFields: lazy(()=>import("./FilteredResults/FilterFields.js").then((module)=>({
25
+ default: module['FilterFields']
26
+ })))
27
+ };
28
+ export { src_lazy as default };
package/package.json CHANGED
@@ -1,23 +1,23 @@
1
1
  {
2
2
  "name": "@digigov/react-modules",
3
- "version": "1.2.0-254f7786",
3
+ "version": "1.2.0-290ada95",
4
4
  "description": "@digigov patterns based on ui components",
5
- "main": "./cjs/index.js",
6
- "module": "./index.js",
5
+ "type": "module",
7
6
  "dependencies": {
8
- "@digigov/react-icons": "2.0.0-254f7786",
9
- "@digigov/form": "2.0.0-254f7786",
10
- "@digigov/ui": "2.0.0-254f7786",
7
+ "@digigov/react-icons": "2.0.0-290ada95",
8
+ "@digigov/form": "2.0.0-290ada95",
9
+ "@digigov/ui": "2.0.0-290ada95",
11
10
  "dompurify": "3.0.6"
12
11
  },
13
12
  "peerDependencies": {
14
13
  "react-query": "2.26.4",
15
- "clsx": "1.1.1",
16
- "react": ">=16.8.0 <19.0.0",
17
- "react-dom": ">=16.8.0 <19.0.0",
18
- "@digigov/react-core": "2.0.0-254f7786",
19
- "@digigov/css": "2.0.0-254f7786"
14
+ "clsx": "2.1.1",
15
+ "react": "^18.3.0 || ^19.1.0",
16
+ "react-dom": "^18.3.0 || ^19.1.0",
17
+ "@digigov/react-core": "2.0.0-290ada95",
18
+ "@digigov/css": "2.0.0-290ada95"
20
19
  },
21
20
  "private": false,
22
- "typings": "./index.d.ts"
21
+ "main": "index.js",
22
+ "module": "index.js"
23
23
  }
package/registry.d.ts ADDED
@@ -0,0 +1,14 @@
1
+ declare const _default: {
2
+ '@digigov/react-modules': {};
3
+ '@digigov/react-modules/Faq/Results': {};
4
+ '@digigov/react-modules/Faq/hooks': {};
5
+ '@digigov/react-modules/Faq': {};
6
+ '@digigov/react-modules/Faq/slug': {};
7
+ '@digigov/react-modules/Faq/utils': {};
8
+ '@digigov/react-modules/FilteredResults/DataTable': {};
9
+ '@digigov/react-modules/FilteredResults/FilterChips': {};
10
+ '@digigov/react-modules/FilteredResults/FilterFields': {};
11
+ '@digigov/react-modules/FilteredResults/hooks': {};
12
+ '@digigov/react-modules/FilteredResults': {};
13
+ };
14
+ export default _default;
package/registry.js ADDED
@@ -0,0 +1,34 @@
1
+ import * as __WEBPACK_EXTERNAL_MODULE__index_js_fb10b2a7__ from "./index.js";
2
+ import * as __WEBPACK_EXTERNAL_MODULE__Faq_Results_js_2bbb1dff__ from "./Faq/Results.js";
3
+ import * as __WEBPACK_EXTERNAL_MODULE__Faq_hooks_js_3eeedcba__ from "./Faq/hooks.js";
4
+ import * as __WEBPACK_EXTERNAL_MODULE__Faq_index_js_2016ecbd__ from "./Faq/index.js";
5
+ import * as __WEBPACK_EXTERNAL_MODULE__Faq_slug_js_c64cf327__ from "./Faq/slug.js";
6
+ import * as __WEBPACK_EXTERNAL_MODULE__Faq_utils_js_116a401a__ from "./Faq/utils.js";
7
+ import * as __WEBPACK_EXTERNAL_MODULE__FilteredResults_DataTable_js_bf43138f__ from "./FilteredResults/DataTable.js";
8
+ import * as __WEBPACK_EXTERNAL_MODULE__FilteredResults_FilterChips_js_c4de0176__ from "./FilteredResults/FilterChips.js";
9
+ import * as __WEBPACK_EXTERNAL_MODULE__FilteredResults_FilterFields_js_6a1ea1f3__ from "./FilteredResults/FilterFields.js";
10
+ import * as __WEBPACK_EXTERNAL_MODULE__FilteredResults_hooks_js_83f6a806__ from "./FilteredResults/hooks.js";
11
+ import * as __WEBPACK_EXTERNAL_MODULE__FilteredResults_index_js_4a35fe24__ from "./FilteredResults/index.js";
12
+ function lazyImport(pkgImport) {
13
+ return new Proxy({}, {
14
+ get: (_target, name)=>{
15
+ if ('__esModule' === name || 'default' === name) return pkgImport.default;
16
+ if ('*' === name) return pkgImport;
17
+ return pkgImport[name];
18
+ }
19
+ });
20
+ }
21
+ const registry = {
22
+ '@digigov/react-modules': lazyImport(__WEBPACK_EXTERNAL_MODULE__index_js_fb10b2a7__),
23
+ '@digigov/react-modules/Faq/Results': lazyImport(__WEBPACK_EXTERNAL_MODULE__Faq_Results_js_2bbb1dff__),
24
+ '@digigov/react-modules/Faq/hooks': lazyImport(__WEBPACK_EXTERNAL_MODULE__Faq_hooks_js_3eeedcba__),
25
+ '@digigov/react-modules/Faq': lazyImport(__WEBPACK_EXTERNAL_MODULE__Faq_index_js_2016ecbd__),
26
+ '@digigov/react-modules/Faq/slug': lazyImport(__WEBPACK_EXTERNAL_MODULE__Faq_slug_js_c64cf327__),
27
+ '@digigov/react-modules/Faq/utils': lazyImport(__WEBPACK_EXTERNAL_MODULE__Faq_utils_js_116a401a__),
28
+ '@digigov/react-modules/FilteredResults/DataTable': lazyImport(__WEBPACK_EXTERNAL_MODULE__FilteredResults_DataTable_js_bf43138f__),
29
+ '@digigov/react-modules/FilteredResults/FilterChips': lazyImport(__WEBPACK_EXTERNAL_MODULE__FilteredResults_FilterChips_js_c4de0176__),
30
+ '@digigov/react-modules/FilteredResults/FilterFields': lazyImport(__WEBPACK_EXTERNAL_MODULE__FilteredResults_FilterFields_js_6a1ea1f3__),
31
+ '@digigov/react-modules/FilteredResults/hooks': lazyImport(__WEBPACK_EXTERNAL_MODULE__FilteredResults_hooks_js_83f6a806__),
32
+ '@digigov/react-modules/FilteredResults': lazyImport(__WEBPACK_EXTERNAL_MODULE__FilteredResults_index_js_4a35fe24__)
33
+ };
34
+ export { registry as default };
@@ -0,0 +1,7 @@
1
+ import Faq from '@digigov/react-modules/Faq';
2
+ export default {
3
+ title: 'Digigov React Modules/Faq',
4
+ component: Faq,
5
+ displayName: 'Faq',
6
+ };
7
+ export { Default } from '@digigov/react-modules/Faq/__stories__/Default';
@@ -0,0 +1,53 @@
1
+ // Results.tsx
2
+ import React, { useCallback } from 'react';
3
+ import { useFormContext } from '@digigov/form/FormBuilder';
4
+ import Button from '@digigov/ui/form/Button';
5
+ import { Heading } from '@digigov/ui/typography/Heading';
6
+
7
+ interface ResultsProps {
8
+ filteredSections: number;
9
+ primarySections: number;
10
+ Onclose: (v: string) => void;
11
+ activeQa: string;
12
+ }
13
+
14
+ const Results = React.forwardRef<HTMLHeadingElement, ResultsProps>(
15
+ function Results(
16
+ { filteredSections, Onclose, activeQa, primarySections },
17
+ ref
18
+ ) {
19
+ const { resetField, submit } = useFormContext();
20
+ const handleReset = useCallback(
21
+ (e: React.MouseEvent<HTMLButtonElement>) => {
22
+ e.preventDefault();
23
+
24
+ // Remove 'text' from the URL
25
+ const urlParams = new URLSearchParams(window.location.search);
26
+ urlParams.delete('text');
27
+ urlParams.delete('activeQa');
28
+ window.history.replaceState({}, '', '?' + urlParams.toString());
29
+
30
+ // Reset the form field
31
+ resetField('text', { defaultValue: '' });
32
+
33
+ // Close active FAQ
34
+ Onclose(activeQa);
35
+
36
+ // Submit the form (if needed)
37
+ submit();
38
+ },
39
+ [resetField, Onclose, submit, activeQa] // Added necessary dependencies
40
+ );
41
+
42
+ return (
43
+ <Heading ref={ref} size="sm" marginTop={4}>
44
+ Αποτελέσματα: {filteredSections} από {primarySections}.{' '}
45
+ <Button variant="link" onClick={(e) => handleReset(e)}>
46
+ Επαναφορά αναζήτησης
47
+ </Button>
48
+ </Heading>
49
+ );
50
+ }
51
+ );
52
+
53
+ export default Results;