@hyphen/hyphen-components 2.14.0 → 2.15.1
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/dist/components/SelectInput/SelectInput.d.ts +4 -0
- package/dist/components/SelectInput/SelectInput.stories.d.ts +2 -0
- package/dist/hyphen-components.cjs.development.js +14 -5
- package/dist/hyphen-components.cjs.development.js.map +1 -1
- package/dist/hyphen-components.cjs.production.min.js +1 -1
- package/dist/hyphen-components.cjs.production.min.js.map +1 -1
- package/dist/hyphen-components.esm.js +14 -5
- package/dist/hyphen-components.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/Formik/Formik.stories.tsx +3 -0
- package/src/components/Formik/FormikSelectInput/FormikSelectInput.tsx +18 -13
- package/src/components/SelectInput/SelectInput.mdx +12 -0
- package/src/components/SelectInput/SelectInput.stories.tsx +44 -0
- package/src/components/SelectInput/SelectInput.test.tsx +57 -18
- package/src/components/SelectInput/SelectInput.tsx +10 -3
|
@@ -58,6 +58,10 @@ export interface SelectInputProps {
|
|
|
58
58
|
* If the input value is clearable programmatically.
|
|
59
59
|
*/
|
|
60
60
|
isClearable?: boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Include custom option in dropdown list.
|
|
63
|
+
*/
|
|
64
|
+
isCreatable?: boolean;
|
|
61
65
|
/**
|
|
62
66
|
* If the input should be disabled and not focusable.
|
|
63
67
|
*/
|
|
@@ -8,8 +8,10 @@ export declare const PreSelected: () => React.JSX.Element;
|
|
|
8
8
|
export declare const HelpText: () => React.JSX.Element;
|
|
9
9
|
export declare const Placeholder: () => React.JSX.Element;
|
|
10
10
|
export declare const HiddenLabel: () => React.JSX.Element;
|
|
11
|
+
export declare const CreatableSelect: () => React.JSX.Element;
|
|
11
12
|
export declare const MultiSelect: () => React.JSX.Element;
|
|
12
13
|
export declare const MultiSelectAndPreSelected: () => React.JSX.Element;
|
|
14
|
+
export declare const MultiSelectCreatable: () => React.JSX.Element;
|
|
13
15
|
export declare const Autofocus: () => React.JSX.Element;
|
|
14
16
|
export declare const Required: () => React.JSX.Element;
|
|
15
17
|
export declare const Disabled: () => React.JSX.Element;
|
|
@@ -18,6 +18,7 @@ var FocusLock = require('react-focus-lock');
|
|
|
18
18
|
var reactRemoveScroll = require('react-remove-scroll');
|
|
19
19
|
var formik = require('formik');
|
|
20
20
|
var Select = require('react-select');
|
|
21
|
+
var CreatableSelect = require('react-select/creatable');
|
|
21
22
|
var uuid = require('uuid');
|
|
22
23
|
|
|
23
24
|
function _extends() {
|
|
@@ -2222,7 +2223,7 @@ var FormikRadioGroup = function FormikRadioGroup(_ref) {
|
|
|
2222
2223
|
|
|
2223
2224
|
var styles$e = {"react-select-icon":"SelectInput-module_react-select-icon__PvocB","size-sm":"SelectInput-module_size-sm__PKB-J","size-md":"SelectInput-module_size-md__n9Fj8","size-lg":"SelectInput-module_size-lg__LQ-uG","error":"SelectInput-module_error__Avf98","size-sm-tablet":"SelectInput-module_size-sm-tablet__2Dg01","size-md-tablet":"SelectInput-module_size-md-tablet__-iOSg","size-lg-tablet":"SelectInput-module_size-lg-tablet__9xmuJ","size-sm-desktop":"SelectInput-module_size-sm-desktop__tOWI4","size-md-desktop":"SelectInput-module_size-md-desktop__vo-UC","size-lg-desktop":"SelectInput-module_size-lg-desktop__nxQdj","size-sm-hd":"SelectInput-module_size-sm-hd__qamTH","size-md-hd":"SelectInput-module_size-md-hd__Cf8hk","size-lg-hd":"SelectInput-module_size-lg-hd__E4-mZ","disabled":"SelectInput-module_disabled__4ezAy","select-input-label":"SelectInput-module_select-input-label__eqEYa"};
|
|
2224
2225
|
|
|
2225
|
-
var _excluded$k = ["id", "label", "onChange", "options", "value", "autoFocus", "className", "error", "helpText", "hideLabel", "isClearable", "isDisabled", "isMulti", "isRequired", "menuPortalTarget", "name", "onFocus", "onBlur", "placeholder", "requiredIndicator", "size"];
|
|
2226
|
+
var _excluded$k = ["id", "label", "onChange", "options", "value", "autoFocus", "className", "error", "helpText", "hideLabel", "isClearable", "isCreatable", "isDisabled", "isMulti", "isRequired", "menuPortalTarget", "name", "onFocus", "onBlur", "placeholder", "requiredIndicator", "size"];
|
|
2226
2227
|
var SelectInput = function SelectInput(_ref) {
|
|
2227
2228
|
var _ref2, _classNames;
|
|
2228
2229
|
var id = _ref.id,
|
|
@@ -2241,6 +2242,8 @@ var SelectInput = function SelectInput(_ref) {
|
|
|
2241
2242
|
hideLabel = _ref$hideLabel === void 0 ? false : _ref$hideLabel,
|
|
2242
2243
|
_ref$isClearable = _ref.isClearable,
|
|
2243
2244
|
isClearable = _ref$isClearable === void 0 ? false : _ref$isClearable,
|
|
2245
|
+
_ref$isCreatable = _ref.isCreatable,
|
|
2246
|
+
isCreatable = _ref$isCreatable === void 0 ? false : _ref$isCreatable,
|
|
2244
2247
|
_ref$isDisabled = _ref.isDisabled,
|
|
2245
2248
|
isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
|
|
2246
2249
|
_ref$isMulti = _ref.isMulti,
|
|
@@ -2295,10 +2298,11 @@ var SelectInput = function SelectInput(_ref) {
|
|
|
2295
2298
|
name: "remove"
|
|
2296
2299
|
}));
|
|
2297
2300
|
};
|
|
2301
|
+
var Component = isCreatable ? CreatableSelect : Select;
|
|
2298
2302
|
return React.createElement(Box, {
|
|
2299
2303
|
width: "100%",
|
|
2300
2304
|
className: wrapperClasses
|
|
2301
|
-
}, label && !hideLabel && React.createElement(FormLabel, _extends({}, labelProps), label), React.createElement(
|
|
2305
|
+
}, label && !hideLabel && React.createElement(FormLabel, _extends({}, labelProps), label), React.createElement(Component, _extends({}, restProps, {
|
|
2302
2306
|
inputId: id,
|
|
2303
2307
|
"aria-label": label,
|
|
2304
2308
|
components: {
|
|
@@ -2331,6 +2335,7 @@ var SelectInput = function SelectInput(_ref) {
|
|
|
2331
2335
|
|
|
2332
2336
|
var _excluded$j = ["field", "form", "onChange", "id", "label", "options"];
|
|
2333
2337
|
var FormikSelectInput = function FormikSelectInput(_ref) {
|
|
2338
|
+
var _errorMessage$label;
|
|
2334
2339
|
var _ref$field = _ref.field,
|
|
2335
2340
|
name = _ref$field.name,
|
|
2336
2341
|
onBlur = _ref$field.onBlur,
|
|
@@ -2344,7 +2349,11 @@ var FormikSelectInput = function FormikSelectInput(_ref) {
|
|
|
2344
2349
|
label = _ref.label,
|
|
2345
2350
|
options = _ref.options,
|
|
2346
2351
|
props = _objectWithoutPropertiesLoose(_ref, _excluded$j);
|
|
2347
|
-
|
|
2352
|
+
var error = formik.getIn(errors, name);
|
|
2353
|
+
var errorMessage = typeof error !== 'string' && (error == null ? void 0 : error.find(function (error) {
|
|
2354
|
+
return error.label;
|
|
2355
|
+
}));
|
|
2356
|
+
return React.createElement(SelectInput, _extends({
|
|
2348
2357
|
id: id,
|
|
2349
2358
|
label: label,
|
|
2350
2359
|
options: options,
|
|
@@ -2352,8 +2361,8 @@ var FormikSelectInput = function FormikSelectInput(_ref) {
|
|
|
2352
2361
|
onBlur: onBlur,
|
|
2353
2362
|
onChange: onChange != null ? onChange : formikOnChange,
|
|
2354
2363
|
value: value,
|
|
2355
|
-
error:
|
|
2356
|
-
}));
|
|
2364
|
+
error: (_errorMessage$label = errorMessage == null ? void 0 : errorMessage.label) != null ? _errorMessage$label : formik.getIn(touched, name) && error
|
|
2365
|
+
}, props));
|
|
2357
2366
|
};
|
|
2358
2367
|
|
|
2359
2368
|
var styles$d = {"text-input-wrapper":"SelectInputInset-module_text-input-wrapper__hZ4Fy","size-md":"SelectInputInset-module_size-md__6MFcV","select-input-label":"SelectInputInset-module_select-input-label__6XdR6","clear-button":"SelectInputInset-module_clear-button__xbZaY","size-lg":"SelectInputInset-module_size-lg__i2Bzf","disabled":"SelectInputInset-module_disabled__DYSr2","size-md-tablet":"SelectInputInset-module_size-md-tablet__xwoPz","size-lg-tablet":"SelectInputInset-module_size-lg-tablet__2DgFa","size-md-desktop":"SelectInputInset-module_size-md-desktop__MfemS","size-lg-desktop":"SelectInputInset-module_size-lg-desktop__etLGJ","size-md-hd":"SelectInputInset-module_size-md-hd__NWb1q","size-lg-hd":"SelectInputInset-module_size-lg-hd__ycjXC","error":"SelectInputInset-module_error__j-jgS"};
|