@digigov/react-modules 1.2.0-rc.27 → 1.2.0-rc.29

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 (69) hide show
  1. package/.prettierrc.js +1 -0
  2. package/.rush/temp/chunked-rush-logs/react-modules.build.chunks.jsonl +8 -0
  3. package/.rush/temp/chunked-rush-logs/react-modules.lint.chunks.jsonl +19 -0
  4. package/.rush/temp/chunked-rush-logs/react-modules.publint.chunks.jsonl +20 -0
  5. package/.rush/temp/package-deps_build.json +27 -0
  6. package/.rush/temp/package-deps_lint.json +27 -0
  7. package/.rush/temp/package-deps_publint.json +29 -0
  8. package/.rush/temp/shrinkwrap-deps.json +19 -0
  9. package/eslint.config.mjs +8 -0
  10. package/package.json +33 -10
  11. package/playwright-ct.config.ts +3 -0
  12. package/react-modules.build.log +9 -0
  13. package/rush-logs/react-modules.build.log +8 -0
  14. package/rush-logs/react-modules.lint.log +19 -0
  15. package/rush-logs/react-modules.publint.log +20 -0
  16. package/tailwind.config.js +17 -0
  17. package/tsconfig.json +27 -0
  18. package/tsconfig.production.json +29 -0
  19. package/FilteredResults/DataTable/index.js +0 -18
  20. package/FilteredResults/DataTable/package.json +0 -6
  21. package/FilteredResults/DataTable.d.ts +0 -5
  22. package/FilteredResults/DataTable.js.map +0 -7
  23. package/FilteredResults/FilterChips/index.js +0 -52
  24. package/FilteredResults/FilterChips/package.json +0 -6
  25. package/FilteredResults/FilterChips.d.ts +0 -3
  26. package/FilteredResults/FilterChips.js.map +0 -7
  27. package/FilteredResults/FilterFields/index.js +0 -11
  28. package/FilteredResults/FilterFields/package.json +0 -6
  29. package/FilteredResults/FilterFields.d.ts +0 -5
  30. package/FilteredResults/FilterFields.js.map +0 -7
  31. package/FilteredResults/FilteredResults.stories.d.ts +0 -8
  32. package/FilteredResults/__stories__/Default.d.ts +0 -2
  33. package/FilteredResults/hooks/index.js +0 -105
  34. package/FilteredResults/hooks/package.json +0 -6
  35. package/FilteredResults/hooks.d.ts +0 -22
  36. package/FilteredResults/hooks.js.map +0 -7
  37. package/FilteredResults/index.d.ts +0 -25
  38. package/FilteredResults/index.js +0 -120
  39. package/FilteredResults/index.js.map +0 -7
  40. package/FilteredResults/index.test.d.ts +0 -1
  41. package/FilteredResults/package.json +0 -6
  42. package/FilteredResults/splitted.test.d.ts +0 -1
  43. package/LICENSE +0 -0
  44. package/ReactModules.stories.d.ts +0 -4
  45. package/cjs/FilteredResults/DataTable/index.js +0 -42
  46. package/cjs/FilteredResults/DataTable.js.map +0 -7
  47. package/cjs/FilteredResults/FilterChips/index.js +0 -82
  48. package/cjs/FilteredResults/FilterChips.js.map +0 -7
  49. package/cjs/FilteredResults/FilterFields/index.js +0 -44
  50. package/cjs/FilteredResults/FilterFields.js.map +0 -7
  51. package/cjs/FilteredResults/hooks/index.js +0 -132
  52. package/cjs/FilteredResults/hooks.js.map +0 -7
  53. package/cjs/FilteredResults/index.js +0 -153
  54. package/cjs/FilteredResults/index.js.map +0 -7
  55. package/cjs/index.js +0 -22
  56. package/cjs/index.js.map +0 -7
  57. package/cjs/lazy/index.js +0 -43
  58. package/cjs/lazy.js.map +0 -7
  59. package/cjs/registry/index.js +0 -63
  60. package/cjs/registry.js.map +0 -7
  61. package/index.d.ts +0 -1
  62. package/index.js +0 -7
  63. package/index.js.map +0 -7
  64. package/lazy/index.js +0 -10
  65. package/lazy/package.json +0 -6
  66. package/registry/index.js +0 -33
  67. package/registry/package.json +0 -6
  68. package/src/lazy.js +0 -10
  69. package/src/registry.js +0 -33
@@ -1,105 +0,0 @@
1
- import { useState, useEffect, useMemo } from "react";
2
- function isBooleanString(str) {
3
- return /^(true|false)$/i.test(str);
4
- }
5
- function normalizeText(text) {
6
- return text.normalize("NFD").replace(/[\u0300-\u036f]/g, "");
7
- }
8
- const getOptionLabelForSelectValue = (field, value) => {
9
- if (field.extra?.options) {
10
- const matchedOption = field.extra.options.find(
11
- (option) => option.value.toString() === value?.toString()
12
- );
13
- if (matchedOption) {
14
- return matchedOption.label.primary;
15
- }
16
- }
17
- return value;
18
- };
19
- const useURLParamsSearch = (searchFunc, { navigate, fields }) => {
20
- const urlParams = new URLSearchParams(window.location.search);
21
- const currentParams = Object.fromEntries(urlParams.entries());
22
- const values = fields.reduce((newValues, field) => {
23
- if (currentParams[field.key]) {
24
- newValues[field.key] = currentParams[field.key];
25
- }
26
- return newValues;
27
- }, {});
28
- const search = (params) => {
29
- navigate(
30
- "?" + new URLSearchParams(
31
- // @ts-ignore
32
- Object.entries({ ...currentParams, ...params }).filter(
33
- ([, value]) => !!value
34
- )
35
- ).toString()
36
- );
37
- return searchFunc(params);
38
- };
39
- return { search, values };
40
- };
41
- function useStaticSearch({ fields, data, initialFilters }) {
42
- const [results, setResults] = useState(data);
43
- useEffect(() => {
44
- search(initialFilters);
45
- }, [initialFilters]);
46
- const search = (filters) => {
47
- if (!filters || Object.keys(filters).every((key) => filters[key] === "")) {
48
- setResults(data);
49
- return;
50
- }
51
- const newResults = data.filter((row) => {
52
- const filterKeys = Object.keys(filters);
53
- const enabledFilters = filterKeys.filter(
54
- (filterKey) => filters[filterKey]?.toString() && row[filterKey]?.toString()
55
- );
56
- const freeTextFilters = filterKeys.filter(
57
- (filterKey) => filters[filterKey]?.toString() && !row[filterKey]?.toString()
58
- );
59
- let filtersMatchingValue = false;
60
- if (enabledFilters.length > 0) {
61
- filtersMatchingValue = enabledFilters.every((filterKey) => {
62
- if (filters[filterKey]?.toString() !== row[filterKey]?.toString()) {
63
- const field = fields.find((f) => f.key === filterKey);
64
- const optionsObj = field?.extra?.options.find(
65
- (option) => option?.label?.primary === row[filterKey]
66
- );
67
- return optionsObj?.value.toString() === filters[filterKey]?.toString();
68
- }
69
- filtersMatchingValue = true;
70
- return filtersMatchingValue;
71
- });
72
- if (!filtersMatchingValue) {
73
- return false;
74
- }
75
- }
76
- if (freeTextFilters.length > 0) {
77
- return freeTextFilters.every((filterKey) => {
78
- return Object.values(row).some((value) => {
79
- if (typeof value !== "string") {
80
- return false;
81
- }
82
- const normalizedItemValue = normalizeText(
83
- value.toString().toLowerCase()
84
- );
85
- const normalizedFilterValue = normalizeText(
86
- filters[filterKey]?.toString().toLowerCase().trim() || ""
87
- );
88
- return normalizedItemValue.includes(normalizedFilterValue);
89
- });
90
- });
91
- }
92
- return filtersMatchingValue;
93
- });
94
- setResults(newResults);
95
- };
96
- return useMemo(() => ({ search, results }), [search, results]);
97
- }
98
- export {
99
- getOptionLabelForSelectValue,
100
- isBooleanString,
101
- normalizeText,
102
- useStaticSearch,
103
- useURLParamsSearch
104
- };
105
- //# sourceMappingURL=hooks.js.map
@@ -1,6 +0,0 @@
1
- {
2
- "sideEffects": false,
3
- "module": "./index.js",
4
- "types": "./index.d.ts",
5
- "main": "../../cjs/FilteredResults/hooks/index.js"
6
- }
@@ -1,22 +0,0 @@
1
- import { FieldSpec } from '@digigov/form/types';
2
- import { ScalarType } from '@digigov/react-modules/FilteredResults';
3
- export declare function isBooleanString(str: string): boolean;
4
- export declare function normalizeText(text: string): string;
5
- export declare const getOptionLabelForSelectValue: (field: any, value: any) => any;
6
- export declare const useURLParamsSearch: (searchFunc: any, { navigate, fields }: {
7
- navigate: any;
8
- fields: any;
9
- }) => {
10
- search: (params: any) => any;
11
- values: any;
12
- };
13
- interface UseStaticSearchProps<DT extends Record<string, ScalarType>, FT extends Record<string, ScalarType>> {
14
- fields: FieldSpec[];
15
- data: DT[];
16
- initialFilters: FT;
17
- }
18
- export declare function useStaticSearch<DT extends Record<string, ScalarType>, FT extends Record<string, ScalarType>>({ fields, data, initialFilters }: UseStaticSearchProps<DT, FT>): {
19
- search: (filters: FT) => void;
20
- results: DT[];
21
- };
22
- export {};
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/FilteredResults/hooks.ts"],
4
- "sourcesContent": ["import { useState, useEffect, useMemo } from 'react';\nimport { FieldSpec } from '@digigov/form/types';\nimport { ScalarType } from '@digigov/react-modules/FilteredResults';\n\nexport function isBooleanString(str: string): boolean {\n return /^(true|false)$/i.test(str);\n}\n\nexport function normalizeText(text: string): string {\n return text.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '');\n}\n\nexport const getOptionLabelForSelectValue = (field, value) => {\n if (field.extra?.options) {\n const matchedOption = field.extra.options.find(\n (option) => option.value.toString() === value?.toString()\n );\n if (matchedOption) {\n return matchedOption.label.primary;\n }\n }\n return value;\n};\n\nexport const useURLParamsSearch = (searchFunc, { navigate, fields }) => {\n const urlParams = new URLSearchParams(window.location.search);\n const currentParams = Object.fromEntries(urlParams.entries());\n const values = fields.reduce((newValues, field) => {\n if (currentParams[field.key]) {\n newValues[field.key] = currentParams[field.key];\n }\n return newValues;\n }, {});\n\n const search = (params) => {\n navigate(\n '?' +\n new URLSearchParams(\n // @ts-ignore\n Object.entries({ ...currentParams, ...params }).filter(\n ([, value]) => !!value\n )\n ).toString()\n );\n return searchFunc(params);\n };\n return { search, values };\n};\n\ninterface UseStaticSearchProps<\n DT extends Record<string, ScalarType>,\n FT extends Record<string, ScalarType>,\n> {\n fields: FieldSpec[];\n data: DT[];\n initialFilters: FT;\n}\n\nexport function useStaticSearch<\n DT extends Record<string, ScalarType>,\n FT extends Record<string, ScalarType>,\n>({ fields, data, initialFilters }: UseStaticSearchProps<DT, FT>) {\n const [results, setResults] = useState<DT[]>(data);\n\n useEffect(() => {\n search(initialFilters);\n }, [initialFilters]);\n\n const search = (filters: FT) => {\n if (!filters || Object.keys(filters).every((key) => filters[key] === '')) {\n setResults(data);\n return;\n }\n\n const newResults = data.filter((row) => {\n const filterKeys = Object.keys(filters);\n const enabledFilters = filterKeys.filter(\n (filterKey) =>\n filters[filterKey]?.toString() && row[filterKey]?.toString()\n );\n const freeTextFilters = filterKeys.filter(\n (filterKey) =>\n filters[filterKey]?.toString() && !row[filterKey]?.toString()\n );\n let filtersMatchingValue = false;\n\n // Filter the fields that exists as columns in table\n if (enabledFilters.length > 0) {\n filtersMatchingValue = enabledFilters.every((filterKey) => {\n if (filters[filterKey]?.toString() !== row[filterKey]?.toString()) {\n const field = fields.find((f) => f.key === filterKey);\n const optionsObj = field?.extra?.options.find(\n (option) => option?.label?.primary === row[filterKey]\n );\n return (\n optionsObj?.value.toString() === filters[filterKey]?.toString()\n );\n }\n filtersMatchingValue = true;\n return filtersMatchingValue;\n });\n if (!filtersMatchingValue) {\n return false;\n }\n }\n // Filter the free text fields (doesn't exist as columns)\n if (freeTextFilters.length > 0) {\n return freeTextFilters.every((filterKey) => {\n return Object.values(row).some((value) => {\n if (typeof value !== 'string') {\n return false;\n }\n const normalizedItemValue = normalizeText(\n value.toString().toLowerCase()\n );\n\n const normalizedFilterValue = normalizeText(\n filters[filterKey]?.toString().toLowerCase().trim() || ''\n );\n return normalizedItemValue.includes(normalizedFilterValue);\n });\n });\n }\n return filtersMatchingValue;\n });\n\n setResults(newResults);\n };\n\n return useMemo(() => ({ search, results }), [search, results]);\n}\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,25 +0,0 @@
1
- import React from 'react';
2
- import { FieldSpec } from '@digigov/form/types';
3
- export type ScalarType = string | number | boolean | null | undefined;
4
- export interface DataConfigType {
5
- key: string;
6
- title: string;
7
- displayComponent?: (value: string | number | boolean) => React.ReactNode;
8
- }
9
- export interface FilteredResultsProps<DT extends Record<string, ScalarType>, FT extends Record<string, ScalarType>> {
10
- fields: FieldSpec[];
11
- data: DT[];
12
- variant?: 'drawer-left' | 'drawer-right' | 'block';
13
- defaultFilters?: FT;
14
- currentFilters?: FT;
15
- onSearch: (filters: unknown) => void;
16
- children?: React.ReactNode;
17
- }
18
- export declare const FormBuilderSyncValues: ({ values, autoSubmit }: {
19
- values: any;
20
- autoSubmit: any;
21
- }) => React.JSX.Element;
22
- export declare const DrawerFilteredResults: React.ForwardRefExoticComponent<React.RefAttributes<HTMLDivElement>>;
23
- export declare const BlockFilteredResults: React.ForwardRefExoticComponent<React.RefAttributes<HTMLDivElement>>;
24
- export declare const FilteredResults: React.ForwardRefExoticComponent<FilteredResultsProps<Record<string, ScalarType>, Record<string, ScalarType>> & React.RefAttributes<HTMLFormElement>>;
25
- export default FilteredResults;
@@ -1,120 +0,0 @@
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);
34
- };
35
- const DrawerFilteredResults = React.forwardRef(
36
- function DrawerFilteredResults2({ fields, direction = "left", ...props }, ref) {
37
- 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
- {
51
- mb: 4,
52
- ...registerAction(
53
- "filters-drawer",
54
- currentOpen === "filters-drawer" ? "close" : "open"
55
- ),
56
- 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
- {
68
- color: "secondary",
69
- mdUpHidden: true,
70
- 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
- );
111
- });
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
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/FilteredResults/index.tsx"],
4
- "sourcesContent": ["import React, { useContext, useEffect } from 'react';\nimport FormBuilder from '@digigov/form/FormBuilder';\nimport { FormContext } from '@digigov/form/FormContext';\nimport { FieldSpec } from '@digigov/form/types';\nimport { FilterChips } from '@digigov/react-modules/FilteredResults/FilterChips';\nimport { FilterFields } from '@digigov/react-modules/FilteredResults/FilterFields';\nimport FilterContainer, {\n FilterContent,\n FilterHeadingContainer,\n} from '@digigov/ui/app/FilterContainer';\nimport { Button } from '@digigov/ui/form/Button';\nimport { Grid } from '@digigov/ui/layouts/Grid';\nimport { SectionBreak } from '@digigov/ui/layouts/SectionBreak';\nimport { Drawer, DrawerHeading } from '@digigov/ui/navigation/Drawer';\nimport { useDrawer } from '@digigov/ui/navigation/Drawer/hooks';\nimport { Heading } from '@digigov/ui/typography/Heading';\n\nexport type ScalarType = string | number | boolean | null | undefined;\n\nexport interface DataConfigType {\n key: string;\n title: string;\n displayComponent?: (value: string | number | boolean) => React.ReactNode;\n}\nexport interface FilteredResultsProps<\n DT extends Record<string, ScalarType>,\n FT extends Record<string, ScalarType>,\n> {\n fields: FieldSpec[];\n data: DT[];\n variant?: 'drawer-left' | 'drawer-right' | 'block';\n defaultFilters?: FT;\n currentFilters?: FT;\n onSearch: (filters: unknown) => void;\n children?: React.ReactNode;\n}\n\nexport const FormBuilderSyncValues = ({ values, autoSubmit }) => {\n const form = useContext(FormContext);\n const previousValues = form.getValues();\n useEffect(() => {\n const mergedObject = { ...values, ...previousValues };\n let shouldSubmit = false;\n for (const key in mergedObject) {\n // catching the filters that have been parsed from url & avoid continuous submitting\n if (values[key] !== undefined && previousValues[key] !== values[key]) {\n shouldSubmit = true;\n previousValues[key] = values[key];\n form.setValue(key, values[key]);\n }\n }\n if (autoSubmit && shouldSubmit) {\n form.submit();\n }\n }, [values]);\n return <></>;\n};\n\nexport const DrawerFilteredResults = React.forwardRef<HTMLDivElement, unknown>(\n function DrawerFilteredResults(\n { fields, direction = 'left', ...props },\n ref\n ) {\n const { registerDrawer, registerAction, currentOpen } = useDrawer();\n\n return (\n <>\n {currentOpen && (\n <Grid item xs={12} md={12} lg={4} ref={ref}>\n <Drawer\n {...registerDrawer('filters-drawer', {\n upRelative: 'lg',\n direction,\n })}\n >\n <DrawerHeading {...registerAction('filters-drawer', 'close')}>\n <Heading size=\"md\">\u03A6\u03AF\u03BB\u03C4\u03C1\u03B1</Heading>\n </DrawerHeading>\n <FilterContent>\n <FilterFields fields={fields} horizontal={false} />\n </FilterContent>\n </Drawer>\n </Grid>\n )}\n <Grid item xs={12} md={12} lg={currentOpen ? 8 : 12}>\n <Button\n mb={4}\n {...registerAction(\n 'filters-drawer',\n currentOpen === 'filters-drawer' ? 'close' : 'open'\n )}\n color=\"secondary\"\n >\n \u03A6\u03AF\u03BB\u03C4\u03C1\u03B1\n </Button>\n <FilterChips />\n {props.children}\n </Grid>\n </>\n );\n }\n);\n\nexport const BlockFilteredResults = React.forwardRef<HTMLDivElement, unknown>(\n function BlockFilteredResults({ fields, ...props }, ref) {\n const [open, setOpen] = React.useState(true);\n return (\n <Grid item xs={12} ref={ref}>\n <FilterContainer open={open}>\n <FilterHeadingContainer onClick={() => setOpen(false)}>\n <Heading size=\"md\">\u03A6\u03AF\u03BB\u03C4\u03C1\u03B1</Heading>\n </FilterHeadingContainer>\n <FilterContent>\n <FilterChips />\n <FilterFields fields={fields} horizontal={true} />\n </FilterContent>\n </FilterContainer>\n <Button\n color=\"secondary\"\n mdUpHidden\n mb={4}\n onClick={() => setOpen(true)}\n >\n \u03A6\u03AF\u03BB\u03C4\u03C1\u03B1\n </Button>\n <SectionBreak size=\"md\" visible={false} />\n {props.children}\n </Grid>\n );\n }\n);\n\nexport const FilteredResults = React.forwardRef<\n HTMLFormElement,\n FilteredResultsProps<Record<string, ScalarType>, Record<string, ScalarType>>\n>(function FilteredResults(\n {\n fields,\n onSearch,\n variant = 'block',\n defaultFilters,\n currentFilters,\n children,\n },\n ref\n) {\n const isDrawer = variant.startsWith('drawer-');\n return (\n <FormBuilder\n onSubmit={onSearch}\n initial={defaultFilters}\n fields={fields}\n grid\n ref={ref}\n >\n {currentFilters && (\n <FormBuilderSyncValues values={currentFilters} autoSubmit={true} />\n )}\n {isDrawer ? (\n // @ts-ignore\n <DrawerFilteredResults\n fields={fields}\n direction={variant.split('-')[1]}\n >\n {children}\n </DrawerFilteredResults>\n ) : (\n // @ts-ignore\n <BlockFilteredResults fields={fields}>{children}</BlockFilteredResults>\n )}\n </FormBuilder>\n );\n});\n\nexport default FilteredResults;\n"],
5
- "mappings": "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",
6
- "names": ["DrawerFilteredResults", "BlockFilteredResults", "FilteredResults"]
7
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,6 +0,0 @@
1
- {
2
- "sideEffects": false,
3
- "module": "./index.js",
4
- "types": "./index.d.ts",
5
- "main": "../cjs/FilteredResults/index.js"
6
- }
@@ -1 +0,0 @@
1
- export {};
package/LICENSE DELETED
File without changes
@@ -1,4 +0,0 @@
1
- declare namespace _default {
2
- let title: string;
3
- }
4
- export default _default;
@@ -1,42 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
- var DataTable_exports = {};
29
- __export(DataTable_exports, {
30
- DataTable: () => DataTable
31
- });
32
- module.exports = __toCommonJS(DataTable_exports);
33
- var import_react = __toESM(require("react"));
34
- var import_Table = require("@digigov/ui/content/Table");
35
- function DataTable({ dataConfig, data }) {
36
- return /* @__PURE__ */ import_react.default.createElement(import_Table.TableContainer, null, /* @__PURE__ */ import_react.default.createElement(import_Table.Table, null, /* @__PURE__ */ import_react.default.createElement(import_Table.TableHead, null, /* @__PURE__ */ import_react.default.createElement(import_Table.TableRow, null, dataConfig.map((itenConfig) => /* @__PURE__ */ import_react.default.createElement(import_Table.TableHeadCell, { key: itenConfig.key }, itenConfig.title)))), /* @__PURE__ */ import_react.default.createElement(import_Table.TableBody, null, data.length > 0 ? data.map((item, index) => /* @__PURE__ */ import_react.default.createElement(import_Table.TableRow, { key: index }, dataConfig.map((itemConfig, idx) => /* @__PURE__ */ import_react.default.createElement(import_Table.TableDataCell, { key: idx }, itemConfig.displayComponent ? itemConfig.displayComponent(item[itemConfig.key]) : item[itemConfig.key])))) : /* @__PURE__ */ import_react.default.createElement(import_Table.TableNoDataRow, null, "\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03BF\u03C5\u03BD \u03B1\u03C0\u03BF\u03C4\u03B5\u03BB\u03AD\u03C3\u03BC\u03B1\u03C4\u03B1"))));
37
- }
38
- // Annotate the CommonJS export names for ESM import in node:
39
- 0 && (module.exports = {
40
- DataTable
41
- });
42
- //# sourceMappingURL=DataTable.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/FilteredResults/DataTable.tsx"],
4
- "sourcesContent": ["import React from 'react';\n\nimport {\n Table,\n TableBody,\n TableContainer,\n TableDataCell,\n TableHead,\n TableHeadCell,\n TableNoDataRow,\n TableRow,\n} from '@digigov/ui/content/Table';\n\nexport function DataTable({ dataConfig, data }) {\n return (\n <TableContainer>\n <Table>\n <TableHead>\n <TableRow>\n {dataConfig.map((itenConfig) => (\n <TableHeadCell key={itenConfig.key}>\n {itenConfig.title}\n </TableHeadCell>\n ))}\n </TableRow>\n </TableHead>\n <TableBody>\n {data.length > 0 ? (\n data.map((item, index) => (\n <TableRow key={index}>\n {dataConfig.map((itemConfig, idx) => (\n <TableDataCell key={idx}>\n {itemConfig.displayComponent\n ? itemConfig.displayComponent(item[itemConfig.key])\n : item[itemConfig.key]}\n </TableDataCell>\n ))}\n </TableRow>\n ))\n ) : (\n <TableNoDataRow>\u0394\u03B5\u03BD \u03C5\u03C0\u03AC\u03C1\u03C7\u03BF\u03C5\u03BD \u03B1\u03C0\u03BF\u03C4\u03B5\u03BB\u03AD\u03C3\u03BC\u03B1\u03C4\u03B1</TableNoDataRow>\n )}\n </TableBody>\n </Table>\n </TableContainer>\n );\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAElB,mBASO;AAEA,SAAS,UAAU,EAAE,YAAY,KAAK,GAAG;AAC9C,SACE,6BAAAA,QAAA,cAAC,mCACC,6BAAAA,QAAA,cAAC,0BACC,6BAAAA,QAAA,cAAC,8BACC,6BAAAA,QAAA,cAAC,6BACE,WAAW,IAAI,CAAC,eACf,6BAAAA,QAAA,cAAC,8BAAc,KAAK,WAAW,OAC5B,WAAW,KACd,CACD,CACH,CACF,GACA,6BAAAA,QAAA,cAAC,8BACE,KAAK,SAAS,IACb,KAAK,IAAI,CAAC,MAAM,UACd,6BAAAA,QAAA,cAAC,yBAAS,KAAK,SACZ,WAAW,IAAI,CAAC,YAAY,QAC3B,6BAAAA,QAAA,cAAC,8BAAc,KAAK,OACjB,WAAW,mBACR,WAAW,iBAAiB,KAAK,WAAW,GAAG,CAAC,IAChD,KAAK,WAAW,GAAG,CACzB,CACD,CACH,CACD,IAED,6BAAAA,QAAA,cAAC,mCAAe,8IAAyB,CAE7C,CACF,CACF;AAEJ;",
6
- "names": ["React"]
7
- }
@@ -1,82 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
- var FilterChips_exports = {};
29
- __export(FilterChips_exports, {
30
- FilterChips: () => FilterChips,
31
- default: () => FilterChips_default
32
- });
33
- module.exports = __toCommonJS(FilterChips_exports);
34
- var import_react = __toESM(require("react"));
35
- var import_FormBuilder = require("@digigov/form/FormBuilder");
36
- var import_hooks = require("@digigov/react-modules/FilteredResults/hooks");
37
- var import_FilterContainer = require("@digigov/ui/app/FilterContainer");
38
- var import_Chip = require("@digigov/ui/content/Chip");
39
- var import_Button = require("@digigov/ui/form/Button");
40
- const FilterChips = () => {
41
- const { fieldsMap, reset, resetField, submit } = (0, import_FormBuilder.useFormContext)();
42
- const values = (0, import_FormBuilder.useFormValues)();
43
- const enabledFilters = Object.keys(values).filter((v) => values[v]);
44
- if (enabledFilters.length === 0) return null;
45
- return /* @__PURE__ */ import_react.default.createElement(import_FilterContainer.FilterSelectedSection, { m: 0, mb: 6 }, /* @__PURE__ */ import_react.default.createElement(import_FilterContainer.FilterSelectedHeading, { mb: 0 }, /* @__PURE__ */ import_react.default.createElement(import_Chip.ChipContainer, null, enabledFilters.map((filterKey) => {
46
- return /* @__PURE__ */ import_react.default.createElement(
47
- import_Chip.Chip,
48
- {
49
- mb: 0,
50
- key: filterKey,
51
- onDelete: () => {
52
- resetField(filterKey);
53
- submit();
54
- }
55
- },
56
- /* @__PURE__ */ import_react.default.createElement("b", null, fieldsMap[filterKey].label?.primary),
57
- " ",
58
- ": ",
59
- (0, import_hooks.getOptionLabelForSelectValue)(
60
- fieldsMap[filterKey],
61
- values[filterKey]
62
- )
63
- );
64
- })), /* @__PURE__ */ import_react.default.createElement(
65
- import_Button.Button,
66
- {
67
- onClick: (e) => {
68
- e.preventDefault();
69
- reset();
70
- submit();
71
- },
72
- variant: "link"
73
- },
74
- "\u0395\u03C0\u03B1\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC \u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03CE\u03BD"
75
- )));
76
- };
77
- var FilterChips_default = FilterChips;
78
- // Annotate the CommonJS export names for ESM import in node:
79
- 0 && (module.exports = {
80
- FilterChips
81
- });
82
- //# sourceMappingURL=FilterChips.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/FilteredResults/FilterChips.tsx"],
4
- "sourcesContent": ["import React from 'react';\nimport { useFormContext, useFormValues } from '@digigov/form/FormBuilder';\nimport { getOptionLabelForSelectValue } from '@digigov/react-modules/FilteredResults/hooks';\nimport {\n FilterSelectedHeading,\n FilterSelectedSection,\n} from '@digigov/ui/app/FilterContainer';\nimport { Chip, ChipContainer } from '@digigov/ui/content/Chip';\nimport { Button } from '@digigov/ui/form/Button';\n\nexport const FilterChips = () => {\n const { fieldsMap, reset, resetField, submit } = useFormContext();\n const values = useFormValues();\n const enabledFilters = Object.keys(values).filter((v) => values[v]);\n if (enabledFilters.length === 0) return null;\n return (\n <FilterSelectedSection m={0} mb={6}>\n <FilterSelectedHeading mb={0}>\n <ChipContainer>\n {enabledFilters.map((filterKey) => {\n return (\n <Chip\n mb={0}\n key={filterKey}\n onDelete={() => {\n resetField(filterKey);\n submit();\n }}\n >\n <b>{fieldsMap[filterKey].label?.primary}</b> {': '}\n {getOptionLabelForSelectValue(\n fieldsMap[filterKey],\n values[filterKey]\n )}\n </Chip>\n );\n })}\n </ChipContainer>\n <Button\n onClick={(e) => {\n e.preventDefault();\n reset();\n submit();\n }}\n variant=\"link\"\n >\n \u0395\u03C0\u03B1\u03BD\u03B1\u03C6\u03BF\u03C1\u03AC \u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03CE\u03BD\n </Button>\n </FilterSelectedHeading>\n </FilterSelectedSection>\n );\n};\n\nexport default FilterChips;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAClB,yBAA8C;AAC9C,mBAA6C;AAC7C,6BAGO;AACP,kBAAoC;AACpC,oBAAuB;AAEhB,MAAM,cAAc,MAAM;AAC/B,QAAM,EAAE,WAAW,OAAO,YAAY,OAAO,QAAI,mCAAe;AAChE,QAAM,aAAS,kCAAc;AAC7B,QAAM,iBAAiB,OAAO,KAAK,MAAM,EAAE,OAAO,CAAC,MAAM,OAAO,CAAC,CAAC;AAClE,MAAI,eAAe,WAAW,EAAG,QAAO;AACxC,SACE,6BAAAA,QAAA,cAAC,gDAAsB,GAAG,GAAG,IAAI,KAC/B,6BAAAA,QAAA,cAAC,gDAAsB,IAAI,KACzB,6BAAAA,QAAA,cAAC,iCACE,eAAe,IAAI,CAAC,cAAc;AACjC,WACE,6BAAAA,QAAA;AAAA,MAAC;AAAA;AAAA,QACC,IAAI;AAAA,QACJ,KAAK;AAAA,QACL,UAAU,MAAM;AACd,qBAAW,SAAS;AACpB,iBAAO;AAAA,QACT;AAAA;AAAA,MAEA,6BAAAA,QAAA,cAAC,WAAG,UAAU,SAAS,EAAE,OAAO,OAAQ;AAAA,MAAI;AAAA,MAAE;AAAA,UAC7C;AAAA,QACC,UAAU,SAAS;AAAA,QACnB,OAAO,SAAS;AAAA,MAClB;AAAA,IACF;AAAA,EAEJ,CAAC,CACH,GACA,6BAAAA,QAAA;AAAA,IAAC;AAAA;AAAA,MACC,SAAS,CAAC,MAAM;AACd,UAAE,eAAe;AACjB,cAAM;AACN,eAAO;AAAA,MACT;AAAA,MACA,SAAQ;AAAA;AAAA,IACT;AAAA,EAED,CACF,CACF;AAEJ;AAEA,IAAO,sBAAQ;",
6
- "names": ["React"]
7
- }
@@ -1,44 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
- var FilterFields_exports = {};
29
- __export(FilterFields_exports, {
30
- FilterFields: () => FilterFields
31
- });
32
- module.exports = __toCommonJS(FilterFields_exports);
33
- var import_react = __toESM(require("react"));
34
- var import_Field = __toESM(require("@digigov/form/Field"));
35
- var import_FilterContainer = require("@digigov/ui/app/FilterContainer");
36
- var import_Button = require("@digigov/ui/form/Button");
37
- const FilterFields = ({ fields, horizontal }) => {
38
- return /* @__PURE__ */ import_react.default.createElement(import_FilterContainer.FilterOptionsSection, { horizontal }, fields.map((field) => /* @__PURE__ */ import_react.default.createElement(import_Field.default, { key: field.key, name: field.key })), /* @__PURE__ */ import_react.default.createElement(import_Button.Button, { type: "submit" }, "\u0391\u03BD\u03B1\u03B6\u03AE\u03C4\u03B7\u03C3\u03B7"));
39
- };
40
- // Annotate the CommonJS export names for ESM import in node:
41
- 0 && (module.exports = {
42
- FilterFields
43
- });
44
- //# sourceMappingURL=FilterFields.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/FilteredResults/FilterFields.tsx"],
4
- "sourcesContent": ["import React from 'react';\nimport Field from '@digigov/form/Field';\nimport { FilterOptionsSection } from '@digigov/ui/app/FilterContainer';\nimport { Button } from '@digigov/ui/form/Button';\n\nexport const FilterFields = ({ fields, horizontal }) => {\n return (\n <FilterOptionsSection horizontal={horizontal}>\n {fields.map((field) => (\n <Field key={field.key} name={field.key} />\n ))}\n <Button type=\"submit\">\u0391\u03BD\u03B1\u03B6\u03AE\u03C4\u03B7\u03C3\u03B7</Button>\n </FilterOptionsSection>\n );\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAClB,mBAAkB;AAClB,6BAAqC;AACrC,oBAAuB;AAEhB,MAAM,eAAe,CAAC,EAAE,QAAQ,WAAW,MAAM;AACtD,SACE,6BAAAA,QAAA,cAAC,+CAAqB,cACnB,OAAO,IAAI,CAAC,UACX,6BAAAA,QAAA,cAAC,aAAAC,SAAA,EAAM,KAAK,MAAM,KAAK,MAAM,MAAM,KAAK,CACzC,GACD,6BAAAD,QAAA,cAAC,wBAAO,MAAK,YAAS,wDAAS,CACjC;AAEJ;",
6
- "names": ["React", "Field"]
7
- }