@razorpay/blade 12.63.0 → 12.65.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/Badge/Badge.js +1 -1
- package/build/lib/native/components/Badge/Badge.js.map +1 -1
- package/build/lib/native/components/Badge/badgeTokens.js +1 -1
- package/build/lib/native/components/Badge/badgeTokens.js.map +1 -1
- package/build/lib/native/components/Charts/CommonChartComponents/CommonChartComponentsContext.js +6 -0
- package/build/lib/native/components/Charts/CommonChartComponents/CommonChartComponentsContext.js.map +1 -0
- package/build/lib/native/components/Charts/CommonChartComponents/tokens.js +4 -0
- package/build/lib/native/components/Charts/CommonChartComponents/tokens.js.map +1 -0
- package/build/lib/native/components/Form/CharacterCounter/CharacterCounter.js.map +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/baseInputTokens.js +1 -1
- package/build/lib/native/components/Input/BaseInput/baseInputTokens.js.map +1 -1
- package/build/lib/native/components/QuickFilters/QuickFilter.js +1 -1
- package/build/lib/native/components/QuickFilters/QuickFilter.js.map +1 -1
- package/build/lib/native/components/Radio/Radio.js +1 -1
- package/build/lib/native/components/Radio/Radio.js.map +1 -1
- package/build/lib/native/components/Table/TableContext.js +1 -1
- package/build/lib/native/components/Table/TableContext.js.map +1 -1
- package/build/lib/native/components/Table/tokens.js +1 -1
- package/build/lib/native/components/Table/tokens.js.map +1 -1
- package/build/lib/native/components/index.js +2 -0
- package/build/lib/native/components/index.js.map +1 -1
- package/build/lib/native/tokens/global/colors.js +1 -1
- package/build/lib/native/tokens/global/colors.js.map +1 -1
- package/build/lib/native/tokens/global/size.js +1 -1
- package/build/lib/native/tokens/global/size.js.map +1 -1
- package/build/lib/native/tokens/theme/bladeTheme.js +1 -1
- package/build/lib/native/tokens/theme/bladeTheme.js.map +1 -1
- package/build/lib/native/tokens/theme/theme.js.map +1 -1
- package/build/lib/web/development/components/Badge/Badge.js +4 -0
- package/build/lib/web/development/components/Badge/Badge.js.map +1 -1
- package/build/lib/web/development/components/Badge/badgeTokens.js +4 -0
- package/build/lib/web/development/components/Badge/badgeTokens.js.map +1 -1
- package/build/lib/web/development/components/Charts/AreaChart/AreaChart.web.js +140 -38
- package/build/lib/web/development/components/Charts/AreaChart/AreaChart.web.js.map +1 -1
- package/build/lib/web/development/components/Charts/BarChart/BarChart.web.js +121 -57
- package/build/lib/web/development/components/Charts/BarChart/BarChart.web.js.map +1 -1
- package/build/lib/web/development/components/Charts/CommonChartComponents/CommonChartComponents.web.js +145 -92
- package/build/lib/web/development/components/Charts/CommonChartComponents/CommonChartComponents.web.js.map +1 -1
- package/build/lib/web/development/components/Charts/CommonChartComponents/CommonChartComponentsContext.js +15 -0
- package/build/lib/web/development/components/Charts/CommonChartComponents/CommonChartComponentsContext.js.map +1 -0
- package/build/lib/web/development/components/Charts/CommonChartComponents/index.js +2 -0
- package/build/lib/web/development/components/Charts/CommonChartComponents/index.js.map +1 -1
- package/build/lib/web/development/components/Charts/CommonChartComponents/tokens.js +2 -1
- package/build/lib/web/development/components/Charts/CommonChartComponents/tokens.js.map +1 -1
- package/build/lib/web/development/components/Charts/DonutChart/DonutChart.web.js +202 -69
- package/build/lib/web/development/components/Charts/DonutChart/DonutChart.web.js.map +1 -1
- package/build/lib/web/development/components/Charts/LineChart/LineChart.web.js +84 -32
- package/build/lib/web/development/components/Charts/LineChart/LineChart.web.js.map +1 -1
- package/build/lib/web/development/components/Charts/utils/assignDataColorMapping/assignDataColorMapping.js +33 -0
- package/build/lib/web/development/components/Charts/utils/assignDataColorMapping/assignDataColorMapping.js.map +1 -0
- package/build/lib/web/development/components/Charts/utils/assignDataColorMapping/index.js +2 -0
- package/build/lib/web/development/components/Charts/utils/assignDataColorMapping/index.js.map +1 -0
- package/build/lib/web/development/components/Charts/utils/getHighestColorInRange.js +53 -0
- package/build/lib/web/development/components/Charts/utils/getHighestColorInRange.js.map +1 -0
- package/build/lib/web/development/components/Charts/utils/index.js +5 -0
- package/build/lib/web/development/components/Charts/utils/index.js.map +1 -1
- package/build/lib/web/development/components/Charts/utils/isSequentialColor.js +35 -0
- package/build/lib/web/development/components/Charts/utils/isSequentialColor.js.map +1 -0
- package/build/lib/web/development/components/Charts/utils/sanitizeString/index.js +2 -0
- package/build/lib/web/development/components/Charts/utils/sanitizeString/index.js.map +1 -0
- package/build/lib/web/development/components/Charts/utils/sanitizeString/sanitizeString.js +30 -0
- package/build/lib/web/development/components/Charts/utils/sanitizeString/sanitizeString.js.map +1 -0
- package/build/lib/web/development/components/Charts/utils/tokens.js +7 -0
- package/build/lib/web/development/components/Charts/utils/tokens.js.map +1 -0
- package/build/lib/web/development/components/Charts/utils/useColorTheme.js +32 -11
- package/build/lib/web/development/components/Charts/utils/useColorTheme.js.map +1 -1
- package/build/lib/web/development/components/Dropdown/FilterChipGroup.web.js +3 -1
- package/build/lib/web/development/components/Dropdown/FilterChipGroup.web.js.map +1 -1
- package/build/lib/web/development/components/FilterChip/BaseFilterChip.web.js +8 -9
- package/build/lib/web/development/components/FilterChip/BaseFilterChip.web.js.map +1 -1
- package/build/lib/web/development/components/FilterChip/tokens.js +1 -1
- package/build/lib/web/development/components/FilterChip/tokens.js.map +1 -1
- package/build/lib/web/development/components/Form/CharacterCounter/CharacterCounter.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/BaseInputVisuals.js +2 -0
- package/build/lib/web/development/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/baseInputTokens.js +11 -0
- package/build/lib/web/development/components/Input/BaseInput/baseInputTokens.js.map +1 -1
- package/build/lib/web/development/components/Input/PhoneNumberInput/CountrySelector.web.js +1 -0
- package/build/lib/web/development/components/Input/PhoneNumberInput/CountrySelector.web.js.map +1 -1
- package/build/lib/web/development/components/ListView/ListViewFilters.web.js +13 -102
- package/build/lib/web/development/components/ListView/ListViewFilters.web.js.map +1 -1
- package/build/lib/web/development/components/QuickFilters/QuickFilter.js +2 -1
- package/build/lib/web/development/components/QuickFilters/QuickFilter.js.map +1 -1
- package/build/lib/web/development/components/Radio/Radio.js +4 -2
- package/build/lib/web/development/components/Radio/Radio.js.map +1 -1
- package/build/lib/web/development/components/Table/Table.web.js +3 -1
- package/build/lib/web/development/components/Table/Table.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableBody.web.js +2 -1
- package/build/lib/web/development/components/Table/TableBody.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableContext.js +2 -1
- package/build/lib/web/development/components/Table/TableContext.js.map +1 -1
- package/build/lib/web/development/components/Table/TableFooter.web.js +2 -1
- package/build/lib/web/development/components/Table/TableFooter.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableHeader.web.js +78 -68
- package/build/lib/web/development/components/Table/TableHeader.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TablePagination.web.js +5 -2
- package/build/lib/web/development/components/Table/TablePagination.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableToolbar.web.js +15 -13
- package/build/lib/web/development/components/Table/TableToolbar.web.js.map +1 -1
- package/build/lib/web/development/components/Table/tokens.js +11 -8
- package/build/lib/web/development/components/Table/tokens.js.map +1 -1
- package/build/lib/web/development/components/index.js +2 -0
- package/build/lib/web/development/components/index.js.map +1 -1
- package/build/lib/web/development/tokens/global/colors.js +48 -48
- package/build/lib/web/development/tokens/global/colors.js.map +1 -1
- package/build/lib/web/development/tokens/global/size.js +2 -0
- package/build/lib/web/development/tokens/global/size.js.map +1 -1
- package/build/lib/web/development/tokens/theme/bladeTheme.js +139 -111
- package/build/lib/web/development/tokens/theme/bladeTheme.js.map +1 -1
- package/build/lib/web/development/tokens/theme/theme.js.map +1 -1
- package/build/lib/web/production/components/Badge/Badge.js +4 -0
- package/build/lib/web/production/components/Badge/Badge.js.map +1 -1
- package/build/lib/web/production/components/Badge/badgeTokens.js +4 -0
- package/build/lib/web/production/components/Badge/badgeTokens.js.map +1 -1
- package/build/lib/web/production/components/Charts/AreaChart/AreaChart.web.js +140 -38
- package/build/lib/web/production/components/Charts/AreaChart/AreaChart.web.js.map +1 -1
- package/build/lib/web/production/components/Charts/BarChart/BarChart.web.js +121 -57
- package/build/lib/web/production/components/Charts/BarChart/BarChart.web.js.map +1 -1
- package/build/lib/web/production/components/Charts/CommonChartComponents/CommonChartComponents.web.js +145 -92
- package/build/lib/web/production/components/Charts/CommonChartComponents/CommonChartComponents.web.js.map +1 -1
- package/build/lib/web/production/components/Charts/CommonChartComponents/CommonChartComponentsContext.js +15 -0
- package/build/lib/web/production/components/Charts/CommonChartComponents/CommonChartComponentsContext.js.map +1 -0
- package/build/lib/web/production/components/Charts/CommonChartComponents/index.js +2 -0
- package/build/lib/web/production/components/Charts/CommonChartComponents/index.js.map +1 -1
- package/build/lib/web/production/components/Charts/CommonChartComponents/tokens.js +2 -1
- package/build/lib/web/production/components/Charts/CommonChartComponents/tokens.js.map +1 -1
- package/build/lib/web/production/components/Charts/DonutChart/DonutChart.web.js +202 -69
- package/build/lib/web/production/components/Charts/DonutChart/DonutChart.web.js.map +1 -1
- package/build/lib/web/production/components/Charts/LineChart/LineChart.web.js +84 -32
- package/build/lib/web/production/components/Charts/LineChart/LineChart.web.js.map +1 -1
- package/build/lib/web/production/components/Charts/utils/assignDataColorMapping/assignDataColorMapping.js +33 -0
- package/build/lib/web/production/components/Charts/utils/assignDataColorMapping/assignDataColorMapping.js.map +1 -0
- package/build/lib/web/production/components/Charts/utils/assignDataColorMapping/index.js +2 -0
- package/build/lib/web/production/components/Charts/utils/assignDataColorMapping/index.js.map +1 -0
- package/build/lib/web/production/components/Charts/utils/getHighestColorInRange.js +53 -0
- package/build/lib/web/production/components/Charts/utils/getHighestColorInRange.js.map +1 -0
- package/build/lib/web/production/components/Charts/utils/index.js +5 -0
- package/build/lib/web/production/components/Charts/utils/index.js.map +1 -1
- package/build/lib/web/production/components/Charts/utils/isSequentialColor.js +35 -0
- package/build/lib/web/production/components/Charts/utils/isSequentialColor.js.map +1 -0
- package/build/lib/web/production/components/Charts/utils/sanitizeString/index.js +2 -0
- package/build/lib/web/production/components/Charts/utils/sanitizeString/index.js.map +1 -0
- package/build/lib/web/production/components/Charts/utils/sanitizeString/sanitizeString.js +30 -0
- package/build/lib/web/production/components/Charts/utils/sanitizeString/sanitizeString.js.map +1 -0
- package/build/lib/web/production/components/Charts/utils/tokens.js +7 -0
- package/build/lib/web/production/components/Charts/utils/tokens.js.map +1 -0
- package/build/lib/web/production/components/Charts/utils/useColorTheme.js +32 -11
- package/build/lib/web/production/components/Charts/utils/useColorTheme.js.map +1 -1
- package/build/lib/web/production/components/Dropdown/FilterChipGroup.web.js +3 -1
- package/build/lib/web/production/components/Dropdown/FilterChipGroup.web.js.map +1 -1
- package/build/lib/web/production/components/FilterChip/BaseFilterChip.web.js +8 -9
- package/build/lib/web/production/components/FilterChip/BaseFilterChip.web.js.map +1 -1
- package/build/lib/web/production/components/FilterChip/tokens.js +1 -1
- package/build/lib/web/production/components/FilterChip/tokens.js.map +1 -1
- package/build/lib/web/production/components/Form/CharacterCounter/CharacterCounter.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/BaseInputVisuals.js +2 -0
- package/build/lib/web/production/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/baseInputTokens.js +11 -0
- package/build/lib/web/production/components/Input/BaseInput/baseInputTokens.js.map +1 -1
- package/build/lib/web/production/components/Input/PhoneNumberInput/CountrySelector.web.js +1 -0
- package/build/lib/web/production/components/Input/PhoneNumberInput/CountrySelector.web.js.map +1 -1
- package/build/lib/web/production/components/ListView/ListViewFilters.web.js +13 -102
- package/build/lib/web/production/components/ListView/ListViewFilters.web.js.map +1 -1
- package/build/lib/web/production/components/QuickFilters/QuickFilter.js +2 -1
- package/build/lib/web/production/components/QuickFilters/QuickFilter.js.map +1 -1
- package/build/lib/web/production/components/Radio/Radio.js +4 -2
- package/build/lib/web/production/components/Radio/Radio.js.map +1 -1
- package/build/lib/web/production/components/Table/Table.web.js +3 -1
- package/build/lib/web/production/components/Table/Table.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableBody.web.js +2 -1
- package/build/lib/web/production/components/Table/TableBody.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableContext.js +2 -1
- package/build/lib/web/production/components/Table/TableContext.js.map +1 -1
- package/build/lib/web/production/components/Table/TableFooter.web.js +2 -1
- package/build/lib/web/production/components/Table/TableFooter.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableHeader.web.js +78 -68
- package/build/lib/web/production/components/Table/TableHeader.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TablePagination.web.js +5 -2
- package/build/lib/web/production/components/Table/TablePagination.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableToolbar.web.js +15 -13
- package/build/lib/web/production/components/Table/TableToolbar.web.js.map +1 -1
- package/build/lib/web/production/components/Table/tokens.js +11 -8
- package/build/lib/web/production/components/Table/tokens.js.map +1 -1
- package/build/lib/web/production/components/index.js +2 -0
- package/build/lib/web/production/components/index.js.map +1 -1
- package/build/lib/web/production/tokens/global/colors.js +48 -48
- package/build/lib/web/production/tokens/global/colors.js.map +1 -1
- package/build/lib/web/production/tokens/global/size.js +2 -0
- package/build/lib/web/production/tokens/global/size.js.map +1 -1
- package/build/lib/web/production/tokens/theme/bladeTheme.js +139 -111
- package/build/lib/web/production/tokens/theme/bladeTheme.js.map +1 -1
- package/build/lib/web/production/tokens/theme/theme.js.map +1 -1
- package/build/types/components/index.d.ts +109 -23
- package/build/types/components/index.native.d.ts +106 -20
- package/build/types/tokens/index.d.ts +8 -6
- package/build/types/tokens/index.native.d.ts +8 -6
- package/build/types/utils/index.d.ts +29 -6
- package/build/types/utils/index.native.d.ts +29 -6
- package/package.json +1 -1
|
@@ -64,15 +64,14 @@ var StyledFilterChip = /*#__PURE__*/styled(BaseBox).withConfig({
|
|
|
64
64
|
componentId: "sc-7fl0tf-0"
|
|
65
65
|
})(function (_ref2) {
|
|
66
66
|
var theme = _ref2.theme,
|
|
67
|
-
$isDisabled = _ref2.$isDisabled
|
|
68
|
-
$isSelected = _ref2.$isSelected;
|
|
67
|
+
$isDisabled = _ref2.$isDisabled;
|
|
69
68
|
return {
|
|
70
|
-
borderWidth: makeBorderSize(theme.border.width.
|
|
69
|
+
borderWidth: makeBorderSize(theme.border.width.thinner),
|
|
71
70
|
borderColor: theme.colors.interactive.border.gray[$isDisabled ? 'disabled' : 'highlighted'],
|
|
72
71
|
height: FILTER_CHIP_HEIGHT,
|
|
73
72
|
borderRadius: theme.border.radius.max,
|
|
74
73
|
display: 'flex',
|
|
75
|
-
borderStyle:
|
|
74
|
+
borderStyle: 'solid',
|
|
76
75
|
backgroundColor: theme.colors.surface.background.gray.intense,
|
|
77
76
|
color: theme.colors.interactive.text.gray[$isDisabled ? 'disabled' : 'normal'],
|
|
78
77
|
width: 'fit-content'
|
|
@@ -127,7 +126,7 @@ var renderValue = function renderValue(selectionType, value, isDisabled) {
|
|
|
127
126
|
}
|
|
128
127
|
return /*#__PURE__*/jsx(Text, {
|
|
129
128
|
as: "span",
|
|
130
|
-
size: "
|
|
129
|
+
size: "xsmall",
|
|
131
130
|
weight: "semibold",
|
|
132
131
|
color: isDisabled ? 'interactive.text.gray.disabled' : 'interactive.text.primary.normal',
|
|
133
132
|
children: value
|
|
@@ -173,9 +172,9 @@ var _BaseFilterChip = function _BaseFilterChip(_ref5, ref) {
|
|
|
173
172
|
gap: "spacing.2",
|
|
174
173
|
whiteSpace: "nowrap",
|
|
175
174
|
children: [/*#__PURE__*/jsxs(Text, {
|
|
176
|
-
size: "
|
|
175
|
+
size: "xsmall",
|
|
177
176
|
weight: "medium",
|
|
178
|
-
color: "
|
|
177
|
+
color: "interactive.text.gray.subtle",
|
|
179
178
|
truncateAfterLines: 1,
|
|
180
179
|
children: [label, isSelected ? ':' : null]
|
|
181
180
|
}), isSelected ? renderValue(selectionType, value, isDisabled) : null]
|
|
@@ -185,7 +184,7 @@ var _BaseFilterChip = function _BaseFilterChip(_ref5, ref) {
|
|
|
185
184
|
paddingRight: "spacing.1",
|
|
186
185
|
children: /*#__PURE__*/jsx(ChevronDownIcon, {
|
|
187
186
|
size: "small",
|
|
188
|
-
color: "
|
|
187
|
+
color: "interactive.icon.gray.muted"
|
|
189
188
|
})
|
|
190
189
|
})]
|
|
191
190
|
})), isSelected ? /*#__PURE__*/jsxs(Fragment, {
|
|
@@ -204,7 +203,7 @@ var _BaseFilterChip = function _BaseFilterChip(_ref5, ref) {
|
|
|
204
203
|
disabled: isDisabled,
|
|
205
204
|
children: /*#__PURE__*/jsx(CloseIcon, {
|
|
206
205
|
size: "small",
|
|
207
|
-
color: "
|
|
206
|
+
color: "interactive.icon.gray.muted"
|
|
208
207
|
})
|
|
209
208
|
})]
|
|
210
209
|
}) : null]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseFilterChip.web.js","sources":["../../../../../../src/components/FilterChip/BaseFilterChip.web.tsx"],"sourcesContent":["import React from 'react';\nimport type { CSSObject } from 'styled-components';\nimport styled from 'styled-components';\nimport { FILTER_CHIP_HEIGHT } from './tokens';\nimport type { BaseFilterChipProps } from './types';\nimport { Box } from '~components/Box';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Counter } from '~components/Counter';\nimport { Divider } from '~components/Divider';\nimport { ChevronDownIcon, CloseIcon } from '~components/Icons';\nimport { Text } from '~components/Typography';\nimport { makeBorderSize, makeSpace } from '~utils';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport type { Theme } from '~components/BladeProvider';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport type { BladeElementRef } from '~utils/types';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst getInteractiveFilterItemStyles = ({ theme }: { theme: Theme }): CSSObject => {\n return {\n display: 'flex',\n height: '100%',\n alignItems: 'center',\n border: 'none',\n cursor: 'pointer',\n color: 'currentcolor',\n '&:not([disabled]):hover': {\n backgroundColor: theme.colors.interactive.background.gray.faded,\n },\n '&[disabled]': {\n cursor: 'not-allowed',\n },\n '&:focus-visible': {\n ...getFocusRingStyles({ theme }),\n outlineOffset: makeSpace(theme.spacing[1]),\n },\n };\n};\n\nconst StyledFilterChip = styled(BaseBox)<{ $isSelected?: boolean; $isDisabled?: boolean }>(\n ({ theme, $isDisabled, $isSelected }) => {\n return {\n borderWidth: makeBorderSize(theme.border.width.thin),\n borderColor: theme.colors.interactive.border.gray[$isDisabled ? 'disabled' : 'highlighted'],\n height: FILTER_CHIP_HEIGHT,\n borderRadius: theme.border.radius.max,\n display: 'flex',\n borderStyle: $isSelected ? 'solid' : 'dashed',\n backgroundColor: theme.colors.surface.background.gray.intense,\n color: theme.colors.interactive.text.gray[$isDisabled ? 'disabled' : 'normal'],\n width: 'fit-content',\n };\n },\n);\n\nconst StyledFilterTrigger = styled.button<{ $isSelected?: boolean }>(({ theme, $isSelected }) => {\n const { spacing } = theme;\n return {\n backgroundColor: theme.colors.transparent,\n borderRadius: $isSelected ? theme.border.radius.none : theme.border.radius.max,\n borderTopLeftRadius: theme.border.radius.max,\n borderBottomLeftRadius: theme.border.radius.max,\n paddingLeft: makeSpace(spacing[4]),\n paddingRight: $isSelected ? makeSpace(spacing[2]) : makeSpace(spacing[3]),\n gap: makeSpace(spacing[2]),\n ...getInteractiveFilterItemStyles({ theme }),\n };\n});\n\nconst StyledFilterCloseButton = styled.button(({ theme }) => {\n return {\n backgroundColor: theme.colors.transparent,\n borderTopRightRadius: theme.border.radius.max,\n borderBottomRightRadius: theme.border.radius.max,\n paddingLeft: makeSpace(theme.spacing[2]),\n paddingRight: makeSpace(theme.spacing[3]),\n justifyContent: 'center',\n ...getInteractiveFilterItemStyles({ theme }),\n };\n});\n\nconst renderValue = (\n selectionType: BaseFilterChipProps['selectionType'],\n value: BaseFilterChipProps['value'],\n isDisabled?: boolean,\n): React.ReactElement => {\n if (selectionType === 'multiple' && Array.isArray(value)) {\n return (\n <Box display=\"flex\" alignItems=\"center\">\n <Counter value={value.length} color={isDisabled ? 'neutral' : 'primary'} size=\"small\" />\n </Box>\n );\n }\n\n return (\n <Text\n as=\"span\"\n size=\"small\"\n weight=\"semibold\"\n color={isDisabled ? 'interactive.text.gray.disabled' : 'interactive.text.primary.normal'}\n >\n {value}\n </Text>\n );\n};\n\nconst _BaseFilterChip: React.ForwardRefRenderFunction<BladeElementRef, BaseFilterChipProps> = (\n {\n value,\n onClearButtonClick,\n label,\n isDisabled,\n selectionType = 'single',\n onClick,\n onKeyDown,\n accessibilityProps,\n id,\n ...rest\n }: BaseFilterChipProps,\n ref: React.Ref<BladeElementRef>,\n): React.ReactElement => {\n const isSelected =\n selectionType === 'multiple' ? Array.isArray(value) && value.length > 0 : !!value;\n\n return (\n <StyledFilterChip\n $isDisabled={isDisabled}\n $isSelected={isSelected}\n ref={ref as React.Ref<HTMLDivElement>}\n >\n <StyledFilterTrigger\n $isSelected={isSelected}\n disabled={isDisabled}\n id={id}\n onClick={(e) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onClick?.(e as any);\n }}\n onKeyDown={(e) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onKeyDown?.(e as any);\n }}\n {...makeAccessible({\n ...accessibilityProps,\n role: accessibilityProps?.role ?? 'button',\n })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n {...metaAttribute({ testID: rest.testID })}\n >\n <Box display=\"flex\" gap=\"spacing.2\" whiteSpace=\"nowrap\">\n <Text size=\"small\" weight=\"medium\" color=\"currentColor\" truncateAfterLines={1}>\n {label}\n {isSelected ? ':' : null}\n </Text>\n {isSelected ? renderValue(selectionType, value, isDisabled) : null}\n </Box>\n <Box display=\"flex\" alignItems=\"center\" paddingRight=\"spacing.1\">\n <ChevronDownIcon size=\"small\" color=\"currentColor\" />\n </Box>\n </StyledFilterTrigger>\n {isSelected ? (\n <>\n <Divider orientation=\"vertical\" variant={isDisabled ? 'muted' : 'subtle'} />\n <StyledFilterCloseButton\n aria-label={`Clear ${label} value`}\n // value can never be undefined because when it's undefined the button itself doesn't render/\n onClick={() => onClearButtonClick?.({ value: value ?? '' })}\n disabled={isDisabled}\n >\n <CloseIcon size=\"small\" color=\"currentColor\" />\n </StyledFilterCloseButton>\n </>\n ) : null}\n </StyledFilterChip>\n );\n};\n\nconst BaseFilterChip = assignWithoutSideEffects(React.forwardRef(_BaseFilterChip), {\n componentId: MetaConstants.BaseFilterChip,\n});\n\nexport { BaseFilterChip };\n"],"names":["getInteractiveFilterItemStyles","_ref","theme","display","height","alignItems","border","cursor","color","backgroundColor","colors","interactive","background","gray","faded","_objectSpread","getFocusRingStyles","outlineOffset","makeSpace","spacing","StyledFilterChip","styled","BaseBox","withConfig","displayName","componentId","_ref2","$isDisabled","$isSelected","borderWidth","makeBorderSize","width","thin","borderColor","FILTER_CHIP_HEIGHT","borderRadius","radius","max","borderStyle","surface","intense","text","StyledFilterTrigger","button","_ref3","transparent","none","borderTopLeftRadius","borderBottomLeftRadius","paddingLeft","paddingRight","gap","StyledFilterCloseButton","_ref4","borderTopRightRadius","borderBottomRightRadius","justifyContent","renderValue","selectionType","value","isDisabled","Array","isArray","_jsx","Box","children","Counter","length","size","Text","as","weight","_BaseFilterChip","_ref5","ref","_accessibilityProps$r","onClearButtonClick","label","_ref5$selectionType","onClick","onKeyDown","accessibilityProps","id","rest","_objectWithoutProperties","_excluded","isSelected","_jsxs","disabled","e","makeAccessible","role","getStyledProps","makeAnalyticsAttribute","metaAttribute","testID","whiteSpace","truncateAfterLines","ChevronDownIcon","_Fragment","Divider","orientation","variant","concat","CloseIcon","BaseFilterChip","assignWithoutSideEffects","React","forwardRef","MetaConstants"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseFilterChip.web.js","sources":["../../../../../../src/components/FilterChip/BaseFilterChip.web.tsx"],"sourcesContent":["import React from 'react';\nimport type { CSSObject } from 'styled-components';\nimport styled from 'styled-components';\nimport { FILTER_CHIP_HEIGHT } from './tokens';\nimport type { BaseFilterChipProps } from './types';\nimport { Box } from '~components/Box';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Counter } from '~components/Counter';\nimport { Divider } from '~components/Divider';\nimport { ChevronDownIcon, CloseIcon } from '~components/Icons';\nimport { Text } from '~components/Typography';\nimport { makeBorderSize, makeSpace } from '~utils';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport type { Theme } from '~components/BladeProvider';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport type { BladeElementRef } from '~utils/types';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst getInteractiveFilterItemStyles = ({ theme }: { theme: Theme }): CSSObject => {\n return {\n display: 'flex',\n height: '100%',\n alignItems: 'center',\n border: 'none',\n cursor: 'pointer',\n color: 'currentcolor',\n '&:not([disabled]):hover': {\n backgroundColor: theme.colors.interactive.background.gray.faded,\n },\n '&[disabled]': {\n cursor: 'not-allowed',\n },\n '&:focus-visible': {\n ...getFocusRingStyles({ theme }),\n outlineOffset: makeSpace(theme.spacing[1]),\n },\n };\n};\n\nconst StyledFilterChip = styled(BaseBox)<{ $isSelected?: boolean; $isDisabled?: boolean }>(\n ({ theme, $isDisabled }) => {\n return {\n borderWidth: makeBorderSize(theme.border.width.thinner),\n borderColor: theme.colors.interactive.border.gray[$isDisabled ? 'disabled' : 'highlighted'],\n height: FILTER_CHIP_HEIGHT,\n borderRadius: theme.border.radius.max,\n display: 'flex',\n borderStyle: 'solid',\n backgroundColor: theme.colors.surface.background.gray.intense,\n color: theme.colors.interactive.text.gray[$isDisabled ? 'disabled' : 'normal'],\n width: 'fit-content',\n };\n },\n);\n\nconst StyledFilterTrigger = styled.button<{ $isSelected?: boolean }>(({ theme, $isSelected }) => {\n const { spacing } = theme;\n return {\n backgroundColor: theme.colors.transparent,\n borderRadius: $isSelected ? theme.border.radius.none : theme.border.radius.max,\n borderTopLeftRadius: theme.border.radius.max,\n borderBottomLeftRadius: theme.border.radius.max,\n paddingLeft: makeSpace(spacing[4]),\n paddingRight: $isSelected ? makeSpace(spacing[2]) : makeSpace(spacing[3]),\n gap: makeSpace(spacing[2]),\n ...getInteractiveFilterItemStyles({ theme }),\n };\n});\n\nconst StyledFilterCloseButton = styled.button(({ theme }) => {\n return {\n backgroundColor: theme.colors.transparent,\n borderTopRightRadius: theme.border.radius.max,\n borderBottomRightRadius: theme.border.radius.max,\n paddingLeft: makeSpace(theme.spacing[2]),\n paddingRight: makeSpace(theme.spacing[3]),\n justifyContent: 'center',\n ...getInteractiveFilterItemStyles({ theme }),\n };\n});\n\nconst renderValue = (\n selectionType: BaseFilterChipProps['selectionType'],\n value: BaseFilterChipProps['value'],\n isDisabled?: boolean,\n): React.ReactElement => {\n if (selectionType === 'multiple' && Array.isArray(value)) {\n return (\n <Box display=\"flex\" alignItems=\"center\">\n <Counter value={value.length} color={isDisabled ? 'neutral' : 'primary'} size=\"small\" />\n </Box>\n );\n }\n\n return (\n <Text\n as=\"span\"\n size=\"xsmall\"\n weight=\"semibold\"\n color={isDisabled ? 'interactive.text.gray.disabled' : 'interactive.text.primary.normal'}\n >\n {value}\n </Text>\n );\n};\n\nconst _BaseFilterChip: React.ForwardRefRenderFunction<BladeElementRef, BaseFilterChipProps> = (\n {\n value,\n onClearButtonClick,\n label,\n isDisabled,\n selectionType = 'single',\n onClick,\n onKeyDown,\n accessibilityProps,\n id,\n ...rest\n }: BaseFilterChipProps,\n ref: React.Ref<BladeElementRef>,\n): React.ReactElement => {\n const isSelected =\n selectionType === 'multiple' ? Array.isArray(value) && value.length > 0 : !!value;\n\n return (\n <StyledFilterChip\n $isDisabled={isDisabled}\n $isSelected={isSelected}\n ref={ref as React.Ref<HTMLDivElement>}\n >\n <StyledFilterTrigger\n $isSelected={isSelected}\n disabled={isDisabled}\n id={id}\n onClick={(e) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onClick?.(e as any);\n }}\n onKeyDown={(e) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onKeyDown?.(e as any);\n }}\n {...makeAccessible({\n ...accessibilityProps,\n role: accessibilityProps?.role ?? 'button',\n })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n {...metaAttribute({ testID: rest.testID })}\n >\n <Box display=\"flex\" gap=\"spacing.2\" whiteSpace=\"nowrap\">\n <Text\n size=\"xsmall\"\n weight=\"medium\"\n color=\"interactive.text.gray.subtle\"\n truncateAfterLines={1}\n >\n {label}\n {isSelected ? ':' : null}\n </Text>\n {isSelected ? renderValue(selectionType, value, isDisabled) : null}\n </Box>\n <Box display=\"flex\" alignItems=\"center\" paddingRight=\"spacing.1\">\n <ChevronDownIcon size=\"small\" color=\"interactive.icon.gray.muted\" />\n </Box>\n </StyledFilterTrigger>\n {isSelected ? (\n <>\n <Divider orientation=\"vertical\" variant={isDisabled ? 'muted' : 'subtle'} />\n <StyledFilterCloseButton\n aria-label={`Clear ${label} value`}\n // value can never be undefined because when it's undefined the button itself doesn't render/\n onClick={() => onClearButtonClick?.({ value: value ?? '' })}\n disabled={isDisabled}\n >\n <CloseIcon size=\"small\" color=\"interactive.icon.gray.muted\" />\n </StyledFilterCloseButton>\n </>\n ) : null}\n </StyledFilterChip>\n );\n};\n\nconst BaseFilterChip = assignWithoutSideEffects(React.forwardRef(_BaseFilterChip), {\n componentId: MetaConstants.BaseFilterChip,\n});\n\nexport { BaseFilterChip };\n"],"names":["getInteractiveFilterItemStyles","_ref","theme","display","height","alignItems","border","cursor","color","backgroundColor","colors","interactive","background","gray","faded","_objectSpread","getFocusRingStyles","outlineOffset","makeSpace","spacing","StyledFilterChip","styled","BaseBox","withConfig","displayName","componentId","_ref2","$isDisabled","borderWidth","makeBorderSize","width","thinner","borderColor","FILTER_CHIP_HEIGHT","borderRadius","radius","max","borderStyle","surface","intense","text","StyledFilterTrigger","button","_ref3","$isSelected","transparent","none","borderTopLeftRadius","borderBottomLeftRadius","paddingLeft","paddingRight","gap","StyledFilterCloseButton","_ref4","borderTopRightRadius","borderBottomRightRadius","justifyContent","renderValue","selectionType","value","isDisabled","Array","isArray","_jsx","Box","children","Counter","length","size","Text","as","weight","_BaseFilterChip","_ref5","ref","_accessibilityProps$r","onClearButtonClick","label","_ref5$selectionType","onClick","onKeyDown","accessibilityProps","id","rest","_objectWithoutProperties","_excluded","isSelected","_jsxs","disabled","e","makeAccessible","role","getStyledProps","makeAnalyticsAttribute","metaAttribute","testID","whiteSpace","truncateAfterLines","ChevronDownIcon","_Fragment","Divider","orientation","variant","concat","CloseIcon","BaseFilterChip","assignWithoutSideEffects","React","forwardRef","MetaConstants"],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import '../../utils/index.js';
|
|
|
3
3
|
import { makeSize } from '../../utils/makeSize/makeSize.js';
|
|
4
4
|
import { size } from '../../tokens/global/size.js';
|
|
5
5
|
|
|
6
|
-
var FILTER_CHIP_HEIGHT = makeSize(size['
|
|
6
|
+
var FILTER_CHIP_HEIGHT = makeSize(size['24']);
|
|
7
7
|
|
|
8
8
|
export { FILTER_CHIP_HEIGHT };
|
|
9
9
|
//# sourceMappingURL=tokens.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.js","sources":["../../../../../../src/components/FilterChip/tokens.ts"],"sourcesContent":["import { size } from '~tokens/global';\nimport { makeSize } from '~utils';\n\nconst FILTER_CHIP_HEIGHT = makeSize(size['
|
|
1
|
+
{"version":3,"file":"tokens.js","sources":["../../../../../../src/components/FilterChip/tokens.ts"],"sourcesContent":["import { size } from '~tokens/global';\nimport { makeSize } from '~utils';\n\nconst FILTER_CHIP_HEIGHT = makeSize(size['24']);\n\nexport { FILTER_CHIP_HEIGHT };\n"],"names":["FILTER_CHIP_HEIGHT","makeSize","size"],"mappings":";;;;;AAGMA,IAAAA,kBAAkB,GAAGC,QAAQ,CAACC,IAAI,CAAC,IAAI,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CharacterCounter.js","sources":["../../../../../../../src/components/Form/CharacterCounter/CharacterCounter.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { hintTextSize } from '../formTokens';\nimport { Text } from '~components/Typography';\n\ntype CharacterCounterProps = {\n currentCount: number;\n maxCount: number;\n size?: 'xsmall' | 'medium' | 'large';\n};\n\nexport const CharacterCounter = ({\n currentCount,\n maxCount,\n size = 'medium',\n}: CharacterCounterProps): ReactElement => (\n <Text\n variant=\"caption\"\n size={hintTextSize[size]}\n weight=\"regular\"\n color=\"surface.text.gray.muted\"\n >\n {currentCount}/{maxCount}\n </Text>\n);\n"],"names":["CharacterCounter","_ref","currentCount","maxCount","_ref$size","size","_jsxs","Text","variant","hintTextSize","weight","color","children"],"mappings":";;;;;IAUaA,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAC3BC,YAAY,GAAAD,IAAA,CAAZC,YAAY;IACZC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAAC,SAAA,GAAAH,IAAA,CACRI,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA,CAAA;EAAA,oBAEfE,IAAA,CAACC,IAAI,EAAA;AACHC,IAAAA,OAAO,EAAC,SAAS;AACjBH,IAAAA,IAAI,EAAEI,YAAY,CAACJ,IAAI,CAAE;AACzBK,IAAAA,MAAM,EAAC,SAAS;AAChBC,IAAAA,KAAK,EAAC,yBAAyB;AAAAC,IAAAA,QAAA,EAE9BV,CAAAA,YAAY,EAAC,GAAC,EAACC,QAAQ,CAAA;AAAA,GACpB,CAAC,CAAA;AAAA;;;;"}
|
|
1
|
+
{"version":3,"file":"CharacterCounter.js","sources":["../../../../../../../src/components/Form/CharacterCounter/CharacterCounter.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { hintTextSize } from '../formTokens';\nimport { Text } from '~components/Typography';\n\ntype CharacterCounterProps = {\n currentCount: number;\n maxCount: number;\n size?: 'xsmall' | 'small' | 'medium' | 'large';\n};\n\nexport const CharacterCounter = ({\n currentCount,\n maxCount,\n size = 'medium',\n}: CharacterCounterProps): ReactElement => (\n <Text\n variant=\"caption\"\n size={hintTextSize[size]}\n weight=\"regular\"\n color=\"surface.text.gray.muted\"\n >\n {currentCount}/{maxCount}\n </Text>\n);\n"],"names":["CharacterCounter","_ref","currentCount","maxCount","_ref$size","size","_jsxs","Text","variant","hintTextSize","weight","color","children"],"mappings":";;;;;IAUaA,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAC3BC,YAAY,GAAAD,IAAA,CAAZC,YAAY;IACZC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAAC,SAAA,GAAAH,IAAA,CACRI,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA,CAAA;EAAA,oBAEfE,IAAA,CAACC,IAAI,EAAA;AACHC,IAAAA,OAAO,EAAC,SAAS;AACjBH,IAAAA,IAAI,EAAEI,YAAY,CAACJ,IAAI,CAAE;AACzBK,IAAAA,MAAM,EAAC,SAAS;AAChBC,IAAAA,KAAK,EAAC,yBAAyB;AAAAC,IAAAA,QAAA,EAE9BV,CAAAA,YAAY,EAAC,GAAC,EAACC,QAAQ,CAAA;AAAA,GACpB,CAAC,CAAA;AAAA;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseInput.js","sources":["../../../../../../../src/components/Input/BaseInput/BaseInput.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport type { ReactNode } from 'react';\nimport styled from 'styled-components';\nimport { StyledBaseInput } from './StyledBaseInput';\nimport { BaseInputVisuals } from './BaseInputVisuals';\nimport { BaseInputWrapper } from './BaseInputWrapper';\nimport { BaseInputTagSlot } from './BaseInputTagSlot';\nimport type { InputWrapperRef } from './types';\nimport { baseInputBorderBackgroundMotion, formHintLeftLabelMarginLeft } from './baseInputTokens';\nimport type {\n FormInputLabelProps,\n FormInputValidationProps,\n FormInputHandleOnEvent,\n FormInputOnEvent,\n FormHintProps,\n} from '~components/Form';\nimport { FormHint, FormLabel } from '~components/Form';\nimport type { IconComponent } from '~components/Icons';\nimport BaseBox from '~components/Box/BaseBox';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport {\n castWebType,\n getPlatformType,\n isReactNative,\n makeBorderSize,\n makeMotionTime,\n useBreakpoint,\n} from '~utils';\nimport type { Platform } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { useFormId } from '~components/Form/useFormId';\nimport { useTheme } from '~components/BladeProvider';\nimport useInteraction from '~utils/useInteraction';\nimport type { ActionStates } from '~utils/useInteraction';\nimport type {\n FormInputHandleOnClickEvent,\n FormInputHandleOnKeyDownEvent,\n} from '~components/Form/FormTypes';\nimport type {\n BladeElementRef,\n ContainerElementType,\n DataAnalyticsAttribute,\n TestID,\n} from '~utils/types';\nimport { makeSize } from '~utils/makeSize';\nimport type { AriaAttributes } from '~utils/makeAccessible';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { throwBladeError } from '~utils/logger';\nimport { announce } from '~components/LiveAnnouncer/LiveAnnouncer';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport type { LinkProps } from '~components/Link';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport getIn from '~utils/lodashButBetter/get';\nimport { useMergeRefs } from '~utils/useMergeRefs';\nimport type { MotionMetaProp } from '~components/BaseMotion';\nimport { getInnerMotionRef, getOuterMotionRef } from '~utils/getMotionRefs';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport { useInputGroupContext } from '~components/InputGroup/InputGroupContext';\nimport { useCounterInputContext } from '~components/CounterInput/CounterInputContext';\n\ntype CommonAutoCompleteSuggestionTypes =\n | 'none'\n | 'name'\n | 'email'\n | 'username'\n | 'password'\n | 'newPassword'\n | 'oneTimeCode'\n | 'telephone'\n | 'postalCode'\n | 'countryName'\n | 'creditCardNumber'\n | 'creditCardCSC'\n | 'creditCardExpiry'\n | 'creditCardExpiryMonth'\n | 'creditCardExpiryYear';\n\ntype WebAutoCompleteSuggestionType = CommonAutoCompleteSuggestionTypes | 'on';\n\ntype BaseInputCommonProps = FormInputLabelProps &\n DataAnalyticsAttribute &\n FormInputValidationProps & {\n /**\n * Determines if it needs to be rendered as input, textarea or button\n */\n as?: 'input' | 'textarea' | 'button' | 'div';\n /**\n * ID that will be used for accessibility\n */\n id: string;\n /**\n * Placeholder text to be displayed inside the input field\n */\n placeholder?: string;\n /**\n * Type of Input Field to be rendered.\n *\n * @default text\n */\n type?: 'text' | 'telephone' | 'email' | 'url' | 'number' | 'search' | 'password';\n /**\n * Used to set the default value of input field when it's uncontrolled\n */\n defaultValue?: string;\n /**\n * The name of the input field.\n *\n * Useful in form submissions\n */\n name?: string;\n /**\n * The callback function to be invoked when the input field gets focus\n */\n onFocus?: FormInputOnEvent;\n /**\n * The callback function to be invoked when the value of the input field changes\n */\n onChange?: FormInputOnEvent;\n /**\n * The callback function to be invoked when input is clicked\n */\n onClick?: FormInputOnEvent;\n /**\n * The callback function to be invoked when the value of the input field has any input\n */\n onInput?: FormInputOnEvent;\n /**\n * The callback function to be invoked whenever there is a keyDown event\n */\n onKeyDown?: FormInputHandleOnKeyDownEvent;\n /**\n * The callback function to be invoked when the the input field loses focus\n *\n * For React Native this will call `onEndEditing` event since we want to get the last value of the input field\n */\n onBlur?: FormInputOnEvent;\n /**\n * Ignores the blur event animation (Used in Select to ignore blur animation when item in option is clicked)\n */\n shouldIgnoreBlurAnimation?: boolean;\n /**\n * sets boolean that ignores the blur animations on baseinput\n */\n setShouldIgnoreBlurAnimation?: (shouldIgnoreBlurAnimation: boolean) => void;\n /**\n * Used to turn the input field to controlled so user can control the value\n */\n value?: string;\n /**\n * Used to disable the input field\n */\n isDisabled?: boolean;\n /**\n * If true, the input is marked as required, and `required` attribute will be added\n */\n isRequired?: boolean;\n /**\n * Icon to be shown at the start of the input field\n */\n leadingIcon?: IconComponent;\n /**\n * Prefix symbol to be displayed at the beginning of the input field. If leadingIcon is provided it'll be placed after it\n */\n prefix?: string;\n /**\n * Element to be rendered before suffix. This is decided by the component which is extending BaseInput\n *\n * eg: consumers can render a loader or they could render a clear button\n */\n trailingInteractionElement?: ReactNode;\n /**\n * Callback to be invoked when the TrailingInteractionElement is clicked\n */\n onTrailingInteractionElementClick?: () => void;\n /**\n * Element to be rendered before prefix. This is decided by the component which is extending BaseInput\n *\n * eg: consumers can render a country selector or button\n */\n leadingInteractionElement?: ReactNode;\n /**\n * Leading DropDown to be rendered at Prefix slot\n */\n leadingDropDown?: ReactNode;\n /**\n * Trailing DropDown to be rendered at Suffix slot\n */\n trailingDropDown?: ReactNode;\n /**\n * Suffix symbol to be displayed at the end of the input field. If trailingIcon is provided it'll be placed before it\n */\n suffix?: string;\n /**\n * Icon to be displayed at the end of the input field\n */\n trailingIcon?: IconComponent;\n /**\n * Displays the character counter under the input field\n */\n maxCharacters?: number;\n /**\n * alignment of the text inside input field\n */\n textAlign?: 'left' | 'center' | 'right';\n /**\n * If true, focuses the input field on load\n *\n * **Note:**\n * Automatically focusing a form control can confuse visually-impaired people using screen-reading technology and people with cognitive impairments.\n * When autofocus is assigned, screen-readers \"teleport\" their user to the form control without warning them beforehand.\n */\n autoFocus?: boolean;\n /**\n * Hints the platform to display an appropriate virtual keyboard\n *\n * **Native:** Passes as is the `keyboardType` attribute\n *\n * **Web:** Passes the value to the `inputMode` attribute\n */\n keyboardType?: 'text' | 'search' | 'telephone' | 'email' | 'url' | 'decimal';\n /**\n * determines what return key to show on the keyboard of mobile devices/virtual keyboard\n * **Note**: Few values are platform dependent and might not render on all the platforms\n *\n * `default` is only available on native. it'll be mapped to `enter` for web\n * `previous` is only available on native android\n */\n keyboardReturnKeyType?: 'default' | 'go' | 'done' | 'next' | 'previous' | 'search' | 'send';\n /**\n * Element to be rendered on the trailing slot of input field label\n */\n trailingHeaderSlot?: (value?: string) => ReactNode;\n /**\n * Element to be rendered on the trailing slot of input field footer\n */\n trailingFooterSlot?: (value?: string) => ReactNode;\n /**\n * Sets the textarea's number of lines\n */\n numberOfLines?: 1 | 2 | 3 | 4 | 5;\n /**\n * Sets the accessibility label for the input\n */\n accessibilityLabel?: string;\n /**\n * Sets the id of the label\n *\n * (Useful when assigning one label to multiple elements using aria-labelledby)\n */\n labelId?: string;\n /**\n * Can be used in select to set the id of the active descendant from the listbox\n */\n activeDescendant?: string;\n /**\n * Hides the label text\n */\n hideLabelText?: boolean;\n /**\n * Hides the form hint text\n */\n hideFormHint?: boolean;\n /**\n * componentName prop sets the data-blade-component attribute name\n * for internal metric collection purposes\n */\n componentName?: string;\n /**\n * whether the input has a popup\n */\n hasPopup?: AriaAttributes['hasPopup'];\n /**\n * id of the popup\n */\n popupId?: string;\n /**\n * true if popup is in expanded state\n */\n isPopupExpanded?: boolean;\n setInputWrapperRef?: (node: ContainerElementType) => void;\n /**\n * sets the autocapitalize behavior for the input\n */\n autoCapitalize?: 'none' | 'sentences' | 'words' | 'characters';\n\n /**\n * constraints the height of input to given number rows\n *\n * When set to expandable, input takes 1 row in the begining and expands to take 3 when active\n *\n * @default 'single'\n */\n maxTagRows?: 'single' | 'multiple' | 'expandable';\n\n /**\n * A slot for adding tags to input\n */\n tags?: React.ReactElement[] | null;\n\n /**\n * Disables stripping of tags and shows all tags\n */\n showAllTags?: boolean;\n\n /**\n * State variable of active tag index\n */\n activeTagIndex?: number;\n\n /**\n * Is this input SelectInput or AutoComplete\n */\n isDropdownTrigger?: boolean;\n\n /**\n * Is the label expected to be rendered inside input?\n * Used in AutoComplete and Select when label can't exist outside\n *\n */\n isLabelInsideInput?: boolean;\n\n /**\n * State setter for active tag index\n */\n setActiveTagIndex?: (activeTagIndex: number) => void;\n /**\n * Sets the size of the input field\n * @default medium\n */\n size?: 'xsmall' | 'medium' | 'large';\n /**\n * Link button to be rendered at the end of the input field.\n * **Note:** `size` of the Link will be set to the same size as the input field, `isDisabled` will follow Input's `isDisabled`, & `variant` will be set to `button`.\n * Example:\n * ```tsx\n * trailingButton={<Link onClick={handleClick}>Apply</Link>}\n * ```\n */\n trailingButton?: React.ReactElement<LinkProps>;\n /**\n * Whether to use Text or Heading component for Input text\n * @default text\n **/\n valueComponentType?: 'text' | 'heading';\n /**\n * Whether to render the input as a table cell\n * @default true\n **/\n isTableInputCell?: boolean;\n /**\n * Hides the form hints and shows them as tooltip of trailing\n */\n showHintsAsTooltip?: boolean;\n\n role?: AriaAttributes['role'];\n\n /**\n * Tab Index of the input field\n *\n * @default undefined\n */\n tabIndex?: number;\n /**\n * Slot to be rendered adjacent to the value\n */\n valueSuffix?: React.ReactNode;\n children?: ReactNode;\n } & TestID &\n Platform.Select<{\n native: {\n /**\n * The callback function to be invoked when the value of the input field is submitted.\n */\n onSubmit?: FormInputOnEvent;\n /**\n * determines what autoComplete suggestion type to show\n *\n * Internally it'll render platform specific attributes:\n *\n * - web: `autocomplete`\n * - iOS: `textContentType`\n * - android: `autoComplete`\n *\n */\n autoCompleteSuggestionType?: CommonAutoCompleteSuggestionTypes;\n };\n web: {\n /**\n * This is a react-native only prop and has no effect on web.\n */\n onSubmit?: undefined;\n /**\n * determines what autoComplete suggestion type to show\n *\n * Internally it'll render platform specific attributes:\n *\n * - web: `autocomplete`\n * - iOS: `textContentType`\n * - android: `autoComplete`\n *\n */\n autoCompleteSuggestionType?: WebAutoCompleteSuggestionType;\n };\n }> &\n StyledPropsBlade &\n MotionMetaProp;\n\n/*\n Mandatory accessibilityLabel prop when label is not provided\n*/\ntype BaseInputPropsWithA11yLabel = {\n /**\n * Label to be shown for the input field\n */\n label?: undefined;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel: string;\n};\n\n/*\n Optional accessibilityLabel prop when label is provided\n*/\ntype BaseInputPropsWithLabel = {\n /**\n * Label to be shown for the input field\n */\n label: string;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel?: string;\n};\n\nexport type BaseInputProps = (BaseInputPropsWithA11yLabel | BaseInputPropsWithLabel) &\n BaseInputCommonProps;\n\nconst autoCompleteSuggestionTypeValues = [\n 'none',\n 'on',\n 'name',\n 'email',\n 'username',\n 'password',\n 'newPassword',\n 'oneTimeCode',\n 'telephone',\n 'postalCode',\n 'countryName',\n 'creditCardNumber',\n 'creditCardCSC',\n 'creditCardExpiry',\n 'creditCardExpiryMonth',\n 'creditCardExpiryYear',\n];\n\ntype OnInputKeydownTagHandlerType = (key: string | undefined) => void;\nconst useTags = (\n tags: BaseInputProps['tags'],\n activeTagIndex: number,\n setActiveTagIndex?: (activeTagIndex: number) => void,\n): {\n onInputKeydownTagHandler: OnInputKeydownTagHandlerType;\n visibleTagsCountRef: React.MutableRefObject<number>;\n} => {\n const visibleTagsCountRef = React.useRef<number>(0);\n\n React.useEffect(() => {\n if (tags && activeTagIndex >= 0 && activeTagIndex < tags.length) {\n const tagTitle = tags[activeTagIndex]?.props?.children;\n if (tagTitle) {\n announce(`Close ${tagTitle} Tag`);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [activeTagIndex, tags?.length]);\n\n const onTagLeft = (): void => {\n if (activeTagIndex < 0) {\n setActiveTagIndex?.(visibleTagsCountRef.current - 1);\n }\n\n if (activeTagIndex > 0) {\n setActiveTagIndex?.(activeTagIndex - 1);\n }\n };\n\n const onTagRight = (): void => {\n if (activeTagIndex < visibleTagsCountRef.current - 1) {\n setActiveTagIndex?.(activeTagIndex + 1);\n }\n };\n\n const onTagRemove = (): void => {\n if (activeTagIndex >= 0 && activeTagIndex < visibleTagsCountRef.current && tags) {\n tags[activeTagIndex].props.onDismiss({ tagIndex: activeTagIndex });\n }\n };\n\n const onInputKeydownTagHandler: OnInputKeydownTagHandlerType = (key) => {\n if (tags && tags.length > 0) {\n if (key === 'ArrowRight') {\n onTagRight();\n }\n\n if (key === 'ArrowLeft') {\n onTagLeft();\n }\n\n if (key === 'Backspace') {\n onTagRemove();\n }\n }\n };\n\n return {\n onInputKeydownTagHandler,\n visibleTagsCountRef,\n };\n};\n\nconst useInput = ({\n value,\n defaultValue,\n onClick,\n onFocus,\n onChange,\n onBlur,\n onSubmit,\n onInput,\n onKeyDown,\n onInputKeydownTagHandler,\n}: Pick<\n BaseInputProps,\n | 'value'\n | 'defaultValue'\n | 'onFocus'\n | 'onChange'\n | 'onBlur'\n | 'onInput'\n | 'onKeyDown'\n | 'onClick'\n | 'onSubmit'\n> & {\n onInputKeydownTagHandler: OnInputKeydownTagHandlerType;\n}): {\n handleOnFocus: FormInputHandleOnEvent;\n handleOnClick: FormInputHandleOnClickEvent;\n handleOnChange: FormInputHandleOnEvent;\n handleOnBlur: FormInputHandleOnEvent;\n handleOnSubmit: FormInputHandleOnEvent;\n handleOnInput: FormInputHandleOnEvent;\n handleOnKeyDown: FormInputHandleOnKeyDownEvent;\n inputValue?: string;\n} => {\n if (__DEV__) {\n if (value && defaultValue) {\n throwBladeError({\n message: `Either 'value' or 'defaultValue' shall be passed. This decides if the input field is controlled or uncontrolled`,\n moduleName: 'Input',\n });\n }\n }\n\n const [inputValue, setInputValue] = React.useState(defaultValue ?? value);\n\n const handleOnFocus: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onFocus?.({\n name,\n value: _value,\n });\n },\n [onFocus],\n );\n\n const handleOnClick: FormInputHandleOnClickEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.currentTarget.value ?? '';\n }\n\n onClick?.({\n name,\n value: _value,\n });\n },\n [onClick],\n );\n\n const handleOnSubmit: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n if (isReactNative()) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment, @typescript-eslint/prefer-ts-expect-error\n //@ts-ignore need to ignore this since it will throw a TS error for web but not for native\n onSubmit?.({\n name,\n value: _value,\n });\n }\n },\n [onSubmit],\n );\n\n const handleOnBlur: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n if (getPlatformType() === 'react-native' && typeof value == 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onBlur?.({\n name,\n value: _value,\n });\n },\n [onBlur],\n );\n\n const handleOnChange: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onChange?.({\n name,\n value: _value,\n });\n setInputValue(_value);\n },\n [onChange],\n );\n\n const handleOnInput: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n if (getPlatformType() === 'react-native' && typeof value == 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onInput?.({\n name,\n value: _value,\n });\n },\n [onInput],\n );\n\n const handleOnKeyDown: FormInputHandleOnKeyDownEvent = React.useCallback(\n ({ name, key, code, event }) => {\n onInputKeydownTagHandler(key);\n onKeyDown?.({\n name,\n key,\n code,\n event,\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [onKeyDown],\n );\n\n return {\n handleOnFocus,\n handleOnClick,\n handleOnChange,\n handleOnBlur,\n handleOnSubmit,\n handleOnInput,\n handleOnKeyDown,\n inputValue,\n };\n};\n\nexport const getHintType = ({\n validationState,\n hasHelpText,\n}: {\n validationState: BaseInputProps['validationState'];\n hasHelpText: boolean;\n}): FormHintProps['type'] => {\n if (validationState === 'error') {\n return 'error';\n }\n\n if (validationState === 'success') {\n return 'success';\n }\n\n if (hasHelpText) {\n return 'help';\n }\n\n return 'help';\n};\n\nconst getDescribedByElementId = ({\n validationState,\n hasErrorText,\n hasSuccessText,\n hasHelpText,\n errorTextId,\n successTextId,\n helpTextId,\n}: {\n validationState: BaseInputProps['validationState'];\n hasErrorText: boolean;\n hasSuccessText: boolean;\n hasHelpText: boolean;\n errorTextId: string;\n successTextId: string;\n helpTextId: string;\n}): string => {\n if (validationState === 'error' && hasErrorText) {\n return errorTextId;\n }\n\n if (validationState === 'success' && hasSuccessText) {\n return successTextId;\n }\n\n if (hasHelpText) {\n return helpTextId;\n }\n\n return '';\n};\n\nconst FocusRingWrapper = styled(BaseBox)<{\n currentInteraction: ActionStates;\n isTableInputCell: NonNullable<BaseInputProps['isTableInputCell']>;\n className: string;\n shouldAddLimitedFocus: boolean;\n}>(({ theme, currentInteraction, isTableInputCell, shouldAddLimitedFocus }) => ({\n borderRadius: makeBorderSize(\n isTableInputCell ? theme.border.radius.none : theme.border.radius.medium,\n ),\n width: '100%',\n '&:focus-within':\n !isTableInputCell && (shouldAddLimitedFocus ? currentInteraction === 'focus' : true)\n ? {\n ...getFocusRingStyles({\n theme,\n }),\n transitionDuration: castWebType(\n makeMotionTime(\n getIn(\n theme.motion.duration,\n baseInputBorderBackgroundMotion[currentInteraction === 'focus' ? 'enter' : 'exit']\n .duration,\n ),\n ),\n ),\n transitionTimingFunction: castWebType(\n theme.motion.easing[\n baseInputBorderBackgroundMotion[currentInteraction === 'focus' ? 'enter' : 'exit']\n .easing\n ],\n ),\n }\n : {},\n}));\n\nconst _BaseInput: React.ForwardRefRenderFunction<BladeElementRef, BaseInputProps> = (\n {\n as = 'input',\n label,\n labelPosition = 'top',\n placeholder,\n type = 'text',\n defaultValue,\n tags,\n showAllTags = false,\n activeTagIndex = -1,\n setActiveTagIndex,\n name,\n value,\n onFocus,\n onChange,\n onInput,\n onBlur,\n onSubmit,\n onClick,\n onKeyDown,\n isDisabled,\n necessityIndicator,\n validationState,\n errorText,\n helpText,\n successText,\n isRequired,\n leadingIcon,\n prefix,\n trailingInteractionElement,\n onTrailingInteractionElementClick,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n maxCharacters,\n textAlign,\n autoFocus,\n keyboardReturnKeyType,\n keyboardType,\n autoCompleteSuggestionType,\n trailingHeaderSlot,\n trailingFooterSlot,\n numberOfLines,\n id,\n componentName,\n accessibilityLabel,\n labelId,\n activeDescendant,\n hideLabelText,\n hideFormHint,\n hasPopup,\n popupId,\n isPopupExpanded,\n maxTagRows,\n shouldIgnoreBlurAnimation,\n setShouldIgnoreBlurAnimation,\n autoCapitalize,\n setInputWrapperRef,\n testID,\n isDropdownTrigger,\n isLabelInsideInput,\n size = 'medium',\n trailingButton,\n valueComponentType = 'text',\n isTableInputCell = false,\n showHintsAsTooltip = false,\n _motionMeta,\n role,\n tabIndex,\n leadingDropDown,\n trailingDropDown,\n labelSuffix,\n labelTrailing,\n valueSuffix,\n children,\n ...rest\n },\n ref,\n) => {\n const { theme } = useTheme();\n const inputRef = React.useRef<BladeElementRef>(null);\n const mergedInputRef = useMergeRefs(ref, inputRef);\n const inputWrapperRef: InputWrapperRef = React.useRef(null);\n const { onInputKeydownTagHandler, visibleTagsCountRef } = useTags(\n tags,\n activeTagIndex,\n setActiveTagIndex,\n );\n const [showAllTagsWithAnimation, setShowAllTagsWithAnimation] = React.useState(false);\n const isReactNative = getPlatformType() === 'react-native';\n const defaultRole = hasPopup ? 'combobox' : undefined;\n\n const inputGroupProps = useInputGroupContext();\n const { isInsideInputGroup } = inputGroupProps;\n const counterInputProps = useCounterInputContext();\n const {\n color,\n disabledTextColor: disabledColor,\n isDisabled: isCounterInputDisabled,\n isLoading: isCounterInputLoading,\n isInsideCounterInput,\n } = counterInputProps;\n const _isDisabled =\n inputGroupProps.isDisabled ?? (isCounterInputDisabled || isCounterInputLoading) ?? isDisabled;\n const _size = inputGroupProps.size ?? size;\n\n React.useEffect(() => {\n if (showAllTags) {\n setShowAllTagsWithAnimation(true);\n } else if (maxTagRows !== 'expandable') {\n setShowAllTagsWithAnimation(false);\n }\n }, [showAllTags, maxTagRows]);\n\n const {\n handleOnFocus,\n handleOnChange,\n handleOnClick,\n handleOnBlur,\n handleOnSubmit,\n handleOnInput,\n handleOnKeyDown,\n inputValue,\n } = useInput({\n defaultValue,\n value,\n onFocus,\n onClick,\n onChange,\n onBlur,\n onSubmit,\n onInput,\n onKeyDown,\n onInputKeydownTagHandler,\n });\n const { inputId, helpTextId, errorTextId, successTextId } = useFormId(id);\n const { matchedDeviceType } = useBreakpoint({ breakpoints: theme.breakpoints });\n const isLabelLeftPositioned = labelPosition === 'left' && matchedDeviceType === 'desktop';\n const { currentInteraction, setCurrentInteraction } = useInteraction();\n const _isRequired = isRequired || necessityIndicator === 'required';\n\n const accessibilityProps = makeAccessible({\n required: Boolean(_isRequired),\n disabled: Boolean(_isDisabled),\n invalid: Boolean(validationState === 'error'),\n describedBy: getDescribedByElementId({\n validationState,\n hasErrorText: Boolean(errorText),\n hasSuccessText: Boolean(successText),\n hasHelpText: Boolean(helpText),\n errorTextId,\n successTextId,\n helpTextId,\n }),\n label: accessibilityLabel,\n hasPopup,\n expanded: hasPopup ? isPopupExpanded : undefined,\n controls: hasPopup ? popupId : undefined,\n role: role ?? defaultRole,\n activeDescendant,\n });\n\n const willRenderHintText =\n Boolean(helpText) ||\n (validationState === 'success' && Boolean(successText)) ||\n (validationState === 'error' && Boolean(errorText));\n\n if (__DEV__) {\n if (\n autoCompleteSuggestionType &&\n !autoCompleteSuggestionTypeValues.includes(autoCompleteSuggestionType)\n ) {\n throwBladeError({\n message: `Expected autoCompleteSuggestionType to be one of ${autoCompleteSuggestionTypeValues.join(\n ', ',\n )} but received ${autoCompleteSuggestionType}`,\n moduleName: 'Input',\n });\n }\n }\n\n const isTextArea = as === 'textarea';\n const hasLeadingDropdown = Boolean(leadingDropDown);\n const hasTrailingDropdown = Boolean(trailingDropDown);\n\n const shouldAddLimitedFocus = hasLeadingDropdown || hasTrailingDropdown;\n return (\n <BaseBox\n ref={getOuterMotionRef({ _motionMeta, ref })}\n {...metaAttribute({ name: componentName, testID })}\n {...getStyledProps(rest)}\n >\n <BaseBox\n display=\"flex\"\n flexDirection={isLabelLeftPositioned ? 'row' : 'column'}\n justifyContent={isLabelLeftPositioned ? 'center' : undefined}\n alignItems={isLabelLeftPositioned ? 'center' : undefined}\n position=\"relative\"\n width=\"100%\"\n >\n {/* If the input is in an input group, we don't want to render the label */}\n {!hideLabelText && !isLabelInsideInput && label && !isInsideInputGroup && (\n <BaseBox\n display=\"flex\"\n flexDirection={isLabelLeftPositioned ? 'column' : 'row'}\n justifyContent=\"space-between\"\n alignSelf={isTextArea && isLabelLeftPositioned ? '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 labelSuffix={labelSuffix}\n labelTrailing={labelTrailing}\n >\n {label}\n </FormLabel>\n {trailingHeaderSlot?.(value ?? inputValue)}\n </BaseBox>\n )}\n <FocusRingWrapper\n currentInteraction={currentInteraction}\n isTableInputCell={isTableInputCell}\n className=\"focus-ring-wrapper\"\n shouldAddLimitedFocus={shouldAddLimitedFocus}\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 leadingDropDown={leadingDropDown}\n />\n <BaseInputTagSlot\n renderAs={as}\n tags={tags}\n isDisabled={_isDisabled}\n showAllTags={showAllTagsWithAnimation}\n setFocusOnInput={() => {\n const innerRef = getInnerMotionRef({ _motionMeta, ref });\n if (innerRef && !isReactNative && 'current' in innerRef) {\n innerRef.current?.focus();\n }\n }}\n labelPrefix={isLabelInsideInput ? label : undefined}\n isDropdownTrigger={isDropdownTrigger}\n visibleTagsCountRef={visibleTagsCountRef}\n handleOnInputClick={(e) => {\n handleOnClick({ name, value: isReactNative ? value : e });\n }}\n setShouldIgnoreBlurAnimation={setShouldIgnoreBlurAnimation}\n maxTagRows={maxTagRows}\n inputWrapperRef={inputWrapperRef}\n size={_size}\n numberOfLines={numberOfLines}\n isTextArea={isTextArea}\n >\n <StyledBaseInput\n as={as}\n id={inputId}\n ref={getInnerMotionRef({ _motionMeta, ref: mergedInputRef as any }) as never}\n name={name}\n type={type}\n defaultValue={defaultValue}\n value={value}\n placeholder={placeholder}\n isDisabled={_isDisabled}\n validationState={validationState}\n isRequired={_isRequired}\n handleOnFocus={handleOnFocus}\n handleOnChange={handleOnChange}\n handleOnBlur={handleOnBlur}\n handleOnSubmit={handleOnSubmit}\n handleOnInput={handleOnInput}\n handleOnKeyDown={handleOnKeyDown}\n handleOnClick={handleOnClick}\n leadingIcon={leadingIcon}\n prefix={prefix}\n trailingInteractionElement={trailingInteractionElement}\n leadingInteractionElement={leadingInteractionElement}\n suffix={suffix}\n valueSuffix={valueSuffix}\n trailingIcon={trailingIcon}\n maxCharacters={maxCharacters}\n textAlign={textAlign}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n keyboardReturnKeyType={keyboardReturnKeyType}\n keyboardType={keyboardType}\n autoCompleteSuggestionType={autoCompleteSuggestionType}\n accessibilityProps={accessibilityProps}\n currentInteraction={currentInteraction}\n setCurrentInteraction={setCurrentInteraction}\n numberOfLines={numberOfLines}\n isTextArea={isTextArea || maxTagRows === 'multiple' || maxTagRows === 'expandable'}\n hasPopup={hasPopup}\n hasTags={!!(tags && tags.length > 0)}\n shouldIgnoreBlurAnimation={shouldIgnoreBlurAnimation}\n autoCapitalize={autoCapitalize}\n isDropdownTrigger={isDropdownTrigger}\n $size={_size}\n valueComponentType={valueComponentType}\n isTableInputCell={isTableInputCell}\n tabIndex={tabIndex}\n hasLeadingDropdown={Boolean(leadingDropDown)}\n children={children}\n color={color}\n disabledColor={disabledColor}\n isInsideCounterInput={isInsideCounterInput}\n {...metaAttribute({ name: MetaConstants.StyledBaseInput })}\n {...makeAnalyticsAttribute(rest)}\n />\n </BaseInputTagSlot>\n <BaseInputVisuals\n trailingInteractionElement={trailingInteractionElement}\n onTrailingInteractionElementClick={onTrailingInteractionElementClick}\n suffix={suffix}\n trailingIcon={trailingIcon}\n isDisabled={_isDisabled}\n validationState={validationState}\n trailingButton={trailingButton}\n size={_size}\n errorText={errorText}\n successText={successText}\n showHintsAsTooltip={showHintsAsTooltip}\n trailingDropDown={trailingDropDown}\n />\n </BaseInputWrapper>\n </FocusRingWrapper>\n </BaseBox>\n {/* If the input is in an input group, we don't want to render the hint text */}\n {hideFormHint || showHintsAsTooltip || isInsideInputGroup ? null : (\n <BaseBox\n marginLeft={makeSize(\n isLabelLeftPositioned && !hideLabelText ? formHintLeftLabelMarginLeft[_size] : 0,\n )}\n >\n <BaseBox\n display=\"flex\"\n flexDirection=\"row\"\n justifyContent={willRenderHintText ? 'space-between' : 'flex-end'}\n >\n <FormHint\n type={getHintType({ validationState, hasHelpText: Boolean(helpText) })}\n helpText={helpText}\n errorText={errorText}\n successText={successText}\n helpTextId={helpTextId}\n errorTextId={errorTextId}\n successTextId={successTextId}\n size={_size}\n />\n {trailingFooterSlot?.(value ?? inputValue)}\n </BaseBox>\n </BaseBox>\n )}\n </BaseBox>\n );\n};\n\nconst BaseInputWithRef = React.forwardRef(_BaseInput);\nconst BaseInput = assignWithoutSideEffects(BaseInputWithRef, { displayName: 'BaseInput' });\n\nexport { BaseInput };\n"],"names":["autoCompleteSuggestionTypeValues","useTags","tags","activeTagIndex","setActiveTagIndex","visibleTagsCountRef","React","useRef","useEffect","length","_tags$activeTagIndex","tagTitle","props","children","announce","concat","onTagLeft","current","onTagRight","onTagRemove","onDismiss","tagIndex","onInputKeydownTagHandler","key","useInput","_ref","value","defaultValue","onClick","onFocus","onChange","onBlur","onSubmit","onInput","onKeyDown","throwBladeError","message","moduleName","_React$useState","useState","_React$useState2","_slicedToArray","inputValue","setInputValue","handleOnFocus","useCallback","_ref2","name","_value","getPlatformType","_value$target$value","target","handleOnClick","_ref3","_value$currentTarget$","currentTarget","handleOnSubmit","_ref4","_value$target$value2","isReactNative","handleOnBlur","_ref5","_value$target$value3","handleOnChange","_ref6","_value$target$value4","handleOnInput","_ref7","_value$target$value5","handleOnKeyDown","_ref8","code","event","getHintType","_ref9","validationState","hasHelpText","getDescribedByElementId","_ref0","hasErrorText","hasSuccessText","errorTextId","successTextId","helpTextId","FocusRingWrapper","styled","BaseBox","withConfig","displayName","componentId","_ref1","theme","currentInteraction","isTableInputCell","shouldAddLimitedFocus","borderRadius","makeBorderSize","border","radius","none","medium","width","_objectSpread","getFocusRingStyles","transitionDuration","castWebType","makeMotionTime","getIn","motion","duration","baseInputBorderBackgroundMotion","transitionTimingFunction","easing","_BaseInput","_ref10","ref","_ref11","_inputGroupProps$isDi","_inputGroupProps$size","_ref10$as","as","label","_ref10$labelPosition","labelPosition","placeholder","_ref10$type","type","_ref10$showAllTags","showAllTags","_ref10$activeTagIndex","isDisabled","necessityIndicator","errorText","helpText","successText","isRequired","leadingIcon","prefix","trailingInteractionElement","onTrailingInteractionElementClick","leadingInteractionElement","suffix","trailingIcon","maxCharacters","textAlign","autoFocus","keyboardReturnKeyType","keyboardType","autoCompleteSuggestionType","trailingHeaderSlot","trailingFooterSlot","numberOfLines","id","componentName","accessibilityLabel","labelId","activeDescendant","hideLabelText","hideFormHint","hasPopup","popupId","isPopupExpanded","maxTagRows","shouldIgnoreBlurAnimation","setShouldIgnoreBlurAnimation","autoCapitalize","setInputWrapperRef","testID","isDropdownTrigger","isLabelInsideInput","_ref10$size","size","trailingButton","_ref10$valueComponent","valueComponentType","_ref10$isTableInputCe","_ref10$showHintsAsToo","showHintsAsTooltip","_motionMeta","role","tabIndex","leadingDropDown","trailingDropDown","labelSuffix","labelTrailing","valueSuffix","rest","_objectWithoutProperties","_excluded","_useTheme","useTheme","inputRef","mergedInputRef","useMergeRefs","inputWrapperRef","_useTags","_React$useState3","_React$useState4","showAllTagsWithAnimation","setShowAllTagsWithAnimation","defaultRole","undefined","inputGroupProps","useInputGroupContext","isInsideInputGroup","counterInputProps","useCounterInputContext","color","disabledColor","disabledTextColor","isCounterInputDisabled","isCounterInputLoading","isLoading","isInsideCounterInput","_isDisabled","_size","_useInput","_useFormId","useFormId","inputId","_useBreakpoint","useBreakpoint","breakpoints","matchedDeviceType","isLabelLeftPositioned","_useInteraction","useInteraction","setCurrentInteraction","_isRequired","accessibilityProps","makeAccessible","required","Boolean","disabled","invalid","describedBy","expanded","controls","willRenderHintText","includes","join","isTextArea","hasLeadingDropdown","hasTrailingDropdown","_jsxs","getOuterMotionRef","metaAttribute","getStyledProps","display","flexDirection","justifyContent","alignItems","position","alignSelf","marginY","_jsx","FormLabel","htmlFor","className","BaseInputWrapper","refNode","_inputRef$current","focus","BaseInputVisuals","BaseInputTagSlot","renderAs","setFocusOnInput","innerRef","getInnerMotionRef","_innerRef$current","labelPrefix","handleOnInputClick","e","StyledBaseInput","hasTags","$size","MetaConstants","makeAnalyticsAttribute","marginLeft","makeSize","formHintLeftLabelMarginLeft","FormHint","BaseInputWithRef","forwardRef","BaseInput","assignWithoutSideEffects"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseInput.js","sources":["../../../../../../../src/components/Input/BaseInput/BaseInput.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport type { ReactNode } from 'react';\nimport styled from 'styled-components';\nimport { StyledBaseInput } from './StyledBaseInput';\nimport { BaseInputVisuals } from './BaseInputVisuals';\nimport { BaseInputWrapper } from './BaseInputWrapper';\nimport { BaseInputTagSlot } from './BaseInputTagSlot';\nimport type { InputWrapperRef } from './types';\nimport { baseInputBorderBackgroundMotion, formHintLeftLabelMarginLeft } from './baseInputTokens';\nimport type {\n FormInputLabelProps,\n FormInputValidationProps,\n FormInputHandleOnEvent,\n FormInputOnEvent,\n FormHintProps,\n} from '~components/Form';\nimport { FormHint, FormLabel } from '~components/Form';\nimport type { IconComponent } from '~components/Icons';\nimport BaseBox from '~components/Box/BaseBox';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport {\n castWebType,\n getPlatformType,\n isReactNative,\n makeBorderSize,\n makeMotionTime,\n useBreakpoint,\n} from '~utils';\nimport type { Platform } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { useFormId } from '~components/Form/useFormId';\nimport { useTheme } from '~components/BladeProvider';\nimport useInteraction from '~utils/useInteraction';\nimport type { ActionStates } from '~utils/useInteraction';\nimport type {\n FormInputHandleOnClickEvent,\n FormInputHandleOnKeyDownEvent,\n} from '~components/Form/FormTypes';\nimport type {\n BladeElementRef,\n ContainerElementType,\n DataAnalyticsAttribute,\n TestID,\n} from '~utils/types';\nimport { makeSize } from '~utils/makeSize';\nimport type { AriaAttributes } from '~utils/makeAccessible';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { throwBladeError } from '~utils/logger';\nimport { announce } from '~components/LiveAnnouncer/LiveAnnouncer';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport type { LinkProps } from '~components/Link';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport getIn from '~utils/lodashButBetter/get';\nimport { useMergeRefs } from '~utils/useMergeRefs';\nimport type { MotionMetaProp } from '~components/BaseMotion';\nimport { getInnerMotionRef, getOuterMotionRef } from '~utils/getMotionRefs';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport { useInputGroupContext } from '~components/InputGroup/InputGroupContext';\nimport { useCounterInputContext } from '~components/CounterInput/CounterInputContext';\n\ntype CommonAutoCompleteSuggestionTypes =\n | 'none'\n | 'name'\n | 'email'\n | 'username'\n | 'password'\n | 'newPassword'\n | 'oneTimeCode'\n | 'telephone'\n | 'postalCode'\n | 'countryName'\n | 'creditCardNumber'\n | 'creditCardCSC'\n | 'creditCardExpiry'\n | 'creditCardExpiryMonth'\n | 'creditCardExpiryYear';\n\ntype WebAutoCompleteSuggestionType = CommonAutoCompleteSuggestionTypes | 'on';\n\ntype BaseInputCommonProps = FormInputLabelProps &\n DataAnalyticsAttribute &\n FormInputValidationProps & {\n /**\n * Determines if it needs to be rendered as input, textarea or button\n */\n as?: 'input' | 'textarea' | 'button' | 'div';\n /**\n * ID that will be used for accessibility\n */\n id: string;\n /**\n * Placeholder text to be displayed inside the input field\n */\n placeholder?: string;\n /**\n * Type of Input Field to be rendered.\n *\n * @default text\n */\n type?: 'text' | 'telephone' | 'email' | 'url' | 'number' | 'search' | 'password';\n /**\n * Used to set the default value of input field when it's uncontrolled\n */\n defaultValue?: string;\n /**\n * The name of the input field.\n *\n * Useful in form submissions\n */\n name?: string;\n /**\n * The callback function to be invoked when the input field gets focus\n */\n onFocus?: FormInputOnEvent;\n /**\n * The callback function to be invoked when the value of the input field changes\n */\n onChange?: FormInputOnEvent;\n /**\n * The callback function to be invoked when input is clicked\n */\n onClick?: FormInputOnEvent;\n /**\n * The callback function to be invoked when the value of the input field has any input\n */\n onInput?: FormInputOnEvent;\n /**\n * The callback function to be invoked whenever there is a keyDown event\n */\n onKeyDown?: FormInputHandleOnKeyDownEvent;\n /**\n * The callback function to be invoked when the the input field loses focus\n *\n * For React Native this will call `onEndEditing` event since we want to get the last value of the input field\n */\n onBlur?: FormInputOnEvent;\n /**\n * Ignores the blur event animation (Used in Select to ignore blur animation when item in option is clicked)\n */\n shouldIgnoreBlurAnimation?: boolean;\n /**\n * sets boolean that ignores the blur animations on baseinput\n */\n setShouldIgnoreBlurAnimation?: (shouldIgnoreBlurAnimation: boolean) => void;\n /**\n * Used to turn the input field to controlled so user can control the value\n */\n value?: string;\n /**\n * Used to disable the input field\n */\n isDisabled?: boolean;\n /**\n * If true, the input is marked as required, and `required` attribute will be added\n */\n isRequired?: boolean;\n /**\n * Icon to be shown at the start of the input field\n */\n leadingIcon?: IconComponent;\n /**\n * Prefix symbol to be displayed at the beginning of the input field. If leadingIcon is provided it'll be placed after it\n */\n prefix?: string;\n /**\n * Element to be rendered before suffix. This is decided by the component which is extending BaseInput\n *\n * eg: consumers can render a loader or they could render a clear button\n */\n trailingInteractionElement?: ReactNode;\n /**\n * Callback to be invoked when the TrailingInteractionElement is clicked\n */\n onTrailingInteractionElementClick?: () => void;\n /**\n * Element to be rendered before prefix. This is decided by the component which is extending BaseInput\n *\n * eg: consumers can render a country selector or button\n */\n leadingInteractionElement?: ReactNode;\n /**\n * Leading DropDown to be rendered at Prefix slot\n */\n leadingDropDown?: ReactNode;\n /**\n * Trailing DropDown to be rendered at Suffix slot\n */\n trailingDropDown?: ReactNode;\n /**\n * Suffix symbol to be displayed at the end of the input field. If trailingIcon is provided it'll be placed before it\n */\n suffix?: string;\n /**\n * Icon to be displayed at the end of the input field\n */\n trailingIcon?: IconComponent;\n /**\n * Displays the character counter under the input field\n */\n maxCharacters?: number;\n /**\n * alignment of the text inside input field\n */\n textAlign?: 'left' | 'center' | 'right';\n /**\n * If true, focuses the input field on load\n *\n * **Note:**\n * Automatically focusing a form control can confuse visually-impaired people using screen-reading technology and people with cognitive impairments.\n * When autofocus is assigned, screen-readers \"teleport\" their user to the form control without warning them beforehand.\n */\n autoFocus?: boolean;\n /**\n * Hints the platform to display an appropriate virtual keyboard\n *\n * **Native:** Passes as is the `keyboardType` attribute\n *\n * **Web:** Passes the value to the `inputMode` attribute\n */\n keyboardType?: 'text' | 'search' | 'telephone' | 'email' | 'url' | 'decimal';\n /**\n * determines what return key to show on the keyboard of mobile devices/virtual keyboard\n * **Note**: Few values are platform dependent and might not render on all the platforms\n *\n * `default` is only available on native. it'll be mapped to `enter` for web\n * `previous` is only available on native android\n */\n keyboardReturnKeyType?: 'default' | 'go' | 'done' | 'next' | 'previous' | 'search' | 'send';\n /**\n * Element to be rendered on the trailing slot of input field label\n */\n trailingHeaderSlot?: (value?: string) => ReactNode;\n /**\n * Element to be rendered on the trailing slot of input field footer\n */\n trailingFooterSlot?: (value?: string) => ReactNode;\n /**\n * Sets the textarea's number of lines\n */\n numberOfLines?: 1 | 2 | 3 | 4 | 5;\n /**\n * Sets the accessibility label for the input\n */\n accessibilityLabel?: string;\n /**\n * Sets the id of the label\n *\n * (Useful when assigning one label to multiple elements using aria-labelledby)\n */\n labelId?: string;\n /**\n * Can be used in select to set the id of the active descendant from the listbox\n */\n activeDescendant?: string;\n /**\n * Hides the label text\n */\n hideLabelText?: boolean;\n /**\n * Hides the form hint text\n */\n hideFormHint?: boolean;\n /**\n * componentName prop sets the data-blade-component attribute name\n * for internal metric collection purposes\n */\n componentName?: string;\n /**\n * whether the input has a popup\n */\n hasPopup?: AriaAttributes['hasPopup'];\n /**\n * id of the popup\n */\n popupId?: string;\n /**\n * true if popup is in expanded state\n */\n isPopupExpanded?: boolean;\n setInputWrapperRef?: (node: ContainerElementType) => void;\n /**\n * sets the autocapitalize behavior for the input\n */\n autoCapitalize?: 'none' | 'sentences' | 'words' | 'characters';\n\n /**\n * constraints the height of input to given number rows\n *\n * When set to expandable, input takes 1 row in the begining and expands to take 3 when active\n *\n * @default 'single'\n */\n maxTagRows?: 'single' | 'multiple' | 'expandable';\n\n /**\n * A slot for adding tags to input\n */\n tags?: React.ReactElement[] | null;\n\n /**\n * Disables stripping of tags and shows all tags\n */\n showAllTags?: boolean;\n\n /**\n * State variable of active tag index\n */\n activeTagIndex?: number;\n\n /**\n * Is this input SelectInput or AutoComplete\n */\n isDropdownTrigger?: boolean;\n\n /**\n * Is the label expected to be rendered inside input?\n * Used in AutoComplete and Select when label can't exist outside\n *\n */\n isLabelInsideInput?: boolean;\n\n /**\n * State setter for active tag index\n */\n setActiveTagIndex?: (activeTagIndex: number) => void;\n /**\n * Sets the size of the input field\n * @default medium\n */\n size?: 'xsmall' | 'small' | 'medium' | 'large';\n /**\n * Link button to be rendered at the end of the input field.\n * **Note:** `size` of the Link will be set to the same size as the input field, `isDisabled` will follow Input's `isDisabled`, & `variant` will be set to `button`.\n * Example:\n * ```tsx\n * trailingButton={<Link onClick={handleClick}>Apply</Link>}\n * ```\n */\n trailingButton?: React.ReactElement<LinkProps>;\n /**\n * Whether to use Text or Heading component for Input text\n * @default text\n **/\n valueComponentType?: 'text' | 'heading';\n /**\n * Whether to render the input as a table cell\n * @default true\n **/\n isTableInputCell?: boolean;\n /**\n * Hides the form hints and shows them as tooltip of trailing\n */\n showHintsAsTooltip?: boolean;\n\n role?: AriaAttributes['role'];\n\n /**\n * Tab Index of the input field\n *\n * @default undefined\n */\n tabIndex?: number;\n /**\n * Slot to be rendered adjacent to the value\n */\n valueSuffix?: React.ReactNode;\n children?: ReactNode;\n } & TestID &\n Platform.Select<{\n native: {\n /**\n * The callback function to be invoked when the value of the input field is submitted.\n */\n onSubmit?: FormInputOnEvent;\n /**\n * determines what autoComplete suggestion type to show\n *\n * Internally it'll render platform specific attributes:\n *\n * - web: `autocomplete`\n * - iOS: `textContentType`\n * - android: `autoComplete`\n *\n */\n autoCompleteSuggestionType?: CommonAutoCompleteSuggestionTypes;\n };\n web: {\n /**\n * This is a react-native only prop and has no effect on web.\n */\n onSubmit?: undefined;\n /**\n * determines what autoComplete suggestion type to show\n *\n * Internally it'll render platform specific attributes:\n *\n * - web: `autocomplete`\n * - iOS: `textContentType`\n * - android: `autoComplete`\n *\n */\n autoCompleteSuggestionType?: WebAutoCompleteSuggestionType;\n };\n }> &\n StyledPropsBlade &\n MotionMetaProp;\n\n/*\n Mandatory accessibilityLabel prop when label is not provided\n*/\ntype BaseInputPropsWithA11yLabel = {\n /**\n * Label to be shown for the input field\n */\n label?: undefined;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel: string;\n};\n\n/*\n Optional accessibilityLabel prop when label is provided\n*/\ntype BaseInputPropsWithLabel = {\n /**\n * Label to be shown for the input field\n */\n label: string;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel?: string;\n};\n\nexport type BaseInputProps = (BaseInputPropsWithA11yLabel | BaseInputPropsWithLabel) &\n BaseInputCommonProps;\n\nconst autoCompleteSuggestionTypeValues = [\n 'none',\n 'on',\n 'name',\n 'email',\n 'username',\n 'password',\n 'newPassword',\n 'oneTimeCode',\n 'telephone',\n 'postalCode',\n 'countryName',\n 'creditCardNumber',\n 'creditCardCSC',\n 'creditCardExpiry',\n 'creditCardExpiryMonth',\n 'creditCardExpiryYear',\n];\n\ntype OnInputKeydownTagHandlerType = (key: string | undefined) => void;\nconst useTags = (\n tags: BaseInputProps['tags'],\n activeTagIndex: number,\n setActiveTagIndex?: (activeTagIndex: number) => void,\n): {\n onInputKeydownTagHandler: OnInputKeydownTagHandlerType;\n visibleTagsCountRef: React.MutableRefObject<number>;\n} => {\n const visibleTagsCountRef = React.useRef<number>(0);\n\n React.useEffect(() => {\n if (tags && activeTagIndex >= 0 && activeTagIndex < tags.length) {\n const tagTitle = tags[activeTagIndex]?.props?.children;\n if (tagTitle) {\n announce(`Close ${tagTitle} Tag`);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [activeTagIndex, tags?.length]);\n\n const onTagLeft = (): void => {\n if (activeTagIndex < 0) {\n setActiveTagIndex?.(visibleTagsCountRef.current - 1);\n }\n\n if (activeTagIndex > 0) {\n setActiveTagIndex?.(activeTagIndex - 1);\n }\n };\n\n const onTagRight = (): void => {\n if (activeTagIndex < visibleTagsCountRef.current - 1) {\n setActiveTagIndex?.(activeTagIndex + 1);\n }\n };\n\n const onTagRemove = (): void => {\n if (activeTagIndex >= 0 && activeTagIndex < visibleTagsCountRef.current && tags) {\n tags[activeTagIndex].props.onDismiss({ tagIndex: activeTagIndex });\n }\n };\n\n const onInputKeydownTagHandler: OnInputKeydownTagHandlerType = (key) => {\n if (tags && tags.length > 0) {\n if (key === 'ArrowRight') {\n onTagRight();\n }\n\n if (key === 'ArrowLeft') {\n onTagLeft();\n }\n\n if (key === 'Backspace') {\n onTagRemove();\n }\n }\n };\n\n return {\n onInputKeydownTagHandler,\n visibleTagsCountRef,\n };\n};\n\nconst useInput = ({\n value,\n defaultValue,\n onClick,\n onFocus,\n onChange,\n onBlur,\n onSubmit,\n onInput,\n onKeyDown,\n onInputKeydownTagHandler,\n}: Pick<\n BaseInputProps,\n | 'value'\n | 'defaultValue'\n | 'onFocus'\n | 'onChange'\n | 'onBlur'\n | 'onInput'\n | 'onKeyDown'\n | 'onClick'\n | 'onSubmit'\n> & {\n onInputKeydownTagHandler: OnInputKeydownTagHandlerType;\n}): {\n handleOnFocus: FormInputHandleOnEvent;\n handleOnClick: FormInputHandleOnClickEvent;\n handleOnChange: FormInputHandleOnEvent;\n handleOnBlur: FormInputHandleOnEvent;\n handleOnSubmit: FormInputHandleOnEvent;\n handleOnInput: FormInputHandleOnEvent;\n handleOnKeyDown: FormInputHandleOnKeyDownEvent;\n inputValue?: string;\n} => {\n if (__DEV__) {\n if (value && defaultValue) {\n throwBladeError({\n message: `Either 'value' or 'defaultValue' shall be passed. This decides if the input field is controlled or uncontrolled`,\n moduleName: 'Input',\n });\n }\n }\n\n const [inputValue, setInputValue] = React.useState(defaultValue ?? value);\n\n const handleOnFocus: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onFocus?.({\n name,\n value: _value,\n });\n },\n [onFocus],\n );\n\n const handleOnClick: FormInputHandleOnClickEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.currentTarget.value ?? '';\n }\n\n onClick?.({\n name,\n value: _value,\n });\n },\n [onClick],\n );\n\n const handleOnSubmit: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n if (isReactNative()) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment, @typescript-eslint/prefer-ts-expect-error\n //@ts-ignore need to ignore this since it will throw a TS error for web but not for native\n onSubmit?.({\n name,\n value: _value,\n });\n }\n },\n [onSubmit],\n );\n\n const handleOnBlur: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n if (getPlatformType() === 'react-native' && typeof value == 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onBlur?.({\n name,\n value: _value,\n });\n },\n [onBlur],\n );\n\n const handleOnChange: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n\n if (getPlatformType() === 'react-native' && typeof value === 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onChange?.({\n name,\n value: _value,\n });\n setInputValue(_value);\n },\n [onChange],\n );\n\n const handleOnInput: FormInputHandleOnEvent = React.useCallback(\n ({ name, value }) => {\n let _value = '';\n if (getPlatformType() === 'react-native' && typeof value == 'string') {\n _value = value;\n } else if (typeof value !== 'string') {\n // Could have just done \"getPlatformType() === 'react-native' ? value : value?.target.value\" but TS doesn't understands that\n _value = value?.target.value ?? '';\n }\n\n onInput?.({\n name,\n value: _value,\n });\n },\n [onInput],\n );\n\n const handleOnKeyDown: FormInputHandleOnKeyDownEvent = React.useCallback(\n ({ name, key, code, event }) => {\n onInputKeydownTagHandler(key);\n onKeyDown?.({\n name,\n key,\n code,\n event,\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [onKeyDown],\n );\n\n return {\n handleOnFocus,\n handleOnClick,\n handleOnChange,\n handleOnBlur,\n handleOnSubmit,\n handleOnInput,\n handleOnKeyDown,\n inputValue,\n };\n};\n\nexport const getHintType = ({\n validationState,\n hasHelpText,\n}: {\n validationState: BaseInputProps['validationState'];\n hasHelpText: boolean;\n}): FormHintProps['type'] => {\n if (validationState === 'error') {\n return 'error';\n }\n\n if (validationState === 'success') {\n return 'success';\n }\n\n if (hasHelpText) {\n return 'help';\n }\n\n return 'help';\n};\n\nconst getDescribedByElementId = ({\n validationState,\n hasErrorText,\n hasSuccessText,\n hasHelpText,\n errorTextId,\n successTextId,\n helpTextId,\n}: {\n validationState: BaseInputProps['validationState'];\n hasErrorText: boolean;\n hasSuccessText: boolean;\n hasHelpText: boolean;\n errorTextId: string;\n successTextId: string;\n helpTextId: string;\n}): string => {\n if (validationState === 'error' && hasErrorText) {\n return errorTextId;\n }\n\n if (validationState === 'success' && hasSuccessText) {\n return successTextId;\n }\n\n if (hasHelpText) {\n return helpTextId;\n }\n\n return '';\n};\n\nconst FocusRingWrapper = styled(BaseBox)<{\n currentInteraction: ActionStates;\n isTableInputCell: NonNullable<BaseInputProps['isTableInputCell']>;\n className: string;\n shouldAddLimitedFocus: boolean;\n}>(({ theme, currentInteraction, isTableInputCell, shouldAddLimitedFocus }) => ({\n borderRadius: makeBorderSize(\n isTableInputCell ? theme.border.radius.none : theme.border.radius.medium,\n ),\n width: '100%',\n '&:focus-within':\n !isTableInputCell && (shouldAddLimitedFocus ? currentInteraction === 'focus' : true)\n ? {\n ...getFocusRingStyles({\n theme,\n }),\n transitionDuration: castWebType(\n makeMotionTime(\n getIn(\n theme.motion.duration,\n baseInputBorderBackgroundMotion[currentInteraction === 'focus' ? 'enter' : 'exit']\n .duration,\n ),\n ),\n ),\n transitionTimingFunction: castWebType(\n theme.motion.easing[\n baseInputBorderBackgroundMotion[currentInteraction === 'focus' ? 'enter' : 'exit']\n .easing\n ],\n ),\n }\n : {},\n}));\n\nconst _BaseInput: React.ForwardRefRenderFunction<BladeElementRef, BaseInputProps> = (\n {\n as = 'input',\n label,\n labelPosition = 'top',\n placeholder,\n type = 'text',\n defaultValue,\n tags,\n showAllTags = false,\n activeTagIndex = -1,\n setActiveTagIndex,\n name,\n value,\n onFocus,\n onChange,\n onInput,\n onBlur,\n onSubmit,\n onClick,\n onKeyDown,\n isDisabled,\n necessityIndicator,\n validationState,\n errorText,\n helpText,\n successText,\n isRequired,\n leadingIcon,\n prefix,\n trailingInteractionElement,\n onTrailingInteractionElementClick,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n maxCharacters,\n textAlign,\n autoFocus,\n keyboardReturnKeyType,\n keyboardType,\n autoCompleteSuggestionType,\n trailingHeaderSlot,\n trailingFooterSlot,\n numberOfLines,\n id,\n componentName,\n accessibilityLabel,\n labelId,\n activeDescendant,\n hideLabelText,\n hideFormHint,\n hasPopup,\n popupId,\n isPopupExpanded,\n maxTagRows,\n shouldIgnoreBlurAnimation,\n setShouldIgnoreBlurAnimation,\n autoCapitalize,\n setInputWrapperRef,\n testID,\n isDropdownTrigger,\n isLabelInsideInput,\n size = 'medium',\n trailingButton,\n valueComponentType = 'text',\n isTableInputCell = false,\n showHintsAsTooltip = false,\n _motionMeta,\n role,\n tabIndex,\n leadingDropDown,\n trailingDropDown,\n labelSuffix,\n labelTrailing,\n valueSuffix,\n children,\n ...rest\n },\n ref,\n) => {\n const { theme } = useTheme();\n const inputRef = React.useRef<BladeElementRef>(null);\n const mergedInputRef = useMergeRefs(ref, inputRef);\n const inputWrapperRef: InputWrapperRef = React.useRef(null);\n const { onInputKeydownTagHandler, visibleTagsCountRef } = useTags(\n tags,\n activeTagIndex,\n setActiveTagIndex,\n );\n const [showAllTagsWithAnimation, setShowAllTagsWithAnimation] = React.useState(false);\n const isReactNative = getPlatformType() === 'react-native';\n const defaultRole = hasPopup ? 'combobox' : undefined;\n\n const inputGroupProps = useInputGroupContext();\n const { isInsideInputGroup } = inputGroupProps;\n const counterInputProps = useCounterInputContext();\n const {\n color,\n disabledTextColor: disabledColor,\n isDisabled: isCounterInputDisabled,\n isLoading: isCounterInputLoading,\n isInsideCounterInput,\n } = counterInputProps;\n const _isDisabled =\n inputGroupProps.isDisabled ?? (isCounterInputDisabled || isCounterInputLoading) ?? isDisabled;\n const _size = inputGroupProps.size ?? size;\n\n React.useEffect(() => {\n if (showAllTags) {\n setShowAllTagsWithAnimation(true);\n } else if (maxTagRows !== 'expandable') {\n setShowAllTagsWithAnimation(false);\n }\n }, [showAllTags, maxTagRows]);\n\n const {\n handleOnFocus,\n handleOnChange,\n handleOnClick,\n handleOnBlur,\n handleOnSubmit,\n handleOnInput,\n handleOnKeyDown,\n inputValue,\n } = useInput({\n defaultValue,\n value,\n onFocus,\n onClick,\n onChange,\n onBlur,\n onSubmit,\n onInput,\n onKeyDown,\n onInputKeydownTagHandler,\n });\n const { inputId, helpTextId, errorTextId, successTextId } = useFormId(id);\n const { matchedDeviceType } = useBreakpoint({ breakpoints: theme.breakpoints });\n const isLabelLeftPositioned = labelPosition === 'left' && matchedDeviceType === 'desktop';\n const { currentInteraction, setCurrentInteraction } = useInteraction();\n const _isRequired = isRequired || necessityIndicator === 'required';\n\n const accessibilityProps = makeAccessible({\n required: Boolean(_isRequired),\n disabled: Boolean(_isDisabled),\n invalid: Boolean(validationState === 'error'),\n describedBy: getDescribedByElementId({\n validationState,\n hasErrorText: Boolean(errorText),\n hasSuccessText: Boolean(successText),\n hasHelpText: Boolean(helpText),\n errorTextId,\n successTextId,\n helpTextId,\n }),\n label: accessibilityLabel,\n hasPopup,\n expanded: hasPopup ? isPopupExpanded : undefined,\n controls: hasPopup ? popupId : undefined,\n role: role ?? defaultRole,\n activeDescendant,\n });\n\n const willRenderHintText =\n Boolean(helpText) ||\n (validationState === 'success' && Boolean(successText)) ||\n (validationState === 'error' && Boolean(errorText));\n\n if (__DEV__) {\n if (\n autoCompleteSuggestionType &&\n !autoCompleteSuggestionTypeValues.includes(autoCompleteSuggestionType)\n ) {\n throwBladeError({\n message: `Expected autoCompleteSuggestionType to be one of ${autoCompleteSuggestionTypeValues.join(\n ', ',\n )} but received ${autoCompleteSuggestionType}`,\n moduleName: 'Input',\n });\n }\n }\n\n const isTextArea = as === 'textarea';\n const hasLeadingDropdown = Boolean(leadingDropDown);\n const hasTrailingDropdown = Boolean(trailingDropDown);\n\n const shouldAddLimitedFocus = hasLeadingDropdown || hasTrailingDropdown;\n return (\n <BaseBox\n ref={getOuterMotionRef({ _motionMeta, ref })}\n {...metaAttribute({ name: componentName, testID })}\n {...getStyledProps(rest)}\n >\n <BaseBox\n display=\"flex\"\n flexDirection={isLabelLeftPositioned ? 'row' : 'column'}\n justifyContent={isLabelLeftPositioned ? 'center' : undefined}\n alignItems={isLabelLeftPositioned ? 'center' : undefined}\n position=\"relative\"\n width=\"100%\"\n >\n {/* If the input is in an input group, we don't want to render the label */}\n {!hideLabelText && !isLabelInsideInput && label && !isInsideInputGroup && (\n <BaseBox\n display=\"flex\"\n flexDirection={isLabelLeftPositioned ? 'column' : 'row'}\n justifyContent=\"space-between\"\n alignSelf={isTextArea && isLabelLeftPositioned ? '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 labelSuffix={labelSuffix}\n labelTrailing={labelTrailing}\n >\n {label}\n </FormLabel>\n {trailingHeaderSlot?.(value ?? inputValue)}\n </BaseBox>\n )}\n <FocusRingWrapper\n currentInteraction={currentInteraction}\n isTableInputCell={isTableInputCell}\n className=\"focus-ring-wrapper\"\n shouldAddLimitedFocus={shouldAddLimitedFocus}\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 leadingDropDown={leadingDropDown}\n />\n <BaseInputTagSlot\n renderAs={as}\n tags={tags}\n isDisabled={_isDisabled}\n showAllTags={showAllTagsWithAnimation}\n setFocusOnInput={() => {\n const innerRef = getInnerMotionRef({ _motionMeta, ref });\n if (innerRef && !isReactNative && 'current' in innerRef) {\n innerRef.current?.focus();\n }\n }}\n labelPrefix={isLabelInsideInput ? label : undefined}\n isDropdownTrigger={isDropdownTrigger}\n visibleTagsCountRef={visibleTagsCountRef}\n handleOnInputClick={(e) => {\n handleOnClick({ name, value: isReactNative ? value : e });\n }}\n setShouldIgnoreBlurAnimation={setShouldIgnoreBlurAnimation}\n maxTagRows={maxTagRows}\n inputWrapperRef={inputWrapperRef}\n size={_size}\n numberOfLines={numberOfLines}\n isTextArea={isTextArea}\n >\n <StyledBaseInput\n as={as}\n id={inputId}\n ref={getInnerMotionRef({ _motionMeta, ref: mergedInputRef as any }) as never}\n name={name}\n type={type}\n defaultValue={defaultValue}\n value={value}\n placeholder={placeholder}\n isDisabled={_isDisabled}\n validationState={validationState}\n isRequired={_isRequired}\n handleOnFocus={handleOnFocus}\n handleOnChange={handleOnChange}\n handleOnBlur={handleOnBlur}\n handleOnSubmit={handleOnSubmit}\n handleOnInput={handleOnInput}\n handleOnKeyDown={handleOnKeyDown}\n handleOnClick={handleOnClick}\n leadingIcon={leadingIcon}\n prefix={prefix}\n trailingInteractionElement={trailingInteractionElement}\n leadingInteractionElement={leadingInteractionElement}\n suffix={suffix}\n valueSuffix={valueSuffix}\n trailingIcon={trailingIcon}\n maxCharacters={maxCharacters}\n textAlign={textAlign}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n keyboardReturnKeyType={keyboardReturnKeyType}\n keyboardType={keyboardType}\n autoCompleteSuggestionType={autoCompleteSuggestionType}\n accessibilityProps={accessibilityProps}\n currentInteraction={currentInteraction}\n setCurrentInteraction={setCurrentInteraction}\n numberOfLines={numberOfLines}\n isTextArea={isTextArea || maxTagRows === 'multiple' || maxTagRows === 'expandable'}\n hasPopup={hasPopup}\n hasTags={!!(tags && tags.length > 0)}\n shouldIgnoreBlurAnimation={shouldIgnoreBlurAnimation}\n autoCapitalize={autoCapitalize}\n isDropdownTrigger={isDropdownTrigger}\n $size={_size}\n valueComponentType={valueComponentType}\n isTableInputCell={isTableInputCell}\n tabIndex={tabIndex}\n hasLeadingDropdown={Boolean(leadingDropDown)}\n children={children}\n color={color}\n disabledColor={disabledColor}\n isInsideCounterInput={isInsideCounterInput}\n {...metaAttribute({ name: MetaConstants.StyledBaseInput })}\n {...makeAnalyticsAttribute(rest)}\n />\n </BaseInputTagSlot>\n <BaseInputVisuals\n trailingInteractionElement={trailingInteractionElement}\n onTrailingInteractionElementClick={onTrailingInteractionElementClick}\n suffix={suffix}\n trailingIcon={trailingIcon}\n isDisabled={_isDisabled}\n validationState={validationState}\n trailingButton={trailingButton}\n size={_size}\n errorText={errorText}\n successText={successText}\n showHintsAsTooltip={showHintsAsTooltip}\n trailingDropDown={trailingDropDown}\n />\n </BaseInputWrapper>\n </FocusRingWrapper>\n </BaseBox>\n {/* If the input is in an input group, we don't want to render the hint text */}\n {hideFormHint || showHintsAsTooltip || isInsideInputGroup ? null : (\n <BaseBox\n marginLeft={makeSize(\n isLabelLeftPositioned && !hideLabelText ? formHintLeftLabelMarginLeft[_size] : 0,\n )}\n >\n <BaseBox\n display=\"flex\"\n flexDirection=\"row\"\n justifyContent={willRenderHintText ? 'space-between' : 'flex-end'}\n >\n <FormHint\n type={getHintType({ validationState, hasHelpText: Boolean(helpText) })}\n helpText={helpText}\n errorText={errorText}\n successText={successText}\n helpTextId={helpTextId}\n errorTextId={errorTextId}\n successTextId={successTextId}\n size={_size}\n />\n {trailingFooterSlot?.(value ?? inputValue)}\n </BaseBox>\n </BaseBox>\n )}\n </BaseBox>\n );\n};\n\nconst BaseInputWithRef = React.forwardRef(_BaseInput);\nconst BaseInput = assignWithoutSideEffects(BaseInputWithRef, { displayName: 'BaseInput' });\n\nexport { BaseInput };\n"],"names":["autoCompleteSuggestionTypeValues","useTags","tags","activeTagIndex","setActiveTagIndex","visibleTagsCountRef","React","useRef","useEffect","length","_tags$activeTagIndex","tagTitle","props","children","announce","concat","onTagLeft","current","onTagRight","onTagRemove","onDismiss","tagIndex","onInputKeydownTagHandler","key","useInput","_ref","value","defaultValue","onClick","onFocus","onChange","onBlur","onSubmit","onInput","onKeyDown","throwBladeError","message","moduleName","_React$useState","useState","_React$useState2","_slicedToArray","inputValue","setInputValue","handleOnFocus","useCallback","_ref2","name","_value","getPlatformType","_value$target$value","target","handleOnClick","_ref3","_value$currentTarget$","currentTarget","handleOnSubmit","_ref4","_value$target$value2","isReactNative","handleOnBlur","_ref5","_value$target$value3","handleOnChange","_ref6","_value$target$value4","handleOnInput","_ref7","_value$target$value5","handleOnKeyDown","_ref8","code","event","getHintType","_ref9","validationState","hasHelpText","getDescribedByElementId","_ref0","hasErrorText","hasSuccessText","errorTextId","successTextId","helpTextId","FocusRingWrapper","styled","BaseBox","withConfig","displayName","componentId","_ref1","theme","currentInteraction","isTableInputCell","shouldAddLimitedFocus","borderRadius","makeBorderSize","border","radius","none","medium","width","_objectSpread","getFocusRingStyles","transitionDuration","castWebType","makeMotionTime","getIn","motion","duration","baseInputBorderBackgroundMotion","transitionTimingFunction","easing","_BaseInput","_ref10","ref","_ref11","_inputGroupProps$isDi","_inputGroupProps$size","_ref10$as","as","label","_ref10$labelPosition","labelPosition","placeholder","_ref10$type","type","_ref10$showAllTags","showAllTags","_ref10$activeTagIndex","isDisabled","necessityIndicator","errorText","helpText","successText","isRequired","leadingIcon","prefix","trailingInteractionElement","onTrailingInteractionElementClick","leadingInteractionElement","suffix","trailingIcon","maxCharacters","textAlign","autoFocus","keyboardReturnKeyType","keyboardType","autoCompleteSuggestionType","trailingHeaderSlot","trailingFooterSlot","numberOfLines","id","componentName","accessibilityLabel","labelId","activeDescendant","hideLabelText","hideFormHint","hasPopup","popupId","isPopupExpanded","maxTagRows","shouldIgnoreBlurAnimation","setShouldIgnoreBlurAnimation","autoCapitalize","setInputWrapperRef","testID","isDropdownTrigger","isLabelInsideInput","_ref10$size","size","trailingButton","_ref10$valueComponent","valueComponentType","_ref10$isTableInputCe","_ref10$showHintsAsToo","showHintsAsTooltip","_motionMeta","role","tabIndex","leadingDropDown","trailingDropDown","labelSuffix","labelTrailing","valueSuffix","rest","_objectWithoutProperties","_excluded","_useTheme","useTheme","inputRef","mergedInputRef","useMergeRefs","inputWrapperRef","_useTags","_React$useState3","_React$useState4","showAllTagsWithAnimation","setShowAllTagsWithAnimation","defaultRole","undefined","inputGroupProps","useInputGroupContext","isInsideInputGroup","counterInputProps","useCounterInputContext","color","disabledColor","disabledTextColor","isCounterInputDisabled","isCounterInputLoading","isLoading","isInsideCounterInput","_isDisabled","_size","_useInput","_useFormId","useFormId","inputId","_useBreakpoint","useBreakpoint","breakpoints","matchedDeviceType","isLabelLeftPositioned","_useInteraction","useInteraction","setCurrentInteraction","_isRequired","accessibilityProps","makeAccessible","required","Boolean","disabled","invalid","describedBy","expanded","controls","willRenderHintText","includes","join","isTextArea","hasLeadingDropdown","hasTrailingDropdown","_jsxs","getOuterMotionRef","metaAttribute","getStyledProps","display","flexDirection","justifyContent","alignItems","position","alignSelf","marginY","_jsx","FormLabel","htmlFor","className","BaseInputWrapper","refNode","_inputRef$current","focus","BaseInputVisuals","BaseInputTagSlot","renderAs","setFocusOnInput","innerRef","getInnerMotionRef","_innerRef$current","labelPrefix","handleOnInputClick","e","StyledBaseInput","hasTags","$size","MetaConstants","makeAnalyticsAttribute","marginLeft","makeSize","formHintLeftLabelMarginLeft","FormHint","BaseInputWithRef","forwardRef","BaseInput","assignWithoutSideEffects"],"mappings":"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"}
|