@gympass/yoga 7.107.1 → 7.108.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.
@@ -28,7 +28,8 @@ const Button = ({
28
28
  borders,
29
29
  radii,
30
30
  colors,
31
- fontWeights
31
+ fontWeights,
32
+ lineHeights
32
33
  }) => ({
33
34
  padding: {
34
35
  default: {
@@ -49,7 +50,11 @@ const Button = ({
49
50
  default: fontSizes.medium,
50
51
  small: fontSizes.small
51
52
  },
52
- weight: fontWeights.medium
53
+ weight: fontWeights.medium,
54
+ lineHeight: {
55
+ default: lineHeights.medium,
56
+ small: lineHeights.xsmall
57
+ }
53
58
  },
54
59
  border: {
55
60
  radius: radii.circle
@@ -59,16 +59,26 @@ var Button_exports = {};
59
59
  __export(Button_exports, {
60
60
  ButtonContainer: () => ButtonContainer,
61
61
  Label: () => Label,
62
- default: () => ButtonWithTouchable
62
+ default: () => Button_default
63
63
  });
64
64
  module.exports = __toCommonJS(Button_exports);
65
65
  var import_jsx_runtime = require("react/jsx-runtime");
66
66
  var import_react = __toESM(require("react"));
67
- var import_styled_components = __toESM(require("styled-components"));
68
67
  var import_prop_types = require("prop-types");
68
+ var import_styled_components = __toESM(require("styled-components"));
69
69
  var import_withTouchable = __toESM(require("./withTouchable"));
70
70
  var import_Text = __toESM(require("../../Text"));
71
- const Label = (0, import_styled_components.default)(import_Text.default.Medium)`
71
+ const Label = (0, import_styled_components.default)(import_Text.default).attrs(
72
+ ({
73
+ theme: {
74
+ yoga: {
75
+ components: { button }
76
+ }
77
+ }
78
+ }) => ({
79
+ fontWeight: button.font.weight
80
+ })
81
+ )`
72
82
  text-align: center;
73
83
  ${({
74
84
  small,
@@ -80,6 +90,7 @@ const Label = (0, import_styled_components.default)(import_Text.default.Medium)`
80
90
  }
81
91
  }) => `
82
92
  font-size: ${small ? button.font.size.small : button.font.size.default}px;
93
+ line-height: ${small ? button.font.lineHeight.small : button.font.lineHeight.default}px;
83
94
  color: ${color};
84
95
  `}
85
96
  `;
@@ -224,6 +235,7 @@ Button.defaultProps = {
224
235
  icon: void 0
225
236
  };
226
237
  const ButtonWithTouchable = (0, import_withTouchable.default)((0, import_styled_components.withTheme)(Button));
238
+ var Button_default = ButtonWithTouchable;
227
239
  // Annotate the CommonJS export names for ESM import in node:
228
240
  0 && (module.exports = {
229
241
  ButtonContainer,
@@ -30,6 +30,14 @@ var import__ = __toESM(require(".."));
30
30
  describe("<Button />", () => {
31
31
  describe("Snapshots", () => {
32
32
  describe("primary buttons", () => {
33
+ describe("with v3theme", () => {
34
+ it("should match snapshot with v3theme Button", () => {
35
+ const { toJSON } = (0, import_react_native.render)(
36
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Theme.default, { theme: import_Theme.v3theme, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import__.default, {}) })
37
+ );
38
+ expect(toJSON()).toMatchSnapshot();
39
+ });
40
+ });
33
41
  describe("Without props", () => {
34
42
  it("should match snapshot with default Button", () => {
35
43
  const { toJSON } = (0, import_react_native.render)(
@@ -30,6 +30,14 @@ var import__ = __toESM(require(".."));
30
30
  describe("<Button />", () => {
31
31
  describe("Snapshots", () => {
32
32
  describe("primary buttons", () => {
33
+ describe("with v3theme", () => {
34
+ it("should match snapshot with v3theme Button", () => {
35
+ const { container } = (0, import_react2.render)(
36
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Theme.default, { theme: import_Theme.v3theme, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import__.default, {}) })
37
+ );
38
+ expect(container).toMatchSnapshot();
39
+ });
40
+ });
33
41
  describe("Without props", () => {
34
42
  it("should match snapshot with default Button", () => {
35
43
  const { container } = (0, import_react2.render)(
@@ -74,7 +74,7 @@ const StyledButton = import_styled_components.default.button`
74
74
  font-weight: ${button.font.weight};
75
75
  font-family: ${baseFont.family};
76
76
  letter-spacing: normal;
77
- line-height: 1;
77
+ line-height: ${small ? button.font.lineHeight.small : button.font.lineHeight.default}px;
78
78
  text-decoration: none;
79
79
 
80
80
  svg {
@@ -103,7 +103,7 @@ const StyledButton = import_styled_components.default.button`
103
103
  }
104
104
 
105
105
  ${disabled ? `
106
-
106
+
107
107
  background-color ${button.types.contained.backgroundColor.disabled};
108
108
  color: ${button.types.contained.font.disabled.color};
109
109
  pointer-events: none;
@@ -113,7 +113,7 @@ const StyledButton = import_styled_components.default.button`
113
113
  }
114
114
 
115
115
  cursor: not-allowed;
116
-
116
+
117
117
  ` : ""}
118
118
 
119
119
  ${inverted ? `
@@ -21,7 +21,7 @@ __export(Tag_theme_exports, {
21
21
  default: () => Tag_theme_default
22
22
  });
23
23
  module.exports = __toCommonJS(Tag_theme_exports);
24
- const Tag = ({ spacing, fontSizes, fontWeights, radii, borders }) => ({
24
+ const Tag = ({ spacing, radii, borders }) => ({
25
25
  icon: {
26
26
  size: {
27
27
  default: spacing.small,
@@ -31,11 +31,6 @@ const Tag = ({ spacing, fontSizes, fontWeights, radii, borders }) => ({
31
31
  right: "xxxsmall"
32
32
  }
33
33
  },
34
- font: {
35
- size: fontSizes.xsmall,
36
- lineHeight: fontSizes.medium,
37
- weight: fontWeights.medium
38
- },
39
34
  padding: {
40
35
  default: {
41
36
  top: spacing.xxxsmall,
@@ -96,36 +96,35 @@ const StyledTextInformative = (0, import_styled_components.default)(import_Tag.S
96
96
  ${({
97
97
  theme: {
98
98
  yoga: {
99
- colors: { text },
100
- components: { tag }
99
+ colors: { text }
101
100
  }
102
101
  }
103
102
  }) => `
104
103
  color: ${text.primary};
105
-
106
- font-size: ${tag.font.size}px;
107
- line-height: ${tag.font.lineHeight}px;
108
- font-weight: ${tag.font.weight};
109
104
  `}
110
105
  `;
111
106
  const TagInformative = (_a) => {
112
107
  var _b = _a, {
113
108
  children,
114
109
  icon,
110
+ ellipsis,
115
111
  theme: {
116
112
  yoga: {
117
113
  colors: { text },
118
114
  components: { tag }
119
115
  }
120
116
  },
121
- small
122
- } = _b, props = __objRest(_b, [
117
+ small,
118
+ variant
119
+ } = _b, rest = __objRest(_b, [
123
120
  "children",
124
121
  "icon",
122
+ "ellipsis",
125
123
  "theme",
126
- "small"
124
+ "small",
125
+ "variant"
127
126
  ]);
128
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Informative, __spreadProps(__spreadValues({ small }, props), { children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(Wrapper, { children: [
127
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Informative, __spreadProps(__spreadValues({ variant, small }, rest), { children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(Wrapper, { children: [
129
128
  icon && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
130
129
  import_Icon.default,
131
130
  {
@@ -135,7 +134,7 @@ const TagInformative = (_a) => {
135
134
  marginRight: tag.icon.margin.right
136
135
  }
137
136
  ),
138
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledTextInformative, { children })
137
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledTextInformative, { numberOfLines: ellipsis ? 1 : void 0, children })
139
138
  ] }) }));
140
139
  };
141
140
  TagInformative.propTypes = {
@@ -144,12 +143,14 @@ TagInformative.propTypes = {
144
143
  icon: import_prop_types.func,
145
144
  children: import_prop_types.node.isRequired,
146
145
  /** Can send small to use this variant */
147
- small: import_prop_types.bool
146
+ small: import_prop_types.bool,
147
+ ellipsis: import_prop_types.bool
148
148
  };
149
149
  TagInformative.defaultProps = {
150
150
  variant: "neutral",
151
151
  icon: void 0,
152
- small: false
152
+ small: false,
153
+ ellipsis: false
153
154
  };
154
155
  TagInformative.displayName = "Tag.Informative";
155
156
  var Informative_default = (0, import_styled_components.withTheme)(TagInformative);
@@ -111,7 +111,7 @@ const StyledTag = import_styled_components.default.View`
111
111
  `;
112
112
  const StyledText = (0, import_styled_components.default)((_a) => {
113
113
  var _b = _a, { variant } = _b, rest = __objRest(_b, ["variant"]);
114
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Text.default.Medium, __spreadValues({}, rest));
114
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Text.default.Overline, __spreadValues({}, rest));
115
115
  })`
116
116
  ${({
117
117
  variant,
@@ -120,31 +120,29 @@ const StyledText = (0, import_styled_components.default)((_a) => {
120
120
  colors: {
121
121
  text,
122
122
  feedback: { [variant]: color = { dark: text.secondary } }
123
- },
124
- components: { tag }
123
+ }
125
124
  }
126
125
  }
127
126
  }) => `
128
127
  color: ${color.dark};
129
-
130
- font-size: ${tag.font.size}px;
131
- line-height: ${tag.font.lineHeight}px;
132
128
  `}
133
129
  `;
134
130
  const Tag = (_c) => {
135
- var _d = _c, { children, variant, small } = _d, props = __objRest(_d, ["children", "variant", "small"]);
136
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledTag, __spreadProps(__spreadValues({ variant, small }, props), { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledText, { variant, children }) }));
131
+ var _d = _c, { children, variant, small, ellipsis } = _d, rest = __objRest(_d, ["children", "variant", "small", "ellipsis"]);
132
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledTag, __spreadProps(__spreadValues({ variant, small }, rest), { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledText, { numberOfLines: ellipsis ? 1 : void 0, children }) }));
137
133
  };
138
134
  Tag.propTypes = {
139
135
  /** style the tag following the theme (success, informative, attention) */
140
136
  variant: (0, import_prop_types.oneOf)(["", "success", "informative", "attention"]),
141
137
  /** Can send small to use this variant */
142
138
  small: import_prop_types.bool,
143
- children: import_prop_types.node.isRequired
139
+ children: import_prop_types.node.isRequired,
140
+ ellipsis: import_prop_types.bool
144
141
  };
145
142
  Tag.defaultProps = {
146
143
  variant: "",
147
- small: false
144
+ small: false,
145
+ ellipsis: false
148
146
  };
149
147
  var Tag_default = Tag;
150
148
  // Annotate the CommonJS export names for ESM import in node:
@@ -27,6 +27,12 @@ var import_react_native = require("@testing-library/react-native");
27
27
  var import_yoga_icons = require("@gympass/yoga-icons");
28
28
  var import__ = require("../..");
29
29
  describe("<Tag />", () => {
30
+ it("should match snapshot when v3Theme is settled", () => {
31
+ const { toJSON } = (0, import_react_native.render)(
32
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import__.ThemeProvider, { theme: import__.v3theme, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import__.Tag, { children: "v3Theme" }) })
33
+ );
34
+ expect(toJSON()).toMatchSnapshot();
35
+ });
30
36
  it("should match snapshot", () => {
31
37
  const { toJSON } = (0, import_react_native.render)(
32
38
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import__.ThemeProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import__.Tag, { children: "default" }) })
@@ -64,13 +64,9 @@ var import_jsx_runtime = require("react/jsx-runtime");
64
64
  var import_react = __toESM(require("react"));
65
65
  var import_styled_components = __toESM(require("styled-components"));
66
66
  var import_prop_types = require("prop-types");
67
- var import_yoga_system = require("@gympass/yoga-system");
68
- var import_Tag = __toESM(require("./Tag"));
67
+ var import_Tag = require("./Tag");
69
68
  var import_Icon = __toESM(require("../../Icon"));
70
- const Informative = (0, import_styled_components.default)(import_Tag.default)`
71
- justify-content: center;
72
- align-items: center;
73
-
69
+ const Informative = (0, import_styled_components.default)(import_Tag.StyledTag)`
74
70
  ${({
75
71
  variant,
76
72
  theme: {
@@ -87,17 +83,13 @@ const Informative = (0, import_styled_components.default)(import_Tag.default)`
87
83
  color: ${text.primary};
88
84
  border-radius: ${tag.border.radius}px;
89
85
  border-color: ${color.light};
90
-
91
- font-size: ${tag.font.size}px;
92
- font-weight: ${tag.font.weight};
93
86
  `}
94
-
95
- ${import_yoga_system.margins}
96
87
  `;
97
88
  const TagInformative = (_a) => {
98
89
  var _b = _a, {
99
90
  children,
100
91
  icon,
92
+ variant,
101
93
  theme: {
102
94
  yoga: {
103
95
  colors: { text },
@@ -106,14 +98,15 @@ const TagInformative = (_a) => {
106
98
  },
107
99
  small,
108
100
  ellipsis
109
- } = _b, props = __objRest(_b, [
101
+ } = _b, rest = __objRest(_b, [
110
102
  "children",
111
103
  "icon",
104
+ "variant",
112
105
  "theme",
113
106
  "small",
114
107
  "ellipsis"
115
108
  ]);
116
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(Informative, __spreadProps(__spreadValues({ small, ellipsis }, props), { children: [
109
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(Informative, __spreadProps(__spreadValues({ variant, small }, rest), { children: [
117
110
  icon && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
118
111
  import_Icon.default,
119
112
  {
@@ -123,7 +116,7 @@ const TagInformative = (_a) => {
123
116
  marginRight: tag.icon.margin.right
124
117
  }
125
118
  ),
126
- children
119
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Tag.StyledText, { numberOfLines: ellipsis ? 1 : void 0, children })
127
120
  ] }));
128
121
  };
129
122
  TagInformative.propTypes = {
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
  var __create = Object.create;
3
3
  var __defProp = Object.defineProperty;
4
+ var __defProps = Object.defineProperties;
4
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
7
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
8
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
7
9
  var __getProtoOf = Object.getPrototypeOf;
@@ -19,6 +21,19 @@ var __spreadValues = (a, b) => {
19
21
  }
20
22
  return a;
21
23
  };
24
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
25
+ var __objRest = (source, exclude) => {
26
+ var target = {};
27
+ for (var prop in source)
28
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
29
+ target[prop] = source[prop];
30
+ if (source != null && __getOwnPropSymbols)
31
+ for (var prop of __getOwnPropSymbols(source)) {
32
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
33
+ target[prop] = source[prop];
34
+ }
35
+ return target;
36
+ };
22
37
  var __export = (target, all) => {
23
38
  for (var name in all)
24
39
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -42,6 +57,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
42
57
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
43
58
  var Tag_exports = {};
44
59
  __export(Tag_exports, {
60
+ StyledTag: () => StyledTag,
61
+ StyledText: () => StyledText,
45
62
  default: () => Tag_default
46
63
  });
47
64
  module.exports = __toCommonJS(Tag_exports);
@@ -50,6 +67,7 @@ var import_react = __toESM(require("react"));
50
67
  var import_styled_components = __toESM(require("styled-components"));
51
68
  var import_prop_types = require("prop-types");
52
69
  var import_yoga_system = require("@gympass/yoga-system");
70
+ var import_Text = __toESM(require("../../Text"));
53
71
  const StyledTag = import_styled_components.default.div`
54
72
  display: inline-flex;
55
73
  justify-content: center;
@@ -60,7 +78,6 @@ const StyledTag = import_styled_components.default.div`
60
78
  ${({
61
79
  variant,
62
80
  small,
63
- ellipsis,
64
81
  theme: {
65
82
  yoga: {
66
83
  colors: {
@@ -89,27 +106,30 @@ const StyledTag = import_styled_components.default.div`
89
106
  ${tag.padding.default.left}px;
90
107
  `}
91
108
 
92
- ${ellipsis ? `
93
- display: block;
94
- white-space: nowrap;
95
- overflow: hidden;
96
- text-overflow: ellipsis;
97
- ` : ``}
98
-
99
109
  color: ${color.dark};
100
110
  border-radius: ${tag.border.radius}px;
101
111
  border-width: ${tag.border.width}px;
102
112
  border-color: ${borderColor.dark};
103
-
104
- font-size: ${tag.font.size}px;
105
- line-height: ${tag.font.lineHeight}px;
106
- font-weight: ${tag.font.weight};
107
113
  `}
108
114
 
109
115
  ${import_yoga_system.margins}
110
116
  ${import_yoga_system.maxWidth}
111
117
  `;
112
- const Tag = (props) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledTag, __spreadValues({}, props));
118
+ const StyledText = (0, import_styled_components.default)(import_Text.default.Overline)`
119
+ ${({
120
+ theme: {
121
+ yoga: {
122
+ colors: { text }
123
+ }
124
+ }
125
+ }) => `
126
+ color: ${text.primary};
127
+ `}
128
+ `;
129
+ const Tag = (_a) => {
130
+ var _b = _a, { children, variant, small, ellipsis } = _b, rest = __objRest(_b, ["children", "variant", "small", "ellipsis"]);
131
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledTag, __spreadProps(__spreadValues({ variant, small }, rest), { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledText, { numberOfLines: ellipsis ? 1 : void 0, children }) }));
132
+ };
113
133
  Tag.propTypes = {
114
134
  /** style the tag following the theme (success, informative, attention) */
115
135
  variant: (0, import_prop_types.oneOf)(["", "success", "informative", "attention"]),
@@ -125,3 +145,8 @@ Tag.defaultProps = {
125
145
  ellipsis: false
126
146
  };
127
147
  var Tag_default = Tag;
148
+ // Annotate the CommonJS export names for ESM import in node:
149
+ 0 && (module.exports = {
150
+ StyledTag,
151
+ StyledText
152
+ });
@@ -27,6 +27,12 @@ var import_react2 = require("@testing-library/react");
27
27
  var import_yoga_icons = require("@gympass/yoga-icons");
28
28
  var import__ = require("../..");
29
29
  describe("<Tag />", () => {
30
+ it("should match snapshot when v3Theme is settled", () => {
31
+ const { container } = (0, import_react2.render)(
32
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import__.ThemeProvider, { theme: import__.v3theme, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import__.Tag, { children: "v3Theme" }) })
33
+ );
34
+ expect(container).toMatchSnapshot();
35
+ });
30
36
  it("should match snapshot", () => {
31
37
  const { container } = (0, import_react2.render)(
32
38
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import__.ThemeProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import__.Tag, { children: "default" }) })
@@ -33,7 +33,7 @@ describe("FontLoader component", () => {
33
33
  );
34
34
  const link = document.getElementsByTagName("link").item(0).outerHTML;
35
35
  expect(link).toContain(
36
- `<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Rubik:300,400,500,700,900,300i,400i,500i,700i,900i">`
36
+ `<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Rubik:300,400,500,600,700,900,300i,400i,500i,600i,700i,900i">`
37
37
  );
38
38
  });
39
39
  });
@@ -238,6 +238,19 @@ const v3theme = (0, import_themeGenerator.default)((tokens) => ({
238
238
  black: {
239
239
  fontWeight: tokens.fontWeights.black
240
240
  }
241
+ },
242
+ button: {
243
+ font: {
244
+ size: {
245
+ default: tokens.fontSizes.medium,
246
+ small: tokens.fontSizes.small
247
+ },
248
+ weight: tokens.fontWeights.semiBold,
249
+ height: {
250
+ default: tokens.lineHeights.medium,
251
+ small: tokens.lineHeights.xsmall
252
+ }
253
+ }
241
254
  }
242
255
  }
243
256
  }));
@@ -5,7 +5,8 @@ const Button = ({
5
5
  borders,
6
6
  radii,
7
7
  colors,
8
- fontWeights
8
+ fontWeights,
9
+ lineHeights
9
10
  }) => ({
10
11
  padding: {
11
12
  default: {
@@ -26,7 +27,11 @@ const Button = ({
26
27
  default: fontSizes.medium,
27
28
  small: fontSizes.small
28
29
  },
29
- weight: fontWeights.medium
30
+ weight: fontWeights.medium,
31
+ lineHeight: {
32
+ default: lineHeights.medium,
33
+ small: lineHeights.xsmall
34
+ }
30
35
  },
31
36
  border: {
32
37
  radius: radii.circle
@@ -31,11 +31,21 @@ var __objRest = (source, exclude) => {
31
31
  };
32
32
  import { jsx, jsxs } from "react/jsx-runtime";
33
33
  import React, { forwardRef } from "react";
34
+ import { bool, func, node, oneOfType } from "prop-types";
34
35
  import styled, { withTheme } from "styled-components";
35
- import { node, oneOfType, func, bool } from "prop-types";
36
36
  import withTouchable from "./withTouchable";
37
37
  import Text from "../../Text";
38
- const Label = styled(Text.Medium)`
38
+ const Label = styled(Text).attrs(
39
+ ({
40
+ theme: {
41
+ yoga: {
42
+ components: { button }
43
+ }
44
+ }
45
+ }) => ({
46
+ fontWeight: button.font.weight
47
+ })
48
+ )`
39
49
  text-align: center;
40
50
  ${({
41
51
  small,
@@ -47,6 +57,7 @@ const Label = styled(Text.Medium)`
47
57
  }
48
58
  }) => `
49
59
  font-size: ${small ? button.font.size.small : button.font.size.default}px;
60
+ line-height: ${small ? button.font.lineHeight.small : button.font.lineHeight.default}px;
50
61
  color: ${color};
51
62
  `}
52
63
  `;
@@ -191,8 +202,9 @@ Button.defaultProps = {
191
202
  icon: void 0
192
203
  };
193
204
  const ButtonWithTouchable = withTouchable(withTheme(Button));
205
+ var Button_default = ButtonWithTouchable;
194
206
  export {
195
207
  ButtonContainer,
196
208
  Label,
197
- ButtonWithTouchable as default
209
+ Button_default as default
198
210
  };
@@ -2,11 +2,19 @@ import { jsx } from "react/jsx-runtime";
2
2
  import React from "react";
3
3
  import { render, fireEvent } from "@testing-library/react-native";
4
4
  import { Booking } from "@gympass/yoga-icons";
5
- import ThemeProvider from "../../Theme";
5
+ import ThemeProvider, { v3theme } from "../../Theme";
6
6
  import Button from "..";
7
7
  describe("<Button />", () => {
8
8
  describe("Snapshots", () => {
9
9
  describe("primary buttons", () => {
10
+ describe("with v3theme", () => {
11
+ it("should match snapshot with v3theme Button", () => {
12
+ const { toJSON } = render(
13
+ /* @__PURE__ */ jsx(ThemeProvider, { theme: v3theme, children: /* @__PURE__ */ jsx(Button, {}) })
14
+ );
15
+ expect(toJSON()).toMatchSnapshot();
16
+ });
17
+ });
10
18
  describe("Without props", () => {
11
19
  it("should match snapshot with default Button", () => {
12
20
  const { toJSON } = render(
@@ -2,11 +2,19 @@ import { jsx } from "react/jsx-runtime";
2
2
  import React from "react";
3
3
  import { render, fireEvent, screen, within } from "@testing-library/react";
4
4
  import { Booking, Close } from "@gympass/yoga-icons";
5
- import ThemeProvider from "../../Theme";
5
+ import ThemeProvider, { v3theme } from "../../Theme";
6
6
  import Button from "..";
7
7
  describe("<Button />", () => {
8
8
  describe("Snapshots", () => {
9
9
  describe("primary buttons", () => {
10
+ describe("with v3theme", () => {
11
+ it("should match snapshot with v3theme Button", () => {
12
+ const { container } = render(
13
+ /* @__PURE__ */ jsx(ThemeProvider, { theme: v3theme, children: /* @__PURE__ */ jsx(Button, {}) })
14
+ );
15
+ expect(container).toMatchSnapshot();
16
+ });
17
+ });
10
18
  describe("Without props", () => {
11
19
  it("should match snapshot with default Button", () => {
12
20
  const { container } = render(
@@ -41,7 +41,7 @@ const StyledButton = styled.button`
41
41
  font-weight: ${button.font.weight};
42
42
  font-family: ${baseFont.family};
43
43
  letter-spacing: normal;
44
- line-height: 1;
44
+ line-height: ${small ? button.font.lineHeight.small : button.font.lineHeight.default}px;
45
45
  text-decoration: none;
46
46
 
47
47
  svg {
@@ -70,7 +70,7 @@ const StyledButton = styled.button`
70
70
  }
71
71
 
72
72
  ${disabled ? `
73
-
73
+
74
74
  background-color ${button.types.contained.backgroundColor.disabled};
75
75
  color: ${button.types.contained.font.disabled.color};
76
76
  pointer-events: none;
@@ -80,7 +80,7 @@ const StyledButton = styled.button`
80
80
  }
81
81
 
82
82
  cursor: not-allowed;
83
-
83
+
84
84
  ` : ""}
85
85
 
86
86
  ${inverted ? `
@@ -1,4 +1,4 @@
1
- const Tag = ({ spacing, fontSizes, fontWeights, radii, borders }) => ({
1
+ const Tag = ({ spacing, radii, borders }) => ({
2
2
  icon: {
3
3
  size: {
4
4
  default: spacing.small,
@@ -8,11 +8,6 @@ const Tag = ({ spacing, fontSizes, fontWeights, radii, borders }) => ({
8
8
  right: "xxxsmall"
9
9
  }
10
10
  },
11
- font: {
12
- size: fontSizes.xsmall,
13
- lineHeight: fontSizes.medium,
14
- weight: fontWeights.medium
15
- },
16
11
  padding: {
17
12
  default: {
18
13
  top: spacing.xxxsmall,
@@ -65,36 +65,35 @@ const StyledTextInformative = styled(StyledText)`
65
65
  ${({
66
66
  theme: {
67
67
  yoga: {
68
- colors: { text },
69
- components: { tag }
68
+ colors: { text }
70
69
  }
71
70
  }
72
71
  }) => `
73
72
  color: ${text.primary};
74
-
75
- font-size: ${tag.font.size}px;
76
- line-height: ${tag.font.lineHeight}px;
77
- font-weight: ${tag.font.weight};
78
73
  `}
79
74
  `;
80
75
  const TagInformative = (_a) => {
81
76
  var _b = _a, {
82
77
  children,
83
78
  icon,
79
+ ellipsis,
84
80
  theme: {
85
81
  yoga: {
86
82
  colors: { text },
87
83
  components: { tag }
88
84
  }
89
85
  },
90
- small
91
- } = _b, props = __objRest(_b, [
86
+ small,
87
+ variant
88
+ } = _b, rest = __objRest(_b, [
92
89
  "children",
93
90
  "icon",
91
+ "ellipsis",
94
92
  "theme",
95
- "small"
93
+ "small",
94
+ "variant"
96
95
  ]);
97
- return /* @__PURE__ */ jsx(Informative, __spreadProps(__spreadValues({ small }, props), { children: /* @__PURE__ */ jsxs(Wrapper, { children: [
96
+ return /* @__PURE__ */ jsx(Informative, __spreadProps(__spreadValues({ variant, small }, rest), { children: /* @__PURE__ */ jsxs(Wrapper, { children: [
98
97
  icon && /* @__PURE__ */ jsx(
99
98
  Icon,
100
99
  {
@@ -104,7 +103,7 @@ const TagInformative = (_a) => {
104
103
  marginRight: tag.icon.margin.right
105
104
  }
106
105
  ),
107
- /* @__PURE__ */ jsx(StyledTextInformative, { children })
106
+ /* @__PURE__ */ jsx(StyledTextInformative, { numberOfLines: ellipsis ? 1 : void 0, children })
108
107
  ] }) }));
109
108
  };
110
109
  TagInformative.propTypes = {
@@ -113,12 +112,14 @@ TagInformative.propTypes = {
113
112
  icon: func,
114
113
  children: node.isRequired,
115
114
  /** Can send small to use this variant */
116
- small: bool
115
+ small: bool,
116
+ ellipsis: bool
117
117
  };
118
118
  TagInformative.defaultProps = {
119
119
  variant: "neutral",
120
120
  icon: void 0,
121
- small: false
121
+ small: false,
122
+ ellipsis: false
122
123
  };
123
124
  TagInformative.displayName = "Tag.Informative";
124
125
  var Informative_default = withTheme(TagInformative);
@@ -78,7 +78,7 @@ const StyledTag = styled.View`
78
78
  `;
79
79
  const StyledText = styled((_a) => {
80
80
  var _b = _a, { variant } = _b, rest = __objRest(_b, ["variant"]);
81
- return /* @__PURE__ */ jsx(Text.Medium, __spreadValues({}, rest));
81
+ return /* @__PURE__ */ jsx(Text.Overline, __spreadValues({}, rest));
82
82
  })`
83
83
  ${({
84
84
  variant,
@@ -87,31 +87,29 @@ const StyledText = styled((_a) => {
87
87
  colors: {
88
88
  text,
89
89
  feedback: { [variant]: color = { dark: text.secondary } }
90
- },
91
- components: { tag }
90
+ }
92
91
  }
93
92
  }
94
93
  }) => `
95
94
  color: ${color.dark};
96
-
97
- font-size: ${tag.font.size}px;
98
- line-height: ${tag.font.lineHeight}px;
99
95
  `}
100
96
  `;
101
97
  const Tag = (_c) => {
102
- var _d = _c, { children, variant, small } = _d, props = __objRest(_d, ["children", "variant", "small"]);
103
- return /* @__PURE__ */ jsx(StyledTag, __spreadProps(__spreadValues({ variant, small }, props), { children: /* @__PURE__ */ jsx(StyledText, { variant, children }) }));
98
+ var _d = _c, { children, variant, small, ellipsis } = _d, rest = __objRest(_d, ["children", "variant", "small", "ellipsis"]);
99
+ return /* @__PURE__ */ jsx(StyledTag, __spreadProps(__spreadValues({ variant, small }, rest), { children: /* @__PURE__ */ jsx(StyledText, { numberOfLines: ellipsis ? 1 : void 0, children }) }));
104
100
  };
105
101
  Tag.propTypes = {
106
102
  /** style the tag following the theme (success, informative, attention) */
107
103
  variant: oneOf(["", "success", "informative", "attention"]),
108
104
  /** Can send small to use this variant */
109
105
  small: bool,
110
- children: node.isRequired
106
+ children: node.isRequired,
107
+ ellipsis: bool
111
108
  };
112
109
  Tag.defaultProps = {
113
110
  variant: "",
114
- small: false
111
+ small: false,
112
+ ellipsis: false
115
113
  };
116
114
  var Tag_default = Tag;
117
115
  export {
@@ -2,8 +2,14 @@ import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import React from "react";
3
3
  import { render } from "@testing-library/react-native";
4
4
  import { Building } from "@gympass/yoga-icons";
5
- import { ThemeProvider, Tag } from "../..";
5
+ import { ThemeProvider, Tag, v3theme } from "../..";
6
6
  describe("<Tag />", () => {
7
+ it("should match snapshot when v3Theme is settled", () => {
8
+ const { toJSON } = render(
9
+ /* @__PURE__ */ jsx(ThemeProvider, { theme: v3theme, children: /* @__PURE__ */ jsx(Tag, { children: "v3Theme" }) })
10
+ );
11
+ expect(toJSON()).toMatchSnapshot();
12
+ });
7
13
  it("should match snapshot", () => {
8
14
  const { toJSON } = render(
9
15
  /* @__PURE__ */ jsx(ThemeProvider, { children: /* @__PURE__ */ jsx(Tag, { children: "default" }) })
@@ -33,13 +33,9 @@ import { jsx, jsxs } from "react/jsx-runtime";
33
33
  import React from "react";
34
34
  import styled, { withTheme } from "styled-components";
35
35
  import { func, oneOf, node, bool } from "prop-types";
36
- import { margins } from "@gympass/yoga-system";
37
- import Tag from "./Tag";
36
+ import { StyledTag, StyledText } from "./Tag";
38
37
  import Icon from "../../Icon";
39
- const Informative = styled(Tag)`
40
- justify-content: center;
41
- align-items: center;
42
-
38
+ const Informative = styled(StyledTag)`
43
39
  ${({
44
40
  variant,
45
41
  theme: {
@@ -56,17 +52,13 @@ const Informative = styled(Tag)`
56
52
  color: ${text.primary};
57
53
  border-radius: ${tag.border.radius}px;
58
54
  border-color: ${color.light};
59
-
60
- font-size: ${tag.font.size}px;
61
- font-weight: ${tag.font.weight};
62
55
  `}
63
-
64
- ${margins}
65
56
  `;
66
57
  const TagInformative = (_a) => {
67
58
  var _b = _a, {
68
59
  children,
69
60
  icon,
61
+ variant,
70
62
  theme: {
71
63
  yoga: {
72
64
  colors: { text },
@@ -75,14 +67,15 @@ const TagInformative = (_a) => {
75
67
  },
76
68
  small,
77
69
  ellipsis
78
- } = _b, props = __objRest(_b, [
70
+ } = _b, rest = __objRest(_b, [
79
71
  "children",
80
72
  "icon",
73
+ "variant",
81
74
  "theme",
82
75
  "small",
83
76
  "ellipsis"
84
77
  ]);
85
- return /* @__PURE__ */ jsxs(Informative, __spreadProps(__spreadValues({ small, ellipsis }, props), { children: [
78
+ return /* @__PURE__ */ jsxs(Informative, __spreadProps(__spreadValues({ variant, small }, rest), { children: [
86
79
  icon && /* @__PURE__ */ jsx(
87
80
  Icon,
88
81
  {
@@ -92,7 +85,7 @@ const TagInformative = (_a) => {
92
85
  marginRight: tag.icon.margin.right
93
86
  }
94
87
  ),
95
- children
88
+ /* @__PURE__ */ jsx(StyledText, { numberOfLines: ellipsis ? 1 : void 0, children })
96
89
  ] }));
97
90
  };
98
91
  TagInformative.propTypes = {
@@ -1,4 +1,6 @@
1
1
  var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
2
4
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
4
6
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
@@ -14,11 +16,25 @@ var __spreadValues = (a, b) => {
14
16
  }
15
17
  return a;
16
18
  };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __objRest = (source, exclude) => {
21
+ var target = {};
22
+ for (var prop in source)
23
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
+ target[prop] = source[prop];
25
+ if (source != null && __getOwnPropSymbols)
26
+ for (var prop of __getOwnPropSymbols(source)) {
27
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
+ target[prop] = source[prop];
29
+ }
30
+ return target;
31
+ };
17
32
  import { jsx } from "react/jsx-runtime";
18
33
  import React from "react";
19
34
  import styled from "styled-components";
20
35
  import { oneOf, node, bool } from "prop-types";
21
36
  import { margins, maxWidth } from "@gympass/yoga-system";
37
+ import Text from "../../Text";
22
38
  const StyledTag = styled.div`
23
39
  display: inline-flex;
24
40
  justify-content: center;
@@ -29,7 +45,6 @@ const StyledTag = styled.div`
29
45
  ${({
30
46
  variant,
31
47
  small,
32
- ellipsis,
33
48
  theme: {
34
49
  yoga: {
35
50
  colors: {
@@ -58,27 +73,30 @@ const StyledTag = styled.div`
58
73
  ${tag.padding.default.left}px;
59
74
  `}
60
75
 
61
- ${ellipsis ? `
62
- display: block;
63
- white-space: nowrap;
64
- overflow: hidden;
65
- text-overflow: ellipsis;
66
- ` : ``}
67
-
68
76
  color: ${color.dark};
69
77
  border-radius: ${tag.border.radius}px;
70
78
  border-width: ${tag.border.width}px;
71
79
  border-color: ${borderColor.dark};
72
-
73
- font-size: ${tag.font.size}px;
74
- line-height: ${tag.font.lineHeight}px;
75
- font-weight: ${tag.font.weight};
76
80
  `}
77
81
 
78
82
  ${margins}
79
83
  ${maxWidth}
80
84
  `;
81
- const Tag = (props) => /* @__PURE__ */ jsx(StyledTag, __spreadValues({}, props));
85
+ const StyledText = styled(Text.Overline)`
86
+ ${({
87
+ theme: {
88
+ yoga: {
89
+ colors: { text }
90
+ }
91
+ }
92
+ }) => `
93
+ color: ${text.primary};
94
+ `}
95
+ `;
96
+ const Tag = (_a) => {
97
+ var _b = _a, { children, variant, small, ellipsis } = _b, rest = __objRest(_b, ["children", "variant", "small", "ellipsis"]);
98
+ return /* @__PURE__ */ jsx(StyledTag, __spreadProps(__spreadValues({ variant, small }, rest), { children: /* @__PURE__ */ jsx(StyledText, { numberOfLines: ellipsis ? 1 : void 0, children }) }));
99
+ };
82
100
  Tag.propTypes = {
83
101
  /** style the tag following the theme (success, informative, attention) */
84
102
  variant: oneOf(["", "success", "informative", "attention"]),
@@ -95,5 +113,7 @@ Tag.defaultProps = {
95
113
  };
96
114
  var Tag_default = Tag;
97
115
  export {
116
+ StyledTag,
117
+ StyledText,
98
118
  Tag_default as default
99
119
  };
@@ -2,8 +2,14 @@ import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import React from "react";
3
3
  import { render } from "@testing-library/react";
4
4
  import { Building } from "@gympass/yoga-icons";
5
- import { ThemeProvider, Tag } from "../..";
5
+ import { ThemeProvider, Tag, v3theme } from "../..";
6
6
  describe("<Tag />", () => {
7
+ it("should match snapshot when v3Theme is settled", () => {
8
+ const { container } = render(
9
+ /* @__PURE__ */ jsx(ThemeProvider, { theme: v3theme, children: /* @__PURE__ */ jsx(Tag, { children: "v3Theme" }) })
10
+ );
11
+ expect(container).toMatchSnapshot();
12
+ });
7
13
  it("should match snapshot", () => {
8
14
  const { container } = render(
9
15
  /* @__PURE__ */ jsx(ThemeProvider, { children: /* @__PURE__ */ jsx(Tag, { children: "default" }) })
@@ -10,7 +10,7 @@ describe("FontLoader component", () => {
10
10
  );
11
11
  const link = document.getElementsByTagName("link").item(0).outerHTML;
12
12
  expect(link).toContain(
13
- `<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Rubik:300,400,500,700,900,300i,400i,500i,700i,900i">`
13
+ `<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Rubik:300,400,500,600,700,900,300i,400i,500i,600i,700i,900i">`
14
14
  );
15
15
  });
16
16
  });
@@ -205,6 +205,19 @@ const v3theme = createTheme((tokens) => ({
205
205
  black: {
206
206
  fontWeight: tokens.fontWeights.black
207
207
  }
208
+ },
209
+ button: {
210
+ font: {
211
+ size: {
212
+ default: tokens.fontSizes.medium,
213
+ small: tokens.fontSizes.small
214
+ },
215
+ weight: tokens.fontWeights.semiBold,
216
+ height: {
217
+ default: tokens.lineHeights.medium,
218
+ small: tokens.lineHeights.xsmall
219
+ }
220
+ }
208
221
  }
209
222
  }
210
223
  }));
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gympass/yoga",
3
- "version": "7.107.1",
3
+ "version": "7.108.0",
4
4
  "description": "Gympass component library",
5
5
  "main": "./cjs",
6
6
  "types": "./typings/index.d.ts",
@@ -31,7 +31,7 @@
31
31
  "@gympass/yoga-icons": "^1.20.0",
32
32
  "@gympass/yoga-illustrations": "^0.5.2",
33
33
  "@gympass/yoga-system": "^0.11.1",
34
- "@gympass/yoga-tokens": "^3.4.1",
34
+ "@gympass/yoga-tokens": "^3.5.0",
35
35
  "@ptomasroos/react-native-multi-slider": "^2.1.1",
36
36
  "@radix-ui/react-dropdown-menu": "^2.0.1",
37
37
  "date-fns": "^2.29.2",
@@ -57,7 +57,7 @@
57
57
  "react-native": "0.72.3",
58
58
  "styled-components": "^4.4.0"
59
59
  },
60
- "gitHead": "f3f1b5fea6bc8c28bd0b33e50d2e8ad04d3cc372",
60
+ "gitHead": "f2472b24c7657c24192dd8dc0f29ce63f2cf76d3",
61
61
  "module": "./esm",
62
62
  "private": false,
63
63
  "react-native": "./cjs/index.native.js"
@@ -6,7 +6,13 @@ declare const StyledTextContainer: styled_components.StyledComponent<string, any
6
6
  children: React.ReactNode;
7
7
  }, never>;
8
8
  declare const StyledTag: styled_components.StyledComponent<{
9
- (props: any): JSX.Element;
9
+ ({ children, variant, small, ellipsis, ...rest }: {
10
+ [x: string]: any;
11
+ children: any;
12
+ variant: any;
13
+ small: any;
14
+ ellipsis: any;
15
+ }): JSX.Element;
10
16
  propTypes: {
11
17
  variant: prop_types.Requireable<string>;
12
18
  children: prop_types.Validator<string | number | boolean | prop_types.ReactElementLike | prop_types.ReactNodeArray>;
@@ -99,7 +99,7 @@ declare const v3theme: {
99
99
  };
100
100
  fonts: Record<string, {
101
101
  family: string;
102
- weight: (300 | 400 | 500 | 700 | 900 | "300i" | "400i" | "500i" | "700i" | "900i")[];
102
+ weight: (300 | 400 | 500 | 600 | 700 | 900 | "300i" | "400i" | "500i" | "600i" | "700i" | "900i")[];
103
103
  }>;
104
104
  fontSizes: {
105
105
  xxsmall: 10;
@@ -169,46 +169,46 @@ declare const v3theme: {
169
169
  length: number;
170
170
  toString(): string;
171
171
  toLocaleString(): string;
172
- pop(): 300 | 400 | 500 | 700 | 900 | undefined;
173
- push(...items: (300 | 400 | 500 | 700 | 900)[]): number;
174
- concat(...items: ConcatArray<300 | 400 | 500 | 700 | 900>[]): (300 | 400 | 500 | 700 | 900)[];
175
- concat(...items: (300 | 400 | 500 | 700 | 900 | ConcatArray<300 | 400 | 500 | 700 | 900>)[]): (300 | 400 | 500 | 700 | 900)[];
172
+ pop(): 300 | 400 | 500 | 600 | 700 | 900 | undefined;
173
+ push(...items: (300 | 400 | 500 | 600 | 700 | 900)[]): number;
174
+ concat(...items: ConcatArray<300 | 400 | 500 | 600 | 700 | 900>[]): (300 | 400 | 500 | 600 | 700 | 900)[];
175
+ concat(...items: (300 | 400 | 500 | 600 | 700 | 900 | ConcatArray<300 | 400 | 500 | 600 | 700 | 900>)[]): (300 | 400 | 500 | 600 | 700 | 900)[];
176
176
  join(separator?: string | undefined): string;
177
- reverse(): (300 | 400 | 500 | 700 | 900)[];
178
- shift(): 300 | 400 | 500 | 700 | 900 | undefined;
179
- slice(start?: number | undefined, end?: number | undefined): (300 | 400 | 500 | 700 | 900)[];
180
- sort(compareFn?: ((a: 300 | 400 | 500 | 700 | 900, b: 300 | 400 | 500 | 700 | 900) => number) | undefined): (300 | 400 | 500 | 700 | 900)[];
181
- splice(start: number, deleteCount?: number | undefined): (300 | 400 | 500 | 700 | 900)[];
182
- splice(start: number, deleteCount: number, ...items: (300 | 400 | 500 | 700 | 900)[]): (300 | 400 | 500 | 700 | 900)[];
183
- unshift(...items: (300 | 400 | 500 | 700 | 900)[]): number;
184
- indexOf(searchElement: 300 | 400 | 500 | 700 | 900, fromIndex?: number | undefined): number;
185
- lastIndexOf(searchElement: 300 | 400 | 500 | 700 | 900, fromIndex?: number | undefined): number;
186
- every<S_6 extends 300 | 400 | 500 | 700 | 900>(predicate: (value: 300 | 400 | 500 | 700 | 900, index: number, array: (300 | 400 | 500 | 700 | 900)[]) => value is S_6, thisArg?: any): this is S_6[];
187
- every(predicate: (value: 300 | 400 | 500 | 700 | 900, index: number, array: (300 | 400 | 500 | 700 | 900)[]) => unknown, thisArg?: any): boolean;
188
- some(predicate: (value: 300 | 400 | 500 | 700 | 900, index: number, array: (300 | 400 | 500 | 700 | 900)[]) => unknown, thisArg?: any): boolean;
189
- forEach(callbackfn: (value: 300 | 400 | 500 | 700 | 900, index: number, array: (300 | 400 | 500 | 700 | 900)[]) => void, thisArg?: any): void;
190
- map<U_8>(callbackfn: (value: 300 | 400 | 500 | 700 | 900, index: number, array: (300 | 400 | 500 | 700 | 900)[]) => U_8, thisArg?: any): U_8[];
191
- filter<S_7 extends 300 | 400 | 500 | 700 | 900>(predicate: (value: 300 | 400 | 500 | 700 | 900, index: number, array: (300 | 400 | 500 | 700 | 900)[]) => value is S_7, thisArg?: any): S_7[];
192
- filter(predicate: (value: 300 | 400 | 500 | 700 | 900, index: number, array: (300 | 400 | 500 | 700 | 900)[]) => unknown, thisArg?: any): (300 | 400 | 500 | 700 | 900)[];
193
- reduce(callbackfn: (previousValue: 300 | 400 | 500 | 700 | 900, currentValue: 300 | 400 | 500 | 700 | 900, currentIndex: number, array: (300 | 400 | 500 | 700 | 900)[]) => 300 | 400 | 500 | 700 | 900): 300 | 400 | 500 | 700 | 900;
194
- reduce(callbackfn: (previousValue: 300 | 400 | 500 | 700 | 900, currentValue: 300 | 400 | 500 | 700 | 900, currentIndex: number, array: (300 | 400 | 500 | 700 | 900)[]) => 300 | 400 | 500 | 700 | 900, initialValue: 300 | 400 | 500 | 700 | 900): 300 | 400 | 500 | 700 | 900;
195
- reduce<U_9>(callbackfn: (previousValue: U_9, currentValue: 300 | 400 | 500 | 700 | 900, currentIndex: number, array: (300 | 400 | 500 | 700 | 900)[]) => U_9, initialValue: U_9): U_9;
196
- reduceRight(callbackfn: (previousValue: 300 | 400 | 500 | 700 | 900, currentValue: 300 | 400 | 500 | 700 | 900, currentIndex: number, array: (300 | 400 | 500 | 700 | 900)[]) => 300 | 400 | 500 | 700 | 900): 300 | 400 | 500 | 700 | 900;
197
- reduceRight(callbackfn: (previousValue: 300 | 400 | 500 | 700 | 900, currentValue: 300 | 400 | 500 | 700 | 900, currentIndex: number, array: (300 | 400 | 500 | 700 | 900)[]) => 300 | 400 | 500 | 700 | 900, initialValue: 300 | 400 | 500 | 700 | 900): 300 | 400 | 500 | 700 | 900;
198
- reduceRight<U_10>(callbackfn: (previousValue: U_10, currentValue: 300 | 400 | 500 | 700 | 900, currentIndex: number, array: (300 | 400 | 500 | 700 | 900)[]) => U_10, initialValue: U_10): U_10;
199
- find<S_8 extends 300 | 400 | 500 | 700 | 900>(predicate: (this: void, value: 300 | 400 | 500 | 700 | 900, index: number, obj: (300 | 400 | 500 | 700 | 900)[]) => value is S_8, thisArg?: any): S_8 | undefined;
200
- find(predicate: (value: 300 | 400 | 500 | 700 | 900, index: number, obj: (300 | 400 | 500 | 700 | 900)[]) => unknown, thisArg?: any): 300 | 400 | 500 | 700 | 900 | undefined;
201
- findIndex(predicate: (value: 300 | 400 | 500 | 700 | 900, index: number, obj: (300 | 400 | 500 | 700 | 900)[]) => unknown, thisArg?: any): number;
202
- fill(value: 300 | 400 | 500 | 700 | 900, start?: number | undefined, end?: number | undefined): (300 | 400 | 500 | 700 | 900)[];
203
- copyWithin(target: number, start: number, end?: number | undefined): (300 | 400 | 500 | 700 | 900)[];
204
- entries(): IterableIterator<[number, 300 | 400 | 500 | 700 | 900]>;
177
+ reverse(): (300 | 400 | 500 | 600 | 700 | 900)[];
178
+ shift(): 300 | 400 | 500 | 600 | 700 | 900 | undefined;
179
+ slice(start?: number | undefined, end?: number | undefined): (300 | 400 | 500 | 600 | 700 | 900)[];
180
+ sort(compareFn?: ((a: 300 | 400 | 500 | 600 | 700 | 900, b: 300 | 400 | 500 | 600 | 700 | 900) => number) | undefined): (300 | 400 | 500 | 600 | 700 | 900)[];
181
+ splice(start: number, deleteCount?: number | undefined): (300 | 400 | 500 | 600 | 700 | 900)[];
182
+ splice(start: number, deleteCount: number, ...items: (300 | 400 | 500 | 600 | 700 | 900)[]): (300 | 400 | 500 | 600 | 700 | 900)[];
183
+ unshift(...items: (300 | 400 | 500 | 600 | 700 | 900)[]): number;
184
+ indexOf(searchElement: 300 | 400 | 500 | 600 | 700 | 900, fromIndex?: number | undefined): number;
185
+ lastIndexOf(searchElement: 300 | 400 | 500 | 600 | 700 | 900, fromIndex?: number | undefined): number;
186
+ every<S_6 extends 300 | 400 | 500 | 600 | 700 | 900>(predicate: (value: 300 | 400 | 500 | 600 | 700 | 900, index: number, array: (300 | 400 | 500 | 600 | 700 | 900)[]) => value is S_6, thisArg?: any): this is S_6[];
187
+ every(predicate: (value: 300 | 400 | 500 | 600 | 700 | 900, index: number, array: (300 | 400 | 500 | 600 | 700 | 900)[]) => unknown, thisArg?: any): boolean;
188
+ some(predicate: (value: 300 | 400 | 500 | 600 | 700 | 900, index: number, array: (300 | 400 | 500 | 600 | 700 | 900)[]) => unknown, thisArg?: any): boolean;
189
+ forEach(callbackfn: (value: 300 | 400 | 500 | 600 | 700 | 900, index: number, array: (300 | 400 | 500 | 600 | 700 | 900)[]) => void, thisArg?: any): void;
190
+ map<U_8>(callbackfn: (value: 300 | 400 | 500 | 600 | 700 | 900, index: number, array: (300 | 400 | 500 | 600 | 700 | 900)[]) => U_8, thisArg?: any): U_8[];
191
+ filter<S_7 extends 300 | 400 | 500 | 600 | 700 | 900>(predicate: (value: 300 | 400 | 500 | 600 | 700 | 900, index: number, array: (300 | 400 | 500 | 600 | 700 | 900)[]) => value is S_7, thisArg?: any): S_7[];
192
+ filter(predicate: (value: 300 | 400 | 500 | 600 | 700 | 900, index: number, array: (300 | 400 | 500 | 600 | 700 | 900)[]) => unknown, thisArg?: any): (300 | 400 | 500 | 600 | 700 | 900)[];
193
+ reduce(callbackfn: (previousValue: 300 | 400 | 500 | 600 | 700 | 900, currentValue: 300 | 400 | 500 | 600 | 700 | 900, currentIndex: number, array: (300 | 400 | 500 | 600 | 700 | 900)[]) => 300 | 400 | 500 | 600 | 700 | 900): 300 | 400 | 500 | 600 | 700 | 900;
194
+ reduce(callbackfn: (previousValue: 300 | 400 | 500 | 600 | 700 | 900, currentValue: 300 | 400 | 500 | 600 | 700 | 900, currentIndex: number, array: (300 | 400 | 500 | 600 | 700 | 900)[]) => 300 | 400 | 500 | 600 | 700 | 900, initialValue: 300 | 400 | 500 | 600 | 700 | 900): 300 | 400 | 500 | 600 | 700 | 900;
195
+ reduce<U_9>(callbackfn: (previousValue: U_9, currentValue: 300 | 400 | 500 | 600 | 700 | 900, currentIndex: number, array: (300 | 400 | 500 | 600 | 700 | 900)[]) => U_9, initialValue: U_9): U_9;
196
+ reduceRight(callbackfn: (previousValue: 300 | 400 | 500 | 600 | 700 | 900, currentValue: 300 | 400 | 500 | 600 | 700 | 900, currentIndex: number, array: (300 | 400 | 500 | 600 | 700 | 900)[]) => 300 | 400 | 500 | 600 | 700 | 900): 300 | 400 | 500 | 600 | 700 | 900;
197
+ reduceRight(callbackfn: (previousValue: 300 | 400 | 500 | 600 | 700 | 900, currentValue: 300 | 400 | 500 | 600 | 700 | 900, currentIndex: number, array: (300 | 400 | 500 | 600 | 700 | 900)[]) => 300 | 400 | 500 | 600 | 700 | 900, initialValue: 300 | 400 | 500 | 600 | 700 | 900): 300 | 400 | 500 | 600 | 700 | 900;
198
+ reduceRight<U_10>(callbackfn: (previousValue: U_10, currentValue: 300 | 400 | 500 | 600 | 700 | 900, currentIndex: number, array: (300 | 400 | 500 | 600 | 700 | 900)[]) => U_10, initialValue: U_10): U_10;
199
+ find<S_8 extends 300 | 400 | 500 | 600 | 700 | 900>(predicate: (this: void, value: 300 | 400 | 500 | 600 | 700 | 900, index: number, obj: (300 | 400 | 500 | 600 | 700 | 900)[]) => value is S_8, thisArg?: any): S_8 | undefined;
200
+ find(predicate: (value: 300 | 400 | 500 | 600 | 700 | 900, index: number, obj: (300 | 400 | 500 | 600 | 700 | 900)[]) => unknown, thisArg?: any): 300 | 400 | 500 | 600 | 700 | 900 | undefined;
201
+ findIndex(predicate: (value: 300 | 400 | 500 | 600 | 700 | 900, index: number, obj: (300 | 400 | 500 | 600 | 700 | 900)[]) => unknown, thisArg?: any): number;
202
+ fill(value: 300 | 400 | 500 | 600 | 700 | 900, start?: number | undefined, end?: number | undefined): (300 | 400 | 500 | 600 | 700 | 900)[];
203
+ copyWithin(target: number, start: number, end?: number | undefined): (300 | 400 | 500 | 600 | 700 | 900)[];
204
+ entries(): IterableIterator<[number, 300 | 400 | 500 | 600 | 700 | 900]>;
205
205
  keys(): IterableIterator<number>;
206
- values(): IterableIterator<300 | 400 | 500 | 700 | 900>;
207
- includes(searchElement: 300 | 400 | 500 | 700 | 900, fromIndex?: number | undefined): boolean;
208
- flatMap<U_11, This_2 = undefined>(callback: (this: This_2, value: 300 | 400 | 500 | 700 | 900, index: number, array: (300 | 400 | 500 | 700 | 900)[]) => U_11 | readonly U_11[], thisArg?: This_2 | undefined): U_11[];
206
+ values(): IterableIterator<300 | 400 | 500 | 600 | 700 | 900>;
207
+ includes(searchElement: 300 | 400 | 500 | 600 | 700 | 900, fromIndex?: number | undefined): boolean;
208
+ flatMap<U_11, This_2 = undefined>(callback: (this: This_2, value: 300 | 400 | 500 | 600 | 700 | 900, index: number, array: (300 | 400 | 500 | 600 | 700 | 900)[]) => U_11 | readonly U_11[], thisArg?: This_2 | undefined): U_11[];
209
209
  flat<A_2, D_2 extends number = 1>(this: A_2, depth?: D_2 | undefined): FlatArray<A_2, D_2>[];
210
- at(index: number): 300 | 400 | 500 | 700 | 900 | undefined;
211
- [Symbol.iterator](): IterableIterator<300 | 400 | 500 | 700 | 900>;
210
+ at(index: number): 300 | 400 | 500 | 600 | 700 | 900 | undefined;
211
+ [Symbol.iterator](): IterableIterator<300 | 400 | 500 | 600 | 700 | 900>;
212
212
  [Symbol.unscopables](): {
213
213
  copyWithin: boolean;
214
214
  entries: boolean;
@@ -221,6 +221,7 @@ declare const v3theme: {
221
221
  light: 300;
222
222
  regular: 400;
223
223
  medium: 500;
224
+ semiBold: 600;
224
225
  bold: 700;
225
226
  black: 900;
226
227
  };
@@ -266,7 +266,13 @@ declare const _default$4: React.ForwardRefExoticComponent<{
266
266
  }>;
267
267
 
268
268
  /** Tags should be keywords to categorize or organize an item. */
269
- declare function Tag(props: any): JSX.Element;
269
+ declare function Tag({ children, variant, small, ellipsis, ...rest }: {
270
+ [x: string]: any;
271
+ children: any;
272
+ variant: any;
273
+ small: any;
274
+ ellipsis: any;
275
+ }): JSX.Element;
270
276
  declare namespace Tag {
271
277
  namespace propTypes {
272
278
  export const variant: prop_types.Requireable<string>;