@smg-automotive/components 25.10.0-gallery-header-v3-migrate.1 → 25.10.0-gallery-header-v3-migrate.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/dist/cjs/components/discreteSlider/index.d.ts +14 -0
  2. package/dist/cjs/components/discreteSlider/index.d.ts.map +1 -0
  3. package/dist/cjs/components/galleryHeader/index.d.ts.map +1 -1
  4. package/dist/cjs/components/index.d.ts +2 -0
  5. package/dist/cjs/components/index.d.ts.map +1 -1
  6. package/dist/cjs/components/menu/index.d.ts +21 -0
  7. package/dist/cjs/components/menu/index.d.ts.map +1 -0
  8. package/dist/cjs/index.js +176 -6
  9. package/dist/cjs/index.js.map +1 -1
  10. package/dist/cjs/themes/shared/index.d.ts +3 -1
  11. package/dist/cjs/themes/shared/index.d.ts.map +1 -1
  12. package/dist/cjs/themes/shared/slotRecipes/galleryHeader.d.ts +1 -1
  13. package/dist/cjs/themes/shared/slotRecipes/galleryHeader.d.ts.map +1 -1
  14. package/dist/cjs/themes/shared/slotRecipes/index.d.ts +3 -1
  15. package/dist/cjs/themes/shared/slotRecipes/index.d.ts.map +1 -1
  16. package/dist/cjs/themes/shared/slotRecipes/menu.d.ts +2 -0
  17. package/dist/cjs/themes/shared/slotRecipes/menu.d.ts.map +1 -0
  18. package/dist/cjs/themes/shared/slotRecipes/slider.d.ts +2 -0
  19. package/dist/cjs/themes/shared/slotRecipes/slider.d.ts.map +1 -0
  20. package/dist/esm/components/discreteSlider/index.d.ts +14 -0
  21. package/dist/esm/components/discreteSlider/index.d.ts.map +1 -0
  22. package/dist/esm/components/discreteSlider/index.js +46 -0
  23. package/dist/esm/components/discreteSlider/index.js.map +1 -0
  24. package/dist/esm/components/galleryHeader/index.d.ts.map +1 -1
  25. package/dist/esm/components/galleryHeader/index.js +1 -1
  26. package/dist/esm/components/galleryHeader/index.js.map +1 -1
  27. package/dist/esm/components/index.d.ts +2 -0
  28. package/dist/esm/components/index.d.ts.map +1 -1
  29. package/dist/esm/components/menu/index.d.ts +21 -0
  30. package/dist/esm/components/menu/index.d.ts.map +1 -0
  31. package/dist/esm/components/menu/index.js +193 -0
  32. package/dist/esm/components/menu/index.js.map +1 -0
  33. package/dist/esm/components/themeProvider/index.js +2 -0
  34. package/dist/esm/components/themeProvider/index.js.map +1 -1
  35. package/dist/esm/index.js +4 -0
  36. package/dist/esm/index.js.map +1 -1
  37. package/dist/esm/themes/shared/index.d.ts +3 -1
  38. package/dist/esm/themes/shared/index.d.ts.map +1 -1
  39. package/dist/esm/themes/shared/slotRecipes/galleryHeader.d.ts +1 -1
  40. package/dist/esm/themes/shared/slotRecipes/galleryHeader.d.ts.map +1 -1
  41. package/dist/esm/themes/shared/slotRecipes/galleryHeader.js +0 -5
  42. package/dist/esm/themes/shared/slotRecipes/galleryHeader.js.map +1 -1
  43. package/dist/esm/themes/shared/slotRecipes/index.d.ts +3 -1
  44. package/dist/esm/themes/shared/slotRecipes/index.d.ts.map +1 -1
  45. package/dist/esm/themes/shared/slotRecipes/index.js +4 -0
  46. package/dist/esm/themes/shared/slotRecipes/index.js.map +1 -1
  47. package/dist/esm/themes/shared/slotRecipes/menu.d.ts +2 -0
  48. package/dist/esm/themes/shared/slotRecipes/menu.d.ts.map +1 -0
  49. package/dist/esm/themes/shared/slotRecipes/menu.js +64 -0
  50. package/dist/esm/themes/shared/slotRecipes/menu.js.map +1 -0
  51. package/dist/esm/themes/shared/slotRecipes/slider.d.ts +2 -0
  52. package/dist/esm/themes/shared/slotRecipes/slider.d.ts.map +1 -0
  53. package/dist/esm/themes/shared/slotRecipes/slider.js +54 -0
  54. package/dist/esm/themes/shared/slotRecipes/slider.js.map +1 -0
  55. package/dist/index.d.ts +39 -8
  56. package/package.json +1 -1
@@ -0,0 +1,14 @@
1
+ import React, { ReactNode } from 'react';
2
+ export type DiscreteSliderMark<T> = {
3
+ stepValue?: number;
4
+ label: ReactNode;
5
+ value: T;
6
+ };
7
+ export type DiscreteSliderProps<T> = {
8
+ applyIndentation?: boolean;
9
+ marks: DiscreteSliderMark<T>[];
10
+ value: T;
11
+ onValueChanged: (arg: T) => void;
12
+ };
13
+ export declare const DiscreteSlider: <T>({ marks, applyIndentation, onValueChanged, value, }: DiscreteSliderProps<T>) => React.JSX.Element;
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/discreteSlider/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAMzC,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,CAAC,CAAC;CACV,CAAC;AAEF,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI;IACnC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/B,KAAK,EAAE,CAAC,CAAC;IACT,cAAc,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC;CAClC,CAAC;AA2BF,eAAO,MAAM,cAAc,GAAI,CAAC,EAAG,qDAKhC,mBAAmB,CAAC,CAAC,CAAC,sBA8CxB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/galleryHeader/index.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAIrD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAQ9C,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CA8CnE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/galleryHeader/index.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAIrD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAQ9C,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CA4CnE,CAAC"}
@@ -27,6 +27,7 @@ export * from './layout';
27
27
  export * from './link';
28
28
  export * from './list';
29
29
  export * from './chip';
30
+ export * from './menu';
30
31
  export * from './missingImage';
31
32
  export * from './mobileOnlyAccordion';
32
33
  export * from './navigation/footer';
@@ -47,5 +48,6 @@ export * from './themeProvider';
47
48
  export * from './vehicleReference';
48
49
  export * from './rangeFilterInput';
49
50
  export * from './topVehicleSharedBadge';
51
+ export * from './discreteSlider';
50
52
  export * from './formControlSection';
51
53
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { FC, JSX, ReactElement } from 'react';
2
+ import { MenuRootProps, MenuTriggerProps } from '@chakra-ui/react';
3
+ interface MenuItem {
4
+ text: JSX.Element | string;
5
+ value: string;
6
+ onClick: () => void;
7
+ }
8
+ export interface MenuProps {
9
+ title: string | ReactElement;
10
+ items: MenuItem[];
11
+ fontWeightTitle?: MenuTriggerProps['fontWeight'];
12
+ offset?: [number, number];
13
+ menuColor?: MenuTriggerProps['color'];
14
+ showChevron?: boolean;
15
+ icon?: ReactElement;
16
+ iconSpacing?: MenuTriggerProps['gap'];
17
+ placement?: Exclude<MenuRootProps['positioning'], undefined>['placement'];
18
+ }
19
+ export declare const Menu: FC<MenuProps>;
20
+ export {};
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/menu/index.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,EAEL,aAAa,EACb,gBAAgB,EAGjB,MAAM,kBAAkB,CAAC;AAI1B,UAAU,QAAQ;IAChB,IAAI,EAAE,GAAG,CAAC,OAAO,GAAG,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,GAAG,YAAY,CAAC;IAC7B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,eAAe,CAAC,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;IACjD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1B,SAAS,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACtC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,WAAW,CAAC,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACtC,SAAS,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;CAC3E;AAED,eAAO,MAAM,IAAI,EAAE,EAAE,CAAC,SAAS,CA0D9B,CAAC"}
package/dist/cjs/index.js CHANGED
@@ -805,6 +805,56 @@ var switchRecipe = react$1.defineSlotRecipe({
805
805
  },
806
806
  });
807
807
 
808
+ var sliderSlotRecipe = react$1.defineSlotRecipe({
809
+ className: 'chakra-slider',
810
+ slots: ['root', 'control', 'track', 'range', 'markerGroup', 'thumb'],
811
+ base: {
812
+ root: {
813
+ display: 'flex',
814
+ flexDirection: 'column',
815
+ fontSize: 'base',
816
+ '--slider-marker-inset': '4px',
817
+ '--slider-marker-track': '5px',
818
+ '--slider-thumb-border': '1px',
819
+ '--slider-thumb-boxShadow': '0 0 0 8px #2988E14D',
820
+ },
821
+ control: {
822
+ display: 'inline-flex',
823
+ },
824
+ track: {
825
+ flex: '1',
826
+ height: 'var(--slider-marker-track)',
827
+ bg: 'gray.300',
828
+ borderRadius: 'full',
829
+ },
830
+ range: {
831
+ height: 'var(--slider-marker-inset)',
832
+ bg: 'gray.800',
833
+ borderRadius: 'full',
834
+ },
835
+ markerGroup: {
836
+ position: 'absolute!',
837
+ top: '2xl',
838
+ insetInline: 'var(--slider-marker-inset)',
839
+ },
840
+ thumb: {
841
+ width: 'sm',
842
+ height: 'sm',
843
+ borderRadius: 'full',
844
+ borderWidth: 'var(--slider-thumb-border)',
845
+ borderColor: 'gray.400',
846
+ backgroundColor: 'white',
847
+ translate: '0 -40%',
848
+ _hover: {
849
+ cursor: 'pointer',
850
+ },
851
+ _active: {
852
+ boxShadow: 'var(--slider-thumb-boxShadow)',
853
+ },
854
+ },
855
+ },
856
+ });
857
+
808
858
  var simpleHeaderRecipe = react$1.defineSlotRecipe({
809
859
  className: 'chakra-simple-header',
810
860
  slots: ['header', 'mainContainer', 'title', 'iconWrapper'],
@@ -1383,6 +1433,66 @@ var numberInputRecipe = react$1.defineSlotRecipe({
1383
1433
  },
1384
1434
  });
1385
1435
 
1436
+ var maximumScrollbarWidth = 20;
1437
+ var content = react$1.defineStyle({
1438
+ '--max-width': "calc(100vw - ".concat(maximumScrollbarWidth, "px)"),
1439
+ bg: 'white',
1440
+ boxShadow: 'sm',
1441
+ color: 'inherit',
1442
+ minW: '4xl',
1443
+ maxW: 'var(--max-width)',
1444
+ py: 'xxs',
1445
+ zIndex: 'dropdown',
1446
+ borderRadius: 'sm',
1447
+ border: '1px',
1448
+ borderColor: 'gray.200',
1449
+ cursor: 'pointer',
1450
+ _focusVisible: {
1451
+ outline: 'none',
1452
+ },
1453
+ });
1454
+ var item = react$1.defineStyle({
1455
+ paddingY: 'md',
1456
+ paddingX: 'lg',
1457
+ cursor: 'pointer',
1458
+ _focus: {
1459
+ bg: 'gray.100',
1460
+ },
1461
+ _focusVisible: {
1462
+ outline: 'none',
1463
+ },
1464
+ _active: {
1465
+ bg: 'blue.100',
1466
+ },
1467
+ _expanded: {
1468
+ bg: 'gray.100',
1469
+ },
1470
+ _hover: {
1471
+ bg: 'gray.100',
1472
+ },
1473
+ _disabled: {
1474
+ opacity: '40',
1475
+ cursor: 'notAllowed',
1476
+ },
1477
+ });
1478
+ var trigger = react$1.defineStyle({
1479
+ display: 'inline-flex',
1480
+ padding: '0',
1481
+ cursor: 'pointer',
1482
+ _focusVisible: {
1483
+ outline: 'none',
1484
+ },
1485
+ });
1486
+ var menuRecipe = react$1.defineSlotRecipe({
1487
+ slots: ['content', 'item', 'trigger'],
1488
+ className: 'chakra-menu',
1489
+ base: {
1490
+ content: content,
1491
+ item: item,
1492
+ trigger: trigger,
1493
+ },
1494
+ });
1495
+
1386
1496
  var markedTextRecipe = react$1.defineSlotRecipe({
1387
1497
  className: 'chakra-marked-text',
1388
1498
  slots: ['container', 'text', 'mark'],
@@ -1486,9 +1596,6 @@ var baseStyleContainer = react$1.defineStyle({
1486
1596
  var baseStyleGrid = react$1.defineStyle({
1487
1597
  alignItems: 'center',
1488
1598
  });
1489
- var baseStyleChildrenContainer = react$1.defineStyle({
1490
- // This will be shown only above md breakpoint
1491
- });
1492
1599
  var baseStyleCountContainer = react$1.defineStyle({
1493
1600
  textAlign: {
1494
1601
  base: 'left',
@@ -1504,7 +1611,6 @@ var baseStyleCloseContainer = react$1.defineStyle({
1504
1611
  var slots$1 = [
1505
1612
  'container',
1506
1613
  'grid',
1507
- 'childrenContainer',
1508
1614
  'countContainer',
1509
1615
  'closeContainer',
1510
1616
  ];
@@ -1514,7 +1620,6 @@ var galleryHeaderRecipe = react$1.defineSlotRecipe({
1514
1620
  base: {
1515
1621
  container: baseStyleContainer,
1516
1622
  grid: baseStyleGrid,
1517
- childrenContainer: baseStyleChildrenContainer,
1518
1623
  countContainer: baseStyleCountContainer,
1519
1624
  closeContainer: baseStyleCloseContainer,
1520
1625
  },
@@ -2265,7 +2370,9 @@ var slotRecipes = {
2265
2370
  popoverFilter: popoverFilterRecipe,
2266
2371
  numberInput: numberInputRecipe,
2267
2372
  radio: radioRecipe,
2373
+ slider: sliderSlotRecipe,
2268
2374
  pagination: paginationRecipe,
2375
+ menu: menuRecipe,
2269
2376
  };
2270
2377
 
2271
2378
  var textareaRecipe = react$1.defineRecipe({
@@ -6350,7 +6457,7 @@ var GalleryHeader = function (_a) {
6350
6457
  base: 2,
6351
6458
  md: 3,
6352
6459
  }, alignItems: "center" },
6353
- React.createElement(react$1.Box, { hideBelow: "md", css: styles.childrenContainer }, children),
6460
+ React.createElement(react$1.Box, { hideBelow: "md" }, children),
6354
6461
  React.createElement(react$1.Box, { css: styles.countContainer },
6355
6462
  React.createElement(react$1.Box, null, t('galleryHeader.imageCount', {
6356
6463
  x: currentSlide,
@@ -6565,6 +6672,27 @@ var Chip = function (_a) {
6565
6672
  };
6566
6673
  Chip.displayName = 'Chip';
6567
6674
 
6675
+ var Menu = function (_a) {
6676
+ var title = _a.title, items = _a.items, _b = _a.fontWeightTitle, fontWeightTitle = _b === void 0 ? 'regular' : _b, _c = _a.offset, offset = _c === void 0 ? [8, 0] : _c, menuColor = _a.menuColor, _d = _a.showChevron, showChevron = _d === void 0 ? true : _d, icon = _a.icon, _e = _a.iconSpacing, iconSpacing = _e === void 0 ? 'sm' : _e, placement = _a.placement;
6677
+ var recipe = react$1.useSlotRecipe({ key: 'menu' });
6678
+ var styles = recipe();
6679
+ var _f = offset[0], mainAxis = _f === void 0 ? 0 : _f, _g = offset[1], crossAxis = _g === void 0 ? 0 : _g;
6680
+ return (React.createElement(react$1.Menu.Root, { positioning: { placement: placement, offset: { mainAxis: mainAxis, crossAxis: crossAxis } } },
6681
+ React.createElement(react$1.Menu.Context, null, function (_a) {
6682
+ var open = _a.open;
6683
+ return (React.createElement(react$1.Menu.Trigger, { css: styles.trigger, gap: iconSpacing, fontWeight: fontWeightTitle, color: open ? 'blue.700' : menuColor },
6684
+ icon,
6685
+ title,
6686
+ showChevron ? (React.createElement(ChevronDownSmallIcon, { transition: "transform", transform: open ? 'rotate(180deg)' : 'rotate(0deg)' })) : null));
6687
+ }),
6688
+ React.createElement(react$1.Portal, null,
6689
+ React.createElement(react$1.Menu.Positioner, null,
6690
+ React.createElement(react$1.Menu.Content, { css: styles.content }, items.map(function (_a) {
6691
+ var onClick = _a.onClick, text = _a.text, value = _a.value;
6692
+ return (React.createElement(react$1.Menu.Item, __assign({ key: "menuItem-".concat(value), value: value, onSelect: onClick, css: styles.item }, (menuColor && { color: menuColor })), text));
6693
+ }))))));
6694
+ };
6695
+
6568
6696
  var MobileOnlyAccordion = function (props) {
6569
6697
  var children = props.children, restProps = __rest(props, ["children"]);
6570
6698
  return React.createElement(Accordion, __assign({}, restProps), children);
@@ -7856,6 +7984,46 @@ var TopVehicleSharedBadge = function (_a) {
7856
7984
  aspectRatio ? (React.createElement(AspectRatio, { ratio: aspectRatio }, children)) : (children)));
7857
7985
  };
7858
7986
 
7987
+ var emptyItemOffset = 0;
7988
+ var firstItemOffset = 1;
7989
+ var getItemOffset = function (applyIndentation) {
7990
+ return applyIndentation ? firstItemOffset : emptyItemOffset;
7991
+ };
7992
+ var getSliderStepValue = function (marks, applyIndentation, value) {
7993
+ var selectedMarkIndex = marks.findIndex(function (mark) { return mark.value === value; });
7994
+ if (selectedMarkIndex < emptyItemOffset) {
7995
+ return getItemOffset(applyIndentation);
7996
+ }
7997
+ return selectedMarkIndex + getItemOffset(applyIndentation);
7998
+ };
7999
+ var getSliderMarks = function (marks, applyIndentation) {
8000
+ return marks.map(function (mark, index) { return (__assign(__assign({}, mark), { stepValue: index + getItemOffset(applyIndentation) })); });
8001
+ };
8002
+ var DiscreteSlider = function (_a) {
8003
+ var marks = _a.marks, _b = _a.applyIndentation, applyIndentation = _b === void 0 ? true : _b, onValueChanged = _a.onValueChanged, value = _a.value;
8004
+ var sliderStepValue = getSliderStepValue(marks, applyIndentation, value);
8005
+ var sliderMarks = getSliderMarks(marks, applyIndentation);
8006
+ var handleOnChange = function (newStepValue) {
8007
+ var _a;
8008
+ if (applyIndentation && newStepValue < firstItemOffset)
8009
+ return;
8010
+ var newSliderMark = (_a = sliderMarks.find(function (mark) { return mark.stepValue === newStepValue; })) === null || _a === void 0 ? void 0 : _a.value;
8011
+ onValueChanged(newSliderMark);
8012
+ };
8013
+ return (React.createElement(react$1.Slider.Root, { step: 1, max: sliderMarks.length - 1 + getItemOffset(applyIndentation), value: [sliderStepValue], onValueChange: function (details) { var _a; return handleOnChange((_a = details.value[0]) !== null && _a !== void 0 ? _a : sliderStepValue); } },
8014
+ React.createElement(react$1.Slider.Control, null,
8015
+ React.createElement(react$1.Slider.Track, null,
8016
+ React.createElement(react$1.Slider.Range, null)),
8017
+ React.createElement(react$1.Slider.Thumbs, null),
8018
+ React.createElement(react$1.Slider.MarkerGroup, null, sliderMarks.map(function (_a, index) {
8019
+ var stepValue = _a.stepValue, label = _a.label;
8020
+ return (React.createElement(react$1.Slider.Marker, { key: index, value: stepValue, style: {
8021
+ pointerEvents: 'all',
8022
+ fontWeight: sliderStepValue === stepValue ? 'bold' : 'normal',
8023
+ } }, label));
8024
+ })))));
8025
+ };
8026
+
7859
8027
  var Tooltip = function (_a) {
7860
8028
  var children = _a.children, _b = _a.placement, placement = _b === void 0 ? 'bottom' : _b, _c = _a.maxWidth, maxWidth = _c === void 0 ? '6xl' : _c, label = _a.label;
7861
8029
  var _d = React.useState(false), isOpen = _d[0], setIsOpen = _d[1];
@@ -7994,6 +8162,7 @@ exports.DeleteIcon = DeleteIcon;
7994
8162
  exports.DevOverlay = DevOverlay;
7995
8163
  exports.Dialog = Dialog;
7996
8164
  exports.DigitalContractIcon = DigitalContractIcon;
8165
+ exports.DiscreteSlider = DiscreteSlider;
7997
8166
  exports.DocumentCheckIcon = DocumentCheckIcon;
7998
8167
  exports.DocumentIcon = DocumentIcon;
7999
8168
  exports.DoubleChevronDownIcon = DoubleChevronDownIcon;
@@ -8061,6 +8230,7 @@ exports.LogoutIcon = LogoutIcon;
8061
8230
  exports.MagnifierIcon = MagnifierIcon;
8062
8231
  exports.MagnifierLargeIcon = MagnifierLargeIcon;
8063
8232
  exports.MarkedText = MarkedText;
8233
+ exports.Menu = Menu;
8064
8234
  exports.MessageIcon = MessageIcon;
8065
8235
  exports.MiniVanIcon = MiniVanIcon;
8066
8236
  exports.MinusIcon = MinusIcon;