@artsy/palette 43.2.0 → 43.3.1-canary.1463.32455.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.
Files changed (29) hide show
  1. package/dist/elements/AutocompleteInput/AutocompleteInput.js +3 -11
  2. package/dist/elements/AutocompleteInput/AutocompleteInput.js.map +1 -1
  3. package/dist/elements/FilterSelect/Components/FilterSelectContext.d.ts +2 -1
  4. package/dist/elements/FilterSelect/Components/FilterSelectContext.js +1 -0
  5. package/dist/elements/FilterSelect/Components/FilterSelectContext.js.map +1 -1
  6. package/dist/elements/FilterSelect/FilterSelect.js +2 -1
  7. package/dist/elements/FilterSelect/FilterSelect.js.map +1 -1
  8. package/dist/elements/FilterSelect/FilterSelect.story.js +6 -0
  9. package/dist/elements/FilterSelect/FilterSelect.story.js.map +1 -1
  10. package/dist/elements/PhoneInput/PhoneInput.d.ts +1 -16
  11. package/dist/elements/PhoneInput/PhoneInput.js +45 -188
  12. package/dist/elements/PhoneInput/PhoneInput.js.map +1 -1
  13. package/dist/elements/PhoneInput/PhoneInput.story.d.ts +1 -0
  14. package/dist/elements/PhoneInput/PhoneInput.story.js +52 -1
  15. package/dist/elements/PhoneInput/PhoneInput.story.js.map +1 -1
  16. package/dist/elements/PhoneInput/PhoneInputList.d.ts +22 -0
  17. package/dist/elements/PhoneInput/PhoneInputList.js +143 -0
  18. package/dist/elements/PhoneInput/PhoneInputList.js.map +1 -0
  19. package/dist/elements/PhoneInput/PhoneInputList.story.d.ts +6 -0
  20. package/dist/elements/PhoneInput/PhoneInputList.story.js +197 -0
  21. package/dist/elements/PhoneInput/PhoneInputList.story.js.map +1 -0
  22. package/dist/elements/PhoneInput/tokens.js +5 -5
  23. package/dist/elements/PhoneInput/tokens.js.map +1 -1
  24. package/dist/utils/useMouseActivity.d.ts +8 -0
  25. package/dist/utils/useMouseActivity.js +28 -0
  26. package/dist/utils/useMouseActivity.js.map +1 -0
  27. package/dist/utils/useWidthOf.js +11 -9
  28. package/dist/utils/useWidthOf.js.map +1 -1
  29. package/package.json +2 -2
@@ -12,11 +12,12 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
12
12
  var _styledSystem = require("styled-system");
13
13
  var _utils = require("../../utils");
14
14
  var _Box = require("../Box");
15
- var _Input = require("../Input");
16
15
  var _Text = require("../Text");
17
16
  var _tokens = require("./tokens");
18
- var _useKeyboardListNavigation = require("use-keyboard-list-navigation");
19
17
  var _RequiredField = require("../../shared/RequiredField");
18
+ var _PhoneInputList = require("./PhoneInputList");
19
+ var _Select = require("../Select");
20
+ var _Clickable = require("../Clickable");
20
21
  var _excluded = ["className", "options", "disabled", "error", "focus", "hover", "required", "onSelect", "dropdownValue", "inputValue"];
21
22
  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); }
22
23
  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; }
@@ -30,15 +31,6 @@ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefine
30
31
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
31
32
  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; }
32
33
  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; }
33
- /**
34
- * The option structure for the list in the dropdown menu
35
- *
36
- * @interface Option
37
- * @property {string} `text` is the content that will be displayed as selected option
38
- * @property {string} `name` is the content that will be displayed in the dropdown list
39
- * @property {string} `value` is the value that will be passed to onSelect
40
- */
41
-
42
34
  var PhoneInput = exports.PhoneInput = /*#__PURE__*/_react.default.forwardRef(function (_ref, forwardedRef) {
43
35
  var className = _ref.className,
44
36
  options = _ref.options,
@@ -55,9 +47,7 @@ var PhoneInput = exports.PhoneInput = /*#__PURE__*/_react.default.forwardRef(fun
55
47
  throw new Error("Palette PhoneInput requires at least 1 option in the options prop");
56
48
  }
57
49
  var inputRef = (0, _react.useRef)(null);
58
- var searchInputRef = (0, _react.useRef)(null);
59
50
  var containerRef = (0, _react.useRef)(null);
60
- var countryPickerRef = (0, _react.useRef)(null);
61
51
  var defaultOption = (0, _react.useMemo)(function () {
62
52
  return dropdownValue && options.find(function (option) {
63
53
  return option.value === dropdownValue;
@@ -69,82 +59,36 @@ var PhoneInput = exports.PhoneInput = /*#__PURE__*/_react.default.forwardRef(fun
69
59
  inputProps = _splitBoxProps2[1];
70
60
  var _useState = (0, _react.useState)(false),
71
61
  _useState2 = _slicedToArray(_useState, 2),
72
- isDropdownVisible = _useState2[0],
73
- setDropdownVisible = _useState2[1];
74
- var _useState3 = (0, _react.useState)(""),
62
+ open = _useState2[0],
63
+ setOpen = _useState2[1];
64
+ var _useState3 = (0, _react.useState)(defaultOption || options[0]),
75
65
  _useState4 = _slicedToArray(_useState3, 2),
76
- searchQuery = _useState4[0],
77
- setSearchQuery = _useState4[1];
78
- var _useState5 = (0, _react.useState)(defaultOption || options[0]),
79
- _useState6 = _slicedToArray(_useState5, 2),
80
- selectedOption = _useState6[0],
81
- setSelectedOption = _useState6[1];
82
- var filteredOptions = options.filter(function (option) {
83
- if (searchQuery !== "") {
84
- var filteredCountry = option.text.toLowerCase().includes(searchQuery.toLowerCase()) || option.name.toLowerCase().includes(searchQuery.toLowerCase());
85
- return filteredCountry;
86
- }
87
- return true;
88
- });
66
+ selectedOption = _useState4[0],
67
+ setSelectedOption = _useState4[1];
89
68
  var _usePosition = (0, _utils.usePosition)({
90
- key: filteredOptions.length,
91
69
  position: "bottom",
92
70
  offset: 10,
93
- active: isDropdownVisible,
71
+ active: open,
94
72
  flip: false
95
73
  }),
96
74
  anchorRef = _usePosition.anchorRef,
97
75
  tooltipRef = _usePosition.tooltipRef;
98
- var _useKeyboardListNavig = (0, _useKeyboardListNavigation.useKeyboardListNavigation)({
99
- ref: containerRef,
100
- list: filteredOptions,
101
- waitForInteractive: true,
102
- onEnter: function onEnter(_ref2) {
103
- var option = _ref2.element,
104
- event = _ref2.event;
105
- event.preventDefault();
106
- event.stopPropagation();
107
- if (option) {
108
- handleSelect(option);
109
- }
110
- resetUI();
111
- }
112
- }),
113
- reset = _useKeyboardListNavig.reset,
114
- set = _useKeyboardListNavig.set;
115
76
  var _useWidthOf = (0, _utils.useWidthOf)({
116
77
  ref: anchorRef
117
78
  }),
118
79
  width = _useWidthOf.width;
119
80
  var inputName = inputProps.name || "palette-phone-input";
120
- var optionsWithRefs = (0, _react.useMemo)(function () {
121
- return filteredOptions.map(function (option) {
122
- return {
123
- option: option,
124
- ref: /*#__PURE__*/(0, _react.createRef)()
125
- };
126
- });
127
- }, [filteredOptions]);
128
- var resetUI = function resetUI() {
129
- setTimeout(function () {
130
- var _inputRef$current;
131
- (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();
132
- reset();
133
- setDropdownVisible(false);
134
- }, 100);
135
- };
136
81
  var handleSelect = function handleSelect(option) {
137
- var _inputRef$current2;
138
- (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.focus();
139
- setSearchQuery("");
82
+ var _inputRef$current;
140
83
  setSelectedOption(option);
141
- setDropdownVisible(false);
84
+ setOpen(false);
85
+ (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();
142
86
  onSelect === null || onSelect === void 0 ? void 0 : onSelect(option);
143
87
  };
144
88
  var handleFocusChange = (0, _react.useCallback)(function (focused) {
145
- if (focused || !isDropdownVisible) return;
146
- setDropdownVisible(false);
147
- }, [isDropdownVisible]);
89
+ if (focused || !open) return;
90
+ setOpen(false);
91
+ }, [open]);
148
92
 
149
93
  // Handle closing the dropdown when clicking outside of the input
150
94
  // or when focus leaves the input completely
@@ -152,76 +96,28 @@ var PhoneInput = exports.PhoneInput = /*#__PURE__*/_react.default.forwardRef(fun
152
96
  onChange: handleFocusChange
153
97
  }),
154
98
  containsFocusRef = _useContainsFocus.ref;
155
- var handleCountryPickerKeydown = function handleCountryPickerKeydown(event) {
156
- var _countryPickerRef$cur;
157
- switch (event.key) {
158
- case "Escape":
159
- event.preventDefault();
160
- event.stopPropagation();
161
- setDropdownVisible(false);
162
- (_countryPickerRef$cur = countryPickerRef.current) === null || _countryPickerRef$cur === void 0 ? void 0 : _countryPickerRef$cur.blur();
163
- reset();
164
- return;
165
- case "Enter":
166
- case " ":
167
- event.preventDefault();
168
- event.stopPropagation();
169
- if (!disabled) {
170
- setDropdownVisible(true);
171
- }
172
- return;
173
- }
174
- };
175
- var handleSearchInputKeydown = function handleSearchInputKeydown(event) {
176
- var _searchInputRef$curre;
177
- switch (event.key) {
178
- case "Tab":
179
- if (event.shiftKey) {
180
- // ignore
181
- } else {
182
- // move down to the list
183
- event.preventDefault();
184
- event.stopPropagation();
185
- reset();
186
- set({
187
- cursor: 0,
188
- interactive: true
189
- });
190
- }
191
- return;
192
- case "Enter":
193
- event.preventDefault();
194
- event.stopPropagation();
195
- if (filteredOptions.length) {
196
- handleSelect(filteredOptions[0]);
197
- }
198
- return;
199
- default:
200
- (_searchInputRef$curre = searchInputRef.current) === null || _searchInputRef$curre === void 0 ? void 0 : _searchInputRef$curre.focus();
201
- }
99
+ var handleClose = function handleClose() {
100
+ setOpen(false);
202
101
  };
203
102
  return /*#__PURE__*/_react.default.createElement(_Box.Box, _extends({
204
103
  ref: (0, _composeReactRefs.default)(containerRef, containsFocusRef),
205
104
  width: "100%",
206
105
  className: className
207
- }, boxProps), /*#__PURE__*/_react.default.createElement(ContainerBox, {
106
+ }, boxProps), /*#__PURE__*/_react.default.createElement(PhoneInputContainer, {
208
107
  ref: anchorRef,
209
- isDropdownVisible: isDropdownVisible,
108
+ open: open,
210
109
  hover: hover,
211
110
  focus: focus,
212
111
  error: error,
213
112
  disabled: disabled,
214
113
  placeholder: inputProps.placeholder
215
- }, /*#__PURE__*/_react.default.createElement(SelectContainer, {
114
+ }, /*#__PURE__*/_react.default.createElement(PhoneInputSelect, {
216
115
  "data-testid": "country-picker",
217
- ref: countryPickerRef,
218
116
  disabled: disabled,
219
117
  onClick: function onClick() {
220
- setDropdownVisible(!disabled && !isDropdownVisible);
221
- },
222
- tabIndex: disabled ? -1 : 0,
223
- onKeyDown: handleCountryPickerKeydown
224
- }, selectedOption.text), /*#__PURE__*/_react.default.createElement(StyledInput, _extends({
118
+ setOpen(!disabled && !open);
119
+ }
120
+ }, selectedOption.text), /*#__PURE__*/_react.default.createElement(PhoneInputInput, _extends({
225
121
  disabled: disabled,
226
122
  ref: (0, _composeReactRefs.default)(inputRef, forwardedRef),
227
123
  type: "tel",
@@ -231,42 +127,17 @@ var PhoneInput = exports.PhoneInput = /*#__PURE__*/_react.default.forwardRef(fun
231
127
  maxLength: 25,
232
128
  placeholder: inputProps.placeholder,
233
129
  value: inputValue
234
- }, inputProps)), /*#__PURE__*/_react.default.createElement(StyledLabel, {
130
+ }, inputProps)), /*#__PURE__*/_react.default.createElement(PhoneInputLabel, {
235
131
  htmlFor: inputName
236
- }, "Phone number", /*#__PURE__*/_react.default.createElement("span", null))), isDropdownVisible && /*#__PURE__*/_react.default.createElement(SelectDropdown, {
132
+ }, "Phone number")), open && /*#__PURE__*/_react.default.createElement(PhoneInputDropdown, {
237
133
  ref: tooltipRef,
238
134
  role: "listbox",
239
135
  width: width
240
- }, /*#__PURE__*/_react.default.createElement(_Input.Input, {
241
- ref: searchInputRef,
242
- p: 1,
243
- pb: 0,
244
- autoFocus: true,
245
- placeholder: "Search",
246
- value: searchQuery,
247
- onChange: function onChange(e) {
248
- return setSearchQuery(e.target.value);
249
- },
250
- onKeyDown: handleSearchInputKeydown
251
- }), /*#__PURE__*/_react.default.createElement(SelectOptions, null, optionsWithRefs.map(function (_ref3, i) {
252
- var option = _ref3.option,
253
- ref = _ref3.ref;
254
- return /*#__PURE__*/_react.default.createElement(SelectOption, {
255
- key: i,
256
- ref: ref,
257
- role: "option",
258
- "aria-selected": option.value === selectedOption.value,
259
- "aria-posinset": i + 1,
260
- "aria-setsize": options.length,
261
- selected: option.value === selectedOption.value,
262
- onClick: function onClick() {
263
- return handleSelect(option);
264
- },
265
- tabIndex: -1
266
- }, /*#__PURE__*/_react.default.createElement(_Text.Text, {
267
- minWidth: 80
268
- }, option.text), /*#__PURE__*/_react.default.createElement(_Text.Text, null, option.name));
269
- }))), required && !(error && typeof error === "string") && /*#__PURE__*/_react.default.createElement(_RequiredField.RequiredField, {
136
+ }, /*#__PURE__*/_react.default.createElement(_PhoneInputList.PhoneInputList, {
137
+ options: options,
138
+ onSelect: handleSelect,
139
+ onClose: handleClose
140
+ })), required && !(error && typeof error === "string") && /*#__PURE__*/_react.default.createElement(_RequiredField.RequiredField, {
270
141
  mt: 0.5,
271
142
  ml: 1,
272
143
  disabled: disabled
@@ -279,40 +150,26 @@ var PhoneInput = exports.PhoneInput = /*#__PURE__*/_react.default.forwardRef(fun
279
150
  }, error));
280
151
  });
281
152
  PhoneInput.displayName = "PhoneInput";
282
- var caretMixin = (0, _styledComponents.css)(["&::after{content:\"\";cursor:inherit;width:0;height:0;position:absolute;top:50%;transform:translateY(-50%);right:", ";pointer-events:none;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid ", ";}"], (0, _themeGet.themeGet)("space.1"), function (_ref4) {
283
- var disabled = _ref4.disabled;
284
- return disabled ? (0, _themeGet.themeGet)("colors.mono10") : (0, _themeGet.themeGet)("colors.mono60");
285
- });
286
- var ContainerBox = (0, _styledComponents.default)(_Box.Box).withConfig({
287
- displayName: "PhoneInput__ContainerBox",
153
+ var PhoneInputContainer = (0, _styledComponents.default)(_Box.Box).withConfig({
154
+ displayName: "PhoneInput__PhoneInputContainer",
288
155
  componentId: "sc-lj1bt9-0"
289
156
  })(["position:relative;display:flex;flex-direction:row;", ""], function (props) {
290
- return (0, _styledComponents.css)(["", " ", " ", " ", " ", " &:hover{", "}&:focus-within{", " &:has(input:not(:placeholder-shown)){", " ", ";}}&:has(input:not(:placeholder-shown)){", " ", ";}"], _tokens.PHONE_INPUT_STATES.default, props.hover && _tokens.PHONE_INPUT_STATES.hover, (props.focus || props.isDropdownVisible) && _tokens.PHONE_INPUT_STATES.focus, props.disabled && _tokens.PHONE_INPUT_STATES.disabled, props.error && _tokens.PHONE_INPUT_STATES.error, !props.isDropdownVisible && !props.disabled && _tokens.PHONE_INPUT_STATES.hover, !props.disabled && _tokens.PHONE_INPUT_STATES.focus, _tokens.PHONE_INPUT_STATES.active, props.error && _tokens.PHONE_INPUT_STATES.error, !!props.placeholder && _tokens.PHONE_INPUT_STATES.completed, props.error && _tokens.PHONE_INPUT_STATES.error);
157
+ return (0, _styledComponents.css)(["", " ", " ", " ", " ", " &:hover{", "}&:focus-within{", " &:has(input:not(:placeholder-shown)){", " ", ";}}&:has(input:not(:placeholder-shown)){", " ", ";}"], _tokens.PHONE_INPUT_STATES.default, props.hover && _tokens.PHONE_INPUT_STATES.hover, (props.focus || props.open) && _tokens.PHONE_INPUT_STATES.focus, props.disabled && _tokens.PHONE_INPUT_STATES.disabled, props.error && _tokens.PHONE_INPUT_STATES.error, !props.open && !props.disabled && _tokens.PHONE_INPUT_STATES.hover, !props.disabled && _tokens.PHONE_INPUT_STATES.focus, _tokens.PHONE_INPUT_STATES.active, props.error && _tokens.PHONE_INPUT_STATES.error, !!props.placeholder && _tokens.PHONE_INPUT_STATES.completed, props.error && _tokens.PHONE_INPUT_STATES.error);
291
158
  });
292
- var SelectContainer = (0, _styledComponents.default)(_Box.Box).withConfig({
293
- displayName: "PhoneInput__SelectContainer",
159
+ var PhoneInputSelect = (0, _styledComponents.default)(_Clickable.Clickable).withConfig({
160
+ displayName: "PhoneInput__PhoneInputSelect",
294
161
  componentId: "sc-lj1bt9-1"
295
- })(["display:flex;align-items:center;position:relative;min-width:120px;border:1px solid;border-right:0;padding:0 24px 0 ", ";font-family:", ";border-radius:3px 0 0 3px;border-color:", ";cursor:pointer;line-height:1;transition:color 0.25s,border-color 0.25s;height:50px;font-size:", ";color:", ";", ""], (0, _themeGet.themeGet)("space.1"), (0, _themeGet.themeGet)("fonts.sans"), (0, _themeGet.themeGet)("colors.mono30"), (0, _themeGet.themeGet)("textVariants.sm-display.fontSize"), (0, _themeGet.themeGet)("colors.mono100"), caretMixin);
296
- var SelectDropdown = (0, _styledComponents.default)(_Box.Box).withConfig({
297
- displayName: "PhoneInput__SelectDropdown",
162
+ })(["", " display:flex;align-items:center;position:relative;min-width:120px;border:1px solid;border-right:0;padding:0 24px 0 ", ";font-family:", ";border-radius:3px 0 0 3px;border-color:", ";cursor:pointer;line-height:1;transition:color 0.25s,border-color 0.25s;height:50px;font-size:", ";color:", ";&:focus{outline:none;text-decoration:underline;color:", ";}"], _Select.caretMixin, (0, _themeGet.themeGet)("space.1"), (0, _themeGet.themeGet)("fonts.sans"), (0, _themeGet.themeGet)("colors.mono30"), (0, _themeGet.themeGet)("textVariants.sm-display.fontSize"), (0, _themeGet.themeGet)("colors.mono100"), (0, _themeGet.themeGet)("colors.blue100"));
163
+ var PhoneInputDropdown = (0, _styledComponents.default)(_Box.Box).withConfig({
164
+ displayName: "PhoneInput__PhoneInputDropdown",
298
165
  componentId: "sc-lj1bt9-2"
299
- })(["box-shadow:", ";z-index:1;background:", ";"], (0, _themeGet.themeGet)("effects.dropShadow"), (0, _themeGet.themeGet)("colors.mono0"));
300
- var SelectOptions = (0, _styledComponents.default)(_Box.Box).withConfig({
301
- displayName: "PhoneInput__SelectOptions",
166
+ })(["box-shadow:", ";background:", ";z-index:1;padding:", ";"], (0, _themeGet.themeGet)("effects.dropShadow"), (0, _themeGet.themeGet)("colors.mono0"), (0, _themeGet.themeGet)("space.1"));
167
+ var PhoneInputInput = _styledComponents.default.input.withConfig({
168
+ displayName: "PhoneInput__PhoneInputInput",
302
169
  componentId: "sc-lj1bt9-3"
303
- })(["max-height:308px;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:", ";"], (0, _themeGet.themeGet)("space.1"));
304
- var SelectOption = (0, _styledComponents.default)(_Box.Box).withConfig({
305
- displayName: "PhoneInput__SelectOption",
306
- componentId: "sc-lj1bt9-4"
307
- })(["padding:", " 0;cursor:pointer;display:flex;flex-direction:row;align-items:center;text-decoration:none;color:", ";transition:color 0.25s,text-decoration 0.25s;&:hover{color:", ";text-decoration:underline;}&:focus,&:active{color:", ";text-decoration:none;}", ""], (0, _themeGet.themeGet)("space.1"), (0, _themeGet.themeGet)("colors.mono60"), (0, _themeGet.themeGet)("colors.blue100"), (0, _themeGet.themeGet)("colors.mono100"), function (props) {
308
- return props.selected && (0, _styledComponents.css)(["color:", ";text-decoration:none;"], (0, _themeGet.themeGet)("colors.mono100"));
309
- });
310
- var StyledInput = _styledComponents.default.input.withConfig({
311
- displayName: "PhoneInput__StyledInput",
312
- componentId: "sc-lj1bt9-5"
313
170
  })(["width:100%;background-color:", ";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)("colors.mono0"), (0, _themeGet.themeGet)("space.1"), (0, _themeGet.themeGet)("fonts.sans"), (0, _themeGet.themeGet)("textVariants.sm-display.fontSize"), (0, _themeGet.themeGet)("colors.mono100"), (0, _themeGet.themeGet)("colors.mono30"), _styledSystem.height, (0, _themeGet.themeGet)("colors.mono60"));
314
- var StyledLabel = _styledComponents.default.label.withConfig({
315
- displayName: "PhoneInput__StyledLabel",
316
- componentId: "sc-lj1bt9-6"
317
- })(["position:absolute;top:0;left:5px;padding:0 5px;background-color:transparent;transform:translateY(-50%);transition:color 0.25s;font-family:", ";pointer-events:none;font-size:", ";color:", ";& > span{background-color:", ";height:2px;width:100%;display:block;position:absolute;top:50%;left:0;z-index:-1;}"], (0, _themeGet.themeGet)("fonts.sans"), (0, _themeGet.themeGet)("textVariants.xs.fontSize"), (0, _themeGet.themeGet)("colors.mono60"), (0, _themeGet.themeGet)("colors.mono0"));
171
+ var PhoneInputLabel = _styledComponents.default.label.withConfig({
172
+ displayName: "PhoneInput__PhoneInputLabel",
173
+ componentId: "sc-lj1bt9-4"
174
+ })(["position:absolute;top:0;left:5px;padding:0 5px;background-color:transparent;transform:translateY(-50%);transition:color 0.25s;font-family:", ";pointer-events:none;font-size:", ";color:", ";&::after{content:\"\";display:block;position:absolute;top:50%;left:0;height:2px;width:100%;background-color:", ";z-index:-1;}"], (0, _themeGet.themeGet)("fonts.sans"), (0, _themeGet.themeGet)("textVariants.xs.fontSize"), (0, _themeGet.themeGet)("colors.mono60"), (0, _themeGet.themeGet)("colors.mono0"));
318
175
  //# sourceMappingURL=PhoneInput.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PhoneInput.js","names":["_composeReactRefs","_interopRequireDefault","require","_themeGet","_react","_interopRequireWildcard","_styledComponents","_styledSystem","_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","exports","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","displayName","caretMixin","css","themeGet","_ref4","styled","withConfig","componentId","props","PHONE_INPUT_STATES","completed","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, ExecutionContext } from \"styled-components\"\nimport { height as systemHeight } from \"styled-system\"\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.forwardRef<HTMLInputElement, PhoneInputProps>(\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} disabled={disabled} />\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\ninterface CaretProps extends ExecutionContext {\n disabled?: boolean\n}\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 }: CaretProps) => {\n return disabled ? themeGet(\"colors.mono10\") : themeGet(\"colors.mono60\")\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.mono30\")};\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.mono100\")};\n\n ${caretMixin}\n`\n\nconst SelectDropdown = styled(Box)`\n box-shadow: ${themeGet(\"effects.dropShadow\")};\n z-index: 1;\n background: ${themeGet(\"colors.mono0\")};\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.mono60\")};\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.mono100\")};\n text-decoration: none;\n }\n\n ${(props) =>\n props.selected &&\n css`\n color: ${themeGet(\"colors.mono100\")};\n text-decoration: none;\n `}\n`\n\nconst StyledInput = styled.input`\n width: 100%;\n background-color: ${themeGet(\"colors.mono0\")};\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.mono100\")};\n border-color: ${themeGet(\"colors.mono30\")};\n ${systemHeight}\n\n ::placeholder {\n color: ${themeGet(\"colors.mono60\")};\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.mono60\")};\n\n & > span {\n background-color: ${themeGet(\"colors.mono0\")};\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","_utils","_Box","_Text","_tokens","_RequiredField","_PhoneInputList","_Select","_Clickable","_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","exports","React","forwardRef","_ref","forwardedRef","className","options","disabled","error","focus","hover","required","onSelect","dropdownValue","inputValue","rest","Error","inputRef","useRef","containerRef","defaultOption","useMemo","find","option","_splitBoxProps","splitBoxProps","_splitBoxProps2","boxProps","inputProps","_useState","useState","_useState2","open","setOpen","_useState3","_useState4","selectedOption","setSelectedOption","_usePosition","usePosition","position","offset","active","flip","anchorRef","tooltipRef","_useWidthOf","useWidthOf","ref","width","inputName","handleSelect","_inputRef$current","current","handleFocusChange","useCallback","focused","_useContainsFocus","useContainsFocus","onChange","containsFocusRef","handleClose","createElement","Box","composeRefs","PhoneInputContainer","placeholder","PhoneInputSelect","onClick","text","PhoneInputInput","type","autoComplete","maxLength","PhoneInputLabel","htmlFor","PhoneInputDropdown","role","PhoneInputList","onClose","RequiredField","mt","ml","Text","variant","mr","color","textAlign","displayName","styled","withConfig","componentId","props","css","PHONE_INPUT_STATES","completed","Clickable","caretMixin","themeGet","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, { useCallback, useMemo, useRef, useState } from \"react\"\nimport styled, { css } from \"styled-components\"\nimport { height as systemHeight } from \"styled-system\"\nimport { useContainsFocus, usePosition, useWidthOf } from \"../../utils\"\nimport { Box, splitBoxProps } from \"../Box\"\nimport { InputProps } from \"../Input\"\nimport { Text } from \"../Text\"\nimport { PHONE_INPUT_STATES } from \"./tokens\"\nimport { RequiredField } from \"../../shared/RequiredField\"\nimport { Option, PhoneInputList } from \"./PhoneInputList\"\nimport { caretMixin } from \"../Select\"\nimport { Clickable } from \"../Clickable\"\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.forwardRef<HTMLInputElement, PhoneInputProps>(\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 containerRef = 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\n const [open, setOpen] = useState(false)\n const [selectedOption, setSelectedOption] = useState(\n defaultOption || options[0]\n )\n\n const { anchorRef, tooltipRef } = usePosition({\n position: \"bottom\",\n offset: 10,\n active: open,\n flip: false,\n })\n\n const { width } = useWidthOf({ ref: anchorRef })\n\n const inputName = inputProps.name || \"palette-phone-input\"\n\n const handleSelect = (option: Option) => {\n setSelectedOption(option)\n setOpen(false)\n inputRef.current?.focus()\n onSelect?.(option)\n }\n\n const handleFocusChange = useCallback(\n (focused: boolean) => {\n if (focused || !open) return\n setOpen(false)\n },\n [open]\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 handleClose = () => {\n setOpen(false)\n }\n\n return (\n <Box\n ref={composeRefs(containerRef, containsFocusRef) as any}\n width=\"100%\"\n className={className}\n {...boxProps}\n >\n <PhoneInputContainer\n ref={anchorRef as any}\n open={open}\n hover={hover}\n focus={focus}\n error={error}\n disabled={disabled}\n placeholder={inputProps.placeholder}\n >\n <PhoneInputSelect\n data-testid=\"country-picker\"\n disabled={disabled}\n onClick={() => {\n setOpen(!disabled && !open)\n }}\n >\n {selectedOption.text}\n </PhoneInputSelect>\n\n <PhoneInputInput\n disabled={disabled}\n ref={composeRefs(inputRef, forwardedRef)}\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 <PhoneInputLabel htmlFor={inputName}>Phone number</PhoneInputLabel>\n </PhoneInputContainer>\n\n {open && (\n <PhoneInputDropdown\n ref={tooltipRef as any}\n role=\"listbox\"\n width={width}\n >\n <PhoneInputList\n options={options}\n onSelect={handleSelect}\n onClose={handleClose}\n />\n </PhoneInputDropdown>\n )}\n\n {required && !(error && typeof error === \"string\") && (\n <RequiredField mt={0.5} ml={1} disabled={disabled} />\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\ntype ContainerProps = Pick<\n PhoneInputProps,\n \"disabled\" | \"error\" | \"hover\" | \"focus\" | \"placeholder\"\n> & { open: boolean }\n\nconst PhoneInputContainer = 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.open) && 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.open && !props.disabled && 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 PhoneInputSelect = styled(Clickable)<{ disabled?: boolean }>`\n ${caretMixin}\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.mono30\")};\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.mono100\")};\n &:focus {\n outline: none;\n text-decoration: underline;\n color: ${themeGet(\"colors.blue100\")};\n }\n`\n\nconst PhoneInputDropdown = styled(Box)`\n box-shadow: ${themeGet(\"effects.dropShadow\")};\n background: ${themeGet(\"colors.mono0\")};\n z-index: 1;\n padding: ${themeGet(\"space.1\")};\n`\n\nconst PhoneInputInput = styled.input`\n width: 100%;\n background-color: ${themeGet(\"colors.mono0\")};\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.mono100\")};\n border-color: ${themeGet(\"colors.mono30\")};\n ${systemHeight}\n\n ::placeholder {\n color: ${themeGet(\"colors.mono60\")};\n transition: color 0.25s;\n }\n`\n\nconst PhoneInputLabel = 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.mono60\")};\n\n &::after {\n content: \"\";\n display: block;\n position: absolute;\n top: 50%;\n left: 0;\n height: 2px;\n width: 100%;\n background-color: ${themeGet(\"colors.mono0\")};\n z-index: -1;\n }\n`\n"],"mappings":"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"}
@@ -4,3 +4,4 @@ declare const _default: {
4
4
  };
5
5
  export default _default;
6
6
  export declare const Default: () => React.JSX.Element;
7
+ export declare const LoadingDisplayTest: () => React.JSX.Element;
@@ -3,11 +3,17 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = exports.Default = void 0;
6
+ exports.default = exports.LoadingDisplayTest = exports.Default = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _storybookStates = require("storybook-states");
9
9
  var _PhoneInput = require("./PhoneInput");
10
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
12
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
13
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
14
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
15
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
16
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
11
17
  var _default = exports.default = {
12
18
  title: "Components/PhoneInput"
13
19
  };
@@ -202,4 +208,49 @@ var Default = exports.Default = function Default() {
202
208
  }));
203
209
  };
204
210
  Default.displayName = "Default";
211
+ var LoadingDisplayTest = exports.LoadingDisplayTest = function LoadingDisplayTest() {
212
+ var _React$useState = _react.default.useState(false),
213
+ _React$useState2 = _slicedToArray(_React$useState, 2),
214
+ isLoaded = _React$useState2[0],
215
+ setIsLoaded = _React$useState2[1];
216
+ var _React$useState3 = _react.default.useState("ad"),
217
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
218
+ countryCode = _React$useState4[0],
219
+ setCountryCode = _React$useState4[1];
220
+ var _React$useState5 = _react.default.useState(""),
221
+ _React$useState6 = _slicedToArray(_React$useState5, 2),
222
+ phoneNumber = _React$useState6[0],
223
+ setPhoneNumber = _React$useState6[1];
224
+ _react.default.useEffect(function () {
225
+ var timer = setTimeout(function () {
226
+ setIsLoaded(true);
227
+ }, 500);
228
+ return function () {
229
+ return clearTimeout(timer);
230
+ };
231
+ }, []);
232
+ return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
233
+ style: {
234
+ display: isLoaded ? "grid" : "none",
235
+ marginTop: "16px"
236
+ }
237
+ }, /*#__PURE__*/_react.default.createElement(_PhoneInput.PhoneInput, {
238
+ key: "loading-test-phone-input",
239
+ name: "phoneNumber",
240
+ placeholder: "(000) 000 0000",
241
+ options: countriesExample,
242
+ onSelect: function onSelect(option) {
243
+ console.log("Selected:", option);
244
+ setCountryCode(option.value);
245
+ },
246
+ dropdownValue: countryCode,
247
+ inputValue: phoneNumber,
248
+ onChange: function onChange(e) {
249
+ return setPhoneNumber(e.target.value);
250
+ },
251
+ "data-testid": "LoadingTestPhoneInput",
252
+ required: true
253
+ })), !isLoaded && /*#__PURE__*/_react.default.createElement("div", null, "Loading phone input..."));
254
+ };
255
+ LoadingDisplayTest.displayName = "LoadingDisplayTest";
205
256
  //# sourceMappingURL=PhoneInput.story.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PhoneInput.story.js","names":["_react","_interopRequireDefault","require","_storybookStates","_PhoneInput","obj","__esModule","default","_default","exports","title","countriesExample","text","name","value","countryCode","flag","Default","createElement","States","states","placeholder","required","disabled","error","PhoneInput","options","onSelect","option","console","log","displayName"],"sources":["../../../src/elements/PhoneInput/PhoneInput.story.tsx"],"sourcesContent":["import React from \"react\"\nimport { States } from \"storybook-states\"\nimport { PhoneInput, PhoneInputProps } from \"./PhoneInput\"\n\nexport default {\n title: \"Components/PhoneInput\",\n}\n\nconst countriesExample = [\n {\n text: \"🇦🇫 +93\",\n name: \"Afghanistan\",\n value: \"af\",\n countryCode: \"+93\",\n flag: \"🇦🇫\",\n },\n {\n text: \"🇦🇽 +358\",\n name: \"Aland Islands\",\n value: \"ax\",\n countryCode: \"+358\",\n flag: \"🇦🇽\",\n },\n {\n text: \"🇦🇱 +355\",\n name: \"Albania\",\n value: \"al\",\n countryCode: \"+355\",\n flag: \"🇦🇱\",\n },\n {\n text: \"🇩🇿 +213\",\n name: \"Algeria\",\n value: \"dz\",\n countryCode: \"+213\",\n flag: \"🇩🇿\",\n },\n {\n text: \"🇦🇸 +1684\",\n name: \"American Samoa\",\n value: \"as\",\n countryCode: \"+1684\",\n flag: \"🇦🇸\",\n },\n {\n text: \"🇦🇩 +376\",\n name: \"Andorra\",\n value: \"ad\",\n countryCode: \"+376\",\n flag: \"🇦🇩\",\n },\n {\n text: \"🇦🇴 +244\",\n name: \"Angola\",\n value: \"ao\",\n countryCode: \"+244\",\n flag: \"🇦🇴\",\n },\n {\n text: \"🇦🇮 +1264\",\n name: \"Anguilla\",\n value: \"ai\",\n countryCode: \"+1264\",\n flag: \"🇦🇮\",\n },\n {\n text: \"🇦🇶 +672\",\n name: \"Antarctica\",\n value: \"aq\",\n countryCode: \"+672\",\n flag: \"🇦🇶\",\n },\n {\n text: \"🇦🇬 +1268\",\n name: \"Antigua and Barbuda\",\n value: \"ag\",\n countryCode: \"+1268\",\n flag: \"🇦🇬\",\n },\n {\n text: \"🇦🇷 +54\",\n name: \"Argentina\",\n value: \"ar\",\n countryCode: \"+54\",\n flag: \"🇦🇷\",\n },\n {\n text: \"🇦🇲 +374\",\n name: \"Armenia\",\n value: \"am\",\n countryCode: \"+374\",\n flag: \"🇦🇲\",\n },\n {\n text: \"🇦🇼 +297\",\n name: \"Aruba\",\n value: \"aw\",\n countryCode: \"+297\",\n flag: \"🇦🇼\",\n },\n {\n text: \"🇦🇺 +61\",\n name: \"Australia\",\n value: \"au\",\n countryCode: \"+61\",\n flag: \"🇦🇺\",\n },\n {\n text: \"🇦🇹 +43\",\n name: \"Austria\",\n value: \"at\",\n countryCode: \"+43\",\n flag: \"🇦🇹\",\n },\n {\n text: \"🇦🇿 +994\",\n name: \"Azerbaijan\",\n value: \"az\",\n countryCode: \"+994\",\n flag: \"🇦🇿\",\n },\n {\n text: \"🇧🇸 +1242\",\n name: \"Bahamas\",\n value: \"bs\",\n countryCode: \"+1242\",\n flag: \"🇧🇸\",\n },\n {\n text: \"🇧🇭 +973\",\n name: \"Bahrain\",\n value: \"bh\",\n countryCode: \"+973\",\n flag: \"🇧🇭\",\n },\n {\n text: \"🇧🇩 +880\",\n name: \"Bangladesh\",\n value: \"bd\",\n countryCode: \"+880\",\n flag: \"🇧🇩\",\n },\n {\n text: \"🇧🇧 +1246\",\n name: \"Barbados\",\n value: \"bb\",\n countryCode: \"+1246\",\n flag: \"🇧🇧\",\n },\n {\n text: \"🇧🇾 +375\",\n name: \"Belarus\",\n value: \"by\",\n countryCode: \"+375\",\n flag: \"🇧🇾\",\n },\n {\n text: \"🇧🇪 +32\",\n name: \"Belgium\",\n value: \"be\",\n countryCode: \"+32\",\n flag: \"🇧🇪\",\n },\n {\n text: \"🇧🇿 +501\",\n name: \"Belize\",\n value: \"bz\",\n countryCode: \"+501\",\n flag: \"🇧🇿\",\n },\n {\n text: \"🇧🇯 +229\",\n name: \"Benin\",\n value: \"bj\",\n countryCode: \"+229\",\n flag: \"🇧🇯\",\n },\n {\n text: \"🇧🇲 +1441\",\n name: \"Bermuda\",\n value: \"bm\",\n countryCode: \"+1441\",\n flag: \"🇧🇲\",\n },\n {\n text: \"🇧🇹 +975\",\n name: \"Bhutan\",\n value: \"bt\",\n countryCode: \"+975\",\n flag: \"🇧🇹\",\n },\n {\n text: \"🇧🇴 +591\",\n name: \"Bolivia\",\n value: \"bo\",\n countryCode: \"+591\",\n flag: \"🇧🇴\",\n },\n {\n text: \"🇧🇦 +387\",\n name: \"Bosnia and Herzegovina\",\n value: \"ba\",\n countryCode: \"+387\",\n flag: \"🇧🇦\",\n },\n]\n\nexport const Default = () => {\n return (\n <States<Partial<PhoneInputProps>>\n states={[\n {},\n { placeholder: \"(000) 000 0000\" },\n { placeholder: \"(000) 000 0000\", required: true },\n { placeholder: \"(000) 000 0000\", disabled: true },\n { placeholder: \"(000) 000 0000\", error: \"Something is wrong\" },\n ]}\n >\n <PhoneInput\n options={countriesExample}\n onSelect={(option) => console.log(option)}\n />\n </States>\n )\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AAA0D,SAAAD,uBAAAI,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAF,OAAA,GAE3C;EACbG,KAAK,EAAE;AACT,CAAC;AAED,IAAMC,gBAAgB,GAAG,CACvB;EACEC,IAAI,EAAE,UAAU;EAChBC,IAAI,EAAE,aAAa;EACnBC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,KAAK;EAClBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,eAAe;EACrBC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,YAAY;EAClBC,IAAI,EAAE,gBAAgB;EACtBC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,OAAO;EACpBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,QAAQ;EACdC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,YAAY;EAClBC,IAAI,EAAE,UAAU;EAChBC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,OAAO;EACpBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,YAAY;EAClBC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,YAAY;EAClBC,IAAI,EAAE,qBAAqB;EAC3BC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,OAAO;EACpBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,UAAU;EAChBC,IAAI,EAAE,WAAW;EACjBC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,KAAK;EAClBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,OAAO;EACbC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,UAAU;EAChBC,IAAI,EAAE,WAAW;EACjBC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,KAAK;EAClBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,UAAU;EAChBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,KAAK;EAClBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,YAAY;EAClBC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,YAAY;EAClBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,OAAO;EACpBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,YAAY;EAClBC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,YAAY;EAClBC,IAAI,EAAE,UAAU;EAChBC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,OAAO;EACpBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,UAAU;EAChBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,KAAK;EAClBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,QAAQ;EACdC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,OAAO;EACbC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,YAAY;EAClBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,OAAO;EACpBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,QAAQ;EACdC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,EACD;EACEJ,IAAI,EAAE,WAAW;EACjBC,IAAI,EAAE,wBAAwB;EAC9BC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE,MAAM;EACnBC,IAAI,EAAE;AACR,CAAC,CACF;AAEM,IAAMC,OAAO,GAAAR,OAAA,CAAAQ,OAAA,GAAG,SAAVA,OAAOA,CAAA,EAAS;EAC3B,oBACEjB,MAAA,CAAAO,OAAA,CAAAW,aAAA,CAACf,gBAAA,CAAAgB,MAAM;IACLC,MAAM,EAAE,CACN,CAAC,CAAC,EACF;MAAEC,WAAW,EAAE;IAAiB,CAAC,EACjC;MAAEA,WAAW,EAAE,gBAAgB;MAAEC,QAAQ,EAAE;IAAK,CAAC,EACjD;MAAED,WAAW,EAAE,gBAAgB;MAAEE,QAAQ,EAAE;IAAK,CAAC,EACjD;MAAEF,WAAW,EAAE,gBAAgB;MAAEG,KAAK,EAAE;IAAqB,CAAC;EAC9D,gBAEFxB,MAAA,CAAAO,OAAA,CAAAW,aAAA,CAACd,WAAA,CAAAqB,UAAU;IACTC,OAAO,EAAEf,gBAAiB;IAC1BgB,QAAQ,EAAE,SAAVA,QAAQA,CAAGC,MAAM;MAAA,OAAKC,OAAO,CAACC,GAAG,CAACF,MAAM,CAAC;IAAA;EAAC,EAC1C,CACK;AAEb,CAAC;AAjBYX,OAAO,CAAAc,WAAA"}
1
+ {"version":3,"file":"PhoneInput.story.js","names":["_react","_interopRequireDefault","require","_storybookStates","_PhoneInput","obj","__esModule","default","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_default","exports","title","countriesExample","text","countryCode","flag","Default","createElement","States","states","placeholder","required","disabled","error","PhoneInput","options","onSelect","option","console","log","displayName","LoadingDisplayTest","_React$useState","React","useState","_React$useState2","isLoaded","setIsLoaded","_React$useState3","_React$useState4","setCountryCode","_React$useState5","_React$useState6","phoneNumber","setPhoneNumber","useEffect","timer","setTimeout","clearTimeout","style","display","marginTop","key","dropdownValue","inputValue","onChange","e","target"],"sources":["../../../src/elements/PhoneInput/PhoneInput.story.tsx"],"sourcesContent":["import React from \"react\"\nimport { States } from \"storybook-states\"\nimport { PhoneInput, PhoneInputProps } from \"./PhoneInput\"\n\nexport default {\n title: \"Components/PhoneInput\",\n}\n\nconst countriesExample = [\n {\n text: \"🇦🇫 +93\",\n name: \"Afghanistan\",\n value: \"af\",\n countryCode: \"+93\",\n flag: \"🇦🇫\",\n },\n {\n text: \"🇦🇽 +358\",\n name: \"Aland Islands\",\n value: \"ax\",\n countryCode: \"+358\",\n flag: \"🇦🇽\",\n },\n {\n text: \"🇦🇱 +355\",\n name: \"Albania\",\n value: \"al\",\n countryCode: \"+355\",\n flag: \"🇦🇱\",\n },\n {\n text: \"🇩🇿 +213\",\n name: \"Algeria\",\n value: \"dz\",\n countryCode: \"+213\",\n flag: \"🇩🇿\",\n },\n {\n text: \"🇦🇸 +1684\",\n name: \"American Samoa\",\n value: \"as\",\n countryCode: \"+1684\",\n flag: \"🇦🇸\",\n },\n {\n text: \"🇦🇩 +376\",\n name: \"Andorra\",\n value: \"ad\",\n countryCode: \"+376\",\n flag: \"🇦🇩\",\n },\n {\n text: \"🇦🇴 +244\",\n name: \"Angola\",\n value: \"ao\",\n countryCode: \"+244\",\n flag: \"🇦🇴\",\n },\n {\n text: \"🇦🇮 +1264\",\n name: \"Anguilla\",\n value: \"ai\",\n countryCode: \"+1264\",\n flag: \"🇦🇮\",\n },\n {\n text: \"🇦🇶 +672\",\n name: \"Antarctica\",\n value: \"aq\",\n countryCode: \"+672\",\n flag: \"🇦🇶\",\n },\n {\n text: \"🇦🇬 +1268\",\n name: \"Antigua and Barbuda\",\n value: \"ag\",\n countryCode: \"+1268\",\n flag: \"🇦🇬\",\n },\n {\n text: \"🇦🇷 +54\",\n name: \"Argentina\",\n value: \"ar\",\n countryCode: \"+54\",\n flag: \"🇦🇷\",\n },\n {\n text: \"🇦🇲 +374\",\n name: \"Armenia\",\n value: \"am\",\n countryCode: \"+374\",\n flag: \"🇦🇲\",\n },\n {\n text: \"🇦🇼 +297\",\n name: \"Aruba\",\n value: \"aw\",\n countryCode: \"+297\",\n flag: \"🇦🇼\",\n },\n {\n text: \"🇦🇺 +61\",\n name: \"Australia\",\n value: \"au\",\n countryCode: \"+61\",\n flag: \"🇦🇺\",\n },\n {\n text: \"🇦🇹 +43\",\n name: \"Austria\",\n value: \"at\",\n countryCode: \"+43\",\n flag: \"🇦🇹\",\n },\n {\n text: \"🇦🇿 +994\",\n name: \"Azerbaijan\",\n value: \"az\",\n countryCode: \"+994\",\n flag: \"🇦🇿\",\n },\n {\n text: \"🇧🇸 +1242\",\n name: \"Bahamas\",\n value: \"bs\",\n countryCode: \"+1242\",\n flag: \"🇧🇸\",\n },\n {\n text: \"🇧🇭 +973\",\n name: \"Bahrain\",\n value: \"bh\",\n countryCode: \"+973\",\n flag: \"🇧🇭\",\n },\n {\n text: \"🇧🇩 +880\",\n name: \"Bangladesh\",\n value: \"bd\",\n countryCode: \"+880\",\n flag: \"🇧🇩\",\n },\n {\n text: \"🇧🇧 +1246\",\n name: \"Barbados\",\n value: \"bb\",\n countryCode: \"+1246\",\n flag: \"🇧🇧\",\n },\n {\n text: \"🇧🇾 +375\",\n name: \"Belarus\",\n value: \"by\",\n countryCode: \"+375\",\n flag: \"🇧🇾\",\n },\n {\n text: \"🇧🇪 +32\",\n name: \"Belgium\",\n value: \"be\",\n countryCode: \"+32\",\n flag: \"🇧🇪\",\n },\n {\n text: \"🇧🇿 +501\",\n name: \"Belize\",\n value: \"bz\",\n countryCode: \"+501\",\n flag: \"🇧🇿\",\n },\n {\n text: \"🇧🇯 +229\",\n name: \"Benin\",\n value: \"bj\",\n countryCode: \"+229\",\n flag: \"🇧🇯\",\n },\n {\n text: \"🇧🇲 +1441\",\n name: \"Bermuda\",\n value: \"bm\",\n countryCode: \"+1441\",\n flag: \"🇧🇲\",\n },\n {\n text: \"🇧🇹 +975\",\n name: \"Bhutan\",\n value: \"bt\",\n countryCode: \"+975\",\n flag: \"🇧🇹\",\n },\n {\n text: \"🇧🇴 +591\",\n name: \"Bolivia\",\n value: \"bo\",\n countryCode: \"+591\",\n flag: \"🇧🇴\",\n },\n {\n text: \"🇧🇦 +387\",\n name: \"Bosnia and Herzegovina\",\n value: \"ba\",\n countryCode: \"+387\",\n flag: \"🇧🇦\",\n },\n]\n\nexport const Default = () => {\n return (\n <States<Partial<PhoneInputProps>>\n states={[\n {},\n { placeholder: \"(000) 000 0000\" },\n { placeholder: \"(000) 000 0000\", required: true },\n { placeholder: \"(000) 000 0000\", disabled: true },\n { placeholder: \"(000) 000 0000\", error: \"Something is wrong\" },\n ]}\n >\n <PhoneInput\n options={countriesExample}\n onSelect={(option) => console.log(option)}\n />\n </States>\n )\n}\n\nexport const LoadingDisplayTest = () => {\n const [isLoaded, setIsLoaded] = React.useState(false)\n const [countryCode, setCountryCode] = React.useState(\"ad\")\n const [phoneNumber, setPhoneNumber] = React.useState(\"\")\n\n React.useEffect(() => {\n const timer = setTimeout(() => {\n setIsLoaded(true)\n }, 500)\n return () => clearTimeout(timer)\n }, [])\n\n return (\n <div>\n <div\n style={{\n display: isLoaded ? \"grid\" : \"none\",\n marginTop: \"16px\",\n }}\n >\n <PhoneInput\n key=\"loading-test-phone-input\"\n name=\"phoneNumber\"\n placeholder=\"(000) 000 0000\"\n options={countriesExample}\n onSelect={(option) => {\n console.log(\"Selected:\", option)\n setCountryCode(option.value)\n }}\n dropdownValue={countryCode}\n inputValue={phoneNumber}\n onChange={(e) => setPhoneNumber(e.target.value)}\n data-testid=\"LoadingTestPhoneInput\"\n required\n />\n </div>\n {!isLoaded && <div>Loading phone input...</div>}\n </div>\n )\n}\n"],"mappings":"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"}