@codemonster-ru/vueforge-core 1.6.0 → 1.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.
Files changed (57) hide show
  1. package/README.md +79 -1
  2. package/dist/components/breadcrumbs/VfBreadcrumbs.vue.d.ts +13 -0
  3. package/dist/components/breadcrumbs/VfBreadcrumbs.vue.d.ts.map +1 -0
  4. package/dist/components/breadcrumbs/index.d.ts +2 -0
  5. package/dist/components/breadcrumbs/index.d.ts.map +1 -0
  6. package/dist/components/dialog/VfDialog.vue.d.ts.map +1 -1
  7. package/dist/components/drawer/VfDrawer.vue.d.ts +2 -0
  8. package/dist/components/drawer/VfDrawer.vue.d.ts.map +1 -1
  9. package/dist/components/index.d.ts +4 -0
  10. package/dist/components/index.d.ts.map +1 -1
  11. package/dist/components/link/VfLink.vue.d.ts +4 -4
  12. package/dist/components/link/VfLink.vue.d.ts.map +1 -1
  13. package/dist/components/menu-bar/VfMenuBar.vue.d.ts +24 -0
  14. package/dist/components/menu-bar/VfMenuBar.vue.d.ts.map +1 -0
  15. package/dist/components/menu-bar/VfMenuBarItemNode.vue.d.ts +18 -0
  16. package/dist/components/menu-bar/VfMenuBarItemNode.vue.d.ts.map +1 -0
  17. package/dist/components/menu-bar/index.d.ts +2 -0
  18. package/dist/components/menu-bar/index.d.ts.map +1 -0
  19. package/dist/components/nav-menu/VfNavMenu.vue.d.ts +1 -1
  20. package/dist/components/nav-menu/VfNavMenu.vue.d.ts.map +1 -1
  21. package/dist/components/nav-menu/VfNavMenuItemNode.vue.d.ts.map +1 -1
  22. package/dist/components/select/VfSelect.vue.d.ts +31 -0
  23. package/dist/components/select/VfSelect.vue.d.ts.map +1 -0
  24. package/dist/components/select/index.d.ts +2 -0
  25. package/dist/components/select/index.d.ts.map +1 -0
  26. package/dist/components/switch/VfSwitch.vue.d.ts.map +1 -1
  27. package/dist/components/table/VfTable.vue.d.ts +32 -0
  28. package/dist/components/table/VfTable.vue.d.ts.map +1 -0
  29. package/dist/components/table/index.d.ts +2 -0
  30. package/dist/components/table/index.d.ts.map +1 -0
  31. package/dist/components/table-of-contents/VfTableOfContents.vue.d.ts +5 -18
  32. package/dist/components/table-of-contents/VfTableOfContents.vue.d.ts.map +1 -1
  33. package/dist/components/tabs/VfTabs.vue.d.ts +6 -2
  34. package/dist/components/tabs/VfTabs.vue.d.ts.map +1 -1
  35. package/dist/components/theme-switch/VfThemeSwitch.vue.d.ts.map +1 -1
  36. package/dist/components/tooltip/VfTooltip.vue.d.ts.map +1 -1
  37. package/dist/composables/useTheme.d.ts +1 -1
  38. package/dist/index.d.ts +2 -2
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/providers/VfThemeProvider.vue.d.ts.map +1 -1
  41. package/dist/styles.css +1 -1
  42. package/dist/theme/default-preset-source.d.ts +71 -3
  43. package/dist/theme/default-preset-source.d.ts.map +1 -1
  44. package/dist/theme/public.d.ts +1 -1
  45. package/dist/theme/public.d.ts.map +1 -1
  46. package/dist/theme/utils.d.ts +7 -2
  47. package/dist/theme/utils.d.ts.map +1 -1
  48. package/dist/theme-api.js +3 -232
  49. package/dist/theme.css +26 -18
  50. package/dist/tokens.css +112 -44
  51. package/dist/types/components.d.ts +15 -0
  52. package/dist/types/components.d.ts.map +1 -1
  53. package/dist/types/theme.d.ts +95 -2
  54. package/dist/types/theme.d.ts.map +1 -1
  55. package/dist/utils-BJVEoCfQ.js +320 -0
  56. package/dist/vueforge-core.js +1962 -1203
  57. package/package.json +5 -2
package/dist/theme-api.js CHANGED
@@ -1,234 +1,5 @@
1
- import { vfMotionTokens as o } from "@codemonster-ru/vueforge-theme";
2
- import { createThemePreset as f } from "@codemonster-ru/vueforge-theme";
3
- import { b as r } from "./breakpoints-hxAiWC8U.js";
4
- const e = {
5
- breakpointXs: `${r.xs}px`,
6
- breakpointSm: `${r.sm}px`,
7
- breakpointMd: `${r.md}px`,
8
- breakpointLg: `${r.lg}px`,
9
- breakpointXl: `${r.xl}px`,
10
- breakpoint2xl: `${r["2xl"]}px`
11
- }, a = {
12
- name: "vueforge-default",
13
- tokens: {
14
- colorBg: "#fcfcfd",
15
- colorSurface: "#ffffff",
16
- colorSurfaceMuted: "#f5f7fb",
17
- colorText: "#172033",
18
- colorMuted: "#69738a",
19
- colorBorder: "#d8e0ef",
20
- colorPrimary: "#0b63f6",
21
- colorPrimaryContrast: "#ffffff",
22
- colorPrimarySoft: "color-mix(in srgb, var(--vf-color-primary) 12%, var(--vf-color-surface))",
23
- colorPrimaryBorderSoft: "color-mix(in srgb, var(--vf-color-primary) 22%, var(--vf-color-border))",
24
- colorFocusRing: "color-mix(in srgb, var(--vf-color-primary) 32%, var(--vf-color-surface))",
25
- colorSuccess: "#16a34a",
26
- colorSuccessContrast: "#ffffff",
27
- colorInfo: "#0ea5e9",
28
- colorInfoContrast: "#ffffff",
29
- colorWarn: "#f59e0b",
30
- colorWarnContrast: "#1f1300",
31
- colorHelp: "#8b5cf6",
32
- colorHelpContrast: "#ffffff",
33
- colorDanger: "#dc2626",
34
- colorDangerContrast: "#ffffff",
35
- colorContrast: "#111827",
36
- colorContrastContrast: "#ffffff",
37
- colorSuccessSoft: "color-mix(in srgb, var(--vf-color-success) 12%, var(--vf-color-surface))",
38
- colorInfoSoft: "color-mix(in srgb, var(--vf-color-info) 12%, var(--vf-color-surface))",
39
- colorWarnSoft: "color-mix(in srgb, var(--vf-color-warn) 12%, var(--vf-color-surface))",
40
- colorHelpSoft: "color-mix(in srgb, var(--vf-color-help) 12%, var(--vf-color-surface))",
41
- colorDangerSoft: "color-mix(in srgb, var(--vf-color-danger) 12%, var(--vf-color-surface))",
42
- colorContrastSoft: "color-mix(in srgb, var(--vf-color-contrast) 10%, var(--vf-color-surface))",
43
- colorSuccessBorderSoft: "color-mix(in srgb, var(--vf-color-success) 24%, var(--vf-color-border))",
44
- colorInfoBorderSoft: "color-mix(in srgb, var(--vf-color-info) 24%, var(--vf-color-border))",
45
- colorWarnBorderSoft: "color-mix(in srgb, var(--vf-color-warn) 24%, var(--vf-color-border))",
46
- colorHelpBorderSoft: "color-mix(in srgb, var(--vf-color-help) 24%, var(--vf-color-border))",
47
- colorDangerBorderSoft: "color-mix(in srgb, var(--vf-color-danger) 24%, var(--vf-color-border))",
48
- colorContrastBorderSoft: "color-mix(in srgb, var(--vf-color-contrast) 24%, var(--vf-color-border))",
49
- focusRingWidth: "3px",
50
- radius: "0.75rem",
51
- radiusControl: "calc(var(--vf-radius) - 0.125rem)",
52
- radiusControlTight: "calc(var(--vf-radius) - 0.25rem)",
53
- radiusSurface: "var(--vf-radius)",
54
- radiusOverlay: "calc(var(--vf-radius) + 0.125rem)",
55
- ...e,
56
- controlHeightSm: "1.75rem",
57
- controlHeightMd: "2.25rem",
58
- controlHeightLg: "2.5rem",
59
- controlFontSizeSm: "0.875rem",
60
- controlFontSizeMd: "0.9375rem",
61
- controlFontSizeLg: "1rem",
62
- buttonPaddingSm: "0.25rem 0.5rem",
63
- buttonPaddingMd: "0.375rem 0.75rem",
64
- buttonPaddingLg: "0.5rem 1rem",
65
- buttonGap: "0.5rem",
66
- fieldPaddingSm: "0.25rem 0.5rem",
67
- fieldPaddingMd: "0.375rem 0.75rem",
68
- fieldPaddingLg: "0.5rem 1rem",
69
- checkboxSizeSm: "1rem",
70
- checkboxSizeMd: "1.125rem",
71
- checkboxSizeLg: "1.25rem",
72
- selectionGap: "0.75rem",
73
- checkboxMarkWidth: "0.25rem",
74
- checkboxMarkHeight: "0.5rem",
75
- checkboxMarkStrokeWidth: "2px",
76
- checkboxMarkOffsetY: "-0.0625rem",
77
- radioDotSize: "0.5rem",
78
- switchWidthSm: "2rem",
79
- switchWidthMd: "2.25rem",
80
- switchWidthLg: "2.5rem",
81
- switchHeightSm: "1.125rem",
82
- switchHeightMd: "1.25rem",
83
- switchHeightLg: "1.375rem",
84
- switchThumbSizeSm: "0.75rem",
85
- switchThumbSizeMd: "0.875rem",
86
- switchThumbSizeLg: "1rem",
87
- switchThumbInset: "0.125rem",
88
- textareaMinHeightSm: "4.5rem",
89
- textareaMinHeightMd: "6rem",
90
- textareaMinHeightLg: "7rem",
91
- overlayPadding: "1rem",
92
- overlayGap: "0.75rem",
93
- overlayViewportPadding: "1rem",
94
- menuPadding: "0.5rem",
95
- menuGap: "0.25rem",
96
- menuMinWidth: "12rem",
97
- surfacePadding: "1rem",
98
- surfaceGap: "0.75rem",
99
- surfacePaddingCompact: "0.75rem",
100
- surfaceGapCompact: "0.5rem",
101
- sectionPadding: "0.75rem 1rem",
102
- sectionGap: "0.75rem",
103
- tabsGap: "0.75rem",
104
- tabsListGap: "0.25rem",
105
- tabsListPadding: "0.25rem",
106
- tabsTabPaddingInline: "0.75rem",
107
- tabsPanelPaddingTop: "0.75rem",
108
- navMenuListGap: "0.25rem",
109
- navMenuNestedGap: "0.25rem",
110
- navMenuCollapseOffsetTop: "0.25rem",
111
- navMenuCollapseInsetLevel0Margin: "0.5rem",
112
- navMenuCollapseInsetLevel0Padding: "0.5rem",
113
- navMenuCollapseInsetSimpleLevel0Margin: "0.5rem",
114
- navMenuCollapseInsetSimpleLevel0Padding: "0.5rem",
115
- navMenuCollapseInsetDeepMargin: "0.5rem",
116
- navMenuCollapseInsetDeepPadding: "0.5rem",
117
- navMenuCollapseInsetSimpleDeepMargin: "0.5rem",
118
- navMenuCollapseInsetSimpleDeepPadding: "0.5rem",
119
- navMenuNodeGroupSpacing: "0.25rem",
120
- navMenuGroupPadding: "0.375rem 0.75rem",
121
- navMenuGroupFontSize: "0.875rem",
122
- navMenuItemPadding: "0.375rem 0.75rem",
123
- navMenuItemGap: "0.5rem",
124
- navMenuLeadingIconSize: "1rem",
125
- navMenuLeadingIconColumnSize: "1.25rem",
126
- tableOfContentsGap: "0.25rem",
127
- tableOfContentsListGap: "var(--vf-nav-menu-list-gap)",
128
- tableOfContentsTitleFontSize: "0.75rem",
129
- tableOfContentsTitleColor: "var(--vf-color-muted)",
130
- tableOfContentsItemPadding: "var(--vf-nav-menu-item-padding)",
131
- tableOfContentsLevelStep: "0.5rem",
132
- tableOfContentsColor: "var(--vf-color-text)",
133
- tableOfContentsHoverColor: "var(--vf-color-primary)",
134
- tableOfContentsHoverBackground: "color-mix(in srgb, var(--vf-color-primary) 10%, var(--vf-color-surface))",
135
- tableOfContentsActiveColor: "var(--vf-color-primary)",
136
- tableOfContentsActiveBackground: "color-mix(in srgb, var(--vf-color-primary) 14%, var(--vf-color-surface))",
137
- badgeHeight: "1.5rem",
138
- badgePadding: "0.25rem 0.5rem",
139
- badgeGap: "0.25rem",
140
- badgeRadius: "999px",
141
- badgeFontSize: "0.8125rem",
142
- badgeLineHeight: "1.2",
143
- tagHeight: "1.75rem",
144
- tagPadding: "0.25rem 0.5rem",
145
- tagFontSize: "0.8125rem",
146
- tagLineHeight: "1.2",
147
- tooltipPadding: "0.5rem 0.75rem",
148
- tooltipMaxWidth: "16rem",
149
- tooltipFontSize: "0.8125rem",
150
- tooltipLineHeight: "1.4",
151
- dialogWidthSm: "28rem",
152
- dialogWidthMd: "36rem",
153
- dialogWidthLg: "48rem",
154
- dialogMaxHeight: "min(85vh, 48rem)",
155
- drawerSizeSm: "20rem",
156
- drawerSizeMd: "26rem",
157
- drawerSizeLg: "32rem",
158
- drawerOffsetTop: "0px",
159
- drawerBodyPadding: "var(--vf-overlay-padding)",
160
- dialogTitleFontSize: "1.125rem",
161
- dialogHeaderGap: "0.75rem",
162
- dialogActionsGap: "0.5rem",
163
- popoverWidth: "min(100vw - 2rem, 22rem)",
164
- floatingArrowSize: "0.625rem",
165
- overlayBackdrop: "rgba(15, 23, 42, 0.56)",
166
- alertPrimarySoft: "color-mix(in srgb, var(--vf-color-primary) 8%, var(--vf-color-surface))",
167
- alertPrimaryBorderSoft: "color-mix(in srgb, var(--vf-color-primary) 22%, var(--vf-color-border))",
168
- alertContentGap: "0.25rem",
169
- alertTitleFontSize: "0.9375rem",
170
- cardTitleFontSize: "1rem",
171
- panelTitleFontSize: "0.9375rem",
172
- textLineHeight: "1.5",
173
- headingLineHeight: "1.3",
174
- tabsLineHeight: "1.2",
175
- motionDurationFast: o.durationFast,
176
- motionDurationNormal: o.durationNormal,
177
- motionEaseStandard: o.easeStandard,
178
- zOverlay: "1000",
179
- zDrawer: "1000",
180
- zDropdown: "900",
181
- zPopover: "925",
182
- zTooltip: "950",
183
- spacing: "1rem",
184
- shadow: "none"
185
- },
186
- dark: {
187
- colorBg: "#0f172a",
188
- colorSurface: "#162033",
189
- colorSurfaceMuted: "#1b2840",
190
- colorText: "#eff4ff",
191
- colorMuted: "#9fb0cf",
192
- colorBorder: "#2d405f",
193
- colorPrimary: "#6ea8fe",
194
- colorPrimaryContrast: "#081120",
195
- colorPrimarySoft: "color-mix(in srgb, var(--vf-color-primary) 12%, var(--vf-color-surface))",
196
- colorPrimaryBorderSoft: "color-mix(in srgb, var(--vf-color-primary) 22%, var(--vf-color-border))",
197
- colorFocusRing: "color-mix(in srgb, var(--vf-color-primary) 32%, var(--vf-color-surface))",
198
- colorSuccess: "#4ade80",
199
- colorSuccessContrast: "#081120",
200
- colorInfo: "#38bdf8",
201
- colorInfoContrast: "#081120",
202
- colorWarn: "#fbbf24",
203
- colorWarnContrast: "#1f1300",
204
- colorHelp: "#a78bfa",
205
- colorHelpContrast: "#081120",
206
- colorDanger: "#f87171",
207
- colorDangerContrast: "#081120",
208
- colorContrast: "#f3f4f6",
209
- colorContrastContrast: "#111827",
210
- colorSuccessSoft: "color-mix(in srgb, var(--vf-color-success) 12%, var(--vf-color-surface))",
211
- colorInfoSoft: "color-mix(in srgb, var(--vf-color-info) 12%, var(--vf-color-surface))",
212
- colorWarnSoft: "color-mix(in srgb, var(--vf-color-warn) 12%, var(--vf-color-surface))",
213
- colorHelpSoft: "color-mix(in srgb, var(--vf-color-help) 12%, var(--vf-color-surface))",
214
- colorDangerSoft: "color-mix(in srgb, var(--vf-color-danger) 12%, var(--vf-color-surface))",
215
- colorContrastSoft: "color-mix(in srgb, var(--vf-color-contrast) 10%, var(--vf-color-surface))",
216
- colorSuccessBorderSoft: "color-mix(in srgb, var(--vf-color-success) 24%, var(--vf-color-border))",
217
- colorInfoBorderSoft: "color-mix(in srgb, var(--vf-color-info) 24%, var(--vf-color-border))",
218
- colorWarnBorderSoft: "color-mix(in srgb, var(--vf-color-warn) 24%, var(--vf-color-border))",
219
- colorHelpBorderSoft: "color-mix(in srgb, var(--vf-color-help) 24%, var(--vf-color-border))",
220
- colorDangerBorderSoft: "color-mix(in srgb, var(--vf-color-danger) 24%, var(--vf-color-border))",
221
- colorContrastBorderSoft: "color-mix(in srgb, var(--vf-color-contrast) 24%, var(--vf-color-border))",
222
- focusRingWidth: "3px",
223
- zOverlay: "1000",
224
- zDrawer: "1000",
225
- zDropdown: "900",
226
- zPopover: "925",
227
- zTooltip: "950",
228
- shadow: "none"
229
- }
230
- }, n = a;
1
+ import { c as t, d as a } from "./utils-BJVEoCfQ.js";
231
2
  export {
232
- f as createThemePreset,
233
- n as defaultThemePreset
3
+ t as createThemePreset,
4
+ a as defaultThemePreset
234
5
  };
package/dist/theme.css CHANGED
@@ -6,30 +6,38 @@
6
6
  color: var(--vf-color-text);
7
7
  }
8
8
 
9
+ button,
10
+ input,
11
+ optgroup,
12
+ select,
13
+ textarea {
14
+ font: inherit;
15
+ }
16
+
9
17
  :root[data-vf-theme="dark"] {
10
18
  color-scheme: dark;
11
- --vf-color-bg: #0f172a;
12
- --vf-color-surface: #162033;
13
- --vf-color-surface-muted: #1b2840;
14
- --vf-color-text: #eff4ff;
15
- --vf-color-muted: #9fb0cf;
16
- --vf-color-border: #2d405f;
17
- --vf-color-primary: #6ea8fe;
18
- --vf-color-primary-contrast: #081120;
19
+ --vf-color-bg: #1e1e1e;
20
+ --vf-color-surface: #252526;
21
+ --vf-color-surface-muted: #2d2d30;
22
+ --vf-color-text: #d4d4d4;
23
+ --vf-color-muted: #9da0a6;
24
+ --vf-color-border: #3c3c3c;
25
+ --vf-color-primary: #2f7fd6;
26
+ --vf-color-primary-contrast: #ffffff;
19
27
  --vf-color-primary-soft: color-mix(in srgb, var(--vf-color-primary) 12%, var(--vf-color-surface));
20
28
  --vf-color-primary-border-soft: color-mix(in srgb, var(--vf-color-primary) 22%, var(--vf-color-border));
21
29
  --vf-color-focus-ring: color-mix(in srgb, var(--vf-color-primary) 32%, var(--vf-color-surface));
22
- --vf-color-success: #4ade80;
23
- --vf-color-success-contrast: #081120;
24
- --vf-color-info: #38bdf8;
25
- --vf-color-info-contrast: #081120;
26
- --vf-color-warn: #fbbf24;
30
+ --vf-color-success: #3f8746;
31
+ --vf-color-success-contrast: #ffffff;
32
+ --vf-color-info: #1f76be;
33
+ --vf-color-info-contrast: #ffffff;
34
+ --vf-color-warn: #c6a25f;
27
35
  --vf-color-warn-contrast: #1f1300;
28
- --vf-color-help: #a78bfa;
29
- --vf-color-help-contrast: #081120;
30
- --vf-color-danger: #f87171;
31
- --vf-color-danger-contrast: #081120;
32
- --vf-color-contrast: #f3f4f6;
36
+ --vf-color-help: #8553a1;
37
+ --vf-color-help-contrast: #ffffff;
38
+ --vf-color-danger: #bf3f3f;
39
+ --vf-color-danger-contrast: #ffffff;
40
+ --vf-color-contrast: #d7d7d7;
33
41
  --vf-color-contrast-contrast: #111827;
34
42
  --vf-color-success-soft: color-mix(in srgb, var(--vf-color-success) 12%, var(--vf-color-surface));
35
43
  --vf-color-info-soft: color-mix(in srgb, var(--vf-color-info) 12%, var(--vf-color-surface));
package/dist/tokens.css CHANGED
@@ -3,28 +3,99 @@
3
3
  @import "./generated-breakpoints.css";
4
4
 
5
5
  :root {
6
- --vf-color-bg: #fcfcfd;
6
+ --vf-font-family-base: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
7
+ --vf-font-family-heading: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
8
+ --vf-font-family-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
9
+ --vf-font-weight-regular: 400;
10
+ --vf-font-weight-medium: 500;
11
+ --vf-font-weight-semibold: 600;
12
+ --vf-font-weight-bold: 700;
13
+ --vf-font-size-xs: 0.75rem;
14
+ --vf-font-size-sm: 0.8125rem;
15
+ --vf-font-size-md: 0.875rem;
16
+ --vf-font-size-lg: 0.9375rem;
17
+ --vf-font-size-xl: 1rem;
18
+ --vf-font-size-2xl: 1.125rem;
19
+ --vf-font-size-3xl: 1.25rem;
20
+ --vf-line-height-tight: 1.2;
21
+ --vf-line-height-normal: 1.5;
22
+ --vf-line-height-relaxed: 1.65;
23
+ --vf-selectable-hover-color: var(--vf-color-primary);
24
+ --vf-selectable-hover-background: transparent;
25
+ --vf-selectable-active-color: var(--vf-color-primary);
26
+ --vf-selectable-active-background: color-mix(in srgb, var(--vf-color-primary) 20%, var(--vf-color-surface));
27
+ --vf-text-body-font-size: var(--vf-font-size-xl);
28
+ --vf-text-body-line-height: var(--vf-line-height-normal);
29
+ --vf-text-body-font-weight: var(--vf-font-weight-regular);
30
+ --vf-text-caption-font-size: var(--vf-font-size-sm);
31
+ --vf-text-caption-line-height: var(--vf-line-height-normal);
32
+ --vf-text-caption-font-weight: var(--vf-font-weight-medium);
33
+ --vf-text-label-font-size: var(--vf-font-size-md);
34
+ --vf-text-label-line-height: var(--vf-line-height-tight);
35
+ --vf-text-label-font-weight: var(--vf-font-weight-medium);
36
+ --vf-heading-font-size-sm: var(--vf-font-size-lg);
37
+ --vf-heading-font-size-md: var(--vf-font-size-xl);
38
+ --vf-heading-font-size-lg: var(--vf-font-size-2xl);
39
+ --vf-heading-font-size-xl: var(--vf-font-size-3xl);
40
+ --vf-heading-font-weight: var(--vf-font-weight-semibold);
41
+ --vf-button-secondary-hover-background: color-mix(in srgb, var(--vf-color-surface-muted) 94%, var(--vf-color-text));
42
+ --vf-button-secondary-hover-border-color: var(--vf-color-border);
43
+ --vf-button-secondary-active-background: color-mix(in srgb, var(--vf-color-surface-muted) 90%, var(--vf-color-text));
44
+ --vf-button-secondary-active-border-color: var(--vf-color-border);
45
+ --vf-button-ghost-hover-background: color-mix(in srgb, var(--vf-color-primary) 8%, var(--vf-color-surface));
46
+ --vf-button-ghost-hover-border-color: transparent;
47
+ --vf-button-ghost-active-background: color-mix(in srgb, var(--vf-color-primary) 14%, var(--vf-color-surface));
48
+ --vf-button-ghost-active-border-color: transparent;
49
+ --vf-button-solid-hover-filter: brightness(0.95) saturate(1.03);
50
+ --vf-button-solid-active-filter: brightness(0.9) saturate(1.04);
51
+ --vf-radio-control-background: color-mix(in srgb, var(--vf-color-border) 12%, var(--vf-color-surface));
52
+ --vf-radio-hover-border-color: var(--vf-color-primary-border-soft);
53
+ --vf-switch-track-background: color-mix(in srgb, var(--vf-color-text) 10%, var(--vf-color-surface));
54
+ --vf-switch-track-hover-background: color-mix(in srgb, var(--vf-color-text) 12%, var(--vf-color-surface));
55
+ --vf-switch-track-checked-background: var(--vf-color-primary);
56
+ --vf-switch-track-checked-hover-background: color-mix(in srgb, var(--vf-color-primary) 92%, var(--vf-color-surface));
57
+ --vf-switch-thumb-background: color-mix(in srgb, var(--vf-color-surface) 88%, var(--vf-color-surface-muted));
58
+ --vf-switch-thumb-border-color: color-mix(in srgb, var(--vf-color-surface) 80%, var(--vf-color-border));
59
+ --vf-switch-thumb-shadow: none;
60
+ --vf-switch-thumb-color: color-mix(in srgb, var(--vf-color-text) 55%, transparent);
61
+ --vf-switch-thumb-icon-size: 0.625rem;
62
+ --vf-switch-thumb-checked-background: var(--vf-color-surface);
63
+ --vf-switch-thumb-checked-border-color: color-mix(in srgb, var(--vf-color-primary) 12%, var(--vf-color-surface));
64
+ --vf-switch-thumb-checked-shadow: none;
65
+ --vf-prose-heading-margin: 1.5em;
66
+ --vf-prose-heading-gap: 0.5em;
67
+ --vf-prose-block-spacing: 1em;
68
+ --vf-prose-list-padding-inline-start: 1.5em;
69
+ --vf-prose-list-item-spacing: 0.375em;
70
+ --vf-prose-link-hover-color: color-mix(in srgb, var(--vf-color-primary) 82%, var(--vf-color-text));
71
+ --vf-prose-blockquote-padding-inline-start: 1rem;
72
+ --vf-prose-blockquote-border-width: 3px;
73
+ --vf-prose-inline-code-font-size: 0.95em;
74
+ --vf-prose-inline-code-padding: 0.125rem 0.375rem;
75
+ --vf-prose-code-block-padding: 0.75rem 1rem;
76
+ --vf-prose-hr-margin: 1.5rem;
77
+ --vf-color-bg: #f6f8fb;
7
78
  --vf-color-surface: #ffffff;
8
- --vf-color-surface-muted: #f5f7fb;
9
- --vf-color-text: #172033;
10
- --vf-color-muted: #69738a;
11
- --vf-color-border: #d8e0ef;
12
- --vf-color-primary: #0b63f6;
79
+ --vf-color-surface-muted: #f3f3f3;
80
+ --vf-color-text: #1f232b;
81
+ --vf-color-muted: #616773;
82
+ --vf-color-border: #d9dde3;
83
+ --vf-color-primary: #0e639c;
13
84
  --vf-color-primary-contrast: #ffffff;
14
85
  --vf-color-primary-soft: color-mix(in srgb, var(--vf-color-primary) 12%, var(--vf-color-surface));
15
86
  --vf-color-primary-border-soft: color-mix(in srgb, var(--vf-color-primary) 22%, var(--vf-color-border));
16
87
  --vf-color-focus-ring: color-mix(in srgb, var(--vf-color-primary) 32%, var(--vf-color-surface));
17
- --vf-color-success: #16a34a;
88
+ --vf-color-success: #2e7d32;
18
89
  --vf-color-success-contrast: #ffffff;
19
- --vf-color-info: #0ea5e9;
90
+ --vf-color-info: #0069ba;
20
91
  --vf-color-info-contrast: #ffffff;
21
- --vf-color-warn: #f59e0b;
92
+ --vf-color-warn: #9f8400;
22
93
  --vf-color-warn-contrast: #1f1300;
23
- --vf-color-help: #8b5cf6;
94
+ --vf-color-help: #7245ae;
24
95
  --vf-color-help-contrast: #ffffff;
25
- --vf-color-danger: #dc2626;
96
+ --vf-color-danger: #c72e39;
26
97
  --vf-color-danger-contrast: #ffffff;
27
- --vf-color-contrast: #111827;
98
+ --vf-color-contrast: #252526;
28
99
  --vf-color-contrast-contrast: #ffffff;
29
100
  --vf-color-success-soft: color-mix(in srgb, var(--vf-color-success) 12%, var(--vf-color-surface));
30
101
  --vf-color-info-soft: color-mix(in srgb, var(--vf-color-info) 12%, var(--vf-color-surface));
@@ -47,15 +118,15 @@
47
118
  --vf-control-height-sm: 1.75rem;
48
119
  --vf-control-height-md: 2.25rem;
49
120
  --vf-control-height-lg: 2.5rem;
50
- --vf-control-font-size-sm: 0.875rem;
51
- --vf-control-font-size-md: 0.9375rem;
52
- --vf-control-font-size-lg: 1rem;
121
+ --vf-control-font-size-sm: var(--vf-text-label-font-size);
122
+ --vf-control-font-size-md: var(--vf-text-body-font-size);
123
+ --vf-control-font-size-lg: var(--vf-font-size-xl);
53
124
  --vf-button-padding-sm: 0.25rem 0.5rem;
54
- --vf-button-padding-md: 0.375rem 0.75rem;
125
+ --vf-button-padding-md: 0.3125rem 0.75rem;
55
126
  --vf-button-padding-lg: 0.5rem 1rem;
56
127
  --vf-button-gap: 0.5rem;
57
128
  --vf-field-padding-sm: 0.25rem 0.5rem;
58
- --vf-field-padding-md: 0.375rem 0.75rem;
129
+ --vf-field-padding-md: 0.3125rem 0.75rem;
59
130
  --vf-field-padding-lg: 0.5rem 1rem;
60
131
  --vf-checkbox-size-sm: 1rem;
61
132
  --vf-checkbox-size-md: 1.125rem;
@@ -109,36 +180,36 @@
109
180
  --vf-nav-menu-collapse-inset-simple-deep-padding: 0.5rem;
110
181
  --vf-nav-menu-node-group-spacing: 0.25rem;
111
182
  --vf-nav-menu-group-padding: 0.375rem 0.75rem;
112
- --vf-nav-menu-group-font-size: 0.875rem;
113
- --vf-nav-menu-item-padding: 0.375rem 0.75rem;
183
+ --vf-nav-menu-group-font-size: var(--vf-text-label-font-size);
184
+ --vf-nav-menu-item-padding: var(--vf-field-padding-md);
114
185
  --vf-nav-menu-item-gap: 0.5rem;
115
186
  --vf-nav-menu-leading-icon-size: 1rem;
116
187
  --vf-nav-menu-leading-icon-column-size: 1.25rem;
117
188
  --vf-table-of-contents-gap: 0.25rem;
118
189
  --vf-table-of-contents-list-gap: var(--vf-nav-menu-list-gap);
119
- --vf-table-of-contents-title-font-size: 0.75rem;
190
+ --vf-table-of-contents-title-font-size: var(--vf-text-caption-font-size);
120
191
  --vf-table-of-contents-title-color: var(--vf-color-muted);
121
192
  --vf-table-of-contents-item-padding: var(--vf-nav-menu-item-padding);
122
- --vf-table-of-contents-level-step: 0.5rem;
193
+ --vf-table-of-contents-level-step: calc(var(--vf-nav-menu-collapse-inset-simple-level-0-margin) + var(--vf-nav-menu-collapse-inset-simple-level-0-padding));
123
194
  --vf-table-of-contents-color: var(--vf-color-text);
124
- --vf-table-of-contents-hover-color: var(--vf-color-primary);
125
- --vf-table-of-contents-hover-background: color-mix(in srgb, var(--vf-color-primary) 10%, var(--vf-color-surface));
126
- --vf-table-of-contents-active-color: var(--vf-color-primary);
127
- --vf-table-of-contents-active-background: color-mix(in srgb, var(--vf-color-primary) 14%, var(--vf-color-surface));
128
- --vf-badge-height: 1.5rem;
129
- --vf-badge-padding: 0.25rem 0.5rem;
195
+ --vf-table-of-contents-hover-color: var(--vf-selectable-hover-color);
196
+ --vf-table-of-contents-hover-background: var(--vf-selectable-hover-background);
197
+ --vf-table-of-contents-active-color: var(--vf-selectable-active-color);
198
+ --vf-table-of-contents-active-background: var(--vf-selectable-active-background);
199
+ --vf-badge-height: 1.375rem;
200
+ --vf-badge-padding: 0.0625rem 0.25rem;
130
201
  --vf-badge-gap: 0.25rem;
131
- --vf-badge-radius: 999px;
132
- --vf-badge-font-size: 0.8125rem;
133
- --vf-badge-line-height: 1.2;
134
- --vf-tag-height: 1.75rem;
135
- --vf-tag-padding: 0.25rem 0.5rem;
136
- --vf-tag-font-size: 0.8125rem;
137
- --vf-tag-line-height: 1.2;
202
+ --vf-badge-radius: var(--vf-radius-control-tight);
203
+ --vf-badge-font-size: var(--vf-text-label-font-size);
204
+ --vf-badge-line-height: var(--vf-text-label-line-height);
205
+ --vf-tag-height: 1.5rem;
206
+ --vf-tag-padding: 0.125rem 0.3125rem;
207
+ --vf-tag-font-size: var(--vf-text-label-font-size);
208
+ --vf-tag-line-height: var(--vf-text-label-line-height);
138
209
  --vf-tooltip-padding: 0.5rem 0.75rem;
139
210
  --vf-tooltip-max-width: 16rem;
140
- --vf-tooltip-font-size: 0.8125rem;
141
- --vf-tooltip-line-height: 1.4;
211
+ --vf-tooltip-font-size: var(--vf-text-body-font-size);
212
+ --vf-tooltip-line-height: var(--vf-text-body-line-height);
142
213
  --vf-dialog-width-sm: 28rem;
143
214
  --vf-dialog-width-md: 36rem;
144
215
  --vf-dialog-width-lg: 48rem;
@@ -148,21 +219,18 @@
148
219
  --vf-drawer-size-lg: 32rem;
149
220
  --vf-drawer-offset-top: 0px;
150
221
  --vf-drawer-body-padding: var(--vf-overlay-padding);
151
- --vf-dialog-title-font-size: 1.125rem;
222
+ --vf-dialog-title-font-size: var(--vf-text-body-font-size);
152
223
  --vf-dialog-header-gap: 0.75rem;
153
224
  --vf-dialog-actions-gap: 0.5rem;
154
225
  --vf-popover-width: min(100vw - 2rem, 22rem);
155
226
  --vf-floating-arrow-size: 0.625rem;
156
- --vf-overlay-backdrop: rgba(15, 23, 42, 0.56);
227
+ --vf-overlay-backdrop: rgba(0, 0, 0, 0.44);
157
228
  --vf-alert-primary-soft: color-mix(in srgb, var(--vf-color-primary) 8%, var(--vf-color-surface));
158
229
  --vf-alert-primary-border-soft: color-mix(in srgb, var(--vf-color-primary) 22%, var(--vf-color-border));
159
230
  --vf-alert-content-gap: 0.25rem;
160
- --vf-alert-title-font-size: 0.9375rem;
161
- --vf-card-title-font-size: 1rem;
162
- --vf-panel-title-font-size: 0.9375rem;
163
- --vf-text-line-height: 1.5;
164
- --vf-heading-line-height: 1.3;
165
- --vf-tabs-line-height: 1.2;
231
+ --vf-alert-title-font-size: var(--vf-text-body-font-size);
232
+ --vf-card-title-font-size: var(--vf-text-body-font-size);
233
+ --vf-panel-title-font-size: var(--vf-text-body-font-size);
166
234
  --vf-motion-duration-fast: 220ms;
167
235
  --vf-motion-duration-normal: 320ms;
168
236
  --vf-motion-ease-standard: cubic-bezier(0.16, 1, 0.3, 1);
@@ -2,6 +2,7 @@ import { IconName } from '@codemonster-ru/vueiconify';
2
2
  export type VfButtonVariant = "primary" | "secondary" | "success" | "info" | "warn" | "help" | "danger" | "contrast" | "ghost";
3
3
  export type VfControlSize = "sm" | "md" | "lg";
4
4
  export type VfLinkTone = "default" | "muted";
5
+ export type VfLinkUnderline = "none" | "hover" | "always";
5
6
  export type VfBadgeTone = "neutral" | "primary" | "success" | "info" | "warn" | "help" | "danger" | "contrast";
6
7
  export type VfFeedbackTone = "neutral" | "primary" | "success" | "info" | "warn" | "help" | "danger" | "contrast";
7
8
  export type VfDividerOrientation = "horizontal" | "vertical";
@@ -9,6 +10,20 @@ export type VfDialogSize = "sm" | "md" | "lg";
9
10
  export type VfDrawerPlacement = "left" | "right" | "top" | "bottom";
10
11
  export type VfDropdownPlacement = "bottom-start" | "bottom-end";
11
12
  export type VfTooltipPlacement = "top" | "bottom";
13
+ export interface VfSelectOption {
14
+ value: string;
15
+ label: string;
16
+ disabled?: boolean;
17
+ }
18
+ export interface VfBreadcrumbItem {
19
+ label: string;
20
+ href?: string;
21
+ to?: string | Record<string, unknown>;
22
+ target?: string;
23
+ rel?: string;
24
+ disabled?: boolean;
25
+ current?: boolean;
26
+ }
12
27
  export interface VfTabItem {
13
28
  value: string;
14
29
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../src/types/components.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAE3D,MAAM,MAAM,eAAe,GACvB,SAAS,GACT,WAAW,GACX,SAAS,GACT,MAAM,GACN,MAAM,GACN,MAAM,GACN,QAAQ,GACR,UAAU,GACV,OAAO,CAAC;AACZ,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC/C,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC;AAC7C,MAAM,MAAM,WAAW,GACnB,SAAS,GACT,SAAS,GACT,SAAS,GACT,MAAM,GACN,MAAM,GACN,MAAM,GACN,QAAQ,GACR,UAAU,CAAC;AACf,MAAM,MAAM,cAAc,GACtB,SAAS,GACT,SAAS,GACT,SAAS,GACT,MAAM,GACN,MAAM,GACN,MAAM,GACN,QAAQ,GACR,UAAU,CAAC;AACf,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG,UAAU,CAAC;AAC7D,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC9C,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;AACpE,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG,YAAY,CAAC;AAChE,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,QAAQ,CAAC;AAElD,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf"}
1
+ {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../src/types/components.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAE3D,MAAM,MAAM,eAAe,GACvB,SAAS,GACT,WAAW,GACX,SAAS,GACT,MAAM,GACN,MAAM,GACN,MAAM,GACN,QAAQ,GACR,UAAU,GACV,OAAO,CAAC;AACZ,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC/C,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC;AAC7C,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAC1D,MAAM,MAAM,WAAW,GACnB,SAAS,GACT,SAAS,GACT,SAAS,GACT,MAAM,GACN,MAAM,GACN,MAAM,GACN,QAAQ,GACR,UAAU,CAAC;AACf,MAAM,MAAM,cAAc,GACtB,SAAS,GACT,SAAS,GACT,SAAS,GACT,MAAM,GACN,MAAM,GACN,MAAM,GACN,QAAQ,GACR,UAAU,CAAC;AACf,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG,UAAU,CAAC;AAC7D,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC9C,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC;AACpE,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG,YAAY,CAAC;AAChE,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,QAAQ,CAAC;AAElD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf"}
@@ -1,6 +1,99 @@
1
1
  import { InjectionKey, Ref } from 'vue';
2
- import { VfResolvedTheme, VfThemeConfig, VfThemeMode } from '@codemonster-ru/vueforge-theme';
3
- export type { VfResolvedTheme, VfResolvedThemeConfig, VfResolvedThemePreset, VfResolvedThemePresetOptions, VfThemeConfig, VfThemeMode, VfThemePreset, VfThemePresetOptions, VfThemeTokens, } from '@codemonster-ru/vueforge-theme';
2
+ import { VfResolvedTheme as BaseVfResolvedTheme, VfResolvedThemeConfig as BaseVfResolvedThemeConfig, VfResolvedThemePreset as BaseVfResolvedThemePreset, VfResolvedThemePresetOptions, VfThemeConfig as BaseVfThemeConfig, VfThemeMode as BaseVfThemeMode, VfThemePreset as BaseVfThemePreset, VfThemePresetOptions, VfThemeTokens as BaseVfThemeTokens } from '@codemonster-ru/vueforge-theme';
3
+ export type VfResolvedTheme = BaseVfResolvedTheme;
4
+ export type VfThemeMode = BaseVfThemeMode;
5
+ export type { VfResolvedThemePresetOptions, VfThemePresetOptions };
6
+ type BaseVfThemeTokensWithoutLegacyTypography = Omit<BaseVfThemeTokens, "textLineHeight" | "headingLineHeight" | "tabsLineHeight">;
7
+ export interface VfThemeTokens extends BaseVfThemeTokensWithoutLegacyTypography {
8
+ fontFamilyBase: string;
9
+ fontFamilyHeading: string;
10
+ fontFamilyMono: string;
11
+ fontWeightRegular: string;
12
+ fontWeightMedium: string;
13
+ fontWeightSemibold: string;
14
+ fontWeightBold: string;
15
+ fontSizeXs: string;
16
+ fontSizeSm: string;
17
+ fontSizeMd: string;
18
+ fontSizeLg: string;
19
+ fontSizeXl: string;
20
+ fontSize2xl: string;
21
+ fontSize3xl: string;
22
+ lineHeightTight: string;
23
+ lineHeightNormal: string;
24
+ lineHeightRelaxed: string;
25
+ selectableHoverColor: string;
26
+ selectableHoverBackground: string;
27
+ selectableActiveColor: string;
28
+ selectableActiveBackground: string;
29
+ textBodyFontSize: string;
30
+ textBodyLineHeight: string;
31
+ textBodyFontWeight: string;
32
+ textCaptionFontSize: string;
33
+ textCaptionLineHeight: string;
34
+ textCaptionFontWeight: string;
35
+ textLabelFontSize: string;
36
+ textLabelLineHeight: string;
37
+ textLabelFontWeight: string;
38
+ headingFontSizeSm: string;
39
+ headingFontSizeMd: string;
40
+ headingFontSizeLg: string;
41
+ headingFontSizeXl: string;
42
+ headingFontWeight: string;
43
+ buttonSecondaryHoverBackground: string;
44
+ buttonSecondaryHoverBorderColor: string;
45
+ buttonSecondaryActiveBackground: string;
46
+ buttonSecondaryActiveBorderColor: string;
47
+ buttonGhostHoverBackground: string;
48
+ buttonGhostHoverBorderColor: string;
49
+ buttonGhostActiveBackground: string;
50
+ buttonGhostActiveBorderColor: string;
51
+ buttonSolidHoverFilter: string;
52
+ buttonSolidActiveFilter: string;
53
+ radioControlBackground: string;
54
+ radioHoverBorderColor: string;
55
+ switchTrackBackground: string;
56
+ switchTrackHoverBackground: string;
57
+ switchTrackCheckedBackground: string;
58
+ switchTrackCheckedHoverBackground: string;
59
+ switchThumbBackground: string;
60
+ switchThumbBorderColor: string;
61
+ switchThumbShadow: string;
62
+ switchThumbColor: string;
63
+ switchThumbIconSize: string;
64
+ switchThumbCheckedBackground: string;
65
+ switchThumbCheckedBorderColor: string;
66
+ switchThumbCheckedShadow: string;
67
+ proseHeadingMargin: string;
68
+ proseHeadingGap: string;
69
+ proseBlockSpacing: string;
70
+ proseListPaddingInlineStart: string;
71
+ proseListItemSpacing: string;
72
+ proseLinkHoverColor: string;
73
+ proseBlockquotePaddingInlineStart: string;
74
+ proseBlockquoteBorderWidth: string;
75
+ proseInlineCodeFontSize: string;
76
+ proseInlineCodePadding: string;
77
+ proseCodeBlockPadding: string;
78
+ proseHrMargin: string;
79
+ }
80
+ export interface VfThemePreset extends Omit<BaseVfThemePreset, "tokens" | "dark"> {
81
+ tokens: VfThemeTokens;
82
+ dark?: Partial<VfThemeTokens>;
83
+ }
84
+ export interface VfResolvedThemePreset extends Omit<BaseVfResolvedThemePreset, "light" | "dark"> {
85
+ light: VfThemeTokens;
86
+ dark: VfThemeTokens;
87
+ }
88
+ export interface VfThemeConfig extends Omit<BaseVfThemeConfig, "preset" | "extend" | "light" | "dark"> {
89
+ preset?: VfThemePreset;
90
+ extend?: Partial<VfThemeTokens>;
91
+ light?: Partial<VfThemeTokens>;
92
+ dark?: Partial<VfThemeTokens>;
93
+ }
94
+ export interface VfResolvedThemeConfig extends Omit<BaseVfResolvedThemeConfig, "preset"> {
95
+ preset: VfResolvedThemePreset;
96
+ }
4
97
  export interface VfVueForgeOptions {
5
98
  theme?: VfThemeConfig;
6
99
  defaultTheme?: VfThemeMode;