@juspay/blend-design-system 0.0.37-beta.7 → 0.0.37

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 (290) hide show
  1. package/dist/{node-C_DmV86X.js → breadcrumbV2.tokens-CovJEwot.js} +16 -0
  2. package/dist/components/Accordion/index.d.ts +2 -0
  3. package/dist/components/AccordionV2/accordionV2.animations.d.ts +1 -1
  4. package/dist/components/Alert/index.d.ts +1 -0
  5. package/dist/components/Avatar/index.d.ts +1 -0
  6. package/dist/components/Breadcrumb/index.d.ts +1 -0
  7. package/dist/components/Button/index.d.ts +1 -0
  8. package/dist/components/ButtonGroup/index.d.ts +1 -0
  9. package/dist/components/Card/index.d.ts +1 -0
  10. package/dist/components/CardV2/CardV2.d.ts +45 -0
  11. package/dist/components/CardV2/CardV2.utils.d.ts +14 -0
  12. package/dist/components/CardV2/CardV2Components.d.ts +8 -0
  13. package/dist/components/CardV2/CardV2Context.d.ts +14 -0
  14. package/dist/components/CardV2/CardV2Skeleton.d.ts +6 -0
  15. package/dist/components/CardV2/accessibility/CardV2AccessibilityReport.d.ts +2 -0
  16. package/dist/components/CardV2/accessibility/index.d.ts +1 -0
  17. package/dist/components/CardV2/cardV2.dark.tokens.d.ts +3 -0
  18. package/dist/components/CardV2/cardV2.light.tokens.d.ts +3 -0
  19. package/dist/components/CardV2/cardV2.tokens.d.ts +5 -0
  20. package/dist/components/CardV2/cardV2.tokens.types.d.ts +92 -0
  21. package/dist/components/CardV2/cardV2.types.d.ts +106 -0
  22. package/dist/components/CardV2/index.d.ts +5 -0
  23. package/dist/components/Charts/index.d.ts +10 -0
  24. package/dist/components/Charts/types.d.ts +2 -0
  25. package/dist/components/ChatInput/index.d.ts +1 -0
  26. package/dist/components/Checkbox/index.d.ts +1 -0
  27. package/dist/components/CodeEditor/index.d.ts +1 -0
  28. package/dist/components/CodeEditor/types.d.ts +22 -2
  29. package/dist/components/CodeEditorV2/CodeEditorV2.d.ts +1 -1
  30. package/dist/components/CodeEditorV2/codeEditorV2.types.d.ts +23 -2
  31. package/dist/components/DataTable/PivotTableModal/pivotModal.styled.d.ts +184 -0
  32. package/dist/components/DataTable/TableBody/types.d.ts +3 -1
  33. package/dist/components/DataTable/hooks/index.d.ts +2 -0
  34. package/dist/components/DataTable/hooks/useReducedMotion.d.ts +1 -0
  35. package/dist/components/DataTable/hooks/useRowFlip.d.ts +6 -0
  36. package/dist/components/DataTable/types.d.ts +26 -0
  37. package/dist/components/DateRangePicker/CalendarGrid.d.ts +5 -2
  38. package/dist/components/DateRangePicker/types.d.ts +3 -1
  39. package/dist/components/DateRangePicker/utils.d.ts +5 -5
  40. package/dist/components/Directory/Directory.d.ts +1 -1
  41. package/dist/components/Directory/NavItem.d.ts +1 -1
  42. package/dist/components/Directory/Section.d.ts +1 -1
  43. package/dist/components/Directory/VirtualizedDirectory.d.ts +3 -0
  44. package/dist/components/Directory/directory.tokens.d.ts +7 -0
  45. package/dist/components/Directory/types.d.ts +38 -1
  46. package/dist/components/Directory/utils.d.ts +3 -1
  47. package/dist/components/Drawer/index.d.ts +1 -0
  48. package/dist/components/Inputs/MultiValueInput/index.d.ts +1 -0
  49. package/dist/components/Inputs/NumberInput/index.d.ts +1 -0
  50. package/dist/components/Inputs/OTPInput/index.d.ts +1 -0
  51. package/dist/components/Inputs/SearchInput/index.d.ts +1 -0
  52. package/dist/components/Inputs/TextArea/index.d.ts +1 -0
  53. package/dist/components/Inputs/TextInput/index.d.ts +1 -0
  54. package/dist/components/InputsV2/TextAreaV2/utils.d.ts +2 -1
  55. package/dist/components/InputsV2/TextInputV2/utils.d.ts +2 -1
  56. package/dist/components/InputsV2/UploadV2/UploadContainerV2.d.ts +24 -0
  57. package/dist/components/InputsV2/UploadV2/UploadV2.d.ts +31 -0
  58. package/dist/components/InputsV2/UploadV2/UploadV2.dark.tokens.d.ts +3 -0
  59. package/dist/components/InputsV2/UploadV2/UploadV2.light.tokens.d.ts +3 -0
  60. package/dist/components/InputsV2/UploadV2/UploadV2.tokens.d.ts +5 -0
  61. package/dist/components/InputsV2/UploadV2/UploadV2.tokens.types.d.ts +115 -0
  62. package/dist/components/InputsV2/UploadV2/UploadV2.types.d.ts +56 -0
  63. package/dist/components/InputsV2/UploadV2/index.d.ts +3 -0
  64. package/dist/components/InputsV2/UploadV2/utils.d.ts +32 -0
  65. package/dist/components/KeyValuePair/index.d.ts +1 -0
  66. package/dist/components/Menu/Menu.d.ts +1 -1
  67. package/dist/components/Menu/index.d.ts +1 -0
  68. package/dist/components/Menu/types.d.ts +7 -0
  69. package/dist/components/Menu/utils.d.ts +10 -2
  70. package/dist/components/MenuV2/MenuV2Content.d.ts +1 -0
  71. package/dist/components/MenuV2/menuV2.types.d.ts +5 -0
  72. package/dist/components/MenuV2/menuV2.utils.d.ts +10 -2
  73. package/dist/components/Modal/index.d.ts +1 -0
  74. package/dist/components/ModalV2/ModalV2.d.ts +22 -0
  75. package/dist/components/ModalV2/ModalV2Footer.d.ts +10 -0
  76. package/dist/components/ModalV2/ModalV2Header.d.ts +15 -0
  77. package/dist/components/ModalV2/ModalV2Skeleton.d.ts +4 -0
  78. package/dist/components/ModalV2/index.d.ts +4 -0
  79. package/dist/components/ModalV2/mobileModalV2.d.ts +23 -0
  80. package/dist/components/ModalV2/modalAnimationV2.d.ts +3 -0
  81. package/dist/components/ModalV2/modalV2.dark.tokens.d.ts +3 -0
  82. package/dist/components/ModalV2/modalV2.light.tokens.d.ts +3 -0
  83. package/dist/components/ModalV2/modalV2.tokens.d.ts +5 -0
  84. package/dist/components/ModalV2/modalV2.tokens.types.d.ts +91 -0
  85. package/dist/components/ModalV2/modalV2.types.d.ts +66 -0
  86. package/dist/components/MultiSelect/MultiSelect.d.ts +1 -1
  87. package/dist/components/MultiSelect/MultiSelectMenu.d.ts +1 -1
  88. package/dist/components/MultiSelect/index.d.ts +2 -0
  89. package/dist/components/MultiSelect/types.d.ts +2 -0
  90. package/dist/components/MultiSelectV2/MultiSelectV2.d.ts +1 -1
  91. package/dist/components/MultiSelectV2/MultiSelectV2Menu.d.ts +1 -1
  92. package/dist/components/MultiSelectV2/multiSelectV2.types.d.ts +2 -0
  93. package/dist/components/Popover/index.d.ts +1 -0
  94. package/dist/components/Primitives/Block/Block.d.ts +1 -1
  95. package/dist/components/ProgressBar/index.d.ts +1 -0
  96. package/dist/components/Radio/index.d.ts +2 -0
  97. package/dist/components/Sidebar/SidebarContent.d.ts +9 -1
  98. package/dist/components/Sidebar/index.d.ts +1 -0
  99. package/dist/components/Sidebar/types.d.ts +9 -1
  100. package/dist/components/SidebarV2/SidebarV2Panel.d.ts +10 -2
  101. package/dist/components/SidebarV2/types.d.ts +9 -1
  102. package/dist/components/SingleSelect/SingleSelect.d.ts +1 -1
  103. package/dist/components/SingleSelect/SingleSelectMenu.d.ts +2 -1
  104. package/dist/components/SingleSelect/index.d.ts +1 -0
  105. package/dist/components/SingleSelect/types.d.ts +1 -0
  106. package/dist/components/SingleSelectV2/SingleSelectV2.d.ts +1 -1
  107. package/dist/components/SingleSelectV2/SingleSelectV2Menu.d.ts +1 -1
  108. package/dist/components/SingleSelectV2/singleSelectV2.tokens.types.d.ts +8 -0
  109. package/dist/components/SingleSelectV2/singleSelectV2.types.d.ts +2 -0
  110. package/dist/components/Skeleton/SkeletonCompound.d.ts +24 -33
  111. package/dist/components/Snackbar/Snackbar.d.ts +1 -1
  112. package/dist/components/Snackbar/index.d.ts +2 -0
  113. package/dist/components/Snackbar/snackbar.tokens.d.ts +1 -0
  114. package/dist/components/Snackbar/types.d.ts +2 -0
  115. package/dist/components/StatCard/index.d.ts +1 -0
  116. package/dist/components/Stepper/index.d.ts +1 -0
  117. package/dist/components/Switch/index.d.ts +2 -0
  118. package/dist/components/Tabs/index.d.ts +1 -0
  119. package/dist/components/Tags/index.d.ts +1 -0
  120. package/dist/components/Timeline/Timeline.d.ts +13 -37
  121. package/dist/components/Tooltip/index.d.ts +1 -0
  122. package/dist/components/Topbar/index.d.ts +1 -0
  123. package/dist/components/Upload/index.d.ts +1 -0
  124. package/dist/context/ThemeContext.d.ts +6 -0
  125. package/dist/context/useComponentToken.d.ts +4 -1
  126. package/dist/main.d.ts +6 -0
  127. package/dist/main.js +45436 -42186
  128. package/dist/node-B3rrXW84.js +1023 -0
  129. package/dist/node.d.ts +2 -0
  130. package/dist/node.js +21 -18
  131. package/dist/{tokens.js → token-engine.js} +1 -1
  132. package/lib/components/Accordion/AccordionItem.tsx +2 -6
  133. package/lib/components/Accordion/index.ts +2 -0
  134. package/lib/components/AccordionV2/AccordionV2Item.tsx +1 -1
  135. package/lib/components/AccordionV2/accordionV2.animations.ts +1 -5
  136. package/lib/components/Alert/index.ts +1 -0
  137. package/lib/components/Avatar/index.ts +1 -0
  138. package/lib/components/Breadcrumb/index.ts +1 -0
  139. package/lib/components/Button/index.ts +1 -0
  140. package/lib/components/ButtonGroup/index.ts +1 -0
  141. package/lib/components/Card/index.ts +1 -0
  142. package/lib/components/CardV2/CardV2.tsx +327 -0
  143. package/lib/components/CardV2/CardV2.utils.tsx +77 -0
  144. package/lib/components/CardV2/CardV2Components.tsx +297 -0
  145. package/lib/components/CardV2/CardV2Context.tsx +18 -0
  146. package/lib/components/CardV2/CardV2Skeleton.tsx +40 -0
  147. package/lib/components/CardV2/accessibility/CardV2AccessibilityReport.ts +284 -0
  148. package/lib/components/CardV2/accessibility/index.ts +1 -0
  149. package/lib/components/CardV2/cardV2.dark.tokens.ts +177 -0
  150. package/lib/components/CardV2/cardV2.light.tokens.ts +177 -0
  151. package/lib/components/CardV2/cardV2.tokens.ts +21 -0
  152. package/lib/components/CardV2/cardV2.tokens.types.ts +94 -0
  153. package/lib/components/CardV2/cardV2.types.ts +131 -0
  154. package/lib/components/CardV2/index.ts +13 -0
  155. package/lib/components/Charts/ChartLegend.tsx +25 -5
  156. package/lib/components/Charts/Charts.tsx +10 -0
  157. package/lib/components/Charts/index.ts +10 -0
  158. package/lib/components/Charts/types.tsx +2 -0
  159. package/lib/components/ChatInput/index.tsx +1 -0
  160. package/lib/components/Checkbox/index.ts +1 -0
  161. package/lib/components/CodeEditor/MonacoEditorWrapper.tsx +6 -2
  162. package/lib/components/CodeEditor/index.ts +1 -0
  163. package/lib/components/CodeEditor/types.ts +52 -2
  164. package/lib/components/CodeEditorV2/MonacoEditor/MonacoEditorWrapper.tsx +6 -2
  165. package/lib/components/CodeEditorV2/codeEditorV2.types.ts +44 -5
  166. package/lib/components/DataTable/DataTable.tsx +8 -0
  167. package/lib/components/DataTable/TableBody/index.tsx +47 -11
  168. package/lib/components/DataTable/TableBody/types.ts +7 -1
  169. package/lib/components/DataTable/TableCell/index.tsx +1 -1
  170. package/lib/components/DataTable/hooks/index.ts +2 -0
  171. package/lib/components/DataTable/hooks/useReducedMotion.ts +19 -0
  172. package/lib/components/DataTable/hooks/useRowFlip.ts +170 -0
  173. package/lib/components/DataTable/types.ts +32 -0
  174. package/lib/components/DateRangePicker/CalendarGrid.tsx +39 -6
  175. package/lib/components/DateRangePicker/DateRangePicker.tsx +27 -4
  176. package/lib/components/DateRangePicker/types.ts +6 -1
  177. package/lib/components/DateRangePicker/utils.ts +123 -12
  178. package/lib/components/Directory/Directory.tsx +31 -0
  179. package/lib/components/Directory/NavItem.tsx +177 -86
  180. package/lib/components/Directory/Section.tsx +9 -0
  181. package/lib/components/Directory/VirtualizedDirectory.tsx +670 -0
  182. package/lib/components/Directory/directory.tokens.ts +21 -0
  183. package/lib/components/Directory/types.ts +43 -1
  184. package/lib/components/Directory/utils.ts +81 -1
  185. package/lib/components/Drawer/index.ts +1 -0
  186. package/lib/components/Inputs/DropdownInput/DropdownInput.tsx +6 -2
  187. package/lib/components/Inputs/MultiValueInput/index.ts +1 -0
  188. package/lib/components/Inputs/NumberInput/NumberInput.tsx +6 -2
  189. package/lib/components/Inputs/NumberInput/index.ts +1 -0
  190. package/lib/components/Inputs/OTPInput/index.ts +1 -0
  191. package/lib/components/Inputs/SearchInput/index.ts +1 -0
  192. package/lib/components/Inputs/TextArea/TextArea.tsx +4 -2
  193. package/lib/components/Inputs/TextArea/index.ts +1 -0
  194. package/lib/components/Inputs/TextInput/TextInput.tsx +6 -2
  195. package/lib/components/Inputs/TextInput/index.ts +1 -0
  196. package/lib/components/Inputs/UnitInput/UnitInput.tsx +6 -2
  197. package/lib/components/InputsV2/NumberInputV2/NumberInputV2.tsx +6 -2
  198. package/lib/components/InputsV2/TextAreaV2/TextAreaV2.tsx +2 -1
  199. package/lib/components/InputsV2/TextAreaV2/utils.ts +3 -1
  200. package/lib/components/InputsV2/TextInputV2/TextInputV2.tsx +1 -0
  201. package/lib/components/InputsV2/TextInputV2/utils.ts +6 -8
  202. package/lib/components/InputsV2/UploadV2/UploadContainerV2.tsx +470 -0
  203. package/lib/components/InputsV2/UploadV2/UploadV2.dark.tokens.ts +348 -0
  204. package/lib/components/InputsV2/UploadV2/UploadV2.light.tokens.ts +348 -0
  205. package/lib/components/InputsV2/UploadV2/UploadV2.tokens.ts +20 -0
  206. package/lib/components/InputsV2/UploadV2/UploadV2.tokens.types.ts +117 -0
  207. package/lib/components/InputsV2/UploadV2/UploadV2.tsx +336 -0
  208. package/lib/components/InputsV2/UploadV2/UploadV2.types.ts +67 -0
  209. package/lib/components/InputsV2/UploadV2/index.ts +3 -0
  210. package/lib/components/InputsV2/UploadV2/utils.ts +170 -0
  211. package/lib/components/KeyValuePair/index.ts +1 -0
  212. package/lib/components/Menu/Menu.tsx +18 -2
  213. package/lib/components/Menu/SubMenu.tsx +25 -3
  214. package/lib/components/Menu/index.ts +1 -0
  215. package/lib/components/Menu/types.tsx +14 -0
  216. package/lib/components/Menu/utils.ts +46 -3
  217. package/lib/components/MenuV2/MenuV2.tsx +9 -2
  218. package/lib/components/MenuV2/MenuV2Content.tsx +6 -0
  219. package/lib/components/MenuV2/MenuV2SubMenu.tsx +16 -2
  220. package/lib/components/MenuV2/menuV2.types.ts +11 -0
  221. package/lib/components/MenuV2/menuV2.utils.ts +45 -3
  222. package/lib/components/Modal/index.ts +1 -0
  223. package/lib/components/ModalV2/ModalV2.tsx +269 -0
  224. package/lib/components/ModalV2/ModalV2Footer.tsx +76 -0
  225. package/lib/components/ModalV2/ModalV2Header.tsx +144 -0
  226. package/lib/components/ModalV2/ModalV2Skeleton.tsx +80 -0
  227. package/lib/components/ModalV2/index.ts +4 -0
  228. package/lib/components/ModalV2/mobileModalV2.tsx +411 -0
  229. package/lib/components/ModalV2/modalAnimationV2.tsx +19 -0
  230. package/lib/components/ModalV2/modalV2.dark.tokens.ts +183 -0
  231. package/lib/components/ModalV2/modalV2.light.tokens.ts +183 -0
  232. package/lib/components/ModalV2/modalV2.tokens.ts +21 -0
  233. package/lib/components/ModalV2/modalV2.tokens.types.ts +94 -0
  234. package/lib/components/ModalV2/modalV2.types.ts +80 -0
  235. package/lib/components/MultiSelect/MultiSelect.tsx +4 -1
  236. package/lib/components/MultiSelect/MultiSelectMenu.tsx +8 -0
  237. package/lib/components/MultiSelect/MultiSelectTrigger.tsx +2 -1
  238. package/lib/components/MultiSelect/index.ts +2 -0
  239. package/lib/components/MultiSelect/types.ts +2 -0
  240. package/lib/components/MultiSelectV2/MultiSelectV2.tsx +2 -0
  241. package/lib/components/MultiSelectV2/MultiSelectV2Menu.tsx +8 -0
  242. package/lib/components/MultiSelectV2/MultiSelectV2Trigger.tsx +4 -1
  243. package/lib/components/MultiSelectV2/multiSelectV2.types.ts +2 -0
  244. package/lib/components/Popover/index.ts +1 -0
  245. package/lib/components/Primitives/Block/Block.tsx +1 -1
  246. package/lib/components/ProgressBar/index.ts +1 -0
  247. package/lib/components/Radio/index.ts +2 -0
  248. package/lib/components/Sidebar/Sidebar.tsx +38 -0
  249. package/lib/components/Sidebar/SidebarContent.tsx +25 -1
  250. package/lib/components/Sidebar/index.ts +1 -0
  251. package/lib/components/Sidebar/types.ts +13 -1
  252. package/lib/components/SidebarV2/SidebarV2.tsx +30 -0
  253. package/lib/components/SidebarV2/SidebarV2Panel.tsx +25 -1
  254. package/lib/components/SidebarV2/types.ts +9 -1
  255. package/lib/components/SingleSelect/SingleSelect.tsx +4 -1
  256. package/lib/components/SingleSelect/SingleSelectMenu.tsx +171 -138
  257. package/lib/components/SingleSelect/SingleSelectTrigger.tsx +3 -1
  258. package/lib/components/SingleSelect/index.ts +1 -0
  259. package/lib/components/SingleSelect/types.ts +1 -0
  260. package/lib/components/SingleSelectV2/SingleSelectV2.tsx +2 -0
  261. package/lib/components/SingleSelectV2/SingleSelectV2Menu.tsx +84 -58
  262. package/lib/components/SingleSelectV2/SingleSelectV2Search.tsx +1 -0
  263. package/lib/components/SingleSelectV2/SingleSelectV2Trigger.tsx +3 -1
  264. package/lib/components/SingleSelectV2/singleSelectV2.dark.tokens.ts +8 -0
  265. package/lib/components/SingleSelectV2/singleSelectV2.light.tokens.ts +8 -0
  266. package/lib/components/SingleSelectV2/singleSelectV2.tokens.types.ts +8 -0
  267. package/lib/components/SingleSelectV2/singleSelectV2.types.ts +2 -0
  268. package/lib/components/Skeleton/SkeletonCompound.tsx +45 -31
  269. package/lib/components/Snackbar/Snackbar.tsx +18 -8
  270. package/lib/components/Snackbar/index.ts +2 -0
  271. package/lib/components/Snackbar/snackbar.tokens.ts +6 -0
  272. package/lib/components/Snackbar/types.ts +2 -0
  273. package/lib/components/StatCard/StatCard.tsx +29 -0
  274. package/lib/components/StatCard/index.ts +1 -0
  275. package/lib/components/Stepper/index.ts +1 -0
  276. package/lib/components/Switch/index.ts +2 -0
  277. package/lib/components/Tabs/index.ts +1 -0
  278. package/lib/components/Tags/index.ts +1 -0
  279. package/lib/components/Timeline/Timeline.tsx +9 -1
  280. package/lib/components/Tooltip/index.ts +1 -0
  281. package/lib/components/Topbar/index.ts +1 -0
  282. package/lib/components/Upload/index.ts +1 -0
  283. package/lib/context/ThemeContext.tsx +16 -0
  284. package/lib/context/initComponentTokens.ts +11 -0
  285. package/lib/context/useComponentToken.ts +15 -1
  286. package/lib/hooks/useResponsiveTokens.ts +63 -0
  287. package/lib/main.ts +16 -0
  288. package/lib/node.ts +2 -0
  289. package/package.json +5 -4
  290. package/dist/tokens.d.ts +0 -2
@@ -69,6 +69,10 @@ const ScrollableContent = styled(Block)(() => ({
69
69
  },
70
70
  }))
71
71
 
72
+ const MenuFooter = styled(Block)`
73
+ flex-shrink: 0;
74
+ `
75
+
72
76
  const MultiSelectV2Menu = ({
73
77
  items,
74
78
  selected,
@@ -104,6 +108,7 @@ const MultiSelectV2Menu = ({
104
108
  allowCustomValue = false,
105
109
  customValueLabel = 'Specify',
106
110
  menuId,
111
+ menuFooter,
107
112
  }: MultiSelectV2MenuProps) => {
108
113
  const multiSelectTokens =
109
114
  useResponsiveTokens<MultiSelectV2TokensType>('MULTI_SELECT_V2')
@@ -467,6 +472,9 @@ const MultiSelectV2Menu = ({
467
472
  onClose={() => handleOpenChange(false)}
468
473
  />
469
474
  )}
475
+ {menuFooter && (
476
+ <MenuFooter>{menuFooter}</MenuFooter>
477
+ )}
470
478
  </>
471
479
  )}
472
480
  </Content>
@@ -188,7 +188,10 @@ const MultiSelectV2Trigger = ({
188
188
  as="span"
189
189
  textAlign="left"
190
190
  paddingTop={
191
- isContainer && isSmallScreenWithLargeSize && isItemSelected
191
+ isContainer &&
192
+ isSmallScreenWithLargeSize &&
193
+ isItemSelected &&
194
+ label
192
195
  ? floatingLabelPaddingTop
193
196
  : 0
194
197
  }
@@ -97,6 +97,7 @@ export type MultiSelectV2MenuProps = {
97
97
  allowCustomValue?: boolean
98
98
  customValueLabel?: string
99
99
  menuId?: string
100
+ menuFooter?: ReactNode
100
101
  }
101
102
 
102
103
  export type MultiSelectV2MenuRootProps = SelectV2MenuRootPropsBase & {
@@ -170,4 +171,5 @@ export type MultiSelectV2Props = Omit<
170
171
  showClearButton?: boolean
171
172
  onClearAllClick?: () => void
172
173
  multiSelectGroupPosition?: 'center' | 'left' | 'right'
174
+ menuFooter?: ReactNode
173
175
  }
@@ -1,3 +1,4 @@
1
+ /** @deprecated Will be deprecated soon. Use PopoverV2 instead. */
1
2
  export { default as Popover } from './Popover'
2
3
  export * from './popover.tokens'
3
4
  export * from './types'
@@ -3,7 +3,7 @@ import styled, { css, type CSSObject } from 'styled-components'
3
3
 
4
4
  type SpacingValue = string | number
5
5
 
6
- type StateStyles = {
6
+ export type StateStyles = {
7
7
  _hover?: StyledBlockProps
8
8
  _focus?: StyledBlockProps
9
9
  _active?: StyledBlockProps
@@ -1,3 +1,4 @@
1
+ /** @deprecated Will be deprecated soon. Use ProgressBarV2 instead. */
1
2
  export { default as ProgressBar } from './ProgressBar'
2
3
  export * from './progressbar.tokens'
3
4
  export * from './types'
@@ -1,4 +1,6 @@
1
+ /** @deprecated Will be deprecated soon. Use RadioV2 instead. */
1
2
  export { default as Radio } from './Radio'
3
+ /** @deprecated Will be deprecated soon. Use RadioV2 instead. */
2
4
  export { default as RadioGroup } from './RadioGroup'
3
5
  export { RadioSize } from './types'
4
6
  export type { RadioProps, RadioGroupProps } from './types'
@@ -100,6 +100,14 @@ const Sidebar = forwardRef<HTMLDivElement, SidebarProps>(
100
100
  defaultActiveItem,
101
101
  showLeftPanel = true,
102
102
  onSidebarStateChange,
103
+ showHierarchyLines = false,
104
+ hierarchyLineBorderRadius = 0,
105
+ expandedItems,
106
+ defaultExpandedItems,
107
+ onExpandedItemsChange,
108
+ onItemExpand,
109
+ enableVirtualization = false,
110
+ virtualization,
103
111
  },
104
112
  ref
105
113
  ) => {
@@ -402,6 +410,18 @@ const Sidebar = forwardRef<HTMLDivElement, SidebarProps>(
402
410
  iconOnlyMode={iconOnlyMode}
403
411
  footer={footer}
404
412
  setIsHovering={setIsHovering}
413
+ showHierarchyLines={showHierarchyLines}
414
+ hierarchyLineBorderRadius={
415
+ hierarchyLineBorderRadius
416
+ }
417
+ expandedItems={expandedItems}
418
+ defaultExpandedItems={defaultExpandedItems}
419
+ onExpandedItemsChange={
420
+ onExpandedItemsChange
421
+ }
422
+ onItemExpand={onItemExpand}
423
+ enableVirtualization={enableVirtualization}
424
+ virtualization={virtualization}
405
425
  />
406
426
 
407
427
  {/* Intermediate Sidebar */}
@@ -491,6 +511,24 @@ const Sidebar = forwardRef<HTMLDivElement, SidebarProps>(
491
511
  }
492
512
  iconOnlyMode={false}
493
513
  footer={footer}
514
+ showHierarchyLines={
515
+ showHierarchyLines
516
+ }
517
+ hierarchyLineBorderRadius={
518
+ hierarchyLineBorderRadius
519
+ }
520
+ expandedItems={expandedItems}
521
+ defaultExpandedItems={
522
+ defaultExpandedItems
523
+ }
524
+ onExpandedItemsChange={
525
+ onExpandedItemsChange
526
+ }
527
+ onItemExpand={onItemExpand}
528
+ enableVirtualization={
529
+ enableVirtualization
530
+ }
531
+ virtualization={virtualization}
494
532
  />
495
533
  </Block>
496
534
  )}
@@ -5,7 +5,7 @@ import Directory from '../Directory/Directory'
5
5
  import { normalizeDirectoryData } from '../Directory/utils'
6
6
  import SidebarHeader from './SidebarHeader'
7
7
  import SidebarFooter from './SidebarFooter'
8
- import type { DirectoryData } from '../Directory/types'
8
+ import type { DirectoryData, DirectoryProps } from '../Directory/types'
9
9
  import type { SidebarMerchantInfo, SidebarStateChangeType } from './types'
10
10
 
11
11
  const DirectoryContainer = styled(Block)<{
@@ -45,6 +45,14 @@ export type SidebarContentProps = {
45
45
  footer?: React.ReactNode
46
46
  setIsHovering?: (isHovering: boolean) => void
47
47
  sidebarState?: SidebarStateChangeType
48
+ showHierarchyLines?: DirectoryProps['showHierarchyLines']
49
+ hierarchyLineBorderRadius?: DirectoryProps['hierarchyLineBorderRadius']
50
+ expandedItems?: DirectoryProps['expandedItems']
51
+ defaultExpandedItems?: DirectoryProps['defaultExpandedItems']
52
+ onExpandedItemsChange?: DirectoryProps['onExpandedItemsChange']
53
+ onItemExpand?: DirectoryProps['onItemExpand']
54
+ enableVirtualization?: DirectoryProps['enableVirtualization']
55
+ virtualization?: DirectoryProps['virtualization']
48
56
  }
49
57
 
50
58
  const SidebarContent: React.FC<SidebarContentProps> = ({
@@ -66,6 +74,14 @@ const SidebarContent: React.FC<SidebarContentProps> = ({
66
74
  footer,
67
75
  setIsHovering,
68
76
  sidebarState = 'expanded',
77
+ showHierarchyLines = false,
78
+ hierarchyLineBorderRadius = 0,
79
+ expandedItems,
80
+ defaultExpandedItems,
81
+ onExpandedItemsChange,
82
+ onItemExpand,
83
+ enableVirtualization = false,
84
+ virtualization,
69
85
  }) => {
70
86
  const directoryData = normalizeDirectoryData(data)
71
87
 
@@ -114,6 +130,14 @@ const SidebarContent: React.FC<SidebarContentProps> = ({
114
130
  onActiveItemChange={onActiveItemChange}
115
131
  defaultActiveItem={defaultActiveItem}
116
132
  iconOnlyMode={iconOnlyMode}
133
+ showHierarchyLines={showHierarchyLines}
134
+ hierarchyLineBorderRadius={hierarchyLineBorderRadius}
135
+ expandedItems={expandedItems}
136
+ defaultExpandedItems={defaultExpandedItems}
137
+ onExpandedItemsChange={onExpandedItemsChange}
138
+ onItemExpand={onItemExpand}
139
+ enableVirtualization={enableVirtualization}
140
+ virtualization={virtualization}
117
141
  />
118
142
  </DirectoryContainer>
119
143
 
@@ -1,3 +1,4 @@
1
+ /** @deprecated Will be deprecated soon. Use SidebarV2 instead. */
1
2
  export { default as Sidebar } from './Sidebar'
2
3
  export * from './sidebar.tokens'
3
4
  export * from './types'
@@ -1,5 +1,9 @@
1
1
  import { type ReactNode } from 'react'
2
- import type { DirectoryData, NavbarItem } from '../Directory/types'
2
+ import type {
3
+ DirectoryData,
4
+ DirectoryProps,
5
+ NavbarItem,
6
+ } from '../Directory/types'
3
7
  import type {
4
8
  MerchantInfo,
5
9
  LeftPanelInfo,
@@ -65,6 +69,14 @@ export type SidebarProps = {
65
69
  onActiveItemChange?: (item: string | null) => void
66
70
  defaultActiveItem?: string | null
67
71
  onHoveringChange?: (isHovering: boolean) => void
72
+ showHierarchyLines?: DirectoryProps['showHierarchyLines']
73
+ hierarchyLineBorderRadius?: DirectoryProps['hierarchyLineBorderRadius']
74
+ expandedItems?: DirectoryProps['expandedItems']
75
+ defaultExpandedItems?: DirectoryProps['defaultExpandedItems']
76
+ onExpandedItemsChange?: DirectoryProps['onExpandedItemsChange']
77
+ onItemExpand?: DirectoryProps['onItemExpand']
78
+ enableVirtualization?: DirectoryProps['enableVirtualization']
79
+ virtualization?: DirectoryProps['virtualization']
68
80
  }
69
81
 
70
82
  export type MobileNavigationItem = NavbarItem & {
@@ -71,6 +71,14 @@ const SidebarV2 = forwardRef<HTMLDivElement, SidebarV2Props>(
71
71
  onActiveItemChange,
72
72
  defaultActiveItem,
73
73
  onSidebarStateChange,
74
+ showHierarchyLines = false,
75
+ hierarchyLineBorderRadius = 0,
76
+ expandedItems,
77
+ defaultExpandedItems,
78
+ onExpandedItemsChange,
79
+ onItemExpand,
80
+ enableVirtualization = false,
81
+ virtualization,
74
82
  },
75
83
  ref
76
84
  ) => {
@@ -323,6 +331,16 @@ const SidebarV2 = forwardRef<HTMLDivElement, SidebarV2Props>(
323
331
  setIsHovering={setIsHovering}
324
332
  sidebarState={sidebarStatus}
325
333
  tokens={tokens}
334
+ showHierarchyLines={showHierarchyLines}
335
+ hierarchyLineBorderRadius={
336
+ hierarchyLineBorderRadius
337
+ }
338
+ expandedItems={expandedItems}
339
+ defaultExpandedItems={defaultExpandedItems}
340
+ onExpandedItemsChange={onExpandedItemsChange}
341
+ onItemExpand={onItemExpand}
342
+ enableVirtualization={enableVirtualization}
343
+ virtualization={virtualization}
326
344
  />
327
345
  )}
328
346
 
@@ -386,6 +404,18 @@ const SidebarV2 = forwardRef<HTMLDivElement, SidebarV2Props>(
386
404
  footer={footer}
387
405
  sidebarState={sidebarStatus}
388
406
  tokens={tokens}
407
+ showHierarchyLines={showHierarchyLines}
408
+ hierarchyLineBorderRadius={
409
+ hierarchyLineBorderRadius
410
+ }
411
+ expandedItems={expandedItems}
412
+ defaultExpandedItems={defaultExpandedItems}
413
+ onExpandedItemsChange={
414
+ onExpandedItemsChange
415
+ }
416
+ onItemExpand={onItemExpand}
417
+ enableVirtualization={enableVirtualization}
418
+ virtualization={virtualization}
389
419
  />
390
420
  </Block>
391
421
  )}
@@ -3,7 +3,7 @@ import styled from 'styled-components'
3
3
  import Block from '../Primitives/Block/Block'
4
4
  import Directory from '../Directory/Directory'
5
5
  import { normalizeDirectoryData } from '../Directory/utils'
6
- import type { DirectoryData } from '../Directory/types'
6
+ import type { DirectoryData, DirectoryProps } from '../Directory/types'
7
7
  import SidebarV2Header from './SidebarV2Header'
8
8
  import SidebarV2Footer from './SidebarV2Footer'
9
9
  import type { SidebarV2StateChangeType } from './types'
@@ -55,6 +55,14 @@ export type SidebarV2PanelProps = {
55
55
  setIsHovering?: (isHovering: boolean) => void
56
56
  sidebarState?: SidebarV2StateChangeType
57
57
  tokens: SidebarV2TokensType
58
+ showHierarchyLines?: DirectoryProps['showHierarchyLines']
59
+ hierarchyLineBorderRadius?: DirectoryProps['hierarchyLineBorderRadius']
60
+ expandedItems?: DirectoryProps['expandedItems']
61
+ defaultExpandedItems?: DirectoryProps['defaultExpandedItems']
62
+ onExpandedItemsChange?: DirectoryProps['onExpandedItemsChange']
63
+ onItemExpand?: DirectoryProps['onItemExpand']
64
+ enableVirtualization?: DirectoryProps['enableVirtualization']
65
+ virtualization?: DirectoryProps['virtualization']
58
66
  }
59
67
 
60
68
  const SidebarV2Panel = ({
@@ -76,6 +84,14 @@ const SidebarV2Panel = ({
76
84
  setIsHovering,
77
85
  sidebarState = 'expanded',
78
86
  tokens,
87
+ showHierarchyLines = false,
88
+ hierarchyLineBorderRadius = 0,
89
+ expandedItems,
90
+ defaultExpandedItems,
91
+ onExpandedItemsChange,
92
+ onItemExpand,
93
+ enableVirtualization = false,
94
+ virtualization,
79
95
  }: SidebarV2PanelProps) => {
80
96
  const trackHover = shouldTrackHover(setIsHovering)
81
97
  const directoryData = normalizeDirectoryData(data)
@@ -126,6 +142,14 @@ const SidebarV2Panel = ({
126
142
  onActiveItemChange={onActiveItemChange}
127
143
  defaultActiveItem={defaultActiveItem}
128
144
  iconOnlyMode={iconOnlyMode}
145
+ showHierarchyLines={showHierarchyLines}
146
+ hierarchyLineBorderRadius={hierarchyLineBorderRadius}
147
+ expandedItems={expandedItems}
148
+ defaultExpandedItems={defaultExpandedItems}
149
+ onExpandedItemsChange={onExpandedItemsChange}
150
+ onItemExpand={onItemExpand}
151
+ enableVirtualization={enableVirtualization}
152
+ virtualization={virtualization}
129
153
  />
130
154
  </DirectoryContainer>
131
155
 
@@ -1,5 +1,5 @@
1
1
  import type { ButtonHTMLAttributes, ReactNode } from 'react'
2
- import type { DirectoryData } from '../Directory/types'
2
+ import type { DirectoryData, DirectoryProps } from '../Directory/types'
3
3
  import type { MerchantInfo } from '../Topbar/types'
4
4
  import type { TenantBadge } from '../Sidebar/types'
5
5
 
@@ -59,6 +59,14 @@ export type SidebarV2Props = {
59
59
  activeItem?: string | null
60
60
  onActiveItemChange?: (item: string | null) => void
61
61
  defaultActiveItem?: string | null
62
+ showHierarchyLines?: DirectoryProps['showHierarchyLines']
63
+ hierarchyLineBorderRadius?: DirectoryProps['hierarchyLineBorderRadius']
64
+ expandedItems?: DirectoryProps['expandedItems']
65
+ defaultExpandedItems?: DirectoryProps['defaultExpandedItems']
66
+ onExpandedItemsChange?: DirectoryProps['onExpandedItemsChange']
67
+ onItemExpand?: DirectoryProps['onItemExpand']
68
+ enableVirtualization?: DirectoryProps['enableVirtualization']
69
+ virtualization?: DirectoryProps['virtualization']
62
70
  }
63
71
 
64
72
  export type {
@@ -104,6 +104,7 @@ const SingleSelect = ({
104
104
  customValueLabel = 'Specify',
105
105
  singleSelectGroupPosition,
106
106
  allowDeselect = false,
107
+ menuFooter,
107
108
  ...rest
108
109
  }: SingleSelectProps) => {
109
110
  const { onFocus, onBlur, ...buttonRest } = rest
@@ -298,6 +299,7 @@ const SingleSelect = ({
298
299
  allowCustomValue={allowCustomValue}
299
300
  customValueLabel={customValueLabel}
300
301
  menuId={menuId}
302
+ menuFooter={menuFooter}
301
303
  trigger={
302
304
  customTrigger || (
303
305
  <PrimitiveButton
@@ -447,7 +449,8 @@ const SingleSelect = ({
447
449
  textAlign="left"
448
450
  paddingTop={
449
451
  isSmallScreenWithLargeSize &&
450
- isItemSelected
452
+ isItemSelected &&
453
+ label
451
454
  ? paddingY * 1.5
452
455
  : 0
453
456
  }