draft-components 1.9.0 → 1.10.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.
@@ -15,7 +15,7 @@ function StringSetFilterItem({ filter, isEditing, onEditStart, onEditCancel, onR
15
15
  const translations = useTranslations.useTranslations();
16
16
  const [filterOperator, setFilterOperator] = react.useState(filter.operator);
17
17
  const [filterValue, setFilterValue] = react.useState(filter.value);
18
- const { label, values, operators, operatorSelectAccessibleName, valueFormatter: formatValue = defaultValueFormatter, operatorFormatter: formatOperator = defaultOperatorFormatter, } = filter.config;
18
+ const { label, values, operators, operatorSelectAccessibleName, valueFormatter: formatValue = defaultValueFormatter, valuesFormatter: formatValues = defaultValuesFormatter, operatorFormatter: formatOperator = defaultOperatorFormatter, } = filter.config;
19
19
  const cancelEdit = () => {
20
20
  onEditCancel(filter);
21
21
  };
@@ -44,23 +44,16 @@ function StringSetFilterItem({ filter, isEditing, onEditStart, onEditCancel, onR
44
44
  }
45
45
  onChange(changedFilter);
46
46
  };
47
- const anchor = (jsxRuntime.jsxs(filterToken.FilterToken, { isHighlighted: isEditing, onClickLabel: startEdit, onClickCloseButton: onClickCloseButton, children: [label, filter.value.length > 0 ? (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: ["\u00A0", jsxRuntime.jsx("span", { children: formatOperator(filter.operator) }), "\u00A0", jsxRuntime.jsx("b", { children: formatFilterValue(filter.value) })] })) : null] }));
47
+ const anchor = (jsxRuntime.jsxs(filterToken.FilterToken, { isHighlighted: isEditing, onClickLabel: startEdit, onClickCloseButton: onClickCloseButton, children: [label, filter.value.length > 0 ? (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: ["\u00A0", jsxRuntime.jsx("span", { children: formatOperator(filter.operator) }), "\u00A0", jsxRuntime.jsx("b", { children: formatValues(filter.value) })] })) : null] }));
48
48
  return (jsxRuntime.jsx(popover.Popover, { className: "dc-filter-popover", anchor: anchor, anchorGap: 2, transitionDurationMs: 0, isOpen: isEditing, onClose: cancelEdit, children: jsxRuntime.jsxs("form", { className: "dc-filter-form", onSubmit: onSubmit, children: [jsxRuntime.jsx(filterOperatorSelect.FilterOperatorSelect, { className: "dc-filter-form__operator", accessibleName: operatorSelectAccessibleName, label: label, values: operators, value: filterOperator, onChange: setFilterOperator, formatValue: formatOperator }), jsxRuntime.jsx(filterValueList.FilterValueList, { className: "dc-filter-form__value-list", values: values, checkedValues: filterValue, onChangeCheckedValues: setFilterValue, formatValue: formatValue }), jsxRuntime.jsxs("div", { className: "dc-filter-form__buttons", children: [jsxRuntime.jsx(button.Button, { variant: "plain", type: "button", onClick: cancelEdit, children: translations.cancelButton }), jsxRuntime.jsx(button.Button, { appearance: "primary", type: "submit", disabled: filterValue.length < 1, children: translations.applyButton })] })] }) }));
49
49
  }
50
50
  StringSetFilterItem.defaultValueFormatter = defaultValueFormatter;
51
+ StringSetFilterItem.defaultValuesFormatter = defaultValuesFormatter;
51
52
  StringSetFilterItem.defaultOperatorFormatter = defaultOperatorFormatter;
52
- StringSetFilterItem.formatFilterValue = formatFilterValue;
53
53
  function defaultValueFormatter(value) {
54
54
  return value[0].toUpperCase() + value.slice(1);
55
55
  }
56
- function defaultOperatorFormatter(operator) {
57
- const messages = {
58
- [stringSetFilter.StringSetFilter.Operators.in]: 'is',
59
- [stringSetFilter.StringSetFilter.Operators.notIn]: 'is not',
60
- };
61
- return messages[operator];
62
- }
63
- function formatFilterValue(values) {
56
+ function defaultValuesFormatter(values) {
64
57
  const list = values.map(defaultValueFormatter);
65
58
  if (list.length <= 1) {
66
59
  return list.toString();
@@ -73,5 +66,12 @@ function formatFilterValue(values) {
73
66
  }
74
67
  return list.slice(0, 2).join(', ') + `, and ${list.length - 2} more`;
75
68
  }
69
+ function defaultOperatorFormatter(operator) {
70
+ const messages = {
71
+ [stringSetFilter.StringSetFilter.Operators.in]: 'is',
72
+ [stringSetFilter.StringSetFilter.Operators.notIn]: 'is not',
73
+ };
74
+ return messages[operator];
75
+ }
76
76
 
77
77
  exports.StringSetFilterItem = StringSetFilterItem;
@@ -13,7 +13,7 @@ function StringSetFilterItem({ filter, isEditing, onEditStart, onEditCancel, onR
13
13
  const translations = useTranslations();
14
14
  const [filterOperator, setFilterOperator] = useState(filter.operator);
15
15
  const [filterValue, setFilterValue] = useState(filter.value);
16
- const { label, values, operators, operatorSelectAccessibleName, valueFormatter: formatValue = defaultValueFormatter, operatorFormatter: formatOperator = defaultOperatorFormatter, } = filter.config;
16
+ const { label, values, operators, operatorSelectAccessibleName, valueFormatter: formatValue = defaultValueFormatter, valuesFormatter: formatValues = defaultValuesFormatter, operatorFormatter: formatOperator = defaultOperatorFormatter, } = filter.config;
17
17
  const cancelEdit = () => {
18
18
  onEditCancel(filter);
19
19
  };
@@ -42,23 +42,16 @@ function StringSetFilterItem({ filter, isEditing, onEditStart, onEditCancel, onR
42
42
  }
43
43
  onChange(changedFilter);
44
44
  };
45
- const anchor = (jsxs(FilterToken, { isHighlighted: isEditing, onClickLabel: startEdit, onClickCloseButton: onClickCloseButton, children: [label, filter.value.length > 0 ? (jsxs(Fragment, { children: ["\u00A0", jsx("span", { children: formatOperator(filter.operator) }), "\u00A0", jsx("b", { children: formatFilterValue(filter.value) })] })) : null] }));
45
+ const anchor = (jsxs(FilterToken, { isHighlighted: isEditing, onClickLabel: startEdit, onClickCloseButton: onClickCloseButton, children: [label, filter.value.length > 0 ? (jsxs(Fragment, { children: ["\u00A0", jsx("span", { children: formatOperator(filter.operator) }), "\u00A0", jsx("b", { children: formatValues(filter.value) })] })) : null] }));
46
46
  return (jsx(Popover, { className: "dc-filter-popover", anchor: anchor, anchorGap: 2, transitionDurationMs: 0, isOpen: isEditing, onClose: cancelEdit, children: jsxs("form", { className: "dc-filter-form", onSubmit: onSubmit, children: [jsx(FilterOperatorSelect, { className: "dc-filter-form__operator", accessibleName: operatorSelectAccessibleName, label: label, values: operators, value: filterOperator, onChange: setFilterOperator, formatValue: formatOperator }), jsx(FilterValueList, { className: "dc-filter-form__value-list", values: values, checkedValues: filterValue, onChangeCheckedValues: setFilterValue, formatValue: formatValue }), jsxs("div", { className: "dc-filter-form__buttons", children: [jsx(Button, { variant: "plain", type: "button", onClick: cancelEdit, children: translations.cancelButton }), jsx(Button, { appearance: "primary", type: "submit", disabled: filterValue.length < 1, children: translations.applyButton })] })] }) }));
47
47
  }
48
48
  StringSetFilterItem.defaultValueFormatter = defaultValueFormatter;
49
+ StringSetFilterItem.defaultValuesFormatter = defaultValuesFormatter;
49
50
  StringSetFilterItem.defaultOperatorFormatter = defaultOperatorFormatter;
50
- StringSetFilterItem.formatFilterValue = formatFilterValue;
51
51
  function defaultValueFormatter(value) {
52
52
  return value[0].toUpperCase() + value.slice(1);
53
53
  }
54
- function defaultOperatorFormatter(operator) {
55
- const messages = {
56
- [StringSetFilter.Operators.in]: 'is',
57
- [StringSetFilter.Operators.notIn]: 'is not',
58
- };
59
- return messages[operator];
60
- }
61
- function formatFilterValue(values) {
54
+ function defaultValuesFormatter(values) {
62
55
  const list = values.map(defaultValueFormatter);
63
56
  if (list.length <= 1) {
64
57
  return list.toString();
@@ -71,5 +64,12 @@ function formatFilterValue(values) {
71
64
  }
72
65
  return list.slice(0, 2).join(', ') + `, and ${list.length - 2} more`;
73
66
  }
67
+ function defaultOperatorFormatter(operator) {
68
+ const messages = {
69
+ [StringSetFilter.Operators.in]: 'is',
70
+ [StringSetFilter.Operators.notIn]: 'is not',
71
+ };
72
+ return messages[operator];
73
+ }
74
74
 
75
75
  export { StringSetFilterItem };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "draft-components",
3
- "version": "1.9.0",
3
+ "version": "1.10.0",
4
4
  "description": "The React based UI components library.",
5
5
  "type": "module",
6
6
  "exports": {
@@ -1,4 +1,4 @@
1
1
  export { FilteredSearch, type FilteredSearchProps, type FilteredSearchBaseProps, type FilteredSearchHTMLProps, } from './filtered-search';
2
2
  export { type Filter, type FilterConfig, } from './types';
3
- export { StringFilter, type StringFilterState, type StringFilterConfig, } from './model/string-filter';
4
- export { StringSetFilter, type StringSetFilterState, type StringSetFilterConfig, } from './model/string-set-filter';
3
+ export { StringFilter, type StringFilterState, type StringFilterConfig, type StringFilterOperator, } from './model/string-filter';
4
+ export { StringSetFilter, type StringSetFilterState, type StringSetFilterConfig, type StringSetFilterOperator, } from './model/string-set-filter';
@@ -12,6 +12,7 @@ export type StringSetFilterConfig = {
12
12
  label: string;
13
13
  values: string[];
14
14
  valueFormatter?: (value: string) => string;
15
+ valuesFormatter?: (values: string[]) => string;
15
16
  operatorSelectAccessibleName?: string;
16
17
  operators: StringSetFilterOperator[];
17
18
  operatorFormatter?: (operator: StringSetFilterOperator) => string;
@@ -10,6 +10,6 @@ export type StringSetFilterItemProps = {
10
10
  export declare function StringSetFilterItem({ filter, isEditing, onEditStart, onEditCancel, onRemove, onChange, }: StringSetFilterItemProps): import("react/jsx-runtime").JSX.Element;
11
11
  export declare namespace StringSetFilterItem {
12
12
  var defaultValueFormatter: (value: string) => string;
13
+ var defaultValuesFormatter: (values: string[]) => string;
13
14
  var defaultOperatorFormatter: (operator: StringSetFilterOperator) => string;
14
- var formatFilterValue: (values: string[]) => string;
15
15
  }