@razorpay/blade 12.31.5 → 12.32.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/lib/native/components/Input/BaseInput/BaseInput.js +2 -1
- package/build/lib/native/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/native/components/Input/BaseInput/baseInputStyles.js +1 -1
- package/build/lib/native/components/Input/BaseInput/baseInputStyles.js.map +1 -1
- package/build/lib/native/components/InputGroup/InputGroup.native.js +12 -0
- package/build/lib/native/components/InputGroup/InputGroup.native.js.map +1 -0
- package/build/lib/native/components/InputGroup/InputGroupContext.js +6 -0
- package/build/lib/native/components/InputGroup/InputGroupContext.js.map +1 -0
- package/build/lib/native/components/InputGroup/InputRow.native.js +12 -0
- package/build/lib/native/components/InputGroup/InputRow.native.js.map +1 -0
- package/build/lib/native/components/SideNav/tokens.js +1 -1
- package/build/lib/native/components/SideNav/tokens.js.map +1 -1
- package/build/lib/native/components/index.js +2 -0
- package/build/lib/native/components/index.js.map +1 -1
- package/build/lib/native/utils/metaAttribute/metaConstants.js +1 -1
- package/build/lib/native/utils/metaAttribute/metaConstants.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js +2 -1
- package/build/lib/web/development/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/BaseInput.js +23 -16
- package/build/lib/web/development/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/baseInputStyles.js +4 -1
- package/build/lib/web/development/components/Input/BaseInput/baseInputStyles.js.map +1 -1
- package/build/lib/web/development/components/InputGroup/InputGroup.web.js +139 -0
- package/build/lib/web/development/components/InputGroup/InputGroup.web.js.map +1 -0
- package/build/lib/web/development/components/InputGroup/InputGroupContext.js +12 -0
- package/build/lib/web/development/components/InputGroup/InputGroupContext.js.map +1 -0
- package/build/lib/web/development/components/InputGroup/InputRow.web.js +27 -0
- package/build/lib/web/development/components/InputGroup/InputRow.web.js.map +1 -0
- package/build/lib/web/development/components/InputGroup/StyledInputGroup.js +17 -0
- package/build/lib/web/development/components/InputGroup/StyledInputGroup.js.map +1 -0
- package/build/lib/web/development/components/InputGroup/index.js +3 -0
- package/build/lib/web/development/components/InputGroup/index.js.map +1 -0
- package/build/lib/web/development/components/Modal/Modal.web.js +0 -10
- package/build/lib/web/development/components/Modal/Modal.web.js.map +1 -1
- package/build/lib/web/development/components/SideNav/SideNavItems/SideNavItem.web.js +13 -1
- package/build/lib/web/development/components/SideNav/SideNavItems/SideNavItem.web.js.map +1 -1
- package/build/lib/web/development/components/SideNav/SideNavLevel.web.js +9 -5
- package/build/lib/web/development/components/SideNav/SideNavLevel.web.js.map +1 -1
- package/build/lib/web/development/components/SideNav/tokens.js +1 -1
- package/build/lib/web/development/components/SideNav/tokens.js.map +1 -1
- package/build/lib/web/development/components/index.js +3 -0
- package/build/lib/web/development/components/index.js.map +1 -1
- package/build/lib/web/development/utils/getFocusRingStyles/getFocusRingStyles.web.js +2 -1
- package/build/lib/web/development/utils/getFocusRingStyles/getFocusRingStyles.web.js.map +1 -1
- package/build/lib/web/development/utils/metaAttribute/metaConstants.js +1 -0
- package/build/lib/web/development/utils/metaAttribute/metaConstants.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js +2 -1
- package/build/lib/web/production/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/BaseInput.js +23 -16
- package/build/lib/web/production/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/baseInputStyles.js +4 -1
- package/build/lib/web/production/components/Input/BaseInput/baseInputStyles.js.map +1 -1
- package/build/lib/web/production/components/InputGroup/InputGroup.web.js +139 -0
- package/build/lib/web/production/components/InputGroup/InputGroup.web.js.map +1 -0
- package/build/lib/web/production/components/InputGroup/InputGroupContext.js +12 -0
- package/build/lib/web/production/components/InputGroup/InputGroupContext.js.map +1 -0
- package/build/lib/web/production/components/InputGroup/InputRow.web.js +27 -0
- package/build/lib/web/production/components/InputGroup/InputRow.web.js.map +1 -0
- package/build/lib/web/production/components/InputGroup/StyledInputGroup.js +17 -0
- package/build/lib/web/production/components/InputGroup/StyledInputGroup.js.map +1 -0
- package/build/lib/web/production/components/InputGroup/index.js +3 -0
- package/build/lib/web/production/components/InputGroup/index.js.map +1 -0
- package/build/lib/web/production/components/Modal/Modal.web.js +0 -10
- package/build/lib/web/production/components/Modal/Modal.web.js.map +1 -1
- package/build/lib/web/production/components/SideNav/SideNavItems/SideNavItem.web.js +13 -1
- package/build/lib/web/production/components/SideNav/SideNavItems/SideNavItem.web.js.map +1 -1
- package/build/lib/web/production/components/SideNav/SideNavLevel.web.js +9 -5
- package/build/lib/web/production/components/SideNav/SideNavLevel.web.js.map +1 -1
- package/build/lib/web/production/components/SideNav/tokens.js +1 -1
- package/build/lib/web/production/components/SideNav/tokens.js.map +1 -1
- package/build/lib/web/production/components/index.js +3 -0
- package/build/lib/web/production/components/index.js.map +1 -1
- package/build/lib/web/production/utils/getFocusRingStyles/getFocusRingStyles.web.js +2 -1
- package/build/lib/web/production/utils/getFocusRingStyles/getFocusRingStyles.web.js.map +1 -1
- package/build/lib/web/production/utils/metaAttribute/metaConstants.js +1 -0
- package/build/lib/web/production/utils/metaAttribute/metaConstants.js.map +1 -1
- package/build/types/components/index.d.ts +649 -5
- package/build/types/components/index.native.d.ts +80 -3
- package/package.json +1 -1
|
@@ -26,6 +26,7 @@ import getIn from '../../../utils/lodashButBetter/get.js';
|
|
|
26
26
|
import { useMergeRefs } from '../../../utils/useMergeRefs.js';
|
|
27
27
|
import { getOuterMotionRef, getInnerMotionRef } from '../../../utils/getMotionRefs.js';
|
|
28
28
|
import '../../../utils/makeAnalyticsAttribute/index.js';
|
|
29
|
+
import { useInputGroupContext } from '../../InputGroup/InputGroupContext.js';
|
|
29
30
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
30
31
|
import { throwBladeError } from '../../../utils/logger/logger.js';
|
|
31
32
|
import { getPlatformType } from '../../../utils/getPlatformType/getPlatformType.js';
|
|
@@ -303,6 +304,7 @@ var FocusRingWrapper = /*#__PURE__*/styled(BaseBox).withConfig({
|
|
|
303
304
|
};
|
|
304
305
|
});
|
|
305
306
|
var _BaseInput = function _BaseInput(_ref12, ref) {
|
|
307
|
+
var _inputGroupProps$isDi, _inputGroupProps$size;
|
|
306
308
|
var _ref12$as = _ref12.as,
|
|
307
309
|
as = _ref12$as === void 0 ? 'input' : _ref12$as,
|
|
308
310
|
label = _ref12.label,
|
|
@@ -395,6 +397,10 @@ var _BaseInput = function _BaseInput(_ref12, ref) {
|
|
|
395
397
|
setShowAllTagsWithAnimation = _React$useState4[1];
|
|
396
398
|
var isReactNative = getPlatformType() === 'react-native';
|
|
397
399
|
var defaultRole = hasPopup ? 'combobox' : undefined;
|
|
400
|
+
var inputGroupProps = useInputGroupContext();
|
|
401
|
+
var isInsideInputGroup = inputGroupProps.isInsideInputGroup;
|
|
402
|
+
var _isDisabled = (_inputGroupProps$isDi = inputGroupProps.isDisabled) !== null && _inputGroupProps$isDi !== void 0 ? _inputGroupProps$isDi : isDisabled;
|
|
403
|
+
var _size = (_inputGroupProps$size = inputGroupProps.size) !== null && _inputGroupProps$size !== void 0 ? _inputGroupProps$size : size;
|
|
398
404
|
React__default.useEffect(function () {
|
|
399
405
|
if (showAllTags) {
|
|
400
406
|
setShowAllTagsWithAnimation(true);
|
|
@@ -438,7 +444,7 @@ var _BaseInput = function _BaseInput(_ref12, ref) {
|
|
|
438
444
|
var _isRequired = isRequired || necessityIndicator === 'required';
|
|
439
445
|
var accessibilityProps = makeAccessible({
|
|
440
446
|
required: Boolean(_isRequired),
|
|
441
|
-
disabled: Boolean(
|
|
447
|
+
disabled: Boolean(_isDisabled),
|
|
442
448
|
invalid: Boolean(validationState === 'error'),
|
|
443
449
|
describedBy: getDescribedByElementId({
|
|
444
450
|
validationState: validationState,
|
|
@@ -482,7 +488,7 @@ var _BaseInput = function _BaseInput(_ref12, ref) {
|
|
|
482
488
|
alignItems: isLabelLeftPositioned ? 'center' : undefined,
|
|
483
489
|
position: "relative",
|
|
484
490
|
width: "100%",
|
|
485
|
-
children: [!hideLabelText && !isLabelInsideInput && label && /*#__PURE__*/jsxs(BaseBox, {
|
|
491
|
+
children: [!hideLabelText && !isLabelInsideInput && label && !isInsideInputGroup && /*#__PURE__*/jsxs(BaseBox, {
|
|
486
492
|
display: "flex",
|
|
487
493
|
flexDirection: isLabelLeftPositioned ? 'column' : 'row',
|
|
488
494
|
justifyContent: "space-between",
|
|
@@ -494,16 +500,17 @@ var _BaseInput = function _BaseInput(_ref12, ref) {
|
|
|
494
500
|
position: labelPosition,
|
|
495
501
|
id: labelId,
|
|
496
502
|
htmlFor: inputId,
|
|
497
|
-
size:
|
|
503
|
+
size: _size,
|
|
498
504
|
children: label
|
|
499
505
|
}), trailingHeaderSlot === null || trailingHeaderSlot === void 0 ? void 0 : trailingHeaderSlot(value !== null && value !== void 0 ? value : inputValue)]
|
|
500
506
|
}), /*#__PURE__*/jsx(FocusRingWrapper, {
|
|
501
507
|
currentInteraction: currentInteraction,
|
|
502
508
|
isTableInputCell: isTableInputCell,
|
|
509
|
+
className: "focus-ring-wrapper",
|
|
503
510
|
children: /*#__PURE__*/jsxs(BaseInputWrapper, {
|
|
504
511
|
isDropdownTrigger: isDropdownTrigger,
|
|
505
512
|
isTextArea: isTextArea,
|
|
506
|
-
isDisabled:
|
|
513
|
+
isDisabled: _isDisabled,
|
|
507
514
|
validationState: validationState,
|
|
508
515
|
currentInteraction: currentInteraction,
|
|
509
516
|
isLabelLeftPositioned: isLabelLeftPositioned,
|
|
@@ -516,7 +523,7 @@ var _BaseInput = function _BaseInput(_ref12, ref) {
|
|
|
516
523
|
}
|
|
517
524
|
},
|
|
518
525
|
maxTagRows: maxTagRows,
|
|
519
|
-
size:
|
|
526
|
+
size: _size,
|
|
520
527
|
numberOfLines: numberOfLines,
|
|
521
528
|
onClick: function onClick() {
|
|
522
529
|
if (!isReactNative) {
|
|
@@ -526,15 +533,15 @@ var _BaseInput = function _BaseInput(_ref12, ref) {
|
|
|
526
533
|
},
|
|
527
534
|
isTableInputCell: isTableInputCell,
|
|
528
535
|
children: [/*#__PURE__*/jsx(BaseInputVisuals, {
|
|
529
|
-
size:
|
|
536
|
+
size: _size,
|
|
530
537
|
leadingIcon: leadingIcon,
|
|
531
538
|
prefix: prefix,
|
|
532
|
-
isDisabled:
|
|
539
|
+
isDisabled: _isDisabled,
|
|
533
540
|
leadingInteractionElement: leadingInteractionElement
|
|
534
541
|
}), /*#__PURE__*/jsx(BaseInputTagSlot, {
|
|
535
542
|
renderAs: as,
|
|
536
543
|
tags: tags,
|
|
537
|
-
isDisabled:
|
|
544
|
+
isDisabled: _isDisabled,
|
|
538
545
|
showAllTags: showAllTagsWithAnimation,
|
|
539
546
|
setFocusOnInput: function setFocusOnInput() {
|
|
540
547
|
var innerRef = getInnerMotionRef({
|
|
@@ -558,7 +565,7 @@ var _BaseInput = function _BaseInput(_ref12, ref) {
|
|
|
558
565
|
setShouldIgnoreBlurAnimation: setShouldIgnoreBlurAnimation,
|
|
559
566
|
maxTagRows: maxTagRows,
|
|
560
567
|
inputWrapperRef: inputWrapperRef,
|
|
561
|
-
size:
|
|
568
|
+
size: _size,
|
|
562
569
|
numberOfLines: numberOfLines,
|
|
563
570
|
isTextArea: isTextArea,
|
|
564
571
|
children: /*#__PURE__*/jsx(StyledBaseInput, _objectSpread(_objectSpread({
|
|
@@ -573,7 +580,7 @@ var _BaseInput = function _BaseInput(_ref12, ref) {
|
|
|
573
580
|
defaultValue: defaultValue,
|
|
574
581
|
value: value,
|
|
575
582
|
placeholder: placeholder,
|
|
576
|
-
isDisabled:
|
|
583
|
+
isDisabled: _isDisabled,
|
|
577
584
|
validationState: validationState,
|
|
578
585
|
isRequired: _isRequired,
|
|
579
586
|
handleOnFocus: handleOnFocus,
|
|
@@ -607,7 +614,7 @@ var _BaseInput = function _BaseInput(_ref12, ref) {
|
|
|
607
614
|
shouldIgnoreBlurAnimation: shouldIgnoreBlurAnimation,
|
|
608
615
|
autoCapitalize: autoCapitalize,
|
|
609
616
|
isDropdownTrigger: isDropdownTrigger,
|
|
610
|
-
$size:
|
|
617
|
+
$size: _size,
|
|
611
618
|
valueComponentType: valueComponentType,
|
|
612
619
|
isTableInputCell: isTableInputCell,
|
|
613
620
|
tabIndex: tabIndex
|
|
@@ -619,18 +626,18 @@ var _BaseInput = function _BaseInput(_ref12, ref) {
|
|
|
619
626
|
onTrailingInteractionElementClick: onTrailingInteractionElementClick,
|
|
620
627
|
suffix: suffix,
|
|
621
628
|
trailingIcon: trailingIcon,
|
|
622
|
-
isDisabled:
|
|
629
|
+
isDisabled: _isDisabled,
|
|
623
630
|
validationState: validationState,
|
|
624
631
|
trailingButton: trailingButton,
|
|
625
|
-
size:
|
|
632
|
+
size: _size,
|
|
626
633
|
errorText: errorText,
|
|
627
634
|
successText: successText,
|
|
628
635
|
showHintsAsTooltip: showHintsAsTooltip
|
|
629
636
|
})]
|
|
630
637
|
})
|
|
631
638
|
})]
|
|
632
|
-
}), hideFormHint || showHintsAsTooltip ? null : /*#__PURE__*/jsx(BaseBox, {
|
|
633
|
-
marginLeft: makeSize(isLabelLeftPositioned && !hideLabelText ? formHintLeftLabelMarginLeft[
|
|
639
|
+
}), hideFormHint || showHintsAsTooltip || isInsideInputGroup ? null : /*#__PURE__*/jsx(BaseBox, {
|
|
640
|
+
marginLeft: makeSize(isLabelLeftPositioned && !hideLabelText ? formHintLeftLabelMarginLeft[_size] : 0),
|
|
634
641
|
children: /*#__PURE__*/jsxs(BaseBox, {
|
|
635
642
|
display: "flex",
|
|
636
643
|
flexDirection: "row",
|
|
@@ -646,7 +653,7 @@ var _BaseInput = function _BaseInput(_ref12, ref) {
|
|
|
646
653
|
helpTextId: helpTextId,
|
|
647
654
|
errorTextId: errorTextId,
|
|
648
655
|
successTextId: successTextId,
|
|
649
|
-
size:
|
|
656
|
+
size: _size
|
|
650
657
|
}), trailingFooterSlot === null || trailingFooterSlot === void 0 ? void 0 : trailingFooterSlot(value !== null && value !== void 0 ? value : inputValue)]
|
|
651
658
|
})
|
|
652
659
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseInput.js","sources":["../../../../../../../src/components/Input/BaseInput/BaseInput.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport type { ReactNode } from 'react';\nimport styled from 'styled-components';\nimport { StyledBaseInput } from './StyledBaseInput';\nimport { BaseInputVisuals } from './BaseInputVisuals';\nimport { BaseInputWrapper } from './BaseInputWrapper';\nimport { BaseInputTagSlot } from './BaseInputTagSlot';\nimport type { InputWrapperRef } from './types';\nimport { baseInputBorderBackgroundMotion, formHintLeftLabelMarginLeft } from './baseInputTokens';\nimport type {\n FormInputLabelProps,\n FormInputValidationProps,\n FormInputHandleOnEvent,\n FormInputOnEvent,\n FormHintProps,\n} from '~components/Form';\nimport { FormHint, FormLabel } from '~components/Form';\nimport type { IconComponent } from '~components/Icons';\nimport BaseBox from '~components/Box/BaseBox';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport {\n castWebType,\n getPlatformType,\n isReactNative,\n makeBorderSize,\n makeMotionTime,\n useBreakpoint,\n} from '~utils';\nimport type { Platform } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { useFormId } from '~components/Form/useFormId';\nimport { useTheme } from '~components/BladeProvider';\nimport useInteraction from '~utils/useInteraction';\nimport type { ActionStates } from '~utils/useInteraction';\nimport type {\n FormInputHandleOnClickEvent,\n FormInputHandleOnKeyDownEvent,\n} from '~components/Form/FormTypes';\nimport type {\n BladeElementRef,\n ContainerElementType,\n DataAnalyticsAttribute,\n TestID,\n} from '~utils/types';\nimport { makeSize } from '~utils/makeSize';\nimport type { AriaAttributes } from '~utils/makeAccessible';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { throwBladeError } from '~utils/logger';\nimport { announce } from '~components/LiveAnnouncer/LiveAnnouncer';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport type { LinkProps } from '~components/Link';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport getIn from '~utils/lodashButBetter/get';\nimport { useMergeRefs } from '~utils/useMergeRefs';\nimport type { MotionMetaProp } from '~components/BaseMotion';\nimport { getInnerMotionRef, getOuterMotionRef } from '~utils/getMotionRefs';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype CommonAutoCompleteSuggestionTypes =\n | 'none'\n | 'name'\n | 'email'\n | 'username'\n | 'password'\n | 'newPassword'\n | 'oneTimeCode'\n | 'telephone'\n | 'postalCode'\n | 'countryName'\n | 'creditCardNumber'\n | 'creditCardCSC'\n | 'creditCardExpiry'\n | 'creditCardExpiryMonth'\n | 'creditCardExpiryYear';\n\ntype WebAutoCompleteSuggestionType = CommonAutoCompleteSuggestionTypes | 'on';\n\ntype BaseInputCommonProps = FormInputLabelProps &\n DataAnalyticsAttribute &\n FormInputValidationProps & {\n /**\n * Determines if it needs to be rendered as input, textarea or button\n */\n as?: 'input' | 'textarea' | 'button';\n /**\n * ID that will be used for accessibility\n */\n id: string;\n /**\n * Placeholder text to be displayed inside the input field\n */\n placeholder?: string;\n /**\n * Type of Input Field to be rendered.\n *\n * @default text\n */\n type?: 'text' | 'telephone' | 'email' | 'url' | 'number' | 'search' | 'password';\n /**\n * Used to set the default value of input field when it's uncontrolled\n */\n defaultValue?: string;\n /**\n * The name of the input field.\n *\n * Useful in form submissions\n */\n name?: string;\n /**\n * The callback function to be invoked when the input field gets focus\n */\n onFocus?: FormInputOnEvent;\n /**\n * The callback function to be invoked when the value of the input field changes\n */\n onChange?: FormInputOnEvent;\n /**\n * The callback function to be invoked when input is clicked\n */\n onClick?: FormInputOnEvent;\n /**\n * The callback function to be invoked when the value of the input field has any input\n */\n onInput?: FormInputOnEvent;\n /**\n * The callback function to be invoked whenever there is a keyDown event\n */\n onKeyDown?: FormInputHandleOnKeyDownEvent;\n /**\n * The callback function to be invoked when the the input field loses focus\n *\n * For React Native this will call `onEndEditing` event since we want to get the last value of the input field\n */\n onBlur?: FormInputOnEvent;\n /**\n * Ignores the blur event animation (Used in Select to ignore blur animation when item in option is clicked)\n */\n shouldIgnoreBlurAnimation?: boolean;\n /**\n * sets boolean that ignores the blur animations on baseinput\n */\n setShouldIgnoreBlurAnimation?: (shouldIgnoreBlurAnimation: boolean) => void;\n /**\n * Used to turn the input field to controlled so user can control the value\n */\n value?: string;\n /**\n * Used to disable the input field\n */\n isDisabled?: boolean;\n /**\n * If true, the input is marked as required, and `required` attribute will be added\n */\n isRequired?: boolean;\n /**\n * Icon to be shown at the start of the input field\n */\n leadingIcon?: IconComponent;\n /**\n * Prefix symbol to be displayed at the beginning of the input field. If leadingIcon is provided it'll be placed after it\n */\n prefix?: string;\n /**\n * Element to be rendered before suffix. This is decided by the component which is extending BaseInput\n *\n * eg: consumers can render a loader or they could render a clear button\n */\n trailingInteractionElement?: ReactNode;\n /**\n * Callback to be invoked when the TrailingInteractionElement is clicked\n */\n onTrailingInteractionElementClick?: () => void;\n /**\n * Element to be rendered before prefix. This is decided by the component which is extending BaseInput\n *\n * eg: consumers can render a country selector or button\n */\n leadingInteractionElement?: ReactNode;\n /**\n * Suffix symbol to be displayed at the end of the input field. If trailingIcon is provided it'll be placed before it\n */\n suffix?: string;\n /**\n * Icon to be displayed at the end of the input field\n */\n trailingIcon?: IconComponent;\n /**\n * Displays the character counter under the input field\n */\n maxCharacters?: number;\n /**\n * alignment of the text inside input field\n */\n textAlign?: 'left' | 'center' | 'right';\n /**\n * If true, focuses the input field on load\n *\n * **Note:**\n * Automatically focusing a form control can confuse visually-impaired people using screen-reading technology and people with cognitive impairments.\n * When autofocus is assigned, screen-readers \"teleport\" their user to the form control without warning them beforehand.\n */\n autoFocus?: boolean;\n /**\n * Hints the platform to display an appropriate virtual keyboard\n *\n * **Native:** Passes as is the `keyboardType` attribute\n *\n * **Web:** Passes the value to the `inputMode` attribute\n */\n keyboardType?: 'text' | 'search' | 'telephone' | 'email' | 'url' | 'decimal';\n /**\n * determines what return key to show on the keyboard of mobile devices/virtual keyboard\n * **Note**: Few values are platform dependent and might not render on all the platforms\n *\n * `default` is only available on native. it'll be mapped to `enter` for web\n * `previous` is only available on native android\n */\n keyboardReturnKeyType?: 'default' | 'go' | 'done' | 'next' | 'previous' | 'search' | 'send';\n /**\n * Element to be rendered on the trailing slot of input field label\n */\n trailingHeaderSlot?: (value?: string) => ReactNode;\n /**\n * Element to be rendered on the trailing slot of input field footer\n */\n trailingFooterSlot?: (value?: string) => ReactNode;\n /**\n * Sets the textarea's number of lines\n */\n numberOfLines?: 1 | 2 | 3 | 4 | 5;\n /**\n * Sets the accessibility label for the input\n */\n accessibilityLabel?: string;\n /**\n * Sets the id of the label\n *\n * (Useful when assigning one label to multiple elements using aria-labelledby)\n */\n labelId?: string;\n /**\n * Can be used in select to set the id of the active descendant from the listbox\n */\n activeDescendant?: string;\n /**\n * Hides the label text\n */\n hideLabelText?: boolean;\n /**\n * Hides the form hint text\n */\n hideFormHint?: boolean;\n /**\n * componentName prop sets the data-blade-component attribute name\n * for internal metric collection purposes\n */\n componentName?: string;\n /**\n * whether the input has a popup\n */\n hasPopup?: AriaAttributes['hasPopup'];\n /**\n * id of the popup\n */\n popupId?: string;\n /**\n * true if popup is in expanded state\n */\n isPopupExpanded?: boolean;\n setInputWrapperRef?: (node: ContainerElementType) => void;\n /**\n * sets the autocapitalize behavior for the input\n */\n autoCapitalize?: 'none' | 'sentences' | 'words' | 'characters';\n\n /**\n * constraints the height of input to given number rows\n *\n * When set to expandable, input takes 1 row in the begining and expands to take 3 when active\n *\n * @default 'single'\n */\n maxTagRows?: 'single' | 'multiple' | 'expandable';\n\n /**\n * A slot for adding tags to input\n */\n tags?: React.ReactElement[] | null;\n\n /**\n * Disables stripping of tags and shows all tags\n */\n showAllTags?: boolean;\n\n /**\n * State variable of active tag index\n */\n activeTagIndex?: number;\n\n /**\n * Is this input SelectInput or AutoComplete\n */\n isDropdownTrigger?: boolean;\n\n /**\n * Is the label expected to be rendered inside input?\n * Used in AutoComplete and Select when label can't exist outside\n *\n */\n isLabelInsideInput?: boolean;\n\n /**\n * State setter for active tag index\n */\n setActiveTagIndex?: (activeTagIndex: number) => void;\n /**\n * Sets the size of the input field\n * @default medium\n */\n size?: 'medium' | 'large';\n /**\n * Link button to be rendered at the end of the input field.\n * **Note:** `size` of the Link will be set to the same size as the input field, `isDisabled` will follow Input's `isDisabled`, & `variant` will be set to `button`.\n * Example:\n * ```tsx\n * trailingButton={<Link onClick={handleClick}>Apply</Link>}\n * ```\n */\n trailingButton?: React.ReactElement<LinkProps>;\n /**\n * Whether to use Text or Heading component for Input text\n * @default text\n **/\n valueComponentType?: 'text' | 'heading';\n /**\n * Whether to render the input as a table cell\n * @default true\n **/\n isTableInputCell?: boolean;\n /**\n * Hides the form hints and shows them as tooltip of trailing\n */\n showHintsAsTooltip?: boolean;\n\n role?: AriaAttributes['role'];\n\n /**\n * Tab Index of the input field\n *\n * @default undefined\n */\n tabIndex?: number;\n } & TestID &\n Platform.Select<{\n native: {\n /**\n * The callback function to be invoked when the value of the input field is submitted.\n */\n onSubmit?: FormInputOnEvent;\n /**\n * determines what autoComplete suggestion type to show\n *\n * Internally it'll render platform specific attributes:\n *\n * - web: `autocomplete`\n * - iOS: `textContentType`\n * - android: `autoComplete`\n *\n */\n autoCompleteSuggestionType?: CommonAutoCompleteSuggestionTypes;\n };\n web: {\n /**\n * This is a react-native only prop and has no effect on web.\n */\n onSubmit?: undefined;\n /**\n * determines what autoComplete suggestion type to show\n *\n * Internally it'll render platform specific attributes:\n *\n * - web: `autocomplete`\n * - iOS: `textContentType`\n * - android: `autoComplete`\n *\n */\n autoCompleteSuggestionType?: WebAutoCompleteSuggestionType;\n };\n }> &\n StyledPropsBlade &\n MotionMetaProp;\n\n/*\n Mandatory accessibilityLabel prop when label is not provided\n*/\ntype BaseInputPropsWithA11yLabel = {\n /**\n * Label to be shown for the input field\n */\n label?: undefined;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel: string;\n};\n\n/*\n Optional accessibilityLabel prop when label is provided\n*/\ntype BaseInputPropsWithLabel = {\n /**\n * Label to be shown for the input field\n */\n label: string;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel?: string;\n};\n\nexport type BaseInputProps = (BaseInputPropsWithA11yLabel | BaseInputPropsWithLabel) &\n BaseInputCommonProps;\n\nconst autoCompleteSuggestionTypeValues = [\n 'none',\n 'on',\n 'name',\n 'email',\n 'username',\n 'password',\n 'newPassword',\n 'oneTimeCode',\n 'telephone',\n 'postalCode',\n 'countryName',\n 'creditCardNumber',\n 'creditCardCSC',\n 'creditCardExpiry',\n 'creditCardExpiryMonth',\n 'creditCardExpiryYear',\n];\n\ntype OnInputKeydownTagHandlerType = (key: string | undefined) => void;\nconst useTags = (\n tags: BaseInputProps['tags'],\n activeTagIndex: number,\n setActiveTagIndex?: (activeTagIndex: number) => void,\n): {\n onInputKeydownTagHandler: OnInputKeydownTagHandlerType;\n visibleTagsCountRef: React.MutableRefObject<number>;\n} => {\n const visibleTagsCountRef = React.useRef<number>(0);\n\n React.useEffect(() => {\n if (tags && activeTagIndex >= 0 && activeTagIndex < tags.length) {\n const tagTitle = tags[activeTagIndex]?.props?.children;\n if (tagTitle) {\n announce(`Close ${tagTitle} Tag`);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [activeTagIndex, tags?.length]);\n\n const onTagLeft = (): void => {\n if (activeTagIndex < 0) {\n setActiveTagIndex?.(visibleTagsCountRef.current - 1);\n }\n\n if (activeTagIndex > 0) {\n setActiveTagIndex?.(activeTagIndex - 1);\n }\n };\n\n const onTagRight = (): void => {\n if (activeTagIndex < visibleTagsCountRef.current - 1) {\n setActiveTagIndex?.(activeTagIndex + 1);\n }\n };\n\n const onTagRemove = (): void => {\n if (activeTagIndex >= 0 && activeTagIndex < visibleTagsCountRef.current && tags) {\n tags[activeTagIndex].props.onDismiss({ tagIndex: activeTagIndex });\n }\n };\n\n const onInputKeydownTagHandler: OnInputKeydownTagHandlerType = (key) => {\n if (tags && tags.length > 0) {\n if (key === 'ArrowRight') {\n onTagRight();\n }\n\n if (key === 'ArrowLeft') {\n onTagLeft();\n }\n\n if (key === 'Backspace') {\n onTagRemove();\n }\n }\n };\n\n return {\n onInputKeydownTagHandler,\n visibleTagsCountRef,\n };\n};\n\nconst useInput = ({\n value,\n defaultValue,\n onClick,\n onFocus,\n onChange,\n onBlur,\n onSubmit,\n onInput,\n onKeyDown,\n onInputKeydownTagHandler,\n}: Pick<\n BaseInputProps,\n | 'value'\n | 'defaultValue'\n | 'onFocus'\n | 'onChange'\n | 'onBlur'\n | 'onInput'\n | 'onKeyDown'\n | 'onClick'\n | 'onSubmit'\n> & {\n onInputKeydownTagHandler: OnInputKeydownTagHandlerType;\n}): {\n handleOnFocus: FormInputHandleOnEvent;\n handleOnClick: FormInputHandleOnClickEvent;\n handleOnChange: FormInputHandleOnEvent;\n handleOnBlur: FormInputHandleOnEvent;\n handleOnSubmit: FormInputHandleOnEvent;\n handleOnInput: FormInputHandleOnEvent;\n handleOnKeyDown: FormInputHandleOnKeyDownEvent;\n inputValue?: string;\n} => {\n if (__DEV__) {\n if (value && defaultValue) {\n throwBladeError({\n message: `Either 'value' or 'defaultValue' shall be passed. This decides if the input field is controlled or uncontrolled`,\n moduleName: 'Input',\n });\n }\n }\n\n const [inputValue, setInputValue] = React.useState(defaultValue ?? value);\n\n const handleOnFocus: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onFocus?.({\n name,\n value: _value,\n });\n },\n [onFocus],\n );\n\n const handleOnClick: FormInputHandleOnClickEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.currentTarget.value ?? '';\n }\n\n onClick?.({\n name,\n value: _value,\n });\n },\n [onClick],\n );\n\n const handleOnSubmit: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n if (isReactNative()) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment, @typescript-eslint/prefer-ts-expect-error\n //@ts-ignore need to ignore this since it will throw a TS error for web but not for native\n onSubmit?.({\n name,\n value: _value,\n });\n }\n },\n [onSubmit],\n );\n\n const handleOnBlur: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n if (getPlatformType() === 'react-native' && typeof value == 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onBlur?.({\n name,\n value: _value,\n });\n },\n [onBlur],\n );\n\n const handleOnChange: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onChange?.({\n name,\n value: _value,\n });\n setInputValue(_value);\n },\n [onChange],\n );\n\n const handleOnInput: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n if (getPlatformType() === 'react-native' && typeof value == 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onInput?.({\n name,\n value: _value,\n });\n },\n [onInput],\n );\n\n const handleOnKeyDown: FormInputHandleOnKeyDownEvent = React.useCallback(\n ({ name, key, code, event }) => {\n onInputKeydownTagHandler(key);\n onKeyDown?.({\n name,\n key,\n code,\n event,\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [onKeyDown],\n );\n\n return {\n handleOnFocus,\n handleOnClick,\n handleOnChange,\n handleOnBlur,\n handleOnSubmit,\n handleOnInput,\n handleOnKeyDown,\n inputValue,\n };\n};\n\nexport const getHintType = ({\n validationState,\n hasHelpText,\n}: {\n validationState: BaseInputProps['validationState'];\n hasHelpText: boolean;\n}): FormHintProps['type'] => {\n if (validationState === 'error') {\n return 'error';\n }\n\n if (validationState === 'success') {\n return 'success';\n }\n\n if (hasHelpText) {\n return 'help';\n }\n\n return 'help';\n};\n\nconst getDescribedByElementId = ({\n validationState,\n hasErrorText,\n hasSuccessText,\n hasHelpText,\n errorTextId,\n successTextId,\n helpTextId,\n}: {\n validationState: BaseInputProps['validationState'];\n hasErrorText: boolean;\n hasSuccessText: boolean;\n hasHelpText: boolean;\n errorTextId: string;\n successTextId: string;\n helpTextId: string;\n}): string => {\n if (validationState === 'error' && hasErrorText) {\n return errorTextId;\n }\n\n if (validationState === 'success' && hasSuccessText) {\n return successTextId;\n }\n\n if (hasHelpText) {\n return helpTextId;\n }\n\n return '';\n};\n\nconst FocusRingWrapper = styled(BaseBox)<{\n currentInteraction: ActionStates;\n isTableInputCell: NonNullable<BaseInputProps['isTableInputCell']>;\n}>(({ theme, currentInteraction, isTableInputCell }) => ({\n borderRadius: makeBorderSize(\n isTableInputCell ? theme.border.radius.none : theme.border.radius.medium,\n ),\n width: '100%',\n '&:focus-within': !isTableInputCell\n ? {\n ...getFocusRingStyles({\n theme,\n }),\n transitionDuration: castWebType(\n makeMotionTime(\n getIn(\n theme.motion.duration,\n baseInputBorderBackgroundMotion[currentInteraction === 'focus' ? 'enter' : 'exit']\n .duration,\n ),\n ),\n ),\n transitionTimingFunction: castWebType(\n theme.motion.easing[\n baseInputBorderBackgroundMotion[currentInteraction === 'focus' ? 'enter' : 'exit']\n .easing\n ],\n ),\n }\n : {},\n}));\n\nconst _BaseInput: React.ForwardRefRenderFunction<BladeElementRef, BaseInputProps> = (\n {\n as = 'input',\n label,\n labelPosition = 'top',\n placeholder,\n type = 'text',\n defaultValue,\n tags,\n showAllTags = false,\n activeTagIndex = -1,\n setActiveTagIndex,\n name,\n value,\n onFocus,\n onChange,\n onInput,\n onBlur,\n onSubmit,\n onClick,\n onKeyDown,\n isDisabled,\n necessityIndicator,\n validationState,\n errorText,\n helpText,\n successText,\n isRequired,\n leadingIcon,\n prefix,\n trailingInteractionElement,\n onTrailingInteractionElementClick,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n maxCharacters,\n textAlign,\n autoFocus,\n keyboardReturnKeyType,\n keyboardType,\n autoCompleteSuggestionType,\n trailingHeaderSlot,\n trailingFooterSlot,\n numberOfLines,\n id,\n componentName,\n accessibilityLabel,\n labelId,\n activeDescendant,\n hideLabelText,\n hideFormHint,\n hasPopup,\n popupId,\n isPopupExpanded,\n maxTagRows,\n shouldIgnoreBlurAnimation,\n setShouldIgnoreBlurAnimation,\n autoCapitalize,\n setInputWrapperRef,\n testID,\n isDropdownTrigger,\n isLabelInsideInput,\n size = 'medium',\n trailingButton,\n valueComponentType = 'text',\n isTableInputCell = false,\n showHintsAsTooltip = false,\n _motionMeta,\n role,\n tabIndex,\n ...rest\n },\n ref,\n) => {\n const { theme } = useTheme();\n const inputRef = React.useRef<BladeElementRef>(null);\n const mergedInputRef = useMergeRefs(ref, inputRef);\n const inputWrapperRef: InputWrapperRef = React.useRef(null);\n const { onInputKeydownTagHandler, visibleTagsCountRef } = useTags(\n tags,\n activeTagIndex,\n setActiveTagIndex,\n );\n const [showAllTagsWithAnimation, setShowAllTagsWithAnimation] = React.useState(false);\n const isReactNative = getPlatformType() === 'react-native';\n const defaultRole = hasPopup ? 'combobox' : undefined;\n\n React.useEffect(() => {\n if (showAllTags) {\n setShowAllTagsWithAnimation(true);\n } else if (maxTagRows !== 'expandable') {\n setShowAllTagsWithAnimation(false);\n }\n }, [showAllTags, maxTagRows]);\n\n const {\n handleOnFocus,\n handleOnChange,\n handleOnClick,\n handleOnBlur,\n handleOnSubmit,\n handleOnInput,\n handleOnKeyDown,\n inputValue,\n } = useInput({\n defaultValue,\n value,\n onFocus,\n onClick,\n onChange,\n onBlur,\n onSubmit,\n onInput,\n onKeyDown,\n onInputKeydownTagHandler,\n });\n const { inputId, helpTextId, errorTextId, successTextId } = useFormId(id);\n const { matchedDeviceType } = useBreakpoint({ breakpoints: theme.breakpoints });\n const isLabelLeftPositioned = labelPosition === 'left' && matchedDeviceType === 'desktop';\n const { currentInteraction, setCurrentInteraction } = useInteraction();\n const _isRequired = isRequired || necessityIndicator === 'required';\n\n const accessibilityProps = makeAccessible({\n required: Boolean(_isRequired),\n disabled: Boolean(isDisabled),\n invalid: Boolean(validationState === 'error'),\n describedBy: getDescribedByElementId({\n validationState,\n hasErrorText: Boolean(errorText),\n hasSuccessText: Boolean(successText),\n hasHelpText: Boolean(helpText),\n errorTextId,\n successTextId,\n helpTextId,\n }),\n label: accessibilityLabel,\n hasPopup,\n expanded: hasPopup ? isPopupExpanded : undefined,\n controls: hasPopup ? popupId : undefined,\n role: role ?? defaultRole,\n activeDescendant,\n });\n\n const willRenderHintText =\n Boolean(helpText) ||\n (validationState === 'success' && Boolean(successText)) ||\n (validationState === 'error' && Boolean(errorText));\n\n if (__DEV__) {\n if (\n autoCompleteSuggestionType &&\n !autoCompleteSuggestionTypeValues.includes(autoCompleteSuggestionType)\n ) {\n throwBladeError({\n message: `Expected autoCompleteSuggestionType to be one of ${autoCompleteSuggestionTypeValues.join(\n ', ',\n )} but received ${autoCompleteSuggestionType}`,\n moduleName: 'Input',\n });\n }\n }\n\n const isTextArea = as === 'textarea';\n return (\n <BaseBox\n ref={getOuterMotionRef({ _motionMeta, ref })}\n {...metaAttribute({ name: componentName, testID })}\n {...getStyledProps(rest)}\n >\n <BaseBox\n display=\"flex\"\n flexDirection={isLabelLeftPositioned ? 'row' : 'column'}\n justifyContent={isLabelLeftPositioned ? 'center' : undefined}\n alignItems={isLabelLeftPositioned ? 'center' : undefined}\n position=\"relative\"\n width=\"100%\"\n >\n {!hideLabelText && !isLabelInsideInput && label && (\n <BaseBox\n display=\"flex\"\n flexDirection={isLabelLeftPositioned ? 'column' : 'row'}\n justifyContent=\"space-between\"\n alignSelf={isTextArea ? 'flex-start' : undefined}\n marginY={isTextArea && isLabelLeftPositioned ? 'spacing.3' : 'spacing.0'}\n >\n <FormLabel\n as=\"label\"\n necessityIndicator={necessityIndicator}\n position={labelPosition}\n id={labelId}\n htmlFor={inputId}\n size={size}\n >\n {label}\n </FormLabel>\n {trailingHeaderSlot?.(value ?? inputValue)}\n </BaseBox>\n )}\n <FocusRingWrapper\n currentInteraction={currentInteraction}\n isTableInputCell={isTableInputCell}\n >\n <BaseInputWrapper\n isDropdownTrigger={isDropdownTrigger}\n isTextArea={isTextArea}\n isDisabled={isDisabled}\n validationState={validationState}\n currentInteraction={currentInteraction}\n isLabelLeftPositioned={isLabelLeftPositioned}\n showAllTags={showAllTags}\n setShowAllTagsWithAnimation={setShowAllTagsWithAnimation}\n ref={(refNode) => {\n if (refNode) {\n setInputWrapperRef?.(refNode);\n inputWrapperRef.current = refNode;\n }\n }}\n maxTagRows={maxTagRows}\n size={size}\n numberOfLines={numberOfLines}\n onClick={() => {\n if (!isReactNative) {\n inputRef.current?.focus();\n }\n }}\n isTableInputCell={isTableInputCell}\n >\n <BaseInputVisuals\n size={size}\n leadingIcon={leadingIcon}\n prefix={prefix}\n isDisabled={isDisabled}\n leadingInteractionElement={leadingInteractionElement}\n />\n <BaseInputTagSlot\n renderAs={as}\n tags={tags}\n isDisabled={isDisabled}\n showAllTags={showAllTagsWithAnimation}\n setFocusOnInput={() => {\n const innerRef = getInnerMotionRef({ _motionMeta, ref });\n if (innerRef && !isReactNative && 'current' in innerRef) {\n innerRef.current?.focus();\n }\n }}\n labelPrefix={isLabelInsideInput ? label : undefined}\n isDropdownTrigger={isDropdownTrigger}\n visibleTagsCountRef={visibleTagsCountRef}\n handleOnInputClick={(e) => {\n handleOnClick({ name, value: isReactNative ? value : e });\n }}\n setShouldIgnoreBlurAnimation={setShouldIgnoreBlurAnimation}\n maxTagRows={maxTagRows}\n inputWrapperRef={inputWrapperRef}\n size={size}\n numberOfLines={numberOfLines}\n isTextArea={isTextArea}\n >\n <StyledBaseInput\n as={as}\n id={inputId}\n ref={getInnerMotionRef({ _motionMeta, ref: mergedInputRef as any }) as never}\n name={name}\n type={type}\n defaultValue={defaultValue}\n value={value}\n placeholder={placeholder}\n isDisabled={isDisabled}\n validationState={validationState}\n isRequired={_isRequired}\n handleOnFocus={handleOnFocus}\n handleOnChange={handleOnChange}\n handleOnBlur={handleOnBlur}\n handleOnSubmit={handleOnSubmit}\n handleOnInput={handleOnInput}\n handleOnKeyDown={handleOnKeyDown}\n handleOnClick={handleOnClick}\n leadingIcon={leadingIcon}\n prefix={prefix}\n trailingInteractionElement={trailingInteractionElement}\n leadingInteractionElement={leadingInteractionElement}\n suffix={suffix}\n trailingIcon={trailingIcon}\n maxCharacters={maxCharacters}\n textAlign={textAlign}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n keyboardReturnKeyType={keyboardReturnKeyType}\n keyboardType={keyboardType}\n autoCompleteSuggestionType={autoCompleteSuggestionType}\n accessibilityProps={accessibilityProps}\n currentInteraction={currentInteraction}\n setCurrentInteraction={setCurrentInteraction}\n numberOfLines={numberOfLines}\n isTextArea={isTextArea || maxTagRows === 'multiple' || maxTagRows === 'expandable'}\n hasPopup={hasPopup}\n hasTags={!!(tags && tags.length > 0)}\n shouldIgnoreBlurAnimation={shouldIgnoreBlurAnimation}\n autoCapitalize={autoCapitalize}\n isDropdownTrigger={isDropdownTrigger}\n $size={size}\n valueComponentType={valueComponentType}\n isTableInputCell={isTableInputCell}\n tabIndex={tabIndex}\n {...metaAttribute({ name: MetaConstants.StyledBaseInput })}\n {...makeAnalyticsAttribute(rest)}\n />\n </BaseInputTagSlot>\n <BaseInputVisuals\n trailingInteractionElement={trailingInteractionElement}\n onTrailingInteractionElementClick={onTrailingInteractionElementClick}\n suffix={suffix}\n trailingIcon={trailingIcon}\n isDisabled={isDisabled}\n validationState={validationState}\n trailingButton={trailingButton}\n size={size}\n errorText={errorText}\n successText={successText}\n showHintsAsTooltip={showHintsAsTooltip}\n />\n </BaseInputWrapper>\n </FocusRingWrapper>\n </BaseBox>\n\n {hideFormHint || showHintsAsTooltip ? null : (\n <BaseBox\n marginLeft={makeSize(\n isLabelLeftPositioned && !hideLabelText ? formHintLeftLabelMarginLeft[size] : 0,\n )}\n >\n <BaseBox\n display=\"flex\"\n flexDirection=\"row\"\n justifyContent={willRenderHintText ? 'space-between' : 'flex-end'}\n >\n <FormHint\n type={getHintType({ validationState, hasHelpText: Boolean(helpText) })}\n helpText={helpText}\n errorText={errorText}\n successText={successText}\n helpTextId={helpTextId}\n errorTextId={errorTextId}\n successTextId={successTextId}\n size={size}\n />\n {trailingFooterSlot?.(value ?? inputValue)}\n </BaseBox>\n </BaseBox>\n )}\n </BaseBox>\n );\n};\n\nconst BaseInputWithRef = React.forwardRef(_BaseInput);\nconst BaseInput = assignWithoutSideEffects(BaseInputWithRef, { displayName: 'BaseInput' });\n\nexport { BaseInput };\n"],"names":["autoCompleteSuggestionTypeValues","useTags","tags","activeTagIndex","setActiveTagIndex","visibleTagsCountRef","React","useRef","useEffect","length","_tags$activeTagIndex","_tags$activeTagIndex$","tagTitle","props","children","announce","concat","onTagLeft","current","onTagRight","onTagRemove","onDismiss","tagIndex","onInputKeydownTagHandler","key","useInput","_ref","value","defaultValue","onClick","onFocus","onChange","onBlur","onSubmit","onInput","onKeyDown","throwBladeError","message","moduleName","_React$useState","useState","_React$useState2","_slicedToArray","inputValue","setInputValue","handleOnFocus","useCallback","_ref2","name","_value","getPlatformType","_value$target$value","target","handleOnClick","_ref3","_value$currentTarget$","currentTarget","handleOnSubmit","_ref4","_value$target$value2","isReactNative","handleOnBlur","_ref5","_value$target$value3","handleOnChange","_ref6","_value$target$value4","handleOnInput","_ref7","_value$target$value5","handleOnKeyDown","_ref8","code","event","getHintType","_ref9","validationState","hasHelpText","getDescribedByElementId","_ref10","hasErrorText","hasSuccessText","errorTextId","successTextId","helpTextId","FocusRingWrapper","styled","BaseBox","withConfig","displayName","componentId","_ref11","theme","currentInteraction","isTableInputCell","borderRadius","makeBorderSize","border","radius","none","medium","width","_objectSpread","getFocusRingStyles","transitionDuration","castWebType","makeMotionTime","getIn","motion","duration","baseInputBorderBackgroundMotion","transitionTimingFunction","easing","_BaseInput","_ref12","ref","_ref12$as","as","label","_ref12$labelPosition","labelPosition","placeholder","_ref12$type","type","_ref12$showAllTags","showAllTags","_ref12$activeTagIndex","isDisabled","necessityIndicator","errorText","helpText","successText","isRequired","leadingIcon","prefix","trailingInteractionElement","onTrailingInteractionElementClick","leadingInteractionElement","suffix","trailingIcon","maxCharacters","textAlign","autoFocus","keyboardReturnKeyType","keyboardType","autoCompleteSuggestionType","trailingHeaderSlot","trailingFooterSlot","numberOfLines","id","componentName","accessibilityLabel","labelId","activeDescendant","hideLabelText","hideFormHint","hasPopup","popupId","isPopupExpanded","maxTagRows","shouldIgnoreBlurAnimation","setShouldIgnoreBlurAnimation","autoCapitalize","setInputWrapperRef","testID","isDropdownTrigger","isLabelInsideInput","_ref12$size","size","trailingButton","_ref12$valueComponent","valueComponentType","_ref12$isTableInputCe","_ref12$showHintsAsToo","showHintsAsTooltip","_motionMeta","role","tabIndex","rest","_objectWithoutProperties","_excluded","_useTheme","useTheme","inputRef","mergedInputRef","useMergeRefs","inputWrapperRef","_useTags","_React$useState3","_React$useState4","showAllTagsWithAnimation","setShowAllTagsWithAnimation","defaultRole","undefined","_useInput","_useFormId","useFormId","inputId","_useBreakpoint","useBreakpoint","breakpoints","matchedDeviceType","isLabelLeftPositioned","_useInteraction","useInteraction","setCurrentInteraction","_isRequired","accessibilityProps","makeAccessible","required","Boolean","disabled","invalid","describedBy","expanded","controls","willRenderHintText","includes","join","isTextArea","_jsxs","getOuterMotionRef","metaAttribute","getStyledProps","display","flexDirection","justifyContent","alignItems","position","alignSelf","marginY","_jsx","FormLabel","htmlFor","BaseInputWrapper","refNode","_inputRef$current","focus","BaseInputVisuals","BaseInputTagSlot","renderAs","setFocusOnInput","innerRef","getInnerMotionRef","_innerRef$current","labelPrefix","handleOnInputClick","e","StyledBaseInput","hasTags","$size","MetaConstants","makeAnalyticsAttribute","marginLeft","makeSize","formHintLeftLabelMarginLeft","FormHint","BaseInputWithRef","forwardRef","BaseInput","assignWithoutSideEffects"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseInput.js","sources":["../../../../../../../src/components/Input/BaseInput/BaseInput.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport type { ReactNode } from 'react';\nimport styled from 'styled-components';\nimport { StyledBaseInput } from './StyledBaseInput';\nimport { BaseInputVisuals } from './BaseInputVisuals';\nimport { BaseInputWrapper } from './BaseInputWrapper';\nimport { BaseInputTagSlot } from './BaseInputTagSlot';\nimport type { InputWrapperRef } from './types';\nimport { baseInputBorderBackgroundMotion, formHintLeftLabelMarginLeft } from './baseInputTokens';\nimport type {\n FormInputLabelProps,\n FormInputValidationProps,\n FormInputHandleOnEvent,\n FormInputOnEvent,\n FormHintProps,\n} from '~components/Form';\nimport { FormHint, FormLabel } from '~components/Form';\nimport type { IconComponent } from '~components/Icons';\nimport BaseBox from '~components/Box/BaseBox';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport {\n castWebType,\n getPlatformType,\n isReactNative,\n makeBorderSize,\n makeMotionTime,\n useBreakpoint,\n} from '~utils';\nimport type { Platform } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { useFormId } from '~components/Form/useFormId';\nimport { useTheme } from '~components/BladeProvider';\nimport useInteraction from '~utils/useInteraction';\nimport type { ActionStates } from '~utils/useInteraction';\nimport type {\n FormInputHandleOnClickEvent,\n FormInputHandleOnKeyDownEvent,\n} from '~components/Form/FormTypes';\nimport type {\n BladeElementRef,\n ContainerElementType,\n DataAnalyticsAttribute,\n TestID,\n} from '~utils/types';\nimport { makeSize } from '~utils/makeSize';\nimport type { AriaAttributes } from '~utils/makeAccessible';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { throwBladeError } from '~utils/logger';\nimport { announce } from '~components/LiveAnnouncer/LiveAnnouncer';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport type { LinkProps } from '~components/Link';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport getIn from '~utils/lodashButBetter/get';\nimport { useMergeRefs } from '~utils/useMergeRefs';\nimport type { MotionMetaProp } from '~components/BaseMotion';\nimport { getInnerMotionRef, getOuterMotionRef } from '~utils/getMotionRefs';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport { useInputGroupContext } from '~components/InputGroup/InputGroupContext';\n\ntype CommonAutoCompleteSuggestionTypes =\n | 'none'\n | 'name'\n | 'email'\n | 'username'\n | 'password'\n | 'newPassword'\n | 'oneTimeCode'\n | 'telephone'\n | 'postalCode'\n | 'countryName'\n | 'creditCardNumber'\n | 'creditCardCSC'\n | 'creditCardExpiry'\n | 'creditCardExpiryMonth'\n | 'creditCardExpiryYear';\n\ntype WebAutoCompleteSuggestionType = CommonAutoCompleteSuggestionTypes | 'on';\n\ntype BaseInputCommonProps = FormInputLabelProps &\n DataAnalyticsAttribute &\n FormInputValidationProps & {\n /**\n * Determines if it needs to be rendered as input, textarea or button\n */\n as?: 'input' | 'textarea' | 'button';\n /**\n * ID that will be used for accessibility\n */\n id: string;\n /**\n * Placeholder text to be displayed inside the input field\n */\n placeholder?: string;\n /**\n * Type of Input Field to be rendered.\n *\n * @default text\n */\n type?: 'text' | 'telephone' | 'email' | 'url' | 'number' | 'search' | 'password';\n /**\n * Used to set the default value of input field when it's uncontrolled\n */\n defaultValue?: string;\n /**\n * The name of the input field.\n *\n * Useful in form submissions\n */\n name?: string;\n /**\n * The callback function to be invoked when the input field gets focus\n */\n onFocus?: FormInputOnEvent;\n /**\n * The callback function to be invoked when the value of the input field changes\n */\n onChange?: FormInputOnEvent;\n /**\n * The callback function to be invoked when input is clicked\n */\n onClick?: FormInputOnEvent;\n /**\n * The callback function to be invoked when the value of the input field has any input\n */\n onInput?: FormInputOnEvent;\n /**\n * The callback function to be invoked whenever there is a keyDown event\n */\n onKeyDown?: FormInputHandleOnKeyDownEvent;\n /**\n * The callback function to be invoked when the the input field loses focus\n *\n * For React Native this will call `onEndEditing` event since we want to get the last value of the input field\n */\n onBlur?: FormInputOnEvent;\n /**\n * Ignores the blur event animation (Used in Select to ignore blur animation when item in option is clicked)\n */\n shouldIgnoreBlurAnimation?: boolean;\n /**\n * sets boolean that ignores the blur animations on baseinput\n */\n setShouldIgnoreBlurAnimation?: (shouldIgnoreBlurAnimation: boolean) => void;\n /**\n * Used to turn the input field to controlled so user can control the value\n */\n value?: string;\n /**\n * Used to disable the input field\n */\n isDisabled?: boolean;\n /**\n * If true, the input is marked as required, and `required` attribute will be added\n */\n isRequired?: boolean;\n /**\n * Icon to be shown at the start of the input field\n */\n leadingIcon?: IconComponent;\n /**\n * Prefix symbol to be displayed at the beginning of the input field. If leadingIcon is provided it'll be placed after it\n */\n prefix?: string;\n /**\n * Element to be rendered before suffix. This is decided by the component which is extending BaseInput\n *\n * eg: consumers can render a loader or they could render a clear button\n */\n trailingInteractionElement?: ReactNode;\n /**\n * Callback to be invoked when the TrailingInteractionElement is clicked\n */\n onTrailingInteractionElementClick?: () => void;\n /**\n * Element to be rendered before prefix. This is decided by the component which is extending BaseInput\n *\n * eg: consumers can render a country selector or button\n */\n leadingInteractionElement?: ReactNode;\n /**\n * Suffix symbol to be displayed at the end of the input field. If trailingIcon is provided it'll be placed before it\n */\n suffix?: string;\n /**\n * Icon to be displayed at the end of the input field\n */\n trailingIcon?: IconComponent;\n /**\n * Displays the character counter under the input field\n */\n maxCharacters?: number;\n /**\n * alignment of the text inside input field\n */\n textAlign?: 'left' | 'center' | 'right';\n /**\n * If true, focuses the input field on load\n *\n * **Note:**\n * Automatically focusing a form control can confuse visually-impaired people using screen-reading technology and people with cognitive impairments.\n * When autofocus is assigned, screen-readers \"teleport\" their user to the form control without warning them beforehand.\n */\n autoFocus?: boolean;\n /**\n * Hints the platform to display an appropriate virtual keyboard\n *\n * **Native:** Passes as is the `keyboardType` attribute\n *\n * **Web:** Passes the value to the `inputMode` attribute\n */\n keyboardType?: 'text' | 'search' | 'telephone' | 'email' | 'url' | 'decimal';\n /**\n * determines what return key to show on the keyboard of mobile devices/virtual keyboard\n * **Note**: Few values are platform dependent and might not render on all the platforms\n *\n * `default` is only available on native. it'll be mapped to `enter` for web\n * `previous` is only available on native android\n */\n keyboardReturnKeyType?: 'default' | 'go' | 'done' | 'next' | 'previous' | 'search' | 'send';\n /**\n * Element to be rendered on the trailing slot of input field label\n */\n trailingHeaderSlot?: (value?: string) => ReactNode;\n /**\n * Element to be rendered on the trailing slot of input field footer\n */\n trailingFooterSlot?: (value?: string) => ReactNode;\n /**\n * Sets the textarea's number of lines\n */\n numberOfLines?: 1 | 2 | 3 | 4 | 5;\n /**\n * Sets the accessibility label for the input\n */\n accessibilityLabel?: string;\n /**\n * Sets the id of the label\n *\n * (Useful when assigning one label to multiple elements using aria-labelledby)\n */\n labelId?: string;\n /**\n * Can be used in select to set the id of the active descendant from the listbox\n */\n activeDescendant?: string;\n /**\n * Hides the label text\n */\n hideLabelText?: boolean;\n /**\n * Hides the form hint text\n */\n hideFormHint?: boolean;\n /**\n * componentName prop sets the data-blade-component attribute name\n * for internal metric collection purposes\n */\n componentName?: string;\n /**\n * whether the input has a popup\n */\n hasPopup?: AriaAttributes['hasPopup'];\n /**\n * id of the popup\n */\n popupId?: string;\n /**\n * true if popup is in expanded state\n */\n isPopupExpanded?: boolean;\n setInputWrapperRef?: (node: ContainerElementType) => void;\n /**\n * sets the autocapitalize behavior for the input\n */\n autoCapitalize?: 'none' | 'sentences' | 'words' | 'characters';\n\n /**\n * constraints the height of input to given number rows\n *\n * When set to expandable, input takes 1 row in the begining and expands to take 3 when active\n *\n * @default 'single'\n */\n maxTagRows?: 'single' | 'multiple' | 'expandable';\n\n /**\n * A slot for adding tags to input\n */\n tags?: React.ReactElement[] | null;\n\n /**\n * Disables stripping of tags and shows all tags\n */\n showAllTags?: boolean;\n\n /**\n * State variable of active tag index\n */\n activeTagIndex?: number;\n\n /**\n * Is this input SelectInput or AutoComplete\n */\n isDropdownTrigger?: boolean;\n\n /**\n * Is the label expected to be rendered inside input?\n * Used in AutoComplete and Select when label can't exist outside\n *\n */\n isLabelInsideInput?: boolean;\n\n /**\n * State setter for active tag index\n */\n setActiveTagIndex?: (activeTagIndex: number) => void;\n /**\n * Sets the size of the input field\n * @default medium\n */\n size?: 'medium' | 'large';\n /**\n * Link button to be rendered at the end of the input field.\n * **Note:** `size` of the Link will be set to the same size as the input field, `isDisabled` will follow Input's `isDisabled`, & `variant` will be set to `button`.\n * Example:\n * ```tsx\n * trailingButton={<Link onClick={handleClick}>Apply</Link>}\n * ```\n */\n trailingButton?: React.ReactElement<LinkProps>;\n /**\n * Whether to use Text or Heading component for Input text\n * @default text\n **/\n valueComponentType?: 'text' | 'heading';\n /**\n * Whether to render the input as a table cell\n * @default true\n **/\n isTableInputCell?: boolean;\n /**\n * Hides the form hints and shows them as tooltip of trailing\n */\n showHintsAsTooltip?: boolean;\n\n role?: AriaAttributes['role'];\n\n /**\n * Tab Index of the input field\n *\n * @default undefined\n */\n tabIndex?: number;\n } & TestID &\n Platform.Select<{\n native: {\n /**\n * The callback function to be invoked when the value of the input field is submitted.\n */\n onSubmit?: FormInputOnEvent;\n /**\n * determines what autoComplete suggestion type to show\n *\n * Internally it'll render platform specific attributes:\n *\n * - web: `autocomplete`\n * - iOS: `textContentType`\n * - android: `autoComplete`\n *\n */\n autoCompleteSuggestionType?: CommonAutoCompleteSuggestionTypes;\n };\n web: {\n /**\n * This is a react-native only prop and has no effect on web.\n */\n onSubmit?: undefined;\n /**\n * determines what autoComplete suggestion type to show\n *\n * Internally it'll render platform specific attributes:\n *\n * - web: `autocomplete`\n * - iOS: `textContentType`\n * - android: `autoComplete`\n *\n */\n autoCompleteSuggestionType?: WebAutoCompleteSuggestionType;\n };\n }> &\n StyledPropsBlade &\n MotionMetaProp;\n\n/*\n Mandatory accessibilityLabel prop when label is not provided\n*/\ntype BaseInputPropsWithA11yLabel = {\n /**\n * Label to be shown for the input field\n */\n label?: undefined;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel: string;\n};\n\n/*\n Optional accessibilityLabel prop when label is provided\n*/\ntype BaseInputPropsWithLabel = {\n /**\n * Label to be shown for the input field\n */\n label: string;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel?: string;\n};\n\nexport type BaseInputProps = (BaseInputPropsWithA11yLabel | BaseInputPropsWithLabel) &\n BaseInputCommonProps;\n\nconst autoCompleteSuggestionTypeValues = [\n 'none',\n 'on',\n 'name',\n 'email',\n 'username',\n 'password',\n 'newPassword',\n 'oneTimeCode',\n 'telephone',\n 'postalCode',\n 'countryName',\n 'creditCardNumber',\n 'creditCardCSC',\n 'creditCardExpiry',\n 'creditCardExpiryMonth',\n 'creditCardExpiryYear',\n];\n\ntype OnInputKeydownTagHandlerType = (key: string | undefined) => void;\nconst useTags = (\n tags: BaseInputProps['tags'],\n activeTagIndex: number,\n setActiveTagIndex?: (activeTagIndex: number) => void,\n): {\n onInputKeydownTagHandler: OnInputKeydownTagHandlerType;\n visibleTagsCountRef: React.MutableRefObject<number>;\n} => {\n const visibleTagsCountRef = React.useRef<number>(0);\n\n React.useEffect(() => {\n if (tags && activeTagIndex >= 0 && activeTagIndex < tags.length) {\n const tagTitle = tags[activeTagIndex]?.props?.children;\n if (tagTitle) {\n announce(`Close ${tagTitle} Tag`);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [activeTagIndex, tags?.length]);\n\n const onTagLeft = (): void => {\n if (activeTagIndex < 0) {\n setActiveTagIndex?.(visibleTagsCountRef.current - 1);\n }\n\n if (activeTagIndex > 0) {\n setActiveTagIndex?.(activeTagIndex - 1);\n }\n };\n\n const onTagRight = (): void => {\n if (activeTagIndex < visibleTagsCountRef.current - 1) {\n setActiveTagIndex?.(activeTagIndex + 1);\n }\n };\n\n const onTagRemove = (): void => {\n if (activeTagIndex >= 0 && activeTagIndex < visibleTagsCountRef.current && tags) {\n tags[activeTagIndex].props.onDismiss({ tagIndex: activeTagIndex });\n }\n };\n\n const onInputKeydownTagHandler: OnInputKeydownTagHandlerType = (key) => {\n if (tags && tags.length > 0) {\n if (key === 'ArrowRight') {\n onTagRight();\n }\n\n if (key === 'ArrowLeft') {\n onTagLeft();\n }\n\n if (key === 'Backspace') {\n onTagRemove();\n }\n }\n };\n\n return {\n onInputKeydownTagHandler,\n visibleTagsCountRef,\n };\n};\n\nconst useInput = ({\n value,\n defaultValue,\n onClick,\n onFocus,\n onChange,\n onBlur,\n onSubmit,\n onInput,\n onKeyDown,\n onInputKeydownTagHandler,\n}: Pick<\n BaseInputProps,\n | 'value'\n | 'defaultValue'\n | 'onFocus'\n | 'onChange'\n | 'onBlur'\n | 'onInput'\n | 'onKeyDown'\n | 'onClick'\n | 'onSubmit'\n> & {\n onInputKeydownTagHandler: OnInputKeydownTagHandlerType;\n}): {\n handleOnFocus: FormInputHandleOnEvent;\n handleOnClick: FormInputHandleOnClickEvent;\n handleOnChange: FormInputHandleOnEvent;\n handleOnBlur: FormInputHandleOnEvent;\n handleOnSubmit: FormInputHandleOnEvent;\n handleOnInput: FormInputHandleOnEvent;\n handleOnKeyDown: FormInputHandleOnKeyDownEvent;\n inputValue?: string;\n} => {\n if (__DEV__) {\n if (value && defaultValue) {\n throwBladeError({\n message: `Either 'value' or 'defaultValue' shall be passed. This decides if the input field is controlled or uncontrolled`,\n moduleName: 'Input',\n });\n }\n }\n\n const [inputValue, setInputValue] = React.useState(defaultValue ?? value);\n\n const handleOnFocus: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onFocus?.({\n name,\n value: _value,\n });\n },\n [onFocus],\n );\n\n const handleOnClick: FormInputHandleOnClickEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.currentTarget.value ?? '';\n }\n\n onClick?.({\n name,\n value: _value,\n });\n },\n [onClick],\n );\n\n const handleOnSubmit: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n if (isReactNative()) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment, @typescript-eslint/prefer-ts-expect-error\n //@ts-ignore need to ignore this since it will throw a TS error for web but not for native\n onSubmit?.({\n name,\n value: _value,\n });\n }\n },\n [onSubmit],\n );\n\n const handleOnBlur: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n if (getPlatformType() === 'react-native' && typeof value == 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onBlur?.({\n name,\n value: _value,\n });\n },\n [onBlur],\n );\n\n const handleOnChange: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onChange?.({\n name,\n value: _value,\n });\n setInputValue(_value);\n },\n [onChange],\n );\n\n const handleOnInput: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n if (getPlatformType() === 'react-native' && typeof value == 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onInput?.({\n name,\n value: _value,\n });\n },\n [onInput],\n );\n\n const handleOnKeyDown: FormInputHandleOnKeyDownEvent = React.useCallback(\n ({ name, key, code, event }) => {\n onInputKeydownTagHandler(key);\n onKeyDown?.({\n name,\n key,\n code,\n event,\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [onKeyDown],\n );\n\n return {\n handleOnFocus,\n handleOnClick,\n handleOnChange,\n handleOnBlur,\n handleOnSubmit,\n handleOnInput,\n handleOnKeyDown,\n inputValue,\n };\n};\n\nexport const getHintType = ({\n validationState,\n hasHelpText,\n}: {\n validationState: BaseInputProps['validationState'];\n hasHelpText: boolean;\n}): FormHintProps['type'] => {\n if (validationState === 'error') {\n return 'error';\n }\n\n if (validationState === 'success') {\n return 'success';\n }\n\n if (hasHelpText) {\n return 'help';\n }\n\n return 'help';\n};\n\nconst getDescribedByElementId = ({\n validationState,\n hasErrorText,\n hasSuccessText,\n hasHelpText,\n errorTextId,\n successTextId,\n helpTextId,\n}: {\n validationState: BaseInputProps['validationState'];\n hasErrorText: boolean;\n hasSuccessText: boolean;\n hasHelpText: boolean;\n errorTextId: string;\n successTextId: string;\n helpTextId: string;\n}): string => {\n if (validationState === 'error' && hasErrorText) {\n return errorTextId;\n }\n\n if (validationState === 'success' && hasSuccessText) {\n return successTextId;\n }\n\n if (hasHelpText) {\n return helpTextId;\n }\n\n return '';\n};\n\nconst FocusRingWrapper = styled(BaseBox)<{\n currentInteraction: ActionStates;\n isTableInputCell: NonNullable<BaseInputProps['isTableInputCell']>;\n className: string;\n}>(({ theme, currentInteraction, isTableInputCell }) => ({\n borderRadius: makeBorderSize(\n isTableInputCell ? theme.border.radius.none : theme.border.radius.medium,\n ),\n width: '100%',\n '&:focus-within': !isTableInputCell\n ? {\n ...getFocusRingStyles({\n theme,\n }),\n transitionDuration: castWebType(\n makeMotionTime(\n getIn(\n theme.motion.duration,\n baseInputBorderBackgroundMotion[currentInteraction === 'focus' ? 'enter' : 'exit']\n .duration,\n ),\n ),\n ),\n transitionTimingFunction: castWebType(\n theme.motion.easing[\n baseInputBorderBackgroundMotion[currentInteraction === 'focus' ? 'enter' : 'exit']\n .easing\n ],\n ),\n }\n : {},\n}));\n\nconst _BaseInput: React.ForwardRefRenderFunction<BladeElementRef, BaseInputProps> = (\n {\n as = 'input',\n label,\n labelPosition = 'top',\n placeholder,\n type = 'text',\n defaultValue,\n tags,\n showAllTags = false,\n activeTagIndex = -1,\n setActiveTagIndex,\n name,\n value,\n onFocus,\n onChange,\n onInput,\n onBlur,\n onSubmit,\n onClick,\n onKeyDown,\n isDisabled,\n necessityIndicator,\n validationState,\n errorText,\n helpText,\n successText,\n isRequired,\n leadingIcon,\n prefix,\n trailingInteractionElement,\n onTrailingInteractionElementClick,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n maxCharacters,\n textAlign,\n autoFocus,\n keyboardReturnKeyType,\n keyboardType,\n autoCompleteSuggestionType,\n trailingHeaderSlot,\n trailingFooterSlot,\n numberOfLines,\n id,\n componentName,\n accessibilityLabel,\n labelId,\n activeDescendant,\n hideLabelText,\n hideFormHint,\n hasPopup,\n popupId,\n isPopupExpanded,\n maxTagRows,\n shouldIgnoreBlurAnimation,\n setShouldIgnoreBlurAnimation,\n autoCapitalize,\n setInputWrapperRef,\n testID,\n isDropdownTrigger,\n isLabelInsideInput,\n size = 'medium',\n trailingButton,\n valueComponentType = 'text',\n isTableInputCell = false,\n showHintsAsTooltip = false,\n _motionMeta,\n role,\n tabIndex,\n ...rest\n },\n ref,\n) => {\n const { theme } = useTheme();\n const inputRef = React.useRef<BladeElementRef>(null);\n const mergedInputRef = useMergeRefs(ref, inputRef);\n const inputWrapperRef: InputWrapperRef = React.useRef(null);\n const { onInputKeydownTagHandler, visibleTagsCountRef } = useTags(\n tags,\n activeTagIndex,\n setActiveTagIndex,\n );\n const [showAllTagsWithAnimation, setShowAllTagsWithAnimation] = React.useState(false);\n const isReactNative = getPlatformType() === 'react-native';\n const defaultRole = hasPopup ? 'combobox' : undefined;\n\n const inputGroupProps = useInputGroupContext();\n const { isInsideInputGroup } = inputGroupProps;\n const _isDisabled = inputGroupProps.isDisabled ?? isDisabled;\n const _size = inputGroupProps.size ?? size;\n\n React.useEffect(() => {\n if (showAllTags) {\n setShowAllTagsWithAnimation(true);\n } else if (maxTagRows !== 'expandable') {\n setShowAllTagsWithAnimation(false);\n }\n }, [showAllTags, maxTagRows]);\n\n const {\n handleOnFocus,\n handleOnChange,\n handleOnClick,\n handleOnBlur,\n handleOnSubmit,\n handleOnInput,\n handleOnKeyDown,\n inputValue,\n } = useInput({\n defaultValue,\n value,\n onFocus,\n onClick,\n onChange,\n onBlur,\n onSubmit,\n onInput,\n onKeyDown,\n onInputKeydownTagHandler,\n });\n const { inputId, helpTextId, errorTextId, successTextId } = useFormId(id);\n const { matchedDeviceType } = useBreakpoint({ breakpoints: theme.breakpoints });\n const isLabelLeftPositioned = labelPosition === 'left' && matchedDeviceType === 'desktop';\n const { currentInteraction, setCurrentInteraction } = useInteraction();\n const _isRequired = isRequired || necessityIndicator === 'required';\n\n const accessibilityProps = makeAccessible({\n required: Boolean(_isRequired),\n disabled: Boolean(_isDisabled),\n invalid: Boolean(validationState === 'error'),\n describedBy: getDescribedByElementId({\n validationState,\n hasErrorText: Boolean(errorText),\n hasSuccessText: Boolean(successText),\n hasHelpText: Boolean(helpText),\n errorTextId,\n successTextId,\n helpTextId,\n }),\n label: accessibilityLabel,\n hasPopup,\n expanded: hasPopup ? isPopupExpanded : undefined,\n controls: hasPopup ? popupId : undefined,\n role: role ?? defaultRole,\n activeDescendant,\n });\n\n const willRenderHintText =\n Boolean(helpText) ||\n (validationState === 'success' && Boolean(successText)) ||\n (validationState === 'error' && Boolean(errorText));\n\n if (__DEV__) {\n if (\n autoCompleteSuggestionType &&\n !autoCompleteSuggestionTypeValues.includes(autoCompleteSuggestionType)\n ) {\n throwBladeError({\n message: `Expected autoCompleteSuggestionType to be one of ${autoCompleteSuggestionTypeValues.join(\n ', ',\n )} but received ${autoCompleteSuggestionType}`,\n moduleName: 'Input',\n });\n }\n }\n\n const isTextArea = as === 'textarea';\n return (\n <BaseBox\n ref={getOuterMotionRef({ _motionMeta, ref })}\n {...metaAttribute({ name: componentName, testID })}\n {...getStyledProps(rest)}\n >\n <BaseBox\n display=\"flex\"\n flexDirection={isLabelLeftPositioned ? 'row' : 'column'}\n justifyContent={isLabelLeftPositioned ? 'center' : undefined}\n alignItems={isLabelLeftPositioned ? 'center' : undefined}\n position=\"relative\"\n width=\"100%\"\n >\n {/* If the input is in an input group, we don't want to render the label */}\n {!hideLabelText && !isLabelInsideInput && label && !isInsideInputGroup && (\n <BaseBox\n display=\"flex\"\n flexDirection={isLabelLeftPositioned ? 'column' : 'row'}\n justifyContent=\"space-between\"\n alignSelf={isTextArea ? 'flex-start' : undefined}\n marginY={isTextArea && isLabelLeftPositioned ? 'spacing.3' : 'spacing.0'}\n >\n <FormLabel\n as=\"label\"\n necessityIndicator={necessityIndicator}\n position={labelPosition}\n id={labelId}\n htmlFor={inputId}\n size={_size}\n >\n {label}\n </FormLabel>\n {trailingHeaderSlot?.(value ?? inputValue)}\n </BaseBox>\n )}\n <FocusRingWrapper\n currentInteraction={currentInteraction}\n isTableInputCell={isTableInputCell}\n className=\"focus-ring-wrapper\"\n >\n <BaseInputWrapper\n isDropdownTrigger={isDropdownTrigger}\n isTextArea={isTextArea}\n isDisabled={_isDisabled}\n validationState={validationState}\n currentInteraction={currentInteraction}\n isLabelLeftPositioned={isLabelLeftPositioned}\n showAllTags={showAllTags}\n setShowAllTagsWithAnimation={setShowAllTagsWithAnimation}\n ref={(refNode) => {\n if (refNode) {\n setInputWrapperRef?.(refNode);\n inputWrapperRef.current = refNode;\n }\n }}\n maxTagRows={maxTagRows}\n size={_size}\n numberOfLines={numberOfLines}\n onClick={() => {\n if (!isReactNative) {\n inputRef.current?.focus();\n }\n }}\n isTableInputCell={isTableInputCell}\n >\n <BaseInputVisuals\n size={_size}\n leadingIcon={leadingIcon}\n prefix={prefix}\n isDisabled={_isDisabled}\n leadingInteractionElement={leadingInteractionElement}\n />\n <BaseInputTagSlot\n renderAs={as}\n tags={tags}\n isDisabled={_isDisabled}\n showAllTags={showAllTagsWithAnimation}\n setFocusOnInput={() => {\n const innerRef = getInnerMotionRef({ _motionMeta, ref });\n if (innerRef && !isReactNative && 'current' in innerRef) {\n innerRef.current?.focus();\n }\n }}\n labelPrefix={isLabelInsideInput ? label : undefined}\n isDropdownTrigger={isDropdownTrigger}\n visibleTagsCountRef={visibleTagsCountRef}\n handleOnInputClick={(e) => {\n handleOnClick({ name, value: isReactNative ? value : e });\n }}\n setShouldIgnoreBlurAnimation={setShouldIgnoreBlurAnimation}\n maxTagRows={maxTagRows}\n inputWrapperRef={inputWrapperRef}\n size={_size}\n numberOfLines={numberOfLines}\n isTextArea={isTextArea}\n >\n <StyledBaseInput\n as={as}\n id={inputId}\n ref={getInnerMotionRef({ _motionMeta, ref: mergedInputRef as any }) as never}\n name={name}\n type={type}\n defaultValue={defaultValue}\n value={value}\n placeholder={placeholder}\n isDisabled={_isDisabled}\n validationState={validationState}\n isRequired={_isRequired}\n handleOnFocus={handleOnFocus}\n handleOnChange={handleOnChange}\n handleOnBlur={handleOnBlur}\n handleOnSubmit={handleOnSubmit}\n handleOnInput={handleOnInput}\n handleOnKeyDown={handleOnKeyDown}\n handleOnClick={handleOnClick}\n leadingIcon={leadingIcon}\n prefix={prefix}\n trailingInteractionElement={trailingInteractionElement}\n leadingInteractionElement={leadingInteractionElement}\n suffix={suffix}\n trailingIcon={trailingIcon}\n maxCharacters={maxCharacters}\n textAlign={textAlign}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n keyboardReturnKeyType={keyboardReturnKeyType}\n keyboardType={keyboardType}\n autoCompleteSuggestionType={autoCompleteSuggestionType}\n accessibilityProps={accessibilityProps}\n currentInteraction={currentInteraction}\n setCurrentInteraction={setCurrentInteraction}\n numberOfLines={numberOfLines}\n isTextArea={isTextArea || maxTagRows === 'multiple' || maxTagRows === 'expandable'}\n hasPopup={hasPopup}\n hasTags={!!(tags && tags.length > 0)}\n shouldIgnoreBlurAnimation={shouldIgnoreBlurAnimation}\n autoCapitalize={autoCapitalize}\n isDropdownTrigger={isDropdownTrigger}\n $size={_size}\n valueComponentType={valueComponentType}\n isTableInputCell={isTableInputCell}\n tabIndex={tabIndex}\n {...metaAttribute({ name: MetaConstants.StyledBaseInput })}\n {...makeAnalyticsAttribute(rest)}\n />\n </BaseInputTagSlot>\n <BaseInputVisuals\n trailingInteractionElement={trailingInteractionElement}\n onTrailingInteractionElementClick={onTrailingInteractionElementClick}\n suffix={suffix}\n trailingIcon={trailingIcon}\n isDisabled={_isDisabled}\n validationState={validationState}\n trailingButton={trailingButton}\n size={_size}\n errorText={errorText}\n successText={successText}\n showHintsAsTooltip={showHintsAsTooltip}\n />\n </BaseInputWrapper>\n </FocusRingWrapper>\n </BaseBox>\n {/* If the input is in an input group, we don't want to render the hint text */}\n {hideFormHint || showHintsAsTooltip || isInsideInputGroup ? null : (\n <BaseBox\n marginLeft={makeSize(\n isLabelLeftPositioned && !hideLabelText ? formHintLeftLabelMarginLeft[_size] : 0,\n )}\n >\n <BaseBox\n display=\"flex\"\n flexDirection=\"row\"\n justifyContent={willRenderHintText ? 'space-between' : 'flex-end'}\n >\n <FormHint\n type={getHintType({ validationState, hasHelpText: Boolean(helpText) })}\n helpText={helpText}\n errorText={errorText}\n successText={successText}\n helpTextId={helpTextId}\n errorTextId={errorTextId}\n successTextId={successTextId}\n size={_size}\n />\n {trailingFooterSlot?.(value ?? inputValue)}\n </BaseBox>\n </BaseBox>\n )}\n </BaseBox>\n );\n};\n\nconst BaseInputWithRef = React.forwardRef(_BaseInput);\nconst BaseInput = assignWithoutSideEffects(BaseInputWithRef, { displayName: 'BaseInput' });\n\nexport { BaseInput };\n"],"names":["autoCompleteSuggestionTypeValues","useTags","tags","activeTagIndex","setActiveTagIndex","visibleTagsCountRef","React","useRef","useEffect","length","_tags$activeTagIndex","_tags$activeTagIndex$","tagTitle","props","children","announce","concat","onTagLeft","current","onTagRight","onTagRemove","onDismiss","tagIndex","onInputKeydownTagHandler","key","useInput","_ref","value","defaultValue","onClick","onFocus","onChange","onBlur","onSubmit","onInput","onKeyDown","throwBladeError","message","moduleName","_React$useState","useState","_React$useState2","_slicedToArray","inputValue","setInputValue","handleOnFocus","useCallback","_ref2","name","_value","getPlatformType","_value$target$value","target","handleOnClick","_ref3","_value$currentTarget$","currentTarget","handleOnSubmit","_ref4","_value$target$value2","isReactNative","handleOnBlur","_ref5","_value$target$value3","handleOnChange","_ref6","_value$target$value4","handleOnInput","_ref7","_value$target$value5","handleOnKeyDown","_ref8","code","event","getHintType","_ref9","validationState","hasHelpText","getDescribedByElementId","_ref10","hasErrorText","hasSuccessText","errorTextId","successTextId","helpTextId","FocusRingWrapper","styled","BaseBox","withConfig","displayName","componentId","_ref11","theme","currentInteraction","isTableInputCell","borderRadius","makeBorderSize","border","radius","none","medium","width","_objectSpread","getFocusRingStyles","transitionDuration","castWebType","makeMotionTime","getIn","motion","duration","baseInputBorderBackgroundMotion","transitionTimingFunction","easing","_BaseInput","_ref12","ref","_inputGroupProps$isDi","_inputGroupProps$size","_ref12$as","as","label","_ref12$labelPosition","labelPosition","placeholder","_ref12$type","type","_ref12$showAllTags","showAllTags","_ref12$activeTagIndex","isDisabled","necessityIndicator","errorText","helpText","successText","isRequired","leadingIcon","prefix","trailingInteractionElement","onTrailingInteractionElementClick","leadingInteractionElement","suffix","trailingIcon","maxCharacters","textAlign","autoFocus","keyboardReturnKeyType","keyboardType","autoCompleteSuggestionType","trailingHeaderSlot","trailingFooterSlot","numberOfLines","id","componentName","accessibilityLabel","labelId","activeDescendant","hideLabelText","hideFormHint","hasPopup","popupId","isPopupExpanded","maxTagRows","shouldIgnoreBlurAnimation","setShouldIgnoreBlurAnimation","autoCapitalize","setInputWrapperRef","testID","isDropdownTrigger","isLabelInsideInput","_ref12$size","size","trailingButton","_ref12$valueComponent","valueComponentType","_ref12$isTableInputCe","_ref12$showHintsAsToo","showHintsAsTooltip","_motionMeta","role","tabIndex","rest","_objectWithoutProperties","_excluded","_useTheme","useTheme","inputRef","mergedInputRef","useMergeRefs","inputWrapperRef","_useTags","_React$useState3","_React$useState4","showAllTagsWithAnimation","setShowAllTagsWithAnimation","defaultRole","undefined","inputGroupProps","useInputGroupContext","isInsideInputGroup","_isDisabled","_size","_useInput","_useFormId","useFormId","inputId","_useBreakpoint","useBreakpoint","breakpoints","matchedDeviceType","isLabelLeftPositioned","_useInteraction","useInteraction","setCurrentInteraction","_isRequired","accessibilityProps","makeAccessible","required","Boolean","disabled","invalid","describedBy","expanded","controls","willRenderHintText","includes","join","isTextArea","_jsxs","getOuterMotionRef","metaAttribute","getStyledProps","display","flexDirection","justifyContent","alignItems","position","alignSelf","marginY","_jsx","FormLabel","htmlFor","className","BaseInputWrapper","refNode","_inputRef$current","focus","BaseInputVisuals","BaseInputTagSlot","renderAs","setFocusOnInput","innerRef","getInnerMotionRef","_innerRef$current","labelPrefix","handleOnInputClick","e","StyledBaseInput","hasTags","$size","MetaConstants","makeAnalyticsAttribute","marginLeft","makeSize","formHintLeftLabelMarginLeft","FormHint","BaseInputWithRef","forwardRef","BaseInput","assignWithoutSideEffects"],"mappings":"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"}
|
|
@@ -42,6 +42,7 @@ var getInputBackgroundAndBorderStyles = function getInputBackgroundAndBorderStyl
|
|
|
42
42
|
var backgroundColor = getIn(theme.colors, backgroundColorTokens["default"]);
|
|
43
43
|
var borderColor = isTableInputCell ? theme.colors.transparent : getIn(theme.colors, baseInputBorderColor["default"]);
|
|
44
44
|
var borderWidth = getIn(theme.border.width, baseInputBorderWidth["default"]);
|
|
45
|
+
var zIndex;
|
|
45
46
|
var baseInputState = getBaseInputState({
|
|
46
47
|
isFocused: isFocused,
|
|
47
48
|
isHovered: isHovered,
|
|
@@ -53,6 +54,7 @@ var getInputBackgroundAndBorderStyles = function getInputBackgroundAndBorderStyl
|
|
|
53
54
|
if (!isTableInputCell && validationState && validationState !== 'none') {
|
|
54
55
|
borderColor = getIn(theme.colors, baseInputBorderColor[validationState]);
|
|
55
56
|
borderWidth = getIn(theme.border.width, baseInputBorderWidth[validationState]);
|
|
57
|
+
zIndex = 1; // Prevent validation ring clipping by adjacent inputs in InputGroup
|
|
56
58
|
} else if (validationState && validationState !== 'none') {
|
|
57
59
|
backgroundColor = getIn(theme.colors, baseInputBorderlessBackgroundColor[validationState]);
|
|
58
60
|
}
|
|
@@ -66,7 +68,8 @@ var getInputBackgroundAndBorderStyles = function getInputBackgroundAndBorderStyl
|
|
|
66
68
|
alignItems: isTextArea ? 'flex-start' : undefined,
|
|
67
69
|
position: 'relative',
|
|
68
70
|
height: isDropdownTrigger && !isTextArea ? 'auto' : undefined,
|
|
69
|
-
border: 'none'
|
|
71
|
+
border: 'none',
|
|
72
|
+
zIndex: zIndex
|
|
70
73
|
}, getBaseInputBorderStyles({
|
|
71
74
|
theme: theme,
|
|
72
75
|
borderColor: borderColor,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseInputStyles.js","sources":["../../../../../../../src/components/Input/BaseInput/baseInputStyles.ts"],"sourcesContent":["import type { CSSObject } from 'styled-components';\nimport type { BaseInputProps } from './BaseInput';\nimport { getBaseInputBorderStyles } from './getBaseInputBorderStyles';\nimport {\n baseInputBackgroundColor,\n baseInputBorderColor,\n baseInputBorderWidth,\n baseInputBorderlessBackgroundColor,\n baseInputHeight,\n baseInputPaddingTokens,\n baseInputWrapperMaxHeight,\n} from './baseInputTokens';\nimport { getInputVisualsToBeRendered } from './BaseInputVisuals';\nimport type { BaseInputWrapperProps } from './types';\nimport type { Theme } from '~components/BladeProvider';\nimport getTextStyles from '~components/Typography/Text/getTextStyles';\nimport { makeSpace } from '~utils/makeSpace';\nimport { makeBorderSize } from '~utils/makeBorderSize';\nimport { getPlatformType } from '~utils';\nimport getIn from '~utils/lodashButBetter/get';\nimport getHeadingStyles from '~components/Typography/Heading/getHeadingStyles';\n\ntype GetInputStyles = Pick<\n BaseInputProps,\n | 'isDisabled'\n | 'validationState'\n | 'leadingIcon'\n | 'prefix'\n | 'trailingInteractionElement'\n | 'leadingInteractionElement'\n | 'suffix'\n | 'trailingIcon'\n | 'textAlign'\n | 'isDropdownTrigger'\n | 'valueComponentType'\n> & {\n isHovered?: boolean;\n isFocused?: boolean;\n isTextArea?: boolean;\n hasTags?: boolean;\n theme: Theme;\n size: NonNullable<BaseInputProps['size']>;\n isTableInputCell: NonNullable<BaseInputProps['isTableInputCell']>;\n};\n\nexport const getBaseInputState = ({\n isFocused,\n isHovered,\n isDisabled,\n}: {\n isFocused?: boolean;\n isHovered?: boolean;\n isDisabled?: boolean;\n}): 'focused' | 'hovered' | 'disabled' | 'default' => {\n if (isDisabled) {\n return 'disabled';\n } else if (isFocused) {\n return 'focused';\n } else if (isHovered) {\n return 'hovered';\n } else {\n return 'default';\n }\n};\n\nexport const getInputBackgroundAndBorderStyles = ({\n theme,\n isHovered,\n isFocused,\n isDisabled,\n validationState,\n isTextArea,\n isDropdownTrigger,\n isTableInputCell,\n}: Pick<\n GetInputStyles,\n | 'theme'\n | 'isFocused'\n | 'isDisabled'\n | 'validationState'\n | 'isHovered'\n | 'isTextArea'\n | 'isDropdownTrigger'\n | 'isTableInputCell'\n>): CSSObject => {\n // normal state\n const backgroundColorTokens = isTableInputCell\n ? baseInputBorderlessBackgroundColor\n : baseInputBackgroundColor;\n let backgroundColor = getIn(theme.colors, backgroundColorTokens.default);\n let borderColor = isTableInputCell\n ? theme.colors.transparent\n : getIn(theme.colors, baseInputBorderColor.default);\n let borderWidth = getIn(theme.border.width, baseInputBorderWidth.default);\n\n const baseInputState = getBaseInputState({ isFocused, isHovered, isDisabled });\n\n backgroundColor = getIn(theme.colors, backgroundColorTokens[baseInputState]);\n borderColor =\n isTableInputCell && baseInputState !== 'focused'\n ? theme.colors.transparent\n : getIn(theme.colors, baseInputBorderColor[baseInputState]);\n borderWidth = getIn(theme.border.width, baseInputBorderWidth[baseInputState]);\n\n if (!isTableInputCell && validationState && validationState !== 'none') {\n borderColor = getIn(theme.colors, baseInputBorderColor[validationState]);\n borderWidth = getIn(theme.border.width, baseInputBorderWidth[validationState]);\n } else if (validationState && validationState !== 'none') {\n backgroundColor = getIn(theme.colors, baseInputBorderlessBackgroundColor[validationState]);\n }\n\n return {\n backgroundColor,\n borderRadius: makeBorderSize(\n isTableInputCell ? theme.border.radius.none : theme.border.radius.medium,\n ),\n borderStyle: 'solid',\n display: 'flex',\n flexDirection: 'row',\n width: '100%',\n alignItems: isTextArea ? 'flex-start' : undefined,\n position: 'relative',\n height: isDropdownTrigger && !isTextArea ? 'auto' : undefined,\n border: 'none',\n ...getBaseInputBorderStyles({ theme, borderColor, borderWidth, isFocused }),\n };\n};\n\nconst getLeftPadding = ({\n theme,\n isDropdownTrigger,\n hasLeadingIcon,\n hasPrefix,\n size,\n}: {\n theme: Theme;\n hasLeadingIcon: boolean;\n hasPrefix: boolean;\n isDropdownTrigger: GetInputStyles['isDropdownTrigger'];\n size: GetInputStyles['size'];\n}): number => {\n if (isDropdownTrigger) {\n return theme.spacing[0];\n }\n\n if (hasLeadingIcon || hasPrefix) {\n return theme.spacing[3];\n }\n\n return theme.spacing[baseInputPaddingTokens.left[size]];\n};\n\nconst getRightPadding = ({\n theme,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingIcon,\n size,\n}: {\n theme: Theme;\n hasTrailingInteractionElement: boolean;\n hasSuffix: boolean;\n hasTrailingIcon: boolean;\n size: GetInputStyles['size'];\n}): number => {\n if (hasTrailingInteractionElement || hasSuffix || hasTrailingIcon) {\n return theme.spacing[3];\n }\n return theme.spacing[baseInputPaddingTokens.right[size]];\n};\n\nexport const getBaseInputStyles = ({\n theme,\n isDisabled,\n leadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n textAlign,\n isTextArea,\n hasTags,\n isDropdownTrigger,\n size,\n valueComponentType,\n}: GetInputStyles): CSSObject => {\n const {\n hasLeadingIcon,\n hasPrefix,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingIcon,\n } = getInputVisualsToBeRendered({\n leadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n size,\n });\n\n const isDropdownWithTags = isDropdownTrigger && hasTags;\n const isReactNative = getPlatformType() === 'react-native';\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n const shouldHaveFlexibleHeight = isTextArea || isDropdownWithTags;\n\n return {\n ...(valueComponentType === 'heading'\n ? getHeadingStyles({\n size,\n weight: 'regular',\n color: isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle',\n theme,\n })\n : getTextStyles({\n size,\n variant: 'body',\n weight: 'regular',\n color: isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle',\n theme,\n })),\n\n // take the full available width of parent container for input field\n flex: 1,\n backgroundColor: theme.colors.transparent,\n\n paddingTop: makeSpace(theme.spacing[baseInputPaddingTokens.top[size]]),\n paddingBottom: makeSpace(theme.spacing[baseInputPaddingTokens.bottom[size]]),\n paddingLeft: makeSpace(\n getLeftPadding({ theme, isDropdownTrigger, hasLeadingIcon, hasPrefix, size }),\n ),\n paddingRight: getRightPadding({\n theme,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingIcon,\n size,\n }),\n\n textAlign,\n width: '100%',\n height: shouldHaveFlexibleHeight ? undefined : makeSpace(baseInputHeight[size]),\n minHeight: shouldHaveFlexibleHeight ? undefined : makeSpace(baseInputHeight[size]),\n ...(isReactNative ? {} : { resize: 'none' }),\n };\n};\n\nexport const getAnimatedBaseInputWrapperMaxHeight = ({\n maxTagRows,\n showAllTags,\n size,\n}: Pick<BaseInputWrapperProps, 'maxTagRows' | 'showAllTags' | 'size'>): number => {\n if (maxTagRows === 'single') {\n return baseInputHeight[size];\n }\n\n if (maxTagRows === 'multiple') {\n return baseInputWrapperMaxHeight[size];\n }\n\n // In expandable, max-height depends on the state\n return showAllTags ? baseInputWrapperMaxHeight[size] : baseInputHeight[size];\n};\n"],"names":["getBaseInputState","_ref","isFocused","isHovered","isDisabled","getInputBackgroundAndBorderStyles","_ref2","theme","validationState","isTextArea","isDropdownTrigger","isTableInputCell","backgroundColorTokens","baseInputBorderlessBackgroundColor","baseInputBackgroundColor","backgroundColor","getIn","colors","borderColor","transparent","baseInputBorderColor","borderWidth","border","width","baseInputBorderWidth","baseInputState","_objectSpread","borderRadius","makeBorderSize","radius","none","medium","borderStyle","display","flexDirection","alignItems","undefined","position","height","getBaseInputBorderStyles","getLeftPadding","_ref3","hasLeadingIcon","hasPrefix","size","spacing","baseInputPaddingTokens","left","getRightPadding","_ref4","hasTrailingInteractionElement","hasSuffix","hasTrailingIcon","right","getBaseInputStyles","_ref5","leadingIcon","prefix","trailingInteractionElement","leadingInteractionElement","suffix","trailingIcon","textAlign","hasTags","valueComponentType","_getInputVisualsToBeR","getInputVisualsToBeRendered","isDropdownWithTags","isReactNative","getPlatformType","shouldHaveFlexibleHeight","getHeadingStyles","weight","color","getTextStyles","variant","flex","paddingTop","makeSpace","top","paddingBottom","bottom","paddingLeft","paddingRight","baseInputHeight","minHeight","resize","getAnimatedBaseInputWrapperMaxHeight","_ref6","maxTagRows","showAllTags","baseInputWrapperMaxHeight"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"baseInputStyles.js","sources":["../../../../../../../src/components/Input/BaseInput/baseInputStyles.ts"],"sourcesContent":["import type { CSSObject } from 'styled-components';\nimport type { BaseInputProps } from './BaseInput';\nimport { getBaseInputBorderStyles } from './getBaseInputBorderStyles';\nimport {\n baseInputBackgroundColor,\n baseInputBorderColor,\n baseInputBorderWidth,\n baseInputBorderlessBackgroundColor,\n baseInputHeight,\n baseInputPaddingTokens,\n baseInputWrapperMaxHeight,\n} from './baseInputTokens';\nimport { getInputVisualsToBeRendered } from './BaseInputVisuals';\nimport type { BaseInputWrapperProps } from './types';\nimport type { Theme } from '~components/BladeProvider';\nimport getTextStyles from '~components/Typography/Text/getTextStyles';\nimport { makeSpace } from '~utils/makeSpace';\nimport { makeBorderSize } from '~utils/makeBorderSize';\nimport { getPlatformType } from '~utils';\nimport getIn from '~utils/lodashButBetter/get';\nimport getHeadingStyles from '~components/Typography/Heading/getHeadingStyles';\n\ntype GetInputStyles = Pick<\n BaseInputProps,\n | 'isDisabled'\n | 'validationState'\n | 'leadingIcon'\n | 'prefix'\n | 'trailingInteractionElement'\n | 'leadingInteractionElement'\n | 'suffix'\n | 'trailingIcon'\n | 'textAlign'\n | 'isDropdownTrigger'\n | 'valueComponentType'\n> & {\n isHovered?: boolean;\n isFocused?: boolean;\n isTextArea?: boolean;\n hasTags?: boolean;\n theme: Theme;\n size: NonNullable<BaseInputProps['size']>;\n isTableInputCell: NonNullable<BaseInputProps['isTableInputCell']>;\n};\n\nexport const getBaseInputState = ({\n isFocused,\n isHovered,\n isDisabled,\n}: {\n isFocused?: boolean;\n isHovered?: boolean;\n isDisabled?: boolean;\n}): 'focused' | 'hovered' | 'disabled' | 'default' => {\n if (isDisabled) {\n return 'disabled';\n } else if (isFocused) {\n return 'focused';\n } else if (isHovered) {\n return 'hovered';\n } else {\n return 'default';\n }\n};\n\nexport const getInputBackgroundAndBorderStyles = ({\n theme,\n isHovered,\n isFocused,\n isDisabled,\n validationState,\n isTextArea,\n isDropdownTrigger,\n isTableInputCell,\n}: Pick<\n GetInputStyles,\n | 'theme'\n | 'isFocused'\n | 'isDisabled'\n | 'validationState'\n | 'isHovered'\n | 'isTextArea'\n | 'isDropdownTrigger'\n | 'isTableInputCell'\n>): CSSObject => {\n // normal state\n const backgroundColorTokens = isTableInputCell\n ? baseInputBorderlessBackgroundColor\n : baseInputBackgroundColor;\n let backgroundColor = getIn(theme.colors, backgroundColorTokens.default);\n let borderColor = isTableInputCell\n ? theme.colors.transparent\n : getIn(theme.colors, baseInputBorderColor.default);\n let borderWidth = getIn(theme.border.width, baseInputBorderWidth.default);\n let zIndex: number | undefined;\n\n const baseInputState = getBaseInputState({ isFocused, isHovered, isDisabled });\n\n backgroundColor = getIn(theme.colors, backgroundColorTokens[baseInputState]);\n borderColor =\n isTableInputCell && baseInputState !== 'focused'\n ? theme.colors.transparent\n : getIn(theme.colors, baseInputBorderColor[baseInputState]);\n borderWidth = getIn(theme.border.width, baseInputBorderWidth[baseInputState]);\n\n if (!isTableInputCell && validationState && validationState !== 'none') {\n borderColor = getIn(theme.colors, baseInputBorderColor[validationState]);\n borderWidth = getIn(theme.border.width, baseInputBorderWidth[validationState]);\n zIndex = 1; // Prevent validation ring clipping by adjacent inputs in InputGroup\n } else if (validationState && validationState !== 'none') {\n backgroundColor = getIn(theme.colors, baseInputBorderlessBackgroundColor[validationState]);\n }\n return {\n backgroundColor,\n borderRadius: makeBorderSize(\n isTableInputCell ? theme.border.radius.none : theme.border.radius.medium,\n ),\n borderStyle: 'solid',\n display: 'flex',\n flexDirection: 'row',\n width: '100%',\n alignItems: isTextArea ? 'flex-start' : undefined,\n position: 'relative',\n height: isDropdownTrigger && !isTextArea ? 'auto' : undefined,\n border: 'none',\n zIndex,\n ...getBaseInputBorderStyles({ theme, borderColor, borderWidth, isFocused }),\n };\n};\n\nconst getLeftPadding = ({\n theme,\n isDropdownTrigger,\n hasLeadingIcon,\n hasPrefix,\n size,\n}: {\n theme: Theme;\n hasLeadingIcon: boolean;\n hasPrefix: boolean;\n isDropdownTrigger: GetInputStyles['isDropdownTrigger'];\n size: GetInputStyles['size'];\n}): number => {\n if (isDropdownTrigger) {\n return theme.spacing[0];\n }\n\n if (hasLeadingIcon || hasPrefix) {\n return theme.spacing[3];\n }\n\n return theme.spacing[baseInputPaddingTokens.left[size]];\n};\n\nconst getRightPadding = ({\n theme,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingIcon,\n size,\n}: {\n theme: Theme;\n hasTrailingInteractionElement: boolean;\n hasSuffix: boolean;\n hasTrailingIcon: boolean;\n size: GetInputStyles['size'];\n}): number => {\n if (hasTrailingInteractionElement || hasSuffix || hasTrailingIcon) {\n return theme.spacing[3];\n }\n return theme.spacing[baseInputPaddingTokens.right[size]];\n};\n\nexport const getBaseInputStyles = ({\n theme,\n isDisabled,\n leadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n textAlign,\n isTextArea,\n hasTags,\n isDropdownTrigger,\n size,\n valueComponentType,\n}: GetInputStyles): CSSObject => {\n const {\n hasLeadingIcon,\n hasPrefix,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingIcon,\n } = getInputVisualsToBeRendered({\n leadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n size,\n });\n\n const isDropdownWithTags = isDropdownTrigger && hasTags;\n const isReactNative = getPlatformType() === 'react-native';\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n const shouldHaveFlexibleHeight = isTextArea || isDropdownWithTags;\n\n return {\n ...(valueComponentType === 'heading'\n ? getHeadingStyles({\n size,\n weight: 'regular',\n color: isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle',\n theme,\n })\n : getTextStyles({\n size,\n variant: 'body',\n weight: 'regular',\n color: isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle',\n theme,\n })),\n\n // take the full available width of parent container for input field\n flex: 1,\n backgroundColor: theme.colors.transparent,\n\n paddingTop: makeSpace(theme.spacing[baseInputPaddingTokens.top[size]]),\n paddingBottom: makeSpace(theme.spacing[baseInputPaddingTokens.bottom[size]]),\n paddingLeft: makeSpace(\n getLeftPadding({ theme, isDropdownTrigger, hasLeadingIcon, hasPrefix, size }),\n ),\n paddingRight: getRightPadding({\n theme,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingIcon,\n size,\n }),\n\n textAlign,\n width: '100%',\n height: shouldHaveFlexibleHeight ? undefined : makeSpace(baseInputHeight[size]),\n minHeight: shouldHaveFlexibleHeight ? undefined : makeSpace(baseInputHeight[size]),\n ...(isReactNative ? {} : { resize: 'none' }),\n };\n};\n\nexport const getAnimatedBaseInputWrapperMaxHeight = ({\n maxTagRows,\n showAllTags,\n size,\n}: Pick<BaseInputWrapperProps, 'maxTagRows' | 'showAllTags' | 'size'>): number => {\n if (maxTagRows === 'single') {\n return baseInputHeight[size];\n }\n\n if (maxTagRows === 'multiple') {\n return baseInputWrapperMaxHeight[size];\n }\n\n // In expandable, max-height depends on the state\n return showAllTags ? baseInputWrapperMaxHeight[size] : baseInputHeight[size];\n};\n"],"names":["getBaseInputState","_ref","isFocused","isHovered","isDisabled","getInputBackgroundAndBorderStyles","_ref2","theme","validationState","isTextArea","isDropdownTrigger","isTableInputCell","backgroundColorTokens","baseInputBorderlessBackgroundColor","baseInputBackgroundColor","backgroundColor","getIn","colors","borderColor","transparent","baseInputBorderColor","borderWidth","border","width","baseInputBorderWidth","zIndex","baseInputState","_objectSpread","borderRadius","makeBorderSize","radius","none","medium","borderStyle","display","flexDirection","alignItems","undefined","position","height","getBaseInputBorderStyles","getLeftPadding","_ref3","hasLeadingIcon","hasPrefix","size","spacing","baseInputPaddingTokens","left","getRightPadding","_ref4","hasTrailingInteractionElement","hasSuffix","hasTrailingIcon","right","getBaseInputStyles","_ref5","leadingIcon","prefix","trailingInteractionElement","leadingInteractionElement","suffix","trailingIcon","textAlign","hasTags","valueComponentType","_getInputVisualsToBeR","getInputVisualsToBeRendered","isDropdownWithTags","isReactNative","getPlatformType","shouldHaveFlexibleHeight","getHeadingStyles","weight","color","getTextStyles","variant","flex","paddingTop","makeSpace","top","paddingBottom","bottom","paddingLeft","paddingRight","baseInputHeight","minHeight","resize","getAnimatedBaseInputWrapperMaxHeight","_ref6","maxTagRows","showAllTags","baseInputWrapperMaxHeight"],"mappings":";;;;;;;;;;;;;;;;IA6CaA,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAAC,IAAA,EAQwB;AAAA,EAAA,IAPpDC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,SAAS,GAAAF,IAAA,CAATE,SAAS;IACTC,UAAU,GAAAH,IAAA,CAAVG,UAAU,CAAA;AAMV,EAAA,IAAIA,UAAU,EAAE;AACd,IAAA,OAAO,UAAU,CAAA;GAClB,MAAM,IAAIF,SAAS,EAAE;AACpB,IAAA,OAAO,SAAS,CAAA;GACjB,MAAM,IAAIC,SAAS,EAAE;AACpB,IAAA,OAAO,SAAS,CAAA;AAClB,GAAC,MAAM;AACL,IAAA,OAAO,SAAS,CAAA;AAClB,GAAA;AACF,EAAC;IAEYE,iCAAiC,GAAG,SAApCA,iCAAiCA,CAAAC,KAAA,EAmB7B;AAAA,EAAA,IAlBfC,KAAK,GAAAD,KAAA,CAALC,KAAK;IACLJ,SAAS,GAAAG,KAAA,CAATH,SAAS;IACTD,SAAS,GAAAI,KAAA,CAATJ,SAAS;IACTE,UAAU,GAAAE,KAAA,CAAVF,UAAU;IACVI,eAAe,GAAAF,KAAA,CAAfE,eAAe;IACfC,UAAU,GAAAH,KAAA,CAAVG,UAAU;IACVC,iBAAiB,GAAAJ,KAAA,CAAjBI,iBAAiB;IACjBC,gBAAgB,GAAAL,KAAA,CAAhBK,gBAAgB,CAAA;AAYhB;AACA,EAAA,IAAMC,qBAAqB,GAAGD,gBAAgB,GAC1CE,kCAAkC,GAClCC,wBAAwB,CAAA;EAC5B,IAAIC,eAAe,GAAGC,KAAK,CAACT,KAAK,CAACU,MAAM,EAAEL,qBAAqB,CAAA,SAAA,CAAQ,CAAC,CAAA;AACxE,EAAA,IAAIM,WAAW,GAAGP,gBAAgB,GAC9BJ,KAAK,CAACU,MAAM,CAACE,WAAW,GACxBH,KAAK,CAACT,KAAK,CAACU,MAAM,EAAEG,oBAAoB,WAAQ,CAAC,CAAA;AACrD,EAAA,IAAIC,WAAW,GAAGL,KAAK,CAACT,KAAK,CAACe,MAAM,CAACC,KAAK,EAAEC,oBAAoB,CAAA,SAAA,CAAQ,CAAC,CAAA;AACzE,EAAA,IAAIC,MAA0B,CAAA;EAE9B,IAAMC,cAAc,GAAG1B,iBAAiB,CAAC;AAAEE,IAAAA,SAAS,EAATA,SAAS;AAAEC,IAAAA,SAAS,EAATA,SAAS;AAAEC,IAAAA,UAAU,EAAVA,UAAAA;AAAW,GAAC,CAAC,CAAA;EAE9EW,eAAe,GAAGC,KAAK,CAACT,KAAK,CAACU,MAAM,EAAEL,qBAAqB,CAACc,cAAc,CAAC,CAAC,CAAA;EAC5ER,WAAW,GACTP,gBAAgB,IAAIe,cAAc,KAAK,SAAS,GAC5CnB,KAAK,CAACU,MAAM,CAACE,WAAW,GACxBH,KAAK,CAACT,KAAK,CAACU,MAAM,EAAEG,oBAAoB,CAACM,cAAc,CAAC,CAAC,CAAA;AAC/DL,EAAAA,WAAW,GAAGL,KAAK,CAACT,KAAK,CAACe,MAAM,CAACC,KAAK,EAAEC,oBAAoB,CAACE,cAAc,CAAC,CAAC,CAAA;EAE7E,IAAI,CAACf,gBAAgB,IAAIH,eAAe,IAAIA,eAAe,KAAK,MAAM,EAAE;IACtEU,WAAW,GAAGF,KAAK,CAACT,KAAK,CAACU,MAAM,EAAEG,oBAAoB,CAACZ,eAAe,CAAC,CAAC,CAAA;AACxEa,IAAAA,WAAW,GAAGL,KAAK,CAACT,KAAK,CAACe,MAAM,CAACC,KAAK,EAAEC,oBAAoB,CAAChB,eAAe,CAAC,CAAC,CAAA;IAC9EiB,MAAM,GAAG,CAAC,CAAC;AACb,GAAC,MAAM,IAAIjB,eAAe,IAAIA,eAAe,KAAK,MAAM,EAAE;IACxDO,eAAe,GAAGC,KAAK,CAACT,KAAK,CAACU,MAAM,EAAEJ,kCAAkC,CAACL,eAAe,CAAC,CAAC,CAAA;AAC5F,GAAA;AACA,EAAA,OAAAmB,aAAA,CAAA;AACEZ,IAAAA,eAAe,EAAfA,eAAe;IACfa,YAAY,EAAEC,cAAc,CAC1BlB,gBAAgB,GAAGJ,KAAK,CAACe,MAAM,CAACQ,MAAM,CAACC,IAAI,GAAGxB,KAAK,CAACe,MAAM,CAACQ,MAAM,CAACE,MACpE,CAAC;AACDC,IAAAA,WAAW,EAAE,OAAO;AACpBC,IAAAA,OAAO,EAAE,MAAM;AACfC,IAAAA,aAAa,EAAE,KAAK;AACpBZ,IAAAA,KAAK,EAAE,MAAM;AACba,IAAAA,UAAU,EAAE3B,UAAU,GAAG,YAAY,GAAG4B,SAAS;AACjDC,IAAAA,QAAQ,EAAE,UAAU;IACpBC,MAAM,EAAE7B,iBAAiB,IAAI,CAACD,UAAU,GAAG,MAAM,GAAG4B,SAAS;AAC7Df,IAAAA,MAAM,EAAE,MAAM;AACdG,IAAAA,MAAM,EAANA,MAAAA;AAAM,GAAA,EACHe,wBAAwB,CAAC;AAAEjC,IAAAA,KAAK,EAALA,KAAK;AAAEW,IAAAA,WAAW,EAAXA,WAAW;AAAEG,IAAAA,WAAW,EAAXA,WAAW;AAAEnB,IAAAA,SAAS,EAATA,SAAAA;AAAU,GAAC,CAAC,CAAA,CAAA;AAE/E,EAAC;AAED,IAAMuC,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,KAAA,EAYN;AAAA,EAAA,IAXZnC,KAAK,GAAAmC,KAAA,CAALnC,KAAK;IACLG,iBAAiB,GAAAgC,KAAA,CAAjBhC,iBAAiB;IACjBiC,cAAc,GAAAD,KAAA,CAAdC,cAAc;IACdC,SAAS,GAAAF,KAAA,CAATE,SAAS;IACTC,IAAI,GAAAH,KAAA,CAAJG,IAAI,CAAA;AAQJ,EAAA,IAAInC,iBAAiB,EAAE;AACrB,IAAA,OAAOH,KAAK,CAACuC,OAAO,CAAC,CAAC,CAAC,CAAA;AACzB,GAAA;EAEA,IAAIH,cAAc,IAAIC,SAAS,EAAE;AAC/B,IAAA,OAAOrC,KAAK,CAACuC,OAAO,CAAC,CAAC,CAAC,CAAA;AACzB,GAAA;EAEA,OAAOvC,KAAK,CAACuC,OAAO,CAACC,sBAAsB,CAACC,IAAI,CAACH,IAAI,CAAC,CAAC,CAAA;AACzD,CAAC,CAAA;AAED,IAAMI,eAAe,GAAG,SAAlBA,eAAeA,CAAAC,KAAA,EAYP;AAAA,EAAA,IAXZ3C,KAAK,GAAA2C,KAAA,CAAL3C,KAAK;IACL4C,6BAA6B,GAAAD,KAAA,CAA7BC,6BAA6B;IAC7BC,SAAS,GAAAF,KAAA,CAATE,SAAS;IACTC,eAAe,GAAAH,KAAA,CAAfG,eAAe;IACfR,IAAI,GAAAK,KAAA,CAAJL,IAAI,CAAA;AAQJ,EAAA,IAAIM,6BAA6B,IAAIC,SAAS,IAAIC,eAAe,EAAE;AACjE,IAAA,OAAO9C,KAAK,CAACuC,OAAO,CAAC,CAAC,CAAC,CAAA;AACzB,GAAA;EACA,OAAOvC,KAAK,CAACuC,OAAO,CAACC,sBAAsB,CAACO,KAAK,CAACT,IAAI,CAAC,CAAC,CAAA;AAC1D,CAAC,CAAA;IAEYU,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,KAAA,EAeE;AAAA,EAAA,IAd/BjD,KAAK,GAAAiD,KAAA,CAALjD,KAAK;IACLH,UAAU,GAAAoD,KAAA,CAAVpD,UAAU;IACVqD,WAAW,GAAAD,KAAA,CAAXC,WAAW;IACXC,MAAM,GAAAF,KAAA,CAANE,MAAM;IACNC,0BAA0B,GAAAH,KAAA,CAA1BG,0BAA0B;IAC1BC,yBAAyB,GAAAJ,KAAA,CAAzBI,yBAAyB;IACzBC,MAAM,GAAAL,KAAA,CAANK,MAAM;IACNC,YAAY,GAAAN,KAAA,CAAZM,YAAY;IACZC,SAAS,GAAAP,KAAA,CAATO,SAAS;IACTtD,UAAU,GAAA+C,KAAA,CAAV/C,UAAU;IACVuD,OAAO,GAAAR,KAAA,CAAPQ,OAAO;IACPtD,iBAAiB,GAAA8C,KAAA,CAAjB9C,iBAAiB;IACjBmC,IAAI,GAAAW,KAAA,CAAJX,IAAI;IACJoB,kBAAkB,GAAAT,KAAA,CAAlBS,kBAAkB,CAAA;EAElB,IAAAC,qBAAA,GAMIC,2BAA2B,CAAC;AAC9BV,MAAAA,WAAW,EAAXA,WAAW;AACXC,MAAAA,MAAM,EAANA,MAAM;AACNC,MAAAA,0BAA0B,EAA1BA,0BAA0B;AAC1BC,MAAAA,yBAAyB,EAAzBA,yBAAyB;AACzBC,MAAAA,MAAM,EAANA,MAAM;AACNC,MAAAA,YAAY,EAAZA,YAAY;AACZjB,MAAAA,IAAI,EAAJA,IAAAA;AACF,KAAC,CAAC;IAbAF,cAAc,GAAAuB,qBAAA,CAAdvB,cAAc;IACdC,SAAS,GAAAsB,qBAAA,CAATtB,SAAS;IACTO,6BAA6B,GAAAe,qBAAA,CAA7Bf,6BAA6B;IAC7BC,SAAS,GAAAc,qBAAA,CAATd,SAAS;IACTC,eAAe,GAAAa,qBAAA,CAAfb,eAAe,CAAA;AAWjB,EAAA,IAAMe,kBAAkB,GAAG1D,iBAAiB,IAAIsD,OAAO,CAAA;AACvD,EAAA,IAAMK,aAAa,GAAGC,eAAe,EAAE,KAAK,cAAc,CAAA;AAC1D;AACA,EAAA,IAAMC,wBAAwB,GAAG9D,UAAU,IAAI2D,kBAAkB,CAAA;EAEjE,OAAAzC,aAAA,CAAAA,aAAA,CAAA,EAAA,EACMsC,kBAAkB,KAAK,SAAS,GAChCO,gBAAgB,CAAC;AACf3B,IAAAA,IAAI,EAAJA,IAAI;AACJ4B,IAAAA,MAAM,EAAE,SAAS;AACjBC,IAAAA,KAAK,EAAEtE,UAAU,GAAG,4BAA4B,GAAG,0BAA0B;AAC7EG,IAAAA,KAAK,EAALA,KAAAA;GACD,CAAC,GACFoE,aAAa,CAAC;AACZ9B,IAAAA,IAAI,EAAJA,IAAI;AACJ+B,IAAAA,OAAO,EAAE,MAAM;AACfH,IAAAA,MAAM,EAAE,SAAS;AACjBC,IAAAA,KAAK,EAAEtE,UAAU,GAAG,4BAA4B,GAAG,0BAA0B;AAC7EG,IAAAA,KAAK,EAALA,KAAAA;AACF,GAAC,CAAC,CAAA,EAAA,EAAA,EAAA;AAEN;AACAsE,IAAAA,IAAI,EAAE,CAAC;AACP9D,IAAAA,eAAe,EAAER,KAAK,CAACU,MAAM,CAACE,WAAW;AAEzC2D,IAAAA,UAAU,EAAEC,SAAS,CAACxE,KAAK,CAACuC,OAAO,CAACC,sBAAsB,CAACiC,GAAG,CAACnC,IAAI,CAAC,CAAC,CAAC;AACtEoC,IAAAA,aAAa,EAAEF,SAAS,CAACxE,KAAK,CAACuC,OAAO,CAACC,sBAAsB,CAACmC,MAAM,CAACrC,IAAI,CAAC,CAAC,CAAC;AAC5EsC,IAAAA,WAAW,EAAEJ,SAAS,CACpBtC,cAAc,CAAC;AAAElC,MAAAA,KAAK,EAALA,KAAK;AAAEG,MAAAA,iBAAiB,EAAjBA,iBAAiB;AAAEiC,MAAAA,cAAc,EAAdA,cAAc;AAAEC,MAAAA,SAAS,EAATA,SAAS;AAAEC,MAAAA,IAAI,EAAJA,IAAAA;AAAK,KAAC,CAC9E,CAAC;IACDuC,YAAY,EAAEnC,eAAe,CAAC;AAC5B1C,MAAAA,KAAK,EAALA,KAAK;AACL4C,MAAAA,6BAA6B,EAA7BA,6BAA6B;AAC7BC,MAAAA,SAAS,EAATA,SAAS;AACTC,MAAAA,eAAe,EAAfA,eAAe;AACfR,MAAAA,IAAI,EAAJA,IAAAA;AACF,KAAC,CAAC;AAEFkB,IAAAA,SAAS,EAATA,SAAS;AACTxC,IAAAA,KAAK,EAAE,MAAM;IACbgB,MAAM,EAAEgC,wBAAwB,GAAGlC,SAAS,GAAG0C,SAAS,CAACM,eAAe,CAACxC,IAAI,CAAC,CAAC;IAC/EyC,SAAS,EAAEf,wBAAwB,GAAGlC,SAAS,GAAG0C,SAAS,CAACM,eAAe,CAACxC,IAAI,CAAC,CAAA;AAAC,GAAA,EAC9EwB,aAAa,GAAG,EAAE,GAAG;AAAEkB,IAAAA,MAAM,EAAE,MAAA;GAAQ,CAAA,CAAA;AAE/C,EAAC;IAEYC,oCAAoC,GAAG,SAAvCA,oCAAoCA,CAAAC,KAAA,EAIiC;AAAA,EAAA,IAHhFC,UAAU,GAAAD,KAAA,CAAVC,UAAU;IACVC,WAAW,GAAAF,KAAA,CAAXE,WAAW;IACX9C,IAAI,GAAA4C,KAAA,CAAJ5C,IAAI,CAAA;EAEJ,IAAI6C,UAAU,KAAK,QAAQ,EAAE;IAC3B,OAAOL,eAAe,CAACxC,IAAI,CAAC,CAAA;AAC9B,GAAA;EAEA,IAAI6C,UAAU,KAAK,UAAU,EAAE;IAC7B,OAAOE,yBAAyB,CAAC/C,IAAI,CAAC,CAAA;AACxC,GAAA;;AAEA;EACA,OAAO8C,WAAW,GAAGC,yBAAyB,CAAC/C,IAAI,CAAC,GAAGwC,eAAe,CAACxC,IAAI,CAAC,CAAA;AAC9E;;;;"}
|