@razorpay/blade 11.24.3 → 11.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/lib/native/components/Avatar/TrustedBadgeIcon.native.js +7 -0
- package/build/lib/native/components/Avatar/TrustedBadgeIcon.native.js.map +1 -0
- package/build/lib/native/components/BaseMenu/BaseMenuItem/BaseMenuItem.js +1 -1
- package/build/lib/native/components/BaseMenu/BaseMenuItem/BaseMenuItem.js.map +1 -1
- package/build/lib/native/components/Dropdown/Dropdown.js +1 -1
- package/build/lib/native/components/Dropdown/Dropdown.js.map +1 -1
- package/build/lib/native/components/Indicator/Indicator.js +2 -1
- package/build/lib/native/components/Indicator/Indicator.js.map +1 -1
- package/build/lib/native/components/Input/BaseInput/BaseInput.js +1 -1
- package/build/lib/native/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/native/components/Input/BaseInput/BaseInputVisuals.js +1 -1
- package/build/lib/native/components/Input/BaseInput/BaseInputVisuals.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/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js +4 -1
- package/build/lib/native/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js.map +1 -1
- package/build/lib/native/components/Spinner/BaseSpinner/BaseSpinner.js +1 -1
- package/build/lib/native/components/Spinner/BaseSpinner/BaseSpinner.js.map +1 -1
- package/build/lib/native/components/StepGroup/StepItemMarker.js +1 -1
- package/build/lib/native/components/StepGroup/StepItemMarker.js.map +1 -1
- package/build/lib/native/components/Table/TableBody.native.js +2 -2
- package/build/lib/native/components/Table/TableBody.native.js.map +1 -1
- package/build/lib/native/components/Table/TableContext.js +6 -0
- package/build/lib/native/components/Table/TableContext.js.map +1 -0
- package/build/lib/native/components/Table/TableEditableCell.native.js +16 -0
- package/build/lib/native/components/Table/TableEditableCell.native.js.map +1 -0
- package/build/lib/native/components/Table/TableEditableCellContext.js +6 -0
- package/build/lib/native/components/Table/TableEditableCellContext.js.map +1 -0
- package/build/lib/native/components/Table/TablePagination.native.js +2 -2
- package/build/lib/native/components/Table/TablePagination.native.js.map +1 -1
- package/build/lib/native/components/Table/TableToolbar.native.js +2 -2
- package/build/lib/native/components/Table/TableToolbar.native.js.map +1 -1
- package/build/lib/native/components/Table/tokens.js +22 -0
- package/build/lib/native/components/Table/tokens.js.map +1 -0
- package/build/lib/native/components/index.js +5 -3
- package/build/lib/native/components/index.js.map +1 -1
- package/build/lib/native/tokens/theme/createTheme.js +1 -1
- package/build/lib/native/tokens/theme/createTheme.js.map +1 -1
- package/build/lib/web/development/components/Avatar/Avatar.web.js +42 -3
- package/build/lib/web/development/components/Avatar/Avatar.web.js.map +1 -1
- package/build/lib/web/development/components/Avatar/AvatarButton.js +8 -3
- package/build/lib/web/development/components/Avatar/AvatarButton.js.map +1 -1
- package/build/lib/web/development/components/Avatar/StyledAvatar.js +11 -5
- package/build/lib/web/development/components/Avatar/StyledAvatar.js.map +1 -1
- package/build/lib/web/development/components/Avatar/StyledAvatarButton.js +10 -6
- package/build/lib/web/development/components/Avatar/StyledAvatarButton.js.map +1 -1
- package/build/lib/web/development/components/Avatar/TrustedBadgeIcon.web.js +195 -0
- package/build/lib/web/development/components/Avatar/TrustedBadgeIcon.web.js.map +1 -0
- package/build/lib/web/development/components/Avatar/avatarTokens.js +61 -1
- package/build/lib/web/development/components/Avatar/avatarTokens.js.map +1 -1
- package/build/lib/web/development/components/Avatar/index.js +1 -0
- package/build/lib/web/development/components/Avatar/index.js.map +1 -1
- package/build/lib/web/development/components/BaseMenu/BaseMenuItem/BaseMenuItem.js +1 -1
- package/build/lib/web/development/components/BaseMenu/BaseMenuItem/BaseMenuItem.js.map +1 -1
- package/build/lib/web/development/components/Dropdown/Dropdown.js +3 -1
- package/build/lib/web/development/components/Dropdown/Dropdown.js.map +1 -1
- package/build/lib/web/development/components/Indicator/Indicator.js +7 -2
- package/build/lib/web/development/components/Indicator/Indicator.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js +1 -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 +5 -3
- package/build/lib/web/development/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/BaseInputTagSlot.web.js +55 -33
- package/build/lib/web/development/components/Input/BaseInput/BaseInputTagSlot.web.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/BaseInputVisuals.js +4 -4
- package/build/lib/web/development/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/baseInputStyles.js +4 -2
- package/build/lib/web/development/components/Input/BaseInput/baseInputStyles.js.map +1 -1
- package/build/lib/web/development/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js +22 -4
- package/build/lib/web/development/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js.map +1 -1
- package/build/lib/web/development/components/Spinner/BaseSpinner/BaseSpinner.js +3 -3
- package/build/lib/web/development/components/Spinner/BaseSpinner/BaseSpinner.js.map +1 -1
- package/build/lib/web/development/components/StepGroup/StepItemMarker.js +0 -1
- package/build/lib/web/development/components/StepGroup/StepItemMarker.js.map +1 -1
- package/build/lib/web/development/components/Table/TableBody.web.js +26 -166
- package/build/lib/web/development/components/Table/TableBody.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableEditableCell.web.js +194 -0
- package/build/lib/web/development/components/Table/TableEditableCell.web.js.map +1 -0
- package/build/lib/web/development/components/Table/TableEditableCellContext.js +12 -0
- package/build/lib/web/development/components/Table/TableEditableCellContext.js.map +1 -0
- package/build/lib/web/development/components/Table/TablePagination.web.js +3 -2
- package/build/lib/web/development/components/Table/TablePagination.web.js.map +1 -1
- package/build/lib/web/development/components/Table/index.js +2 -2
- package/build/lib/web/development/components/Table/tokens.js +14 -2
- package/build/lib/web/development/components/Table/tokens.js.map +1 -1
- package/build/lib/web/development/components/index.js +3 -1
- package/build/lib/web/development/components/index.js.map +1 -1
- package/build/lib/web/development/tokens/theme/createTheme.js +5 -2
- package/build/lib/web/development/tokens/theme/createTheme.js.map +1 -1
- package/build/lib/web/production/components/Avatar/Avatar.web.js +42 -3
- package/build/lib/web/production/components/Avatar/Avatar.web.js.map +1 -1
- package/build/lib/web/production/components/Avatar/AvatarButton.js +8 -3
- package/build/lib/web/production/components/Avatar/AvatarButton.js.map +1 -1
- package/build/lib/web/production/components/Avatar/StyledAvatar.js +11 -5
- package/build/lib/web/production/components/Avatar/StyledAvatar.js.map +1 -1
- package/build/lib/web/production/components/Avatar/StyledAvatarButton.js +10 -6
- package/build/lib/web/production/components/Avatar/StyledAvatarButton.js.map +1 -1
- package/build/lib/web/production/components/Avatar/TrustedBadgeIcon.web.js +195 -0
- package/build/lib/web/production/components/Avatar/TrustedBadgeIcon.web.js.map +1 -0
- package/build/lib/web/production/components/Avatar/avatarTokens.js +61 -1
- package/build/lib/web/production/components/Avatar/avatarTokens.js.map +1 -1
- package/build/lib/web/production/components/Avatar/index.js +1 -0
- package/build/lib/web/production/components/Avatar/index.js.map +1 -1
- package/build/lib/web/production/components/BaseMenu/BaseMenuItem/BaseMenuItem.js +1 -1
- package/build/lib/web/production/components/BaseMenu/BaseMenuItem/BaseMenuItem.js.map +1 -1
- package/build/lib/web/production/components/Dropdown/Dropdown.js +3 -1
- package/build/lib/web/production/components/Dropdown/Dropdown.js.map +1 -1
- package/build/lib/web/production/components/Indicator/Indicator.js +7 -2
- package/build/lib/web/production/components/Indicator/Indicator.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js +1 -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 +5 -3
- package/build/lib/web/production/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/BaseInputTagSlot.web.js +55 -33
- package/build/lib/web/production/components/Input/BaseInput/BaseInputTagSlot.web.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/BaseInputVisuals.js +4 -4
- package/build/lib/web/production/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/baseInputStyles.js +4 -2
- package/build/lib/web/production/components/Input/BaseInput/baseInputStyles.js.map +1 -1
- package/build/lib/web/production/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js +22 -4
- package/build/lib/web/production/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js.map +1 -1
- package/build/lib/web/production/components/Spinner/BaseSpinner/BaseSpinner.js +3 -3
- package/build/lib/web/production/components/Spinner/BaseSpinner/BaseSpinner.js.map +1 -1
- package/build/lib/web/production/components/StepGroup/StepItemMarker.js +0 -1
- package/build/lib/web/production/components/StepGroup/StepItemMarker.js.map +1 -1
- package/build/lib/web/production/components/Table/TableBody.web.js +26 -166
- package/build/lib/web/production/components/Table/TableBody.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableEditableCell.web.js +194 -0
- package/build/lib/web/production/components/Table/TableEditableCell.web.js.map +1 -0
- package/build/lib/web/production/components/Table/TableEditableCellContext.js +12 -0
- package/build/lib/web/production/components/Table/TableEditableCellContext.js.map +1 -0
- package/build/lib/web/production/components/Table/TablePagination.web.js +3 -2
- package/build/lib/web/production/components/Table/TablePagination.web.js.map +1 -1
- package/build/lib/web/production/components/Table/index.js +2 -2
- package/build/lib/web/production/components/Table/tokens.js +14 -2
- package/build/lib/web/production/components/Table/tokens.js.map +1 -1
- package/build/lib/web/production/components/index.js +3 -1
- package/build/lib/web/production/components/index.js.map +1 -1
- package/build/lib/web/production/tokens/theme/createTheme.js +5 -2
- package/build/lib/web/production/tokens/theme/createTheme.js.map +1 -1
- package/build/types/components/index.d.ts +38 -20
- package/build/types/components/index.native.d.ts +37 -22
- package/build/types/tokens/index.d.ts +6 -3
- package/build/types/tokens/index.native.d.ts +6 -3
- package/package.json +1 -1
- package/build/lib/web/development/components/Table/types.js +0 -2
- package/build/lib/web/development/components/Table/types.js.map +0 -1
- package/build/lib/web/production/components/Table/types.js +0 -2
- package/build/lib/web/production/components/Table/types.js.map +0 -1
|
@@ -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 { BladeElementRef, ContainerElementType, TestID } 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';\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 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 * 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?: 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 } & 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\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 getIn(\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 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 ...styledProps\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\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: hasPopup ? 'combobox' : undefined,\n activeDescendant,\n });\n\n const willRenderHintText = Boolean(helpText) || Boolean(successText) || 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 {...metaAttribute({ name: componentName, testID })} {...getStyledProps(styledProps)}>\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 if (ref && !isReactNative && 'current' in ref) {\n ref.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={mergedInputRef as any}\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 {...metaAttribute({ name: MetaConstants.StyledBaseInput })}\n />\n </BaseInputTagSlot>\n <BaseInputVisuals\n trailingInteractionElement={trailingInteractionElement}\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 isTableInputCell={isTableInputCell}\n />\n </BaseInputWrapper>\n </FocusRingWrapper>\n </BaseBox>\n\n {hideFormHint || isTableInputCell ? 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","onTagLeft","current","onTagRight","onTagRemove","onDismiss","tagIndex","onInputKeydownTagHandler","key","useInput","_ref","value","defaultValue","onClick","onFocus","onChange","onBlur","onSubmit","onInput","onKeyDown","__DEV__","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","_ref11","theme","currentInteraction","isTableInputCell","borderRadius","makeBorderSize","border","radius","none","medium","width","Object","assign","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","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","styledProps","_objectWithoutProperties","_excluded","_useTheme","useTheme","inputRef","mergedInputRef","useMergeRefs","inputWrapperRef","_useTags","_React$useState3","_React$useState4","showAllTagsWithAnimation","setShowAllTagsWithAnimation","_useInput","_useFormId","useFormId","inputId","_useBreakpoint","useBreakpoint","breakpoints","matchedDeviceType","isLabelLeftPositioned","_useInteraction","useInteraction","setCurrentInteraction","_isRequired","accessibilityProps","makeAccessible","required","Boolean","disabled","invalid","describedBy","expanded","undefined","controls","role","willRenderHintText","includes","join","isTextArea","_jsxs","metaAttribute","getStyledProps","display","flexDirection","justifyContent","alignItems","position","alignSelf","marginY","_jsx","FormLabel","htmlFor","BaseInputWrapper","refNode","_inputRef$current","focus","BaseInputVisuals","BaseInputTagSlot","renderAs","setFocusOnInput","_ref$current","labelPrefix","handleOnInputClick","e","StyledBaseInput","hasTags","$size","MetaConstants","marginLeft","makeSize","formHintLeftLabelMarginLeft","FormHint","BaseInputWithRef","forwardRef","BaseInput","assignWithoutSideEffects","displayName"],"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 { BladeElementRef, ContainerElementType, TestID } 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';\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 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 * 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?: 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 /**\n * Hides the form hints and shows them as tooltip of trailing\n */\n showHintsAsTooltip?: boolean;\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\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 getIn(\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 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 ...styledProps\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\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: hasPopup ? 'combobox' : undefined,\n activeDescendant,\n });\n\n const willRenderHintText = Boolean(helpText) || Boolean(successText) || 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 {...metaAttribute({ name: componentName, testID })} {...getStyledProps(styledProps)}>\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 if (ref && !isReactNative && 'current' in ref) {\n ref.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={mergedInputRef as any}\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 {...metaAttribute({ name: MetaConstants.StyledBaseInput })}\n />\n </BaseInputTagSlot>\n <BaseInputVisuals\n trailingInteractionElement={trailingInteractionElement}\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","onTagLeft","current","onTagRight","onTagRemove","onDismiss","tagIndex","onInputKeydownTagHandler","key","useInput","_ref","value","defaultValue","onClick","onFocus","onChange","onBlur","onSubmit","onInput","onKeyDown","__DEV__","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","_ref11","theme","currentInteraction","isTableInputCell","borderRadius","makeBorderSize","border","radius","none","medium","width","Object","assign","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","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","styledProps","_objectWithoutProperties","_excluded","_useTheme","useTheme","inputRef","mergedInputRef","useMergeRefs","inputWrapperRef","_useTags","_React$useState3","_React$useState4","showAllTagsWithAnimation","setShowAllTagsWithAnimation","_useInput","_useFormId","useFormId","inputId","_useBreakpoint","useBreakpoint","breakpoints","matchedDeviceType","isLabelLeftPositioned","_useInteraction","useInteraction","setCurrentInteraction","_isRequired","accessibilityProps","makeAccessible","required","Boolean","disabled","invalid","describedBy","expanded","undefined","controls","role","willRenderHintText","includes","join","isTextArea","_jsxs","metaAttribute","getStyledProps","display","flexDirection","justifyContent","alignItems","position","alignSelf","marginY","_jsx","FormLabel","htmlFor","BaseInputWrapper","refNode","_inputRef$current","focus","BaseInputVisuals","BaseInputTagSlot","renderAs","setFocusOnInput","_ref$current","labelPrefix","handleOnInputClick","e","StyledBaseInput","hasTags","$size","MetaConstants","marginLeft","makeSize","formHintLeftLabelMarginLeft","FormHint","BaseInputWithRef","forwardRef","BaseInput","assignWithoutSideEffects","displayName"],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ import { Tooltip } from '../../Tooltip/Tooltip.native.js';
|
|
|
16
16
|
import '../../Tooltip/TooltipInteractiveWrapper.native.js';
|
|
17
17
|
import { Box } from '../../Box/Box.js';
|
|
18
18
|
|
|
19
|
-
var getVisualContainerStyles=function getVisualContainerStyles(){return {display:'flex',flexDirection:'row',alignItems:'center',alignSelf:'center'};};var trailingIconColor={none:'surface.icon.gray.subtle',error:'feedback.icon.negative.intense',success:'feedback.icon.positive.intense'};var iconSize={medium:'medium',large:'large'};var textSize={medium:'medium',large:'large'};var getPrefixStyles=function getPrefixStyles(_ref){var hasLeadingIcon=_ref.hasLeadingIcon,hasPrefix=_ref.hasPrefix;if(hasPrefix&&hasLeadingIcon){return {paddingLeft:'spacing.3'};}if(hasPrefix&&!hasLeadingIcon){return {paddingLeft:'spacing.4'};}return {paddingLeft:'spacing.0'};};var getInteractionElementStyles=function getInteractionElementStyles(_ref2){var hasTrailingIcon=_ref2.hasTrailingIcon,hasLeadingInteractionElement=_ref2.hasLeadingInteractionElement,hasTrailingInteractionElement=_ref2.hasTrailingInteractionElement,hasSuffix=_ref2.hasSuffix,hasTrailingButton=_ref2.hasTrailingButton;if(hasTrailingInteractionElement&&(hasSuffix||hasTrailingIcon||hasTrailingButton)){return 'spacing.2';}if(hasTrailingInteractionElement&&!hasSuffix&&!hasTrailingIcon&&!hasTrailingButton){return 'spacing.4';}if(hasLeadingInteractionElement){return 'spacing.3';}return 'spacing.0';};var getSuffixStyles=function getSuffixStyles(_ref3){var hasTrailingIcon=_ref3.hasTrailingIcon,hasSuffix=_ref3.hasSuffix,hasTrailingButton=_ref3.hasTrailingButton;if(hasSuffix&&(hasTrailingIcon||hasTrailingButton)){return {paddingRight:'spacing.3'};}if(hasSuffix&&!hasTrailingIcon&&!hasTrailingButton){return {paddingRight:'spacing.4'};}return {paddingRight:'spacing.0'};};var getTrailingIconStyles=function getTrailingIconStyles(_ref4){var hasTrailingIcon=_ref4.hasTrailingIcon,hasTrailingButton=_ref4.hasTrailingButton;if(hasTrailingIcon&&hasTrailingButton){return {paddingRight:'spacing.3'};}if(hasTrailingIcon&&!hasTrailingButton){return {paddingRight:'spacing.4'};}return {paddingRight:'spacing.0'};};var getInputVisualsToBeRendered=function getInputVisualsToBeRendered(_ref5){var leadingIcon=_ref5.leadingIcon,prefix=_ref5.prefix,trailingInteractionElement=_ref5.trailingInteractionElement,leadingInteractionElement=_ref5.leadingInteractionElement,suffix=_ref5.suffix,trailingIcon=_ref5.trailingIcon,trailingButton=_ref5.trailingButton;return {hasLeadingIcon:Boolean(leadingIcon),hasPrefix:Boolean(prefix),hasTrailingInteractionElement:Boolean(trailingInteractionElement),hasLeadingInteractionElement:Boolean(leadingInteractionElement),hasSuffix:Boolean(suffix),hasTrailingIcon:Boolean(trailingIcon),hasTrailingButton:Boolean(trailingButton)};};var getTooltipContent=function getTooltipContent(_ref6){var validationState=_ref6.validationState,errorText=_ref6.errorText,successText=_ref6.successText;if(validationState==='error'&&errorText){return errorText;}if(validationState==='success'&&successText){return successText;}return '';};var ValidationIconTooltip=function ValidationIconTooltip(_ref7){var children=_ref7.children,validationState=_ref7.validationState,errorText=_ref7.errorText,successText=_ref7.successText,
|
|
19
|
+
var getVisualContainerStyles=function getVisualContainerStyles(){return {display:'flex',flexDirection:'row',alignItems:'center',alignSelf:'center'};};var trailingIconColor={none:'surface.icon.gray.subtle',error:'feedback.icon.negative.intense',success:'feedback.icon.positive.intense'};var iconSize={medium:'medium',large:'large'};var textSize={medium:'medium',large:'large'};var getPrefixStyles=function getPrefixStyles(_ref){var hasLeadingIcon=_ref.hasLeadingIcon,hasPrefix=_ref.hasPrefix;if(hasPrefix&&hasLeadingIcon){return {paddingLeft:'spacing.3'};}if(hasPrefix&&!hasLeadingIcon){return {paddingLeft:'spacing.4'};}return {paddingLeft:'spacing.0'};};var getInteractionElementStyles=function getInteractionElementStyles(_ref2){var hasTrailingIcon=_ref2.hasTrailingIcon,hasLeadingInteractionElement=_ref2.hasLeadingInteractionElement,hasTrailingInteractionElement=_ref2.hasTrailingInteractionElement,hasSuffix=_ref2.hasSuffix,hasTrailingButton=_ref2.hasTrailingButton;if(hasTrailingInteractionElement&&(hasSuffix||hasTrailingIcon||hasTrailingButton)){return 'spacing.2';}if(hasTrailingInteractionElement&&!hasSuffix&&!hasTrailingIcon&&!hasTrailingButton){return 'spacing.4';}if(hasLeadingInteractionElement){return 'spacing.3';}return 'spacing.0';};var getSuffixStyles=function getSuffixStyles(_ref3){var hasTrailingIcon=_ref3.hasTrailingIcon,hasSuffix=_ref3.hasSuffix,hasTrailingButton=_ref3.hasTrailingButton;if(hasSuffix&&(hasTrailingIcon||hasTrailingButton)){return {paddingRight:'spacing.3'};}if(hasSuffix&&!hasTrailingIcon&&!hasTrailingButton){return {paddingRight:'spacing.4'};}return {paddingRight:'spacing.0'};};var getTrailingIconStyles=function getTrailingIconStyles(_ref4){var hasTrailingIcon=_ref4.hasTrailingIcon,hasTrailingButton=_ref4.hasTrailingButton;if(hasTrailingIcon&&hasTrailingButton){return {paddingRight:'spacing.3'};}if(hasTrailingIcon&&!hasTrailingButton){return {paddingRight:'spacing.4'};}return {paddingRight:'spacing.0'};};var getInputVisualsToBeRendered=function getInputVisualsToBeRendered(_ref5){var leadingIcon=_ref5.leadingIcon,prefix=_ref5.prefix,trailingInteractionElement=_ref5.trailingInteractionElement,leadingInteractionElement=_ref5.leadingInteractionElement,suffix=_ref5.suffix,trailingIcon=_ref5.trailingIcon,trailingButton=_ref5.trailingButton;return {hasLeadingIcon:Boolean(leadingIcon),hasPrefix:Boolean(prefix),hasTrailingInteractionElement:Boolean(trailingInteractionElement),hasLeadingInteractionElement:Boolean(leadingInteractionElement),hasSuffix:Boolean(suffix),hasTrailingIcon:Boolean(trailingIcon),hasTrailingButton:Boolean(trailingButton)};};var getTooltipContent=function getTooltipContent(_ref6){var validationState=_ref6.validationState,errorText=_ref6.errorText,successText=_ref6.successText;if(validationState==='error'&&errorText){return errorText;}if(validationState==='success'&&successText){return successText;}return '';};var ValidationIconTooltip=function ValidationIconTooltip(_ref7){var children=_ref7.children,validationState=_ref7.validationState,errorText=_ref7.errorText,successText=_ref7.successText,showHintsAsTooltip=_ref7.showHintsAsTooltip;if(showHintsAsTooltip&&validationState==='error'&&errorText||validationState==='success'&&successText){return jsx(Tooltip,{content:getTooltipContent({validationState:validationState,errorText:errorText,successText:successText}),children:jsx(Box,{display:"flex",justifyContent:"center",alignItems:"center",children:children})});}return children;};var BaseInputVisuals=function BaseInputVisuals(_ref8){var LeadingIcon=_ref8.leadingIcon,prefix=_ref8.prefix,trailingInteractionElement=_ref8.trailingInteractionElement,leadingInteractionElement=_ref8.leadingInteractionElement,suffix=_ref8.suffix,TrailingIcon=_ref8.trailingIcon,isDisabled=_ref8.isDisabled,_ref8$validationState=_ref8.validationState,validationState=_ref8$validationState===void 0?'none':_ref8$validationState,size=_ref8.size,showHintsAsTooltip=_ref8.showHintsAsTooltip,errorText=_ref8.errorText,successText=_ref8.successText,TrailingButton=_ref8.trailingButton;var _getInputVisualsToBeR=getInputVisualsToBeRendered({leadingIcon:LeadingIcon,prefix:prefix,leadingInteractionElement:leadingInteractionElement,trailingInteractionElement:trailingInteractionElement,suffix:suffix,trailingIcon:TrailingIcon,trailingButton:TrailingButton,size:size}),hasLeadingIcon=_getInputVisualsToBeR.hasLeadingIcon,hasPrefix=_getInputVisualsToBeR.hasPrefix,hasSuffix=_getInputVisualsToBeR.hasSuffix,hasTrailingInteractionElement=_getInputVisualsToBeR.hasTrailingInteractionElement,hasLeadingInteractionElement=_getInputVisualsToBeR.hasLeadingInteractionElement,hasTrailingIcon=_getInputVisualsToBeR.hasTrailingIcon,hasTrailingButton=_getInputVisualsToBeR.hasTrailingButton;var hasLeadingVisuals=hasLeadingInteractionElement||hasLeadingIcon||hasPrefix;var hasTrailingVisuals=hasTrailingInteractionElement||hasSuffix||hasTrailingIcon||hasTrailingButton;if(__DEV__){if(hasTrailingButton&&!isValidAllowedChildren(TrailingButton,'Link')){throwBladeError({message:'trailingButton must be a valid Blade Link component',moduleName:'BaseInput'});}}if(hasLeadingVisuals){return jsxs(BaseBox,Object.assign({},getVisualContainerStyles(),{children:[hasLeadingInteractionElement?jsx(BaseBox,{paddingLeft:getInteractionElementStyles({hasTrailingIcon:hasTrailingIcon,hasLeadingInteractionElement:hasLeadingInteractionElement,hasSuffix:hasSuffix,hasTrailingButton:hasTrailingButton}),display:"flex",alignItems:"stretch",alignSelf:"stretch",children:leadingInteractionElement}):null,LeadingIcon?jsx(BaseBox,{paddingLeft:"spacing.4",display:"flex",children:jsx(LeadingIcon,{size:iconSize[size],color:isDisabled?'surface.icon.gray.disabled':'surface.icon.gray.muted'})}):null,hasPrefix?jsx(BaseBox,Object.assign({},getPrefixStyles({hasLeadingIcon:hasLeadingIcon,hasPrefix:hasPrefix}),{children:jsx(Text,{size:textSize[size],variant:"body",weight:"regular",color:isDisabled?'surface.text.gray.disabled':'surface.text.gray.subtle',children:prefix})})):null]}));}if(hasTrailingVisuals){return jsxs(BaseBox,Object.assign({alignSelf:"stretch",alignItems:"stretch"},getVisualContainerStyles(),{children:[hasTrailingInteractionElement?jsx(BaseBox,{paddingRight:getInteractionElementStyles({hasTrailingIcon:hasTrailingIcon,hasTrailingInteractionElement:hasTrailingInteractionElement,hasSuffix:hasSuffix,hasTrailingButton:hasTrailingButton}),display:"flex",alignItems:"stretch",alignSelf:"stretch",children:trailingInteractionElement}):null,hasSuffix?jsx(BaseBox,Object.assign({},getSuffixStyles({hasTrailingIcon:hasTrailingIcon,hasSuffix:hasSuffix,hasTrailingButton:hasTrailingButton}),{children:jsx(Text,{size:textSize[size],variant:"body",weight:"regular",color:isDisabled?'surface.text.gray.disabled':'surface.text.gray.subtle',children:suffix})})):null,TrailingIcon?jsx(BaseBox,Object.assign({display:"flex",justifyContent:"center",alignItems:"center"},getTrailingIconStyles({hasTrailingIcon:hasTrailingIcon,hasTrailingButton:hasTrailingButton}),{children:jsx(ValidationIconTooltip,{showHintsAsTooltip:showHintsAsTooltip,errorText:errorText,successText:successText,validationState:validationState,children:jsx(TrailingIcon,{size:iconSize[size],color:isDisabled?'interactive.icon.gray.disabled':trailingIconColor[validationState]})})})):null,TrailingButton?jsx(BaseBox,{paddingRight:"spacing.4",display:"flex",children:React__default.cloneElement(TrailingButton,{size:size,variant:'button',isDisabled:isDisabled})}):null]}));}return null;};
|
|
20
20
|
|
|
21
21
|
export { BaseInputVisuals, getInputVisualsToBeRendered };
|
|
22
22
|
//# sourceMappingURL=BaseInputVisuals.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseInputVisuals.js","sources":["../../../../../../src/components/Input/BaseInput/BaseInputVisuals.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/explicit-function-return-type */\nimport React from 'react';\nimport type { ReactElement } from 'react';\nimport type { BaseInputProps } from './BaseInput';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Text } from '~components/Typography';\nimport type { BaseBoxProps, SpacingValueType } from '~components/Box/BaseBox';\nimport type { IconColors } from '~components/Icons';\nimport { isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { throwBladeError } from '~utils/logger';\nimport { Tooltip } from '~components/Tooltip';\nimport { Box } from '~components/Box';\n\ntype InputVisuals = Pick<\n BaseInputProps,\n | 'leadingIcon'\n | 'prefix'\n | 'trailingInteractionElement'\n | 'leadingInteractionElement'\n | 'suffix'\n | 'trailingIcon'\n | 'isDisabled'\n | 'validationState'\n | 'size'\n | 'trailingButton'\n | 'isTableInputCell'\n | 'errorText'\n | 'successText'\n> & {\n size: NonNullable<BaseInputProps['size']>;\n};\n\nconst getVisualContainerStyles = (): Pick<\n BaseBoxProps,\n 'display' | 'flexDirection' | 'alignItems' | 'alignSelf'\n> => ({\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n alignSelf: 'center',\n});\n\nconst trailingIconColor: Record<NonNullable<InputVisuals['validationState']>, IconColors> = {\n none: 'surface.icon.gray.subtle',\n error: 'feedback.icon.negative.intense',\n success: 'feedback.icon.positive.intense',\n};\n\nconst iconSize = {\n medium: 'medium',\n large: 'large',\n} as const;\n\nconst textSize = {\n medium: 'medium',\n large: 'large',\n} as const;\n\nconst getPrefixStyles = ({\n hasLeadingIcon,\n hasPrefix,\n}: {\n hasLeadingIcon: boolean;\n hasPrefix: boolean;\n}): Pick<BaseBoxProps, 'paddingLeft'> => {\n if (hasPrefix && hasLeadingIcon) {\n return {\n paddingLeft: 'spacing.3',\n };\n }\n\n if (hasPrefix && !hasLeadingIcon) {\n return {\n paddingLeft: 'spacing.4',\n };\n }\n\n return {\n paddingLeft: 'spacing.0',\n };\n};\n\nconst getInteractionElementStyles = ({\n hasTrailingIcon,\n hasLeadingInteractionElement,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingButton,\n}: {\n hasTrailingIcon: boolean;\n hasLeadingInteractionElement?: boolean;\n hasTrailingInteractionElement?: boolean;\n hasSuffix: boolean;\n hasTrailingButton: boolean;\n}): SpacingValueType => {\n if (hasTrailingInteractionElement && (hasSuffix || hasTrailingIcon || hasTrailingButton)) {\n return 'spacing.2';\n }\n\n if (hasTrailingInteractionElement && !hasSuffix && !hasTrailingIcon && !hasTrailingButton) {\n return 'spacing.4';\n }\n\n if (hasLeadingInteractionElement) {\n return 'spacing.3';\n }\n\n return 'spacing.0';\n};\n\nconst getSuffixStyles = ({\n hasTrailingIcon,\n hasSuffix,\n hasTrailingButton,\n}: {\n hasTrailingIcon: boolean;\n hasSuffix: boolean;\n hasTrailingButton: boolean;\n}): Pick<BaseBoxProps, 'paddingRight'> => {\n if (hasSuffix && (hasTrailingIcon || hasTrailingButton)) {\n return {\n paddingRight: 'spacing.3',\n };\n }\n\n if (hasSuffix && !hasTrailingIcon && !hasTrailingButton) {\n return {\n paddingRight: 'spacing.4',\n };\n }\n\n return {\n paddingRight: 'spacing.0',\n };\n};\n\nconst getTrailingIconStyles = ({\n hasTrailingIcon,\n hasTrailingButton,\n}: {\n hasTrailingIcon: boolean;\n hasTrailingButton: boolean;\n}): Pick<BaseBoxProps, 'paddingRight'> => {\n if (hasTrailingIcon && hasTrailingButton) {\n return {\n paddingRight: 'spacing.3',\n };\n }\n\n if (hasTrailingIcon && !hasTrailingButton) {\n return {\n paddingRight: 'spacing.4',\n };\n }\n\n return {\n paddingRight: 'spacing.0',\n };\n};\n\nexport const getInputVisualsToBeRendered = ({\n leadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n trailingButton,\n}: InputVisuals) => ({\n hasLeadingIcon: Boolean(leadingIcon),\n hasPrefix: Boolean(prefix),\n hasTrailingInteractionElement: Boolean(trailingInteractionElement),\n hasLeadingInteractionElement: Boolean(leadingInteractionElement),\n hasSuffix: Boolean(suffix),\n hasTrailingIcon: Boolean(trailingIcon),\n hasTrailingButton: Boolean(trailingButton),\n});\n\nconst getTooltipContent = ({\n validationState,\n errorText,\n successText,\n}: {\n validationState: BaseInputProps['validationState'];\n errorText: BaseInputProps['errorText'];\n successText: BaseInputProps['errorText'];\n}): string => {\n if (validationState === 'error' && errorText) {\n return errorText;\n }\n\n if (validationState === 'success' && successText) {\n return successText;\n }\n\n return '';\n};\n\nconst ValidationIconTooltip = ({\n children,\n validationState,\n errorText,\n successText,\n isTableInputCell,\n}: {\n children: ReactElement;\n validationState: BaseInputProps['validationState'];\n errorText: BaseInputProps['errorText'];\n successText: BaseInputProps['errorText'];\n isTableInputCell: BaseInputProps['isTableInputCell'];\n}) => {\n if (\n (isTableInputCell && validationState === 'error' && errorText) ||\n (validationState === 'success' && successText)\n ) {\n return (\n <Tooltip content={getTooltipContent({ validationState, errorText, successText })}>\n <Box display=\"flex\" justifyContent=\"center\" alignItems=\"center\">\n {children}\n </Box>\n </Tooltip>\n );\n }\n\n return children;\n};\n\nexport const BaseInputVisuals = ({\n leadingIcon: LeadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon: TrailingIcon,\n isDisabled,\n validationState = 'none',\n size,\n isTableInputCell,\n errorText,\n successText,\n trailingButton: TrailingButton,\n}: InputVisuals): ReactElement | null => {\n const {\n hasLeadingIcon,\n hasPrefix,\n hasSuffix,\n hasTrailingInteractionElement,\n hasLeadingInteractionElement,\n hasTrailingIcon,\n hasTrailingButton,\n } = getInputVisualsToBeRendered({\n leadingIcon: LeadingIcon,\n prefix,\n leadingInteractionElement,\n trailingInteractionElement,\n suffix,\n trailingIcon: TrailingIcon,\n trailingButton: TrailingButton,\n size,\n });\n\n const hasLeadingVisuals = hasLeadingInteractionElement || hasLeadingIcon || hasPrefix;\n const hasTrailingVisuals =\n hasTrailingInteractionElement || hasSuffix || hasTrailingIcon || hasTrailingButton;\n\n if (__DEV__) {\n if (hasTrailingButton && !isValidAllowedChildren(TrailingButton, 'Link')) {\n throwBladeError({\n message: 'trailingButton must be a valid Blade Link component',\n moduleName: 'BaseInput',\n });\n }\n }\n\n if (hasLeadingVisuals) {\n return (\n <BaseBox {...getVisualContainerStyles()}>\n {hasLeadingInteractionElement ? (\n <BaseBox\n paddingLeft={getInteractionElementStyles({\n hasTrailingIcon,\n hasLeadingInteractionElement,\n hasSuffix,\n hasTrailingButton,\n })}\n display=\"flex\"\n alignItems=\"stretch\"\n alignSelf=\"stretch\"\n >\n {leadingInteractionElement}\n </BaseBox>\n ) : null}\n {LeadingIcon ? (\n <BaseBox paddingLeft=\"spacing.4\" display=\"flex\">\n <LeadingIcon\n size={iconSize[size]}\n color={isDisabled ? 'surface.icon.gray.disabled' : 'surface.icon.gray.muted'}\n />\n </BaseBox>\n ) : null}\n {hasPrefix ? (\n <BaseBox {...getPrefixStyles({ hasLeadingIcon, hasPrefix })}>\n <Text\n size={textSize[size]}\n variant=\"body\"\n weight=\"regular\"\n color={isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle'}\n >\n {prefix}\n </Text>\n </BaseBox>\n ) : null}\n </BaseBox>\n );\n }\n\n if (hasTrailingVisuals) {\n return (\n <BaseBox alignSelf=\"stretch\" alignItems=\"stretch\" {...getVisualContainerStyles()}>\n {hasTrailingInteractionElement ? (\n <BaseBox\n paddingRight={getInteractionElementStyles({\n hasTrailingIcon,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingButton,\n })}\n display=\"flex\"\n alignItems=\"stretch\"\n alignSelf=\"stretch\"\n >\n {trailingInteractionElement}\n </BaseBox>\n ) : null}\n {hasSuffix ? (\n <BaseBox {...getSuffixStyles({ hasTrailingIcon, hasSuffix, hasTrailingButton })}>\n <Text\n size={textSize[size]}\n variant=\"body\"\n weight=\"regular\"\n color={isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle'}\n >\n {suffix}\n </Text>\n </BaseBox>\n ) : null}\n {TrailingIcon ? (\n <BaseBox\n display=\"flex\"\n justifyContent=\"center\"\n alignItems=\"center\"\n {...getTrailingIconStyles({ hasTrailingIcon, hasTrailingButton })}\n >\n <ValidationIconTooltip\n isTableInputCell={isTableInputCell}\n errorText={errorText}\n successText={successText}\n validationState={validationState}\n >\n <TrailingIcon\n size={iconSize[size]}\n color={\n isDisabled ? 'interactive.icon.gray.disabled' : trailingIconColor[validationState]\n }\n />\n </ValidationIconTooltip>\n </BaseBox>\n ) : null}\n {TrailingButton ? (\n <BaseBox paddingRight=\"spacing.4\" display=\"flex\">\n {React.cloneElement(TrailingButton, {\n size,\n variant: 'button',\n isDisabled,\n })}\n </BaseBox>\n ) : null}\n </BaseBox>\n );\n }\n\n return null;\n};\n"],"names":["getVisualContainerStyles","display","flexDirection","alignItems","alignSelf","trailingIconColor","none","error","success","iconSize","medium","large","textSize","getPrefixStyles","_ref","hasLeadingIcon","hasPrefix","paddingLeft","getInteractionElementStyles","_ref2","hasTrailingIcon","hasLeadingInteractionElement","hasTrailingInteractionElement","hasSuffix","hasTrailingButton","getSuffixStyles","_ref3","paddingRight","getTrailingIconStyles","_ref4","getInputVisualsToBeRendered","_ref5","leadingIcon","prefix","trailingInteractionElement","leadingInteractionElement","suffix","trailingIcon","trailingButton","Boolean","getTooltipContent","_ref6","validationState","errorText","successText","ValidationIconTooltip","_ref7","children","isTableInputCell","_jsx","Tooltip","content","Box","justifyContent","BaseInputVisuals","_ref8","LeadingIcon","TrailingIcon","isDisabled","_ref8$validationState","size","TrailingButton","_getInputVisualsToBeR","hasLeadingVisuals","hasTrailingVisuals","__DEV__","isValidAllowedChildren","throwBladeError","message","moduleName","_jsxs","BaseBox","Object","assign","color","Text","variant","weight","React","cloneElement"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseInputVisuals.js","sources":["../../../../../../src/components/Input/BaseInput/BaseInputVisuals.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/explicit-function-return-type */\nimport React from 'react';\nimport type { ReactElement } from 'react';\nimport type { BaseInputProps } from './BaseInput';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Text } from '~components/Typography';\nimport type { BaseBoxProps, SpacingValueType } from '~components/Box/BaseBox';\nimport type { IconColors } from '~components/Icons';\nimport { isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { throwBladeError } from '~utils/logger';\nimport { Tooltip } from '~components/Tooltip';\nimport { Box } from '~components/Box';\n\ntype InputVisuals = Pick<\n BaseInputProps,\n | 'leadingIcon'\n | 'prefix'\n | 'trailingInteractionElement'\n | 'leadingInteractionElement'\n | 'suffix'\n | 'trailingIcon'\n | 'isDisabled'\n | 'validationState'\n | 'size'\n | 'trailingButton'\n | 'showHintsAsTooltip'\n | 'errorText'\n | 'successText'\n> & {\n size: NonNullable<BaseInputProps['size']>;\n};\n\nconst getVisualContainerStyles = (): Pick<\n BaseBoxProps,\n 'display' | 'flexDirection' | 'alignItems' | 'alignSelf'\n> => ({\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n alignSelf: 'center',\n});\n\nconst trailingIconColor: Record<NonNullable<InputVisuals['validationState']>, IconColors> = {\n none: 'surface.icon.gray.subtle',\n error: 'feedback.icon.negative.intense',\n success: 'feedback.icon.positive.intense',\n};\n\nconst iconSize = {\n medium: 'medium',\n large: 'large',\n} as const;\n\nconst textSize = {\n medium: 'medium',\n large: 'large',\n} as const;\n\nconst getPrefixStyles = ({\n hasLeadingIcon,\n hasPrefix,\n}: {\n hasLeadingIcon: boolean;\n hasPrefix: boolean;\n}): Pick<BaseBoxProps, 'paddingLeft'> => {\n if (hasPrefix && hasLeadingIcon) {\n return {\n paddingLeft: 'spacing.3',\n };\n }\n\n if (hasPrefix && !hasLeadingIcon) {\n return {\n paddingLeft: 'spacing.4',\n };\n }\n\n return {\n paddingLeft: 'spacing.0',\n };\n};\n\nconst getInteractionElementStyles = ({\n hasTrailingIcon,\n hasLeadingInteractionElement,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingButton,\n}: {\n hasTrailingIcon: boolean;\n hasLeadingInteractionElement?: boolean;\n hasTrailingInteractionElement?: boolean;\n hasSuffix: boolean;\n hasTrailingButton: boolean;\n}): SpacingValueType => {\n if (hasTrailingInteractionElement && (hasSuffix || hasTrailingIcon || hasTrailingButton)) {\n return 'spacing.2';\n }\n\n if (hasTrailingInteractionElement && !hasSuffix && !hasTrailingIcon && !hasTrailingButton) {\n return 'spacing.4';\n }\n\n if (hasLeadingInteractionElement) {\n return 'spacing.3';\n }\n\n return 'spacing.0';\n};\n\nconst getSuffixStyles = ({\n hasTrailingIcon,\n hasSuffix,\n hasTrailingButton,\n}: {\n hasTrailingIcon: boolean;\n hasSuffix: boolean;\n hasTrailingButton: boolean;\n}): Pick<BaseBoxProps, 'paddingRight'> => {\n if (hasSuffix && (hasTrailingIcon || hasTrailingButton)) {\n return {\n paddingRight: 'spacing.3',\n };\n }\n\n if (hasSuffix && !hasTrailingIcon && !hasTrailingButton) {\n return {\n paddingRight: 'spacing.4',\n };\n }\n\n return {\n paddingRight: 'spacing.0',\n };\n};\n\nconst getTrailingIconStyles = ({\n hasTrailingIcon,\n hasTrailingButton,\n}: {\n hasTrailingIcon: boolean;\n hasTrailingButton: boolean;\n}): Pick<BaseBoxProps, 'paddingRight'> => {\n if (hasTrailingIcon && hasTrailingButton) {\n return {\n paddingRight: 'spacing.3',\n };\n }\n\n if (hasTrailingIcon && !hasTrailingButton) {\n return {\n paddingRight: 'spacing.4',\n };\n }\n\n return {\n paddingRight: 'spacing.0',\n };\n};\n\nexport const getInputVisualsToBeRendered = ({\n leadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n trailingButton,\n}: InputVisuals) => ({\n hasLeadingIcon: Boolean(leadingIcon),\n hasPrefix: Boolean(prefix),\n hasTrailingInteractionElement: Boolean(trailingInteractionElement),\n hasLeadingInteractionElement: Boolean(leadingInteractionElement),\n hasSuffix: Boolean(suffix),\n hasTrailingIcon: Boolean(trailingIcon),\n hasTrailingButton: Boolean(trailingButton),\n});\n\nconst getTooltipContent = ({\n validationState,\n errorText,\n successText,\n}: {\n validationState: BaseInputProps['validationState'];\n errorText: BaseInputProps['errorText'];\n successText: BaseInputProps['errorText'];\n}): string => {\n if (validationState === 'error' && errorText) {\n return errorText;\n }\n\n if (validationState === 'success' && successText) {\n return successText;\n }\n\n return '';\n};\n\nconst ValidationIconTooltip = ({\n children,\n validationState,\n errorText,\n successText,\n showHintsAsTooltip,\n}: {\n children: ReactElement;\n validationState: BaseInputProps['validationState'];\n errorText: BaseInputProps['errorText'];\n successText: BaseInputProps['errorText'];\n showHintsAsTooltip: BaseInputProps['showHintsAsTooltip'];\n}) => {\n if (\n (showHintsAsTooltip && validationState === 'error' && errorText) ||\n (validationState === 'success' && successText)\n ) {\n return (\n <Tooltip content={getTooltipContent({ validationState, errorText, successText })}>\n <Box display=\"flex\" justifyContent=\"center\" alignItems=\"center\">\n {children}\n </Box>\n </Tooltip>\n );\n }\n\n return children;\n};\n\nexport const BaseInputVisuals = ({\n leadingIcon: LeadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon: TrailingIcon,\n isDisabled,\n validationState = 'none',\n size,\n showHintsAsTooltip,\n errorText,\n successText,\n trailingButton: TrailingButton,\n}: InputVisuals): ReactElement | null => {\n const {\n hasLeadingIcon,\n hasPrefix,\n hasSuffix,\n hasTrailingInteractionElement,\n hasLeadingInteractionElement,\n hasTrailingIcon,\n hasTrailingButton,\n } = getInputVisualsToBeRendered({\n leadingIcon: LeadingIcon,\n prefix,\n leadingInteractionElement,\n trailingInteractionElement,\n suffix,\n trailingIcon: TrailingIcon,\n trailingButton: TrailingButton,\n size,\n });\n\n const hasLeadingVisuals = hasLeadingInteractionElement || hasLeadingIcon || hasPrefix;\n const hasTrailingVisuals =\n hasTrailingInteractionElement || hasSuffix || hasTrailingIcon || hasTrailingButton;\n\n if (__DEV__) {\n if (hasTrailingButton && !isValidAllowedChildren(TrailingButton, 'Link')) {\n throwBladeError({\n message: 'trailingButton must be a valid Blade Link component',\n moduleName: 'BaseInput',\n });\n }\n }\n\n if (hasLeadingVisuals) {\n return (\n <BaseBox {...getVisualContainerStyles()}>\n {hasLeadingInteractionElement ? (\n <BaseBox\n paddingLeft={getInteractionElementStyles({\n hasTrailingIcon,\n hasLeadingInteractionElement,\n hasSuffix,\n hasTrailingButton,\n })}\n display=\"flex\"\n alignItems=\"stretch\"\n alignSelf=\"stretch\"\n >\n {leadingInteractionElement}\n </BaseBox>\n ) : null}\n {LeadingIcon ? (\n <BaseBox paddingLeft=\"spacing.4\" display=\"flex\">\n <LeadingIcon\n size={iconSize[size]}\n color={isDisabled ? 'surface.icon.gray.disabled' : 'surface.icon.gray.muted'}\n />\n </BaseBox>\n ) : null}\n {hasPrefix ? (\n <BaseBox {...getPrefixStyles({ hasLeadingIcon, hasPrefix })}>\n <Text\n size={textSize[size]}\n variant=\"body\"\n weight=\"regular\"\n color={isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle'}\n >\n {prefix}\n </Text>\n </BaseBox>\n ) : null}\n </BaseBox>\n );\n }\n\n if (hasTrailingVisuals) {\n return (\n <BaseBox alignSelf=\"stretch\" alignItems=\"stretch\" {...getVisualContainerStyles()}>\n {hasTrailingInteractionElement ? (\n <BaseBox\n paddingRight={getInteractionElementStyles({\n hasTrailingIcon,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingButton,\n })}\n display=\"flex\"\n alignItems=\"stretch\"\n alignSelf=\"stretch\"\n >\n {trailingInteractionElement}\n </BaseBox>\n ) : null}\n {hasSuffix ? (\n <BaseBox {...getSuffixStyles({ hasTrailingIcon, hasSuffix, hasTrailingButton })}>\n <Text\n size={textSize[size]}\n variant=\"body\"\n weight=\"regular\"\n color={isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle'}\n >\n {suffix}\n </Text>\n </BaseBox>\n ) : null}\n {TrailingIcon ? (\n <BaseBox\n display=\"flex\"\n justifyContent=\"center\"\n alignItems=\"center\"\n {...getTrailingIconStyles({ hasTrailingIcon, hasTrailingButton })}\n >\n <ValidationIconTooltip\n showHintsAsTooltip={showHintsAsTooltip}\n errorText={errorText}\n successText={successText}\n validationState={validationState}\n >\n <TrailingIcon\n size={iconSize[size]}\n color={\n isDisabled ? 'interactive.icon.gray.disabled' : trailingIconColor[validationState]\n }\n />\n </ValidationIconTooltip>\n </BaseBox>\n ) : null}\n {TrailingButton ? (\n <BaseBox paddingRight=\"spacing.4\" display=\"flex\">\n {React.cloneElement(TrailingButton, {\n size,\n variant: 'button',\n isDisabled,\n })}\n </BaseBox>\n ) : null}\n </BaseBox>\n );\n }\n\n return null;\n};\n"],"names":["getVisualContainerStyles","display","flexDirection","alignItems","alignSelf","trailingIconColor","none","error","success","iconSize","medium","large","textSize","getPrefixStyles","_ref","hasLeadingIcon","hasPrefix","paddingLeft","getInteractionElementStyles","_ref2","hasTrailingIcon","hasLeadingInteractionElement","hasTrailingInteractionElement","hasSuffix","hasTrailingButton","getSuffixStyles","_ref3","paddingRight","getTrailingIconStyles","_ref4","getInputVisualsToBeRendered","_ref5","leadingIcon","prefix","trailingInteractionElement","leadingInteractionElement","suffix","trailingIcon","trailingButton","Boolean","getTooltipContent","_ref6","validationState","errorText","successText","ValidationIconTooltip","_ref7","children","showHintsAsTooltip","_jsx","Tooltip","content","Box","justifyContent","BaseInputVisuals","_ref8","LeadingIcon","TrailingIcon","isDisabled","_ref8$validationState","size","TrailingButton","_getInputVisualsToBeR","hasLeadingVisuals","hasTrailingVisuals","__DEV__","isValidAllowedChildren","throwBladeError","message","moduleName","_jsxs","BaseBox","Object","assign","color","Text","variant","weight","React","cloneElement"],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ import '../../BladeProvider/useTheme.js';
|
|
|
12
12
|
import getIn from '../../../utils/lodashButBetter/get.js';
|
|
13
13
|
import getHeadingStyles from '../../Typography/Heading/getHeadingStyles.js';
|
|
14
14
|
|
|
15
|
-
var getBaseInputState=function getBaseInputState(_ref){var isFocused=_ref.isFocused,isHovered=_ref.isHovered,isDisabled=_ref.isDisabled;if(isDisabled){return 'disabled';}else if(isFocused){return 'focused';}else if(isHovered){return 'hovered';}else {return 'default';}};var getInputBackgroundAndBorderStyles=function getInputBackgroundAndBorderStyles(_ref2){var theme=_ref2.theme,isHovered=_ref2.isHovered,isFocused=_ref2.isFocused,isDisabled=_ref2.isDisabled,validationState=_ref2.validationState,isTextArea=_ref2.isTextArea,isDropdownTrigger=_ref2.isDropdownTrigger,isTableInputCell=_ref2.isTableInputCell;var backgroundColorTokens=isTableInputCell?baseInputBorderlessBackgroundColor:baseInputBackgroundColor;var backgroundColor=getIn(theme.colors,backgroundColorTokens.default);var borderColor=isTableInputCell?theme.colors.transparent:getIn(theme.colors,baseInputBorderColor.default);var borderWidth=getIn(theme.border.width,baseInputBorderWidth.default);var baseInputState=getBaseInputState({isFocused:isFocused,isHovered:isHovered,isDisabled:isDisabled});backgroundColor=getIn(theme.colors,backgroundColorTokens[baseInputState]);borderColor=isTableInputCell&&baseInputState!=='focused'?theme.colors.transparent:getIn(theme.colors,baseInputBorderColor[baseInputState]);borderWidth=getIn(theme.border.width,baseInputBorderWidth[baseInputState]);if(!isTableInputCell&&validationState&&validationState!=='none'){borderColor=getIn(theme.colors,baseInputBorderColor[validationState]);borderWidth=getIn(theme.border.width,baseInputBorderWidth[validationState]);}else if(validationState&&validationState!=='none'){backgroundColor=getIn(theme.colors,baseInputBorderlessBackgroundColor[validationState]);}return Object.assign({backgroundColor:backgroundColor,borderRadius:makeBorderSize(isTableInputCell?theme.border.radius.none:theme.border.radius.medium),borderStyle:'solid',display:'flex',flexDirection:'row',width:'100%',alignItems:isTextArea?'flex-start':undefined,position:'relative',height:isDropdownTrigger&&!isTextArea?'auto':undefined,border:'none'},getBaseInputBorderStyles({theme:theme,borderColor:borderColor,borderWidth:borderWidth,isFocused:isFocused}));};var getLeftPadding=function getLeftPadding(_ref3){var theme=_ref3.theme,isDropdownTrigger=_ref3.isDropdownTrigger,hasLeadingIcon=_ref3.hasLeadingIcon,hasPrefix=_ref3.hasPrefix,size=_ref3.size;if(isDropdownTrigger){return theme.spacing[0];}if(hasLeadingIcon||hasPrefix){return theme.spacing[3];}return theme.spacing[baseInputPaddingTokens.left[size]];};var getRightPadding=function getRightPadding(_ref4){var theme=_ref4.theme,hasTrailingInteractionElement=_ref4.hasTrailingInteractionElement,hasSuffix=_ref4.hasSuffix,hasTrailingIcon=_ref4.hasTrailingIcon,size=_ref4.size;if(hasTrailingInteractionElement||hasSuffix||hasTrailingIcon){return theme.spacing[3];}return theme.spacing[baseInputPaddingTokens.right[size]];};var getBaseInputStyles=function getBaseInputStyles(_ref5){var theme=_ref5.theme,isDisabled=_ref5.isDisabled,leadingIcon=_ref5.leadingIcon,prefix=_ref5.prefix,trailingInteractionElement=_ref5.trailingInteractionElement,leadingInteractionElement=_ref5.leadingInteractionElement,suffix=_ref5.suffix,trailingIcon=_ref5.trailingIcon,textAlign=_ref5.textAlign,isTextArea=_ref5.isTextArea,hasTags=_ref5.hasTags,isDropdownTrigger=_ref5.isDropdownTrigger,size=_ref5.size,valueComponentType=_ref5.valueComponentType;var _getInputVisualsToBeR=getInputVisualsToBeRendered({leadingIcon:leadingIcon,prefix:prefix,trailingInteractionElement:trailingInteractionElement,leadingInteractionElement:leadingInteractionElement,suffix:suffix,trailingIcon:trailingIcon,size:size}),hasLeadingIcon=_getInputVisualsToBeR.hasLeadingIcon,hasPrefix=_getInputVisualsToBeR.hasPrefix,hasTrailingInteractionElement=_getInputVisualsToBeR.hasTrailingInteractionElement,hasSuffix=_getInputVisualsToBeR.hasSuffix,hasTrailingIcon=_getInputVisualsToBeR.hasTrailingIcon;var isDropdownWithTags=isDropdownTrigger&&hasTags;var isReactNative=getPlatformType()==='react-native';return Object.assign({},valueComponentType==='heading'?getHeadingStyles({size:size,weight:'regular',color:isDisabled?'surface.text.gray.disabled':'surface.text.gray.subtle',theme:theme}):getTextStyles({size:size,variant:'body',weight:'regular',color:isDisabled?'surface.text.gray.disabled':'surface.text.gray.subtle',theme:theme}),{flex:1,backgroundColor:theme.colors.transparent,paddingTop:makeSpace(theme.spacing[baseInputPaddingTokens.top[size]]),paddingBottom:makeSpace(theme.spacing[baseInputPaddingTokens.bottom[size]]),paddingLeft:makeSpace(getLeftPadding({theme:theme,isDropdownTrigger:isDropdownTrigger,hasLeadingIcon:hasLeadingIcon,hasPrefix:hasPrefix,size:size})),paddingRight:getRightPadding({theme:theme,hasTrailingInteractionElement:hasTrailingInteractionElement,hasSuffix:hasSuffix,hasTrailingIcon:hasTrailingIcon,size:size}),textAlign:textAlign,width:'100%',height:
|
|
15
|
+
var getBaseInputState=function getBaseInputState(_ref){var isFocused=_ref.isFocused,isHovered=_ref.isHovered,isDisabled=_ref.isDisabled;if(isDisabled){return 'disabled';}else if(isFocused){return 'focused';}else if(isHovered){return 'hovered';}else {return 'default';}};var getInputBackgroundAndBorderStyles=function getInputBackgroundAndBorderStyles(_ref2){var theme=_ref2.theme,isHovered=_ref2.isHovered,isFocused=_ref2.isFocused,isDisabled=_ref2.isDisabled,validationState=_ref2.validationState,isTextArea=_ref2.isTextArea,isDropdownTrigger=_ref2.isDropdownTrigger,isTableInputCell=_ref2.isTableInputCell;var backgroundColorTokens=isTableInputCell?baseInputBorderlessBackgroundColor:baseInputBackgroundColor;var backgroundColor=getIn(theme.colors,backgroundColorTokens.default);var borderColor=isTableInputCell?theme.colors.transparent:getIn(theme.colors,baseInputBorderColor.default);var borderWidth=getIn(theme.border.width,baseInputBorderWidth.default);var baseInputState=getBaseInputState({isFocused:isFocused,isHovered:isHovered,isDisabled:isDisabled});backgroundColor=getIn(theme.colors,backgroundColorTokens[baseInputState]);borderColor=isTableInputCell&&baseInputState!=='focused'?theme.colors.transparent:getIn(theme.colors,baseInputBorderColor[baseInputState]);borderWidth=getIn(theme.border.width,baseInputBorderWidth[baseInputState]);if(!isTableInputCell&&validationState&&validationState!=='none'){borderColor=getIn(theme.colors,baseInputBorderColor[validationState]);borderWidth=getIn(theme.border.width,baseInputBorderWidth[validationState]);}else if(validationState&&validationState!=='none'){backgroundColor=getIn(theme.colors,baseInputBorderlessBackgroundColor[validationState]);}return Object.assign({backgroundColor:backgroundColor,borderRadius:makeBorderSize(isTableInputCell?theme.border.radius.none:theme.border.radius.medium),borderStyle:'solid',display:'flex',flexDirection:'row',width:'100%',alignItems:isTextArea?'flex-start':undefined,position:'relative',height:isDropdownTrigger&&!isTextArea?'auto':undefined,border:'none'},getBaseInputBorderStyles({theme:theme,borderColor:borderColor,borderWidth:borderWidth,isFocused:isFocused}));};var getLeftPadding=function getLeftPadding(_ref3){var theme=_ref3.theme,isDropdownTrigger=_ref3.isDropdownTrigger,hasLeadingIcon=_ref3.hasLeadingIcon,hasPrefix=_ref3.hasPrefix,size=_ref3.size;if(isDropdownTrigger){return theme.spacing[0];}if(hasLeadingIcon||hasPrefix){return theme.spacing[3];}return theme.spacing[baseInputPaddingTokens.left[size]];};var getRightPadding=function getRightPadding(_ref4){var theme=_ref4.theme,hasTrailingInteractionElement=_ref4.hasTrailingInteractionElement,hasSuffix=_ref4.hasSuffix,hasTrailingIcon=_ref4.hasTrailingIcon,size=_ref4.size;if(hasTrailingInteractionElement||hasSuffix||hasTrailingIcon){return theme.spacing[3];}return theme.spacing[baseInputPaddingTokens.right[size]];};var getBaseInputStyles=function getBaseInputStyles(_ref5){var theme=_ref5.theme,isDisabled=_ref5.isDisabled,leadingIcon=_ref5.leadingIcon,prefix=_ref5.prefix,trailingInteractionElement=_ref5.trailingInteractionElement,leadingInteractionElement=_ref5.leadingInteractionElement,suffix=_ref5.suffix,trailingIcon=_ref5.trailingIcon,textAlign=_ref5.textAlign,isTextArea=_ref5.isTextArea,hasTags=_ref5.hasTags,isDropdownTrigger=_ref5.isDropdownTrigger,size=_ref5.size,valueComponentType=_ref5.valueComponentType;var _getInputVisualsToBeR=getInputVisualsToBeRendered({leadingIcon:leadingIcon,prefix:prefix,trailingInteractionElement:trailingInteractionElement,leadingInteractionElement:leadingInteractionElement,suffix:suffix,trailingIcon:trailingIcon,size:size}),hasLeadingIcon=_getInputVisualsToBeR.hasLeadingIcon,hasPrefix=_getInputVisualsToBeR.hasPrefix,hasTrailingInteractionElement=_getInputVisualsToBeR.hasTrailingInteractionElement,hasSuffix=_getInputVisualsToBeR.hasSuffix,hasTrailingIcon=_getInputVisualsToBeR.hasTrailingIcon;var isDropdownWithTags=isDropdownTrigger&&hasTags;var isReactNative=getPlatformType()==='react-native';var shouldHaveFlexibleHeight=isTextArea||isDropdownWithTags;return Object.assign({},valueComponentType==='heading'?getHeadingStyles({size:size,weight:'regular',color:isDisabled?'surface.text.gray.disabled':'surface.text.gray.subtle',theme:theme}):getTextStyles({size:size,variant:'body',weight:'regular',color:isDisabled?'surface.text.gray.disabled':'surface.text.gray.subtle',theme:theme}),{flex:1,backgroundColor:theme.colors.transparent,paddingTop:makeSpace(theme.spacing[baseInputPaddingTokens.top[size]]),paddingBottom:makeSpace(theme.spacing[baseInputPaddingTokens.bottom[size]]),paddingLeft:makeSpace(getLeftPadding({theme:theme,isDropdownTrigger:isDropdownTrigger,hasLeadingIcon:hasLeadingIcon,hasPrefix:hasPrefix,size:size})),paddingRight:getRightPadding({theme:theme,hasTrailingInteractionElement:hasTrailingInteractionElement,hasSuffix:hasSuffix,hasTrailingIcon:hasTrailingIcon,size:size}),textAlign:textAlign,width:'100%',height:shouldHaveFlexibleHeight?undefined:makeSpace(baseInputHeight[size]),minHeight:shouldHaveFlexibleHeight?undefined:makeSpace(baseInputHeight[size])},isReactNative?{}:{resize:'none'});};var getAnimatedBaseInputWrapperMaxHeight=function getAnimatedBaseInputWrapperMaxHeight(_ref6){var maxTagRows=_ref6.maxTagRows,showAllTags=_ref6.showAllTags,size=_ref6.size;if(maxTagRows==='single'){return baseInputHeight[size];}if(maxTagRows==='multiple'){return baseInputWrapperMaxHeight[size];}return showAllTags?baseInputWrapperMaxHeight[size]:baseInputHeight[size];};
|
|
16
16
|
|
|
17
17
|
export { getAnimatedBaseInputWrapperMaxHeight, getBaseInputState, getBaseInputStyles, getInputBackgroundAndBorderStyles };
|
|
18
18
|
//# sourceMappingURL=baseInputStyles.js.map
|
|
@@ -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\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: isTextArea || isDropdownWithTags ? undefined : makeSpace(baseInputHeight[size]),\n minHeight: isTextArea || isDropdownWithTags ? 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","default","borderColor","transparent","baseInputBorderColor","borderWidth","border","width","baseInputBorderWidth","baseInputState","Object","assign","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","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\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","default","borderColor","transparent","baseInputBorderColor","borderWidth","border","width","baseInputBorderWidth","baseInputState","Object","assign","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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"}
|