@ship-ui/core 0.19.5 → 0.22.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 (153) hide show
  1. package/README.md +3 -0
  2. package/assets/mcp/components.json +66 -4243
  3. package/bin/mcp/index.js +6027 -273
  4. package/bin/ship-fg-scanner +0 -0
  5. package/bin/ship-fg.mjs +14 -12
  6. package/bin/src/subset.ts +3 -1
  7. package/fesm2022/ship-ui-core-sh-form-field-experimental.mjs +42 -0
  8. package/fesm2022/ship-ui-core-sh-form-field-experimental.mjs.map +1 -0
  9. package/fesm2022/ship-ui-core-ship-accordion.mjs +127 -0
  10. package/fesm2022/ship-ui-core-ship-accordion.mjs.map +1 -0
  11. package/fesm2022/ship-ui-core-ship-alert.mjs +305 -0
  12. package/fesm2022/ship-ui-core-ship-alert.mjs.map +1 -0
  13. package/fesm2022/ship-ui-core-ship-blueprint.mjs +1156 -0
  14. package/fesm2022/ship-ui-core-ship-blueprint.mjs.map +1 -0
  15. package/fesm2022/ship-ui-core-ship-button-group.mjs +41 -0
  16. package/fesm2022/ship-ui-core-ship-button-group.mjs.map +1 -0
  17. package/fesm2022/ship-ui-core-ship-button.mjs +38 -0
  18. package/fesm2022/ship-ui-core-ship-button.mjs.map +1 -0
  19. package/fesm2022/ship-ui-core-ship-card.mjs +35 -0
  20. package/fesm2022/ship-ui-core-ship-card.mjs.map +1 -0
  21. package/fesm2022/ship-ui-core-ship-checkbox.mjs +113 -0
  22. package/fesm2022/ship-ui-core-ship-checkbox.mjs.map +1 -0
  23. package/fesm2022/ship-ui-core-ship-chip.mjs +44 -0
  24. package/fesm2022/ship-ui-core-ship-chip.mjs.map +1 -0
  25. package/fesm2022/ship-ui-core-ship-color-picker.mjs +947 -0
  26. package/fesm2022/ship-ui-core-ship-color-picker.mjs.map +1 -0
  27. package/fesm2022/ship-ui-core-ship-datepicker.mjs +951 -0
  28. package/fesm2022/ship-ui-core-ship-datepicker.mjs.map +1 -0
  29. package/fesm2022/ship-ui-core-ship-dialog.mjs +263 -0
  30. package/fesm2022/ship-ui-core-ship-dialog.mjs.map +1 -0
  31. package/fesm2022/ship-ui-core-ship-divider.mjs +22 -0
  32. package/fesm2022/ship-ui-core-ship-divider.mjs.map +1 -0
  33. package/fesm2022/ship-ui-core-ship-event-card.mjs +50 -0
  34. package/fesm2022/ship-ui-core-ship-event-card.mjs.map +1 -0
  35. package/fesm2022/ship-ui-core-ship-file-upload.mjs +112 -0
  36. package/fesm2022/ship-ui-core-ship-file-upload.mjs.map +1 -0
  37. package/fesm2022/ship-ui-core-ship-form-field.mjs +310 -0
  38. package/fesm2022/ship-ui-core-ship-form-field.mjs.map +1 -0
  39. package/fesm2022/ship-ui-core-ship-icon.mjs +81 -0
  40. package/fesm2022/ship-ui-core-ship-icon.mjs.map +1 -0
  41. package/fesm2022/ship-ui-core-ship-list.mjs +22 -0
  42. package/fesm2022/ship-ui-core-ship-list.mjs.map +1 -0
  43. package/fesm2022/ship-ui-core-ship-menu.mjs +545 -0
  44. package/fesm2022/ship-ui-core-ship-menu.mjs.map +1 -0
  45. package/fesm2022/ship-ui-core-ship-popover.mjs +286 -0
  46. package/fesm2022/ship-ui-core-ship-popover.mjs.map +1 -0
  47. package/fesm2022/ship-ui-core-ship-progress-bar.mjs +37 -0
  48. package/fesm2022/ship-ui-core-ship-progress-bar.mjs.map +1 -0
  49. package/fesm2022/ship-ui-core-ship-radio.mjs +102 -0
  50. package/fesm2022/ship-ui-core-ship-radio.mjs.map +1 -0
  51. package/fesm2022/ship-ui-core-ship-range-slider.mjs +277 -0
  52. package/fesm2022/ship-ui-core-ship-range-slider.mjs.map +1 -0
  53. package/fesm2022/ship-ui-core-ship-select.mjs +971 -0
  54. package/fesm2022/ship-ui-core-ship-select.mjs.map +1 -0
  55. package/fesm2022/ship-ui-core-ship-sidenav.mjs +248 -0
  56. package/fesm2022/ship-ui-core-ship-sidenav.mjs.map +1 -0
  57. package/fesm2022/ship-ui-core-ship-sortable.mjs +485 -0
  58. package/fesm2022/ship-ui-core-ship-sortable.mjs.map +1 -0
  59. package/fesm2022/ship-ui-core-ship-spinner.mjs +28 -0
  60. package/fesm2022/ship-ui-core-ship-spinner.mjs.map +1 -0
  61. package/fesm2022/ship-ui-core-ship-stepper.mjs +76 -0
  62. package/fesm2022/ship-ui-core-ship-stepper.mjs.map +1 -0
  63. package/fesm2022/ship-ui-core-ship-table-filter-bar.mjs +28 -0
  64. package/fesm2022/ship-ui-core-ship-table-filter-bar.mjs.map +1 -0
  65. package/fesm2022/ship-ui-core-ship-table.mjs +442 -0
  66. package/fesm2022/ship-ui-core-ship-table.mjs.map +1 -0
  67. package/fesm2022/ship-ui-core-ship-tabs.mjs +38 -0
  68. package/fesm2022/ship-ui-core-ship-tabs.mjs.map +1 -0
  69. package/fesm2022/ship-ui-core-ship-theme-toggle.mjs +119 -0
  70. package/fesm2022/ship-ui-core-ship-theme-toggle.mjs.map +1 -0
  71. package/fesm2022/ship-ui-core-ship-toggle-card.mjs +75 -0
  72. package/fesm2022/ship-ui-core-ship-toggle-card.mjs.map +1 -0
  73. package/fesm2022/ship-ui-core-ship-toggle.mjs +105 -0
  74. package/fesm2022/ship-ui-core-ship-toggle.mjs.map +1 -0
  75. package/fesm2022/ship-ui-core-ship-virtual-scroll.mjs +186 -0
  76. package/fesm2022/ship-ui-core-ship-virtual-scroll.mjs.map +1 -0
  77. package/fesm2022/ship-ui-core.mjs +880 -8782
  78. package/fesm2022/ship-ui-core.mjs.map +1 -1
  79. package/package.json +147 -3
  80. package/styles/core.scss +43 -0
  81. package/styles/helpers.scss +2 -0
  82. package/styles/index.scss +12 -123
  83. package/types/ship-ui-core-sh-form-field-experimental.d.ts +11 -0
  84. package/types/ship-ui-core-ship-accordion.d.ts +19 -0
  85. package/types/ship-ui-core-ship-alert.d.ts +68 -0
  86. package/types/ship-ui-core-ship-blueprint.d.ts +112 -0
  87. package/types/ship-ui-core-ship-button-group.d.ts +15 -0
  88. package/types/ship-ui-core-ship-button.d.ts +13 -0
  89. package/types/ship-ui-core-ship-card.d.ts +11 -0
  90. package/types/ship-ui-core-ship-checkbox.d.ts +22 -0
  91. package/types/ship-ui-core-ship-chip.d.ts +15 -0
  92. package/types/ship-ui-core-ship-color-picker.d.ts +105 -0
  93. package/types/ship-ui-core-ship-datepicker.d.ts +96 -0
  94. package/types/ship-ui-core-ship-dialog.d.ts +76 -0
  95. package/types/ship-ui-core-ship-divider.d.ts +8 -0
  96. package/types/ship-ui-core-ship-event-card.d.ts +11 -0
  97. package/types/ship-ui-core-ship-file-upload.d.ts +20 -0
  98. package/types/ship-ui-core-ship-form-field.d.ts +32 -0
  99. package/types/ship-ui-core-ship-icon.d.ts +18 -0
  100. package/types/ship-ui-core-ship-list.d.ts +8 -0
  101. package/types/ship-ui-core-ship-menu.d.ts +49 -0
  102. package/types/ship-ui-core-ship-popover.d.ts +40 -0
  103. package/types/ship-ui-core-ship-progress-bar.d.ts +14 -0
  104. package/types/ship-ui-core-ship-radio.d.ts +22 -0
  105. package/types/ship-ui-core-ship-range-slider.d.ts +31 -0
  106. package/types/ship-ui-core-ship-select.d.ts +81 -0
  107. package/types/ship-ui-core-ship-sidenav.d.ts +36 -0
  108. package/types/ship-ui-core-ship-sortable.d.ts +72 -0
  109. package/types/ship-ui-core-ship-spinner.d.ts +10 -0
  110. package/types/ship-ui-core-ship-stepper.d.ts +13 -0
  111. package/types/ship-ui-core-ship-table-filter-bar.d.ts +8 -0
  112. package/types/ship-ui-core-ship-table.d.ts +69 -0
  113. package/types/ship-ui-core-ship-tabs.d.ts +14 -0
  114. package/types/ship-ui-core-ship-theme-toggle.d.ts +28 -0
  115. package/types/ship-ui-core-ship-toggle-card.d.ts +15 -0
  116. package/types/ship-ui-core-ship-toggle.d.ts +21 -0
  117. package/types/ship-ui-core-ship-virtual-scroll.d.ts +22 -0
  118. package/types/ship-ui-core.d.ts +88 -1070
  119. package/styles/components/ship-accordion.scss +0 -113
  120. package/styles/components/ship-alert-container.scss +0 -49
  121. package/styles/components/ship-alert.scss +0 -177
  122. package/styles/components/ship-blueprint.scss +0 -242
  123. package/styles/components/ship-button-group.scss +0 -165
  124. package/styles/components/ship-button.scss +0 -141
  125. package/styles/components/ship-card.scss +0 -57
  126. package/styles/components/ship-checkbox.scss +0 -116
  127. package/styles/components/ship-chip.scss +0 -104
  128. package/styles/components/ship-color-picker.scss +0 -150
  129. package/styles/components/ship-datepicker.scss +0 -317
  130. package/styles/components/ship-dialog.scss +0 -152
  131. package/styles/components/ship-divider.scss +0 -27
  132. package/styles/components/ship-event-card.scss +0 -51
  133. package/styles/components/ship-file-upload.scss +0 -47
  134. package/styles/components/ship-form-field.scss +0 -408
  135. package/styles/components/ship-icon.scss +0 -54
  136. package/styles/components/ship-list.scss +0 -165
  137. package/styles/components/ship-menu.scss +0 -237
  138. package/styles/components/ship-popover.scss +0 -205
  139. package/styles/components/ship-progress-bar.scss +0 -173
  140. package/styles/components/ship-radio.scss +0 -113
  141. package/styles/components/ship-range-slider.scss +0 -421
  142. package/styles/components/ship-select.scss +0 -153
  143. package/styles/components/ship-sidenav.scss +0 -195
  144. package/styles/components/ship-sortable.scss +0 -45
  145. package/styles/components/ship-spinner.scss +0 -53
  146. package/styles/components/ship-stepper.scss +0 -158
  147. package/styles/components/ship-table.scss +0 -443
  148. package/styles/components/ship-tabs.scss +0 -125
  149. package/styles/components/ship-theme-toggle.scss +0 -41
  150. package/styles/components/ship-toggle-card.scss +0 -69
  151. package/styles/components/ship-toggle.scss +0 -255
  152. package/styles/components/ship-tooltip.scss +0 -151
  153. package/styles/components/ship-virtual-scroll.scss +0 -12
@@ -1,1071 +1,5 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { ElementRef, QueryList, TemplateRef, OutputEmitterRef, InputSignal, ComponentRef, EmbeddedViewRef, OutputRefSubscription, Type, AfterViewInit, OnDestroy, AfterContentInit, WritableSignal, OnInit, InjectionToken } from '@angular/core';
3
- import { NgControl } from '@angular/forms';
4
- import { Observable } from 'rxjs';
5
-
6
- type ShipAlertItem = {
7
- type: ShipAlertType;
8
- title: string;
9
- content?: string;
10
- };
11
- type ShipAlertItemInternal = ShipAlertItem & {
12
- id: string;
13
- isOpen: boolean;
14
- animateOut: boolean;
15
- animateIn: boolean;
16
- };
17
- declare class ShipAlertService {
18
- alertHistory: _angular_core.WritableSignal<ShipAlertItemInternal[]>;
19
- alertHistoryIsOpen: _angular_core.WritableSignal<boolean>;
20
- alertHistoryIsHidden: _angular_core.WritableSignal<boolean>;
21
- error(message: string | null | undefined): void;
22
- success(message: string): void;
23
- question(message: string): void;
24
- warning(message: string): void;
25
- info(message: string): void;
26
- addAlert(alert: ShipAlertItem): void;
27
- removeAlert(id: string): void;
28
- hideAlert(id: string): void;
29
- setHidden(isHidden: boolean): void;
30
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipAlertService, never>;
31
- static ɵprov: _angular_core.ɵɵInjectableDeclaration<ShipAlertService>;
32
- }
33
-
34
- type ShipAlertType = 'error' | 'success' | 'warn' | 'primary' | 'accent' | 'question';
35
- declare class ShipAlert {
36
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
37
- variant: _angular_core.InputSignal<"" | "simple" | "outlined" | "flat" | "raised" | null>;
38
- hostClasses: _angular_core.Signal<string>;
39
- _el: ElementRef<any>;
40
- alertService: _angular_core.InputSignal<ShipAlertService | null>;
41
- id: _angular_core.InputSignal<string | null>;
42
- removeAlert(): void;
43
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipAlert, never>;
44
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipAlert, "sh-alert", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "alertService": { "alias": "alertService"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; }, {}, never, ["[icon]", "sh-icon", "[title]", "*", "button", "[actions]", "[content]", "p"], true, never>;
45
- }
46
-
47
- declare class ShipAlertContainer {
48
- #private;
49
- inline: _angular_core.InputSignal<string | null>;
50
- alerts: _angular_core.Signal<QueryList<ShipAlert>>;
51
- scroller: _angular_core.Signal<ElementRef<HTMLDivElement>>;
52
- alertService: _angular_core.InputSignal<ShipAlertService>;
53
- numberOfOpenAlerts: _angular_core.Signal<number>;
54
- onMouseOver(): void;
55
- onMouseOut(): void;
56
- getElementHeight(i: number): number;
57
- transformY(i: number): string;
58
- transitionDelay(i: number, allOpen?: boolean): string;
59
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipAlertContainer, never>;
60
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipAlertContainer, "ship-alert-container", never, { "inline": { "alias": "inline"; "required": false; "isSignal": true; }; "alertService": { "alias": "alertService"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
61
- }
62
-
63
- declare class ShipAlertModule {
64
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipAlertModule, never>;
65
- static ɵmod: _angular_core.ɵɵNgModuleDeclaration<ShipAlertModule, never, [typeof ShipAlert, typeof ShipAlertContainer], [typeof ShipAlert, typeof ShipAlertContainer]>;
66
- static ɵinj: _angular_core.ɵɵInjectorDeclaration<ShipAlertModule>;
67
- }
68
-
69
- type ShipDialogOptions = {
70
- class?: 'default' | 'type-b' | string;
71
- width?: string;
72
- maxWidth?: string;
73
- height?: string;
74
- maxHeight?: string;
75
- closeOnButton?: boolean;
76
- closeOnEsc?: boolean;
77
- closeOnOutsideClick?: boolean;
78
- };
79
- declare class ShipDialog {
80
- #private;
81
- dialogRef: _angular_core.Signal<ElementRef<HTMLDialogElement> | undefined>;
82
- isOpen: _angular_core.ModelSignal<boolean>;
83
- options: _angular_core.InputSignal<Partial<ShipDialogOptions> | undefined>;
84
- closed: _angular_core.OutputEmitterRef<void>;
85
- defaultOptionMerge: _angular_core.Signal<{
86
- class: "default" | "type-b" | string;
87
- width?: string;
88
- maxWidth?: string;
89
- height?: string;
90
- maxHeight?: string;
91
- closeOnButton?: boolean;
92
- closeOnEsc?: boolean;
93
- closeOnOutsideClick?: boolean;
94
- }>;
95
- abortController: AbortController | null;
96
- isOpenEffect: _angular_core.EffectRef;
97
- ngOnDestroy(): void;
98
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipDialog, never>;
99
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipDialog, "sh-dialog", never, { "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "closed": "closed"; }, never, ["*"], true, never>;
100
- }
101
-
102
- type Exact<T, U> = U extends T ? (keyof U extends keyof T ? U : never) : never;
103
- type ComponentDataType<T> = T extends TemplateRef<infer C> ? (C extends {
104
- $implicit: infer K;
105
- } ? K : unknown) & Partial<Omit<C, 'close' | '$implicit'>> extends infer R ? keyof R extends never ? void : R : void : T extends {
106
- data: InputSignal<infer K>;
107
- } ? K : void;
108
- type ComponentClosedType<T> = T extends TemplateRef<infer C> ? C extends {
109
- close: (res?: infer U) => void;
110
- } ? U : undefined : T extends {
111
- closed: OutputEmitterRef<infer U>;
112
- } ? U : undefined;
113
- interface ShipDialogServiceOptions<TData = any, TResult = undefined> extends ShipDialogOptions {
114
- data?: TData extends void ? void : TData & Exact<TData, TData>;
115
- closed?: (res: TResult) => void;
116
- }
117
- type ShipDialogInstance<T> = {
118
- component: T;
119
- close: (res?: ComponentClosedType<T>) => void;
120
- closed: OutputEmitterRef<ComponentClosedType<T>>;
121
- };
122
- type ShipDialogTemplateInstance<T> = {
123
- component: undefined;
124
- close: (res?: ComponentClosedType<T>) => void;
125
- closed: OutputEmitterRef<ComponentClosedType<T>>;
126
- };
127
- declare class ShipDialogService {
128
- #private;
129
- compRef: ComponentRef<ShipDialog> | null;
130
- insertedCompRef: ComponentRef<unknown> | null;
131
- insertedTemplateRef: EmbeddedViewRef<unknown> | null;
132
- closedFieldSub: OutputRefSubscription | null;
133
- compClosedSub: OutputRefSubscription | null;
134
- open<I, K = ComponentDataType<I>, U = ComponentClosedType<I>, _Options extends ShipDialogServiceOptions<K, U> = ShipDialogServiceOptions<K, U>>(componentOrTemplate: Type<I> | (I extends TemplateRef<any> ? I : never), options?: _Options): I extends TemplateRef<any> ? ShipDialogTemplateInstance<I> : ShipDialogInstance<I>;
135
- ngOnDestroy(): void;
136
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipDialogService, never>;
137
- static ɵprov: _angular_core.ɵɵInjectableDeclaration<ShipDialogService>;
138
- }
139
-
140
- declare const __SHIP_COLORS: readonly ["primary", "accent", "warn", "error", "success", ""];
141
- type ShipColor = (typeof __SHIP_COLORS)[number];
142
- declare const __SHIP_SIZES: readonly ["small", "xsmall", ""];
143
- type ShipSize = (typeof __SHIP_SIZES)[number];
144
- declare const __SHIP_BUTTON_SIZES: readonly ["small", "xsmall", ""];
145
- type ShipButtonSize = (typeof __SHIP_BUTTON_SIZES)[number];
146
- declare const __SHIP_ICON_SIZES: readonly ["small", "large", ""];
147
- type ShipIconSize = (typeof __SHIP_ICON_SIZES)[number];
148
- declare const __SHIP_SHEET_VARIANTS: readonly ["simple", "outlined", "flat", "raised", ""];
149
- type ShipSheetVariant = (typeof __SHIP_SHEET_VARIANTS)[number];
150
- declare const __SHIP_TYPE_VARIANTS: readonly ["type-a", "type-b", "type-c", "type-d", ""];
151
- type ShipTypeVariant = (typeof __SHIP_TYPE_VARIANTS)[number];
152
- declare const __SHIP_TABLE_VARIANTS: readonly ["type-a", "type-b", ""];
153
- type ShipTableVariant = (typeof __SHIP_TABLE_VARIANTS)[number];
154
- declare const __SHIP_CARD_VARIANTS: readonly ["type-a", "type-b", "type-c", ""];
155
- type ShipCardVariant = (typeof __SHIP_CARD_VARIANTS)[number];
156
- declare const __SHIP_BUTTON_GROUP_VARIANTS: readonly ["type-a", "type-b", ""];
157
- type ShipButtonGroupVariant = (typeof __SHIP_BUTTON_GROUP_VARIANTS)[number];
158
- declare const __SHIP_FORM_FIELD_VARIANTS: readonly ["base", "horizontal", "auto-width", "autosize", ""];
159
- type ShipFormFieldVariant = (typeof __SHIP_FORM_FIELD_VARIANTS)[number];
160
- declare const __SHIP_RANGE_SLIDER_VARIANTS: readonly ["simple", "base", "thick", "outlined", "flat", "raised", ""];
161
- type ShipRangeSliderVariant = (typeof __SHIP_RANGE_SLIDER_VARIANTS)[number];
162
- type ShipVariant = ShipSheetVariant | ShipTypeVariant;
163
-
164
- declare class ShipAccordion {
165
- private selfElement;
166
- readonly name: _angular_core.InputSignal<string>;
167
- readonly value: _angular_core.ModelSignal<string | null>;
168
- readonly allowMultiple: _angular_core.InputSignal<boolean>;
169
- readonly variant: _angular_core.InputSignal<ShipVariant | null>;
170
- readonly size: _angular_core.InputSignal<string | null>;
171
- hostClasses: _angular_core.Signal<string>;
172
- protected items: _angular_core.Signal<HTMLDetailsElement[]>;
173
- constructor();
174
- onToggle(event: Event): void;
175
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipAccordion, never>;
176
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipAccordion, "sh-accordion", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "allowMultiple": { "alias": "allowMultiple"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, ["*"], true, never>;
177
- }
178
-
179
- type Port = {
180
- id: string;
181
- name: string;
182
- };
183
- type BlueprintNode = {
184
- id: string;
185
- name?: string;
186
- coordinates: Coordinates;
187
- inputs: Port[];
188
- outputs: Port[];
189
- connections: Connection[];
190
- };
191
- type Connection = {
192
- fromNode: string;
193
- fromPort: string;
194
- toNode: string;
195
- toPort: string;
196
- };
197
- type DragState = {
198
- fromNode: string;
199
- fromPort: string;
200
- x2: number;
201
- y2: number;
202
- };
203
- type Coordinates = [x: number, y: number];
204
- declare const TEST_NODES: BlueprintNode[];
205
- type ValidationErrors = {
206
- duplicateNodeIds: string[];
207
- duplicatePortIds: {
208
- nodeId: string;
209
- duplicatePortIds: string[];
210
- }[];
211
- };
212
- declare class ShipBlueprint implements AfterViewInit, OnDestroy {
213
- #private;
214
- asDots: _angular_core.Signal<boolean>;
215
- lightMode: _angular_core.Signal<boolean>;
216
- forceUnique: _angular_core.InputSignal<boolean>;
217
- autoLayout: _angular_core.InputSignal<boolean>;
218
- gridSize: _angular_core.InputSignal<number>;
219
- snapToGrid: _angular_core.InputSignal<boolean>;
220
- gridColor: _angular_core.InputSignal<[string, string]>;
221
- nodes: _angular_core.ModelSignal<BlueprintNode[]>;
222
- panX: _angular_core.WritableSignal<number>;
223
- panY: _angular_core.WritableSignal<number>;
224
- zoomLevel: _angular_core.WritableSignal<number>;
225
- gridSnapSize: _angular_core.WritableSignal<number>;
226
- isHoveringNode: _angular_core.WritableSignal<boolean>;
227
- midpointDivPosition: _angular_core.WritableSignal<{
228
- x: number;
229
- y: number;
230
- } | null>;
231
- showMidpointDiv: _angular_core.WritableSignal<boolean>;
232
- isLocked: _angular_core.WritableSignal<boolean>;
233
- draggingConnection: _angular_core.WritableSignal<DragState | null>;
234
- validationErrors: _angular_core.WritableSignal<ValidationErrors | null>;
235
- highlightedConnection: _angular_core.WritableSignal<Connection | null>;
236
- canvasRef: ElementRef<HTMLCanvasElement>;
237
- visibleNodes: _angular_core.Signal<BlueprintNode[]>;
238
- constructor();
239
- ngAfterViewInit(): void;
240
- ngOnDestroy(): void;
241
- onMouseUp(event: MouseEvent): void;
242
- onClick(event: MouseEvent): void;
243
- onEscape(): void;
244
- onMouseMove(event: MouseEvent): void;
245
- onTouchMove(event: TouchEvent): void;
246
- onDocumentTouchEnd(event: TouchEvent): void;
247
- applyAutolayout(): void;
248
- updateCanvasSize(): void;
249
- drawCanvas(): void;
250
- drawGrid(ctx: CanvasRenderingContext2D): void;
251
- drawConnections(ctx: CanvasRenderingContext2D): void;
252
- drawDraggingPath(ctx: CanvasRenderingContext2D): void;
253
- drawCurvedPath(ctx: CanvasRenderingContext2D, start: Coordinates, end: Coordinates): void;
254
- startNodeDrag(event: MouseEvent | TouchEvent, nodeId: string): void;
255
- endNodeDrag(): void;
256
- nodeDrag(event: MouseEvent | Touch): void;
257
- startPortDrag(event: MouseEvent, nodeId: string, portId: string): void;
258
- endPortDrag(_: MouseEvent, toNodeId: string, toPortId: string): void;
259
- cancelPortDrag(): void;
260
- updatePathOnMove(event: MouseEvent | Touch): void;
261
- getNodePortPosition(nodeId: string, portId: string): Coordinates;
262
- startPan(event: MouseEvent): void;
263
- endPan(): void;
264
- pan(event: MouseEvent): void;
265
- zoom(event: WheelEvent): void;
266
- handleTouchStart(event: TouchEvent): void;
267
- handleTouchMove(event: TouchEvent): void;
268
- handleTouchEnd(): void;
269
- closeMidpointDiv(): void;
270
- getDisplayCoordinates(node: BlueprintNode): string;
271
- removeConnection(): void;
272
- getNewNodeCoordinates(panToCoordinates?: boolean): Coordinates;
273
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipBlueprint, never>;
274
- 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>;
275
- }
276
-
277
- declare abstract class ShipSelectionGroup<T = any> {
278
- protected readonly itemSelector: string;
279
- protected readonly activeClass: string;
280
- protected readonly options?: {
281
- hostRole?: string;
282
- itemRole?: string;
283
- } | undefined;
284
- protected readonly hostElement: any;
285
- protected items: _angular_core.Signal<HTMLElement[]>;
286
- readonly value: _angular_core.ModelSignal<T | null>;
287
- readonly closable: _angular_core.InputSignalWithTransform<boolean, string | boolean>;
288
- readonly manualActivation: _angular_core.InputSignalWithTransform<boolean, string | boolean>;
289
- constructor(itemSelector: string, activeClass: string, options?: {
290
- hostRole?: string;
291
- itemRole?: string;
292
- } | undefined);
293
- protected onClick(target: EventTarget | null): void;
294
- protected onKeyDown(event: KeyboardEvent): void;
295
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipSelectionGroup<any>, never>;
296
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ShipSelectionGroup<any>, never, never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "closable": { "alias": "closable"; "required": false; "isSignal": true; }; "manualActivation": { "alias": "manualActivation"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
297
- }
298
-
299
- declare class ShipButtonGroup extends ShipSelectionGroup<string> {
300
- id: string;
301
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
302
- variant: _angular_core.InputSignal<"" | "type-a" | "type-b" | null>;
303
- size: _angular_core.InputSignal<"" | "small" | "xsmall" | null>;
304
- constructor();
305
- hostClasses: _angular_core.Signal<string>;
306
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipButtonGroup, never>;
307
- 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>;
308
- }
309
-
310
- declare class ShipButton {
311
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
312
- variant: _angular_core.InputSignal<"" | "simple" | "outlined" | "flat" | "raised" | null>;
313
- size: _angular_core.InputSignal<"" | "small" | "xsmall" | null>;
314
- readonly: _angular_core.InputSignal<boolean>;
315
- hostClasses: _angular_core.Signal<string>;
316
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipButton, never>;
317
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipButton, "[shButton]", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
318
- }
319
-
320
- declare class ShipCard {
321
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
322
- variant: _angular_core.InputSignal<"" | "type-a" | "type-b" | "type-c" | null>;
323
- hostClasses: _angular_core.Signal<string>;
324
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipCard, never>;
325
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipCard, "sh-card", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
326
- }
327
-
328
- declare class ShipCheckbox {
329
- private readonly _elementRef;
330
- internalInput: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
331
- projectedInputs: _angular_core.Signal<HTMLInputElement[]>;
332
- checked: _angular_core.ModelSignal<boolean>;
333
- currentClassList: _angular_core.Signal<string>;
334
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
335
- variant: _angular_core.InputSignal<"" | "simple" | "outlined" | "flat" | "raised" | null>;
336
- readonly: _angular_core.InputSignal<boolean>;
337
- disabled: _angular_core.InputSignal<boolean>;
338
- noInternalInput: _angular_core.InputSignal<boolean>;
339
- protected onInternalInputChange(event: Event): void;
340
- hostClasses: _angular_core.Signal<string>;
341
- protected onEnter(event: Event): void;
342
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipCheckbox, never>;
343
- 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>;
344
- }
345
-
346
- declare class ShipChip {
347
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
348
- variant: _angular_core.InputSignal<"" | "simple" | "outlined" | "flat" | "raised" | null>;
349
- size: _angular_core.InputSignal<"" | "small" | "xsmall" | null>;
350
- sharp: _angular_core.InputSignal<boolean | undefined>;
351
- dynamic: _angular_core.InputSignal<boolean | undefined>;
352
- readonly: _angular_core.InputSignal<boolean>;
353
- hostClasses: _angular_core.Signal<string>;
354
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipChip, never>;
355
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipChip, "sh-chip", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "sharp": { "alias": "sharp"; "required": false; "isSignal": true; }; "dynamic": { "alias": "dynamic"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
356
- }
357
-
358
- type R = number;
359
- type G = number;
360
- type B = number;
361
- type A = number;
362
- declare class ShipColorPicker {
363
- #private;
364
- readonly canvasRef: _angular_core.Signal<ElementRef<HTMLCanvasElement>>;
365
- showDarkColors: _angular_core.InputSignal<boolean>;
366
- renderingType: _angular_core.InputSignal<"hsl" | "grid" | "hue" | "rgb" | "saturation" | "alpha">;
367
- gridSize: _angular_core.InputSignal<number>;
368
- hue: _angular_core.ModelSignal<number>;
369
- direction: _angular_core.InputSignal<"horizontal" | "vertical">;
370
- selectedColor: _angular_core.ModelSignal<[number, number, number, (number | undefined)?]>;
371
- alpha: _angular_core.ModelSignal<number>;
372
- currentColor: _angular_core.OutputEmitterRef<{
373
- rgb: string;
374
- rgba: string;
375
- hex: string;
376
- hex8: string;
377
- hsl: string;
378
- hsla: string;
379
- hue: number;
380
- saturation: number;
381
- alpha: number;
382
- }>;
383
- centerLightness: _angular_core.Signal<200 | 100>;
384
- isDragging: _angular_core.WritableSignal<boolean>;
385
- markerPosition: _angular_core.WritableSignal<{
386
- x: string;
387
- y: string;
388
- }>;
389
- _pos: {
390
- x: string;
391
- y: string;
392
- };
393
- _markerPosition: _angular_core.EffectRef;
394
- selectedColorRgb: _angular_core.Signal<string>;
395
- selectedColorHex: _angular_core.Signal<string>;
396
- selectedColorHsl: _angular_core.Signal<string>;
397
- alphaEffect: _angular_core.EffectRef;
398
- _prevColorStr: string;
399
- selectedColorEffect: _angular_core.EffectRef;
400
- private alphaColorRedrawEffect;
401
- onResize(): void;
402
- private previousLayoutHash;
403
- private previousHue;
404
- private getLayoutHash;
405
- private renderingTypeEffect;
406
- initColor: [R, G, B, A?] | null;
407
- ngAfterViewInit(): void;
408
- ngOnDestroy(): void;
409
- private updateMarkerFromColor;
410
- private findPositionByColor;
411
- private adjustMarkerPosition;
412
- private initCanvasEvents;
413
- private setCanvasSize;
414
- private getColorAtPosition;
415
- private updateColorAndMarker;
416
- private drawColorPicker;
417
- private drawAlpha;
418
- private drawRgb;
419
- private drawSaturation;
420
- private drawHue;
421
- private drawColorWheel;
422
- private drawGrid;
423
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipColorPicker, never>;
424
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipColorPicker, "sh-color-picker", never, { "showDarkColors": { "alias": "showDarkColors"; "required": false; "isSignal": true; }; "renderingType": { "alias": "renderingType"; "required": false; "isSignal": true; }; "gridSize": { "alias": "gridSize"; "required": false; "isSignal": true; }; "hue": { "alias": "hue"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "selectedColor": { "alias": "selectedColor"; "required": false; "isSignal": true; }; "alpha": { "alias": "alpha"; "required": false; "isSignal": true; }; }, { "hue": "hueChange"; "selectedColor": "selectedColorChange"; "alpha": "alphaChange"; "currentColor": "currentColor"; }, never, never, true, never>;
425
- }
426
-
427
- declare class ShipColorPickerInput {
428
- #private;
429
- renderingType: _angular_core.InputSignal<"hsl" | "grid" | "hue" | "rgb" | "saturation" | "alpha">;
430
- format: _angular_core.InputSignal<"hsl" | "rgb" | "rgba" | "hex" | "hex8" | "hsla">;
431
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
432
- variant: _angular_core.InputSignal<"" | "base" | "horizontal" | "auto-width" | "autosize" | null>;
433
- size: _angular_core.InputSignal<"" | "small" | "xsmall" | null>;
434
- readonly: _angular_core.InputSignal<boolean>;
435
- closed: _angular_core.OutputEmitterRef<string>;
436
- isOpen: _angular_core.ModelSignal<boolean>;
437
- currentClass: _angular_core.Signal<string>;
438
- isEyeDropperSupported: boolean;
439
- showEyeDropper: _angular_core.InputSignal<boolean>;
440
- internalHue: _angular_core.WritableSignal<number>;
441
- internalAlpha: _angular_core.WritableSignal<number>;
442
- internalColorTuple: _angular_core.WritableSignal<[number, number, number, (number | undefined)?]>;
443
- hasAlpha: _angular_core.Signal<boolean>;
444
- formattedColorString: _angular_core.Signal<string>;
445
- pureHueColor: _angular_core.Signal<[number, number, number]>;
446
- onMainColorChange(colorObj: any): void;
447
- onHuePickerChange(colorObj: any): void;
448
- openEyeDropper(event: MouseEvent): Promise<void>;
449
- close(): void;
450
- private parseAndSetColor;
451
- private hslToRgbExact;
452
- private rgbToHex;
453
- private rgbaToHex8;
454
- private rgbToHsl;
455
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipColorPickerInput, never>;
456
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipColorPickerInput, "sh-color-picker-input", never, { "renderingType": { "alias": "renderingType"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "showEyeDropper": { "alias": "showEyeDropper"; "required": false; "isSignal": true; }; }, { "closed": "closed"; "isOpen": "isOpenChange"; }, never, ["label", "[prefix]", "[textPrefix]", "input", "[textSuffix]", "[suffix]"], true, never>;
457
- }
458
-
459
- declare class ShipDatepicker {
460
- #private;
461
- date: _angular_core.ModelSignal<Date | null>;
462
- endDate: _angular_core.ModelSignal<Date | null>;
463
- asRange: _angular_core.InputSignal<boolean>;
464
- activeRangeSelection: _angular_core.InputSignal<"start" | "end" | null>;
465
- monthsToShow: _angular_core.InputSignal<number>;
466
- disabled: _angular_core.InputSignal<boolean>;
467
- tabbedOut: _angular_core.OutputEmitterRef<void>;
468
- startOfWeek: _angular_core.InputSignal<number>;
469
- weekdayLabels: _angular_core.InputSignal<string[]>;
470
- daysRef: _angular_core.Signal<ElementRef<HTMLDivElement> | undefined>;
471
- currentDate: _angular_core.WritableSignal<Date>;
472
- monthOffsets: _angular_core.Signal<number[]>;
473
- selectedDateStylePosition: _angular_core.WritableSignal<{
474
- transform: string;
475
- opacity: string;
476
- } | null>;
477
- weekdays: _angular_core.Signal<string[]>;
478
- currentClasses: _angular_core.Signal<string>;
479
- someEffect: _angular_core.EffectRef;
480
- getLastVisibleMonth(): Date;
481
- getOffsetDate(monthOffset: number): Date;
482
- getMonthDates(monthOffset: number): Date[];
483
- ngOnInit(): void;
484
- nextMonth(): void;
485
- previousMonth(): void;
486
- setDate(newDate: Date, selectedElement: HTMLElement): void;
487
- isDateSelected(date: Date): string | null;
488
- setSelectedDateStylePosition(selectedElement: HTMLElement): void;
489
- getMonthName(date: Date): string;
490
- getFullYear(date: Date): number;
491
- isCurrentMonth(date: Date, monthOffset: number): boolean;
492
- focusedDate: _angular_core.WritableSignal<Date | null>;
493
- isSameDay(d1: Date | null | undefined, d2: Date | null | undefined): boolean;
494
- getAriaLabel(date: Date): string;
495
- getTabIndex(date: Date): number;
496
- isDateSelectedBool(date: Date): boolean;
497
- onKeydown(event: KeyboardEvent, date: Date): void;
498
- ensureDateVisible(date: Date): void;
499
- focusActiveDate(): void;
500
- onFocusOut(event: FocusEvent): void;
501
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipDatepicker, never>;
502
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipDatepicker, "sh-datepicker", never, { "date": { "alias": "date"; "required": false; "isSignal": true; }; "endDate": { "alias": "endDate"; "required": false; "isSignal": true; }; "asRange": { "alias": "asRange"; "required": false; "isSignal": true; }; "activeRangeSelection": { "alias": "activeRangeSelection"; "required": false; "isSignal": true; }; "monthsToShow": { "alias": "monthsToShow"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "startOfWeek": { "alias": "startOfWeek"; "required": false; "isSignal": true; }; "weekdayLabels": { "alias": "weekdayLabels"; "required": false; "isSignal": true; }; }, { "date": "dateChange"; "endDate": "endDateChange"; "tabbedOut": "tabbedOut"; }, never, never, true, never>;
503
- }
504
-
505
- declare class ShipDatepickerInput {
506
- #private;
507
- ngControl: _angular_core.Signal<NgControl | undefined>;
508
- masking: _angular_core.InputSignal<string>;
509
- closed: _angular_core.OutputEmitterRef<Date | null>;
510
- _maskedDate: _angular_core.Signal<string | Date | null>;
511
- internalDate: _angular_core.WritableSignal<Date | null>;
512
- isOpen: _angular_core.ModelSignal<boolean>;
513
- currentClass: _angular_core.Signal<string>;
514
- datepicker: _angular_core.Signal<ShipDatepicker | undefined>;
515
- onFocusOut(event: FocusEvent): void;
516
- onDateChange(date: Date | null): void;
517
- close(): void;
518
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipDatepickerInput, never>;
519
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipDatepickerInput, "sh-datepicker-input", never, { "masking": { "alias": "masking"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; }, { "closed": "closed"; "isOpen": "isOpenChange"; }, ["ngControl"], ["label", "[prefix]", "[textPrefix]", "input", "[textSuffix]", "[suffix]"], true, never>;
520
- }
521
-
522
- declare class ShipDaterangeInput {
523
- #private;
524
- monthsToShow: _angular_core.InputSignal<number>;
525
- masking: _angular_core.InputSignal<string>;
526
- closed: _angular_core.OutputEmitterRef<{
527
- start: Date | null;
528
- end: Date | null;
529
- }>;
530
- startDate: _angular_core.WritableSignal<Date | null>;
531
- endDate: _angular_core.WritableSignal<Date | null>;
532
- activeInput: _angular_core.WritableSignal<"start" | "end">;
533
- isOpen: _angular_core.ModelSignal<boolean>;
534
- datepicker: _angular_core.Signal<ShipDatepicker | undefined>;
535
- get classes(): string;
536
- _maskedStartDate: _angular_core.Signal<string | null>;
537
- _maskedEndDate: _angular_core.Signal<string | null>;
538
- constructor();
539
- private setupInput;
540
- onFocusOut(event: FocusEvent): void;
541
- onStartDateChange(date: Date | null): void;
542
- onEndDateChange(date: Date | null): void;
543
- private updateInputValue;
544
- private dispatchInputEvent;
545
- close(): void;
546
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipDaterangeInput, never>;
547
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipDaterangeInput, "sh-daterange-input", never, { "monthsToShow": { "alias": "monthsToShow"; "required": false; "isSignal": true; }; "masking": { "alias": "masking"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; }, { "closed": "closed"; "isOpen": "isOpenChange"; }, never, ["label", "[prefix]", "[textPrefix]", "input", "[textSuffix]", "[suffix]"], true, never>;
548
- }
549
-
550
- declare class ShipDivider {
551
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipDivider, never>;
552
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipDivider, "sh-divider", never, {}, {}, never, ["*"], true, never>;
553
- }
554
-
555
- declare class ShipEventCard {
556
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
557
- variant: _angular_core.InputSignal<"" | "simple" | "outlined" | "flat" | "raised" | null>;
558
- hostClasses: _angular_core.Signal<string>;
559
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipEventCard, never>;
560
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipEventCard, "sh-event-card", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, ["*", "[actions]", "button"], true, never>;
561
- }
562
-
563
- declare class ShipFileUpload {
564
- _el: ElementRef<any>;
565
- inputRef: _angular_core.Signal<ElementRef<HTMLInputElement>>;
566
- filesOver: _angular_core.WritableSignal<boolean>;
567
- multiple: _angular_core.InputSignal<boolean | null | undefined>;
568
- accept: _angular_core.InputSignal<string | null>;
569
- placeholder: _angular_core.ModelSignal<string>;
570
- overlayText: _angular_core.InputSignal<string>;
571
- files: _angular_core.ModelSignal<File[]>;
572
- fileUploadClasses: _angular_core.Signal<any>;
573
- handleFileUpload(newFiles: File[]): void;
574
- inputEffect: _angular_core.EffectRef;
575
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipFileUpload, never>;
576
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipFileUpload, "sh-file-upload", never, { "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "accept": { "alias": "accept"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "overlayText": { "alias": "overlayText"; "required": false; "isSignal": true; }; "files": { "alias": "files"; "required": false; "isSignal": true; }; }, { "placeholder": "placeholderChange"; "files": "filesChange"; }, never, ["label"], true, never>;
577
- }
578
-
579
- declare class ShipFormField {
580
- #private;
581
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
582
- variant: _angular_core.InputSignal<"" | "base" | "horizontal" | "auto-width" | "autosize" | null>;
583
- size: _angular_core.InputSignal<"" | "small" | "xsmall" | null>;
584
- readonly: _angular_core.InputSignal<boolean>;
585
- hostClasses: _angular_core.Signal<string>;
586
- onClick(): void;
587
- constructor();
588
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipFormField, never>;
589
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipFormField, "sh-form-field", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; }, {}, never, ["label", "[boxPrefix]", "[prefix]", "[textPrefix]", "input", "textarea", "[textSuffix]", "[suffix]", "[boxSuffix]", "[error]", "[hint]"], true, never>;
590
- }
591
-
592
- declare class ShipIcon implements AfterContentInit {
593
- #private;
594
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
595
- size: _angular_core.InputSignal<"" | "small" | "large" | null>;
596
- hostClasses: _angular_core.Signal<string>;
597
- ngAfterContentInit(): void;
598
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipIcon, never>;
599
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipIcon, "sh-icon", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
600
- }
601
-
602
- declare class ShipList {
603
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipList, never>;
604
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipList, "sh-list", never, {}, {}, never, ["*"], true, never>;
605
- }
606
-
607
- declare class ShipMenu {
608
- #private;
609
- asMultiLayer: _angular_core.InputSignal<boolean>;
610
- openIndicator: _angular_core.InputSignal<boolean>;
611
- disabled: _angular_core.InputSignal<boolean>;
612
- customOptionElementSelectors: _angular_core.InputSignal<string[]>;
613
- keepClickedOptionActive: _angular_core.InputSignal<boolean>;
614
- closeOnClick: _angular_core.InputSignal<boolean>;
615
- isOpen: _angular_core.ModelSignal<boolean>;
616
- closed: _angular_core.OutputEmitterRef<boolean>;
617
- searchable: _angular_core.InputSignal<boolean>;
618
- activeOptionIndex: _angular_core.WritableSignal<number>;
619
- inputRef: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
620
- optionsRef: _angular_core.Signal<ElementRef<HTMLDivElement> | undefined>;
621
- private static openMenus;
622
- openMenusEffect: _angular_core.EffectRef;
623
- options: {
624
- signal: _angular_core.Signal<HTMLButtonElement[]>;
625
- destroy: () => void;
626
- };
627
- optionsEl: _angular_core.Signal<HTMLButtonElement[]>;
628
- inputValue: _angular_core.WritableSignal<string | undefined>;
629
- readonly optionsId: string;
630
- activeOptionId: _angular_core.WritableSignal<string | undefined>;
631
- abortController: AbortController | null;
632
- optionsEffect: _angular_core.EffectRef;
633
- keyDownEventListener: (e: KeyboardEvent) => void;
634
- _lastElementList: HTMLButtonElement[];
635
- activeElements: _angular_core.WritableSignal<HTMLButtonElement[]>;
636
- lastInputValue: string;
637
- inputValueEffect: _angular_core.EffectRef;
638
- toggleIsOpen(event: MouseEvent): void;
639
- open(): void;
640
- onShipMenuOpen(event: Event): void;
641
- activeOptionIndexEffect: _angular_core.EffectRef;
642
- nextActiveIndex(activeIndex: number): number;
643
- prevActiveIndex(activeIndex: number): number;
644
- close(action?: 'fromPopover' | 'closed' | 'active', event?: MouseEvent): void;
645
- ngOnDestroy(): void;
646
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipMenu, never>;
647
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipMenu, "sh-menu", never, { "asMultiLayer": { "alias": "asMultiLayer"; "required": false; "isSignal": true; }; "openIndicator": { "alias": "openIndicator"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "customOptionElementSelectors": { "alias": "customOptionElementSelectors"; "required": false; "isSignal": true; }; "keepClickedOptionActive": { "alias": "keepClickedOptionActive"; "required": false; "isSignal": true; }; "closeOnClick": { "alias": "closeOnClick"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "closed": "closed"; }, never, ["*", "[menu]"], true, never>;
648
- }
649
-
650
- type ShipPopoverOptions = {
651
- width?: string;
652
- height?: string;
653
- closeOnButton?: boolean;
654
- closeOnEsc?: boolean;
655
- };
656
- declare class ShipPopover {
657
- #private;
658
- SUPPORTS_ANCHOR: boolean;
659
- asMultiLayer: _angular_core.InputSignal<boolean>;
660
- asSheetOnMobile: _angular_core.InputSignal<boolean>;
661
- disableOpenByClick: _angular_core.InputSignal<boolean>;
662
- isOpen: _angular_core.ModelSignal<boolean>;
663
- options: _angular_core.InputSignal<Partial<ShipPopoverOptions> | undefined>;
664
- closed: _angular_core.OutputEmitterRef<void>;
665
- defaultOptionMerge: _angular_core.Signal<{
666
- width?: string;
667
- height?: string;
668
- closeOnButton?: boolean;
669
- closeOnEsc?: boolean;
670
- }>;
671
- triggerRef: _angular_core.Signal<ElementRef<HTMLElement>>;
672
- popoverRef: _angular_core.Signal<ElementRef<HTMLElement> | undefined>;
673
- popoverContentRef: _angular_core.Signal<ElementRef<HTMLElement> | undefined>;
674
- id: _angular_core.WritableSignal<string>;
675
- menuStyle: _angular_core.WritableSignal<any>;
676
- openAbort: AbortController | null;
677
- openEffect: _angular_core.EffectRef;
678
- toggleIsOpen(event: MouseEvent): void;
679
- eventClose($event: MouseEvent): void;
680
- ngOnDestroy(): void;
681
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipPopover, never>;
682
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipPopover, "sh-popover", never, { "asMultiLayer": { "alias": "asMultiLayer"; "required": false; "isSignal": true; }; "asSheetOnMobile": { "alias": "asSheetOnMobile"; "required": false; "isSignal": true; }; "disableOpenByClick": { "alias": "disableOpenByClick"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "closed": "closed"; }, never, ["[trigger]", "button", "[shButton]", "*"], true, never>;
683
- }
684
-
685
- type ShipProgressBarMode = 'determinate' | 'indeterminate';
686
- declare class ShipProgressBar {
687
- value: _angular_core.InputSignal<number | undefined>;
688
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
689
- variant: _angular_core.InputSignal<"" | "simple" | "outlined" | "flat" | "raised" | null>;
690
- hostClasses: _angular_core.Signal<string>;
691
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipProgressBar, never>;
692
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipProgressBar, "sh-progress-bar", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
693
- }
694
-
695
- declare class ShipRadio {
696
- private readonly _elementRef;
697
- internalInput: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
698
- projectedInputs: _angular_core.Signal<HTMLInputElement[]>;
699
- checked: _angular_core.ModelSignal<boolean>;
700
- currentClassList: _angular_core.Signal<string>;
701
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
702
- variant: _angular_core.InputSignal<"" | "simple" | "outlined" | "flat" | "raised" | null>;
703
- readonly: _angular_core.InputSignal<boolean>;
704
- disabled: _angular_core.InputSignal<boolean>;
705
- noInternalInput: _angular_core.InputSignal<boolean>;
706
- protected onInternalInputChange(event: Event): void;
707
- hostClasses: _angular_core.Signal<string>;
708
- protected onEnter(event: Event): void;
709
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipRadio, never>;
710
- 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>;
711
- }
712
-
713
- declare class ShipRangeSlider {
714
- #private;
715
- unit: _angular_core.InputSignal<string>;
716
- value: _angular_core.ModelSignal<number>;
717
- inputState: _angular_core.WritableSignal<{
718
- min: number;
719
- max: number;
720
- step: number;
721
- }>;
722
- readonly color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
723
- readonly variant: _angular_core.InputSignal<"" | "simple" | "outlined" | "flat" | "raised" | "base" | "thick" | null>;
724
- readonly size: _angular_core.InputSignal<"" | "small" | "xsmall" | null>;
725
- readonly sharp: _angular_core.InputSignal<boolean | undefined>;
726
- readonly alwaysShow: _angular_core.InputSignal<boolean | undefined>;
727
- hostClasses: _angular_core.Signal<string>;
728
- valuePercentage: _angular_core.Signal<number>;
729
- trackFilledPercentage: _angular_core.Signal<number>;
730
- thumbPositionPercentage: _angular_core.Signal<number>;
731
- syncModelToInputEffect: _angular_core.EffectRef;
732
- get hasInputElement(): boolean;
733
- ngAfterViewInit(): void;
734
- setNewInputValue(value: string): void;
735
- trackEvent(e: MouseEvent): void;
736
- ngOnDestroy(): void;
737
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipRangeSlider, never>;
738
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipRangeSlider, "sh-range-slider", never, { "unit": { "alias": "unit"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "sharp": { "alias": "sharp"; "required": false; "isSignal": true; }; "alwaysShow": { "alias": "alwaysShow"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, ["label", "input[type=range]"], true, never>;
739
- }
740
-
741
- type ValidateFreeText = (value: string) => boolean;
742
- declare class ShipSelect {
743
- #private;
744
- value: _angular_core.InputSignal<string | undefined>;
745
- label: _angular_core.InputSignal<string | undefined>;
746
- asFreeText: _angular_core.InputSignal<boolean>;
747
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
748
- variant: _angular_core.InputSignal<"" | "base" | "horizontal" | "auto-width" | "autosize" | null>;
749
- size: _angular_core.InputSignal<"" | "small" | "xsmall" | null>;
750
- optionTitle: _angular_core.InputSignal<string | null>;
751
- freeTextTitle: _angular_core.InputSignal<string | null>;
752
- freeTextPlaceholder: _angular_core.InputSignal<string | null>;
753
- validateFreeText: _angular_core.InputSignal<ValidateFreeText | undefined>;
754
- placeholder: _angular_core.InputSignal<string | undefined>;
755
- readonly: _angular_core.ModelSignal<boolean>;
756
- disabled: _angular_core.ModelSignal<boolean>;
757
- hostClasses: _angular_core.Signal<string>;
758
- lazySearch: _angular_core.InputSignal<boolean>;
759
- inlineSearch: _angular_core.InputSignal<boolean>;
760
- asText: _angular_core.InputSignal<boolean>;
761
- isClearable: _angular_core.InputSignal<boolean>;
762
- selectMultiple: _angular_core.InputSignal<boolean>;
763
- optionTemplate: _angular_core.InputSignal<TemplateRef<unknown> | null>;
764
- selectedOptionTemplate: _angular_core.InputSignal<TemplateRef<unknown> | null>;
765
- placeholderTemplate: _angular_core.InputSignal<TemplateRef<unknown> | null>;
766
- freeTextOptionTemplate: _angular_core.InputSignal<TemplateRef<unknown> | null>;
767
- isOpen: _angular_core.ModelSignal<boolean>;
768
- isLoading: _angular_core.ModelSignal<boolean>;
769
- options: _angular_core.ModelSignal<unknown[]>;
770
- selectedOptions: _angular_core.ModelSignal<unknown[]>;
771
- cleared: _angular_core.OutputEmitterRef<void>;
772
- onAddNewFreeTextOption: _angular_core.OutputEmitterRef<string>;
773
- spacedSelectedOptions: _angular_core.Signal<string>;
774
- computedFreeTextOption: _angular_core.Signal<string | Record<string, any>>;
775
- inlineTemplate: _angular_core.Signal<TemplateRef<unknown> | undefined>;
776
- optionsWrapRef: _angular_core.Signal<ElementRef<HTMLDivElement>>;
777
- inputRefInput: _angular_core.WritableSignal<ElementRef<HTMLInputElement> | null>;
778
- inputValue: _angular_core.WritableSignal<string>;
779
- prevInputValue: _angular_core.WritableSignal<string | null>;
780
- focusedOptionIndex: _angular_core.WritableSignal<number>;
781
- _isClearable: _angular_core.Signal<boolean>;
782
- selectClasses: _angular_core.Signal<string>;
783
- stretch: _angular_core.Signal<boolean>;
784
- small: _angular_core.Signal<boolean>;
785
- placeholderText: _angular_core.Signal<string | null>;
786
- selectedOptionValues: _angular_core.Signal<unknown[]>;
787
- filteredOptions: _angular_core.Signal<unknown[]>;
788
- componentId: string;
789
- inputRefEl: _angular_core.Signal<HTMLInputElement | null | undefined>;
790
- focusEffect: _angular_core.EffectRef;
791
- openAbortController: AbortController | null;
792
- isOpenEffect: _angular_core.EffectRef;
793
- _inputValue: string;
794
- inputValueEffect: _angular_core.EffectRef;
795
- inputRefElEffect: _angular_core.EffectRef;
796
- selectedLabels: _angular_core.Signal<string>;
797
- inputState: _angular_core.Signal<"open" | "closed" | "selected" | "loading" | "open-searching" | "searching">;
798
- hasSearch: _angular_core.Signal<boolean>;
799
- ngOnInit(): void;
800
- setInitInput(): void;
801
- setSelectedOptionsFromValue(value: string): void;
802
- setInputValueFromOptions(options: unknown[]): void;
803
- getValue(option: unknown): unknown;
804
- getLabel(option: unknown): unknown;
805
- getOptionId(index: number): string;
806
- toggleOptionByIndex(optionIndex: number, event?: MouseEvent, enterKey?: boolean): void;
807
- removeSelectedOptionByIndex($event: MouseEvent, optionRemoveIndex: number): void;
808
- isSelected(optionIndex: number): boolean;
809
- open(): void;
810
- close(): void;
811
- clear($event?: MouseEvent): void;
812
- updateInputElValue(): void;
813
- ngOnDestroy(): void;
814
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipSelect, never>;
815
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipSelect, "sh-select", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "asFreeText": { "alias": "asFreeText"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "optionTitle": { "alias": "optionTitle"; "required": false; "isSignal": true; }; "freeTextTitle": { "alias": "freeTextTitle"; "required": false; "isSignal": true; }; "freeTextPlaceholder": { "alias": "freeTextPlaceholder"; "required": false; "isSignal": true; }; "validateFreeText": { "alias": "validateFreeText"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "lazySearch": { "alias": "lazySearch"; "required": false; "isSignal": true; }; "inlineSearch": { "alias": "inlineSearch"; "required": false; "isSignal": true; }; "asText": { "alias": "asText"; "required": false; "isSignal": true; }; "isClearable": { "alias": "isClearable"; "required": false; "isSignal": true; }; "selectMultiple": { "alias": "selectMultiple"; "required": false; "isSignal": true; }; "optionTemplate": { "alias": "optionTemplate"; "required": false; "isSignal": true; }; "selectedOptionTemplate": { "alias": "selectedOptionTemplate"; "required": false; "isSignal": true; }; "placeholderTemplate": { "alias": "placeholderTemplate"; "required": false; "isSignal": true; }; "freeTextOptionTemplate": { "alias": "freeTextOptionTemplate"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "selectedOptions": { "alias": "selectedOptions"; "required": false; "isSignal": true; }; }, { "readonly": "readonlyChange"; "disabled": "disabledChange"; "isOpen": "isOpenChange"; "isLoading": "isLoadingChange"; "options": "optionsChange"; "selectedOptions": "selectedOptionsChange"; "cleared": "cleared"; "onAddNewFreeTextOption": "onAddNewFreeTextOption"; }, ["inlineTemplate"], ["label", "[prefix]", "[boxPrefix]", "input", "textarea"], true, never>;
816
- }
817
-
818
- type ShipSidenavType = 'overlay' | 'simple' | '';
819
- declare function watchHostClass(className: string): WritableSignal<boolean>;
820
- declare class ShipSidenav {
821
- #private;
822
- openWidth: number;
823
- openWidthTreshold: number;
824
- disableDrag: _angular_core.InputSignal<boolean>;
825
- isOpen: _angular_core.ModelSignal<boolean>;
826
- isOverlay: WritableSignal<boolean>;
827
- dragImageElement: _angular_core.Signal<ElementRef<HTMLDivElement>>;
828
- dragIsEnding: WritableSignal<boolean>;
829
- dragIsOnScreen: WritableSignal<boolean>;
830
- isDragging: WritableSignal<boolean>;
831
- dragPositionX: WritableSignal<number>;
832
- dragActualPositionX: _angular_core.Signal<number>;
833
- draggingStyle: _angular_core.Signal<string | null>;
834
- draggingEffect: _angular_core.EffectRef;
835
- drop(e: DragEvent): void;
836
- dragEnd(e: DragEvent): void;
837
- dragEnter(): void;
838
- dragLeave(): void;
839
- dragStart(e: DragEvent): void;
840
- drag(e: DragEvent): void;
841
- touchStart(e: TouchEvent): void;
842
- touchMove(e: TouchEvent): void;
843
- touchEnd(e: TouchEvent): void;
844
- touchCancel(e: TouchEvent): void;
845
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipSidenav, never>;
846
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipSidenav, "sh-sidenav", never, { "disableDrag": { "alias": "disableDrag"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; }, never, ["[sidenav]", "[sidenav-closed-topbar]", "*"], true, never>;
847
- }
848
-
849
- type AfterDropResponse = {
850
- fromIndex: number;
851
- toIndex: number;
852
- };
853
- type CrossDropResponse = {
854
- previousContainer: ShipSortable;
855
- currentContainer: ShipSortable;
856
- previousIndex: number;
857
- currentIndex: number;
858
- };
859
- type ShipDropEvent = {
860
- previousContainer: ShipSortable;
861
- container: ShipSortable;
862
- previousIndex: number;
863
- currentIndex: number;
864
- };
865
- interface SortableManagerConfig {
866
- /**
867
- * If provided, this hook is evaluated before the Signals are modified.
868
- * Return `true`/`Observable<true>` to accept the drop, or false to reject.
869
- */
870
- onBeforeDrop?: (event: ShipDropEvent) => boolean | Promise<boolean> | Observable<boolean>;
871
- }
872
- declare function createSortableManager<T>(signals: WritableSignal<T[]> | Record<string, WritableSignal<T[]>>, config?: SortableManagerConfig): {
873
- drop(event: ShipDropEvent): Promise<void>;
874
- };
875
- declare class ShipSortable implements OnInit, OnDestroy {
876
- #private;
877
- shSortable: _angular_core.InputSignal<any>;
878
- sortableGroup: _angular_core.InputSignal<string | undefined>;
879
- sortDrop: _angular_core.OutputEmitterRef<ShipDropEvent>;
880
- afterDrop: _angular_core.OutputEmitterRef<AfterDropResponse>;
881
- crossDrop: _angular_core.OutputEmitterRef<CrossDropResponse>;
882
- dragStartIndex: WritableSignal<number>;
883
- dragToIndex: WritableSignal<number>;
884
- initialPositions: WritableSignal<{
885
- x: number;
886
- y: number;
887
- width: number;
888
- height: number;
889
- }[]>;
890
- dragables: WritableSignal<HTMLElement[]>;
891
- static activeSource: ShipSortable | null;
892
- static activeDraggedElement: HTMLElement | null;
893
- static activeTarget: ShipSortable | null;
894
- abortController: AbortController | null;
895
- isDropping: boolean;
896
- isCrossTarget: boolean;
897
- draggingEffect: _angular_core.EffectRef;
898
- draggablesEffect: _angular_core.EffectRef;
899
- getIndexOfElement(element: HTMLElement): number;
900
- dragStart(e: DragEvent): void;
901
- ngOnInit(): void;
902
- dragEnter(e: DragEvent): void;
903
- dragLeave(e: DragEvent): void;
904
- dragOver(e: DragEvent): void;
905
- getVisualIndexOfElement(i: number): number;
906
- drop(): void;
907
- dragEnd(): void;
908
- ngOnDestroy(): void;
909
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipSortable, never>;
910
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ShipSortable, "[shSortable]", never, { "shSortable": { "alias": "shSortable"; "required": false; "isSignal": true; }; "sortableGroup": { "alias": "sortableGroup"; "required": false; "isSignal": true; }; }, { "sortDrop": "sortDrop"; "afterDrop": "afterDrop"; "crossDrop": "crossDrop"; }, never, never, true, never>;
911
- }
912
- declare function moveIndex<T = any>(array: T[], event: Pick<ShipDropEvent, 'previousIndex' | 'currentIndex'> | Pick<AfterDropResponse, 'fromIndex' | 'toIndex'>): T[];
913
- declare function transferArrayItem<T = any>(currentArray: T[], targetArray: T[], currentIndex: number, targetIndex: number): void;
914
-
915
- declare class ShipSpinner {
916
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
917
- hostClasses: _angular_core.Signal<string>;
918
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipSpinner, never>;
919
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipSpinner, "sh-spinner", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
920
- }
921
-
922
- declare class ShipStepper extends ShipSelectionGroup<string> {
923
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
924
- constructor();
925
- hostClasses: _angular_core.Signal<string>;
926
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipStepper, never>;
927
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipStepper, "sh-stepper", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
928
- }
929
-
930
- declare class ShipResize {
931
- #private;
932
- resizable: _angular_core.InputSignal<boolean>;
933
- minWidth: _angular_core.InputSignal<number>;
934
- maxWidth: _angular_core.InputSignal<number | null>;
935
- ngOnInit(): void;
936
- onMouseMove(event: MouseEvent): void;
937
- onMouseUp(event: MouseEvent): void;
938
- onClick(event: MouseEvent): void;
939
- ngOnDestroy(): void;
940
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipResize, never>;
941
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ShipResize, "[shResize]", never, { "resizable": { "alias": "resizable"; "required": false; "isSignal": true; }; "minWidth": { "alias": "minWidth"; "required": false; "isSignal": true; }; "maxWidth": { "alias": "maxWidth"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
942
- }
943
- declare class ShipSort {
944
- #private;
945
- shSort: _angular_core.InputSignal<string | undefined>;
946
- sortAsc: _angular_core.Signal<boolean>;
947
- sortDesc: _angular_core.Signal<boolean>;
948
- toggleSort(): void;
949
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipSort, never>;
950
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ShipSort, "[shSort]", never, { "shSort": { "alias": "shSort"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
951
- }
952
- declare class ShipStickyColumns {
953
- #private;
954
- shStickyColumns: _angular_core.InputSignal<"start" | "end" | (string & {})>;
955
- ngAfterContentInit(): void;
956
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipStickyColumns, never>;
957
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ShipStickyColumns, "[shStickyColumns]", never, { "shStickyColumns": { "alias": "shStickyColumns"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
958
- }
959
- type ScrollState = -1 | 0 | 1;
960
- declare class ShipTable {
961
- #private;
962
- loading: _angular_core.InputSignal<boolean>;
963
- data: _angular_core.InputSignal<any>;
964
- dataChange: _angular_core.OutputEmitterRef<any>;
965
- sortByColumn: _angular_core.ModelSignal<string | null>;
966
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
967
- variant: _angular_core.InputSignal<"" | "type-a" | "type-b" | null>;
968
- hostClasses: _angular_core.Signal<string>;
969
- thead: _angular_core.Signal<ElementRef<HTMLTableSectionElement> | undefined>;
970
- tbody: _angular_core.Signal<ElementRef<HTMLTableSectionElement> | undefined>;
971
- columns: {
972
- signal: _angular_core.Signal<HTMLTableColElement[]>;
973
- destroy: () => void;
974
- };
975
- stickyHeaderHeight: _angular_core.Signal<number>;
976
- bodyEffect: _angular_core.EffectRef;
977
- resizing: _angular_core.WritableSignal<boolean>;
978
- sizeTrigger: _angular_core.WritableSignal<boolean>;
979
- scrollXState: _angular_core.WritableSignal<ScrollState>;
980
- scrollYState: _angular_core.WritableSignal<ScrollState>;
981
- canScrollX: _angular_core.WritableSignal<boolean>;
982
- canScrollY: _angular_core.WritableSignal<boolean>;
983
- columnSizes: _angular_core.Signal<string>;
984
- updateColumnSizes(): void;
985
- onScroll(): void;
986
- onResize(event: Event): void;
987
- ngAfterViewInit(): void;
988
- e: _angular_core.EffectRef;
989
- toggleSort(column: string): void;
990
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipTable, never>;
991
- 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>;
992
- }
993
-
994
- declare class ShipTabs extends ShipSelectionGroup<string> {
995
- id: string;
996
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
997
- variant: _angular_core.InputSignal<"" | "simple" | "outlined" | "flat" | "raised" | null>;
998
- constructor();
999
- hostClasses: _angular_core.Signal<string>;
1000
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipTabs, never>;
1001
- 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>;
1002
- }
1003
-
1004
- type ShipThemeOption = 'light' | 'dark' | null;
1005
-
1006
- declare class ShipThemeToggle {
1007
- #private;
1008
- theme: _angular_core.Signal<ShipThemeOption>;
1009
- toggleTheme(): void;
1010
- setTheme(theme: ShipThemeOption): void;
1011
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipThemeToggle, never>;
1012
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipThemeToggle, "ship-theme-toggle", never, {}, {}, never, never, true, never>;
1013
- }
1014
-
1015
- declare class ShipToggleCard {
1016
- #private;
1017
- disableToggle: _angular_core.InputSignal<boolean>;
1018
- isActive: _angular_core.ModelSignal<boolean | undefined>;
1019
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
1020
- variant: _angular_core.InputSignal<"" | "type-a" | "type-b" | "type-c" | null>;
1021
- hostClasses: _angular_core.Signal<string>;
1022
- toggle(): void;
1023
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipToggleCard, never>;
1024
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipToggleCard, "sh-toggle-card", never, { "disableToggle": { "alias": "disableToggle"; "required": false; "isSignal": true; }; "isActive": { "alias": "isActive"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, { "isActive": "isActiveChange"; }, never, ["[title]", "*"], true, never>;
1025
- }
1026
-
1027
- declare class ShipToggle {
1028
- private readonly _elementRef;
1029
- internalInput: _angular_core.Signal<ElementRef<HTMLInputElement> | undefined>;
1030
- projectedInputs: _angular_core.Signal<HTMLInputElement[]>;
1031
- checked: _angular_core.ModelSignal<boolean>;
1032
- color: _angular_core.InputSignal<"" | "primary" | "accent" | "warn" | "error" | "success" | null>;
1033
- variant: _angular_core.InputSignal<"" | "simple" | "outlined" | "flat" | "raised" | null>;
1034
- readonly: _angular_core.InputSignal<boolean>;
1035
- disabled: _angular_core.InputSignal<boolean>;
1036
- noInternalInput: _angular_core.InputSignal<boolean>;
1037
- protected onInternalInputChange(event: Event): void;
1038
- hostClasses: _angular_core.Signal<string>;
1039
- protected onEnter(event: Event): void;
1040
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipToggle, never>;
1041
- 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>;
1042
- }
1043
-
1044
- declare class ShipVirtualScroll {
1045
- #private;
1046
- viewportRef: _angular_core.Signal<ElementRef<HTMLDivElement>>;
1047
- itemElements: _angular_core.Signal<readonly ElementRef<any>[]>;
1048
- bufferSize: _angular_core.WritableSignal<number>;
1049
- itemHeights: _angular_core.WritableSignal<number[]>;
1050
- startIndex: _angular_core.WritableSignal<number>;
1051
- endIndex: _angular_core.WritableSignal<number>;
1052
- translateY: _angular_core.WritableSignal<number>;
1053
- totalHeight: _angular_core.Signal<number>;
1054
- numberOfRenderedItems: _angular_core.WritableSignal<number>;
1055
- ngAfterViewInit(): void;
1056
- onScroll(): void;
1057
- ngOnDestroy(): void;
1058
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipVirtualScroll, never>;
1059
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipVirtualScroll, "sh-virtual-scroll", never, {}, {}, never, ["*"], true, never>;
1060
- }
1061
-
1062
- declare class ShipFormFieldExperimental {
1063
- firstInput: _angular_core.WritableSignal<string | undefined>;
1064
- hello: _angular_core.EffectRef;
1065
- myClick(): void;
1066
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipFormFieldExperimental, never>;
1067
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ShipFormFieldExperimental, "sh-form-field-experimental", never, {}, {}, never, ["*"], true, never>;
1068
- }
2
+ import { OnDestroy, TemplateRef, ElementRef, Signal, WritableSignal, Injector, InjectionToken } from '@angular/core';
1069
3
 
1070
4
  declare class ShipFileDragDrop {
1071
5
  filesOver: _angular_core.WritableSignal<boolean>;
@@ -1131,6 +65,8 @@ declare class ShipTooltip implements OnDestroy {
1131
65
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ShipTooltip, "[shTooltip]", never, { "shTooltip": { "alias": "shTooltip"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
1132
66
  }
1133
67
 
68
+ declare function classMutationSignal(_element?: HTMLElement | null): Signal<string>;
69
+
1134
70
  declare function hslToRgbExact(h: number, s: number, l: number): [number, number, number];
1135
71
  declare function hsvToRgbExact(h: number, s: number, v: number): [number, number, number];
1136
72
  declare function rgbToHsv(r: number, g: number, b: number): {
@@ -1157,6 +93,63 @@ declare function hslToOklch(h: number, s: number, l: number): {
1157
93
  h: number;
1158
94
  };
1159
95
 
96
+ declare function contentProjectionSignal<T = HTMLElement>(querySelector: string, options?: MutationObserverInit): Signal<T[]>;
97
+
98
+ declare function createFormInputSignal<T extends HTMLInputElement | HTMLTextAreaElement>(formEl?: Signal<ElementRef<T> | undefined>, elementTags?: string[]): WritableSignal<string | undefined>;
99
+
100
+ interface InputSignalOptions<T> {
101
+ debounce?: number;
102
+ initialValue?: T | null | undefined;
103
+ transform?: (value: string) => T | null | undefined;
104
+ compare?: (prev: T | null | undefined, curr: T | null | undefined) => boolean;
105
+ forceType?: 'number' | 'boolean' | 'string';
106
+ injector?: Injector;
107
+ returnPreviousValue?: boolean;
108
+ }
109
+ declare function createInputSignal<T>(input: Signal<ElementRef<HTMLInputElement | HTMLTextAreaElement> | undefined>, options?: InputSignalOptions<T>): WritableSignal<T | null | undefined>;
110
+
111
+ declare function observeFirstChild<T extends HTMLElement>(parentEl: ElementRef<HTMLElement>, elementTags: string[]): Signal<ElementRef<T> | null>;
112
+ declare function observeChildren<T extends HTMLElement>(parentEl: ElementRef<HTMLElement> | Signal<ElementRef<HTMLElement> | null | undefined>, elementTags: string[] | Signal<string[]>): {
113
+ signal: Signal<T[]>;
114
+ destroy: () => void;
115
+ };
116
+
117
+ declare function generateUniqueId(): string;
118
+
119
+ declare function shipComponentClasses(componentName: string, inputs: {
120
+ color?: Signal<any>;
121
+ variant?: Signal<any>;
122
+ size?: Signal<any>;
123
+ sharp?: Signal<any>;
124
+ dynamic?: Signal<any>;
125
+ readonly?: Signal<any>;
126
+ alwaysShow?: Signal<any>;
127
+ }): Signal<string>;
128
+
129
+ declare const __SHIP_COLORS: readonly ["primary", "accent", "warn", "error", "success", ""];
130
+ type ShipColor = (typeof __SHIP_COLORS)[number];
131
+ declare const __SHIP_SIZES: readonly ["small", "xsmall", ""];
132
+ type ShipSize = (typeof __SHIP_SIZES)[number];
133
+ declare const __SHIP_BUTTON_SIZES: readonly ["small", "xsmall", ""];
134
+ type ShipButtonSize = (typeof __SHIP_BUTTON_SIZES)[number];
135
+ declare const __SHIP_ICON_SIZES: readonly ["small", "large", ""];
136
+ type ShipIconSize = (typeof __SHIP_ICON_SIZES)[number];
137
+ declare const __SHIP_SHEET_VARIANTS: readonly ["simple", "outlined", "flat", "raised", ""];
138
+ type ShipSheetVariant = (typeof __SHIP_SHEET_VARIANTS)[number];
139
+ declare const __SHIP_TYPE_VARIANTS: readonly ["type-a", "type-b", "type-c", "type-d", ""];
140
+ type ShipTypeVariant = (typeof __SHIP_TYPE_VARIANTS)[number];
141
+ declare const __SHIP_TABLE_VARIANTS: readonly ["type-a", "type-b", ""];
142
+ type ShipTableVariant = (typeof __SHIP_TABLE_VARIANTS)[number];
143
+ declare const __SHIP_CARD_VARIANTS: readonly ["type-a", "type-b", "type-c", ""];
144
+ type ShipCardVariant = (typeof __SHIP_CARD_VARIANTS)[number];
145
+ declare const __SHIP_BUTTON_GROUP_VARIANTS: readonly [""];
146
+ type ShipButtonGroupVariant = (typeof __SHIP_BUTTON_GROUP_VARIANTS)[number];
147
+ declare const __SHIP_FORM_FIELD_VARIANTS: readonly ["base", "horizontal", "auto-width", "autosize", ""];
148
+ type ShipFormFieldVariant = (typeof __SHIP_FORM_FIELD_VARIANTS)[number];
149
+ declare const __SHIP_RANGE_SLIDER_VARIANTS: readonly ["simple", "base", "thick", "outlined", "flat", "raised", ""];
150
+ type ShipRangeSliderVariant = (typeof __SHIP_RANGE_SLIDER_VARIANTS)[number];
151
+ type ShipVariant = ShipSheetVariant | ShipTypeVariant;
152
+
1160
153
  declare const defaultThemeColors: Record<string, string>;
1161
154
  declare const SHIP_CONFIG: InjectionToken<ShipConfig>;
1162
155
  interface ShipComponentConfig {
@@ -1172,6 +165,9 @@ interface ShipRangeSliderConfig extends ShipComponentConfig {
1172
165
  sharp?: boolean;
1173
166
  alwaysShow?: boolean;
1174
167
  }
168
+ interface ShipIconConfig extends ShipComponentConfig {
169
+ disableUnfocus?: boolean;
170
+ }
1175
171
  interface ShipConfigColors {
1176
172
  primary?: string;
1177
173
  accent?: string;
@@ -1206,7 +202,7 @@ interface ShipConfig {
1206
202
  radio?: ShipComponentConfig;
1207
203
  toggle?: ShipComponentConfig;
1208
204
  formField?: ShipComponentConfig;
1209
- icon?: ShipComponentConfig;
205
+ icon?: ShipIconConfig;
1210
206
  stepper?: ShipComponentConfig;
1211
207
  select?: ShipComponentConfig;
1212
208
  accordion?: ShipComponentConfig;
@@ -1221,5 +217,27 @@ interface ShipConfig {
1221
217
  sidenavType?: 'overlay' | 'simple';
1222
218
  }
1223
219
 
1224
- export { SHIP_CONFIG, ShipAccordion, ShipAlert, ShipAlertContainer, ShipAlertModule, ShipAlertService, ShipBlueprint, ShipButton, ShipButtonGroup, ShipCard, ShipCheckbox, ShipChip, ShipColorPicker, ShipColorPickerInput, 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, __SHIP_BUTTON_GROUP_VARIANTS, __SHIP_BUTTON_SIZES, __SHIP_CARD_VARIANTS, __SHIP_COLORS, __SHIP_FORM_FIELD_VARIANTS, __SHIP_ICON_SIZES, __SHIP_RANGE_SLIDER_VARIANTS, __SHIP_SHEET_VARIANTS, __SHIP_SIZES, __SHIP_TABLE_VARIANTS, __SHIP_TYPE_VARIANTS, createSortableManager, defaultThemeColors, hslToOklch, hslToRgbExact, hsvToRgbExact, moveIndex, rgbToHex, rgbToHsl, rgbToHsv, rgbToOklch, rgbaToHex8, transferArrayItem, watchHostClass };
1225
- export type { AfterDropResponse, BlueprintNode, ComponentClosedType, ComponentDataType, Coordinates, CrossDropResponse, Exact, ShipAlertItem, ShipAlertItemInternal, ShipAlertType, ShipButtonGroupVariant, ShipButtonSize, ShipCardVariant, ShipChipConfig, ShipColor, ShipComponentConfig, ShipConfig, ShipConfigColors, ShipConfigDistributions, ShipDialogInstance, ShipDialogOptions, ShipDialogServiceOptions, ShipDialogTemplateInstance, ShipDropEvent, ShipFormFieldVariant, ShipIconSize, ShipPopoverOptions, ShipProgressBarMode, ShipRangeSliderConfig, ShipRangeSliderVariant, ShipSheetVariant, ShipSidenavType, ShipSize, ShipTableVariant, ShipTypeVariant, ShipVariant, SortableManagerConfig };
220
+ declare abstract class ShipSelectionGroup<T = any> {
221
+ protected readonly itemSelector: string;
222
+ protected readonly activeClass: string;
223
+ protected readonly options?: {
224
+ hostRole?: string;
225
+ itemRole?: string;
226
+ } | undefined;
227
+ protected readonly hostElement: any;
228
+ protected items: _angular_core.Signal<HTMLElement[]>;
229
+ readonly value: _angular_core.ModelSignal<T | null>;
230
+ readonly closable: _angular_core.InputSignalWithTransform<boolean, string | boolean>;
231
+ readonly manualActivation: _angular_core.InputSignalWithTransform<boolean, string | boolean>;
232
+ constructor(itemSelector: string, activeClass: string, options?: {
233
+ hostRole?: string;
234
+ itemRole?: string;
235
+ } | undefined);
236
+ protected onClick(target: EventTarget | null): void;
237
+ protected onKeyDown(event: KeyboardEvent): void;
238
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ShipSelectionGroup<any>, never>;
239
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ShipSelectionGroup<any>, never, never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "closable": { "alias": "closable"; "required": false; "isSignal": true; }; "manualActivation": { "alias": "manualActivation"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
240
+ }
241
+
242
+ export { SHIP_CONFIG, ShipFileDragDrop, ShipInputMask, ShipPreventWheel, ShipSelectionGroup, ShipTooltip, ShipTooltipWrapper, __SHIP_BUTTON_GROUP_VARIANTS, __SHIP_BUTTON_SIZES, __SHIP_CARD_VARIANTS, __SHIP_COLORS, __SHIP_FORM_FIELD_VARIANTS, __SHIP_ICON_SIZES, __SHIP_RANGE_SLIDER_VARIANTS, __SHIP_SHEET_VARIANTS, __SHIP_SIZES, __SHIP_TABLE_VARIANTS, __SHIP_TYPE_VARIANTS, classMutationSignal, contentProjectionSignal, createFormInputSignal, createInputSignal, defaultThemeColors, generateUniqueId, hslToOklch, hslToRgbExact, hsvToRgbExact, observeChildren, observeFirstChild, rgbToHex, rgbToHsl, rgbToHsv, rgbToOklch, rgbaToHex8, shipComponentClasses };
243
+ export type { ShipButtonGroupVariant, ShipButtonSize, ShipCardVariant, ShipChipConfig, ShipColor, ShipComponentConfig, ShipConfig, ShipConfigColors, ShipConfigDistributions, ShipFormFieldVariant, ShipIconConfig, ShipIconSize, ShipRangeSliderConfig, ShipRangeSliderVariant, ShipSheetVariant, ShipSize, ShipTableVariant, ShipTypeVariant, ShipVariant };