@artsy/palette 37.0.0-canary.1250.29168.0 → 37.0.0-canary.1250.29227.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/dist/elements/Input/Input.js +3 -2
- package/dist/elements/Input/Input.js.map +1 -1
- package/dist/elements/MultiSelect/MultiSelect.d.ts +2 -0
- package/dist/elements/MultiSelect/MultiSelect.js +35 -28
- package/dist/elements/MultiSelect/MultiSelect.js.map +1 -1
- package/dist/elements/MultiSelect/tokens.d.ts +2 -0
- package/dist/elements/MultiSelect/tokens.js +18 -0
- package/dist/elements/MultiSelect/tokens.js.map +1 -0
- package/dist/elements/PhoneInput/PhoneInput.js +1 -1
- package/dist/elements/PhoneInput/PhoneInput.js.map +1 -1
- package/dist/elements/Select/Select.js +2 -1
- package/dist/elements/Select/Select.js.map +1 -1
- package/dist/elements/TextArea/TextArea.js +3 -2
- package/dist/elements/TextArea/TextArea.js.map +1 -1
- package/dist/helpers/index.d.ts +1 -0
- package/dist/helpers/index.js +11 -0
- package/dist/helpers/index.js.map +1 -1
- package/dist/helpers/transition.d.ts +3 -0
- package/dist/helpers/transition.js +11 -0
- package/dist/helpers/transition.js.map +1 -0
- package/package.json +2 -2
|
@@ -14,6 +14,7 @@ var _Box = require("../Box");
|
|
|
14
14
|
var _Text = require("../Text");
|
|
15
15
|
var _Tooltip = require("../Tooltip");
|
|
16
16
|
var _tokens = require("./tokens");
|
|
17
|
+
var _helpers = require("../../helpers");
|
|
17
18
|
var _excluded = ["children", "className", "description", "disabled", "error", "required", "focus", "hover", "title", "height", "prefixOffset", "suffixOffset", "showCounter"];
|
|
18
19
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
20
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -112,13 +113,13 @@ Input.displayName = "Input";
|
|
|
112
113
|
var StyledInput = _styledComponents.default.input.withConfig({
|
|
113
114
|
displayName: "Input__StyledInput",
|
|
114
115
|
componentId: "bysdh7-0"
|
|
115
|
-
})(["width:100%;padding:0 ", ";appearance:none;line-height:1;border:1px solid;border-radius:3px;transition:border-color 0.25s,color 0.25s;font-family:", ";", ";::placeholder{transition:color 0.25s,opacity 0.25s;}
|
|
116
|
+
})(["width:100%;padding:0 ", ";appearance:none;line-height:1;border:1px solid;border-radius:3px;transition:border-color 0.25s,color 0.25s;font-family:", ";", ";::placeholder{transition:color 0.25s,opacity 0.25s;}", ";"], (0, _themeGet.themeGet)("space.1"), (0, _themeGet.themeGet)("fonts.sans"), _styledSystem.height, function (props) {
|
|
116
117
|
return (0, _styledComponents.css)(["", " ", " ", " ", " ", " ", " ", " ", " &:hover{", "}&:not(:placeholder-shown){", " ", "}&:focus{outline:none;", ":not(:placeholder-shown){", " ", "}}&:disabled{cursor:default;", "}", ""], _tokens.INPUT_STATES.default, props.hover && _tokens.INPUT_STATES.hover, props.focus && _tokens.INPUT_STATES.focus, props.active && _tokens.INPUT_STATES.active, props.disabled && _tokens.INPUT_STATES.disabled, props.error && _tokens.INPUT_STATES.error, !!props.prefixOffset && (0, _styledComponents.css)(["padding-left:", "px;"], props.prefixOffset), !!props.suffixOffset && (0, _styledComponents.css)(["padding-right:", "px;"], props.suffixOffset), _tokens.INPUT_STATES.hover, _tokens.INPUT_STATES.completed, props.error && _tokens.INPUT_STATES.error, _tokens.INPUT_STATES.focus, _tokens.INPUT_STATES.active, props.error && _tokens.INPUT_STATES.error, _tokens.INPUT_STATES.disabled, props.title && (0, _styledComponents.css)(["::placeholder{opacity:0;}"]));
|
|
117
118
|
});
|
|
118
119
|
var StyledLabel = _styledComponents.default.label.withConfig({
|
|
119
120
|
displayName: "Input__StyledLabel",
|
|
120
121
|
componentId: "bysdh7-1"
|
|
121
|
-
})(["position:absolute;top:50%;left:5px;padding:0 5px;background-color:transparent;transform:translateY(-50%);transition:
|
|
122
|
+
})(["position:absolute;top:50%;left:5px;padding:0 5px;background-color:transparent;transform:translateY(-50%);transition:", ";transition-property:color,transform,padding,font-size;font-family:", ";pointer-events:none;& > span{background-color:", ";height:100%;width:100%;display:block;position:absolute;top:0;left:0;z-index:-1;transition:", ";transition-property:height,top;transition-delay:0.1s;}", ""], _helpers.FORM_ELEMENT_TRANSITION, (0, _themeGet.themeGet)("fonts.sans"), (0, _themeGet.themeGet)("colors.white100"), _helpers.FORM_ELEMENT_TRANSITION, function (_ref2) {
|
|
122
123
|
var prefixOffset = _ref2.prefixOffset;
|
|
123
124
|
return !!prefixOffset && (0, _styledComponents.css)(["padding-left:", "px;"], prefixOffset - 5);
|
|
124
125
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.js","names":["_themeGet","require","_react","_interopRequireDefault","_styledComponents","_interopRequireWildcard","_styledSystem","_RequiredField","_Box","_Text","_Tooltip","_tokens","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Input","React","forwardRef","_ref","ref","children","className","description","disabled","error","required","focus","hover","title","height","prefixOffset","suffixOffset","showCounter","rest","_splitBoxProps","splitBoxProps","_splitBoxProps2","boxProps","inputProps","_React$useState","useState","_React$useState2","charCount","setCharCount","inputName","countChars","e","createElement","Box","width","Tooltip","pointer","content","placement","Text","variant","color","textAlign","position","StyledInput","onChange","_inputProps$onChange","maxLength","placeholder","StyledLabel","htmlFor","display","mt","mx","RequiredField","flex","ml","exports","displayName","styled","input","withConfig","componentId","themeGet","systemHeight","props","css","INPUT_STATES","active","completed","label","_ref2"],"sources":["../../../src/elements/Input/Input.tsx"],"sourcesContent":["import { themeGet } from \"@styled-system/theme-get\"\nimport React from \"react\"\nimport styled, { css } from \"styled-components\"\nimport { height as systemHeight } from \"styled-system\"\nimport { RequiredField } from \"../../shared/RequiredField\"\nimport { Box, BoxProps, splitBoxProps } from \"../Box\"\nimport { Text } from \"../Text\"\nimport { Tooltip } from \"../Tooltip\"\nimport { INPUT_STATES } from \"./tokens\"\n\nexport interface InputProps\n extends BoxProps,\n Omit<\n React.InputHTMLAttributes<HTMLInputElement>,\n \"size\" | \"width\" | \"height\" | \"capture\"\n > {\n active?: boolean\n description?: string\n disabled?: boolean\n error?: string | boolean\n focus?: boolean\n hover?: boolean\n required?: boolean\n title?: string\n prefixOffset?: number\n suffixOffset?: number\n showCounter?: boolean\n}\n\n/** Input component */\nexport const Input: React.ForwardRefExoticComponent<\n InputProps & { ref?: React.Ref<HTMLInputElement> }\n> = React.forwardRef(\n (\n {\n children,\n className,\n description,\n disabled,\n error,\n required,\n focus,\n hover,\n title,\n height,\n prefixOffset,\n suffixOffset,\n showCounter,\n ...rest\n },\n ref\n ) => {\n const [boxProps, inputProps] = splitBoxProps(rest)\n const [charCount, setCharCount] = React.useState(0)\n\n const inputName = inputProps.name || \"palette-input\"\n\n const countChars = (e: React.ChangeEvent<HTMLInputElement>) => {\n setCharCount(e.target.value.length)\n }\n\n return (\n <Box width=\"100%\" className={className} {...boxProps}>\n {!!description && (\n <Tooltip pointer content={description} placement=\"top-end\">\n <Text variant=\"xs\" color=\"black60\" textAlign=\"right\">\n <u>What is this?</u>\n </Text>\n </Tooltip>\n )}\n\n <Box position=\"relative\">\n <StyledInput\n ref={ref as any}\n disabled={disabled}\n focus={focus}\n hover={hover}\n error={!!error}\n required={required}\n height={(height ?? 50) as any}\n name={inputName}\n title={title}\n suffixOffset={suffixOffset}\n prefixOffset={prefixOffset}\n onChange={(e) => {\n inputProps.onChange?.(e)\n if (inputProps.maxLength) countChars(e)\n }}\n placeholder={inputProps.placeholder || \" \"}\n {...inputProps}\n />\n\n {!!title && (\n <StyledLabel prefixOffset={prefixOffset} htmlFor={inputName}>\n {title}\n <span />\n </StyledLabel>\n )}\n\n {children}\n </Box>\n\n {(required || (inputProps?.maxLength && showCounter)) &&\n !(error && typeof error === \"string\") && (\n <Box display=\"flex\" mt={0.5} mx={1}>\n {required && <RequiredField flex={1} />}\n\n {!!inputProps?.maxLength && showCounter && (\n <Text flex={1} variant=\"xs\" color=\"black60\" textAlign=\"right\">\n {charCount}/{inputProps.maxLength}\n </Text>\n )}\n </Box>\n )}\n\n {error && typeof error === \"string\" && (\n <Text variant=\"xs\" mt={0.5} ml={1} color=\"red100\">\n {error}\n </Text>\n )}\n </Box>\n )\n }\n)\n\nInput.displayName = \"Input\"\n\ntype StyledInputProps = Pick<\n InputProps,\n | \"disabled\"\n | \"error\"\n | \"hover\"\n | \"focus\"\n | \"active\"\n | \"title\"\n | \"suffixOffset\"\n | \"prefixOffset\"\n>\n\nconst StyledInput = styled.input<StyledInputProps>`\n width: 100%;\n padding: 0 ${themeGet(\"space.1\")};\n appearance: none;\n line-height: 1;\n border: 1px solid;\n border-radius: 3px;\n transition: border-color 0.25s, color 0.25s;\n font-family: ${themeGet(\"fonts.sans\")};\n ${systemHeight};\n\n ::placeholder {\n transition: color 0.25s, opacity 0.25s;\n }\n\n &:-webkit-autofill,\n &:-webkit-autofill:hover,\n &:-webkit-autofill:focus {\n -webkit-box-shadow: 0 0 0px 100px ${themeGet(\"colors.white100\")} inset;\n }\n\n ${(props) => {\n return css`\n ${INPUT_STATES.default}\n ${props.hover && INPUT_STATES.hover}\n ${props.focus && INPUT_STATES.focus}\n ${props.active && INPUT_STATES.active}\n ${props.disabled && INPUT_STATES.disabled}\n ${props.error && INPUT_STATES.error}\n ${!!props.prefixOffset &&\n css`\n padding-left: ${props.prefixOffset}px;\n `}\n ${!!props.suffixOffset &&\n css`\n padding-right: ${props.suffixOffset}px;\n `}\n\n &:hover {\n ${INPUT_STATES.hover}\n }\n\n &:not(:placeholder-shown) {\n ${INPUT_STATES.completed}\n ${props.error && INPUT_STATES.error}\n }\n\n &:focus {\n outline: none;\n ${INPUT_STATES.focus}\n\n :not(:placeholder-shown) {\n ${INPUT_STATES.active}\n ${props.error && INPUT_STATES.error}\n }\n }\n\n &:disabled {\n cursor: default;\n ${INPUT_STATES.disabled}\n }\n\n ${props.title &&\n css`\n ::placeholder {\n opacity: 0;\n }\n `}\n `\n }};\n`\n\nconst StyledLabel = styled.label<StyledInputProps>`\n position: absolute;\n top: 50%;\n left: 5px;\n padding: 0 5px;\n background-color: transparent;\n transform: translateY(-50%);\n transition: 0.25s cubic-bezier(0.64, 0.05, 0.36, 1);\n transition-property: color, transform, padding, font-size;\n font-family: ${themeGet(\"fonts.sans\")};\n pointer-events: none;\n\n & > span {\n background-color: ${themeGet(\"colors.white100\")};\n height: 100%;\n width: 100%;\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n z-index: -1;\n transition: 0.25s cubic-bezier(0.64, 0.05, 0.36, 1);\n transition-property: height, top;\n transition-delay: 0.1s;\n }\n\n ${({ prefixOffset }) =>\n !!prefixOffset &&\n css`\n padding-left: ${prefixOffset - 5}px;\n `}\n`\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Input.js","names":["_themeGet","require","_react","_interopRequireDefault","_styledComponents","_interopRequireWildcard","_styledSystem","_RequiredField","_Box","_Text","_Tooltip","_tokens","_helpers","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Input","React","forwardRef","_ref","ref","children","className","description","disabled","error","required","focus","hover","title","height","prefixOffset","suffixOffset","showCounter","rest","_splitBoxProps","splitBoxProps","_splitBoxProps2","boxProps","inputProps","_React$useState","useState","_React$useState2","charCount","setCharCount","inputName","countChars","e","createElement","Box","width","Tooltip","pointer","content","placement","Text","variant","color","textAlign","position","StyledInput","onChange","_inputProps$onChange","maxLength","placeholder","StyledLabel","htmlFor","display","mt","mx","RequiredField","flex","ml","exports","displayName","styled","input","withConfig","componentId","themeGet","systemHeight","props","css","INPUT_STATES","active","completed","label","FORM_ELEMENT_TRANSITION","_ref2"],"sources":["../../../src/elements/Input/Input.tsx"],"sourcesContent":["import { themeGet } from \"@styled-system/theme-get\"\nimport React from \"react\"\nimport styled, { css } from \"styled-components\"\nimport { height as systemHeight } from \"styled-system\"\nimport { RequiredField } from \"../../shared/RequiredField\"\nimport { Box, BoxProps, splitBoxProps } from \"../Box\"\nimport { Text } from \"../Text\"\nimport { Tooltip } from \"../Tooltip\"\nimport { INPUT_STATES } from \"./tokens\"\nimport { FORM_ELEMENT_TRANSITION } from \"../../helpers\"\n\nexport interface InputProps\n extends BoxProps,\n Omit<\n React.InputHTMLAttributes<HTMLInputElement>,\n \"size\" | \"width\" | \"height\" | \"capture\"\n > {\n active?: boolean\n description?: string\n disabled?: boolean\n error?: string | boolean\n focus?: boolean\n hover?: boolean\n required?: boolean\n title?: string\n prefixOffset?: number\n suffixOffset?: number\n showCounter?: boolean\n}\n\n/** Input component */\nexport const Input: React.ForwardRefExoticComponent<\n InputProps & { ref?: React.Ref<HTMLInputElement> }\n> = React.forwardRef(\n (\n {\n children,\n className,\n description,\n disabled,\n error,\n required,\n focus,\n hover,\n title,\n height,\n prefixOffset,\n suffixOffset,\n showCounter,\n ...rest\n },\n ref\n ) => {\n const [boxProps, inputProps] = splitBoxProps(rest)\n const [charCount, setCharCount] = React.useState(0)\n\n const inputName = inputProps.name || \"palette-input\"\n\n const countChars = (e: React.ChangeEvent<HTMLInputElement>) => {\n setCharCount(e.target.value.length)\n }\n\n return (\n <Box width=\"100%\" className={className} {...boxProps}>\n {!!description && (\n <Tooltip pointer content={description} placement=\"top-end\">\n <Text variant=\"xs\" color=\"black60\" textAlign=\"right\">\n <u>What is this?</u>\n </Text>\n </Tooltip>\n )}\n\n <Box position=\"relative\">\n <StyledInput\n ref={ref as any}\n disabled={disabled}\n focus={focus}\n hover={hover}\n error={!!error}\n required={required}\n height={(height ?? 50) as any}\n name={inputName}\n title={title}\n suffixOffset={suffixOffset}\n prefixOffset={prefixOffset}\n onChange={(e) => {\n inputProps.onChange?.(e)\n if (inputProps.maxLength) countChars(e)\n }}\n placeholder={inputProps.placeholder || \" \"}\n {...inputProps}\n />\n\n {!!title && (\n <StyledLabel prefixOffset={prefixOffset} htmlFor={inputName}>\n {title}\n <span />\n </StyledLabel>\n )}\n\n {children}\n </Box>\n\n {(required || (inputProps?.maxLength && showCounter)) &&\n !(error && typeof error === \"string\") && (\n <Box display=\"flex\" mt={0.5} mx={1}>\n {required && <RequiredField flex={1} />}\n\n {!!inputProps?.maxLength && showCounter && (\n <Text flex={1} variant=\"xs\" color=\"black60\" textAlign=\"right\">\n {charCount}/{inputProps.maxLength}\n </Text>\n )}\n </Box>\n )}\n\n {error && typeof error === \"string\" && (\n <Text variant=\"xs\" mt={0.5} ml={1} color=\"red100\">\n {error}\n </Text>\n )}\n </Box>\n )\n }\n)\n\nInput.displayName = \"Input\"\n\ntype StyledInputProps = Pick<\n InputProps,\n | \"disabled\"\n | \"error\"\n | \"hover\"\n | \"focus\"\n | \"active\"\n | \"title\"\n | \"suffixOffset\"\n | \"prefixOffset\"\n>\n\nconst StyledInput = styled.input<StyledInputProps>`\n width: 100%;\n padding: 0 ${themeGet(\"space.1\")};\n appearance: none;\n line-height: 1;\n border: 1px solid;\n border-radius: 3px;\n transition: border-color 0.25s, color 0.25s;\n font-family: ${themeGet(\"fonts.sans\")};\n ${systemHeight};\n\n ::placeholder {\n transition: color 0.25s, opacity 0.25s;\n }\n\n ${(props) => {\n return css`\n ${INPUT_STATES.default}\n ${props.hover && INPUT_STATES.hover}\n ${props.focus && INPUT_STATES.focus}\n ${props.active && INPUT_STATES.active}\n ${props.disabled && INPUT_STATES.disabled}\n ${props.error && INPUT_STATES.error}\n ${!!props.prefixOffset &&\n css`\n padding-left: ${props.prefixOffset}px;\n `}\n ${!!props.suffixOffset &&\n css`\n padding-right: ${props.suffixOffset}px;\n `}\n\n &:hover {\n ${INPUT_STATES.hover}\n }\n\n &:not(:placeholder-shown) {\n ${INPUT_STATES.completed}\n ${props.error && INPUT_STATES.error}\n }\n\n &:focus {\n outline: none;\n ${INPUT_STATES.focus}\n\n :not(:placeholder-shown) {\n ${INPUT_STATES.active}\n ${props.error && INPUT_STATES.error}\n }\n }\n\n &:disabled {\n cursor: default;\n ${INPUT_STATES.disabled}\n }\n\n ${props.title &&\n css`\n ::placeholder {\n opacity: 0;\n }\n `}\n `\n }};\n`\n\nconst StyledLabel = styled.label<StyledInputProps>`\n position: absolute;\n top: 50%;\n left: 5px;\n padding: 0 5px;\n background-color: transparent;\n transform: translateY(-50%);\n transition: ${FORM_ELEMENT_TRANSITION};\n transition-property: color, transform, padding, font-size;\n font-family: ${themeGet(\"fonts.sans\")};\n pointer-events: none;\n\n & > span {\n background-color: ${themeGet(\"colors.white100\")};\n height: 100%;\n width: 100%;\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n z-index: -1;\n transition: ${FORM_ELEMENT_TRANSITION};\n transition-property: height, top;\n transition-delay: 0.1s;\n }\n\n ${({ prefixOffset }) =>\n !!prefixOffset &&\n css`\n padding-left: ${prefixOffset - 5}px;\n `}\n`\n"],"mappings":"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"}
|
|
@@ -13,5 +13,7 @@ export interface MultiSelectProps extends BoxProps {
|
|
|
13
13
|
required?: boolean;
|
|
14
14
|
title?: string;
|
|
15
15
|
onSelect?: (selection: Option[]) => void;
|
|
16
|
+
visible?: boolean;
|
|
16
17
|
}
|
|
18
|
+
/** A drop-down multi-select menu */
|
|
17
19
|
export declare const MultiSelect: React.FC<MultiSelectProps>;
|
|
@@ -14,10 +14,12 @@ var _useUpdateEffect = require("../../utils/useUpdateEffect");
|
|
|
14
14
|
var _useWidthOf2 = require("../../utils/useWidthOf");
|
|
15
15
|
var _Box = require("../Box");
|
|
16
16
|
var _Checkbox = require("../Checkbox");
|
|
17
|
-
var _Clickable = require("../Clickable");
|
|
18
17
|
var _Select = require("../Select");
|
|
19
|
-
var _Sup = require("../Sup");
|
|
20
18
|
var _Text = require("../Text");
|
|
19
|
+
var _Tooltip = require("../Tooltip");
|
|
20
|
+
var _Clickable = require("../Clickable");
|
|
21
|
+
var _RequiredField = require("../../shared/RequiredField");
|
|
22
|
+
var _tokens = require("./tokens");
|
|
21
23
|
var _excluded = ["complete", "description", "disabled", "error", "focus", "hover", "name", "options", "required", "title", "onSelect"];
|
|
22
24
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
23
25
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -34,6 +36,7 @@ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefine
|
|
|
34
36
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
35
37
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
36
38
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
39
|
+
/** A drop-down multi-select menu */
|
|
37
40
|
var MultiSelect = function MultiSelect(_ref) {
|
|
38
41
|
var complete = _ref.complete,
|
|
39
42
|
description = _ref.description,
|
|
@@ -111,29 +114,32 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
111
114
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(nextSelection);
|
|
112
115
|
};
|
|
113
116
|
};
|
|
114
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
115
|
-
|
|
116
|
-
},
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
117
|
+
return /*#__PURE__*/_react.default.createElement(_Box.Box, _extends({
|
|
118
|
+
width: "100%"
|
|
119
|
+
}, rest), !!description && /*#__PURE__*/_react.default.createElement(_Tooltip.Tooltip, {
|
|
120
|
+
pointer: true,
|
|
121
|
+
content: description,
|
|
122
|
+
placement: "top-end"
|
|
123
|
+
}, /*#__PURE__*/_react.default.createElement(_Text.Text, {
|
|
120
124
|
variant: "xs",
|
|
121
|
-
color: "black60"
|
|
122
|
-
|
|
125
|
+
color: "black60",
|
|
126
|
+
textAlign: "right"
|
|
127
|
+
}, /*#__PURE__*/_react.default.createElement("u", null, "What is this?"))), /*#__PURE__*/_react.default.createElement(Container, _extends({
|
|
123
128
|
ref: anchorRef,
|
|
124
129
|
onClick: onVisible,
|
|
125
130
|
complete: complete || selection.length > 0,
|
|
126
|
-
disabled: disabled,
|
|
131
|
+
disabled: !!disabled,
|
|
127
132
|
error: error,
|
|
128
|
-
focus: focus
|
|
129
|
-
hover: hover,
|
|
130
|
-
|
|
133
|
+
focus: !!focus,
|
|
134
|
+
hover: !!hover,
|
|
135
|
+
title: title,
|
|
136
|
+
visible: visible
|
|
131
137
|
}, rest), /*#__PURE__*/_react.default.createElement(_Text.Text, {
|
|
132
138
|
variant: "sm",
|
|
133
139
|
lineHeight: 1
|
|
134
|
-
},
|
|
135
|
-
|
|
136
|
-
},
|
|
140
|
+
}, selection.length > 0 ? "".concat(selection.length, " selected") : name), !!title && /*#__PURE__*/_react.default.createElement(StyledLabel, {
|
|
141
|
+
htmlFor: name
|
|
142
|
+
}, title)), visible && /*#__PURE__*/_react.default.createElement(Options, {
|
|
137
143
|
tabIndex: 0,
|
|
138
144
|
ref: tooltipRef,
|
|
139
145
|
zIndex: 1,
|
|
@@ -147,29 +153,30 @@ var MultiSelect = function MultiSelect(_ref) {
|
|
|
147
153
|
selected: selection.includes(option),
|
|
148
154
|
onSelect: handleSelect(option)
|
|
149
155
|
}, option.text);
|
|
150
|
-
})), error && typeof error === "string" && /*#__PURE__*/_react.default.createElement(
|
|
156
|
+
})), required && !(error && typeof error === "string") && /*#__PURE__*/_react.default.createElement(_RequiredField.RequiredField, {
|
|
157
|
+
mt: 0.5,
|
|
158
|
+
ml: 1
|
|
159
|
+
}), error && typeof error === "string" && /*#__PURE__*/_react.default.createElement(_Text.Text, {
|
|
151
160
|
variant: "xs",
|
|
152
161
|
mt: 0.5,
|
|
162
|
+
ml: 1,
|
|
153
163
|
color: "red100"
|
|
154
164
|
}, error));
|
|
155
165
|
};
|
|
156
166
|
exports.MultiSelect = MultiSelect;
|
|
167
|
+
MultiSelect.displayName = "MultiSelect";
|
|
157
168
|
var Options = (0, _styledComponents.default)(_Box.Box).withConfig({
|
|
158
169
|
displayName: "MultiSelect__Options",
|
|
159
170
|
componentId: "amrkn0-0"
|
|
160
171
|
})(["position:fixed;z-index:1;max-height:300px;text-align:left;box-shadow:", ";overflow-y:auto;-webkit-overflow-scrolling:touch;"], _helpers.DROP_SHADOW);
|
|
161
|
-
var STATES = {
|
|
162
|
-
default: (0, _styledComponents.css)(["color:", ";border-color:", ";"], (0, _themeGet.themeGet)("colors.black60"), (0, _themeGet.themeGet)("colors.black30")),
|
|
163
|
-
complete: (0, _styledComponents.css)(["color:", ";border-color:", ";"], (0, _themeGet.themeGet)("colors.black100"), (0, _themeGet.themeGet)("colors.black60")),
|
|
164
|
-
focus: (0, _styledComponents.css)(["color:", ";border-color:", ";"], (0, _themeGet.themeGet)("colors.black100"), (0, _themeGet.themeGet)("colors.black60")),
|
|
165
|
-
hover: (0, _styledComponents.css)(["color:", ";border-color:", ";"], (0, _themeGet.themeGet)("colors.black100"), (0, _themeGet.themeGet)("colors.black60")),
|
|
166
|
-
disabled: (0, _styledComponents.css)(["color:", ";border-color:", ";"], (0, _themeGet.themeGet)("colors.black30"), (0, _themeGet.themeGet)("colors.black30")),
|
|
167
|
-
error: (0, _styledComponents.css)(["color:", ";border-color:", ";"], (0, _themeGet.themeGet)("colors.black100"), (0, _themeGet.themeGet)("colors.red100"))
|
|
168
|
-
};
|
|
169
172
|
var Container = (0, _styledComponents.default)(_Clickable.Clickable).withConfig({
|
|
170
173
|
displayName: "MultiSelect__Container",
|
|
171
174
|
componentId: "amrkn0-1"
|
|
172
|
-
})(["position:relative;width:100%;
|
|
173
|
-
return (0, _styledComponents.css)(["", " ", " ", " ", " ", " ", " &:hover{", "}
|
|
175
|
+
})(["position:relative;width:100%;padding:16px 24px 16px ", ";font-family:", ";border:1px solid;border-radius:3px;border-color:", ";cursor:pointer;line-height:1;transition:color 0.25s,background-color 0.25s,border-color 0.25s;background-color:", ";", " ", ""], (0, _themeGet.themeGet)("space.1"), (0, _themeGet.themeGet)("fonts.sans"), (0, _themeGet.themeGet)("colors.black30"), (0, _themeGet.themeGet)("colors.white100"), function (props) {
|
|
176
|
+
return (0, _styledComponents.css)(["", " ", " ", " ", " ", " ", " &:hover{", "}", " &:disabled{cursor:default;", "}"], _tokens.MULTISELECT_STATES.default, props.complete && _tokens.MULTISELECT_STATES.completed, props.hover && _tokens.MULTISELECT_STATES.hover, props.focus && _tokens.MULTISELECT_STATES.focus, props.disabled && _tokens.MULTISELECT_STATES.disabled, props.error && _tokens.MULTISELECT_STATES.error, _tokens.MULTISELECT_STATES.hover, props.visible && _tokens.MULTISELECT_STATES.focus, _tokens.MULTISELECT_STATES.disabled);
|
|
174
177
|
}, _Select.caretMixin);
|
|
178
|
+
var StyledLabel = _styledComponents.default.label.withConfig({
|
|
179
|
+
displayName: "MultiSelect__StyledLabel",
|
|
180
|
+
componentId: "amrkn0-2"
|
|
181
|
+
})(["position:absolute;top:50%;left:5px;padding:0 5px;pointer-events:none;transform:translateY(-50%);transition:", ";transition-property:color,transform,padding,font-size;background-color:", ";font-family:", ";"], _helpers.FORM_ELEMENT_TRANSITION, (0, _themeGet.themeGet)("colors.white100"), (0, _themeGet.themeGet)("fonts.sans"));
|
|
175
182
|
//# sourceMappingURL=MultiSelect.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiSelect.js","names":["_themeGet","require","_react","_interopRequireWildcard","_styledComponents","_helpers","_utils","_useUpdateEffect","_useWidthOf2","_Box","_Checkbox","_Clickable","_Select","_Sup","_Text","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","n","toString","slice","constructor","name","test","len","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","MultiSelect","_ref","complete","description","disabled","error","focus","hover","_ref$name","options","required","title","onSelect","rest","_useState","useState","_useState2","visible","setVisible","_useState3","_useState4","selection","setSelection","useUpdateEffect","tooltipRef","current","anchorRef","onVisible","onHide","useEffect","handleKeydown","event","document","addEventListener","removeEventListener","_usePosition","usePosition","position","offset","active","_useWidthOf","useWidthOf","ref","width","useClickOutside","onClickOutside","when","type","handleSelect","option","selected","prevSelection","nextSelection","concat","filter","_ref2","createElement","Fragment","Text","variant","Box","as","color","Container","onClick","mt","lineHeight","Sup","Options","tabIndex","zIndex","bg","map","Checkbox","height","px","includes","text","exports","styled","withConfig","displayName","componentId","DROP_SHADOW","STATES","css","themeGet","Clickable","props","caretMixin"],"sources":["../../../src/elements/MultiSelect/MultiSelect.tsx"],"sourcesContent":["import { themeGet } from \"@styled-system/theme-get\"\nimport React, { useEffect, useState } from \"react\"\nimport styled from \"styled-components\"\nimport { css } from \"styled-components\"\nimport { DROP_SHADOW } from \"../../helpers\"\nimport { useClickOutside, usePosition } from \"../../utils\"\nimport { useUpdateEffect } from \"../../utils/useUpdateEffect\"\nimport { useWidthOf } from \"../../utils/useWidthOf\"\nimport { Box, BoxProps } from \"../Box\"\nimport { Checkbox } from \"../Checkbox\"\nimport { Clickable } from \"../Clickable\"\nimport { caretMixin, Option } from \"../Select\"\nimport { Sup } from \"../Sup\"\nimport { Text } from \"../Text\"\n\nexport interface MultiSelectProps extends BoxProps {\n complete?: boolean\n description?: string\n disabled?: boolean\n error?: string | boolean\n focus?: boolean\n hover?: boolean\n name?: string\n options: Option[]\n required?: boolean\n title?: string\n onSelect?: (selection: Option[]) => void\n}\n\nexport const MultiSelect: React.FC<MultiSelectProps> = ({\n complete,\n description,\n disabled,\n error,\n focus,\n hover,\n name = \"Select\",\n options,\n required,\n title,\n onSelect,\n ...rest\n}) => {\n const [visible, setVisible] = useState(false)\n const [selection, setSelection] = useState<Option[]>([])\n\n // Yields focus back and forth between popover and anchor\n useUpdateEffect(() => {\n if (visible && tooltipRef.current) {\n tooltipRef.current.focus()\n return\n }\n\n if (!anchorRef.current) return\n anchorRef.current.focus()\n }, [visible])\n\n const onVisible = () => setVisible(true)\n const onHide = () => setVisible(false)\n\n useEffect(() => {\n const handleKeydown = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n onHide()\n }\n }\n\n document.addEventListener(\"keydown\", handleKeydown)\n return () => {\n document.removeEventListener(\"keydown\", handleKeydown)\n }\n }, [])\n\n const { anchorRef, tooltipRef } = usePosition({\n position: \"bottom\",\n offset: 10,\n active: visible,\n })\n\n const { width } = useWidthOf({ ref: anchorRef })\n\n useClickOutside({\n ref: tooltipRef,\n onClickOutside: onHide,\n when: visible,\n type: \"click\",\n })\n\n const handleSelect = (option: Option) => {\n return (selected: boolean) => {\n const prevSelection = selection\n const nextSelection = selected\n ? [...prevSelection, option]\n : prevSelection.filter(({ value }) => option.value !== value)\n\n setSelection(nextSelection)\n onSelect?.(nextSelection)\n }\n }\n\n return (\n <>\n {(title || description) && (\n <>\n {title && (\n <Text variant=\"xs\">\n {title}\n {required && (\n <Box as=\"span\" color=\"brand\">\n *\n </Box>\n )}\n </Text>\n )}\n\n {description && (\n <Text variant=\"xs\" color=\"black60\">\n {description}\n </Text>\n )}\n </>\n )}\n\n <Container\n ref={anchorRef as any}\n onClick={onVisible}\n complete={complete || selection.length > 0}\n disabled={disabled}\n error={error}\n focus={focus || visible}\n hover={hover}\n mt={title || description ? 0.5 : 0}\n {...rest}\n >\n <Text variant=\"sm\" lineHeight={1}>\n {name}\n\n {selection.length > 0 && (\n <Sup color=\"brand\"> {selection.length}</Sup>\n )}\n </Text>\n </Container>\n\n {visible && (\n <Options\n tabIndex={0}\n ref={tooltipRef as any}\n zIndex={1}\n bg=\"white100\"\n width={width}\n >\n {options.map((option) => {\n return (\n <Checkbox\n key={option.value}\n height={50}\n px={1}\n selected={selection.includes(option)}\n onSelect={handleSelect(option)}\n >\n {option.text}\n </Checkbox>\n )\n })}\n </Options>\n )}\n\n {error && typeof error === \"string\" && (\n <Text variant=\"xs\" mt={0.5} color=\"red100\">\n {error}\n </Text>\n )}\n </>\n )\n}\n\nconst Options = styled(Box)`\n position: fixed;\n z-index: 1;\n max-height: 300px;\n text-align: left;\n box-shadow: ${DROP_SHADOW};\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n`\n\nconst STATES = {\n default: css`\n color: ${themeGet(\"colors.black60\")};\n border-color: ${themeGet(\"colors.black30\")};\n `,\n complete: css`\n color: ${themeGet(\"colors.black100\")};\n border-color: ${themeGet(\"colors.black60\")};\n `,\n focus: css`\n color: ${themeGet(\"colors.black100\")};\n border-color: ${themeGet(\"colors.black60\")};\n `,\n hover: css`\n color: ${themeGet(\"colors.black100\")};\n border-color: ${themeGet(\"colors.black60\")};\n `,\n disabled: css`\n color: ${themeGet(\"colors.black30\")};\n border-color: ${themeGet(\"colors.black30\")};\n `,\n error: css`\n color: ${themeGet(\"colors.black100\")};\n border-color: ${themeGet(\"colors.red100\")};\n `,\n}\n\ntype ContainerProps = Pick<\n MultiSelectProps,\n \"complete\" | \"disabled\" | \"error\" | \"hover\" | \"focus\"\n>\n\nconst Container = styled(Clickable)<ContainerProps>`\n position: relative;\n width: 100%;\n height: 50px;\n border: 0;\n border-bottom: 1px solid;\n /* 24px = space.1 + 4px-wide caret + space.1 */\n padding: 0 24px 0 ${themeGet(\"space.1\")};\n transition: background-color 0.25s, border-color 0.25s;\n\n ${(props) => {\n return css`\n ${STATES.default}\n ${props.complete && STATES.complete}\n ${props.hover && STATES.hover}\n ${props.focus && STATES.focus}\n ${props.disabled && STATES.disabled}\n ${props.error && STATES.error}\n\n &:hover {\n ${STATES.hover}\n }\n\n &:focus {\n ${STATES.focus}\n }\n\n &:disabled {\n cursor: default;\n ${STATES.disabled}\n }\n `\n }}\n\n ${caretMixin}\n`\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MultiSelect.js","names":["_themeGet","require","_react","_interopRequireWildcard","_styledComponents","_helpers","_utils","_useUpdateEffect","_useWidthOf2","_Box","_Checkbox","_Select","_Text","_Tooltip","_Clickable","_RequiredField","_tokens","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","n","toString","slice","constructor","name","test","len","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","MultiSelect","_ref","complete","description","disabled","error","focus","hover","_ref$name","options","required","title","onSelect","rest","_useState","useState","_useState2","visible","setVisible","_useState3","_useState4","selection","setSelection","useUpdateEffect","tooltipRef","current","anchorRef","onVisible","onHide","useEffect","handleKeydown","event","document","addEventListener","removeEventListener","_usePosition","usePosition","position","offset","active","_useWidthOf","useWidthOf","ref","width","useClickOutside","onClickOutside","when","type","handleSelect","option","selected","prevSelection","nextSelection","concat","filter","_ref2","createElement","Box","Tooltip","pointer","content","placement","Text","variant","color","textAlign","Container","onClick","lineHeight","StyledLabel","htmlFor","Options","tabIndex","zIndex","bg","map","Checkbox","height","px","includes","text","RequiredField","mt","ml","exports","displayName","styled","withConfig","componentId","DROP_SHADOW","Clickable","themeGet","props","css","MULTISELECT_STATES","completed","caretMixin","label","FORM_ELEMENT_TRANSITION"],"sources":["../../../src/elements/MultiSelect/MultiSelect.tsx"],"sourcesContent":["import { themeGet } from \"@styled-system/theme-get\"\nimport React, { useEffect, useState } from \"react\"\nimport styled from \"styled-components\"\nimport { css } from \"styled-components\"\nimport { DROP_SHADOW, FORM_ELEMENT_TRANSITION } from \"../../helpers\"\nimport { useClickOutside, usePosition } from \"../../utils\"\nimport { useUpdateEffect } from \"../../utils/useUpdateEffect\"\nimport { useWidthOf } from \"../../utils/useWidthOf\"\nimport { Box, BoxProps } from \"../Box\"\nimport { Checkbox } from \"../Checkbox\"\nimport { caretMixin, Option } from \"../Select\"\nimport { Text } from \"../Text\"\nimport { Tooltip } from \"../Tooltip\"\nimport { Clickable } from \"../Clickable\"\nimport { RequiredField } from \"../../shared/RequiredField\"\nimport { MULTISELECT_STATES } from \"./tokens\"\n\nexport interface MultiSelectProps extends BoxProps {\n complete?: boolean\n description?: string\n disabled?: boolean\n error?: string | boolean\n focus?: boolean\n hover?: boolean\n name?: string\n options: Option[]\n required?: boolean\n title?: string\n onSelect?: (selection: Option[]) => void\n visible?: boolean\n}\n\n/** A drop-down multi-select menu */\nexport const MultiSelect: React.FC<MultiSelectProps> = ({\n complete,\n description,\n disabled,\n error,\n focus,\n hover,\n name = \"Select\",\n options,\n required,\n title,\n onSelect,\n ...rest\n}) => {\n const [visible, setVisible] = useState(false)\n const [selection, setSelection] = useState<Option[]>([])\n\n // Yields focus back and forth between popover and anchor\n useUpdateEffect(() => {\n if (visible && tooltipRef.current) {\n tooltipRef.current.focus()\n return\n }\n\n if (!anchorRef.current) return\n anchorRef.current.focus()\n }, [visible])\n\n const onVisible = () => setVisible(true)\n const onHide = () => setVisible(false)\n\n useEffect(() => {\n const handleKeydown = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n onHide()\n }\n }\n\n document.addEventListener(\"keydown\", handleKeydown)\n return () => {\n document.removeEventListener(\"keydown\", handleKeydown)\n }\n }, [])\n\n const { anchorRef, tooltipRef } = usePosition({\n position: \"bottom\",\n offset: 10,\n active: visible,\n })\n\n const { width } = useWidthOf({ ref: anchorRef })\n\n useClickOutside({\n ref: tooltipRef,\n onClickOutside: onHide,\n when: visible,\n type: \"click\",\n })\n\n const handleSelect = (option: Option) => {\n return (selected: boolean) => {\n const prevSelection = selection\n const nextSelection = selected\n ? [...prevSelection, option]\n : prevSelection.filter(({ value }) => option.value !== value)\n\n setSelection(nextSelection)\n onSelect?.(nextSelection)\n }\n }\n\n return (\n <Box width=\"100%\" {...rest}>\n {!!description && (\n <Tooltip pointer content={description} placement=\"top-end\">\n <Text variant=\"xs\" color=\"black60\" textAlign=\"right\">\n <u>What is this?</u>\n </Text>\n </Tooltip>\n )}\n\n <Container\n ref={anchorRef as any}\n onClick={onVisible}\n complete={complete || selection.length > 0}\n disabled={!!disabled}\n error={error}\n focus={!!focus}\n hover={!!hover}\n title={title}\n visible={visible}\n {...rest}\n >\n <Text variant=\"sm\" lineHeight={1}>\n {selection.length > 0 ? `${selection.length} selected` : name}\n </Text>\n\n {!!title && <StyledLabel htmlFor={name}>{title}</StyledLabel>}\n </Container>\n\n {visible && (\n <Options\n tabIndex={0}\n ref={tooltipRef as any}\n zIndex={1}\n bg=\"white100\"\n width={width}\n >\n {options.map((option) => {\n return (\n <Checkbox\n key={option.value}\n height={50}\n px={1}\n selected={selection.includes(option)}\n onSelect={handleSelect(option)}\n >\n {option.text}\n </Checkbox>\n )\n })}\n </Options>\n )}\n\n {required && !(error && typeof error === \"string\") && (\n <RequiredField mt={0.5} ml={1} />\n )}\n\n {error && typeof error === \"string\" && (\n <Text variant=\"xs\" mt={0.5} ml={1} color=\"red100\">\n {error}\n </Text>\n )}\n </Box>\n )\n}\n\nconst Options = styled(Box)`\n position: fixed;\n z-index: 1;\n max-height: 300px;\n text-align: left;\n box-shadow: ${DROP_SHADOW};\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n`\n\ntype ContainerProps = Pick<\n MultiSelectProps,\n \"complete\" | \"disabled\" | \"error\" | \"hover\" | \"focus\" | \"visible\"\n>\n\nconst Container = styled(Clickable)<ContainerProps>`\n position: relative;\n width: 100%;\n /* 24px = space.1 + 4px-wide caret + space.1 */\n padding: 16px 24px 16px ${themeGet(\"space.1\")};\n font-family: ${themeGet(\"fonts.sans\")};\n border: 1px solid;\n border-radius: 3px;\n border-color: ${themeGet(\"colors.black30\")};\n cursor: pointer;\n line-height: 1;\n transition: color 0.25s, background-color 0.25s, border-color 0.25s;\n background-color: ${themeGet(\"colors.white100\")};\n\n ${(props) => {\n return css`\n ${MULTISELECT_STATES.default}\n ${props.complete && MULTISELECT_STATES.completed}\n ${props.hover && MULTISELECT_STATES.hover}\n ${props.focus && MULTISELECT_STATES.focus}\n ${props.disabled && MULTISELECT_STATES.disabled}\n ${props.error && MULTISELECT_STATES.error}\n \n &:hover {\n ${MULTISELECT_STATES.hover}\n }\n\n ${props.visible && MULTISELECT_STATES.focus}\n\n &:disabled {\n cursor: default;\n ${MULTISELECT_STATES.disabled}\n }\n `\n }}\n\n ${caretMixin}\n`\n\nconst StyledLabel = styled.label`\n position: absolute;\n top: 50%;\n left: 5px;\n padding: 0 5px;\n pointer-events: none;\n transform: translateY(-50%);\n transition: ${FORM_ELEMENT_TRANSITION};\n transition-property: color, transform, padding, font-size;\n background-color: ${themeGet(\"colors.white100\")};\n font-family: ${themeGet(\"fonts.sans\")};\n`\n"],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.MULTISELECT_STATES = void 0;
|
|
7
|
+
var _themeGet = require("@styled-system/theme-get");
|
|
8
|
+
var _styledComponents = require("styled-components");
|
|
9
|
+
var MULTISELECT_STATES = {
|
|
10
|
+
default: (0, _styledComponents.css)(["height:50px;font-size:", ";color:", ";border-color:", ";& > label{color:", ";font-size:", ";}"], (0, _themeGet.themeGet)("textVariants.sm-display.fontSize"), (0, _themeGet.themeGet)("colors.black100"), (0, _themeGet.themeGet)("colors.black30"), (0, _themeGet.themeGet)("colors.black60"), (0, _themeGet.themeGet)("textVariants.sm-display.fontSize")),
|
|
11
|
+
focus: (0, _styledComponents.css)(["color:", ";border-color:", ";text-decoration:underline;& > label{color:", ";transform:translateY(-250%);font-size:", ";}"], (0, _themeGet.themeGet)("colors.black100"), (0, _themeGet.themeGet)("colors.blue100"), (0, _themeGet.themeGet)("colors.blue100"), (0, _themeGet.themeGet)("textVariants.xs.fontSize")),
|
|
12
|
+
hover: (0, _styledComponents.css)(["color:", ";border-color:", ";text-decoration:underline;& > label{color:", ";}"], (0, _themeGet.themeGet)("colors.blue100"), (0, _themeGet.themeGet)("colors.black60"), (0, _themeGet.themeGet)("colors.blue100")),
|
|
13
|
+
completed: (0, _styledComponents.css)(["border-color:", ";text-decoration:none;& > label{color:", ";transform:translateY(-250%);font-size:", ";}"], (0, _themeGet.themeGet)("colors.black60"), (0, _themeGet.themeGet)("colors.black60"), (0, _themeGet.themeGet)("textVariants.xs.fontSize")),
|
|
14
|
+
disabled: (0, _styledComponents.css)(["color:", ";border-color:", ";text-decoration:none;& > label{color:", ";text-decoration:none;}"], (0, _themeGet.themeGet)("colors.black30"), (0, _themeGet.themeGet)("colors.black30"), (0, _themeGet.themeGet)("colors.black30")),
|
|
15
|
+
error: (0, _styledComponents.css)(["color:", ";border-color:", ";& > label{color:", ";}"], (0, _themeGet.themeGet)("colors.black100"), (0, _themeGet.themeGet)("colors.red100"), (0, _themeGet.themeGet)("colors.red100"))
|
|
16
|
+
};
|
|
17
|
+
exports.MULTISELECT_STATES = MULTISELECT_STATES;
|
|
18
|
+
//# sourceMappingURL=tokens.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.js","names":["_themeGet","require","_styledComponents","MULTISELECT_STATES","default","css","themeGet","focus","hover","completed","disabled","error","exports"],"sources":["../../../src/elements/MultiSelect/tokens.ts"],"sourcesContent":["import { themeGet } from \"@styled-system/theme-get\"\nimport { css } from \"styled-components\"\nimport { State } from \"../Select/types\"\n\nexport const MULTISELECT_STATES: Record<State, any> = {\n default: css`\n height: 50px;\n font-size: ${themeGet(\"textVariants.sm-display.fontSize\")};\n color: ${themeGet(\"colors.black100\")};\n border-color: ${themeGet(\"colors.black30\")};\n\n & > label {\n color: ${themeGet(\"colors.black60\")};\n font-size: ${themeGet(\"textVariants.sm-display.fontSize\")};\n }\n `,\n focus: css`\n color: ${themeGet(\"colors.black100\")};\n border-color: ${themeGet(\"colors.blue100\")};\n text-decoration: underline;\n\n & > label {\n color: ${themeGet(\"colors.blue100\")};\n transform: translateY(-250%);\n font-size: ${themeGet(\"textVariants.xs.fontSize\")};\n }\n `,\n hover: css`\n color: ${themeGet(\"colors.blue100\")};\n border-color: ${themeGet(\"colors.black60\")};\n text-decoration: underline;\n\n & > label {\n color: ${themeGet(\"colors.blue100\")};\n }\n `,\n completed: css`\n border-color: ${themeGet(\"colors.black60\")};\n text-decoration: none;\n\n & > label {\n color: ${themeGet(\"colors.black60\")};\n transform: translateY(-250%);\n font-size: ${themeGet(\"textVariants.xs.fontSize\")};\n }\n `,\n disabled: css`\n color: ${themeGet(\"colors.black30\")};\n border-color: ${themeGet(\"colors.black30\")};\n text-decoration: none;\n\n & > label {\n color: ${themeGet(\"colors.black30\")};\n text-decoration: none;\n }\n `,\n error: css`\n color: ${themeGet(\"colors.black100\")};\n border-color: ${themeGet(\"colors.red100\")};\n\n & > label {\n color: ${themeGet(\"colors.red100\")};\n }\n `,\n}\n"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAD,OAAA;AAGO,IAAME,kBAAsC,GAAG;EACpDC,OAAO,MAAEC,qBAAG,qGAEG,IAAAC,kBAAQ,EAAC,kCAAkC,CAAC,EAChD,IAAAA,kBAAQ,EAAC,iBAAiB,CAAC,EACpB,IAAAA,kBAAQ,EAAC,gBAAgB,CAAC,EAG/B,IAAAA,kBAAQ,EAAC,gBAAgB,CAAC,EACtB,IAAAA,kBAAQ,EAAC,kCAAkC,CAAC,CAE5D;EACDC,KAAK,MAAEF,qBAAG,gIACC,IAAAC,kBAAQ,EAAC,iBAAiB,CAAC,EACpB,IAAAA,kBAAQ,EAAC,gBAAgB,CAAC,EAI/B,IAAAA,kBAAQ,EAAC,gBAAgB,CAAC,EAEtB,IAAAA,kBAAQ,EAAC,0BAA0B,CAAC,CAEpD;EACDE,KAAK,MAAEH,qBAAG,qFACC,IAAAC,kBAAQ,EAAC,gBAAgB,CAAC,EACnB,IAAAA,kBAAQ,EAAC,gBAAgB,CAAC,EAI/B,IAAAA,kBAAQ,EAAC,gBAAgB,CAAC,CAEtC;EACDG,SAAS,MAAEJ,qBAAG,gHACI,IAAAC,kBAAQ,EAAC,gBAAgB,CAAC,EAI/B,IAAAA,kBAAQ,EAAC,gBAAgB,CAAC,EAEtB,IAAAA,kBAAQ,EAAC,0BAA0B,CAAC,CAEpD;EACDI,QAAQ,MAAEL,qBAAG,qGACF,IAAAC,kBAAQ,EAAC,gBAAgB,CAAC,EACnB,IAAAA,kBAAQ,EAAC,gBAAgB,CAAC,EAI/B,IAAAA,kBAAQ,EAAC,gBAAgB,CAAC,CAGtC;EACDK,KAAK,MAAEN,qBAAG,2DACC,IAAAC,kBAAQ,EAAC,iBAAiB,CAAC,EACpB,IAAAA,kBAAQ,EAAC,eAAe,CAAC,EAG9B,IAAAA,kBAAQ,EAAC,eAAe,CAAC;AAGxC,CAAC;AAAAM,OAAA,CAAAT,kBAAA,GAAAA,kBAAA"}
|
|
@@ -311,7 +311,7 @@ var SelectOption = (0, _styledComponents.default)(_Box.Box).withConfig({
|
|
|
311
311
|
var StyledInput = _styledComponents.default.input.withConfig({
|
|
312
312
|
displayName: "PhoneInput__StyledInput",
|
|
313
313
|
componentId: "lj1bt9-5"
|
|
314
|
-
})(["width:100%;padding:0 ", ";appearance:none;outline:none;line-height:1;border:1px solid;border-radius:0 3px 3px 0;transition:color 0.25s,border-color 0.25s;font-family:", ";font-size:", ";color:", ";border-color:", ";", "
|
|
314
|
+
})(["width:100%;padding:0 ", ";appearance:none;outline:none;line-height:1;border:1px solid;border-radius:0 3px 3px 0;transition:color 0.25s,border-color 0.25s;font-family:", ";font-size:", ";color:", ";border-color:", ";", "::placeholder{color:", ";transition:color 0.25s;}"], (0, _themeGet.themeGet)("space.1"), (0, _themeGet.themeGet)("fonts.sans"), (0, _themeGet.themeGet)("textVariants.sm-display.fontSize"), (0, _themeGet.themeGet)("colors.black100"), (0, _themeGet.themeGet)("colors.black30"), _styledSystem.height, (0, _themeGet.themeGet)("colors.black60"));
|
|
315
315
|
var StyledLabel = _styledComponents.default.label.withConfig({
|
|
316
316
|
displayName: "PhoneInput__StyledLabel",
|
|
317
317
|
componentId: "lj1bt9-6"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PhoneInput.js","names":["_composeReactRefs","_interopRequireDefault","require","_themeGet","_react","_interopRequireWildcard","_styledComponents","_styledSystem","_helpers","_utils","_Box","_Input","_Text","_tokens","_useKeyboardListNavigation","_RequiredField","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","PhoneInput","React","forwardRef","_ref","forwardedRef","className","options","disabled","error","focus","hover","required","onSelect","dropdownValue","inputValue","rest","Error","inputRef","useRef","searchInputRef","containerRef","countryPickerRef","defaultOption","useMemo","find","option","_splitBoxProps","splitBoxProps","_splitBoxProps2","boxProps","inputProps","_useState","useState","_useState2","isDropdownVisible","setDropdownVisible","_useState3","_useState4","searchQuery","setSearchQuery","_useState5","_useState6","selectedOption","setSelectedOption","filteredOptions","filter","filteredCountry","text","toLowerCase","includes","_usePosition","usePosition","position","offset","active","flip","anchorRef","tooltipRef","_useKeyboardListNavig","useKeyboardListNavigation","ref","list","waitForInteractive","onEnter","_ref2","element","event","preventDefault","stopPropagation","handleSelect","resetUI","reset","_useWidthOf","useWidthOf","width","inputName","optionsWithRefs","map","createRef","setTimeout","_inputRef$current","current","_inputRef$current2","handleFocusChange","useCallback","focused","_useContainsFocus","useContainsFocus","onChange","containsFocusRef","handleCountryPickerKeydown","_countryPickerRef$cur","blur","handleSearchInputKeydown","_searchInputRef$curre","shiftKey","cursor","interactive","createElement","Box","composeRefs","ContainerBox","placeholder","SelectContainer","onClick","tabIndex","onKeyDown","StyledInput","type","autoComplete","maxLength","StyledLabel","htmlFor","SelectDropdown","role","Input","p","pb","autoFocus","e","SelectOptions","_ref3","SelectOption","selected","Text","minWidth","RequiredField","mt","ml","variant","mr","color","textAlign","exports","displayName","caretMixin","css","themeGet","_ref4","styled","withConfig","componentId","props","PHONE_INPUT_STATES","completed","DROP_SHADOW","input","systemHeight","label"],"sources":["../../../src/elements/PhoneInput/PhoneInput.tsx"],"sourcesContent":["import composeRefs from \"@seznam/compose-react-refs\"\nimport { themeGet } from \"@styled-system/theme-get\"\nimport React, { createRef, useCallback, useMemo, useRef, useState } from \"react\"\nimport styled, { css } from \"styled-components\"\nimport { height as systemHeight } from \"styled-system\"\nimport { DROP_SHADOW } from \"../../helpers\"\nimport { useContainsFocus, usePosition, useWidthOf } from \"../../utils\"\nimport { Box, splitBoxProps } from \"../Box\"\nimport { Input, InputProps } from \"../Input\"\nimport { Text } from \"../Text\"\nimport { PHONE_INPUT_STATES } from \"./tokens\"\nimport { useKeyboardListNavigation } from \"use-keyboard-list-navigation\"\nimport { RequiredField } from \"../../shared/RequiredField\"\n\n/**\n * The option structure for the list in the dropdown menu\n *\n * @interface Option\n * @property {string} `text` is the content that will be displayed as selected option\n * @property {string} `name` is the content that will be displayed in the dropdown list\n * @property {string} `value` is the value that will be passed to onSelect\n */\ninterface Option {\n text: string\n name: string\n value: string\n countryCode?: string\n flag?: string\n}\n\nexport interface PhoneInputProps extends Omit<InputProps, \"onSelect\"> {\n options: Option[]\n onSelect: (option: Option) => void\n active?: boolean\n disabled?: boolean\n error?: string | boolean\n focus?: boolean\n hover?: boolean\n required?: boolean\n dropdownValue?: string\n inputValue?: string\n}\n\nexport const PhoneInput: React.ForwardRefExoticComponent<\n PhoneInputProps & { ref?: React.Ref<HTMLInputElement> }\n> = React.forwardRef(\n (\n {\n className,\n options,\n disabled,\n error,\n focus,\n hover,\n required,\n onSelect,\n dropdownValue,\n inputValue,\n ...rest\n },\n forwardedRef\n ) => {\n if (options.length === 0) {\n throw new Error(\n \"Palette PhoneInput requires at least 1 option in the options prop\"\n )\n }\n\n const inputRef = useRef<HTMLInputElement | null>(null)\n const searchInputRef = useRef<HTMLInputElement | null>(null)\n const containerRef = useRef<HTMLDivElement | null>(null)\n const countryPickerRef = useRef<HTMLDivElement | null>(null)\n\n const defaultOption = useMemo(\n () =>\n dropdownValue &&\n options.find((option) => option.value === dropdownValue),\n [dropdownValue, options]\n )\n\n const [boxProps, inputProps] = splitBoxProps(rest)\n const [isDropdownVisible, setDropdownVisible] = useState(false)\n const [searchQuery, setSearchQuery] = useState(\"\")\n const [selectedOption, setSelectedOption] = useState(\n defaultOption || options[0]\n )\n\n const filteredOptions = options.filter((option) => {\n if (searchQuery !== \"\") {\n const filteredCountry =\n option.text.toLowerCase().includes(searchQuery.toLowerCase()) ||\n option.name.toLowerCase().includes(searchQuery.toLowerCase())\n return filteredCountry\n }\n return true\n })\n\n const { anchorRef, tooltipRef } = usePosition({\n key: filteredOptions.length,\n position: \"bottom\",\n offset: 10,\n active: isDropdownVisible,\n flip: false,\n })\n\n const { reset, set } = useKeyboardListNavigation({\n ref: containerRef,\n list: filteredOptions,\n waitForInteractive: true,\n onEnter: ({ element: option, event }) => {\n event.preventDefault()\n event.stopPropagation()\n if (option) {\n handleSelect(option)\n }\n resetUI()\n },\n })\n\n const { width } = useWidthOf({ ref: anchorRef })\n\n const inputName = inputProps.name || \"palette-phone-input\"\n\n const optionsWithRefs = useMemo(() => {\n return filteredOptions.map((option) => ({\n option,\n ref: createRef<HTMLDivElement>(),\n }))\n }, [filteredOptions])\n\n const resetUI = () => {\n setTimeout(() => {\n inputRef.current?.focus()\n reset()\n setDropdownVisible(false)\n }, 100)\n }\n\n const handleSelect = (option: Option) => {\n inputRef.current?.focus()\n setSearchQuery(\"\")\n setSelectedOption(option)\n setDropdownVisible(false)\n onSelect?.(option)\n }\n\n const handleFocusChange = useCallback(\n (focused: boolean) => {\n if (focused || !isDropdownVisible) return\n\n setDropdownVisible(false)\n },\n [isDropdownVisible]\n )\n\n // Handle closing the dropdown when clicking outside of the input\n // or when focus leaves the input completely\n const { ref: containsFocusRef } = useContainsFocus({\n onChange: handleFocusChange,\n })\n\n const handleCountryPickerKeydown = (\n event: React.KeyboardEvent<HTMLDivElement>\n ) => {\n switch (event.key) {\n case \"Escape\":\n event.preventDefault()\n event.stopPropagation()\n\n setDropdownVisible(false)\n countryPickerRef.current?.blur()\n reset()\n\n return\n\n case \"Enter\":\n case \" \":\n event.preventDefault()\n event.stopPropagation()\n\n if (!disabled) {\n setDropdownVisible(true)\n }\n return\n }\n }\n\n const handleSearchInputKeydown = (\n event: React.KeyboardEvent<HTMLInputElement>\n ) => {\n switch (event.key) {\n case \"Tab\":\n if (event.shiftKey) {\n // ignore\n } else {\n // move down to the list\n event.preventDefault()\n event.stopPropagation()\n reset()\n\n set({ cursor: 0, interactive: true })\n }\n return\n\n case \"Enter\":\n event.preventDefault()\n event.stopPropagation()\n if (filteredOptions.length) {\n handleSelect(filteredOptions[0])\n }\n return\n\n default:\n searchInputRef.current?.focus()\n }\n }\n\n return (\n <Box\n ref={composeRefs(containerRef, containsFocusRef) as any}\n width=\"100%\"\n className={className}\n {...boxProps}\n >\n <ContainerBox\n ref={anchorRef as any}\n isDropdownVisible={isDropdownVisible}\n hover={hover}\n focus={focus}\n error={error}\n disabled={disabled}\n placeholder={inputProps.placeholder}\n >\n <SelectContainer\n data-testid=\"country-picker\"\n ref={countryPickerRef as any}\n disabled={disabled}\n onClick={() => {\n setDropdownVisible(!disabled && !isDropdownVisible)\n }}\n tabIndex={disabled ? -1 : 0}\n onKeyDown={handleCountryPickerKeydown}\n >\n {selectedOption.text}\n </SelectContainer>\n\n <StyledInput\n disabled={disabled}\n ref={composeRefs(inputRef, forwardedRef) as any}\n type=\"tel\"\n autoComplete=\"tel-national\"\n required={required}\n name={inputName}\n maxLength={25}\n placeholder={inputProps.placeholder}\n value={inputValue}\n {...inputProps}\n />\n\n <StyledLabel htmlFor={inputName}>\n Phone Number\n <span />\n </StyledLabel>\n </ContainerBox>\n\n {isDropdownVisible && (\n <SelectDropdown ref={tooltipRef as any} role=\"listbox\" width={width}>\n <Input\n ref={searchInputRef}\n p={1}\n pb={0}\n autoFocus\n placeholder=\"Search\"\n value={searchQuery}\n onChange={(e) => setSearchQuery(e.target.value)}\n onKeyDown={handleSearchInputKeydown}\n />\n\n <SelectOptions>\n {optionsWithRefs.map(({ option, ref }, i) => {\n return (\n <SelectOption\n key={i}\n ref={ref as any}\n role=\"option\"\n aria-selected={option.value === selectedOption.value}\n aria-posinset={i + 1}\n aria-setsize={options.length}\n selected={option.value === selectedOption.value}\n onClick={() => handleSelect(option)}\n tabIndex={-1}\n >\n <Text minWidth={80}>{option.text}</Text>\n <Text>{option.name}</Text>\n </SelectOption>\n )\n })}\n </SelectOptions>\n </SelectDropdown>\n )}\n\n {required && !(error && typeof error === \"string\") && (\n <RequiredField mt={0.5} ml={1} />\n )}\n\n {error && typeof error === \"string\" && (\n <Text variant=\"xs\" mt={0.5} mr={1} color=\"red100\" textAlign=\"right\">\n {error}\n </Text>\n )}\n </Box>\n )\n }\n)\n\nPhoneInput.displayName = \"PhoneInput\"\n\nconst caretMixin = css`\n &::after {\n content: \"\";\n cursor: inherit;\n width: 0;\n height: 0;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n right: ${themeGet(\"space.1\")};\n pointer-events: none;\n border-left: 4px solid transparent;\n border-right: 4px solid transparent;\n border-top: 4px solid\n ${({ disabled }) => {\n return disabled\n ? themeGet(\"colors.black10\")\n : themeGet(\"colors.black60\")\n }};\n }\n`\n\ntype ContainerProps = Pick<\n PhoneInputProps,\n \"disabled\" | \"error\" | \"hover\" | \"focus\" | \"placeholder\"\n> & { isDropdownVisible: boolean }\n\nconst ContainerBox = styled(Box)<ContainerProps>`\n position: relative;\n display: flex;\n flex-direction: row;\n\n ${(props) => {\n return css`\n ${PHONE_INPUT_STATES.default}\n ${props.hover && PHONE_INPUT_STATES.hover}\n ${(props.focus || props.isDropdownVisible) && PHONE_INPUT_STATES.focus}\n ${props.disabled && PHONE_INPUT_STATES.disabled}\n ${props.error && PHONE_INPUT_STATES.error}\n\n &:hover {\n /* Applies hover style if the dropdown is not visible or the input is disabled */\n ${!props.isDropdownVisible &&\n !props.disabled &&\n PHONE_INPUT_STATES.hover}\n }\n\n &:focus-within {\n ${!props.disabled && PHONE_INPUT_STATES.focus}\n\n &:has(input:not(:placeholder-shown)) {\n ${PHONE_INPUT_STATES.active}\n ${props.error && PHONE_INPUT_STATES.error};\n }\n }\n\n &:has(input:not(:placeholder-shown)) {\n ${!!props.placeholder && PHONE_INPUT_STATES.completed}\n ${props.error && PHONE_INPUT_STATES.error};\n }\n `\n }}\n`\n\nconst SelectContainer = styled(Box)<{ disabled?: boolean }>`\n display: flex;\n align-items: center;\n position: relative;\n min-width: 120px;\n border: 1px solid;\n border-right: 0;\n /* 24px = space.1 + 4px-wide caret + space.1 */\n padding: 0 24px 0 ${themeGet(\"space.1\")};\n font-family: ${themeGet(\"fonts.sans\")};\n border-radius: 3px 0 0 3px;\n border-color: ${themeGet(\"colors.black30\")};\n cursor: pointer;\n line-height: 1;\n transition: color 0.25s, border-color 0.25s;\n height: 50px;\n font-size: ${themeGet(\"textVariants.sm-display.fontSize\")};\n color: ${themeGet(\"colors.black100\")};\n\n ${caretMixin}\n`\n\nconst SelectDropdown = styled(Box)`\n box-shadow: ${DROP_SHADOW};\n z-index: 1;\n background: ${themeGet(\"colors.white100\")};\n`\n\nconst SelectOptions = styled(Box)`\n /* 308 = Roughly, 5.5 default sized options */\n max-height: 308px;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n padding: ${themeGet(\"space.1\")};\n`\n\nconst SelectOption = styled(Box)<{ selected?: boolean }>`\n padding: ${themeGet(\"space.1\")} 0;\n cursor: pointer;\n display: flex;\n flex-direction: row;\n align-items: center;\n text-decoration: none;\n color: ${themeGet(\"colors.black60\")};\n transition: color 0.25s, text-decoration 0.25s;\n\n &:hover {\n color: ${themeGet(\"colors.blue100\")};\n text-decoration: underline;\n }\n\n &:focus,\n &:active {\n color: ${themeGet(\"colors.black100\")};\n text-decoration: none;\n }\n\n ${(props) =>\n props.selected &&\n css`\n color: ${themeGet(\"colors.black100\")};\n text-decoration: none;\n `}\n`\n\nconst StyledInput = styled.input`\n width: 100%;\n padding: 0 ${themeGet(\"space.1\")};\n appearance: none;\n outline: none;\n line-height: 1;\n border: 1px solid;\n border-radius: 0 3px 3px 0;\n transition: color 0.25s, border-color 0.25s;\n font-family: ${themeGet(\"fonts.sans\")};\n font-size: ${themeGet(\"textVariants.sm-display.fontSize\")};\n color: ${themeGet(\"colors.black100\")};\n border-color: ${themeGet(\"colors.black30\")};\n ${systemHeight}\n\n &:-webkit-autofill,\n &:-webkit-autofill:hover,\n &:-webkit-autofill:focus {\n -webkit-box-shadow: 0 0 0px 100px ${themeGet(\"colors.white100\")} inset;\n }\n\n ::placeholder {\n color: ${themeGet(\"colors.black60\")};\n transition: color 0.25s;\n }\n`\n\nconst StyledLabel = styled.label`\n position: absolute;\n top: 0;\n left: 5px;\n padding: 0 5px;\n background-color: transparent;\n transform: translateY(-50%);\n transition: color 0.25s;\n font-family: ${themeGet(\"fonts.sans\")};\n pointer-events: none;\n font-size: ${themeGet(\"textVariants.xs.fontSize\")};\n color: ${themeGet(\"colors.black60\")};\n\n & > span {\n background-color: ${themeGet(\"colors.white100\")};\n height: 2px;\n width: 100%;\n display: block;\n position: absolute;\n top: 50%;\n left: 0;\n z-index: -1;\n }\n`\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PhoneInput.js","names":["_composeReactRefs","_interopRequireDefault","require","_themeGet","_react","_interopRequireWildcard","_styledComponents","_styledSystem","_helpers","_utils","_Box","_Input","_Text","_tokens","_useKeyboardListNavigation","_RequiredField","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","PhoneInput","React","forwardRef","_ref","forwardedRef","className","options","disabled","error","focus","hover","required","onSelect","dropdownValue","inputValue","rest","Error","inputRef","useRef","searchInputRef","containerRef","countryPickerRef","defaultOption","useMemo","find","option","_splitBoxProps","splitBoxProps","_splitBoxProps2","boxProps","inputProps","_useState","useState","_useState2","isDropdownVisible","setDropdownVisible","_useState3","_useState4","searchQuery","setSearchQuery","_useState5","_useState6","selectedOption","setSelectedOption","filteredOptions","filter","filteredCountry","text","toLowerCase","includes","_usePosition","usePosition","position","offset","active","flip","anchorRef","tooltipRef","_useKeyboardListNavig","useKeyboardListNavigation","ref","list","waitForInteractive","onEnter","_ref2","element","event","preventDefault","stopPropagation","handleSelect","resetUI","reset","_useWidthOf","useWidthOf","width","inputName","optionsWithRefs","map","createRef","setTimeout","_inputRef$current","current","_inputRef$current2","handleFocusChange","useCallback","focused","_useContainsFocus","useContainsFocus","onChange","containsFocusRef","handleCountryPickerKeydown","_countryPickerRef$cur","blur","handleSearchInputKeydown","_searchInputRef$curre","shiftKey","cursor","interactive","createElement","Box","composeRefs","ContainerBox","placeholder","SelectContainer","onClick","tabIndex","onKeyDown","StyledInput","type","autoComplete","maxLength","StyledLabel","htmlFor","SelectDropdown","role","Input","p","pb","autoFocus","e","SelectOptions","_ref3","SelectOption","selected","Text","minWidth","RequiredField","mt","ml","variant","mr","color","textAlign","exports","displayName","caretMixin","css","themeGet","_ref4","styled","withConfig","componentId","props","PHONE_INPUT_STATES","completed","DROP_SHADOW","input","systemHeight","label"],"sources":["../../../src/elements/PhoneInput/PhoneInput.tsx"],"sourcesContent":["import composeRefs from \"@seznam/compose-react-refs\"\nimport { themeGet } from \"@styled-system/theme-get\"\nimport React, { createRef, useCallback, useMemo, useRef, useState } from \"react\"\nimport styled, { css } from \"styled-components\"\nimport { height as systemHeight } from \"styled-system\"\nimport { DROP_SHADOW } from \"../../helpers\"\nimport { useContainsFocus, usePosition, useWidthOf } from \"../../utils\"\nimport { Box, splitBoxProps } from \"../Box\"\nimport { Input, InputProps } from \"../Input\"\nimport { Text } from \"../Text\"\nimport { PHONE_INPUT_STATES } from \"./tokens\"\nimport { useKeyboardListNavigation } from \"use-keyboard-list-navigation\"\nimport { RequiredField } from \"../../shared/RequiredField\"\n\n/**\n * The option structure for the list in the dropdown menu\n *\n * @interface Option\n * @property {string} `text` is the content that will be displayed as selected option\n * @property {string} `name` is the content that will be displayed in the dropdown list\n * @property {string} `value` is the value that will be passed to onSelect\n */\ninterface Option {\n text: string\n name: string\n value: string\n countryCode?: string\n flag?: string\n}\n\nexport interface PhoneInputProps extends Omit<InputProps, \"onSelect\"> {\n options: Option[]\n onSelect: (option: Option) => void\n active?: boolean\n disabled?: boolean\n error?: string | boolean\n focus?: boolean\n hover?: boolean\n required?: boolean\n dropdownValue?: string\n inputValue?: string\n}\n\nexport const PhoneInput: React.ForwardRefExoticComponent<\n PhoneInputProps & { ref?: React.Ref<HTMLInputElement> }\n> = React.forwardRef(\n (\n {\n className,\n options,\n disabled,\n error,\n focus,\n hover,\n required,\n onSelect,\n dropdownValue,\n inputValue,\n ...rest\n },\n forwardedRef\n ) => {\n if (options.length === 0) {\n throw new Error(\n \"Palette PhoneInput requires at least 1 option in the options prop\"\n )\n }\n\n const inputRef = useRef<HTMLInputElement | null>(null)\n const searchInputRef = useRef<HTMLInputElement | null>(null)\n const containerRef = useRef<HTMLDivElement | null>(null)\n const countryPickerRef = useRef<HTMLDivElement | null>(null)\n\n const defaultOption = useMemo(\n () =>\n dropdownValue &&\n options.find((option) => option.value === dropdownValue),\n [dropdownValue, options]\n )\n\n const [boxProps, inputProps] = splitBoxProps(rest)\n const [isDropdownVisible, setDropdownVisible] = useState(false)\n const [searchQuery, setSearchQuery] = useState(\"\")\n const [selectedOption, setSelectedOption] = useState(\n defaultOption || options[0]\n )\n\n const filteredOptions = options.filter((option) => {\n if (searchQuery !== \"\") {\n const filteredCountry =\n option.text.toLowerCase().includes(searchQuery.toLowerCase()) ||\n option.name.toLowerCase().includes(searchQuery.toLowerCase())\n return filteredCountry\n }\n return true\n })\n\n const { anchorRef, tooltipRef } = usePosition({\n key: filteredOptions.length,\n position: \"bottom\",\n offset: 10,\n active: isDropdownVisible,\n flip: false,\n })\n\n const { reset, set } = useKeyboardListNavigation({\n ref: containerRef,\n list: filteredOptions,\n waitForInteractive: true,\n onEnter: ({ element: option, event }) => {\n event.preventDefault()\n event.stopPropagation()\n if (option) {\n handleSelect(option)\n }\n resetUI()\n },\n })\n\n const { width } = useWidthOf({ ref: anchorRef })\n\n const inputName = inputProps.name || \"palette-phone-input\"\n\n const optionsWithRefs = useMemo(() => {\n return filteredOptions.map((option) => ({\n option,\n ref: createRef<HTMLDivElement>(),\n }))\n }, [filteredOptions])\n\n const resetUI = () => {\n setTimeout(() => {\n inputRef.current?.focus()\n reset()\n setDropdownVisible(false)\n }, 100)\n }\n\n const handleSelect = (option: Option) => {\n inputRef.current?.focus()\n setSearchQuery(\"\")\n setSelectedOption(option)\n setDropdownVisible(false)\n onSelect?.(option)\n }\n\n const handleFocusChange = useCallback(\n (focused: boolean) => {\n if (focused || !isDropdownVisible) return\n\n setDropdownVisible(false)\n },\n [isDropdownVisible]\n )\n\n // Handle closing the dropdown when clicking outside of the input\n // or when focus leaves the input completely\n const { ref: containsFocusRef } = useContainsFocus({\n onChange: handleFocusChange,\n })\n\n const handleCountryPickerKeydown = (\n event: React.KeyboardEvent<HTMLDivElement>\n ) => {\n switch (event.key) {\n case \"Escape\":\n event.preventDefault()\n event.stopPropagation()\n\n setDropdownVisible(false)\n countryPickerRef.current?.blur()\n reset()\n\n return\n\n case \"Enter\":\n case \" \":\n event.preventDefault()\n event.stopPropagation()\n\n if (!disabled) {\n setDropdownVisible(true)\n }\n return\n }\n }\n\n const handleSearchInputKeydown = (\n event: React.KeyboardEvent<HTMLInputElement>\n ) => {\n switch (event.key) {\n case \"Tab\":\n if (event.shiftKey) {\n // ignore\n } else {\n // move down to the list\n event.preventDefault()\n event.stopPropagation()\n reset()\n\n set({ cursor: 0, interactive: true })\n }\n return\n\n case \"Enter\":\n event.preventDefault()\n event.stopPropagation()\n if (filteredOptions.length) {\n handleSelect(filteredOptions[0])\n }\n return\n\n default:\n searchInputRef.current?.focus()\n }\n }\n\n return (\n <Box\n ref={composeRefs(containerRef, containsFocusRef) as any}\n width=\"100%\"\n className={className}\n {...boxProps}\n >\n <ContainerBox\n ref={anchorRef as any}\n isDropdownVisible={isDropdownVisible}\n hover={hover}\n focus={focus}\n error={error}\n disabled={disabled}\n placeholder={inputProps.placeholder}\n >\n <SelectContainer\n data-testid=\"country-picker\"\n ref={countryPickerRef as any}\n disabled={disabled}\n onClick={() => {\n setDropdownVisible(!disabled && !isDropdownVisible)\n }}\n tabIndex={disabled ? -1 : 0}\n onKeyDown={handleCountryPickerKeydown}\n >\n {selectedOption.text}\n </SelectContainer>\n\n <StyledInput\n disabled={disabled}\n ref={composeRefs(inputRef, forwardedRef) as any}\n type=\"tel\"\n autoComplete=\"tel-national\"\n required={required}\n name={inputName}\n maxLength={25}\n placeholder={inputProps.placeholder}\n value={inputValue}\n {...inputProps}\n />\n\n <StyledLabel htmlFor={inputName}>\n Phone Number\n <span />\n </StyledLabel>\n </ContainerBox>\n\n {isDropdownVisible && (\n <SelectDropdown ref={tooltipRef as any} role=\"listbox\" width={width}>\n <Input\n ref={searchInputRef}\n p={1}\n pb={0}\n autoFocus\n placeholder=\"Search\"\n value={searchQuery}\n onChange={(e) => setSearchQuery(e.target.value)}\n onKeyDown={handleSearchInputKeydown}\n />\n\n <SelectOptions>\n {optionsWithRefs.map(({ option, ref }, i) => {\n return (\n <SelectOption\n key={i}\n ref={ref as any}\n role=\"option\"\n aria-selected={option.value === selectedOption.value}\n aria-posinset={i + 1}\n aria-setsize={options.length}\n selected={option.value === selectedOption.value}\n onClick={() => handleSelect(option)}\n tabIndex={-1}\n >\n <Text minWidth={80}>{option.text}</Text>\n <Text>{option.name}</Text>\n </SelectOption>\n )\n })}\n </SelectOptions>\n </SelectDropdown>\n )}\n\n {required && !(error && typeof error === \"string\") && (\n <RequiredField mt={0.5} ml={1} />\n )}\n\n {error && typeof error === \"string\" && (\n <Text variant=\"xs\" mt={0.5} mr={1} color=\"red100\" textAlign=\"right\">\n {error}\n </Text>\n )}\n </Box>\n )\n }\n)\n\nPhoneInput.displayName = \"PhoneInput\"\n\nconst caretMixin = css`\n &::after {\n content: \"\";\n cursor: inherit;\n width: 0;\n height: 0;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n right: ${themeGet(\"space.1\")};\n pointer-events: none;\n border-left: 4px solid transparent;\n border-right: 4px solid transparent;\n border-top: 4px solid\n ${({ disabled }) => {\n return disabled\n ? themeGet(\"colors.black10\")\n : themeGet(\"colors.black60\")\n }};\n }\n`\n\ntype ContainerProps = Pick<\n PhoneInputProps,\n \"disabled\" | \"error\" | \"hover\" | \"focus\" | \"placeholder\"\n> & { isDropdownVisible: boolean }\n\nconst ContainerBox = styled(Box)<ContainerProps>`\n position: relative;\n display: flex;\n flex-direction: row;\n\n ${(props) => {\n return css`\n ${PHONE_INPUT_STATES.default}\n ${props.hover && PHONE_INPUT_STATES.hover}\n ${(props.focus || props.isDropdownVisible) && PHONE_INPUT_STATES.focus}\n ${props.disabled && PHONE_INPUT_STATES.disabled}\n ${props.error && PHONE_INPUT_STATES.error}\n\n &:hover {\n /* Applies hover style if the dropdown is not visible or the input is disabled */\n ${!props.isDropdownVisible &&\n !props.disabled &&\n PHONE_INPUT_STATES.hover}\n }\n\n &:focus-within {\n ${!props.disabled && PHONE_INPUT_STATES.focus}\n\n &:has(input:not(:placeholder-shown)) {\n ${PHONE_INPUT_STATES.active}\n ${props.error && PHONE_INPUT_STATES.error};\n }\n }\n\n &:has(input:not(:placeholder-shown)) {\n ${!!props.placeholder && PHONE_INPUT_STATES.completed}\n ${props.error && PHONE_INPUT_STATES.error};\n }\n `\n }}\n`\n\nconst SelectContainer = styled(Box)<{ disabled?: boolean }>`\n display: flex;\n align-items: center;\n position: relative;\n min-width: 120px;\n border: 1px solid;\n border-right: 0;\n /* 24px = space.1 + 4px-wide caret + space.1 */\n padding: 0 24px 0 ${themeGet(\"space.1\")};\n font-family: ${themeGet(\"fonts.sans\")};\n border-radius: 3px 0 0 3px;\n border-color: ${themeGet(\"colors.black30\")};\n cursor: pointer;\n line-height: 1;\n transition: color 0.25s, border-color 0.25s;\n height: 50px;\n font-size: ${themeGet(\"textVariants.sm-display.fontSize\")};\n color: ${themeGet(\"colors.black100\")};\n\n ${caretMixin}\n`\n\nconst SelectDropdown = styled(Box)`\n box-shadow: ${DROP_SHADOW};\n z-index: 1;\n background: ${themeGet(\"colors.white100\")};\n`\n\nconst SelectOptions = styled(Box)`\n /* 308 = Roughly, 5.5 default sized options */\n max-height: 308px;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n padding: ${themeGet(\"space.1\")};\n`\n\nconst SelectOption = styled(Box)<{ selected?: boolean }>`\n padding: ${themeGet(\"space.1\")} 0;\n cursor: pointer;\n display: flex;\n flex-direction: row;\n align-items: center;\n text-decoration: none;\n color: ${themeGet(\"colors.black60\")};\n transition: color 0.25s, text-decoration 0.25s;\n\n &:hover {\n color: ${themeGet(\"colors.blue100\")};\n text-decoration: underline;\n }\n\n &:focus,\n &:active {\n color: ${themeGet(\"colors.black100\")};\n text-decoration: none;\n }\n\n ${(props) =>\n props.selected &&\n css`\n color: ${themeGet(\"colors.black100\")};\n text-decoration: none;\n `}\n`\n\nconst StyledInput = styled.input`\n width: 100%;\n padding: 0 ${themeGet(\"space.1\")};\n appearance: none;\n outline: none;\n line-height: 1;\n border: 1px solid;\n border-radius: 0 3px 3px 0;\n transition: color 0.25s, border-color 0.25s;\n font-family: ${themeGet(\"fonts.sans\")};\n font-size: ${themeGet(\"textVariants.sm-display.fontSize\")};\n color: ${themeGet(\"colors.black100\")};\n border-color: ${themeGet(\"colors.black30\")};\n ${systemHeight}\n\n ::placeholder {\n color: ${themeGet(\"colors.black60\")};\n transition: color 0.25s;\n }\n`\n\nconst StyledLabel = styled.label`\n position: absolute;\n top: 0;\n left: 5px;\n padding: 0 5px;\n background-color: transparent;\n transform: translateY(-50%);\n transition: color 0.25s;\n font-family: ${themeGet(\"fonts.sans\")};\n pointer-events: none;\n font-size: ${themeGet(\"textVariants.xs.fontSize\")};\n color: ${themeGet(\"colors.black60\")};\n\n & > span {\n background-color: ${themeGet(\"colors.white100\")};\n height: 2px;\n width: 100%;\n display: block;\n position: absolute;\n top: 50%;\n left: 0;\n z-index: -1;\n }\n`\n"],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ exports.caretMixin = exports.Select = void 0;
|
|
|
8
8
|
var _themeGet = require("@styled-system/theme-get");
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
11
|
+
var _helpers = require("../../helpers");
|
|
11
12
|
var _RequiredField = require("../../shared/RequiredField");
|
|
12
13
|
var _Box = require("../Box");
|
|
13
14
|
var _Text = require("../Text");
|
|
@@ -134,5 +135,5 @@ var Container = (0, _styledComponents.default)(_Box.Box).withConfig({
|
|
|
134
135
|
var StyledLabel = _styledComponents.default.label.withConfig({
|
|
135
136
|
displayName: "Select__StyledLabel",
|
|
136
137
|
componentId: "sc-1weszjl-1"
|
|
137
|
-
})(["position:absolute;top:50%;left:5px;padding:0 5px;pointer-events:none;transform:translateY(-50%);transition:
|
|
138
|
+
})(["position:absolute;top:50%;left:5px;padding:0 5px;pointer-events:none;transform:translateY(-50%);transition:", ";transition-property:color,font-size,transform;background-color:transparent;font-family:", ";& > span{background-color:", ";height:100%;width:100%;display:block;position:absolute;top:0;left:0;z-index:-1;transition:", ";transition-property:height,top;transition-delay:0.1s;}"], _helpers.FORM_ELEMENT_TRANSITION, (0, _themeGet.themeGet)("fonts.sans"), (0, _themeGet.themeGet)("colors.white100"), _helpers.FORM_ELEMENT_TRANSITION);
|
|
138
139
|
//# sourceMappingURL=Select.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.js","names":["_themeGet","require","_react","_interopRequireWildcard","_styledComponents","_RequiredField","_Box","_Text","_Tooltip","_tokens","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Select","forwardRef","_ref","ref","description","disabled","error","focus","hover","id","options","required","selected","title","onSelect","rest","_splitBoxProps","splitBoxProps","_splitBoxProps2","boxProps","selectProps","_useState","useState","_useState2","selectedOption","setSelectedOption","_useState3","_useState4","isFocused","setIsFocused","_useState5","_useState6","isHovered","setIsHovered","createElement","Box","width","Tooltip","pointer","content","placement","Text","variant","color","textAlign","Container","onMouseEnter","onMouseLeave","onFocus","onBlur","optionSelected","onChange","event","map","_ref2","text","StyledLabel","htmlFor","RequiredField","mt","ml","exports","displayName","resetMixin","css","caretMixin","themeGet","_ref3","styled","withConfig","componentId","props","SELECT_STATES","completed","label"],"sources":["../../../src/elements/Select/Select.tsx"],"sourcesContent":["import { themeGet } from \"@styled-system/theme-get\"\nimport React, {\n forwardRef,\n ForwardRefExoticComponent,\n Ref,\n useState,\n} from \"react\"\nimport styled, { css } from \"styled-components\"\nimport { RequiredField } from \"../../shared/RequiredField\"\nimport { Box, BoxProps, splitBoxProps } from \"../Box\"\nimport { Text } from \"../Text\"\nimport { Tooltip } from \"../Tooltip\"\nimport { SELECT_STATES } from \"./tokens\"\n\nexport interface Option {\n value: string\n text: string\n}\n\nexport interface SelectProps\n extends BoxProps,\n Omit<React.SelectHTMLAttributes<HTMLSelectElement>, \"onSelect\" | \"size\"> {\n description?: string\n disabled?: boolean\n error?: string | boolean\n focus?: boolean\n hover?: boolean\n name?: string\n options: Option[]\n required?: boolean\n selected?: string\n title?: string\n onSelect?: (value: string) => void\n}\n\n/** A drop-down select menu */\nexport const Select: ForwardRefExoticComponent<\n SelectProps & { ref?: Ref<HTMLElement> }\n> = forwardRef(\n (\n {\n description,\n disabled,\n error,\n focus,\n hover,\n id,\n name,\n options,\n required,\n selected,\n title,\n onSelect,\n ...rest\n },\n ref\n ) => {\n const [boxProps, selectProps] = splitBoxProps(rest)\n // due to :has not available in Firefox yet, we need to add the styles to the label using JS\n const [selectedOption, setSelectedOption] = useState(selected)\n const [isFocused, setIsFocused] = useState(false)\n const [isHovered, setIsHovered] = useState(false)\n\n return (\n <Box width=\"100%\" {...boxProps}>\n {!!description && (\n <Tooltip pointer content={description} placement=\"top-end\">\n <Text variant=\"xs\" color=\"black60\" textAlign=\"right\">\n <u>What is this?</u>\n </Text>\n </Tooltip>\n )}\n\n <Container\n disabled={!!disabled}\n hover={!!hover || isHovered}\n error={error!}\n focus={!!focus || isFocused}\n title={title}\n onMouseEnter={() => setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n onFocus={() => setIsFocused(true)}\n onBlur={() => setIsFocused(false)}\n optionSelected={!!selectedOption}\n >\n <select\n ref={ref as any}\n id={id}\n disabled={disabled}\n name={name}\n value={selected}\n onChange={(event) => {\n onSelect && onSelect(event.target.value)\n setSelectedOption(event.target.value)\n }}\n {...selectProps}\n >\n {options.map(({ value, text }) => {\n return (\n <option value={value} key={value}>\n {text}\n </option>\n )\n })}\n </select>\n\n {!!title && (\n <StyledLabel htmlFor={id}>\n {title}\n\n <span />\n </StyledLabel>\n )}\n </Container>\n\n {required && !(error && typeof error === \"string\") && (\n <RequiredField mt={0.5} ml={1} />\n )}\n\n {error && typeof error === \"string\" && (\n <Text variant=\"xs\" mt={0.5} ml={1} color=\"red100\">\n {error}\n </Text>\n )}\n </Box>\n )\n }\n)\n\nSelect.displayName = \"Select\"\n\nconst resetMixin = css`\n appearance: none;\n background: none;\n border: none;\n outline: 0;\n text-indent: 0.01px;\n text-overflow: \"\";\n border-radius: 0;\n\n &:-moz-focusring {\n color: transparent;\n text-shadow: 0 0 0 black;\n }\n\n option:not(:checked) {\n color: black; /* prevent <option>s from becoming transparent as well */\n }\n`\n\n/** Creates a small caret */\nexport const caretMixin = css`\n &::after {\n content: \"\";\n cursor: inherit;\n width: 0;\n height: 0;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n right: ${themeGet(\"space.1\")};\n pointer-events: none;\n border-left: 4px solid transparent;\n border-right: 4px solid transparent;\n border-top: 4px solid\n ${({ disabled }) => {\n return disabled\n ? themeGet(\"colors.black10\")\n : themeGet(\"colors.black100\")\n }};\n }\n`\n\ntype ContainerProps = Required<\n Pick<SelectProps, \"disabled\" | \"error\" | \"hover\" | \"focus\">\n // adding optionSelected here to use it locally without adding it to the Select's props\n> & { optionSelected: boolean }\n\nconst Container = styled(Box)<ContainerProps>`\n position: relative;\n width: 100%;\n\n > select {\n ${resetMixin};\n width: 100%;\n /* 24px = space.1 + 4px-wide caret + space.1 */\n padding: 0 24px 0 ${themeGet(\"space.1\")};\n font-family: ${themeGet(\"fonts.sans\")};\n border: 1px solid;\n border-radius: 3px;\n border-color: ${themeGet(\"colors.black30\")};\n cursor: pointer;\n line-height: 1;\n transition: color 0.25s, background-color 0.25s, border-color 0.25s;\n\n ${(props) => {\n return css`\n ${SELECT_STATES.default}\n\n ${props.hover && SELECT_STATES.hover}\n ${props.focus && SELECT_STATES.focus}\n ${props.disabled && SELECT_STATES.disabled}\n ${props.error && SELECT_STATES.error}\n\n &:hover {\n ${SELECT_STATES.hover}\n }\n\n &:focus {\n ${SELECT_STATES.focus}\n }\n\n &:disabled {\n cursor: default;\n ${SELECT_STATES.disabled}\n }\n\n &:not(:focus):not(:has(option[value=\"\"]:checked)) {\n ${!(props.disabled || props.focus) && SELECT_STATES.completed}\n ${props.error && SELECT_STATES.error}\n }\n\n // Firefox polyfill for :has\n ${!props.focus &&\n !!props.optionSelected &&\n css`\n ${!(props.disabled || props.focus) && SELECT_STATES.completed}\n ${props.error && SELECT_STATES.error}\n `}\n\n &:not(:focus):has(option[value=\"\"]:checked) {\n ${props.title &&\n css`\n color: transparent;\n `}\n }\n\n // Firefox polyfill for :has\n ${!props.focus &&\n !props.optionSelected &&\n props.title &&\n css`\n color: transparent;\n `}\n `\n }};\n }\n\n ${caretMixin}\n`\n\nconst StyledLabel = styled.label`\n position: absolute;\n top: 50%;\n left: 5px;\n padding: 0 5px;\n pointer-events: none;\n transform: translateY(-50%);\n transition: 0.25s cubic-bezier(0.64, 0.05, 0.36, 1);\n transision-property: color, font-size, transform;\n background-color: transparent;\n font-family: ${themeGet(\"fonts.sans\")};\n\n & > span {\n background-color: ${themeGet(\"colors.white100\")};\n height: 100%;\n width: 100%;\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n z-index: -1;\n transition: 0.25s cubic-bezier(0.64, 0.05, 0.36, 1);\n transition-property: height, top;\n transition-delay: 0.1s;\n }\n`\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Select.js","names":["_themeGet","require","_react","_interopRequireWildcard","_styledComponents","_helpers","_RequiredField","_Box","_Text","_Tooltip","_tokens","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Select","forwardRef","_ref","ref","description","disabled","error","focus","hover","id","options","required","selected","title","onSelect","rest","_splitBoxProps","splitBoxProps","_splitBoxProps2","boxProps","selectProps","_useState","useState","_useState2","selectedOption","setSelectedOption","_useState3","_useState4","isFocused","setIsFocused","_useState5","_useState6","isHovered","setIsHovered","createElement","Box","width","Tooltip","pointer","content","placement","Text","variant","color","textAlign","Container","onMouseEnter","onMouseLeave","onFocus","onBlur","optionSelected","onChange","event","map","_ref2","text","StyledLabel","htmlFor","RequiredField","mt","ml","exports","displayName","resetMixin","css","caretMixin","themeGet","_ref3","styled","withConfig","componentId","props","SELECT_STATES","completed","label","FORM_ELEMENT_TRANSITION"],"sources":["../../../src/elements/Select/Select.tsx"],"sourcesContent":["import { themeGet } from \"@styled-system/theme-get\"\nimport React, {\n forwardRef,\n ForwardRefExoticComponent,\n Ref,\n useState,\n} from \"react\"\nimport styled, { css } from \"styled-components\"\nimport { FORM_ELEMENT_TRANSITION } from \"../../helpers\"\nimport { RequiredField } from \"../../shared/RequiredField\"\nimport { Box, BoxProps, splitBoxProps } from \"../Box\"\nimport { Text } from \"../Text\"\nimport { Tooltip } from \"../Tooltip\"\nimport { SELECT_STATES } from \"./tokens\"\n\nexport interface Option {\n value: string\n text: string\n}\n\nexport interface SelectProps\n extends BoxProps,\n Omit<React.SelectHTMLAttributes<HTMLSelectElement>, \"onSelect\" | \"size\"> {\n description?: string\n disabled?: boolean\n error?: string | boolean\n focus?: boolean\n hover?: boolean\n name?: string\n options: Option[]\n required?: boolean\n selected?: string\n title?: string\n onSelect?: (value: string) => void\n}\n\n/** A drop-down select menu */\nexport const Select: ForwardRefExoticComponent<\n SelectProps & { ref?: Ref<HTMLElement> }\n> = forwardRef(\n (\n {\n description,\n disabled,\n error,\n focus,\n hover,\n id,\n name,\n options,\n required,\n selected,\n title,\n onSelect,\n ...rest\n },\n ref\n ) => {\n const [boxProps, selectProps] = splitBoxProps(rest)\n // due to :has not available in Firefox yet, we need to add the styles to the label using JS\n const [selectedOption, setSelectedOption] = useState(selected)\n const [isFocused, setIsFocused] = useState(false)\n const [isHovered, setIsHovered] = useState(false)\n\n return (\n <Box width=\"100%\" {...boxProps}>\n {!!description && (\n <Tooltip pointer content={description} placement=\"top-end\">\n <Text variant=\"xs\" color=\"black60\" textAlign=\"right\">\n <u>What is this?</u>\n </Text>\n </Tooltip>\n )}\n\n <Container\n disabled={!!disabled}\n hover={!!hover || isHovered}\n error={error!}\n focus={!!focus || isFocused}\n title={title}\n onMouseEnter={() => setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n onFocus={() => setIsFocused(true)}\n onBlur={() => setIsFocused(false)}\n optionSelected={!!selectedOption}\n >\n <select\n ref={ref as any}\n id={id}\n disabled={disabled}\n name={name}\n value={selected}\n onChange={(event) => {\n onSelect && onSelect(event.target.value)\n setSelectedOption(event.target.value)\n }}\n {...selectProps}\n >\n {options.map(({ value, text }) => {\n return (\n <option value={value} key={value}>\n {text}\n </option>\n )\n })}\n </select>\n\n {!!title && (\n <StyledLabel htmlFor={id}>\n {title}\n\n <span />\n </StyledLabel>\n )}\n </Container>\n\n {required && !(error && typeof error === \"string\") && (\n <RequiredField mt={0.5} ml={1} />\n )}\n\n {error && typeof error === \"string\" && (\n <Text variant=\"xs\" mt={0.5} ml={1} color=\"red100\">\n {error}\n </Text>\n )}\n </Box>\n )\n }\n)\n\nSelect.displayName = \"Select\"\n\nconst resetMixin = css`\n appearance: none;\n background: none;\n border: none;\n outline: 0;\n text-indent: 0.01px;\n text-overflow: \"\";\n border-radius: 0;\n\n &:-moz-focusring {\n color: transparent;\n text-shadow: 0 0 0 black;\n }\n\n option:not(:checked) {\n color: black; /* prevent <option>s from becoming transparent as well */\n }\n`\n\n/** Creates a small caret */\nexport const caretMixin = css`\n &::after {\n content: \"\";\n cursor: inherit;\n width: 0;\n height: 0;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n right: ${themeGet(\"space.1\")};\n pointer-events: none;\n border-left: 4px solid transparent;\n border-right: 4px solid transparent;\n border-top: 4px solid\n ${({ disabled }) => {\n return disabled\n ? themeGet(\"colors.black10\")\n : themeGet(\"colors.black100\")\n }};\n }\n`\n\ntype ContainerProps = Required<\n Pick<SelectProps, \"disabled\" | \"error\" | \"hover\" | \"focus\">\n // adding optionSelected here to use it locally without adding it to the Select's props\n> & { optionSelected: boolean }\n\nconst Container = styled(Box)<ContainerProps>`\n position: relative;\n width: 100%;\n\n > select {\n ${resetMixin};\n width: 100%;\n /* 24px = space.1 + 4px-wide caret + space.1 */\n padding: 0 24px 0 ${themeGet(\"space.1\")};\n font-family: ${themeGet(\"fonts.sans\")};\n border: 1px solid;\n border-radius: 3px;\n border-color: ${themeGet(\"colors.black30\")};\n cursor: pointer;\n line-height: 1;\n transition: color 0.25s, background-color 0.25s, border-color 0.25s;\n\n ${(props) => {\n return css`\n ${SELECT_STATES.default}\n\n ${props.hover && SELECT_STATES.hover}\n ${props.focus && SELECT_STATES.focus}\n ${props.disabled && SELECT_STATES.disabled}\n ${props.error && SELECT_STATES.error}\n\n &:hover {\n ${SELECT_STATES.hover}\n }\n\n &:focus {\n ${SELECT_STATES.focus}\n }\n\n &:disabled {\n cursor: default;\n ${SELECT_STATES.disabled}\n }\n\n &:not(:focus):not(:has(option[value=\"\"]:checked)) {\n ${!(props.disabled || props.focus) && SELECT_STATES.completed}\n ${props.error && SELECT_STATES.error}\n }\n\n // Firefox polyfill for :has\n ${!props.focus &&\n !!props.optionSelected &&\n css`\n ${!(props.disabled || props.focus) && SELECT_STATES.completed}\n ${props.error && SELECT_STATES.error}\n `}\n\n &:not(:focus):has(option[value=\"\"]:checked) {\n ${props.title &&\n css`\n color: transparent;\n `}\n }\n\n // Firefox polyfill for :has\n ${!props.focus &&\n !props.optionSelected &&\n props.title &&\n css`\n color: transparent;\n `}\n `\n }};\n }\n\n ${caretMixin}\n`\n\nconst StyledLabel = styled.label`\n position: absolute;\n top: 50%;\n left: 5px;\n padding: 0 5px;\n pointer-events: none;\n transform: translateY(-50%);\n transition: ${FORM_ELEMENT_TRANSITION};\n transition-property: color, font-size, transform;\n background-color: transparent;\n font-family: ${themeGet(\"fonts.sans\")};\n\n & > span {\n background-color: ${themeGet(\"colors.white100\")};\n height: 100%;\n width: 100%;\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n z-index: -1;\n transition: ${FORM_ELEMENT_TRANSITION};\n transition-property: height, top;\n transition-delay: 0.1s;\n }\n`\n"],"mappings":"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"}
|
|
@@ -13,6 +13,7 @@ var _Box = require("../Box");
|
|
|
13
13
|
var _Text = require("../Text");
|
|
14
14
|
var _Tooltip = require("../Tooltip");
|
|
15
15
|
var _tokens = require("./tokens");
|
|
16
|
+
var _helpers = require("../../helpers");
|
|
16
17
|
var _excluded = ["error", "disabled", "focus", "hover", "characterLimit", "title", "description", "defaultValue", "required", "onChange"];
|
|
17
18
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
18
19
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -109,11 +110,11 @@ TextArea.displayName = "TextArea";
|
|
|
109
110
|
var StyledTextArea = _styledComponents.default.textarea.withConfig({
|
|
110
111
|
displayName: "TextArea__StyledTextArea",
|
|
111
112
|
componentId: "tnq35k-0"
|
|
112
|
-
})(["appearance:none;display:block;width:100%;padding:", ";resize:vertical;transition:border-color 0.25s,color 0.25s;outline:none;border:1px solid;border-radius:3px;font-family:", ";::placeholder{transition:color 0.25s,opacity 0.25s;}
|
|
113
|
+
})(["appearance:none;display:block;width:100%;padding:", ";resize:vertical;transition:border-color 0.25s,color 0.25s;outline:none;border:1px solid;border-radius:3px;font-family:", ";::placeholder{transition:color 0.25s,opacity 0.25s;}", ""], (0, _themeGet.themeGet)("space.1"), (0, _themeGet.themeGet)("fonts.sans"), function (props) {
|
|
113
114
|
return (0, _styledComponents.css)(["", " ", " ", " ", " ", " ", " &:hover{", "}&:not(:placeholder-shown){", " ", "}&:focus{outline:none;", ":not(:placeholder-shown){", " ", "}}&:disabled{cursor:default;", "}", ""], _tokens.TEXTAREA_STATES.default, props.hover && _tokens.TEXTAREA_STATES.hover, props.focus && _tokens.TEXTAREA_STATES.focus, props.active && _tokens.TEXTAREA_STATES.active, props.disabled && _tokens.TEXTAREA_STATES.disabled, props.error && _tokens.TEXTAREA_STATES.error, _tokens.TEXTAREA_STATES.hover, _tokens.TEXTAREA_STATES.completed, props.error && _tokens.TEXTAREA_STATES.error, _tokens.TEXTAREA_STATES.focus, !!props.placeholder && _tokens.TEXTAREA_STATES.active, props.error && _tokens.TEXTAREA_STATES.error, _tokens.TEXTAREA_STATES.disabled, props.title && (0, _styledComponents.css)(["::placeholder{opacity:0;}"]));
|
|
114
115
|
});
|
|
115
116
|
var StyledLabel = _styledComponents.default.label.withConfig({
|
|
116
117
|
displayName: "TextArea__StyledLabel",
|
|
117
118
|
componentId: "tnq35k-1"
|
|
118
|
-
})(["position:absolute;top:25px;left:6px;padding:0 5px;background-color:transparent;transform:translateY(-50%);transition:
|
|
119
|
+
})(["position:absolute;top:25px;left:6px;padding:0 5px;background-color:transparent;transform:translateY(-50%);transition:", ";transition-property:color,transform,padding,font-size;font-family:", ";pointer-events:none;& > span{background-color:", ";height:100%;width:100%;display:block;position:absolute;top:0;left:0;z-index:-1;transition:", ";transition-property:height,top;transition-delay:0.1s;}"], _helpers.FORM_ELEMENT_TRANSITION, (0, _themeGet.themeGet)("fonts.sans"), (0, _themeGet.themeGet)("colors.white100"), _helpers.FORM_ELEMENT_TRANSITION);
|
|
119
120
|
//# sourceMappingURL=TextArea.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextArea.js","names":["_themeGet","require","_react","_interopRequireWildcard","_styledComponents","_RequiredField","_Box","_Text","_Tooltip","_tokens","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","TextArea","React","forwardRef","_ref","ref","error","disabled","focus","hover","characterLimit","title","description","_ref$defaultValue","defaultValue","required","onChange","rest","_splitBoxProps","splitBoxProps","_splitBoxProps2","boxProps","inputProps","_useState","useState","_useState2","setValue","characterLimitExceeded","useCallback","text","Boolean","handleChange","event","nextValue","currentTarget","exceedsCharacterLimit","hasError","useMemo","createElement","Box","width","Tooltip","pointer","content","placement","Text","variant","color","textAlign","position","StyledTextArea","placeholder","StyledLabel","htmlFor","display","mt","mx","RequiredField","flex","ml","exports","displayName","styled","textarea","withConfig","componentId","themeGet","props","css","TEXTAREA_STATES","active","completed","label"],"sources":["../../../src/elements/TextArea/TextArea.tsx"],"sourcesContent":["import { themeGet } from \"@styled-system/theme-get\"\nimport React, { useCallback, useMemo, useState } from \"react\"\nimport styled, { css } from \"styled-components\"\nimport { RequiredField } from \"../../shared/RequiredField\"\nimport { Box, BoxProps, splitBoxProps } from \"../Box\"\nimport { Text } from \"../Text\"\nimport { Tooltip } from \"../Tooltip\"\nimport { TEXTAREA_STATES } from \"./tokens\"\n\nexport interface TextAreaProps\n extends BoxProps,\n Omit<\n React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n \"onChange\" | \"title\"\n > {\n active?: boolean\n characterLimit?: number\n defaultValue?: string\n description?: React.ReactNode\n required?: boolean\n title?: string\n disabled?: boolean\n error?: string | boolean\n focus?: boolean\n hover?: boolean\n onChange?(result: TextAreaChange): void\n}\n\nexport interface TextAreaChange {\n value: string\n exceedsCharacterLimit: boolean\n}\n\n/** TextArea */\nexport const TextArea: React.ForwardRefExoticComponent<\n TextAreaProps & { ref?: React.Ref<HTMLTextAreaElement> }\n> = React.forwardRef(\n (\n {\n error,\n disabled,\n focus,\n hover,\n characterLimit,\n title,\n description,\n defaultValue = \"\",\n required,\n onChange,\n ...rest\n },\n ref\n ) => {\n const [boxProps, inputProps] = splitBoxProps(rest)\n\n const [value, setValue] = useState(defaultValue)\n\n const characterLimitExceeded = useCallback(\n (text: string) => {\n return Boolean(characterLimit && text.length > characterLimit)\n },\n [characterLimit]\n )\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n const nextValue = event.currentTarget.value\n setValue(nextValue)\n onChange?.({\n value: nextValue,\n exceedsCharacterLimit: characterLimitExceeded(nextValue),\n })\n },\n [characterLimitExceeded, onChange]\n )\n\n const hasError = useMemo(\n () => Boolean(error || characterLimitExceeded(value)),\n [characterLimitExceeded, error, value]\n )\n\n return (\n <Box width=\"100%\" {...boxProps}>\n {!!description && (\n <Tooltip pointer content={description} placement=\"top-end\">\n <Text variant=\"xs\" color=\"black60\" textAlign=\"right\">\n <u>What is this?</u>\n </Text>\n </Tooltip>\n )}\n\n <Box position=\"relative\">\n <StyledTextArea\n ref={ref as any}\n disabled={disabled}\n focus={focus}\n hover={hover}\n error={hasError}\n onChange={handleChange}\n defaultValue={defaultValue}\n required={required}\n title={title}\n placeholder={inputProps.placeholder || \" \"}\n {...inputProps}\n />\n\n {!!title && (\n <StyledLabel htmlFor={inputProps.name}>\n {title}\n <span />\n </StyledLabel>\n )}\n </Box>\n\n {(required || characterLimit) && !(error && typeof error === \"string\") && (\n <Box display=\"flex\" mt={0.5} mx={1}>\n {required && <RequiredField flex={1} />}\n\n {typeof characterLimit !== \"undefined\" && (\n <Text\n flex={1}\n variant=\"xs\"\n color={characterLimitExceeded(value) ? \"red100\" : \"black60\"}\n textAlign=\"right\"\n >\n {value.length}/{characterLimit}\n </Text>\n )}\n </Box>\n )}\n\n {error && typeof error === \"string\" && (\n <Text variant=\"xs\" color=\"red100\" mt={0.5} ml={1}>\n {error}\n </Text>\n )}\n </Box>\n )\n }\n)\n\nTextArea.displayName = \"TextArea\"\n\ntype StyledTextAreaProps = Pick<\n TextAreaProps,\n \"disabled\" | \"error\" | \"hover\" | \"focus\" | \"active\" | \"title\"\n>\n\nconst StyledTextArea = styled.textarea<StyledTextAreaProps>`\n appearance: none;\n display: block;\n width: 100%;\n padding: ${themeGet(\"space.1\")};\n resize: vertical;\n transition: border-color 0.25s, color 0.25s;\n outline: none;\n border: 1px solid;\n border-radius: 3px;\n font-family: ${themeGet(\"fonts.sans\")};\n\n ::placeholder {\n transition: color 0.25s, opacity 0.25s;\n }\n\n &:-webkit-autofill,\n &:-webkit-autofill:hover,\n &:-webkit-autofill:focus {\n // 1000px since the textarea dimensions are adjustable\n -webkit-box-shadow: 0 0 0px 1000px ${themeGet(\"colors.white100\")} inset;\n }\n\n ${(props) => {\n return css`\n ${TEXTAREA_STATES.default}\n ${props.hover && TEXTAREA_STATES.hover}\n ${props.focus && TEXTAREA_STATES.focus}\n ${props.active && TEXTAREA_STATES.active}\n ${props.disabled && TEXTAREA_STATES.disabled}\n ${props.error && TEXTAREA_STATES.error}\n\n &:hover {\n ${TEXTAREA_STATES.hover}\n }\n\n &:not(:placeholder-shown) {\n ${TEXTAREA_STATES.completed}\n ${props.error && TEXTAREA_STATES.error}\n }\n\n &:focus {\n outline: none;\n ${TEXTAREA_STATES.focus}\n\n :not(:placeholder-shown) {\n ${!!props.placeholder && TEXTAREA_STATES.active}\n ${props.error && TEXTAREA_STATES.error}\n }\n }\n\n &:disabled {\n cursor: default;\n ${TEXTAREA_STATES.disabled}\n }\n\n ${props.title &&\n css`\n ::placeholder {\n opacity: 0;\n }\n `}\n `\n }}\n`\nconst StyledLabel = styled.label`\n position: absolute;\n top: 25px;\n left: 6px;\n padding: 0 5px;\n background-color: transparent;\n transform: translateY(-50%);\n transition: 0.25s cubic-bezier(0.64, 0.05, 0.36, 1);\n transition-property: color, transform, padding, font-size;\n font-family: ${themeGet(\"fonts.sans\")};\n pointer-events: none;\n\n & > span {\n background-color: ${themeGet(\"colors.white100\")};\n height: 100%;\n width: 100%;\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n z-index: -1;\n transition: 0.25s cubic-bezier(0.64, 0.05, 0.36, 1);\n transition-property: height, top;\n transition-delay: 0.1s;\n }\n`\n"],"mappings":";;;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,uBAAA,CAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAD,uBAAA,CAAAF,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,IAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AACA,IAAAQ,OAAA,GAAAR,OAAA;AAA0C,IAAAS,SAAA;AAAA,SAAAC,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAT,wBAAAa,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,4BAAAG,OAAA,EAAAH,GAAA,UAAAI,KAAA,GAAAT,wBAAA,CAAAC,WAAA,OAAAQ,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAL,GAAA,YAAAI,KAAA,CAAAE,GAAA,CAAAN,GAAA,SAAAO,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAZ,GAAA,QAAAY,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAf,GAAA,EAAAY,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAX,GAAA,EAAAY,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAZ,GAAA,CAAAY,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAH,GAAA,MAAAI,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAjB,GAAA,EAAAO,MAAA,YAAAA,MAAA;AAAA,SAAAW,SAAA,IAAAA,QAAA,GAAAT,MAAA,CAAAU,MAAA,GAAAV,MAAA,CAAAU,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAV,GAAA,IAAAa,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAb,GAAA,KAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,gBAAAS,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAH,SAAA;AAAA,SAAAI,eAAAC,GAAA,EAAAN,CAAA,WAAAO,eAAA,CAAAD,GAAA,KAAAE,qBAAA,CAAAF,GAAA,EAAAN,CAAA,KAAAS,2BAAA,CAAAH,GAAA,EAAAN,CAAA,KAAAU,gBAAA;AAAA,SAAAA,iBAAA,cAAAC,SAAA;AAAA,SAAAF,4BAAAG,CAAA,EAAAC,MAAA,SAAAD,CAAA,qBAAAA,CAAA,sBAAAE,iBAAA,CAAAF,CAAA,EAAAC,MAAA,OAAAE,CAAA,GAAA5B,MAAA,CAAAI,SAAA,CAAAyB,QAAA,CAAAvB,IAAA,CAAAmB,CAAA,EAAAK,KAAA,aAAAF,CAAA,iBAAAH,CAAA,CAAAM,WAAA,EAAAH,CAAA,GAAAH,CAAA,CAAAM,WAAA,CAAAC,IAAA,MAAAJ,CAAA,cAAAA,CAAA,mBAAAK,KAAA,CAAAC,IAAA,CAAAT,CAAA,OAAAG,CAAA,+DAAAO,IAAA,CAAAP,CAAA,UAAAD,iBAAA,CAAAF,CAAA,EAAAC,MAAA;AAAA,SAAAC,kBAAAR,GAAA,EAAAiB,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAAjB,GAAA,CAAAJ,MAAA,EAAAqB,GAAA,GAAAjB,GAAA,CAAAJ,MAAA,WAAAF,CAAA,MAAAwB,IAAA,OAAAJ,KAAA,CAAAG,GAAA,GAAAvB,CAAA,GAAAuB,GAAA,EAAAvB,CAAA,MAAAwB,IAAA,CAAAxB,CAAA,IAAAM,GAAA,CAAAN,CAAA,YAAAwB,IAAA;AAAA,SAAAhB,sBAAAF,GAAA,EAAAN,CAAA,QAAAyB,EAAA,WAAAnB,GAAA,gCAAAoB,MAAA,IAAApB,GAAA,CAAAoB,MAAA,CAAAC,QAAA,KAAArB,GAAA,4BAAAmB,EAAA,QAAAG,EAAA,EAAAC,EAAA,EAAAC,EAAA,EAAAC,EAAA,EAAAC,IAAA,OAAAC,EAAA,OAAAC,EAAA,iBAAAJ,EAAA,IAAAL,EAAA,GAAAA,EAAA,CAAAhC,IAAA,CAAAa,GAAA,GAAA6B,IAAA,QAAAnC,CAAA,QAAAb,MAAA,CAAAsC,EAAA,MAAAA,EAAA,UAAAQ,EAAA,uBAAAA,EAAA,IAAAL,EAAA,GAAAE,EAAA,CAAArC,IAAA,CAAAgC,EAAA,GAAAW,IAAA,MAAAJ,IAAA,CAAAK,IAAA,CAAAT,EAAA,CAAAU,KAAA,GAAAN,IAAA,CAAA9B,MAAA,KAAAF,CAAA,GAAAiC,EAAA,sBAAAM,GAAA,IAAAL,EAAA,OAAAL,EAAA,GAAAU,GAAA,yBAAAN,EAAA,YAAAR,EAAA,CAAAe,MAAA,KAAAT,EAAA,GAAAN,EAAA,CAAAe,MAAA,IAAArD,MAAA,CAAA4C,EAAA,MAAAA,EAAA,2BAAAG,EAAA,QAAAL,EAAA,aAAAG,IAAA;AAAA,SAAAzB,gBAAAD,GAAA,QAAAc,KAAA,CAAAqB,OAAA,CAAAnC,GAAA,UAAAA,GAAA;AAAA,SAAAoC,yBAAAvC,MAAA,EAAAwC,QAAA,QAAAxC,MAAA,yBAAAJ,MAAA,GAAA6C,6BAAA,CAAAzC,MAAA,EAAAwC,QAAA,OAAArD,GAAA,EAAAU,CAAA,MAAAb,MAAA,CAAA0D,qBAAA,QAAAC,gBAAA,GAAA3D,MAAA,CAAA0D,qBAAA,CAAA1C,MAAA,QAAAH,CAAA,MAAAA,CAAA,GAAA8C,gBAAA,CAAA5C,MAAA,EAAAF,CAAA,MAAAV,GAAA,GAAAwD,gBAAA,CAAA9C,CAAA,OAAA2C,QAAA,CAAAI,OAAA,CAAAzD,GAAA,uBAAAH,MAAA,CAAAI,SAAA,CAAAyD,oBAAA,CAAAvD,IAAA,CAAAU,MAAA,EAAAb,GAAA,aAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,cAAAS,MAAA;AAAA,SAAA6C,8BAAAzC,MAAA,EAAAwC,QAAA,QAAAxC,MAAA,yBAAAJ,MAAA,WAAAkD,UAAA,GAAA9D,MAAA,CAAA+D,IAAA,CAAA/C,MAAA,OAAAb,GAAA,EAAAU,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAAiD,UAAA,CAAA/C,MAAA,EAAAF,CAAA,MAAAV,GAAA,GAAA2D,UAAA,CAAAjD,CAAA,OAAA2C,QAAA,CAAAI,OAAA,CAAAzD,GAAA,kBAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,YAAAS,MAAA;AA0B1C;AACO,IAAMoD,QAEZ,gBAAGC,cAAK,CAACC,UAAU,CAClB,UAAAC,IAAA,EAcEC,GAAG,EACA;EAAA,IAbDC,KAAK,GAAAF,IAAA,CAALE,KAAK;IACLC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IACRC,KAAK,GAAAJ,IAAA,CAALI,KAAK;IACLC,KAAK,GAAAL,IAAA,CAALK,KAAK;IACLC,cAAc,GAAAN,IAAA,CAAdM,cAAc;IACdC,KAAK,GAAAP,IAAA,CAALO,KAAK;IACLC,WAAW,GAAAR,IAAA,CAAXQ,WAAW;IAAAC,iBAAA,GAAAT,IAAA,CACXU,YAAY;IAAZA,YAAY,GAAAD,iBAAA,cAAG,EAAE,GAAAA,iBAAA;IACjBE,QAAQ,GAAAX,IAAA,CAARW,QAAQ;IACRC,QAAQ,GAAAZ,IAAA,CAARY,QAAQ;IACLC,IAAI,GAAAzB,wBAAA,CAAAY,IAAA,EAAAlF,SAAA;EAIT,IAAAgG,cAAA,GAA+B,IAAAC,kBAAa,EAACF,IAAI,CAAC;IAAAG,eAAA,GAAAjE,cAAA,CAAA+D,cAAA;IAA3CG,QAAQ,GAAAD,eAAA;IAAEE,UAAU,GAAAF,eAAA;EAE3B,IAAAG,SAAA,GAA0B,IAAAC,eAAQ,EAACV,YAAY,CAAC;IAAAW,UAAA,GAAAtE,cAAA,CAAAoE,SAAA;IAAzCnC,KAAK,GAAAqC,UAAA;IAAEC,QAAQ,GAAAD,UAAA;EAEtB,IAAME,sBAAsB,GAAG,IAAAC,kBAAW,EACxC,UAACC,IAAY,EAAK;IAChB,OAAOC,OAAO,CAACpB,cAAc,IAAImB,IAAI,CAAC7E,MAAM,GAAG0D,cAAc,CAAC;EAChE,CAAC,EACD,CAACA,cAAc,CAAC,CACjB;EAED,IAAMqB,YAAY,GAAG,IAAAH,kBAAW,EAC9B,UAACI,KAA6C,EAAK;IACjD,IAAMC,SAAS,GAAGD,KAAK,CAACE,aAAa,CAAC9C,KAAK;IAC3CsC,QAAQ,CAACO,SAAS,CAAC;IACnBjB,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAG;MACT5B,KAAK,EAAE6C,SAAS;MAChBE,qBAAqB,EAAER,sBAAsB,CAACM,SAAS;IACzD,CAAC,CAAC;EACJ,CAAC,EACD,CAACN,sBAAsB,EAAEX,QAAQ,CAAC,CACnC;EAED,IAAMoB,QAAQ,GAAG,IAAAC,cAAO,EACtB;IAAA,OAAMP,OAAO,CAACxB,KAAK,IAAIqB,sBAAsB,CAACvC,KAAK,CAAC,CAAC;EAAA,GACrD,CAACuC,sBAAsB,EAAErB,KAAK,EAAElB,KAAK,CAAC,CACvC;EAED,oBACE1E,MAAA,CAAAiB,OAAA,CAAA2G,aAAA,CAACxH,IAAA,CAAAyH,GAAG,EAAA7F,QAAA;IAAC8F,KAAK,EAAC;EAAM,GAAKnB,QAAQ,GAC3B,CAAC,CAACT,WAAW,iBACZlG,MAAA,CAAAiB,OAAA,CAAA2G,aAAA,CAACtH,QAAA,CAAAyH,OAAO;IAACC,OAAO;IAACC,OAAO,EAAE/B,WAAY;IAACgC,SAAS,EAAC;EAAS,gBACxDlI,MAAA,CAAAiB,OAAA,CAAA2G,aAAA,CAACvH,KAAA,CAAA8H,IAAI;IAACC,OAAO,EAAC,IAAI;IAACC,KAAK,EAAC,SAAS;IAACC,SAAS,EAAC;EAAO,gBAClDtI,MAAA,CAAAiB,OAAA,CAAA2G,aAAA,YAAG,eAAa,CAAI,CACf,CAEV,eAED5H,MAAA,CAAAiB,OAAA,CAAA2G,aAAA,CAACxH,IAAA,CAAAyH,GAAG;IAACU,QAAQ,EAAC;EAAU,gBACtBvI,MAAA,CAAAiB,OAAA,CAAA2G,aAAA,CAACY,cAAc,EAAAxG,QAAA;IACb2D,GAAG,EAAEA,GAAW;IAChBE,QAAQ,EAAEA,QAAS;IACnBC,KAAK,EAAEA,KAAM;IACbC,KAAK,EAAEA,KAAM;IACbH,KAAK,EAAE8B,QAAS;IAChBpB,QAAQ,EAAEe,YAAa;IACvBjB,YAAY,EAAEA,YAAa;IAC3BC,QAAQ,EAAEA,QAAS;IACnBJ,KAAK,EAAEA,KAAM;IACbwC,WAAW,EAAE7B,UAAU,CAAC6B,WAAW,IAAI;EAAI,GACvC7B,UAAU,EACd,EAED,CAAC,CAACX,KAAK,iBACNjG,MAAA,CAAAiB,OAAA,CAAA2G,aAAA,CAACc,WAAW;IAACC,OAAO,EAAE/B,UAAU,CAACrD;EAAK,GACnC0C,KAAK,eACNjG,MAAA,CAAAiB,OAAA,CAAA2G,aAAA,cAAQ,CAEX,CACG,EAEL,CAACvB,QAAQ,IAAIL,cAAc,KAAK,EAAEJ,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,CAAC,iBACpE5F,MAAA,CAAAiB,OAAA,CAAA2G,aAAA,CAACxH,IAAA,CAAAyH,GAAG;IAACe,OAAO,EAAC,MAAM;IAACC,EAAE,EAAE,GAAI;IAACC,EAAE,EAAE;EAAE,GAChCzC,QAAQ,iBAAIrG,MAAA,CAAAiB,OAAA,CAAA2G,aAAA,CAACzH,cAAA,CAAA4I,aAAa;IAACC,IAAI,EAAE;EAAE,EAAG,EAEtC,OAAOhD,cAAc,KAAK,WAAW,iBACpChG,MAAA,CAAAiB,OAAA,CAAA2G,aAAA,CAACvH,KAAA,CAAA8H,IAAI;IACHa,IAAI,EAAE,CAAE;IACRZ,OAAO,EAAC,IAAI;IACZC,KAAK,EAAEpB,sBAAsB,CAACvC,KAAK,CAAC,GAAG,QAAQ,GAAG,SAAU;IAC5D4D,SAAS,EAAC;EAAO,GAEhB5D,KAAK,CAACpC,MAAM,EAAC,GAAC,EAAC0D,cAAc,CAEjC,CAEJ,EAEAJ,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,iBACjC5F,MAAA,CAAAiB,OAAA,CAAA2G,aAAA,CAACvH,KAAA,CAAA8H,IAAI;IAACC,OAAO,EAAC,IAAI;IAACC,KAAK,EAAC,QAAQ;IAACQ,EAAE,EAAE,GAAI;IAACI,EAAE,EAAE;EAAE,GAC9CrD,KAAK,CAET,CACG;AAEV,CAAC,CACF;AAAAsD,OAAA,CAAA3D,QAAA,GAAAA,QAAA;AAEDA,QAAQ,CAAC4D,WAAW,GAAG,UAAU;AAOjC,IAAMX,cAAc,GAAGY,yBAAM,CAACC,QAAQ,CAAAC,UAAA;EAAAH,WAAA;EAAAI,WAAA;AAAA,qWAIzB,IAAAC,kBAAQ,EAAC,SAAS,CAAC,EAMf,IAAAA,kBAAQ,EAAC,YAAY,CAAC,EAUE,IAAAA,kBAAQ,EAAC,iBAAiB,CAAC,EAGhE,UAACC,KAAK,EAAK;EACX,WAAOC,qBAAG,uLACNC,uBAAe,CAAC1I,OAAO,EACvBwI,KAAK,CAAC1D,KAAK,IAAI4D,uBAAe,CAAC5D,KAAK,EACpC0D,KAAK,CAAC3D,KAAK,IAAI6D,uBAAe,CAAC7D,KAAK,EACpC2D,KAAK,CAACG,MAAM,IAAID,uBAAe,CAACC,MAAM,EACtCH,KAAK,CAAC5D,QAAQ,IAAI8D,uBAAe,CAAC9D,QAAQ,EAC1C4D,KAAK,CAAC7D,KAAK,IAAI+D,uBAAe,CAAC/D,KAAK,EAGlC+D,uBAAe,CAAC5D,KAAK,EAIrB4D,uBAAe,CAACE,SAAS,EACzBJ,KAAK,CAAC7D,KAAK,IAAI+D,uBAAe,CAAC/D,KAAK,EAKpC+D,uBAAe,CAAC7D,KAAK,EAGnB,CAAC,CAAC2D,KAAK,CAAChB,WAAW,IAAIkB,uBAAe,CAACC,MAAM,EAC7CH,KAAK,CAAC7D,KAAK,IAAI+D,uBAAe,CAAC/D,KAAK,EAMtC+D,uBAAe,CAAC9D,QAAQ,EAG1B4D,KAAK,CAACxD,KAAK,QACbyD,qBAAG,gCAIF;AAEL,CAAC,CACF;AACD,IAAMhB,WAAW,GAAGU,yBAAM,CAACU,KAAK,CAAAR,UAAA;EAAAH,WAAA;EAAAI,WAAA;AAAA,kdASf,IAAAC,kBAAQ,EAAC,YAAY,CAAC,EAIf,IAAAA,kBAAQ,EAAC,iBAAiB,CAAC,CAYlD"}
|
|
1
|
+
{"version":3,"file":"TextArea.js","names":["_themeGet","require","_react","_interopRequireWildcard","_styledComponents","_RequiredField","_Box","_Text","_Tooltip","_tokens","_helpers","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","TextArea","React","forwardRef","_ref","ref","error","disabled","focus","hover","characterLimit","title","description","_ref$defaultValue","defaultValue","required","onChange","rest","_splitBoxProps","splitBoxProps","_splitBoxProps2","boxProps","inputProps","_useState","useState","_useState2","setValue","characterLimitExceeded","useCallback","text","Boolean","handleChange","event","nextValue","currentTarget","exceedsCharacterLimit","hasError","useMemo","createElement","Box","width","Tooltip","pointer","content","placement","Text","variant","color","textAlign","position","StyledTextArea","placeholder","StyledLabel","htmlFor","display","mt","mx","RequiredField","flex","ml","exports","displayName","styled","textarea","withConfig","componentId","themeGet","props","css","TEXTAREA_STATES","active","completed","label","FORM_ELEMENT_TRANSITION"],"sources":["../../../src/elements/TextArea/TextArea.tsx"],"sourcesContent":["import { themeGet } from \"@styled-system/theme-get\"\nimport React, { useCallback, useMemo, useState } from \"react\"\nimport styled, { css } from \"styled-components\"\nimport { RequiredField } from \"../../shared/RequiredField\"\nimport { Box, BoxProps, splitBoxProps } from \"../Box\"\nimport { Text } from \"../Text\"\nimport { Tooltip } from \"../Tooltip\"\nimport { TEXTAREA_STATES } from \"./tokens\"\nimport { FORM_ELEMENT_TRANSITION } from \"../../helpers\"\n\nexport interface TextAreaProps\n extends BoxProps,\n Omit<\n React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n \"onChange\" | \"title\"\n > {\n active?: boolean\n characterLimit?: number\n defaultValue?: string\n description?: React.ReactNode\n required?: boolean\n title?: string\n disabled?: boolean\n error?: string | boolean\n focus?: boolean\n hover?: boolean\n onChange?(result: TextAreaChange): void\n}\n\nexport interface TextAreaChange {\n value: string\n exceedsCharacterLimit: boolean\n}\n\n/** TextArea */\nexport const TextArea: React.ForwardRefExoticComponent<\n TextAreaProps & { ref?: React.Ref<HTMLTextAreaElement> }\n> = React.forwardRef(\n (\n {\n error,\n disabled,\n focus,\n hover,\n characterLimit,\n title,\n description,\n defaultValue = \"\",\n required,\n onChange,\n ...rest\n },\n ref\n ) => {\n const [boxProps, inputProps] = splitBoxProps(rest)\n\n const [value, setValue] = useState(defaultValue)\n\n const characterLimitExceeded = useCallback(\n (text: string) => {\n return Boolean(characterLimit && text.length > characterLimit)\n },\n [characterLimit]\n )\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n const nextValue = event.currentTarget.value\n setValue(nextValue)\n onChange?.({\n value: nextValue,\n exceedsCharacterLimit: characterLimitExceeded(nextValue),\n })\n },\n [characterLimitExceeded, onChange]\n )\n\n const hasError = useMemo(\n () => Boolean(error || characterLimitExceeded(value)),\n [characterLimitExceeded, error, value]\n )\n\n return (\n <Box width=\"100%\" {...boxProps}>\n {!!description && (\n <Tooltip pointer content={description} placement=\"top-end\">\n <Text variant=\"xs\" color=\"black60\" textAlign=\"right\">\n <u>What is this?</u>\n </Text>\n </Tooltip>\n )}\n\n <Box position=\"relative\">\n <StyledTextArea\n ref={ref as any}\n disabled={disabled}\n focus={focus}\n hover={hover}\n error={hasError}\n onChange={handleChange}\n defaultValue={defaultValue}\n required={required}\n title={title}\n placeholder={inputProps.placeholder || \" \"}\n {...inputProps}\n />\n\n {!!title && (\n <StyledLabel htmlFor={inputProps.name}>\n {title}\n <span />\n </StyledLabel>\n )}\n </Box>\n\n {(required || characterLimit) && !(error && typeof error === \"string\") && (\n <Box display=\"flex\" mt={0.5} mx={1}>\n {required && <RequiredField flex={1} />}\n\n {typeof characterLimit !== \"undefined\" && (\n <Text\n flex={1}\n variant=\"xs\"\n color={characterLimitExceeded(value) ? \"red100\" : \"black60\"}\n textAlign=\"right\"\n >\n {value.length}/{characterLimit}\n </Text>\n )}\n </Box>\n )}\n\n {error && typeof error === \"string\" && (\n <Text variant=\"xs\" color=\"red100\" mt={0.5} ml={1}>\n {error}\n </Text>\n )}\n </Box>\n )\n }\n)\n\nTextArea.displayName = \"TextArea\"\n\ntype StyledTextAreaProps = Pick<\n TextAreaProps,\n \"disabled\" | \"error\" | \"hover\" | \"focus\" | \"active\" | \"title\"\n>\n\nconst StyledTextArea = styled.textarea<StyledTextAreaProps>`\n appearance: none;\n display: block;\n width: 100%;\n padding: ${themeGet(\"space.1\")};\n resize: vertical;\n transition: border-color 0.25s, color 0.25s;\n outline: none;\n border: 1px solid;\n border-radius: 3px;\n font-family: ${themeGet(\"fonts.sans\")};\n\n ::placeholder {\n transition: color 0.25s, opacity 0.25s;\n }\n\n ${(props) => {\n return css`\n ${TEXTAREA_STATES.default}\n ${props.hover && TEXTAREA_STATES.hover}\n ${props.focus && TEXTAREA_STATES.focus}\n ${props.active && TEXTAREA_STATES.active}\n ${props.disabled && TEXTAREA_STATES.disabled}\n ${props.error && TEXTAREA_STATES.error}\n\n &:hover {\n ${TEXTAREA_STATES.hover}\n }\n\n &:not(:placeholder-shown) {\n ${TEXTAREA_STATES.completed}\n ${props.error && TEXTAREA_STATES.error}\n }\n\n &:focus {\n outline: none;\n ${TEXTAREA_STATES.focus}\n\n :not(:placeholder-shown) {\n ${!!props.placeholder && TEXTAREA_STATES.active}\n ${props.error && TEXTAREA_STATES.error}\n }\n }\n\n &:disabled {\n cursor: default;\n ${TEXTAREA_STATES.disabled}\n }\n\n ${props.title &&\n css`\n ::placeholder {\n opacity: 0;\n }\n `}\n `\n }}\n`\nconst StyledLabel = styled.label`\n position: absolute;\n top: 25px;\n left: 6px;\n padding: 0 5px;\n background-color: transparent;\n transform: translateY(-50%);\n transition: ${FORM_ELEMENT_TRANSITION};\n transition-property: color, transform, padding, font-size;\n font-family: ${themeGet(\"fonts.sans\")};\n pointer-events: none;\n\n & > span {\n background-color: ${themeGet(\"colors.white100\")};\n height: 100%;\n width: 100%;\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n z-index: -1;\n transition: ${FORM_ELEMENT_TRANSITION};\n transition-property: height, top;\n transition-delay: 0.1s;\n }\n`\n"],"mappings":"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"}
|
package/dist/helpers/index.d.ts
CHANGED
package/dist/helpers/index.js
CHANGED
|
@@ -80,4 +80,15 @@ Object.keys(_visuallyDisableScrollbar).forEach(function (key) {
|
|
|
80
80
|
}
|
|
81
81
|
});
|
|
82
82
|
});
|
|
83
|
+
var _transition = require("./transition");
|
|
84
|
+
Object.keys(_transition).forEach(function (key) {
|
|
85
|
+
if (key === "default" || key === "__esModule") return;
|
|
86
|
+
if (key in exports && exports[key] === _transition[key]) return;
|
|
87
|
+
Object.defineProperty(exports, key, {
|
|
88
|
+
enumerable: true,
|
|
89
|
+
get: function get() {
|
|
90
|
+
return _transition[key];
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
});
|
|
83
94
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_isText","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_color","_injectGlobalStyles","_media","_shadow","_space","_visuallyDisableScrollbar"],"sources":["../../src/helpers/index.ts"],"sourcesContent":["export * from \"./isText\"\nexport * from \"./color\"\nexport * from \"./injectGlobalStyles\"\nexport * from \"./media\"\nexport * from \"./shadow\"\nexport * from \"./space\"\nexport * from \"./visuallyDisableScrollbar\"\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_isText","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_color","_injectGlobalStyles","_media","_shadow","_space","_visuallyDisableScrollbar","_transition"],"sources":["../../src/helpers/index.ts"],"sourcesContent":["export * from \"./isText\"\nexport * from \"./color\"\nexport * from \"./injectGlobalStyles\"\nexport * from \"./media\"\nexport * from \"./shadow\"\nexport * from \"./space\"\nexport * from \"./visuallyDisableScrollbar\"\nexport * from \"./transition\"\n"],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/** Transition specifically for the StyledLabel and Container in multiple components.
|
|
2
|
+
* It animates color, transform, padding, and font-size properties with 0.25s duration and custom cubic-bezier easing function. **/
|
|
3
|
+
export declare const FORM_ELEMENT_TRANSITION = "0.25s cubic-bezier(0.64, 0.05, 0.36, 1)";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.FORM_ELEMENT_TRANSITION = void 0;
|
|
7
|
+
/** Transition specifically for the StyledLabel and Container in multiple components.
|
|
8
|
+
* It animates color, transform, padding, and font-size properties with 0.25s duration and custom cubic-bezier easing function. **/
|
|
9
|
+
var FORM_ELEMENT_TRANSITION = "0.25s cubic-bezier(0.64, 0.05, 0.36, 1)";
|
|
10
|
+
exports.FORM_ELEMENT_TRANSITION = FORM_ELEMENT_TRANSITION;
|
|
11
|
+
//# sourceMappingURL=transition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transition.js","names":["FORM_ELEMENT_TRANSITION","exports"],"sources":["../../src/helpers/transition.ts"],"sourcesContent":["/** Transition specifically for the StyledLabel and Container in multiple components.\n * It animates color, transform, padding, and font-size properties with 0.25s duration and custom cubic-bezier easing function. **/\nexport const FORM_ELEMENT_TRANSITION = \"0.25s cubic-bezier(0.64, 0.05, 0.36, 1)\"\n"],"mappings":";;;;;;AAAA;AACA;AACO,IAAMA,uBAAuB,GAAG,yCAAyC;AAAAC,OAAA,CAAAD,uBAAA,GAAAA,uBAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@artsy/palette",
|
|
3
|
-
"version": "37.0.0-canary.1250.
|
|
3
|
+
"version": "37.0.0-canary.1250.29227.0",
|
|
4
4
|
"description": "Design system library for react components",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"publishConfig": {
|
|
@@ -182,5 +182,5 @@
|
|
|
182
182
|
"url": "http://localhost"
|
|
183
183
|
}
|
|
184
184
|
},
|
|
185
|
-
"gitHead": "
|
|
185
|
+
"gitHead": "d3e53f00df35db744dcb2ff737b0de2695baa3f0"
|
|
186
186
|
}
|