@vinyasa/tokens 1.0.21 → 1.0.23

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.
@@ -31,7 +31,9 @@ __webpack_require__.d(__webpack_exports__, {
31
31
  VinyasaProvider: ()=>VinyasaProvider,
32
32
  breakpoints: ()=>breakpoints,
33
33
  createTheme: ()=>createTheme,
34
+ darkTheme: ()=>darkTheme,
34
35
  defaultTheme: ()=>defaultTheme,
36
+ focusRingStyle: ()=>focusRingStyle,
35
37
  grid: ()=>grid,
36
38
  resolveBaseTheme: ()=>resolveBaseTheme,
37
39
  resolveDensitySpacing: ()=>resolveDensitySpacing,
@@ -43,6 +45,7 @@ var themeContract = {
43
45
  onPrimary: 'var(--vinyasa-on-primary)',
44
46
  secondary: 'var(--vinyasa-secondary)',
45
47
  onSecondary: 'var(--vinyasa-on-secondary)',
48
+ surface: 'var(--vinyasa-surface)',
46
49
  tertiary: 'var(--vinyasa-tertiary)',
47
50
  onTertiary: 'var(--vinyasa-on-tertiary)',
48
51
  error: 'var(--vinyasa-error)',
@@ -115,37 +118,74 @@ var themeContract = {
115
118
  zIndexToast: 'var(--vinyasa-z-index-toast)',
116
119
  zIndexTooltip: 'var(--vinyasa-z-index-tooltip)'
117
120
  };
118
- const gray = {
119
- 50: '#f9fafb',
120
- 100: '#f3f4f6',
121
- 200: '#e5e7eb',
122
- 300: '#d1d5db',
123
- 400: '#9ca3af',
124
- 500: '#6b7280',
125
- 600: '#4b5563',
126
- 700: '#374151',
127
- 800: '#1f2937',
128
- 900: '#111827'
129
- };
130
- const blue = {
131
- 100: '#dbeafe',
132
- 500: '#2563eb',
133
- 700: '#1d4ed8'
134
- };
135
- const indigo = {
136
- 600: '#4f46e5'
137
- };
138
- const red = {
139
- 100: '#fee2e2',
140
- 600: '#dc2626'
141
- };
142
- const green = {
143
- 100: '#dcfce7',
144
- 700: '#15803d'
145
- };
146
- const amber = {
147
- 100: '#fef3c7',
148
- 700: '#b45309'
121
+ const focusRingStyle = (vars)=>({
122
+ outline: 'none',
123
+ borderColor: vars.focus,
124
+ boxShadow: `0 0 0 1px ${vars.focus}, 0 0 0 4px color-mix(in srgb, ${vars.focus} 16%, transparent)`
125
+ });
126
+ const stone = {
127
+ 50: '#FAFAFC',
128
+ 100: '#F6F5F8',
129
+ 200: '#E3E0EA',
130
+ 300: '#CFCADC',
131
+ 400: '#A79DBE',
132
+ 500: '#7C7191',
133
+ 600: '#5C5470',
134
+ 700: '#4A4458',
135
+ 800: '#332E40',
136
+ 900: '#1E1A28'
137
+ };
138
+ const stoneDark = {
139
+ 50: '#100E17',
140
+ 100: '#161320',
141
+ 200: '#221C30',
142
+ 300: '#362E4C',
143
+ 400: '#493D64',
144
+ 500: '#7C7191',
145
+ 600: '#B9B3CB',
146
+ 700: '#D6D2E0',
147
+ 800: '#E9E7EF',
148
+ 900: '#F1EFF5'
149
+ };
150
+ const paper = '#FFFFFF';
151
+ const paperDark = stoneDark[200];
152
+ const dusk = {
153
+ tint: '#EEE9F9',
154
+ 600: '#4B2E8C',
155
+ 700: '#37206B',
156
+ onDusk: '#FFFFFF'
157
+ };
158
+ const duskDark = {
159
+ tint: '#2E2648',
160
+ 600: '#B49BEA',
161
+ 700: '#CBB8F2',
162
+ onDusk: '#1A1425'
163
+ };
164
+ const moss = {
165
+ tint: '#E4EEE8',
166
+ 700: '#3F6650'
167
+ };
168
+ const mossDark = {
169
+ tint: '#22332A',
170
+ 700: '#7FB89A'
171
+ };
172
+ const ember = {
173
+ tint: '#F7E7E1',
174
+ 600: '#A64B2A',
175
+ onEmber: '#FFFFFF'
176
+ };
177
+ const emberDark = {
178
+ tint: '#3A281F',
179
+ 600: '#E08D6D',
180
+ onEmber: '#2A1208'
181
+ };
182
+ const saffron = {
183
+ tint: '#F5EBDD',
184
+ 700: '#A15C1F'
185
+ };
186
+ const saffronDark = {
187
+ tint: '#3A2F1B',
188
+ 700: '#D9A15C'
149
189
  };
150
190
  const space = {
151
191
  1: '0.25rem',
@@ -164,8 +204,8 @@ const borderWidth = {
164
204
  thin: '1px'
165
205
  };
166
206
  const fontFamily = {
167
- sans: "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif",
168
- mono: "ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace"
207
+ sans: "'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif",
208
+ mono: "'IBM Plex Mono', ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace"
169
209
  };
170
210
  const fontSize = {
171
211
  xs: '0.75rem',
@@ -212,9 +252,14 @@ const opacity = {
212
252
  hover: '0.92'
213
253
  };
214
254
  const shadow = {
215
- sm: '0 1px 2px 0 rgba(0, 0, 0, 0.05)',
216
- md: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)',
217
- lg: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)'
255
+ sm: '0 1px 1px rgba(30, 20, 50, 0.06)',
256
+ md: '0 1px 2px rgba(30, 20, 50, 0.05), 0 8px 20px -8px rgba(43, 26, 90, 0.18)',
257
+ lg: '0 2px 4px rgba(30, 20, 50, 0.06), 0 16px 40px -12px rgba(43, 26, 90, 0.28)'
258
+ };
259
+ const shadowDark = {
260
+ sm: '0 1px 1px rgba(0, 0, 0, 0.45)',
261
+ md: '0 1px 2px rgba(0, 0, 0, 0.35), 0 8px 20px -8px rgba(0, 0, 0, 0.55)',
262
+ lg: '0 2px 4px rgba(0, 0, 0, 0.4), 0 16px 40px -12px rgba(0, 0, 0, 0.65)'
218
263
  };
219
264
  const primitives_blur = {
220
265
  sm: '4px',
@@ -251,25 +296,26 @@ function _object_spread(target) {
251
296
  }
252
297
  return target;
253
298
  }
254
- const defaultTheme = {
255
- primary: indigo["600"],
256
- onPrimary: '#ffffff',
257
- secondary: gray["100"],
258
- onSecondary: gray["900"],
259
- tertiary: blue["100"],
260
- onTertiary: blue["700"],
261
- error: red["600"],
262
- onError: '#ffffff',
263
- focus: blue["500"],
264
- textMuted: gray["500"],
265
- statusInfoBg: blue["100"],
266
- statusInfoText: blue["700"],
267
- statusSuccessBg: green["100"],
268
- statusSuccessText: green["700"],
269
- statusWarningBg: amber["100"],
270
- statusWarningText: amber["700"],
271
- statusErrorBg: red["100"],
272
- statusErrorText: red["600"],
299
+ function theme_ownKeys(object, enumerableOnly) {
300
+ var keys = Object.keys(object);
301
+ if (Object.getOwnPropertySymbols) {
302
+ var symbols = Object.getOwnPropertySymbols(object);
303
+ if (enumerableOnly) symbols = symbols.filter(function(sym) {
304
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
305
+ });
306
+ keys.push.apply(keys, symbols);
307
+ }
308
+ return keys;
309
+ }
310
+ function _object_spread_props(target, source) {
311
+ source = null != source ? source : {};
312
+ if (Object.getOwnPropertyDescriptors) Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
313
+ else theme_ownKeys(Object(source)).forEach(function(key) {
314
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
315
+ });
316
+ return target;
317
+ }
318
+ const structural = {
273
319
  space1: space["1"],
274
320
  space2: space["2"],
275
321
  space3: space["3"],
@@ -280,7 +326,6 @@ const defaultTheme = {
280
326
  radiusMd: radius.md,
281
327
  radiusFull: radius.full,
282
328
  borderWidthThin: borderWidth.thin,
283
- borderColorDefault: gray["200"],
284
329
  fontFamilySans: fontFamily.sans,
285
330
  fontFamilyMono: fontFamily.mono,
286
331
  fontSizeXs: fontSize.xs,
@@ -313,12 +358,6 @@ const defaultTheme = {
313
358
  focusRingOffset: focusRing.offset,
314
359
  opacityDisabled: opacity.disabled,
315
360
  opacityHover: opacity.hover,
316
- shadowSm: shadow.sm,
317
- shadowMd: shadow.md,
318
- shadowLg: shadow.lg,
319
- elevationRaised: shadow.sm,
320
- elevationOverlay: shadow.md,
321
- elevationModal: shadow.lg,
322
361
  blurSm: primitives_blur.sm,
323
362
  blurMd: primitives_blur.md,
324
363
  blurLg: primitives_blur.lg,
@@ -328,10 +367,69 @@ const defaultTheme = {
328
367
  zIndexToast: zIndex.toast,
329
368
  zIndexTooltip: zIndex.tooltip
330
369
  };
370
+ const defaultTheme = _object_spread_props(_object_spread({}, structural), {
371
+ primary: dusk["600"],
372
+ onPrimary: dusk.onDusk,
373
+ secondary: stone["200"],
374
+ onSecondary: stone["900"],
375
+ surface: paper,
376
+ tertiary: dusk.tint,
377
+ onTertiary: dusk["600"],
378
+ error: ember["600"],
379
+ onError: ember.onEmber,
380
+ focus: dusk["600"],
381
+ textMuted: stone["700"],
382
+ statusInfoBg: dusk.tint,
383
+ statusInfoText: dusk["600"],
384
+ statusSuccessBg: moss.tint,
385
+ statusSuccessText: moss["700"],
386
+ statusWarningBg: saffron.tint,
387
+ statusWarningText: saffron["700"],
388
+ statusErrorBg: ember.tint,
389
+ statusErrorText: ember["600"],
390
+ borderColorDefault: stone["200"],
391
+ shadowSm: shadow.sm,
392
+ shadowMd: shadow.md,
393
+ shadowLg: shadow.lg,
394
+ elevationRaised: shadow.sm,
395
+ elevationOverlay: shadow.md,
396
+ elevationModal: shadow.lg
397
+ });
398
+ const darkTheme = _object_spread_props(_object_spread({}, structural), {
399
+ primary: duskDark["600"],
400
+ onPrimary: duskDark.onDusk,
401
+ secondary: stoneDark["300"],
402
+ onSecondary: stoneDark["900"],
403
+ surface: paperDark,
404
+ tertiary: duskDark.tint,
405
+ onTertiary: duskDark["600"],
406
+ error: emberDark["600"],
407
+ onError: emberDark.onEmber,
408
+ focus: duskDark["600"],
409
+ textMuted: stoneDark["600"],
410
+ statusInfoBg: duskDark.tint,
411
+ statusInfoText: duskDark["600"],
412
+ statusSuccessBg: mossDark.tint,
413
+ statusSuccessText: mossDark["700"],
414
+ statusWarningBg: saffronDark.tint,
415
+ statusWarningText: saffronDark["700"],
416
+ statusErrorBg: emberDark.tint,
417
+ statusErrorText: emberDark["600"],
418
+ borderColorDefault: stoneDark["300"],
419
+ shadowSm: shadowDark.sm,
420
+ shadowMd: shadowDark.md,
421
+ shadowLg: shadowDark.lg,
422
+ elevationRaised: shadowDark.sm,
423
+ elevationOverlay: shadowDark.md,
424
+ elevationModal: shadowDark.lg
425
+ });
331
426
  const createTheme = (overrides = {})=>_object_spread({}, defaultTheme, overrides);
332
427
  const themes = {
333
428
  light: {
334
429
  normal: defaultTheme
430
+ },
431
+ dark: {
432
+ normal: darkTheme
335
433
  }
336
434
  };
337
435
  const resolveBaseTheme = (colorScheme, contrast)=>{
@@ -375,6 +473,7 @@ const grid = {
375
473
  const jsx_runtime_namespaceObject = require("react/jsx-runtime");
376
474
  const dynamic_namespaceObject = require("@vanilla-extract/dynamic");
377
475
  const external_react_namespaceObject = require("react");
476
+ var resetScope = '_1k07u5u0';
378
477
  function VinyasaProvider_define_property(obj, key, value) {
379
478
  if (key in obj) Object.defineProperty(obj, key, {
380
479
  value: value,
@@ -422,6 +521,7 @@ const VinyasaProvider = ({ theme, colorScheme = 'light', contrast = 'normal', de
422
521
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(ThemeContext.Provider, {
423
522
  value: resolvedTheme,
424
523
  children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
524
+ className: resetScope,
425
525
  style: style,
426
526
  "data-vinyasa-color-scheme": colorScheme,
427
527
  "data-vinyasa-contrast": contrast,
@@ -433,7 +533,9 @@ const VinyasaProvider = ({ theme, colorScheme = 'light', contrast = 'normal', de
433
533
  exports.VinyasaProvider = __webpack_exports__.VinyasaProvider;
434
534
  exports.breakpoints = __webpack_exports__.breakpoints;
435
535
  exports.createTheme = __webpack_exports__.createTheme;
536
+ exports.darkTheme = __webpack_exports__.darkTheme;
436
537
  exports.defaultTheme = __webpack_exports__.defaultTheme;
538
+ exports.focusRingStyle = __webpack_exports__.focusRingStyle;
437
539
  exports.grid = __webpack_exports__.grid;
438
540
  exports.resolveBaseTheme = __webpack_exports__.resolveBaseTheme;
439
541
  exports.resolveDensitySpacing = __webpack_exports__.resolveDensitySpacing;
@@ -443,7 +545,9 @@ for(var __rspack_i in __webpack_exports__)if (-1 === [
443
545
  "VinyasaProvider",
444
546
  "breakpoints",
445
547
  "createTheme",
548
+ "darkTheme",
446
549
  "defaultTheme",
550
+ "focusRingStyle",
447
551
  "grid",
448
552
  "resolveBaseTheme",
449
553
  "resolveDensitySpacing",
@@ -0,0 +1,4 @@
1
+ ._1k07u5u0, ._1k07u5u0 * {
2
+ box-sizing: border-box;
3
+ }
4
+
@@ -3,6 +3,7 @@ export declare const themeContract: {
3
3
  onPrimary: `var(--${string})`;
4
4
  secondary: `var(--${string})`;
5
5
  onSecondary: `var(--${string})`;
6
+ surface: `var(--${string})`;
6
7
  tertiary: `var(--${string})`;
7
8
  onTertiary: `var(--${string})`;
8
9
  error: `var(--${string})`;
@@ -0,0 +1,8 @@
1
+ import type { themeContract } from './contract.css';
2
+ type ThemeVars = typeof themeContract;
3
+ export declare const focusRingStyle: (vars: ThemeVars) => {
4
+ outline: string;
5
+ borderColor: `var(--${string})`;
6
+ boxShadow: string;
7
+ };
8
+ export {};
@@ -0,0 +1,4 @@
1
+ ._1k07u5u0, ._1k07u5u0 * {
2
+ box-sizing: border-box;
3
+ }
4
+
@@ -1,5 +1,6 @@
1
1
  export { themeContract } from './contract.css';
2
- export { createTheme, defaultTheme, type VinyasaTheme } from './theme';
2
+ export { focusRingStyle } from './focusRing';
3
+ export { createTheme, darkTheme, defaultTheme, type VinyasaTheme } from './theme';
3
4
  export { resolveBaseTheme, type ColorScheme, type Contrast } from './themes';
4
5
  export { resolveDensitySpacing, type Density } from './density';
5
6
  export { breakpoints, grid } from './layout';
package/dist/esm/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ import "./index.css";
1
2
  import { jsx } from "react/jsx-runtime";
2
3
  import { assignInlineVars } from "@vanilla-extract/dynamic";
3
4
  import { createContext, useContext, useMemo } from "react";
@@ -6,6 +7,7 @@ var themeContract = {
6
7
  onPrimary: 'var(--vinyasa-on-primary)',
7
8
  secondary: 'var(--vinyasa-secondary)',
8
9
  onSecondary: 'var(--vinyasa-on-secondary)',
10
+ surface: 'var(--vinyasa-surface)',
9
11
  tertiary: 'var(--vinyasa-tertiary)',
10
12
  onTertiary: 'var(--vinyasa-on-tertiary)',
11
13
  error: 'var(--vinyasa-error)',
@@ -78,37 +80,74 @@ var themeContract = {
78
80
  zIndexToast: 'var(--vinyasa-z-index-toast)',
79
81
  zIndexTooltip: 'var(--vinyasa-z-index-tooltip)'
80
82
  };
81
- const gray = {
82
- 50: '#f9fafb',
83
- 100: '#f3f4f6',
84
- 200: '#e5e7eb',
85
- 300: '#d1d5db',
86
- 400: '#9ca3af',
87
- 500: '#6b7280',
88
- 600: '#4b5563',
89
- 700: '#374151',
90
- 800: '#1f2937',
91
- 900: '#111827'
92
- };
93
- const blue = {
94
- 100: '#dbeafe',
95
- 500: '#2563eb',
96
- 700: '#1d4ed8'
97
- };
98
- const indigo = {
99
- 600: '#4f46e5'
100
- };
101
- const red = {
102
- 100: '#fee2e2',
103
- 600: '#dc2626'
104
- };
105
- const green = {
106
- 100: '#dcfce7',
107
- 700: '#15803d'
108
- };
109
- const amber = {
110
- 100: '#fef3c7',
111
- 700: '#b45309'
83
+ const focusRingStyle = (vars)=>({
84
+ outline: 'none',
85
+ borderColor: vars.focus,
86
+ boxShadow: `0 0 0 1px ${vars.focus}, 0 0 0 4px color-mix(in srgb, ${vars.focus} 16%, transparent)`
87
+ });
88
+ const stone = {
89
+ 50: '#FAFAFC',
90
+ 100: '#F6F5F8',
91
+ 200: '#E3E0EA',
92
+ 300: '#CFCADC',
93
+ 400: '#A79DBE',
94
+ 500: '#7C7191',
95
+ 600: '#5C5470',
96
+ 700: '#4A4458',
97
+ 800: '#332E40',
98
+ 900: '#1E1A28'
99
+ };
100
+ const stoneDark = {
101
+ 50: '#100E17',
102
+ 100: '#161320',
103
+ 200: '#221C30',
104
+ 300: '#362E4C',
105
+ 400: '#493D64',
106
+ 500: '#7C7191',
107
+ 600: '#B9B3CB',
108
+ 700: '#D6D2E0',
109
+ 800: '#E9E7EF',
110
+ 900: '#F1EFF5'
111
+ };
112
+ const paper = '#FFFFFF';
113
+ const paperDark = stoneDark[200];
114
+ const dusk = {
115
+ tint: '#EEE9F9',
116
+ 600: '#4B2E8C',
117
+ 700: '#37206B',
118
+ onDusk: '#FFFFFF'
119
+ };
120
+ const duskDark = {
121
+ tint: '#2E2648',
122
+ 600: '#B49BEA',
123
+ 700: '#CBB8F2',
124
+ onDusk: '#1A1425'
125
+ };
126
+ const moss = {
127
+ tint: '#E4EEE8',
128
+ 700: '#3F6650'
129
+ };
130
+ const mossDark = {
131
+ tint: '#22332A',
132
+ 700: '#7FB89A'
133
+ };
134
+ const ember = {
135
+ tint: '#F7E7E1',
136
+ 600: '#A64B2A',
137
+ onEmber: '#FFFFFF'
138
+ };
139
+ const emberDark = {
140
+ tint: '#3A281F',
141
+ 600: '#E08D6D',
142
+ onEmber: '#2A1208'
143
+ };
144
+ const saffron = {
145
+ tint: '#F5EBDD',
146
+ 700: '#A15C1F'
147
+ };
148
+ const saffronDark = {
149
+ tint: '#3A2F1B',
150
+ 700: '#D9A15C'
112
151
  };
113
152
  const space = {
114
153
  1: '0.25rem',
@@ -127,8 +166,8 @@ const borderWidth = {
127
166
  thin: '1px'
128
167
  };
129
168
  const fontFamily = {
130
- sans: "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif",
131
- mono: "ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace"
169
+ sans: "'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif",
170
+ mono: "'IBM Plex Mono', ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace"
132
171
  };
133
172
  const fontSize = {
134
173
  xs: '0.75rem',
@@ -175,9 +214,14 @@ const opacity = {
175
214
  hover: '0.92'
176
215
  };
177
216
  const shadow = {
178
- sm: '0 1px 2px 0 rgba(0, 0, 0, 0.05)',
179
- md: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)',
180
- lg: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)'
217
+ sm: '0 1px 1px rgba(30, 20, 50, 0.06)',
218
+ md: '0 1px 2px rgba(30, 20, 50, 0.05), 0 8px 20px -8px rgba(43, 26, 90, 0.18)',
219
+ lg: '0 2px 4px rgba(30, 20, 50, 0.06), 0 16px 40px -12px rgba(43, 26, 90, 0.28)'
220
+ };
221
+ const shadowDark = {
222
+ sm: '0 1px 1px rgba(0, 0, 0, 0.45)',
223
+ md: '0 1px 2px rgba(0, 0, 0, 0.35), 0 8px 20px -8px rgba(0, 0, 0, 0.55)',
224
+ lg: '0 2px 4px rgba(0, 0, 0, 0.4), 0 16px 40px -12px rgba(0, 0, 0, 0.65)'
181
225
  };
182
226
  const primitives_blur = {
183
227
  sm: '4px',
@@ -191,25 +235,7 @@ const zIndex = {
191
235
  toast: '1300',
192
236
  tooltip: '1400'
193
237
  };
194
- const defaultTheme = {
195
- primary: indigo["600"],
196
- onPrimary: '#ffffff',
197
- secondary: gray["100"],
198
- onSecondary: gray["900"],
199
- tertiary: blue["100"],
200
- onTertiary: blue["700"],
201
- error: red["600"],
202
- onError: '#ffffff',
203
- focus: blue["500"],
204
- textMuted: gray["500"],
205
- statusInfoBg: blue["100"],
206
- statusInfoText: blue["700"],
207
- statusSuccessBg: green["100"],
208
- statusSuccessText: green["700"],
209
- statusWarningBg: amber["100"],
210
- statusWarningText: amber["700"],
211
- statusErrorBg: red["100"],
212
- statusErrorText: red["600"],
238
+ const structural = {
213
239
  space1: space["1"],
214
240
  space2: space["2"],
215
241
  space3: space["3"],
@@ -220,7 +246,6 @@ const defaultTheme = {
220
246
  radiusMd: radius.md,
221
247
  radiusFull: radius.full,
222
248
  borderWidthThin: borderWidth.thin,
223
- borderColorDefault: gray["200"],
224
249
  fontFamilySans: fontFamily.sans,
225
250
  fontFamilyMono: fontFamily.mono,
226
251
  fontSizeXs: fontSize.xs,
@@ -253,12 +278,6 @@ const defaultTheme = {
253
278
  focusRingOffset: focusRing.offset,
254
279
  opacityDisabled: opacity.disabled,
255
280
  opacityHover: opacity.hover,
256
- shadowSm: shadow.sm,
257
- shadowMd: shadow.md,
258
- shadowLg: shadow.lg,
259
- elevationRaised: shadow.sm,
260
- elevationOverlay: shadow.md,
261
- elevationModal: shadow.lg,
262
281
  blurSm: primitives_blur.sm,
263
282
  blurMd: primitives_blur.md,
264
283
  blurLg: primitives_blur.lg,
@@ -268,6 +287,64 @@ const defaultTheme = {
268
287
  zIndexToast: zIndex.toast,
269
288
  zIndexTooltip: zIndex.tooltip
270
289
  };
290
+ const defaultTheme = {
291
+ ...structural,
292
+ primary: dusk["600"],
293
+ onPrimary: dusk.onDusk,
294
+ secondary: stone["200"],
295
+ onSecondary: stone["900"],
296
+ surface: paper,
297
+ tertiary: dusk.tint,
298
+ onTertiary: dusk["600"],
299
+ error: ember["600"],
300
+ onError: ember.onEmber,
301
+ focus: dusk["600"],
302
+ textMuted: stone["700"],
303
+ statusInfoBg: dusk.tint,
304
+ statusInfoText: dusk["600"],
305
+ statusSuccessBg: moss.tint,
306
+ statusSuccessText: moss["700"],
307
+ statusWarningBg: saffron.tint,
308
+ statusWarningText: saffron["700"],
309
+ statusErrorBg: ember.tint,
310
+ statusErrorText: ember["600"],
311
+ borderColorDefault: stone["200"],
312
+ shadowSm: shadow.sm,
313
+ shadowMd: shadow.md,
314
+ shadowLg: shadow.lg,
315
+ elevationRaised: shadow.sm,
316
+ elevationOverlay: shadow.md,
317
+ elevationModal: shadow.lg
318
+ };
319
+ const darkTheme = {
320
+ ...structural,
321
+ primary: duskDark["600"],
322
+ onPrimary: duskDark.onDusk,
323
+ secondary: stoneDark["300"],
324
+ onSecondary: stoneDark["900"],
325
+ surface: paperDark,
326
+ tertiary: duskDark.tint,
327
+ onTertiary: duskDark["600"],
328
+ error: emberDark["600"],
329
+ onError: emberDark.onEmber,
330
+ focus: duskDark["600"],
331
+ textMuted: stoneDark["600"],
332
+ statusInfoBg: duskDark.tint,
333
+ statusInfoText: duskDark["600"],
334
+ statusSuccessBg: mossDark.tint,
335
+ statusSuccessText: mossDark["700"],
336
+ statusWarningBg: saffronDark.tint,
337
+ statusWarningText: saffronDark["700"],
338
+ statusErrorBg: emberDark.tint,
339
+ statusErrorText: emberDark["600"],
340
+ borderColorDefault: stoneDark["300"],
341
+ shadowSm: shadowDark.sm,
342
+ shadowMd: shadowDark.md,
343
+ shadowLg: shadowDark.lg,
344
+ elevationRaised: shadowDark.sm,
345
+ elevationOverlay: shadowDark.md,
346
+ elevationModal: shadowDark.lg
347
+ };
271
348
  const createTheme = (overrides = {})=>({
272
349
  ...defaultTheme,
273
350
  ...overrides
@@ -275,6 +352,9 @@ const createTheme = (overrides = {})=>({
275
352
  const themes = {
276
353
  light: {
277
354
  normal: defaultTheme
355
+ },
356
+ dark: {
357
+ normal: darkTheme
278
358
  }
279
359
  };
280
360
  const resolveBaseTheme = (colorScheme, contrast)=>{
@@ -314,6 +394,7 @@ const grid = {
314
394
  columns: 12,
315
395
  containerMaxWidth: '1280px'
316
396
  };
397
+ var resetScope = '_1k07u5u0';
317
398
  const ThemeContext = /*#__PURE__*/ createContext(defaultTheme);
318
399
  const useVinyasaTheme = ()=>useContext(ThemeContext);
319
400
  const VinyasaProvider = ({ theme, colorScheme = 'light', contrast = 'normal', density = 'comfortable', children })=>{
@@ -343,6 +424,7 @@ const VinyasaProvider = ({ theme, colorScheme = 'light', contrast = 'normal', de
343
424
  return /*#__PURE__*/ jsx(ThemeContext.Provider, {
344
425
  value: resolvedTheme,
345
426
  children: /*#__PURE__*/ jsx("div", {
427
+ className: resetScope,
346
428
  style: style,
347
429
  "data-vinyasa-color-scheme": colorScheme,
348
430
  "data-vinyasa-contrast": contrast,
@@ -351,4 +433,4 @@ const VinyasaProvider = ({ theme, colorScheme = 'light', contrast = 'normal', de
351
433
  })
352
434
  });
353
435
  };
354
- export { VinyasaProvider, breakpoints, createTheme, defaultTheme, grid, resolveBaseTheme, resolveDensitySpacing, themeContract, useVinyasaTheme };
436
+ export { VinyasaProvider, breakpoints, createTheme, darkTheme, defaultTheme, focusRingStyle, grid, resolveBaseTheme, resolveDensitySpacing, themeContract, useVinyasaTheme };
@@ -1,34 +1,78 @@
1
- export declare const gray: {
2
- readonly 50: "#f9fafb";
3
- readonly 100: "#f3f4f6";
4
- readonly 200: "#e5e7eb";
5
- readonly 300: "#d1d5db";
6
- readonly 400: "#9ca3af";
7
- readonly 500: "#6b7280";
8
- readonly 600: "#4b5563";
9
- readonly 700: "#374151";
10
- readonly 800: "#1f2937";
11
- readonly 900: "#111827";
12
- };
13
- export declare const blue: {
14
- readonly 100: "#dbeafe";
15
- readonly 500: "#2563eb";
16
- readonly 700: "#1d4ed8";
17
- };
18
- export declare const indigo: {
19
- readonly 600: "#4f46e5";
20
- };
21
- export declare const red: {
22
- readonly 100: "#fee2e2";
23
- readonly 600: "#dc2626";
24
- };
25
- export declare const green: {
26
- readonly 100: "#dcfce7";
27
- readonly 700: "#15803d";
28
- };
29
- export declare const amber: {
30
- readonly 100: "#fef3c7";
31
- readonly 700: "#b45309";
1
+ export declare const stone: {
2
+ readonly 50: "#FAFAFC";
3
+ readonly 100: "#F6F5F8";
4
+ readonly 200: "#E3E0EA";
5
+ readonly 300: "#CFCADC";
6
+ readonly 400: "#A79DBE";
7
+ readonly 500: "#7C7191";
8
+ readonly 600: "#5C5470";
9
+ readonly 700: "#4A4458";
10
+ readonly 800: "#332E40";
11
+ readonly 900: "#1E1A28";
12
+ };
13
+ export declare const stoneDark: {
14
+ readonly 50: "#100E17";
15
+ readonly 100: "#161320";
16
+ readonly 200: "#221C30";
17
+ readonly 300: "#362E4C";
18
+ readonly 400: "#493D64";
19
+ readonly 500: "#7C7191";
20
+ readonly 600: "#B9B3CB";
21
+ readonly 700: "#D6D2E0";
22
+ readonly 800: "#E9E7EF";
23
+ readonly 900: "#F1EFF5";
24
+ };
25
+ export declare const paper = "#FFFFFF";
26
+ export declare const paperDark: "#221C30";
27
+ export declare const dusk: {
28
+ readonly tint: "#EEE9F9";
29
+ readonly 600: "#4B2E8C";
30
+ readonly 700: "#37206B";
31
+ readonly onDusk: "#FFFFFF";
32
+ };
33
+ export declare const duskDark: {
34
+ readonly tint: "#2E2648";
35
+ readonly 600: "#B49BEA";
36
+ readonly 700: "#CBB8F2";
37
+ readonly onDusk: "#1A1425";
38
+ };
39
+ export declare const sunrise: {
40
+ readonly tint: "#FFE9DF";
41
+ readonly 600: "#FF5A2B";
42
+ readonly 700: "#E64719";
43
+ readonly onSunrise: "#2A1206";
44
+ };
45
+ export declare const sunriseDark: {
46
+ readonly tint: "#3D2113";
47
+ readonly 600: "#FF8354";
48
+ readonly 700: "#FFA47C";
49
+ readonly onSunrise: "#200E05";
50
+ };
51
+ export declare const moss: {
52
+ readonly tint: "#E4EEE8";
53
+ readonly 700: "#3F6650";
54
+ };
55
+ export declare const mossDark: {
56
+ readonly tint: "#22332A";
57
+ readonly 700: "#7FB89A";
58
+ };
59
+ export declare const ember: {
60
+ readonly tint: "#F7E7E1";
61
+ readonly 600: "#A64B2A";
62
+ readonly onEmber: "#FFFFFF";
63
+ };
64
+ export declare const emberDark: {
65
+ readonly tint: "#3A281F";
66
+ readonly 600: "#E08D6D";
67
+ readonly onEmber: "#2A1208";
68
+ };
69
+ export declare const saffron: {
70
+ readonly tint: "#F5EBDD";
71
+ readonly 700: "#A15C1F";
72
+ };
73
+ export declare const saffronDark: {
74
+ readonly tint: "#3A2F1B";
75
+ readonly 700: "#D9A15C";
32
76
  };
33
77
  export declare const space: {
34
78
  readonly 1: "0.25rem";
@@ -47,8 +91,8 @@ export declare const borderWidth: {
47
91
  readonly thin: "1px";
48
92
  };
49
93
  export declare const fontFamily: {
50
- readonly sans: "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif";
51
- readonly mono: "ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace";
94
+ readonly sans: "'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif";
95
+ readonly mono: "'IBM Plex Mono', ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace";
52
96
  };
53
97
  export declare const fontSize: {
54
98
  readonly xs: "0.75rem";
@@ -95,9 +139,14 @@ export declare const opacity: {
95
139
  readonly hover: "0.92";
96
140
  };
97
141
  export declare const shadow: {
98
- readonly sm: "0 1px 2px 0 rgba(0, 0, 0, 0.05)";
99
- readonly md: "0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)";
100
- readonly lg: "0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)";
142
+ readonly sm: "0 1px 1px rgba(30, 20, 50, 0.06)";
143
+ readonly md: "0 1px 2px rgba(30, 20, 50, 0.05), 0 8px 20px -8px rgba(43, 26, 90, 0.18)";
144
+ readonly lg: "0 2px 4px rgba(30, 20, 50, 0.06), 0 16px 40px -12px rgba(43, 26, 90, 0.28)";
145
+ };
146
+ export declare const shadowDark: {
147
+ readonly sm: "0 1px 1px rgba(0, 0, 0, 0.45)";
148
+ readonly md: "0 1px 2px rgba(0, 0, 0, 0.35), 0 8px 20px -8px rgba(0, 0, 0, 0.55)";
149
+ readonly lg: "0 2px 4px rgba(0, 0, 0, 0.4), 0 16px 40px -12px rgba(0, 0, 0, 0.65)";
101
150
  };
102
151
  export declare const blur: {
103
152
  readonly sm: "4px";
@@ -0,0 +1 @@
1
+ export declare const resetScope: string;
@@ -3,6 +3,7 @@ export interface VinyasaTheme {
3
3
  onPrimary: string;
4
4
  secondary: string;
5
5
  onSecondary: string;
6
+ surface: string;
6
7
  tertiary: string;
7
8
  onTertiary: string;
8
9
  error: string;
@@ -76,4 +77,5 @@ export interface VinyasaTheme {
76
77
  zIndexTooltip: string;
77
78
  }
78
79
  export declare const defaultTheme: VinyasaTheme;
80
+ export declare const darkTheme: VinyasaTheme;
79
81
  export declare const createTheme: (overrides?: Partial<VinyasaTheme>) => VinyasaTheme;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vinyasa/tokens",
3
- "version": "1.0.21",
3
+ "version": "1.0.23",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "sideEffects": [