@smg-automotive/components 25.10.0-gallery-header-v3-migrate.1 → 25.10.0-migrate-discrete-slider.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 (57) 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/index.d.ts +2 -1
  4. package/dist/cjs/components/index.d.ts.map +1 -1
  5. package/dist/cjs/components/menu/index.d.ts +21 -0
  6. package/dist/cjs/components/menu/index.d.ts.map +1 -0
  7. package/dist/cjs/index.js +180 -82
  8. package/dist/cjs/index.js.map +1 -1
  9. package/dist/cjs/themes/shared/index.d.ts +2 -1
  10. package/dist/cjs/themes/shared/index.d.ts.map +1 -1
  11. package/dist/cjs/themes/shared/slotRecipes/index.d.ts +2 -1
  12. package/dist/cjs/themes/shared/slotRecipes/index.d.ts.map +1 -1
  13. package/dist/cjs/themes/shared/slotRecipes/menu.d.ts +2 -0
  14. package/dist/cjs/themes/shared/slotRecipes/menu.d.ts.map +1 -0
  15. package/dist/cjs/themes/shared/slotRecipes/slider.d.ts +2 -0
  16. package/dist/cjs/themes/shared/slotRecipes/slider.d.ts.map +1 -0
  17. package/dist/esm/components/discreteSlider/index.d.ts +14 -0
  18. package/dist/esm/components/discreteSlider/index.d.ts.map +1 -0
  19. package/dist/esm/components/discreteSlider/index.js +46 -0
  20. package/dist/esm/components/discreteSlider/index.js.map +1 -0
  21. package/dist/esm/components/index.d.ts +2 -1
  22. package/dist/esm/components/index.d.ts.map +1 -1
  23. package/dist/esm/components/menu/index.d.ts +21 -0
  24. package/dist/esm/components/menu/index.d.ts.map +1 -0
  25. package/dist/esm/components/{galleryHeader → menu}/index.js +23 -30
  26. package/dist/esm/components/menu/index.js.map +1 -0
  27. package/dist/esm/components/themeProvider/index.js +2 -1
  28. package/dist/esm/components/themeProvider/index.js.map +1 -1
  29. package/dist/esm/index.js +4 -2
  30. package/dist/esm/index.js.map +1 -1
  31. package/dist/esm/themes/shared/index.d.ts +2 -1
  32. package/dist/esm/themes/shared/index.d.ts.map +1 -1
  33. package/dist/esm/themes/shared/slotRecipes/index.d.ts +2 -1
  34. package/dist/esm/themes/shared/slotRecipes/index.d.ts.map +1 -1
  35. package/dist/esm/themes/shared/slotRecipes/index.js +4 -2
  36. package/dist/esm/themes/shared/slotRecipes/index.js.map +1 -1
  37. package/dist/esm/themes/shared/slotRecipes/menu.d.ts +2 -0
  38. package/dist/esm/themes/shared/slotRecipes/menu.d.ts.map +1 -0
  39. package/dist/esm/themes/shared/slotRecipes/menu.js +64 -0
  40. package/dist/esm/themes/shared/slotRecipes/menu.js.map +1 -0
  41. package/dist/esm/themes/shared/slotRecipes/slider.d.ts +2 -0
  42. package/dist/esm/themes/shared/slotRecipes/slider.d.ts.map +1 -0
  43. package/dist/esm/themes/shared/slotRecipes/slider.js +54 -0
  44. package/dist/esm/themes/shared/slotRecipes/slider.js.map +1 -0
  45. package/dist/index.d.ts +41 -18
  46. package/package.json +1 -1
  47. package/dist/cjs/components/galleryHeader/index.d.ts +0 -10
  48. package/dist/cjs/components/galleryHeader/index.d.ts.map +0 -1
  49. package/dist/cjs/themes/shared/slotRecipes/galleryHeader.d.ts +0 -2
  50. package/dist/cjs/themes/shared/slotRecipes/galleryHeader.d.ts.map +0 -1
  51. package/dist/esm/components/galleryHeader/index.d.ts +0 -10
  52. package/dist/esm/components/galleryHeader/index.d.ts.map +0 -1
  53. package/dist/esm/components/galleryHeader/index.js.map +0 -1
  54. package/dist/esm/themes/shared/slotRecipes/galleryHeader.d.ts +0 -2
  55. package/dist/esm/themes/shared/slotRecipes/galleryHeader.d.ts.map +0 -1
  56. package/dist/esm/themes/shared/slotRecipes/galleryHeader.js +0 -54
  57. package/dist/esm/themes/shared/slotRecipes/galleryHeader.js.map +0 -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"}
@@ -18,7 +18,6 @@ export * from './energyLabel';
18
18
  export * from './errorPage';
19
19
  export * from './flex';
20
20
  export * from './fullHeight';
21
- export * from './galleryHeader';
22
21
  export * from './grid';
23
22
  export * from './heading';
24
23
  export * from './icons';
@@ -27,6 +26,7 @@ export * from './layout';
27
26
  export * from './link';
28
27
  export * from './list';
29
28
  export * from './chip';
29
+ export * from './menu';
30
30
  export * from './missingImage';
31
31
  export * from './mobileOnlyAccordion';
32
32
  export * from './navigation/footer';
@@ -47,5 +47,6 @@ export * from './themeProvider';
47
47
  export * from './vehicleReference';
48
48
  export * from './rangeFilterInput';
49
49
  export * from './topVehicleSharedBadge';
50
+ export * from './discreteSlider';
50
51
  export * from './formControlSection';
51
52
  //# 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,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'],
@@ -1470,56 +1580,6 @@ var listRecipe = react$1.defineSlotRecipe({
1470
1580
  },
1471
1581
  });
1472
1582
 
1473
- var baseStyleContainer = react$1.defineStyle({
1474
- color: 'white',
1475
- px: '2xl',
1476
- py: 'lg',
1477
- position: {
1478
- base: 'fixed',
1479
- md: 'static',
1480
- },
1481
- top: '0',
1482
- left: '0',
1483
- right: '0',
1484
- zIndex: 'docked',
1485
- });
1486
- var baseStyleGrid = react$1.defineStyle({
1487
- alignItems: 'center',
1488
- });
1489
- var baseStyleChildrenContainer = react$1.defineStyle({
1490
- // This will be shown only above md breakpoint
1491
- });
1492
- var baseStyleCountContainer = react$1.defineStyle({
1493
- textAlign: {
1494
- base: 'left',
1495
- md: 'center',
1496
- },
1497
- });
1498
- var baseStyleCloseContainer = react$1.defineStyle({
1499
- textAlign: 'right',
1500
- display: 'flex',
1501
- alignItems: 'center',
1502
- justifyContent: 'flex-end',
1503
- });
1504
- var slots$1 = [
1505
- 'container',
1506
- 'grid',
1507
- 'childrenContainer',
1508
- 'countContainer',
1509
- 'closeContainer',
1510
- ];
1511
- var galleryHeaderRecipe = react$1.defineSlotRecipe({
1512
- slots: slots$1,
1513
- className: 'chakra-gallery-header',
1514
- base: {
1515
- container: baseStyleContainer,
1516
- grid: baseStyleGrid,
1517
- childrenContainer: baseStyleChildrenContainer,
1518
- countContainer: baseStyleCountContainer,
1519
- closeContainer: baseStyleCloseContainer,
1520
- },
1521
- });
1522
-
1523
1583
  var fieldSlotRecipe = react$1.defineSlotRecipe({
1524
1584
  className: 'chakra-field',
1525
1585
  slots: [
@@ -2246,7 +2306,6 @@ var slotRecipes = {
2246
2306
  breadcrumbs: breadcrumbsRecipe,
2247
2307
  card: cardRecipe,
2248
2308
  energyLabel: energyLabelRecipe,
2249
- galleryHeader: galleryHeaderRecipe,
2250
2309
  list: listRecipe,
2251
2310
  markedText: markedTextRecipe,
2252
2311
  dialog: dialogRecipe,
@@ -2265,7 +2324,9 @@ var slotRecipes = {
2265
2324
  popoverFilter: popoverFilterRecipe,
2266
2325
  numberInput: numberInputRecipe,
2267
2326
  radio: radioRecipe,
2327
+ slider: sliderSlotRecipe,
2268
2328
  pagination: paginationRecipe,
2329
+ menu: menuRecipe,
2269
2330
  };
2270
2331
 
2271
2332
  var textareaRecipe = react$1.defineRecipe({
@@ -6332,36 +6393,6 @@ var FullHeight = function (_a) {
6332
6393
  return (React.createElement(react$1.Box, { minHeight: "screen-height", height: "screen-height" }, children));
6333
6394
  };
6334
6395
 
6335
- var Link$1 = function (_a) {
6336
- var isExternal = _a.isExternal, target = _a.target, rel = _a.rel, props = __rest(_a, ["isExternal", "target", "rel"]);
6337
- return (React.createElement(react$1.Link, __assign({ target: target || (isExternal ? '_blank' : undefined), rel: rel || (isExternal ? 'noopener noreferrer' : undefined) }, props)));
6338
- };
6339
-
6340
- var GalleryHeader = function (_a) {
6341
- var currentSlide = _a.currentSlide, slidesCount = _a.slidesCount, onClose = _a.onClose, language = _a.language, children = _a.children;
6342
- var recipe = react$1.useSlotRecipe({ key: 'galleryHeader' });
6343
- var styles = recipe();
6344
- return (React.createElement(TranslationProvider, { language: language, scopes: ['galleryHeader'] },
6345
- React.createElement(i18nPkg.I18nContext.Consumer, null, function (_a) {
6346
- var t = _a.t;
6347
- return (React.createElement(react$1.Box, { css: styles.container },
6348
- React.createElement(react$1.Box, { css: styles.grid },
6349
- React.createElement(SimpleGrid, { columns: {
6350
- base: 2,
6351
- md: 3,
6352
- }, alignItems: "center" },
6353
- React.createElement(react$1.Box, { hideBelow: "md", css: styles.childrenContainer }, children),
6354
- React.createElement(react$1.Box, { css: styles.countContainer },
6355
- React.createElement(react$1.Box, null, t('galleryHeader.imageCount', {
6356
- x: currentSlide,
6357
- of: slidesCount,
6358
- }))),
6359
- React.createElement(react$1.Box, { css: styles.closeContainer },
6360
- React.createElement(Link$1, { "aria-label": "Close gallery", onClick: function () { return onClose(); } },
6361
- React.createElement(CloseIcon, { color: "white" })))))));
6362
- })));
6363
- };
6364
-
6365
6396
  var Grid = react$1.Grid;
6366
6397
  Grid.displayName = 'Grid';
6367
6398
  var GridItem = react$1.GridItem;
@@ -6472,6 +6503,11 @@ var SingleColumnCenteredLayout = function (_a) {
6472
6503
  React.createElement(react$1.Box, null, content))));
6473
6504
  };
6474
6505
 
6506
+ var Link$1 = function (_a) {
6507
+ var isExternal = _a.isExternal, target = _a.target, rel = _a.rel, props = __rest(_a, ["isExternal", "target", "rel"]);
6508
+ return (React.createElement(react$1.Link, __assign({ target: target || (isExternal ? '_blank' : undefined), rel: rel || (isExternal ? 'noopener noreferrer' : undefined) }, props)));
6509
+ };
6510
+
6475
6511
  var isRenderable = function (value) {
6476
6512
  return (typeof value === 'string' ||
6477
6513
  typeof value === 'number' ||
@@ -6565,6 +6601,27 @@ var Chip = function (_a) {
6565
6601
  };
6566
6602
  Chip.displayName = 'Chip';
6567
6603
 
6604
+ var Menu = function (_a) {
6605
+ 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;
6606
+ var recipe = react$1.useSlotRecipe({ key: 'menu' });
6607
+ var styles = recipe();
6608
+ var _f = offset[0], mainAxis = _f === void 0 ? 0 : _f, _g = offset[1], crossAxis = _g === void 0 ? 0 : _g;
6609
+ return (React.createElement(react$1.Menu.Root, { positioning: { placement: placement, offset: { mainAxis: mainAxis, crossAxis: crossAxis } } },
6610
+ React.createElement(react$1.Menu.Context, null, function (_a) {
6611
+ var open = _a.open;
6612
+ return (React.createElement(react$1.Menu.Trigger, { css: styles.trigger, gap: iconSpacing, fontWeight: fontWeightTitle, color: open ? 'blue.700' : menuColor },
6613
+ icon,
6614
+ title,
6615
+ showChevron ? (React.createElement(ChevronDownSmallIcon, { transition: "transform", transform: open ? 'rotate(180deg)' : 'rotate(0deg)' })) : null));
6616
+ }),
6617
+ React.createElement(react$1.Portal, null,
6618
+ React.createElement(react$1.Menu.Positioner, null,
6619
+ React.createElement(react$1.Menu.Content, { css: styles.content }, items.map(function (_a) {
6620
+ var onClick = _a.onClick, text = _a.text, value = _a.value;
6621
+ return (React.createElement(react$1.Menu.Item, __assign({ key: "menuItem-".concat(value), value: value, onSelect: onClick, css: styles.item }, (menuColor && { color: menuColor })), text));
6622
+ }))))));
6623
+ };
6624
+
6568
6625
  var MobileOnlyAccordion = function (props) {
6569
6626
  var children = props.children, restProps = __rest(props, ["children"]);
6570
6627
  return React.createElement(Accordion, __assign({}, restProps), children);
@@ -7856,6 +7913,46 @@ var TopVehicleSharedBadge = function (_a) {
7856
7913
  aspectRatio ? (React.createElement(AspectRatio, { ratio: aspectRatio }, children)) : (children)));
7857
7914
  };
7858
7915
 
7916
+ var emptyItemOffset = 0;
7917
+ var firstItemOffset = 1;
7918
+ var getItemOffset = function (applyIndentation) {
7919
+ return applyIndentation ? firstItemOffset : emptyItemOffset;
7920
+ };
7921
+ var getSliderStepValue = function (marks, applyIndentation, value) {
7922
+ var selectedMarkIndex = marks.findIndex(function (mark) { return mark.value === value; });
7923
+ if (selectedMarkIndex < emptyItemOffset) {
7924
+ return getItemOffset(applyIndentation);
7925
+ }
7926
+ return selectedMarkIndex + getItemOffset(applyIndentation);
7927
+ };
7928
+ var getSliderMarks = function (marks, applyIndentation) {
7929
+ return marks.map(function (mark, index) { return (__assign(__assign({}, mark), { stepValue: index + getItemOffset(applyIndentation) })); });
7930
+ };
7931
+ var DiscreteSlider = function (_a) {
7932
+ var marks = _a.marks, _b = _a.applyIndentation, applyIndentation = _b === void 0 ? true : _b, onValueChanged = _a.onValueChanged, value = _a.value;
7933
+ var sliderStepValue = getSliderStepValue(marks, applyIndentation, value);
7934
+ var sliderMarks = getSliderMarks(marks, applyIndentation);
7935
+ var handleOnChange = function (newStepValue) {
7936
+ var _a;
7937
+ if (applyIndentation && newStepValue < firstItemOffset)
7938
+ return;
7939
+ var newSliderMark = (_a = sliderMarks.find(function (mark) { return mark.stepValue === newStepValue; })) === null || _a === void 0 ? void 0 : _a.value;
7940
+ onValueChanged(newSliderMark);
7941
+ };
7942
+ 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); } },
7943
+ React.createElement(react$1.Slider.Control, null,
7944
+ React.createElement(react$1.Slider.Track, null,
7945
+ React.createElement(react$1.Slider.Range, null)),
7946
+ React.createElement(react$1.Slider.Thumbs, null),
7947
+ React.createElement(react$1.Slider.MarkerGroup, null, sliderMarks.map(function (_a, index) {
7948
+ var stepValue = _a.stepValue, label = _a.label;
7949
+ return (React.createElement(react$1.Slider.Marker, { key: index, value: stepValue, style: {
7950
+ pointerEvents: 'all',
7951
+ fontWeight: sliderStepValue === stepValue ? 'bold' : 'normal',
7952
+ } }, label));
7953
+ })))));
7954
+ };
7955
+
7859
7956
  var Tooltip = function (_a) {
7860
7957
  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
7958
  var _d = React.useState(false), isOpen = _d[0], setIsOpen = _d[1];
@@ -7994,6 +8091,7 @@ exports.DeleteIcon = DeleteIcon;
7994
8091
  exports.DevOverlay = DevOverlay;
7995
8092
  exports.Dialog = Dialog;
7996
8093
  exports.DigitalContractIcon = DigitalContractIcon;
8094
+ exports.DiscreteSlider = DiscreteSlider;
7997
8095
  exports.DocumentCheckIcon = DocumentCheckIcon;
7998
8096
  exports.DocumentIcon = DocumentIcon;
7999
8097
  exports.DoubleChevronDownIcon = DoubleChevronDownIcon;
@@ -8021,7 +8119,6 @@ exports.Footer = Footer$1;
8021
8119
  exports.FormControlSection = FormControlSection;
8022
8120
  exports.ForwardIcon = ForwardIcon;
8023
8121
  exports.FullHeight = FullHeight;
8024
- exports.GalleryHeader = GalleryHeader;
8025
8122
  exports.GarageIcon = GarageIcon;
8026
8123
  exports.GasStationIcon = GasStationIcon;
8027
8124
  exports.GlobeIcon = GlobeIcon;
@@ -8061,6 +8158,7 @@ exports.LogoutIcon = LogoutIcon;
8061
8158
  exports.MagnifierIcon = MagnifierIcon;
8062
8159
  exports.MagnifierLargeIcon = MagnifierLargeIcon;
8063
8160
  exports.MarkedText = MarkedText;
8161
+ exports.Menu = Menu;
8064
8162
  exports.MessageIcon = MessageIcon;
8065
8163
  exports.MiniVanIcon = MiniVanIcon;
8066
8164
  exports.MinusIcon = MinusIcon;