@razorpay/blade 12.92.0 → 12.92.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (19) hide show
  1. package/build/lib/web/development/components/Dropdown/FilterChipSelectInput.web.js +23 -15
  2. package/build/lib/web/development/components/Dropdown/FilterChipSelectInput.web.js.map +1 -1
  3. package/build/lib/web/development/components/SideNav/SideNav.web.js +21 -21
  4. package/build/lib/web/development/components/SideNav/SideNav.web.js.map +1 -1
  5. package/build/lib/web/development/components/SideNav/SideNavItems/SideNavLink.web.js +4 -4
  6. package/build/lib/web/development/components/SideNav/SideNavItems/SideNavLink.web.js.map +1 -1
  7. package/build/lib/web/production/_virtual/cloneDeep.js +1 -1
  8. package/build/lib/web/production/_virtual/cloneDeep3.js +1 -1
  9. package/build/lib/web/production/components/Dropdown/FilterChipSelectInput.web.js +23 -15
  10. package/build/lib/web/production/components/Dropdown/FilterChipSelectInput.web.js.map +1 -1
  11. package/build/lib/web/production/components/SideNav/SideNav.web.js +21 -21
  12. package/build/lib/web/production/components/SideNav/SideNav.web.js.map +1 -1
  13. package/build/lib/web/production/components/SideNav/SideNavItems/SideNavLink.web.js +4 -4
  14. package/build/lib/web/production/components/SideNav/SideNavItems/SideNavLink.web.js.map +1 -1
  15. package/build/lib/web/production/node_modules/es-toolkit/dist/compat/object/cloneDeep.js +1 -1
  16. package/build/lib/web/production/node_modules/es-toolkit/dist/compat/predicate/matches.js +2 -2
  17. package/build/lib/web/production/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.js +2 -2
  18. package/build/lib/web/production/node_modules/es-toolkit/dist/object/cloneDeep.js +1 -1
  19. package/package.json +1 -1
@@ -80,33 +80,44 @@ var _FilterChipSelectInput = function _FilterChipSelectInput(props) {
80
80
  };
81
81
  useEffect(function () {
82
82
  var valueNotEmpty = typeof value === 'string' && value.trim() !== '' || Array.isArray(value) && value.length > 0;
83
- // since we need to sync state only one time so skipping value checking.
84
- var isValueAndSelectedOptoinsSynced = typeof value === 'string' && value && selectedIndices.length === 1 || Array.isArray(value) && value.length === selectedIndices.length;
83
+
84
+ // Compare actual selected values (not just lengths) to detect controlled value changes
85
+ var currentSelectedValues = selectedIndices.map(function (i) {
86
+ var _options$i;
87
+ return (_options$i = options[i]) === null || _options$i === void 0 ? void 0 : _options$i.value;
88
+ });
89
+ var isSingleValueSynced = typeof value === 'string' && currentSelectedValues.length === 1 && currentSelectedValues[0] === value;
90
+ var isMultiValueSynced = Array.isArray(value) && value.length === currentSelectedValues.length && value.every(function (v) {
91
+ return currentSelectedValues.includes(v);
92
+ });
93
+ var isValueAndSelectedIndicesSynced = isSingleValueSynced || isMultiValueSynced;
85
94
  if (isUnControlled) {
86
95
  if (listViewSelectedFilters[label]) {
87
- var _value = listViewSelectedFilters[label];
88
- setSelectedIndices(_value);
89
- var inputValue = _value.map(function (selectionIndex) {
96
+ var savedIndices = listViewSelectedFilters[label];
97
+ setSelectedIndices(savedIndices);
98
+ var inputValue = savedIndices.map(function (selectionIndex) {
90
99
  return options[selectionIndex].value;
91
100
  });
92
101
  setUncontrolledInputValue(inputValue);
93
102
  setFilterChipGroupSelectedFilters(function (prev) {
94
103
  return prev.includes(label) ? prev : [].concat(_toConsumableArray(prev), [label]);
95
104
  });
105
+ } else {
106
+ setSelectedIndices([]);
96
107
  }
97
108
  } else if (listViewSelectedFilters[label]) {
98
- var _value2 = listViewSelectedFilters[label];
99
- setSelectedIndices(_value2);
100
- // This would be the case when filterChipSelectInput is controlled and are being opened first time
101
- } else if (valueNotEmpty && !isValueAndSelectedOptoinsSynced && options.length > 0) {
102
- var _selectedIndices = typeof value === 'string' ? [options.findIndex(function (option) {
109
+ var _savedIndices = listViewSelectedFilters[label];
110
+ setSelectedIndices(_savedIndices);
111
+ // Sync selected indices when controlled value changes or on first render with options loaded
112
+ } else if (valueNotEmpty && !isValueAndSelectedIndicesSynced && options.length > 0) {
113
+ var newSelectedIndices = typeof value === 'string' ? [options.findIndex(function (option) {
103
114
  return option.value === value;
104
115
  })] : options.map(function (option, index) {
105
116
  return value.includes(option.value) ? index : -1;
106
117
  }).filter(function (index) {
107
118
  return index !== -1;
108
119
  });
109
- setSelectedIndices(_selectedIndices);
120
+ setSelectedIndices(newSelectedIndices);
110
121
  }
111
122
  // eslint-disable-next-line react-hooks/exhaustive-deps
112
123
  }, [isUnControlled, options]);
@@ -135,10 +146,6 @@ var _FilterChipSelectInput = function _FilterChipSelectInput(props) {
135
146
  name: name !== null && name !== void 0 ? name : idBase,
136
147
  values: []
137
148
  });
138
- if (isUnControlled) {
139
- setUncontrolledInputValue([]);
140
- setSelectedIndices([]);
141
- }
142
149
  setFilterChipGroupSelectedFilters(function (prev) {
143
150
  return prev.filter(function (filter) {
144
151
  return filter !== label;
@@ -149,6 +156,7 @@ var _FilterChipSelectInput = function _FilterChipSelectInput(props) {
149
156
  updatedFilters = _objectWithoutProperties(prev, [label].map(_toPropertyKey));
150
157
  return updatedFilters;
151
158
  });
159
+ setUncontrolledInputValue([]);
152
160
  setSelectedIndices([]);
153
161
  };
154
162
  useEffect(function () {
@@ -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 isDisabled?: boolean;\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 isDisabled,\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 isDisabled={isDisabled}\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","isDisabled","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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"}
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 type { DataAnalyticsAttribute } from '~utils/types';\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 { 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 isDisabled?: boolean;\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 isDisabled,\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\n // Compare actual selected values (not just lengths) to detect controlled value changes\n const currentSelectedValues = selectedIndices.map((i) => options[i]?.value);\n const isSingleValueSynced =\n typeof value === 'string' &&\n currentSelectedValues.length === 1 &&\n currentSelectedValues[0] === value;\n\n const isMultiValueSynced =\n Array.isArray(value) &&\n value.length === currentSelectedValues.length &&\n value.every((v) => currentSelectedValues.includes(v));\n\n const isValueAndSelectedIndicesSynced = isSingleValueSynced || isMultiValueSynced;\n\n if (isUnControlled) {\n if (listViewSelectedFilters[label]) {\n const savedIndices = (listViewSelectedFilters[label] as unknown) as number[];\n setSelectedIndices(savedIndices);\n const inputValue = savedIndices.map((selectionIndex) => options[selectionIndex].value);\n setUncontrolledInputValue(inputValue);\n setFilterChipGroupSelectedFilters((prev) =>\n prev.includes(label) ? prev : [...prev, label],\n );\n } else {\n setSelectedIndices([]);\n }\n } else if (listViewSelectedFilters[label]) {\n const savedIndices = (listViewSelectedFilters[label] as unknown) as number[];\n setSelectedIndices(savedIndices);\n // Sync selected indices when controlled value changes or on first render with options loaded\n } else if (valueNotEmpty && !isValueAndSelectedIndicesSynced && options.length > 0) {\n const newSelectedIndices =\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(newSelectedIndices);\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 setFilterChipGroupSelectedFilters((prev) => prev.filter((filter) => filter !== label));\n setListViewSelectedFilters((prev) => {\n const { [label]: _, ...updatedFilters } = prev;\n return updatedFilters;\n });\n setUncontrolledInputValue([]);\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 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 isDisabled={isDisabled}\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","isDisabled","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","currentSelectedValues","i","_options$i","isSingleValueSynced","isMultiValueSynced","every","v","includes","isValueAndSelectedIndicesSynced","savedIndices","inputValue","prev","concat","_toConsumableArray","newSelectedIndices","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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"}
@@ -183,7 +183,7 @@ var _SideNav = function _SideNav(_ref5, ref) {
183
183
  var l1ContainerRef = React__default.useRef(null);
184
184
  var timeoutIdsRef = React__default.useRef([]);
185
185
  var mouseOverTimeoutRef = React__default.useRef();
186
- var prevIsSideNavFullyCollapsedRef = React__default.useRef();
186
+ var prevIsSideNavCollapsedRef = React__default.useRef();
187
187
  var _React$useState = React__default.useState(false),
188
188
  _React$useState2 = _slicedToArray(_React$useState, 2),
189
189
  isL1Collapsed = _React$useState2[0],
@@ -209,10 +209,10 @@ var _SideNav = function _SideNav(_ref5, ref) {
209
209
  l2DrawerTitle = _React$useState10[0],
210
210
  setL2DrawerTitle = _React$useState10[1];
211
211
  var isMobile = useIsMobile();
212
- var isSideNavFullyCollapsed = _isExpanded === false;
213
- var effectiveIsL1Collapsed = isMobile ? isMobileL2Open : isSideNavFullyCollapsed || isL1Collapsed;
214
- var effectiveIsL1Hovered = isSideNavFullyCollapsed ? false : isL1Hovered;
215
- var sideNavWidth = isSideNavFullyCollapsed ? makeSize(COLLAPSED_L1_WIDTH) : {
212
+ var isSideNavCollapsed = _isExpanded === false;
213
+ var effectiveIsL1Collapsed = isMobile ? isMobileL2Open : isSideNavCollapsed || isL1Collapsed;
214
+ var effectiveIsL1Hovered = isSideNavCollapsed ? false : isL1Hovered;
215
+ var sideNavWidth = isSideNavCollapsed ? makeSize(COLLAPSED_L1_WIDTH) : {
216
216
  base: makeSize(SIDE_NAV_EXPANDED_L1_WIDTH_BASE),
217
217
  xl: makeSize(SIDE_NAV_EXPANDED_L1_WIDTH_XL)
218
218
  };
@@ -261,7 +261,7 @@ var _SideNav = function _SideNav(_ref5, ref) {
261
261
  });
262
262
  return;
263
263
  }
264
- if (isSideNavFullyCollapsed) {
264
+ if (isSideNavCollapsed) {
265
265
  return;
266
266
  }
267
267
 
@@ -312,11 +312,11 @@ var _SideNav = function _SideNav(_ref5, ref) {
312
312
  isL1Collapsed: effectiveIsL1Collapsed,
313
313
  setIsL1Collapsed: setIsL1Collapsed,
314
314
  isL1Hovered: effectiveIsL1Hovered,
315
- isSideNavFullyCollapsed: isSideNavFullyCollapsed
315
+ isSideNavCollapsed: isSideNavCollapsed
316
316
  };
317
317
  },
318
318
  // eslint-disable-next-line react-hooks/exhaustive-deps
319
- [effectiveIsL1Collapsed, effectiveIsL1Hovered, isSideNavFullyCollapsed]);
319
+ [effectiveIsL1Collapsed, effectiveIsL1Hovered, isSideNavCollapsed, isMobile]);
320
320
  React__default.useEffect(function () {
321
321
  return function () {
322
322
  var _iterator = _createForOfIteratorHelper(timeoutIdsRef.current),
@@ -335,23 +335,23 @@ var _SideNav = function _SideNav(_ref5, ref) {
335
335
  };
336
336
  }, []);
337
337
  React__default.useEffect(function () {
338
- if (!isMobile && isSideNavFullyCollapsed && isL1Hovered) {
338
+ if (!isMobile && isSideNavCollapsed && isL1Hovered) {
339
339
  setIsL1Hovered(false);
340
340
  }
341
- }, [isMobile, isSideNavFullyCollapsed, isL1Hovered]);
341
+ }, [isMobile, isSideNavCollapsed, isL1Hovered]);
342
342
  React__default.useEffect(function () {
343
- var prevIsSideNavFullyCollapsed = prevIsSideNavFullyCollapsedRef.current;
344
- prevIsSideNavFullyCollapsedRef.current = isSideNavFullyCollapsed;
345
- if (isMobile || prevIsSideNavFullyCollapsed === undefined) {
343
+ var prevIsSideNavCollapsed = prevIsSideNavCollapsedRef.current;
344
+ prevIsSideNavCollapsedRef.current = isSideNavCollapsed;
345
+ if (isMobile || prevIsSideNavCollapsed === undefined) {
346
346
  return;
347
347
  }
348
- if (prevIsSideNavFullyCollapsed !== isSideNavFullyCollapsed) {
348
+ if (prevIsSideNavCollapsed !== isSideNavCollapsed) {
349
349
  startL1Transition();
350
350
  onExpandChange === null || onExpandChange === void 0 || onExpandChange({
351
- isExpanded: !isSideNavFullyCollapsed
351
+ isExpanded: !isSideNavCollapsed
352
352
  });
353
353
  }
354
- }, [isMobile, isSideNavFullyCollapsed, onExpandChange, startL1Transition]);
354
+ }, [isMobile, isSideNavCollapsed, onExpandChange, startL1Transition]);
355
355
  return /*#__PURE__*/jsx(SideNavContext.Provider, {
356
356
  value: contextValue,
357
357
  children: isMobile && onDismiss ? /*#__PURE__*/jsxs(Fragment, {
@@ -391,7 +391,7 @@ var _SideNav = function _SideNav(_ref5, ref) {
391
391
  }) : /*#__PURE__*/jsxs(StyledSideNavContainer, _objectSpread(_objectSpread(_objectSpread(_objectSpread({
392
392
  $isSideNavExpandable: typeof _isExpanded !== 'undefined',
393
393
  ref: ref,
394
- className: isSideNavFullyCollapsed ? COLLAPSED : '',
394
+ className: isSideNavCollapsed ? COLLAPSED : '',
395
395
  position: "fixed",
396
396
  backgroundColor: backgroundColor,
397
397
  height: "100%",
@@ -413,7 +413,7 @@ var _SideNav = function _SideNav(_ref5, ref) {
413
413
  return;
414
414
  }
415
415
  onExpandTransitionEnd === null || onExpandTransitionEnd === void 0 || onExpandTransitionEnd({
416
- isExpanded: !isSideNavFullyCollapsed
416
+ isExpanded: !isSideNavCollapsed
417
417
  });
418
418
  },
419
419
  children: [banner ? /*#__PURE__*/jsx(BannerContainer, {
@@ -425,7 +425,7 @@ var _SideNav = function _SideNav(_ref5, ref) {
425
425
  width: "100%",
426
426
  children: [/*#__PURE__*/jsx(StyledL2PortalContainer, {
427
427
  position: "absolute",
428
- display: isSideNavFullyCollapsed ? 'none' : 'block',
428
+ display: isSideNavCollapsed ? 'none' : 'block',
429
429
  backgroundColor: backgroundColor,
430
430
  height: "100%",
431
431
  width: "100%",
@@ -474,7 +474,7 @@ var _SideNav = function _SideNav(_ref5, ref) {
474
474
  // 6. But in case of unhover/leave, we don't want to trigger mouseOut for all child components individually. We want 1 hover out of L1 menu. Thus we use `onMouseLeave`
475
475
  ,
476
476
  onMouseOver: function onMouseOver() {
477
- if (!isMobile && isSideNavFullyCollapsed) {
477
+ if (!isMobile && isSideNavCollapsed) {
478
478
  return;
479
479
  }
480
480
  if (mouseOverTimeoutRef.current) {
@@ -488,7 +488,7 @@ var _SideNav = function _SideNav(_ref5, ref) {
488
488
  }
489
489
  },
490
490
  onMouseLeave: function onMouseLeave() {
491
- if (!isMobile && isSideNavFullyCollapsed) {
491
+ if (!isMobile && isSideNavCollapsed) {
492
492
  return;
493
493
  }
494
494
  if (isL1Collapsed && isL1Hovered) {
@@ -1 +1 @@
1
- {"version":3,"file":"SideNav.web.js","sources":["../../../../../../src/components/SideNav/SideNav.web.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\nimport { SideNavContext } from './SideNavContext';\nimport {\n classes,\n COLLAPSED_L1_WIDTH,\n HOVER_AGAIN_DELAY,\n L1_EXIT_HOVER_DELAY,\n SKIP_NAV_ID,\n TRANSITION_CLEANUP_DELAY,\n SIDE_NAV_EXPANDED_L1_WIDTH_BASE,\n SIDE_NAV_EXPANDED_L1_WIDTH_XL,\n} from './tokens';\nimport type { SideNavContextType, SideNavProps } from './types';\nimport type { BladeElementRef } from '~utils/types';\nimport { size as sizeTokens } from '~tokens/global';\nimport { makeBorderSize, makeMotionTime, makeSize, makeSpace } from '~utils';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport BaseBox from '~components/Box/BaseBox';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { Drawer, DrawerBody, DrawerHeader } from '~components/Drawer';\nimport { SkipNavContent, SkipNavLink } from '~components/SkipNav/SkipNav';\n\nconst {\n COLLAPSED,\n SHOW_WHEN_COLLAPSED,\n HIDE_WHEN_COLLAPSED,\n TRANSITIONING,\n L1_ITEM_WRAPPER,\n} = classes;\n\nconst MobileL1Container = styled(BaseBox)(() => {\n return {\n [`.${SHOW_WHEN_COLLAPSED}`]: {\n display: 'none',\n },\n };\n});\n\nconst StyledL1Menu = styled(BaseBox)<{ $isSideNavExpandable: boolean }>((props) => {\n const quick = makeMotionTime(props.theme.motion.duration.quick);\n const xmoderate = makeMotionTime(props.theme.motion.duration.xmoderate);\n const easing = props.theme.motion.easing;\n\n const l1Expand = `width ${xmoderate} ${easing.entrance}`;\n const l1Collapse = `width ${quick} ${easing.exit}`;\n\n const textVisibilityProps = props.$isSideNavExpandable\n ? {}\n : {\n [`.${SHOW_WHEN_COLLAPSED}`]: {\n display: 'none',\n },\n [`&.${COLLAPSED}`]: {\n width: makeSize(COLLAPSED_L1_WIDTH),\n transition: l1Collapse,\n [`& > .${L1_ITEM_WRAPPER}`]: {\n padding: `${makeSpace(props.theme.spacing[3])} ${makeSpace(props.theme.spacing[3])}`,\n },\n [`&:not(.${TRANSITIONING}) .${HIDE_WHEN_COLLAPSED}`]: {\n display: 'none',\n },\n [`&:not(.${TRANSITIONING}) .${SHOW_WHEN_COLLAPSED}`]: {\n display: 'initial',\n },\n },\n };\n\n return {\n width: '100%',\n // the overall sidenav expands and collapses in this case. No need transition here\n transition: props.$isSideNavExpandable ? 'none' : l1Expand,\n [`& > .${L1_ITEM_WRAPPER}`]: {\n padding: makeSpace(props.theme.spacing[3]),\n },\n ...textVisibilityProps,\n };\n});\n\nconst StyledSideNavContainer = styled(BaseBox)<{ $isSideNavExpandable: boolean }>((props) => {\n const quick = makeMotionTime(props.theme.motion.duration.quick);\n const xmoderate = makeMotionTime(props.theme.motion.duration.xmoderate);\n const easing = props.theme.motion.easing;\n\n const sideNavExpand = `width ${xmoderate} ${easing.entrance}`;\n const sideNavCollapse = `width ${quick} ${easing.exit}`;\n\n if (!props.$isSideNavExpandable) {\n return {};\n }\n\n return {\n transition: sideNavExpand,\n [`&.${COLLAPSED}`]: {\n width: makeSize(COLLAPSED_L1_WIDTH),\n transition: sideNavCollapse,\n [`&:not(.${TRANSITIONING}) .${HIDE_WHEN_COLLAPSED}`]: {\n opacity: '0',\n pointerEvents: 'none',\n transition: `opacity ${quick} ${easing.exit}`,\n },\n [`&:not(.${TRANSITIONING}) .${SHOW_WHEN_COLLAPSED}`]: {\n opacity: '1',\n pointerEvents: 'auto',\n transition: `opacity ${quick} ${easing.entrance}`,\n },\n },\n [`.${SHOW_WHEN_COLLAPSED}`]: {\n opacity: '0',\n pointerEvents: 'none',\n transition: `opacity ${quick} ${easing.exit}`,\n },\n [`.${HIDE_WHEN_COLLAPSED}`]: {\n opacity: '1',\n pointerEvents: 'auto',\n transition: `opacity ${quick} ${easing.entrance}`,\n },\n };\n});\n\nconst StyledL2PortalContainer = styled(BaseBox)(() => {\n return {\n // This ensures that the portal node has 100% height when it has items\n '& > div:not(:empty)': {\n height: '100%',\n },\n };\n});\n\nconst getL1MenuClassName = ({\n isL1Collapsed,\n isL1Hovered,\n isTransitioning,\n}: {\n isL1Collapsed: boolean;\n isL1Hovered: boolean;\n isTransitioning: boolean;\n}): string => {\n const isMenuCollapsed = isL1Collapsed && !isL1Hovered;\n\n if (isMenuCollapsed) {\n if (isTransitioning) {\n return `${COLLAPSED} ${TRANSITIONING}`;\n }\n\n return COLLAPSED;\n }\n\n return '';\n};\n\nconst BannerContainer = styled(BaseBox)((props) => {\n return {\n '&:not(:empty)': {\n borderBottom: makeBorderSize(props.theme.border.width.thin),\n borderBottomStyle: 'solid',\n borderBottomColor: props.theme.colors.surface.border.gray.muted,\n borderRight: makeBorderSize(props.theme.border.width.thin),\n borderRightStyle: 'solid',\n borderRightColor: props.theme.colors.surface.border.gray.muted,\n padding: makeSpace(props.theme.spacing[3]),\n maxHeight: makeSize(sizeTokens['100']),\n width: '100%',\n },\n };\n});\n\n/**\n * ### SideNav component\n *\n * The side navigation is positioned along the left side of the screen that provides quick access to different sections or functionalities of the application.\n *\n * ---\n *\n * #### Usage\n *\n * SideNav requires handling active state with React Router, Checkout Usage with React Router v6 at - [SideNav Documentation](https://blade.razorpay.com/?path=/docs/components-sidenav--docs)\n *\n */\nconst _SideNav = (\n {\n children,\n isOpen,\n onDismiss,\n onVisibleLevelChange,\n onExpandChange,\n onExpandTransitionEnd,\n banner,\n backgroundColor = 'surface.background.gray.moderate',\n testID,\n isExpanded: _isExpanded,\n ...rest\n }: SideNavProps,\n ref: React.Ref<BladeElementRef>,\n): React.ReactElement => {\n const l2PortalContainerRef = React.useRef(null);\n const l1ContainerRef = React.useRef<HTMLDivElement>(null);\n const timeoutIdsRef = React.useRef<NodeJS.Timeout[]>([]);\n const mouseOverTimeoutRef = React.useRef<NodeJS.Timeout>();\n const prevIsSideNavFullyCollapsedRef = React.useRef<boolean>();\n const [isL1Collapsed, setIsL1Collapsed] = React.useState(false);\n const [isMobileL2Open, setIsMobileL2Open] = React.useState(false);\n const [isL1Hovered, setIsL1Hovered] = React.useState(false);\n const [isHoverAgainEnabled, setIsHoverAgainEnabled] = React.useState(true);\n const [isTransitioning, setIsTransitioning] = React.useState(false);\n const [l2DrawerTitle, setL2DrawerTitle] = React.useState('');\n\n const isMobile = useIsMobile();\n const isSideNavFullyCollapsed = _isExpanded === false;\n\n const effectiveIsL1Collapsed = isMobile\n ? isMobileL2Open\n : isSideNavFullyCollapsed || isL1Collapsed;\n\n const effectiveIsL1Hovered = isSideNavFullyCollapsed ? false : isL1Hovered;\n const sideNavWidth = isSideNavFullyCollapsed\n ? makeSize(COLLAPSED_L1_WIDTH)\n : {\n base: makeSize(SIDE_NAV_EXPANDED_L1_WIDTH_BASE),\n xl: makeSize(SIDE_NAV_EXPANDED_L1_WIDTH_XL),\n };\n\n const closeMobileNav = (): void => {\n if (isMobile) {\n setIsMobileL2Open(false);\n onDismiss?.();\n onVisibleLevelChange?.({ visibleLevel: 0 });\n }\n };\n\n const cleanupTransition = React.useCallback((): void => {\n const clearTransitionTimeout = setTimeout(() => {\n setIsTransitioning((isCurrentlyTransitioning) =>\n isCurrentlyTransitioning ? false : isCurrentlyTransitioning,\n );\n }, TRANSITION_CLEANUP_DELAY);\n timeoutIdsRef.current.push(clearTransitionTimeout);\n }, []);\n\n const startL1Transition = React.useCallback((): void => {\n setIsTransitioning(true);\n cleanupTransition();\n }, [cleanupTransition]);\n\n const collapseL1 = (title: string): void => {\n if (isMobile) {\n setL2DrawerTitle(title);\n setIsMobileL2Open(true);\n onVisibleLevelChange?.({ visibleLevel: 2 });\n return;\n }\n\n if (!isL1Collapsed) {\n setIsL1Collapsed(true);\n onVisibleLevelChange?.({ visibleLevel: 2 });\n }\n };\n\n const expandL1 = (): void => {\n if (isMobile) {\n setIsMobileL2Open(false);\n onVisibleLevelChange?.({ visibleLevel: 1 });\n return;\n }\n\n if (isSideNavFullyCollapsed) {\n return;\n }\n\n // Ensures that if Normal L1 item is clicked, the L1 stays expanded\n if (isL1Collapsed) {\n setIsL1Collapsed(false);\n // We want to avoid calling onVisibleLevelChange twice when L1 is hovered and then item on L1 is selected\n if (!isL1Hovered) {\n onVisibleLevelChange?.({ visibleLevel: 1 });\n }\n }\n };\n\n /**\n * Handles L1 -> L2 menu changes based on active item\n */\n const onLinkActiveChange: SideNavContextType['onLinkActiveChange'] = (args) => {\n const isL1ItemActive = args.level === 1 && args.isActive;\n\n if (isL1ItemActive) {\n if (args.isL2Trigger) {\n // Click on L2 Trigger\n collapseL1(args.title);\n\n // `args.isFirstRender` checks if the item that triggered this change, triggered it during first render or during subsequent change\n if (!args.isFirstRender) {\n startL1Transition();\n setIsL1Hovered(false);\n setIsHoverAgainEnabled(false);\n // For some delay, we disable hover to expand behaviour to avoid buggy flicker when cursor is on L1 while its trying to close\n const hoverAgainTimeout = setTimeout(() => {\n setIsHoverAgainEnabled(true);\n }, HOVER_AGAIN_DELAY);\n timeoutIdsRef.current.push(hoverAgainTimeout);\n }\n } else {\n // Click on normal L1 Item\n expandL1();\n }\n }\n };\n\n const contextValue = React.useMemo(\n () => ({\n l2PortalContainerRef,\n onLinkActiveChange,\n closeMobileNav,\n isL1Collapsed: effectiveIsL1Collapsed,\n setIsL1Collapsed,\n isL1Hovered: effectiveIsL1Hovered,\n isSideNavFullyCollapsed,\n }),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [effectiveIsL1Collapsed, effectiveIsL1Hovered, isSideNavFullyCollapsed],\n );\n\n React.useEffect(() => {\n return () => {\n for (const timeoutId of timeoutIdsRef.current) {\n clearTimeout(timeoutId);\n }\n timeoutIdsRef.current = [];\n };\n }, []);\n\n React.useEffect(() => {\n if (!isMobile && isSideNavFullyCollapsed && isL1Hovered) {\n setIsL1Hovered(false);\n }\n }, [isMobile, isSideNavFullyCollapsed, isL1Hovered]);\n\n React.useEffect(() => {\n const prevIsSideNavFullyCollapsed = prevIsSideNavFullyCollapsedRef.current;\n prevIsSideNavFullyCollapsedRef.current = isSideNavFullyCollapsed;\n\n if (isMobile || prevIsSideNavFullyCollapsed === undefined) {\n return;\n }\n\n if (prevIsSideNavFullyCollapsed !== isSideNavFullyCollapsed) {\n startL1Transition();\n onExpandChange?.({ isExpanded: !isSideNavFullyCollapsed });\n }\n }, [isMobile, isSideNavFullyCollapsed, onExpandChange, startL1Transition]);\n\n return (\n <SideNavContext.Provider value={contextValue}>\n {isMobile && onDismiss ? (\n <>\n {/* L1 */}\n <Drawer isOpen={isOpen ?? false} onDismiss={closeMobileNav}>\n <DrawerHeader title=\"Main Menu\" />\n <DrawerBody>\n <MobileL1Container\n display=\"flex\"\n flexDirection=\"column\"\n justifyContent=\"space-between\"\n className=\"mobile-l1-container\"\n height=\"100%\"\n {...metaAttribute({\n name: MetaConstants.SideNav,\n testID,\n })}\n >\n {children}\n </MobileL1Container>\n </DrawerBody>\n </Drawer>\n {/* L2 */}\n <Drawer isOpen={isMobileL2Open} onDismiss={() => expandL1()} isLazy={false}>\n <DrawerHeader title={l2DrawerTitle} />\n <DrawerBody>\n <BaseBox ref={l2PortalContainerRef} />\n </DrawerBody>\n </Drawer>\n </>\n ) : (\n <StyledSideNavContainer\n $isSideNavExpandable={typeof _isExpanded !== 'undefined'}\n ref={ref as never}\n className={isSideNavFullyCollapsed ? COLLAPSED : ''}\n position=\"fixed\"\n backgroundColor={backgroundColor}\n height=\"100%\"\n top=\"spacing.0\"\n left=\"spacing.0\"\n display={{ base: 'none', m: 'flex' }}\n flexDirection=\"column\"\n width={sideNavWidth}\n as=\"nav\"\n {...metaAttribute({\n name: MetaConstants.SideNav,\n testID,\n })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n onTransitionEnd={(e) => {\n if (e.target !== e.currentTarget || e.propertyName !== 'width' || isMobile) {\n return;\n }\n\n onExpandTransitionEnd?.({\n isExpanded: !isSideNavFullyCollapsed,\n });\n }}\n >\n {banner ? <BannerContainer>{banner}</BannerContainer> : null}\n <BaseBox position=\"relative\" display=\"block\" flex=\"1\" width=\"100%\">\n <StyledL2PortalContainer\n position=\"absolute\"\n display={isSideNavFullyCollapsed ? 'none' : 'block'}\n backgroundColor={backgroundColor}\n height=\"100%\"\n width=\"100%\"\n top=\"spacing.0\"\n left=\"spacing.0\"\n id=\"blade-sidenav-l2\"\n borderRightWidth=\"thin\"\n borderRightColor=\"surface.border.gray.muted\"\n ref={l2PortalContainerRef}\n />\n <StyledL1Menu\n ref={l1ContainerRef}\n id=\"blade-sidenav-l1\"\n className={getL1MenuClassName({\n isL1Collapsed: effectiveIsL1Collapsed,\n isL1Hovered: effectiveIsL1Hovered,\n isTransitioning,\n })}\n $isSideNavExpandable={typeof _isExpanded !== 'undefined'}\n position=\"absolute\"\n display=\"flex\"\n flexDirection=\"column\"\n justifyContent=\"space-between\"\n backgroundColor={backgroundColor}\n height=\"100%\"\n overflow=\"hidden\"\n top=\"spacing.0\"\n left=\"spacing.0\"\n borderRightWidth=\"thin\"\n borderRightColor=\"surface.border.gray.muted\"\n onTransitionEnd={(e) => {\n // This check ensures transitioning is set to false only when its true\n // And only the l1Container element's transitions are considered and other transitions of l1 expand or child elements are ignored\n if (isTransitioning && l1ContainerRef.current === e.target) {\n setIsTransitioning(false);\n }\n }}\n // Hmm you might be wondering, why is `onMouseOver` paired with `onMouseLeave`? A sane person would pair `onMouseOver` with `onMouseOut`, and `onMouseEnter` with `onMouseLeave`\n // since they are logical equivalents of each other. So why don't we do that? Hold tight, you're in for a ride ☕️.\n //\n // 1. In an ideal scenario, we would put `onMouseEnter` and `onMouseLeave` here and expect things to work.\n // 2. The L2 menu of our SideNav is React Portalled out of the L1 child\n // 3. React considers its own children as true children for JS events and not DOM children (Checkout React Portal Caveats - https://react.dev/reference/react-dom/createPortal#caveats)\n // 3. In the next ideal scenario, we would put `e.stopPropagation` on child component of portal like React recommends, except mouseenter, mouseleave events don't propagate at all (https://developer.mozilla.org/en-US/docs/Web/API/Element/mouseenter_event#usage_notes)\n // 4. So `onMouseEnter` gets triggered on L2 enter. But we don't want to open L1 menu on L2 hover\n // 5. Thus we use `onMouseOver` for hover part and call e.stopPropagation in portal child (SideNavLevel).\n // 6. But in case of unhover/leave, we don't want to trigger mouseOut for all child components individually. We want 1 hover out of L1 menu. Thus we use `onMouseLeave`\n onMouseOver={() => {\n if (!isMobile && isSideNavFullyCollapsed) {\n return;\n }\n if (mouseOverTimeoutRef.current) {\n clearTimeout(mouseOverTimeoutRef.current);\n }\n if (isL1Collapsed && isHoverAgainEnabled && !isL1Hovered) {\n setIsL1Hovered(true);\n onVisibleLevelChange?.({ visibleLevel: 1 });\n }\n }}\n onMouseLeave={() => {\n if (!isMobile && isSideNavFullyCollapsed) {\n return;\n }\n if (isL1Collapsed && isL1Hovered) {\n mouseOverTimeoutRef.current = setTimeout(() => {\n setIsL1Hovered(false);\n startL1Transition();\n onVisibleLevelChange?.({ visibleLevel: 2 });\n }, L1_EXIT_HOVER_DELAY);\n }\n // If L1 is collapsed and not hovered we want to change visible level to 2\n // This state/edgecase happens when user clicks on a nested nav and it collapses the L1 causing isL1Hovered to be false\n if (isL1Collapsed && !isL1Hovered) {\n onVisibleLevelChange?.({ visibleLevel: 2 });\n }\n }}\n >\n <SkipNavLink id={SKIP_NAV_ID} _hasBackground={true} />\n {children}\n </StyledL1Menu>\n <SkipNavContent id={SKIP_NAV_ID} />\n </BaseBox>\n </StyledSideNavContainer>\n )}\n </SideNavContext.Provider>\n );\n};\n\nconst SideNav = React.forwardRef(_SideNav);\n\nexport { SideNav };\n"],"names":["COLLAPSED","classes","SHOW_WHEN_COLLAPSED","HIDE_WHEN_COLLAPSED","TRANSITIONING","L1_ITEM_WRAPPER","MobileL1Container","styled","BaseBox","withConfig","displayName","componentId","_defineProperty","concat","display","StyledL1Menu","props","quick","makeMotionTime","theme","motion","duration","xmoderate","easing","l1Expand","entrance","l1Collapse","exit","textVisibilityProps","$isSideNavExpandable","width","makeSize","COLLAPSED_L1_WIDTH","transition","padding","makeSpace","spacing","_objectSpread","StyledSideNavContainer","sideNavExpand","sideNavCollapse","opacity","pointerEvents","StyledL2PortalContainer","height","getL1MenuClassName","_ref4","isL1Collapsed","isL1Hovered","isTransitioning","isMenuCollapsed","BannerContainer","borderBottom","makeBorderSize","border","thin","borderBottomStyle","borderBottomColor","colors","surface","gray","muted","borderRight","borderRightStyle","borderRightColor","maxHeight","sizeTokens","_SideNav","_ref5","ref","children","isOpen","onDismiss","onVisibleLevelChange","onExpandChange","onExpandTransitionEnd","banner","_ref5$backgroundColor","backgroundColor","testID","_isExpanded","isExpanded","rest","_objectWithoutProperties","_excluded","l2PortalContainerRef","React","useRef","l1ContainerRef","timeoutIdsRef","mouseOverTimeoutRef","prevIsSideNavFullyCollapsedRef","_React$useState","useState","_React$useState2","_slicedToArray","setIsL1Collapsed","_React$useState3","_React$useState4","isMobileL2Open","setIsMobileL2Open","_React$useState5","_React$useState6","setIsL1Hovered","_React$useState7","_React$useState8","isHoverAgainEnabled","setIsHoverAgainEnabled","_React$useState9","_React$useState0","setIsTransitioning","_React$useState1","_React$useState10","l2DrawerTitle","setL2DrawerTitle","isMobile","useIsMobile","isSideNavFullyCollapsed","effectiveIsL1Collapsed","effectiveIsL1Hovered","sideNavWidth","base","SIDE_NAV_EXPANDED_L1_WIDTH_BASE","xl","SIDE_NAV_EXPANDED_L1_WIDTH_XL","closeMobileNav","visibleLevel","cleanupTransition","useCallback","clearTransitionTimeout","setTimeout","isCurrentlyTransitioning","TRANSITION_CLEANUP_DELAY","current","push","startL1Transition","collapseL1","title","expandL1","onLinkActiveChange","args","isL1ItemActive","level","isActive","isL2Trigger","isFirstRender","hoverAgainTimeout","HOVER_AGAIN_DELAY","contextValue","useMemo","useEffect","_iterator","_createForOfIteratorHelper","_step","s","n","done","timeoutId","value","clearTimeout","err","e","f","prevIsSideNavFullyCollapsed","undefined","_jsx","SideNavContext","Provider","_jsxs","_Fragment","Drawer","DrawerHeader","DrawerBody","flexDirection","justifyContent","className","metaAttribute","name","MetaConstants","SideNav","isLazy","position","top","left","m","as","getStyledProps","makeAnalyticsAttribute","onTransitionEnd","target","currentTarget","propertyName","flex","id","borderRightWidth","overflow","onMouseOver","onMouseLeave","L1_EXIT_HOVER_DELAY","SkipNavLink","SKIP_NAV_ID","_hasBackground","SkipNavContent","forwardRef"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,IACEA,SAAS,GAKPC,OAAO,CALTD,SAAS;EACTE,mBAAmB,GAIjBD,OAAO,CAJTC,mBAAmB;EACnBC,mBAAmB,GAGjBF,OAAO,CAHTE,mBAAmB;EACnBC,aAAa,GAEXH,OAAO,CAFTG,aAAa;EACbC,eAAe,GACbJ,OAAO,CADTI,eAAe,CAAA;AAGjB,IAAMC,iBAAiB,gBAAGC,MAAM,CAACC,OAAO,CAAC,CAAAC,UAAA,CAAA;EAAAC,WAAA,EAAA,+BAAA;EAAAC,WAAA,EAAA,cAAA;AAAA,CAAA,CAAA,CAAC,YAAM;AAC9C,EAAA,OAAAC,eAAA,CAAA,EAAA,EAAA,GAAA,CAAAC,MAAA,CACOX,mBAAmB,CAAK,EAAA;AAC3BY,IAAAA,OAAO,EAAE,MAAA;GACV,CAAA,CAAA;AAEL,CAAC,CAAC,CAAA;AAEF,IAAMC,YAAY,gBAAGR,MAAM,CAACC,OAAO,CAAC,CAAAC,UAAA,CAAA;EAAAC,WAAA,EAAA,0BAAA;EAAAC,WAAA,EAAA,cAAA;AAAA,CAAoC,CAAA,CAAA,UAACK,KAAK,EAAK;AACjF,EAAA,IAAMC,KAAK,GAAGC,cAAc,CAACF,KAAK,CAACG,KAAK,CAACC,MAAM,CAACC,QAAQ,CAACJ,KAAK,CAAC,CAAA;AAC/D,EAAA,IAAMK,SAAS,GAAGJ,cAAc,CAACF,KAAK,CAACG,KAAK,CAACC,MAAM,CAACC,QAAQ,CAACC,SAAS,CAAC,CAAA;EACvE,IAAMC,MAAM,GAAGP,KAAK,CAACG,KAAK,CAACC,MAAM,CAACG,MAAM,CAAA;EAExC,IAAMC,QAAQ,GAAAX,QAAAA,CAAAA,MAAA,CAAYS,SAAS,EAAAT,GAAAA,CAAAA,CAAAA,MAAA,CAAIU,MAAM,CAACE,QAAQ,CAAE,CAAA;EACxD,IAAMC,UAAU,GAAAb,QAAAA,CAAAA,MAAA,CAAYI,KAAK,EAAAJ,GAAAA,CAAAA,CAAAA,MAAA,CAAIU,MAAM,CAACI,IAAI,CAAE,CAAA;AAElD,EAAA,IAAMC,mBAAmB,GAAGZ,KAAK,CAACa,oBAAoB,GAClD,EAAE,GAAAjB,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAA,GAAA,CAAAC,MAAA,CAEKX,mBAAmB,CAAK,EAAA;AAC3BY,IAAAA,OAAO,EAAE,MAAA;GACV,CAAA,EAAA,IAAA,CAAAD,MAAA,CACKb,SAAS,GAAAY,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA;AACbkB,IAAAA,KAAK,EAAEC,QAAQ,CAACC,kBAAkB,CAAC;AACnCC,IAAAA,UAAU,EAAEP,UAAAA;GAAUb,EAAAA,OAAAA,CAAAA,MAAA,CACbR,eAAe,CAAK,EAAA;IAC3B6B,OAAO,EAAA,EAAA,CAAArB,MAAA,CAAKsB,SAAS,CAACnB,KAAK,CAACG,KAAK,CAACiB,OAAO,CAAC,CAAC,CAAC,CAAC,EAAA,GAAA,CAAA,CAAAvB,MAAA,CAAIsB,SAAS,CAACnB,KAAK,CAACG,KAAK,CAACiB,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;GACnF,CAAA,EAAA,SAAA,CAAAvB,MAAA,CACUT,aAAa,SAAAS,MAAA,CAAMV,mBAAmB,CAAK,EAAA;AACpDW,IAAAA,OAAO,EAAE,MAAA;GACV,CAAA,EAAA,SAAA,CAAAD,MAAA,CACUT,aAAa,SAAAS,MAAA,CAAMX,mBAAmB,CAAK,EAAA;AACpDY,IAAAA,OAAO,EAAE,SAAA;AACX,GAAC,CAEJ,CAAA,CAAA;EAEL,OAAAuB,aAAA,CAAAzB,eAAA,CAAA;AACEkB,IAAAA,KAAK,EAAE,MAAM;AACb;AACAG,IAAAA,UAAU,EAAEjB,KAAK,CAACa,oBAAoB,GAAG,MAAM,GAAGL,QAAAA;GAAQX,EAAAA,OAAAA,CAAAA,MAAA,CACjDR,eAAe,CAAK,EAAA;IAC3B6B,OAAO,EAAEC,SAAS,CAACnB,KAAK,CAACG,KAAK,CAACiB,OAAO,CAAC,CAAC,CAAC,CAAA;AAC3C,GAAC,GACER,mBAAmB,CAAA,CAAA;AAE1B,CAAC,CAAC,CAAA;AAEF,IAAMU,sBAAsB,gBAAG/B,MAAM,CAACC,OAAO,CAAC,CAAAC,UAAA,CAAA;EAAAC,WAAA,EAAA,oCAAA;EAAAC,WAAA,EAAA,cAAA;AAAA,CAAoC,CAAA,CAAA,UAACK,KAAK,EAAK;AAC3F,EAAA,IAAMC,KAAK,GAAGC,cAAc,CAACF,KAAK,CAACG,KAAK,CAACC,MAAM,CAACC,QAAQ,CAACJ,KAAK,CAAC,CAAA;AAC/D,EAAA,IAAMK,SAAS,GAAGJ,cAAc,CAACF,KAAK,CAACG,KAAK,CAACC,MAAM,CAACC,QAAQ,CAACC,SAAS,CAAC,CAAA;EACvE,IAAMC,MAAM,GAAGP,KAAK,CAACG,KAAK,CAACC,MAAM,CAACG,MAAM,CAAA;EAExC,IAAMgB,aAAa,GAAA1B,QAAAA,CAAAA,MAAA,CAAYS,SAAS,EAAAT,GAAAA,CAAAA,CAAAA,MAAA,CAAIU,MAAM,CAACE,QAAQ,CAAE,CAAA;EAC7D,IAAMe,eAAe,GAAA3B,QAAAA,CAAAA,MAAA,CAAYI,KAAK,EAAAJ,GAAAA,CAAAA,CAAAA,MAAA,CAAIU,MAAM,CAACI,IAAI,CAAE,CAAA;AAEvD,EAAA,IAAI,CAACX,KAAK,CAACa,oBAAoB,EAAE;AAC/B,IAAA,OAAO,EAAE,CAAA;AACX,GAAA;AAEA,EAAA,OAAAjB,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA;AACEqB,IAAAA,UAAU,EAAEM,aAAAA;AAAa,GAAA,EAAA,IAAA,CAAA1B,MAAA,CACnBb,SAAS,CAAAY,EAAAA,eAAA,CAAAA,eAAA,CAAA;AACbkB,IAAAA,KAAK,EAAEC,QAAQ,CAACC,kBAAkB,CAAC;AACnCC,IAAAA,UAAU,EAAEO,eAAAA;AAAe,GAAA,EAAA,SAAA,CAAA3B,MAAA,CAChBT,aAAa,SAAAS,MAAA,CAAMV,mBAAmB,CAAK,EAAA;AACpDsC,IAAAA,OAAO,EAAE,GAAG;AACZC,IAAAA,aAAa,EAAE,MAAM;IACrBT,UAAU,EAAA,UAAA,CAAApB,MAAA,CAAaI,KAAK,OAAAJ,MAAA,CAAIU,MAAM,CAACI,IAAI,CAAA;GAC5C,CAAA,EAAA,SAAA,CAAAd,MAAA,CACUT,aAAa,SAAAS,MAAA,CAAMX,mBAAmB,CAAK,EAAA;AACpDuC,IAAAA,OAAO,EAAE,GAAG;AACZC,IAAAA,aAAa,EAAE,MAAM;IACrBT,UAAU,EAAA,UAAA,CAAApB,MAAA,CAAaI,KAAK,OAAAJ,MAAA,CAAIU,MAAM,CAACE,QAAQ,CAAA;AACjD,GAAC,CAAAZ,CAAAA,EAAAA,GAAAA,CAAAA,MAAA,CAEEX,mBAAmB,CAAK,EAAA;AAC3BuC,IAAAA,OAAO,EAAE,GAAG;AACZC,IAAAA,aAAa,EAAE,MAAM;IACrBT,UAAU,EAAA,UAAA,CAAApB,MAAA,CAAaI,KAAK,OAAAJ,MAAA,CAAIU,MAAM,CAACI,IAAI,CAAA;AAC7C,GAAC,CAAAd,EAAAA,GAAAA,CAAAA,MAAA,CACIV,mBAAmB,CAAK,EAAA;AAC3BsC,IAAAA,OAAO,EAAE,GAAG;AACZC,IAAAA,aAAa,EAAE,MAAM;IACrBT,UAAU,EAAA,UAAA,CAAApB,MAAA,CAAaI,KAAK,OAAAJ,MAAA,CAAIU,MAAM,CAACE,QAAQ,CAAA;GAChD,CAAA,CAAA;AAEL,CAAC,CAAC,CAAA;AAEF,IAAMkB,uBAAuB,gBAAGpC,MAAM,CAACC,OAAO,CAAC,CAAAC,UAAA,CAAA;EAAAC,WAAA,EAAA,qCAAA;EAAAC,WAAA,EAAA,cAAA;AAAA,CAAA,CAAA,CAAC,YAAM;EACpD,OAAO;AACL;AACA,IAAA,qBAAqB,EAAE;AACrBiC,MAAAA,MAAM,EAAE,MAAA;AACV,KAAA;GACD,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,KAAA,EAQV;AAAA,EAAA,IAPZC,aAAa,GAAAD,KAAA,CAAbC,aAAa;IACbC,WAAW,GAAAF,KAAA,CAAXE,WAAW;IACXC,eAAe,GAAAH,KAAA,CAAfG,eAAe,CAAA;AAMf,EAAA,IAAMC,eAAe,GAAGH,aAAa,IAAI,CAACC,WAAW,CAAA;AAErD,EAAA,IAAIE,eAAe,EAAE;AACnB,IAAA,IAAID,eAAe,EAAE;AACnB,MAAA,OAAA,EAAA,CAAApC,MAAA,CAAUb,SAAS,EAAAa,GAAAA,CAAAA,CAAAA,MAAA,CAAIT,aAAa,CAAA,CAAA;AACtC,KAAA;AAEA,IAAA,OAAOJ,SAAS,CAAA;AAClB,GAAA;AAEA,EAAA,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAED,IAAMmD,eAAe,gBAAG5C,MAAM,CAACC,OAAO,CAAC,CAAAC,UAAA,CAAA;EAAAC,WAAA,EAAA,6BAAA;EAAAC,WAAA,EAAA,cAAA;AAAA,CAAC,CAAA,CAAA,UAACK,KAAK,EAAK;EACjD,OAAO;AACL,IAAA,eAAe,EAAE;AACfoC,MAAAA,YAAY,EAAEC,cAAc,CAACrC,KAAK,CAACG,KAAK,CAACmC,MAAM,CAACxB,KAAK,CAACyB,IAAI,CAAC;AAC3DC,MAAAA,iBAAiB,EAAE,OAAO;AAC1BC,MAAAA,iBAAiB,EAAEzC,KAAK,CAACG,KAAK,CAACuC,MAAM,CAACC,OAAO,CAACL,MAAM,CAACM,IAAI,CAACC,KAAK;AAC/DC,MAAAA,WAAW,EAAET,cAAc,CAACrC,KAAK,CAACG,KAAK,CAACmC,MAAM,CAACxB,KAAK,CAACyB,IAAI,CAAC;AAC1DQ,MAAAA,gBAAgB,EAAE,OAAO;AACzBC,MAAAA,gBAAgB,EAAEhD,KAAK,CAACG,KAAK,CAACuC,MAAM,CAACC,OAAO,CAACL,MAAM,CAACM,IAAI,CAACC,KAAK;MAC9D3B,OAAO,EAAEC,SAAS,CAACnB,KAAK,CAACG,KAAK,CAACiB,OAAO,CAAC,CAAC,CAAC,CAAC;AAC1C6B,MAAAA,SAAS,EAAElC,QAAQ,CAACmC,IAAU,CAAC,KAAK,CAAC,CAAC;AACtCpC,MAAAA,KAAK,EAAE,MAAA;AACT,KAAA;GACD,CAAA;AACH,CAAC,CAAC,CAAA;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMqC,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,KAAA,EAcZC,GAA+B,EACR;AAAA,EAAA,IAbrBC,QAAQ,GAAAF,KAAA,CAARE,QAAQ;IACRC,MAAM,GAAAH,KAAA,CAANG,MAAM;IACNC,SAAS,GAAAJ,KAAA,CAATI,SAAS;IACTC,oBAAoB,GAAAL,KAAA,CAApBK,oBAAoB;IACpBC,cAAc,GAAAN,KAAA,CAAdM,cAAc;IACdC,qBAAqB,GAAAP,KAAA,CAArBO,qBAAqB;IACrBC,MAAM,GAAAR,KAAA,CAANQ,MAAM;IAAAC,qBAAA,GAAAT,KAAA,CACNU,eAAe;AAAfA,IAAAA,eAAe,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,kCAAkC,GAAAA,qBAAA;IACpDE,MAAM,GAAAX,KAAA,CAANW,MAAM;IACMC,WAAW,GAAAZ,KAAA,CAAvBa,UAAU;AACPC,IAAAA,IAAI,GAAAC,wBAAA,CAAAf,KAAA,EAAAgB,SAAA,CAAA,CAAA;AAIT,EAAA,IAAMC,oBAAoB,GAAGC,cAAK,CAACC,MAAM,CAAC,IAAI,CAAC,CAAA;AAC/C,EAAA,IAAMC,cAAc,GAAGF,cAAK,CAACC,MAAM,CAAiB,IAAI,CAAC,CAAA;AACzD,EAAA,IAAME,aAAa,GAAGH,cAAK,CAACC,MAAM,CAAmB,EAAE,CAAC,CAAA;AACxD,EAAA,IAAMG,mBAAmB,GAAGJ,cAAK,CAACC,MAAM,EAAkB,CAAA;AAC1D,EAAA,IAAMI,8BAA8B,GAAGL,cAAK,CAACC,MAAM,EAAW,CAAA;AAC9D,EAAA,IAAAK,eAAA,GAA0CN,cAAK,CAACO,QAAQ,CAAC,KAAK,CAAC;IAAAC,gBAAA,GAAAC,cAAA,CAAAH,eAAA,EAAA,CAAA,CAAA;AAAxD7C,IAAAA,aAAa,GAAA+C,gBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,gBAAgB,GAAAF,gBAAA,CAAA,CAAA,CAAA,CAAA;AACtC,EAAA,IAAAG,gBAAA,GAA4CX,cAAK,CAACO,QAAQ,CAAC,KAAK,CAAC;IAAAK,gBAAA,GAAAH,cAAA,CAAAE,gBAAA,EAAA,CAAA,CAAA;AAA1DE,IAAAA,cAAc,GAAAD,gBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,iBAAiB,GAAAF,gBAAA,CAAA,CAAA,CAAA,CAAA;AACxC,EAAA,IAAAG,gBAAA,GAAsCf,cAAK,CAACO,QAAQ,CAAC,KAAK,CAAC;IAAAS,gBAAA,GAAAP,cAAA,CAAAM,gBAAA,EAAA,CAAA,CAAA;AAApDrD,IAAAA,WAAW,GAAAsD,gBAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,cAAc,GAAAD,gBAAA,CAAA,CAAA,CAAA,CAAA;AAClC,EAAA,IAAAE,gBAAA,GAAsDlB,cAAK,CAACO,QAAQ,CAAC,IAAI,CAAC;IAAAY,gBAAA,GAAAV,cAAA,CAAAS,gBAAA,EAAA,CAAA,CAAA;AAAnEE,IAAAA,mBAAmB,GAAAD,gBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,sBAAsB,GAAAF,gBAAA,CAAA,CAAA,CAAA,CAAA;AAClD,EAAA,IAAAG,gBAAA,GAA8CtB,cAAK,CAACO,QAAQ,CAAC,KAAK,CAAC;IAAAgB,gBAAA,GAAAd,cAAA,CAAAa,gBAAA,EAAA,CAAA,CAAA;AAA5D3D,IAAAA,eAAe,GAAA4D,gBAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,kBAAkB,GAAAD,gBAAA,CAAA,CAAA,CAAA,CAAA;AAC1C,EAAA,IAAAE,gBAAA,GAA0CzB,cAAK,CAACO,QAAQ,CAAC,EAAE,CAAC;IAAAmB,iBAAA,GAAAjB,cAAA,CAAAgB,gBAAA,EAAA,CAAA,CAAA;AAArDE,IAAAA,aAAa,GAAAD,iBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,gBAAgB,GAAAF,iBAAA,CAAA,CAAA,CAAA,CAAA;AAEtC,EAAA,IAAMG,QAAQ,GAAGC,WAAW,EAAE,CAAA;AAC9B,EAAA,IAAMC,uBAAuB,GAAGrC,WAAW,KAAK,KAAK,CAAA;EAErD,IAAMsC,sBAAsB,GAAGH,QAAQ,GACnChB,cAAc,GACdkB,uBAAuB,IAAItE,aAAa,CAAA;AAE5C,EAAA,IAAMwE,oBAAoB,GAAGF,uBAAuB,GAAG,KAAK,GAAGrE,WAAW,CAAA;EAC1E,IAAMwE,YAAY,GAAGH,uBAAuB,GACxCtF,QAAQ,CAACC,kBAAkB,CAAC,GAC5B;AACEyF,IAAAA,IAAI,EAAE1F,QAAQ,CAAC2F,+BAA+B,CAAC;IAC/CC,EAAE,EAAE5F,QAAQ,CAAC6F,6BAA6B,CAAA;GAC3C,CAAA;AAEL,EAAA,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,GAAe;AACjC,IAAA,IAAIV,QAAQ,EAAE;MACZf,iBAAiB,CAAC,KAAK,CAAC,CAAA;AACxB5B,MAAAA,SAAS,KAATA,IAAAA,IAAAA,SAAS,KAATA,KAAAA,CAAAA,IAAAA,SAAS,EAAI,CAAA;AACbC,MAAAA,oBAAoB,KAApBA,IAAAA,IAAAA,oBAAoB,KAApBA,KAAAA,CAAAA,IAAAA,oBAAoB,CAAG;AAAEqD,QAAAA,YAAY,EAAE,CAAA;AAAE,OAAC,CAAC,CAAA;AAC7C,KAAA;GACD,CAAA;AAED,EAAA,IAAMC,iBAAiB,GAAGzC,cAAK,CAAC0C,WAAW,CAAC,YAAY;AACtD,IAAA,IAAMC,sBAAsB,GAAGC,UAAU,CAAC,YAAM;MAC9CpB,kBAAkB,CAAC,UAACqB,wBAAwB,EAAA;AAAA,QAAA,OAC1CA,wBAAwB,GAAG,KAAK,GAAGA,wBAAwB,CAAA;AAAA,OAC7D,CAAC,CAAA;KACF,EAAEC,wBAAwB,CAAC,CAAA;AAC5B3C,IAAAA,aAAa,CAAC4C,OAAO,CAACC,IAAI,CAACL,sBAAsB,CAAC,CAAA;GACnD,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,IAAMM,iBAAiB,GAAGjD,cAAK,CAAC0C,WAAW,CAAC,YAAY;IACtDlB,kBAAkB,CAAC,IAAI,CAAC,CAAA;AACxBiB,IAAAA,iBAAiB,EAAE,CAAA;AACrB,GAAC,EAAE,CAACA,iBAAiB,CAAC,CAAC,CAAA;AAEvB,EAAA,IAAMS,UAAU,GAAG,SAAbA,UAAUA,CAAIC,KAAa,EAAW;AAC1C,IAAA,IAAItB,QAAQ,EAAE;MACZD,gBAAgB,CAACuB,KAAK,CAAC,CAAA;MACvBrC,iBAAiB,CAAC,IAAI,CAAC,CAAA;AACvB3B,MAAAA,oBAAoB,KAApBA,IAAAA,IAAAA,oBAAoB,KAApBA,KAAAA,CAAAA,IAAAA,oBAAoB,CAAG;AAAEqD,QAAAA,YAAY,EAAE,CAAA;AAAE,OAAC,CAAC,CAAA;AAC3C,MAAA,OAAA;AACF,KAAA;IAEA,IAAI,CAAC/E,aAAa,EAAE;MAClBiD,gBAAgB,CAAC,IAAI,CAAC,CAAA;AACtBvB,MAAAA,oBAAoB,KAApBA,IAAAA,IAAAA,oBAAoB,KAApBA,KAAAA,CAAAA,IAAAA,oBAAoB,CAAG;AAAEqD,QAAAA,YAAY,EAAE,CAAA;AAAE,OAAC,CAAC,CAAA;AAC7C,KAAA;GACD,CAAA;AAED,EAAA,IAAMY,QAAQ,GAAG,SAAXA,QAAQA,GAAe;AAC3B,IAAA,IAAIvB,QAAQ,EAAE;MACZf,iBAAiB,CAAC,KAAK,CAAC,CAAA;AACxB3B,MAAAA,oBAAoB,KAApBA,IAAAA,IAAAA,oBAAoB,KAApBA,KAAAA,CAAAA,IAAAA,oBAAoB,CAAG;AAAEqD,QAAAA,YAAY,EAAE,CAAA;AAAE,OAAC,CAAC,CAAA;AAC3C,MAAA,OAAA;AACF,KAAA;AAEA,IAAA,IAAIT,uBAAuB,EAAE;AAC3B,MAAA,OAAA;AACF,KAAA;;AAEA;AACA,IAAA,IAAItE,aAAa,EAAE;MACjBiD,gBAAgB,CAAC,KAAK,CAAC,CAAA;AACvB;MACA,IAAI,CAAChD,WAAW,EAAE;AAChByB,QAAAA,oBAAoB,KAApBA,IAAAA,IAAAA,oBAAoB,KAApBA,KAAAA,CAAAA,IAAAA,oBAAoB,CAAG;AAAEqD,UAAAA,YAAY,EAAE,CAAA;AAAE,SAAC,CAAC,CAAA;AAC7C,OAAA;AACF,KAAA;GACD,CAAA;;AAED;AACF;AACA;AACE,EAAA,IAAMa,kBAA4D,GAAG,SAA/DA,kBAA4DA,CAAIC,IAAI,EAAK;IAC7E,IAAMC,cAAc,GAAGD,IAAI,CAACE,KAAK,KAAK,CAAC,IAAIF,IAAI,CAACG,QAAQ,CAAA;AAExD,IAAA,IAAIF,cAAc,EAAE;MAClB,IAAID,IAAI,CAACI,WAAW,EAAE;AACpB;AACAR,QAAAA,UAAU,CAACI,IAAI,CAACH,KAAK,CAAC,CAAA;;AAEtB;AACA,QAAA,IAAI,CAACG,IAAI,CAACK,aAAa,EAAE;AACvBV,UAAAA,iBAAiB,EAAE,CAAA;UACnBhC,cAAc,CAAC,KAAK,CAAC,CAAA;UACrBI,sBAAsB,CAAC,KAAK,CAAC,CAAA;AAC7B;AACA,UAAA,IAAMuC,iBAAiB,GAAGhB,UAAU,CAAC,YAAM;YACzCvB,sBAAsB,CAAC,IAAI,CAAC,CAAA;WAC7B,EAAEwC,iBAAiB,CAAC,CAAA;AACrB1D,UAAAA,aAAa,CAAC4C,OAAO,CAACC,IAAI,CAACY,iBAAiB,CAAC,CAAA;AAC/C,SAAA;AACF,OAAC,MAAM;AACL;AACAR,QAAAA,QAAQ,EAAE,CAAA;AACZ,OAAA;AACF,KAAA;GACD,CAAA;AAED,EAAA,IAAMU,YAAY,GAAG9D,cAAK,CAAC+D,OAAO,CAChC,YAAA;IAAA,OAAO;AACLhE,MAAAA,oBAAoB,EAApBA,oBAAoB;AACpBsD,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBd,MAAAA,cAAc,EAAdA,cAAc;AACd9E,MAAAA,aAAa,EAAEuE,sBAAsB;AACrCtB,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBhD,MAAAA,WAAW,EAAEuE,oBAAoB;AACjCF,MAAAA,uBAAuB,EAAvBA,uBAAAA;KACD,CAAA;GAAC;AACF;AACA,EAAA,CAACC,sBAAsB,EAAEC,oBAAoB,EAAEF,uBAAuB,CACxE,CAAC,CAAA;EAED/B,cAAK,CAACgE,SAAS,CAAC,YAAM;AACpB,IAAA,OAAO,YAAM;AAAA,MAAA,IAAAC,SAAA,GAAAC,0BAAA,CACa/D,aAAa,CAAC4C,OAAO,CAAA;QAAAoB,KAAA,CAAA;AAAA,MAAA,IAAA;QAA7C,KAAAF,SAAA,CAAAG,CAAA,EAAAD,EAAAA,CAAAA,CAAAA,KAAA,GAAAF,SAAA,CAAAI,CAAA,EAAAC,EAAAA,IAAA,GAA+C;AAAA,UAAA,IAApCC,SAAS,GAAAJ,KAAA,CAAAK,KAAA,CAAA;UAClBC,YAAY,CAACF,SAAS,CAAC,CAAA;AACzB,SAAA;AAAC,OAAA,CAAA,OAAAG,GAAA,EAAA;QAAAT,SAAA,CAAAU,CAAA,CAAAD,GAAA,CAAA,CAAA;AAAA,OAAA,SAAA;AAAAT,QAAAA,SAAA,CAAAW,CAAA,EAAA,CAAA;AAAA,OAAA;MACDzE,aAAa,CAAC4C,OAAO,GAAG,EAAE,CAAA;KAC3B,CAAA;GACF,EAAE,EAAE,CAAC,CAAA;EAEN/C,cAAK,CAACgE,SAAS,CAAC,YAAM;AACpB,IAAA,IAAI,CAACnC,QAAQ,IAAIE,uBAAuB,IAAIrE,WAAW,EAAE;MACvDuD,cAAc,CAAC,KAAK,CAAC,CAAA;AACvB,KAAA;GACD,EAAE,CAACY,QAAQ,EAAEE,uBAAuB,EAAErE,WAAW,CAAC,CAAC,CAAA;EAEpDsC,cAAK,CAACgE,SAAS,CAAC,YAAM;AACpB,IAAA,IAAMa,2BAA2B,GAAGxE,8BAA8B,CAAC0C,OAAO,CAAA;IAC1E1C,8BAA8B,CAAC0C,OAAO,GAAGhB,uBAAuB,CAAA;AAEhE,IAAA,IAAIF,QAAQ,IAAIgD,2BAA2B,KAAKC,SAAS,EAAE;AACzD,MAAA,OAAA;AACF,KAAA;IAEA,IAAID,2BAA2B,KAAK9C,uBAAuB,EAAE;AAC3DkB,MAAAA,iBAAiB,EAAE,CAAA;AACnB7D,MAAAA,cAAc,KAAdA,IAAAA,IAAAA,cAAc,KAAdA,KAAAA,CAAAA,IAAAA,cAAc,CAAG;AAAEO,QAAAA,UAAU,EAAE,CAACoC,uBAAAA;AAAwB,OAAC,CAAC,CAAA;AAC5D,KAAA;GACD,EAAE,CAACF,QAAQ,EAAEE,uBAAuB,EAAE3C,cAAc,EAAE6D,iBAAiB,CAAC,CAAC,CAAA;AAE1E,EAAA,oBACE8B,GAAA,CAACC,cAAc,CAACC,QAAQ,EAAA;AAACT,IAAAA,KAAK,EAAEV,YAAa;AAAA9E,IAAAA,QAAA,EAC1C6C,QAAQ,IAAI3C,SAAS,gBACpBgG,IAAA,CAAAC,QAAA,EAAA;MAAAnG,QAAA,EAAA,cAEEkG,IAAA,CAACE,MAAM,EAAA;AAACnG,QAAAA,MAAM,EAAEA,MAAM,KAAA,IAAA,IAANA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,MAAM,GAAI,KAAM;AAACC,QAAAA,SAAS,EAAEqD,cAAe;QAAAvD,QAAA,EAAA,cACzD+F,GAAA,CAACM,YAAY,EAAA;AAAClC,UAAAA,KAAK,EAAC,WAAA;AAAW,SAAE,CAAC,eAClC4B,GAAA,CAACO,UAAU,EAAA;AAAAtG,UAAAA,QAAA,eACT+F,GAAA,CAAC/J,iBAAiB,EAAA+B,aAAA,CAAAA,aAAA,CAAA;AAChBvB,YAAAA,OAAO,EAAC,MAAM;AACd+J,YAAAA,aAAa,EAAC,QAAQ;AACtBC,YAAAA,cAAc,EAAC,eAAe;AAC9BC,YAAAA,SAAS,EAAC,qBAAqB;AAC/BnI,YAAAA,MAAM,EAAC,MAAA;AAAM,WAAA,EACToI,aAAa,CAAC;YAChBC,IAAI,EAAEC,aAAa,CAACC,OAAO;AAC3BpG,YAAAA,MAAM,EAANA,MAAAA;AACF,WAAC,CAAC,CAAA,EAAA,EAAA,EAAA;AAAAT,YAAAA,QAAA,EAEDA,QAAAA;WACgB,CAAA,CAAA;AAAC,SACV,CAAC,CAAA;AAAA,OACP,CAAC,eAETkG,IAAA,CAACE,MAAM,EAAA;AAACnG,QAAAA,MAAM,EAAE4B,cAAe;QAAC3B,SAAS,EAAE,SAAXA,SAASA,GAAA;UAAA,OAAQkE,QAAQ,EAAE,CAAA;SAAC;AAAC0C,QAAAA,MAAM,EAAE,KAAM;QAAA9G,QAAA,EAAA,cACzE+F,GAAA,CAACM,YAAY,EAAA;AAAClC,UAAAA,KAAK,EAAExB,aAAAA;AAAc,SAAE,CAAC,eACtCoD,GAAA,CAACO,UAAU,EAAA;UAAAtG,QAAA,eACT+F,GAAA,CAAC7J,OAAO,EAAA;AAAC6D,YAAAA,GAAG,EAAEgB,oBAAAA;WAAuB,CAAA;AAAC,SAC5B,CAAC,CAAA;AAAA,OACP,CAAC,CAAA;AAAA,KACT,CAAC,gBAEHmF,IAAA,CAAClI,sBAAsB,EAAAD,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAA;AACrBR,MAAAA,oBAAoB,EAAE,OAAOmD,WAAW,KAAK,WAAY;AACzDX,MAAAA,GAAG,EAAEA,GAAa;AAClB0G,MAAAA,SAAS,EAAE1D,uBAAuB,GAAGrH,SAAS,GAAG,EAAG;AACpDqL,MAAAA,QAAQ,EAAC,OAAO;AAChBvG,MAAAA,eAAe,EAAEA,eAAgB;AACjClC,MAAAA,MAAM,EAAC,MAAM;AACb0I,MAAAA,GAAG,EAAC,WAAW;AACfC,MAAAA,IAAI,EAAC,WAAW;AAChBzK,MAAAA,OAAO,EAAE;AAAE2G,QAAAA,IAAI,EAAE,MAAM;AAAE+D,QAAAA,CAAC,EAAE,MAAA;OAAS;AACrCX,MAAAA,aAAa,EAAC,QAAQ;AACtB/I,MAAAA,KAAK,EAAE0F,YAAa;AACpBiE,MAAAA,EAAE,EAAC,KAAA;AAAK,KAAA,EACJT,aAAa,CAAC;MAChBC,IAAI,EAAEC,aAAa,CAACC,OAAO;AAC3BpG,MAAAA,MAAM,EAANA,MAAAA;KACD,CAAC,CACE2G,EAAAA,cAAc,CAACxG,IAAI,CAAC,CACpByG,EAAAA,sBAAsB,CAACzG,IAAI,CAAC,CAAA,EAAA,EAAA,EAAA;AAChC0G,MAAAA,eAAe,EAAE,SAAjBA,eAAeA,CAAG3B,CAAC,EAAK;AACtB,QAAA,IAAIA,CAAC,CAAC4B,MAAM,KAAK5B,CAAC,CAAC6B,aAAa,IAAI7B,CAAC,CAAC8B,YAAY,KAAK,OAAO,IAAI5E,QAAQ,EAAE;AAC1E,UAAA,OAAA;AACF,SAAA;AAEAxC,QAAAA,qBAAqB,KAArBA,IAAAA,IAAAA,qBAAqB,KAArBA,KAAAA,CAAAA,IAAAA,qBAAqB,CAAG;AACtBM,UAAAA,UAAU,EAAE,CAACoC,uBAAAA;AACf,SAAC,CAAC,CAAA;OACF;AAAA/C,MAAAA,QAAA,EAEDM,CAAAA,MAAM,gBAAGyF,GAAA,CAAClH,eAAe,EAAA;AAAAmB,QAAAA,QAAA,EAAEM,MAAAA;AAAM,OAAkB,CAAC,GAAG,IAAI,eAC5D4F,IAAA,CAAChK,OAAO,EAAA;AAAC6K,QAAAA,QAAQ,EAAC,UAAU;AAACvK,QAAAA,OAAO,EAAC,OAAO;AAACkL,QAAAA,IAAI,EAAC,GAAG;AAAClK,QAAAA,KAAK,EAAC,MAAM;QAAAwC,QAAA,EAAA,cAChE+F,GAAA,CAAC1H,uBAAuB,EAAA;AACtB0I,UAAAA,QAAQ,EAAC,UAAU;AACnBvK,UAAAA,OAAO,EAAEuG,uBAAuB,GAAG,MAAM,GAAG,OAAQ;AACpDvC,UAAAA,eAAe,EAAEA,eAAgB;AACjClC,UAAAA,MAAM,EAAC,MAAM;AACbd,UAAAA,KAAK,EAAC,MAAM;AACZwJ,UAAAA,GAAG,EAAC,WAAW;AACfC,UAAAA,IAAI,EAAC,WAAW;AAChBU,UAAAA,EAAE,EAAC,kBAAkB;AACrBC,UAAAA,gBAAgB,EAAC,MAAM;AACvBlI,UAAAA,gBAAgB,EAAC,2BAA2B;AAC5CK,UAAAA,GAAG,EAAEgB,oBAAAA;AAAqB,SAC3B,CAAC,eACFmF,IAAA,CAACzJ,YAAY,EAAA;AACXsD,UAAAA,GAAG,EAAEmB,cAAe;AACpByG,UAAAA,EAAE,EAAC,kBAAkB;UACrBlB,SAAS,EAAElI,kBAAkB,CAAC;AAC5BE,YAAAA,aAAa,EAAEuE,sBAAsB;AACrCtE,YAAAA,WAAW,EAAEuE,oBAAoB;AACjCtE,YAAAA,eAAe,EAAfA,eAAAA;AACF,WAAC,CAAE;AACHpB,UAAAA,oBAAoB,EAAE,OAAOmD,WAAW,KAAK,WAAY;AACzDqG,UAAAA,QAAQ,EAAC,UAAU;AACnBvK,UAAAA,OAAO,EAAC,MAAM;AACd+J,UAAAA,aAAa,EAAC,QAAQ;AACtBC,UAAAA,cAAc,EAAC,eAAe;AAC9BhG,UAAAA,eAAe,EAAEA,eAAgB;AACjClC,UAAAA,MAAM,EAAC,MAAM;AACbuJ,UAAAA,QAAQ,EAAC,QAAQ;AACjBb,UAAAA,GAAG,EAAC,WAAW;AACfC,UAAAA,IAAI,EAAC,WAAW;AAChBW,UAAAA,gBAAgB,EAAC,MAAM;AACvBlI,UAAAA,gBAAgB,EAAC,2BAA2B;AAC5C4H,UAAAA,eAAe,EAAE,SAAjBA,eAAeA,CAAG3B,CAAC,EAAK;AACtB;AACA;YACA,IAAIhH,eAAe,IAAIuC,cAAc,CAAC6C,OAAO,KAAK4B,CAAC,CAAC4B,MAAM,EAAE;cAC1D/E,kBAAkB,CAAC,KAAK,CAAC,CAAA;AAC3B,aAAA;AACF,WAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACAsF,UAAAA,WAAW,EAAE,SAAbA,WAAWA,GAAQ;AACjB,YAAA,IAAI,CAACjF,QAAQ,IAAIE,uBAAuB,EAAE;AACxC,cAAA,OAAA;AACF,aAAA;YACA,IAAI3B,mBAAmB,CAAC2C,OAAO,EAAE;AAC/B0B,cAAAA,YAAY,CAACrE,mBAAmB,CAAC2C,OAAO,CAAC,CAAA;AAC3C,aAAA;AACA,YAAA,IAAItF,aAAa,IAAI2D,mBAAmB,IAAI,CAAC1D,WAAW,EAAE;cACxDuD,cAAc,CAAC,IAAI,CAAC,CAAA;AACpB9B,cAAAA,oBAAoB,KAApBA,IAAAA,IAAAA,oBAAoB,KAApBA,KAAAA,CAAAA,IAAAA,oBAAoB,CAAG;AAAEqD,gBAAAA,YAAY,EAAE,CAAA;AAAE,eAAC,CAAC,CAAA;AAC7C,aAAA;WACA;AACFuE,UAAAA,YAAY,EAAE,SAAdA,YAAYA,GAAQ;AAClB,YAAA,IAAI,CAAClF,QAAQ,IAAIE,uBAAuB,EAAE;AACxC,cAAA,OAAA;AACF,aAAA;YACA,IAAItE,aAAa,IAAIC,WAAW,EAAE;AAChC0C,cAAAA,mBAAmB,CAAC2C,OAAO,GAAGH,UAAU,CAAC,YAAM;gBAC7C3B,cAAc,CAAC,KAAK,CAAC,CAAA;AACrBgC,gBAAAA,iBAAiB,EAAE,CAAA;AACnB9D,gBAAAA,oBAAoB,KAApBA,IAAAA,IAAAA,oBAAoB,KAApBA,KAAAA,CAAAA,IAAAA,oBAAoB,CAAG;AAAEqD,kBAAAA,YAAY,EAAE,CAAA;AAAE,iBAAC,CAAC,CAAA;eAC5C,EAAEwE,mBAAmB,CAAC,CAAA;AACzB,aAAA;AACA;AACA;AACA,YAAA,IAAIvJ,aAAa,IAAI,CAACC,WAAW,EAAE;AACjCyB,cAAAA,oBAAoB,KAApBA,IAAAA,IAAAA,oBAAoB,KAApBA,KAAAA,CAAAA,IAAAA,oBAAoB,CAAG;AAAEqD,gBAAAA,YAAY,EAAE,CAAA;AAAE,eAAC,CAAC,CAAA;AAC7C,aAAA;WACA;UAAAxD,QAAA,EAAA,cAEF+F,GAAA,CAACkC,WAAW,EAAA;AAACN,YAAAA,EAAE,EAAEO,WAAY;AAACC,YAAAA,cAAc,EAAE,IAAA;WAAO,CAAC,EACrDnI,QAAQ,CAAA;AAAA,SACG,CAAC,eACf+F,GAAA,CAACqC,cAAc,EAAA;AAACT,UAAAA,EAAE,EAAEO,WAAAA;AAAY,SAAE,CAAC,CAAA;AAAA,OAC5B,CAAC,CAAA;KACY,CAAA,CAAA;AACzB,GACsB,CAAC,CAAA;AAE9B,CAAC,CAAA;AAED,IAAMrB,OAAO,gBAAG7F,cAAK,CAACqH,UAAU,CAACxI,QAAQ;;;;"}
1
+ {"version":3,"file":"SideNav.web.js","sources":["../../../../../../src/components/SideNav/SideNav.web.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\nimport { SideNavContext } from './SideNavContext';\nimport {\n classes,\n COLLAPSED_L1_WIDTH,\n HOVER_AGAIN_DELAY,\n L1_EXIT_HOVER_DELAY,\n SKIP_NAV_ID,\n TRANSITION_CLEANUP_DELAY,\n SIDE_NAV_EXPANDED_L1_WIDTH_BASE,\n SIDE_NAV_EXPANDED_L1_WIDTH_XL,\n} from './tokens';\nimport type { SideNavContextType, SideNavProps } from './types';\nimport type { BladeElementRef } from '~utils/types';\nimport { size as sizeTokens } from '~tokens/global';\nimport { makeBorderSize, makeMotionTime, makeSize, makeSpace } from '~utils';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport BaseBox from '~components/Box/BaseBox';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { Drawer, DrawerBody, DrawerHeader } from '~components/Drawer';\nimport { SkipNavContent, SkipNavLink } from '~components/SkipNav/SkipNav';\n\nconst {\n COLLAPSED,\n SHOW_WHEN_COLLAPSED,\n HIDE_WHEN_COLLAPSED,\n TRANSITIONING,\n L1_ITEM_WRAPPER,\n} = classes;\n\nconst MobileL1Container = styled(BaseBox)(() => {\n return {\n [`.${SHOW_WHEN_COLLAPSED}`]: {\n display: 'none',\n },\n };\n});\n\nconst StyledL1Menu = styled(BaseBox)<{ $isSideNavExpandable: boolean }>((props) => {\n const quick = makeMotionTime(props.theme.motion.duration.quick);\n const xmoderate = makeMotionTime(props.theme.motion.duration.xmoderate);\n const easing = props.theme.motion.easing;\n\n const l1Expand = `width ${xmoderate} ${easing.entrance}`;\n const l1Collapse = `width ${quick} ${easing.exit}`;\n\n const textVisibilityProps = props.$isSideNavExpandable\n ? {}\n : {\n [`.${SHOW_WHEN_COLLAPSED}`]: {\n display: 'none',\n },\n [`&.${COLLAPSED}`]: {\n width: makeSize(COLLAPSED_L1_WIDTH),\n transition: l1Collapse,\n [`& > .${L1_ITEM_WRAPPER}`]: {\n padding: `${makeSpace(props.theme.spacing[3])} ${makeSpace(props.theme.spacing[3])}`,\n },\n [`&:not(.${TRANSITIONING}) .${HIDE_WHEN_COLLAPSED}`]: {\n display: 'none',\n },\n [`&:not(.${TRANSITIONING}) .${SHOW_WHEN_COLLAPSED}`]: {\n display: 'initial',\n },\n },\n };\n\n return {\n width: '100%',\n // the overall sidenav expands and collapses in this case. No need transition here\n transition: props.$isSideNavExpandable ? 'none' : l1Expand,\n [`& > .${L1_ITEM_WRAPPER}`]: {\n padding: makeSpace(props.theme.spacing[3]),\n },\n ...textVisibilityProps,\n };\n});\n\nconst StyledSideNavContainer = styled(BaseBox)<{ $isSideNavExpandable: boolean }>((props) => {\n const quick = makeMotionTime(props.theme.motion.duration.quick);\n const xmoderate = makeMotionTime(props.theme.motion.duration.xmoderate);\n const easing = props.theme.motion.easing;\n\n const sideNavExpand = `width ${xmoderate} ${easing.entrance}`;\n const sideNavCollapse = `width ${quick} ${easing.exit}`;\n\n if (!props.$isSideNavExpandable) {\n return {};\n }\n\n return {\n transition: sideNavExpand,\n [`&.${COLLAPSED}`]: {\n width: makeSize(COLLAPSED_L1_WIDTH),\n transition: sideNavCollapse,\n [`&:not(.${TRANSITIONING}) .${HIDE_WHEN_COLLAPSED}`]: {\n opacity: '0',\n pointerEvents: 'none',\n transition: `opacity ${quick} ${easing.exit}`,\n },\n [`&:not(.${TRANSITIONING}) .${SHOW_WHEN_COLLAPSED}`]: {\n opacity: '1',\n pointerEvents: 'auto',\n transition: `opacity ${quick} ${easing.entrance}`,\n },\n },\n [`.${SHOW_WHEN_COLLAPSED}`]: {\n opacity: '0',\n pointerEvents: 'none',\n transition: `opacity ${quick} ${easing.exit}`,\n },\n [`.${HIDE_WHEN_COLLAPSED}`]: {\n opacity: '1',\n pointerEvents: 'auto',\n transition: `opacity ${quick} ${easing.entrance}`,\n },\n };\n});\n\nconst StyledL2PortalContainer = styled(BaseBox)(() => {\n return {\n // This ensures that the portal node has 100% height when it has items\n '& > div:not(:empty)': {\n height: '100%',\n },\n };\n});\n\nconst getL1MenuClassName = ({\n isL1Collapsed,\n isL1Hovered,\n isTransitioning,\n}: {\n isL1Collapsed: boolean;\n isL1Hovered: boolean;\n isTransitioning: boolean;\n}): string => {\n const isMenuCollapsed = isL1Collapsed && !isL1Hovered;\n\n if (isMenuCollapsed) {\n if (isTransitioning) {\n return `${COLLAPSED} ${TRANSITIONING}`;\n }\n\n return COLLAPSED;\n }\n\n return '';\n};\n\nconst BannerContainer = styled(BaseBox)((props) => {\n return {\n '&:not(:empty)': {\n borderBottom: makeBorderSize(props.theme.border.width.thin),\n borderBottomStyle: 'solid',\n borderBottomColor: props.theme.colors.surface.border.gray.muted,\n borderRight: makeBorderSize(props.theme.border.width.thin),\n borderRightStyle: 'solid',\n borderRightColor: props.theme.colors.surface.border.gray.muted,\n padding: makeSpace(props.theme.spacing[3]),\n maxHeight: makeSize(sizeTokens['100']),\n width: '100%',\n },\n };\n});\n\n/**\n * ### SideNav component\n *\n * The side navigation is positioned along the left side of the screen that provides quick access to different sections or functionalities of the application.\n *\n * ---\n *\n * #### Usage\n *\n * SideNav requires handling active state with React Router, Checkout Usage with React Router v6 at - [SideNav Documentation](https://blade.razorpay.com/?path=/docs/components-sidenav--docs)\n *\n */\nconst _SideNav = (\n {\n children,\n isOpen,\n onDismiss,\n onVisibleLevelChange,\n onExpandChange,\n onExpandTransitionEnd,\n banner,\n backgroundColor = 'surface.background.gray.moderate',\n testID,\n isExpanded: _isExpanded,\n ...rest\n }: SideNavProps,\n ref: React.Ref<BladeElementRef>,\n): React.ReactElement => {\n const l2PortalContainerRef = React.useRef(null);\n const l1ContainerRef = React.useRef<HTMLDivElement>(null);\n const timeoutIdsRef = React.useRef<NodeJS.Timeout[]>([]);\n const mouseOverTimeoutRef = React.useRef<NodeJS.Timeout>();\n const prevIsSideNavCollapsedRef = React.useRef<boolean>();\n const [isL1Collapsed, setIsL1Collapsed] = React.useState(false);\n const [isMobileL2Open, setIsMobileL2Open] = React.useState(false);\n const [isL1Hovered, setIsL1Hovered] = React.useState(false);\n const [isHoverAgainEnabled, setIsHoverAgainEnabled] = React.useState(true);\n const [isTransitioning, setIsTransitioning] = React.useState(false);\n const [l2DrawerTitle, setL2DrawerTitle] = React.useState('');\n\n const isMobile = useIsMobile();\n const isSideNavCollapsed = _isExpanded === false;\n\n const effectiveIsL1Collapsed = isMobile ? isMobileL2Open : isSideNavCollapsed || isL1Collapsed;\n\n const effectiveIsL1Hovered = isSideNavCollapsed ? false : isL1Hovered;\n const sideNavWidth = isSideNavCollapsed\n ? makeSize(COLLAPSED_L1_WIDTH)\n : {\n base: makeSize(SIDE_NAV_EXPANDED_L1_WIDTH_BASE),\n xl: makeSize(SIDE_NAV_EXPANDED_L1_WIDTH_XL),\n };\n\n const closeMobileNav = (): void => {\n if (isMobile) {\n setIsMobileL2Open(false);\n onDismiss?.();\n onVisibleLevelChange?.({ visibleLevel: 0 });\n }\n };\n\n const cleanupTransition = React.useCallback((): void => {\n const clearTransitionTimeout = setTimeout(() => {\n setIsTransitioning((isCurrentlyTransitioning) =>\n isCurrentlyTransitioning ? false : isCurrentlyTransitioning,\n );\n }, TRANSITION_CLEANUP_DELAY);\n timeoutIdsRef.current.push(clearTransitionTimeout);\n }, []);\n\n const startL1Transition = React.useCallback((): void => {\n setIsTransitioning(true);\n cleanupTransition();\n }, [cleanupTransition]);\n\n const collapseL1 = (title: string): void => {\n if (isMobile) {\n setL2DrawerTitle(title);\n setIsMobileL2Open(true);\n onVisibleLevelChange?.({ visibleLevel: 2 });\n return;\n }\n\n if (!isL1Collapsed) {\n setIsL1Collapsed(true);\n onVisibleLevelChange?.({ visibleLevel: 2 });\n }\n };\n\n const expandL1 = (): void => {\n if (isMobile) {\n setIsMobileL2Open(false);\n onVisibleLevelChange?.({ visibleLevel: 1 });\n return;\n }\n\n if (isSideNavCollapsed) {\n return;\n }\n\n // Ensures that if Normal L1 item is clicked, the L1 stays expanded\n if (isL1Collapsed) {\n setIsL1Collapsed(false);\n // We want to avoid calling onVisibleLevelChange twice when L1 is hovered and then item on L1 is selected\n if (!isL1Hovered) {\n onVisibleLevelChange?.({ visibleLevel: 1 });\n }\n }\n };\n\n /**\n * Handles L1 -> L2 menu changes based on active item\n */\n const onLinkActiveChange: SideNavContextType['onLinkActiveChange'] = (args) => {\n const isL1ItemActive = args.level === 1 && args.isActive;\n\n if (isL1ItemActive) {\n if (args.isL2Trigger) {\n // Click on L2 Trigger\n collapseL1(args.title);\n\n // `args.isFirstRender` checks if the item that triggered this change, triggered it during first render or during subsequent change\n if (!args.isFirstRender) {\n startL1Transition();\n setIsL1Hovered(false);\n setIsHoverAgainEnabled(false);\n // For some delay, we disable hover to expand behaviour to avoid buggy flicker when cursor is on L1 while its trying to close\n const hoverAgainTimeout = setTimeout(() => {\n setIsHoverAgainEnabled(true);\n }, HOVER_AGAIN_DELAY);\n timeoutIdsRef.current.push(hoverAgainTimeout);\n }\n } else {\n // Click on normal L1 Item\n expandL1();\n }\n }\n };\n\n const contextValue = React.useMemo(\n () => ({\n l2PortalContainerRef,\n onLinkActiveChange,\n closeMobileNav,\n isL1Collapsed: effectiveIsL1Collapsed,\n setIsL1Collapsed,\n isL1Hovered: effectiveIsL1Hovered,\n isSideNavCollapsed,\n }),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [effectiveIsL1Collapsed, effectiveIsL1Hovered, isSideNavCollapsed, isMobile],\n );\n\n React.useEffect(() => {\n return () => {\n for (const timeoutId of timeoutIdsRef.current) {\n clearTimeout(timeoutId);\n }\n timeoutIdsRef.current = [];\n };\n }, []);\n\n React.useEffect(() => {\n if (!isMobile && isSideNavCollapsed && isL1Hovered) {\n setIsL1Hovered(false);\n }\n }, [isMobile, isSideNavCollapsed, isL1Hovered]);\n\n React.useEffect(() => {\n const prevIsSideNavCollapsed = prevIsSideNavCollapsedRef.current;\n prevIsSideNavCollapsedRef.current = isSideNavCollapsed;\n\n if (isMobile || prevIsSideNavCollapsed === undefined) {\n return;\n }\n\n if (prevIsSideNavCollapsed !== isSideNavCollapsed) {\n startL1Transition();\n onExpandChange?.({ isExpanded: !isSideNavCollapsed });\n }\n }, [isMobile, isSideNavCollapsed, onExpandChange, startL1Transition]);\n\n return (\n <SideNavContext.Provider value={contextValue}>\n {isMobile && onDismiss ? (\n <>\n {/* L1 */}\n <Drawer isOpen={isOpen ?? false} onDismiss={closeMobileNav}>\n <DrawerHeader title=\"Main Menu\" />\n <DrawerBody>\n <MobileL1Container\n display=\"flex\"\n flexDirection=\"column\"\n justifyContent=\"space-between\"\n className=\"mobile-l1-container\"\n height=\"100%\"\n {...metaAttribute({\n name: MetaConstants.SideNav,\n testID,\n })}\n >\n {children}\n </MobileL1Container>\n </DrawerBody>\n </Drawer>\n {/* L2 */}\n <Drawer isOpen={isMobileL2Open} onDismiss={() => expandL1()} isLazy={false}>\n <DrawerHeader title={l2DrawerTitle} />\n <DrawerBody>\n <BaseBox ref={l2PortalContainerRef} />\n </DrawerBody>\n </Drawer>\n </>\n ) : (\n <StyledSideNavContainer\n $isSideNavExpandable={typeof _isExpanded !== 'undefined'}\n ref={ref as never}\n className={isSideNavCollapsed ? COLLAPSED : ''}\n position=\"fixed\"\n backgroundColor={backgroundColor}\n height=\"100%\"\n top=\"spacing.0\"\n left=\"spacing.0\"\n display={{ base: 'none', m: 'flex' }}\n flexDirection=\"column\"\n width={sideNavWidth}\n as=\"nav\"\n {...metaAttribute({\n name: MetaConstants.SideNav,\n testID,\n })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n onTransitionEnd={(e) => {\n if (e.target !== e.currentTarget || e.propertyName !== 'width' || isMobile) {\n return;\n }\n\n onExpandTransitionEnd?.({\n isExpanded: !isSideNavCollapsed,\n });\n }}\n >\n {banner ? <BannerContainer>{banner}</BannerContainer> : null}\n <BaseBox position=\"relative\" display=\"block\" flex=\"1\" width=\"100%\">\n <StyledL2PortalContainer\n position=\"absolute\"\n display={isSideNavCollapsed ? 'none' : 'block'}\n backgroundColor={backgroundColor}\n height=\"100%\"\n width=\"100%\"\n top=\"spacing.0\"\n left=\"spacing.0\"\n id=\"blade-sidenav-l2\"\n borderRightWidth=\"thin\"\n borderRightColor=\"surface.border.gray.muted\"\n ref={l2PortalContainerRef}\n />\n <StyledL1Menu\n ref={l1ContainerRef}\n id=\"blade-sidenav-l1\"\n className={getL1MenuClassName({\n isL1Collapsed: effectiveIsL1Collapsed,\n isL1Hovered: effectiveIsL1Hovered,\n isTransitioning,\n })}\n $isSideNavExpandable={typeof _isExpanded !== 'undefined'}\n position=\"absolute\"\n display=\"flex\"\n flexDirection=\"column\"\n justifyContent=\"space-between\"\n backgroundColor={backgroundColor}\n height=\"100%\"\n overflow=\"hidden\"\n top=\"spacing.0\"\n left=\"spacing.0\"\n borderRightWidth=\"thin\"\n borderRightColor=\"surface.border.gray.muted\"\n onTransitionEnd={(e) => {\n // This check ensures transitioning is set to false only when its true\n // And only the l1Container element's transitions are considered and other transitions of l1 expand or child elements are ignored\n if (isTransitioning && l1ContainerRef.current === e.target) {\n setIsTransitioning(false);\n }\n }}\n // Hmm you might be wondering, why is `onMouseOver` paired with `onMouseLeave`? A sane person would pair `onMouseOver` with `onMouseOut`, and `onMouseEnter` with `onMouseLeave`\n // since they are logical equivalents of each other. So why don't we do that? Hold tight, you're in for a ride ☕️.\n //\n // 1. In an ideal scenario, we would put `onMouseEnter` and `onMouseLeave` here and expect things to work.\n // 2. The L2 menu of our SideNav is React Portalled out of the L1 child\n // 3. React considers its own children as true children for JS events and not DOM children (Checkout React Portal Caveats - https://react.dev/reference/react-dom/createPortal#caveats)\n // 3. In the next ideal scenario, we would put `e.stopPropagation` on child component of portal like React recommends, except mouseenter, mouseleave events don't propagate at all (https://developer.mozilla.org/en-US/docs/Web/API/Element/mouseenter_event#usage_notes)\n // 4. So `onMouseEnter` gets triggered on L2 enter. But we don't want to open L1 menu on L2 hover\n // 5. Thus we use `onMouseOver` for hover part and call e.stopPropagation in portal child (SideNavLevel).\n // 6. But in case of unhover/leave, we don't want to trigger mouseOut for all child components individually. We want 1 hover out of L1 menu. Thus we use `onMouseLeave`\n onMouseOver={() => {\n if (!isMobile && isSideNavCollapsed) {\n return;\n }\n if (mouseOverTimeoutRef.current) {\n clearTimeout(mouseOverTimeoutRef.current);\n }\n if (isL1Collapsed && isHoverAgainEnabled && !isL1Hovered) {\n setIsL1Hovered(true);\n onVisibleLevelChange?.({ visibleLevel: 1 });\n }\n }}\n onMouseLeave={() => {\n if (!isMobile && isSideNavCollapsed) {\n return;\n }\n if (isL1Collapsed && isL1Hovered) {\n mouseOverTimeoutRef.current = setTimeout(() => {\n setIsL1Hovered(false);\n startL1Transition();\n onVisibleLevelChange?.({ visibleLevel: 2 });\n }, L1_EXIT_HOVER_DELAY);\n }\n // If L1 is collapsed and not hovered we want to change visible level to 2\n // This state/edgecase happens when user clicks on a nested nav and it collapses the L1 causing isL1Hovered to be false\n if (isL1Collapsed && !isL1Hovered) {\n onVisibleLevelChange?.({ visibleLevel: 2 });\n }\n }}\n >\n <SkipNavLink id={SKIP_NAV_ID} _hasBackground={true} />\n {children}\n </StyledL1Menu>\n <SkipNavContent id={SKIP_NAV_ID} />\n </BaseBox>\n </StyledSideNavContainer>\n )}\n </SideNavContext.Provider>\n );\n};\n\nconst SideNav = React.forwardRef(_SideNav);\n\nexport { SideNav };\n"],"names":["COLLAPSED","classes","SHOW_WHEN_COLLAPSED","HIDE_WHEN_COLLAPSED","TRANSITIONING","L1_ITEM_WRAPPER","MobileL1Container","styled","BaseBox","withConfig","displayName","componentId","_defineProperty","concat","display","StyledL1Menu","props","quick","makeMotionTime","theme","motion","duration","xmoderate","easing","l1Expand","entrance","l1Collapse","exit","textVisibilityProps","$isSideNavExpandable","width","makeSize","COLLAPSED_L1_WIDTH","transition","padding","makeSpace","spacing","_objectSpread","StyledSideNavContainer","sideNavExpand","sideNavCollapse","opacity","pointerEvents","StyledL2PortalContainer","height","getL1MenuClassName","_ref4","isL1Collapsed","isL1Hovered","isTransitioning","isMenuCollapsed","BannerContainer","borderBottom","makeBorderSize","border","thin","borderBottomStyle","borderBottomColor","colors","surface","gray","muted","borderRight","borderRightStyle","borderRightColor","maxHeight","sizeTokens","_SideNav","_ref5","ref","children","isOpen","onDismiss","onVisibleLevelChange","onExpandChange","onExpandTransitionEnd","banner","_ref5$backgroundColor","backgroundColor","testID","_isExpanded","isExpanded","rest","_objectWithoutProperties","_excluded","l2PortalContainerRef","React","useRef","l1ContainerRef","timeoutIdsRef","mouseOverTimeoutRef","prevIsSideNavCollapsedRef","_React$useState","useState","_React$useState2","_slicedToArray","setIsL1Collapsed","_React$useState3","_React$useState4","isMobileL2Open","setIsMobileL2Open","_React$useState5","_React$useState6","setIsL1Hovered","_React$useState7","_React$useState8","isHoverAgainEnabled","setIsHoverAgainEnabled","_React$useState9","_React$useState0","setIsTransitioning","_React$useState1","_React$useState10","l2DrawerTitle","setL2DrawerTitle","isMobile","useIsMobile","isSideNavCollapsed","effectiveIsL1Collapsed","effectiveIsL1Hovered","sideNavWidth","base","SIDE_NAV_EXPANDED_L1_WIDTH_BASE","xl","SIDE_NAV_EXPANDED_L1_WIDTH_XL","closeMobileNav","visibleLevel","cleanupTransition","useCallback","clearTransitionTimeout","setTimeout","isCurrentlyTransitioning","TRANSITION_CLEANUP_DELAY","current","push","startL1Transition","collapseL1","title","expandL1","onLinkActiveChange","args","isL1ItemActive","level","isActive","isL2Trigger","isFirstRender","hoverAgainTimeout","HOVER_AGAIN_DELAY","contextValue","useMemo","useEffect","_iterator","_createForOfIteratorHelper","_step","s","n","done","timeoutId","value","clearTimeout","err","e","f","prevIsSideNavCollapsed","undefined","_jsx","SideNavContext","Provider","_jsxs","_Fragment","Drawer","DrawerHeader","DrawerBody","flexDirection","justifyContent","className","metaAttribute","name","MetaConstants","SideNav","isLazy","position","top","left","m","as","getStyledProps","makeAnalyticsAttribute","onTransitionEnd","target","currentTarget","propertyName","flex","id","borderRightWidth","overflow","onMouseOver","onMouseLeave","L1_EXIT_HOVER_DELAY","SkipNavLink","SKIP_NAV_ID","_hasBackground","SkipNavContent","forwardRef"],"mappings":"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"}
@@ -253,7 +253,7 @@ var SideNavLink = function SideNavLink(_ref4) {
253
253
  onLinkActiveChange = _useSideNav.onLinkActiveChange,
254
254
  closeMobileNav = _useSideNav.closeMobileNav,
255
255
  isL1Collapsed = _useSideNav.isL1Collapsed,
256
- isSideNavFullyCollapsed = _useSideNav.isSideNavFullyCollapsed,
256
+ isSideNavCollapsed = _useSideNav.isSideNavCollapsed,
257
257
  setIsL1Collapsed = _useSideNav.setIsL1Collapsed;
258
258
  var _useNavLink = useNavLink(),
259
259
  _prevLevel = _useNavLink.level;
@@ -291,7 +291,7 @@ var SideNavLink = function SideNavLink(_ref4) {
291
291
  });
292
292
  // eslint-disable-next-line react-hooks/exhaustive-deps
293
293
  }, [isActive]);
294
- var shouldHideActiveL1ItemWithoutIconOnFullCollapse = currentLevel === 1 && !icon && isSideNavFullyCollapsed;
294
+ var shouldHideL1Item = currentLevel === 1 && !icon && isSideNavCollapsed;
295
295
  return /*#__PURE__*/jsx(NavLinkContext.Provider, {
296
296
  value: {
297
297
  level: currentLevel,
@@ -324,7 +324,7 @@ var SideNavLink = function SideNavLink(_ref4) {
324
324
  children: [/*#__PURE__*/jsx(TooltipifyComponent, {
325
325
  tooltip: tooltip,
326
326
  children: /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread({
327
- className: "".concat(STYLED_NAV_LINK, " ").concat(shouldHideActiveL1ItemWithoutIconOnFullCollapse ? HIDE_WHEN_COLLAPSED : ''),
327
+ className: "".concat(STYLED_NAV_LINK, " ").concat(shouldHideL1Item ? HIDE_WHEN_COLLAPSED : ''),
328
328
  as: as !== null && as !== void 0 ? as : 'a',
329
329
  to: href,
330
330
  href: as ? undefined : href,
@@ -352,7 +352,7 @@ var SideNavLink = function SideNavLink(_ref4) {
352
352
  // Which can make L1 to expand when tabs / windows are changed
353
353
  // Adding focus-visible check ensures this behaviour of closing menus is only applicable when there is visible focus ring on it (while tabbing)
354
354
  var hasFocusRing = (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.matches(':focus-visible');
355
- if (isL1Collapsed && !isSideNavFullyCollapsed && currentLevel === 1 && hasFocusRing) {
355
+ if (isL1Collapsed && !isSideNavCollapsed && currentLevel === 1 && hasFocusRing) {
356
356
  setIsL1Collapsed === null || setIsL1Collapsed === void 0 || setIsL1Collapsed(false);
357
357
  }
358
358
  },