@commercetools-uikit/selectable-search-input 19.4.0 → 19.6.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/README.md +13 -0
- package/dist/commercetools-uikit-selectable-search-input.cjs.dev.js +27 -13
- package/dist/commercetools-uikit-selectable-search-input.cjs.prod.js +23 -11
- package/dist/commercetools-uikit-selectable-search-input.esm.js +26 -13
- package/dist/declarations/src/selectable-search-input.d.ts +6 -2
- package/package.json +10 -9
|
@@ -22,6 +22,7 @@ var _findInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/insta
|
|
|
22
22
|
var _trimInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/trim');
|
|
23
23
|
var react$1 = require('react');
|
|
24
24
|
var SecondaryIconButton = require('@commercetools-uikit/secondary-icon-button');
|
|
25
|
+
var IconButton = require('@commercetools-uikit/icon-button');
|
|
25
26
|
var Constraints = require('@commercetools-uikit/constraints');
|
|
26
27
|
var icons = require('@commercetools-uikit/icons');
|
|
27
28
|
var utils = require('@commercetools-uikit/utils');
|
|
@@ -53,6 +54,7 @@ var _flatMapInstanceProperty__default = /*#__PURE__*/_interopDefault(_flatMapIns
|
|
|
53
54
|
var _findInstanceProperty__default = /*#__PURE__*/_interopDefault(_findInstanceProperty);
|
|
54
55
|
var _trimInstanceProperty__default = /*#__PURE__*/_interopDefault(_trimInstanceProperty);
|
|
55
56
|
var SecondaryIconButton__default = /*#__PURE__*/_interopDefault(SecondaryIconButton);
|
|
57
|
+
var IconButton__default = /*#__PURE__*/_interopDefault(IconButton);
|
|
56
58
|
var Constraints__default = /*#__PURE__*/_interopDefault(Constraints);
|
|
57
59
|
var Select__default = /*#__PURE__*/_interopDefault(Select);
|
|
58
60
|
|
|
@@ -98,8 +100,8 @@ const getInputBoxShadow = props => {
|
|
|
98
100
|
}
|
|
99
101
|
return designSystem.designTokens.shadowForInput;
|
|
100
102
|
};
|
|
101
|
-
const getSelectableSearchInputStyles = props => [inputUtils.getInputStyles(props), /*#__PURE__*/react.css("border:none;box-shadow:none;background:none;&,&:focus,&:focus:not(:read-only){box-shadow:none;}&:focus,&:hover{background-color:transparent!important;}width:100%;color:", getInputFontColor(props), ";" + ("" ), "" )];
|
|
102
|
-
const getButtonStyles = () => /*#__PURE__*/react.css("border:none;background:none;height:100%;border-top-right-radius:", designSystem.designTokens.borderRadiusForInput, ";border-bottom-right-radius:", designSystem.designTokens.borderRadiusForInput, ";border-left:none;align-items:center;transition:border-color ", designSystem.designTokens.transitionStandard, ",background-color ", designSystem.designTokens.transitionStandard, ";transition:border-color ", designSystem.designTokens.transitionStandard, ",box-shadow ", designSystem.designTokens.transitionStandard, ";
|
|
103
|
+
const getSelectableSearchInputStyles = props => [inputUtils.getInputStyles(props), /*#__PURE__*/react.css("border:none;box-shadow:none;background:none;&,&:focus,&:focus:not(:read-only){box-shadow:none;}&:focus,&:hover{background-color:transparent!important;}width:100%;color:", getInputFontColor(props), ";order:2;margin-left:", designSystem.designTokens.spacing10, ";padding-left:0;padding-right:0;" + ("" ), "" )];
|
|
104
|
+
const getButtonStyles = () => /*#__PURE__*/react.css("border:none;background:none;height:100%;border-top-right-radius:", designSystem.designTokens.borderRadiusForInput, ";border-bottom-right-radius:", designSystem.designTokens.borderRadiusForInput, ";border-left:none;align-items:center;transition:border-color ", designSystem.designTokens.transitionStandard, ",background-color ", designSystem.designTokens.transitionStandard, ";transition:border-color ", designSystem.designTokens.transitionStandard, ",box-shadow ", designSystem.designTokens.transitionStandard, ";" + ("" ), "" );
|
|
103
105
|
const getIconColor = (props, defaultColor) => {
|
|
104
106
|
if (props.isDisabled) {
|
|
105
107
|
return designSystem.designTokens.fontColorForInputWhenDisabled;
|
|
@@ -109,8 +111,8 @@ const getIconColor = (props, defaultColor) => {
|
|
|
109
111
|
}
|
|
110
112
|
return defaultColor;
|
|
111
113
|
};
|
|
112
|
-
const getClearIconButtonStyles = props => [getButtonStyles(), /*#__PURE__*/react.css("fill:", getIconColor(props, designSystem.designTokens.colorNeutral40), ";&:hover{fill:", getIconColor(props, designSystem.designTokens.colorError), ";}" + ("" ), "" )];
|
|
113
|
-
const getSearchIconButtonStyles = props => [getButtonStyles(), /*#__PURE__*/react.css("
|
|
114
|
+
const getClearIconButtonStyles = props => [getButtonStyles(), /*#__PURE__*/react.css("fill:", getIconColor(props, designSystem.designTokens.colorNeutral40), ";&:hover{fill:", getIconColor(props, designSystem.designTokens.colorError), ";}order:3;margin-left:", designSystem.designTokens.spacing10, ";" + ("" ), "" )];
|
|
115
|
+
const getSearchIconButtonStyles = props => [getButtonStyles(), /*#__PURE__*/react.css("fill:", getIconColor(props, designSystem.designTokens.colorNeutral60), ";cursor:", props.isReadOnly ? 'default' : 'pointer', ";&:hover{fill:", getIconColor(props, designSystem.designTokens.colorPrimary), ";}border-radius:0;order:1;" + ("" ), "" )];
|
|
114
116
|
const getBackgroundColor = (props, defaultColor) => {
|
|
115
117
|
if (props.isDisabled) {
|
|
116
118
|
return designSystem.designTokens.backgroundColorForInputWhenDisabled;
|
|
@@ -120,7 +122,7 @@ const getBackgroundColor = (props, defaultColor) => {
|
|
|
120
122
|
}
|
|
121
123
|
return defaultColor;
|
|
122
124
|
};
|
|
123
|
-
const getSelectableSearchInputContainerStyles = props => [/*#__PURE__*/react.css("display:flex;align-items:center;background-color:", getBackgroundColor(props, designSystem.designTokens.backgroundColorForInput), ";border:1px solid ", getInputContainerBorderColor(props), ";border-radius:", designSystem.designTokens.borderRadiusForInput, ";box-shadow:", getInputBoxShadow(props), ";height:", props.isCondensed ? "".concat(designSystem.designTokens.heightForInputAsSmall) : "".concat(designSystem.designTokens.heightForInput), ";box-sizing:border-box;border-top-left-radius:0;border-bottom-left-radius:0;
|
|
125
|
+
const getSelectableSearchInputContainerStyles = props => [/*#__PURE__*/react.css("display:flex;align-items:center;background-color:", getBackgroundColor(props, designSystem.designTokens.backgroundColorForInput), ";border:1px solid ", getInputContainerBorderColor(props), ";border-radius:", designSystem.designTokens.borderRadiusForInput, ";box-shadow:", getInputBoxShadow(props), ";height:", props.isCondensed ? "".concat(designSystem.designTokens.heightForInputAsSmall) : "".concat(designSystem.designTokens.heightForInput), ";box-sizing:border-box;border-top-left-radius:0;border-bottom-left-radius:0;width:", props.horizontalConstraint === 'auto' ? 'auto' : '100%', ";transition:border-color ", designSystem.designTokens.transitionStandard, ",background-color ", designSystem.designTokens.transitionStandard, ";padding-left:", designSystem.designTokens.spacing30, ";padding-right:", designSystem.designTokens.spacing30, ";&::placeholder{color:", designSystem.designTokens.colorNeutral60, ";}&:hover{border-color:", getInputContainerBorderColor(props, designSystem.designTokens.borderColorForInputWhenHovered), ";background-color:", getBackgroundColor(props, designSystem.designTokens.backgroundColorForInputWhenHovered), ";}&:focus{border-color:", designSystem.designTokens.borderColorForInputWhenFocused, ";}" + ("" ), "" ), !props.isDisabled && !props.isReadOnly && /*#__PURE__*/react.css("&:focus-within{border-color:", designSystem.designTokens.borderColorForInputWhenFocused, ";box-shadow:inset 0 0 0 1px ", designSystem.designTokens.borderColorForInputWhenFocused, ";}" + ("" ), "" )];
|
|
124
126
|
const createSelectableSelectStyles = _ref => {
|
|
125
127
|
let hasWarning = _ref.hasWarning,
|
|
126
128
|
hasError = _ref.hasError,
|
|
@@ -225,13 +227,13 @@ const SelectableSelect = props => {
|
|
|
225
227
|
isSearchable: props.isReadOnly ? false : props.isMenuSearchable,
|
|
226
228
|
maxMenuHeight: props.maxMenuHeight,
|
|
227
229
|
closeMenuOnSelect: props.closeMenuOnSelect,
|
|
228
|
-
components: {
|
|
230
|
+
components: _objectSpread$1({
|
|
229
231
|
SingleValue: innerProps => jsxRuntime.jsx(SingleValue, _objectSpread$1({
|
|
230
232
|
id: props.id,
|
|
231
233
|
dataProps: props.dataProps
|
|
232
234
|
}, innerProps)),
|
|
233
235
|
DropdownIndicator: selectUtils.DropdownIndicator
|
|
234
|
-
},
|
|
236
|
+
}, props.selectCustomComponents),
|
|
235
237
|
options: props.options,
|
|
236
238
|
menuIsOpen: props.isReadOnly ? false : undefined,
|
|
237
239
|
placeholder: "",
|
|
@@ -310,6 +312,7 @@ const SelectableSearchInput = props => {
|
|
|
310
312
|
return option;
|
|
311
313
|
});
|
|
312
314
|
const selectedOption = _findInstanceProperty__default["default"](optionsWithoutGroups).call(optionsWithoutGroups, option => option.value === searchInputOption);
|
|
315
|
+
if (props.rightActionIcon && !props.rightActionProps) ;
|
|
313
316
|
const selectablSearchInputId = hooks.useFieldId(props.id, selectableSearchInputSequentialId);
|
|
314
317
|
if (!props.isReadOnly) ;
|
|
315
318
|
selectUtils.warnIfMenuPortalPropsAreMissing({
|
|
@@ -443,7 +446,8 @@ const SelectableSearchInput = props => {
|
|
|
443
446
|
handleDropdownChange: handleDropdownChange,
|
|
444
447
|
textInputRef: textInputRef,
|
|
445
448
|
selectedOption: selectedOption,
|
|
446
|
-
dataProps: transformedSelectDataProps
|
|
449
|
+
dataProps: transformedSelectDataProps,
|
|
450
|
+
selectCustomComponents: props.selectCustomComponents
|
|
447
451
|
}))
|
|
448
452
|
}), jsxRuntime.jsxs("div", {
|
|
449
453
|
css: [getSelectableSearchInputContainerStyles(props), dropdownHasFocus && !props.isReadOnly && /*#__PURE__*/react.css("border-left-color:", designSystem.designTokens.borderColorForInputWhenFocused, ";&:hover{border-left-color:", designSystem.designTokens.borderColorForInputWhenFocused, ";}" + ("" ), "" ), "" , "" ],
|
|
@@ -476,17 +480,25 @@ const SelectableSearchInput = props => {
|
|
|
476
480
|
}
|
|
477
481
|
})), props.isClearable && searchInputValue && !props.isDisabled && !props.isReadOnly && jsxRuntime.jsx(SecondaryIconButton__default["default"], {
|
|
478
482
|
icon: jsxRuntime.jsx(icons.CloseIcon, {}),
|
|
479
|
-
size: props.isCondensed ? '
|
|
483
|
+
size: props.isCondensed ? '10' : '20',
|
|
480
484
|
label: 'clear-button',
|
|
481
485
|
onClick: handleClear,
|
|
482
486
|
css: getClearIconButtonStyles(props)
|
|
483
487
|
}), props.showSubmitButton && jsxRuntime.jsx(SecondaryIconButton__default["default"], {
|
|
484
488
|
icon: jsxRuntime.jsx(icons.SearchIcon, {}),
|
|
485
|
-
size: props.isCondensed ? '
|
|
489
|
+
size: props.isCondensed ? '20' : '40',
|
|
486
490
|
label: 'search-button',
|
|
487
491
|
onClick: handleSubmit,
|
|
488
492
|
css: getSearchIconButtonStyles(props),
|
|
489
493
|
isDisabled: props.isDisabled
|
|
494
|
+
}), props.rightActionIcon && props.rightActionProps && jsxRuntime.jsx("div", {
|
|
495
|
+
css: /*#__PURE__*/react.css("order:4;margin-left:", designSystem.designTokens.spacing30, ";" + ("" ), "" ),
|
|
496
|
+
children: jsxRuntime.jsx(IconButton__default["default"], _objectSpread({
|
|
497
|
+
theme: "primary",
|
|
498
|
+
isDisabled: props.isDisabled || props.isReadOnly,
|
|
499
|
+
size: props.isCondensed ? '10' : '20',
|
|
500
|
+
icon: props.rightActionIcon
|
|
501
|
+
}, props.rightActionProps))
|
|
490
502
|
})]
|
|
491
503
|
})]
|
|
492
504
|
})
|
|
@@ -504,7 +516,7 @@ SelectableSearchInput.getDropdownId = getDropdownName;
|
|
|
504
516
|
var SelectableSearchInput$1 = SelectableSearchInput;
|
|
505
517
|
|
|
506
518
|
// NOTE: This string will be replaced on build time with the package version.
|
|
507
|
-
var version = "19.
|
|
519
|
+
var version = "19.6.0";
|
|
508
520
|
|
|
509
521
|
exports["default"] = SelectableSearchInput$1;
|
|
510
522
|
exports.version = version;
|