@educarehq/solaris-components 0.2.5 → 0.2.7

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,13 +1,13 @@
1
1
  {
2
2
  "name": "@educarehq/solaris-components",
3
- "version": "0.2.5",
3
+ "version": "0.2.7",
4
4
  "peerDependencies": {
5
5
  "@angular/core": "^21.1.0",
6
6
  "intl-tel-input": "^26.0.9",
7
7
  "@angular/common": "^21.1.0",
8
8
  "libphonenumber-js": "^1.12.36",
9
9
  "@educarehq/solaris-tokens": "^0.1.2",
10
- "@educarehq/solaris-services": "^0.1.6"
10
+ "@educarehq/solaris-services": "^0.1.7"
11
11
  },
12
12
  "dependencies": {
13
13
  "tslib": "^2.3.0"
@@ -0,0 +1,286 @@
1
+ [solaris-button] {
2
+ --sb-border: transparent;
3
+ --sb-active-filter: none;
4
+ --sb-fill: var(--sb-tone);
5
+ --solaris-button-px: 1.2rem;
6
+ --solaris-button-height: 3.4rem;
7
+ --sb-hover-filter: brightness(1.125);
8
+ --sb-tone: var(--solaris-color-primary);
9
+ --solaris-button-fs: var(--solaris-fs-16);
10
+ --solaris-button-gap: var(--solaris-space-2);
11
+ --sb-tint-base: var(--solaris-color-surface);
12
+ --sb-ink: var(--solaris-color-primary-contrast);
13
+ --solaris-button-radius: var(--solaris-radius-sm);
14
+ --sb-active-bg: color-mix(in srgb, var(--sb-tone) 92%, white);
15
+ --solaris-button-focus-outline: color-mix(in srgb, var(--sb-tone) 55%, white 45%);
16
+
17
+ cursor: pointer;
18
+ line-height: 1.1;
19
+ font-weight: 600;
20
+ align-items: center;
21
+ color: var(--sb-ink);
22
+ text-rendering: auto;
23
+ display: inline-flex;
24
+ box-sizing: border-box;
25
+ justify-content: center;
26
+ transition: all 300ms ease;
27
+ background: var(--sb-fill);
28
+ gap: var(--solaris-button-gap);
29
+ border: 1px solid var(--sb-border);
30
+ font-size: var(--solaris-button-fs);
31
+ padding: 0 var(--solaris-button-px);
32
+ height: var(--solaris-button-height);
33
+ border-radius: var(--solaris-button-radius);
34
+ font-family: var(--solaris-font-sans-primary), system-ui;
35
+ }
36
+
37
+ button[solaris-button] {
38
+ appearance: none;
39
+ -webkit-appearance: none;
40
+ }
41
+ button[solaris-button]::-moz-focus-inner {
42
+ border: 0;
43
+ padding: 0;
44
+ }
45
+
46
+ [solaris-button]:hover {
47
+ filter: var(--sb-hover-filter);
48
+ }
49
+
50
+ [solaris-button]:active {
51
+ background: var(--sb-active-bg);
52
+ filter: var(--sb-active-filter);
53
+ }
54
+
55
+ [solaris-button]:focus-visible {
56
+ outline-offset: 0.2rem;
57
+ outline: 0.2rem solid var(--solaris-button-focus-outline);
58
+ }
59
+
60
+ [solaris-button][disabled],
61
+ [solaris-button][aria-disabled="true"] {
62
+ opacity: 0.55;
63
+ transform: none;
64
+ cursor: not-allowed;
65
+ }
66
+
67
+ [solaris-button] i.ph,
68
+ [solaris-button] svg {
69
+ flex: 0 0 auto;
70
+ width: fit-content;
71
+ height: fit-content;
72
+ }
73
+
74
+ [solaris-button][aria-busy="true"] {
75
+ position: relative;
76
+ color: transparent;
77
+ pointer-events: none;
78
+ }
79
+ [solaris-button][aria-busy="true"] i.ph,
80
+ [solaris-button][aria-busy="true"] svg {
81
+ visibility: hidden;
82
+ }
83
+ [solaris-button][aria-busy="true"]::after {
84
+ content: "";
85
+ width: 1.6rem;
86
+ height: 1.6rem;
87
+ position: absolute;
88
+ border-radius: var(--solaris-radius-full);
89
+ animation: solaris-spin 0.8s linear infinite;
90
+ border: 0.2rem solid color-mix(in srgb, var(--sb-ink) 35%, transparent);
91
+ border-top-color: var(--sb-ink);
92
+ }
93
+
94
+ @keyframes solaris-spin {
95
+ to { transform: rotate(360deg); }
96
+ }
97
+
98
+ [solaris-button][data-size="sm"] {
99
+ --solaris-button-px: 1rem;
100
+ --solaris-button-height: 2.8rem;
101
+ --solaris-button-fs: var(--solaris-fs-18);
102
+ }
103
+ [solaris-button][data-size="md"] {
104
+ --solaris-button-px: 1.2rem;
105
+ --solaris-button-height: 3.4rem;
106
+ --solaris-button-fs: var(--solaris-fs-20);
107
+ }
108
+ [solaris-button][data-size="lg"] {
109
+ --solaris-button-px: 1.4rem;
110
+ --solaris-button-height: 4rem;
111
+ --solaris-button-fs: var(--solaris-fs-22);
112
+ }
113
+
114
+ [solaris-button][data-icon-only="true"] {
115
+ padding: 0;
116
+ width: var(--solaris-button-height);
117
+ }
118
+ [solaris-button][data-full-width="true"] {
119
+ width: 100%;
120
+ }
121
+
122
+ [solaris-button]:is([data-color="primary"], [color="primary"]) {
123
+ --sb-tone: var(--solaris-color-primary);
124
+ --sb-fill: var(--solaris-color-primary);
125
+ --sb-border: var(--solaris-color-primary-tint);
126
+ --sb-ink: var(--solaris-color-primary-contrast);
127
+ }
128
+
129
+ [solaris-button]:is([data-color="surface"], [color="surface"]) {
130
+ --sb-hover-filter: brightness(1.05);
131
+ --sb-ink: var(--solaris-color-text);
132
+ --sb-tone: var(--solaris-color-text);
133
+ --sb-border: var(--solaris-color-border);
134
+ --sb-fill: var(--solaris-color-surface-2);
135
+ --sb-tint-base: var(--solaris-color-surface);
136
+ }
137
+
138
+ [solaris-button]:is([data-color="success"], [color="success"]) {
139
+ --sb-ink: #fff;
140
+ --sb-tone: var(--solaris-color-success);
141
+ --sb-border: color-mix(in srgb, var(--sb-tone) 60%, white);
142
+ --sb-fill: color-mix(in srgb, var(--solaris-color-success) 90%, #2f426b);
143
+ }
144
+
145
+ [solaris-button]:is([data-color="warning"], [color="warning"]) {
146
+ --sb-ink: #fff;
147
+ --sb-tone: var(--solaris-color-warning);
148
+ --sb-border: color-mix(in srgb, var(--sb-tone) 60%, white);
149
+ --sb-fill: color-mix(in srgb, var(--solaris-color-warning) 90%, #94913e);
150
+ }
151
+
152
+ [solaris-button]:is([data-color="error"], [color="error"]) {
153
+ --sb-ink: #fff;
154
+ --sb-tone: var(--solaris-color-error);
155
+ --sb-border: color-mix(in srgb, var(--sb-tone) 60%, white);
156
+ --sb-fill: color-mix(in srgb, var(--solaris-color-error) 90%, #662931);
157
+ }
158
+
159
+ [solaris-button]:is([data-color="info"], [color="info"]) {
160
+ --sb-ink: #fff;
161
+ --sb-tone: var(--solaris-color-info);
162
+ --sb-border: color-mix(in srgb, var(--sb-tone) 60%, white);
163
+ --sb-fill: color-mix(in srgb, var(--solaris-color-info) 90%, #662931);
164
+ }
165
+
166
+ [solaris-button]:is([data-color="gradient"], [color="gradient"]) {
167
+ --sb-ink: #fff;
168
+ --sb-active-bg: var(--sb-fill);
169
+ --sb-active-filter: brightness(1.06);
170
+ --sb-tone: var(--solaris-color-primary);
171
+ --sb-fill: var(--solaris-color-gradient);
172
+ --sb-border: color-mix(in srgb, var(--solaris-color-primary-tint) 80%, white);
173
+ }
174
+
175
+ [solaris-button][data-color="custom"] {
176
+ --sb-tone: var(--sb-custom);
177
+ --sb-ink: var(--sb-custom-ink, #fff);
178
+ --sb-border: color-mix(in srgb, var(--sb-tone) 70%, white);
179
+ }
180
+
181
+ [solaris-button][data-custom-ink="true"] {
182
+ --sb-ink: var(--sb-custom-ink);
183
+ }
184
+
185
+ [solaris-button]:is([data-variant="outline"], [variant="outline"]) {
186
+ --sb-fill: transparent;
187
+ --sb-hover-filter: none;
188
+ --sb-active-filter: none;
189
+ --sb-ink: var(--sb-tone);
190
+ --sb-active-bg: color-mix(in srgb, var(--sb-tone) 16%, transparent);
191
+ --sb-border: color-mix(in srgb, var(--sb-tone) 40%, var(--solaris-color-border));
192
+ }
193
+
194
+ [solaris-button]:is([data-variant="outline"], [variant="outline"]):hover {
195
+ background: color-mix(in srgb, var(--sb-tone) 10%, transparent);
196
+ }
197
+
198
+ [solaris-button]:is([data-variant="ghost"], [variant="ghost"]) {
199
+ --sb-fill: transparent;
200
+ --sb-hover-filter: none;
201
+ --sb-border: transparent;
202
+ --sb-ink: var(--sb-tone);
203
+ --sb-active-filter: none;
204
+ --sb-active-bg: color-mix(in srgb, var(--sb-tone) 14%, transparent);
205
+ }
206
+
207
+ [solaris-button]:is([data-variant="ghost"], [variant="ghost"]):hover {
208
+ background: color-mix(in srgb, var(--solaris-color-surface-2) 80%, transparent);
209
+ }
210
+ [solaris-button]:is([data-variant="ghost"], [variant="ghost"]):active {
211
+ background: color-mix(in srgb, var(--solaris-color-surface-2) 70%, transparent);
212
+ }
213
+
214
+ [solaris-button]:is([data-variant="soft"], [variant="soft"]) {
215
+ --sb-hover-filter: none;
216
+ --sb-border: transparent;
217
+ --sb-ink: var(--sb-tone);
218
+ --sb-active-filter: none;
219
+ background: color-mix(in srgb, var(--sb-tone) 14%, var(--sb-tint-base));
220
+ --sb-active-bg: color-mix(in srgb, var(--sb-tone) 22%, var(--sb-tint-base));
221
+ }
222
+
223
+ [solaris-button]:is([data-variant="soft"], [variant="soft"]):hover {
224
+ background: color-mix(in srgb, var(--sb-tone) 18%, var(--sb-tint-base));
225
+ }
226
+
227
+ [solaris-button]:is([data-variant="soft"], [variant="soft"]):active {
228
+ background: color-mix(in srgb, var(--sb-tone) 22%, var(--sb-tint-base));
229
+ }
230
+
231
+ [solaris-button]:is([data-color="gradient"], [color="gradient"]):is([data-variant="soft"],
232
+ [variant="soft"]) {
233
+ --sb-tint-base: var(--solaris-color-bg);
234
+ background: color-mix(in srgb, var(--sb-tone) 14%, var(--sb-tint-base));
235
+ }
236
+ [solaris-button]:is([data-color="gradient"], [color="gradient"]):is([data-variant="soft"],
237
+ [variant="soft"]):hover {
238
+ background: color-mix(in srgb, var(--sb-tone) 18%, var(--sb-tint-base));
239
+ }
240
+ [solaris-button]:is([data-color="gradient"], [color="gradient"]):is([data-variant="soft"],
241
+ [variant="soft"]):active {
242
+ background: color-mix(in srgb, var(--sb-tone) 22%, var(--sb-tint-base));
243
+ }
244
+
245
+ [solaris-button-group] {
246
+ display: inline-flex;
247
+ align-items: stretch;
248
+ --solaris-button-group-radius: var(--solaris-radius-full);
249
+ }
250
+
251
+ [solaris-button-group] > [solaris-button] {
252
+ border-radius: 0;
253
+ }
254
+
255
+ [solaris-button-group] > [solaris-button]:first-child {
256
+ border-top-left-radius: var(--solaris-button-group-radius);
257
+ border-bottom-left-radius: var(--solaris-button-group-radius);
258
+ }
259
+
260
+ [solaris-button-group] > [solaris-button]:last-child {
261
+ border-top-right-radius: var(--solaris-button-group-radius);
262
+ border-bottom-right-radius: var(--solaris-button-group-radius);
263
+ }
264
+
265
+ [solaris-button-group] > [solaris-button] + [solaris-button] {
266
+ margin-left: -1px;
267
+ }
268
+
269
+ [solaris-button-group] > [solaris-button]:hover,
270
+ [solaris-button-group] > [solaris-button]:focus-visible {
271
+ z-index: 1;
272
+ position: relative;
273
+ }
274
+
275
+ [solaris-button][data-badge-overlay="true"] {
276
+ overflow: visible;
277
+ position: relative;
278
+ }
279
+
280
+ [solaris-button][data-badge-overlay="true"] .solaris-badge-host {
281
+ z-index: 2;
282
+ position: absolute;
283
+ inset-inline-end: 0;
284
+ inset-block-start: 0;
285
+ transform: translate(45%, -45%);
286
+ }
@@ -0,0 +1,14 @@
1
+ :is(input[solaris-input], textarea[solaris-input]) {
2
+ border: 0;
3
+ width: 100%;
4
+ outline: none;
5
+ background: transparent;
6
+ color: var(--atlas-color-text);
7
+ font-size: var(--solaris-fs-14);
8
+ font-family: var(--solaris-font-sans-secondary), system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
9
+ }
10
+
11
+ input[type="password"]::-ms-reveal,
12
+ input[type="password"]::-ms-clear {
13
+ display: none;
14
+ }
@@ -1,2 +1,2 @@
1
- @forward '../src/lib/forms/input-text/styles/input-text.styles';
2
- @forward '../src/lib/actions/button/styles/button.styles';
1
+ @forward './forms/input-text/input-text.styles';
2
+ @forward './actions/button/button.styles';
@@ -1,8 +1,8 @@
1
1
  import * as i0 from '@angular/core';
2
- import { ElementRef, TemplateRef, AfterContentInit, OnDestroy, EventEmitter, QueryList, OnChanges, SimpleChanges, OnInit, AfterViewInit, WritableSignal, InjectionToken } from '@angular/core';
3
- import { ControlValueAccessor, Validator, ValidationErrors, AbstractControl, NgControl } from '@angular/forms';
4
- import * as _educarehq_solaris_components from '@educarehq/solaris-components';
2
+ import { ElementRef, TemplateRef, AfterContentInit, OnDestroy, EventEmitter, QueryList, OnChanges, SimpleChanges, InjectionToken, EnvironmentProviders, OnInit, AfterViewInit, WritableSignal } from '@angular/core';
5
3
  import { SolarisTranslationParams } from '@educarehq/solaris-services';
4
+ import * as _educarehq_solaris_components from '@educarehq/solaris-components';
5
+ import { ControlValueAccessor, Validator, ValidationErrors, AbstractControl, NgControl } from '@angular/forms';
6
6
 
7
7
  declare class SolarisDropdownContentTriggerDirective {
8
8
  readonly elementRef: ElementRef<HTMLElement>;
@@ -260,6 +260,210 @@ declare class SolarisLoadingOverlay implements OnChanges {
260
260
  static ngAcceptInputType_lockScroll: any;
261
261
  }
262
262
 
263
+ declare class SolarisNotificationIntlService {
264
+ private readonly translationService;
265
+ private readonly notificationConfig;
266
+ private readonly translationConfig;
267
+ private readonly activeLang;
268
+ private readonly prefix;
269
+ translate(key: string, params?: SolarisTranslationParams): string;
270
+ close(): string;
271
+ expand(): string;
272
+ collapse(): string;
273
+ stopTimer(): string;
274
+ resumeTimer(): string;
275
+ paused(): string;
276
+ centerTitle(): string;
277
+ emptyCenter(): string;
278
+ clearHistory(): string;
279
+ autoClose(seconds: number): string;
280
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisNotificationIntlService, never>;
281
+ static ɵprov: i0.ɵɵInjectableDeclaration<SolarisNotificationIntlService>;
282
+ }
283
+
284
+ type SolarisSizePreset = 'sm' | 'md' | 'lg';
285
+ type SolarisRadiusPreset = 'none' | 'sm' | 'md' | 'lg' | 'full';
286
+ type SolarisColorPreset = 'primary' | 'surface' | 'success' | 'warning' | 'error' | 'info' | 'gradient';
287
+
288
+ type SolarisButtonVariant = 'solid' | 'outline' | 'ghost' | 'soft';
289
+ type SolarisRadiusInput = SolarisRadiusPreset | SolarisCustomString;
290
+ type SolarisButtonColorInput = SolarisColorPreset | SolarisCustomString;
291
+ type SolarisCustomString = string & {
292
+ readonly __solarisCustom?: unique symbol;
293
+ };
294
+
295
+ type SolarisNotificationState = 'queued' | 'visible' | 'archived';
296
+ type SolarisNotificationKind = 'success' | 'warning' | 'error' | 'info';
297
+ type SolarisNotificationConfigInput = Partial<SolarisNotificationConfig>;
298
+ type SolarisNotificationPosition = 'top-right' | 'top-left' | 'top-center' | 'bottom-right' | 'bottom-left' | 'bottom-center';
299
+ interface SolarisNotificationActionContext {
300
+ id: string;
301
+ data: Record<string, unknown> | null;
302
+ dismiss: () => void;
303
+ remove: () => void;
304
+ update: (patch: Partial<SolarisNotificationInput>) => void;
305
+ }
306
+ interface SolarisNotificationAction {
307
+ id: string;
308
+ label?: string;
309
+ labelKey?: string;
310
+ labelParams?: SolarisTranslationParams;
311
+ variant?: SolarisButtonVariant;
312
+ color?: SolarisButtonColorInput;
313
+ size?: SolarisSizePreset;
314
+ radius?: SolarisRadiusInput;
315
+ closeOnClick?: boolean;
316
+ disabled?: boolean;
317
+ run?: (ctx: SolarisNotificationActionContext) => void | Promise<void>;
318
+ }
319
+ interface SolarisNotificationInput {
320
+ title?: string;
321
+ titleKey?: string;
322
+ titleParams?: SolarisTranslationParams;
323
+ description?: string | null;
324
+ descriptionKey?: string;
325
+ descriptionParams?: SolarisTranslationParams;
326
+ kind?: SolarisNotificationKind;
327
+ position?: SolarisNotificationPosition;
328
+ duration?: number | null;
329
+ expandable?: boolean;
330
+ expanded?: boolean;
331
+ closeable?: boolean;
332
+ pauseOnHover?: boolean;
333
+ actions?: SolarisNotificationAction[];
334
+ ariaLive?: 'polite' | 'assertive';
335
+ data?: Record<string, unknown> | null;
336
+ }
337
+ interface SolarisNotificationRecord {
338
+ id: string;
339
+ title: string;
340
+ description: string | null;
341
+ kind: SolarisNotificationKind;
342
+ position: SolarisNotificationPosition;
343
+ state: SolarisNotificationState;
344
+ duration: number | null;
345
+ remainingMs: number | null;
346
+ expandable: boolean;
347
+ expanded: boolean;
348
+ closeable: boolean;
349
+ pauseOnHover: boolean;
350
+ pausedByHover: boolean;
351
+ pausedByUser: boolean;
352
+ pausedByVisibility: boolean;
353
+ actions: SolarisNotificationAction[];
354
+ ariaLive: 'polite' | 'assertive';
355
+ data: Record<string, unknown> | null;
356
+ createdAt: number;
357
+ }
358
+ interface SolarisNotificationConfig {
359
+ defaultPosition: SolarisNotificationPosition;
360
+ defaultDuration: number;
361
+ maxVisiblePerPosition: number;
362
+ hoverPause: boolean;
363
+ newestOnTop: boolean;
364
+ expandSingle: boolean;
365
+ persistInCenter: boolean;
366
+ translationScope: string;
367
+ }
368
+ interface SolarisNotificationRef {
369
+ id: string;
370
+ dismiss: () => void;
371
+ remove: () => void;
372
+ pause: () => void;
373
+ resume: () => void;
374
+ toggleExpanded: () => void;
375
+ update: (patch: Partial<SolarisNotificationInput>) => void;
376
+ }
377
+
378
+ declare class SolarisNotificationService {
379
+ private readonly platformId;
380
+ private readonly destroyRef;
381
+ readonly config: SolarisNotificationConfig;
382
+ private readonly translationService;
383
+ readonly centerOpen: i0.WritableSignal<boolean>;
384
+ private readonly _items;
385
+ readonly items: i0.Signal<SolarisNotificationRecord[]>;
386
+ readonly visibleItems: i0.Signal<SolarisNotificationRecord[]>;
387
+ readonly centerItems: i0.Signal<SolarisNotificationRecord[]>;
388
+ private lastTick;
389
+ private readonly intervalId;
390
+ constructor();
391
+ success(input: Omit<SolarisNotificationInput, 'kind'>): SolarisNotificationRef;
392
+ warning(input: Omit<SolarisNotificationInput, 'kind'>): SolarisNotificationRef;
393
+ error(input: Omit<SolarisNotificationInput, 'kind'>): SolarisNotificationRef;
394
+ info(input: Omit<SolarisNotificationInput, 'kind'>): SolarisNotificationRef;
395
+ show(input: SolarisNotificationInput): SolarisNotificationRef;
396
+ visibleByPosition(position: SolarisNotificationPosition): SolarisNotificationRecord[];
397
+ isPaused(item: SolarisNotificationRecord): boolean;
398
+ dismiss(id: string): void;
399
+ remove(id: string): void;
400
+ clearHistory(): void;
401
+ pause(id: string): void;
402
+ resume(id: string): void;
403
+ toggleUserPause(id: string): void;
404
+ setHoverPaused(id: string, paused: boolean): void;
405
+ toggleExpanded(id: string): void;
406
+ update(id: string, patch: Partial<SolarisNotificationInput>): void;
407
+ openCenter(): void;
408
+ closeCenter(): void;
409
+ toggleCenter(): void;
410
+ private tick;
411
+ private rebalance;
412
+ private createRecord;
413
+ private resolveAriaLive;
414
+ private createRef;
415
+ private createId;
416
+ private find;
417
+ private patch;
418
+ private resolveRequiredText;
419
+ private resolveOptionalText;
420
+ private hasOwn;
421
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisNotificationService, never>;
422
+ static ɵprov: i0.ɵɵInjectableDeclaration<SolarisNotificationService>;
423
+ }
424
+
425
+ declare class SolarisNotificationCenterComponent {
426
+ protected readonly notificationService: SolarisNotificationService;
427
+ protected readonly intl: SolarisNotificationIntlService;
428
+ onEscape(): void;
429
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisNotificationCenterComponent, never>;
430
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisNotificationCenterComponent, "solaris-notification-center", never, {}, {}, never, never, true, never>;
431
+ }
432
+
433
+ declare class SolarisNotificationItemComponent {
434
+ protected readonly notificationService: SolarisNotificationService;
435
+ protected readonly intl: SolarisNotificationIntlService;
436
+ readonly item: i0.InputSignal<SolarisNotificationRecord>;
437
+ readonly mode: i0.InputSignal<"center" | "toast">;
438
+ readonly paused: i0.Signal<boolean>;
439
+ readonly secondsLeft: i0.Signal<number>;
440
+ readonly progress: i0.Signal<number>;
441
+ readonly iconClass: i0.Signal<"ph-check-circle" | "ph-warning-circle" | "ph-x-circle" | "ph-info">;
442
+ toggleExpanded(): void;
443
+ toggleUserPause(): void;
444
+ close(): void;
445
+ onMouseEnter(): void;
446
+ onMouseLeave(): void;
447
+ runAction(action: SolarisNotificationAction): Promise<void>;
448
+ protected resolveActionLabel(action: SolarisNotificationAction): string;
449
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisNotificationItemComponent, never>;
450
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisNotificationItemComponent, "solaris-notification-item", never, { "item": { "alias": "item"; "required": true; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
451
+ }
452
+
453
+ declare class SolarisNotificationHostComponent {
454
+ protected readonly notificationService: SolarisNotificationService;
455
+ protected readonly positions: readonly SolarisNotificationPosition[];
456
+ readonly withCenter: i0.InputSignal<boolean>;
457
+ visibleByPosition(position: SolarisNotificationPosition): _educarehq_solaris_components.SolarisNotificationRecord[];
458
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisNotificationHostComponent, never>;
459
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisNotificationHostComponent, "solaris-notification-host", never, { "withCenter": { "alias": "withCenter"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
460
+ }
461
+
462
+ declare const SOLARIS_NOTIFICATION_POSITIONS: readonly SolarisNotificationPosition[];
463
+ declare const SOLARIS_NOTIFICATION_DEFAULT_CONFIG: SolarisNotificationConfig;
464
+ declare const SOLARIS_NOTIFICATION_CONFIG: InjectionToken<SolarisNotificationConfig>;
465
+ declare function provideSolarisNotifications(input?: SolarisNotificationConfigInput): EnvironmentProviders;
466
+
263
467
  type SolarisLoadingTrail = 'forward' | 'reverse';
264
468
  type SolarisLoadingSpeed = 'slow' | 'md' | 'fast';
265
469
  type SolarisLoadingDashDensity = 'low' | 'md' | 'high';
@@ -298,10 +502,6 @@ type Spoke = {
298
502
  opacity: number;
299
503
  };
300
504
 
301
- type SolarisSizePreset = 'sm' | 'md' | 'lg';
302
- type SolarisRadiusPreset = 'none' | 'sm' | 'md' | 'lg' | 'full';
303
- type SolarisColorPreset = 'primary' | 'surface' | 'success' | 'warning' | 'error' | 'info' | 'gradient';
304
-
305
505
  type BadgeVariant = 'solid' | 'subtle' | 'outline';
306
506
  type BadgeColorInput = SolarisColorPreset | string & {
307
507
  readonly __solarisCustom?: unique symbol;
@@ -806,13 +1006,6 @@ declare class SolarisCheckbox implements ControlValueAccessor {
806
1006
  static ɵcmp: i0.ɵɵComponentDeclaration<SolarisCheckbox, "solaris-checkbox", never, { "indeterminate": { "alias": "indeterminate"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "inputId": { "alias": "id"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "checkColor": { "alias": "checkColor"; "required": false; "isSignal": true; }; }, { "checkedChange": "checkedChange"; "indeterminateChange": "indeterminateChange"; }, never, ["*"], true, never>;
807
1007
  }
808
1008
 
809
- type SolarisButtonVariant = 'solid' | 'outline' | 'ghost' | 'soft';
810
- type SolarisRadiusInput = SolarisRadiusPreset | SolarisCustomString;
811
- type SolarisButtonColorInput = SolarisColorPreset | SolarisCustomString;
812
- type SolarisCustomString = string & {
813
- readonly __solarisCustom?: unique symbol;
814
- };
815
-
816
1009
  declare class ButtonGroupDirective {
817
1010
  private _radius;
818
1011
  set radius(v: SolarisRadiusInput | null | undefined);
@@ -1277,5 +1470,5 @@ declare class SolarisSelect implements OnInit, ControlValueAccessor, AfterViewIn
1277
1470
  static ɵcmp: i0.ɵɵComponentDeclaration<SolarisSelect, "solaris-select", never, { "items": { "alias": "items"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "valueKey": { "alias": "valueKey"; "required": false; }; "backKey": { "alias": "backKey"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "placeholderKey": { "alias": "placeholderKey"; "required": false; }; "searchable": { "alias": "searchable"; "required": false; }; "selectedCountKey": { "alias": "selectedCountKey"; "required": false; }; "selectedFirst": { "alias": "selectedFirst"; "required": false; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; }; "selectedCountText": { "alias": "selectedCountText"; "required": false; }; "panelMaxHeight": { "alias": "panelMaxHeight"; "required": false; }; "searchPlaceholderKey": { "alias": "searchPlaceholderKey"; "required": false; }; "selectionSeparator": { "alias": "selectionSeparator"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; "backText": { "alias": "backText"; "required": false; }; "selectionDisplay": { "alias": "selectionDisplay"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, {}, never, never, true, never>;
1278
1471
  }
1279
1472
 
1280
- export { ButtonDirective, ButtonGroupDirective, FieldErrorComponent, FormField, InputTextDirective, PasswordToggle, SOLARIS_FORM_FIELD_CONTROLLER, SOLARIS_FORM_FIELD_FEATURES, SOLARIS_INPUT, SolarisBadge, SolarisBodyDirective, SolarisBreadcrumb, SolarisCheckbox, SolarisColumnCellDef, SolarisColumnHeaderDef, SolarisControlBridgeDirective, SolarisDivider, SolarisDrawer, SolarisDrawerFooterDirective, SolarisDrawerHeaderDirective, SolarisDropdownContent, SolarisDropdownContentPanelDirective, SolarisDropdownContentRegistry, SolarisDropdownContentTriggerDirective, SolarisEmailDirective, SolarisFilterBar, SolarisFilterChip, SolarisFilterField, SolarisFilterPanel, SolarisFilterPanelFooterDirective, SolarisFooterDirective, SolarisFormFieldController, SolarisHeaderDirective, SolarisIdGenerator, SolarisImageSliderComponent, SolarisLoading, SolarisLoadingOverlay, SolarisPage, SolarisPageHeader, SolarisPageHeaderBreadcrumbDirective, SolarisPageHeaderDescriptionDirective, SolarisPageHeaderTitle, SolarisPageHeaderTitleDirective, SolarisPasswordDirective, SolarisPhoneInput, SolarisPopover, SolarisPopoverPanelDirective, SolarisPopoverTriggerDirective, SolarisPrefixDirective, SolarisRowComponent, SolarisSectionComponent, SolarisSelect, SolarisSuffixDirective, SolarisTab, SolarisTable, SolarisTableColumn, SolarisTableFilters, SolarisTableSkeleton, SolarisTabs, computePopoverPosition, uniqueId };
1281
- export type { BadgeColorInput, BadgeVariant, CheckboxAppearance, CheckboxColorInput, CheckboxVariant, DividerLabelAlign, DividerOrientation, DividerSpacing, DividerStrength, DividerVariant, Iso2, LoadingType, PhoneFormat, SelectionDisplay, SolarisAlign, SolarisBreadcrumbItem, SolarisBreadcrumbTarget, SolarisButtonColorInput, SolarisButtonVariant, SolarisCheckCustomString, SolarisColorPreset, SolarisCustomString, SolarisDrawerSide, SolarisDropdownContentInterface, SolarisDropdownWidthMode, SolarisFilterPanelRadius, SolarisFormFieldAppearance, SolarisFormFieldControllerLike, SolarisFormFieldFeature, SolarisFormFieldRadius, SolarisFormFieldShowErrors, SolarisInputApi, SolarisLoadingColor, SolarisLoadingDashDensity, SolarisLoadingEasing, SolarisLoadingPresetColor, SolarisLoadingSize, SolarisLoadingSpeed, SolarisLoadingTrail, SolarisPageChange, SolarisPopoverPlacement, SolarisPopoverPositionConfiguration, SolarisPopoverPositionResult, SolarisRadiusInput, SolarisRadiusPreset, SolarisRowKey, SolarisSelectDivider, SolarisSelectGroup, SolarisSelectItem, SolarisSelectNode, SolarisSelectRow, SolarisSizePreset, SolarisSliderItem, SolarisSliderOverlayContext, SolarisSort, SolarisSortDirection, SolarisTableI18n, SolarisTableVariant, StackLevel, TabsSize, TabsVariant };
1473
+ export { ButtonDirective, ButtonGroupDirective, FieldErrorComponent, FormField, InputTextDirective, PasswordToggle, SOLARIS_FORM_FIELD_CONTROLLER, SOLARIS_FORM_FIELD_FEATURES, SOLARIS_INPUT, SOLARIS_NOTIFICATION_CONFIG, SOLARIS_NOTIFICATION_DEFAULT_CONFIG, SOLARIS_NOTIFICATION_POSITIONS, SolarisBadge, SolarisBodyDirective, SolarisBreadcrumb, SolarisCheckbox, SolarisColumnCellDef, SolarisColumnHeaderDef, SolarisControlBridgeDirective, SolarisDivider, SolarisDrawer, SolarisDrawerFooterDirective, SolarisDrawerHeaderDirective, SolarisDropdownContent, SolarisDropdownContentPanelDirective, SolarisDropdownContentRegistry, SolarisDropdownContentTriggerDirective, SolarisEmailDirective, SolarisFilterBar, SolarisFilterChip, SolarisFilterField, SolarisFilterPanel, SolarisFilterPanelFooterDirective, SolarisFooterDirective, SolarisFormFieldController, SolarisHeaderDirective, SolarisIdGenerator, SolarisImageSliderComponent, SolarisLoading, SolarisLoadingOverlay, SolarisNotificationCenterComponent, SolarisNotificationHostComponent, SolarisNotificationIntlService, SolarisNotificationItemComponent, SolarisNotificationService, SolarisPage, SolarisPageHeader, SolarisPageHeaderBreadcrumbDirective, SolarisPageHeaderDescriptionDirective, SolarisPageHeaderTitle, SolarisPageHeaderTitleDirective, SolarisPasswordDirective, SolarisPhoneInput, SolarisPopover, SolarisPopoverPanelDirective, SolarisPopoverTriggerDirective, SolarisPrefixDirective, SolarisRowComponent, SolarisSectionComponent, SolarisSelect, SolarisSuffixDirective, SolarisTab, SolarisTable, SolarisTableColumn, SolarisTableFilters, SolarisTableSkeleton, SolarisTabs, computePopoverPosition, provideSolarisNotifications, uniqueId };
1474
+ export type { BadgeColorInput, BadgeVariant, CheckboxAppearance, CheckboxColorInput, CheckboxVariant, DividerLabelAlign, DividerOrientation, DividerSpacing, DividerStrength, DividerVariant, Iso2, LoadingType, PhoneFormat, SelectionDisplay, SolarisAlign, SolarisBreadcrumbItem, SolarisBreadcrumbTarget, SolarisButtonColorInput, SolarisButtonVariant, SolarisCheckCustomString, SolarisColorPreset, SolarisCustomString, SolarisDrawerSide, SolarisDropdownContentInterface, SolarisDropdownWidthMode, SolarisFilterPanelRadius, SolarisFormFieldAppearance, SolarisFormFieldControllerLike, SolarisFormFieldFeature, SolarisFormFieldRadius, SolarisFormFieldShowErrors, SolarisInputApi, SolarisLoadingColor, SolarisLoadingDashDensity, SolarisLoadingEasing, SolarisLoadingPresetColor, SolarisLoadingSize, SolarisLoadingSpeed, SolarisLoadingTrail, SolarisNotificationAction, SolarisNotificationActionContext, SolarisNotificationConfig, SolarisNotificationConfigInput, SolarisNotificationInput, SolarisNotificationKind, SolarisNotificationPosition, SolarisNotificationRecord, SolarisNotificationRef, SolarisNotificationState, SolarisPageChange, SolarisPopoverPlacement, SolarisPopoverPositionConfiguration, SolarisPopoverPositionResult, SolarisRadiusInput, SolarisRadiusPreset, SolarisRowKey, SolarisSelectDivider, SolarisSelectGroup, SolarisSelectItem, SolarisSelectNode, SolarisSelectRow, SolarisSizePreset, SolarisSliderItem, SolarisSliderOverlayContext, SolarisSort, SolarisSortDirection, SolarisTableI18n, SolarisTableVariant, StackLevel, TabsSize, TabsVariant };