@mittwald/flow-react-components 0.2.0-alpha.395 → 0.2.0-alpha.396
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.
|
@@ -24,7 +24,7 @@ class Filter {
|
|
|
24
24
|
constructor(list, shape) {
|
|
25
25
|
this.list = list;
|
|
26
26
|
this.property = shape.property;
|
|
27
|
-
this.mode = shape.mode ?? "
|
|
27
|
+
this.mode = shape.mode ?? "some";
|
|
28
28
|
this._values = shape.values?.map((v) => FilterValue.create(this, v));
|
|
29
29
|
this.matcher = shape.matcher ?? equalsPropertyMatcher;
|
|
30
30
|
this.renderItem = shape.renderItem ?? stringCastRenderMethod;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Filter.mjs","sources":["../../../../../../../../src/components/List/model/filter/Filter.ts"],"sourcesContent":["import type {\n Column,\n ColumnDef,\n ColumnFilter,\n InitialTableState,\n} from \"@tanstack/react-table\";\nimport type List from \"@/components/List/model/List\";\nimport { getProperty } from \"dot-prop\";\nimport type {\n FilterMatcher,\n FilterMode,\n FilterShape,\n} from \"@/components/List/model/filter/types\";\nimport type {\n PropertyName,\n PropertyValueRenderMethod,\n} from \"@/components/List/model/types\";\nimport { customPropertyPrefix } from \"@/components/List/model/types\";\nimport { difference, unique } from \"remeda\";\nimport { FilterValue } from \"@/components/List/model/filter/FilterValue\";\nimport z from \"zod\";\nimport { toArray } from \"@/lib/array/toArray\";\n\nconst equalsPropertyMatcher: FilterMatcher<unknown, never, never> = (\n filterValue,\n propertyValue,\n) => filterValue === propertyValue;\n\nconst stringCastRenderMethod: PropertyValueRenderMethod<unknown> = (value) =>\n String(value);\n\nexport class Filter<T, TProp extends PropertyName<T>, TMatchValue> {\n public static readonly settingsStorageSchema = z\n .record(z.array(z.string()))\n .optional();\n\n private _values?: FilterValue[] | undefined;\n private _valuesFromTableState?: FilterValue[];\n public readonly list: List<T>;\n public readonly property: PropertyName<T>;\n public readonly mode: FilterMode;\n public readonly matcher: FilterMatcher<T, never, never>;\n public readonly renderItem: PropertyValueRenderMethod<TMatchValue>;\n public readonly name?: string;\n private onFilterUpdateCallbacks = new Set<() => unknown>();\n private readonly defaultSelectedValues?: readonly NonNullable<TMatchValue>[];\n\n public constructor(list: List<T>, shape: FilterShape<T, TProp, TMatchValue>) {\n this.list = list;\n this.property = shape.property;\n this.mode = shape.mode ?? \"one\";\n this._values = shape.values?.map((v) => FilterValue.create(this, v));\n this.matcher = shape.matcher ?? equalsPropertyMatcher;\n this.renderItem = shape.renderItem ?? stringCastRenderMethod;\n this.name = shape.name;\n\n this.defaultSelectedValues = shape.defaultSelected;\n }\n\n private getStoredSelectedIds() {\n return this.list.getStoredFilterDefaultSettings()?.[String(this.property)];\n }\n\n public updateInitialState(initialState: InitialTableState) {\n const initialValues = this.getInitialValues();\n\n if (initialValues?.length) {\n initialState.columnFilters = [\n ...(initialState.columnFilters ?? []),\n {\n id: this.property as string,\n value: initialValues,\n },\n ];\n }\n }\n\n public updateTableColumnDef(def: ColumnDef<T>): void {\n def.enableColumnFilter = true;\n def.filterFn = this.getReactTableFilterFn();\n }\n\n private getReactTableFilterFn(): ColumnDef<T>[\"filterFn\"] {\n return (row, _, filterValue) => {\n const propertyAsString = this.property as string;\n\n const filterBy = propertyAsString.startsWith(customPropertyPrefix)\n ? row.original\n : getProperty(row.original, propertyAsString);\n\n return this.checkFilterMatches(filterBy, filterValue);\n };\n }\n\n private checkFilterMatches(\n property: unknown,\n filterValueInput: unknown,\n ): boolean {\n if (filterValueInput === null) {\n return true;\n }\n\n const predicate = (filterValue: FilterValue) =>\n this.matcher(filterValue.value as never, property as never);\n\n const toFilterValue = (something: unknown) =>\n FilterValue.create(this, something);\n\n if (this.mode === \"all\") {\n return toArray(filterValueInput).map(toFilterValue).every(predicate);\n } else if (this.mode === \"some\") {\n const filterArr = toArray(filterValueInput);\n return (\n filterArr.length === 0 || filterArr.map(toFilterValue).some(predicate)\n );\n } else if (this.mode === \"one\") {\n return predicate(toFilterValue(filterValueInput));\n }\n\n throw new Error(`Unknown filter mode '${this.mode}'`);\n }\n\n protected getTableColumnFilter(): ColumnFilter | undefined {\n return this.list.reactTable.table\n .getState()\n .columnFilters.find((f) => f.id === this.property);\n }\n\n private getTableColumn(): Column<T> {\n return this.list.reactTable.getTableColumn(this.property);\n }\n\n public getValue(): unknown {\n return this.getTableColumnFilter()?.value ?? null;\n }\n\n private getValuesFromTableState() {\n return unique(\n Array.from(this.getTableColumn().getFacetedUniqueValues().keys())\n .flatMap((v) => v)\n .filter((v) => v !== undefined && v !== null),\n ).map((v) => FilterValue.create(this, v));\n }\n\n private checkIfValueIsUnknown(value: FilterValue) {\n const isKnown = this.values.some((v) => v.id === value.id);\n return !isKnown;\n }\n\n public deleteUnknownFilterValues() {\n if (this.values === this.valuesFromTableState) {\n return;\n }\n\n for (const currentValues of this.getArrayValue()) {\n if (this.checkIfValueIsUnknown(currentValues)) {\n this.deactivateValue(currentValues);\n }\n }\n }\n\n public get values(): FilterValue[] {\n return this._values ?? this.valuesFromTableState;\n }\n\n private get valuesFromTableState(): FilterValue[] {\n if (!this._valuesFromTableState) {\n this._valuesFromTableState = this.getValuesFromTableState();\n }\n return this._valuesFromTableState;\n }\n\n public getArrayValue(): FilterValue[] {\n const value = this.getValue();\n return value === null\n ? []\n : toArray(value).map((v) => FilterValue.create(this, v));\n }\n\n public isValueActive(value: FilterValue): boolean {\n return this.getArrayValue().some((v) => v.equals(value));\n }\n\n public isActive(): boolean {\n return this.getArrayValue().length > 0;\n }\n\n public deactivateValue(value: FilterValue): void {\n const currentValueAsArray = this.getArrayValue();\n\n let updatedValue: unknown;\n\n if (this.mode === \"all\" || this.mode === \"some\") {\n updatedValue = currentValueAsArray.filter((v) => !v.equals(value));\n } else {\n updatedValue = null;\n }\n\n this.list.reactTable\n .getTableColumn(this.property)\n .setFilterValue(updatedValue);\n this.onFilterUpdateCallbacks.forEach((cb) => cb());\n }\n\n public hasChanged(): boolean {\n const currentValues = this.getArrayValue().map((v) => v.value);\n const initialValues =\n this.getInitialFilterValues()?.map((v) => v.value) ?? [];\n\n return (\n currentValues.length !== initialValues.length ||\n difference(currentValues, initialValues).length > 0\n );\n }\n\n private getInitialValues() {\n return this.getStoredSelectedIds() ?? this.defaultSelectedValues;\n }\n\n private getInitialFilterValues() {\n return this.getInitialValues()?.map((v) => FilterValue.create(this, v));\n }\n\n public resetValues(): void {\n let resetTo: unknown;\n const initialValues = this.getInitialValues();\n\n if (initialValues) {\n resetTo = initialValues;\n } else {\n if (this.mode === \"all\" || this.mode === \"some\") {\n resetTo = [];\n } else {\n resetTo = null;\n }\n }\n\n this.list.reactTable.getTableColumn(this.property).setFilterValue(resetTo);\n this.onFilterUpdateCallbacks.forEach((cb) => cb());\n }\n\n public clear(): void {\n this.list.reactTable.getTableColumn(this.property).setFilterValue(null);\n this.onFilterUpdateCallbacks.forEach((cb) => cb());\n }\n\n public toggleValue(newValue: FilterValue): void {\n const currentValueAsArray = this.getArrayValue();\n\n let updatedValue: unknown;\n\n if (this.mode === \"all\" || this.mode === \"some\") {\n if (newValue.isActive) {\n updatedValue = currentValueAsArray.filter((v) => !v.equals(newValue));\n } else {\n updatedValue = [...currentValueAsArray, newValue];\n }\n } else {\n updatedValue = newValue.isActive ? null : newValue;\n }\n\n this.list.reactTable\n .getTableColumn(this.property)\n .setFilterValue(updatedValue);\n this.onFilterUpdateCallbacks.forEach((cb) => cb());\n }\n\n public onFilterUpdated(cb: () => unknown): void {\n this.onFilterUpdateCallbacks.add(cb);\n }\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Filter.mjs","sources":["../../../../../../../../src/components/List/model/filter/Filter.ts"],"sourcesContent":["import type {\n Column,\n ColumnDef,\n ColumnFilter,\n InitialTableState,\n} from \"@tanstack/react-table\";\nimport type List from \"@/components/List/model/List\";\nimport { getProperty } from \"dot-prop\";\nimport type {\n FilterMatcher,\n FilterMode,\n FilterShape,\n} from \"@/components/List/model/filter/types\";\nimport type {\n PropertyName,\n PropertyValueRenderMethod,\n} from \"@/components/List/model/types\";\nimport { customPropertyPrefix } from \"@/components/List/model/types\";\nimport { difference, unique } from \"remeda\";\nimport { FilterValue } from \"@/components/List/model/filter/FilterValue\";\nimport z from \"zod\";\nimport { toArray } from \"@/lib/array/toArray\";\n\nconst equalsPropertyMatcher: FilterMatcher<unknown, never, never> = (\n filterValue,\n propertyValue,\n) => filterValue === propertyValue;\n\nconst stringCastRenderMethod: PropertyValueRenderMethod<unknown> = (value) =>\n String(value);\n\nexport class Filter<T, TProp extends PropertyName<T>, TMatchValue> {\n public static readonly settingsStorageSchema = z\n .record(z.array(z.string()))\n .optional();\n\n private _values?: FilterValue[] | undefined;\n private _valuesFromTableState?: FilterValue[];\n public readonly list: List<T>;\n public readonly property: PropertyName<T>;\n public readonly mode: FilterMode;\n public readonly matcher: FilterMatcher<T, never, never>;\n public readonly renderItem: PropertyValueRenderMethod<TMatchValue>;\n public readonly name?: string;\n private onFilterUpdateCallbacks = new Set<() => unknown>();\n private readonly defaultSelectedValues?: readonly NonNullable<TMatchValue>[];\n\n public constructor(list: List<T>, shape: FilterShape<T, TProp, TMatchValue>) {\n this.list = list;\n this.property = shape.property;\n this.mode = shape.mode ?? \"some\";\n this._values = shape.values?.map((v) => FilterValue.create(this, v));\n this.matcher = shape.matcher ?? equalsPropertyMatcher;\n this.renderItem = shape.renderItem ?? stringCastRenderMethod;\n this.name = shape.name;\n\n this.defaultSelectedValues = shape.defaultSelected;\n }\n\n private getStoredSelectedIds() {\n return this.list.getStoredFilterDefaultSettings()?.[String(this.property)];\n }\n\n public updateInitialState(initialState: InitialTableState) {\n const initialValues = this.getInitialValues();\n\n if (initialValues?.length) {\n initialState.columnFilters = [\n ...(initialState.columnFilters ?? []),\n {\n id: this.property as string,\n value: initialValues,\n },\n ];\n }\n }\n\n public updateTableColumnDef(def: ColumnDef<T>): void {\n def.enableColumnFilter = true;\n def.filterFn = this.getReactTableFilterFn();\n }\n\n private getReactTableFilterFn(): ColumnDef<T>[\"filterFn\"] {\n return (row, _, filterValue) => {\n const propertyAsString = this.property as string;\n\n const filterBy = propertyAsString.startsWith(customPropertyPrefix)\n ? row.original\n : getProperty(row.original, propertyAsString);\n\n return this.checkFilterMatches(filterBy, filterValue);\n };\n }\n\n private checkFilterMatches(\n property: unknown,\n filterValueInput: unknown,\n ): boolean {\n if (filterValueInput === null) {\n return true;\n }\n\n const predicate = (filterValue: FilterValue) =>\n this.matcher(filterValue.value as never, property as never);\n\n const toFilterValue = (something: unknown) =>\n FilterValue.create(this, something);\n\n if (this.mode === \"all\") {\n return toArray(filterValueInput).map(toFilterValue).every(predicate);\n } else if (this.mode === \"some\") {\n const filterArr = toArray(filterValueInput);\n return (\n filterArr.length === 0 || filterArr.map(toFilterValue).some(predicate)\n );\n } else if (this.mode === \"one\") {\n return predicate(toFilterValue(filterValueInput));\n }\n\n throw new Error(`Unknown filter mode '${this.mode}'`);\n }\n\n protected getTableColumnFilter(): ColumnFilter | undefined {\n return this.list.reactTable.table\n .getState()\n .columnFilters.find((f) => f.id === this.property);\n }\n\n private getTableColumn(): Column<T> {\n return this.list.reactTable.getTableColumn(this.property);\n }\n\n public getValue(): unknown {\n return this.getTableColumnFilter()?.value ?? null;\n }\n\n private getValuesFromTableState() {\n return unique(\n Array.from(this.getTableColumn().getFacetedUniqueValues().keys())\n .flatMap((v) => v)\n .filter((v) => v !== undefined && v !== null),\n ).map((v) => FilterValue.create(this, v));\n }\n\n private checkIfValueIsUnknown(value: FilterValue) {\n const isKnown = this.values.some((v) => v.id === value.id);\n return !isKnown;\n }\n\n public deleteUnknownFilterValues() {\n if (this.values === this.valuesFromTableState) {\n return;\n }\n\n for (const currentValues of this.getArrayValue()) {\n if (this.checkIfValueIsUnknown(currentValues)) {\n this.deactivateValue(currentValues);\n }\n }\n }\n\n public get values(): FilterValue[] {\n return this._values ?? this.valuesFromTableState;\n }\n\n private get valuesFromTableState(): FilterValue[] {\n if (!this._valuesFromTableState) {\n this._valuesFromTableState = this.getValuesFromTableState();\n }\n return this._valuesFromTableState;\n }\n\n public getArrayValue(): FilterValue[] {\n const value = this.getValue();\n return value === null\n ? []\n : toArray(value).map((v) => FilterValue.create(this, v));\n }\n\n public isValueActive(value: FilterValue): boolean {\n return this.getArrayValue().some((v) => v.equals(value));\n }\n\n public isActive(): boolean {\n return this.getArrayValue().length > 0;\n }\n\n public deactivateValue(value: FilterValue): void {\n const currentValueAsArray = this.getArrayValue();\n\n let updatedValue: unknown;\n\n if (this.mode === \"all\" || this.mode === \"some\") {\n updatedValue = currentValueAsArray.filter((v) => !v.equals(value));\n } else {\n updatedValue = null;\n }\n\n this.list.reactTable\n .getTableColumn(this.property)\n .setFilterValue(updatedValue);\n this.onFilterUpdateCallbacks.forEach((cb) => cb());\n }\n\n public hasChanged(): boolean {\n const currentValues = this.getArrayValue().map((v) => v.value);\n const initialValues =\n this.getInitialFilterValues()?.map((v) => v.value) ?? [];\n\n return (\n currentValues.length !== initialValues.length ||\n difference(currentValues, initialValues).length > 0\n );\n }\n\n private getInitialValues() {\n return this.getStoredSelectedIds() ?? this.defaultSelectedValues;\n }\n\n private getInitialFilterValues() {\n return this.getInitialValues()?.map((v) => FilterValue.create(this, v));\n }\n\n public resetValues(): void {\n let resetTo: unknown;\n const initialValues = this.getInitialValues();\n\n if (initialValues) {\n resetTo = initialValues;\n } else {\n if (this.mode === \"all\" || this.mode === \"some\") {\n resetTo = [];\n } else {\n resetTo = null;\n }\n }\n\n this.list.reactTable.getTableColumn(this.property).setFilterValue(resetTo);\n this.onFilterUpdateCallbacks.forEach((cb) => cb());\n }\n\n public clear(): void {\n this.list.reactTable.getTableColumn(this.property).setFilterValue(null);\n this.onFilterUpdateCallbacks.forEach((cb) => cb());\n }\n\n public toggleValue(newValue: FilterValue): void {\n const currentValueAsArray = this.getArrayValue();\n\n let updatedValue: unknown;\n\n if (this.mode === \"all\" || this.mode === \"some\") {\n if (newValue.isActive) {\n updatedValue = currentValueAsArray.filter((v) => !v.equals(newValue));\n } else {\n updatedValue = [...currentValueAsArray, newValue];\n }\n } else {\n updatedValue = newValue.isActive ? null : newValue;\n }\n\n this.list.reactTable\n .getTableColumn(this.property)\n .setFilterValue(updatedValue);\n this.onFilterUpdateCallbacks.forEach((cb) => cb());\n }\n\n public onFilterUpdated(cb: () => unknown): void {\n this.onFilterUpdateCallbacks.add(cb);\n }\n}\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mittwald/flow-react-components",
|
|
3
|
-
"version": "0.2.0-alpha.
|
|
3
|
+
"version": "0.2.0-alpha.396",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "A React implementation of Flow, mittwald’s design system",
|
|
6
6
|
"homepage": "https://mittwald.github.io/flow",
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
"@chakra-ui/live-region": "^2.1.0",
|
|
59
59
|
"@internationalized/string-compiler": "^3.2.6",
|
|
60
60
|
"@mittwald/password-tools-js": "3.0.0-alpha.15",
|
|
61
|
-
"@mittwald/react-tunnel": "0.2.0-alpha.
|
|
61
|
+
"@mittwald/react-tunnel": "0.2.0-alpha.396",
|
|
62
62
|
"@mittwald/react-use-promise": "^3.0.4",
|
|
63
63
|
"@react-aria/form": "^3.1.0",
|
|
64
64
|
"@react-aria/utils": "^3.30.0",
|
|
@@ -99,7 +99,7 @@
|
|
|
99
99
|
"@faker-js/faker": "^9.9.0",
|
|
100
100
|
"@internationalized/date": "^3.8.2",
|
|
101
101
|
"@mittwald/flow-core": "",
|
|
102
|
-
"@mittwald/flow-design-tokens": "0.2.0-alpha.
|
|
102
|
+
"@mittwald/flow-design-tokens": "0.2.0-alpha.396",
|
|
103
103
|
"@mittwald/react-use-promise": "^3.0.4",
|
|
104
104
|
"@mittwald/remote-dom-react": "1.2.2-mittwald.3",
|
|
105
105
|
"@mittwald/typescript-config": "",
|
|
@@ -175,5 +175,5 @@
|
|
|
175
175
|
"optional": true
|
|
176
176
|
}
|
|
177
177
|
},
|
|
178
|
-
"gitHead": "
|
|
178
|
+
"gitHead": "527f3cb34b342ed94935b0875cad29799a230b4f"
|
|
179
179
|
}
|