@raintonic/formaui 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/README.md +145 -0
- package/fesm2022/raintonic-formaui-cdk-drag-drop.mjs +806 -0
- package/fesm2022/raintonic-formaui-cdk-drag-drop.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-cdk-form-field.mjs +86 -0
- package/fesm2022/raintonic-formaui-cdk-form-field.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-cdk-overlay.mjs +1757 -0
- package/fesm2022/raintonic-formaui-cdk-overlay.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-cdk-virtual-scroll.mjs +287 -0
- package/fesm2022/raintonic-formaui-cdk-virtual-scroll.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-accordion.mjs +217 -0
- package/fesm2022/raintonic-formaui-components-accordion.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-alert.mjs +161 -0
- package/fesm2022/raintonic-formaui-components-alert.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-autocomplete.mjs +726 -0
- package/fesm2022/raintonic-formaui-components-autocomplete.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-avatar.mjs +92 -0
- package/fesm2022/raintonic-formaui-components-avatar.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-badge.mjs +107 -0
- package/fesm2022/raintonic-formaui-components-badge.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-big-menu.mjs +68 -0
- package/fesm2022/raintonic-formaui-components-big-menu.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-breadcrumb.mjs +55 -0
- package/fesm2022/raintonic-formaui-components-breadcrumb.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-button-group.mjs +103 -0
- package/fesm2022/raintonic-formaui-components-button-group.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-button.mjs +241 -0
- package/fesm2022/raintonic-formaui-components-button.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-card.mjs +270 -0
- package/fesm2022/raintonic-formaui-components-card.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-checkbox.mjs +295 -0
- package/fesm2022/raintonic-formaui-components-checkbox.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-data-table.mjs +631 -0
- package/fesm2022/raintonic-formaui-components-data-table.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-date-picker.mjs +1331 -0
- package/fesm2022/raintonic-formaui-components-date-picker.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-divider.mjs +41 -0
- package/fesm2022/raintonic-formaui-components-divider.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-drawer.mjs +190 -0
- package/fesm2022/raintonic-formaui-components-drawer.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-dynamic-form.mjs +266 -0
- package/fesm2022/raintonic-formaui-components-dynamic-form.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-empty-state.mjs +33 -0
- package/fesm2022/raintonic-formaui-components-empty-state.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-file-upload.mjs +246 -0
- package/fesm2022/raintonic-formaui-components-file-upload.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-form-field.mjs +482 -0
- package/fesm2022/raintonic-formaui-components-form-field.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-icon.mjs +117 -0
- package/fesm2022/raintonic-formaui-components-icon.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-input.mjs +327 -0
- package/fesm2022/raintonic-formaui-components-input.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-list.mjs +149 -0
- package/fesm2022/raintonic-formaui-components-list.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-menu.mjs +896 -0
- package/fesm2022/raintonic-formaui-components-menu.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-number-input.mjs +345 -0
- package/fesm2022/raintonic-formaui-components-number-input.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-paginator.mjs +139 -0
- package/fesm2022/raintonic-formaui-components-paginator.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-password-input.mjs +306 -0
- package/fesm2022/raintonic-formaui-components-password-input.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-popover.mjs +451 -0
- package/fesm2022/raintonic-formaui-components-popover.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-progressbar.mjs +148 -0
- package/fesm2022/raintonic-formaui-components-progressbar.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-radio.mjs +260 -0
- package/fesm2022/raintonic-formaui-components-radio.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-select.mjs +1011 -0
- package/fesm2022/raintonic-formaui-components-select.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-side-panel.mjs +150 -0
- package/fesm2022/raintonic-formaui-components-side-panel.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-sidebar.mjs +257 -0
- package/fesm2022/raintonic-formaui-components-sidebar.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-skeleton.mjs +50 -0
- package/fesm2022/raintonic-formaui-components-skeleton.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-slider.mjs +347 -0
- package/fesm2022/raintonic-formaui-components-slider.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-spinner.mjs +63 -0
- package/fesm2022/raintonic-formaui-components-spinner.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-stepper.mjs +317 -0
- package/fesm2022/raintonic-formaui-components-stepper.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-tab.mjs +197 -0
- package/fesm2022/raintonic-formaui-components-tab.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-tag.mjs +78 -0
- package/fesm2022/raintonic-formaui-components-tag.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-time-picker.mjs +644 -0
- package/fesm2022/raintonic-formaui-components-time-picker.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-toggle.mjs +171 -0
- package/fesm2022/raintonic-formaui-components-toggle.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-toolbar.mjs +140 -0
- package/fesm2022/raintonic-formaui-components-toolbar.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-tooltip.mjs +555 -0
- package/fesm2022/raintonic-formaui-components-tooltip.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-tree-select.mjs +314 -0
- package/fesm2022/raintonic-formaui-components-tree-select.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-tree-table.mjs +103 -0
- package/fesm2022/raintonic-formaui-components-tree-table.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-components-tree.mjs +430 -0
- package/fesm2022/raintonic-formaui-components-tree.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-core.mjs +62 -0
- package/fesm2022/raintonic-formaui-core.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-services-dialog.mjs +798 -0
- package/fesm2022/raintonic-formaui-services-dialog.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-services-notification.mjs +391 -0
- package/fesm2022/raintonic-formaui-services-notification.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-services-theme.mjs +248 -0
- package/fesm2022/raintonic-formaui-services-theme.mjs.map +1 -0
- package/fesm2022/raintonic-formaui-test-utils.mjs +66 -0
- package/fesm2022/raintonic-formaui-test-utils.mjs.map +1 -0
- package/fesm2022/raintonic-formaui.mjs +15 -0
- package/fesm2022/raintonic-formaui.mjs.map +1 -0
- package/llms-full.txt +1627 -0
- package/llms.txt +60 -0
- package/package.json +251 -0
- package/styles/_fonts-entry.scss +3 -0
- package/styles/fonts/dm-mono-400-latin.woff2 +0 -0
- package/styles/fonts/inter-tight-latin-italic.woff2 +0 -0
- package/styles/fonts/inter-tight-latin.woff2 +0 -0
- package/styles/index.scss +127 -0
- package/styles/partials/_constants.scss +29 -0
- package/styles/partials/_fonts.scss +36 -0
- package/styles/partials/_grid.scss +171 -0
- package/styles/partials/_mixins.scss +145 -0
- package/styles/partials/_motion.scss +252 -0
- package/styles/partials/_theme.scss +275 -0
- package/styles/partials/_typography.scss +112 -0
- package/styles/partials/_utilities.scss +480 -0
- package/styles/partials/themes/_dark.scss +254 -0
- package/styles/partials/themes/_light.scss +254 -0
- package/types/raintonic-formaui-cdk-drag-drop.d.ts +196 -0
- package/types/raintonic-formaui-cdk-drag-drop.d.ts.map +1 -0
- package/types/raintonic-formaui-cdk-form-field.d.ts +62 -0
- package/types/raintonic-formaui-cdk-form-field.d.ts.map +1 -0
- package/types/raintonic-formaui-cdk-overlay.d.ts +843 -0
- package/types/raintonic-formaui-cdk-overlay.d.ts.map +1 -0
- package/types/raintonic-formaui-cdk-virtual-scroll.d.ts +112 -0
- package/types/raintonic-formaui-cdk-virtual-scroll.d.ts.map +1 -0
- package/types/raintonic-formaui-components-accordion.d.ts +124 -0
- package/types/raintonic-formaui-components-accordion.d.ts.map +1 -0
- package/types/raintonic-formaui-components-alert.d.ts +143 -0
- package/types/raintonic-formaui-components-alert.d.ts.map +1 -0
- package/types/raintonic-formaui-components-autocomplete.d.ts +193 -0
- package/types/raintonic-formaui-components-autocomplete.d.ts.map +1 -0
- package/types/raintonic-formaui-components-avatar.d.ts +52 -0
- package/types/raintonic-formaui-components-avatar.d.ts.map +1 -0
- package/types/raintonic-formaui-components-badge.d.ts +47 -0
- package/types/raintonic-formaui-components-badge.d.ts.map +1 -0
- package/types/raintonic-formaui-components-big-menu.d.ts +62 -0
- package/types/raintonic-formaui-components-big-menu.d.ts.map +1 -0
- package/types/raintonic-formaui-components-breadcrumb.d.ts +26 -0
- package/types/raintonic-formaui-components-breadcrumb.d.ts.map +1 -0
- package/types/raintonic-formaui-components-button-group.d.ts +61 -0
- package/types/raintonic-formaui-components-button-group.d.ts.map +1 -0
- package/types/raintonic-formaui-components-button.d.ts +116 -0
- package/types/raintonic-formaui-components-button.d.ts.map +1 -0
- package/types/raintonic-formaui-components-card.d.ts +191 -0
- package/types/raintonic-formaui-components-card.d.ts.map +1 -0
- package/types/raintonic-formaui-components-checkbox.d.ts +132 -0
- package/types/raintonic-formaui-components-checkbox.d.ts.map +1 -0
- package/types/raintonic-formaui-components-data-table.d.ts +368 -0
- package/types/raintonic-formaui-components-data-table.d.ts.map +1 -0
- package/types/raintonic-formaui-components-date-picker.d.ts +341 -0
- package/types/raintonic-formaui-components-date-picker.d.ts.map +1 -0
- package/types/raintonic-formaui-components-divider.d.ts +21 -0
- package/types/raintonic-formaui-components-divider.d.ts.map +1 -0
- package/types/raintonic-formaui-components-drawer.d.ts +48 -0
- package/types/raintonic-formaui-components-drawer.d.ts.map +1 -0
- package/types/raintonic-formaui-components-dynamic-form.d.ts +412 -0
- package/types/raintonic-formaui-components-dynamic-form.d.ts.map +1 -0
- package/types/raintonic-formaui-components-empty-state.d.ts +14 -0
- package/types/raintonic-formaui-components-empty-state.d.ts.map +1 -0
- package/types/raintonic-formaui-components-file-upload.d.ts +77 -0
- package/types/raintonic-formaui-components-file-upload.d.ts.map +1 -0
- package/types/raintonic-formaui-components-form-field.d.ts +271 -0
- package/types/raintonic-formaui-components-form-field.d.ts.map +1 -0
- package/types/raintonic-formaui-components-icon.d.ts +61 -0
- package/types/raintonic-formaui-components-icon.d.ts.map +1 -0
- package/types/raintonic-formaui-components-input.d.ts +149 -0
- package/types/raintonic-formaui-components-input.d.ts.map +1 -0
- package/types/raintonic-formaui-components-list.d.ts +48 -0
- package/types/raintonic-formaui-components-list.d.ts.map +1 -0
- package/types/raintonic-formaui-components-menu.d.ts +403 -0
- package/types/raintonic-formaui-components-menu.d.ts.map +1 -0
- package/types/raintonic-formaui-components-number-input.d.ts +127 -0
- package/types/raintonic-formaui-components-number-input.d.ts.map +1 -0
- package/types/raintonic-formaui-components-paginator.d.ts +37 -0
- package/types/raintonic-formaui-components-paginator.d.ts.map +1 -0
- package/types/raintonic-formaui-components-password-input.d.ts +111 -0
- package/types/raintonic-formaui-components-password-input.d.ts.map +1 -0
- package/types/raintonic-formaui-components-popover.d.ts +131 -0
- package/types/raintonic-formaui-components-popover.d.ts.map +1 -0
- package/types/raintonic-formaui-components-progressbar.d.ts +111 -0
- package/types/raintonic-formaui-components-progressbar.d.ts.map +1 -0
- package/types/raintonic-formaui-components-radio.d.ts +95 -0
- package/types/raintonic-formaui-components-radio.d.ts.map +1 -0
- package/types/raintonic-formaui-components-select.d.ts +307 -0
- package/types/raintonic-formaui-components-select.d.ts.map +1 -0
- package/types/raintonic-formaui-components-side-panel.d.ts +51 -0
- package/types/raintonic-formaui-components-side-panel.d.ts.map +1 -0
- package/types/raintonic-formaui-components-sidebar.d.ts +174 -0
- package/types/raintonic-formaui-components-sidebar.d.ts.map +1 -0
- package/types/raintonic-formaui-components-skeleton.d.ts +20 -0
- package/types/raintonic-formaui-components-skeleton.d.ts.map +1 -0
- package/types/raintonic-formaui-components-slider.d.ts +108 -0
- package/types/raintonic-formaui-components-slider.d.ts.map +1 -0
- package/types/raintonic-formaui-components-spinner.d.ts +42 -0
- package/types/raintonic-formaui-components-spinner.d.ts.map +1 -0
- package/types/raintonic-formaui-components-stepper.d.ts +126 -0
- package/types/raintonic-formaui-components-stepper.d.ts.map +1 -0
- package/types/raintonic-formaui-components-tab.d.ts +96 -0
- package/types/raintonic-formaui-components-tab.d.ts.map +1 -0
- package/types/raintonic-formaui-components-tag.d.ts +34 -0
- package/types/raintonic-formaui-components-tag.d.ts.map +1 -0
- package/types/raintonic-formaui-components-time-picker.d.ts +172 -0
- package/types/raintonic-formaui-components-time-picker.d.ts.map +1 -0
- package/types/raintonic-formaui-components-toggle.d.ts +70 -0
- package/types/raintonic-formaui-components-toggle.d.ts.map +1 -0
- package/types/raintonic-formaui-components-toolbar.d.ts +128 -0
- package/types/raintonic-formaui-components-toolbar.d.ts.map +1 -0
- package/types/raintonic-formaui-components-tooltip.d.ts +268 -0
- package/types/raintonic-formaui-components-tooltip.d.ts.map +1 -0
- package/types/raintonic-formaui-components-tree-select.d.ts +80 -0
- package/types/raintonic-formaui-components-tree-select.d.ts.map +1 -0
- package/types/raintonic-formaui-components-tree-table.d.ts +90 -0
- package/types/raintonic-formaui-components-tree-table.d.ts.map +1 -0
- package/types/raintonic-formaui-components-tree.d.ts +104 -0
- package/types/raintonic-formaui-components-tree.d.ts.map +1 -0
- package/types/raintonic-formaui-core.d.ts +115 -0
- package/types/raintonic-formaui-core.d.ts.map +1 -0
- package/types/raintonic-formaui-services-dialog.d.ts +451 -0
- package/types/raintonic-formaui-services-dialog.d.ts.map +1 -0
- package/types/raintonic-formaui-services-notification.d.ts +221 -0
- package/types/raintonic-formaui-services-notification.d.ts.map +1 -0
- package/types/raintonic-formaui-services-theme.d.ts +126 -0
- package/types/raintonic-formaui-services-theme.d.ts.map +1 -0
- package/types/raintonic-formaui-test-utils.d.ts +24 -0
- package/types/raintonic-formaui-test-utils.d.ts.map +1 -0
- package/types/raintonic-formaui.d.ts +4 -0
- package/types/raintonic-formaui.d.ts.map +1 -0
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
import { FuiNotificationConfig, FuiNotificationPosition } from '@raintonic/formaui/components/alert';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import * as i0 from '@angular/core';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Reference to a notification instance.
|
|
7
|
+
* Provides control over the notification and observables for lifecycle events.
|
|
8
|
+
*/
|
|
9
|
+
declare class FuiNotificationRef {
|
|
10
|
+
readonly id: string;
|
|
11
|
+
readonly config: FuiNotificationConfig;
|
|
12
|
+
private readonly _afterClosed;
|
|
13
|
+
private readonly _afterDismissed;
|
|
14
|
+
/**
|
|
15
|
+
* Observable that emits when the notification is closed
|
|
16
|
+
*/
|
|
17
|
+
readonly afterClosed: Observable<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Observable that emits when the notification is dismissed (after animation)
|
|
20
|
+
*/
|
|
21
|
+
readonly afterDismissed: Observable<void>;
|
|
22
|
+
constructor(id: string, config: FuiNotificationConfig);
|
|
23
|
+
/**
|
|
24
|
+
* Close the notification
|
|
25
|
+
*/
|
|
26
|
+
close(): void;
|
|
27
|
+
/**
|
|
28
|
+
* Called internally when the notification is fully dismissed
|
|
29
|
+
* @internal
|
|
30
|
+
*/
|
|
31
|
+
_dismiss(): void;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* # FuiNotificationService
|
|
36
|
+
*
|
|
37
|
+
* Service for displaying toast-style notifications using overlays.
|
|
38
|
+
* Notifications can be displayed at various positions on the screen and will
|
|
39
|
+
* auto-dismiss after a configurable duration with a visual countdown.
|
|
40
|
+
*
|
|
41
|
+
* ## Features
|
|
42
|
+
* - Multiple notification variants (success, info, warning, error, primary, generic)
|
|
43
|
+
* - Configurable positioning (top-left, top-center, top-right, bottom-left, bottom-center, bottom-right)
|
|
44
|
+
* - Auto-dismiss with progress bar countdown
|
|
45
|
+
* - Manual dismiss via close button
|
|
46
|
+
* - Stack multiple notifications
|
|
47
|
+
* - Convenient shorthand methods for common variants
|
|
48
|
+
*
|
|
49
|
+
* ## Usage
|
|
50
|
+
*
|
|
51
|
+
* ### Success Notification
|
|
52
|
+
* ```typescript
|
|
53
|
+
* this.notificationService.success('Changes saved successfully!');
|
|
54
|
+
* ```
|
|
55
|
+
*
|
|
56
|
+
* ### Error Notification with Description
|
|
57
|
+
* ```typescript
|
|
58
|
+
* this.notificationService.error('Failed to save', {
|
|
59
|
+
* description: 'Please check your connection and try again.'
|
|
60
|
+
* });
|
|
61
|
+
* ```
|
|
62
|
+
*
|
|
63
|
+
* ### Custom Duration and Position
|
|
64
|
+
* ```typescript
|
|
65
|
+
* this.notificationService.info('New message received', {
|
|
66
|
+
* description: 'Click to view',
|
|
67
|
+
* duration: 10000,
|
|
68
|
+
* position: 'bottom-right'
|
|
69
|
+
* });
|
|
70
|
+
* ```
|
|
71
|
+
*
|
|
72
|
+
* ### No Auto-Dismiss
|
|
73
|
+
* ```typescript
|
|
74
|
+
* this.notificationService.warning('Important notice', {
|
|
75
|
+
* duration: 0, // Won't auto-dismiss
|
|
76
|
+
* closeable: true
|
|
77
|
+
* });
|
|
78
|
+
* ```
|
|
79
|
+
*
|
|
80
|
+
* ### Full Configuration
|
|
81
|
+
* ```typescript
|
|
82
|
+
* const ref = this.notificationService.show({
|
|
83
|
+
* variant: 'success',
|
|
84
|
+
* title: 'Success!',
|
|
85
|
+
* description: 'Your operation completed successfully.',
|
|
86
|
+
* duration: 5000,
|
|
87
|
+
* closeable: true,
|
|
88
|
+
* icon: 'custom-icon',
|
|
89
|
+
* position: 'top-center'
|
|
90
|
+
* });
|
|
91
|
+
*
|
|
92
|
+
* // Programmatically close
|
|
93
|
+
* ref.close();
|
|
94
|
+
* ```
|
|
95
|
+
*/
|
|
96
|
+
declare class FuiNotificationService {
|
|
97
|
+
private readonly _document;
|
|
98
|
+
private readonly _rendererFactory;
|
|
99
|
+
private readonly _environmentInjector;
|
|
100
|
+
private readonly _applicationRef;
|
|
101
|
+
private readonly _renderer;
|
|
102
|
+
/**
|
|
103
|
+
* Map of container components by position
|
|
104
|
+
*/
|
|
105
|
+
private readonly _containers;
|
|
106
|
+
/**
|
|
107
|
+
* Default position for notifications
|
|
108
|
+
*/
|
|
109
|
+
private _defaultPosition;
|
|
110
|
+
/**
|
|
111
|
+
* Next unique notification ID
|
|
112
|
+
*/
|
|
113
|
+
private _nextId;
|
|
114
|
+
constructor();
|
|
115
|
+
/**
|
|
116
|
+
* Set the default position for notifications
|
|
117
|
+
*/
|
|
118
|
+
setDefaultPosition(position: FuiNotificationPosition): void;
|
|
119
|
+
/**
|
|
120
|
+
* Show a success notification
|
|
121
|
+
*/
|
|
122
|
+
success(title: string, options?: Partial<Omit<FuiNotificationConfig, 'variant' | 'title'>> & {
|
|
123
|
+
position?: FuiNotificationPosition;
|
|
124
|
+
}): FuiNotificationRef;
|
|
125
|
+
/**
|
|
126
|
+
* Show an info notification
|
|
127
|
+
*/
|
|
128
|
+
info(title: string, options?: Partial<Omit<FuiNotificationConfig, 'variant' | 'title'>> & {
|
|
129
|
+
position?: FuiNotificationPosition;
|
|
130
|
+
}): FuiNotificationRef;
|
|
131
|
+
/**
|
|
132
|
+
* Show a warning notification
|
|
133
|
+
*/
|
|
134
|
+
warning(title: string, options?: Partial<Omit<FuiNotificationConfig, 'variant' | 'title'>> & {
|
|
135
|
+
position?: FuiNotificationPosition;
|
|
136
|
+
}): FuiNotificationRef;
|
|
137
|
+
/**
|
|
138
|
+
* Show an error notification
|
|
139
|
+
*/
|
|
140
|
+
error(title: string, options?: Partial<Omit<FuiNotificationConfig, 'variant' | 'title'>> & {
|
|
141
|
+
position?: FuiNotificationPosition;
|
|
142
|
+
}): FuiNotificationRef;
|
|
143
|
+
/**
|
|
144
|
+
* Show a primary notification
|
|
145
|
+
*/
|
|
146
|
+
primary(title: string, options?: Partial<Omit<FuiNotificationConfig, 'variant' | 'title'>> & {
|
|
147
|
+
position?: FuiNotificationPosition;
|
|
148
|
+
}): FuiNotificationRef;
|
|
149
|
+
/**
|
|
150
|
+
* Show a generic notification
|
|
151
|
+
*/
|
|
152
|
+
generic(title: string, options?: Partial<Omit<FuiNotificationConfig, 'variant' | 'title'>> & {
|
|
153
|
+
position?: FuiNotificationPosition;
|
|
154
|
+
}): FuiNotificationRef;
|
|
155
|
+
/**
|
|
156
|
+
* Show a notification with full configuration
|
|
157
|
+
*/
|
|
158
|
+
show(config: FuiNotificationConfig & {
|
|
159
|
+
position?: FuiNotificationPosition;
|
|
160
|
+
}): FuiNotificationRef;
|
|
161
|
+
/**
|
|
162
|
+
* Clear all notifications at a specific position
|
|
163
|
+
*/
|
|
164
|
+
clearPosition(position: FuiNotificationPosition): void;
|
|
165
|
+
/**
|
|
166
|
+
* Clear all notifications
|
|
167
|
+
*/
|
|
168
|
+
clearAll(): void;
|
|
169
|
+
private _getOrCreateContainer;
|
|
170
|
+
private _createContainer;
|
|
171
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FuiNotificationService, never>;
|
|
172
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<FuiNotificationService>;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
/**
|
|
176
|
+
* Container component for displaying stacked notifications.
|
|
177
|
+
* This component is created by the notification service and managed internally.
|
|
178
|
+
* @internal
|
|
179
|
+
*/
|
|
180
|
+
declare class FuiNotificationContainerComponent {
|
|
181
|
+
/**
|
|
182
|
+
* List of active notifications
|
|
183
|
+
*/
|
|
184
|
+
readonly notifications: i0.WritableSignal<FuiNotificationRef[]>;
|
|
185
|
+
/**
|
|
186
|
+
* Progress values for each notification (0-100)
|
|
187
|
+
*/
|
|
188
|
+
readonly progressValues: i0.WritableSignal<Map<any, any>>;
|
|
189
|
+
/**
|
|
190
|
+
* Timers for auto-dismiss
|
|
191
|
+
*/
|
|
192
|
+
private readonly timers;
|
|
193
|
+
constructor();
|
|
194
|
+
/**
|
|
195
|
+
* Add a notification to the container
|
|
196
|
+
*/
|
|
197
|
+
addNotification(notification: FuiNotificationRef): void;
|
|
198
|
+
/**
|
|
199
|
+
* Remove a notification from the container
|
|
200
|
+
*/
|
|
201
|
+
removeNotification(notificationId: string): void;
|
|
202
|
+
/**
|
|
203
|
+
* Handle notification close button click
|
|
204
|
+
*/
|
|
205
|
+
onNotificationClose(notification: FuiNotificationRef): void;
|
|
206
|
+
/**
|
|
207
|
+
* Get the progress value for a notification
|
|
208
|
+
*/
|
|
209
|
+
getProgress(notificationId: string): number;
|
|
210
|
+
/**
|
|
211
|
+
* Check if notification should show progress bar
|
|
212
|
+
*/
|
|
213
|
+
shouldShowProgress(notification: FuiNotificationRef): boolean;
|
|
214
|
+
private _setupAutoDismiss;
|
|
215
|
+
private _removeNotification;
|
|
216
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FuiNotificationContainerComponent, never>;
|
|
217
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FuiNotificationContainerComponent, "fui-notification-container", never, {}, {}, never, never, true, never>;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
export { FuiNotificationContainerComponent, FuiNotificationRef, FuiNotificationService };
|
|
221
|
+
//# sourceMappingURL=raintonic-formaui-services-notification.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"raintonic-formaui-services-notification.d.ts","sources":["../../../lib/services/notification/notification-ref.ts","../../../lib/services/notification/notification.service.ts","../../../lib/services/notification/notification-container.component.ts"],"mappings":";;;;AAGA;;;AAGG;AACH,cAAa,kBAAkB;AAeX;AACA,qBAAQ,qBAAqB;AAf/C;AACA;AAEA;;AAEG;AACH,0BAAsB,UAAU;AAEhC;;AAEG;AACH,6BAAyB,UAAU;AAGjB,oCACQ,qBAAqB;AAG/C;;AAEG;AACH;AAKA;;;AAGG;AACH;AAID;;AC3BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6DG;AACH,cAGa,sBAAsB;AACjC;AACA;AACA;AACA;AACA;AAEA;;AAEG;AACH;AAEA;;AAEG;;AAGH;;AAEG;;;AAOH;;AAEG;AACH,iCAA6B,uBAAuB;AAIpD;;AAEG;AACH,qCAEY,OAAO,CAAC,IAAI,CAAC,qBAAqB;mBAC/B,uBAAuB;AACnC,QACA,kBAAkB;AAQrB;;AAEG;AACH,kCAEY,OAAO,CAAC,IAAI,CAAC,qBAAqB;mBAC/B,uBAAuB;AACnC,QACA,kBAAkB;AAQrB;;AAEG;AACH,qCAEY,OAAO,CAAC,IAAI,CAAC,qBAAqB;mBAC/B,uBAAuB;AACnC,QACA,kBAAkB;AAQrB;;AAEG;AACH,mCAEY,OAAO,CAAC,IAAI,CAAC,qBAAqB;mBAC/B,uBAAuB;AACnC,QACA,kBAAkB;AAQrB;;AAEG;AACH,qCAEY,OAAO,CAAC,IAAI,CAAC,qBAAqB;mBAC/B,uBAAuB;AACnC,QACA,kBAAkB;AAQrB;;AAEG;AACH,qCAEY,OAAO,CAAC,IAAI,CAAC,qBAAqB;mBAC/B,uBAAuB;AACnC,QACA,kBAAkB;AAQrB;;AAEG;AACH,iBAAa,qBAAqB;mBAAgB,uBAAuB;AAAE,QAAG,kBAAkB;AAchG;;AAEG;AACH,4BAAwB,uBAAuB;AAW/C;;AAEG;AACH;AASA;AAWA;yCAvLW,sBAAsB;6CAAtB,sBAAsB;AA0MlC;;ACtRD;;;;AAIG;AACH,cAea,iCAAiC;AAC5C;;AAEG;4BACmBA,EAAA,CAAA,cAAA,CAAA,kBAAA;AAEtB;;AAEG;6BACoBA,EAAA,CAAA,cAAA,CAAA,GAAA;AAEvB;;AAEG;AACH;;AAaA;;AAEG;AACH,kCAA8B,kBAAkB;AAehD;;AAEG;AACH;AAOA;;AAEG;AACH,sCAAkC,kBAAkB;AAIpD;;AAEG;AACH;AAIA;;AAEG;AACH,qCAAiC,kBAAkB;AAKnD;AA4BA;yCAzGW,iCAAiC;2CAAjC,iCAAiC;AA+H7C;;;;","names":["_angular_core"]}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Signal } from '@angular/core';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Configuration interface for theme customization
|
|
6
|
+
*/
|
|
7
|
+
interface FuiThemeConfig {
|
|
8
|
+
/** Primary color for the theme (hex, rgb, hsl) */
|
|
9
|
+
primary?: string;
|
|
10
|
+
/** Secondary color for the theme (hex, rgb, hsl) */
|
|
11
|
+
secondary?: string;
|
|
12
|
+
/** Tertiary color for the theme (hex, rgb, hsl) */
|
|
13
|
+
tertiary?: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Available theme modes
|
|
17
|
+
*/
|
|
18
|
+
type FuiThemeMode = 'light' | 'dark' | 'auto';
|
|
19
|
+
/**
|
|
20
|
+
* # FuiTheme Service
|
|
21
|
+
*
|
|
22
|
+
* Central service for managing theme configuration and mode switching.
|
|
23
|
+
* Provides runtime theme customization with CSS variables and automatic palette generation.
|
|
24
|
+
*
|
|
25
|
+
* ## Features
|
|
26
|
+
* - Runtime theme customization
|
|
27
|
+
* - Light/dark/auto mode switching
|
|
28
|
+
* - Automatic color palette generation
|
|
29
|
+
* - CSS variables-based theming
|
|
30
|
+
* - Persistent theme preferences
|
|
31
|
+
* - System theme detection
|
|
32
|
+
*
|
|
33
|
+
* ## Usage
|
|
34
|
+
*
|
|
35
|
+
* ### Basic Theme Setup
|
|
36
|
+
* ```typescript
|
|
37
|
+
* import { FuiThemeService } from '@raintonic/formaui/services/theme';
|
|
38
|
+
*
|
|
39
|
+
* constructor(private themeService: FuiThemeService) {
|
|
40
|
+
* // Set custom theme colors
|
|
41
|
+
* this.themeService.setTheme({
|
|
42
|
+
* primary: '#007bff',
|
|
43
|
+
* secondary: '#6c757d',
|
|
44
|
+
* tertiary: '#28a745'
|
|
45
|
+
* });
|
|
46
|
+
* }
|
|
47
|
+
* ```
|
|
48
|
+
*
|
|
49
|
+
* ### Theme Mode Switching
|
|
50
|
+
* ```typescript
|
|
51
|
+
* // Switch to dark mode
|
|
52
|
+
* this.themeService.setMode('dark');
|
|
53
|
+
*
|
|
54
|
+
* // Switch to auto (follows system preference)
|
|
55
|
+
* this.themeService.setMode('auto');
|
|
56
|
+
*
|
|
57
|
+
* // Get current mode
|
|
58
|
+
* const currentMode = this.themeService.currentMode();
|
|
59
|
+
* const isDark = this.themeService.isDark();
|
|
60
|
+
* ```
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```typescript
|
|
64
|
+
* import { Component, effect } from '@angular/core';
|
|
65
|
+
* import { FuiThemeService } from '@raintonic/formaui/services/theme';
|
|
66
|
+
*
|
|
67
|
+
* @Component({
|
|
68
|
+
* template: `
|
|
69
|
+
* <div class="theme-controls">
|
|
70
|
+
* <button rtButton (click)="setLightMode()">Light</button>
|
|
71
|
+
* <button rtButton (click)="setDarkMode()">Dark</button>
|
|
72
|
+
* <button rtButton (click)="setAutoMode()">Auto</button>
|
|
73
|
+
* </div>
|
|
74
|
+
* `
|
|
75
|
+
* })
|
|
76
|
+
* export class ThemeControlsComponent {
|
|
77
|
+
* constructor(public themeService: FuiThemeService) {}
|
|
78
|
+
*
|
|
79
|
+
* setLightMode() { this.themeService.setMode('light'); }
|
|
80
|
+
* setDarkMode() { this.themeService.setMode('dark'); }
|
|
81
|
+
* setAutoMode() { this.themeService.setMode('auto'); }
|
|
82
|
+
* }
|
|
83
|
+
* ```
|
|
84
|
+
*/
|
|
85
|
+
declare class FuiThemeService {
|
|
86
|
+
private readonly _destroyRef;
|
|
87
|
+
private readonly _document;
|
|
88
|
+
private readonly _platformId;
|
|
89
|
+
private readonly _currentMode;
|
|
90
|
+
private readonly _isDark;
|
|
91
|
+
readonly currentMode: Signal<FuiThemeMode>;
|
|
92
|
+
readonly isDark: Signal<boolean>;
|
|
93
|
+
constructor();
|
|
94
|
+
/**
|
|
95
|
+
* Initialize theme with custom colors
|
|
96
|
+
*/
|
|
97
|
+
initTheme(config?: FuiThemeConfig): void;
|
|
98
|
+
/**
|
|
99
|
+
* Set theme colors dynamically
|
|
100
|
+
*/
|
|
101
|
+
setTheme(config?: FuiThemeConfig): void;
|
|
102
|
+
/**
|
|
103
|
+
* Set theme mode
|
|
104
|
+
*/
|
|
105
|
+
setThemeMode(mode: FuiThemeMode): void;
|
|
106
|
+
/**
|
|
107
|
+
* Set theme mode (preferred method)
|
|
108
|
+
*/
|
|
109
|
+
setMode(mode: FuiThemeMode): void;
|
|
110
|
+
/**
|
|
111
|
+
* Toggle between light and dark themes
|
|
112
|
+
*/
|
|
113
|
+
toggleTheme(): void;
|
|
114
|
+
private _initializeTheme;
|
|
115
|
+
private _setupMediaQueryListener;
|
|
116
|
+
private _applyThemeMode;
|
|
117
|
+
private _updateDarkMode;
|
|
118
|
+
private _setColorPalette;
|
|
119
|
+
private _generateColorPalette;
|
|
120
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FuiThemeService, never>;
|
|
121
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<FuiThemeService>;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export { FuiThemeService };
|
|
125
|
+
export type { FuiThemeConfig, FuiThemeMode };
|
|
126
|
+
//# sourceMappingURL=raintonic-formaui-services-theme.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"raintonic-formaui-services-theme.d.ts","sources":["../../../lib/services/theme/theme.service.ts"],"mappings":";;;AAGA;;AAEG;UACc,cAAc;;;;;;;AAO9B;AAED;;AAEG;AACG,KAAM,YAAY;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiEG;AACH,cAGa,eAAe;AAC1B;AACA;AACA;AACA;AACA;AAEA,0BAAsB,MAAM,CAAC,YAAY;AACzC,qBAAiB,MAAM;;AAOvB;;AAEG;AACH,uBAAkB,cAAmB;AAIrC;;AAEG;AACH,sBAAiB,cAAmB;AAgBpC;;AAEG;AACH,uBAAmB,YAAY;AAI/B;;AAEG;AACH,kBAAc,YAAY;AAK1B;;AAEG;AACH;AAKA;AAoBA;AA+BA;AA+BA;AAKA;AAWA;yCAlKW,eAAe;6CAAf,eAAe;AAkM3B;;;;","names":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import axe from 'axe-core';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Runs axe-core accessibility audit on the given element.
|
|
5
|
+
* Returns violations array. Empty array means no violations.
|
|
6
|
+
*/
|
|
7
|
+
declare function runA11yAudit(element: HTMLElement): Promise<axe.Result[]>;
|
|
8
|
+
|
|
9
|
+
declare function pressKey(element: HTMLElement, key: string, modifiers?: {
|
|
10
|
+
shift?: boolean;
|
|
11
|
+
ctrl?: boolean;
|
|
12
|
+
alt?: boolean;
|
|
13
|
+
}): void;
|
|
14
|
+
declare function pressTab(element: HTMLElement, shift?: boolean): void;
|
|
15
|
+
declare function pressArrowDown(element: HTMLElement): void;
|
|
16
|
+
declare function pressArrowUp(element: HTMLElement): void;
|
|
17
|
+
declare function pressEnter(element: HTMLElement): void;
|
|
18
|
+
declare function pressSpace(element: HTMLElement): void;
|
|
19
|
+
declare function pressEscape(element: HTMLElement): void;
|
|
20
|
+
declare function pressHome(element: HTMLElement): void;
|
|
21
|
+
declare function pressEnd(element: HTMLElement): void;
|
|
22
|
+
|
|
23
|
+
export { pressArrowDown, pressArrowUp, pressEnd, pressEnter, pressEscape, pressHome, pressKey, pressSpace, pressTab, runA11yAudit };
|
|
24
|
+
//# sourceMappingURL=raintonic-formaui-test-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"raintonic-formaui-test-utils.d.ts","sources":["../../../lib/test-utils/a11y-test.util.ts","../../../lib/test-utils/keyboard-test.util.ts"],"mappings":";;AAEA;;;AAGG;AACH,iBAAsB,YAAY,UAAU,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM;;ACN5E,iBAAgB,QAAQ,UACb,WAAW;;;;AAE0C;AAahE,iBAAgB,QAAQ,UAAU,WAAW;AAI7C,iBAAgB,cAAc,UAAU,WAAW;AAInD,iBAAgB,YAAY,UAAU,WAAW;AAIjD,iBAAgB,UAAU,UAAU,WAAW;AAI/C,iBAAgB,UAAU,UAAU,WAAW;AAI/C,iBAAgB,WAAW,UAAU,WAAW;AAIhD,iBAAgB,SAAS,UAAU,WAAW;AAI9C,iBAAgB,QAAQ,UAAU,WAAW;;;;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"raintonic-formaui.d.ts","sources":["../../../lib/src/public-api.ts"],"mappings":"AAAA,cAAa,eAAe;;;;","names":[]}
|