@smg-automotive/components 25.10.0-chakra-v3.3 → 25.10.0-gallery-header-v3-migrate.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 (42) hide show
  1. package/dist/cjs/components/formControlSection/index.d.ts +11 -0
  2. package/dist/cjs/components/formControlSection/index.d.ts.map +1 -0
  3. package/dist/cjs/components/galleryHeader/index.d.ts +10 -0
  4. package/dist/cjs/components/galleryHeader/index.d.ts.map +1 -0
  5. package/dist/cjs/components/index.d.ts +2 -0
  6. package/dist/cjs/components/index.d.ts.map +1 -1
  7. package/dist/cjs/index.js +119 -5
  8. package/dist/cjs/index.js.map +1 -1
  9. package/dist/cjs/themes/shared/index.d.ts +1 -0
  10. package/dist/cjs/themes/shared/index.d.ts.map +1 -1
  11. package/dist/cjs/themes/shared/slotRecipes/galleryHeader.d.ts +2 -0
  12. package/dist/cjs/themes/shared/slotRecipes/galleryHeader.d.ts.map +1 -0
  13. package/dist/cjs/themes/shared/slotRecipes/index.d.ts +1 -0
  14. package/dist/cjs/themes/shared/slotRecipes/index.d.ts.map +1 -1
  15. package/dist/esm/components/formControlSection/index.d.ts +11 -0
  16. package/dist/esm/components/formControlSection/index.d.ts.map +1 -0
  17. package/dist/esm/components/formControlSection/index.js +190 -0
  18. package/dist/esm/components/formControlSection/index.js.map +1 -0
  19. package/dist/esm/components/galleryHeader/index.d.ts +10 -0
  20. package/dist/esm/components/galleryHeader/index.d.ts.map +1 -0
  21. package/dist/esm/components/galleryHeader/index.js +200 -0
  22. package/dist/esm/components/galleryHeader/index.js.map +1 -0
  23. package/dist/esm/components/index.d.ts +2 -0
  24. package/dist/esm/components/index.d.ts.map +1 -1
  25. package/dist/esm/components/themeProvider/index.js +1 -0
  26. package/dist/esm/components/themeProvider/index.js.map +1 -1
  27. package/dist/esm/components/tooltip/index.js +25 -0
  28. package/dist/esm/components/tooltip/index.js.map +1 -0
  29. package/dist/esm/index.js +3 -0
  30. package/dist/esm/index.js.map +1 -1
  31. package/dist/esm/themes/shared/index.d.ts +1 -0
  32. package/dist/esm/themes/shared/index.d.ts.map +1 -1
  33. package/dist/esm/themes/shared/slotRecipes/galleryHeader.d.ts +2 -0
  34. package/dist/esm/themes/shared/slotRecipes/galleryHeader.d.ts.map +1 -0
  35. package/dist/esm/themes/shared/slotRecipes/galleryHeader.js +54 -0
  36. package/dist/esm/themes/shared/slotRecipes/galleryHeader.js.map +1 -0
  37. package/dist/esm/themes/shared/slotRecipes/index.d.ts +1 -0
  38. package/dist/esm/themes/shared/slotRecipes/index.d.ts.map +1 -1
  39. package/dist/esm/themes/shared/slotRecipes/index.js +2 -0
  40. package/dist/esm/themes/shared/slotRecipes/index.js.map +1 -1
  41. package/dist/index.d.ts +24 -7
  42. package/package.json +1 -1
@@ -0,0 +1,11 @@
1
+ import { FC, PropsWithChildren } from 'react';
2
+ export type BaseProps = {
3
+ id: string;
4
+ errorMessage?: string;
5
+ label?: string;
6
+ hint?: string;
7
+ tooltip?: string;
8
+ };
9
+ export declare const FormControlSection: FC<PropsWithChildren<BaseProps>>;
10
+ export { BaseProps as FormControlSectionProps };
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/formControlSection/index.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AASrD,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CA4C/D,CAAC;AAEF,OAAO,EAAE,SAAS,IAAI,uBAAuB,EAAE,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { FC, PropsWithChildren } from 'react';
2
+ import { Language } from 'src/types/language';
3
+ export interface GalleryHeaderProps {
4
+ currentSlide: number;
5
+ slidesCount: number;
6
+ onClose: () => void;
7
+ language: Language;
8
+ }
9
+ export declare const GalleryHeader: FC<PropsWithChildren<GalleryHeaderProps>>;
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +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"}
@@ -18,6 +18,7 @@ export * from './energyLabel';
18
18
  export * from './errorPage';
19
19
  export * from './flex';
20
20
  export * from './fullHeight';
21
+ export * from './galleryHeader';
21
22
  export * from './grid';
22
23
  export * from './heading';
23
24
  export * from './icons';
@@ -46,4 +47,5 @@ export * from './themeProvider';
46
47
  export * from './vehicleReference';
47
48
  export * from './rangeFilterInput';
48
49
  export * from './topVehicleSharedBadge';
50
+ export * from './formControlSection';
49
51
  //# 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,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"}
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"}
package/dist/cjs/index.js CHANGED
@@ -1470,6 +1470,56 @@ var listRecipe = react$1.defineSlotRecipe({
1470
1470
  },
1471
1471
  });
1472
1472
 
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
+
1473
1523
  var fieldSlotRecipe = react$1.defineSlotRecipe({
1474
1524
  className: 'chakra-field',
1475
1525
  slots: [
@@ -2196,6 +2246,7 @@ var slotRecipes = {
2196
2246
  breadcrumbs: breadcrumbsRecipe,
2197
2247
  card: cardRecipe,
2198
2248
  energyLabel: energyLabelRecipe,
2249
+ galleryHeader: galleryHeaderRecipe,
2199
2250
  list: listRecipe,
2200
2251
  markedText: markedTextRecipe,
2201
2252
  dialog: dialogRecipe,
@@ -6281,6 +6332,36 @@ var FullHeight = function (_a) {
6281
6332
  return (React.createElement(react$1.Box, { minHeight: "screen-height", height: "screen-height" }, children));
6282
6333
  };
6283
6334
 
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
+
6284
6365
  var Grid = react$1.Grid;
6285
6366
  Grid.displayName = 'Grid';
6286
6367
  var GridItem = react$1.GridItem;
@@ -6391,11 +6472,6 @@ var SingleColumnCenteredLayout = function (_a) {
6391
6472
  React.createElement(react$1.Box, null, content))));
6392
6473
  };
6393
6474
 
6394
- var Link$1 = function (_a) {
6395
- var isExternal = _a.isExternal, target = _a.target, rel = _a.rel, props = __rest(_a, ["isExternal", "target", "rel"]);
6396
- return (React.createElement(react$1.Link, __assign({ target: target || (isExternal ? '_blank' : undefined), rel: rel || (isExternal ? 'noopener noreferrer' : undefined) }, props)));
6397
- };
6398
-
6399
6475
  var isRenderable = function (value) {
6400
6476
  return (typeof value === 'string' ||
6401
6477
  typeof value === 'number' ||
@@ -7780,6 +7856,42 @@ var TopVehicleSharedBadge = function (_a) {
7780
7856
  aspectRatio ? (React.createElement(AspectRatio, { ratio: aspectRatio }, children)) : (children)));
7781
7857
  };
7782
7858
 
7859
+ var Tooltip = function (_a) {
7860
+ 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
+ var _d = React.useState(false), isOpen = _d[0], setIsOpen = _d[1];
7862
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
7863
+ var childrenWithProps = React.cloneElement(children, {
7864
+ onMouseEnter: function () { return setIsOpen(true); },
7865
+ onMouseLeave: function () { return setIsOpen(false); },
7866
+ onClick: function () { return setIsOpen(true); },
7867
+ });
7868
+ return (React.createElement(react$1.TooltipRoot, { positioning: {
7869
+ placement: placement,
7870
+ }, open: isOpen },
7871
+ React.createElement(react$1.TooltipTrigger, { asChild: true }, childrenWithProps),
7872
+ React.createElement(react$1.TooltipPositioner, null,
7873
+ React.createElement(react$1.TooltipContent, { maxWidth: maxWidth },
7874
+ React.createElement(react$1.TooltipArrow, null,
7875
+ React.createElement(react$1.TooltipArrowTip, null)),
7876
+ label))));
7877
+ };
7878
+
7879
+ var FormControlSection = function (_a) {
7880
+ var children = _a.children, errorMessage = _a.errorMessage, id = _a.id, label = _a.label, hint = _a.hint, tooltip = _a.tooltip;
7881
+ var isInvalid = !!errorMessage;
7882
+ return (React.createElement(react$1.Field.Root, { id: id, invalid: isInvalid },
7883
+ React.createElement(react$1.Box, { border: "1px", borderRadius: "sm", borderColor: isInvalid ? 'red.500' : 'gray.400', padding: "2xl" },
7884
+ React.createElement(Flex, { flexDirection: "column" },
7885
+ React.createElement(react$1.Box, { mb: "lg" },
7886
+ React.createElement(Flex, { alignItems: "center" },
7887
+ label ? (React.createElement(Text, { color: "gray.900", textStyle: "heading4" }, label)) : null,
7888
+ tooltip ? (React.createElement(Tooltip, { label: tooltip },
7889
+ React.createElement(InformationIcon, { ml: "md" }))) : null),
7890
+ hint ? (React.createElement(Text, { color: "gray.900", textStyle: "body" }, hint)) : null),
7891
+ children)),
7892
+ React.createElement(react$1.Field.ErrorText, null, errorMessage)));
7893
+ };
7894
+
7783
7895
  Object.defineProperty(exports, "Box", {
7784
7896
  enumerable: true,
7785
7897
  get: function () { return react$1.Box; }
@@ -7906,8 +8018,10 @@ exports.FlameIcon = FlameIcon;
7906
8018
  exports.FlashIcon = FlashIcon;
7907
8019
  exports.Flex = Flex;
7908
8020
  exports.Footer = Footer$1;
8021
+ exports.FormControlSection = FormControlSection;
7909
8022
  exports.ForwardIcon = ForwardIcon;
7910
8023
  exports.FullHeight = FullHeight;
8024
+ exports.GalleryHeader = GalleryHeader;
7911
8025
  exports.GarageIcon = GarageIcon;
7912
8026
  exports.GasStationIcon = GasStationIcon;
7913
8027
  exports.GlobeIcon = GlobeIcon;