@pega/cosmos-react-condition-builder 3.0.0-dev.3.0 → 3.0.0-dev.30.0
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/lib/components/ConditionBuilder/AtomicCondition.d.ts +6 -4
- package/lib/components/ConditionBuilder/AtomicCondition.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/AtomicCondition.js +31 -21
- package/lib/components/ConditionBuilder/AtomicCondition.js.map +1 -1
- package/lib/components/ConditionBuilder/ConditionBuilder.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/ConditionBuilder.js +16 -42
- package/lib/components/ConditionBuilder/ConditionBuilder.js.map +1 -1
- package/lib/components/ConditionBuilder/ConditionBuilder.styles.d.ts +5 -0
- package/lib/components/ConditionBuilder/ConditionBuilder.styles.d.ts.map +1 -0
- package/lib/components/ConditionBuilder/ConditionBuilder.styles.js +44 -0
- package/lib/components/ConditionBuilder/ConditionBuilder.styles.js.map +1 -0
- package/lib/components/ConditionBuilder/ConditionBuilder.types.d.ts +41 -20
- package/lib/components/ConditionBuilder/ConditionBuilder.types.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/ConditionBuilder.types.js.map +1 -1
- package/lib/components/ConditionBuilder/FieldCondition.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/FieldCondition.js +12 -12
- package/lib/components/ConditionBuilder/FieldCondition.js.map +1 -1
- package/lib/components/ConditionBuilder/FieldCondition.types.d.ts +11 -4
- package/lib/components/ConditionBuilder/FieldCondition.types.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/FieldCondition.types.js.map +1 -1
- package/lib/components/ConditionBuilder/HelpButton.js +1 -1
- package/lib/components/ConditionBuilder/HelpButton.js.map +1 -1
- package/lib/components/ConditionBuilder/RhsControls/DateFunctionMenu.js +1 -1
- package/lib/components/ConditionBuilder/RhsControls/DateFunctionMenu.js.map +1 -1
- package/lib/components/ConditionBuilder/RhsControls/FieldSelector.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/RhsControls/FieldSelector.js +14 -21
- package/lib/components/ConditionBuilder/RhsControls/FieldSelector.js.map +1 -1
- package/lib/components/ConditionBuilder/RhsControls/NumericInput.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/RhsControls/NumericInput.js +5 -2
- package/lib/components/ConditionBuilder/RhsControls/NumericInput.js.map +1 -1
- package/lib/components/ConditionBuilder/RhsControls/RelativeDateMenu.js +1 -1
- package/lib/components/ConditionBuilder/RhsControls/RelativeDateMenu.js.map +1 -1
- package/lib/components/ConditionBuilder/RhsControls/RhsModeSwitch.d.ts +5 -3
- package/lib/components/ConditionBuilder/RhsControls/RhsModeSwitch.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/RhsControls/RhsModeSwitch.js +50 -16
- package/lib/components/ConditionBuilder/RhsControls/RhsModeSwitch.js.map +1 -1
- package/lib/components/ConditionBuilder/RhsControls/TimePeriodInput.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/RhsControls/TimePeriodInput.js +8 -8
- package/lib/components/ConditionBuilder/RhsControls/TimePeriodInput.js.map +1 -1
- package/lib/components/ConditionBuilder/RhsControls/TimePeriodMenu.js +1 -1
- package/lib/components/ConditionBuilder/RhsControls/TimePeriodMenu.js.map +1 -1
- package/lib/components/ConditionBuilder/RhsControls/ValueSelector.d.ts +38 -0
- package/lib/components/ConditionBuilder/RhsControls/ValueSelector.d.ts.map +1 -0
- package/lib/components/ConditionBuilder/RhsControls/ValueSelector.js +133 -0
- package/lib/components/ConditionBuilder/RhsControls/ValueSelector.js.map +1 -0
- package/lib/components/ConditionBuilder/RhsControls/index.d.ts +5 -2
- package/lib/components/ConditionBuilder/RhsControls/index.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/RhsControls/index.js +91 -30
- package/lib/components/ConditionBuilder/RhsControls/index.js.map +1 -1
- package/lib/components/ConditionBuilder/core/comparators.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/core/comparators.js +4 -0
- package/lib/components/ConditionBuilder/core/comparators.js.map +1 -1
- package/lib/components/ConditionBuilder/core/evaluator.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/core/evaluator.js +10 -3
- package/lib/components/ConditionBuilder/core/evaluator.js.map +1 -1
- package/lib/components/ConditionBuilder/core/formatter.d.ts +1 -0
- package/lib/components/ConditionBuilder/core/formatter.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/core/formatter.js +84 -38
- package/lib/components/ConditionBuilder/core/formatter.js.map +1 -1
- package/lib/components/ConditionBuilder/core/transformer.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/core/transformer.js +37 -2
- package/lib/components/ConditionBuilder/core/transformer.js.map +1 -1
- package/lib/components/ConditionBuilder/core/types.d.ts +2 -2
- package/lib/components/ConditionBuilder/core/types.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/core/types.js.map +1 -1
- package/lib/components/ConditionBuilder/core/utils.d.ts +5 -1
- package/lib/components/ConditionBuilder/core/utils.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/core/utils.js +18 -0
- package/lib/components/ConditionBuilder/core/utils.js.map +1 -1
- package/lib/components/ConditionBuilder/index.d.ts +1 -1
- package/lib/components/ConditionBuilder/index.d.ts.map +1 -1
- package/lib/components/ConditionBuilder/index.js.map +1 -1
- package/lib/components/ConditionInput/ConditionInput.d.ts +6 -0
- package/lib/components/ConditionInput/ConditionInput.d.ts.map +1 -0
- package/lib/components/ConditionInput/ConditionInput.js +215 -0
- package/lib/components/ConditionInput/ConditionInput.js.map +1 -0
- package/lib/components/ConditionInput/ConditionInput.styles.d.ts +5 -0
- package/lib/components/ConditionInput/ConditionInput.styles.d.ts.map +1 -0
- package/lib/components/ConditionInput/ConditionInput.styles.js +27 -0
- package/lib/components/ConditionInput/ConditionInput.styles.js.map +1 -0
- package/lib/components/ConditionInput/ConditionInput.types.d.ts +29 -0
- package/lib/components/ConditionInput/ConditionInput.types.d.ts.map +1 -0
- package/lib/components/ConditionInput/ConditionInput.types.js +2 -0
- package/lib/components/ConditionInput/ConditionInput.types.js.map +1 -0
- package/lib/components/ConditionInput/index.d.ts +3 -0
- package/lib/components/ConditionInput/index.d.ts.map +1 -0
- package/lib/components/ConditionInput/index.js +2 -0
- package/lib/components/ConditionInput/index.js.map +1 -0
- package/lib/components/ConditionInput/utils.d.ts +13 -0
- package/lib/components/ConditionInput/utils.d.ts.map +1 -0
- package/lib/components/ConditionInput/utils.js +56 -0
- package/lib/components/ConditionInput/utils.js.map +1 -0
- package/lib/components/PromotedFilters/ConditionSelector.d.ts +31 -0
- package/lib/components/PromotedFilters/ConditionSelector.d.ts.map +1 -0
- package/lib/components/PromotedFilters/ConditionSelector.js +72 -0
- package/lib/components/PromotedFilters/ConditionSelector.js.map +1 -0
- package/lib/components/PromotedFilters/PromotedFilters.d.ts +11 -0
- package/lib/components/PromotedFilters/PromotedFilters.d.ts.map +1 -0
- package/lib/components/PromotedFilters/PromotedFilters.js +118 -0
- package/lib/components/PromotedFilters/PromotedFilters.js.map +1 -0
- package/lib/components/PromotedFilters/PromotedFilters.styles.d.ts +4 -0
- package/lib/components/PromotedFilters/PromotedFilters.styles.d.ts.map +1 -0
- package/lib/components/PromotedFilters/PromotedFilters.styles.js +26 -0
- package/lib/components/PromotedFilters/PromotedFilters.styles.js.map +1 -0
- package/lib/components/PromotedFilters/PromotedFilters.types.d.ts +31 -0
- package/lib/components/PromotedFilters/PromotedFilters.types.d.ts.map +1 -0
- package/lib/components/PromotedFilters/PromotedFilters.types.js +2 -0
- package/lib/components/PromotedFilters/PromotedFilters.types.js.map +1 -0
- package/lib/components/PromotedFilters/index.d.ts +3 -0
- package/lib/components/PromotedFilters/index.d.ts.map +1 -0
- package/lib/components/PromotedFilters/index.js +2 -0
- package/lib/components/PromotedFilters/index.js.map +1 -0
- package/lib/index.d.ts +4 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +4 -0
- package/lib/index.js.map +1 -1
- package/package.json +18 -12
- package/lib/components/ConditionBuilder/RhsControls/MultiValueSelector.d.ts +0 -16
- package/lib/components/ConditionBuilder/RhsControls/MultiValueSelector.d.ts.map +0 -1
- package/lib/components/ConditionBuilder/RhsControls/MultiValueSelector.js +0 -43
- package/lib/components/ConditionBuilder/RhsControls/MultiValueSelector.js.map +0 -1
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useState, useMemo } from 'react';
|
|
3
|
-
import { useI18n, ComboBox, createStringMatcher, useAfterInitialEffect } from '@pega/cosmos-react-core';
|
|
4
|
-
/** A control for selecting multiple values using checkboxes in an overlay */
|
|
5
|
-
const MultiValueSelector = ({ values, options, onChange, status }) => {
|
|
6
|
-
const t = useI18n();
|
|
7
|
-
const [selections, setSelections] = useState(values);
|
|
8
|
-
const [filterValue, setFilterValue] = useState('');
|
|
9
|
-
const itemsToRender = useMemo(() => {
|
|
10
|
-
let opts = options;
|
|
11
|
-
if (filterValue) {
|
|
12
|
-
const matcher = createStringMatcher(filterValue, 'boundary');
|
|
13
|
-
opts = opts.filter(opt => matcher.test(opt));
|
|
14
|
-
}
|
|
15
|
-
return opts.map(option => {
|
|
16
|
-
return {
|
|
17
|
-
id: option,
|
|
18
|
-
primary: option,
|
|
19
|
-
selected: selections.includes(option)
|
|
20
|
-
};
|
|
21
|
-
});
|
|
22
|
-
}, [options, filterValue, selections]);
|
|
23
|
-
useAfterInitialEffect(() => {
|
|
24
|
-
onChange(selections);
|
|
25
|
-
}, [selections]);
|
|
26
|
-
return (_jsx(ComboBox, { mode: 'multi-select', label: t('condition_builder_possible_values_label'), labelHidden: true, placeholder: t('condition_builder_selection_text_default'), value: filterValue, onChange: e => {
|
|
27
|
-
setFilterValue(e.target.value);
|
|
28
|
-
}, menu: {
|
|
29
|
-
items: itemsToRender,
|
|
30
|
-
onItemClick: option => {
|
|
31
|
-
setSelections(cur => cur.includes(option) ? cur.filter(selection => selection !== option) : [...cur, option]);
|
|
32
|
-
}
|
|
33
|
-
}, selected: selections.length > 0
|
|
34
|
-
? {
|
|
35
|
-
items: selections.map(s => ({ id: s, text: s })),
|
|
36
|
-
onRemove: value => {
|
|
37
|
-
setSelections(cur => cur.filter(selection => selection !== value));
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
: undefined, status: status, info: status === 'error' ? t('condition_builder_empty_selection_error_text') : undefined }, void 0));
|
|
41
|
-
};
|
|
42
|
-
export default MultiValueSelector;
|
|
43
|
-
//# sourceMappingURL=MultiValueSelector.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MultiValueSelector.js","sourceRoot":"","sources":["../../../../src/components/ConditionBuilder/RhsControls/MultiValueSelector.tsx"],"names":[],"mappings":"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","sourcesContent":["import { FunctionComponent, useState, useMemo } from 'react';\n\nimport {\n useI18n,\n BaseProps,\n ForwardProps,\n ComboBox,\n createStringMatcher,\n useAfterInitialEffect,\n NoChildrenProp\n} from '@pega/cosmos-react-core';\n\ninterface MultiSelectorProps extends BaseProps, NoChildrenProp {\n /** Previous selection */\n values: string[];\n\n /** Options for the selector */\n options: string[];\n\n /** Callback for changes */\n onChange: (selection: string[]) => void;\n\n /** Used to indicate any errors on the control */\n status?: 'error';\n}\n\n/** A control for selecting multiple values using checkboxes in an overlay */\nconst MultiValueSelector: FunctionComponent<MultiSelectorProps & ForwardProps> = ({\n values,\n options,\n onChange,\n status\n}: MultiSelectorProps) => {\n const t = useI18n();\n\n const [selections, setSelections] = useState(values);\n const [filterValue, setFilterValue] = useState('');\n\n const itemsToRender = useMemo(() => {\n let opts = options;\n\n if (filterValue) {\n const matcher = createStringMatcher(filterValue, 'boundary');\n opts = opts.filter(opt => matcher.test(opt));\n }\n\n return opts.map(option => {\n return {\n id: option,\n primary: option,\n selected: selections.includes(option)\n };\n });\n }, [options, filterValue, selections]);\n\n useAfterInitialEffect(() => {\n onChange(selections);\n }, [selections]);\n\n return (\n <ComboBox\n mode='multi-select'\n label={t('condition_builder_possible_values_label')}\n labelHidden\n placeholder={t('condition_builder_selection_text_default')}\n value={filterValue}\n onChange={e => {\n setFilterValue(e.target.value);\n }}\n menu={{\n items: itemsToRender,\n onItemClick: option => {\n setSelections(cur =>\n cur.includes(option) ? cur.filter(selection => selection !== option) : [...cur, option]\n );\n }\n }}\n selected={\n selections.length > 0\n ? {\n items: selections.map(s => ({ id: s, text: s })),\n onRemove: value => {\n setSelections(cur => cur.filter(selection => selection !== value));\n }\n }\n : undefined\n }\n status={status}\n info={status === 'error' ? t('condition_builder_empty_selection_error_text') : undefined}\n />\n );\n};\n\nexport default MultiValueSelector;\n"]}
|