@michaelthielemann/kestrel 3.0.0 → 3.0.1

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.
@@ -239,7 +239,7 @@ function insertRowAt(at: number) {
239
239
  </template>
240
240
 
241
241
  <style lang="scss">
242
- @use '../../assets/scss/mixins' as *;
242
+ @use '../../assets/scss/mixins';
243
243
 
244
244
  .ui-repeater {
245
245
  display: flex;
@@ -294,7 +294,7 @@ function insertRowAt(at: number) {
294
294
  }
295
295
 
296
296
  &__insert {
297
- @include focus-ring;
297
+ @include mixins.focus-ring;
298
298
  position: relative;
299
299
  z-index: 1;
300
300
  display: flex;
@@ -388,7 +388,7 @@ function insertRowAt(at: number) {
388
388
  &__move,
389
389
  &__duplicate,
390
390
  &__remove {
391
- @include focus-ring;
391
+ @include mixins.focus-ring;
392
392
  display: flex;
393
393
  align-items: center;
394
394
  justify-content: center;
@@ -428,7 +428,7 @@ function insertRowAt(at: number) {
428
428
  }
429
429
 
430
430
  &__add {
431
- @include focus-ring;
431
+ @include mixins.focus-ring;
432
432
  align-self: flex-start;
433
433
  border: 1px solid var(--color-border);
434
434
  background: var(--color-surface);
@@ -450,7 +450,7 @@ function insertRowAt(at: number) {
450
450
  }
451
451
 
452
452
  &__live {
453
- @include sr-only;
453
+ @include mixins.sr-only;
454
454
  }
455
455
 
456
456
  @media (prefers-reduced-motion: reduce) {
@@ -29,10 +29,10 @@ withDefaults(
29
29
  </template>
30
30
 
31
31
  <style lang="scss">
32
- @use '../../assets/scss/mixins' as *;
32
+ @use '../../assets/scss/mixins';
33
33
 
34
34
  .ui-button {
35
- @include focus-ring;
35
+ @include mixins.focus-ring;
36
36
  display: inline-flex;
37
37
  align-items: center;
38
38
  justify-content: center;
@@ -49,7 +49,7 @@ function onUpdate(v: unknown) {
49
49
  </template>
50
50
 
51
51
  <style lang="scss">
52
- @use '../../assets/scss/mixins' as *;
52
+ @use '../../assets/scss/mixins';
53
53
 
54
54
  .ui-btngroup {
55
55
  display: inline-flex;
@@ -62,7 +62,7 @@ function onUpdate(v: unknown) {
62
62
  width: fit-content;
63
63
 
64
64
  &__item {
65
- @include focus-ring;
65
+ @include mixins.focus-ring;
66
66
  display: inline-flex;
67
67
  align-items: center;
68
68
  gap: var(--space-1);
@@ -36,10 +36,10 @@ watch(() => props.indeterminate, syncIndeterminate)
36
36
  </template>
37
37
 
38
38
  <style lang="scss">
39
- @use '../../assets/scss/mixins' as *;
39
+ @use '../../assets/scss/mixins';
40
40
 
41
41
  .ui-checkbox {
42
- @include focus-ring;
42
+ @include mixins.focus-ring;
43
43
  width: 1.25rem;
44
44
  height: 1.25rem;
45
45
  accent-color: var(--color-primary);
@@ -197,7 +197,7 @@ function moveChip(from: number, to: number) {
197
197
  </template>
198
198
 
199
199
  <style lang="scss">
200
- @use '../../assets/scss/mixins' as *;
200
+ @use '../../assets/scss/mixins';
201
201
 
202
202
  .ui-combobox {
203
203
  &__anchor {
@@ -232,7 +232,7 @@ function moveChip(from: number, to: number) {
232
232
  font-size: var(--text-sm);
233
233
  }
234
234
  &__chip-remove {
235
- @include focus-ring;
235
+ @include mixins.focus-ring;
236
236
  display: inline-flex;
237
237
  align-items: center;
238
238
  justify-content: center;
@@ -246,7 +246,7 @@ function moveChip(from: number, to: number) {
246
246
  line-height: 1;
247
247
  }
248
248
  &__chip-move {
249
- @include focus-ring;
249
+ @include mixins.focus-ring;
250
250
  display: inline-flex;
251
251
  align-items: center;
252
252
  justify-content: center;
@@ -269,7 +269,7 @@ function moveChip(from: number, to: number) {
269
269
 
270
270
  &:disabled { cursor: default; } // stays collapsed (the reveal selector excludes :disabled)
271
271
  }
272
- &__live { @include sr-only; }
272
+ &__live { @include mixins.sr-only; }
273
273
  &__chip {
274
274
  &:hover,
275
275
  &:focus-within {
@@ -302,7 +302,7 @@ function moveChip(from: number, to: number) {
302
302
  padding: var(--space-1) 0;
303
303
  }
304
304
  &__icon {
305
- @include focus-ring;
305
+ @include mixins.focus-ring;
306
306
  border: 0;
307
307
  background: transparent;
308
308
  cursor: pointer;
@@ -87,6 +87,6 @@ const value = computed<DateValue | undefined>({
87
87
 
88
88
  <style lang="scss">
89
89
  // Shared, global (non-scoped) datepicker chrome — the calendar is teleported to <body>.
90
- @use '../../assets/scss/datepicker' as *;
91
- @include ui-datepicker;
90
+ @use '../../assets/scss/datepicker';
91
+ @include datepicker.ui-datepicker;
92
92
  </style>
@@ -95,6 +95,6 @@ const value = computed<{ start: DateValue | undefined; end: DateValue | undefine
95
95
  // Shares the global (non-scoped) datepicker chrome — the calendar is teleported to <body>, so a
96
96
  // `scoped` block would silently drop these styles. Included explicitly rather than borrowing them
97
97
  // from DatePicker being present on the page.
98
- @use '../../assets/scss/datepicker' as *;
99
- @include ui-datepicker;
98
+ @use '../../assets/scss/datepicker';
99
+ @include datepicker.ui-datepicker;
100
100
  </style>
@@ -90,17 +90,17 @@ function onKeydown(e: KeyboardEvent) {
90
90
  </template>
91
91
 
92
92
  <style lang="scss">
93
- @use '../../assets/scss/mixins' as *;
93
+ @use '../../assets/scss/mixins';
94
94
 
95
95
  .ui-number {
96
- @include input-base;
96
+ @include mixins.input-base;
97
97
  width: 100%;
98
98
 
99
99
  &::placeholder {
100
100
  color: var(--color-text-muted);
101
101
  }
102
102
  &--slim {
103
- @include input-slim;
103
+ @include mixins.input-slim;
104
104
  }
105
105
  }
106
106
 
@@ -166,7 +166,7 @@ function onKeydown(e: KeyboardEvent) {
166
166
  // separate rule (not nested) so `.ui-number-wrap--slim .ui-number-wrap__input` outranks the base element rule.
167
167
  .ui-number-wrap--slim {
168
168
  .ui-number-wrap__input {
169
- @include input-slim;
169
+ @include mixins.input-slim;
170
170
  }
171
171
  .ui-number-wrap__suffix {
172
172
  padding-inline: var(--space-2);
@@ -27,7 +27,7 @@ const model = defineModel<string | null>()
27
27
  </template>
28
28
 
29
29
  <style lang="scss">
30
- @use '../../assets/scss/mixins' as *;
30
+ @use '../../assets/scss/mixins';
31
31
 
32
32
  .ui-select {
33
33
  position: relative;
@@ -35,7 +35,7 @@ const model = defineModel<string | null>()
35
35
  width: 100%;
36
36
  }
37
37
  .ui-select__field {
38
- @include input-base;
38
+ @include mixins.input-base;
39
39
  width: 100%;
40
40
  appearance: none;
41
41
  // leave room for the overlaid chevron so long values don't run under it
@@ -55,7 +55,7 @@ const inputType = computed(() => (revealable.value && revealed.value ? 'text' :
55
55
  </template>
56
56
 
57
57
  <style lang="scss">
58
- @use '../../assets/scss/mixins' as *;
58
+ @use '../../assets/scss/mixins';
59
59
 
60
60
  .ui-input-wrap {
61
61
  position: relative;
@@ -64,7 +64,7 @@ const inputType = computed(() => (revealable.value && revealed.value ? 'text' :
64
64
  }
65
65
 
66
66
  .ui-input {
67
- @include input-base;
67
+ @include mixins.input-base;
68
68
  width: 100%;
69
69
 
70
70
  &::placeholder {
@@ -72,7 +72,7 @@ const inputType = computed(() => (revealable.value && revealed.value ? 'text' :
72
72
  }
73
73
 
74
74
  &--slim {
75
- @include input-slim;
75
+ @include mixins.input-slim;
76
76
  }
77
77
 
78
78
  // Leave room for the inset reveal button so the value never sits under it. Declared after `--slim` so a
@@ -83,7 +83,7 @@ const inputType = computed(() => (revealable.value && revealed.value ? 'text' :
83
83
  }
84
84
 
85
85
  .ui-input__reveal {
86
- @include focus-ring;
86
+ @include mixins.focus-ring;
87
87
  position: absolute;
88
88
  inset-block: 1px;
89
89
  inset-inline-end: 1px;
@@ -23,10 +23,10 @@ const model = defineModel<string | null>()
23
23
  </template>
24
24
 
25
25
  <style lang="scss">
26
- @use '../../assets/scss/mixins' as *;
26
+ @use '../../assets/scss/mixins';
27
27
 
28
28
  .ui-textarea {
29
- @include input-base;
29
+ @include mixins.input-base;
30
30
  width: 100%;
31
31
  font-family: inherit;
32
32
  line-height: var(--leading-normal);
@@ -10,9 +10,9 @@ const model = defineModel<string | null>()
10
10
  </template>
11
11
 
12
12
  <style lang="scss">
13
- @use '../../assets/scss/mixins' as *;
13
+ @use '../../assets/scss/mixins';
14
14
 
15
15
  .ui-time {
16
- @include input-base;
16
+ @include mixins.input-base;
17
17
  }
18
18
  </style>
@@ -39,9 +39,9 @@ const { t } = useT()
39
39
  </template>
40
40
 
41
41
  <style lang="scss">
42
- @use '../../assets/scss/mixins' as *;
42
+ @use '../../assets/scss/mixins';
43
43
 
44
- .ui-toasts__live { @include sr-only; }
44
+ .ui-toasts__live { @include mixins.sr-only; }
45
45
 
46
46
  .ui-toasts {
47
47
  position: fixed;
@@ -76,7 +76,7 @@ const { t } = useT()
76
76
  &__msg { flex: 1 1 auto; min-width: 0; }
77
77
 
78
78
  &__close {
79
- @include focus-ring;
79
+ @include mixins.focus-ring;
80
80
  flex-shrink: 0;
81
81
  display: inline-flex;
82
82
  padding: var(--space-1);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@michaelthielemann/kestrel",
3
- "version": "3.0.0",
3
+ "version": "3.0.1",
4
4
  "description": "A slim, collection-driven Nuxt 4 CMS meta-layer with a runtime schema engine. Add `extends: ['@michaelthielemann/kestrel']`, define collections, and the database migrates itself.",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Michael Thielemann <283621694+MichaelThielemann@users.noreply.github.com>",