@xleddyl/443-components-vue 0.8.0 → 0.8.2

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 (150) hide show
  1. package/README.md +38 -2
  2. package/dist/chart/BarChart.vue +33 -22
  3. package/dist/chart/BarChart.vue.d.ts +4 -0
  4. package/dist/chart/chart.css +2 -2
  5. package/dist/chart/useChartColors.mjs +8 -8
  6. package/dist/components/core/Button.vue.d.ts +1 -1
  7. package/dist/components/core/Input.vue.d.ts +1 -1
  8. package/dist/components/core/Textarea.vue.d.ts +1 -1
  9. package/dist/components/core/types.d.ts +1 -1
  10. package/dist/components/data/Badge.vue.d.ts +1 -1
  11. package/dist/components/data/FilterPills.vue +43 -4
  12. package/dist/components/data/FilterPills.vue.d.ts +4 -1
  13. package/dist/components/data/Pagination.vue +55 -0
  14. package/dist/components/data/Pagination.vue.d.ts +10 -0
  15. package/dist/components/data/Tag.vue.d.ts +1 -1
  16. package/dist/components/data/Tree.vue.d.ts +1 -1
  17. package/dist/components/data/types.d.ts +1 -0
  18. package/dist/components/feedback/Meter.vue.d.ts +1 -1
  19. package/dist/components/feedback/Progress.vue.d.ts +1 -1
  20. package/dist/components/feedback/ProgressRing.vue.d.ts +1 -1
  21. package/dist/components/forms/Calendar.vue +31 -7
  22. package/dist/components/forms/Calendar.vue.d.ts +13 -2
  23. package/dist/components/forms/ColorInput.vue.d.ts +1 -1
  24. package/dist/components/forms/DateInput.vue.d.ts +2 -2
  25. package/dist/components/forms/DatePicker.vue.d.ts +1 -1
  26. package/dist/components/forms/FileInput.vue.d.ts +1 -1
  27. package/dist/components/forms/NumberInput.vue.d.ts +1 -1
  28. package/dist/components/forms/PasswordInput.vue.d.ts +1 -1
  29. package/dist/components/forms/PinInput.vue.d.ts +1 -1
  30. package/dist/components/forms/Select.vue.d.ts +1 -1
  31. package/dist/components/forms/Slider.vue.d.ts +1 -1
  32. package/dist/components/forms/Switch.vue.d.ts +1 -1
  33. package/dist/components/forms/TimeInput.vue.d.ts +1 -1
  34. package/dist/components/layout/AppShell.vue +4 -2
  35. package/dist/components/layout/AppShell.vue.d.ts +2 -0
  36. package/dist/components/layout/CopyButton.vue.d.ts +1 -1
  37. package/dist/components/layout/PageHeader.vue +15 -3
  38. package/dist/components/layout/PageHeader.vue.d.ts +5 -0
  39. package/dist/components/layout/Separator.vue +17 -4
  40. package/dist/components/layout/Separator.vue.d.ts +7 -1
  41. package/dist/components/layout/Tabs.vue +10 -0
  42. package/dist/components/layout/types.d.ts +3 -0
  43. package/dist/components/overlays/ConfirmDialog.vue.d.ts +6 -2
  44. package/dist/components/overlays/ConfirmHost.vue.d.ts +6 -2
  45. package/dist/components/overlays/ContextMenu.vue.d.ts +2 -0
  46. package/dist/components/overlays/DropdownMenu.vue +5 -1
  47. package/dist/components/overlays/DropdownMenu.vue.d.ts +6 -0
  48. package/dist/components/overlays/Modal.vue +9 -2
  49. package/dist/components/overlays/Modal.vue.d.ts +4 -0
  50. package/dist/components/templates/DashboardLayout.vue +2 -0
  51. package/dist/components/templates/DashboardLayout.vue.d.ts +2 -0
  52. package/dist/components/templates/SettingsModal.vue.d.ts +6 -2
  53. package/dist/components/templates/types.d.ts +1 -0
  54. package/dist/composables/useForm.d.ts +16 -1
  55. package/dist/composables/useForm.mjs +31 -6
  56. package/dist/editor/RichTextEditor.vue +13 -1
  57. package/dist/editor/RichTextEditor.vue.d.ts +1 -1
  58. package/dist/editor/rich-text-editor.css +10 -4
  59. package/dist/editor/types.d.ts +1 -1
  60. package/dist/grid/DataGrid.vue +62 -8
  61. package/dist/grid/DataGrid.vue.d.ts +10 -2
  62. package/dist/grid/cells/DateCell.vue +18 -3
  63. package/dist/grid/data-grid.css +1 -1
  64. package/dist/grid/index.d.ts +1 -1
  65. package/dist/grid/index.mjs +1 -1
  66. package/dist/grid/modules.d.ts +1 -0
  67. package/dist/grid/modules.mjs +9 -0
  68. package/dist/grid/theme.mjs +7 -6
  69. package/dist/grid/types.d.ts +1 -0
  70. package/dist/icons/builtin.d.ts +3 -0
  71. package/dist/icons/builtin.mjs +3 -0
  72. package/dist/index.d.ts +2 -2
  73. package/dist/index.mjs +2 -1
  74. package/dist/internal/core/intl.d.ts +2 -0
  75. package/dist/internal/core/intl.mjs +17 -0
  76. package/dist/internal/keys.d.ts +2 -1
  77. package/dist/internal/keys.mjs +1 -0
  78. package/dist/internal/overlays/MenuList.vue +4 -2
  79. package/dist/internal/overlays/MenuList.vue.d.ts +2 -0
  80. package/dist/internal/overlays/OverlayView.vue.d.ts +6 -2
  81. package/dist/locale/de.d.ts +2 -0
  82. package/dist/locale/de.mjs +362 -0
  83. package/dist/locale/en.mjs +10 -2
  84. package/dist/locale/index.d.ts +2 -1
  85. package/dist/locale/index.mjs +3 -2
  86. package/dist/locale/it.mjs +10 -2
  87. package/dist/locale/types.d.ts +8 -0
  88. package/dist/nuxt/runtime/layouts/dashboard.vue +1 -0
  89. package/dist/styles/base.css +2 -1
  90. package/dist/styles/core/button.css +42 -16
  91. package/dist/styles/core/form-field.css +1 -1
  92. package/dist/styles/core/input.css +2 -2
  93. package/dist/styles/core/kbd.css +1 -1
  94. package/dist/styles/data/avatar.css +1 -1
  95. package/dist/styles/data/badge.css +40 -24
  96. package/dist/styles/data/description-list.css +2 -2
  97. package/dist/styles/data/filter-pills.css +24 -3
  98. package/dist/styles/data/pagination.css +26 -3
  99. package/dist/styles/data/selection-bar.css +1 -1
  100. package/dist/styles/data/stat.css +4 -4
  101. package/dist/styles/data/table.css +4 -4
  102. package/dist/styles/data/tag.css +1 -1
  103. package/dist/styles/data/timeline.css +1 -1
  104. package/dist/styles/data/tree.css +2 -2
  105. package/dist/styles/feedback/empty-state.css +1 -1
  106. package/dist/styles/feedback/loading-host.css +1 -1
  107. package/dist/styles/feedback/loading-overlay.css +1 -1
  108. package/dist/styles/feedback/meter.css +1 -1
  109. package/dist/styles/feedback/progress.css +2 -2
  110. package/dist/styles/forced-colors.css +6 -1
  111. package/dist/styles/forms/calendar.css +30 -3
  112. package/dist/styles/forms/checkbox.css +1 -1
  113. package/dist/styles/forms/choice.css +1 -1
  114. package/dist/styles/forms/combobox.css +2 -2
  115. package/dist/styles/forms/file-input.css +1 -1
  116. package/dist/styles/forms/password-input.css +1 -1
  117. package/dist/styles/forms/pin-input.css +1 -1
  118. package/dist/styles/forms/radio.css +1 -1
  119. package/dist/styles/forms/segmented.css +2 -2
  120. package/dist/styles/forms/select.css +2 -2
  121. package/dist/styles/forms/slider.css +1 -1
  122. package/dist/styles/forms/switch.css +4 -4
  123. package/dist/styles/layout/accordion.css +2 -2
  124. package/dist/styles/layout/app-shell.css +18 -6
  125. package/dist/styles/layout/breadcrumbs.css +3 -3
  126. package/dist/styles/layout/card.css +1 -1
  127. package/dist/styles/layout/nav-link.css +1 -1
  128. package/dist/styles/layout/page-header.css +21 -1
  129. package/dist/styles/layout/separator.css +21 -1
  130. package/dist/styles/layout/sidebar.css +1 -1
  131. package/dist/styles/layout/tabs.css +30 -1
  132. package/dist/styles/layout/theme-switch.css +1 -1
  133. package/dist/styles/overlays/command.css +3 -3
  134. package/dist/styles/overlays/drawer.css +4 -3
  135. package/dist/styles/overlays/floating.css +2 -2
  136. package/dist/styles/overlays/menu.css +5 -1
  137. package/dist/styles/overlays/modal.css +13 -10
  138. package/dist/styles/overlays/toast.css +3 -3
  139. package/dist/styles/overlays/tooltip.css +26 -8
  140. package/dist/styles/shared.css +2 -2
  141. package/dist/styles/templates/account-menu.css +1 -1
  142. package/dist/styles/templates/auth-layout.css +4 -4
  143. package/dist/styles/templates/brand.css +2 -2
  144. package/dist/styles/templates/dashboard-page.css +1 -1
  145. package/dist/styles/templates/empty-page.css +3 -3
  146. package/dist/styles/templates/error-page.css +1 -1
  147. package/dist/styles/templates/save-bar.css +1 -1
  148. package/dist/styles/templates/settings-modal.css +6 -6
  149. package/dist/styles/utilities.css +3 -3
  150. package/package.json +1 -1
@@ -46,6 +46,7 @@ export const it = {
46
46
  bold: "Grassetto",
47
47
  italic: "Corsivo",
48
48
  strike: "Barrato",
49
+ underline: "Sottolineato",
49
50
  code: "Codice",
50
51
  heading: "Titolo {level}",
51
52
  bulletList: "Elenco puntato",
@@ -222,7 +223,11 @@ export const it = {
222
223
  rejected: "{count} file non accettato | {count} file non accettati"
223
224
  },
224
225
  filterPills: {
225
- label: "Filtri"
226
+ label: "Filtri",
227
+ remove: "Rimuovi {label}"
228
+ },
229
+ tabs: {
230
+ dot: "Richiede attenzione"
226
231
  },
227
232
  listPage: {
228
233
  toolbar: "Filtra i risultati",
@@ -241,7 +246,10 @@ export const it = {
241
246
  previous: "Pagina precedente",
242
247
  next: "Pagina successiva",
243
248
  pageSize: "Righe per pagina",
244
- of: "di"
249
+ of: "di",
250
+ first: "Prima pagina",
251
+ last: "Ultima pagina",
252
+ jump: "Vai alla pagina"
245
253
  },
246
254
  passwordInput: {
247
255
  show: "Mostra password",
@@ -44,6 +44,7 @@ export interface KMessages {
44
44
  bold: string;
45
45
  italic: string;
46
46
  strike: string;
47
+ underline: string;
47
48
  code: string;
48
49
  heading: string;
49
50
  bulletList: string;
@@ -221,6 +222,10 @@ export interface KMessages {
221
222
  };
222
223
  filterPills: {
223
224
  label: string;
225
+ remove: string;
226
+ };
227
+ tabs: {
228
+ dot: string;
224
229
  };
225
230
  listPage: {
226
231
  toolbar: string;
@@ -240,6 +245,9 @@ export interface KMessages {
240
245
  next: string;
241
246
  pageSize: string;
242
247
  of: string;
248
+ first: string;
249
+ last: string;
250
+ jump: string;
243
251
  };
244
252
  passwordInput: {
245
253
  show: string;
@@ -20,6 +20,7 @@
20
20
  :collapsible="dashboard.collapsible"
21
21
  :storage-key="dashboard.storageKey"
22
22
  :fluid="dashboard.fluid"
23
+ :fill="route.meta.fill === true || Boolean(dashboard.fill)"
23
24
  >
24
25
  <slot />
25
26
  </DashboardLayout>
@@ -1,6 +1,7 @@
1
1
  .k-root {
2
2
  font-family: var(--k-font-sans);
3
3
  font-size: var(--k-font-size);
4
+ font-weight: var(--k-font-weight, 400);
4
5
  font-feature-settings: var(--k-font-features);
5
6
  line-height: var(--k-line-height);
6
7
  color: var(--k-text-toned);
@@ -78,7 +79,7 @@ html.k-root > body {
78
79
  :where(.k-root) :where(h1, h2, h3, h4, h5, h6) {
79
80
  font-family: var(--k-font-display, var(--k-font-sans));
80
81
  font-size: inherit;
81
- font-weight: 600;
82
+ font-weight: var(--k-font-weight-strong, 600);
82
83
  color: var(--k-text);
83
84
  letter-spacing: -0.015em;
84
85
  }
@@ -2,7 +2,7 @@
2
2
  --k-btn-tone: var(--k-accent);
3
3
  --k-btn-tone-text: var(--k-accent-text);
4
4
  --k-btn-on-tone: var(--k-accent-contrast);
5
- --k-icon-size: 1rem;
5
+ --k-icon-size: var(--k-btn-icon-size, 1rem);
6
6
  position: relative;
7
7
  display: inline-flex;
8
8
  align-items: center;
@@ -10,7 +10,7 @@
10
10
  gap: 0.375rem;
11
11
  min-height: var(--k-btn-size);
12
12
  font-family: inherit;
13
- font-weight: 500;
13
+ font-weight: var(--k-font-weight-medium, 500);
14
14
  line-height: 1;
15
15
  letter-spacing: -0.005em;
16
16
  white-space: nowrap;
@@ -31,7 +31,7 @@
31
31
  }
32
32
 
33
33
  .k-btn:active:not(:disabled, [aria-disabled='true'], .k-btn-link) {
34
- scale: 0.97;
34
+ scale: var(--k-press-scale, 0.97);
35
35
  }
36
36
 
37
37
  .k-btn:disabled,
@@ -95,15 +95,15 @@
95
95
 
96
96
  .k-btn-md {
97
97
  --k-btn-size: var(--k-size-md);
98
- font-size: 0.8125rem;
99
- padding: 0.25rem 0.8125rem;
98
+ font-size: var(--k-btn-font-size, 0.8125rem);
99
+ padding: 0.25rem var(--k-btn-padding-x, 0.8125rem);
100
100
  }
101
101
 
102
102
  .k-btn-lg {
103
103
  --k-btn-size: var(--k-size-lg);
104
- --k-icon-size: 1.125rem;
105
- font-size: 0.875rem;
106
- padding: 0.375rem 1.125rem;
104
+ --k-icon-size: var(--k-btn-icon-size, 1.125rem);
105
+ font-size: var(--k-btn-font-size, 0.875rem);
106
+ padding: 0.375rem var(--k-btn-padding-x, 1.125rem);
107
107
  border-radius: calc(10px * var(--k-radius-scale));
108
108
  }
109
109
 
@@ -134,17 +134,17 @@
134
134
  .k-btn-solid {
135
135
  background: var(--k-btn-tone);
136
136
  color: var(--k-btn-on-tone);
137
- border-color: color-mix(in oklab, var(--k-btn-tone) 82%, black);
137
+ border-color: var(--k-btn-border, color-mix(in oklab, var(--k-btn-tone) 82%, black));
138
138
  box-shadow:
139
- inset 0 1px 0 rgb(255 255 255 / 0.18),
140
- 0 1px 2px color-mix(in oklab, var(--k-btn-tone) 35%, transparent);
139
+ inset 0 1px 0 var(--k-btn-highlight, rgb(255 255 255 / 0.18)),
140
+ var(--k-btn-shadow, 0 1px 2px color-mix(in oklab, var(--k-btn-tone) 35%, transparent));
141
141
  }
142
142
 
143
143
  .k-btn-solid:hover:not(:disabled, [aria-disabled='true']) {
144
144
  background: color-mix(in oklab, var(--k-btn-tone) 90%, black);
145
145
  box-shadow:
146
- inset 0 1px 0 rgb(255 255 255 / 0.22),
147
- 0 2px 8px -2px color-mix(in oklab, var(--k-btn-tone) 60%, transparent);
146
+ inset 0 1px 0 var(--k-btn-highlight, rgb(255 255 255 / 0.22)),
147
+ var(--k-btn-shadow, 0 2px 8px -2px color-mix(in oklab, var(--k-btn-tone) 60%, transparent));
148
148
  }
149
149
 
150
150
  .k-btn-solid:active:not(:disabled, [aria-disabled='true']) {
@@ -162,13 +162,13 @@
162
162
  .k-btn-neutral.k-btn-solid {
163
163
  background: var(--k-text);
164
164
  color: var(--k-surface);
165
- border-color: var(--k-text);
166
- box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.14);
165
+ border-color: var(--k-btn-border, var(--k-text));
166
+ box-shadow: inset 0 1px 0 var(--k-btn-highlight, rgb(255 255 255 / 0.14));
167
167
  }
168
168
 
169
169
  .k-btn-neutral.k-btn-solid:hover:not(:disabled, [aria-disabled='true']) {
170
170
  background: color-mix(in oklab, var(--k-text) 86%, var(--k-surface));
171
- box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.14);
171
+ box-shadow: inset 0 1px 0 var(--k-btn-highlight, rgb(255 255 255 / 0.14));
172
172
  }
173
173
 
174
174
  .k-btn-neutral.k-btn-solid:active:not(:disabled, [aria-disabled='true']) {
@@ -208,6 +208,32 @@
208
208
  background: var(--k-fill);
209
209
  }
210
210
 
211
+ .k-btn-subtle {
212
+ background: color-mix(in oklab, var(--k-btn-tone) 12%, transparent);
213
+ color: var(--k-btn-tone-text);
214
+ }
215
+
216
+ .k-btn-subtle:hover:not(:disabled, [aria-disabled='true']) {
217
+ background: color-mix(in oklab, var(--k-btn-tone) 18%, transparent);
218
+ }
219
+
220
+ .k-btn-subtle:active:not(:disabled, [aria-disabled='true']) {
221
+ background: color-mix(in oklab, var(--k-btn-tone) 24%, transparent);
222
+ }
223
+
224
+ .k-btn-neutral.k-btn-subtle {
225
+ background: var(--k-fill);
226
+ color: var(--k-text);
227
+ }
228
+
229
+ .k-btn-neutral.k-btn-subtle:hover:not(:disabled, [aria-disabled='true']) {
230
+ background: color-mix(in oklab, var(--k-text) 7%, var(--k-fill));
231
+ }
232
+
233
+ .k-btn-neutral.k-btn-subtle:active:not(:disabled, [aria-disabled='true']) {
234
+ background: color-mix(in oklab, var(--k-text) 12%, var(--k-fill));
235
+ }
236
+
211
237
  .k-btn-outline {
212
238
  background: transparent;
213
239
  border-color: var(--k-btn-tone);
@@ -19,7 +19,7 @@
19
19
  align-items: center;
20
20
  gap: 0.4375rem;
21
21
  font-size: 0.8125rem;
22
- font-weight: 500;
22
+ font-weight: var(--k-font-weight-medium, 500);
23
23
  color: var(--k-text-toned);
24
24
  }
25
25
 
@@ -68,13 +68,13 @@
68
68
 
69
69
  .k-field-md {
70
70
  font-size: 0.875rem;
71
- padding: 0.25rem 0.75rem;
71
+ padding: 0.25rem var(--k-field-padding-x, 0.75rem);
72
72
  min-height: var(--k-size-md);
73
73
  }
74
74
 
75
75
  .k-field-lg {
76
76
  font-size: 0.9375rem;
77
- padding: 0.375rem 0.875rem;
77
+ padding: 0.375rem var(--k-field-padding-x, 0.875rem);
78
78
  min-height: var(--k-size-lg);
79
79
  border-radius: calc(10px * var(--k-radius-scale));
80
80
  }
@@ -7,7 +7,7 @@
7
7
  padding: 0 0.3125rem;
8
8
  font-family: var(--k-font-mono);
9
9
  font-size: 0.75rem;
10
- font-weight: 500;
10
+ font-weight: var(--k-font-weight-medium, 500);
11
11
  line-height: 1;
12
12
  color: var(--k-text-muted);
13
13
  background: var(--k-subtle);
@@ -10,7 +10,7 @@
10
10
  box-shadow: inset 0 0 0 1px color-mix(in oklab, var(--k-accent) 14%, transparent);
11
11
  color: var(--k-accent-text);
12
12
  font-size: calc(var(--k-avatar-size) * 0.38);
13
- font-weight: 600;
13
+ font-weight: var(--k-font-weight-strong, 600);
14
14
  line-height: 1;
15
15
  letter-spacing: 0.01em;
16
16
  vertical-align: middle;
@@ -1,6 +1,7 @@
1
1
  .k-badge {
2
2
  --k-badge-tone: var(--k-text-muted);
3
3
  --k-badge-text: var(--k-text-toned);
4
+ --k-badge-on-tone: var(--k-text-inverted);
4
5
  --k-icon-size: 0.75rem;
5
6
  display: inline-flex;
6
7
  align-items: center;
@@ -9,9 +10,12 @@
9
10
  height: 1.375rem;
10
11
  padding: 0 0.5rem;
11
12
  border: 1px solid transparent;
12
- border-radius: var(--k-radius-full);
13
- font-size: 0.75rem;
14
- font-weight: 500;
13
+ border-radius: var(--k-badge-radius, var(--k-radius-full));
14
+ font-family: var(--k-badge-font, inherit);
15
+ font-size: var(--k-badge-font-size, 0.75rem);
16
+ font-weight: var(--k-badge-font-weight, var(--k-font-weight-medium, 500));
17
+ text-transform: var(--k-badge-text-transform, none);
18
+ letter-spacing: var(--k-badge-letter-spacing, normal);
15
19
  line-height: 1;
16
20
  white-space: nowrap;
17
21
  vertical-align: middle;
@@ -55,46 +59,58 @@
55
59
  --k-badge-text: var(--k-info-text);
56
60
  }
57
61
 
62
+ .k-badge-accent {
63
+ --k-badge-on-tone: var(--k-accent-contrast);
64
+ }
65
+
58
66
  .k-badge-soft {
59
- background: color-mix(in oklab, var(--k-badge-tone) 10%, transparent);
60
- border-color: color-mix(in oklab, var(--k-badge-tone) 24%, transparent);
61
- color: var(--k-badge-text);
67
+ background: var(--k-badge-background, color-mix(in oklab, var(--k-badge-tone) 10%, transparent));
68
+ border-color: var(
69
+ --k-badge-border-color,
70
+ color-mix(in oklab, var(--k-badge-tone) 24%, transparent)
71
+ );
72
+ color: var(--k-badge-color, var(--k-badge-text));
62
73
  }
63
74
 
64
75
  .k-badge-neutral.k-badge-soft {
65
- background: var(--k-subtle);
66
- border-color: var(--k-line);
76
+ background: var(--k-badge-background, var(--k-subtle));
77
+ border-color: var(--k-badge-border-color, var(--k-line));
67
78
  }
68
79
 
69
80
  .k-badge-outline {
70
- background: transparent;
71
- border-color: color-mix(in oklab, var(--k-badge-tone) 45%, transparent);
72
- color: var(--k-badge-text);
81
+ background: var(--k-badge-background, transparent);
82
+ border-color: var(
83
+ --k-badge-border-color,
84
+ color-mix(in oklab, var(--k-badge-tone) 45%, transparent)
85
+ );
86
+ color: var(--k-badge-color, var(--k-badge-text));
73
87
  }
74
88
 
75
89
  .k-badge-neutral.k-badge-outline {
76
- border-color: var(--k-line-strong);
77
- color: var(--k-text-muted);
90
+ border-color: var(--k-badge-border-color, var(--k-line-strong));
91
+ color: var(--k-badge-color, var(--k-text-muted));
78
92
  }
79
93
 
80
94
  .k-badge-solid {
81
- background: var(--k-badge-tone);
82
- border-color: color-mix(in oklab, var(--k-badge-tone) 82%, black);
83
- color: var(--k-text-inverted);
95
+ background: var(--k-badge-background, var(--k-badge-tone));
96
+ border-color: var(
97
+ --k-badge-border-color,
98
+ color-mix(in oklab, var(--k-badge-background, var(--k-badge-tone)) 82%, black)
99
+ );
100
+ color: var(--k-badge-color, var(--k-badge-on-tone));
84
101
  }
85
102
 
86
103
  :is(.k-badge-success, .k-badge-warning).k-badge-solid {
87
- background: light-dark(color-mix(in oklab, var(--k-badge-tone) 94%, black), var(--k-badge-tone));
88
- }
89
-
90
- .k-badge-accent.k-badge-solid {
91
- color: var(--k-accent-contrast);
104
+ background: var(
105
+ --k-badge-background,
106
+ light-dark(color-mix(in oklab, var(--k-badge-tone) 94%, black), var(--k-badge-tone))
107
+ );
92
108
  }
93
109
 
94
110
  .k-badge-neutral.k-badge-solid {
95
- background: var(--k-text);
96
- border-color: var(--k-text);
97
- color: var(--k-surface);
111
+ background: var(--k-badge-background, var(--k-text));
112
+ border-color: var(--k-badge-border-color, var(--k-badge-background, var(--k-text)));
113
+ color: var(--k-badge-color, var(--k-surface));
98
114
  }
99
115
 
100
116
  .k-badge-dot {
@@ -40,13 +40,13 @@
40
40
 
41
41
  .k-description-term {
42
42
  font-size: 0.75rem;
43
- font-weight: 500;
43
+ font-weight: var(--k-font-weight-medium, 500);
44
44
  color: var(--k-text-muted);
45
45
  }
46
46
 
47
47
  .k-description-list-inline .k-description-term {
48
48
  font-size: 0.8125rem;
49
- font-weight: 450;
49
+ font-weight: max(var(--k-font-weight, 400), 450);
50
50
  }
51
51
 
52
52
  .k-description-details {
@@ -16,7 +16,7 @@
16
16
  border-radius: var(--k-radius-full);
17
17
  background: transparent;
18
18
  font-size: 0.8125rem;
19
- font-weight: 500;
19
+ font-weight: var(--k-font-weight-medium, 500);
20
20
  white-space: nowrap;
21
21
  color: var(--k-text-muted);
22
22
  transition:
@@ -33,7 +33,7 @@
33
33
  }
34
34
 
35
35
  .k-filter-pill:active:not(:disabled) {
36
- scale: 0.97;
36
+ scale: var(--k-press-scale, 0.97);
37
37
  }
38
38
 
39
39
  .k-filter-pill:is([aria-pressed='true'], .is-active) {
@@ -113,7 +113,7 @@
113
113
  padding-left: 0.3125rem;
114
114
  border-left: 1px solid currentColor;
115
115
  border-left-color: color-mix(in oklab, currentColor 30%, transparent);
116
- font-weight: 600;
116
+ font-weight: var(--k-font-weight-strong, 600);
117
117
  overflow-x: clip;
118
118
  text-overflow: ellipsis;
119
119
  max-width: 14rem;
@@ -133,3 +133,24 @@
133
133
  .k-filter-pill[aria-expanded='true'] .k-filter-pill-caret {
134
134
  transform: rotate(180deg);
135
135
  }
136
+
137
+ .k-filter-pill-group {
138
+ position: relative;
139
+ display: inline-flex;
140
+ align-items: center;
141
+ }
142
+
143
+ .k-filter-pill-group > .k-filter-pill {
144
+ padding-inline-end: calc(var(--k-size-xs) + 0.25rem);
145
+ }
146
+
147
+ .k-filter-pill-group > .k-filter-pill-remove {
148
+ position: absolute;
149
+ inset-inline-end: 0.25rem;
150
+ border-radius: var(--k-radius-full);
151
+ color: inherit;
152
+ }
153
+
154
+ .k-filter-pill-group:has(.k-filter-pill.is-active) > .k-filter-pill-remove {
155
+ color: var(--k-accent-text);
156
+ }
@@ -13,7 +13,7 @@
13
13
  }
14
14
 
15
15
  .k-pagination-strong {
16
- font-weight: 500;
16
+ font-weight: var(--k-font-weight-medium, 500);
17
17
  color: var(--k-text);
18
18
  }
19
19
 
@@ -69,7 +69,7 @@
69
69
  border: 1px solid transparent;
70
70
  border-radius: var(--k-radius-sm);
71
71
  font-size: 0.8125rem;
72
- font-weight: 500;
72
+ font-weight: var(--k-font-weight-medium, 500);
73
73
  font-variant-numeric: tabular-nums;
74
74
  color: var(--k-text-muted);
75
75
  transition:
@@ -86,7 +86,7 @@
86
86
  }
87
87
 
88
88
  .k-pagination-page:active:not(:disabled) {
89
- scale: 0.97;
89
+ scale: var(--k-press-scale, 0.97);
90
90
  }
91
91
 
92
92
  .k-pagination-page[aria-current='page'] {
@@ -125,3 +125,26 @@
125
125
  font-size: 0.75rem;
126
126
  border-radius: var(--k-radius-sm);
127
127
  }
128
+
129
+ .k-pagination-jump {
130
+ display: inline-flex;
131
+ align-items: center;
132
+ gap: 0.5rem;
133
+ white-space: nowrap;
134
+ }
135
+
136
+ .k-pagination-jump-input {
137
+ width: 4.5rem;
138
+ font-variant-numeric: tabular-nums;
139
+ -moz-appearance: textfield;
140
+ }
141
+
142
+ .k-pagination-jump-input::-webkit-inner-spin-button,
143
+ .k-pagination-jump-input::-webkit-outer-spin-button {
144
+ -webkit-appearance: none;
145
+ margin: 0;
146
+ }
147
+
148
+ .k-pagination-jump-total {
149
+ font-variant-numeric: tabular-nums;
150
+ }
@@ -56,7 +56,7 @@
56
56
  align-items: center;
57
57
  gap: 0.5rem;
58
58
  font-size: 0.8125rem;
59
- font-weight: 600;
59
+ font-weight: var(--k-font-weight-strong, 600);
60
60
  font-variant-numeric: tabular-nums;
61
61
  white-space: nowrap;
62
62
  color: var(--k-text);
@@ -43,7 +43,7 @@
43
43
 
44
44
  .k-stat-label {
45
45
  font-size: 0.75rem;
46
- font-weight: 500;
46
+ font-weight: var(--k-font-weight-medium, 500);
47
47
  color: var(--k-text-muted);
48
48
  }
49
49
 
@@ -74,7 +74,7 @@
74
74
  gap: 0.25rem;
75
75
  min-width: 0;
76
76
  font-size: 1.5rem;
77
- font-weight: 600;
77
+ font-weight: var(--k-font-weight-strong, 600);
78
78
  line-height: 1.15;
79
79
  letter-spacing: -0.022em;
80
80
  font-variant-numeric: tabular-nums;
@@ -84,7 +84,7 @@
84
84
 
85
85
  .k-stat-unit {
86
86
  font-size: 0.8125rem;
87
- font-weight: 500;
87
+ font-weight: var(--k-font-weight-medium, 500);
88
88
  letter-spacing: 0;
89
89
  color: var(--k-text-muted);
90
90
  }
@@ -122,7 +122,7 @@
122
122
  padding: 0 0.375rem;
123
123
  border-radius: var(--k-radius-sm);
124
124
  background: color-mix(in oklab, var(--k-stat-tone) 11%, transparent);
125
- font-weight: 600;
125
+ font-weight: var(--k-font-weight-strong, 600);
126
126
  font-variant-numeric: tabular-nums;
127
127
  color: var(--k-stat-tone);
128
128
  }
@@ -46,7 +46,7 @@
46
46
  padding: 0.75rem var(--k-table-pad-x) 0.25rem;
47
47
  caption-side: top;
48
48
  text-align: left;
49
- font-weight: 600;
49
+ font-weight: var(--k-font-weight-strong, 600);
50
50
  color: var(--k-text);
51
51
  }
52
52
 
@@ -61,7 +61,7 @@
61
61
  padding: 0 var(--k-table-pad-x);
62
62
  vertical-align: middle;
63
63
  font-size: 0.75rem;
64
- font-weight: 500;
64
+ font-weight: var(--k-font-weight-medium, 500);
65
65
  line-height: 1.4;
66
66
  color: var(--k-text-muted);
67
67
  background: var(--k-subtle);
@@ -157,7 +157,7 @@
157
157
  }
158
158
 
159
159
  .k-table-td.is-strong {
160
- font-weight: 500;
160
+ font-weight: var(--k-font-weight-medium, 500);
161
161
  color: var(--k-text);
162
162
  }
163
163
 
@@ -183,7 +183,7 @@
183
183
  .k-table-link {
184
184
  border-radius: var(--k-radius-xs);
185
185
  color: inherit;
186
- font-weight: 500;
186
+ font-weight: var(--k-font-weight-medium, 500);
187
187
  text-decoration: none;
188
188
  }
189
189
 
@@ -12,7 +12,7 @@
12
12
  background: var(--k-surface);
13
13
  box-shadow: var(--k-shadow-xs);
14
14
  font-size: 0.8125rem;
15
- font-weight: 450;
15
+ font-weight: max(var(--k-font-weight, 400), 450);
16
16
  line-height: 1;
17
17
  color: var(--k-text);
18
18
  white-space: nowrap;
@@ -91,7 +91,7 @@
91
91
 
92
92
  .k-timeline-title {
93
93
  font-size: 0.8125rem;
94
- font-weight: 500;
94
+ font-weight: var(--k-font-weight-medium, 500);
95
95
  color: var(--k-text);
96
96
  }
97
97
 
@@ -95,7 +95,7 @@
95
95
  text-overflow: ellipsis;
96
96
  white-space: nowrap;
97
97
  font-size: 0.8125rem;
98
- font-weight: 500;
98
+ font-weight: var(--k-font-weight-medium, 500);
99
99
  color: var(--k-text);
100
100
  }
101
101
 
@@ -259,7 +259,7 @@
259
259
  }
260
260
 
261
261
  .k-tree-sm .k-tree-label {
262
- font-weight: 450;
262
+ font-weight: max(var(--k-font-weight, 400), 450);
263
263
  color: inherit;
264
264
  }
265
265
 
@@ -63,7 +63,7 @@
63
63
 
64
64
  .k-empty-title {
65
65
  font-size: 0.9375rem;
66
- font-weight: 600;
66
+ font-weight: var(--k-font-weight-strong, 600);
67
67
  line-height: 1.3;
68
68
  color: var(--k-text);
69
69
  }
@@ -70,7 +70,7 @@
70
70
  gap: 0.625rem;
71
71
  padding: 0.625rem 0.875rem;
72
72
  font-size: 0.8125rem;
73
- font-weight: 500;
73
+ font-weight: var(--k-font-weight-medium, 500);
74
74
  background: var(--k-elevated);
75
75
  border-radius: var(--k-radius-lg);
76
76
  box-shadow: var(--k-shadow-overlay);
@@ -44,7 +44,7 @@
44
44
  background: var(--k-elevated);
45
45
  box-shadow: var(--k-shadow-overlay);
46
46
  font-size: 0.8125rem;
47
- font-weight: 500;
47
+ font-weight: var(--k-font-weight-medium, 500);
48
48
  color: var(--k-text);
49
49
  animation: k-pop var(--k-duration-lg) var(--k-ease-out) 120ms backwards;
50
50
  }
@@ -14,7 +14,7 @@
14
14
  }
15
15
 
16
16
  .k-meter-label {
17
- font-weight: 500;
17
+ font-weight: var(--k-font-weight-medium, 500);
18
18
  color: var(--k-text);
19
19
  }
20
20
 
@@ -44,7 +44,7 @@
44
44
  }
45
45
 
46
46
  .k-progress-label {
47
- font-weight: 500;
47
+ font-weight: var(--k-font-weight-medium, 500);
48
48
  color: var(--k-text);
49
49
  }
50
50
 
@@ -118,7 +118,7 @@
118
118
 
119
119
  .k-progress-ring-content {
120
120
  font-size: calc(var(--k-ring-size, 2.5rem) * 0.26);
121
- font-weight: 600;
121
+ font-weight: var(--k-font-weight-strong, 600);
122
122
  font-variant-numeric: tabular-nums;
123
123
  color: var(--k-text);
124
124
  }
@@ -192,7 +192,7 @@
192
192
  background: none;
193
193
  }
194
194
 
195
- :is(.k-btn-solid, .k-btn-soft, .k-btn-ghost, .k-badge) {
195
+ :is(.k-btn-solid, .k-btn-soft, .k-btn-subtle, .k-btn-ghost, .k-badge) {
196
196
  border: 1px solid ButtonText;
197
197
  }
198
198
 
@@ -212,4 +212,9 @@
212
212
  forced-color-adjust: none;
213
213
  background: Highlight;
214
214
  }
215
+
216
+ .k-tab-dot {
217
+ forced-color-adjust: none;
218
+ background: CanvasText;
219
+ }
215
220
  }