@krometra/ui-kit 0.7.0 → 0.8.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 CHANGED
@@ -7,7 +7,7 @@ UI-kit на Vue 3 со сменными темами оформления, св
7
7
 
8
8
  **Витрина и конструктор темы: <https://krometra.github.io/ui-kit/>**
9
9
 
10
- 37 компонентов, 88 иконок, десять готовых тем, две цветовые схемы и конструктор
10
+ 37 компонентов, 88 иконок, одиннадцать готовых тем, две цветовые схемы и конструктор
11
11
  своей темы. Разметка и поведение компонентов одни и те же, а стилистика
12
12
  подбирается под проект: цвет, нейтрали, скругления, плотность, тени и шрифт
13
13
  задаются CSS-переменными.
@@ -17,7 +17,7 @@ UI-kit на Vue 3 со сменными темами оформления, св
17
17
  ```bash
18
18
  npm install @krometra/ui-kit
19
19
  # или из репозитория (скрипт `prepare` собирает `dist/`)
20
- npm install github:krometra/ui-kit#v0.7.0
20
+ npm install github:krometra/ui-kit#v0.8.0
21
21
  ```
22
22
 
23
23
  Публикация в npm происходит по тегу `v*`, если задан секрет `NPM_TOKEN`.
@@ -71,7 +71,7 @@ const stop = applyTheme({ scheme: 'system' }) // следовать з
71
71
 
72
72
  | Ось | Значения |
73
73
  |---|---|
74
- | `preset` | `default`, `scanflow`, `slate`, `ocean`, `forest`, `violet`, `amber`, `rose`, `mono`, `blocky` |
74
+ | `preset` | `default`, `scanflow`, `slate`, `ocean`, `forest`, `violet`, `amber`, `rose`, `mono`, `blocky`, `bordeaux` |
75
75
  | `scheme` | `light`, `dark`, `system` |
76
76
  | `neutral` | `cool`, `warm`, `plain` |
77
77
  | `radius` | `square`, `sharp`, `subtle`, `default`, `soft`, `pill` |
@@ -191,6 +191,14 @@ yarn tokens # перегенерировать src/tokens.css из theme.j
191
191
  Витрина живёт в `demo/Showcase.vue` и служит и документацией, и площадкой для
192
192
  визуальной проверки при изменении токенов.
193
193
 
194
+ ## Что изменилось в 0.8.0
195
+
196
+ - Тема `bordeaux` - бордовый акцент на тёплом розовато-сером фоне, свои
197
+ зелёный, синий и красный статусов и шрифт Golos Text (подключается в
198
+ приложении, иначе - системный), в светлой и тёмной схеме.
199
+ - Пресет может задать `accentOverrides` и `semanticOverrides` по схемам: точный
200
+ акцент и цвета статусов вместо вычисленных. Остальные пресеты не изменились.
201
+
194
202
  ## Что изменилось в 0.7.0
195
203
 
196
204
  - Тема `blocky` - мультяшная «блочная»: травяной акцент, земляные нейтрали,
package/dist/ui-kit.js CHANGED
@@ -14994,6 +14994,83 @@ var Uy = /*#__PURE__*/ M({
14994
14994
  accentSoft: "#f4f4f5",
14995
14995
  neutral: "plain"
14996
14996
  },
14997
+ bordeaux: {
14998
+ label: "Bordeaux",
14999
+ accent: "#8a3a48",
15000
+ accentHover: "#73303c",
15001
+ accentSoft: "#f3e6e8",
15002
+ neutral: "warm",
15003
+ font: "'Golos Text', -apple-system, 'Segoe UI', Roboto, sans-serif",
15004
+ accentOverrides: { dark: {
15005
+ accent: "#e3929e",
15006
+ accentHover: "#eaa9b3",
15007
+ accentSoft: "#33242a"
15008
+ } },
15009
+ semanticOverrides: {
15010
+ light: {
15011
+ success: {
15012
+ base: "#2c7656",
15013
+ hover: "#235f45",
15014
+ soft: "#e3f1ea",
15015
+ strong: "#2c7656"
15016
+ },
15017
+ info: {
15018
+ base: "#3b6286",
15019
+ hover: "#2f4f6c",
15020
+ soft: "#e5edf5",
15021
+ strong: "#3b6286"
15022
+ },
15023
+ danger: {
15024
+ base: "#b03a37",
15025
+ hover: "#922f2d",
15026
+ soft: "#fbe8e6",
15027
+ strong: "#b03a37"
15028
+ }
15029
+ },
15030
+ dark: {
15031
+ success: {
15032
+ base: "#72c9a2",
15033
+ hover: "#8fd6b6",
15034
+ soft: "#1b3228",
15035
+ strong: "#72c9a2"
15036
+ },
15037
+ info: {
15038
+ base: "#94b8db",
15039
+ hover: "#adc9e4",
15040
+ soft: "#1c2936",
15041
+ strong: "#94b8db"
15042
+ },
15043
+ danger: {
15044
+ base: "#f08d83",
15045
+ hover: "#f4a69e",
15046
+ soft: "#3a2220",
15047
+ strong: "#f08d83"
15048
+ }
15049
+ }
15050
+ },
15051
+ neutralOverrides: {
15052
+ light: {
15053
+ bg: "#f6f4f4",
15054
+ surface: "#ffffff",
15055
+ surfaceMuted: "#faf8f8",
15056
+ border: "#e3dcdd",
15057
+ borderStrong: "#cdc3c4",
15058
+ text: "#1e2327",
15059
+ textMuted: "#5f666c",
15060
+ textFaint: "#959ca1"
15061
+ },
15062
+ dark: {
15063
+ bg: "#15181b",
15064
+ surface: "#1d2125",
15065
+ surfaceMuted: "#24292e",
15066
+ border: "#30353a",
15067
+ borderStrong: "#454b52",
15068
+ text: "#ebe7e7",
15069
+ textMuted: "#a3a9ae",
15070
+ textFaint: "#737a80"
15071
+ }
15072
+ }
15073
+ },
14997
15074
  blocky: {
14998
15075
  label: "Blocky",
14999
15076
  accent: "#4f8a25",
@@ -15257,11 +15334,11 @@ function $y(e = {}) {
15257
15334
  ...t.text ? { text: t.text } : {},
15258
15335
  ...t.textMuted ? { textMuted: t.textMuted } : {},
15259
15336
  ...t.textFaint ? { textFaint: t.textFaint } : {}
15260
- }, o = Jy[t.radius ?? i.radius] ?? Jy.default, s = Yy[t.density ?? i.density] ?? Yy.default, c = (Xy[t.elevation ?? i.elevation] ?? Xy.default)[n], l = t.font ?? i.font, u = Zy[l] ?? l ?? Zy.system, d = t.accent ?? i.accent, f = r ? ob(d, .12) : d, p = {
15261
- "--k-primary": f,
15262
- "--k-primary-hover": t.accentHover ?? (r ? ob(f, .14) : t.accent ? ab(f, -.12) : i.accentHover),
15263
- "--k-primary-soft": t.accentSoft ?? (r ? sb(f, a.surface, .22) : t.accent ? ob(f, .92) : i.accentSoft),
15264
- "--k-on-primary": cb(f),
15337
+ }, o = Jy[t.radius ?? i.radius] ?? Jy.default, s = Yy[t.density ?? i.density] ?? Yy.default, c = (Xy[t.elevation ?? i.elevation] ?? Xy.default)[n], l = t.font ?? i.font, u = Zy[l] ?? l ?? Zy.system, d = t.accent ? null : i.accentOverrides?.[n], f = t.accent ?? i.accent, p = d?.accent ?? (r ? ob(f, .12) : f), m = {
15338
+ "--k-primary": p,
15339
+ "--k-primary-hover": t.accentHover ?? d?.accentHover ?? (r ? ob(p, .14) : t.accent ? ab(p, -.12) : i.accentHover),
15340
+ "--k-primary-soft": t.accentSoft ?? d?.accentSoft ?? (r ? sb(p, a.surface, .22) : t.accent ? ob(p, .92) : i.accentSoft),
15341
+ "--k-on-primary": cb(p),
15265
15342
  "--k-bg": a.bg,
15266
15343
  "--k-surface": a.surface,
15267
15344
  "--k-surface-muted": a.surfaceMuted,
@@ -15273,7 +15350,7 @@ function $y(e = {}) {
15273
15350
  "--k-overlay": r ? "rgba(0, 0, 0, 0.6)" : "rgba(15, 23, 42, 0.35)",
15274
15351
  "--k-tooltip-bg": r ? a.text : "#172033",
15275
15352
  "--k-tooltip-text": r ? a.bg : "#ffffff",
15276
- "--k-selection": sb(f, a.surface, r ? .4 : .2),
15353
+ "--k-selection": sb(p, a.surface, r ? .4 : .2),
15277
15354
  "--k-radius-sm": o.sm,
15278
15355
  "--k-radius": o.md,
15279
15356
  "--k-radius-lg": o.lg,
@@ -15284,9 +15361,12 @@ function $y(e = {}) {
15284
15361
  "--k-shadow-md": c.md,
15285
15362
  "--k-shadow-lg": c.lg,
15286
15363
  "--k-font": u
15364
+ }, h = {
15365
+ ...qy[n],
15366
+ ...i.semanticOverrides?.[n]
15287
15367
  };
15288
- for (let [e, t] of Object.entries(qy[n])) p[`--k-${e}`] = t.base, p[`--k-${e}-hover`] = t.hover, p[`--k-${e}-soft`] = t.soft ?? sb(t.base, a.surface, .18), p[`--k-${e}-strong`] = t.strong, p[`--k-on-${e}`] = cb(t.base);
15289
- return p;
15368
+ for (let [e, t] of Object.entries(h)) m[`--k-${e}`] = t.base, m[`--k-${e}-hover`] = t.hover, m[`--k-${e}-soft`] = t.soft ?? sb(t.base, a.surface, .18), m[`--k-${e}-strong`] = t.strong, m[`--k-on-${e}`] = cb(t.base);
15369
+ return m;
15290
15370
  }
15291
15371
  function eb(e = {}, t = null) {
15292
15372
  let n = t ?? (typeof document < "u" ? document.documentElement : null);