@digigov/react-modules 1.2.0-b4cd6916 → 1.2.0-d4fe516b
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.
- package/FilteredResults/hooks/index.js +1 -1
- package/FilteredResults/hooks.js.map +2 -2
- package/FilteredResults/index.js +1 -3
- package/FilteredResults/index.js.map +2 -2
- package/cjs/FilteredResults/hooks/index.js +1 -1
- package/cjs/FilteredResults/hooks.js.map +2 -2
- package/cjs/FilteredResults/index.js +1 -3
- package/cjs/FilteredResults/index.js.map +3 -3
- package/cjs/lazy/index.js +5 -5
- package/cjs/lazy.js.map +3 -3
- package/cjs/registry/index.js +3 -3
- package/cjs/registry.js.map +3 -3
- package/index.js +1 -1
- package/lazy/index.js +9 -13
- package/package.json +6 -8
- package/registry/index.js +15 -16
- package/src/FilteredResults/__stories__/Default.tsx +7 -6
- package/src/FilteredResults/hooks.ts +1 -1
- package/src/FilteredResults/index.tsx +1 -6
- package/src/lazy.js +9 -10
- package/src/registry.js +8 -10
- package/FilteredResults/FilteredResults.stories/index.js +0 -12
- package/FilteredResults/FilteredResults.stories/package.json +0 -6
- package/FilteredResults/FilteredResults.stories.js.map +0 -7
- package/FilteredResults/__stories__/Default/index.js +0 -220
- package/FilteredResults/__stories__/Default/package.json +0 -6
- package/FilteredResults/__stories__/Default.js.map +0 -7
- package/ReactModules.stories/index.js +0 -7
- package/ReactModules.stories/package.json +0 -6
- package/ReactModules.stories.js.map +0 -7
- package/cjs/FilteredResults/FilteredResults.stories/index.js +0 -45
- package/cjs/FilteredResults/FilteredResults.stories.js.map +0 -7
- package/cjs/FilteredResults/__stories__/Default/index.js +0 -250
- package/cjs/FilteredResults/__stories__/Default.js.map +0 -7
- package/cjs/ReactModules.stories/index.js +0 -26
- package/cjs/ReactModules.stories.js.map +0 -7
- package/lazy.d.ts +0 -16
- package/lazy.js.map +0 -7
- package/registry.d.ts +0 -9
- package/registry.js.map +0 -7
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
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 ([
|
|
5
|
-
"mappings": "AAAA,SAAS,UAAU,WAAW,eAAe;AAItC,SAAS,gBAAgB,KAAsB;AACpD,SAAO,kBAAkB,KAAK,GAAG;AACnC;AAEO,SAAS,cAAc,MAAsB;AAClD,SAAO,KAAK,UAAU,KAAK,EAAE,QAAQ,oBAAoB,EAAE;AAC7D;AAEO,MAAM,+BAA+B,CAAC,OAAO,UAAU;AAC5D,MAAI,MAAM,OAAO,SAAS;AACxB,UAAM,gBAAgB,MAAM,MAAM,QAAQ;AAAA,MACxC,CAAC,WAAW,OAAO,MAAM,SAAS,MAAM,OAAO,SAAS;AAAA,IAC1D;AACA,QAAI,eAAe;AACjB,aAAO,cAAc,MAAM;AAAA,IAC7B;AAAA,EACF;AACA,SAAO;AACT;AAEO,MAAM,qBAAqB,CAAC,YAAY,EAAE,UAAU,OAAO,MAAM;AACtE,QAAM,YAAY,IAAI,gBAAgB,OAAO,SAAS,MAAM;AAC5D,QAAM,gBAAgB,OAAO,YAAY,UAAU,QAAQ,CAAC;AAC5D,QAAM,SAAS,OAAO,OAAO,CAAC,WAAW,UAAU;AACjD,QAAI,cAAc,MAAM,GAAG,GAAG;AAC5B,gBAAU,MAAM,GAAG,IAAI,cAAc,MAAM,GAAG;AAAA,IAChD;AACA,WAAO;AAAA,EACT,GAAG,CAAC,CAAC;AAEL,QAAM,SAAS,CAAC,WAAW;AACzB;AAAA,MACE,MACE,IAAI;AAAA;AAAA,QAEF,OAAO,QAAQ,EAAE,GAAG,eAAe,GAAG,OAAO,CAAC,EAAE;AAAA,UAC9C,CAAC,CAAC,
|
|
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
6
|
"names": []
|
|
7
7
|
}
|
package/FilteredResults/index.js
CHANGED
|
@@ -3,14 +3,12 @@ import FormBuilder from "@digigov/form/FormBuilder";
|
|
|
3
3
|
import { FormContext } from "@digigov/form/FormContext";
|
|
4
4
|
import { FilterChips } from "@digigov/react-modules/FilteredResults/FilterChips";
|
|
5
5
|
import { FilterFields } from "@digigov/react-modules/FilteredResults/FilterFields";
|
|
6
|
-
import CloseButton from "@digigov/ui/app/CloseButton";
|
|
7
6
|
import FilterContainer, {
|
|
8
7
|
FilterContent,
|
|
9
8
|
FilterHeadingContainer
|
|
10
9
|
} from "@digigov/ui/app/FilterContainer";
|
|
11
10
|
import { Button } from "@digigov/ui/form/Button";
|
|
12
11
|
import { Grid } from "@digigov/ui/layouts/Grid";
|
|
13
|
-
import { Hidden } from "@digigov/ui/layouts/Hidden";
|
|
14
12
|
import { SectionBreak } from "@digigov/ui/layouts/SectionBreak";
|
|
15
13
|
import { Drawer, DrawerHeading } from "@digigov/ui/navigation/Drawer";
|
|
16
14
|
import { useDrawer } from "@digigov/ui/navigation/Drawer/hooks";
|
|
@@ -64,7 +62,7 @@ const DrawerFilteredResults = React.forwardRef(
|
|
|
64
62
|
const BlockFilteredResults = React.forwardRef(
|
|
65
63
|
function BlockFilteredResults2({ fields, ...props }, ref) {
|
|
66
64
|
const [open, setOpen] = React.useState(true);
|
|
67
|
-
return /* @__PURE__ */ React.createElement(Grid, { item: true, xs: 12, ref }, /* @__PURE__ */ React.createElement(FilterContainer, { open }, /* @__PURE__ */ React.createElement(FilterHeadingContainer,
|
|
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(
|
|
68
66
|
Button,
|
|
69
67
|
{
|
|
70
68
|
color: "secondary",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
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
|
|
5
|
-
"mappings": "AAAA,OAAO,SAAS,YAAY,iBAAiB;AAC7C,OAAO,iBAAiB;AACxB,SAAS,mBAAmB;AAE5B,SAAS,mBAAmB;AAC5B,SAAS,oBAAoB;AAC7B,OAAO
|
|
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
6
|
"names": ["DrawerFilteredResults", "BlockFilteredResults", "FilteredResults"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
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 ([
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA6C;AAItC,SAAS,gBAAgB,KAAsB;AACpD,SAAO,kBAAkB,KAAK,GAAG;AACnC;AAEO,SAAS,cAAc,MAAsB;AAClD,SAAO,KAAK,UAAU,KAAK,EAAE,QAAQ,oBAAoB,EAAE;AAC7D;AAEO,MAAM,+BAA+B,CAAC,OAAO,UAAU;AAC5D,MAAI,MAAM,OAAO,SAAS;AACxB,UAAM,gBAAgB,MAAM,MAAM,QAAQ;AAAA,MACxC,CAAC,WAAW,OAAO,MAAM,SAAS,MAAM,OAAO,SAAS;AAAA,IAC1D;AACA,QAAI,eAAe;AACjB,aAAO,cAAc,MAAM;AAAA,IAC7B;AAAA,EACF;AACA,SAAO;AACT;AAEO,MAAM,qBAAqB,CAAC,YAAY,EAAE,UAAU,OAAO,MAAM;AACtE,QAAM,YAAY,IAAI,gBAAgB,OAAO,SAAS,MAAM;AAC5D,QAAM,gBAAgB,OAAO,YAAY,UAAU,QAAQ,CAAC;AAC5D,QAAM,SAAS,OAAO,OAAO,CAAC,WAAW,UAAU;AACjD,QAAI,cAAc,MAAM,GAAG,GAAG;AAC5B,gBAAU,MAAM,GAAG,IAAI,cAAc,MAAM,GAAG;AAAA,IAChD;AACA,WAAO;AAAA,EACT,GAAG,CAAC,CAAC;AAEL,QAAM,SAAS,CAAC,WAAW;AACzB;AAAA,MACE,MACE,IAAI;AAAA;AAAA,QAEF,OAAO,QAAQ,EAAE,GAAG,eAAe,GAAG,OAAO,CAAC,EAAE;AAAA,UAC9C,CAAC,CAAC,
|
|
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
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -39,11 +39,9 @@ var import_FormBuilder = __toESM(require("@digigov/form/FormBuilder"));
|
|
|
39
39
|
var import_FormContext = require("@digigov/form/FormContext");
|
|
40
40
|
var import_FilterChips = require("@digigov/react-modules/FilteredResults/FilterChips");
|
|
41
41
|
var import_FilterFields = require("@digigov/react-modules/FilteredResults/FilterFields");
|
|
42
|
-
var import_CloseButton = __toESM(require("@digigov/ui/app/CloseButton"));
|
|
43
42
|
var import_FilterContainer = __toESM(require("@digigov/ui/app/FilterContainer"));
|
|
44
43
|
var import_Button = require("@digigov/ui/form/Button");
|
|
45
44
|
var import_Grid = require("@digigov/ui/layouts/Grid");
|
|
46
|
-
var import_Hidden = require("@digigov/ui/layouts/Hidden");
|
|
47
45
|
var import_SectionBreak = require("@digigov/ui/layouts/SectionBreak");
|
|
48
46
|
var import_Drawer = require("@digigov/ui/navigation/Drawer");
|
|
49
47
|
var import_hooks = require("@digigov/ui/navigation/Drawer/hooks");
|
|
@@ -97,7 +95,7 @@ const DrawerFilteredResults = import_react.default.forwardRef(
|
|
|
97
95
|
const BlockFilteredResults = import_react.default.forwardRef(
|
|
98
96
|
function BlockFilteredResults2({ fields, ...props }, ref) {
|
|
99
97
|
const [open, setOpen] = import_react.default.useState(true);
|
|
100
|
-
return /* @__PURE__ */ import_react.default.createElement(import_Grid.Grid, { item: true, xs: 12, ref }, /* @__PURE__ */ import_react.default.createElement(import_FilterContainer.default, { open }, /* @__PURE__ */ import_react.default.createElement(import_FilterContainer.FilterHeadingContainer,
|
|
98
|
+
return /* @__PURE__ */ import_react.default.createElement(import_Grid.Grid, { item: true, xs: 12, ref }, /* @__PURE__ */ import_react.default.createElement(import_FilterContainer.default, { open }, /* @__PURE__ */ import_react.default.createElement(import_FilterContainer.FilterHeadingContainer, { onClick: () => setOpen(false) }, /* @__PURE__ */ import_react.default.createElement(import_Heading.Heading, { size: "md" }, "\u03A6\u03AF\u03BB\u03C4\u03C1\u03B1")), /* @__PURE__ */ import_react.default.createElement(import_FilterContainer.FilterContent, null, /* @__PURE__ */ import_react.default.createElement(import_FilterChips.FilterChips, null), /* @__PURE__ */ import_react.default.createElement(import_FilterFields.FilterFields, { fields, horizontal: true }))), /* @__PURE__ */ import_react.default.createElement(
|
|
101
99
|
import_Button.Button,
|
|
102
100
|
{
|
|
103
101
|
color: "secondary",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
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
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA6C;AAC7C,yBAAwB;AACxB,yBAA4B;AAE5B,yBAA4B;AAC5B,0BAA6B;AAC7B,
|
|
6
|
-
"names": ["React", "DrawerFilteredResults", "BlockFilteredResults", "FilterContainer", "
|
|
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": ["React", "DrawerFilteredResults", "BlockFilteredResults", "FilterContainer", "FilteredResults", "FormBuilder"]
|
|
7
7
|
}
|
package/cjs/lazy/index.js
CHANGED
|
@@ -32,12 +32,12 @@ __export(lazy_exports, {
|
|
|
32
32
|
module.exports = __toCommonJS(lazy_exports);
|
|
33
33
|
var import_react = require("react");
|
|
34
34
|
var lazy_default = {
|
|
35
|
-
"
|
|
36
|
-
"FilterChips": (0, import_react.lazy)(() => import("@digigov/react-modules/FilteredResults/FilterChips").then((module2) => ({ default: module2["FilterChips"] }))),
|
|
37
|
-
"FilterFields": (0, import_react.lazy)(() => import("@digigov/react-modules/FilteredResults/FilterFields").then((module2) => ({ default: module2["FilterFields"] }))),
|
|
38
|
-
"BlockFilteredResults": (0, import_react.lazy)(() => import("@digigov/react-modules/FilteredResults").then((module2) => ({ default: module2["BlockFilteredResults"] }))),
|
|
35
|
+
"FormBuilderSyncValues": (0, import_react.lazy)(() => import("@digigov/react-modules/FilteredResults").then((module2) => ({ default: module2["FormBuilderSyncValues"] }))),
|
|
39
36
|
"DrawerFilteredResults": (0, import_react.lazy)(() => import("@digigov/react-modules/FilteredResults").then((module2) => ({ default: module2["DrawerFilteredResults"] }))),
|
|
37
|
+
"BlockFilteredResults": (0, import_react.lazy)(() => import("@digigov/react-modules/FilteredResults").then((module2) => ({ default: module2["BlockFilteredResults"] }))),
|
|
40
38
|
"FilteredResults": (0, import_react.lazy)(() => import("@digigov/react-modules/FilteredResults").then((module2) => ({ default: module2["FilteredResults"] }))),
|
|
41
|
-
"
|
|
39
|
+
"DataTable": (0, import_react.lazy)(() => import("@digigov/react-modules/FilteredResults/DataTable").then((module2) => ({ default: module2["DataTable"] }))),
|
|
40
|
+
"FilterChips": (0, import_react.lazy)(() => import("@digigov/react-modules/FilteredResults/FilterChips").then((module2) => ({ default: module2["FilterChips"] }))),
|
|
41
|
+
"FilterFields": (0, import_react.lazy)(() => import("@digigov/react-modules/FilteredResults/FilterFields").then((module2) => ({ default: module2["FilterFields"] })))
|
|
42
42
|
};
|
|
43
43
|
//# sourceMappingURL=lazy.js.map
|
package/cjs/lazy.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
4
|
-
"sourcesContent": ["import {lazy} from 'react';\nexport default {\n
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,
|
|
3
|
+
"sources": ["../lazy.js"],
|
|
4
|
+
"sourcesContent": ["import { lazy } from 'react';\nexport default {\n 'FormBuilderSyncValues': lazy(() => import('@digigov/react-modules/FilteredResults').then((module) => ({ default: module['FormBuilderSyncValues'] }))),\n 'DrawerFilteredResults': lazy(() => import('@digigov/react-modules/FilteredResults').then((module) => ({ default: module['DrawerFilteredResults'] }))),\n 'BlockFilteredResults': lazy(() => import('@digigov/react-modules/FilteredResults').then((module) => ({ default: module['BlockFilteredResults'] }))),\n 'FilteredResults': lazy(() => import('@digigov/react-modules/FilteredResults').then((module) => ({ default: module['FilteredResults'] }))),\n 'DataTable': lazy(() => import('@digigov/react-modules/FilteredResults/DataTable').then((module) => ({ default: module['DataTable'] }))),\n 'FilterChips': lazy(() => import('@digigov/react-modules/FilteredResults/FilterChips').then((module) => ({ default: module['FilterChips'] }))),\n 'FilterFields': lazy(() => import('@digigov/react-modules/FilteredResults/FilterFields').then((module) => ({ default: module['FilterFields'] })))\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAqB;AACrB,IAAO,eAAQ;AAAA,EACb,6BAAyB,mBAAK,MAAM,OAAO,wCAAwC,EAAE,KAAK,CAACA,aAAY,EAAE,SAASA,QAAO,uBAAuB,EAAE,EAAE,CAAC;AAAA,EACrJ,6BAAyB,mBAAK,MAAM,OAAO,wCAAwC,EAAE,KAAK,CAACA,aAAY,EAAE,SAASA,QAAO,uBAAuB,EAAE,EAAE,CAAC;AAAA,EACrJ,4BAAwB,mBAAK,MAAM,OAAO,wCAAwC,EAAE,KAAK,CAACA,aAAY,EAAE,SAASA,QAAO,sBAAsB,EAAE,EAAE,CAAC;AAAA,EACnJ,uBAAmB,mBAAK,MAAM,OAAO,wCAAwC,EAAE,KAAK,CAACA,aAAY,EAAE,SAASA,QAAO,iBAAiB,EAAE,EAAE,CAAC;AAAA,EACzI,iBAAa,mBAAK,MAAM,OAAO,kDAAkD,EAAE,KAAK,CAACA,aAAY,EAAE,SAASA,QAAO,WAAW,EAAE,EAAE,CAAC;AAAA,EACvI,mBAAe,mBAAK,MAAM,OAAO,oDAAoD,EAAE,KAAK,CAACA,aAAY,EAAE,SAASA,QAAO,aAAa,EAAE,EAAE,CAAC;AAAA,EAC7I,oBAAgB,mBAAK,MAAM,OAAO,qDAAqD,EAAE,KAAK,CAACA,aAAY,EAAE,SAASA,QAAO,cAAc,EAAE,EAAE,CAAC;AAClJ;",
|
|
6
6
|
"names": ["module"]
|
|
7
7
|
}
|
package/cjs/registry/index.js
CHANGED
|
@@ -30,12 +30,12 @@ __export(registry_exports, {
|
|
|
30
30
|
default: () => registry_default
|
|
31
31
|
});
|
|
32
32
|
module.exports = __toCommonJS(registry_exports);
|
|
33
|
+
var _digigov_react_modules = __toESM(require("@digigov/react-modules"));
|
|
33
34
|
var _digigov_react_modules_FilteredResults_DataTable = __toESM(require("@digigov/react-modules/FilteredResults/DataTable"));
|
|
34
35
|
var _digigov_react_modules_FilteredResults_FilterChips = __toESM(require("@digigov/react-modules/FilteredResults/FilterChips"));
|
|
35
36
|
var _digigov_react_modules_FilteredResults_FilterFields = __toESM(require("@digigov/react-modules/FilteredResults/FilterFields"));
|
|
36
37
|
var _digigov_react_modules_FilteredResults_hooks = __toESM(require("@digigov/react-modules/FilteredResults/hooks"));
|
|
37
38
|
var _digigov_react_modules_FilteredResults = __toESM(require("@digigov/react-modules/FilteredResults"));
|
|
38
|
-
var _digigov_react_modules = __toESM(require("@digigov/react-modules"));
|
|
39
39
|
function lazyImport(pkgImport) {
|
|
40
40
|
return new Proxy(
|
|
41
41
|
{},
|
|
@@ -53,11 +53,11 @@ function lazyImport(pkgImport) {
|
|
|
53
53
|
);
|
|
54
54
|
}
|
|
55
55
|
var registry_default = {
|
|
56
|
+
"@digigov/react-modules": lazyImport(_digigov_react_modules),
|
|
56
57
|
"@digigov/react-modules/FilteredResults/DataTable": lazyImport(_digigov_react_modules_FilteredResults_DataTable),
|
|
57
58
|
"@digigov/react-modules/FilteredResults/FilterChips": lazyImport(_digigov_react_modules_FilteredResults_FilterChips),
|
|
58
59
|
"@digigov/react-modules/FilteredResults/FilterFields": lazyImport(_digigov_react_modules_FilteredResults_FilterFields),
|
|
59
60
|
"@digigov/react-modules/FilteredResults/hooks": lazyImport(_digigov_react_modules_FilteredResults_hooks),
|
|
60
|
-
"@digigov/react-modules/FilteredResults": lazyImport(_digigov_react_modules_FilteredResults)
|
|
61
|
-
"@digigov/react-modules": lazyImport(_digigov_react_modules)
|
|
61
|
+
"@digigov/react-modules/FilteredResults": lazyImport(_digigov_react_modules_FilteredResults)
|
|
62
62
|
};
|
|
63
63
|
//# sourceMappingURL=registry.js.map
|
package/cjs/registry.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
4
|
-
"sourcesContent": ["\nimport * as
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,uDAAkE;AAClE,yDAAoE;AACpE,0DAAqE;AACrE,mDAA8D;AAC9D,6CAAwD;AACxD,
|
|
3
|
+
"sources": ["../registry.js"],
|
|
4
|
+
"sourcesContent": ["\nimport * as _digigov_react_modules from \"@digigov/react-modules\";\nimport * as _digigov_react_modules_FilteredResults_DataTable from \"@digigov/react-modules/FilteredResults/DataTable\";\nimport * as _digigov_react_modules_FilteredResults_FilterChips from \"@digigov/react-modules/FilteredResults/FilterChips\";\nimport * as _digigov_react_modules_FilteredResults_FilterFields from \"@digigov/react-modules/FilteredResults/FilterFields\";\nimport * as _digigov_react_modules_FilteredResults_hooks from \"@digigov/react-modules/FilteredResults/hooks\";\nimport * as _digigov_react_modules_FilteredResults from \"@digigov/react-modules/FilteredResults\";\nfunction lazyImport(pkgImport) {\n return new Proxy(\n {},\n {\n get: (_target, name) => {\n if (name === '__esModule' || name === 'default') {\n return pkgImport.default;\n } else if(\n name === '*'\n ) {\n return pkgImport;\n } else {\n return pkgImport[name];\n }\n },\n }\n )\n}\nexport default {\n '@digigov/react-modules': lazyImport(_digigov_react_modules),\n '@digigov/react-modules/FilteredResults/DataTable': lazyImport(_digigov_react_modules_FilteredResults_DataTable),\n '@digigov/react-modules/FilteredResults/FilterChips': lazyImport(_digigov_react_modules_FilteredResults_FilterChips),\n '@digigov/react-modules/FilteredResults/FilterFields': lazyImport(_digigov_react_modules_FilteredResults_FilterFields),\n '@digigov/react-modules/FilteredResults/hooks': lazyImport(_digigov_react_modules_FilteredResults_hooks),\n '@digigov/react-modules/FilteredResults': lazyImport(_digigov_react_modules_FilteredResults)\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,6BAAwC;AACxC,uDAAkE;AAClE,yDAAoE;AACpE,0DAAqE;AACrE,mDAA8D;AAC9D,6CAAwD;AACxD,SAAS,WAAW,WAAW;AAC7B,SAAO,IAAI;AAAA,IACT,CAAC;AAAA,IACD;AAAA,MACE,KAAK,CAAC,SAAS,SAAS;AACtB,YAAI,SAAS,gBAAgB,SAAS,WAAW;AAC/C,iBAAO,UAAU;AAAA,QACnB,WACE,SAAS,KACT;AACA,iBAAO;AAAA,QACT,OAAO;AACL,iBAAO,UAAU,IAAI;AAAA,QACvB;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AACA,IAAO,mBAAQ;AAAA,EACb,0BAA0B,WAAW,sBAAsB;AAAA,EAC3D,oDAAoD,WAAW,gDAAgD;AAAA,EAC/G,sDAAsD,WAAW,kDAAkD;AAAA,EACnH,uDAAuD,WAAW,mDAAmD;AAAA,EACrH,gDAAgD,WAAW,4CAA4C;AAAA,EACvG,0CAA0C,WAAW,sCAAsC;AAC7F;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/index.js
CHANGED
package/lazy/index.js
CHANGED
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
import { lazy } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import { lazy } from 'react';
|
|
2
|
+
export default {
|
|
3
|
+
'FormBuilderSyncValues': lazy(() => import('@digigov/react-modules/FilteredResults').then((module) => ({ default: module['FormBuilderSyncValues'] }))),
|
|
4
|
+
'DrawerFilteredResults': lazy(() => import('@digigov/react-modules/FilteredResults').then((module) => ({ default: module['DrawerFilteredResults'] }))),
|
|
5
|
+
'BlockFilteredResults': lazy(() => import('@digigov/react-modules/FilteredResults').then((module) => ({ default: module['BlockFilteredResults'] }))),
|
|
6
|
+
'FilteredResults': lazy(() => import('@digigov/react-modules/FilteredResults').then((module) => ({ default: module['FilteredResults'] }))),
|
|
7
|
+
'DataTable': lazy(() => import('@digigov/react-modules/FilteredResults/DataTable').then((module) => ({ default: module['DataTable'] }))),
|
|
8
|
+
'FilterChips': lazy(() => import('@digigov/react-modules/FilteredResults/FilterChips').then((module) => ({ default: module['FilterChips'] }))),
|
|
9
|
+
'FilterFields': lazy(() => import('@digigov/react-modules/FilteredResults/FilterFields').then((module) => ({ default: module['FilterFields'] })))
|
|
10
10
|
};
|
|
11
|
-
export {
|
|
12
|
-
lazy_default as default
|
|
13
|
-
};
|
|
14
|
-
//# sourceMappingURL=lazy.js.map
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@digigov/react-modules",
|
|
3
|
-
"version": "1.2.0-
|
|
3
|
+
"version": "1.2.0-d4fe516b",
|
|
4
4
|
"description": "@digigov patterns based on ui components",
|
|
5
5
|
"main": "./cjs/index.js",
|
|
6
6
|
"module": "./index.js",
|
|
7
7
|
"dependencies": {
|
|
8
|
-
"@digigov/react-icons": "2.0.0-
|
|
9
|
-
"@digigov/form": "2.0.0-
|
|
10
|
-
"@digigov/ui": "2.0.0-
|
|
8
|
+
"@digigov/react-icons": "2.0.0-d4fe516b",
|
|
9
|
+
"@digigov/form": "2.0.0-d4fe516b",
|
|
10
|
+
"@digigov/ui": "2.0.0-d4fe516b",
|
|
11
11
|
"dompurify": "3.0.6"
|
|
12
12
|
},
|
|
13
13
|
"peerDependencies": {
|
|
@@ -15,10 +15,8 @@
|
|
|
15
15
|
"clsx": "1.1.1",
|
|
16
16
|
"react": ">=16.8.0 <19.0.0",
|
|
17
17
|
"react-dom": ">=16.8.0 <19.0.0",
|
|
18
|
-
"@digigov/react-core": "2.0.0-
|
|
19
|
-
"@digigov/css": "2.0.0-
|
|
20
|
-
"@digigov/theme-govgr-light": "1.1.0-b4cd6916",
|
|
21
|
-
"@digigov/theme-govgr-dark": "2.0.0-b4cd6916"
|
|
18
|
+
"@digigov/react-core": "2.0.0-d4fe516b",
|
|
19
|
+
"@digigov/css": "2.0.0-d4fe516b"
|
|
22
20
|
},
|
|
23
21
|
"private": false,
|
|
24
22
|
"typings": "./index.d.ts"
|
package/registry/index.js
CHANGED
|
@@ -1,34 +1,33 @@
|
|
|
1
|
+
|
|
2
|
+
import * as _digigov_react_modules from "@digigov/react-modules";
|
|
1
3
|
import * as _digigov_react_modules_FilteredResults_DataTable from "@digigov/react-modules/FilteredResults/DataTable";
|
|
2
4
|
import * as _digigov_react_modules_FilteredResults_FilterChips from "@digigov/react-modules/FilteredResults/FilterChips";
|
|
3
5
|
import * as _digigov_react_modules_FilteredResults_FilterFields from "@digigov/react-modules/FilteredResults/FilterFields";
|
|
4
6
|
import * as _digigov_react_modules_FilteredResults_hooks from "@digigov/react-modules/FilteredResults/hooks";
|
|
5
7
|
import * as _digigov_react_modules_FilteredResults from "@digigov/react-modules/FilteredResults";
|
|
6
|
-
import * as _digigov_react_modules from "@digigov/react-modules";
|
|
7
8
|
function lazyImport(pkgImport) {
|
|
8
9
|
return new Proxy(
|
|
9
10
|
{},
|
|
10
11
|
{
|
|
11
12
|
get: (_target, name) => {
|
|
12
|
-
if (name ===
|
|
13
|
+
if (name === '__esModule' || name === 'default') {
|
|
13
14
|
return pkgImport.default;
|
|
14
|
-
} else if
|
|
15
|
+
} else if(
|
|
16
|
+
name === '*'
|
|
17
|
+
) {
|
|
15
18
|
return pkgImport;
|
|
16
19
|
} else {
|
|
17
20
|
return pkgImport[name];
|
|
18
21
|
}
|
|
19
|
-
}
|
|
22
|
+
},
|
|
20
23
|
}
|
|
21
|
-
)
|
|
24
|
+
)
|
|
22
25
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
};
|
|
31
|
-
export {
|
|
32
|
-
registry_default as default
|
|
26
|
+
export default {
|
|
27
|
+
'@digigov/react-modules': lazyImport(_digigov_react_modules),
|
|
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
33
|
};
|
|
34
|
-
//# sourceMappingURL=registry.js.map
|
|
@@ -130,13 +130,13 @@ const displayRights = (value) => {
|
|
|
130
130
|
return <>{value ? <CheckIcon /> : <UncheckIcon />}</>;
|
|
131
131
|
};
|
|
132
132
|
|
|
133
|
-
|
|
133
|
+
interface DataType {
|
|
134
134
|
name: string;
|
|
135
135
|
case_id: number;
|
|
136
136
|
role: string;
|
|
137
137
|
email: string;
|
|
138
138
|
rights: boolean;
|
|
139
|
-
}
|
|
139
|
+
}
|
|
140
140
|
|
|
141
141
|
const data: DataType[] = [
|
|
142
142
|
{
|
|
@@ -194,9 +194,7 @@ const dataConfig: DataConfigType[] = [
|
|
|
194
194
|
},
|
|
195
195
|
];
|
|
196
196
|
|
|
197
|
-
type InitialFiltersType =
|
|
198
|
-
[K in (typeof dataConfig)[number]['key']]: string;
|
|
199
|
-
};
|
|
197
|
+
type InitialFiltersType = Record<(typeof dataConfig)[number]['key'], string>;
|
|
200
198
|
|
|
201
199
|
const initialFilters: InitialFiltersType = {
|
|
202
200
|
name: '',
|
|
@@ -207,7 +205,10 @@ const initialFilters: InitialFiltersType = {
|
|
|
207
205
|
};
|
|
208
206
|
|
|
209
207
|
export const Default = () => {
|
|
210
|
-
const { search, results } = useStaticSearch<
|
|
208
|
+
const { search, results } = useStaticSearch<
|
|
209
|
+
Record<string, any>,
|
|
210
|
+
InitialFiltersType
|
|
211
|
+
>({
|
|
211
212
|
fields,
|
|
212
213
|
data,
|
|
213
214
|
initialFilters,
|
|
@@ -4,14 +4,12 @@ import { FormContext } from '@digigov/form/FormContext';
|
|
|
4
4
|
import { FieldSpec } from '@digigov/form/types';
|
|
5
5
|
import { FilterChips } from '@digigov/react-modules/FilteredResults/FilterChips';
|
|
6
6
|
import { FilterFields } from '@digigov/react-modules/FilteredResults/FilterFields';
|
|
7
|
-
import CloseButton from '@digigov/ui/app/CloseButton';
|
|
8
7
|
import FilterContainer, {
|
|
9
8
|
FilterContent,
|
|
10
9
|
FilterHeadingContainer,
|
|
11
10
|
} from '@digigov/ui/app/FilterContainer';
|
|
12
11
|
import { Button } from '@digigov/ui/form/Button';
|
|
13
12
|
import { Grid } from '@digigov/ui/layouts/Grid';
|
|
14
|
-
import { Hidden } from '@digigov/ui/layouts/Hidden';
|
|
15
13
|
import { SectionBreak } from '@digigov/ui/layouts/SectionBreak';
|
|
16
14
|
import { Drawer, DrawerHeading } from '@digigov/ui/navigation/Drawer';
|
|
17
15
|
import { useDrawer } from '@digigov/ui/navigation/Drawer/hooks';
|
|
@@ -109,10 +107,7 @@ export const BlockFilteredResults = React.forwardRef<HTMLDivElement, unknown>(
|
|
|
109
107
|
return (
|
|
110
108
|
<Grid item xs={12} ref={ref}>
|
|
111
109
|
<FilterContainer open={open}>
|
|
112
|
-
<FilterHeadingContainer>
|
|
113
|
-
<Hidden mdUp>
|
|
114
|
-
<CloseButton onClick={() => setOpen(false)}>Κλείσιμο</CloseButton>
|
|
115
|
-
</Hidden>
|
|
110
|
+
<FilterHeadingContainer onClick={() => setOpen(false)}>
|
|
116
111
|
<Heading size="md">Φίλτρα</Heading>
|
|
117
112
|
</FilterHeadingContainer>
|
|
118
113
|
<FilterContent>
|
package/src/lazy.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import {lazy} from 'react';
|
|
1
|
+
import { lazy } from 'react';
|
|
2
2
|
export default {
|
|
3
|
-
|
|
4
|
-
'
|
|
5
|
-
'
|
|
6
|
-
'
|
|
7
|
-
'
|
|
8
|
-
'
|
|
9
|
-
'
|
|
10
|
-
|
|
11
|
-
}
|
|
3
|
+
'FormBuilderSyncValues': lazy(() => import('@digigov/react-modules/FilteredResults').then((module) => ({ default: module['FormBuilderSyncValues'] }))),
|
|
4
|
+
'DrawerFilteredResults': lazy(() => import('@digigov/react-modules/FilteredResults').then((module) => ({ default: module['DrawerFilteredResults'] }))),
|
|
5
|
+
'BlockFilteredResults': lazy(() => import('@digigov/react-modules/FilteredResults').then((module) => ({ default: module['BlockFilteredResults'] }))),
|
|
6
|
+
'FilteredResults': lazy(() => import('@digigov/react-modules/FilteredResults').then((module) => ({ default: module['FilteredResults'] }))),
|
|
7
|
+
'DataTable': lazy(() => import('@digigov/react-modules/FilteredResults/DataTable').then((module) => ({ default: module['DataTable'] }))),
|
|
8
|
+
'FilterChips': lazy(() => import('@digigov/react-modules/FilteredResults/FilterChips').then((module) => ({ default: module['FilterChips'] }))),
|
|
9
|
+
'FilterFields': lazy(() => import('@digigov/react-modules/FilteredResults/FilterFields').then((module) => ({ default: module['FilterFields'] })))
|
|
10
|
+
};
|