@telefonica/mistica 12.2.0 → 12.3.0

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.
@@ -99,13 +99,15 @@ var ScreenSizeContextProvider = function ScreenSizeContextProvider(param1) {
99
99
  mobile: stripMedia(theme.mq.mobile),
100
100
  tablet: stripMedia(theme.mq.tablet),
101
101
  tabletOrBigger: stripMedia(theme.mq.tabletOrBigger),
102
- tabletOrSmaller: stripMedia(theme.mq.tabletOrSmaller)
102
+ tabletOrSmaller: stripMedia(theme.mq.tabletOrSmaller),
103
+ largueDesktop: stripMedia(theme.mq.largeDesktop)
103
104
  };
104
105
  }, [
105
106
  theme.mq.mobile,
106
107
  theme.mq.tablet,
107
108
  theme.mq.tabletOrBigger,
108
- theme.mq.tabletOrSmaller
109
+ theme.mq.tabletOrSmaller,
110
+ theme.mq.largeDesktop,
109
111
  ]);
110
112
  var ref1 = _slicedToArray(React.useState(function() {
111
113
  return !isServerSide && window.matchMedia(mediaQueries.mobile).matches;
@@ -119,6 +121,9 @@ var ScreenSizeContextProvider = function ScreenSizeContextProvider(param1) {
119
121
  var ref4 = _slicedToArray(React.useState(function() {
120
122
  return !isServerSide && window.matchMedia(mediaQueries.tabletOrSmaller).matches;
121
123
  }), 2), isTabletOrSmaller = ref4[0], setIsTabletOrSmaller = ref4[1];
124
+ var ref5 = _slicedToArray(React.useState(function() {
125
+ return !isServerSide && window.matchMedia(mediaQueries.largueDesktop).matches;
126
+ }), 2), isLargeDesktop = ref5[0], setIsLargeDesktop = ref5[1];
122
127
  (0, _hooks).useIsomorphicLayoutEffect(function() {
123
128
  if (!window.matchMedia) {
124
129
  return;
@@ -139,6 +144,10 @@ var ScreenSizeContextProvider = function ScreenSizeContextProvider(param1) {
139
144
  [
140
145
  mediaQueries.tabletOrSmaller,
141
146
  setIsTabletOrSmaller
147
+ ],
148
+ [
149
+ mediaQueries.largueDesktop,
150
+ setIsLargeDesktop
142
151
  ],
143
152
  ];
144
153
  var cleanupFunctions = entries.map(function(param) {
@@ -162,7 +171,8 @@ var ScreenSizeContextProvider = function ScreenSizeContextProvider(param1) {
162
171
  mediaQueries.mobile,
163
172
  mediaQueries.tablet,
164
173
  mediaQueries.tabletOrBigger,
165
- mediaQueries.tabletOrSmaller
174
+ mediaQueries.tabletOrSmaller,
175
+ mediaQueries.largueDesktop,
166
176
  ]);
167
177
  var value = React.useMemo(function() {
168
178
  return {
@@ -170,13 +180,15 @@ var ScreenSizeContextProvider = function ScreenSizeContextProvider(param1) {
170
180
  isTablet: isTablet,
171
181
  isTabletOrBigger: isTabletOrBigger,
172
182
  isTabletOrSmaller: isTabletOrSmaller,
173
- isDesktopOrBigger: !isTabletOrSmaller
183
+ isDesktopOrBigger: !isTabletOrSmaller,
184
+ isLargeDesktop: isLargeDesktop
174
185
  };
175
186
  }, [
176
187
  isMobile,
177
188
  isTablet,
178
189
  isTabletOrBigger,
179
- isTabletOrSmaller
190
+ isTabletOrSmaller,
191
+ isLargeDesktop
180
192
  ]);
181
193
  return /*#__PURE__*/ (0, _jsxRuntime).jsx(_screenSizeContext.default.Provider, {
182
194
  value: value,
@@ -5,6 +5,7 @@ export declare type ScreenSizeContextType = {
5
5
  isTabletOrBigger: boolean;
6
6
  isTabletOrSmaller: boolean;
7
7
  isDesktopOrBigger: boolean;
8
+ isLargeDesktop: boolean;
8
9
  };
9
10
  declare const ScreenSizeContext: React.Context<ScreenSizeContextType>;
10
11
  export default ScreenSizeContext;
@@ -30,7 +30,8 @@ var ScreenSizeContext = /*#__PURE__*/ React.createContext({
30
30
  isTablet: false,
31
31
  isTabletOrBigger: false,
32
32
  isTabletOrSmaller: false,
33
- isDesktopOrBigger: false
33
+ isDesktopOrBigger: false,
34
+ isLargeDesktop: false
34
35
  });
35
36
  var _default = ScreenSizeContext;
36
37
  exports.default = _default;
@@ -7,6 +7,7 @@ export type ScreenSizeContextType = {
7
7
  isTabletOrBigger: boolean,
8
8
  isTabletOrSmaller: boolean,
9
9
  isDesktopOrBigger: boolean,
10
+ isLargeDesktop: boolean,
10
11
  };
11
12
  declare var ScreenSizeContext: React.Context<ScreenSizeContextType>;
12
13
  declare export default typeof ScreenSizeContext;
package/dist/snackbar.js CHANGED
@@ -10,6 +10,7 @@ var _touchable = _interopRequireDefault(require("./touchable"));
10
10
  var _classnames = _interopRequireDefault(require("classnames"));
11
11
  var _webviewBridge = require("@tef-novum/webview-bridge");
12
12
  var _hooks = require("./hooks");
13
+ var _text = require("./text");
13
14
  function _interopRequireDefault(obj) {
14
15
  return obj && obj.__esModule ? obj : {
15
16
  default: obj
@@ -146,9 +147,6 @@ var useStyles = (0, _jss).createUseStyles(function(theme) {
146
147
  transition: "transform ".concat(TRANSITION_TIME_IN_MS, "ms ease-in-out, opacity ").concat(TRANSITION_TIME_IN_MS, "ms ease-in-out")
147
148
  },
148
149
  snackbarContent: {
149
- fontSize: 14,
150
- lineHeight: "20px",
151
- color: theme.colors.textPrimaryInverse,
152
150
  display: "flex",
153
151
  flexDirection: function flexDirection(param) {
154
152
  var isLongButton = param.isLongButton;
@@ -201,6 +199,7 @@ var SnackbarComponent = function SnackbarComponent(param) {
201
199
  var ref1 = (0, _hooks).useElementDimensions(), buttonWidth = ref1.width, buttonRef = ref1.ref;
202
200
  var isDesktopOrBigger = (0, _hooks).useScreenSize().isDesktopOrBigger;
203
201
  var longButtonWidth = isDesktopOrBigger ? 160 : 128;
202
+ var colors = (0, _hooks).useTheme().colors;
204
203
  var classes = useStyles({
205
204
  type: type,
206
205
  isOpen: isOpen,
@@ -236,7 +235,9 @@ var SnackbarComponent = function SnackbarComponent(param) {
236
235
  children: /*#__PURE__*/ (0, _jsxRuntime).jsxs("div", {
237
236
  className: classes.snackbarContent,
238
237
  children: [
239
- /*#__PURE__*/ (0, _jsxRuntime).jsx("span", {
238
+ /*#__PURE__*/ (0, _jsxRuntime).jsx(_text.Text2, {
239
+ regular: true,
240
+ color: colors.textPrimaryInverse,
240
241
  children: message
241
242
  }),
242
243
  buttonText && /*#__PURE__*/ (0, _jsxRuntime).jsx(_touchable.default, {
@@ -10,3 +10,4 @@ export declare type IconProps = {
10
10
  className?: string;
11
11
  style?: React.CSSProperties;
12
12
  };
13
+ export declare type ContainerType = 'desktop-small-column' | 'desktop-medium-column' | 'desktop-wide-column' | 'tablet-column' | 'mobile-column';
@@ -11,5 +11,11 @@ export type IconProps = {
11
11
  className?: string,
12
12
  style?: CssStyle,
13
13
  };
14
+ export type ContainerType =
15
+ | "desktop-small-column"
16
+ | "desktop-medium-column"
17
+ | "desktop-wide-column"
18
+ | "tablet-column"
19
+ | "mobile-column";
14
20
 
15
21
  import { type CssStyle } from "../__css_types__.js.flow";
@@ -101,6 +101,7 @@ import { DisableBorderRadiusProvider } from "./image";
101
101
  import { getPrefixedDataAttributes, listenResize } from "./utils/dom";
102
102
  import { isAndroid } from "./utils/platform";
103
103
  import { useDocumentVisibility } from "./utils/document-visibility";
104
+ import { useContainerType } from "./container-type-context";
104
105
  var useShouldAutoplay = function(autoplay, ref) {
105
106
  var isDocumentVisible = useDocumentVisibility();
106
107
  var isInViewport = useIsInViewport(ref, false);
@@ -186,8 +187,19 @@ var arrowButtonStyle = function(theme) {
186
187
  display: "none"
187
188
  }));
188
189
  };
190
+ var arrowButtonSeparation = function(containerType, isLargeDesktop, sideMargin) {
191
+ switch(containerType){
192
+ case "mobile-column":
193
+ case "tablet-column":
194
+ return -sideMargin;
195
+ case "desktop-wide-column":
196
+ return isLargeDesktop ? -(24 + arrowButtonSize) : -arrowButtonSize / 2;
197
+ default:
198
+ return -arrowButtonSize / 2;
199
+ }
200
+ };
189
201
  var useStyles = createUseStyles(function(theme) {
190
- var _obj, _obj1, _obj2;
202
+ var _obj;
191
203
  return {
192
204
  carouselContainer: {
193
205
  // This value is a workaround to solve an issue when the page is rendered in a hidden webview
@@ -199,26 +211,18 @@ var useStyles = createUseStyles(function(theme) {
199
211
  position: "absolute",
200
212
  zIndex: 1,
201
213
  top: "calc(50% - ".concat(arrowButtonSize / 2, "px)"),
202
- "&.prev": (_obj = {
203
- left: -arrowButtonSize / 2
204
- }, _defineProperty(_obj, theme.mq.tabletOrSmaller, {
214
+ "&.prev": {
205
215
  left: function(param) {
206
- var sideMargin = param.sideMargin;
207
- return -sideMargin;
216
+ var containerType = param.containerType, isLargeDesktop = param.isLargeDesktop, sideMargin = param.sideMargin;
217
+ return arrowButtonSeparation(containerType, isLargeDesktop, sideMargin);
208
218
  }
209
- }), _defineProperty(_obj, theme.mq.largeDesktop, {
210
- left: -(24 + arrowButtonSize)
211
- }), _obj),
212
- "&.next": (_obj1 = {
213
- right: -arrowButtonSize / 2
214
- }, _defineProperty(_obj1, theme.mq.tabletOrSmaller, {
219
+ },
220
+ "&.next": {
215
221
  right: function(param) {
216
- var sideMargin = param.sideMargin;
217
- return -sideMargin;
222
+ var containerType = param.containerType, isLargeDesktop = param.isLargeDesktop, sideMargin = param.sideMargin;
223
+ return arrowButtonSeparation(containerType, isLargeDesktop, sideMargin);
218
224
  }
219
- }), _defineProperty(_obj1, theme.mq.largeDesktop, {
220
- right: -(24 + arrowButtonSize)
221
- }), _obj1)
225
+ }
222
226
  }),
223
227
  hasScroll: {},
224
228
  centered: {},
@@ -244,7 +248,7 @@ var useStyles = createUseStyles(function(theme) {
244
248
  width: "25%"
245
249
  }
246
250
  })),
247
- item: (_obj2 = {
251
+ item: (_obj = {
248
252
  scrollSnapStop: isAndroid(theme.platformOverrides) ? "always" : "normal",
249
253
  scrollSnapAlign: "start",
250
254
  flexShrink: 0,
@@ -264,7 +268,7 @@ var useStyles = createUseStyles(function(theme) {
264
268
  },
265
269
  scrollMargin: 0
266
270
  }
267
- }, _defineProperty(_obj2, theme.mq.tabletOrSmaller, {
271
+ }, _defineProperty(_obj, theme.mq.tabletOrSmaller, {
268
272
  width: function(param) {
269
273
  var itemsPerPageConfig = param.itemsPerPageConfig, gap = param.gap;
270
274
  return "calc(".concat(100 / itemsPerPageConfig.mobile, "% + ").concat(gap / itemsPerPageConfig.mobile, "px)");
@@ -319,14 +323,14 @@ var useStyles = createUseStyles(function(theme) {
319
323
  return 0;
320
324
  }
321
325
  }
322
- }), _defineProperty(_obj2, "&:not(:empty) ~ &:not(:empty)", {
326
+ }), _defineProperty(_obj, "&:not(:empty) ~ &:not(:empty)", {
323
327
  paddingLeft: function(param) {
324
328
  var gap = param.gap;
325
329
  return gap;
326
330
  }
327
- }), _defineProperty(_obj2, "&:empty", {
331
+ }), _defineProperty(_obj, "&:empty", {
328
332
  display: "none"
329
- }), _obj2),
333
+ }), _obj),
330
334
  bullets: {
331
335
  display: "flex",
332
336
  justifyContent: "center"
@@ -390,9 +394,10 @@ var DEFAULT_AUTOPLAY_TIME = 5000;
390
394
  var BaseCarousel = function(param) {
391
395
  var items = param.items, itemStyle = param.itemStyle, itemClassName = param.itemClassName, withBullets = param.withBullets, renderBullets = param.renderBullets, itemsPerPage = param.itemsPerPage, itemsToScroll = param.itemsToScroll, _mobilePageOffset = param.mobilePageOffset, mobilePageOffset = _mobilePageOffset === void 0 ? 16 : _mobilePageOffset, gapProp = param.gap, free = param.free, centered = param.centered, autoplay = param.autoplay, onPageChange = param.onPageChange, dataAttributes = param.dataAttributes;
392
396
  var texts = useTheme().texts;
397
+ var containerType = useContainerType();
393
398
  var itemsPerPageConfig = normalizeItemsPerPage(itemsPerPage);
394
399
  var mobilePageOffsetConfig = normalizeMobilePageOffset(mobilePageOffset);
395
- var isDesktopOrBigger = useScreenSize().isDesktopOrBigger;
400
+ var ref4 = useScreenSize(), isDesktopOrBigger = ref4.isDesktopOrBigger, isLargeDesktop = ref4.isLargeDesktop;
396
401
  var gap = gapProp !== null && gapProp !== void 0 ? gapProp : isDesktopOrBigger ? 16 : 8;
397
402
  var sideMargin = useResonsiveLayoutMargin();
398
403
  var classes = useStyles({
@@ -400,16 +405,18 @@ var BaseCarousel = function(param) {
400
405
  mobilePageOffsetConfig: mobilePageOffsetConfig,
401
406
  free: free,
402
407
  gap: gap,
403
- sideMargin: sideMargin
408
+ sideMargin: sideMargin,
409
+ containerType: containerType,
410
+ isLargeDesktop: isLargeDesktop
404
411
  });
405
412
  var carouselRef = React.useRef(null);
406
413
  var itemsPerPageFloor = isDesktopOrBigger ? Math.floor(itemsPerPageConfig.desktop) : Math.floor(itemsPerPageConfig.mobile);
407
414
  var pagesCount = Math.ceil(items.length / itemsPerPageFloor);
408
- var ref3 = _slicedToArray(React.useState({
415
+ var ref1 = _slicedToArray(React.useState({
409
416
  scrollLeft: 0,
410
417
  scrollRight: 0
411
- }), 2), ref1 = ref3[0], scrollLeft1 = ref1.scrollLeft, scrollRight1 = ref1.scrollRight, setScroll = ref3[1];
412
- var ref2 = _slicedToArray(React.useState([]), 2), itemScrollPositions = ref2[0], setItemScrollPositions = ref2[1];
418
+ }), 2), ref2 = ref1[0], scrollLeft1 = ref2.scrollLeft, scrollRight1 = ref2.scrollRight, setScroll = ref1[1];
419
+ var ref3 = _slicedToArray(React.useState([]), 2), itemScrollPositions = ref3[0], setItemScrollPositions = ref3[1];
413
420
  var pagesScrollPositions = calcPagesScrollPositions(itemScrollPositions, pagesCount);
414
421
  var scrollPositions = itemsToScroll ? calcPagesScrollPositions(itemScrollPositions, Math.ceil(items.length / itemsToScroll)) : pagesScrollPositions;
415
422
  var showNextArrow = scrollRight1 !== 0;
@@ -706,10 +713,10 @@ export var Slideshow = function(param) {
706
713
  sideMargin: sideMargin
707
714
  });
708
715
  var carouselRef = React.useRef(null);
709
- var ref5 = _slicedToArray(React.useState({
716
+ var ref6 = _slicedToArray(React.useState({
710
717
  scrollLeft: 0,
711
718
  scrollRight: 0
712
- }), 2), ref4 = ref5[0], scrollLeft2 = ref4.scrollLeft, scrollRight2 = ref4.scrollRight, setScroll = ref5[1];
719
+ }), 2), ref5 = ref6[0], scrollLeft2 = ref5.scrollLeft, scrollRight2 = ref5.scrollRight, setScroll = ref6[1];
713
720
  var goPrev = React.useCallback(function() {
714
721
  var carouselEl = carouselRef.current;
715
722
  if (carouselEl) {
@@ -0,0 +1,21 @@
1
+ import * as React from "react";
2
+ import { useScreenSize } from "./hooks";
3
+ var ContainerTypeContext = /*#__PURE__*/ React.createContext(null);
4
+ export var useContainerType = function() {
5
+ var containerType = React.useContext(ContainerTypeContext);
6
+ var ref = useScreenSize(), isTablet = ref.isTablet, isDesktopOrBigger = ref.isDesktopOrBigger, isLargeDesktop = ref.isLargeDesktop;
7
+ if (containerType) {
8
+ return containerType;
9
+ }
10
+ if (isLargeDesktop) {
11
+ return "desktop-wide-column";
12
+ }
13
+ if (isDesktopOrBigger) {
14
+ return "desktop-medium-column";
15
+ }
16
+ if (isTablet) {
17
+ return "tablet-column";
18
+ }
19
+ return "mobile-column";
20
+ };
21
+ export default ContainerTypeContext;
@@ -28,6 +28,8 @@ function _objectSpread(target) {
28
28
  }
29
29
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
30
30
  import * as React from "react";
31
+ import { useScreenSize } from "./hooks";
32
+ import ContainerTypeContext from "./container-type-context";
31
33
  import { createUseStyles } from "./jss";
32
34
  import { getPrefixedDataAttributes } from "./utils/dom";
33
35
  var useStyles = createUseStyles(function(theme) {
@@ -127,18 +129,28 @@ var GridLayout = function(props) {
127
129
  verticalSpace: (_verticalSpace = props.verticalSpace) !== null && _verticalSpace !== void 0 ? _verticalSpace : 0
128
130
  });
129
131
  var dataAttributes = getPrefixedDataAttributes(props.dataAttributes);
132
+ var ref = useScreenSize(), isMobile = ref.isMobile, isTablet = ref.isTablet;
133
+ var getContainerType = function(containerType) {
134
+ return isMobile ? "mobile-column" : isTablet ? "tablet-column" : containerType;
135
+ };
130
136
  if (props.template === "6+6") {
131
137
  return /*#__PURE__*/ _jsxs("div", _objectSpread({
132
138
  className: classes.grid
133
139
  }, dataAttributes, {
134
140
  children: [
135
- /*#__PURE__*/ _jsx("div", {
136
- className: classes.span6,
137
- children: props.left
141
+ /*#__PURE__*/ _jsx(ContainerTypeContext.Provider, {
142
+ value: getContainerType("desktop-medium-column"),
143
+ children: /*#__PURE__*/ _jsx("div", {
144
+ className: classes.span6,
145
+ children: props.left
146
+ })
138
147
  }),
139
- /*#__PURE__*/ _jsx("div", {
140
- className: classes.span6,
141
- children: props.right
148
+ /*#__PURE__*/ _jsx(ContainerTypeContext.Provider, {
149
+ value: getContainerType("desktop-medium-column"),
150
+ children: /*#__PURE__*/ _jsx("div", {
151
+ className: classes.span6,
152
+ children: props.right
153
+ })
142
154
  })
143
155
  ]
144
156
  }));
@@ -148,13 +160,19 @@ var GridLayout = function(props) {
148
160
  className: classes.grid
149
161
  }, dataAttributes, {
150
162
  children: [
151
- /*#__PURE__*/ _jsx("div", {
152
- className: classes.span8,
153
- children: props.left
163
+ /*#__PURE__*/ _jsx(ContainerTypeContext.Provider, {
164
+ value: getContainerType("desktop-medium-column"),
165
+ children: /*#__PURE__*/ _jsx("div", {
166
+ className: classes.span8,
167
+ children: props.left
168
+ })
154
169
  }),
155
- /*#__PURE__*/ _jsx("div", {
156
- className: classes.span4,
157
- children: props.right
170
+ /*#__PURE__*/ _jsx(ContainerTypeContext.Provider, {
171
+ value: getContainerType("desktop-small-column"),
172
+ children: /*#__PURE__*/ _jsx("div", {
173
+ className: classes.span4,
174
+ children: props.right
175
+ })
158
176
  })
159
177
  ]
160
178
  }));
@@ -164,16 +182,22 @@ var GridLayout = function(props) {
164
182
  className: classes.grid
165
183
  }, dataAttributes, {
166
184
  children: [
167
- /*#__PURE__*/ _jsx("div", {
168
- className: classes.span4,
169
- children: props.left
185
+ /*#__PURE__*/ _jsx(ContainerTypeContext.Provider, {
186
+ value: getContainerType("desktop-small-column"),
187
+ children: /*#__PURE__*/ _jsx("div", {
188
+ className: classes.span4,
189
+ children: props.left
190
+ })
170
191
  }),
171
192
  /*#__PURE__*/ _jsx("div", {
172
193
  className: classes.span1
173
194
  }),
174
- /*#__PURE__*/ _jsx("div", {
175
- className: classes.span6,
176
- children: props.right
195
+ /*#__PURE__*/ _jsx(ContainerTypeContext.Provider, {
196
+ value: getContainerType("desktop-medium-column"),
197
+ children: /*#__PURE__*/ _jsx("div", {
198
+ className: classes.span6,
199
+ children: props.right
200
+ })
177
201
  }),
178
202
  /*#__PURE__*/ _jsx("div", {
179
203
  className: classes.span1
@@ -189,16 +213,22 @@ var GridLayout = function(props) {
189
213
  /*#__PURE__*/ _jsx("div", {
190
214
  className: classes.span1
191
215
  }),
192
- /*#__PURE__*/ _jsx("div", {
193
- className: classes.span5,
194
- children: props.left
216
+ /*#__PURE__*/ _jsx(ContainerTypeContext.Provider, {
217
+ value: getContainerType("desktop-small-column"),
218
+ children: /*#__PURE__*/ _jsx("div", {
219
+ className: classes.span5,
220
+ children: props.left
221
+ })
195
222
  }),
196
223
  /*#__PURE__*/ _jsx("div", {
197
224
  className: classes.span1
198
225
  }),
199
- /*#__PURE__*/ _jsx("div", {
200
- className: classes.span4,
201
- children: props.right
226
+ /*#__PURE__*/ _jsx(ContainerTypeContext.Provider, {
227
+ value: getContainerType("desktop-small-column"),
228
+ children: /*#__PURE__*/ _jsx("div", {
229
+ className: classes.span4,
230
+ children: props.right
231
+ })
202
232
  }),
203
233
  /*#__PURE__*/ _jsx("div", {
204
234
  className: classes.span1
@@ -211,13 +241,19 @@ var GridLayout = function(props) {
211
241
  className: classes.grid
212
242
  }, dataAttributes, {
213
243
  children: [
214
- /*#__PURE__*/ _jsx("div", {
215
- className: classes.span3,
216
- children: props.left
244
+ /*#__PURE__*/ _jsx(ContainerTypeContext.Provider, {
245
+ value: getContainerType("desktop-small-column"),
246
+ children: /*#__PURE__*/ _jsx("div", {
247
+ className: classes.span3,
248
+ children: props.left
249
+ })
217
250
  }),
218
- /*#__PURE__*/ _jsx("div", {
219
- className: classes.span9,
220
- children: props.right
251
+ /*#__PURE__*/ _jsx(ContainerTypeContext.Provider, {
252
+ value: getContainerType("desktop-medium-column"),
253
+ children: /*#__PURE__*/ _jsx("div", {
254
+ className: classes.span9,
255
+ children: props.right
256
+ })
221
257
  })
222
258
  ]
223
259
  }));
@@ -230,9 +266,12 @@ var GridLayout = function(props) {
230
266
  /*#__PURE__*/ _jsx("div", {
231
267
  className: classes.span1
232
268
  }),
233
- /*#__PURE__*/ _jsx("div", {
234
- className: classes.span10,
235
- children: props.children
269
+ /*#__PURE__*/ _jsx(ContainerTypeContext.Provider, {
270
+ value: getContainerType("desktop-wide-column"),
271
+ children: /*#__PURE__*/ _jsx("div", {
272
+ className: classes.span10,
273
+ children: props.children
274
+ })
236
275
  }),
237
276
  /*#__PURE__*/ _jsx("div", {
238
277
  className: classes.span1
@@ -1,41 +1,117 @@
1
+ function _defineProperty(obj, key, value) {
2
+ if (key in obj) {
3
+ Object.defineProperty(obj, key, {
4
+ value: value,
5
+ enumerable: true,
6
+ configurable: true,
7
+ writable: true
8
+ });
9
+ } else {
10
+ obj[key] = value;
11
+ }
12
+ return obj;
13
+ }
14
+ function _objectSpread(target) {
15
+ for(var i = 1; i < arguments.length; i++){
16
+ var source = arguments[i] != null ? arguments[i] : {};
17
+ var ownKeys = Object.keys(source);
18
+ if (typeof Object.getOwnPropertySymbols === "function") {
19
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
20
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
21
+ }));
22
+ }
23
+ ownKeys.forEach(function(key) {
24
+ _defineProperty(target, key, source[key]);
25
+ });
26
+ }
27
+ return target;
28
+ }
1
29
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import * as React from "react";
30
+ /**
31
+ * Figma: https://www.figma.com/file/BctaFHf0PVPX2uwRSl8taf/Breadcrumbs?node-id=2%3A61
32
+ * Accessibility: https://www.w3.org/WAI/ARIA/apg/example-index/breadcrumb/index.html
33
+ */ import * as React from "react";
3
34
  import { Text1 } from "./text";
4
35
  import { useTheme } from "./hooks";
36
+ import { createUseStyles } from "./jss";
37
+ import { getPrefixedDataAttributes } from "./utils/dom";
38
+ import TextLink from "./text-link";
39
+ import { useIsInverseVariant } from "./theme-variant-context";
5
40
  var BREADCRUMB_SEPARATOR = " / ";
41
+ var useStyles = createUseStyles(function() {
42
+ return {
43
+ link: {
44
+ "&:hover": {
45
+ textDecoration: "underline"
46
+ }
47
+ },
48
+ current: {
49
+ textDecoration: "none",
50
+ pointerEvents: "none"
51
+ },
52
+ list: {
53
+ padding: 0,
54
+ margin: 0,
55
+ listStyleType: "none",
56
+ "& > li": {
57
+ display: "inline"
58
+ }
59
+ }
60
+ };
61
+ });
6
62
  var NavigationBreadcrumbs = function(param1) {
7
- var title1 = param1.title, breadcrumbs = param1.breadcrumbs;
8
- var theme = useTheme();
9
- var Link = theme.Link;
10
- return /*#__PURE__*/ _jsxs("div", {
11
- children: [
12
- breadcrumbs.map(function(param, index) {
13
- var title = param.title, url = param.url;
14
- return /*#__PURE__*/ _jsxs(React.Fragment, {
15
- children: [
16
- /*#__PURE__*/ _jsx(Link, {
17
- style: {
18
- textDecoration: "none"
19
- },
20
- to: url,
21
- children: /*#__PURE__*/ _jsx(Text1, {
63
+ var title1 = param1.title, breadcrumbs = param1.breadcrumbs, dataAttributes = param1.dataAttributes, tmp = param1["aria-label"], ariaLabel = tmp === void 0 ? "Breadcrumb" : tmp;
64
+ var colors = useTheme().colors;
65
+ var classes = useStyles();
66
+ var isInverse = useIsInverseVariant();
67
+ return /*#__PURE__*/ _jsx("nav", _objectSpread({
68
+ "aria-label": ariaLabel
69
+ }, getPrefixedDataAttributes(dataAttributes), {
70
+ children: /*#__PURE__*/ _jsxs("ol", {
71
+ className: classes.list,
72
+ children: [
73
+ breadcrumbs.map(function(param, index) {
74
+ var title = param.title, url = param.url;
75
+ return /*#__PURE__*/ _jsxs("li", {
76
+ children: [
77
+ /*#__PURE__*/ _jsx(Text1, {
22
78
  regular: true,
23
- children: title
79
+ children: /*#__PURE__*/ _jsx(TextLink, {
80
+ to: url,
81
+ style: {
82
+ color: isInverse ? colors.textPrimaryInverse : colors.textPrimary
83
+ },
84
+ className: classes.link,
85
+ children: title
86
+ })
87
+ }),
88
+ /*#__PURE__*/ _jsx("span", {
89
+ role: "presentation",
90
+ children: /*#__PURE__*/ _jsx(Text1, {
91
+ regular: true,
92
+ children: BREADCRUMB_SEPARATOR
93
+ })
24
94
  })
25
- }),
26
- /*#__PURE__*/ _jsx(Text1, {
95
+ ]
96
+ }, index);
97
+ }),
98
+ /*#__PURE__*/ _jsx("li", {
99
+ children: /*#__PURE__*/ _jsx("a", {
100
+ "aria-current": "page",
101
+ href: "#",
102
+ className: classes.current,
103
+ onClick: function(e) {
104
+ e.preventDefault();
105
+ },
106
+ children: /*#__PURE__*/ _jsx(Text1, {
27
107
  regular: true,
28
- children: BREADCRUMB_SEPARATOR
108
+ color: isInverse ? colors.textSecondaryInverse : colors.textSecondary,
109
+ children: title1
29
110
  })
30
- ]
31
- }, index);
32
- }),
33
- /*#__PURE__*/ _jsx(Text1, {
34
- regular: true,
35
- color: theme.colors.textSecondary,
36
- children: title1
37
- })
38
- ]
39
- });
111
+ })
112
+ })
113
+ ]
114
+ })
115
+ }));
40
116
  };
41
117
  export default NavigationBreadcrumbs;
@@ -1,2 +1,2 @@
1
1
  // DO NOT EDIT THIS FILE. It's autogenerated by set-version.js
2
- export var PACKAGE_VERSION = "12.2.0";
2
+ export var PACKAGE_VERSION = "12.3.0";