@smartyweb/ui 1.1.0 → 1.2.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.
- package/README.md +73 -4
- package/dist/buttons/Button/Button.d.ts +6 -0
- package/dist/buttons/Button/index.d.ts +2 -0
- package/dist/buttons/index.d.ts +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +113 -95
- package/dist/ui.css +1 -1
- package/package.json +8 -2
package/README.md
CHANGED
|
@@ -55,9 +55,45 @@ import "@smartyweb/ui/styles.css";
|
|
|
55
55
|
Then import components:
|
|
56
56
|
|
|
57
57
|
```js
|
|
58
|
-
import {
|
|
58
|
+
import { H1, Paragraph } from "@smartyweb/ui";
|
|
59
59
|
```
|
|
60
60
|
|
|
61
|
+
### Font Setup
|
|
62
|
+
|
|
63
|
+
This library does not bundle fonts. Consumers are responsible for loading fonts and exposing them as CSS custom properties. The library reads these three variables:
|
|
64
|
+
|
|
65
|
+
| CSS variable | Font | Used by |
|
|
66
|
+
| ------------------- | ------------ | --------------------------------- |
|
|
67
|
+
| `--ui-font-primary` | TT Hoves Pro | All heading and button components |
|
|
68
|
+
| `--ui-font-body` | Inter | Body and paragraph components |
|
|
69
|
+
| `--ui-font-code` | Hack | Code component |
|
|
70
|
+
|
|
71
|
+
In a Next.js app using `next/font/local`, set these on the root element:
|
|
72
|
+
|
|
73
|
+
```tsx
|
|
74
|
+
// app/layout.tsx
|
|
75
|
+
import localFont from "next/font/local";
|
|
76
|
+
|
|
77
|
+
const ttHovesPro = localFont({
|
|
78
|
+
src: [...],
|
|
79
|
+
variable: "--font-tthoves",
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
export default function RootLayout({ children }) {
|
|
83
|
+
return (
|
|
84
|
+
<html className={ttHovesPro.variable}>
|
|
85
|
+
<body style={{
|
|
86
|
+
"--ui-font-primary": "var(--font-tthoves, 'TT Hoves Pro', system-ui, sans-serif)",
|
|
87
|
+
}}>
|
|
88
|
+
{children}
|
|
89
|
+
</body>
|
|
90
|
+
</html>
|
|
91
|
+
);
|
|
92
|
+
}
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
If a variable is not set, components fall back to `system-ui` (headings/body) or `monospace` (code).
|
|
96
|
+
|
|
61
97
|
## Project Structure
|
|
62
98
|
|
|
63
99
|
```
|
|
@@ -82,6 +118,17 @@ src/
|
|
|
82
118
|
|
|
83
119
|
This package uses [Changesets](https://github.com/changesets/changesets) for versioning and changelog management.
|
|
84
120
|
|
|
121
|
+
### Semver policy
|
|
122
|
+
|
|
123
|
+
| Change type | Bump |
|
|
124
|
+
| -------------------------------------------------------------------------- | ------- |
|
|
125
|
+
| Token value changes (e.g. heading size goes from 64px → 60px) | `patch` |
|
|
126
|
+
| New CSS custom property names added (new tokens consumers could reference) | `minor` |
|
|
127
|
+
| New components added | `minor` |
|
|
128
|
+
| Removed components, renamed props, or changed component API | `major` |
|
|
129
|
+
|
|
130
|
+
Visual changes (token values) are always `patch` — semver communicates API stability, not pixel perfection.
|
|
131
|
+
|
|
85
132
|
### Step 1 — On your feature branch
|
|
86
133
|
|
|
87
134
|
Create a changeset to describe the change and bump type:
|
|
@@ -93,7 +140,7 @@ npm run changeset
|
|
|
93
140
|
This opens an interactive prompt:
|
|
94
141
|
|
|
95
142
|
1. **Which packages changed?** — select `@smartyweb/ui`
|
|
96
|
-
2. **Bump type?** —
|
|
143
|
+
2. **Bump type?** — see semver policy above
|
|
97
144
|
3. **Summary?** — plain English description (goes into the changelog)
|
|
98
145
|
|
|
99
146
|
Then apply the version bump immediately on the same branch:
|
|
@@ -150,8 +197,18 @@ Design tokens flow from Figma → code via this pipeline:
|
|
|
150
197
|
|
|
151
198
|
1. **Designer** makes changes in Tokens Studio (Figma plugin) and syncs to the `design/tokens-update` branch
|
|
152
199
|
2. **CI** (Bitbucket Pipelines) runs `npm run tokens` on push, regenerates `src/styles/_tokens.generated.scss`, and commits the diff automatically
|
|
153
|
-
3. **
|
|
154
|
-
4. **Build** on `master`
|
|
200
|
+
3. **Developer** opens a PR from `design/tokens-update` → `master`, runs `npx changeset add` on the branch, and merges after review
|
|
201
|
+
4. **Build** on `master` picks up the updated tokens and publishes a new npm version
|
|
202
|
+
|
|
203
|
+
### Reviewing a token PR
|
|
204
|
+
|
|
205
|
+
When reviewing a `design/tokens-update` PR, check:
|
|
206
|
+
|
|
207
|
+
- The `_tokens.generated.scss` diff — values should match the designer's intent in Figma
|
|
208
|
+
- Spot-check affected components in Storybook (deployed on Vercel, or run `npm run storybook` locally)
|
|
209
|
+
- Confirm a changeset file is present in `.changeset/` before merging
|
|
210
|
+
|
|
211
|
+
A changeset must be committed to the branch before the PR is merged. The developer opening the PR is responsible for this — the pipeline cannot do it automatically because bump type and description require human input.
|
|
155
212
|
|
|
156
213
|
`sd.config.js` reads only the `Responsive/Desktop`, `Responsive/Tablet`, and `Responsive/Mobile` token sets, outputting ~99 CSS custom properties like:
|
|
157
214
|
|
|
@@ -166,6 +223,18 @@ Design tokens flow from Figma → code via this pipeline:
|
|
|
166
223
|
|
|
167
224
|
Text components consume these via `var(--{component}-{breakpoint}-{property})`. Font families, weights, and OpenType feature settings remain as SCSS variables in `_variables.scss`.
|
|
168
225
|
|
|
226
|
+
Note: tablet CSS custom properties are generated but components intentionally do not use them. Components apply desktop values down to 768px, then switch to mobile. Tablet tokens are kept in `tokens.json` as source data for the planned fluid typography migration (see Roadmap).
|
|
227
|
+
|
|
228
|
+
## Roadmap
|
|
229
|
+
|
|
230
|
+
### Fluid typography
|
|
231
|
+
|
|
232
|
+
The current breakpoint approach (desktop / mobile with a hard switch at 768px) will be replaced with fluid typography using CSS `clamp()`. The desktop and mobile token values will become the max and min of the clamp range respectively, scaling continuously across the viewport.
|
|
233
|
+
|
|
234
|
+
The planned implementation: Style Dictionary computes the `clamp()` formula at build time (it has access to the raw numbers), outputting a single token per property (e.g. `--h1-font-size: clamp(44px, ..., 64px)`) instead of the current per-breakpoint triplets. Component SCSS becomes a single `font-size: var(--h1-font-size)` with no media queries.
|
|
235
|
+
|
|
236
|
+
The tablet token set in `tokens.json` will be retired from the Style Dictionary transform when this ships.
|
|
237
|
+
|
|
169
238
|
## Architecture
|
|
170
239
|
|
|
171
240
|
- **Component library only** — no routing, no pages, no app logic.
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
3
|
+
variant?: "primary" | "secondary" | "negative";
|
|
4
|
+
size?: "default" | "sm";
|
|
5
|
+
}
|
|
6
|
+
export declare function Button({ variant, size, className, children, ...rest }: ButtonProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Button';
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),l="_hExtra_dx1fb_1",i={hExtra:l};function u({as:t="h1",children:s,className:a}){const n=[i.hExtra,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const m="_h1_iuejz_1",_={h1:m};function p({children:t,className:s}){return o.jsx("h1",{className:`${_.h1}${s?` ${s}`:""}`,children:t})}const h="_h2_1i98w_1",y={h2:h};function d({as:t="h2",children:s,className:a}){const n=[y.h2,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const f="_h3_wip1f_1",j={h3:f};function g({as:t="h3",children:s,className:a}){const n=[j.h3,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const N="_h4_thwwf_1",b={h4:N};function x({as:t="h4",children:s,className:a}){const n=[b.h4,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const B="_h5_zem0s_1",$={h5:B};function L({as:t="h5",children:s,className:a}){const n=[$.h5,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const H="_h6_py9o3_1",S={h6:H};function C({as:t="h6",children:s,className:a}){const n=[S.h6,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const M="_paragraph_6mdxp_1",q={paragraph:M};function E({as:t="p",children:s,className:a}){const n=[q.paragraph,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const U="_bodyLarge_zgxpr_1",z={bodyLarge:U};function v({as:t="p",children:s,className:a}){const n=[z.bodyLarge,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const w="_bodySmall_izgxi_1",P={bodySmall:w};function k({as:t="p",children:s,className:a}){const n=[P.bodySmall,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const O="_buttonLarge_1kib2_1",R={buttonLarge:O};function T({as:t="span",children:s,className:a}){const n=[R.buttonLarge,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const A="_buttonSmall_1ga6z_1",D={buttonSmall:A};function F({as:t="span",children:s,className:a}){const n=[D.buttonSmall,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const G="_captionLarge_keyl9_1",I={captionLarge:G};function J({as:t="span",children:s,className:a}){const n=[I.captionLarge,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const K="_captionMedium_9rjdy_1",Q={captionMedium:K};function V({as:t="span",children:s,className:a}){const n=[Q.captionMedium,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const W="_captionUppercase_15jnh_1",X={captionUppercase:W};function Y({as:t="span",children:s,className:a}){const n=[X.captionUppercase,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const Z="_code_1o5oi_1",ss={code:Z};function ts({as:t="code",children:s,className:a}){const n=[ss.code,a].filter(Boolean).join(" ");return o.jsx(t,{className:n,children:s})}const as="_button_6hqdb_1",ns="_sm_6hqdb_37",os="_primary_6hqdb_56",es="_secondary_6hqdb_71",cs="_negative_6hqdb_89",e={button:as,sm:ns,primary:os,secondary:es,negative:cs};function rs({variant:t="primary",size:s="default",className:a,children:n,...c}){const r=[e.button,e[t],s==="sm"&&e.sm,a].filter(Boolean).join(" ");return o.jsx("button",{className:r,...c,children:n})}exports.BodyLarge=v;exports.BodySmall=k;exports.Button=rs;exports.ButtonLarge=T;exports.ButtonSmall=F;exports.CaptionLarge=J;exports.CaptionMedium=V;exports.CaptionUppercase=Y;exports.Code=ts;exports.H1=p;exports.H2=d;exports.H3=g;exports.H4=x;exports.H5=L;exports.H6=C;exports.HExtra=u;exports.Paragraph=E;
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -1,130 +1,148 @@
|
|
|
1
1
|
import { jsx as o } from "react/jsx-runtime";
|
|
2
|
-
const
|
|
3
|
-
hExtra:
|
|
2
|
+
const r = "_hExtra_dx1fb_1", i = {
|
|
3
|
+
hExtra: r
|
|
4
4
|
};
|
|
5
|
-
function
|
|
6
|
-
const
|
|
7
|
-
return /* @__PURE__ */ o(
|
|
5
|
+
function Q({ as: n = "h1", children: s, className: t }) {
|
|
6
|
+
const a = [i.hExtra, t].filter(Boolean).join(" ");
|
|
7
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
8
8
|
}
|
|
9
|
-
const
|
|
10
|
-
h1:
|
|
9
|
+
const _ = "_h1_iuejz_1", m = {
|
|
10
|
+
h1: _
|
|
11
11
|
};
|
|
12
|
-
function
|
|
13
|
-
return /* @__PURE__ */ o("h1", { className: `${
|
|
12
|
+
function R({ children: n, className: s }) {
|
|
13
|
+
return /* @__PURE__ */ o("h1", { className: `${m.h1}${s ? ` ${s}` : ""}`, children: n });
|
|
14
14
|
}
|
|
15
|
-
const
|
|
16
|
-
h2:
|
|
15
|
+
const u = "_h2_1i98w_1", p = {
|
|
16
|
+
h2: u
|
|
17
17
|
};
|
|
18
|
-
function
|
|
19
|
-
const
|
|
20
|
-
return /* @__PURE__ */ o(
|
|
18
|
+
function T({ as: n = "h2", children: s, className: t }) {
|
|
19
|
+
const a = [p.h2, t].filter(Boolean).join(" ");
|
|
20
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
21
21
|
}
|
|
22
|
-
const
|
|
23
|
-
h3:
|
|
22
|
+
const h = "_h3_wip1f_1", f = {
|
|
23
|
+
h3: h
|
|
24
24
|
};
|
|
25
|
-
function
|
|
26
|
-
const
|
|
27
|
-
return /* @__PURE__ */ o(
|
|
25
|
+
function V({ as: n = "h3", children: s, className: t }) {
|
|
26
|
+
const a = [f.h3, t].filter(Boolean).join(" ");
|
|
27
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
28
28
|
}
|
|
29
|
-
const
|
|
30
|
-
h4:
|
|
29
|
+
const y = "_h4_thwwf_1", d = {
|
|
30
|
+
h4: y
|
|
31
31
|
};
|
|
32
|
-
function
|
|
33
|
-
const
|
|
34
|
-
return /* @__PURE__ */ o(
|
|
32
|
+
function W({ as: n = "h4", children: s, className: t }) {
|
|
33
|
+
const a = [d.h4, t].filter(Boolean).join(" ");
|
|
34
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
35
35
|
}
|
|
36
|
-
const
|
|
37
|
-
h5:
|
|
36
|
+
const N = "_h5_zem0s_1", b = {
|
|
37
|
+
h5: N
|
|
38
38
|
};
|
|
39
|
-
function
|
|
40
|
-
const
|
|
41
|
-
return /* @__PURE__ */ o(
|
|
39
|
+
function X({ as: n = "h5", children: s, className: t }) {
|
|
40
|
+
const a = [b.h5, t].filter(Boolean).join(" ");
|
|
41
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
42
42
|
}
|
|
43
|
-
const
|
|
44
|
-
h6:
|
|
43
|
+
const g = "_h6_py9o3_1", B = {
|
|
44
|
+
h6: g
|
|
45
45
|
};
|
|
46
|
-
function
|
|
47
|
-
const
|
|
48
|
-
return /* @__PURE__ */ o(
|
|
46
|
+
function Y({ as: n = "h6", children: s, className: t }) {
|
|
47
|
+
const a = [B.h6, t].filter(Boolean).join(" ");
|
|
48
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
49
49
|
}
|
|
50
|
-
const
|
|
51
|
-
paragraph:
|
|
50
|
+
const j = "_paragraph_6mdxp_1", $ = {
|
|
51
|
+
paragraph: j
|
|
52
52
|
};
|
|
53
|
-
function
|
|
54
|
-
const
|
|
55
|
-
return /* @__PURE__ */ o(
|
|
53
|
+
function Z({ as: n = "p", children: s, className: t }) {
|
|
54
|
+
const a = [$.paragraph, t].filter(Boolean).join(" ");
|
|
55
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
56
56
|
}
|
|
57
|
-
const
|
|
58
|
-
bodyLarge:
|
|
57
|
+
const L = "_bodyLarge_zgxpr_1", x = {
|
|
58
|
+
bodyLarge: L
|
|
59
59
|
};
|
|
60
|
-
function
|
|
61
|
-
const
|
|
62
|
-
return /* @__PURE__ */ o(
|
|
60
|
+
function ss({ as: n = "p", children: s, className: t }) {
|
|
61
|
+
const a = [x.bodyLarge, t].filter(Boolean).join(" ");
|
|
62
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
63
63
|
}
|
|
64
|
-
const
|
|
65
|
-
bodySmall:
|
|
64
|
+
const S = "_bodySmall_izgxi_1", H = {
|
|
65
|
+
bodySmall: S
|
|
66
66
|
};
|
|
67
|
-
function
|
|
68
|
-
const
|
|
69
|
-
return /* @__PURE__ */ o(
|
|
67
|
+
function ns({ as: n = "p", children: s, className: t }) {
|
|
68
|
+
const a = [H.bodySmall, t].filter(Boolean).join(" ");
|
|
69
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
70
70
|
}
|
|
71
|
-
const
|
|
72
|
-
buttonLarge:
|
|
71
|
+
const q = "_buttonLarge_1kib2_1", z = {
|
|
72
|
+
buttonLarge: q
|
|
73
73
|
};
|
|
74
|
-
function
|
|
75
|
-
const
|
|
76
|
-
return /* @__PURE__ */ o(
|
|
74
|
+
function ts({ as: n = "span", children: s, className: t }) {
|
|
75
|
+
const a = [z.buttonLarge, t].filter(Boolean).join(" ");
|
|
76
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
77
77
|
}
|
|
78
|
-
const
|
|
79
|
-
buttonSmall:
|
|
78
|
+
const E = "_buttonSmall_1ga6z_1", M = {
|
|
79
|
+
buttonSmall: E
|
|
80
80
|
};
|
|
81
|
-
function
|
|
82
|
-
const
|
|
83
|
-
return /* @__PURE__ */ o(
|
|
81
|
+
function as({ as: n = "span", children: s, className: t }) {
|
|
82
|
+
const a = [M.buttonSmall, t].filter(Boolean).join(" ");
|
|
83
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
84
84
|
}
|
|
85
|
-
const
|
|
86
|
-
captionLarge:
|
|
85
|
+
const U = "_captionLarge_keyl9_1", w = {
|
|
86
|
+
captionLarge: U
|
|
87
87
|
};
|
|
88
|
-
function
|
|
89
|
-
const
|
|
90
|
-
return /* @__PURE__ */ o(
|
|
88
|
+
function os({ as: n = "span", children: s, className: t }) {
|
|
89
|
+
const a = [w.captionLarge, t].filter(Boolean).join(" ");
|
|
90
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
91
91
|
}
|
|
92
|
-
const
|
|
93
|
-
captionMedium:
|
|
92
|
+
const C = "_captionMedium_9rjdy_1", v = {
|
|
93
|
+
captionMedium: C
|
|
94
94
|
};
|
|
95
|
-
function
|
|
96
|
-
const
|
|
97
|
-
return /* @__PURE__ */ o(
|
|
95
|
+
function es({ as: n = "span", children: s, className: t }) {
|
|
96
|
+
const a = [v.captionMedium, t].filter(Boolean).join(" ");
|
|
97
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
98
98
|
}
|
|
99
|
-
const
|
|
100
|
-
captionUppercase:
|
|
99
|
+
const k = "_captionUppercase_15jnh_1", P = {
|
|
100
|
+
captionUppercase: k
|
|
101
101
|
};
|
|
102
|
-
function
|
|
103
|
-
const
|
|
104
|
-
return /* @__PURE__ */ o(
|
|
102
|
+
function cs({ as: n = "span", children: s, className: t }) {
|
|
103
|
+
const a = [P.captionUppercase, t].filter(Boolean).join(" ");
|
|
104
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
105
105
|
}
|
|
106
|
-
const
|
|
107
|
-
code:
|
|
106
|
+
const A = "_code_1o5oi_1", D = {
|
|
107
|
+
code: A
|
|
108
108
|
};
|
|
109
|
-
function
|
|
110
|
-
const
|
|
111
|
-
return /* @__PURE__ */ o(
|
|
109
|
+
function ls({ as: n = "code", children: s, className: t }) {
|
|
110
|
+
const a = [D.code, t].filter(Boolean).join(" ");
|
|
111
|
+
return /* @__PURE__ */ o(n, { className: a, children: s });
|
|
112
|
+
}
|
|
113
|
+
const F = "_button_6hqdb_1", G = "_sm_6hqdb_37", I = "_primary_6hqdb_56", J = "_secondary_6hqdb_71", K = "_negative_6hqdb_89", e = {
|
|
114
|
+
button: F,
|
|
115
|
+
sm: G,
|
|
116
|
+
primary: I,
|
|
117
|
+
secondary: J,
|
|
118
|
+
negative: K
|
|
119
|
+
};
|
|
120
|
+
function rs({
|
|
121
|
+
variant: n = "primary",
|
|
122
|
+
size: s = "default",
|
|
123
|
+
className: t,
|
|
124
|
+
children: a,
|
|
125
|
+
...c
|
|
126
|
+
}) {
|
|
127
|
+
const l = [e.button, e[n], s === "sm" && e.sm, t].filter(Boolean).join(" ");
|
|
128
|
+
return /* @__PURE__ */ o("button", { className: l, ...c, children: a });
|
|
112
129
|
}
|
|
113
130
|
export {
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
131
|
+
ss as BodyLarge,
|
|
132
|
+
ns as BodySmall,
|
|
133
|
+
rs as Button,
|
|
134
|
+
ts as ButtonLarge,
|
|
135
|
+
as as ButtonSmall,
|
|
136
|
+
os as CaptionLarge,
|
|
137
|
+
es as CaptionMedium,
|
|
138
|
+
cs as CaptionUppercase,
|
|
139
|
+
ls as Code,
|
|
140
|
+
R as H1,
|
|
141
|
+
T as H2,
|
|
142
|
+
V as H3,
|
|
143
|
+
W as H4,
|
|
144
|
+
X as H5,
|
|
145
|
+
Y as H6,
|
|
146
|
+
Q as HExtra,
|
|
147
|
+
Z as Paragraph
|
|
130
148
|
};
|
package/dist/ui.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--h-extra-desktop-font-size: 96px;--h-extra-desktop-line-height: 106px;--h-extra-desktop-letter-spacing: -.03em;--h1-desktop-font-size: 64px;--h1-desktop-line-height: 64px;--h1-desktop-letter-spacing: -.02em;--h2-desktop-font-size: 52px;--h2-desktop-line-height: 57px;--h2-desktop-letter-spacing: -.02em;--h3-desktop-font-size: 44px;--h3-desktop-line-height: 48px;--h3-desktop-letter-spacing: -.02em;--h4-desktop-font-size: 36px;--h4-desktop-line-height: 43px;--h4-desktop-letter-spacing: -.02em;--h5-desktop-font-size: 30px;--h5-desktop-line-height: 33px;--h5-desktop-letter-spacing: -.01em;--h6-desktop-font-size: 28px;--h6-desktop-line-height: 31px;--h6-desktop-letter-spacing: -.01em;--paragraph-desktop-font-size: 24px;--paragraph-desktop-line-height: 36px;--paragraph-desktop-letter-spacing: -.01em;--button-large-desktop-font-size: 20px;--button-large-desktop-line-height: 24px;--button-large-desktop-letter-spacing: -.02em;--body-large-desktop-font-size: 20px;--body-large-desktop-line-height: 30px;--body-large-desktop-letter-spacing: -.02em;--button-small-desktop-font-size: 17px;--button-small-desktop-line-height: 24px;--button-small-desktop-letter-spacing: -.02em;--body-small-desktop-font-size: 16px;--body-small-desktop-line-height: 24px;--body-small-desktop-letter-spacing: -.02em;--caption-large-desktop-font-size: 16px;--caption-large-desktop-line-height: 24px;--caption-large-desktop-letter-spacing: -.02em;--caption-medium-desktop-font-size: 12px;--caption-medium-desktop-line-height: 18px;--caption-medium-desktop-letter-spacing: -.02em;--caption-uppercase-desktop-font-size: 13px;--caption-uppercase-desktop-line-height: 16px;--caption-uppercase-desktop-letter-spacing: .04em;--code-desktop-font-size: 14px;--code-desktop-line-height: 17px;--code-desktop-letter-spacing: 0;--h-extra-tablet-font-size: 96px;--h-extra-tablet-line-height: 106px;--h-extra-tablet-letter-spacing: -.03em;--h1-tablet-font-size: 64px;--h1-tablet-line-height: 64px;--h1-tablet-letter-spacing: -.02em;--h2-tablet-font-size: 48px;--h2-tablet-line-height: 53px;--h2-tablet-letter-spacing: -.02em;--h3-tablet-font-size: 40px;--h3-tablet-line-height: 44px;--h3-tablet-letter-spacing: -.02em;--h4-tablet-font-size: 36px;--h4-tablet-line-height: 43px;--h4-tablet-letter-spacing: -.02em;--h5-tablet-font-size: 32px;--h5-tablet-line-height: 35px;--h5-tablet-letter-spacing: -.01em;--h6-tablet-font-size: 24px;--h6-tablet-line-height: 26px;--h6-tablet-letter-spacing: -.01em;--paragraph-tablet-font-size: 22px;--paragraph-tablet-line-height: 33px;--paragraph-tablet-letter-spacing: -.01em;--button-large-tablet-font-size: 18px;--button-large-tablet-line-height: 24px;--button-large-tablet-letter-spacing: -.02em;--body-large-tablet-font-size: 18px;--body-large-tablet-line-height: 27px;--body-large-tablet-letter-spacing: -.02em;--button-small-tablet-font-size: 16px;--button-small-tablet-line-height: 24px;--button-small-tablet-letter-spacing: -.02em;--body-small-tablet-font-size: 16px;--body-small-tablet-line-height: 24px;--body-small-tablet-letter-spacing: -.02em;--caption-large-tablet-font-size: 16px;--caption-large-tablet-line-height: 24px;--caption-large-tablet-letter-spacing: -.02em;--caption-medium-tablet-font-size: 12px;--caption-medium-tablet-line-height: 18px;--caption-medium-tablet-letter-spacing: -.02em;--caption-uppercase-tablet-font-size: 13px;--caption-uppercase-tablet-line-height: 16px;--caption-uppercase-tablet-letter-spacing: .04em;--code-tablet-font-size: 14px;--code-tablet-line-height: 17px;--code-tablet-letter-spacing: 0;--h-extra-mobile-font-size: 56px;--h-extra-mobile-line-height: 62px;--h-extra-mobile-letter-spacing: -.02em;--h1-mobile-font-size: 44px;--h1-mobile-line-height: 44px;--h1-mobile-letter-spacing: -.01em;--h2-mobile-font-size: 40px;--h2-mobile-line-height: 44px;--h2-mobile-letter-spacing: -.01em;--h3-mobile-font-size: 36px;--h3-mobile-line-height: 40px;--h3-mobile-letter-spacing: -.01em;--h4-mobile-font-size: 32px;--h4-mobile-line-height: 42px;--h4-mobile-letter-spacing: -.01em;--h5-mobile-font-size: 22px;--h5-mobile-line-height: 24px;--h5-mobile-letter-spacing: -.01em;--h6-mobile-font-size: 20px;--h6-mobile-line-height: 22px;--h6-mobile-letter-spacing: -.01em;--paragraph-mobile-font-size: 18px;--paragraph-mobile-line-height: 27px;--paragraph-mobile-letter-spacing: -.01em;--button-large-mobile-font-size: 16px;--button-large-mobile-line-height: 24px;--button-large-mobile-letter-spacing: -.01em;--body-large-mobile-font-size: 16px;--body-large-mobile-line-height: 24px;--body-large-mobile-letter-spacing: -.01em;--button-small-mobile-font-size: 14px;--button-small-mobile-line-height: 24px;--button-small-mobile-letter-spacing: -.01em;--body-small-mobile-font-size: 14px;--body-small-mobile-line-height: 21px;--body-small-mobile-letter-spacing: -.01em;--caption-large-mobile-font-size: 16px;--caption-large-mobile-line-height: 24px;--caption-large-mobile-letter-spacing: -.02em;--caption-medium-mobile-font-size: 12px;--caption-medium-mobile-line-height: 18px;--caption-medium-mobile-letter-spacing: -.02em;--caption-uppercase-mobile-font-size: 13px;--caption-uppercase-mobile-line-height: 16px;--caption-uppercase-mobile-letter-spacing: .04em;--code-mobile-font-size: 12px;--code-mobile-line-height: 17px;--code-mobile-letter-spacing: 0}._hExtra_dx1fb_1{font-family:var(--ui-font-primary);font-weight:600;font-size:var(--h-extra-desktop-font-size);line-height:var(--h-extra-desktop-line-height);letter-spacing:var(--h-extra-desktop-letter-spacing);font-feature-settings:"dlig" 1,"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:767px){._hExtra_dx1fb_1{font-size:var(--h-extra-mobile-font-size);line-height:var(--h-extra-mobile-line-height);letter-spacing:var(--h-extra-mobile-letter-spacing)}}._h1_iuejz_1{font-family:var(--ui-font-primary);font-weight:500;font-size:var(--h1-desktop-font-size);line-height:var(--h1-desktop-line-height);letter-spacing:var(--h1-desktop-letter-spacing);font-feature-settings:"dlig" 1,"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:767px){._h1_iuejz_1{font-size:var(--h1-mobile-font-size);line-height:var(--h1-mobile-line-height);letter-spacing:var(--h1-mobile-letter-spacing)}}._h2_1i98w_1{font-family:var(--ui-font-primary);font-weight:500;font-size:var(--h2-desktop-font-size);line-height:var(--h2-desktop-line-height);letter-spacing:var(--h2-desktop-letter-spacing);font-feature-settings:"dlig" 1,"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:1439px){._h2_1i98w_1{font-size:var(--h2-tablet-font-size);line-height:var(--h2-tablet-line-height)}}@media(max-width:767px){._h2_1i98w_1{font-size:var(--h2-mobile-font-size);line-height:var(--h2-mobile-line-height);letter-spacing:var(--h2-mobile-letter-spacing)}}._h3_wip1f_1{font-family:var(--ui-font-primary);font-weight:500;font-size:var(--h3-desktop-font-size);line-height:var(--h3-desktop-line-height);letter-spacing:var(--h3-desktop-letter-spacing);font-feature-settings:"dlig" 1,"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:1439px){._h3_wip1f_1{font-size:var(--h3-tablet-font-size);line-height:var(--h3-tablet-line-height)}}@media(max-width:767px){._h3_wip1f_1{font-size:var(--h3-mobile-font-size);line-height:var(--h3-mobile-line-height);letter-spacing:var(--h3-mobile-letter-spacing)}}._h4_thwwf_1{font-family:var(--ui-font-primary);font-weight:500;font-size:var(--h4-desktop-font-size);line-height:var(--h4-desktop-line-height);letter-spacing:var(--h4-desktop-letter-spacing);font-feature-settings:"dlig" 1,"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:767px){._h4_thwwf_1{font-size:var(--h4-mobile-font-size);line-height:var(--h4-mobile-line-height);letter-spacing:var(--h4-mobile-letter-spacing)}}._h5_zem0s_1{font-family:var(--ui-font-primary);font-weight:500;font-size:var(--h5-desktop-font-size);line-height:var(--h5-desktop-line-height);letter-spacing:var(--h5-desktop-letter-spacing);font-feature-settings:"dlig" 1,"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:1439px){._h5_zem0s_1{font-size:var(--h5-tablet-font-size);line-height:var(--h5-tablet-line-height)}}@media(max-width:767px){._h5_zem0s_1{font-size:var(--h5-mobile-font-size);line-height:var(--h5-mobile-line-height)}}._h6_py9o3_1{font-family:var(--ui-font-primary);font-weight:500;font-size:var(--h6-desktop-font-size);line-height:var(--h6-desktop-line-height);letter-spacing:var(--h6-desktop-letter-spacing);font-feature-settings:"dlig" 1,"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:1439px){._h6_py9o3_1{font-size:var(--h6-tablet-font-size);line-height:var(--h6-tablet-line-height)}}@media(max-width:767px){._h6_py9o3_1{font-size:var(--h6-mobile-font-size);line-height:var(--h6-mobile-line-height)}}._paragraph_6mdxp_1{font-family:var(--ui-font-primary);font-weight:500;font-size:var(--paragraph-desktop-font-size);line-height:var(--paragraph-desktop-line-height);letter-spacing:var(--paragraph-desktop-letter-spacing);font-feature-settings:"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:1439px){._paragraph_6mdxp_1{font-size:var(--paragraph-tablet-font-size);line-height:var(--paragraph-tablet-line-height)}}@media(max-width:767px){._paragraph_6mdxp_1{font-size:var(--paragraph-mobile-font-size);line-height:var(--paragraph-mobile-line-height)}}._bodyLarge_zgxpr_1{font-family:var(--ui-font-primary);font-weight:400;font-size:var(--body-large-desktop-font-size);line-height:var(--body-large-desktop-line-height);letter-spacing:var(--body-large-desktop-letter-spacing);font-feature-settings:"dlig" 1;margin:0}@media(max-width:1439px){._bodyLarge_zgxpr_1{font-size:var(--body-large-tablet-font-size);line-height:var(--body-large-tablet-line-height)}}@media(max-width:767px){._bodyLarge_zgxpr_1{font-size:var(--body-large-mobile-font-size);line-height:var(--body-large-mobile-line-height);letter-spacing:var(--body-large-mobile-letter-spacing)}}._bodySmall_izgxi_1{font-family:var(--ui-font-primary);font-weight:400;font-size:var(--body-small-desktop-font-size);line-height:var(--body-small-desktop-line-height);letter-spacing:var(--body-small-desktop-letter-spacing);font-feature-settings:"dlig" 1;margin:0}@media(max-width:767px){._bodySmall_izgxi_1{font-size:var(--body-small-mobile-font-size);line-height:var(--body-small-mobile-line-height);letter-spacing:var(--body-small-mobile-letter-spacing)}}._buttonLarge_hwbzl_1{font-family:Inter,sans-serif;font-weight:500;font-size:var(--button-large-desktop-font-size);line-height:var(--button-large-desktop-line-height);letter-spacing:var(--button-large-desktop-letter-spacing);font-feature-settings:"dlig" 1}@media(max-width:1439px){._buttonLarge_hwbzl_1{font-size:var(--button-large-tablet-font-size)}}@media(max-width:767px){._buttonLarge_hwbzl_1{font-family:var(--ui-font-primary);font-size:var(--button-large-mobile-font-size);letter-spacing:var(--button-large-mobile-letter-spacing)}}._buttonSmall_1psts_1{font-family:Inter,sans-serif;font-weight:500;font-size:var(--button-small-desktop-font-size);line-height:var(--button-small-desktop-line-height);letter-spacing:var(--button-small-desktop-letter-spacing);font-feature-settings:"dlig" 1}@media(max-width:1439px){._buttonSmall_1psts_1{font-size:var(--button-small-tablet-font-size)}}@media(max-width:767px){._buttonSmall_1psts_1{font-family:var(--ui-font-primary);font-size:var(--button-small-mobile-font-size);letter-spacing:var(--button-small-mobile-letter-spacing)}}._captionLarge_lev6r_1{font-family:Inter,sans-serif;font-weight:500;font-size:var(--caption-large-desktop-font-size);line-height:var(--caption-large-desktop-line-height);letter-spacing:var(--caption-large-desktop-letter-spacing);font-feature-settings:"dlig" 1}@media(max-width:767px){._captionLarge_lev6r_1{font-family:var(--ui-font-primary)}}._captionMedium_1gxrg_1{font-family:Inter,sans-serif;font-weight:400;font-size:var(--caption-medium-desktop-font-size);line-height:var(--caption-medium-desktop-line-height);letter-spacing:var(--caption-medium-desktop-letter-spacing);font-feature-settings:"dlig" 1}@media(max-width:767px){._captionMedium_1gxrg_1{font-family:var(--ui-font-primary)}}._captionUppercase_1mzfy_1{font-family:Inter,sans-serif;font-weight:400;font-size:var(--caption-uppercase-desktop-font-size);line-height:var(--caption-uppercase-desktop-line-height);letter-spacing:var(--caption-uppercase-desktop-letter-spacing);font-feature-settings:"dlig" 1;text-transform:uppercase}@media(max-width:767px){._captionUppercase_1mzfy_1{font-family:var(--ui-font-primary)}}._code_1to1m_1{font-family:Hack,monospace;font-weight:400;font-size:var(--code-desktop-font-size);line-height:var(--code-desktop-line-height);letter-spacing:var(--code-desktop-letter-spacing);font-feature-settings:"dlig" 1}@media(max-width:767px){._code_1to1m_1{font-size:var(--code-mobile-font-size)}}
|
|
1
|
+
:root{--h-extra-desktop-font-size: 6rem;--h-extra-desktop-line-height: 6.625rem;--h-extra-desktop-letter-spacing: -.03em;--h1-desktop-font-size: 4rem;--h1-desktop-line-height: 4rem;--h1-desktop-letter-spacing: -.02em;--h2-desktop-font-size: 3.25rem;--h2-desktop-line-height: 3.5625rem;--h2-desktop-letter-spacing: -.02em;--h3-desktop-font-size: 2.75rem;--h3-desktop-line-height: 3rem;--h3-desktop-letter-spacing: -.02em;--h4-desktop-font-size: 2.25rem;--h4-desktop-line-height: 2.6875rem;--h4-desktop-letter-spacing: -.02em;--h5-desktop-font-size: 1.875rem;--h5-desktop-line-height: 2.0625rem;--h5-desktop-letter-spacing: -.01em;--h6-desktop-font-size: 1.75rem;--h6-desktop-line-height: 1.9375rem;--h6-desktop-letter-spacing: -.01em;--paragraph-desktop-font-size: 1.5rem;--paragraph-desktop-line-height: 2.25rem;--paragraph-desktop-letter-spacing: -.01em;--button-large-desktop-font-size: 1.25rem;--button-large-desktop-line-height: 1.5rem;--button-large-desktop-letter-spacing: -.02em;--body-large-desktop-font-size: 1.25rem;--body-large-desktop-line-height: 1.875rem;--body-large-desktop-letter-spacing: -.02em;--button-small-desktop-font-size: 1.0625rem;--button-small-desktop-line-height: 1.5rem;--button-small-desktop-letter-spacing: -.02em;--body-small-desktop-font-size: 1rem;--body-small-desktop-line-height: 1.5rem;--body-small-desktop-letter-spacing: -.02em;--caption-large-desktop-font-size: 1rem;--caption-large-desktop-line-height: 1.5rem;--caption-large-desktop-letter-spacing: -.02em;--caption-medium-desktop-font-size: .75rem;--caption-medium-desktop-line-height: 1.125rem;--caption-medium-desktop-letter-spacing: -.02em;--caption-uppercase-desktop-font-size: .8125rem;--caption-uppercase-desktop-line-height: 1rem;--caption-uppercase-desktop-letter-spacing: .04em;--code-desktop-font-size: .875rem;--code-desktop-line-height: 1.0625rem;--code-desktop-letter-spacing: 0;--h-extra-tablet-font-size: 6rem;--h-extra-tablet-line-height: 6.625rem;--h-extra-tablet-letter-spacing: -.03em;--h1-tablet-font-size: 4rem;--h1-tablet-line-height: 4rem;--h1-tablet-letter-spacing: -.02em;--h2-tablet-font-size: 3rem;--h2-tablet-line-height: 3.3125rem;--h2-tablet-letter-spacing: -.02em;--h3-tablet-font-size: 2.5rem;--h3-tablet-line-height: 2.75rem;--h3-tablet-letter-spacing: -.02em;--h4-tablet-font-size: 2.25rem;--h4-tablet-line-height: 2.6875rem;--h4-tablet-letter-spacing: -.02em;--h5-tablet-font-size: 2rem;--h5-tablet-line-height: 2.1875rem;--h5-tablet-letter-spacing: -.01em;--h6-tablet-font-size: 1.5rem;--h6-tablet-line-height: 1.625rem;--h6-tablet-letter-spacing: -.01em;--paragraph-tablet-font-size: 1.375rem;--paragraph-tablet-line-height: 2.0625rem;--paragraph-tablet-letter-spacing: -.01em;--button-large-tablet-font-size: 1.125rem;--button-large-tablet-line-height: 1.5rem;--button-large-tablet-letter-spacing: -.02em;--body-large-tablet-font-size: 1.125rem;--body-large-tablet-line-height: 1.6875rem;--body-large-tablet-letter-spacing: -.02em;--button-small-tablet-font-size: 1rem;--button-small-tablet-line-height: 1.5rem;--button-small-tablet-letter-spacing: -.02em;--body-small-tablet-font-size: 1rem;--body-small-tablet-line-height: 1.5rem;--body-small-tablet-letter-spacing: -.02em;--caption-large-tablet-font-size: 1rem;--caption-large-tablet-line-height: 1.5rem;--caption-large-tablet-letter-spacing: -.02em;--caption-medium-tablet-font-size: .75rem;--caption-medium-tablet-line-height: 1.125rem;--caption-medium-tablet-letter-spacing: -.02em;--caption-uppercase-tablet-font-size: .8125rem;--caption-uppercase-tablet-line-height: 1rem;--caption-uppercase-tablet-letter-spacing: .04em;--code-tablet-font-size: .875rem;--code-tablet-line-height: 1.0625rem;--code-tablet-letter-spacing: 0;--h-extra-mobile-font-size: 3.5rem;--h-extra-mobile-line-height: 3.875rem;--h-extra-mobile-letter-spacing: -.02em;--h1-mobile-font-size: 2.75rem;--h1-mobile-line-height: 2.75rem;--h1-mobile-letter-spacing: -.01em;--h2-mobile-font-size: 2.5rem;--h2-mobile-line-height: 2.75rem;--h2-mobile-letter-spacing: -.01em;--h3-mobile-font-size: 2.25rem;--h3-mobile-line-height: 2.5rem;--h3-mobile-letter-spacing: -.01em;--h4-mobile-font-size: 2rem;--h4-mobile-line-height: 2.625rem;--h4-mobile-letter-spacing: -.01em;--h5-mobile-font-size: 1.375rem;--h5-mobile-line-height: 1.5rem;--h5-mobile-letter-spacing: -.01em;--h6-mobile-font-size: 1.25rem;--h6-mobile-line-height: 1.375rem;--h6-mobile-letter-spacing: -.01em;--paragraph-mobile-font-size: 1.125rem;--paragraph-mobile-line-height: 1.6875rem;--paragraph-mobile-letter-spacing: -.01em;--button-large-mobile-font-size: 1rem;--button-large-mobile-line-height: 1.5rem;--button-large-mobile-letter-spacing: -.01em;--body-large-mobile-font-size: 1rem;--body-large-mobile-line-height: 1.5rem;--body-large-mobile-letter-spacing: -.01em;--button-small-mobile-font-size: .875rem;--button-small-mobile-line-height: 1.5rem;--button-small-mobile-letter-spacing: -.01em;--body-small-mobile-font-size: .875rem;--body-small-mobile-line-height: 1.3125rem;--body-small-mobile-letter-spacing: -.01em;--caption-large-mobile-font-size: 1rem;--caption-large-mobile-line-height: 1.5rem;--caption-large-mobile-letter-spacing: -.02em;--caption-medium-mobile-font-size: .75rem;--caption-medium-mobile-line-height: 1.125rem;--caption-medium-mobile-letter-spacing: -.02em;--caption-uppercase-mobile-font-size: .8125rem;--caption-uppercase-mobile-line-height: 1rem;--caption-uppercase-mobile-letter-spacing: .04em;--code-mobile-font-size: .75rem;--code-mobile-line-height: 1.0625rem;--code-mobile-letter-spacing: 0}._hExtra_dx1fb_1{font-family:var(--ui-font-primary);font-weight:600;font-size:var(--h-extra-desktop-font-size);line-height:var(--h-extra-desktop-line-height);letter-spacing:var(--h-extra-desktop-letter-spacing);font-feature-settings:"dlig" 1,"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:767px){._hExtra_dx1fb_1{font-size:var(--h-extra-mobile-font-size);line-height:var(--h-extra-mobile-line-height);letter-spacing:var(--h-extra-mobile-letter-spacing)}}._h1_iuejz_1{font-family:var(--ui-font-primary);font-weight:500;font-size:var(--h1-desktop-font-size);line-height:var(--h1-desktop-line-height);letter-spacing:var(--h1-desktop-letter-spacing);font-feature-settings:"dlig" 1,"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:767px){._h1_iuejz_1{font-size:var(--h1-mobile-font-size);line-height:var(--h1-mobile-line-height);letter-spacing:var(--h1-mobile-letter-spacing)}}._h2_1i98w_1{font-family:var(--ui-font-primary);font-weight:500;font-size:var(--h2-desktop-font-size);line-height:var(--h2-desktop-line-height);letter-spacing:var(--h2-desktop-letter-spacing);font-feature-settings:"dlig" 1,"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:1439px){._h2_1i98w_1{font-size:var(--h2-tablet-font-size);line-height:var(--h2-tablet-line-height)}}@media(max-width:767px){._h2_1i98w_1{font-size:var(--h2-mobile-font-size);line-height:var(--h2-mobile-line-height);letter-spacing:var(--h2-mobile-letter-spacing)}}._h3_wip1f_1{font-family:var(--ui-font-primary);font-weight:500;font-size:var(--h3-desktop-font-size);line-height:var(--h3-desktop-line-height);letter-spacing:var(--h3-desktop-letter-spacing);font-feature-settings:"dlig" 1,"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:1439px){._h3_wip1f_1{font-size:var(--h3-tablet-font-size);line-height:var(--h3-tablet-line-height)}}@media(max-width:767px){._h3_wip1f_1{font-size:var(--h3-mobile-font-size);line-height:var(--h3-mobile-line-height);letter-spacing:var(--h3-mobile-letter-spacing)}}._h4_thwwf_1{font-family:var(--ui-font-primary);font-weight:500;font-size:var(--h4-desktop-font-size);line-height:var(--h4-desktop-line-height);letter-spacing:var(--h4-desktop-letter-spacing);font-feature-settings:"dlig" 1,"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:767px){._h4_thwwf_1{font-size:var(--h4-mobile-font-size);line-height:var(--h4-mobile-line-height);letter-spacing:var(--h4-mobile-letter-spacing)}}._h5_zem0s_1{font-family:var(--ui-font-primary);font-weight:500;font-size:var(--h5-desktop-font-size);line-height:var(--h5-desktop-line-height);letter-spacing:var(--h5-desktop-letter-spacing);font-feature-settings:"dlig" 1,"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:1439px){._h5_zem0s_1{font-size:var(--h5-tablet-font-size);line-height:var(--h5-tablet-line-height)}}@media(max-width:767px){._h5_zem0s_1{font-size:var(--h5-mobile-font-size);line-height:var(--h5-mobile-line-height)}}._h6_py9o3_1{font-family:var(--ui-font-primary);font-weight:500;font-size:var(--h6-desktop-font-size);line-height:var(--h6-desktop-line-height);letter-spacing:var(--h6-desktop-letter-spacing);font-feature-settings:"dlig" 1,"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:1439px){._h6_py9o3_1{font-size:var(--h6-tablet-font-size);line-height:var(--h6-tablet-line-height)}}@media(max-width:767px){._h6_py9o3_1{font-size:var(--h6-mobile-font-size);line-height:var(--h6-mobile-line-height)}}._paragraph_6mdxp_1{font-family:var(--ui-font-primary);font-weight:500;font-size:var(--paragraph-desktop-font-size);line-height:var(--paragraph-desktop-line-height);letter-spacing:var(--paragraph-desktop-letter-spacing);font-feature-settings:"ss01" 1,"ss02" 1,"ss04" 1;margin:0}@media(max-width:1439px){._paragraph_6mdxp_1{font-size:var(--paragraph-tablet-font-size);line-height:var(--paragraph-tablet-line-height)}}@media(max-width:767px){._paragraph_6mdxp_1{font-size:var(--paragraph-mobile-font-size);line-height:var(--paragraph-mobile-line-height)}}._bodyLarge_zgxpr_1{font-family:var(--ui-font-primary);font-weight:400;font-size:var(--body-large-desktop-font-size);line-height:var(--body-large-desktop-line-height);letter-spacing:var(--body-large-desktop-letter-spacing);font-feature-settings:"dlig" 1;margin:0}@media(max-width:1439px){._bodyLarge_zgxpr_1{font-size:var(--body-large-tablet-font-size);line-height:var(--body-large-tablet-line-height)}}@media(max-width:767px){._bodyLarge_zgxpr_1{font-size:var(--body-large-mobile-font-size);line-height:var(--body-large-mobile-line-height);letter-spacing:var(--body-large-mobile-letter-spacing)}}._bodySmall_izgxi_1{font-family:var(--ui-font-primary);font-weight:400;font-size:var(--body-small-desktop-font-size);line-height:var(--body-small-desktop-line-height);letter-spacing:var(--body-small-desktop-letter-spacing);font-feature-settings:"dlig" 1;margin:0}@media(max-width:767px){._bodySmall_izgxi_1{font-size:var(--body-small-mobile-font-size);line-height:var(--body-small-mobile-line-height);letter-spacing:var(--body-small-mobile-letter-spacing)}}._buttonLarge_1kib2_1{font-family:var(--ui-font-body);font-weight:500;font-size:var(--button-large-desktop-font-size);line-height:var(--button-large-desktop-line-height);letter-spacing:var(--button-large-desktop-letter-spacing);font-feature-settings:"dlig" 1}@media(max-width:1439px){._buttonLarge_1kib2_1{font-size:var(--button-large-tablet-font-size)}}@media(max-width:767px){._buttonLarge_1kib2_1{font-family:var(--ui-font-primary);font-size:var(--button-large-mobile-font-size);letter-spacing:var(--button-large-mobile-letter-spacing)}}._buttonSmall_1ga6z_1{font-family:var(--ui-font-body);font-weight:500;font-size:var(--button-small-desktop-font-size);line-height:var(--button-small-desktop-line-height);letter-spacing:var(--button-small-desktop-letter-spacing);font-feature-settings:"dlig" 1}@media(max-width:1439px){._buttonSmall_1ga6z_1{font-size:var(--button-small-tablet-font-size)}}@media(max-width:767px){._buttonSmall_1ga6z_1{font-family:var(--ui-font-primary);font-size:var(--button-small-mobile-font-size);letter-spacing:var(--button-small-mobile-letter-spacing)}}._captionLarge_keyl9_1{font-family:var(--ui-font-body);font-weight:500;font-size:var(--caption-large-desktop-font-size);line-height:var(--caption-large-desktop-line-height);letter-spacing:var(--caption-large-desktop-letter-spacing);font-feature-settings:"dlig" 1}@media(max-width:767px){._captionLarge_keyl9_1{font-family:var(--ui-font-primary)}}._captionMedium_9rjdy_1{font-family:var(--ui-font-body);font-weight:400;font-size:var(--caption-medium-desktop-font-size);line-height:var(--caption-medium-desktop-line-height);letter-spacing:var(--caption-medium-desktop-letter-spacing);font-feature-settings:"dlig" 1}@media(max-width:767px){._captionMedium_9rjdy_1{font-family:var(--ui-font-primary)}}._captionUppercase_15jnh_1{font-family:var(--ui-font-body);font-weight:400;font-size:var(--caption-uppercase-desktop-font-size);line-height:var(--caption-uppercase-desktop-line-height);letter-spacing:var(--caption-uppercase-desktop-letter-spacing);font-feature-settings:"dlig" 1;text-transform:uppercase}@media(max-width:767px){._captionUppercase_15jnh_1{font-family:var(--ui-font-primary)}}._code_1o5oi_1{font-family:var(--ui-font-code);font-weight:400;font-size:var(--code-desktop-font-size);line-height:var(--code-desktop-line-height);letter-spacing:var(--code-desktop-letter-spacing);font-feature-settings:"dlig" 1}@media(max-width:767px){._code_1o5oi_1{font-size:var(--code-mobile-font-size)}}._button_6hqdb_1{appearance:none;border:none;background:none;cursor:pointer;border-radius:999px;padding:1em 1.6em;font-family:var(--ui-font-body);font-weight:500;font-size:var(--button-large-desktop-font-size);line-height:var(--button-large-desktop-line-height);letter-spacing:var(--button-large-desktop-letter-spacing);font-feature-settings:"dlig" 1;transition:background-color .15s ease,border-color .15s ease,color .15s ease}@media(max-width:1439px){._button_6hqdb_1{font-size:var(--button-large-tablet-font-size);padding:1.111em 1.556em}}@media(max-width:767px){._button_6hqdb_1{font-size:var(--button-large-mobile-font-size);letter-spacing:var(--button-large-mobile-letter-spacing);padding:1em 1.5em}}._button_6hqdb_1:focus-visible{outline:2px solid #5aa1ff;outline-offset:2px}._button_6hqdb_1:disabled{cursor:not-allowed}._sm_6hqdb_37{font-size:var(--button-small-desktop-font-size);line-height:var(--button-small-desktop-line-height);letter-spacing:var(--button-small-desktop-letter-spacing);padding:.706em 1.176em}@media(max-width:1439px){._sm_6hqdb_37{font-size:var(--button-small-tablet-font-size)}}@media(max-width:767px){._sm_6hqdb_37{font-size:var(--button-small-mobile-font-size);letter-spacing:var(--button-small-mobile-letter-spacing);padding:.571em 1.143em}}._primary_6hqdb_56{background-color:#06f;color:#fff}._primary_6hqdb_56:hover:not(:disabled){background-color:#0039b5}._primary_6hqdb_56:active:not(:disabled){background-color:#001d7a}._primary_6hqdb_56:disabled{background-color:#e6e9ed;color:#b7bec7}._secondary_6hqdb_71{background-color:transparent;color:#151b23;border:2px solid #151b23}._secondary_6hqdb_71:hover:not(:disabled){border-color:#0039b5;color:#0039b5}._secondary_6hqdb_71:active:not(:disabled){border-color:#001d7a;color:#001d7a}._secondary_6hqdb_71:disabled{border:1px solid #b7bec7;color:#b7bec7}._negative_6hqdb_89{background-color:#ffe8ef;color:#6b0039}._negative_6hqdb_89:hover:not(:disabled){background-color:#ffcbdb}._negative_6hqdb_89:active:not(:disabled){background-color:#ffafc8}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@smartyweb/ui",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.cjs",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -23,7 +23,8 @@
|
|
|
23
23
|
"changeset": "changeset",
|
|
24
24
|
"release": "changeset publish",
|
|
25
25
|
"storybook": "node sd.config.js && storybook dev -p 6006",
|
|
26
|
-
"build-storybook": "storybook build"
|
|
26
|
+
"build-storybook": "storybook build",
|
|
27
|
+
"lint": "eslint src --max-warnings 0 && stylelint 'src/**/*.scss'"
|
|
27
28
|
},
|
|
28
29
|
"peerDependencies": {
|
|
29
30
|
"react": "^19.0.0",
|
|
@@ -31,17 +32,22 @@
|
|
|
31
32
|
},
|
|
32
33
|
"devDependencies": {
|
|
33
34
|
"@changesets/cli": "^2.29.8",
|
|
35
|
+
"@eslint/js": "^10.0.0",
|
|
34
36
|
"@storybook/react-vite": "^10.2.15",
|
|
35
37
|
"@types/react": "^19.2.13",
|
|
36
38
|
"@types/react-dom": "^19.2.3",
|
|
37
39
|
"@vitejs/plugin-react": "^5.1.3",
|
|
40
|
+
"eslint": "^10.0.0",
|
|
38
41
|
"prettier": "^3.8.1",
|
|
39
42
|
"react": "^19.2.4",
|
|
40
43
|
"react-dom": "^19.2.4",
|
|
41
44
|
"sass": "^1.97.3",
|
|
42
45
|
"storybook": "^10.2.15",
|
|
43
46
|
"style-dictionary": "^4.4.0",
|
|
47
|
+
"stylelint": "^17.5.0",
|
|
48
|
+
"stylelint-config-standard-scss": "^17.0.0",
|
|
44
49
|
"typescript": "^5.9.3",
|
|
50
|
+
"typescript-eslint": "^8.57.0",
|
|
45
51
|
"vite": "^7.3.1",
|
|
46
52
|
"vite-plugin-dts": "^4.5.4"
|
|
47
53
|
}
|