@razorpay/blade 12.21.1 → 12.21.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/build/lib/native/components/ActionList/ActionListItem.js +1 -1
  2. package/build/lib/native/components/ActionList/ActionListItem.js.map +1 -1
  3. package/build/lib/native/components/Dropdown/Dropdown.js +1 -1
  4. package/build/lib/native/components/Dropdown/Dropdown.js.map +1 -1
  5. package/build/lib/native/components/Dropdown/useDropdown.js +1 -1
  6. package/build/lib/native/components/Dropdown/useDropdown.js.map +1 -1
  7. package/build/lib/web/development/components/ActionList/ActionListItem.js +18 -25
  8. package/build/lib/web/development/components/ActionList/ActionListItem.js.map +1 -1
  9. package/build/lib/web/development/components/Dropdown/Dropdown.js +11 -17
  10. package/build/lib/web/development/components/Dropdown/Dropdown.js.map +1 -1
  11. package/build/lib/web/development/components/Dropdown/FilterChipSelectInput.web.js +32 -14
  12. package/build/lib/web/development/components/Dropdown/FilterChipSelectInput.web.js.map +1 -1
  13. package/build/lib/web/development/components/Dropdown/useDropdown.js +0 -2
  14. package/build/lib/web/development/components/Dropdown/useDropdown.js.map +1 -1
  15. package/build/lib/web/development/components/FilterChip/BaseFilterChip.web.js +2 -2
  16. package/build/lib/web/development/components/FilterChip/BaseFilterChip.web.js.map +1 -1
  17. package/build/lib/web/production/components/ActionList/ActionListItem.js +18 -25
  18. package/build/lib/web/production/components/ActionList/ActionListItem.js.map +1 -1
  19. package/build/lib/web/production/components/Dropdown/Dropdown.js +11 -17
  20. package/build/lib/web/production/components/Dropdown/Dropdown.js.map +1 -1
  21. package/build/lib/web/production/components/Dropdown/FilterChipSelectInput.web.js +32 -14
  22. package/build/lib/web/production/components/Dropdown/FilterChipSelectInput.web.js.map +1 -1
  23. package/build/lib/web/production/components/Dropdown/useDropdown.js +0 -2
  24. package/build/lib/web/production/components/Dropdown/useDropdown.js.map +1 -1
  25. package/build/lib/web/production/components/FilterChip/BaseFilterChip.web.js +2 -2
  26. package/build/lib/web/production/components/FilterChip/BaseFilterChip.web.js.map +1 -1
  27. package/build/types/components/index.d.ts +1 -1
  28. package/package.json +1 -1
@@ -181,25 +181,20 @@ var ActionListItemText = /*#__PURE__*/assignWithoutSideEffects(_ActionListItemTe
181
181
  });
182
182
  var BaseMenuLeadingItem = function BaseMenuLeadingItem(_ref6) {
183
183
  var isSelected = _ref6.isSelected,
184
- leading = _ref6.leading,
185
- selectionType = _ref6.selectionType,
186
184
  isDisabled = _ref6.isDisabled;
187
- if (selectionType === 'multiple') {
188
- return /*#__PURE__*/jsx(BaseBox, _objectSpread(_objectSpread({
189
- pointerEvents: "none"
190
- // Adding aria-hidden because the listbox item in multiselect in itself explains the behaviour so announcing checkbox is unneccesary and just a nice UI tweak for us
191
- }, makeAccessible({
192
- hidden: true
193
- })), {}, {
194
- children: /*#__PURE__*/jsx(Checkbox, {
195
- isChecked: isSelected,
196
- tabIndex: -1,
197
- isDisabled: isDisabled,
198
- children: null
199
- })
200
- }));
201
- }
202
- return /*#__PURE__*/React__default.isValidElement(leading) ? leading : null;
185
+ return /*#__PURE__*/jsx(BaseBox, _objectSpread(_objectSpread({
186
+ pointerEvents: "none"
187
+ // Adding aria-hidden because the listbox item in multiselect in itself explains the behaviour so announcing checkbox is unneccesary and just a nice UI tweak for us
188
+ }, makeAccessible({
189
+ hidden: true
190
+ })), {}, {
191
+ children: /*#__PURE__*/jsx(Checkbox, {
192
+ isChecked: isSelected,
193
+ tabIndex: -1,
194
+ isDisabled: isDisabled,
195
+ children: null
196
+ })
197
+ }));
203
198
  };
204
199
  var makeActionListItemClickable = function makeActionListItemClickable(clickHandler) {
205
200
  if (isReactNative()) {
@@ -243,8 +238,7 @@ var _ActionListItem = function _ActionListItem(props) {
243
238
  dropdownTriggerer = _useDropdown2.dropdownTriggerer,
244
239
  isKeydownPressed = _useDropdown2.isKeydownPressed,
245
240
  filteredValues = _useDropdown2.filteredValues,
246
- hasAutoCompleteInHeader = _useDropdown2.hasAutoCompleteInHeader,
247
- hasUnControlledFilterChipSelectInput = _useDropdown2.hasUnControlledFilterChipSelectInput;
241
+ hasAutoCompleteInHeader = _useDropdown2.hasAutoCompleteInHeader;
248
242
  React__default.useEffect(function () {
249
243
  if (activeIndex === props._index && props._virtualizedIndex !== undefined) {
250
244
  var _props$_onVirtualized;
@@ -253,6 +247,7 @@ var _ActionListItem = function _ActionListItem(props) {
253
247
  // eslint-disable-next-line react-hooks/exhaustive-deps
254
248
  }, [activeIndex]);
255
249
  var hasAutoComplete = hasAutoCompleteInHeader || dropdownTriggerer === dropdownComponentIds.triggers.AutoComplete;
250
+ var hasFilterChipSelectInput = dropdownTriggerer === dropdownComponentIds.triggers.FilterChipSelectInput;
256
251
  var renderOnWebAs = props.href ? 'a' : 'button';
257
252
  /**
258
253
  * In SelectInput, returns the isSelected according to selected indexes in the state
@@ -261,7 +256,7 @@ var _ActionListItem = function _ActionListItem(props) {
261
256
  * isSelected prop explicitly is the only way to select item in menu
262
257
  */
263
258
  var getIsSelected = function getIsSelected() {
264
- if (dropdownTriggerer === dropdownComponentIds.triggers.SelectInput || hasAutoComplete || hasUnControlledFilterChipSelectInput) {
259
+ if (dropdownTriggerer === dropdownComponentIds.triggers.SelectInput || hasAutoComplete || hasFilterChipSelectInput) {
265
260
  if (typeof props._index === 'number') {
266
261
  return selectedIndices.includes(props._index);
267
262
  }
@@ -295,12 +290,10 @@ var _ActionListItem = function _ActionListItem(props) {
295
290
  tabIndex: -1,
296
291
  title: props.title,
297
292
  description: props.description,
298
- leading: /*#__PURE__*/jsx(BaseMenuLeadingItem, {
293
+ leading: selectionType === 'multiple' ? /*#__PURE__*/jsx(BaseMenuLeadingItem, {
299
294
  isSelected: isSelected,
300
- leading: props.leading,
301
- selectionType: selectionType,
302
295
  isDisabled: props.isDisabled
303
- }, "".concat(dropdownBaseId, "-").concat(props._index, "-leading-").concat(isSelected)),
296
+ }, "".concat(dropdownBaseId, "-").concat(props._index, "-leading-").concat(isSelected)) : props.leading,
304
297
  trailing: props.trailing,
305
298
  titleSuffix: props.titleSuffix,
306
299
  href: props.href,
@@ -1 +1 @@
1
- {"version":3,"file":"ActionListItem.js","sources":["../../../../../../src/components/ActionList/ActionListItem.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-ts-comment */\nimport React from 'react';\nimport styled from 'styled-components';\nimport type { TouchableOpacity } from 'react-native';\nimport { componentIds } from './componentIds';\nimport { validateActionListItemProps, getNormalTextColor } from './actionListUtils';\nimport { getActionListItemRole, getActionListSectionRole } from './getA11yRoles';\nimport { Divider } from '~components/Divider';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { IconComponent } from '~components/Icons';\nimport { useDropdown } from '~components/Dropdown/useDropdown';\nimport type { FeedbackColors } from '~tokens/theme/theme';\nimport { Text } from '~components/Typography';\nimport type { Platform } from '~utils';\nimport { castWebType, isReactNative } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport type { DataAnalyticsAttribute, StringChildrenType, TestID } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { makeSize } from '~utils/makeSize';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { throwBladeError } from '~utils/logger';\nimport type { BadgeProps } from '~components/Badge';\nimport { Badge } from '~components/Badge';\nimport { Box } from '~components/Box';\nimport { dropdownComponentIds } from '~components/Dropdown/dropdownComponentIds';\nimport { BaseMenuItem, useBaseMenuItem } from '~components/BaseMenu';\nimport { Checkbox } from '~components/Checkbox';\nimport type { AvatarProps } from '~components/Avatar/types';\nimport { Avatar } from '~components/Avatar';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype ActionListItemProps = {\n title: string;\n description?: string;\n onClick?: (clickProps: {\n name: string;\n value?: boolean;\n event: Platform.Select<{\n web: React.MouseEvent;\n native: React.TouchEvent<TouchableOpacity>;\n }>;\n }) => void;\n /**\n * value that you get from `onChange` event on SelectInput or in form submissions.\n */\n value: string;\n /**\n * Link to open when item is clicked.\n */\n href?: string;\n /**\n * HTML target of the link\n */\n target?: string;\n /**\n * Item that goes on left-side of item.\n *\n * Valid elements - `<ActionListItemIcon />`, `<ActionListItemAsset />`\n *\n * Will be overriden in multiselect\n */\n leading?: React.ReactNode;\n /**\n * Item that goes on right-side of item.\n *\n * Valid elements - `<ActionListItemText />`, `<ActionListItemIcon />`\n */\n trailing?: React.ReactNode;\n /**\n * Item that goes immediately next to the title.\n *\n * Valid elements - `<ActionListItemBadge />`, `<ActionListItemBadgeGroup />`\n *\n */\n titleSuffix?: React.ReactElement;\n isDisabled?: boolean;\n intent?: Extract<FeedbackColors, 'negative'>;\n /**\n * Can be used in combination of `onClick` to highlight item as selected in Button Triggers.\n *\n * When trigger is SelectInput, Use `value` prop on SelectInput instead to make dropdown controlled.\n */\n isSelected?: boolean;\n /**\n * Internally passed from ActionList. No need to pass it explicitly\n *\n * @private\n */\n _index?: number;\n /**\n * Internally used to pass index for virtualized lists\n *\n * @private\n */\n _virtualizedIndex?: number;\n /**\n * Internally used to focus on virtualized list\n *\n * @private\n */\n _onVirtualizedFocus?: (_virtuazedIndex: number) => void;\n} & TestID &\n DataAnalyticsAttribute;\n\nconst StyledActionListSectionTitle = styled(BaseBox)((props) => ({\n // @TODO: replace this styled-component with new layout box when we have padding shorthand\n padding: makeSize(props.theme.spacing[3]),\n}));\n\ntype ActionListSectionProps = {\n title: string;\n children: React.ReactNode[] | React.ReactNode;\n /**\n * Internally used to hide the divider on final item in React Native\n *\n * Should not be used by consumers (also won't work on web)\n *\n * @private\n */\n _hideDivider?: boolean;\n /**\n * Internally used to hide / show section in AutoComplete\n *\n * @private\n */\n _sectionChildValues?: string[];\n} & TestID &\n DataAnalyticsAttribute;\n\nconst _ActionListSectionTitle = ({\n title,\n isInsideVirtualizedList = false,\n}: {\n title: string;\n isInsideVirtualizedList?: boolean;\n}): React.ReactElement => {\n return (\n <StyledActionListSectionTitle\n {...makeAccessible({\n hidden: !isInsideVirtualizedList,\n role: isInsideVirtualizedList ? 'heading' : undefined,\n })}\n >\n <Text color=\"surface.text.gray.muted\" size=\"small\" weight=\"semibold\">\n {title}\n </Text>\n </StyledActionListSectionTitle>\n );\n};\n\nconst ActionListSectionTitle = assignWithoutSideEffects(_ActionListSectionTitle, {\n componentId: componentIds.ActionListSectionTitle,\n});\nconst _ActionListSection = ({\n title,\n children,\n testID,\n _hideDivider,\n _sectionChildValues,\n ...rest\n}: ActionListSectionProps): React.ReactElement => {\n const { hasAutoCompleteInHeader, dropdownTriggerer, filteredValues } = useDropdown();\n const hasAutoComplete =\n hasAutoCompleteInHeader || dropdownTriggerer === dropdownComponentIds.triggers.AutoComplete;\n\n const isSectionVisible = React.useMemo(() => {\n if (hasAutoComplete) {\n const visibleActionListItemInSection = _sectionChildValues?.find((actionItemValue) =>\n filteredValues.includes(actionItemValue),\n );\n\n return Boolean(visibleActionListItemInSection);\n }\n\n return true;\n }, [_sectionChildValues, hasAutoComplete, filteredValues]);\n\n const showDividerInRN = !(_hideDivider && isReactNative());\n const showDividerInAutoComplete = hasAutoComplete\n ? isSectionVisible && filteredValues.length > 1\n : true;\n\n return (\n <BaseBox\n {...makeAccessible({\n role: getActionListSectionRole(),\n label: title,\n })}\n {...metaAttribute({ name: MetaConstants.ActionListSection, testID })}\n {...makeAnalyticsAttribute(rest as Record<string, unknown>)}\n >\n {/* We're announcing title as group label so we can hide this */}\n {isSectionVisible ? <ActionListSectionTitle title={title} /> : null}\n\n <BaseBox\n {...makeAccessible({\n // On web, we just wrap it in another listbox to announce item count properly for particular group.\n // On React Native, we ignore it since `menu` + `group` role will take care of accessibility\n role: isReactNative() ? undefined : 'listbox',\n })}\n >\n {children}\n </BaseBox>\n {showDividerInAutoComplete && showDividerInRN ? (\n <Divider marginX=\"spacing.3\" marginY=\"spacing.1\" />\n ) : null}\n </BaseBox>\n );\n};\n\nconst ActionListSection = assignWithoutSideEffects(React.memo(_ActionListSection), {\n componentId: componentIds.ActionListSection,\n});\n\nconst _ActionListItemIcon = ({ icon }: { icon: IconComponent }): React.ReactElement => {\n const Icon = icon;\n const { color, isDisabled } = useBaseMenuItem();\n const iconState = isDisabled ? 'disabled' : 'muted';\n return (\n <Icon\n color={\n color === 'negative'\n ? 'feedback.icon.negative.intense'\n : `interactive.icon.gray.${iconState}`\n }\n size=\"medium\"\n />\n );\n};\n\nconst ActionListItemIcon = assignWithoutSideEffects(_ActionListItemIcon, {\n componentId: componentIds.ActionListItemIcon,\n});\n\nconst _ActionListItemBadgeGroup = ({\n children,\n}: {\n children: React.ReactElement[] | React.ReactElement;\n}): React.ReactElement => {\n return (\n <Box display=\"flex\" alignItems=\"center\" flexDirection=\"row\">\n {children}\n </Box>\n );\n};\n\nconst ActionListItemBadgeGroup = assignWithoutSideEffects(_ActionListItemBadgeGroup, {\n componentId: componentIds.ActionListItemBadgeGroup,\n});\n\nconst _ActionListItemAvatar = (avatarProps: Omit<AvatarProps, 'size' | ''>): React.ReactElement => {\n return <Avatar size=\"xsmall\" {...avatarProps} />;\n};\n\nconst ActionListItemAvatar = assignWithoutSideEffects(_ActionListItemAvatar, {\n componentId: componentIds.ActionListItemAvatar,\n});\n\nconst _ActionListItemBadge = (props: BadgeProps): React.ReactElement => {\n return <Badge size=\"medium\" marginLeft=\"spacing.3\" {...props} />;\n};\n\nconst ActionListItemBadge = assignWithoutSideEffects(_ActionListItemBadge, {\n componentId: componentIds.ActionListItemBadge,\n});\n\nconst _ActionListItemText = ({\n children,\n}: {\n children: StringChildrenType;\n}): React.ReactElement => {\n const { isDisabled } = useBaseMenuItem();\n\n return (\n <Text variant=\"caption\" color={getNormalTextColor(isDisabled, { isMuted: true })}>\n {children}\n </Text>\n );\n};\n\nconst ActionListItemText = assignWithoutSideEffects(_ActionListItemText, {\n componentId: componentIds.ActionListItemText,\n});\n\nconst BaseMenuLeadingItem = ({\n isSelected,\n leading,\n selectionType,\n isDisabled,\n}: {\n isSelected?: boolean;\n leading?: React.ReactNode;\n selectionType: string | undefined;\n isDisabled?: boolean;\n}): React.ReactElement | null => {\n if (selectionType === 'multiple') {\n return (\n <BaseBox\n pointerEvents=\"none\"\n // Adding aria-hidden because the listbox item in multiselect in itself explains the behaviour so announcing checkbox is unneccesary and just a nice UI tweak for us\n {...makeAccessible({\n hidden: true,\n })}\n >\n <Checkbox isChecked={isSelected} tabIndex={-1} isDisabled={isDisabled}>\n {/*\n Checkbox requires children. Didn't want to make it optional because its helpful for consumers\n But for this case in particular, we just want to use Text separately so that we can control spacing and color and keep it consistent with non-multiselect dropdowns\n */}\n {null}\n </Checkbox>\n </BaseBox>\n );\n }\n return React.isValidElement(leading) ? leading : null;\n};\n\ntype ClickHandlerType = (e: React.MouseEvent<HTMLButtonElement>) => void;\n\nconst makeActionListItemClickable = (\n clickHandler: ClickHandlerType,\n): { onPress?: (e: React.TouchEvent<TouchableOpacity>) => void; onClick?: ClickHandlerType } => {\n if (isReactNative()) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment, @typescript-eslint/prefer-ts-expect-error\n // @ts-ignore: ignoring ReactNative press type for the peace of mind\n return { onPress: clickHandler };\n }\n\n return {\n onClick: clickHandler,\n };\n};\n\n/**\n * ### ActionListItem\n *\n * Creates option inside `ActionList`.\n *\n * #### Usage\n *\n * ```jsx\n * <ActionList>\n * <ActionListItem\n * title=\"Home\"\n * value=\"home\"\n * leading={<ActionListItemIcon icon={HomeIcon} />}\n * trailing={<ActionListItemText>⌘ + S</ActionListItemText>}\n * />\n * </ActionList>\n * ```\n */\nconst _ActionListItem = (props: ActionListItemProps): React.ReactElement => {\n const {\n activeIndex,\n dropdownBaseId,\n onOptionClick,\n selectedIndices,\n setShouldIgnoreBlurAnimation,\n selectionType,\n dropdownTriggerer,\n isKeydownPressed,\n filteredValues,\n hasAutoCompleteInHeader,\n hasUnControlledFilterChipSelectInput,\n } = useDropdown();\n\n React.useEffect(() => {\n if (activeIndex === props._index && props._virtualizedIndex !== undefined) {\n props._onVirtualizedFocus?.(props._virtualizedIndex as number);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [activeIndex]);\n\n const hasAutoComplete =\n hasAutoCompleteInHeader || dropdownTriggerer === dropdownComponentIds.triggers.AutoComplete;\n\n const renderOnWebAs = props.href ? 'a' : 'button';\n /**\n * In SelectInput, returns the isSelected according to selected indexes in the state\n *\n * In Other Triggers (Menu Usecase), returns `props.isSelected` since passing the\n * isSelected prop explicitly is the only way to select item in menu\n */\n const getIsSelected = (): boolean | undefined => {\n if (\n dropdownTriggerer === dropdownComponentIds.triggers.SelectInput ||\n hasAutoComplete ||\n hasUnControlledFilterChipSelectInput\n ) {\n if (typeof props._index === 'number') {\n return selectedIndices.includes(props._index);\n }\n return undefined;\n }\n\n return props.isSelected;\n };\n\n const isSelected = getIsSelected();\n\n React.useEffect(() => {\n validateActionListItemProps({\n leading: props.leading,\n trailing: props.trailing,\n titleSuffix: props.titleSuffix,\n });\n }, [props.leading, props.trailing, props.titleSuffix]);\n\n React.useEffect(() => {\n if (__DEV__) {\n if (\n dropdownTriggerer === dropdownComponentIds.triggers.SelectInput &&\n props.intent === 'negative'\n ) {\n throwBladeError({\n message:\n 'negative intent ActionListItem cannot be used inside Dropdown with SelectInput trigger',\n moduleName: 'ActionListItem',\n });\n }\n }\n }, [props.intent, dropdownTriggerer]);\n\n const isVisible = hasAutoComplete && filteredValues ? filteredValues.includes(props.value) : true;\n\n return (\n <BaseMenuItem\n isVisible={isVisible}\n as={!isReactNative() ? renderOnWebAs : undefined}\n id={`${dropdownBaseId}-${props._index}`}\n tabIndex={-1}\n title={props.title}\n description={props.description}\n leading={\n <BaseMenuLeadingItem\n key={`${dropdownBaseId}-${props._index}-leading-${isSelected}`}\n isSelected={isSelected}\n leading={props.leading}\n selectionType={selectionType}\n isDisabled={props.isDisabled}\n />\n }\n trailing={props.trailing}\n titleSuffix={props.titleSuffix}\n href={props.href}\n target={props.target}\n className={activeIndex === props._index ? 'active-focus' : ''}\n isSelected={isSelected}\n isDisabled={props.isDisabled}\n role={getActionListItemRole(dropdownTriggerer, props.href)}\n {...makeActionListItemClickable((e: React.MouseEvent<HTMLButtonElement>): void => {\n if (typeof props._index === 'number') {\n onOptionClick(e, props._index);\n props.onClick?.({ name: props.value, value: isSelected, event: castWebType(e) });\n }\n })}\n {...makeAnalyticsAttribute({ ...props })}\n {...metaAttribute({ name: MetaConstants.ActionListItem, testID: props.testID })}\n onMouseDown={() => {\n // We want to keep focus on Dropdown's trigger while option is being clicked\n // So We set this flag that ignores the blur animation to avoid the flicker between focus out + focus in\n setShouldIgnoreBlurAnimation(true);\n }}\n onMouseUp={() => {\n // (Contd from above comment...) We set this flag back to false since blur of SelectInput is done calling by this time\n setShouldIgnoreBlurAnimation(false);\n }}\n data-value={props.value}\n data-index={props._index}\n selectionType={selectionType}\n color={props.intent}\n isKeydownPressed={isKeydownPressed}\n />\n );\n};\n\nconst ActionListItem = assignWithoutSideEffects(React.memo(_ActionListItem), {\n componentId: componentIds.ActionListItem,\n displayName: componentIds.ActionListItem,\n});\n\nexport type { ActionListItemProps, ActionListSectionProps };\nexport {\n ActionListItem,\n ActionListItemIcon,\n ActionListItemText,\n ActionListItemAvatar,\n ActionListItemBadge,\n ActionListItemBadgeGroup,\n ActionListSection,\n ActionListSectionTitle,\n};\n"],"names":["StyledActionListSectionTitle","styled","BaseBox","withConfig","displayName","componentId","props","padding","makeSize","theme","spacing","_ActionListSectionTitle","_ref","title","_ref$isInsideVirtuali","isInsideVirtualizedList","_jsx","_objectSpread","makeAccessible","hidden","role","undefined","children","Text","color","size","weight","ActionListSectionTitle","assignWithoutSideEffects","componentIds","_ActionListSection","_ref2","testID","_hideDivider","_sectionChildValues","rest","_objectWithoutProperties","_excluded","_useDropdown","useDropdown","hasAutoCompleteInHeader","dropdownTriggerer","filteredValues","hasAutoComplete","dropdownComponentIds","triggers","AutoComplete","isSectionVisible","React","useMemo","visibleActionListItemInSection","find","actionItemValue","includes","Boolean","showDividerInRN","isReactNative","showDividerInAutoComplete","length","_jsxs","getActionListSectionRole","label","metaAttribute","name","MetaConstants","ActionListSection","makeAnalyticsAttribute","Divider","marginX","marginY","memo","_ActionListItemIcon","_ref3","icon","Icon","_useBaseMenuItem","useBaseMenuItem","isDisabled","iconState","concat","ActionListItemIcon","_ActionListItemBadgeGroup","_ref4","Box","display","alignItems","flexDirection","ActionListItemBadgeGroup","_ActionListItemAvatar","avatarProps","Avatar","ActionListItemAvatar","_ActionListItemBadge","Badge","marginLeft","ActionListItemBadge","_ActionListItemText","_ref5","_useBaseMenuItem2","variant","getNormalTextColor","isMuted","ActionListItemText","BaseMenuLeadingItem","_ref6","isSelected","leading","selectionType","pointerEvents","Checkbox","isChecked","tabIndex","isValidElement","makeActionListItemClickable","clickHandler","onPress","onClick","_ActionListItem","_useDropdown2","activeIndex","dropdownBaseId","onOptionClick","selectedIndices","setShouldIgnoreBlurAnimation","isKeydownPressed","hasUnControlledFilterChipSelectInput","useEffect","_index","_virtualizedIndex","_props$_onVirtualized","_onVirtualizedFocus","call","renderOnWebAs","href","getIsSelected","SelectInput","validateActionListItemProps","trailing","titleSuffix","intent","throwBladeError","message","moduleName","isVisible","value","BaseMenuItem","as","id","description","target","className","getActionListItemRole","e","_props$onClick","event","castWebType","ActionListItem","onMouseDown","onMouseUp"],"mappings":"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"}
1
+ {"version":3,"file":"ActionListItem.js","sources":["../../../../../../src/components/ActionList/ActionListItem.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-ts-comment */\nimport React from 'react';\nimport styled from 'styled-components';\nimport type { TouchableOpacity } from 'react-native';\nimport { componentIds } from './componentIds';\nimport { validateActionListItemProps, getNormalTextColor } from './actionListUtils';\nimport { getActionListItemRole, getActionListSectionRole } from './getA11yRoles';\nimport { Divider } from '~components/Divider';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { IconComponent } from '~components/Icons';\nimport { useDropdown } from '~components/Dropdown/useDropdown';\nimport type { FeedbackColors } from '~tokens/theme/theme';\nimport { Text } from '~components/Typography';\nimport type { Platform } from '~utils';\nimport { castWebType, isReactNative } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport type { DataAnalyticsAttribute, StringChildrenType, TestID } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { makeSize } from '~utils/makeSize';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { throwBladeError } from '~utils/logger';\nimport type { BadgeProps } from '~components/Badge';\nimport { Badge } from '~components/Badge';\nimport { Box } from '~components/Box';\nimport { dropdownComponentIds } from '~components/Dropdown/dropdownComponentIds';\nimport { BaseMenuItem, useBaseMenuItem } from '~components/BaseMenu';\nimport { Checkbox } from '~components/Checkbox';\nimport type { AvatarProps } from '~components/Avatar/types';\nimport { Avatar } from '~components/Avatar';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype ActionListItemProps = {\n title: string;\n description?: string;\n onClick?: (clickProps: {\n name: string;\n value?: boolean;\n event: Platform.Select<{\n web: React.MouseEvent;\n native: React.TouchEvent<TouchableOpacity>;\n }>;\n }) => void;\n /**\n * value that you get from `onChange` event on SelectInput or in form submissions.\n */\n value: string;\n /**\n * Link to open when item is clicked.\n */\n href?: string;\n /**\n * HTML target of the link\n */\n target?: string;\n /**\n * Item that goes on left-side of item.\n *\n * Valid elements - `<ActionListItemIcon />`, `<ActionListItemAsset />`\n *\n * Will be overriden in multiselect\n */\n leading?: React.ReactNode;\n /**\n * Item that goes on right-side of item.\n *\n * Valid elements - `<ActionListItemText />`, `<ActionListItemIcon />`\n */\n trailing?: React.ReactNode;\n /**\n * Item that goes immediately next to the title.\n *\n * Valid elements - `<ActionListItemBadge />`, `<ActionListItemBadgeGroup />`\n *\n */\n titleSuffix?: React.ReactElement;\n isDisabled?: boolean;\n intent?: Extract<FeedbackColors, 'negative'>;\n /**\n * Can be used in combination of `onClick` to highlight item as selected in Button Triggers.\n *\n * When trigger is SelectInput, Use `value` prop on SelectInput instead to make dropdown controlled.\n */\n isSelected?: boolean;\n /**\n * Internally passed from ActionList. No need to pass it explicitly\n *\n * @private\n */\n _index?: number;\n /**\n * Internally used to pass index for virtualized lists\n *\n * @private\n */\n _virtualizedIndex?: number;\n /**\n * Internally used to focus on virtualized list\n *\n * @private\n */\n _onVirtualizedFocus?: (_virtuazedIndex: number) => void;\n} & TestID &\n DataAnalyticsAttribute;\n\nconst StyledActionListSectionTitle = styled(BaseBox)((props) => ({\n // @TODO: replace this styled-component with new layout box when we have padding shorthand\n padding: makeSize(props.theme.spacing[3]),\n}));\n\ntype ActionListSectionProps = {\n title: string;\n children: React.ReactNode[] | React.ReactNode;\n /**\n * Internally used to hide the divider on final item in React Native\n *\n * Should not be used by consumers (also won't work on web)\n *\n * @private\n */\n _hideDivider?: boolean;\n /**\n * Internally used to hide / show section in AutoComplete\n *\n * @private\n */\n _sectionChildValues?: string[];\n} & TestID &\n DataAnalyticsAttribute;\n\nconst _ActionListSectionTitle = ({\n title,\n isInsideVirtualizedList = false,\n}: {\n title: string;\n isInsideVirtualizedList?: boolean;\n}): React.ReactElement => {\n return (\n <StyledActionListSectionTitle\n {...makeAccessible({\n hidden: !isInsideVirtualizedList,\n role: isInsideVirtualizedList ? 'heading' : undefined,\n })}\n >\n <Text color=\"surface.text.gray.muted\" size=\"small\" weight=\"semibold\">\n {title}\n </Text>\n </StyledActionListSectionTitle>\n );\n};\n\nconst ActionListSectionTitle = assignWithoutSideEffects(_ActionListSectionTitle, {\n componentId: componentIds.ActionListSectionTitle,\n});\nconst _ActionListSection = ({\n title,\n children,\n testID,\n _hideDivider,\n _sectionChildValues,\n ...rest\n}: ActionListSectionProps): React.ReactElement => {\n const { hasAutoCompleteInHeader, dropdownTriggerer, filteredValues } = useDropdown();\n const hasAutoComplete =\n hasAutoCompleteInHeader || dropdownTriggerer === dropdownComponentIds.triggers.AutoComplete;\n\n const isSectionVisible = React.useMemo(() => {\n if (hasAutoComplete) {\n const visibleActionListItemInSection = _sectionChildValues?.find((actionItemValue) =>\n filteredValues.includes(actionItemValue),\n );\n\n return Boolean(visibleActionListItemInSection);\n }\n\n return true;\n }, [_sectionChildValues, hasAutoComplete, filteredValues]);\n\n const showDividerInRN = !(_hideDivider && isReactNative());\n const showDividerInAutoComplete = hasAutoComplete\n ? isSectionVisible && filteredValues.length > 1\n : true;\n\n return (\n <BaseBox\n {...makeAccessible({\n role: getActionListSectionRole(),\n label: title,\n })}\n {...metaAttribute({ name: MetaConstants.ActionListSection, testID })}\n {...makeAnalyticsAttribute(rest as Record<string, unknown>)}\n >\n {/* We're announcing title as group label so we can hide this */}\n {isSectionVisible ? <ActionListSectionTitle title={title} /> : null}\n\n <BaseBox\n {...makeAccessible({\n // On web, we just wrap it in another listbox to announce item count properly for particular group.\n // On React Native, we ignore it since `menu` + `group` role will take care of accessibility\n role: isReactNative() ? undefined : 'listbox',\n })}\n >\n {children}\n </BaseBox>\n {showDividerInAutoComplete && showDividerInRN ? (\n <Divider marginX=\"spacing.3\" marginY=\"spacing.1\" />\n ) : null}\n </BaseBox>\n );\n};\n\nconst ActionListSection = assignWithoutSideEffects(React.memo(_ActionListSection), {\n componentId: componentIds.ActionListSection,\n});\n\nconst _ActionListItemIcon = ({ icon }: { icon: IconComponent }): React.ReactElement => {\n const Icon = icon;\n const { color, isDisabled } = useBaseMenuItem();\n const iconState = isDisabled ? 'disabled' : 'muted';\n return (\n <Icon\n color={\n color === 'negative'\n ? 'feedback.icon.negative.intense'\n : `interactive.icon.gray.${iconState}`\n }\n size=\"medium\"\n />\n );\n};\n\nconst ActionListItemIcon = assignWithoutSideEffects(_ActionListItemIcon, {\n componentId: componentIds.ActionListItemIcon,\n});\n\nconst _ActionListItemBadgeGroup = ({\n children,\n}: {\n children: React.ReactElement[] | React.ReactElement;\n}): React.ReactElement => {\n return (\n <Box display=\"flex\" alignItems=\"center\" flexDirection=\"row\">\n {children}\n </Box>\n );\n};\n\nconst ActionListItemBadgeGroup = assignWithoutSideEffects(_ActionListItemBadgeGroup, {\n componentId: componentIds.ActionListItemBadgeGroup,\n});\n\nconst _ActionListItemAvatar = (avatarProps: Omit<AvatarProps, 'size' | ''>): React.ReactElement => {\n return <Avatar size=\"xsmall\" {...avatarProps} />;\n};\n\nconst ActionListItemAvatar = assignWithoutSideEffects(_ActionListItemAvatar, {\n componentId: componentIds.ActionListItemAvatar,\n});\n\nconst _ActionListItemBadge = (props: BadgeProps): React.ReactElement => {\n return <Badge size=\"medium\" marginLeft=\"spacing.3\" {...props} />;\n};\n\nconst ActionListItemBadge = assignWithoutSideEffects(_ActionListItemBadge, {\n componentId: componentIds.ActionListItemBadge,\n});\n\nconst _ActionListItemText = ({\n children,\n}: {\n children: StringChildrenType;\n}): React.ReactElement => {\n const { isDisabled } = useBaseMenuItem();\n\n return (\n <Text variant=\"caption\" color={getNormalTextColor(isDisabled, { isMuted: true })}>\n {children}\n </Text>\n );\n};\n\nconst ActionListItemText = assignWithoutSideEffects(_ActionListItemText, {\n componentId: componentIds.ActionListItemText,\n});\n\nconst BaseMenuLeadingItem = ({\n isSelected,\n isDisabled,\n}: {\n isSelected?: boolean;\n isDisabled?: boolean;\n}): React.ReactElement => {\n return (\n <BaseBox\n pointerEvents=\"none\"\n // Adding aria-hidden because the listbox item in multiselect in itself explains the behaviour so announcing checkbox is unneccesary and just a nice UI tweak for us\n {...makeAccessible({\n hidden: true,\n })}\n >\n <Checkbox isChecked={isSelected} tabIndex={-1} isDisabled={isDisabled}>\n {/*\n Checkbox requires children. Didn't want to make it optional because its helpful for consumers\n But for this case in particular, we just want to use Text separately so that we can control spacing and color and keep it consistent with non-multiselect dropdowns\n */}\n {null}\n </Checkbox>\n </BaseBox>\n );\n};\n\ntype ClickHandlerType = (e: React.MouseEvent<HTMLButtonElement>) => void;\n\nconst makeActionListItemClickable = (\n clickHandler: ClickHandlerType,\n): { onPress?: (e: React.TouchEvent<TouchableOpacity>) => void; onClick?: ClickHandlerType } => {\n if (isReactNative()) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment, @typescript-eslint/prefer-ts-expect-error\n // @ts-ignore: ignoring ReactNative press type for the peace of mind\n return { onPress: clickHandler };\n }\n\n return {\n onClick: clickHandler,\n };\n};\n\n/**\n * ### ActionListItem\n *\n * Creates option inside `ActionList`.\n *\n * #### Usage\n *\n * ```jsx\n * <ActionList>\n * <ActionListItem\n * title=\"Home\"\n * value=\"home\"\n * leading={<ActionListItemIcon icon={HomeIcon} />}\n * trailing={<ActionListItemText>⌘ + S</ActionListItemText>}\n * />\n * </ActionList>\n * ```\n */\nconst _ActionListItem = (props: ActionListItemProps): React.ReactElement => {\n const {\n activeIndex,\n dropdownBaseId,\n onOptionClick,\n selectedIndices,\n setShouldIgnoreBlurAnimation,\n selectionType,\n dropdownTriggerer,\n isKeydownPressed,\n filteredValues,\n hasAutoCompleteInHeader,\n } = useDropdown();\n\n React.useEffect(() => {\n if (activeIndex === props._index && props._virtualizedIndex !== undefined) {\n props._onVirtualizedFocus?.(props._virtualizedIndex as number);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [activeIndex]);\n\n const hasAutoComplete =\n hasAutoCompleteInHeader || dropdownTriggerer === dropdownComponentIds.triggers.AutoComplete;\n\n const hasFilterChipSelectInput =\n dropdownTriggerer === dropdownComponentIds.triggers.FilterChipSelectInput;\n\n const renderOnWebAs = props.href ? 'a' : 'button';\n /**\n * In SelectInput, returns the isSelected according to selected indexes in the state\n *\n * In Other Triggers (Menu Usecase), returns `props.isSelected` since passing the\n * isSelected prop explicitly is the only way to select item in menu\n */\n const getIsSelected = (): boolean | undefined => {\n if (\n dropdownTriggerer === dropdownComponentIds.triggers.SelectInput ||\n hasAutoComplete ||\n hasFilterChipSelectInput\n ) {\n if (typeof props._index === 'number') {\n return selectedIndices.includes(props._index);\n }\n return undefined;\n }\n\n return props.isSelected;\n };\n\n const isSelected = getIsSelected();\n\n React.useEffect(() => {\n validateActionListItemProps({\n leading: props.leading,\n trailing: props.trailing,\n titleSuffix: props.titleSuffix,\n });\n }, [props.leading, props.trailing, props.titleSuffix]);\n\n React.useEffect(() => {\n if (__DEV__) {\n if (\n dropdownTriggerer === dropdownComponentIds.triggers.SelectInput &&\n props.intent === 'negative'\n ) {\n throwBladeError({\n message:\n 'negative intent ActionListItem cannot be used inside Dropdown with SelectInput trigger',\n moduleName: 'ActionListItem',\n });\n }\n }\n }, [props.intent, dropdownTriggerer]);\n\n const isVisible = hasAutoComplete && filteredValues ? filteredValues.includes(props.value) : true;\n\n return (\n <BaseMenuItem\n isVisible={isVisible}\n as={!isReactNative() ? renderOnWebAs : undefined}\n id={`${dropdownBaseId}-${props._index}`}\n tabIndex={-1}\n title={props.title}\n description={props.description}\n leading={\n selectionType === 'multiple' ? (\n <BaseMenuLeadingItem\n key={`${dropdownBaseId}-${props._index}-leading-${isSelected}`}\n isSelected={isSelected}\n isDisabled={props.isDisabled}\n />\n ) : (\n props.leading\n )\n }\n trailing={props.trailing}\n titleSuffix={props.titleSuffix}\n href={props.href}\n target={props.target}\n className={activeIndex === props._index ? 'active-focus' : ''}\n isSelected={isSelected}\n isDisabled={props.isDisabled}\n role={getActionListItemRole(dropdownTriggerer, props.href)}\n {...makeActionListItemClickable((e: React.MouseEvent<HTMLButtonElement>): void => {\n if (typeof props._index === 'number') {\n onOptionClick(e, props._index);\n props.onClick?.({ name: props.value, value: isSelected, event: castWebType(e) });\n }\n })}\n {...makeAnalyticsAttribute({ ...props })}\n {...metaAttribute({ name: MetaConstants.ActionListItem, testID: props.testID })}\n onMouseDown={() => {\n // We want to keep focus on Dropdown's trigger while option is being clicked\n // So We set this flag that ignores the blur animation to avoid the flicker between focus out + focus in\n setShouldIgnoreBlurAnimation(true);\n }}\n onMouseUp={() => {\n // (Contd from above comment...) We set this flag back to false since blur of SelectInput is done calling by this time\n setShouldIgnoreBlurAnimation(false);\n }}\n data-value={props.value}\n data-index={props._index}\n selectionType={selectionType}\n color={props.intent}\n isKeydownPressed={isKeydownPressed}\n />\n );\n};\n\nconst ActionListItem = assignWithoutSideEffects(React.memo(_ActionListItem), {\n componentId: componentIds.ActionListItem,\n displayName: componentIds.ActionListItem,\n});\n\nexport type { ActionListItemProps, ActionListSectionProps };\nexport {\n ActionListItem,\n ActionListItemIcon,\n ActionListItemText,\n ActionListItemAvatar,\n ActionListItemBadge,\n ActionListItemBadgeGroup,\n ActionListSection,\n ActionListSectionTitle,\n};\n"],"names":["StyledActionListSectionTitle","styled","BaseBox","withConfig","displayName","componentId","props","padding","makeSize","theme","spacing","_ActionListSectionTitle","_ref","title","_ref$isInsideVirtuali","isInsideVirtualizedList","_jsx","_objectSpread","makeAccessible","hidden","role","undefined","children","Text","color","size","weight","ActionListSectionTitle","assignWithoutSideEffects","componentIds","_ActionListSection","_ref2","testID","_hideDivider","_sectionChildValues","rest","_objectWithoutProperties","_excluded","_useDropdown","useDropdown","hasAutoCompleteInHeader","dropdownTriggerer","filteredValues","hasAutoComplete","dropdownComponentIds","triggers","AutoComplete","isSectionVisible","React","useMemo","visibleActionListItemInSection","find","actionItemValue","includes","Boolean","showDividerInRN","isReactNative","showDividerInAutoComplete","length","_jsxs","getActionListSectionRole","label","metaAttribute","name","MetaConstants","ActionListSection","makeAnalyticsAttribute","Divider","marginX","marginY","memo","_ActionListItemIcon","_ref3","icon","Icon","_useBaseMenuItem","useBaseMenuItem","isDisabled","iconState","concat","ActionListItemIcon","_ActionListItemBadgeGroup","_ref4","Box","display","alignItems","flexDirection","ActionListItemBadgeGroup","_ActionListItemAvatar","avatarProps","Avatar","ActionListItemAvatar","_ActionListItemBadge","Badge","marginLeft","ActionListItemBadge","_ActionListItemText","_ref5","_useBaseMenuItem2","variant","getNormalTextColor","isMuted","ActionListItemText","BaseMenuLeadingItem","_ref6","isSelected","pointerEvents","Checkbox","isChecked","tabIndex","makeActionListItemClickable","clickHandler","onPress","onClick","_ActionListItem","_useDropdown2","activeIndex","dropdownBaseId","onOptionClick","selectedIndices","setShouldIgnoreBlurAnimation","selectionType","isKeydownPressed","useEffect","_index","_virtualizedIndex","_props$_onVirtualized","_onVirtualizedFocus","call","hasFilterChipSelectInput","FilterChipSelectInput","renderOnWebAs","href","getIsSelected","SelectInput","validateActionListItemProps","leading","trailing","titleSuffix","intent","throwBladeError","message","moduleName","isVisible","value","BaseMenuItem","as","id","description","target","className","getActionListItemRole","e","_props$onClick","event","castWebType","ActionListItem","onMouseDown","onMouseUp"],"mappings":"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"}
@@ -106,25 +106,21 @@ var _Dropdown = function _Dropdown(_ref, ref) {
106
106
  setHasAutoCompleteInHeader = _React$useState18[1];
107
107
  var _React$useState19 = React__default.useState(false),
108
108
  _React$useState20 = _slicedToArray(_React$useState19, 2),
109
- hasUnControlledFilterChipSelectInput = _React$useState20[0],
110
- setHasUnControlledFilterChipSelectInput = _React$useState20[1];
111
- var _React$useState21 = React__default.useState(false),
109
+ isKeydownPressed = _React$useState20[0],
110
+ setIsKeydownPressed = _React$useState20[1];
111
+ var _React$useState21 = React__default.useState(0),
112
112
  _React$useState22 = _slicedToArray(_React$useState21, 2),
113
- isKeydownPressed = _React$useState22[0],
114
- setIsKeydownPressed = _React$useState22[1];
115
- var _React$useState23 = React__default.useState(0),
113
+ changeCallbackTriggerer = _React$useState22[0],
114
+ setChangeCallbackTriggerer = _React$useState22[1];
115
+ var _React$useState23 = React__default.useState(false),
116
116
  _React$useState24 = _slicedToArray(_React$useState23, 2),
117
- changeCallbackTriggerer = _React$useState24[0],
118
- setChangeCallbackTriggerer = _React$useState24[1];
117
+ isControlled = _React$useState24[0],
118
+ setIsControlled = _React$useState24[1];
119
+ // keep track if dropdown contains bottomsheet
119
120
  var _React$useState25 = React__default.useState(false),
120
121
  _React$useState26 = _slicedToArray(_React$useState25, 2),
121
- isControlled = _React$useState26[0],
122
- setIsControlled = _React$useState26[1];
123
- // keep track if dropdown contains bottomsheet
124
- var _React$useState27 = React__default.useState(false),
125
- _React$useState28 = _slicedToArray(_React$useState27, 2),
126
- dropdownHasBottomSheet = _React$useState28[0],
127
- setDropdownHasBottomSheet = _React$useState28[1];
122
+ dropdownHasBottomSheet = _React$useState26[0],
123
+ setDropdownHasBottomSheet = _React$useState26[1];
128
124
 
129
125
  /**
130
126
  * In inputs, actual input is smaller than the visible input wrapper.
@@ -230,8 +226,6 @@ var _Dropdown = function _Dropdown(_ref, ref) {
230
226
  setHasFooterAction: setHasFooterAction,
231
227
  hasAutoCompleteInHeader: hasAutoCompleteInHeader,
232
228
  setHasAutoCompleteInHeader: setHasAutoCompleteInHeader,
233
- hasUnControlledFilterChipSelectInput: hasUnControlledFilterChipSelectInput,
234
- setHasUnControlledFilterChipSelectInput: setHasUnControlledFilterChipSelectInput,
235
229
  dropdownTriggerer: dropdownTriggerer.current,
236
230
  changeCallbackTriggerer: changeCallbackTriggerer,
237
231
  setChangeCallbackTriggerer: setChangeCallbackTriggerer,
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.js","sources":["../../../../../../src/components/Dropdown/Dropdown.tsx"],"sourcesContent":["import React from 'react';\nimport { DropdownContext } from './useDropdown';\nimport type { DropdownContextType } from './useDropdown';\nimport type { DropdownProps } from './types';\nimport { dropdownComponentIds } from './dropdownComponentIds';\nimport { useId } from '~utils/useId';\nimport { ComponentIds as bottomSheetComponentIds } from '~components/BottomSheet/componentIds';\nimport { BottomSheetAndDropdownGlueContext } from '~components/BottomSheet/BottomSheetContext';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport BaseBox from '~components/Box/BaseBox';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { getComponentId, isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { throwBladeError } from '~utils/logger';\nimport type { BladeElementRef, ContainerElementType } from '~utils/types';\nimport { useControllableState } from '~utils/useControllable';\nimport { mergeRefs } from '~utils/useMergeRefs';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst validDropdownChildren = [\n // TODO: Remove Box once CountrySelector's button sizing is fixed\n dropdownComponentIds.BaseBox,\n dropdownComponentIds.triggers.SelectInput,\n dropdownComponentIds.triggers.SearchInput,\n dropdownComponentIds.triggers.DropdownButton,\n dropdownComponentIds.triggers.DropdownIconButton,\n dropdownComponentIds.triggers.DropdownLink,\n dropdownComponentIds.DropdownOverlay,\n dropdownComponentIds.triggers.AutoComplete,\n bottomSheetComponentIds.BottomSheet,\n dropdownComponentIds.triggers.FilterChipSelectInput,\n];\n\n/**\n * ### Dropdown component\n *\n * Dropdown component is generic component that controls the dropdown functionality.\n * It can be used with multiple triggers and mostly contains ActionList component inside it\n *\n * ---\n *\n * #### Usage\n *\n * ```jsx\n * <Dropdown selectionType=\"single\">\n * <SelectInput />\n * <DropdownOverlay>\n * <ActionList>\n * <ActionListItem />\n * <ActionListItem />\n * </ActionList>\n * </DropdownOverlay>\n * </Dropdown>\n * ```\n *\n * ---\n *\n * Checkout {@link https://blade.razorpay.com/?path=/docs/components-dropdown-with-select--with-single-select Dropdown Documentation}\n */\nconst _Dropdown = (\n {\n children,\n isOpen: isOpenControlled,\n onOpenChange,\n selectionType = 'single',\n testID,\n _width,\n ...rest\n }: DropdownProps,\n ref: React.Ref<BladeElementRef>,\n): React.ReactElement => {\n const [options, setOptions] = React.useState<DropdownContextType['options']>([]);\n const [filteredValues, setFilteredValues] = React.useState<string[]>([]);\n const [selectedIndices, setSelectedIndices] = React.useState<\n DropdownContextType['selectedIndices']\n >([]);\n const [controlledValueIndices, setControlledValueIndices] = React.useState<\n DropdownContextType['selectedIndices']\n >([]);\n const [activeIndex, setActiveIndex] = React.useState(-1);\n const [activeTagIndex, setActiveTagIndex] = React.useState(-1);\n const [shouldIgnoreBlurAnimation, setShouldIgnoreBlurAnimation] = React.useState(false);\n const [hasFooterAction, setHasFooterAction] = React.useState(false);\n const [hasAutoCompleteInHeader, setHasAutoCompleteInHeader] = React.useState(false);\n const [\n hasUnControlledFilterChipSelectInput,\n setHasUnControlledFilterChipSelectInput,\n ] = React.useState(false);\n const [isKeydownPressed, setIsKeydownPressed] = React.useState(false);\n const [changeCallbackTriggerer, setChangeCallbackTriggerer] = React.useState<\n DropdownContextType['changeCallbackTriggerer']\n >(0);\n const [isControlled, setIsControlled] = React.useState(false);\n // keep track if dropdown contains bottomsheet\n const [dropdownHasBottomSheet, setDropdownHasBottomSheet] = React.useState(false);\n\n /**\n * In inputs, actual input is smaller than the visible input wrapper.\n * You can set this reference in such cases so floating ui calculations happen correctly\n * */\n const triggererWrapperRef = React.useRef<ContainerElementType>(null);\n const triggererRef = React.useRef<HTMLButtonElement>(null);\n const headerAutoCompleteRef = React.useRef<HTMLButtonElement>(null);\n const actionListItemRef = React.useRef<HTMLDivElement>(null);\n const dropdownTriggerer = React.useRef<DropdownContextType['dropdownTriggerer']>();\n const isTagDismissedRef = React.useRef<{ value: boolean } | null>({ value: false });\n const visibleTagsCountRef = React.useRef<{ value: number }>({ value: 0 });\n const dropdownContainerRef = React.useRef<HTMLDivElement>(null);\n\n const dropdownBaseId = useId('dropdown');\n const isDropdownOpenRef = React.useRef(isOpenControlled);\n\n const [isDropdownOpen, setIsDropdownOpen] = useControllableState({\n value: isOpenControlled,\n defaultValue: false,\n onChange: (isOpenControlledValue) => {\n isDropdownOpenRef.current = isOpenControlledValue;\n onOpenChange?.(isOpenControlledValue);\n },\n });\n\n isDropdownOpenRef.current = isDropdownOpen;\n\n const setIsOpen = (isOpenValue: boolean): void => {\n isDropdownOpenRef.current = isOpenValue;\n setIsDropdownOpen(() => isOpenValue);\n };\n\n const close = React.useCallback(() => {\n setActiveTagIndex(-1);\n setIsOpen(false);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n if (__DEV__) {\n if (!validDropdownChildren.includes(getComponentId(child) ?? '')) {\n throwBladeError({\n message: `Dropdown can only have one of following elements as children - \\n\\n ${validDropdownChildren.join(\n ', ',\n )} \\n\\n Check out: https://blade.razorpay.com/?path=/story/components-dropdown`,\n moduleName: 'Dropdown',\n });\n }\n }\n\n if (isValidAllowedChildren(child, dropdownComponentIds.triggers.SelectInput)) {\n dropdownTriggerer.current = 'SelectInput';\n }\n\n if (isValidAllowedChildren(child, dropdownComponentIds.triggers.SearchInput)) {\n dropdownTriggerer.current = 'SearchInput';\n }\n\n if (isValidAllowedChildren(child, dropdownComponentIds.triggers.DropdownButton)) {\n dropdownTriggerer.current = 'DropdownButton';\n }\n\n if (isValidAllowedChildren(child, dropdownComponentIds.triggers.DropdownIconButton)) {\n dropdownTriggerer.current = 'DropdownIconButton';\n }\n\n if (isValidAllowedChildren(child, dropdownComponentIds.triggers.AutoComplete)) {\n dropdownTriggerer.current = 'AutoComplete';\n }\n if (isValidAllowedChildren(child, dropdownComponentIds.triggers.FilterChipSelectInput)) {\n dropdownTriggerer.current = 'FilterChipSelectInput';\n }\n }\n });\n\n const contextValue = React.useMemo<DropdownContextType>(\n () => ({\n isOpen: isDropdownOpen,\n setIsOpen,\n close,\n selectedIndices,\n setSelectedIndices,\n controlledValueIndices,\n setControlledValueIndices,\n options,\n setOptions,\n filteredValues,\n setFilteredValues,\n activeIndex,\n setActiveIndex,\n activeTagIndex,\n setActiveTagIndex,\n visibleTagsCountRef,\n shouldIgnoreBlurAnimation,\n setShouldIgnoreBlurAnimation,\n isKeydownPressed,\n setIsKeydownPressed,\n dropdownBaseId,\n triggererRef,\n headerAutoCompleteRef,\n triggererWrapperRef,\n actionListItemRef,\n selectionType,\n hasFooterAction,\n setHasFooterAction,\n hasAutoCompleteInHeader,\n setHasAutoCompleteInHeader,\n hasUnControlledFilterChipSelectInput,\n setHasUnControlledFilterChipSelectInput,\n dropdownTriggerer: dropdownTriggerer.current,\n changeCallbackTriggerer,\n setChangeCallbackTriggerer,\n isControlled,\n setIsControlled,\n isTagDismissedRef,\n }),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n isDropdownOpen,\n isOpenControlled,\n selectedIndices,\n controlledValueIndices,\n options,\n filteredValues,\n activeIndex,\n activeTagIndex,\n shouldIgnoreBlurAnimation,\n selectionType,\n hasFooterAction,\n isKeydownPressed,\n changeCallbackTriggerer,\n isControlled,\n ],\n );\n\n const BottomSheetAndDropdownGlueContextValue = React.useMemo((): BottomSheetAndDropdownGlueContext => {\n return {\n isOpen: isDropdownOpen,\n dropdownHasBottomSheet,\n hasAutoCompleteInHeader,\n setDropdownHasBottomSheet,\n // This is the dismiss function which will be injected into the BottomSheet\n // Basically <BottomSheet onDismiss={onBottomSheetDismiss} />\n onBottomSheetDismiss: close,\n };\n }, [dropdownHasBottomSheet, hasAutoCompleteInHeader, isDropdownOpen, close]);\n\n return (\n <BottomSheetAndDropdownGlueContext.Provider value={BottomSheetAndDropdownGlueContextValue}>\n <DropdownContext.Provider value={contextValue}>\n <BaseBox\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ref={mergeRefs(ref, dropdownContainerRef as any)}\n {...metaAttribute({ name: MetaConstants.Dropdown, testID })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n width={_width}\n >\n <BaseBox position=\"relative\" textAlign={'left' as never}>\n {children}\n </BaseBox>\n </BaseBox>\n </DropdownContext.Provider>\n </BottomSheetAndDropdownGlueContext.Provider>\n );\n};\n\nconst Dropdown = assignWithoutSideEffects(React.forwardRef(_Dropdown), {\n componentId: dropdownComponentIds.Dropdown,\n});\n\nexport { Dropdown };\n"],"names":["validDropdownChildren","dropdownComponentIds","BaseBox","triggers","SelectInput","SearchInput","DropdownButton","DropdownIconButton","DropdownLink","DropdownOverlay","AutoComplete","bottomSheetComponentIds","BottomSheet","FilterChipSelectInput","_Dropdown","_ref","ref","children","isOpenControlled","isOpen","onOpenChange","_ref$selectionType","selectionType","testID","_width","rest","_objectWithoutProperties","_excluded","_React$useState","React","useState","_React$useState2","_slicedToArray","options","setOptions","_React$useState3","_React$useState4","filteredValues","setFilteredValues","_React$useState5","_React$useState6","selectedIndices","setSelectedIndices","_React$useState7","_React$useState8","controlledValueIndices","setControlledValueIndices","_React$useState9","_React$useState10","activeIndex","setActiveIndex","_React$useState11","_React$useState12","activeTagIndex","setActiveTagIndex","_React$useState13","_React$useState14","shouldIgnoreBlurAnimation","setShouldIgnoreBlurAnimation","_React$useState15","_React$useState16","hasFooterAction","setHasFooterAction","_React$useState17","_React$useState18","hasAutoCompleteInHeader","setHasAutoCompleteInHeader","_React$useState19","_React$useState20","hasUnControlledFilterChipSelectInput","setHasUnControlledFilterChipSelectInput","_React$useState21","_React$useState22","isKeydownPressed","setIsKeydownPressed","_React$useState23","_React$useState24","changeCallbackTriggerer","setChangeCallbackTriggerer","_React$useState25","_React$useState26","isControlled","setIsControlled","_React$useState27","_React$useState28","dropdownHasBottomSheet","setDropdownHasBottomSheet","triggererWrapperRef","useRef","triggererRef","headerAutoCompleteRef","actionListItemRef","dropdownTriggerer","isTagDismissedRef","value","visibleTagsCountRef","dropdownContainerRef","dropdownBaseId","useId","isDropdownOpenRef","_useControllableState","useControllableState","defaultValue","onChange","isOpenControlledValue","current","_useControllableState2","isDropdownOpen","setIsDropdownOpen","setIsOpen","isOpenValue","close","useCallback","Children","map","child","isValidElement","_getComponentId","includes","getComponentId","throwBladeError","message","concat","join","moduleName","isValidAllowedChildren","contextValue","useMemo","BottomSheetAndDropdownGlueContextValue","onBottomSheetDismiss","_jsx","BottomSheetAndDropdownGlueContext","Provider","DropdownContext","_objectSpread","mergeRefs","metaAttribute","name","MetaConstants","Dropdown","getStyledProps","makeAnalyticsAttribute","width","position","textAlign","assignWithoutSideEffects","forwardRef","componentId"],"mappings":"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"}
1
+ {"version":3,"file":"Dropdown.js","sources":["../../../../../../src/components/Dropdown/Dropdown.tsx"],"sourcesContent":["import React from 'react';\nimport { DropdownContext } from './useDropdown';\nimport type { DropdownContextType } from './useDropdown';\nimport type { DropdownProps } from './types';\nimport { dropdownComponentIds } from './dropdownComponentIds';\nimport { useId } from '~utils/useId';\nimport { ComponentIds as bottomSheetComponentIds } from '~components/BottomSheet/componentIds';\nimport { BottomSheetAndDropdownGlueContext } from '~components/BottomSheet/BottomSheetContext';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport BaseBox from '~components/Box/BaseBox';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { getComponentId, isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { throwBladeError } from '~utils/logger';\nimport type { BladeElementRef, ContainerElementType } from '~utils/types';\nimport { useControllableState } from '~utils/useControllable';\nimport { mergeRefs } from '~utils/useMergeRefs';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst validDropdownChildren = [\n // TODO: Remove Box once CountrySelector's button sizing is fixed\n dropdownComponentIds.BaseBox,\n dropdownComponentIds.triggers.SelectInput,\n dropdownComponentIds.triggers.SearchInput,\n dropdownComponentIds.triggers.DropdownButton,\n dropdownComponentIds.triggers.DropdownIconButton,\n dropdownComponentIds.triggers.DropdownLink,\n dropdownComponentIds.DropdownOverlay,\n dropdownComponentIds.triggers.AutoComplete,\n bottomSheetComponentIds.BottomSheet,\n dropdownComponentIds.triggers.FilterChipSelectInput,\n];\n\n/**\n * ### Dropdown component\n *\n * Dropdown component is generic component that controls the dropdown functionality.\n * It can be used with multiple triggers and mostly contains ActionList component inside it\n *\n * ---\n *\n * #### Usage\n *\n * ```jsx\n * <Dropdown selectionType=\"single\">\n * <SelectInput />\n * <DropdownOverlay>\n * <ActionList>\n * <ActionListItem />\n * <ActionListItem />\n * </ActionList>\n * </DropdownOverlay>\n * </Dropdown>\n * ```\n *\n * ---\n *\n * Checkout {@link https://blade.razorpay.com/?path=/docs/components-dropdown-with-select--with-single-select Dropdown Documentation}\n */\nconst _Dropdown = (\n {\n children,\n isOpen: isOpenControlled,\n onOpenChange,\n selectionType = 'single',\n testID,\n _width,\n ...rest\n }: DropdownProps,\n ref: React.Ref<BladeElementRef>,\n): React.ReactElement => {\n const [options, setOptions] = React.useState<DropdownContextType['options']>([]);\n const [filteredValues, setFilteredValues] = React.useState<string[]>([]);\n const [selectedIndices, setSelectedIndices] = React.useState<\n DropdownContextType['selectedIndices']\n >([]);\n const [controlledValueIndices, setControlledValueIndices] = React.useState<\n DropdownContextType['selectedIndices']\n >([]);\n const [activeIndex, setActiveIndex] = React.useState(-1);\n const [activeTagIndex, setActiveTagIndex] = React.useState(-1);\n const [shouldIgnoreBlurAnimation, setShouldIgnoreBlurAnimation] = React.useState(false);\n const [hasFooterAction, setHasFooterAction] = React.useState(false);\n const [hasAutoCompleteInHeader, setHasAutoCompleteInHeader] = React.useState(false);\n const [isKeydownPressed, setIsKeydownPressed] = React.useState(false);\n const [changeCallbackTriggerer, setChangeCallbackTriggerer] = React.useState<\n DropdownContextType['changeCallbackTriggerer']\n >(0);\n const [isControlled, setIsControlled] = React.useState(false);\n // keep track if dropdown contains bottomsheet\n const [dropdownHasBottomSheet, setDropdownHasBottomSheet] = React.useState(false);\n\n /**\n * In inputs, actual input is smaller than the visible input wrapper.\n * You can set this reference in such cases so floating ui calculations happen correctly\n * */\n const triggererWrapperRef = React.useRef<ContainerElementType>(null);\n const triggererRef = React.useRef<HTMLButtonElement>(null);\n const headerAutoCompleteRef = React.useRef<HTMLButtonElement>(null);\n const actionListItemRef = React.useRef<HTMLDivElement>(null);\n const dropdownTriggerer = React.useRef<DropdownContextType['dropdownTriggerer']>();\n const isTagDismissedRef = React.useRef<{ value: boolean } | null>({ value: false });\n const visibleTagsCountRef = React.useRef<{ value: number }>({ value: 0 });\n const dropdownContainerRef = React.useRef<HTMLDivElement>(null);\n\n const dropdownBaseId = useId('dropdown');\n const isDropdownOpenRef = React.useRef(isOpenControlled);\n\n const [isDropdownOpen, setIsDropdownOpen] = useControllableState({\n value: isOpenControlled,\n defaultValue: false,\n onChange: (isOpenControlledValue) => {\n isDropdownOpenRef.current = isOpenControlledValue;\n onOpenChange?.(isOpenControlledValue);\n },\n });\n\n isDropdownOpenRef.current = isDropdownOpen;\n\n const setIsOpen = (isOpenValue: boolean): void => {\n isDropdownOpenRef.current = isOpenValue;\n setIsDropdownOpen(() => isOpenValue);\n };\n\n const close = React.useCallback(() => {\n setActiveTagIndex(-1);\n setIsOpen(false);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n if (__DEV__) {\n if (!validDropdownChildren.includes(getComponentId(child) ?? '')) {\n throwBladeError({\n message: `Dropdown can only have one of following elements as children - \\n\\n ${validDropdownChildren.join(\n ', ',\n )} \\n\\n Check out: https://blade.razorpay.com/?path=/story/components-dropdown`,\n moduleName: 'Dropdown',\n });\n }\n }\n\n if (isValidAllowedChildren(child, dropdownComponentIds.triggers.SelectInput)) {\n dropdownTriggerer.current = 'SelectInput';\n }\n\n if (isValidAllowedChildren(child, dropdownComponentIds.triggers.SearchInput)) {\n dropdownTriggerer.current = 'SearchInput';\n }\n\n if (isValidAllowedChildren(child, dropdownComponentIds.triggers.DropdownButton)) {\n dropdownTriggerer.current = 'DropdownButton';\n }\n\n if (isValidAllowedChildren(child, dropdownComponentIds.triggers.DropdownIconButton)) {\n dropdownTriggerer.current = 'DropdownIconButton';\n }\n\n if (isValidAllowedChildren(child, dropdownComponentIds.triggers.AutoComplete)) {\n dropdownTriggerer.current = 'AutoComplete';\n }\n if (isValidAllowedChildren(child, dropdownComponentIds.triggers.FilterChipSelectInput)) {\n dropdownTriggerer.current = 'FilterChipSelectInput';\n }\n }\n });\n\n const contextValue = React.useMemo<DropdownContextType>(\n () => ({\n isOpen: isDropdownOpen,\n setIsOpen,\n close,\n selectedIndices,\n setSelectedIndices,\n controlledValueIndices,\n setControlledValueIndices,\n options,\n setOptions,\n filteredValues,\n setFilteredValues,\n activeIndex,\n setActiveIndex,\n activeTagIndex,\n setActiveTagIndex,\n visibleTagsCountRef,\n shouldIgnoreBlurAnimation,\n setShouldIgnoreBlurAnimation,\n isKeydownPressed,\n setIsKeydownPressed,\n dropdownBaseId,\n triggererRef,\n headerAutoCompleteRef,\n triggererWrapperRef,\n actionListItemRef,\n selectionType,\n hasFooterAction,\n setHasFooterAction,\n hasAutoCompleteInHeader,\n setHasAutoCompleteInHeader,\n dropdownTriggerer: dropdownTriggerer.current,\n changeCallbackTriggerer,\n setChangeCallbackTriggerer,\n isControlled,\n setIsControlled,\n isTagDismissedRef,\n }),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n isDropdownOpen,\n isOpenControlled,\n selectedIndices,\n controlledValueIndices,\n options,\n filteredValues,\n activeIndex,\n activeTagIndex,\n shouldIgnoreBlurAnimation,\n selectionType,\n hasFooterAction,\n isKeydownPressed,\n changeCallbackTriggerer,\n isControlled,\n ],\n );\n\n const BottomSheetAndDropdownGlueContextValue = React.useMemo((): BottomSheetAndDropdownGlueContext => {\n return {\n isOpen: isDropdownOpen,\n dropdownHasBottomSheet,\n hasAutoCompleteInHeader,\n setDropdownHasBottomSheet,\n // This is the dismiss function which will be injected into the BottomSheet\n // Basically <BottomSheet onDismiss={onBottomSheetDismiss} />\n onBottomSheetDismiss: close,\n };\n }, [dropdownHasBottomSheet, hasAutoCompleteInHeader, isDropdownOpen, close]);\n\n return (\n <BottomSheetAndDropdownGlueContext.Provider value={BottomSheetAndDropdownGlueContextValue}>\n <DropdownContext.Provider value={contextValue}>\n <BaseBox\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ref={mergeRefs(ref, dropdownContainerRef as any)}\n {...metaAttribute({ name: MetaConstants.Dropdown, testID })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n width={_width}\n >\n <BaseBox position=\"relative\" textAlign={'left' as never}>\n {children}\n </BaseBox>\n </BaseBox>\n </DropdownContext.Provider>\n </BottomSheetAndDropdownGlueContext.Provider>\n );\n};\n\nconst Dropdown = assignWithoutSideEffects(React.forwardRef(_Dropdown), {\n componentId: dropdownComponentIds.Dropdown,\n});\n\nexport { Dropdown };\n"],"names":["validDropdownChildren","dropdownComponentIds","BaseBox","triggers","SelectInput","SearchInput","DropdownButton","DropdownIconButton","DropdownLink","DropdownOverlay","AutoComplete","bottomSheetComponentIds","BottomSheet","FilterChipSelectInput","_Dropdown","_ref","ref","children","isOpenControlled","isOpen","onOpenChange","_ref$selectionType","selectionType","testID","_width","rest","_objectWithoutProperties","_excluded","_React$useState","React","useState","_React$useState2","_slicedToArray","options","setOptions","_React$useState3","_React$useState4","filteredValues","setFilteredValues","_React$useState5","_React$useState6","selectedIndices","setSelectedIndices","_React$useState7","_React$useState8","controlledValueIndices","setControlledValueIndices","_React$useState9","_React$useState10","activeIndex","setActiveIndex","_React$useState11","_React$useState12","activeTagIndex","setActiveTagIndex","_React$useState13","_React$useState14","shouldIgnoreBlurAnimation","setShouldIgnoreBlurAnimation","_React$useState15","_React$useState16","hasFooterAction","setHasFooterAction","_React$useState17","_React$useState18","hasAutoCompleteInHeader","setHasAutoCompleteInHeader","_React$useState19","_React$useState20","isKeydownPressed","setIsKeydownPressed","_React$useState21","_React$useState22","changeCallbackTriggerer","setChangeCallbackTriggerer","_React$useState23","_React$useState24","isControlled","setIsControlled","_React$useState25","_React$useState26","dropdownHasBottomSheet","setDropdownHasBottomSheet","triggererWrapperRef","useRef","triggererRef","headerAutoCompleteRef","actionListItemRef","dropdownTriggerer","isTagDismissedRef","value","visibleTagsCountRef","dropdownContainerRef","dropdownBaseId","useId","isDropdownOpenRef","_useControllableState","useControllableState","defaultValue","onChange","isOpenControlledValue","current","_useControllableState2","isDropdownOpen","setIsDropdownOpen","setIsOpen","isOpenValue","close","useCallback","Children","map","child","isValidElement","_getComponentId","includes","getComponentId","throwBladeError","message","concat","join","moduleName","isValidAllowedChildren","contextValue","useMemo","BottomSheetAndDropdownGlueContextValue","onBottomSheetDismiss","_jsx","BottomSheetAndDropdownGlueContext","Provider","DropdownContext","_objectSpread","mergeRefs","metaAttribute","name","MetaConstants","Dropdown","getStyledProps","makeAnalyticsAttribute","width","position","textAlign","assignWithoutSideEffects","forwardRef","componentId"],"mappings":"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"}
@@ -26,7 +26,7 @@ var _FilterChipSelectInput = function _FilterChipSelectInput(props) {
26
26
  var idBase = useId('filter-chip-select-input');
27
27
  var _onClick = props.onClick,
28
28
  _onBlur = props.onBlur,
29
- _onKeyDown = props.onKeyDown,
29
+ onKeyDown = props.onKeyDown,
30
30
  accessibilityLabel = props.accessibilityLabel,
31
31
  testID = props.testID,
32
32
  value = props.value,
@@ -52,7 +52,6 @@ var _FilterChipSelectInput = function _FilterChipSelectInput(props) {
52
52
  triggererRef = _useDropdown.triggererRef,
53
53
  selectionType = _useDropdown.selectionType,
54
54
  isControlled = _useDropdown.isControlled,
55
- setHasUnControlledFilterChipSelectInput = _useDropdown.setHasUnControlledFilterChipSelectInput,
56
55
  setSelectedIndices = _useDropdown.setSelectedIndices,
57
56
  controlledValueIndices = _useDropdown.controlledValueIndices,
58
57
  changeCallbackTriggerer = _useDropdown.changeCallbackTriggerer;
@@ -79,8 +78,10 @@ var _FilterChipSelectInput = function _FilterChipSelectInput(props) {
79
78
  });
80
79
  };
81
80
  useEffect(function () {
81
+ var valueNotEmpty = typeof value === 'string' && value.trim() !== '' || Array.isArray(value) && value.length > 0;
82
+ // since we need to sync state only one time so skipping value checking.
83
+ var isValueAndSelectedOptoinsSynced = typeof value === 'string' && value && selectedIndices.length === 1 || Array.isArray(value) && value.length === selectedIndices.length;
82
84
  if (isUnControlled) {
83
- setHasUnControlledFilterChipSelectInput(true);
84
85
  if (listViewSelectedFilters[label]) {
85
86
  var _value = listViewSelectedFilters[label];
86
87
  setSelectedIndices(_value);
@@ -95,9 +96,19 @@ var _FilterChipSelectInput = function _FilterChipSelectInput(props) {
95
96
  } else if (listViewSelectedFilters[label]) {
96
97
  var _value2 = listViewSelectedFilters[label];
97
98
  setSelectedIndices(_value2);
99
+ // This would be the case when filterChipSelectInput is controlled and are being opened first time
100
+ } else if (valueNotEmpty && !isValueAndSelectedOptoinsSynced && options.length > 0) {
101
+ var _selectedIndices = typeof value === 'string' ? [options.findIndex(function (option) {
102
+ return option.value === value;
103
+ })] : options.map(function (option, index) {
104
+ return value.includes(option.value) ? index : -1;
105
+ }).filter(function (index) {
106
+ return index !== -1;
107
+ });
108
+ setSelectedIndices(_selectedIndices);
98
109
  }
99
110
  // eslint-disable-next-line react-hooks/exhaustive-deps
100
- }, [isUnControlled]);
111
+ }, [isUnControlled, options]);
101
112
  var getTitleFromValue = function getTitleFromValue(value) {
102
113
  var option = options.find(function (option) {
103
114
  return option.value === value;
@@ -137,6 +148,7 @@ var _FilterChipSelectInput = function _FilterChipSelectInput(props) {
137
148
  updatedFilters = _objectWithoutProperties(prev, [label].map(_toPropertyKey));
138
149
  return updatedFilters;
139
150
  });
151
+ setSelectedIndices([]);
140
152
  };
141
153
  useEffect(function () {
142
154
  if (clearFilterCallbackTriggerer) {
@@ -180,6 +192,21 @@ var _FilterChipSelectInput = function _FilterChipSelectInput(props) {
180
192
  }
181
193
  // eslint-disable-next-line react-hooks/exhaustive-deps
182
194
  }, [changeCallbackTriggerer]);
195
+ var handleKeyDown = function handleKeyDown(e) {
196
+ onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);
197
+ onTriggerKeydown === null || onTriggerKeydown === void 0 ? void 0 : onTriggerKeydown({
198
+ event: e
199
+ });
200
+ if (e.key === 'Escape') {
201
+ e.preventDefault();
202
+ e.stopPropagation();
203
+ }
204
+ if ((e.key === 'Enter' || e.key === ' ') && !isOpen) {
205
+ e.preventDefault();
206
+ e.stopPropagation();
207
+ onTriggerClick();
208
+ }
209
+ };
183
210
  return /*#__PURE__*/jsx(BaseFilterChip, _objectSpread(_objectSpread({
184
211
  label: label,
185
212
  value: valueTitle !== null && valueTitle !== void 0 ? valueTitle : getUnControlledFilterChipValue(),
@@ -187,6 +214,7 @@ var _FilterChipSelectInput = function _FilterChipSelectInput(props) {
187
214
  selectionType: selectionType
188
215
  }, rest), {}, {
189
216
  ref: triggererRef,
217
+ onKeyDown: handleKeyDown,
190
218
  accessibilityProps: {
191
219
  label: accessibilityLabel !== null && accessibilityLabel !== void 0 ? accessibilityLabel : label,
192
220
  hasPopup: getActionListContainerRole(hasFooterAction, 'FilterChipSelectInput'),
@@ -196,20 +224,10 @@ var _FilterChipSelectInput = function _FilterChipSelectInput(props) {
196
224
  },
197
225
  onClick: function onClick(e) {
198
226
  onTriggerClick();
199
- // Setting it for web fails it on native typecheck and vice versa
200
227
  _onClick === null || _onClick === void 0 ? void 0 : _onClick(e);
201
228
  },
202
229
  onBlur: function onBlur(e) {
203
- // With button trigger, there is no "value" as such. It's just clickable items
204
- // Setting it for web fails it on native typecheck and vice versa
205
230
  _onBlur === null || _onBlur === void 0 ? void 0 : _onBlur(e);
206
- },
207
- onKeyDown: function onKeyDown(e) {
208
- onTriggerKeydown === null || onTriggerKeydown === void 0 ? void 0 : onTriggerKeydown({
209
- event: e
210
- });
211
- // Setting it for web fails it on native typecheck and vice versa
212
- _onKeyDown === null || _onKeyDown === void 0 ? void 0 : _onKeyDown(e);
213
231
  }
214
232
  }));
215
233
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FilterChipSelectInput.web.js","sources":["../../../../../../src/components/Dropdown/FilterChipSelectInput.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable @typescript-eslint/no-unnecessary-type-assertion */\n\nimport React, { useEffect } from 'react';\nimport { useDropdown } from './useDropdown';\nimport { dropdownComponentIds } from './dropdownComponentIds';\nimport { useFilterChipGroupContext } from './FilterChipGroupContext.web';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { BaseFilterChip } from '~components/FilterChip/BaseFilterChip';\nimport { getActionListContainerRole } from '~components/ActionList/getA11yRoles';\nimport type { BaseFilterChipProps } from '~components/FilterChip/types';\nimport type { DataAnalyticsAttribute } from '~utils/types';\nimport { useId } from '~utils/useId';\nimport { useListViewFilterContext } from '~components/ListView/ListViewFiltersContext.web';\nimport { useFirstRender } from '~utils/useFirstRender';\n\ntype FilterChipSelectInputProps = Pick<\n BaseFilterChipProps,\n 'onKeyDown' | 'value' | 'label' | 'testID' | 'onClick' | 'selectionType' | 'onBlur'\n> & {\n accessibilityLabel?: string;\n onChange?: (props: { name: string; values: string[] }) => void;\n name?: string;\n onClearButtonClick?: (props: { name: string; values: string[] }) => void;\n} & DataAnalyticsAttribute;\n\nconst _FilterChipSelectInput = (props: FilterChipSelectInputProps): React.ReactElement => {\n const idBase = useId('filter-chip-select-input');\n const {\n onClick,\n onBlur,\n onKeyDown,\n accessibilityLabel,\n testID,\n value,\n onClearButtonClick,\n label,\n onChange,\n name,\n ...rest\n } = props;\n const [uncontrolledInputValue, setUncontrolledInputValue] = React.useState<string[]>([]);\n const isFirstRender = useFirstRender();\n\n const {\n options,\n selectedIndices,\n onTriggerClick,\n onTriggerKeydown,\n dropdownBaseId,\n isOpen,\n activeIndex,\n hasFooterAction,\n triggererRef,\n selectionType,\n isControlled,\n setHasUnControlledFilterChipSelectInput,\n setSelectedIndices,\n controlledValueIndices,\n changeCallbackTriggerer,\n } = useDropdown();\n const valueTitle = options.find((option) => option.value === value)?.title ?? value;\n\n const isUnControlled = options.length > 0 && props.value === undefined;\n // Currently we are having 2 context for selectedFilters. One is for FilterChipGroup and other is for ListView\n const { listViewSelectedFilters, setListViewSelectedFilters } = useListViewFilterContext();\n const {\n clearFilterCallbackTriggerer,\n setFilterChipGroupSelectedFilters,\n } = useFilterChipGroupContext();\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 useEffect(() => {\n if (isUnControlled) {\n setHasUnControlledFilterChipSelectInput(true);\n if (listViewSelectedFilters[label]) {\n const value = (listViewSelectedFilters[label] as unknown) as number[];\n setSelectedIndices(value);\n const inputValue = value.map((selectionIndex) => options[selectionIndex].value);\n setUncontrolledInputValue(inputValue);\n setFilterChipGroupSelectedFilters((prev) =>\n prev.includes(label) ? prev : [...prev, label],\n );\n }\n } else if (listViewSelectedFilters[label]) {\n const value = (listViewSelectedFilters[label] as unknown) as number[];\n setSelectedIndices(value);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isUnControlled]);\n\n const getTitleFromValue = (value: string): string => {\n const option = options.find((option) => option.value === value);\n return option ? option.title : '';\n };\n\n const getUnControlledFilterChipValue = (): string | string[] => {\n if (selectionType === 'single') {\n if (uncontrolledInputValue.length > 0) {\n return getTitleFromValue(uncontrolledInputValue[0]);\n }\n return '';\n }\n return uncontrolledInputValue;\n };\n\n const handleClearButtonClick = (): void => {\n props.onClearButtonClick?.({ name: name ?? idBase, values: getValuesArrayFromIndices() });\n props.onChange?.({ name: name ?? idBase, values: [] });\n if (isUnControlled) {\n setUncontrolledInputValue([]);\n setSelectedIndices([]);\n }\n setFilterChipGroupSelectedFilters((prev) => prev.filter((filter) => filter !== label));\n setListViewSelectedFilters((prev) => {\n const { [label]: _, ...updatedFilters } = prev;\n return updatedFilters;\n });\n };\n\n useEffect(() => {\n if (clearFilterCallbackTriggerer) {\n handleClearButtonClick();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [clearFilterCallbackTriggerer]);\n\n useEffect(() => {\n if (!isFirstRender) {\n props.onChange?.({\n name: props.name || idBase,\n values: getValuesArrayFromIndices(),\n });\n if (isUnControlled) {\n setUncontrolledInputValue(getValuesArrayFromIndices());\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [changeCallbackTriggerer]);\n useEffect(() => {\n const isValueEmpty = selectedIndices.length === 0;\n if (!isFirstRender && !isValueEmpty) {\n setFilterChipGroupSelectedFilters((prev) => (prev.includes(label) ? prev : [...prev, label]));\n setListViewSelectedFilters((prev) => ({\n ...prev,\n [label]: selectedIndices as number[],\n }));\n } else if (!isFirstRender && isValueEmpty) {\n setFilterChipGroupSelectedFilters((prev) => prev.filter((filter) => filter !== label));\n setListViewSelectedFilters((prev) => {\n const { [label]: _, ...updatedFilters } = prev;\n return updatedFilters;\n });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [changeCallbackTriggerer]);\n\n return (\n <BaseFilterChip\n label={label}\n value={valueTitle ?? getUnControlledFilterChipValue()}\n onClearButtonClick={handleClearButtonClick}\n selectionType={selectionType}\n {...rest}\n ref={triggererRef as any}\n accessibilityProps={{\n label: accessibilityLabel ?? label,\n hasPopup: getActionListContainerRole(hasFooterAction, 'FilterChipSelectInput'),\n expanded: isOpen,\n controls: `${dropdownBaseId}-actionlist`,\n activeDescendant: activeIndex >= 0 ? `${dropdownBaseId}-${activeIndex}` : undefined,\n }}\n onClick={(e) => {\n onTriggerClick();\n // Setting it for web fails it on native typecheck and vice versa\n onClick?.(e as any);\n }}\n onBlur={(e) => {\n // With button trigger, there is no \"value\" as such. It's just clickable items\n // Setting it for web fails it on native typecheck and vice versa\n onBlur?.(e as any);\n }}\n onKeyDown={(e) => {\n onTriggerKeydown?.({ event: e as any });\n // Setting it for web fails it on native typecheck and vice versa\n onKeyDown?.(e as any);\n }}\n />\n );\n};\n\nconst FilterChipSelectInput = assignWithoutSideEffects(_FilterChipSelectInput, {\n componentId: dropdownComponentIds.triggers.FilterChipSelectInput,\n});\n\nexport { FilterChipSelectInput };\n"],"names":["_FilterChipSelectInput","props","_options$find$title","_options$find","idBase","useId","onClick","onBlur","onKeyDown","accessibilityLabel","testID","value","onClearButtonClick","label","onChange","name","rest","_objectWithoutProperties","_excluded","_React$useState","React","useState","_React$useState2","_slicedToArray","uncontrolledInputValue","setUncontrolledInputValue","isFirstRender","useFirstRender","_useDropdown","useDropdown","options","selectedIndices","onTriggerClick","onTriggerKeydown","dropdownBaseId","isOpen","activeIndex","hasFooterAction","triggererRef","selectionType","isControlled","setHasUnControlledFilterChipSelectInput","setSelectedIndices","controlledValueIndices","changeCallbackTriggerer","valueTitle","find","option","title","isUnControlled","length","undefined","_useListViewFilterCon","useListViewFilterContext","listViewSelectedFilters","setListViewSelectedFilters","_useFilterChipGroupCo","useFilterChipGroupContext","clearFilterCallbackTriggerer","setFilterChipGroupSelectedFilters","getValuesArrayFromIndices","indices","map","selectionIndex","useEffect","inputValue","prev","includes","concat","_toConsumableArray","getTitleFromValue","getUnControlledFilterChipValue","handleClearButtonClick","_props$onClearButtonC","_props$onChange","call","values","filter","_","updatedFilters","_toPropertyKey","_props$onChange2","isValueEmpty","_objectSpread","_defineProperty","_jsx","BaseFilterChip","ref","accessibilityProps","hasPopup","getActionListContainerRole","expanded","controls","activeDescendant","e","event","FilterChipSelectInput","assignWithoutSideEffects","componentId","dropdownComponentIds","triggers"],"mappings":"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"}
1
+ {"version":3,"file":"FilterChipSelectInput.web.js","sources":["../../../../../../src/components/Dropdown/FilterChipSelectInput.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable @typescript-eslint/no-unnecessary-type-assertion */\n\nimport React, { useEffect } from 'react';\nimport { useDropdown } from './useDropdown';\nimport { dropdownComponentIds } from './dropdownComponentIds';\nimport { useFilterChipGroupContext } from './FilterChipGroupContext.web';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { BaseFilterChip } from '~components/FilterChip/BaseFilterChip';\nimport { getActionListContainerRole } from '~components/ActionList/getA11yRoles';\nimport type { BaseFilterChipProps } from '~components/FilterChip/types';\nimport type { DataAnalyticsAttribute } from '~utils/types';\nimport { useId } from '~utils/useId';\nimport { useListViewFilterContext } from '~components/ListView/ListViewFiltersContext.web';\nimport { useFirstRender } from '~utils/useFirstRender';\n\ntype FilterChipSelectInputProps = Pick<\n BaseFilterChipProps,\n 'onKeyDown' | 'value' | 'label' | 'testID' | 'onClick' | 'selectionType' | 'onBlur'\n> & {\n accessibilityLabel?: string;\n onChange?: (props: { name: string; values: string[] }) => void;\n name?: string;\n onClearButtonClick?: (props: { name: string; values: string[] }) => void;\n} & DataAnalyticsAttribute;\n\nconst _FilterChipSelectInput = (props: FilterChipSelectInputProps): React.ReactElement => {\n const idBase = useId('filter-chip-select-input');\n const {\n onClick,\n onBlur,\n onKeyDown,\n accessibilityLabel,\n testID,\n value,\n onClearButtonClick,\n label,\n onChange,\n name,\n ...rest\n } = props;\n const [uncontrolledInputValue, setUncontrolledInputValue] = React.useState<string[]>([]);\n const isFirstRender = useFirstRender();\n\n const {\n options,\n selectedIndices,\n onTriggerClick,\n onTriggerKeydown,\n dropdownBaseId,\n isOpen,\n activeIndex,\n hasFooterAction,\n triggererRef,\n selectionType,\n isControlled,\n setSelectedIndices,\n controlledValueIndices,\n changeCallbackTriggerer,\n } = useDropdown();\n const valueTitle = options.find((option) => option.value === value)?.title ?? value;\n\n const isUnControlled = options.length > 0 && props.value === undefined;\n // Currently we are having 2 context for selectedFilters. One is for FilterChipGroup and other is for ListView\n const { listViewSelectedFilters, setListViewSelectedFilters } = useListViewFilterContext();\n const {\n clearFilterCallbackTriggerer,\n setFilterChipGroupSelectedFilters,\n } = useFilterChipGroupContext();\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 useEffect(() => {\n const valueNotEmpty =\n (typeof value === 'string' && value.trim() !== '') ||\n (Array.isArray(value) && value.length > 0);\n // since we need to sync state only one time so skipping value checking.\n const isValueAndSelectedOptoinsSynced =\n (typeof value === 'string' && value && selectedIndices.length === 1) ||\n (Array.isArray(value) && value.length === selectedIndices.length);\n if (isUnControlled) {\n if (listViewSelectedFilters[label]) {\n const value = (listViewSelectedFilters[label] as unknown) as number[];\n setSelectedIndices(value);\n const inputValue = value.map((selectionIndex) => options[selectionIndex].value);\n setUncontrolledInputValue(inputValue);\n setFilterChipGroupSelectedFilters((prev) =>\n prev.includes(label) ? prev : [...prev, label],\n );\n }\n } else if (listViewSelectedFilters[label]) {\n const value = (listViewSelectedFilters[label] as unknown) as number[];\n setSelectedIndices(value);\n // This would be the case when filterChipSelectInput is controlled and are being opened first time\n } else if (valueNotEmpty && !isValueAndSelectedOptoinsSynced && options.length > 0) {\n const selectedIndices =\n typeof value === 'string'\n ? [options.findIndex((option) => option.value === value)]\n : options\n .map((option, index) => (value.includes(option.value) ? index : -1))\n .filter((index) => index !== -1);\n setSelectedIndices(selectedIndices);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isUnControlled, options]);\n\n const getTitleFromValue = (value: string): string => {\n const option = options.find((option) => option.value === value);\n return option ? option.title : '';\n };\n\n const getUnControlledFilterChipValue = (): string | string[] => {\n if (selectionType === 'single') {\n if (uncontrolledInputValue.length > 0) {\n return getTitleFromValue(uncontrolledInputValue[0]);\n }\n return '';\n }\n return uncontrolledInputValue;\n };\n\n const handleClearButtonClick = (): void => {\n props.onClearButtonClick?.({ name: name ?? idBase, values: getValuesArrayFromIndices() });\n props.onChange?.({ name: name ?? idBase, values: [] });\n if (isUnControlled) {\n setUncontrolledInputValue([]);\n setSelectedIndices([]);\n }\n setFilterChipGroupSelectedFilters((prev) => prev.filter((filter) => filter !== label));\n setListViewSelectedFilters((prev) => {\n const { [label]: _, ...updatedFilters } = prev;\n return updatedFilters;\n });\n setSelectedIndices([]);\n };\n\n useEffect(() => {\n if (clearFilterCallbackTriggerer) {\n handleClearButtonClick();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [clearFilterCallbackTriggerer]);\n\n useEffect(() => {\n if (!isFirstRender) {\n props.onChange?.({\n name: props.name || idBase,\n values: getValuesArrayFromIndices(),\n });\n if (isUnControlled) {\n setUncontrolledInputValue(getValuesArrayFromIndices());\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [changeCallbackTriggerer]);\n useEffect(() => {\n const isValueEmpty = selectedIndices.length === 0;\n if (!isFirstRender && !isValueEmpty) {\n setFilterChipGroupSelectedFilters((prev) => (prev.includes(label) ? prev : [...prev, label]));\n setListViewSelectedFilters((prev) => ({\n ...prev,\n [label]: selectedIndices as number[],\n }));\n } else if (!isFirstRender && isValueEmpty) {\n setFilterChipGroupSelectedFilters((prev) => prev.filter((filter) => filter !== label));\n setListViewSelectedFilters((prev) => {\n const { [label]: _, ...updatedFilters } = prev;\n return updatedFilters;\n });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [changeCallbackTriggerer]);\n\n const handleKeyDown = (e: React.KeyboardEvent<Element>): void => {\n onKeyDown?.(e);\n onTriggerKeydown?.({ event: e as React.KeyboardEvent<HTMLInputElement> });\n\n if (e.key === 'Escape') {\n e.preventDefault();\n e.stopPropagation();\n }\n\n if ((e.key === 'Enter' || e.key === ' ') && !isOpen) {\n e.preventDefault();\n e.stopPropagation();\n onTriggerClick();\n }\n };\n\n return (\n <BaseFilterChip\n label={label}\n value={valueTitle ?? getUnControlledFilterChipValue()}\n onClearButtonClick={handleClearButtonClick}\n selectionType={selectionType}\n {...rest}\n ref={triggererRef as any}\n onKeyDown={handleKeyDown}\n accessibilityProps={{\n label: accessibilityLabel ?? label,\n hasPopup: getActionListContainerRole(hasFooterAction, 'FilterChipSelectInput'),\n expanded: isOpen,\n controls: `${dropdownBaseId}-actionlist`,\n activeDescendant: activeIndex >= 0 ? `${dropdownBaseId}-${activeIndex}` : undefined,\n }}\n onClick={(e) => {\n onTriggerClick();\n onClick?.(e);\n }}\n onBlur={(e) => {\n onBlur?.(e);\n }}\n />\n );\n};\n\nconst FilterChipSelectInput = assignWithoutSideEffects(_FilterChipSelectInput, {\n componentId: dropdownComponentIds.triggers.FilterChipSelectInput,\n});\n\nexport { FilterChipSelectInput };\n"],"names":["_FilterChipSelectInput","props","_options$find$title","_options$find","idBase","useId","onClick","onBlur","onKeyDown","accessibilityLabel","testID","value","onClearButtonClick","label","onChange","name","rest","_objectWithoutProperties","_excluded","_React$useState","React","useState","_React$useState2","_slicedToArray","uncontrolledInputValue","setUncontrolledInputValue","isFirstRender","useFirstRender","_useDropdown","useDropdown","options","selectedIndices","onTriggerClick","onTriggerKeydown","dropdownBaseId","isOpen","activeIndex","hasFooterAction","triggererRef","selectionType","isControlled","setSelectedIndices","controlledValueIndices","changeCallbackTriggerer","valueTitle","find","option","title","isUnControlled","length","undefined","_useListViewFilterCon","useListViewFilterContext","listViewSelectedFilters","setListViewSelectedFilters","_useFilterChipGroupCo","useFilterChipGroupContext","clearFilterCallbackTriggerer","setFilterChipGroupSelectedFilters","getValuesArrayFromIndices","indices","map","selectionIndex","useEffect","valueNotEmpty","trim","Array","isArray","isValueAndSelectedOptoinsSynced","inputValue","prev","includes","concat","_toConsumableArray","findIndex","index","filter","getTitleFromValue","getUnControlledFilterChipValue","handleClearButtonClick","_props$onClearButtonC","_props$onChange","call","values","_","updatedFilters","_toPropertyKey","_props$onChange2","isValueEmpty","_objectSpread","_defineProperty","handleKeyDown","e","event","key","preventDefault","stopPropagation","_jsx","BaseFilterChip","ref","accessibilityProps","hasPopup","getActionListContainerRole","expanded","controls","activeDescendant","FilterChipSelectInput","assignWithoutSideEffects","componentId","dropdownComponentIds","triggers"],"mappings":"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"}
@@ -44,8 +44,6 @@ var DropdownContext = /*#__PURE__*/React__default.createContext({
44
44
  setChangeCallbackTriggerer: noop,
45
45
  isControlled: false,
46
46
  setIsControlled: noop,
47
- hasUnControlledFilterChipSelectInput: false,
48
- setHasUnControlledFilterChipSelectInput: noop,
49
47
  dropdownBaseId: '',
50
48
  actionListItemRef: {
51
49
  current: null