@telefonica/mistica 14.14.0 → 14.16.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.
Files changed (192) hide show
  1. package/css/mistica.css +1 -1
  2. package/dist/avatar.css-mistica.js +1 -1
  3. package/dist/badge.css-mistica.js +3 -3
  4. package/dist/badge.js +19 -10
  5. package/dist/box.d.ts +1 -1
  6. package/dist/boxed.css-mistica.js +1 -1
  7. package/dist/button-layout.css-mistica.js +4 -4
  8. package/dist/button.css-mistica.js +19 -19
  9. package/dist/button.js +112 -112
  10. package/dist/callout.css-mistica.js +1 -1
  11. package/dist/card.css-mistica.js +23 -15
  12. package/dist/card.css.d.ts +4 -0
  13. package/dist/card.d.ts +3 -3
  14. package/dist/card.js +104 -95
  15. package/dist/carousel.css-mistica.js +13 -13
  16. package/dist/checkbox.css-mistica.js +5 -5
  17. package/dist/checkbox.js +10 -9
  18. package/dist/chip.css-mistica.js +4 -4
  19. package/dist/chip.d.ts +1 -0
  20. package/dist/chip.js +57 -41
  21. package/dist/circle.css-mistica.js +1 -1
  22. package/dist/credit-card-number-field.js +22 -19
  23. package/dist/cvv-field.js +60 -47
  24. package/dist/date-time-picker.d.ts +10 -0
  25. package/dist/date-time-picker.js +54 -35
  26. package/dist/dialog.css-mistica.js +3 -3
  27. package/dist/double-field.css-mistica.js +2 -2
  28. package/dist/empty-state-card.css-mistica.js +1 -1
  29. package/dist/empty-state.css-mistica.js +3 -3
  30. package/dist/feedback.css-mistica.js +3 -3
  31. package/dist/fixed-footer-layout.css-mistica.js +1 -1
  32. package/dist/fixed-footer-layout.js +79 -27
  33. package/dist/grid.css.d.ts +6 -6
  34. package/dist/hero.css-mistica.js +1 -1
  35. package/dist/highlighted-card.css-mistica.js +3 -3
  36. package/dist/hooks.d.ts +1 -1
  37. package/dist/icons/icon-cvv-amex.d.ts +1 -0
  38. package/dist/icons/icon-cvv-amex.js +5 -4
  39. package/dist/icons/icon-cvv-visa-mc.d.ts +1 -0
  40. package/dist/icons/icon-cvv-visa-mc.js +7 -6
  41. package/dist/image.css-mistica.js +1 -1
  42. package/dist/index.d.ts +1 -0
  43. package/dist/list.css-mistica.js +7 -7
  44. package/dist/list.js +90 -91
  45. package/dist/loading-bar.css-mistica.js +4 -4
  46. package/dist/maybe-dismissable.css-mistica.js +3 -3
  47. package/dist/menu.css-mistica.js +1 -1
  48. package/dist/navigation-bar.css-mistica.js +11 -11
  49. package/dist/navigation-breadcrumbs.css-mistica.js +1 -1
  50. package/dist/package-version.js +1 -1
  51. package/dist/password-field.css-mistica.js +1 -1
  52. package/dist/popover.css-mistica.js +3 -3
  53. package/dist/progress-bar.css-mistica.js +1 -1
  54. package/dist/radio-button.css-mistica.js +14 -14
  55. package/dist/radio-button.js +34 -33
  56. package/dist/responsive-layout.css-mistica.js +2 -2
  57. package/dist/screen-reader-only.css-mistica.js +1 -1
  58. package/dist/search-field.js +8 -8
  59. package/dist/select.css-mistica.js +11 -11
  60. package/dist/select.js +145 -142
  61. package/dist/skins/blau.js +10 -0
  62. package/dist/skins/defaults.js +10 -0
  63. package/dist/skins/movistar-legacy.js +10 -0
  64. package/dist/skins/movistar.js +10 -0
  65. package/dist/skins/o2.js +10 -0
  66. package/dist/skins/telefonica.js +12 -2
  67. package/dist/skins/types/index.d.ts +24 -8
  68. package/dist/skins/vivo-new.js +10 -0
  69. package/dist/skins/vivo.js +10 -0
  70. package/dist/snackbar.css-mistica.js +3 -3
  71. package/dist/sprinkles.css-mistica.js +226 -190
  72. package/dist/sprinkles.css.d.ts +16 -16
  73. package/dist/stepper.css-mistica.js +3 -3
  74. package/dist/stepper.js +26 -26
  75. package/dist/switch-component.css-mistica.js +15 -15
  76. package/dist/switch-component.js +16 -15
  77. package/dist/tabs.css-mistica.js +7 -7
  78. package/dist/tabs.js +32 -28
  79. package/dist/tag.css-mistica.js +1 -1
  80. package/dist/tag.js +15 -14
  81. package/dist/text-field-base.css-mistica.js +6 -6
  82. package/dist/text-field-base.js +44 -44
  83. package/dist/text-field-components.css-mistica.js +6 -6
  84. package/dist/text-link.css-mistica.js +5 -5
  85. package/dist/text.d.ts +6 -8
  86. package/dist/text.js +8 -7
  87. package/dist/theme-context-provider.js +25 -24
  88. package/dist/theme.d.ts +5 -2
  89. package/dist/theme.js +73 -24
  90. package/dist/title.js +27 -24
  91. package/dist/tooltip.css-mistica.js +6 -6
  92. package/dist/touchable.css-mistica.js +3 -3
  93. package/dist/utils/aspect-ratio-support.css-mistica.js +2 -2
  94. package/dist/video.css-mistica.js +1 -1
  95. package/dist/video.d.ts +7 -1
  96. package/dist/video.js +116 -76
  97. package/dist-es/avatar.css-mistica.js +1 -1
  98. package/dist-es/badge.css-mistica.js +2 -2
  99. package/dist-es/badge.js +29 -20
  100. package/dist-es/boxed.css-mistica.js +1 -1
  101. package/dist-es/button-layout.css-mistica.js +3 -3
  102. package/dist-es/button.css-mistica.js +9 -9
  103. package/dist-es/button.js +154 -154
  104. package/dist-es/callout.css-mistica.js +1 -1
  105. package/dist-es/card.css-mistica.js +4 -2
  106. package/dist-es/card.js +151 -142
  107. package/dist-es/carousel.css-mistica.js +2 -2
  108. package/dist-es/checkbox.css-mistica.js +5 -5
  109. package/dist-es/checkbox.js +21 -20
  110. package/dist-es/chip.css-mistica.js +4 -4
  111. package/dist-es/chip.js +77 -61
  112. package/dist-es/circle.css-mistica.js +1 -1
  113. package/dist-es/credit-card-number-field.js +23 -20
  114. package/dist-es/cvv-field.js +74 -61
  115. package/dist-es/date-time-picker.js +66 -47
  116. package/dist-es/dialog.css-mistica.js +3 -3
  117. package/dist-es/double-field.css-mistica.js +2 -2
  118. package/dist-es/empty-state-card.css-mistica.js +1 -1
  119. package/dist-es/empty-state.css-mistica.js +2 -2
  120. package/dist-es/feedback.css-mistica.js +2 -2
  121. package/dist-es/fixed-footer-layout.css-mistica.js +1 -1
  122. package/dist-es/fixed-footer-layout.js +94 -42
  123. package/dist-es/hero.css-mistica.js +1 -1
  124. package/dist-es/highlighted-card.css-mistica.js +3 -3
  125. package/dist-es/icons/icon-cvv-amex.js +5 -4
  126. package/dist-es/icons/icon-cvv-visa-mc.js +9 -8
  127. package/dist-es/image.css-mistica.js +1 -1
  128. package/dist-es/list.css-mistica.js +2 -2
  129. package/dist-es/list.js +114 -115
  130. package/dist-es/loading-bar.css-mistica.js +2 -2
  131. package/dist-es/maybe-dismissable.css-mistica.js +2 -2
  132. package/dist-es/menu.css-mistica.js +1 -1
  133. package/dist-es/navigation-bar.css-mistica.js +8 -8
  134. package/dist-es/navigation-breadcrumbs.css-mistica.js +1 -1
  135. package/dist-es/package-version.js +1 -1
  136. package/dist-es/password-field.css-mistica.js +1 -1
  137. package/dist-es/popover.css-mistica.js +2 -2
  138. package/dist-es/progress-bar.css-mistica.js +1 -1
  139. package/dist-es/radio-button.css-mistica.js +8 -8
  140. package/dist-es/radio-button.js +38 -37
  141. package/dist-es/responsive-layout.css-mistica.js +2 -2
  142. package/dist-es/screen-reader-only.css-mistica.js +1 -1
  143. package/dist-es/search-field.js +7 -7
  144. package/dist-es/select.css-mistica.js +10 -10
  145. package/dist-es/select.js +173 -170
  146. package/dist-es/skins/blau.js +10 -0
  147. package/dist-es/skins/defaults.js +10 -0
  148. package/dist-es/skins/movistar-legacy.js +10 -0
  149. package/dist-es/skins/movistar.js +10 -0
  150. package/dist-es/skins/o2.js +10 -0
  151. package/dist-es/skins/telefonica.js +12 -2
  152. package/dist-es/skins/vivo-new.js +10 -0
  153. package/dist-es/skins/vivo.js +10 -0
  154. package/dist-es/snackbar.css-mistica.js +2 -2
  155. package/dist-es/sprinkles.css-mistica.js +226 -190
  156. package/dist-es/stepper.css-mistica.js +2 -2
  157. package/dist-es/stepper.js +50 -50
  158. package/dist-es/style.css +1 -1
  159. package/dist-es/switch-component.css-mistica.js +12 -12
  160. package/dist-es/switch-component.js +37 -36
  161. package/dist-es/tabs.css-mistica.js +6 -6
  162. package/dist-es/tabs.js +49 -45
  163. package/dist-es/tag.css-mistica.js +1 -1
  164. package/dist-es/tag.js +28 -27
  165. package/dist-es/text-field-base.css-mistica.js +2 -2
  166. package/dist-es/text-field-base.js +64 -64
  167. package/dist-es/text-field-components.css-mistica.js +2 -2
  168. package/dist-es/text-link.css-mistica.js +5 -5
  169. package/dist-es/text.js +11 -10
  170. package/dist-es/theme-context-provider.js +56 -55
  171. package/dist-es/theme.js +69 -20
  172. package/dist-es/title.js +36 -33
  173. package/dist-es/tooltip.css-mistica.js +3 -3
  174. package/dist-es/touchable.css-mistica.js +2 -2
  175. package/dist-es/utils/aspect-ratio-support.css-mistica.js +2 -2
  176. package/dist-es/video.css-mistica.js +1 -1
  177. package/dist-es/video.js +121 -81
  178. package/package.json +3 -2
  179. package/dist/cvv-field.css-mistica.js +0 -21
  180. package/dist/cvv-field.css.d.ts +0 -2
  181. package/dist/cvv-field.css.ts.vanilla.css-mistica.js +0 -11
  182. package/dist/icons/icon-creditcard.d.ts +0 -7
  183. package/dist/icons/icon-creditcard.js +0 -33
  184. package/dist/icons/icon-info-cvv.d.ts +0 -7
  185. package/dist/icons/icon-info-cvv.js +0 -26
  186. package/dist/icons/icon-search.d.ts +0 -7
  187. package/dist/icons/icon-search.js +0 -32
  188. package/dist-es/cvv-field.css-mistica.js +0 -4
  189. package/dist-es/cvv-field.css.ts.vanilla.css-mistica.js +0 -2
  190. package/dist-es/icons/icon-creditcard.js +0 -24
  191. package/dist-es/icons/icon-info-cvv.js +0 -17
  192. package/dist-es/icons/icon-search.js +0 -23
@@ -10,10 +10,10 @@ function _export(target, all) {
10
10
  }
11
11
  _export(exports, {
12
12
  TextFieldBase: function() {
13
- return I;
13
+ return W;
14
14
  },
15
15
  TextFieldBaseAutosuggest: function() {
16
- return Ke;
16
+ return Ge;
17
17
  }
18
18
  });
19
19
  const _jsxruntime = require("react/jsx-runtime");
@@ -151,8 +151,8 @@ function _object_without_properties_loose(source, excluded) {
151
151
  }
152
152
  return target;
153
153
  }
154
- const I = /*#__PURE__*/ _react.forwardRef((_param, J)=>{
155
- var { error: c , helperText: A , label: n , inputProps: g , inputRef: y , defaultValue: o , value: t , onFocus: u , onBlur: p , inputComponent: h , prefix: m , startIcon: e , endIcon: a , endIconOverlay: x , shrinkLabel: D , multiline: L = !1 , focus: C , fieldRef: H , maxLength: S , id: K , autoComplete: M , fullWidth: G } = _param, r = _object_without_properties(_param, [
154
+ const W = /*#__PURE__*/ _react.forwardRef((_param, M)=>{
155
+ var { error: c , helperText: T , label: n , inputProps: m , inputRef: y , defaultValue: o , value: t , onFocus: u , onBlur: S , inputComponent: h , prefix: g , startIcon: e , endIcon: a , endIconOverlay: L , shrinkLabel: z , multiline: x = !1 , focus: C , fieldRef: D , maxLength: p , id: G , autoComplete: H , fullWidth: K } = _param, r = _object_without_properties(_param, [
156
156
  "error",
157
157
  "helperText",
158
158
  "label",
@@ -177,7 +177,7 @@ const I = /*#__PURE__*/ _react.forwardRef((_param, J)=>{
177
177
  "fullWidth"
178
178
  ]);
179
179
  var _ref;
180
- const F = (0, _hooks.useAriaId)(K), [f, d] = _react.useState(o != null && o.length || t != null && t.length ? "filled" : "default"), { isTabletOrSmaller: Q } = (0, _hooks.useScreenSize)(), [U, N] = _react.useState((_ref = o == null ? void 0 : o.length) !== null && _ref !== void 0 ? _ref : 0), E = !!n || !r.required, w = (0, _hooks.useTheme)(), P = D || (r.type === "date" || r.type === "datetime-local" || r.type === "month") && !r.required, [X, Y] = _react.useState("baseline");
180
+ const F = (0, _hooks.useAriaId)(G), [f, d] = _react.useState(o != null && o.length || t != null && t.length ? "filled" : "default"), { isTabletOrSmaller: J } = (0, _hooks.useScreenSize)(), [Q, N] = _react.useState((_ref = o == null ? void 0 : o.length) !== null && _ref !== void 0 ? _ref : 0), E = !!n || !r.required, U = (0, _hooks.useTheme)(), w = z || (r.type === "date" || r.type === "datetime-local" || r.type === "month") && !r.required, [X, Y] = _react.useState("baseline");
181
181
  (0, _hooks.useIsomorphicLayoutEffect)(()=>{
182
182
  (0, _platform.isSafari)() && Y("initial");
183
183
  }, []), _react.useEffect(()=>{
@@ -191,40 +191,40 @@ const I = /*#__PURE__*/ _react.forwardRef((_param, J)=>{
191
191
  }, [
192
192
  r.autoFocus
193
193
  ]);
194
- const Z = L ? "textarea" : "input", v = h ? {
194
+ const Z = x ? "textarea" : "input", $ = h ? {
195
195
  inputRef: y
196
196
  } : {
197
- ref: (0, _common.combineRefs)(J, y)
197
+ ref: (0, _common.combineRefs)(M, y)
198
198
  }, b = _object_spread(_object_spread_props(_object_spread({}, r), {
199
- maxLength: S,
200
- autoComplete: M
201
- }), g), k = P || f === "focused" || f === "filled", $ = k ? Q ? _textfieldcomponentscssmistica.LABEL_SCALE_MOBILE : _textfieldcomponentscssmistica.LABEL_SCALE_DESKTOP : 1, V = {
199
+ maxLength: p,
200
+ autoComplete: H
201
+ }), m), P = w || f === "focused" || f === "filled", v = P ? J ? _textfieldcomponentscssmistica.LABEL_SCALE_MOBILE : _textfieldcomponentscssmistica.LABEL_SCALE_DESKTOP : 1, V = {
202
202
  left: e ? 48 : _textfieldcomponentscssmistica.LABEL_LEFT_POSITION,
203
203
  // shrinking means applying a scale transformation, so width will be proportionally reduced.
204
204
  // Let's keep the original width.
205
- width: `calc(((100% - ${_textfieldcomponentscssmistica.LABEL_LEFT_POSITION + (e ? 48 : _textfieldcomponentscssmistica.LABEL_LEFT_POSITION)}px)) / ${$})`,
206
- paddingRight: a && !k ? 36 : 0
207
- }, _ = (0, _sprinklescssmistica.sprinkles)({
205
+ width: `calc(((100% - ${_textfieldcomponentscssmistica.LABEL_LEFT_POSITION + (e ? 48 : _textfieldcomponentscssmistica.LABEL_LEFT_POSITION)}px)) / ${v})`,
206
+ paddingRight: a && !P ? 36 : 0
207
+ }, k = (0, _sprinklescssmistica.sprinkles)({
208
208
  paddingRight: a ? 0 : 16,
209
- paddingLeft: m ? 0 : e ? 48 : 12
210
- }), ee = r.type === "password" && (0, _platform.isIos)(w.platformOverrides) && !(0, _platform.isRunningAcceptanceTest)(w.platformOverrides) ? "arial" : "inherit";
209
+ paddingLeft: g ? 0 : e ? 48 : 12
210
+ }), ee = r.type === "password" && !(0, _platform.isRunningAcceptanceTest)(U.platformOverrides) ? "Lucida Grande, Arial, sans-serif" : "inherit";
211
211
  return /* @__PURE__ */ (0, _jsxruntime.jsxs)(_textfieldcomponents.FieldContainer, {
212
212
  disabled: r.disabled,
213
213
  helperText: /* @__PURE__ */ (0, _jsxruntime.jsx)(_textfieldcomponents.HelperText, {
214
214
  error: c,
215
- leftText: A,
216
- rightText: L && S ? `${U}/${S}` : void 0
215
+ leftText: T,
216
+ rightText: x && p ? `${Q}/${p}` : void 0
217
217
  }),
218
- multiline: L,
219
- fullWidth: G,
220
- fieldRef: H,
218
+ multiline: x,
219
+ fullWidth: K,
220
+ fieldRef: D,
221
221
  readOnly: r.readOnly,
222
222
  children: [
223
223
  e && /* @__PURE__ */ (0, _jsxruntime.jsx)("div", {
224
224
  className: _textfieldbasecssmistica.startIcon,
225
225
  children: e
226
226
  }),
227
- m && /* @__PURE__ */ (0, _jsxruntime.jsx)("div", {
227
+ g && /* @__PURE__ */ (0, _jsxruntime.jsx)("div", {
228
228
  className: (0, _classnames.default)(_textfieldbasecssmistica.prefix, E ? _textfieldbasecssmistica.prefixWithLabel : _textfieldbasecssmistica.prefixWithoutLabel),
229
229
  style: {
230
230
  opacity: f === "default" ? 0 : 1,
@@ -234,34 +234,34 @@ const I = /*#__PURE__*/ _react.forwardRef((_param, J)=>{
234
234
  color: _skincontractcssmistica.vars.colors.textSecondary,
235
235
  regular: !0,
236
236
  wordBreak: !1,
237
- children: m
237
+ children: g
238
238
  })
239
239
  }),
240
240
  /* @__PURE__ */ (0, _jsxruntime.jsx)("div", {
241
241
  className: _textfieldbasecssmistica.fullWidth,
242
242
  style: {
243
- alignSelf: m ? "baseline" : "initial"
243
+ alignSelf: g ? "baseline" : "initial"
244
244
  },
245
245
  children: /* @__PURE__ */ (0, _jsxruntime.jsx)(_text.Text3, {
246
246
  as: "div",
247
247
  regular: !0,
248
- children: /*#__PURE__*/ _react.createElement(h || Z, _object_spread(_object_spread_props(_object_spread({}, v, b), {
248
+ children: /*#__PURE__*/ _react.createElement(h || Z, _object_spread(_object_spread_props(_object_spread({}, $, b), {
249
249
  id: F,
250
250
  style: _object_spread_props(_object_spread({}, b.style), {
251
251
  fontFamily: ee
252
252
  }),
253
- className: L ? (0, _classnames.default)(_textfieldbasecssmistica.textArea, E ? _textfieldbasecssmistica.textAreaWithLabel : _textfieldbasecssmistica.textAreaWithoutLabel, _) : (0, _classnames.default)(_textfieldbasecssmistica.input, E ? _textfieldbasecssmistica.inputWithLabel : _textfieldbasecssmistica.inputWithoutLabel, _, {
253
+ className: x ? (0, _classnames.default)(_textfieldbasecssmistica.textArea, E ? _textfieldbasecssmistica.textAreaWithLabel : _textfieldbasecssmistica.textAreaWithoutLabel, k) : (0, _classnames.default)(_textfieldbasecssmistica.input, E ? _textfieldbasecssmistica.inputWithLabel : _textfieldbasecssmistica.inputWithoutLabel, k, {
254
254
  [_textfieldbasecssmistica.inputFirefoxStyles]: (0, _platform.isFirefox)()
255
255
  }),
256
256
  onFocus: (l)=>{
257
257
  d("focused"), u == null || u(l);
258
258
  },
259
259
  onBlur: (l)=>{
260
- l.target.value.length > 0 ? d("filled") : d("default"), p == null || p(l);
260
+ l.target.value.length > 0 ? d("filled") : d("default"), S == null || S(l);
261
261
  },
262
262
  onChange: (l)=>{
263
- var q;
264
- S === void 0 || l.target.value.length <= S ? (N(l.target.value.length), l.target.value.length > 0 && f !== "focused" && d("filled"), (q = b.onChange) == null || q.call(b, l)) : (l.stopPropagation(), l.preventDefault());
263
+ var _;
264
+ p === void 0 || l.target.value.length <= p ? (N(l.target.value.length), l.target.value.length > 0 && f !== "focused" && d("filled"), (_ = b.onChange) == null || _.call(b, l)) : (l.stopPropagation(), l.preventDefault());
265
265
  },
266
266
  defaultValue: o,
267
267
  value: t
@@ -275,7 +275,7 @@ const I = /*#__PURE__*/ _react.forwardRef((_param, J)=>{
275
275
  error: c,
276
276
  forId: F,
277
277
  inputState: f,
278
- shrinkLabel: P,
278
+ shrinkLabel: w,
279
279
  optional: !r.required,
280
280
  children: n
281
281
  }),
@@ -283,41 +283,41 @@ const I = /*#__PURE__*/ _react.forwardRef((_param, J)=>{
283
283
  className: _textfieldbasecssmistica.endIcon,
284
284
  children: a
285
285
  }),
286
- x
286
+ L
287
287
  ]
288
288
  });
289
- }), Fe = /*#__PURE__*/ _react.lazy(()=>Promise.resolve().then(()=>/*#__PURE__*/ _interop_require_wildcard(require(/* webpackChunkName: "react-autosuggest" */ "react-autosuggest")))), Ke = /*#__PURE__*/ _react.forwardRef((_param, g)=>{
290
- var { getSuggestions: c , id: A } = _param, n = _object_without_properties(_param, [
289
+ }), Oe = /*#__PURE__*/ _react.lazy(()=>Promise.resolve().then(()=>/*#__PURE__*/ _interop_require_wildcard(require(/* webpackChunkName: "react-autosuggest" */ "react-autosuggest")))), Ge = /*#__PURE__*/ _react.forwardRef((_param, m)=>{
290
+ var { getSuggestions: c , id: T } = _param, n = _object_without_properties(_param, [
291
291
  "getSuggestions",
292
292
  "id"
293
293
  ]);
294
- const [y, o] = _react.useState([]), t = _react.useRef(null), { platformOverrides: u , texts: p } = (0, _hooks.useTheme)(), h = (0, _hooks.useAriaId)(A), m = (0, _hooks.useAriaId)();
294
+ const [y, o] = _react.useState([]), t = _react.useRef(null), { platformOverrides: u , texts: S } = (0, _hooks.useTheme)(), h = (0, _hooks.useAriaId)(T), g = (0, _hooks.useAriaId)();
295
295
  if (c && (n.value === void 0 || n.defaultValue !== void 0)) throw Error("Fields with suggestions must be used in controlled mode");
296
296
  return c ? /* @__PURE__ */ (0, _jsxruntime.jsx)(_react.Suspense, {
297
- fallback: /* @__PURE__ */ (0, _jsxruntime.jsx)(I, _object_spread_props(_object_spread({}, n), {
297
+ fallback: /* @__PURE__ */ (0, _jsxruntime.jsx)(W, _object_spread_props(_object_spread({}, n), {
298
298
  label: (0, _platform.isRunningAcceptanceTest)(u) ? "" : n.label,
299
299
  autoComplete: "off",
300
- ref: g,
300
+ ref: m,
301
301
  id: h
302
302
  })),
303
- children: /* @__PURE__ */ (0, _jsxruntime.jsx)(Fe, {
304
- id: m,
303
+ children: /* @__PURE__ */ (0, _jsxruntime.jsx)(Oe, {
304
+ id: g,
305
305
  inputProps: _object_spread_props(_object_spread({}, n), {
306
306
  id: h,
307
307
  autoComplete: "off",
308
308
  // @ts-expect-error Autosuggest expects slightly different types
309
309
  onChange: (e, param)=>{
310
310
  let { newValue: a } = param;
311
- var x;
311
+ var L;
312
312
  e.target = _object_spread_props(_object_spread({}, e.target), {
313
313
  value: a
314
314
  }), e.currentTarget = _object_spread_props(_object_spread({}, e.currentTarget), {
315
315
  value: a
316
- }), (x = n.onChange) == null || x.call(n, e);
316
+ }), (L = n.onChange) == null || L.call(n, e);
317
317
  }
318
318
  }),
319
- renderInputComponent: (e)=>/* @__PURE__ */ (0, _jsxruntime.jsx)(I, _object_spread_props(_object_spread({}, e), {
320
- inputRef: (0, _common.combineRefs)(t, n.inputRef, g)
319
+ renderInputComponent: (e)=>/* @__PURE__ */ (0, _jsxruntime.jsx)(W, _object_spread_props(_object_spread({}, e), {
320
+ inputRef: (0, _common.combineRefs)(t, n.inputRef, m)
321
321
  })),
322
322
  suggestions: y,
323
323
  onSuggestionsFetchRequested: (param)=>{
@@ -344,12 +344,12 @@ const I = /*#__PURE__*/ _react.forwardRef((_param, J)=>{
344
344
  width: t.current ? t.current.clientWidth + 2 : 0
345
345
  },
346
346
  className: _textfieldbasecssmistica.suggestionsContainer,
347
- "aria-label": `${n.label} ${p.menuLabelSuffix}`,
347
+ "aria-label": `${n.label} ${S.menuLabelSuffix}`,
348
348
  children: e.children
349
349
  }))
350
350
  })
351
- }) : /* @__PURE__ */ (0, _jsxruntime.jsx)(I, _object_spread_props(_object_spread({}, n), {
351
+ }) : /* @__PURE__ */ (0, _jsxruntime.jsx)(W, _object_spread_props(_object_spread({}, n), {
352
352
  id: h,
353
- ref: g
353
+ ref: m
354
354
  }));
355
355
  });
@@ -37,16 +37,16 @@ _export(exports, {
37
37
  return t;
38
38
  },
39
39
  fullWidth: function() {
40
- return k;
40
+ return u;
41
41
  },
42
42
  helperContainer: function() {
43
- return u;
43
+ return k;
44
44
  },
45
45
  helperText: function() {
46
- return L;
46
+ return d;
47
47
  },
48
48
  labelContainer: function() {
49
- return d;
49
+ return L;
50
50
  },
51
51
  labelText: function() {
52
52
  return E;
@@ -61,9 +61,9 @@ _export(exports, {
61
61
  return o;
62
62
  },
63
63
  shrinked: function() {
64
- return b;
64
+ return p;
65
65
  }
66
66
  });
67
67
  require("./sprinkles.css.ts.vanilla.css-mistica.js");
68
68
  require("./text-field-components.css.ts.vanilla.css-mistica.js");
69
- var _ = 328, a = 12, n = 0.78, f = 0.75, e = "_15k6ur97", y = "_1y2v1nfak _1y2v1nfa1 _1y2v1nf64 _1y2v1nfaa _1y2v1nf5z", i = "_15k6ur96 _1y2v1nf64 _1y2v1nf6a", l = "_15k6ur9e", t = "_15k6ur9d _1y2v1nf92", k = "_1y2v1nf8b", u = "_1y2v1nf7n _1y2v1nf82 _1y2v1nf64", L = "_15k6ur9g", d = "_15k6ur91 _1y2v1nf60 _1y2v1nfam _1y2v1nf8y _1y2v1nf64 _1y2v1nf69 _1y2v1nfb4", E = "_15k6ur93 _1y2v1nfak _1y2v1nf6n", T = "_15k6ur9h", h = "_15k6ur99 _1y2v1nf8b", o = "_15k6ur9i", b = "_15k6ur94";
69
+ var _ = 328, a = 12, n = 0.78, f = 0.75, e = "_15k6ur97", y = "_1y2v1nfas _1y2v1nfa9 _1y2v1nf64 _1y2v1nfai _1y2v1nf5z", i = "_15k6ur96 _1y2v1nf64 _1y2v1nf6a", l = "_15k6ur9e", t = "_15k6ur9d _1y2v1nf98", u = "_1y2v1nf8f", k = "_1y2v1nf7p _1y2v1nf85 _1y2v1nf64", d = "_15k6ur9g", L = "_15k6ur91 _1y2v1nf60 _1y2v1nfau _1y2v1nf94 _1y2v1nf64 _1y2v1nf69 _1y2v1nfbd", E = "_15k6ur93 _1y2v1nfas _1y2v1nf6n", T = "_15k6ur9h", h = "_15k6ur99 _1y2v1nf8f", o = "_15k6ur9i", p = "_15k6ur94";
@@ -5,13 +5,13 @@ Object.defineProperty(exports, "__esModule", {
5
5
  Object.defineProperty(exports, "variants", {
6
6
  enumerable: true,
7
7
  get: function() {
8
- return v;
8
+ return r;
9
9
  }
10
10
  });
11
11
  require("./sprinkles.css.ts.vanilla.css-mistica.js");
12
12
  require("./text-link.css.ts.vanilla.css-mistica.js");
13
- var v = {
14
- default: "_1m1n0pr1 _1y2v1nf8c _1y2v1nf67 _1y2v1nfaj _1y2v1nf27",
15
- inverseLight: "_1m1n0pr6 _1m1n0pr1 _1y2v1nf8c _1y2v1nf67 _1y2v1nfaj _1y2v1nf28",
16
- inverseDark: "_1m1n0pr7 _1m1n0pr1 _1y2v1nf8c _1y2v1nf67 _1y2v1nfaj _1y2v1nf27"
13
+ var r = {
14
+ default: "_1m1n0pr1 _1y2v1nf8g _1y2v1nf67 _1y2v1nfar _1y2v1nf27",
15
+ inverseLight: "_1m1n0pr6 _1m1n0pr1 _1y2v1nf8g _1y2v1nf67 _1y2v1nfar _1y2v1nf28",
16
+ inverseDark: "_1m1n0pr7 _1m1n0pr1 _1y2v1nf8g _1y2v1nf67 _1y2v1nfar _1y2v1nf27"
17
17
  };
package/dist/text.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import * as React from 'react';
2
+ import type { ExclusifyUnion } from './utils/utility-types';
2
3
  import type { FontWeight } from './skins/types';
3
4
  import type { DataAttributes } from './utils/types';
4
5
  export interface TextPresetProps {
@@ -38,21 +39,18 @@ interface TextProps extends TextPresetProps {
38
39
  export declare const Text: React.FC<TextProps>;
39
40
  interface LightProps extends TextPresetProps {
40
41
  light: boolean;
41
- regular?: undefined;
42
- medium?: undefined;
43
42
  }
44
43
  interface MediumProps extends TextPresetProps {
45
- light?: undefined;
46
- regular?: undefined;
47
44
  medium: boolean;
48
45
  }
49
46
  interface RegularProps extends TextPresetProps {
50
- light?: undefined;
51
47
  regular: boolean;
52
- medium?: undefined;
53
48
  }
54
- type RegularMediumProps = RegularProps | MediumProps;
55
- type LightRegularMediumProps = LightProps | RegularProps | MediumProps;
49
+ interface RestrictedWeightTextProps<T> extends TextPresetProps {
50
+ weight: T;
51
+ }
52
+ type RegularMediumProps = ExclusifyUnion<RegularProps | MediumProps | RestrictedWeightTextProps<'regular' | 'medium'>>;
53
+ type LightRegularMediumProps = ExclusifyUnion<LightProps | RegularProps | MediumProps | RestrictedWeightTextProps<'light' | 'regular' | 'medium'>>;
56
54
  export declare const Text10: React.FC<TextPresetProps>;
57
55
  export declare const Text9: React.FC<TextPresetProps>;
58
56
  export declare const Text8: React.FC<TextPresetProps>;
package/dist/text.js CHANGED
@@ -185,7 +185,7 @@ const J = {
185
185
  medium: 500,
186
186
  bold: 700
187
187
  }, K = (e)=>e === !0 ? 1 : e || "initial", n = (param)=>{
188
- let { weight: e , color: i = _skincontractcssmistica.vars.colors.textPrimary , decoration: t , truncate: o , transform: g , wordBreak: c = !0 , hyphens: f , as: z = "span" , children: h , size: d , mobileSize: u = d , desktopSize: b = d , lineHeight: T , mobileLineHeight: k = T , desktopLineHeight: L = T , letterSpacing: H , textAlign: w , textShadow: v , id: A , role: P , "aria-level": y , dataAttributes: I } = param;
188
+ let { weight: e , color: i = _skincontractcssmistica.vars.colors.textPrimary , decoration: t , truncate: o , transform: g , wordBreak: c = !0 , hyphens: S , as: z = "span" , children: h , size: u , mobileSize: d = u , desktopSize: b = u , lineHeight: T , mobileLineHeight: f = T , desktopLineHeight: k = T , letterSpacing: w , textAlign: H , textShadow: v , id: A , role: P , "aria-level": y , dataAttributes: I } = param;
189
189
  const W = (0, _themevariantcontext.useIsInverseVariant)(), V = K(o), C = {
190
190
  [_skincontractcssmistica.vars.colors.textPrimary]: _skincontractcssmistica.vars.colors.textPrimaryInverse,
191
191
  [_skincontractcssmistica.vars.colors.textSecondary]: _skincontractcssmistica.vars.colors.textSecondaryInverse,
@@ -196,10 +196,10 @@ const J = {
196
196
  [_textcssmistica.truncateToOneLine]: o === 1 || o === !0,
197
197
  [_textcssmistica.truncateToMoreThanOneLine]: o && o > 1
198
198
  }), M = (0, _dynamic.assignInlineVars)({
199
- [_textcssmistica.vars.mobileSize]: u ? (0, _css.pxToRem)(u) : "",
200
- [_textcssmistica.vars.mobileLineHeight]: k ? (0, _css.pxToRem)(k) : "",
199
+ [_textcssmistica.vars.mobileSize]: d ? (0, _css.pxToRem)(d) : "",
200
+ [_textcssmistica.vars.mobileLineHeight]: f ? (0, _css.pxToRem)(f) : "",
201
201
  [_textcssmistica.vars.desktopSize]: b ? (0, _css.pxToRem)(b) : "",
202
- [_textcssmistica.vars.desktopLineHeight]: L ? (0, _css.pxToRem)(L) : ""
202
+ [_textcssmistica.vars.desktopLineHeight]: k ? (0, _css.pxToRem)(k) : ""
203
203
  }), O = o ? (0, _dynamic.assignInlineVars)({
204
204
  [_textcssmistica.vars.lineClamp]: String(V)
205
205
  }) : {};
@@ -211,14 +211,14 @@ const J = {
211
211
  "aria-level": y
212
212
  }, (0, _dom.getPrefixedDataAttributes)(I)), {
213
213
  style: _object_spread_props(_object_spread({}, M, O), {
214
- hyphens: f,
215
- letterSpacing: H,
214
+ hyphens: S,
215
+ letterSpacing: w,
216
216
  fontWeight: e ? J[e] : "inherit",
217
217
  textTransform: g || "inherit",
218
218
  textDecoration: t !== null && t !== void 0 ? t : "inherit",
219
219
  overflowWrap: c ? "anywhere" : "inherit",
220
220
  color: W ? (_C_i = C[i]) !== null && _C_i !== void 0 ? _C_i : i : i,
221
- textAlign: w,
221
+ textAlign: H,
222
222
  textShadow: v
223
223
  })
224
224
  }), h);
@@ -226,6 +226,7 @@ const J = {
226
226
  if (e.light) return "light";
227
227
  if (e.regular) return "regular";
228
228
  if (e.medium) return "medium";
229
+ if (e.weight) return e.weight;
229
230
  }, s = (param)=>{
230
231
  let { forceMobileSizes: e , mobileSize: i , mobileLineHeight: t , desktopSize: o , desktopLineHeight: g } = param;
231
232
  return e ? {
@@ -10,10 +10,10 @@ function _export(target, all) {
10
10
  }
11
11
  _export(exports, {
12
12
  default: function() {
13
- return bt;
13
+ return gt;
14
14
  },
15
15
  useIsOsDarkModeEnabled: function() {
16
- return Y;
16
+ return Z;
17
17
  }
18
18
  });
19
19
  const _jsxruntime = require("react/jsx-runtime");
@@ -106,27 +106,27 @@ function _object_spread(target) {
106
106
  }
107
107
  return target;
108
108
  }
109
- const X = "(prefers-color-scheme: dark)", Y = ()=>{
109
+ const Y = "(prefers-color-scheme: dark)", Z = ()=>{
110
110
  const [t, c] = _react.useState(!1);
111
111
  return (0, _hooks.useIsomorphicLayoutEffect)(()=>{
112
112
  if (!window.matchMedia) return;
113
- const o = window.matchMedia(X), s = ()=>{
113
+ const o = window.matchMedia(Y), s = ()=>{
114
114
  c(o.matches);
115
115
  };
116
116
  return o.addListener(s), s(), ()=>o.removeListener(s);
117
117
  }, []), t;
118
- }, Z = ()=>(t)=>t, tt = (t)=>({
118
+ }, tt = ()=>(t)=>t, et = (t)=>({
119
119
  headerMobileHeight: (t == null ? void 0 : t.headerMobileHeight) === "mistica" ? _theme.NAVBAR_HEIGHT_MOBILE : t == null ? void 0 : t.headerMobileHeight
120
- }), et = (param)=>{
120
+ }), rt = (param)=>{
121
121
  let { theme: t , children: c , as: o } = param;
122
122
  var _t_colorScheme, _t_skin_borderRadii;
123
- const s = _react.useRef(1), I = _react.useCallback(()=>`aria-id-hook-${s.current++}`, []), E = Y(), m = (_t_colorScheme = t.colorScheme) !== null && _t_colorScheme !== void 0 ? _t_colorScheme : "auto", R = t.skin.colors, A = _object_spread({}, t.skin.colors, t.skin.darkModeColors), u = m === "auto" && E || m === "dark", k = u ? A : R, p = _react.useMemo(()=>{
124
- var i, n, d, x, f, P, b, g, M, T, C;
123
+ const s = _react.useRef(1), E = _react.useCallback(()=>`aria-id-hook-${s.current++}`, []), L = Z(), k = (_t_colorScheme = t.colorScheme) !== null && _t_colorScheme !== void 0 ? _t_colorScheme : "auto", R = t.skin.colors, H = _object_spread({}, t.skin.colors, t.skin.darkModeColors), u = k === "auto" && L || k === "dark", m = u ? H : R, p = _react.useMemo(()=>{
124
+ var i, n, d, x, f, v, P, g, M, C, T, D;
125
125
  const l = _object_spread({
126
126
  platform: (0, _platform.getPlatform)(),
127
127
  insideNovumNativeApp: (0, _platform.isInsideNovumNativeApp)()
128
128
  }, t.platformOverrides);
129
- var _t_Link, _t_useHrefDecorator;
129
+ var _t_useHrefDecorator;
130
130
  return {
131
131
  skinName: t.skin.name,
132
132
  i18n: t.i18n,
@@ -136,30 +136,31 @@ const X = "(prefers-color-scheme: dark)", Y = ()=>{
136
136
  logEvent: ()=>Promise.resolve(),
137
137
  eventFormat: "universal-analytics"
138
138
  }, t.analytics),
139
- dimensions: _object_spread({}, _theme.dimensions, tt(t.dimensions)),
139
+ dimensions: _object_spread({}, _theme.dimensions, et(t.dimensions)),
140
140
  textPresets: {
141
141
  text5: _object_spread({}, _defaults.defaultTextPresetsConfig.text5, (i = t.skin.textPresets) == null ? void 0 : i.text5),
142
142
  text6: _object_spread({}, _defaults.defaultTextPresetsConfig.text6, (n = t.skin.textPresets) == null ? void 0 : n.text6),
143
143
  text7: _object_spread({}, _defaults.defaultTextPresetsConfig.text7, (d = t.skin.textPresets) == null ? void 0 : d.text7),
144
144
  text8: _object_spread({}, _defaults.defaultTextPresetsConfig.text8, (x = t.skin.textPresets) == null ? void 0 : x.text8),
145
145
  text9: _object_spread({}, _defaults.defaultTextPresetsConfig.text9, (f = t.skin.textPresets) == null ? void 0 : f.text9),
146
- text10: _object_spread({}, _defaults.defaultTextPresetsConfig.text10, (P = t.skin.textPresets) == null ? void 0 : P.text10),
147
- cardTitle: _object_spread({}, _defaults.defaultTextPresetsConfig.cardTitle, (b = t.skin.textPresets) == null ? void 0 : b.cardTitle),
146
+ text10: _object_spread({}, _defaults.defaultTextPresetsConfig.text10, (v = t.skin.textPresets) == null ? void 0 : v.text10),
147
+ cardTitle: _object_spread({}, _defaults.defaultTextPresetsConfig.cardTitle, (P = t.skin.textPresets) == null ? void 0 : P.cardTitle),
148
148
  button: _object_spread({}, _defaults.defaultTextPresetsConfig.button, (g = t.skin.textPresets) == null ? void 0 : g.button),
149
149
  link: _object_spread({}, _defaults.defaultTextPresetsConfig.link, (M = t.skin.textPresets) == null ? void 0 : M.link),
150
- title1: _object_spread({}, _defaults.defaultTextPresetsConfig.title1, (T = t.skin.textPresets) == null ? void 0 : T.title1),
151
- indicator: _object_spread({}, _defaults.defaultTextPresetsConfig.indicator, (C = t.skin.textPresets) == null ? void 0 : C.indicator)
150
+ title1: _object_spread({}, _defaults.defaultTextPresetsConfig.title1, (C = t.skin.textPresets) == null ? void 0 : C.title1),
151
+ indicator: _object_spread({}, _defaults.defaultTextPresetsConfig.indicator, (T = t.skin.textPresets) == null ? void 0 : T.indicator),
152
+ tabsLabel: _object_spread({}, _defaults.defaultTextPresetsConfig.tabsLabel, (D = t.skin.textPresets) == null ? void 0 : D.tabsLabel)
152
153
  },
153
- Link: (_t_Link = t.Link) !== null && _t_Link !== void 0 ? _t_Link : _theme.AnchorLink,
154
+ Link: (0, _theme.getMisticaLinkComponent)(t.Link),
154
155
  isDarkMode: u,
155
156
  isIos: (0, _platform.getPlatform)(l) === "ios",
156
- useHrefDecorator: (_t_useHrefDecorator = t.useHrefDecorator) !== null && _t_useHrefDecorator !== void 0 ? _t_useHrefDecorator : Z,
157
+ useHrefDecorator: (_t_useHrefDecorator = t.useHrefDecorator) !== null && _t_useHrefDecorator !== void 0 ? _t_useHrefDecorator : tt,
157
158
  useId: t.useId
158
159
  };
159
160
  }, [
160
161
  t,
161
162
  u
162
- ]), H = Object.fromEntries(Object.entries(k).map((param)=>{
163
+ ]), S = Object.fromEntries(Object.entries(m).map((param)=>{
163
164
  let [l, i] = param;
164
165
  let n = "";
165
166
  if (i.startsWith("#")) {
@@ -170,9 +171,9 @@ const X = "(prefers-color-scheme: dark)", Y = ()=>{
170
171
  l,
171
172
  n
172
173
  ];
173
- })), v = (0, _dynamic.assignInlineVars)(_skincontractcssmistica.vars, {
174
- colors: k,
175
- rawColors: H,
174
+ })), b = (0, _dynamic.assignInlineVars)(_skincontractcssmistica.vars, {
175
+ colors: m,
176
+ rawColors: S,
176
177
  borderRadii: (_t_skin_borderRadii = t.skin.borderRadii) !== null && _t_skin_borderRadii !== void 0 ? _t_skin_borderRadii : _defaults.defaultBorderRadiiConfig
177
178
  });
178
179
  return /* @__PURE__ */ (0, _jsxruntime.jsx)(_tabfocus.default, {
@@ -185,15 +186,15 @@ const X = "(prefers-color-scheme: dark)", Y = ()=>{
185
186
  children: /* @__PURE__ */ (0, _jsxruntime.jsx)(_aspectratiosupport.AspectRatioSupportProvider, {
186
187
  children: /* @__PURE__ */ (0, _jsxruntime.jsx)(_documentvisibility.DocumentVisibilityProvider, {
187
188
  children: /* @__PURE__ */ (0, _jsxruntime.jsx)(_ariaidgettercontext.default.Provider, {
188
- value: I,
189
+ value: E,
189
190
  children: /* @__PURE__ */ (0, _jsxruntime.jsx)(_screensizecontextprovider.default, {
190
191
  children: /* @__PURE__ */ (0, _jsxruntime.jsx)(_dialog.default, {
191
192
  children: o ? /*#__PURE__*/ _react.createElement(o, {
192
- style: v
193
+ style: b
193
194
  }, c) : /* @__PURE__ */ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {
194
195
  children: [
195
196
  (process.env.NODE_ENV !== "test" || process.env.SSR_TEST) && /* @__PURE__ */ (0, _jsxruntime.jsx)("style", {
196
- children: `:root {${v}}`
197
+ children: `:root {${b}}`
197
198
  }),
198
199
  c
199
200
  ]
@@ -207,4 +208,4 @@ const X = "(prefers-color-scheme: dark)", Y = ()=>{
207
208
  })
208
209
  })
209
210
  });
210
- }, bt = et;
211
+ }, gt = rt;
package/dist/theme.d.ts CHANGED
@@ -69,7 +69,7 @@ type LinkComponent = React.ComponentType<{
69
69
  onKeyDown?: React.KeyboardEventHandler<HTMLAnchorElement>;
70
70
  children: React.ReactNode;
71
71
  }>;
72
- export declare const AnchorLink: LinkComponent;
72
+ export declare const getMisticaLinkComponent: (Link?: ThemeConfig['Link']) => LinkComponent;
73
73
  export type ColorScheme = 'dark' | 'light' | 'auto';
74
74
  export type EventFormat = 'universal-analytics' | 'google-analytics-4';
75
75
  export type ThemeConfig = Readonly<{
@@ -92,7 +92,10 @@ export type ThemeConfig = Readonly<{
92
92
  dimensions?: Readonly<{
93
93
  headerMobileHeight: number | 'mistica';
94
94
  }>;
95
- Link?: LinkComponent;
95
+ Link?: LinkComponent | {
96
+ type: 'ReactRouter5' | 'ReactRouter6' | 'Next12' | 'Next13';
97
+ Component: React.ComponentType<any>;
98
+ };
96
99
  useHrefDecorator?: () => (href: string) => string;
97
100
  useId?: () => string;
98
101
  enableTabFocus?: boolean;