@digigov/react-modules 1.1.4

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 (82) hide show
  1. package/CHANGELOG.md +0 -0
  2. package/FilteredResults/DataTable/index.js +18 -0
  3. package/FilteredResults/DataTable/package.json +6 -0
  4. package/FilteredResults/DataTable.d.ts +5 -0
  5. package/FilteredResults/DataTable.js.map +7 -0
  6. package/FilteredResults/FilterChips/index.js +52 -0
  7. package/FilteredResults/FilterChips/package.json +6 -0
  8. package/FilteredResults/FilterChips.d.ts +3 -0
  9. package/FilteredResults/FilterChips.js.map +7 -0
  10. package/FilteredResults/FilterFields/index.js +11 -0
  11. package/FilteredResults/FilterFields/package.json +6 -0
  12. package/FilteredResults/FilterFields.d.ts +5 -0
  13. package/FilteredResults/FilterFields.js.map +7 -0
  14. package/FilteredResults/FilteredResults.stories/index.js +12 -0
  15. package/FilteredResults/FilteredResults.stories/package.json +6 -0
  16. package/FilteredResults/FilteredResults.stories.d.ts +8 -0
  17. package/FilteredResults/FilteredResults.stories.js.map +7 -0
  18. package/FilteredResults/__stories__/Default/index.js +220 -0
  19. package/FilteredResults/__stories__/Default/package.json +6 -0
  20. package/FilteredResults/__stories__/Default.d.ts +2 -0
  21. package/FilteredResults/__stories__/Default.js.map +7 -0
  22. package/FilteredResults/hooks/index.js +105 -0
  23. package/FilteredResults/hooks/package.json +6 -0
  24. package/FilteredResults/hooks.d.ts +22 -0
  25. package/FilteredResults/hooks.js.map +7 -0
  26. package/FilteredResults/index.d.ts +25 -0
  27. package/FilteredResults/index.js +122 -0
  28. package/FilteredResults/index.js.map +7 -0
  29. package/FilteredResults/index.test.d.ts +1 -0
  30. package/FilteredResults/package.json +6 -0
  31. package/LICENSE +0 -0
  32. package/README.md +0 -0
  33. package/ReactModules.stories/index.js +7 -0
  34. package/ReactModules.stories/package.json +6 -0
  35. package/ReactModules.stories.d.ts +4 -0
  36. package/ReactModules.stories.js.map +7 -0
  37. package/cjs/FilteredResults/DataTable/index.js +42 -0
  38. package/cjs/FilteredResults/DataTable.js.map +7 -0
  39. package/cjs/FilteredResults/FilterChips/index.js +82 -0
  40. package/cjs/FilteredResults/FilterChips.js.map +7 -0
  41. package/cjs/FilteredResults/FilterFields/index.js +44 -0
  42. package/cjs/FilteredResults/FilterFields.js.map +7 -0
  43. package/cjs/FilteredResults/FilteredResults.stories/index.js +45 -0
  44. package/cjs/FilteredResults/FilteredResults.stories.js.map +7 -0
  45. package/cjs/FilteredResults/__stories__/Default/index.js +250 -0
  46. package/cjs/FilteredResults/__stories__/Default.js.map +7 -0
  47. package/cjs/FilteredResults/hooks/index.js +132 -0
  48. package/cjs/FilteredResults/hooks.js.map +7 -0
  49. package/cjs/FilteredResults/index.js +155 -0
  50. package/cjs/FilteredResults/index.js.map +7 -0
  51. package/cjs/ReactModules.stories/index.js +26 -0
  52. package/cjs/ReactModules.stories.js.map +7 -0
  53. package/cjs/index.js +22 -0
  54. package/cjs/index.js.map +7 -0
  55. package/cjs/lazy/index.js +43 -0
  56. package/cjs/lazy.js.map +7 -0
  57. package/cjs/registry/index.js +63 -0
  58. package/cjs/registry.js.map +7 -0
  59. package/index.d.ts +1 -0
  60. package/index.js +7 -0
  61. package/index.js.map +7 -0
  62. package/lazy/index.js +14 -0
  63. package/lazy/package.json +6 -0
  64. package/lazy.d.ts +16 -0
  65. package/lazy.js.map +7 -0
  66. package/package.json +25 -0
  67. package/registry/index.js +34 -0
  68. package/registry/package.json +6 -0
  69. package/registry.d.ts +9 -0
  70. package/registry.js.map +7 -0
  71. package/src/FilteredResults/DataTable.tsx +47 -0
  72. package/src/FilteredResults/FilterChips.tsx +54 -0
  73. package/src/FilteredResults/FilterFields.tsx +15 -0
  74. package/src/FilteredResults/FilteredResults.stories.js +7 -0
  75. package/src/FilteredResults/__stories__/Default.tsx +243 -0
  76. package/src/FilteredResults/hooks.ts +131 -0
  77. package/src/FilteredResults/index.test.tsx +20 -0
  78. package/src/FilteredResults/index.tsx +180 -0
  79. package/src/ReactModules.stories.js +3 -0
  80. package/src/index.ts +1 -0
  81. package/src/lazy.js +11 -0
  82. package/src/registry.js +35 -0
@@ -0,0 +1,243 @@
1
+ import React from 'react';
2
+ import { FieldSpec } from '@digigov/form/types';
3
+ import FilteredResults, {
4
+ DataConfigType,
5
+ } from '@digigov/react-modules/FilteredResults';
6
+ import { DataTable } from '@digigov/react-modules/FilteredResults/DataTable';
7
+ import {
8
+ useURLParamsSearch,
9
+ useStaticSearch,
10
+ } from '@digigov/react-modules/FilteredResults/hooks';
11
+ import { CheckIcon, UncheckIcon } from '@digigov/ui/icons';
12
+ import Link from '@digigov/ui/navigation/Link';
13
+
14
+ const fields: FieldSpec[] = [
15
+ {
16
+ type: 'string',
17
+ key: 'text',
18
+ label: {
19
+ primary: 'Αναζήτηση λέξης',
20
+ },
21
+ },
22
+ {
23
+ type: 'choice:single',
24
+ key: 'name',
25
+ label: {
26
+ primary: 'Όνομα',
27
+ },
28
+ extra: {
29
+ component: 'Select',
30
+ options: [
31
+ {
32
+ label: {
33
+ primary: '',
34
+ },
35
+ value: '',
36
+ },
37
+ {
38
+ label: {
39
+ primary: 'Καλλιόπη Παπαδοπούλου',
40
+ },
41
+ value: 'Kalliopi Papadopoulou',
42
+ },
43
+ {
44
+ label: {
45
+ primary: 'Μάριος Μενεξές',
46
+ },
47
+ value: 'Marios Menekses',
48
+ },
49
+ {
50
+ label: {
51
+ primary: 'Μαρία Φλούπη',
52
+ },
53
+ value: 'Maria Floupi',
54
+ },
55
+ {
56
+ label: {
57
+ primary: 'Ηλέκτρα Αποστόλου',
58
+ },
59
+ value: 'Ilektra Apostolou',
60
+ },
61
+ ],
62
+ },
63
+ },
64
+ {
65
+ type: 'choice:single',
66
+ key: 'role',
67
+ label: {
68
+ primary: 'Ρόλος',
69
+ },
70
+ extra: {
71
+ component: 'Select',
72
+ options: [
73
+ {
74
+ label: {
75
+ primary: '',
76
+ },
77
+ value: '',
78
+ },
79
+ {
80
+ label: {
81
+ primary: 'Διαχειριστής',
82
+ },
83
+ value: 'admin',
84
+ },
85
+ {
86
+ label: {
87
+ primary: 'Χειριστής',
88
+ },
89
+ value: 'user',
90
+ },
91
+ ],
92
+ },
93
+ },
94
+ {
95
+ type: 'choice:single',
96
+ key: 'rights',
97
+ label: {
98
+ primary: 'Δικαιώματα',
99
+ },
100
+ extra: {
101
+ component: 'Select',
102
+ options: [
103
+ {
104
+ label: {
105
+ primary: '',
106
+ },
107
+ value: '',
108
+ },
109
+ {
110
+ label: {
111
+ primary: 'Ναι',
112
+ },
113
+ value: true,
114
+ },
115
+ {
116
+ label: {
117
+ primary: 'Όχι',
118
+ },
119
+ value: false,
120
+ },
121
+ ],
122
+ },
123
+ },
124
+ ];
125
+
126
+ const displayLink = (value) => {
127
+ return <Link href={`#/${value}`}>{value}</Link>;
128
+ };
129
+ const displayRights = (value) => {
130
+ return <>{value ? <CheckIcon /> : <UncheckIcon />}</>;
131
+ };
132
+
133
+ type DataType = {
134
+ name: string;
135
+ case_id: number;
136
+ role: string;
137
+ email: string;
138
+ rights: boolean;
139
+ };
140
+
141
+ const data: DataType[] = [
142
+ {
143
+ name: 'Μάριος Μενεξές',
144
+ case_id: 123,
145
+ role: 'Χειριστής',
146
+ email: 'marios@mail.com',
147
+ rights: false,
148
+ },
149
+ {
150
+ name: 'Καλλιόπη Παπαδοπούλου',
151
+ case_id: 124,
152
+ role: 'Χειριστής',
153
+ email: 'kalliopi@mail.com',
154
+ rights: false,
155
+ },
156
+ {
157
+ name: 'Μαρία Φλούπη',
158
+ case_id: 125,
159
+ role: 'Διαχειριστής',
160
+ email: 'maria@mail.com',
161
+ rights: true,
162
+ },
163
+ {
164
+ name: 'Ηλέκτρα Αποστόλου',
165
+ case_id: 126,
166
+ role: 'Διαχειριστής',
167
+ email: 'ilektra@mail.com',
168
+ rights: true,
169
+ },
170
+ ];
171
+
172
+ const dataConfig: DataConfigType[] = [
173
+ {
174
+ key: 'name',
175
+ title: 'Όνομα',
176
+ },
177
+ {
178
+ key: 'case_id',
179
+ title: 'Αρ. Υπόθεσης',
180
+ displayComponent: displayLink,
181
+ },
182
+ {
183
+ key: 'role',
184
+ title: 'Ρόλος',
185
+ },
186
+ {
187
+ key: 'email',
188
+ title: 'Email',
189
+ },
190
+ {
191
+ key: 'rights',
192
+ title: 'Δικαιώματα',
193
+ displayComponent: displayRights,
194
+ },
195
+ ];
196
+
197
+ type InitialFiltersType = {
198
+ [K in (typeof dataConfig)[number]['key']]: string;
199
+ };
200
+
201
+ const initialFilters: InitialFiltersType = {
202
+ name: '',
203
+ case_id: '',
204
+ role: '',
205
+ text: '',
206
+ rights: '',
207
+ };
208
+
209
+ export const Default = () => {
210
+ const { search, results } = useStaticSearch<DataType, InitialFiltersType>({
211
+ fields,
212
+ data,
213
+ initialFilters,
214
+ });
215
+ const navigate = (url) => {
216
+ if (window.history.pushState) {
217
+ const newUrl =
218
+ window.location.protocol +
219
+ '//' +
220
+ window.location.host +
221
+ window.location.pathname +
222
+ url;
223
+ window.history.pushState({ path: newUrl }, '', newUrl);
224
+ }
225
+ };
226
+ const { search: urlSearch, values } = useURLParamsSearch(search, {
227
+ navigate,
228
+ fields,
229
+ });
230
+
231
+ return (
232
+ <FilteredResults
233
+ data={results}
234
+ variant="block"
235
+ currentFilters={values}
236
+ defaultFilters={initialFilters}
237
+ fields={fields}
238
+ onSearch={urlSearch}
239
+ >
240
+ <DataTable dataConfig={dataConfig} data={results} />
241
+ </FilteredResults>
242
+ );
243
+ };
@@ -0,0 +1,131 @@
1
+ import { useState, useEffect, useMemo } from 'react';
2
+ import { FieldSpec } from '@digigov/form/types';
3
+ import { ScalarType } from '@digigov/react-modules/FilteredResults';
4
+
5
+ export function isBooleanString(str: string): boolean {
6
+ return /^(true|false)$/i.test(str);
7
+ }
8
+
9
+ export function normalizeText(text: string): string {
10
+ return text.normalize('NFD').replace(/[\u0300-\u036f]/g, '');
11
+ }
12
+
13
+ export const getOptionLabelForSelectValue = (field, value) => {
14
+ if (field.extra?.options) {
15
+ const matchedOption = field.extra.options.find(
16
+ (option) => option.value.toString() === value?.toString()
17
+ );
18
+ if (matchedOption) {
19
+ return matchedOption.label.primary;
20
+ }
21
+ }
22
+ return value;
23
+ };
24
+
25
+ export const useURLParamsSearch = (searchFunc, { navigate, fields }) => {
26
+ const urlParams = new URLSearchParams(window.location.search);
27
+ const currentParams = Object.fromEntries(urlParams.entries());
28
+ const values = fields.reduce((newValues, field) => {
29
+ if (currentParams[field.key]) {
30
+ newValues[field.key] = currentParams[field.key];
31
+ }
32
+ return newValues;
33
+ }, {});
34
+
35
+ const search = (params) => {
36
+ navigate(
37
+ '?' +
38
+ new URLSearchParams(
39
+ // @ts-ignore
40
+ Object.entries({ ...currentParams, ...params }).filter(
41
+ ([_, value]) => !!value
42
+ )
43
+ ).toString()
44
+ );
45
+ return searchFunc(params);
46
+ };
47
+ return { search, values };
48
+ };
49
+
50
+ interface UseStaticSearchProps<
51
+ DT extends Record<string, ScalarType>,
52
+ FT extends Record<string, ScalarType>,
53
+ > {
54
+ fields: FieldSpec[];
55
+ data: DT[];
56
+ initialFilters: FT;
57
+ }
58
+
59
+ export function useStaticSearch<
60
+ DT extends Record<string, ScalarType>,
61
+ FT extends Record<string, ScalarType>,
62
+ >({ fields, data, initialFilters }: UseStaticSearchProps<DT, FT>) {
63
+ const [results, setResults] = useState<DT[]>(data);
64
+
65
+ useEffect(() => {
66
+ search(initialFilters);
67
+ }, [initialFilters]);
68
+
69
+ const search = (filters: FT) => {
70
+ if (!filters || Object.keys(filters).every((key) => filters[key] === '')) {
71
+ setResults(data);
72
+ return;
73
+ }
74
+
75
+ const newResults = data.filter((row) => {
76
+ const filterKeys = Object.keys(filters);
77
+ const enabledFilters = filterKeys.filter(
78
+ (filterKey) =>
79
+ filters[filterKey]?.toString() && row[filterKey]?.toString()
80
+ );
81
+ const freeTextFilters = filterKeys.filter(
82
+ (filterKey) =>
83
+ filters[filterKey]?.toString() && !row[filterKey]?.toString()
84
+ );
85
+ let filtersMatchingValue = false;
86
+
87
+ // Filter the fields that exists as columns in table
88
+ if (enabledFilters.length > 0) {
89
+ filtersMatchingValue = enabledFilters.every((filterKey) => {
90
+ if (filters[filterKey]?.toString() !== row[filterKey]?.toString()) {
91
+ const field = fields.find((f) => f.key === filterKey);
92
+ const optionsObj = field?.extra?.options.find(
93
+ (option) => option?.label?.primary === row[filterKey]
94
+ );
95
+ return (
96
+ optionsObj?.value.toString() === filters[filterKey]?.toString()
97
+ );
98
+ }
99
+ filtersMatchingValue = true;
100
+ return filtersMatchingValue;
101
+ });
102
+ if (!filtersMatchingValue) {
103
+ return false;
104
+ }
105
+ }
106
+ // Filter the free text fields (doesn't exist as columns)
107
+ if (freeTextFilters.length > 0) {
108
+ return freeTextFilters.every((filterKey) => {
109
+ return Object.values(row).some((value) => {
110
+ if (typeof value !== 'string') {
111
+ return false;
112
+ }
113
+ const normalizedItemValue = normalizeText(
114
+ value.toString().toLowerCase()
115
+ );
116
+
117
+ const normalizedFilterValue = normalizeText(
118
+ filters[filterKey]?.toString().toLowerCase().trim() || ''
119
+ );
120
+ return normalizedItemValue.includes(normalizedFilterValue);
121
+ });
122
+ });
123
+ }
124
+ return filtersMatchingValue;
125
+ });
126
+
127
+ setResults(newResults);
128
+ };
129
+
130
+ return useMemo(() => ({ search, results }), [search, results]);
131
+ }
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import { test, expect } from '@playwright/experimental-ct-react';
3
+ import TestVariant from '@digigov/ui/utils/TestVariant'
4
+ import { Default } from '@digigov/react-modules/FilteredResults/__stories__/Default';
5
+
6
+ test('renders the All FilteredResults variants', async ({ mount, page }) => {
7
+ await mount(
8
+
9
+ <div>
10
+ <TestVariant title="Default">
11
+ <Default />
12
+ </TestVariant>
13
+ </div>
14
+ )
15
+ await page.evaluate(() => document.fonts.ready);
16
+
17
+ const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
18
+ expect(screenshot).toMatchSnapshot();
19
+ });
20
+
@@ -0,0 +1,180 @@
1
+ import React, { useContext, useEffect } from 'react';
2
+ import FormBuilder from '@digigov/form/FormBuilder';
3
+ import { FormContext } from '@digigov/form/FormContext';
4
+ import { FieldSpec } from '@digigov/form/types';
5
+ import { FilterChips } from '@digigov/react-modules/FilteredResults/FilterChips';
6
+ import { FilterFields } from '@digigov/react-modules/FilteredResults/FilterFields';
7
+ import CloseButton from '@digigov/ui/app/CloseButton';
8
+ import FilterContainer, {
9
+ FilterContent,
10
+ FilterHeadingContainer,
11
+ } from '@digigov/ui/app/FilterContainer';
12
+ import { Button } from '@digigov/ui/form/Button';
13
+ import { Grid } from '@digigov/ui/layouts/Grid';
14
+ import { Hidden } from '@digigov/ui/layouts/Hidden';
15
+ import { SectionBreak } from '@digigov/ui/layouts/SectionBreak';
16
+ import { Drawer, DrawerHeading } from '@digigov/ui/navigation/Drawer';
17
+ import { useDrawer } from '@digigov/ui/navigation/Drawer/hooks';
18
+ import { Heading } from '@digigov/ui/typography/Heading';
19
+
20
+ export type ScalarType = string | number | boolean | null | undefined;
21
+
22
+ export interface DataConfigType {
23
+ key: string;
24
+ title: string;
25
+ displayComponent?: (value: string | number | boolean) => React.ReactNode;
26
+ }
27
+ export interface FilteredResultsProps<
28
+ DT extends Record<string, ScalarType>,
29
+ FT extends Record<string, ScalarType>,
30
+ > {
31
+ fields: FieldSpec[];
32
+ data: DT[];
33
+ variant?: 'drawer-left' | 'drawer-right' | 'block';
34
+ defaultFilters?: FT;
35
+ currentFilters?: FT;
36
+ onSearch: (filters: unknown) => void;
37
+ children?: React.ReactNode;
38
+ }
39
+
40
+ export const FormBuilderSyncValues = ({ values, autoSubmit }) => {
41
+ const form = useContext(FormContext);
42
+ const previousValues = form.getValues();
43
+ useEffect(() => {
44
+ const mergedObject = { ...values, ...previousValues };
45
+ let shouldSubmit = false;
46
+ for (const key in mergedObject) {
47
+ // catching the filters that have been parsed from url & avoid continuous submitting
48
+ if (values[key] !== undefined && previousValues[key] !== values[key]) {
49
+ shouldSubmit = true;
50
+ previousValues[key] = values[key];
51
+ form.setValue(key, values[key]);
52
+ }
53
+ }
54
+ if (autoSubmit && shouldSubmit) {
55
+ form.submit();
56
+ }
57
+ }, [values]);
58
+ return <></>;
59
+ };
60
+
61
+ export const DrawerFilteredResults = React.forwardRef<HTMLDivElement, unknown>(
62
+ function DrawerFilteredResults(
63
+ { fields, direction = 'left', ...props },
64
+ ref
65
+ ) {
66
+ const { registerDrawer, registerAction, currentOpen } = useDrawer();
67
+
68
+ return (
69
+ <>
70
+ {currentOpen && (
71
+ <Grid item xs={12} md={12} lg={4} ref={ref}>
72
+ <Drawer
73
+ {...registerDrawer('filters-drawer', {
74
+ upRelative: 'lg',
75
+ direction,
76
+ })}
77
+ >
78
+ <DrawerHeading {...registerAction('filters-drawer', 'close')}>
79
+ <Heading size="md">Φίλτρα</Heading>
80
+ </DrawerHeading>
81
+ <FilterContent>
82
+ <FilterFields fields={fields} horizontal={false} />
83
+ </FilterContent>
84
+ </Drawer>
85
+ </Grid>
86
+ )}
87
+ <Grid item xs={12} md={12} lg={currentOpen ? 8 : 12}>
88
+ <Button
89
+ mb={4}
90
+ {...registerAction(
91
+ 'filters-drawer',
92
+ currentOpen === 'filters-drawer' ? 'close' : 'open'
93
+ )}
94
+ color="secondary"
95
+ >
96
+ Φίλτρα
97
+ </Button>
98
+ <FilterChips />
99
+ {props.children}
100
+ </Grid>
101
+ </>
102
+ );
103
+ }
104
+ );
105
+
106
+ export const BlockFilteredResults = React.forwardRef<HTMLDivElement, unknown>(
107
+ function BlockFilteredResults({ fields, ...props }, ref) {
108
+ const [open, setOpen] = React.useState(true);
109
+ return (
110
+ <Grid item xs={12} ref={ref}>
111
+ <FilterContainer open={open}>
112
+ <FilterHeadingContainer>
113
+ <Hidden mdUp>
114
+ <CloseButton onClick={() => setOpen(false)}>Κλείσιμο</CloseButton>
115
+ </Hidden>
116
+ <Heading size="md">Φίλτρα</Heading>
117
+ </FilterHeadingContainer>
118
+ <FilterContent>
119
+ <FilterChips />
120
+ <FilterFields fields={fields} horizontal={true} />
121
+ </FilterContent>
122
+ </FilterContainer>
123
+ <Button
124
+ color="secondary"
125
+ mdUpHidden
126
+ mb={4}
127
+ onClick={() => setOpen(true)}
128
+ >
129
+ Φίλτρα
130
+ </Button>
131
+ <SectionBreak size="md" visible={false} />
132
+ {props.children}
133
+ </Grid>
134
+ );
135
+ }
136
+ );
137
+
138
+ export const FilteredResults = React.forwardRef<
139
+ HTMLFormElement,
140
+ FilteredResultsProps<Record<string, ScalarType>, Record<string, ScalarType>>
141
+ >(function FilteredResults(
142
+ {
143
+ fields,
144
+ onSearch,
145
+ variant = 'block',
146
+ defaultFilters,
147
+ currentFilters,
148
+ children,
149
+ },
150
+ ref
151
+ ) {
152
+ const isDrawer = variant.startsWith('drawer-');
153
+ return (
154
+ <FormBuilder
155
+ onSubmit={onSearch}
156
+ initial={defaultFilters}
157
+ fields={fields}
158
+ grid
159
+ ref={ref}
160
+ >
161
+ {currentFilters && (
162
+ <FormBuilderSyncValues values={currentFilters} autoSubmit={true} />
163
+ )}
164
+ {isDrawer ? (
165
+ // @ts-ignore
166
+ <DrawerFilteredResults
167
+ fields={fields}
168
+ direction={variant.split('-')[1]}
169
+ >
170
+ {children}
171
+ </DrawerFilteredResults>
172
+ ) : (
173
+ // @ts-ignore
174
+ <BlockFilteredResults fields={fields}>{children}</BlockFilteredResults>
175
+ )}
176
+ </FormBuilder>
177
+ );
178
+ });
179
+
180
+ export default FilteredResults;
@@ -0,0 +1,3 @@
1
+ export default {
2
+ title: 'Digigov React Modules',
3
+ };
package/src/index.ts ADDED
@@ -0,0 +1 @@
1
+ export * from '@digigov/react-modules/FilteredResults';
package/src/lazy.js ADDED
@@ -0,0 +1,11 @@
1
+ import {lazy} from 'react';
2
+ export default {
3
+ 'DataTable': lazy(() => import('@digigov/react-modules/FilteredResults/DataTable').then((module)=> ({default: module['DataTable']}))),
4
+ 'FilterChips': lazy(() => import('@digigov/react-modules/FilteredResults/FilterChips').then((module)=> ({default: module['FilterChips']}))),
5
+ 'FilterFields': lazy(() => import('@digigov/react-modules/FilteredResults/FilterFields').then((module)=> ({default: module['FilterFields']}))),
6
+ 'BlockFilteredResults': lazy(() => import('@digigov/react-modules/FilteredResults').then((module)=> ({default: module['BlockFilteredResults']}))),
7
+ 'DrawerFilteredResults': lazy(() => import('@digigov/react-modules/FilteredResults').then((module)=> ({default: module['DrawerFilteredResults']}))),
8
+ 'FilteredResults': lazy(() => import('@digigov/react-modules/FilteredResults').then((module)=> ({default: module['FilteredResults']}))),
9
+ 'FormBuilderSyncValues': lazy(() => import('@digigov/react-modules/FilteredResults').then((module)=> ({default: module['FormBuilderSyncValues']}))),
10
+
11
+ }
@@ -0,0 +1,35 @@
1
+
2
+ import * as _digigov_react_modules_FilteredResults_DataTable from '@digigov/react-modules/FilteredResults/DataTable';
3
+ import * as _digigov_react_modules_FilteredResults_FilterChips from '@digigov/react-modules/FilteredResults/FilterChips';
4
+ import * as _digigov_react_modules_FilteredResults_FilterFields from '@digigov/react-modules/FilteredResults/FilterFields';
5
+ import * as _digigov_react_modules_FilteredResults_hooks from '@digigov/react-modules/FilteredResults/hooks';
6
+ import * as _digigov_react_modules_FilteredResults from '@digigov/react-modules/FilteredResults';
7
+ import * as _digigov_react_modules from '@digigov/react-modules'
8
+ function lazyImport(pkgImport) {
9
+ // eslint-disable-next-line no-undef
10
+ return new Proxy(
11
+ {},
12
+ {
13
+ get: (_target, name) => {
14
+ if (name === '__esModule' || name === 'default') {
15
+ return pkgImport.default;
16
+ } else if(
17
+ name === '*'
18
+ ) {
19
+ return pkgImport;
20
+ } else {
21
+ return pkgImport[name];
22
+ }
23
+ },
24
+ }
25
+ )
26
+ }
27
+ export default {
28
+ '@digigov/react-modules/FilteredResults/DataTable': lazyImport(_digigov_react_modules_FilteredResults_DataTable),
29
+ '@digigov/react-modules/FilteredResults/FilterChips': lazyImport(_digigov_react_modules_FilteredResults_FilterChips),
30
+ '@digigov/react-modules/FilteredResults/FilterFields': lazyImport(_digigov_react_modules_FilteredResults_FilterFields),
31
+ '@digigov/react-modules/FilteredResults/hooks': lazyImport(_digigov_react_modules_FilteredResults_hooks),
32
+ '@digigov/react-modules/FilteredResults': lazyImport(_digigov_react_modules_FilteredResults),
33
+ '@digigov/react-modules': lazyImport(_digigov_react_modules)
34
+ };
35
+