@ship-ui/core 0.17.23 → 0.18.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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ship-ui/core",
3
3
  "license": "MIT",
4
- "version": "0.17.23",
4
+ "version": "0.18.0",
5
5
  "peerDependencies": {
6
6
  "@angular/common": ">=20",
7
7
  "@angular/core": ">=20",
@@ -38,6 +38,10 @@ $shipButtonGroup: true !default;
38
38
  border-radius: p2r(6);
39
39
  border: 0;
40
40
 
41
+ &:focus-visible {
42
+ outline-offset: -2px;
43
+ }
44
+
41
45
  @supports not (anchor-name: --anchor) {
42
46
  --btng-item-bg: var(--base-3);
43
47
  }
@@ -86,6 +90,11 @@ $shipButtonGroup: true !default;
86
90
  transform 125ms linear;
87
91
  transform: scale(1);
88
92
 
93
+ &:focus-visible {
94
+ outline: 2px solid var(--primary-8);
95
+ outline-offset: -4px;
96
+ }
97
+
89
98
  &:active {
90
99
  transform: scale(0.96);
91
100
  }
@@ -18,20 +18,34 @@ $shipCheckbox: true !default;
18
18
  position: relative;
19
19
  border: 0;
20
20
 
21
- .label {
22
- &:empty {
23
- display: none;
21
+ &:focus-visible > .box,
22
+ &:has(input:focus-visible) > .box {
23
+ outline: 2px solid var(--primary-8);
24
+ outline-offset: 2px;
25
+ }
26
+
27
+ > input.internal-input,
28
+ .label > input {
29
+ appearance: none;
30
+ position: absolute;
31
+ inset: 0;
32
+ cursor: pointer;
33
+ z-index: 0;
34
+ margin: 0;
35
+
36
+ &:focus,
37
+ &:focus-visible {
38
+ outline: none;
24
39
  }
40
+ }
25
41
 
26
- > input {
27
- appearance: none;
28
- position: absolute;
29
- inset: 0;
30
- cursor: pointer;
42
+ &:has(.label > input) > input.internal-input {
43
+ display: none;
44
+ }
31
45
 
32
- &:focus {
33
- outline: none;
34
- }
46
+ .label {
47
+ &:empty {
48
+ display: none;
35
49
  }
36
50
  }
37
51
 
@@ -66,18 +80,9 @@ $shipCheckbox: true !default;
66
80
 
67
81
  &.raised,
68
82
  &.flat {
69
- &:has(input) {
70
- &:not(:has(input:checked)) .box {
71
- background: transparent;
72
- border: 1px solid var(--box-bc);
73
- }
74
- }
75
-
76
- &:not(:has(input)) {
77
- .box:not(.active) {
78
- background: transparent;
79
- border: 1px solid var(--box-bc);
80
- }
83
+ &:not(:has(input:checked)):not(.active) .box {
84
+ background: transparent;
85
+ border: 1px solid var(--box-bc);
81
86
  }
82
87
  }
83
88
 
@@ -185,6 +185,12 @@ $shipFormFieldShadow: false !default;
185
185
  min-width: var(--ff-mw);
186
186
  width: 100%;
187
187
 
188
+ &:has(textarea:focus-visible),
189
+ &:has(input:focus-visible) {
190
+ outline: 2px solid var(--primary-8);
191
+ outline-offset: 2px;
192
+ }
193
+
188
194
  sh-popover,
189
195
  .input {
190
196
  flex: 1 0;
@@ -80,6 +80,11 @@ $shipList: true !default;
80
80
  outline: none;
81
81
  }
82
82
 
83
+ &:focus-visible {
84
+ outline: 2px solid var(--primary-8);
85
+ outline-offset: 2px;
86
+ }
87
+
83
88
  [suffix] {
84
89
  margin-left: auto;
85
90
  color: var(--base-8);
@@ -3,6 +3,7 @@
3
3
  $shipRadio: true !default;
4
4
 
5
5
  @if $shipRadio == true {
6
+ .sh-radio,
6
7
  sh-radio {
7
8
  --radiod-c: var(--base-8);
8
9
  --radiod-o: 0;
@@ -15,17 +16,28 @@ $shipRadio: true !default;
15
16
  user-select: none;
16
17
  position: relative;
17
18
 
19
+ &:focus-visible > .radio,
20
+ &:has(input:focus-visible) > .radio {
21
+ outline: 2px solid var(--primary-8);
22
+ outline-offset: 2px;
23
+ }
24
+
18
25
  > input {
19
26
  appearance: none;
20
27
  position: absolute;
21
28
  inset: 0;
22
29
  cursor: pointer;
23
30
 
24
- &:focus {
31
+ &:focus,
32
+ &:focus-visible {
25
33
  outline: none;
26
34
  }
27
35
  }
28
36
 
37
+ &:has(> input:not(.internal-input)) > input.internal-input {
38
+ display: none;
39
+ }
40
+
29
41
  &:has(input[disabled]),
30
42
  &[disabled]:not([disabled='false']) {
31
43
  opacity: 0.5;
@@ -91,18 +103,9 @@ $shipRadio: true !default;
91
103
 
92
104
  &.raised,
93
105
  &.flat {
94
- &:has(input) {
95
- &:not(:has(input:checked)) .radio {
96
- background: transparent;
97
- border: 1px solid var(--radio-bc);
98
- }
99
- }
100
-
101
- &:not(:has(input)) {
102
- .radio:not(.active) {
103
- background: transparent;
104
- border: 1px solid var(--radio-bc);
105
- }
106
+ &:not(:has(input:checked)):not(.active) .radio {
107
+ background: transparent;
108
+ border: 1px solid var(--radio-bc);
106
109
  }
107
110
  }
108
111
  }
@@ -211,6 +211,11 @@ $shipSheet: true !default;
211
211
  }
212
212
  }
213
213
 
214
+ &:focus-visible {
215
+ outline: 2px solid var(--primary-8);
216
+ outline-offset: 2px;
217
+ }
218
+
214
219
  // &.experimental-border {
215
220
  // --sheet-bc: transparent;
216
221
 
@@ -58,7 +58,9 @@ $shipStepper: true !default;
58
58
  }
59
59
 
60
60
  button,
61
- [step] {
61
+ [routerLinkActive],
62
+ [step],
63
+ [value] {
62
64
  flex: 2 0;
63
65
  display: flex;
64
66
  flex-direction: column;
@@ -69,6 +71,13 @@ $shipStepper: true !default;
69
71
  color: var(--base-8);
70
72
  cursor: pointer;
71
73
  user-select: none;
74
+ outline: none;
75
+
76
+ &:focus-visible .sh-radio {
77
+ outline: 2px solid var(--primary-8);
78
+ outline-offset: 2px;
79
+ border-radius: 50%;
80
+ }
72
81
 
73
82
  &:first-child {
74
83
  align-items: flex-start;
@@ -81,13 +90,15 @@ $shipStepper: true !default;
81
90
  text-align: end;
82
91
  }
83
92
 
84
- &:not(.active) sh-radio {
93
+ &:not(.active) .sh-radio {
85
94
  z-index: 10;
86
95
  }
87
96
 
88
97
  &:has(~ button.active),
89
- &:has(~ [step].active) {
90
- sh-radio {
98
+ &:has(~ [step].active),
99
+ &:has(~ [routerLinkActive].active),
100
+ &:has(~ [value].active) {
101
+ .sh-radio {
91
102
  --radiod-o: 1;
92
103
 
93
104
  .radio {
@@ -97,7 +108,7 @@ $shipStepper: true !default;
97
108
  }
98
109
  }
99
110
 
100
- sh-radio {
111
+ .sh-radio {
101
112
  .radio {
102
113
  --radiod-c: var(--step-radio-cbg);
103
114
 
@@ -110,7 +121,7 @@ $shipStepper: true !default;
110
121
  color: var(--step-active-c);
111
122
  outline: none;
112
123
 
113
- sh-radio {
124
+ .sh-radio {
114
125
  z-index: 0;
115
126
  --radiod-o: 1;
116
127
 
@@ -18,7 +18,8 @@ $shipTabs: true !default;
18
18
  position: relative;
19
19
 
20
20
  button,
21
- [tab] {
21
+ [tab],
22
+ [value] {
22
23
  display: flex;
23
24
  align-items: center;
24
25
  gap: p2r(8);
@@ -35,12 +36,14 @@ $shipTabs: true !default;
35
36
  transition: transform 125ms linear;
36
37
  transform: scale(1);
37
38
 
38
- &:active {
39
- transform: scale(0.98);
39
+ &:focus-visible {
40
+ outline: 2px solid var(--primary-8);
41
+ outline-offset: -2px;
42
+ border-radius: var(--shape-1);
40
43
  }
41
44
 
42
- &:focus {
43
- outline: none;
45
+ &:active {
46
+ transform: scale(0.98);
44
47
  }
45
48
 
46
49
  &:hover {
@@ -16,6 +16,12 @@ $shipToggle: true !default;
16
16
  user-select: none;
17
17
  position: relative;
18
18
 
19
+ &:focus-visible > .box,
20
+ &:has(input:focus-visible) > .box {
21
+ outline: 2px solid var(--primary-8);
22
+ outline-offset: 2px;
23
+ }
24
+
19
25
  label {
20
26
  display: flex;
21
27
  align-items: center;
@@ -27,6 +33,7 @@ $shipToggle: true !default;
27
33
  .box {
28
34
  display: block;
29
35
  width: p2r(34);
36
+ min-width: p2r(34);
30
37
  height: p2r(20);
31
38
  cursor: pointer;
32
39
  position: relative;
@@ -42,6 +49,16 @@ $shipToggle: true !default;
42
49
  inset: 0;
43
50
  cursor: pointer;
44
51
  z-index: 0;
52
+ margin: 0;
53
+
54
+ &:focus,
55
+ &:focus-visible {
56
+ outline: none;
57
+ }
58
+ }
59
+
60
+ &:has(> input:not(.internal-input)) > input.internal-input {
61
+ display: none;
45
62
  }
46
63
 
47
64
  &:has(input[disabled]),
@@ -1,5 +1,5 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { ElementRef, QueryList, OutputEmitterRef, InputSignal, ComponentRef, OutputRefSubscription, Type, AfterViewInit, OnDestroy, AfterContentInit, TemplateRef, WritableSignal, InjectionToken } from '@angular/core';
2
+ import { ElementRef, QueryList, TemplateRef, Type, OutputEmitterRef, InputSignal, ComponentRef, EmbeddedViewRef, OutputRefSubscription, AfterViewInit, OnDestroy, AfterContentInit, WritableSignal, InjectionToken } from '@angular/core';
3
3
  import { NgModel } from '@angular/forms';
4
4
 
5
5
  type ShipColor = 'primary' | 'accent' | 'warn' | 'error' | 'success' | (string & {});
@@ -110,12 +110,16 @@ declare class ShipDialog {
110
110
  }
111
111
 
112
112
  type Exact<T, U> = U extends T ? (keyof U extends keyof T ? U : never) : never;
113
- type ComponentDataType<T> = T extends {
113
+ type ComponentDataType<T> = T extends TemplateRef<infer C> ? C extends {
114
+ $implicit: infer K;
115
+ } ? K : void : T extends Type<infer I> ? I extends {
114
116
  data: InputSignal<infer K>;
115
- } ? K : void;
116
- type ComponentClosedType<T> = T extends {
117
+ } ? K : void : void;
118
+ type ComponentClosedType<T> = T extends TemplateRef<infer C> ? C extends {
119
+ close: (res?: infer U) => void;
120
+ } ? U : undefined : T extends Type<infer I> ? I extends {
117
121
  closed: OutputEmitterRef<infer U>;
118
- } ? U : undefined;
122
+ } ? U : undefined : undefined;
119
123
  interface ShipDialogServiceOptions<TData = any, TResult = undefined> extends ShipDialogOptions {
120
124
  data?: TData extends void ? void : TData & Exact<TData, TData>;
121
125
  closed?: (res: TResult) => void;
@@ -125,20 +129,19 @@ type ShipDialogInstance<T> = {
125
129
  close: (res?: ComponentClosedType<T> | undefined) => void;
126
130
  closed: OutputEmitterRef<ComponentClosedType<T> | undefined>;
127
131
  };
132
+ type ShipDialogTemplateInstance<T> = {
133
+ component: undefined;
134
+ close: (res?: ComponentClosedType<T> | undefined) => void;
135
+ closed: OutputEmitterRef<ComponentClosedType<T> | undefined>;
136
+ };
128
137
  declare class ShipDialogService {
129
138
  #private;
130
139
  compRef: ComponentRef<ShipDialog> | null;
131
140
  insertedCompRef: ComponentRef<unknown> | null;
141
+ insertedTemplateRef: EmbeddedViewRef<unknown> | null;
132
142
  closedFieldSub: OutputRefSubscription | null;
133
143
  compClosedSub: OutputRefSubscription | null;
134
- open<T extends {
135
- data?: InputSignal<any>;
136
- closed?: OutputEmitterRef<any>;
137
- } | {
138
- data?: InputSignal<any>;
139
- } | {
140
- closed?: OutputEmitterRef<any>;
141
- } | {}, K = ComponentDataType<T>, U = ComponentClosedType<T>, _Options extends ShipDialogServiceOptions<K, U | undefined> = ShipDialogServiceOptions<K, U | undefined>>(component: Type<T>, options?: _Options): ShipDialogInstance<T>;
144
+ open<T extends TemplateRef<any> | Type<any>, K = ComponentDataType<T>, U = ComponentClosedType<T>, _Options extends ShipDialogServiceOptions<K, U | undefined> = ShipDialogServiceOptions<K, U | undefined>>(componentOrTemplate: T, options?: _Options): T extends TemplateRef<any> ? ShipDialogTemplateInstance<T> : T extends Type<infer I> ? ShipDialogInstance<I> : never;
142
145
  ngOnDestroy(): void;
143
146
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipDialogService, never>;
144
147
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<ShipDialogService>;
@@ -242,11 +245,25 @@ declare class ShipBlueprint implements AfterViewInit, OnDestroy {
242
245
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipBlueprint, "sh-blueprint", never, { "forceUnique": { "alias": "forceUnique"; "required": false; "isSignal": true; }; "autoLayout": { "alias": "autoLayout"; "required": false; "isSignal": true; }; "gridSize": { "alias": "gridSize"; "required": false; "isSignal": true; }; "snapToGrid": { "alias": "snapToGrid"; "required": false; "isSignal": true; }; "gridColor": { "alias": "gridColor"; "required": false; "isSignal": true; }; "nodes": { "alias": "nodes"; "required": false; "isSignal": true; }; }, { "nodes": "nodesChange"; }, never, ["*"], true, never>;
243
246
  }
244
247
 
245
- declare class ShipButtonGroup {
248
+ declare abstract class ShipSelectionGroup<T = any> {
249
+ protected readonly itemSelector: string;
250
+ protected readonly activeClass: string;
251
+ protected readonly hostElement: any;
252
+ protected items: _angular_core.Signal<HTMLElement[]>;
253
+ readonly value: _angular_core.ModelSignal<T | null>;
254
+ constructor(itemSelector: string, activeClass: string);
255
+ protected onClick(target: EventTarget | null): void;
256
+ protected onKeyDown(event: KeyboardEvent): void;
257
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipSelectionGroup<any>, never>;
258
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ShipSelectionGroup<any>, never, never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
259
+ }
260
+
261
+ declare class ShipButtonGroup extends ShipSelectionGroup<string> {
246
262
  id: string;
247
263
  color: _angular_core.InputSignal<ShipColor | null>;
248
264
  variant: _angular_core.InputSignal<ShipButtonGroupVariant | null>;
249
265
  size: _angular_core.InputSignal<ShipSize | null>;
266
+ constructor();
250
267
  hostClasses: _angular_core.Signal<string>;
251
268
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipButtonGroup, never>;
252
269
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipButtonGroup, "sh-button-group", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
@@ -271,13 +288,21 @@ declare class ShipCard {
271
288
  }
272
289
 
273
290
  declare class ShipCheckbox {
291
+ private readonly _elementRef;
292
+ internalInput: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
293
+ projectedInputs: _angular_core.Signal<HTMLInputElement[]>;
294
+ checked: _angular_core.ModelSignal<boolean>;
274
295
  currentClassList: _angular_core.Signal<string>;
275
296
  color: _angular_core.InputSignal<ShipColor | null>;
276
297
  variant: _angular_core.InputSignal<ShipSheetVariant | null>;
277
298
  readonly: _angular_core.InputSignal<boolean>;
299
+ disabled: _angular_core.InputSignal<boolean>;
300
+ noInternalInput: _angular_core.InputSignal<boolean>;
301
+ protected onInternalInputChange(event: Event): void;
278
302
  hostClasses: _angular_core.Signal<string>;
303
+ protected onEnter(event: Event): void;
279
304
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipCheckbox, never>;
280
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipCheckbox, "sh-checkbox", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
305
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipCheckbox, "sh-checkbox", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "noInternalInput": { "alias": "noInternalInput"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; }, never, ["*"], true, never>;
281
306
  }
282
307
 
283
308
  declare class ShipChip {
@@ -572,13 +597,21 @@ declare class ShipProgressBar {
572
597
  }
573
598
 
574
599
  declare class ShipRadio {
600
+ private readonly _elementRef;
601
+ internalInput: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
602
+ projectedInputs: _angular_core.Signal<HTMLInputElement[]>;
603
+ checked: _angular_core.ModelSignal<boolean>;
575
604
  currentClassList: _angular_core.Signal<string>;
576
605
  color: _angular_core.InputSignal<ShipColor | null>;
577
606
  variant: _angular_core.InputSignal<ShipSheetVariant | null>;
578
607
  readonly: _angular_core.InputSignal<boolean>;
608
+ disabled: _angular_core.InputSignal<boolean>;
609
+ noInternalInput: _angular_core.InputSignal<boolean>;
610
+ protected onInternalInputChange(event: Event): void;
579
611
  hostClasses: _angular_core.Signal<string>;
612
+ protected onEnter(event: Event): void;
580
613
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipRadio, never>;
581
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipRadio, "sh-radio", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
614
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipRadio, "sh-radio", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "noInternalInput": { "alias": "noInternalInput"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; }, never, ["*"], true, never>;
582
615
  }
583
616
 
584
617
  declare class ShipRangeSlider {
@@ -748,8 +781,9 @@ declare class ShipSpinner {
748
781
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipSpinner, "sh-spinner", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
749
782
  }
750
783
 
751
- declare class ShipStepper {
784
+ declare class ShipStepper extends ShipSelectionGroup<string> {
752
785
  color: _angular_core.InputSignal<ShipColor | null>;
786
+ constructor();
753
787
  hostClasses: _angular_core.Signal<string>;
754
788
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipStepper, never>;
755
789
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipStepper, "sh-stepper", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
@@ -819,10 +853,11 @@ declare class ShipTable {
819
853
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipTable, "sh-table", never, { "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "sortByColumn": { "alias": "sortByColumn"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, { "dataChange": "dataChange"; "sortByColumn": "sortByColumnChange"; }, never, ["[actionbar]", "th", "[thead]", "*", "[table-no-rows]"], true, never>;
820
854
  }
821
855
 
822
- declare class ShipTabs {
856
+ declare class ShipTabs extends ShipSelectionGroup<string> {
823
857
  id: string;
824
858
  color: _angular_core.InputSignal<ShipColor | null>;
825
859
  variant: _angular_core.InputSignal<ShipSheetVariant | null>;
860
+ constructor();
826
861
  hostClasses: _angular_core.Signal<string>;
827
862
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipTabs, never>;
828
863
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipTabs, "sh-tabs", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
@@ -852,12 +887,20 @@ declare class ShipToggleCard {
852
887
  }
853
888
 
854
889
  declare class ShipToggle {
890
+ private readonly _elementRef;
891
+ internalInput: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
892
+ projectedInputs: _angular_core.Signal<HTMLInputElement[]>;
893
+ checked: _angular_core.ModelSignal<boolean>;
855
894
  color: _angular_core.InputSignal<ShipColor | null>;
856
895
  variant: _angular_core.InputSignal<ShipSheetVariant | null>;
857
896
  readonly: _angular_core.InputSignal<boolean>;
897
+ disabled: _angular_core.InputSignal<boolean>;
898
+ noInternalInput: _angular_core.InputSignal<boolean>;
899
+ protected onInternalInputChange(event: Event): void;
858
900
  hostClasses: _angular_core.Signal<string>;
901
+ protected onEnter(event: Event): void;
859
902
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipToggle, never>;
860
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipToggle, "sh-toggle", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
903
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipToggle, "sh-toggle", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "noInternalInput": { "alias": "noInternalInput"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; }, never, ["*"], true, never>;
861
904
  }
862
905
 
863
906
  declare class ShipVirtualScroll {
@@ -984,4 +1027,4 @@ interface ShipConfig {
984
1027
  }
985
1028
 
986
1029
  export { GridSortable, SHIP_CONFIG, ShipAlert, ShipAlertContainer, ShipAlertModule, ShipAlertService, ShipBlueprint, ShipButton, ShipButtonGroup, ShipCard, ShipCheckbox, ShipChip, ShipColorPicker, ShipDatepicker, ShipDatepickerInput, ShipDaterangeInput, ShipDialog, ShipDialogService, ShipDivider, ShipEventCard, ShipFileDragDrop, ShipFileUpload, ShipFormField, ShipFormFieldExperimental, ShipIcon, ShipInputMask, ShipList, ShipMenu, ShipPopover, ShipPreventWheel, ShipProgressBar, ShipRadio, ShipRangeSlider, ShipResize, ShipSelect, ShipSidenav, ShipSort, ShipSortable, ShipSpinner, ShipStepper, ShipStickyColumns, ShipTable, ShipTabs, ShipThemeToggle, ShipToggle, ShipToggleCard, ShipTooltip, ShipTooltipWrapper, ShipVirtualScroll, TEST_NODES, moveIndex, watchHostClass };
987
- export type { AfterDropResponse, BlueprintNode, ComponentClosedType, ComponentDataType, Coordinates, Exact, ShipAlertItem, ShipAlertItemInternal, ShipAlertType, ShipButtonGroupVariant, ShipButtonSize, ShipCardVariant, ShipChipConfig, ShipColor, ShipComponentConfig, ShipConfig, ShipDialogInstance, ShipDialogOptions, ShipDialogServiceOptions, ShipIconSize, ShipPopoverOptions, ShipProgressBarMode, ShipSheetVariant, ShipSidenavType, ShipSize, ShipTableVariant, ShipTypeVariant, ShipVariant };
1030
+ export type { AfterDropResponse, BlueprintNode, ComponentClosedType, ComponentDataType, Coordinates, Exact, ShipAlertItem, ShipAlertItemInternal, ShipAlertType, ShipButtonGroupVariant, ShipButtonSize, ShipCardVariant, ShipChipConfig, ShipColor, ShipComponentConfig, ShipConfig, ShipDialogInstance, ShipDialogOptions, ShipDialogServiceOptions, ShipDialogTemplateInstance, ShipIconSize, ShipPopoverOptions, ShipProgressBarMode, ShipSheetVariant, ShipSidenavType, ShipSize, ShipTableVariant, ShipTypeVariant, ShipVariant };