@razorpay/blade 11.24.3 → 11.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/lib/native/components/Avatar/TrustedBadgeIcon.native.js +7 -0
- package/build/lib/native/components/Avatar/TrustedBadgeIcon.native.js.map +1 -0
- package/build/lib/native/components/BaseMenu/BaseMenuItem/BaseMenuItem.js +1 -1
- package/build/lib/native/components/BaseMenu/BaseMenuItem/BaseMenuItem.js.map +1 -1
- package/build/lib/native/components/Dropdown/Dropdown.js +1 -1
- package/build/lib/native/components/Dropdown/Dropdown.js.map +1 -1
- package/build/lib/native/components/Indicator/Indicator.js +2 -1
- package/build/lib/native/components/Indicator/Indicator.js.map +1 -1
- package/build/lib/native/components/Input/BaseInput/BaseInput.js +1 -1
- package/build/lib/native/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/native/components/Input/BaseInput/BaseInputVisuals.js +1 -1
- package/build/lib/native/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
- package/build/lib/native/components/Input/BaseInput/baseInputStyles.js +1 -1
- package/build/lib/native/components/Input/BaseInput/baseInputStyles.js.map +1 -1
- package/build/lib/native/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js +4 -1
- package/build/lib/native/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js.map +1 -1
- package/build/lib/native/components/Spinner/BaseSpinner/BaseSpinner.js +1 -1
- package/build/lib/native/components/Spinner/BaseSpinner/BaseSpinner.js.map +1 -1
- package/build/lib/native/components/StepGroup/StepItemMarker.js +1 -1
- package/build/lib/native/components/StepGroup/StepItemMarker.js.map +1 -1
- package/build/lib/native/components/Table/TableBody.native.js +2 -2
- package/build/lib/native/components/Table/TableBody.native.js.map +1 -1
- package/build/lib/native/components/Table/TableContext.js +6 -0
- package/build/lib/native/components/Table/TableContext.js.map +1 -0
- package/build/lib/native/components/Table/TableEditableCell.native.js +16 -0
- package/build/lib/native/components/Table/TableEditableCell.native.js.map +1 -0
- package/build/lib/native/components/Table/TableEditableCellContext.js +6 -0
- package/build/lib/native/components/Table/TableEditableCellContext.js.map +1 -0
- package/build/lib/native/components/Table/TablePagination.native.js +2 -2
- package/build/lib/native/components/Table/TablePagination.native.js.map +1 -1
- package/build/lib/native/components/Table/TableToolbar.native.js +2 -2
- package/build/lib/native/components/Table/TableToolbar.native.js.map +1 -1
- package/build/lib/native/components/Table/tokens.js +22 -0
- package/build/lib/native/components/Table/tokens.js.map +1 -0
- package/build/lib/native/components/index.js +5 -3
- package/build/lib/native/components/index.js.map +1 -1
- package/build/lib/native/tokens/theme/createTheme.js +1 -1
- package/build/lib/native/tokens/theme/createTheme.js.map +1 -1
- package/build/lib/web/development/components/Avatar/Avatar.web.js +42 -3
- package/build/lib/web/development/components/Avatar/Avatar.web.js.map +1 -1
- package/build/lib/web/development/components/Avatar/AvatarButton.js +8 -3
- package/build/lib/web/development/components/Avatar/AvatarButton.js.map +1 -1
- package/build/lib/web/development/components/Avatar/StyledAvatar.js +11 -5
- package/build/lib/web/development/components/Avatar/StyledAvatar.js.map +1 -1
- package/build/lib/web/development/components/Avatar/StyledAvatarButton.js +10 -6
- package/build/lib/web/development/components/Avatar/StyledAvatarButton.js.map +1 -1
- package/build/lib/web/development/components/Avatar/TrustedBadgeIcon.web.js +195 -0
- package/build/lib/web/development/components/Avatar/TrustedBadgeIcon.web.js.map +1 -0
- package/build/lib/web/development/components/Avatar/avatarTokens.js +61 -1
- package/build/lib/web/development/components/Avatar/avatarTokens.js.map +1 -1
- package/build/lib/web/development/components/Avatar/index.js +1 -0
- package/build/lib/web/development/components/Avatar/index.js.map +1 -1
- package/build/lib/web/development/components/BaseMenu/BaseMenuItem/BaseMenuItem.js +1 -1
- package/build/lib/web/development/components/BaseMenu/BaseMenuItem/BaseMenuItem.js.map +1 -1
- package/build/lib/web/development/components/Dropdown/Dropdown.js +3 -1
- package/build/lib/web/development/components/Dropdown/Dropdown.js.map +1 -1
- package/build/lib/web/development/components/Indicator/Indicator.js +7 -2
- package/build/lib/web/development/components/Indicator/Indicator.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js +1 -1
- package/build/lib/web/development/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/BaseInput.js +5 -3
- package/build/lib/web/development/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/BaseInputTagSlot.web.js +55 -33
- package/build/lib/web/development/components/Input/BaseInput/BaseInputTagSlot.web.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/BaseInputVisuals.js +4 -4
- package/build/lib/web/development/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/baseInputStyles.js +4 -2
- package/build/lib/web/development/components/Input/BaseInput/baseInputStyles.js.map +1 -1
- package/build/lib/web/development/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js +22 -4
- package/build/lib/web/development/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js.map +1 -1
- package/build/lib/web/development/components/Spinner/BaseSpinner/BaseSpinner.js +3 -3
- package/build/lib/web/development/components/Spinner/BaseSpinner/BaseSpinner.js.map +1 -1
- package/build/lib/web/development/components/StepGroup/StepItemMarker.js +0 -1
- package/build/lib/web/development/components/StepGroup/StepItemMarker.js.map +1 -1
- package/build/lib/web/development/components/Table/TableBody.web.js +26 -166
- package/build/lib/web/development/components/Table/TableBody.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableEditableCell.web.js +194 -0
- package/build/lib/web/development/components/Table/TableEditableCell.web.js.map +1 -0
- package/build/lib/web/development/components/Table/TableEditableCellContext.js +12 -0
- package/build/lib/web/development/components/Table/TableEditableCellContext.js.map +1 -0
- package/build/lib/web/development/components/Table/TablePagination.web.js +3 -2
- package/build/lib/web/development/components/Table/TablePagination.web.js.map +1 -1
- package/build/lib/web/development/components/Table/index.js +2 -2
- package/build/lib/web/development/components/Table/tokens.js +14 -2
- package/build/lib/web/development/components/Table/tokens.js.map +1 -1
- package/build/lib/web/development/components/index.js +3 -1
- package/build/lib/web/development/components/index.js.map +1 -1
- package/build/lib/web/development/tokens/theme/createTheme.js +5 -2
- package/build/lib/web/development/tokens/theme/createTheme.js.map +1 -1
- package/build/lib/web/production/components/Avatar/Avatar.web.js +42 -3
- package/build/lib/web/production/components/Avatar/Avatar.web.js.map +1 -1
- package/build/lib/web/production/components/Avatar/AvatarButton.js +8 -3
- package/build/lib/web/production/components/Avatar/AvatarButton.js.map +1 -1
- package/build/lib/web/production/components/Avatar/StyledAvatar.js +11 -5
- package/build/lib/web/production/components/Avatar/StyledAvatar.js.map +1 -1
- package/build/lib/web/production/components/Avatar/StyledAvatarButton.js +10 -6
- package/build/lib/web/production/components/Avatar/StyledAvatarButton.js.map +1 -1
- package/build/lib/web/production/components/Avatar/TrustedBadgeIcon.web.js +195 -0
- package/build/lib/web/production/components/Avatar/TrustedBadgeIcon.web.js.map +1 -0
- package/build/lib/web/production/components/Avatar/avatarTokens.js +61 -1
- package/build/lib/web/production/components/Avatar/avatarTokens.js.map +1 -1
- package/build/lib/web/production/components/Avatar/index.js +1 -0
- package/build/lib/web/production/components/Avatar/index.js.map +1 -1
- package/build/lib/web/production/components/BaseMenu/BaseMenuItem/BaseMenuItem.js +1 -1
- package/build/lib/web/production/components/BaseMenu/BaseMenuItem/BaseMenuItem.js.map +1 -1
- package/build/lib/web/production/components/Dropdown/Dropdown.js +3 -1
- package/build/lib/web/production/components/Dropdown/Dropdown.js.map +1 -1
- package/build/lib/web/production/components/Indicator/Indicator.js +7 -2
- package/build/lib/web/production/components/Indicator/Indicator.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js +1 -1
- package/build/lib/web/production/components/Input/BaseInput/AnimatedBaseInputWrapper.web.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/BaseInput.js +5 -3
- package/build/lib/web/production/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/BaseInputTagSlot.web.js +55 -33
- package/build/lib/web/production/components/Input/BaseInput/BaseInputTagSlot.web.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/BaseInputVisuals.js +4 -4
- package/build/lib/web/production/components/Input/BaseInput/BaseInputVisuals.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/baseInputStyles.js +4 -2
- package/build/lib/web/production/components/Input/BaseInput/baseInputStyles.js.map +1 -1
- package/build/lib/web/production/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js +22 -4
- package/build/lib/web/production/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js.map +1 -1
- package/build/lib/web/production/components/Spinner/BaseSpinner/BaseSpinner.js +3 -3
- package/build/lib/web/production/components/Spinner/BaseSpinner/BaseSpinner.js.map +1 -1
- package/build/lib/web/production/components/StepGroup/StepItemMarker.js +0 -1
- package/build/lib/web/production/components/StepGroup/StepItemMarker.js.map +1 -1
- package/build/lib/web/production/components/Table/TableBody.web.js +26 -166
- package/build/lib/web/production/components/Table/TableBody.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableEditableCell.web.js +194 -0
- package/build/lib/web/production/components/Table/TableEditableCell.web.js.map +1 -0
- package/build/lib/web/production/components/Table/TableEditableCellContext.js +12 -0
- package/build/lib/web/production/components/Table/TableEditableCellContext.js.map +1 -0
- package/build/lib/web/production/components/Table/TablePagination.web.js +3 -2
- package/build/lib/web/production/components/Table/TablePagination.web.js.map +1 -1
- package/build/lib/web/production/components/Table/index.js +2 -2
- package/build/lib/web/production/components/Table/tokens.js +14 -2
- package/build/lib/web/production/components/Table/tokens.js.map +1 -1
- package/build/lib/web/production/components/index.js +3 -1
- package/build/lib/web/production/components/index.js.map +1 -1
- package/build/lib/web/production/tokens/theme/createTheme.js +5 -2
- package/build/lib/web/production/tokens/theme/createTheme.js.map +1 -1
- package/build/types/components/index.d.ts +38 -20
- package/build/types/components/index.native.d.ts +37 -22
- package/build/types/tokens/index.d.ts +6 -3
- package/build/types/tokens/index.native.d.ts +6 -3
- package/package.json +1 -1
- package/build/lib/web/development/components/Table/types.js +0 -2
- package/build/lib/web/development/components/Table/types.js.map +0 -1
- package/build/lib/web/production/components/Table/types.js +0 -2
- package/build/lib/web/production/components/Table/types.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseInputTagSlot.web.js","sources":["../../../../../../../src/components/Input/BaseInput/BaseInputTagSlot.web.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\nimport type { BaseInputTagSlotProps } from './types';\nimport { baseInputHeight } from './baseInputTokens';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Text } from '~components/Typography';\nimport { castWebType, makeSize } from '~utils';\nimport { useIsomorphicLayoutEffect } from '~utils/useIsomorphicLayoutEffect';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { MetaConstants } from '~utils/metaAttribute';\nimport { size as sizeToken } from '~tokens/global';\n\nconst MINUMUM_INPUT_SPACE = 60;\nconst PLUS_X_MORE_TEXT_WIDTH = 60;\nconst TAG_MAX_WIDTH: number = sizeToken['140'];\n\nconst useVisibleTagsCount = ({\n slotRef,\n tags,\n maxTagRows,\n visibleTagsCountRef,\n showAllTags,\n labelPrefix,\n}: {\n slotRef: React.RefObject<HTMLDivElement>;\n tags: BaseInputTagSlotProps['tags'];\n maxTagRows: BaseInputTagSlotProps['maxTagRows'];\n visibleTagsCountRef: BaseInputTagSlotProps['visibleTagsCountRef'];\n showAllTags: BaseInputTagSlotProps['showAllTags'];\n labelPrefix: BaseInputTagSlotProps['labelPrefix'];\n}): number => {\n const [visibleTagsCount, setVisibleTagsCount] = React.useState(0);\n const visibleTagsCountStateRef = React.useRef<number>(0);\n\n useIsomorphicLayoutEffect(() => {\n if (!tags || labelPrefix) {\n setVisibleTagsCount(0);\n return;\n }\n\n if (maxTagRows === 'multiple' || showAllTags) {\n visibleTagsCountRef.current = tags.length;\n setVisibleTagsCount(tags.length);\n return;\n }\n\n const inputTagsSlotWidth = slotRef.current?.clientWidth;\n visibleTagsCountStateRef.current = 0;\n let totalTagsWidth = 0;\n\n if (!inputTagsSlotWidth) {\n return;\n }\n\n const allTagsEl = slotRef.current?.querySelectorAll(\n `[data-blade-component=\"${MetaConstants.Tag}\"]`,\n );\n\n const totalAvailableSpaceForTags =\n inputTagsSlotWidth - (MINUMUM_INPUT_SPACE + PLUS_X_MORE_TEXT_WIDTH);\n\n if (allTagsEl.length !== tags.length) {\n // some weird edge cases in controlled select where tags are not rendered in children\n // we assume 140px (max-width of tag as width of all tags)\n const tagsCount = Math.floor((totalAvailableSpaceForTags / TAG_MAX_WIDTH) * tags.length);\n visibleTagsCountRef.current = tagsCount;\n setVisibleTagsCount(tagsCount);\n return;\n }\n\n for (const tagEl of allTagsEl) {\n totalTagsWidth += tagEl.clientWidth;\n if (totalTagsWidth >= totalAvailableSpaceForTags) {\n break;\n } else {\n visibleTagsCountStateRef.current++;\n }\n }\n\n visibleTagsCountRef.current = visibleTagsCountStateRef.current;\n setVisibleTagsCount(visibleTagsCountStateRef.current);\n }, [tags?.length, showAllTags]);\n\n return visibleTagsCount;\n};\n\nconst getSelectedTextWithoutTags = ({\n items,\n labelPrefix,\n}: {\n items: number;\n labelPrefix?: string;\n}): string => {\n if (labelPrefix) {\n return `${labelPrefix} (${items} Selected)`;\n }\n\n return `${items} Selected`;\n};\n\nconst TagSlotContainer = styled(BaseBox)(() => {\n return {\n // hides the scrollbar of tagslot\n '::-webkit-scrollbar': {\n display: 'none',\n },\n '-ms-overflow-style': 'none',\n 'scrollbar-width': 'none',\n };\n});\n\nconst BaseInputTagSlot = ({\n renderAs,\n children,\n tags,\n maxTagRows,\n showAllTags,\n setShouldIgnoreBlurAnimation,\n handleOnInputClick,\n isDropdownTrigger,\n visibleTagsCountRef,\n labelPrefix,\n isDisabled,\n numberOfLines,\n isTextArea,\n size,\n}: BaseInputTagSlotProps): React.ReactElement => {\n const hasTags = tags && tags.length > 0;\n const slotRef = React.useRef<HTMLDivElement>(null);\n const visibleTagsCount = useVisibleTagsCount({\n slotRef,\n tags,\n maxTagRows,\n visibleTagsCountRef,\n showAllTags,\n labelPrefix,\n });\n\n React.useEffect(() => {\n slotRef.current?.scrollTo?.({\n top:\n maxTagRows === 'multiple' || maxTagRows === 'expandable' ? slotRef.current.scrollHeight : 0,\n left: maxTagRows === 'single' ? slotRef.current.scrollWidth : 0,\n behavior: 'smooth',\n });\n }, [tags?.length, maxTagRows]);\n\n React.useEffect(() => {\n if (!showAllTags) {\n slotRef.current?.scrollTo?.({\n top: 0,\n left: 0,\n behavior: 'smooth',\n });\n } else if (maxTagRows === 'single') {\n // when its single line input and showAllTags is true, we scroll till item on focus\n slotRef.current?.scrollTo?.({\n top: 0,\n left: maxTagRows === 'single' ? slotRef.current.scrollWidth : 0,\n behavior: 'smooth',\n });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [showAllTags]);\n\n const visibleTags = React.useMemo(() => {\n return showAllTags ? tags : tags?.slice(0, visibleTagsCount);\n }, [showAllTags, tags, visibleTagsCount]);\n\n const invisibleTagsCount = React.useMemo(() => {\n if (tags && visibleTags) {\n return tags.length - visibleTags.length;\n }\n\n return 0;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [tags?.length, visibleTags?.length]);\n\n const isMobile = useIsMobile();\n\n if (!isDropdownTrigger) {\n // If its not dropdown trigger, we don't need to render tag containers\n return children;\n }\n\n // tag height changes in mobile and desktop so we keep different paddings to make it look as expected\n const paddingYWithTags = isMobile ? 'spacing.1' : 'spacing.2';\n\n return (\n <TagSlotContainer\n ref={slotRef}\n className=\"tags-slot\"\n paddingY={paddingYWithTags}\n paddingLeft=\"spacing.4\"\n display=\"flex\"\n flex=\"1\"\n flexWrap={maxTagRows === 'single' ? 'nowrap' : 'wrap'}\n overflowX=\"auto\"\n overflowY={showAllTags || maxTagRows === 'multiple' ? 'auto' : 'hidden'}\n minHeight={makeSize(baseInputHeight[size])}\n maxHeight={\n // In TextArea with tagged input, we explicitly define maxHeight based on maxHeight so that tags dont overflow out of textarea\n isDropdownTrigger && isTextArea\n ? makeSize(baseInputHeight[size] * (numberOfLines ?? 1))\n : undefined\n }\n onMouseDown={() => {\n setShouldIgnoreBlurAnimation?.(true);\n }}\n onClick={(e) => {\n handleOnInputClick(castWebType(e));\n }}\n onMouseUp={() => {\n setShouldIgnoreBlurAnimation?.(false);\n }}\n >\n {visibleTags}\n {tags && !showAllTags && invisibleTagsCount ? (\n <Text\n color={isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle'}\n alignSelf=\"center\"\n marginY=\"spacing.2\"\n marginRight=\"spacing.4\"\n variant=\"body\"\n size=\"small\"\n weight=\"regular\"\n >\n <BaseBox as=\"span\" whiteSpace=\"nowrap\">\n {visibleTags?.length === 0\n ? getSelectedTextWithoutTags({\n items: invisibleTagsCount,\n labelPrefix,\n })\n : `+${invisibleTagsCount} More`}\n </BaseBox>\n </Text>\n ) : null}\n <BaseBox\n marginTop=\"-4px\"\n minWidth={hasTags && renderAs === 'button' ? undefined : makeSize(MINUMUM_INPUT_SPACE)}\n width={hasTags && renderAs === 'button' ? makeSize(sizeToken['1']) : '100%'}\n >\n {children}\n </BaseBox>\n </TagSlotContainer>\n );\n};\n\nexport { BaseInputTagSlot };\n"],"names":["MINUMUM_INPUT_SPACE","PLUS_X_MORE_TEXT_WIDTH","TAG_MAX_WIDTH","sizeToken","useVisibleTagsCount","_ref","slotRef","tags","maxTagRows","visibleTagsCountRef","showAllTags","labelPrefix","_React$useState","React","useState","_React$useState2","_slicedToArray","visibleTagsCount","setVisibleTagsCount","visibleTagsCountStateRef","useRef","useIsomorphicLayoutEffect","_slotRef$current","_slotRef$current2","current","length","inputTagsSlotWidth","clientWidth","totalTagsWidth","allTagsEl","querySelectorAll","concat","MetaConstants","Tag","totalAvailableSpaceForTags","tagsCount","Math","floor","_iterator","_createForOfIteratorHelper","_step","s","n","done","tagEl","value","err","e","f","getSelectedTextWithoutTags","_ref2","items","TagSlotContainer","styled","BaseBox","withConfig","displayName","componentId","display","BaseInputTagSlot","_ref3","renderAs","children","setShouldIgnoreBlurAnimation","handleOnInputClick","isDropdownTrigger","isDisabled","numberOfLines","isTextArea","size","hasTags","useEffect","_slotRef$current3","_slotRef$current3$scr","scrollTo","call","top","scrollHeight","left","scrollWidth","behavior","_slotRef$current4","_slotRef$current4$scr","_slotRef$current5","_slotRef$current5$scr","visibleTags","useMemo","slice","invisibleTagsCount","isMobile","useIsMobile","paddingYWithTags","_jsxs","ref","className","paddingY","paddingLeft","flex","flexWrap","overflowX","overflowY","minHeight","makeSize","baseInputHeight","maxHeight","undefined","onMouseDown","onClick","castWebType","onMouseUp","_jsx","Text","color","alignSelf","marginY","marginRight","variant","weight","as","whiteSpace","marginTop","minWidth","width"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseInputTagSlot.web.js","sources":["../../../../../../../src/components/Input/BaseInput/BaseInputTagSlot.web.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\nimport type { BaseInputTagSlotProps } from './types';\nimport { baseInputHeight } from './baseInputTokens';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Text } from '~components/Typography';\nimport { castWebType, makeSize } from '~utils';\nimport { useIsomorphicLayoutEffect } from '~utils/useIsomorphicLayoutEffect';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { MetaConstants } from '~utils/metaAttribute';\nimport { size as sizeToken } from '~tokens/global';\nimport { useTableEditableCell } from '~components/Table/TableEditableCellContext';\n\nconst MINUMUM_INPUT_SPACE = 60;\nconst PLUS_X_MORE_TEXT_WIDTH = 60;\nconst TAG_MAX_WIDTH: number = sizeToken['140'];\n\nconst useVisibleTagsCount = ({\n slotRef,\n tags,\n maxTagRows,\n visibleTagsCountRef,\n showAllTags,\n labelPrefix,\n}: {\n slotRef: React.RefObject<HTMLDivElement>;\n tags: BaseInputTagSlotProps['tags'];\n maxTagRows: BaseInputTagSlotProps['maxTagRows'];\n visibleTagsCountRef: BaseInputTagSlotProps['visibleTagsCountRef'];\n showAllTags: BaseInputTagSlotProps['showAllTags'];\n labelPrefix: BaseInputTagSlotProps['labelPrefix'];\n}): number => {\n const [visibleTagsCount, setVisibleTagsCount] = React.useState(0);\n const visibleTagsCountStateRef = React.useRef<number>(0);\n const { isInsideTableEditableCell } = useTableEditableCell();\n\n useIsomorphicLayoutEffect(() => {\n if (!tags || labelPrefix || isInsideTableEditableCell) {\n setVisibleTagsCount(0);\n return;\n }\n\n if (maxTagRows === 'multiple' || showAllTags) {\n visibleTagsCountRef.current = tags.length;\n setVisibleTagsCount(tags.length);\n return;\n }\n\n const inputTagsSlotWidth = slotRef.current?.clientWidth;\n visibleTagsCountStateRef.current = 0;\n let totalTagsWidth = 0;\n\n if (!inputTagsSlotWidth) {\n return;\n }\n\n const allTagsEl = slotRef.current?.querySelectorAll(\n `[data-blade-component=\"${MetaConstants.Tag}\"]`,\n );\n\n const totalAvailableSpaceForTags =\n inputTagsSlotWidth - (MINUMUM_INPUT_SPACE + PLUS_X_MORE_TEXT_WIDTH);\n\n if (allTagsEl.length !== tags.length) {\n // some weird edge cases in controlled select where tags are not rendered in children\n // we assume 140px (max-width of tag as width of all tags)\n const tagsCount = Math.floor((totalAvailableSpaceForTags / TAG_MAX_WIDTH) * tags.length);\n visibleTagsCountRef.current = tagsCount;\n setVisibleTagsCount(tagsCount);\n return;\n }\n\n for (const tagEl of allTagsEl) {\n totalTagsWidth += tagEl.clientWidth;\n if (totalTagsWidth >= totalAvailableSpaceForTags) {\n break;\n } else {\n visibleTagsCountStateRef.current++;\n }\n }\n\n visibleTagsCountRef.current = visibleTagsCountStateRef.current;\n setVisibleTagsCount(visibleTagsCountStateRef.current);\n }, [tags?.length, showAllTags]);\n\n return visibleTagsCount;\n};\n\nconst getSelectedTextWithoutTags = ({\n items,\n labelPrefix,\n}: {\n items: number;\n labelPrefix?: string;\n}): string => {\n if (labelPrefix) {\n return `${labelPrefix} (${items} Selected)`;\n }\n\n return `${items} Selected`;\n};\n\nconst TagSlotContainer = styled(BaseBox)(() => {\n return {\n // hides the scrollbar of tagslot\n '::-webkit-scrollbar': {\n display: 'none',\n },\n '-ms-overflow-style': 'none',\n 'scrollbar-width': 'none',\n };\n});\n\nconst SelectedCountText = ({\n children,\n isDisabled,\n}: {\n children: string;\n isDisabled?: boolean;\n}): React.ReactElement => {\n return (\n <Text\n color={isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle'}\n alignSelf=\"center\"\n marginY=\"spacing.2\"\n marginRight=\"spacing.4\"\n variant=\"body\"\n size=\"small\"\n weight=\"regular\"\n >\n <BaseBox as=\"span\" whiteSpace=\"nowrap\">\n {children}\n </BaseBox>\n </Text>\n );\n};\n\nconst BaseInputTagSlot = ({\n renderAs,\n children,\n tags,\n maxTagRows,\n showAllTags,\n setShouldIgnoreBlurAnimation,\n handleOnInputClick,\n isDropdownTrigger,\n visibleTagsCountRef,\n labelPrefix,\n isDisabled,\n numberOfLines,\n isTextArea,\n size,\n}: BaseInputTagSlotProps): React.ReactElement => {\n const hasTags = tags && tags.length > 0;\n const slotRef = React.useRef<HTMLDivElement>(null);\n const { isInsideTableEditableCell } = useTableEditableCell();\n const visibleTagsCount = useVisibleTagsCount({\n slotRef,\n tags,\n maxTagRows,\n visibleTagsCountRef,\n showAllTags,\n labelPrefix,\n });\n\n React.useEffect(() => {\n slotRef.current?.scrollTo?.({\n top:\n maxTagRows === 'multiple' || maxTagRows === 'expandable' ? slotRef.current.scrollHeight : 0,\n left: maxTagRows === 'single' ? slotRef.current.scrollWidth : 0,\n behavior: 'smooth',\n });\n }, [tags?.length, maxTagRows]);\n\n React.useEffect(() => {\n if (!showAllTags) {\n slotRef.current?.scrollTo?.({\n top: 0,\n left: 0,\n behavior: 'smooth',\n });\n } else if (maxTagRows === 'single') {\n // when its single line input and showAllTags is true, we scroll till item on focus\n slotRef.current?.scrollTo?.({\n top: 0,\n left: maxTagRows === 'single' ? slotRef.current.scrollWidth : 0,\n behavior: 'smooth',\n });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [showAllTags]);\n\n const visibleTags = React.useMemo(() => {\n return showAllTags ? tags : tags?.slice(0, visibleTagsCount);\n }, [showAllTags, tags, visibleTagsCount]);\n\n const invisibleTagsCount = React.useMemo(() => {\n if (tags && visibleTags) {\n return tags.length - visibleTags.length;\n }\n\n return 0;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [tags?.length, visibleTags?.length]);\n\n const isMobile = useIsMobile();\n\n if (!isDropdownTrigger) {\n // If its not dropdown trigger, we don't need to render tag containers\n return children;\n }\n\n // tag height changes in mobile and desktop so we keep different paddings to make it look as expected\n const paddingYWithTags = isMobile ? 'spacing.1' : 'spacing.2';\n\n return (\n <TagSlotContainer\n ref={slotRef}\n className=\"tags-slot\"\n paddingY={paddingYWithTags}\n paddingLeft=\"spacing.4\"\n display=\"flex\"\n flex=\"1\"\n flexWrap={maxTagRows === 'single' ? 'nowrap' : 'wrap'}\n overflowX=\"auto\"\n overflowY={showAllTags || maxTagRows === 'multiple' ? 'auto' : 'hidden'}\n minHeight={makeSize(baseInputHeight[size])}\n maxHeight={\n // In TextArea with tagged input, we explicitly define maxHeight based on maxHeight so that tags dont overflow out of textarea\n // And In table we strictly want the maxHeight to be defined to not mess up the table layout\n (isDropdownTrigger && isTextArea) || isInsideTableEditableCell\n ? makeSize(baseInputHeight[size] * (numberOfLines ?? 1))\n : undefined\n }\n onMouseDown={() => {\n setShouldIgnoreBlurAnimation?.(true);\n }}\n onClick={(e) => {\n handleOnInputClick(castWebType(e));\n }}\n onMouseUp={() => {\n setShouldIgnoreBlurAnimation?.(false);\n }}\n >\n {isInsideTableEditableCell && tags && tags.length > 0 ? (\n <SelectedCountText isDisabled={isDisabled}>\n {getSelectedTextWithoutTags({ items: tags.length, labelPrefix })}\n </SelectedCountText>\n ) : (\n <>\n {visibleTags}\n {tags && !showAllTags && invisibleTagsCount ? (\n <SelectedCountText isDisabled={isDisabled}>\n {visibleTags?.length === 0\n ? getSelectedTextWithoutTags({\n items: invisibleTagsCount,\n labelPrefix,\n })\n : `+${invisibleTagsCount} More`}\n </SelectedCountText>\n ) : null}\n </>\n )}\n <BaseBox\n marginTop=\"-4px\"\n minWidth={\n hasTags && renderAs === 'button'\n ? undefined\n : `min(20%, ${makeSize(MINUMUM_INPUT_SPACE)})`\n }\n width={hasTags && renderAs === 'button' ? makeSize(sizeToken['1']) : '100%'}\n >\n {children}\n </BaseBox>\n </TagSlotContainer>\n );\n};\n\nexport { BaseInputTagSlot };\n"],"names":["MINUMUM_INPUT_SPACE","PLUS_X_MORE_TEXT_WIDTH","TAG_MAX_WIDTH","sizeToken","useVisibleTagsCount","_ref","slotRef","tags","maxTagRows","visibleTagsCountRef","showAllTags","labelPrefix","_React$useState","React","useState","_React$useState2","_slicedToArray","visibleTagsCount","setVisibleTagsCount","visibleTagsCountStateRef","useRef","_useTableEditableCell","useTableEditableCell","isInsideTableEditableCell","useIsomorphicLayoutEffect","_slotRef$current","_slotRef$current2","current","length","inputTagsSlotWidth","clientWidth","totalTagsWidth","allTagsEl","querySelectorAll","concat","MetaConstants","Tag","totalAvailableSpaceForTags","tagsCount","Math","floor","_iterator","_createForOfIteratorHelper","_step","s","n","done","tagEl","value","err","e","f","getSelectedTextWithoutTags","_ref2","items","TagSlotContainer","styled","BaseBox","withConfig","displayName","componentId","display","SelectedCountText","_ref3","children","isDisabled","_jsx","Text","color","alignSelf","marginY","marginRight","variant","size","weight","as","whiteSpace","BaseInputTagSlot","_ref4","renderAs","setShouldIgnoreBlurAnimation","handleOnInputClick","isDropdownTrigger","numberOfLines","isTextArea","hasTags","_useTableEditableCell2","useEffect","_slotRef$current3","_slotRef$current3$scr","scrollTo","call","top","scrollHeight","left","scrollWidth","behavior","_slotRef$current4","_slotRef$current4$scr","_slotRef$current5","_slotRef$current5$scr","visibleTags","useMemo","slice","invisibleTagsCount","isMobile","useIsMobile","paddingYWithTags","_jsxs","ref","className","paddingY","paddingLeft","flex","flexWrap","overflowX","overflowY","minHeight","makeSize","baseInputHeight","maxHeight","undefined","onMouseDown","onClick","castWebType","onMouseUp","_Fragment","marginTop","minWidth","width"],"mappings":"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"}
|
|
@@ -141,8 +141,8 @@ var ValidationIconTooltip = function ValidationIconTooltip(_ref7) {
|
|
|
141
141
|
validationState = _ref7.validationState,
|
|
142
142
|
errorText = _ref7.errorText,
|
|
143
143
|
successText = _ref7.successText,
|
|
144
|
-
|
|
145
|
-
if (
|
|
144
|
+
showHintsAsTooltip = _ref7.showHintsAsTooltip;
|
|
145
|
+
if (showHintsAsTooltip && validationState === 'error' && errorText || validationState === 'success' && successText) {
|
|
146
146
|
return /*#__PURE__*/jsx(Tooltip, {
|
|
147
147
|
content: getTooltipContent({
|
|
148
148
|
validationState: validationState,
|
|
@@ -170,7 +170,7 @@ var BaseInputVisuals = function BaseInputVisuals(_ref8) {
|
|
|
170
170
|
_ref8$validationState = _ref8.validationState,
|
|
171
171
|
validationState = _ref8$validationState === void 0 ? 'none' : _ref8$validationState,
|
|
172
172
|
size = _ref8.size,
|
|
173
|
-
|
|
173
|
+
showHintsAsTooltip = _ref8.showHintsAsTooltip,
|
|
174
174
|
errorText = _ref8.errorText,
|
|
175
175
|
successText = _ref8.successText,
|
|
176
176
|
TrailingButton = _ref8.trailingButton;
|
|
@@ -272,7 +272,7 @@ var BaseInputVisuals = function BaseInputVisuals(_ref8) {
|
|
|
272
272
|
hasTrailingButton: hasTrailingButton
|
|
273
273
|
})), {}, {
|
|
274
274
|
children: /*#__PURE__*/jsx(ValidationIconTooltip, {
|
|
275
|
-
|
|
275
|
+
showHintsAsTooltip: showHintsAsTooltip,
|
|
276
276
|
errorText: errorText,
|
|
277
277
|
successText: successText,
|
|
278
278
|
validationState: validationState,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseInputVisuals.js","sources":["../../../../../../../src/components/Input/BaseInput/BaseInputVisuals.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/explicit-function-return-type */\nimport React from 'react';\nimport type { ReactElement } from 'react';\nimport type { BaseInputProps } from './BaseInput';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Text } from '~components/Typography';\nimport type { BaseBoxProps, SpacingValueType } from '~components/Box/BaseBox';\nimport type { IconColors } from '~components/Icons';\nimport { isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { throwBladeError } from '~utils/logger';\nimport { Tooltip } from '~components/Tooltip';\nimport { Box } from '~components/Box';\n\ntype InputVisuals = Pick<\n BaseInputProps,\n | 'leadingIcon'\n | 'prefix'\n | 'trailingInteractionElement'\n | 'leadingInteractionElement'\n | 'suffix'\n | 'trailingIcon'\n | 'isDisabled'\n | 'validationState'\n | 'size'\n | 'trailingButton'\n | 'isTableInputCell'\n | 'errorText'\n | 'successText'\n> & {\n size: NonNullable<BaseInputProps['size']>;\n};\n\nconst getVisualContainerStyles = (): Pick<\n BaseBoxProps,\n 'display' | 'flexDirection' | 'alignItems' | 'alignSelf'\n> => ({\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n alignSelf: 'center',\n});\n\nconst trailingIconColor: Record<NonNullable<InputVisuals['validationState']>, IconColors> = {\n none: 'surface.icon.gray.subtle',\n error: 'feedback.icon.negative.intense',\n success: 'feedback.icon.positive.intense',\n};\n\nconst iconSize = {\n medium: 'medium',\n large: 'large',\n} as const;\n\nconst textSize = {\n medium: 'medium',\n large: 'large',\n} as const;\n\nconst getPrefixStyles = ({\n hasLeadingIcon,\n hasPrefix,\n}: {\n hasLeadingIcon: boolean;\n hasPrefix: boolean;\n}): Pick<BaseBoxProps, 'paddingLeft'> => {\n if (hasPrefix && hasLeadingIcon) {\n return {\n paddingLeft: 'spacing.3',\n };\n }\n\n if (hasPrefix && !hasLeadingIcon) {\n return {\n paddingLeft: 'spacing.4',\n };\n }\n\n return {\n paddingLeft: 'spacing.0',\n };\n};\n\nconst getInteractionElementStyles = ({\n hasTrailingIcon,\n hasLeadingInteractionElement,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingButton,\n}: {\n hasTrailingIcon: boolean;\n hasLeadingInteractionElement?: boolean;\n hasTrailingInteractionElement?: boolean;\n hasSuffix: boolean;\n hasTrailingButton: boolean;\n}): SpacingValueType => {\n if (hasTrailingInteractionElement && (hasSuffix || hasTrailingIcon || hasTrailingButton)) {\n return 'spacing.2';\n }\n\n if (hasTrailingInteractionElement && !hasSuffix && !hasTrailingIcon && !hasTrailingButton) {\n return 'spacing.4';\n }\n\n if (hasLeadingInteractionElement) {\n return 'spacing.3';\n }\n\n return 'spacing.0';\n};\n\nconst getSuffixStyles = ({\n hasTrailingIcon,\n hasSuffix,\n hasTrailingButton,\n}: {\n hasTrailingIcon: boolean;\n hasSuffix: boolean;\n hasTrailingButton: boolean;\n}): Pick<BaseBoxProps, 'paddingRight'> => {\n if (hasSuffix && (hasTrailingIcon || hasTrailingButton)) {\n return {\n paddingRight: 'spacing.3',\n };\n }\n\n if (hasSuffix && !hasTrailingIcon && !hasTrailingButton) {\n return {\n paddingRight: 'spacing.4',\n };\n }\n\n return {\n paddingRight: 'spacing.0',\n };\n};\n\nconst getTrailingIconStyles = ({\n hasTrailingIcon,\n hasTrailingButton,\n}: {\n hasTrailingIcon: boolean;\n hasTrailingButton: boolean;\n}): Pick<BaseBoxProps, 'paddingRight'> => {\n if (hasTrailingIcon && hasTrailingButton) {\n return {\n paddingRight: 'spacing.3',\n };\n }\n\n if (hasTrailingIcon && !hasTrailingButton) {\n return {\n paddingRight: 'spacing.4',\n };\n }\n\n return {\n paddingRight: 'spacing.0',\n };\n};\n\nexport const getInputVisualsToBeRendered = ({\n leadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n trailingButton,\n}: InputVisuals) => ({\n hasLeadingIcon: Boolean(leadingIcon),\n hasPrefix: Boolean(prefix),\n hasTrailingInteractionElement: Boolean(trailingInteractionElement),\n hasLeadingInteractionElement: Boolean(leadingInteractionElement),\n hasSuffix: Boolean(suffix),\n hasTrailingIcon: Boolean(trailingIcon),\n hasTrailingButton: Boolean(trailingButton),\n});\n\nconst getTooltipContent = ({\n validationState,\n errorText,\n successText,\n}: {\n validationState: BaseInputProps['validationState'];\n errorText: BaseInputProps['errorText'];\n successText: BaseInputProps['errorText'];\n}): string => {\n if (validationState === 'error' && errorText) {\n return errorText;\n }\n\n if (validationState === 'success' && successText) {\n return successText;\n }\n\n return '';\n};\n\nconst ValidationIconTooltip = ({\n children,\n validationState,\n errorText,\n successText,\n isTableInputCell,\n}: {\n children: ReactElement;\n validationState: BaseInputProps['validationState'];\n errorText: BaseInputProps['errorText'];\n successText: BaseInputProps['errorText'];\n isTableInputCell: BaseInputProps['isTableInputCell'];\n}) => {\n if (\n (isTableInputCell && validationState === 'error' && errorText) ||\n (validationState === 'success' && successText)\n ) {\n return (\n <Tooltip content={getTooltipContent({ validationState, errorText, successText })}>\n <Box display=\"flex\" justifyContent=\"center\" alignItems=\"center\">\n {children}\n </Box>\n </Tooltip>\n );\n }\n\n return children;\n};\n\nexport const BaseInputVisuals = ({\n leadingIcon: LeadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon: TrailingIcon,\n isDisabled,\n validationState = 'none',\n size,\n isTableInputCell,\n errorText,\n successText,\n trailingButton: TrailingButton,\n}: InputVisuals): ReactElement | null => {\n const {\n hasLeadingIcon,\n hasPrefix,\n hasSuffix,\n hasTrailingInteractionElement,\n hasLeadingInteractionElement,\n hasTrailingIcon,\n hasTrailingButton,\n } = getInputVisualsToBeRendered({\n leadingIcon: LeadingIcon,\n prefix,\n leadingInteractionElement,\n trailingInteractionElement,\n suffix,\n trailingIcon: TrailingIcon,\n trailingButton: TrailingButton,\n size,\n });\n\n const hasLeadingVisuals = hasLeadingInteractionElement || hasLeadingIcon || hasPrefix;\n const hasTrailingVisuals =\n hasTrailingInteractionElement || hasSuffix || hasTrailingIcon || hasTrailingButton;\n\n if (__DEV__) {\n if (hasTrailingButton && !isValidAllowedChildren(TrailingButton, 'Link')) {\n throwBladeError({\n message: 'trailingButton must be a valid Blade Link component',\n moduleName: 'BaseInput',\n });\n }\n }\n\n if (hasLeadingVisuals) {\n return (\n <BaseBox {...getVisualContainerStyles()}>\n {hasLeadingInteractionElement ? (\n <BaseBox\n paddingLeft={getInteractionElementStyles({\n hasTrailingIcon,\n hasLeadingInteractionElement,\n hasSuffix,\n hasTrailingButton,\n })}\n display=\"flex\"\n alignItems=\"stretch\"\n alignSelf=\"stretch\"\n >\n {leadingInteractionElement}\n </BaseBox>\n ) : null}\n {LeadingIcon ? (\n <BaseBox paddingLeft=\"spacing.4\" display=\"flex\">\n <LeadingIcon\n size={iconSize[size]}\n color={isDisabled ? 'surface.icon.gray.disabled' : 'surface.icon.gray.muted'}\n />\n </BaseBox>\n ) : null}\n {hasPrefix ? (\n <BaseBox {...getPrefixStyles({ hasLeadingIcon, hasPrefix })}>\n <Text\n size={textSize[size]}\n variant=\"body\"\n weight=\"regular\"\n color={isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle'}\n >\n {prefix}\n </Text>\n </BaseBox>\n ) : null}\n </BaseBox>\n );\n }\n\n if (hasTrailingVisuals) {\n return (\n <BaseBox alignSelf=\"stretch\" alignItems=\"stretch\" {...getVisualContainerStyles()}>\n {hasTrailingInteractionElement ? (\n <BaseBox\n paddingRight={getInteractionElementStyles({\n hasTrailingIcon,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingButton,\n })}\n display=\"flex\"\n alignItems=\"stretch\"\n alignSelf=\"stretch\"\n >\n {trailingInteractionElement}\n </BaseBox>\n ) : null}\n {hasSuffix ? (\n <BaseBox {...getSuffixStyles({ hasTrailingIcon, hasSuffix, hasTrailingButton })}>\n <Text\n size={textSize[size]}\n variant=\"body\"\n weight=\"regular\"\n color={isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle'}\n >\n {suffix}\n </Text>\n </BaseBox>\n ) : null}\n {TrailingIcon ? (\n <BaseBox\n display=\"flex\"\n justifyContent=\"center\"\n alignItems=\"center\"\n {...getTrailingIconStyles({ hasTrailingIcon, hasTrailingButton })}\n >\n <ValidationIconTooltip\n isTableInputCell={isTableInputCell}\n errorText={errorText}\n successText={successText}\n validationState={validationState}\n >\n <TrailingIcon\n size={iconSize[size]}\n color={\n isDisabled ? 'interactive.icon.gray.disabled' : trailingIconColor[validationState]\n }\n />\n </ValidationIconTooltip>\n </BaseBox>\n ) : null}\n {TrailingButton ? (\n <BaseBox paddingRight=\"spacing.4\" display=\"flex\">\n {React.cloneElement(TrailingButton, {\n size,\n variant: 'button',\n isDisabled,\n })}\n </BaseBox>\n ) : null}\n </BaseBox>\n );\n }\n\n return null;\n};\n"],"names":["getVisualContainerStyles","display","flexDirection","alignItems","alignSelf","trailingIconColor","none","error","success","iconSize","medium","large","textSize","getPrefixStyles","_ref","hasLeadingIcon","hasPrefix","paddingLeft","getInteractionElementStyles","_ref2","hasTrailingIcon","hasLeadingInteractionElement","hasTrailingInteractionElement","hasSuffix","hasTrailingButton","getSuffixStyles","_ref3","paddingRight","getTrailingIconStyles","_ref4","getInputVisualsToBeRendered","_ref5","leadingIcon","prefix","trailingInteractionElement","leadingInteractionElement","suffix","trailingIcon","trailingButton","Boolean","getTooltipContent","_ref6","validationState","errorText","successText","ValidationIconTooltip","_ref7","children","isTableInputCell","_jsx","Tooltip","content","Box","justifyContent","BaseInputVisuals","_ref8","LeadingIcon","TrailingIcon","isDisabled","_ref8$validationState","size","TrailingButton","_getInputVisualsToBeR","hasLeadingVisuals","hasTrailingVisuals","isValidAllowedChildren","throwBladeError","message","moduleName","_jsxs","BaseBox","_objectSpread","color","Text","variant","weight","React","cloneElement"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseInputVisuals.js","sources":["../../../../../../../src/components/Input/BaseInput/BaseInputVisuals.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/explicit-function-return-type */\nimport React from 'react';\nimport type { ReactElement } from 'react';\nimport type { BaseInputProps } from './BaseInput';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Text } from '~components/Typography';\nimport type { BaseBoxProps, SpacingValueType } from '~components/Box/BaseBox';\nimport type { IconColors } from '~components/Icons';\nimport { isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { throwBladeError } from '~utils/logger';\nimport { Tooltip } from '~components/Tooltip';\nimport { Box } from '~components/Box';\n\ntype InputVisuals = Pick<\n BaseInputProps,\n | 'leadingIcon'\n | 'prefix'\n | 'trailingInteractionElement'\n | 'leadingInteractionElement'\n | 'suffix'\n | 'trailingIcon'\n | 'isDisabled'\n | 'validationState'\n | 'size'\n | 'trailingButton'\n | 'showHintsAsTooltip'\n | 'errorText'\n | 'successText'\n> & {\n size: NonNullable<BaseInputProps['size']>;\n};\n\nconst getVisualContainerStyles = (): Pick<\n BaseBoxProps,\n 'display' | 'flexDirection' | 'alignItems' | 'alignSelf'\n> => ({\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n alignSelf: 'center',\n});\n\nconst trailingIconColor: Record<NonNullable<InputVisuals['validationState']>, IconColors> = {\n none: 'surface.icon.gray.subtle',\n error: 'feedback.icon.negative.intense',\n success: 'feedback.icon.positive.intense',\n};\n\nconst iconSize = {\n medium: 'medium',\n large: 'large',\n} as const;\n\nconst textSize = {\n medium: 'medium',\n large: 'large',\n} as const;\n\nconst getPrefixStyles = ({\n hasLeadingIcon,\n hasPrefix,\n}: {\n hasLeadingIcon: boolean;\n hasPrefix: boolean;\n}): Pick<BaseBoxProps, 'paddingLeft'> => {\n if (hasPrefix && hasLeadingIcon) {\n return {\n paddingLeft: 'spacing.3',\n };\n }\n\n if (hasPrefix && !hasLeadingIcon) {\n return {\n paddingLeft: 'spacing.4',\n };\n }\n\n return {\n paddingLeft: 'spacing.0',\n };\n};\n\nconst getInteractionElementStyles = ({\n hasTrailingIcon,\n hasLeadingInteractionElement,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingButton,\n}: {\n hasTrailingIcon: boolean;\n hasLeadingInteractionElement?: boolean;\n hasTrailingInteractionElement?: boolean;\n hasSuffix: boolean;\n hasTrailingButton: boolean;\n}): SpacingValueType => {\n if (hasTrailingInteractionElement && (hasSuffix || hasTrailingIcon || hasTrailingButton)) {\n return 'spacing.2';\n }\n\n if (hasTrailingInteractionElement && !hasSuffix && !hasTrailingIcon && !hasTrailingButton) {\n return 'spacing.4';\n }\n\n if (hasLeadingInteractionElement) {\n return 'spacing.3';\n }\n\n return 'spacing.0';\n};\n\nconst getSuffixStyles = ({\n hasTrailingIcon,\n hasSuffix,\n hasTrailingButton,\n}: {\n hasTrailingIcon: boolean;\n hasSuffix: boolean;\n hasTrailingButton: boolean;\n}): Pick<BaseBoxProps, 'paddingRight'> => {\n if (hasSuffix && (hasTrailingIcon || hasTrailingButton)) {\n return {\n paddingRight: 'spacing.3',\n };\n }\n\n if (hasSuffix && !hasTrailingIcon && !hasTrailingButton) {\n return {\n paddingRight: 'spacing.4',\n };\n }\n\n return {\n paddingRight: 'spacing.0',\n };\n};\n\nconst getTrailingIconStyles = ({\n hasTrailingIcon,\n hasTrailingButton,\n}: {\n hasTrailingIcon: boolean;\n hasTrailingButton: boolean;\n}): Pick<BaseBoxProps, 'paddingRight'> => {\n if (hasTrailingIcon && hasTrailingButton) {\n return {\n paddingRight: 'spacing.3',\n };\n }\n\n if (hasTrailingIcon && !hasTrailingButton) {\n return {\n paddingRight: 'spacing.4',\n };\n }\n\n return {\n paddingRight: 'spacing.0',\n };\n};\n\nexport const getInputVisualsToBeRendered = ({\n leadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n trailingButton,\n}: InputVisuals) => ({\n hasLeadingIcon: Boolean(leadingIcon),\n hasPrefix: Boolean(prefix),\n hasTrailingInteractionElement: Boolean(trailingInteractionElement),\n hasLeadingInteractionElement: Boolean(leadingInteractionElement),\n hasSuffix: Boolean(suffix),\n hasTrailingIcon: Boolean(trailingIcon),\n hasTrailingButton: Boolean(trailingButton),\n});\n\nconst getTooltipContent = ({\n validationState,\n errorText,\n successText,\n}: {\n validationState: BaseInputProps['validationState'];\n errorText: BaseInputProps['errorText'];\n successText: BaseInputProps['errorText'];\n}): string => {\n if (validationState === 'error' && errorText) {\n return errorText;\n }\n\n if (validationState === 'success' && successText) {\n return successText;\n }\n\n return '';\n};\n\nconst ValidationIconTooltip = ({\n children,\n validationState,\n errorText,\n successText,\n showHintsAsTooltip,\n}: {\n children: ReactElement;\n validationState: BaseInputProps['validationState'];\n errorText: BaseInputProps['errorText'];\n successText: BaseInputProps['errorText'];\n showHintsAsTooltip: BaseInputProps['showHintsAsTooltip'];\n}) => {\n if (\n (showHintsAsTooltip && validationState === 'error' && errorText) ||\n (validationState === 'success' && successText)\n ) {\n return (\n <Tooltip content={getTooltipContent({ validationState, errorText, successText })}>\n <Box display=\"flex\" justifyContent=\"center\" alignItems=\"center\">\n {children}\n </Box>\n </Tooltip>\n );\n }\n\n return children;\n};\n\nexport const BaseInputVisuals = ({\n leadingIcon: LeadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon: TrailingIcon,\n isDisabled,\n validationState = 'none',\n size,\n showHintsAsTooltip,\n errorText,\n successText,\n trailingButton: TrailingButton,\n}: InputVisuals): ReactElement | null => {\n const {\n hasLeadingIcon,\n hasPrefix,\n hasSuffix,\n hasTrailingInteractionElement,\n hasLeadingInteractionElement,\n hasTrailingIcon,\n hasTrailingButton,\n } = getInputVisualsToBeRendered({\n leadingIcon: LeadingIcon,\n prefix,\n leadingInteractionElement,\n trailingInteractionElement,\n suffix,\n trailingIcon: TrailingIcon,\n trailingButton: TrailingButton,\n size,\n });\n\n const hasLeadingVisuals = hasLeadingInteractionElement || hasLeadingIcon || hasPrefix;\n const hasTrailingVisuals =\n hasTrailingInteractionElement || hasSuffix || hasTrailingIcon || hasTrailingButton;\n\n if (__DEV__) {\n if (hasTrailingButton && !isValidAllowedChildren(TrailingButton, 'Link')) {\n throwBladeError({\n message: 'trailingButton must be a valid Blade Link component',\n moduleName: 'BaseInput',\n });\n }\n }\n\n if (hasLeadingVisuals) {\n return (\n <BaseBox {...getVisualContainerStyles()}>\n {hasLeadingInteractionElement ? (\n <BaseBox\n paddingLeft={getInteractionElementStyles({\n hasTrailingIcon,\n hasLeadingInteractionElement,\n hasSuffix,\n hasTrailingButton,\n })}\n display=\"flex\"\n alignItems=\"stretch\"\n alignSelf=\"stretch\"\n >\n {leadingInteractionElement}\n </BaseBox>\n ) : null}\n {LeadingIcon ? (\n <BaseBox paddingLeft=\"spacing.4\" display=\"flex\">\n <LeadingIcon\n size={iconSize[size]}\n color={isDisabled ? 'surface.icon.gray.disabled' : 'surface.icon.gray.muted'}\n />\n </BaseBox>\n ) : null}\n {hasPrefix ? (\n <BaseBox {...getPrefixStyles({ hasLeadingIcon, hasPrefix })}>\n <Text\n size={textSize[size]}\n variant=\"body\"\n weight=\"regular\"\n color={isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle'}\n >\n {prefix}\n </Text>\n </BaseBox>\n ) : null}\n </BaseBox>\n );\n }\n\n if (hasTrailingVisuals) {\n return (\n <BaseBox alignSelf=\"stretch\" alignItems=\"stretch\" {...getVisualContainerStyles()}>\n {hasTrailingInteractionElement ? (\n <BaseBox\n paddingRight={getInteractionElementStyles({\n hasTrailingIcon,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingButton,\n })}\n display=\"flex\"\n alignItems=\"stretch\"\n alignSelf=\"stretch\"\n >\n {trailingInteractionElement}\n </BaseBox>\n ) : null}\n {hasSuffix ? (\n <BaseBox {...getSuffixStyles({ hasTrailingIcon, hasSuffix, hasTrailingButton })}>\n <Text\n size={textSize[size]}\n variant=\"body\"\n weight=\"regular\"\n color={isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle'}\n >\n {suffix}\n </Text>\n </BaseBox>\n ) : null}\n {TrailingIcon ? (\n <BaseBox\n display=\"flex\"\n justifyContent=\"center\"\n alignItems=\"center\"\n {...getTrailingIconStyles({ hasTrailingIcon, hasTrailingButton })}\n >\n <ValidationIconTooltip\n showHintsAsTooltip={showHintsAsTooltip}\n errorText={errorText}\n successText={successText}\n validationState={validationState}\n >\n <TrailingIcon\n size={iconSize[size]}\n color={\n isDisabled ? 'interactive.icon.gray.disabled' : trailingIconColor[validationState]\n }\n />\n </ValidationIconTooltip>\n </BaseBox>\n ) : null}\n {TrailingButton ? (\n <BaseBox paddingRight=\"spacing.4\" display=\"flex\">\n {React.cloneElement(TrailingButton, {\n size,\n variant: 'button',\n isDisabled,\n })}\n </BaseBox>\n ) : null}\n </BaseBox>\n );\n }\n\n return null;\n};\n"],"names":["getVisualContainerStyles","display","flexDirection","alignItems","alignSelf","trailingIconColor","none","error","success","iconSize","medium","large","textSize","getPrefixStyles","_ref","hasLeadingIcon","hasPrefix","paddingLeft","getInteractionElementStyles","_ref2","hasTrailingIcon","hasLeadingInteractionElement","hasTrailingInteractionElement","hasSuffix","hasTrailingButton","getSuffixStyles","_ref3","paddingRight","getTrailingIconStyles","_ref4","getInputVisualsToBeRendered","_ref5","leadingIcon","prefix","trailingInteractionElement","leadingInteractionElement","suffix","trailingIcon","trailingButton","Boolean","getTooltipContent","_ref6","validationState","errorText","successText","ValidationIconTooltip","_ref7","children","showHintsAsTooltip","_jsx","Tooltip","content","Box","justifyContent","BaseInputVisuals","_ref8","LeadingIcon","TrailingIcon","isDisabled","_ref8$validationState","size","TrailingButton","_getInputVisualsToBeR","hasLeadingVisuals","hasTrailingVisuals","isValidAllowedChildren","throwBladeError","message","moduleName","_jsxs","BaseBox","_objectSpread","color","Text","variant","weight","React","cloneElement"],"mappings":"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"}
|
|
@@ -130,6 +130,8 @@ var getBaseInputStyles = function getBaseInputStyles(_ref5) {
|
|
|
130
130
|
hasTrailingIcon = _getInputVisualsToBeR.hasTrailingIcon;
|
|
131
131
|
var isDropdownWithTags = isDropdownTrigger && hasTags;
|
|
132
132
|
var isReactNative = getPlatformType() === 'react-native';
|
|
133
|
+
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
|
|
134
|
+
var shouldHaveFlexibleHeight = isTextArea || isDropdownWithTags;
|
|
133
135
|
return _objectSpread(_objectSpread({}, valueComponentType === 'heading' ? getHeadingStyles({
|
|
134
136
|
size: size,
|
|
135
137
|
weight: 'regular',
|
|
@@ -163,8 +165,8 @@ var getBaseInputStyles = function getBaseInputStyles(_ref5) {
|
|
|
163
165
|
}),
|
|
164
166
|
textAlign: textAlign,
|
|
165
167
|
width: '100%',
|
|
166
|
-
height:
|
|
167
|
-
minHeight:
|
|
168
|
+
height: shouldHaveFlexibleHeight ? undefined : makeSpace(baseInputHeight[size]),
|
|
169
|
+
minHeight: shouldHaveFlexibleHeight ? undefined : makeSpace(baseInputHeight[size])
|
|
168
170
|
}, isReactNative ? {} : {
|
|
169
171
|
resize: 'none'
|
|
170
172
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseInputStyles.js","sources":["../../../../../../../src/components/Input/BaseInput/baseInputStyles.ts"],"sourcesContent":["import type { CSSObject } from 'styled-components';\nimport type { BaseInputProps } from './BaseInput';\nimport { getBaseInputBorderStyles } from './getBaseInputBorderStyles';\nimport {\n baseInputBackgroundColor,\n baseInputBorderColor,\n baseInputBorderWidth,\n baseInputBorderlessBackgroundColor,\n baseInputHeight,\n baseInputPaddingTokens,\n baseInputWrapperMaxHeight,\n} from './baseInputTokens';\nimport { getInputVisualsToBeRendered } from './BaseInputVisuals';\nimport type { BaseInputWrapperProps } from './types';\nimport type { Theme } from '~components/BladeProvider';\nimport getTextStyles from '~components/Typography/Text/getTextStyles';\nimport { makeSpace } from '~utils/makeSpace';\nimport { makeBorderSize } from '~utils/makeBorderSize';\nimport { getPlatformType } from '~utils';\nimport getIn from '~utils/lodashButBetter/get';\nimport getHeadingStyles from '~components/Typography/Heading/getHeadingStyles';\n\ntype GetInputStyles = Pick<\n BaseInputProps,\n | 'isDisabled'\n | 'validationState'\n | 'leadingIcon'\n | 'prefix'\n | 'trailingInteractionElement'\n | 'leadingInteractionElement'\n | 'suffix'\n | 'trailingIcon'\n | 'textAlign'\n | 'isDropdownTrigger'\n | 'valueComponentType'\n> & {\n isHovered?: boolean;\n isFocused?: boolean;\n isTextArea?: boolean;\n hasTags?: boolean;\n theme: Theme;\n size: NonNullable<BaseInputProps['size']>;\n isTableInputCell: NonNullable<BaseInputProps['isTableInputCell']>;\n};\n\nexport const getBaseInputState = ({\n isFocused,\n isHovered,\n isDisabled,\n}: {\n isFocused?: boolean;\n isHovered?: boolean;\n isDisabled?: boolean;\n}): 'focused' | 'hovered' | 'disabled' | 'default' => {\n if (isDisabled) {\n return 'disabled';\n } else if (isFocused) {\n return 'focused';\n } else if (isHovered) {\n return 'hovered';\n } else {\n return 'default';\n }\n};\n\nexport const getInputBackgroundAndBorderStyles = ({\n theme,\n isHovered,\n isFocused,\n isDisabled,\n validationState,\n isTextArea,\n isDropdownTrigger,\n isTableInputCell,\n}: Pick<\n GetInputStyles,\n | 'theme'\n | 'isFocused'\n | 'isDisabled'\n | 'validationState'\n | 'isHovered'\n | 'isTextArea'\n | 'isDropdownTrigger'\n | 'isTableInputCell'\n>): CSSObject => {\n // normal state\n const backgroundColorTokens = isTableInputCell\n ? baseInputBorderlessBackgroundColor\n : baseInputBackgroundColor;\n let backgroundColor = getIn(theme.colors, backgroundColorTokens.default);\n let borderColor = isTableInputCell\n ? theme.colors.transparent\n : getIn(theme.colors, baseInputBorderColor.default);\n let borderWidth = getIn(theme.border.width, baseInputBorderWidth.default);\n\n const baseInputState = getBaseInputState({ isFocused, isHovered, isDisabled });\n\n backgroundColor = getIn(theme.colors, backgroundColorTokens[baseInputState]);\n borderColor =\n isTableInputCell && baseInputState !== 'focused'\n ? theme.colors.transparent\n : getIn(theme.colors, baseInputBorderColor[baseInputState]);\n borderWidth = getIn(theme.border.width, baseInputBorderWidth[baseInputState]);\n\n if (!isTableInputCell && validationState && validationState !== 'none') {\n borderColor = getIn(theme.colors, baseInputBorderColor[validationState]);\n borderWidth = getIn(theme.border.width, baseInputBorderWidth[validationState]);\n } else if (validationState && validationState !== 'none') {\n backgroundColor = getIn(theme.colors, baseInputBorderlessBackgroundColor[validationState]);\n }\n\n return {\n backgroundColor,\n borderRadius: makeBorderSize(\n isTableInputCell ? theme.border.radius.none : theme.border.radius.medium,\n ),\n borderStyle: 'solid',\n display: 'flex',\n flexDirection: 'row',\n width: '100%',\n alignItems: isTextArea ? 'flex-start' : undefined,\n position: 'relative',\n height: isDropdownTrigger && !isTextArea ? 'auto' : undefined,\n border: 'none',\n ...getBaseInputBorderStyles({ theme, borderColor, borderWidth, isFocused }),\n };\n};\n\nconst getLeftPadding = ({\n theme,\n isDropdownTrigger,\n hasLeadingIcon,\n hasPrefix,\n size,\n}: {\n theme: Theme;\n hasLeadingIcon: boolean;\n hasPrefix: boolean;\n isDropdownTrigger: GetInputStyles['isDropdownTrigger'];\n size: GetInputStyles['size'];\n}): number => {\n if (isDropdownTrigger) {\n return theme.spacing[0];\n }\n\n if (hasLeadingIcon || hasPrefix) {\n return theme.spacing[3];\n }\n\n return theme.spacing[baseInputPaddingTokens.left[size]];\n};\n\nconst getRightPadding = ({\n theme,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingIcon,\n size,\n}: {\n theme: Theme;\n hasTrailingInteractionElement: boolean;\n hasSuffix: boolean;\n hasTrailingIcon: boolean;\n size: GetInputStyles['size'];\n}): number => {\n if (hasTrailingInteractionElement || hasSuffix || hasTrailingIcon) {\n return theme.spacing[3];\n }\n return theme.spacing[baseInputPaddingTokens.right[size]];\n};\n\nexport const getBaseInputStyles = ({\n theme,\n isDisabled,\n leadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n textAlign,\n isTextArea,\n hasTags,\n isDropdownTrigger,\n size,\n valueComponentType,\n}: GetInputStyles): CSSObject => {\n const {\n hasLeadingIcon,\n hasPrefix,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingIcon,\n } = getInputVisualsToBeRendered({\n leadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n size,\n });\n\n const isDropdownWithTags = isDropdownTrigger && hasTags;\n const isReactNative = getPlatformType() === 'react-native';\n\n return {\n ...(valueComponentType === 'heading'\n ? getHeadingStyles({\n size,\n weight: 'regular',\n color: isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle',\n theme,\n })\n : getTextStyles({\n size,\n variant: 'body',\n weight: 'regular',\n color: isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle',\n theme,\n })),\n\n // take the full available width of parent container for input field\n flex: 1,\n backgroundColor: theme.colors.transparent,\n\n paddingTop: makeSpace(theme.spacing[baseInputPaddingTokens.top[size]]),\n paddingBottom: makeSpace(theme.spacing[baseInputPaddingTokens.bottom[size]]),\n paddingLeft: makeSpace(\n getLeftPadding({ theme, isDropdownTrigger, hasLeadingIcon, hasPrefix, size }),\n ),\n paddingRight: getRightPadding({\n theme,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingIcon,\n size,\n }),\n\n textAlign,\n width: '100%',\n height: isTextArea || isDropdownWithTags ? undefined : makeSpace(baseInputHeight[size]),\n minHeight: isTextArea || isDropdownWithTags ? undefined : makeSpace(baseInputHeight[size]),\n ...(isReactNative ? {} : { resize: 'none' }),\n };\n};\n\nexport const getAnimatedBaseInputWrapperMaxHeight = ({\n maxTagRows,\n showAllTags,\n size,\n}: Pick<BaseInputWrapperProps, 'maxTagRows' | 'showAllTags' | 'size'>): number => {\n if (maxTagRows === 'single') {\n return baseInputHeight[size];\n }\n\n if (maxTagRows === 'multiple') {\n return baseInputWrapperMaxHeight[size];\n }\n\n // In expandable, max-height depends on the state\n return showAllTags ? baseInputWrapperMaxHeight[size] : baseInputHeight[size];\n};\n"],"names":["getBaseInputState","_ref","isFocused","isHovered","isDisabled","getInputBackgroundAndBorderStyles","_ref2","theme","validationState","isTextArea","isDropdownTrigger","isTableInputCell","backgroundColorTokens","baseInputBorderlessBackgroundColor","baseInputBackgroundColor","backgroundColor","getIn","colors","borderColor","transparent","baseInputBorderColor","borderWidth","border","width","baseInputBorderWidth","baseInputState","_objectSpread","borderRadius","makeBorderSize","radius","none","medium","borderStyle","display","flexDirection","alignItems","undefined","position","height","getBaseInputBorderStyles","getLeftPadding","_ref3","hasLeadingIcon","hasPrefix","size","spacing","baseInputPaddingTokens","left","getRightPadding","_ref4","hasTrailingInteractionElement","hasSuffix","hasTrailingIcon","right","getBaseInputStyles","_ref5","leadingIcon","prefix","trailingInteractionElement","leadingInteractionElement","suffix","trailingIcon","textAlign","hasTags","valueComponentType","_getInputVisualsToBeR","getInputVisualsToBeRendered","isDropdownWithTags","isReactNative","getPlatformType","getHeadingStyles","weight","color","getTextStyles","variant","flex","paddingTop","makeSpace","top","paddingBottom","bottom","paddingLeft","paddingRight","baseInputHeight","minHeight","resize","getAnimatedBaseInputWrapperMaxHeight","_ref6","maxTagRows","showAllTags","baseInputWrapperMaxHeight"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"baseInputStyles.js","sources":["../../../../../../../src/components/Input/BaseInput/baseInputStyles.ts"],"sourcesContent":["import type { CSSObject } from 'styled-components';\nimport type { BaseInputProps } from './BaseInput';\nimport { getBaseInputBorderStyles } from './getBaseInputBorderStyles';\nimport {\n baseInputBackgroundColor,\n baseInputBorderColor,\n baseInputBorderWidth,\n baseInputBorderlessBackgroundColor,\n baseInputHeight,\n baseInputPaddingTokens,\n baseInputWrapperMaxHeight,\n} from './baseInputTokens';\nimport { getInputVisualsToBeRendered } from './BaseInputVisuals';\nimport type { BaseInputWrapperProps } from './types';\nimport type { Theme } from '~components/BladeProvider';\nimport getTextStyles from '~components/Typography/Text/getTextStyles';\nimport { makeSpace } from '~utils/makeSpace';\nimport { makeBorderSize } from '~utils/makeBorderSize';\nimport { getPlatformType } from '~utils';\nimport getIn from '~utils/lodashButBetter/get';\nimport getHeadingStyles from '~components/Typography/Heading/getHeadingStyles';\n\ntype GetInputStyles = Pick<\n BaseInputProps,\n | 'isDisabled'\n | 'validationState'\n | 'leadingIcon'\n | 'prefix'\n | 'trailingInteractionElement'\n | 'leadingInteractionElement'\n | 'suffix'\n | 'trailingIcon'\n | 'textAlign'\n | 'isDropdownTrigger'\n | 'valueComponentType'\n> & {\n isHovered?: boolean;\n isFocused?: boolean;\n isTextArea?: boolean;\n hasTags?: boolean;\n theme: Theme;\n size: NonNullable<BaseInputProps['size']>;\n isTableInputCell: NonNullable<BaseInputProps['isTableInputCell']>;\n};\n\nexport const getBaseInputState = ({\n isFocused,\n isHovered,\n isDisabled,\n}: {\n isFocused?: boolean;\n isHovered?: boolean;\n isDisabled?: boolean;\n}): 'focused' | 'hovered' | 'disabled' | 'default' => {\n if (isDisabled) {\n return 'disabled';\n } else if (isFocused) {\n return 'focused';\n } else if (isHovered) {\n return 'hovered';\n } else {\n return 'default';\n }\n};\n\nexport const getInputBackgroundAndBorderStyles = ({\n theme,\n isHovered,\n isFocused,\n isDisabled,\n validationState,\n isTextArea,\n isDropdownTrigger,\n isTableInputCell,\n}: Pick<\n GetInputStyles,\n | 'theme'\n | 'isFocused'\n | 'isDisabled'\n | 'validationState'\n | 'isHovered'\n | 'isTextArea'\n | 'isDropdownTrigger'\n | 'isTableInputCell'\n>): CSSObject => {\n // normal state\n const backgroundColorTokens = isTableInputCell\n ? baseInputBorderlessBackgroundColor\n : baseInputBackgroundColor;\n let backgroundColor = getIn(theme.colors, backgroundColorTokens.default);\n let borderColor = isTableInputCell\n ? theme.colors.transparent\n : getIn(theme.colors, baseInputBorderColor.default);\n let borderWidth = getIn(theme.border.width, baseInputBorderWidth.default);\n\n const baseInputState = getBaseInputState({ isFocused, isHovered, isDisabled });\n\n backgroundColor = getIn(theme.colors, backgroundColorTokens[baseInputState]);\n borderColor =\n isTableInputCell && baseInputState !== 'focused'\n ? theme.colors.transparent\n : getIn(theme.colors, baseInputBorderColor[baseInputState]);\n borderWidth = getIn(theme.border.width, baseInputBorderWidth[baseInputState]);\n\n if (!isTableInputCell && validationState && validationState !== 'none') {\n borderColor = getIn(theme.colors, baseInputBorderColor[validationState]);\n borderWidth = getIn(theme.border.width, baseInputBorderWidth[validationState]);\n } else if (validationState && validationState !== 'none') {\n backgroundColor = getIn(theme.colors, baseInputBorderlessBackgroundColor[validationState]);\n }\n\n return {\n backgroundColor,\n borderRadius: makeBorderSize(\n isTableInputCell ? theme.border.radius.none : theme.border.radius.medium,\n ),\n borderStyle: 'solid',\n display: 'flex',\n flexDirection: 'row',\n width: '100%',\n alignItems: isTextArea ? 'flex-start' : undefined,\n position: 'relative',\n height: isDropdownTrigger && !isTextArea ? 'auto' : undefined,\n border: 'none',\n ...getBaseInputBorderStyles({ theme, borderColor, borderWidth, isFocused }),\n };\n};\n\nconst getLeftPadding = ({\n theme,\n isDropdownTrigger,\n hasLeadingIcon,\n hasPrefix,\n size,\n}: {\n theme: Theme;\n hasLeadingIcon: boolean;\n hasPrefix: boolean;\n isDropdownTrigger: GetInputStyles['isDropdownTrigger'];\n size: GetInputStyles['size'];\n}): number => {\n if (isDropdownTrigger) {\n return theme.spacing[0];\n }\n\n if (hasLeadingIcon || hasPrefix) {\n return theme.spacing[3];\n }\n\n return theme.spacing[baseInputPaddingTokens.left[size]];\n};\n\nconst getRightPadding = ({\n theme,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingIcon,\n size,\n}: {\n theme: Theme;\n hasTrailingInteractionElement: boolean;\n hasSuffix: boolean;\n hasTrailingIcon: boolean;\n size: GetInputStyles['size'];\n}): number => {\n if (hasTrailingInteractionElement || hasSuffix || hasTrailingIcon) {\n return theme.spacing[3];\n }\n return theme.spacing[baseInputPaddingTokens.right[size]];\n};\n\nexport const getBaseInputStyles = ({\n theme,\n isDisabled,\n leadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n textAlign,\n isTextArea,\n hasTags,\n isDropdownTrigger,\n size,\n valueComponentType,\n}: GetInputStyles): CSSObject => {\n const {\n hasLeadingIcon,\n hasPrefix,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingIcon,\n } = getInputVisualsToBeRendered({\n leadingIcon,\n prefix,\n trailingInteractionElement,\n leadingInteractionElement,\n suffix,\n trailingIcon,\n size,\n });\n\n const isDropdownWithTags = isDropdownTrigger && hasTags;\n const isReactNative = getPlatformType() === 'react-native';\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n const shouldHaveFlexibleHeight = isTextArea || isDropdownWithTags;\n\n return {\n ...(valueComponentType === 'heading'\n ? getHeadingStyles({\n size,\n weight: 'regular',\n color: isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle',\n theme,\n })\n : getTextStyles({\n size,\n variant: 'body',\n weight: 'regular',\n color: isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.subtle',\n theme,\n })),\n\n // take the full available width of parent container for input field\n flex: 1,\n backgroundColor: theme.colors.transparent,\n\n paddingTop: makeSpace(theme.spacing[baseInputPaddingTokens.top[size]]),\n paddingBottom: makeSpace(theme.spacing[baseInputPaddingTokens.bottom[size]]),\n paddingLeft: makeSpace(\n getLeftPadding({ theme, isDropdownTrigger, hasLeadingIcon, hasPrefix, size }),\n ),\n paddingRight: getRightPadding({\n theme,\n hasTrailingInteractionElement,\n hasSuffix,\n hasTrailingIcon,\n size,\n }),\n\n textAlign,\n width: '100%',\n height: shouldHaveFlexibleHeight ? undefined : makeSpace(baseInputHeight[size]),\n minHeight: shouldHaveFlexibleHeight ? undefined : makeSpace(baseInputHeight[size]),\n ...(isReactNative ? {} : { resize: 'none' }),\n };\n};\n\nexport const getAnimatedBaseInputWrapperMaxHeight = ({\n maxTagRows,\n showAllTags,\n size,\n}: Pick<BaseInputWrapperProps, 'maxTagRows' | 'showAllTags' | 'size'>): number => {\n if (maxTagRows === 'single') {\n return baseInputHeight[size];\n }\n\n if (maxTagRows === 'multiple') {\n return baseInputWrapperMaxHeight[size];\n }\n\n // In expandable, max-height depends on the state\n return showAllTags ? baseInputWrapperMaxHeight[size] : baseInputHeight[size];\n};\n"],"names":["getBaseInputState","_ref","isFocused","isHovered","isDisabled","getInputBackgroundAndBorderStyles","_ref2","theme","validationState","isTextArea","isDropdownTrigger","isTableInputCell","backgroundColorTokens","baseInputBorderlessBackgroundColor","baseInputBackgroundColor","backgroundColor","getIn","colors","borderColor","transparent","baseInputBorderColor","borderWidth","border","width","baseInputBorderWidth","baseInputState","_objectSpread","borderRadius","makeBorderSize","radius","none","medium","borderStyle","display","flexDirection","alignItems","undefined","position","height","getBaseInputBorderStyles","getLeftPadding","_ref3","hasLeadingIcon","hasPrefix","size","spacing","baseInputPaddingTokens","left","getRightPadding","_ref4","hasTrailingInteractionElement","hasSuffix","hasTrailingIcon","right","getBaseInputStyles","_ref5","leadingIcon","prefix","trailingInteractionElement","leadingInteractionElement","suffix","trailingIcon","textAlign","hasTags","valueComponentType","_getInputVisualsToBeR","getInputVisualsToBeRendered","isDropdownWithTags","isReactNative","getPlatformType","shouldHaveFlexibleHeight","getHeadingStyles","weight","color","getTextStyles","variant","flex","paddingTop","makeSpace","top","paddingBottom","bottom","paddingLeft","paddingRight","baseInputHeight","minHeight","resize","getAnimatedBaseInputWrapperMaxHeight","_ref6","maxTagRows","showAllTags","baseInputWrapperMaxHeight"],"mappings":"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"}
|
package/build/lib/web/production/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
1
2
|
import React__default from 'react';
|
|
2
3
|
import '../BaseInput/index.js';
|
|
3
4
|
import { InputChevronIcon } from './InputChevronIcon.web.js';
|
|
@@ -8,11 +9,16 @@ import { getActionListContainerRole } from '../../ActionList/getA11yRoles.js';
|
|
|
8
9
|
import '../../../utils/metaAttribute/index.js';
|
|
9
10
|
import { getTagsGroup } from '../../Tag/getTagsGroup.js';
|
|
10
11
|
import { useFirstRender } from '../../../utils/useFirstRender.js';
|
|
12
|
+
import { useTableContext } from '../../Table/TableContext.js';
|
|
13
|
+
import { rowDensityToIsTableInputCellMapping, tableEditableCellRowDensityToInputSizeMap, validationStateToInputTrailingIconMap } from '../../Table/tokens.js';
|
|
14
|
+
import { useTableEditableCell } from '../../Table/TableEditableCellContext.js';
|
|
11
15
|
import { jsx } from 'react/jsx-runtime';
|
|
12
16
|
import { isReactNative } from '../../../utils/platform/isReactNative.js';
|
|
13
17
|
import { BaseInput } from '../BaseInput/BaseInput.js';
|
|
14
18
|
import { MetaConstants } from '../../../utils/metaAttribute/metaConstants.js';
|
|
15
19
|
|
|
20
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
21
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
16
22
|
var useControlledDropdownInput = function useControlledDropdownInput(props) {
|
|
17
23
|
var isFirstRender = useFirstRender();
|
|
18
24
|
var _useDropdown = useDropdown(),
|
|
@@ -107,7 +113,7 @@ var useControlledDropdownInput = function useControlledDropdownInput(props) {
|
|
|
107
113
|
}, [changeCallbackTriggerer]);
|
|
108
114
|
};
|
|
109
115
|
var _BaseDropdownInputTrigger = function _BaseDropdownInputTrigger(props, ref) {
|
|
110
|
-
var _props$placeholder, _props$maxRows, _props$label;
|
|
116
|
+
var _props$placeholder, _props$validationStat, _props$maxRows, _props$label;
|
|
111
117
|
var _useDropdown2 = useDropdown(),
|
|
112
118
|
isOpen = _useDropdown2.isOpen,
|
|
113
119
|
activeTagIndex = _useDropdown2.activeTagIndex,
|
|
@@ -131,6 +137,10 @@ var _BaseDropdownInputTrigger = function _BaseDropdownInputTrigger(props, ref) {
|
|
|
131
137
|
removeOption = _useDropdown2.removeOption,
|
|
132
138
|
setChangeCallbackTriggerer = _useDropdown2.setChangeCallbackTriggerer,
|
|
133
139
|
changeCallbackTriggerer = _useDropdown2.changeCallbackTriggerer;
|
|
140
|
+
var _useTableContext = useTableContext(),
|
|
141
|
+
rowDensity = _useTableContext.rowDensity;
|
|
142
|
+
var _useTableEditableCell = useTableEditableCell(),
|
|
143
|
+
isInsideTableEditableCell = _useTableEditableCell.isInsideTableEditableCell;
|
|
134
144
|
var dropdownTriggerPlaceholder = (_props$placeholder = props.placeholder) !== null && _props$placeholder !== void 0 ? _props$placeholder : 'Select Option';
|
|
135
145
|
var isAutoCompleteInHeader = !props.isSelectInput && hasAutoCompleteInBottomSheetHeader;
|
|
136
146
|
var getShowAllTags = React__default.useCallback(function () {
|
|
@@ -201,7 +211,15 @@ var _BaseDropdownInputTrigger = function _BaseDropdownInputTrigger(props, ref) {
|
|
|
201
211
|
},
|
|
202
212
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
203
213
|
[selectedIndices, selectionType, activeTagIndex, changeCallbackTriggerer, options]);
|
|
204
|
-
|
|
214
|
+
var tableInputProps = {
|
|
215
|
+
isTableInputCell: rowDensityToIsTableInputCellMapping[rowDensity],
|
|
216
|
+
id: 'table-editable-cell-input',
|
|
217
|
+
size: tableEditableCellRowDensityToInputSizeMap[rowDensity],
|
|
218
|
+
trailingIcon: validationStateToInputTrailingIconMap[(_props$validationStat = props.validationState) !== null && _props$validationStat !== void 0 ? _props$validationStat : 'none'],
|
|
219
|
+
showHintsAsTooltip: true
|
|
220
|
+
};
|
|
221
|
+
var isValidationStateNone = props.validationState === 'none' || props.validationState === undefined;
|
|
222
|
+
return /*#__PURE__*/jsx(BaseInput, _objectSpread({
|
|
205
223
|
as: props.isSelectInput ? 'button' : 'input',
|
|
206
224
|
ref: !isReactNative() ?
|
|
207
225
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -285,7 +303,7 @@ var _BaseDropdownInputTrigger = function _BaseDropdownInputTrigger(props, ref) {
|
|
|
285
303
|
onChange: props.isSelectInput ? undefined : props.onInputValueChange,
|
|
286
304
|
onKeyDown: props.onTriggerKeydown,
|
|
287
305
|
size: props.size,
|
|
288
|
-
trailingInteractionElement: isAutoCompleteInHeader ? null : /*#__PURE__*/jsx(InputChevronIcon, {
|
|
306
|
+
trailingInteractionElement: isAutoCompleteInHeader || isInsideTableEditableCell && !isValidationStateNone ? null : /*#__PURE__*/jsx(InputChevronIcon, {
|
|
289
307
|
onClick: function onClick() {
|
|
290
308
|
if (!props.isDisabled) {
|
|
291
309
|
// Icon onClicks to the SelectInput itself
|
|
@@ -299,7 +317,7 @@ var _BaseDropdownInputTrigger = function _BaseDropdownInputTrigger(props, ref) {
|
|
|
299
317
|
isDisabled: props.isDisabled,
|
|
300
318
|
isOpen: isOpen
|
|
301
319
|
})
|
|
302
|
-
});
|
|
320
|
+
}, isInsideTableEditableCell ? tableInputProps : undefined));
|
|
303
321
|
};
|
|
304
322
|
var BaseDropdownInputTrigger = /*#__PURE__*/React__default.forwardRef(_BaseDropdownInputTrigger);
|
|
305
323
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseDropdownInputTrigger.js","sources":["../../../../../../../src/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.tsx"],"sourcesContent":["import React from 'react';\nimport { BaseInput } from '../BaseInput';\nimport type { BaseInputProps } from '../BaseInput';\nimport { InputChevronIcon } from './InputChevronIcon';\nimport type { BaseDropdownInputTriggerProps } from './types';\nimport isEmpty from '~utils/lodashButBetter/isEmpty';\nimport { useDropdown } from '~components/Dropdown/useDropdown';\nimport { isReactNative } from '~utils';\nimport { getActionListContainerRole } from '~components/ActionList/getA11yRoles';\nimport { MetaConstants } from '~utils/metaAttribute';\nimport { getTagsGroup } from '~components/Tag/getTagsGroup';\nimport type { BladeElementRef } from '~utils/types';\nimport { useFirstRender } from '~utils/useFirstRender';\n\nconst useControlledDropdownInput = (\n props: Pick<\n BaseDropdownInputTriggerProps,\n | 'onChange'\n | 'name'\n | 'value'\n | 'defaultValue'\n | 'onInputValueChange'\n | 'syncInputValueWithSelection'\n | 'isSelectInput'\n >,\n): void => {\n const isFirstRender = useFirstRender();\n const {\n changeCallbackTriggerer,\n isControlled,\n options,\n selectedIndices,\n controlledValueIndices,\n setSelectedIndices,\n selectionType,\n setIsControlled,\n } = useDropdown();\n\n const getValuesArrayFromIndices = (): string[] => {\n let indices: number[] = [];\n if (isControlled) {\n indices = controlledValueIndices;\n } else {\n indices = selectedIndices;\n }\n\n return indices.map((selectionIndex) => options[selectionIndex].value);\n };\n\n const selectValues = (valuesToSelect: string | string[]): void => {\n if (options.length > 0) {\n // we use empty `''` for clearing the input\n if (isEmpty(valuesToSelect)) {\n setSelectedIndices([]);\n } else if (typeof valuesToSelect === 'string') {\n // single select control\n const selectedItemIndex = options.findIndex((option) => option.value === valuesToSelect);\n if (selectedItemIndex >= 0) {\n setSelectedIndices([selectedItemIndex]);\n }\n } else {\n // multiselect control\n\n // Handles repeated values in user state\n const uniqueValues = Array.from(new Set(valuesToSelect));\n // Handle selectionType single with multiselect values\n const userValues = selectionType === 'single' ? [valuesToSelect?.[0]] : uniqueValues;\n\n const selectedItemIndices = userValues\n .map((optionValue) => options.findIndex((option) => option.value === optionValue))\n .filter((value) => value >= 0);\n\n setSelectedIndices(selectedItemIndices);\n }\n }\n };\n\n // Handles `defaultValue` prop\n React.useEffect(() => {\n if (options.length > 0 && props.defaultValue) {\n selectValues(props.defaultValue);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [options.length]);\n\n // Handles `value` prop\n React.useEffect(() => {\n if (options.length > 0 && props.value !== undefined) {\n if (!isControlled) {\n setIsControlled(true);\n }\n\n selectValues(props.value);\n\n // in single select AutoComplete, we have to set inputValue of autocomplete according to the new selection.\n if (selectionType === 'single' && !Array.isArray(props.value) && !props.isSelectInput) {\n props.syncInputValueWithSelection?.(props.value);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [props.value, options]);\n\n // onChange behaviour\n React.useEffect(() => {\n // Ignore calling onChange on mount\n\n if (!isFirstRender) {\n props.onChange?.({\n name: props.name,\n values: getValuesArrayFromIndices(),\n });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [changeCallbackTriggerer]);\n};\n\nconst _BaseDropdownInputTrigger = (\n props: BaseDropdownInputTriggerProps,\n ref: React.ForwardedRef<BladeElementRef>,\n): React.ReactElement => {\n const {\n isOpen,\n activeTagIndex,\n setActiveTagIndex,\n displayValue,\n selectionType,\n dropdownTriggerer,\n dropdownBaseId,\n selectedIndices,\n triggererRef,\n triggererWrapperRef,\n isTagDismissedRef,\n onTriggerClick,\n value,\n shouldIgnoreBlurAnimation,\n setShouldIgnoreBlurAnimation,\n activeIndex,\n hasFooterAction,\n hasAutoCompleteInBottomSheetHeader,\n options,\n removeOption,\n setChangeCallbackTriggerer,\n changeCallbackTriggerer,\n } = useDropdown();\n\n const dropdownTriggerPlaceholder = props.placeholder ?? 'Select Option';\n const isAutoCompleteInHeader = !props.isSelectInput && hasAutoCompleteInBottomSheetHeader;\n\n const getShowAllTags = React.useCallback((): boolean => {\n if (hasAutoCompleteInBottomSheetHeader) {\n // When AutoComplete is in bottomsheet header, we never want to show all tags in outer select input\n if (props.isSelectInput) {\n return false;\n }\n\n // ... And we always want to show all tags in inner AutoComplete\n return true;\n }\n\n return isOpen;\n }, [hasAutoCompleteInBottomSheetHeader, props.isSelectInput, isOpen]);\n\n useControlledDropdownInput({\n onChange: props.onChange,\n name: props.name,\n value: props.value,\n defaultValue: props.defaultValue,\n syncInputValueWithSelection: props.syncInputValueWithSelection,\n isSelectInput: props.isSelectInput,\n });\n\n const getValue = (): string | undefined => {\n let prefix = '';\n if (props.labelPosition === 'inside-input' && props.label) {\n prefix = `${props.label}: `;\n }\n\n if (props.isSelectInput) {\n if (selectionType === 'single') {\n return `${prefix}${displayValue}`;\n }\n\n // In multiselect, we return tags so no display value is required\n return undefined;\n }\n\n // In AutoComplete, input has a special value too\n return props.inputValue;\n };\n\n const getTags = React.useMemo(\n () => ({ size }: { size: NonNullable<BaseInputProps['size']> }) => {\n if (selectionType === 'single') {\n return undefined;\n }\n\n return getTagsGroup({\n size,\n tags: selectedIndices.map((selectedIndex) => options[selectedIndex]?.title),\n activeTagIndex,\n isDisabled: props.isDisabled,\n onDismiss: ({ tagIndex }) => {\n if (isTagDismissedRef.current) {\n isTagDismissedRef.current.value = true;\n }\n\n if (!isReactNative()) {\n triggererRef.current?.focus();\n }\n\n removeOption(selectedIndices[tagIndex]);\n setChangeCallbackTriggerer(Number(changeCallbackTriggerer) + 1);\n },\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [selectedIndices, selectionType, activeTagIndex, changeCallbackTriggerer, options],\n );\n\n return (\n <BaseInput\n as={props.isSelectInput ? 'button' : 'input'}\n ref={\n (!isReactNative()\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (node: any) => {\n triggererRef.current = node;\n if (ref) {\n if (typeof ref === 'function') {\n ref(node);\n } else {\n ref.current = node;\n }\n }\n }\n : null) as never\n }\n isDropdownTrigger={true}\n setInputWrapperRef={(wrapperNode) => {\n triggererWrapperRef.current = wrapperNode;\n }}\n maxTagRows={props.maxRows ?? 'single'}\n tags={getTags({ size: props.size || 'medium' })}\n showAllTags={getShowAllTags()}\n activeTagIndex={activeTagIndex}\n setActiveTagIndex={setActiveTagIndex}\n shouldIgnoreBlurAnimation={shouldIgnoreBlurAnimation}\n setShouldIgnoreBlurAnimation={setShouldIgnoreBlurAnimation}\n textAlign=\"left\"\n // Form Props\n label={props.label as string}\n placeholder={\n selectionType === 'multiple' && selectedIndices.length > 0\n ? undefined\n : dropdownTriggerPlaceholder\n }\n hideLabelText={props.label?.length === 0}\n accessibilityLabel={props.accessibilityLabel}\n labelPosition={props.labelPosition === 'inside-input' ? undefined : props.labelPosition}\n isLabelInsideInput={props.labelPosition === 'inside-input'}\n necessityIndicator={props.necessityIndicator}\n autoCompleteSuggestionType=\"none\"\n validationState={props.validationState}\n helpText={props.helpText}\n errorText={props.errorText}\n successText={props.successText}\n name={props.name}\n isDisabled={props.isDisabled}\n isRequired={props.isRequired}\n prefix={props.prefix}\n suffix={props.suffix}\n autoFocus={props.autoFocus} // eslint-disable-line jsx-a11y/no-autofocus\n value={getValue()}\n onClick={(e) => {\n if (props.isDisabled) {\n return;\n }\n props.onTriggerClick?.(e);\n }}\n onFocus={props.onFocus}\n onBlur={({ name }) => {\n props.onBlur?.({ name, value });\n }}\n leadingIcon={props.icon}\n // Meta Props\n componentName={props.isSelectInput ? MetaConstants.SelectInput : MetaConstants.AutoComplete}\n testID={props.testID}\n // a11y Props\n id={`${dropdownBaseId}-trigger`}\n labelId={`${dropdownBaseId}-label`}\n hasPopup={getActionListContainerRole(hasFooterAction, dropdownTriggerer)}\n isPopupExpanded={isOpen}\n activeDescendant={activeIndex >= 0 ? `${dropdownBaseId}-${activeIndex}` : undefined}\n popupId={`${dropdownBaseId}-actionlist`}\n // Special Props for Unique behaviour between Select and AutoComplete\n onChange={props.isSelectInput ? undefined : props.onInputValueChange}\n onKeyDown={props.onTriggerKeydown}\n size={props.size}\n trailingInteractionElement={\n isAutoCompleteInHeader ? null : (\n <InputChevronIcon\n onClick={() => {\n if (!props.isDisabled) {\n // Icon onClicks to the SelectInput itself\n if (!isReactNative()) {\n triggererRef.current?.focus();\n }\n onTriggerClick();\n }\n }}\n isDisabled={props.isDisabled}\n isOpen={isOpen}\n />\n )\n }\n />\n );\n};\n\nconst BaseDropdownInputTrigger = React.forwardRef(_BaseDropdownInputTrigger);\n\nexport { BaseDropdownInputTrigger };\n"],"names":["useControlledDropdownInput","props","isFirstRender","useFirstRender","_useDropdown","useDropdown","changeCallbackTriggerer","isControlled","options","selectedIndices","controlledValueIndices","setSelectedIndices","selectionType","setIsControlled","getValuesArrayFromIndices","indices","map","selectionIndex","value","selectValues","valuesToSelect","length","isEmpty","selectedItemIndex","findIndex","option","uniqueValues","Array","from","Set","userValues","selectedItemIndices","optionValue","filter","React","useEffect","defaultValue","undefined","isArray","isSelectInput","_props$syncInputValue","syncInputValueWithSelection","call","_props$onChange","onChange","name","values","_BaseDropdownInputTrigger","ref","_props$placeholder","_props$maxRows","_props$label","_useDropdown2","isOpen","activeTagIndex","setActiveTagIndex","displayValue","dropdownTriggerer","dropdownBaseId","triggererRef","triggererWrapperRef","isTagDismissedRef","onTriggerClick","shouldIgnoreBlurAnimation","setShouldIgnoreBlurAnimation","activeIndex","hasFooterAction","hasAutoCompleteInBottomSheetHeader","removeOption","setChangeCallbackTriggerer","dropdownTriggerPlaceholder","placeholder","isAutoCompleteInHeader","getShowAllTags","useCallback","getValue","prefix","labelPosition","label","concat","inputValue","getTags","useMemo","_ref","size","getTagsGroup","tags","selectedIndex","_options$selectedInde","title","isDisabled","onDismiss","_ref2","tagIndex","current","isReactNative","_triggererRef$current","focus","Number","_jsx","BaseInput","as","node","isDropdownTrigger","setInputWrapperRef","wrapperNode","maxTagRows","maxRows","showAllTags","textAlign","hideLabelText","accessibilityLabel","isLabelInsideInput","necessityIndicator","autoCompleteSuggestionType","validationState","helpText","errorText","successText","isRequired","suffix","autoFocus","onClick","e","_props$onTriggerClick","onFocus","onBlur","_ref3","_props$onBlur","leadingIcon","icon","componentName","MetaConstants","SelectInput","AutoComplete","testID","id","labelId","hasPopup","getActionListContainerRole","isPopupExpanded","activeDescendant","popupId","onInputValueChange","onKeyDown","onTriggerKeydown","trailingInteractionElement","InputChevronIcon","_triggererRef$current2","BaseDropdownInputTrigger","forwardRef"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseDropdownInputTrigger.js","sources":["../../../../../../../src/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.tsx"],"sourcesContent":["import React from 'react';\nimport { BaseInput } from '../BaseInput';\nimport type { BaseInputProps } from '../BaseInput';\nimport { InputChevronIcon } from './InputChevronIcon';\nimport type { BaseDropdownInputTriggerProps } from './types';\nimport isEmpty from '~utils/lodashButBetter/isEmpty';\nimport { useDropdown } from '~components/Dropdown/useDropdown';\nimport { isReactNative } from '~utils';\nimport { getActionListContainerRole } from '~components/ActionList/getA11yRoles';\nimport { MetaConstants } from '~utils/metaAttribute';\nimport { getTagsGroup } from '~components/Tag/getTagsGroup';\nimport type { BladeElementRef } from '~utils/types';\nimport { useFirstRender } from '~utils/useFirstRender';\nimport { useTableContext } from '~components/Table/TableContext';\nimport {\n rowDensityToIsTableInputCellMapping,\n tableEditableCellRowDensityToInputSizeMap,\n validationStateToInputTrailingIconMap,\n} from '~components/Table/tokens';\nimport { useTableEditableCell } from '~components/Table/TableEditableCellContext';\n\nconst useControlledDropdownInput = (\n props: Pick<\n BaseDropdownInputTriggerProps,\n | 'onChange'\n | 'name'\n | 'value'\n | 'defaultValue'\n | 'onInputValueChange'\n | 'syncInputValueWithSelection'\n | 'isSelectInput'\n >,\n): void => {\n const isFirstRender = useFirstRender();\n const {\n changeCallbackTriggerer,\n isControlled,\n options,\n selectedIndices,\n controlledValueIndices,\n setSelectedIndices,\n selectionType,\n setIsControlled,\n } = useDropdown();\n\n const getValuesArrayFromIndices = (): string[] => {\n let indices: number[] = [];\n if (isControlled) {\n indices = controlledValueIndices;\n } else {\n indices = selectedIndices;\n }\n\n return indices.map((selectionIndex) => options[selectionIndex].value);\n };\n\n const selectValues = (valuesToSelect: string | string[]): void => {\n if (options.length > 0) {\n // we use empty `''` for clearing the input\n if (isEmpty(valuesToSelect)) {\n setSelectedIndices([]);\n } else if (typeof valuesToSelect === 'string') {\n // single select control\n const selectedItemIndex = options.findIndex((option) => option.value === valuesToSelect);\n if (selectedItemIndex >= 0) {\n setSelectedIndices([selectedItemIndex]);\n }\n } else {\n // multiselect control\n\n // Handles repeated values in user state\n const uniqueValues = Array.from(new Set(valuesToSelect));\n // Handle selectionType single with multiselect values\n const userValues = selectionType === 'single' ? [valuesToSelect?.[0]] : uniqueValues;\n\n const selectedItemIndices = userValues\n .map((optionValue) => options.findIndex((option) => option.value === optionValue))\n .filter((value) => value >= 0);\n\n setSelectedIndices(selectedItemIndices);\n }\n }\n };\n\n // Handles `defaultValue` prop\n React.useEffect(() => {\n if (options.length > 0 && props.defaultValue) {\n selectValues(props.defaultValue);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [options.length]);\n\n // Handles `value` prop\n React.useEffect(() => {\n if (options.length > 0 && props.value !== undefined) {\n if (!isControlled) {\n setIsControlled(true);\n }\n\n selectValues(props.value);\n\n // in single select AutoComplete, we have to set inputValue of autocomplete according to the new selection.\n if (selectionType === 'single' && !Array.isArray(props.value) && !props.isSelectInput) {\n props.syncInputValueWithSelection?.(props.value);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [props.value, options]);\n\n // onChange behaviour\n React.useEffect(() => {\n // Ignore calling onChange on mount\n\n if (!isFirstRender) {\n props.onChange?.({\n name: props.name,\n values: getValuesArrayFromIndices(),\n });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [changeCallbackTriggerer]);\n};\n\nconst _BaseDropdownInputTrigger = (\n props: BaseDropdownInputTriggerProps,\n ref: React.ForwardedRef<BladeElementRef>,\n): React.ReactElement => {\n const {\n isOpen,\n activeTagIndex,\n setActiveTagIndex,\n displayValue,\n selectionType,\n dropdownTriggerer,\n dropdownBaseId,\n selectedIndices,\n triggererRef,\n triggererWrapperRef,\n isTagDismissedRef,\n onTriggerClick,\n value,\n shouldIgnoreBlurAnimation,\n setShouldIgnoreBlurAnimation,\n activeIndex,\n hasFooterAction,\n hasAutoCompleteInBottomSheetHeader,\n options,\n removeOption,\n setChangeCallbackTriggerer,\n changeCallbackTriggerer,\n } = useDropdown();\n const { rowDensity } = useTableContext();\n const { isInsideTableEditableCell } = useTableEditableCell();\n\n const dropdownTriggerPlaceholder = props.placeholder ?? 'Select Option';\n const isAutoCompleteInHeader = !props.isSelectInput && hasAutoCompleteInBottomSheetHeader;\n\n const getShowAllTags = React.useCallback((): boolean => {\n if (hasAutoCompleteInBottomSheetHeader) {\n // When AutoComplete is in bottomsheet header, we never want to show all tags in outer select input\n if (props.isSelectInput) {\n return false;\n }\n\n // ... And we always want to show all tags in inner AutoComplete\n return true;\n }\n\n return isOpen;\n }, [hasAutoCompleteInBottomSheetHeader, props.isSelectInput, isOpen]);\n\n useControlledDropdownInput({\n onChange: props.onChange,\n name: props.name,\n value: props.value,\n defaultValue: props.defaultValue,\n syncInputValueWithSelection: props.syncInputValueWithSelection,\n isSelectInput: props.isSelectInput,\n });\n\n const getValue = (): string | undefined => {\n let prefix = '';\n if (props.labelPosition === 'inside-input' && props.label) {\n prefix = `${props.label}: `;\n }\n\n if (props.isSelectInput) {\n if (selectionType === 'single') {\n return `${prefix}${displayValue}`;\n }\n\n // In multiselect, we return tags so no display value is required\n return undefined;\n }\n\n // In AutoComplete, input has a special value too\n return props.inputValue;\n };\n\n const getTags = React.useMemo(\n () => ({ size }: { size: NonNullable<BaseInputProps['size']> }) => {\n if (selectionType === 'single') {\n return undefined;\n }\n\n return getTagsGroup({\n size,\n tags: selectedIndices.map((selectedIndex) => options[selectedIndex]?.title),\n activeTagIndex,\n isDisabled: props.isDisabled,\n onDismiss: ({ tagIndex }) => {\n if (isTagDismissedRef.current) {\n isTagDismissedRef.current.value = true;\n }\n\n if (!isReactNative()) {\n triggererRef.current?.focus();\n }\n\n removeOption(selectedIndices[tagIndex]);\n setChangeCallbackTriggerer(Number(changeCallbackTriggerer) + 1);\n },\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [selectedIndices, selectionType, activeTagIndex, changeCallbackTriggerer, options],\n );\n\n const tableInputProps: Partial<BaseInputProps> = {\n isTableInputCell: rowDensityToIsTableInputCellMapping[rowDensity],\n id: 'table-editable-cell-input',\n size: tableEditableCellRowDensityToInputSizeMap[rowDensity],\n trailingIcon: validationStateToInputTrailingIconMap[props.validationState ?? 'none'],\n showHintsAsTooltip: true,\n };\n\n const isValidationStateNone =\n props.validationState === 'none' || props.validationState === undefined;\n\n return (\n <BaseInput\n as={props.isSelectInput ? 'button' : 'input'}\n ref={\n (!isReactNative()\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (node: any) => {\n triggererRef.current = node;\n if (ref) {\n if (typeof ref === 'function') {\n ref(node);\n } else {\n ref.current = node;\n }\n }\n }\n : null) as never\n }\n isDropdownTrigger={true}\n setInputWrapperRef={(wrapperNode) => {\n triggererWrapperRef.current = wrapperNode;\n }}\n maxTagRows={props.maxRows ?? 'single'}\n tags={getTags({ size: props.size || 'medium' })}\n showAllTags={getShowAllTags()}\n activeTagIndex={activeTagIndex}\n setActiveTagIndex={setActiveTagIndex}\n shouldIgnoreBlurAnimation={shouldIgnoreBlurAnimation}\n setShouldIgnoreBlurAnimation={setShouldIgnoreBlurAnimation}\n textAlign=\"left\"\n // Form Props\n label={props.label as string}\n placeholder={\n selectionType === 'multiple' && selectedIndices.length > 0\n ? undefined\n : dropdownTriggerPlaceholder\n }\n hideLabelText={props.label?.length === 0}\n accessibilityLabel={props.accessibilityLabel}\n labelPosition={props.labelPosition === 'inside-input' ? undefined : props.labelPosition}\n isLabelInsideInput={props.labelPosition === 'inside-input'}\n necessityIndicator={props.necessityIndicator}\n autoCompleteSuggestionType=\"none\"\n validationState={props.validationState}\n helpText={props.helpText}\n errorText={props.errorText}\n successText={props.successText}\n name={props.name}\n isDisabled={props.isDisabled}\n isRequired={props.isRequired}\n prefix={props.prefix}\n suffix={props.suffix}\n autoFocus={props.autoFocus} // eslint-disable-line jsx-a11y/no-autofocus\n value={getValue()}\n onClick={(e) => {\n if (props.isDisabled) {\n return;\n }\n props.onTriggerClick?.(e);\n }}\n onFocus={props.onFocus}\n onBlur={({ name }) => {\n props.onBlur?.({ name, value });\n }}\n leadingIcon={props.icon}\n // Meta Props\n componentName={props.isSelectInput ? MetaConstants.SelectInput : MetaConstants.AutoComplete}\n testID={props.testID}\n // a11y Props\n id={`${dropdownBaseId}-trigger`}\n labelId={`${dropdownBaseId}-label`}\n hasPopup={getActionListContainerRole(hasFooterAction, dropdownTriggerer)}\n isPopupExpanded={isOpen}\n activeDescendant={activeIndex >= 0 ? `${dropdownBaseId}-${activeIndex}` : undefined}\n popupId={`${dropdownBaseId}-actionlist`}\n // Special Props for Unique behaviour between Select and AutoComplete\n onChange={props.isSelectInput ? undefined : props.onInputValueChange}\n onKeyDown={props.onTriggerKeydown}\n size={props.size}\n trailingInteractionElement={\n isAutoCompleteInHeader || (isInsideTableEditableCell && !isValidationStateNone) ? null : (\n <InputChevronIcon\n onClick={() => {\n if (!props.isDisabled) {\n // Icon onClicks to the SelectInput itself\n if (!isReactNative()) {\n triggererRef.current?.focus();\n }\n onTriggerClick();\n }\n }}\n isDisabled={props.isDisabled}\n isOpen={isOpen}\n />\n )\n }\n {...(isInsideTableEditableCell ? tableInputProps : undefined)}\n />\n );\n};\n\nconst BaseDropdownInputTrigger = React.forwardRef(_BaseDropdownInputTrigger);\n\nexport { BaseDropdownInputTrigger };\n"],"names":["useControlledDropdownInput","props","isFirstRender","useFirstRender","_useDropdown","useDropdown","changeCallbackTriggerer","isControlled","options","selectedIndices","controlledValueIndices","setSelectedIndices","selectionType","setIsControlled","getValuesArrayFromIndices","indices","map","selectionIndex","value","selectValues","valuesToSelect","length","isEmpty","selectedItemIndex","findIndex","option","uniqueValues","Array","from","Set","userValues","selectedItemIndices","optionValue","filter","React","useEffect","defaultValue","undefined","isArray","isSelectInput","_props$syncInputValue","syncInputValueWithSelection","call","_props$onChange","onChange","name","values","_BaseDropdownInputTrigger","ref","_props$placeholder","_props$validationStat","_props$maxRows","_props$label","_useDropdown2","isOpen","activeTagIndex","setActiveTagIndex","displayValue","dropdownTriggerer","dropdownBaseId","triggererRef","triggererWrapperRef","isTagDismissedRef","onTriggerClick","shouldIgnoreBlurAnimation","setShouldIgnoreBlurAnimation","activeIndex","hasFooterAction","hasAutoCompleteInBottomSheetHeader","removeOption","setChangeCallbackTriggerer","_useTableContext","useTableContext","rowDensity","_useTableEditableCell","useTableEditableCell","isInsideTableEditableCell","dropdownTriggerPlaceholder","placeholder","isAutoCompleteInHeader","getShowAllTags","useCallback","getValue","prefix","labelPosition","label","concat","inputValue","getTags","useMemo","_ref","size","getTagsGroup","tags","selectedIndex","_options$selectedInde","title","isDisabled","onDismiss","_ref2","tagIndex","current","isReactNative","_triggererRef$current","focus","Number","tableInputProps","isTableInputCell","rowDensityToIsTableInputCellMapping","id","tableEditableCellRowDensityToInputSizeMap","trailingIcon","validationStateToInputTrailingIconMap","validationState","showHintsAsTooltip","isValidationStateNone","_jsx","BaseInput","_objectSpread","as","node","isDropdownTrigger","setInputWrapperRef","wrapperNode","maxTagRows","maxRows","showAllTags","textAlign","hideLabelText","accessibilityLabel","isLabelInsideInput","necessityIndicator","autoCompleteSuggestionType","helpText","errorText","successText","isRequired","suffix","autoFocus","onClick","e","_props$onTriggerClick","onFocus","onBlur","_ref3","_props$onBlur","leadingIcon","icon","componentName","MetaConstants","SelectInput","AutoComplete","testID","labelId","hasPopup","getActionListContainerRole","isPopupExpanded","activeDescendant","popupId","onInputValueChange","onKeyDown","onTriggerKeydown","trailingInteractionElement","InputChevronIcon","_triggererRef$current2","BaseDropdownInputTrigger","forwardRef"],"mappings":"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"}
|
|
@@ -31,10 +31,10 @@ var getColor = function getColor(_ref) {
|
|
|
31
31
|
if (color && color === 'white') {
|
|
32
32
|
return getIn(theme.colors, 'interactive.icon.staticWhite.subtle');
|
|
33
33
|
}
|
|
34
|
-
if (color && color !== '
|
|
35
|
-
return getIn(theme.colors, "
|
|
34
|
+
if (color && color !== 'neutral') {
|
|
35
|
+
return getIn(theme.colors, "interactive.icon.".concat(color, ".subtle"));
|
|
36
36
|
}
|
|
37
|
-
return getIn(theme.colors, '
|
|
37
|
+
return getIn(theme.colors, 'interactive.icon.gray.subtle');
|
|
38
38
|
};
|
|
39
39
|
var BaseSpinner = function BaseSpinner(_ref2) {
|
|
40
40
|
var label = _ref2.label,
|