noph-ui 0.30.12 → 0.31.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
@@ -66,6 +66,7 @@ Beta (No breaking changes expected)
66
66
  - Segmented buttons
67
67
  - Select
68
68
  - Snackbar
69
+ - Switch
69
70
  - Text fields
70
71
  - Tabs
71
72
 
@@ -156,7 +156,7 @@
156
156
  font: inherit;
157
157
  background-color: transparent;
158
158
  border-width: 0;
159
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
159
+ -webkit-tap-highlight-color: transparent;
160
160
  position: relative;
161
161
  cursor: pointer;
162
162
  display: inline-flex;
@@ -131,7 +131,7 @@
131
131
  .np-icon-button {
132
132
  font: inherit;
133
133
  box-sizing: border-box;
134
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
134
+ -webkit-tap-highlight-color: transparent;
135
135
  background-color: transparent;
136
136
  border-width: 0;
137
137
  position: relative;
@@ -113,7 +113,7 @@
113
113
  cursor: pointer;
114
114
  font-size: 0.875rem;
115
115
  font-weight: 500;
116
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
116
+ -webkit-tap-highlight-color: transparent;
117
117
  white-space: nowrap;
118
118
  user-select: none;
119
119
  display: flex;
@@ -176,7 +176,7 @@
176
176
  box-sizing: border-box;
177
177
  color: var(--np-color-on-surface);
178
178
  text-decoration: none;
179
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
179
+ -webkit-tap-highlight-color: transparent;
180
180
  border-radius: var(--border-radius);
181
181
  background-color: var(--background-color);
182
182
  cursor: pointer;
@@ -73,7 +73,7 @@
73
73
  vertical-align: top;
74
74
  width: 18px;
75
75
  cursor: pointer;
76
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
76
+ -webkit-tap-highlight-color: transparent;
77
77
  margin: var(--np-checkbox-margin, max(0px, (48px - 18px)/2));
78
78
  }
79
79
  .np-container:has(input:disabled) {
@@ -117,7 +117,7 @@
117
117
  display: inline-flex;
118
118
  align-items: center;
119
119
  height: 2rem;
120
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
120
+ -webkit-tap-highlight-color: transparent;
121
121
  color: var(--np-color-on-surface-variant);
122
122
  fill: currentColor;
123
123
  gap: 0.5rem;
@@ -91,7 +91,7 @@
91
91
  display: inline-flex;
92
92
  align-items: center;
93
93
  height: 2rem;
94
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
94
+ -webkit-tap-highlight-color: transparent;
95
95
  color: var(--np-color-on-surface-variant);
96
96
  fill: currentColor;
97
97
  gap: 0.5rem;
package/dist/index.d.ts CHANGED
@@ -14,6 +14,7 @@ export * from './radio/index.js';
14
14
  export * from './ripple/index.js';
15
15
  export * from './select/index.js';
16
16
  export * from './snackbar/index.js';
17
+ export * from './switch/index.js';
17
18
  export * from './tabs/index.js';
18
19
  export * from './text-field/index.js';
19
20
  export * from './tooltip/index.js';
package/dist/index.js CHANGED
@@ -14,6 +14,7 @@ export * from './radio/index.js';
14
14
  export * from './ripple/index.js';
15
15
  export * from './select/index.js';
16
16
  export * from './snackbar/index.js';
17
+ export * from './switch/index.js';
17
18
  export * from './tabs/index.js';
18
19
  export * from './text-field/index.js';
19
20
  export * from './tooltip/index.js';
@@ -162,7 +162,7 @@
162
162
  min-height: 3rem;
163
163
  gap: 0.75rem;
164
164
  text-decoration: none;
165
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
165
+ -webkit-tap-highlight-color: transparent;
166
166
  color: var(--np-item-label-text-color, var(--np-color-on-surface));
167
167
  box-sizing: border-box;
168
168
  }
@@ -20,7 +20,9 @@
20
20
  {/if}
21
21
  </div>
22
22
  <div class="np-navigation-drawer-item-label">{label}</div>
23
- <div class="np-navigation-drawer-item-badge">{badgeLabelText}</div>
23
+ {#if badgeLabelText}
24
+ <div class="np-navigation-drawer-item-badge">{badgeLabelText}</div>
25
+ {/if}
24
26
  {/snippet}
25
27
 
26
28
  {#if 'href' in attributes}
@@ -65,7 +67,7 @@
65
67
  position: relative;
66
68
  padding: 0 1rem 0 1rem;
67
69
  border-radius: var(--np-navigation-drawer-item-container-shape, var(--np-shape-corner-full));
68
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
70
+ -webkit-tap-highlight-color: transparent;
69
71
  z-index: 1;
70
72
  }
71
73
 
@@ -44,7 +44,7 @@
44
44
  flex-direction: column;
45
45
  color: var(--np-color-on-surface);
46
46
  text-decoration: none;
47
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
47
+ -webkit-tap-highlight-color: transparent;
48
48
  }
49
49
  .np-navigation-action:focus-visible {
50
50
  outline-style: solid;
@@ -69,7 +69,7 @@
69
69
  margin: max(0px, (40px - var(--np-radio-icon-size, 20px))/2);
70
70
  display: inline-flex;
71
71
  vertical-align: top;
72
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
72
+ -webkit-tap-highlight-color: transparent;
73
73
  border-radius: var(--np-shape-corner-full);
74
74
  place-content: center;
75
75
  place-items: center;
@@ -28,7 +28,7 @@
28
28
  vertical-align: top;
29
29
  width: 24px;
30
30
  padding: 3px;
31
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
31
+ -webkit-tap-highlight-color: transparent;
32
32
  cursor: pointer;
33
33
  box-sizing: border-box;
34
34
  }
@@ -0,0 +1,205 @@
1
+ <script lang="ts">
2
+ import { Ripple } from '../ripple/index.ts'
3
+ import type { SwitchProps } from './types.ts'
4
+
5
+ let {
6
+ selected = $bindable(false),
7
+ disabled = false,
8
+ element = $bindable(),
9
+ inputElement = $bindable(),
10
+ icons,
11
+ onkeyup,
12
+ ...attributes
13
+ }: SwitchProps = $props()
14
+ </script>
15
+
16
+ <div
17
+ bind:this={element}
18
+ class={['np-switch', selected && 'np-selected', disabled && 'np-disabled', attributes.class]}
19
+ >
20
+ <div class="np-track"></div>
21
+ <div class={['np-handle', icons === 'both' && 'both-icons']}>
22
+ {#if icons}
23
+ {#if selected}
24
+ <svg class="np-switch-icon" viewBox="0 0 24 24">
25
+ <path
26
+ d="M20 6L9 17l-5-5"
27
+ fill="none"
28
+ stroke="currentColor"
29
+ stroke-width="2"
30
+ stroke-linecap="round"
31
+ stroke-linejoin="round"
32
+ />
33
+ </svg>
34
+ {:else if icons === 'both'}
35
+ <svg class="np-switch-icon" viewBox="0 0 24 24">
36
+ <path
37
+ fill="currentColor"
38
+ d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"
39
+ />
40
+ </svg>
41
+ {/if}
42
+ {/if}
43
+ </div>
44
+ {#if !disabled}
45
+ <div class="np-state-layer">
46
+ <Ripple forElement={inputElement} />
47
+ </div>
48
+ {/if}
49
+ <input
50
+ {...attributes}
51
+ onkeyup={(e) => {
52
+ if (e.key === 'Enter' && !disabled) {
53
+ e.preventDefault()
54
+ selected = !selected
55
+ }
56
+ onkeyup?.(e)
57
+ }}
58
+ type="checkbox"
59
+ role="switch"
60
+ bind:this={inputElement}
61
+ bind:checked={selected}
62
+ {disabled}
63
+ />
64
+ </div>
65
+
66
+ <style>
67
+ .np-switch {
68
+ position: relative;
69
+ width: 3.25rem;
70
+ height: 2rem;
71
+ padding: 0.25rem;
72
+ cursor: pointer;
73
+ border-radius: var(--np-shape-corner-full);
74
+ -webkit-tap-highlight-color: transparent;
75
+ }
76
+ .np-track {
77
+ position: absolute;
78
+ width: 3.25rem;
79
+ height: 2rem;
80
+ background-color: var(
81
+ --np-comp-switch-unselected-track-color,
82
+ var(--np-color-surface-container-highest)
83
+ );
84
+ border-radius: var(--np-shape-corner-full);
85
+ transition:
86
+ background-color 0.2s,
87
+ outline-color 0.2s;
88
+ outline-width: 0.125rem;
89
+ outline-color: var(--np-comp-switch-unselected-track-outline-color, var(--np-color-outline));
90
+ outline-style: solid;
91
+ outline-offset: -0.125rem;
92
+ }
93
+
94
+ .np-handle {
95
+ position: absolute;
96
+ color: var(--np-color-surface-container-highest);
97
+ width: 1rem;
98
+ height: 1rem;
99
+ margin: 0.5rem;
100
+ transition:
101
+ transform 0.2s,
102
+ background-color 0.2s;
103
+ background-color: var(--np-comp-switch-unselected-handle-color, var(--np-color-outline));
104
+ border-radius: var(--np-comp-switch-handle-shape, var(--np-shape-corner-full));
105
+ }
106
+
107
+ .np-handle.both-icons {
108
+ transform: scale(1.5);
109
+ }
110
+
111
+ .np-state-layer {
112
+ position: relative;
113
+ width: var(--np-comp-switch-state-layer-size, 2.5rem);
114
+ height: var(--np-comp-switch-state-layer-size, 2.5rem);
115
+ margin-block-start: -0.25rem;
116
+ margin-inline-start: -0.25rem;
117
+ transition: transform 0.2s;
118
+ border-radius: var(--np-comp-switch-state-layer-shape, var(--np-shape-corner-full));
119
+ }
120
+
121
+ .np-selected .np-state-layer {
122
+ transform: translateX(1.25rem);
123
+ }
124
+
125
+ .np-switch input {
126
+ border-radius: var(--np-shape-corner-full);
127
+ opacity: 0;
128
+ position: absolute;
129
+ cursor: inherit;
130
+ inset: 0;
131
+ width: 100%;
132
+ height: 100%;
133
+ margin: 0;
134
+ }
135
+
136
+ .np-switch-icon {
137
+ transform: scale(0.6666667);
138
+ }
139
+
140
+ .np-switch:not(.np-disabled):has(input:not(:checked):active) .np-handle {
141
+ transform: scale(1.75);
142
+ }
143
+
144
+ .np-switch:not(.np-disabled):has(input:checked:active) .np-handle {
145
+ transform: translateX(1.25rem) scale(1.75);
146
+ }
147
+
148
+ .np-selected .np-handle {
149
+ transform: translateX(1.25rem) scale(1.5);
150
+ color: var(--np-color-primary);
151
+ background-color: var(--np-comp-switch-selected-handle-color, var(--np-color-on-primary));
152
+ }
153
+
154
+ .np-disabled .np-handle {
155
+ opacity: var(--np-comp-switch-disabled-unselected-handle-opacity, 0.38);
156
+ }
157
+
158
+ .np-selected.np-disabled .np-handle {
159
+ opacity: var(--np-comp-switch-disabled-selected-handle-opacity, 1);
160
+ background-color: var(--np-comp-switch-selected-handle-color, var(--np-color-surface));
161
+ }
162
+
163
+ .np-selected .np-track {
164
+ background-color: var(--np-comp-switch-selected-track-color, var(--np-color-primary));
165
+ outline-color: transparent;
166
+ }
167
+
168
+ .np-disabled .np-track {
169
+ opacity: var(--np-comp-switch-disabled-track-opacity, 0.12);
170
+ background-color: var(
171
+ --np-comp-switch-disabled-unselected-track-color,
172
+ var(--np-color-surface-container-highest)
173
+ );
174
+ }
175
+
176
+ .np-selected.np-disabled .np-track {
177
+ background-color: var(
178
+ --np-comp-switch-disabled-selected-track-color,
179
+ var(--np-color-on-surface)
180
+ );
181
+ }
182
+
183
+ .np-disabled {
184
+ cursor: default;
185
+ }
186
+
187
+ .np-switch:has(input:focus-visible) {
188
+ outline-style: solid;
189
+ outline-color: var(--np-color-secondary);
190
+ outline-width: 3px;
191
+ outline-offset: -2px;
192
+ animation: focusAnimation 0.3s ease forwards;
193
+ }
194
+ @keyframes focusAnimation {
195
+ 0% {
196
+ outline-width: 3px;
197
+ }
198
+ 50% {
199
+ outline-width: 6px;
200
+ }
201
+ 100% {
202
+ outline-width: 3px;
203
+ }
204
+ }
205
+ </style>
@@ -0,0 +1,4 @@
1
+ import type { SwitchProps } from './types.ts';
2
+ declare const Switch: import("svelte").Component<SwitchProps, {}, "element" | "selected" | "inputElement">;
3
+ type Switch = ReturnType<typeof Switch>;
4
+ export default Switch;
@@ -0,0 +1 @@
1
+ export { default as Switch } from './Switch.svelte';
@@ -0,0 +1 @@
1
+ export { default as Switch } from './Switch.svelte';
@@ -0,0 +1,8 @@
1
+ import type { HTMLInputAttributes } from 'svelte/elements';
2
+ export interface SwitchProps extends Omit<HTMLInputAttributes, 'type' | 'role' | 'checked' | 'indeterminate'> {
3
+ selected?: boolean;
4
+ disabled?: boolean;
5
+ icons?: 'selected' | 'both';
6
+ inputElement?: HTMLInputElement;
7
+ element?: HTMLDivElement;
8
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -125,7 +125,7 @@
125
125
  font: inherit;
126
126
  background-color: transparent;
127
127
  border-width: 0;
128
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
128
+ -webkit-tap-highlight-color: transparent;
129
129
  display: flex;
130
130
  align-items: center;
131
131
  justify-content: center;
@@ -776,9 +776,10 @@
776
776
  border-color: var(--np-color-error);
777
777
  }
778
778
 
779
- .error:hover .np-outline,
780
- .error:has(input:focus-visible):hover .np-outline,
781
- .error:has(textarea:focus-visible):hover .np-outline {
779
+ .field:has(input:is(:user-invalid, [aria-invalid='true'])):hover .np-outline,
780
+ .field:has(textarea:is(:user-invalid, [aria-invalid='true'])):hover .np-outline,
781
+ .field:has(input:is(:user-invalid, [aria-invalid='true']):focus-visible):hover .np-outline,
782
+ .field:has(textarea:is(:user-invalid, [aria-invalid='true']):focus-visible):hover .np-outline {
782
783
  border-color: var(--np-color-on-error-container);
783
784
  }
784
785
 
@@ -1,60 +1,59 @@
1
1
  :root {
2
2
  color-scheme: light dark;
3
- --np-color-background: light-dark(#f7fafe, #101417);
4
- --np-color-error: light-dark(#ba1a1a, #ffb4ab);
5
- --np-color-error-container: light-dark(#ffdad6, #93000a);
6
- --np-color-inverse-on-surface: light-dark(#eef1f5, #2d3134);
7
- --np-color-inverse-primary: light-dark(#7dd0ff, #00658b);
8
- --np-color-inverse-surface: light-dark(#2d3134, #e0e3e7);
3
+ --np-color-background: light-dark(#f7fafe, #0b0f12);
4
+ --np-color-error: light-dark(#bb1b1b, #ff7164);
5
+ --np-color-error-container: light-dark(#fe4e44, #ac0c12);
6
+ --np-color-inverse-on-surface: light-dark(#9a9da1, #515559);
7
+ --np-color-inverse-primary: light-dark(#75ceff, #00668c);
8
+ --np-color-inverse-surface: light-dark(#0b0f12, #f7fafe);
9
9
  --np-color-neutral-palette-key-color: light-dark(#73777b, #73777b);
10
10
  --np-color-neutral-variant-palette-key-color: light-dark(#6f787f, #6f787f);
11
- --np-color-on-background: light-dark(#181c1f, #e0e3e7);
12
- --np-color-on-error: light-dark(#ffffff, #690005);
13
- --np-color-on-error-container: light-dark(#93000a, #ffdad6);
14
- --np-color-on-primary: light-dark(#ffffff, #00344a);
15
- --np-color-on-primary-container: light-dark(#004863, #004863);
16
- --np-color-on-primary-fixed: light-dark(#001e2c, #001e2c);
17
- --np-color-on-primary-fixed-variant: light-dark(#004c69, #004c69);
18
- --np-color-on-secondary: light-dark(#ffffff, #133444);
19
- --np-color-on-secondary-container: light-dark(#4a687b, #9dbdd1);
20
- --np-color-on-secondary-fixed: light-dark(#001e2c, #001e2c);
21
- --np-color-on-secondary-fixed-variant: light-dark(#2c4a5c, #2c4a5c);
22
- --np-color-on-surface: light-dark(#181c1f, #e0e3e7);
23
- --np-color-on-surface-variant: light-dark(#3f484e, #bec8cf);
24
- --np-color-on-tertiary: light-dark(#ffffff, #491a5f);
25
- --np-color-on-tertiary-container: light-dark(#5d2e73, #5d2e73);
26
- --np-color-on-tertiary-fixed: light-dark(#310048, #310048);
27
- --np-color-on-tertiary-fixed-variant: light-dark(#623377, #623377);
28
- --np-color-outline: light-dark(#6f787f, #899299);
29
- --np-color-outline-variant: light-dark(#bec8cf, #3f484e);
30
- --np-color-primary: light-dark(#00658b, #8ad4ff);
31
- --np-color-primary-container: light-dark(#5fb9e9, #5fb9e9);
32
- --np-color-primary-fixed: light-dark(#c4e7ff, #c4e7ff);
33
- --np-color-primary-fixed-dim: light-dark(#7dd0ff, #7dd0ff);
11
+ --np-color-on-background: light-dark(#2f3336, #e3e6ea);
12
+ --np-color-on-error: light-dark(#fff7f6, #4a0002);
13
+ --np-color-on-error-container: light-dark(#570003, #ffb8b0);
14
+ --np-color-on-primary: light-dark(#f4f9ff, #00435d);
15
+ --np-color-on-primary-container: light-dark(#00435d, #002637);
16
+ --np-color-on-primary-fixed: light-dark(#002e41, #002e41);
17
+ --np-color-on-primary-fixed-variant: light-dark(#004d6a, #004d6a);
18
+ --np-color-on-secondary: light-dark(#f4f9ff, #254455);
19
+ --np-color-on-secondary-container: light-dark(#375567, #a4c4d9);
20
+ --np-color-on-secondary-fixed: light-dark(#244354, #244354);
21
+ --np-color-on-secondary-fixed-variant: light-dark(#415f71, #415f71);
22
+ --np-color-on-surface: light-dark(#2f3336, #e3e6ea);
23
+ --np-color-on-surface-variant: light-dark(#5b5f63, #a8abaf);
24
+ --np-color-on-tertiary: light-dark(#fff7fc, #623378);
25
+ --np-color-on-tertiary-container: light-dark(#582a6e, #582a6e);
26
+ --np-color-on-tertiary-fixed: light-dark(#421358, #421358);
27
+ --np-color-on-tertiary-fixed-variant: light-dark(#623378, #623378);
28
+ --np-color-outline: light-dark(#777b7f, #727679);
29
+ --np-color-outline-variant: light-dark(#afb2b6, #44484c);
30
+ --np-color-primary: light-dark(#00668c, #75ceff);
31
+ --np-color-primary-container: light-dark(#75ceff, #4eaad9);
32
+ --np-color-primary-fixed: light-dark(#75ceff, #75ceff);
33
+ --np-color-primary-fixed-dim: light-dark(#66c0f0, #66c0f0);
34
34
  --np-color-primary-palette-key-color: light-dark(#0980ad, #0980ad);
35
35
  --np-color-scrim: light-dark(#000000, #000000);
36
- --np-color-secondary: light-dark(#446274, #abcbe0);
37
- --np-color-secondary-container: light-dark(#c7e7fd, #2e4d5e);
36
+ --np-color-secondary: light-dark(#456375, #abcbe0);
37
+ --np-color-secondary-container: light-dark(#c7e7fd, #203f50);
38
38
  --np-color-secondary-fixed: light-dark(#c7e7fd, #c7e7fd);
39
- --np-color-secondary-fixed-dim: light-dark(#abcbe0, #abcbe0);
39
+ --np-color-secondary-fixed-dim: light-dark(#b9d9ee, #b9d9ee);
40
40
  --np-color-secondary-palette-key-color: light-dark(#5d7b8e, #5d7b8e);
41
41
  --np-color-shadow: light-dark(#000000, #000000);
42
- --np-color-surface: light-dark(#f7fafe, #101417);
43
- --np-color-surface-bright: light-dark(#f7fafe, #363a3d);
44
- --np-color-surface-container: light-dark(#ebeef2, #1c2023);
45
- --np-color-surface-container-high: light-dark(#e5e8ec, #262a2e);
46
- --np-color-surface-container-highest: light-dark(#e0e3e7, #313538);
47
- --np-color-surface-container-low: light-dark(#f1f4f8, #181c1f);
48
- --np-color-surface-container-lowest: light-dark(#ffffff, #0b0f12);
49
- --np-color-surface-dim: light-dark(#d7dade, #101417);
50
- --np-color-surface-tint: light-dark(#00658b, #7dd0ff);
51
- --np-color-surface-variant: light-dark(#dae4ec, #3f484e);
52
- --np-color-tertiary: light-dark(#7b4b91, #ecb8ff);
53
- --np-color-tertiary-container: light-dark(#d29be8, #d29be8);
54
- --np-color-tertiary-fixed: light-dark(#f7d8ff, #f7d8ff);
55
- --np-color-tertiary-fixed-dim: light-dark(#eab2ff, #eab2ff);
42
+ --np-color-surface: light-dark(#f7fafe, #0b0f12);
43
+ --np-color-surface-bright: light-dark(#f7fafe, #282d30);
44
+ --np-color-surface-container: light-dark(#ebeef2, #161a1d);
45
+ --np-color-surface-container-high: light-dark(#e5e8ec, #1c2023);
46
+ --np-color-surface-container-highest: light-dark(#e0e3e7, #222629);
47
+ --np-color-surface-container-low: light-dark(#f1f4f8, #101417);
48
+ --np-color-surface-container-lowest: light-dark(#ffffff, #000000);
49
+ --np-color-surface-dim: light-dark(#d7dade, #0b0f12);
50
+ --np-color-surface-tint: light-dark(#00668c, #75ceff);
51
+ --np-color-surface-variant: light-dark(#e0e3e7, #222629);
52
+ --np-color-tertiary: light-dark(#7c4b92, #efc2ff);
53
+ --np-color-tertiary-container: light-dark(#e8affe, #e8affe);
54
+ --np-color-tertiary-fixed: light-dark(#e8affe, #e8affe);
55
+ --np-color-tertiary-fixed-dim: light-dark(#d9a2ef, #d9a2ef);
56
56
  --np-color-tertiary-palette-key-color: light-dark(#d29be8, #d29be8);
57
-
58
57
  --np-elevation-1:
59
58
  rgba(0, 0, 0, 0.2) 0px 3px 1px -2px, rgba(0, 0, 0, 0.14) 0px 2px 2px 0px,
60
59
  rgba(0, 0, 0, 0.12) 0px 1px 5px 0px;
package/dist/types.d.ts CHANGED
@@ -1,19 +1,20 @@
1
- export * from './autocomplete/types.js';
1
+ export * from './autocomplete/types.ts';
2
2
  export * from './button/types.ts';
3
3
  export * from './card/types.ts';
4
4
  export * from './checkbox/types.ts';
5
5
  export * from './chip/types.ts';
6
- export * from './dialog/types.js';
7
- export * from './divider/types.js';
6
+ export * from './dialog/types.ts';
7
+ export * from './divider/types.ts';
8
8
  export * from './list/types.ts';
9
9
  export * from './menu/types.ts';
10
10
  export * from './navigation-drawer/types.ts';
11
11
  export * from './navigation-rail/types.ts';
12
- export * from './progress/types.js';
12
+ export * from './progress/types.ts';
13
13
  export * from './radio/types.ts';
14
14
  export * from './ripple/types.ts';
15
- export * from './select/types.js';
15
+ export * from './select/types.ts';
16
16
  export * from './snackbar/types.ts';
17
+ export * from './switch/types.ts';
17
18
  export * from './text-field/types.ts';
18
19
  export * from './tooltip/types.ts';
19
20
  export * from './tabs/types.ts';
package/dist/types.js CHANGED
@@ -1,19 +1,20 @@
1
- export * from './autocomplete/types.js';
1
+ export * from './autocomplete/types.ts';
2
2
  export * from './button/types.ts';
3
3
  export * from './card/types.ts';
4
4
  export * from './checkbox/types.ts';
5
5
  export * from './chip/types.ts';
6
- export * from './dialog/types.js';
7
- export * from './divider/types.js';
6
+ export * from './dialog/types.ts';
7
+ export * from './divider/types.ts';
8
8
  export * from './list/types.ts';
9
9
  export * from './menu/types.ts';
10
10
  export * from './navigation-drawer/types.ts';
11
11
  export * from './navigation-rail/types.ts';
12
- export * from './progress/types.js';
12
+ export * from './progress/types.ts';
13
13
  export * from './radio/types.ts';
14
14
  export * from './ripple/types.ts';
15
- export * from './select/types.js';
15
+ export * from './select/types.ts';
16
16
  export * from './snackbar/types.ts';
17
+ export * from './switch/types.ts';
17
18
  export * from './text-field/types.ts';
18
19
  export * from './tooltip/types.ts';
19
20
  export * from './tabs/types.ts';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "noph-ui",
3
- "version": "0.30.12",
3
+ "version": "0.31.0",
4
4
  "license": "MIT",
5
5
  "homepage": "https://noph.dev",
6
6
  "repository": {
@@ -69,7 +69,7 @@
69
69
  },
70
70
  "devDependencies": {
71
71
  "@eslint/js": "^9.39.2",
72
- "@material/material-color-utilities": "^0.3.0",
72
+ "@materialx/material-color-utilities": "^0.4.8",
73
73
  "@playwright/test": "^1.57.0",
74
74
  "@sveltejs/adapter-auto": "^7.0.0",
75
75
  "@sveltejs/kit": "^2.49.2",
@@ -81,14 +81,14 @@
81
81
  "eslint-plugin-svelte": "^3.13.1",
82
82
  "globals": "^16.5.0",
83
83
  "prettier": "^3.7.4",
84
- "prettier-plugin-svelte": "^3.4.0",
84
+ "prettier-plugin-svelte": "^3.4.1",
85
85
  "publint": "^0.3.16",
86
- "svelte": "^5.46.0",
87
- "svelte-check": "^4.3.4",
86
+ "svelte": "^5.46.1",
87
+ "svelte-check": "^4.3.5",
88
88
  "typescript": "^5.9.3",
89
- "typescript-eslint": "^8.49.0",
90
- "vite": "^7.2.7",
91
- "vitest": "^4.0.15"
89
+ "typescript-eslint": "^8.50.1",
90
+ "vite": "^7.3.0",
91
+ "vitest": "^4.0.16"
92
92
  },
93
93
  "svelte": "./dist/index.js",
94
94
  "types": "./dist/index.d.ts",