@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,341 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { DoCheck, OnDestroy, InputSignal, OutputEmitterRef, WritableSignal, ElementRef } from '@angular/core';
|
|
3
|
+
import { ControlValueAccessor, Validator, NgControl, AbstractControl, ValidationErrors } from '@angular/forms';
|
|
4
|
+
import { Subject } from 'rxjs';
|
|
5
|
+
import { FuiFormFieldControl, ErrorStateMatcher } from '@raintonic/formaui/core';
|
|
6
|
+
|
|
7
|
+
type DatePickerValue = Date | null;
|
|
8
|
+
interface DateRange {
|
|
9
|
+
start: Date | null;
|
|
10
|
+
end: Date | null;
|
|
11
|
+
}
|
|
12
|
+
type DatePickerModelValue = DatePickerValue | DateRange;
|
|
13
|
+
type DateFilterFn = (date: Date) => boolean;
|
|
14
|
+
type CalendarView = 'days' | 'months' | 'years';
|
|
15
|
+
interface CalendarDay {
|
|
16
|
+
date: Date;
|
|
17
|
+
day: number;
|
|
18
|
+
isCurrentMonth: boolean;
|
|
19
|
+
isToday: boolean;
|
|
20
|
+
isSelected: boolean;
|
|
21
|
+
isDisabled: boolean;
|
|
22
|
+
isRangeStart: boolean;
|
|
23
|
+
isRangeEnd: boolean;
|
|
24
|
+
isInRange: boolean;
|
|
25
|
+
isRangePreview: boolean;
|
|
26
|
+
}
|
|
27
|
+
interface CalendarMonth {
|
|
28
|
+
month: number;
|
|
29
|
+
label: string;
|
|
30
|
+
isCurrentMonth: boolean;
|
|
31
|
+
isSelected: boolean;
|
|
32
|
+
isDisabled: boolean;
|
|
33
|
+
}
|
|
34
|
+
interface CalendarYear {
|
|
35
|
+
year: number;
|
|
36
|
+
isCurrentYear: boolean;
|
|
37
|
+
isSelected: boolean;
|
|
38
|
+
isDisabled: boolean;
|
|
39
|
+
}
|
|
40
|
+
declare const DEFAULT_DATE_FORMAT = "dd/MM/yyyy";
|
|
41
|
+
declare const RANGE_SEPARATOR = " \u2014 ";
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* @component FuiCalendarComponent
|
|
45
|
+
* @selector fui-calendar
|
|
46
|
+
* @description Internal calendar grid used by `fui-date-picker`. Renders day, month,
|
|
47
|
+
* and year views with full keyboard navigation (Arrow keys, Home, End, PageUp/Down,
|
|
48
|
+
* Enter, Escape). Supports single-date selection and range highlighting with hover preview.
|
|
49
|
+
*
|
|
50
|
+
* @input selected - Currently selected date for single mode (Date | null)
|
|
51
|
+
* @input rangeStart - Start date of a range selection (Date | null)
|
|
52
|
+
* @input rangeEnd - End date of a range selection (Date | null)
|
|
53
|
+
* @input range - Whether range mode is active (default: false)
|
|
54
|
+
* @input min - Minimum selectable date (Date | null)
|
|
55
|
+
* @input max - Maximum selectable date (Date | null)
|
|
56
|
+
* @input dateFilter - Custom filter function to disable specific dates (DateFilterFn | null)
|
|
57
|
+
* @input startAt - Initial date to display when the calendar opens (Date | null)
|
|
58
|
+
* @input firstDayOfWeek - First day of the week: 0 = Sunday, 1 = Monday (default: 1)
|
|
59
|
+
* @input hoveredDate - Currently hovered date for range preview (Date | null)
|
|
60
|
+
*
|
|
61
|
+
* @output dateSelected - Emits the Date when a day cell is clicked or confirmed via keyboard
|
|
62
|
+
* @output dateHovered - Emits the hovered Date or null on mouse enter/leave
|
|
63
|
+
* @output monthChanged - Emits the new view Date when navigating months/years
|
|
64
|
+
*
|
|
65
|
+
* @example
|
|
66
|
+
* <fui-calendar
|
|
67
|
+
* [selected]="selectedDate"
|
|
68
|
+
* [min]="minDate"
|
|
69
|
+
* [max]="maxDate"
|
|
70
|
+
* (dateSelected)="onDateSelected($event)">
|
|
71
|
+
* </fui-calendar>
|
|
72
|
+
*/
|
|
73
|
+
declare class FuiCalendarComponent {
|
|
74
|
+
readonly selected: _angular_core.InputSignal<Date | null>;
|
|
75
|
+
readonly rangeStart: _angular_core.InputSignal<Date | null>;
|
|
76
|
+
readonly rangeEnd: _angular_core.InputSignal<Date | null>;
|
|
77
|
+
readonly range: _angular_core.InputSignal<boolean>;
|
|
78
|
+
readonly min: _angular_core.InputSignal<Date | null>;
|
|
79
|
+
readonly max: _angular_core.InputSignal<Date | null>;
|
|
80
|
+
readonly dateFilter: _angular_core.InputSignal<DateFilterFn | null>;
|
|
81
|
+
readonly startAt: _angular_core.InputSignal<Date | null>;
|
|
82
|
+
readonly firstDayOfWeek: _angular_core.InputSignal<number>;
|
|
83
|
+
readonly hoveredDate: _angular_core.InputSignal<Date | null>;
|
|
84
|
+
readonly dateSelected: _angular_core.OutputEmitterRef<Date>;
|
|
85
|
+
readonly dateHovered: _angular_core.OutputEmitterRef<Date | null>;
|
|
86
|
+
readonly monthChanged: _angular_core.OutputEmitterRef<Date>;
|
|
87
|
+
readonly currentView: _angular_core.WritableSignal<CalendarView>;
|
|
88
|
+
readonly viewDate: _angular_core.WritableSignal<Date>;
|
|
89
|
+
readonly activeDate: _angular_core.WritableSignal<Date>;
|
|
90
|
+
readonly weekDayHeaders: _angular_core.Signal<string[]>;
|
|
91
|
+
readonly monthYearLabel: _angular_core.Signal<string>;
|
|
92
|
+
readonly yearLabel: _angular_core.Signal<string>;
|
|
93
|
+
readonly decadeLabel: _angular_core.Signal<string>;
|
|
94
|
+
readonly prevButtonLabel: _angular_core.Signal<"Previous month" | "Previous year" | "Previous decade">;
|
|
95
|
+
readonly nextButtonLabel: _angular_core.Signal<"Next month" | "Next year" | "Next decade">;
|
|
96
|
+
readonly headerButtonLabel: _angular_core.Signal<string>;
|
|
97
|
+
readonly weeks: _angular_core.Signal<CalendarDay[][]>;
|
|
98
|
+
readonly monthsGrid: _angular_core.Signal<CalendarMonth[][]>;
|
|
99
|
+
readonly yearsGrid: _angular_core.Signal<CalendarYear[][]>;
|
|
100
|
+
private readonly _elementRef;
|
|
101
|
+
constructor();
|
|
102
|
+
onHeaderLabelClick(): void;
|
|
103
|
+
onPrev(): void;
|
|
104
|
+
onNext(): void;
|
|
105
|
+
onDayClick(day: CalendarDay): void;
|
|
106
|
+
onDayMouseEnter(day: CalendarDay): void;
|
|
107
|
+
onDayMouseLeave(): void;
|
|
108
|
+
onMonthClick(month: CalendarMonth): void;
|
|
109
|
+
onYearClick(year: CalendarYear): void;
|
|
110
|
+
onKeydown(event: KeyboardEvent): void;
|
|
111
|
+
private _handleDayKeydown;
|
|
112
|
+
private _handleMonthKeydown;
|
|
113
|
+
private _handleYearKeydown;
|
|
114
|
+
trackByWeek(_index: number, _week: CalendarDay[]): number;
|
|
115
|
+
trackByDay(_index: number, day: CalendarDay): number;
|
|
116
|
+
trackByMonth(_index: number, month: CalendarMonth): number;
|
|
117
|
+
trackByYear(_index: number, year: CalendarYear): number;
|
|
118
|
+
trackByRow(_index: number): number;
|
|
119
|
+
private _isMonthDisabled;
|
|
120
|
+
private _isYearDisabled;
|
|
121
|
+
focus(): void;
|
|
122
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FuiCalendarComponent, never>;
|
|
123
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FuiCalendarComponent, "fui-calendar", never, { "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "rangeStart": { "alias": "rangeStart"; "required": false; "isSignal": true; }; "rangeEnd": { "alias": "rangeEnd"; "required": false; "isSignal": true; }; "range": { "alias": "range"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "dateFilter": { "alias": "dateFilter"; "required": false; "isSignal": true; }; "startAt": { "alias": "startAt"; "required": false; "isSignal": true; }; "firstDayOfWeek": { "alias": "firstDayOfWeek"; "required": false; "isSignal": true; }; "hoveredDate": { "alias": "hoveredDate"; "required": false; "isSignal": true; }; }, { "dateSelected": "dateSelected"; "dateHovered": "dateHovered"; "monthChanged": "monthChanged"; }, never, never, true, never>;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* @component FuiDatePickerComponent
|
|
128
|
+
* @selector fui-date-picker
|
|
129
|
+
* @description A date picker form control with inline text input, calendar overlay panel,
|
|
130
|
+
* and optional range selection. Integrates with `fui-form-field` via `FuiFormFieldControl`
|
|
131
|
+
* and supports Reactive Forms (ControlValueAccessor) plus built-in Validator for min/max/filter
|
|
132
|
+
* constraints. Uses the overlay service for proper dropdown positioning.
|
|
133
|
+
*
|
|
134
|
+
* @input placeholder - Placeholder text for the date input (alias: 'placeholder')
|
|
135
|
+
* @input disabled - Whether the picker is disabled (alias: 'disabled')
|
|
136
|
+
* @input readonly - Whether the picker is read-only
|
|
137
|
+
* @input range - Enables date-range mode with start/end inputs (default: false)
|
|
138
|
+
* @input format - Display format string (default: 'DD/MM/YYYY')
|
|
139
|
+
* @input min - Minimum selectable date (Date | null)
|
|
140
|
+
* @input max - Maximum selectable date (Date | null)
|
|
141
|
+
* @input dateFilter - Custom filter function to disable specific dates (DateFilterFn | null)
|
|
142
|
+
* @input startAt - Initial calendar view date when opened (Date | null)
|
|
143
|
+
* @input firstDayOfWeek - First day of the week: 0 = Sunday, 1 = Monday (default: 1)
|
|
144
|
+
* @input rangeSeparator - Separator string between range start/end display (default: RANGE_SEPARATOR)
|
|
145
|
+
* @input errorStateMatcher - Custom error state matcher (ErrorStateMatcher | null)
|
|
146
|
+
*
|
|
147
|
+
* @output valueChange - Emits the new model value on change (Date | DateRange | null)
|
|
148
|
+
* @output dateChange - Emits the new model value on date selection (Date | DateRange | null)
|
|
149
|
+
* @output openedChange - Emits boolean when the calendar panel opens or closes
|
|
150
|
+
*
|
|
151
|
+
* @cssvar --fui-date-picker-font-size - Font size of the input text
|
|
152
|
+
* @cssvar --fui-date-picker-panel-border-radius - Border radius of the calendar panel
|
|
153
|
+
* @cssvar --fui-date-picker-panel-shadow - Box shadow of the calendar panel
|
|
154
|
+
* @cssvar --fui-date-picker-panel-bg - Background color of the calendar panel
|
|
155
|
+
* @cssvar --fui-date-picker-panel-border-color - Border color of the calendar panel
|
|
156
|
+
* @cssvar --fui-date-picker-toggle-size - Size of the calendar toggle icon button
|
|
157
|
+
*
|
|
158
|
+
* @example
|
|
159
|
+
* <fui-form-field>
|
|
160
|
+
* <fui-label>Birth date</fui-label>
|
|
161
|
+
* <fui-date-picker formControlName="birthDate" placeholder="DD/MM/YYYY"></fui-date-picker>
|
|
162
|
+
* </fui-form-field>
|
|
163
|
+
*
|
|
164
|
+
* @example
|
|
165
|
+
* <fui-form-field>
|
|
166
|
+
* <fui-label>Stay period</fui-label>
|
|
167
|
+
* <fui-date-picker [range]="true" formControlName="period"></fui-date-picker>
|
|
168
|
+
* </fui-form-field>
|
|
169
|
+
*/
|
|
170
|
+
declare class FuiDatePickerComponent implements ControlValueAccessor, Validator, FuiFormFieldControl, DoCheck, OnDestroy {
|
|
171
|
+
static nextId: number;
|
|
172
|
+
readonly controlType = "fui-date-picker";
|
|
173
|
+
readonly placeholderInput: InputSignal<string>;
|
|
174
|
+
readonly disabledInput: InputSignal<boolean>;
|
|
175
|
+
readonly readonly: InputSignal<boolean>;
|
|
176
|
+
readonly range: InputSignal<boolean>;
|
|
177
|
+
readonly format: InputSignal<string>;
|
|
178
|
+
readonly min: InputSignal<Date | null>;
|
|
179
|
+
readonly max: InputSignal<Date | null>;
|
|
180
|
+
readonly dateFilter: InputSignal<DateFilterFn | null>;
|
|
181
|
+
readonly startAt: InputSignal<Date | null>;
|
|
182
|
+
readonly firstDayOfWeek: InputSignal<number>;
|
|
183
|
+
readonly rangeSeparator: InputSignal<string>;
|
|
184
|
+
readonly errorStateMatcher: InputSignal<ErrorStateMatcher | null>;
|
|
185
|
+
readonly valueChange: OutputEmitterRef<DatePickerModelValue>;
|
|
186
|
+
readonly dateChange: OutputEmitterRef<DatePickerModelValue>;
|
|
187
|
+
readonly openedChange: OutputEmitterRef<boolean>;
|
|
188
|
+
private readonly _value;
|
|
189
|
+
private readonly _focused;
|
|
190
|
+
private readonly _disabled;
|
|
191
|
+
private readonly _ngControlDisabled;
|
|
192
|
+
private readonly _required;
|
|
193
|
+
private readonly _errorState;
|
|
194
|
+
readonly _readOnly: WritableSignal<boolean>;
|
|
195
|
+
readonly panelOpen: WritableSignal<boolean>;
|
|
196
|
+
readonly hoveredDate: WritableSignal<Date | null>;
|
|
197
|
+
readonly stateChanges: Subject<void>;
|
|
198
|
+
private _uid;
|
|
199
|
+
_ariaDescribedby: string | null;
|
|
200
|
+
private _parentForm;
|
|
201
|
+
private _parentFormGroup;
|
|
202
|
+
private _defaultErrorStateMatcher;
|
|
203
|
+
private readonly _ngControlRef;
|
|
204
|
+
get ngControl(): NgControl | null;
|
|
205
|
+
readonly placeholder: _angular_core.Signal<string>;
|
|
206
|
+
readonly required: WritableSignal<boolean>;
|
|
207
|
+
readonly value: WritableSignal<DatePickerModelValue>;
|
|
208
|
+
readonly focused: WritableSignal<boolean>;
|
|
209
|
+
readonly disabled: _angular_core.Signal<boolean>;
|
|
210
|
+
readonly errorState: WritableSignal<boolean>;
|
|
211
|
+
readonly id: string;
|
|
212
|
+
readonly empty: _angular_core.Signal<boolean>;
|
|
213
|
+
readonly selectedDate: _angular_core.Signal<Date | null>;
|
|
214
|
+
readonly rangeStartDate: _angular_core.Signal<Date | null>;
|
|
215
|
+
readonly rangeEndDate: _angular_core.Signal<Date | null>;
|
|
216
|
+
triggerEl?: ElementRef<HTMLDivElement>;
|
|
217
|
+
calendarPanel?: ElementRef<HTMLDivElement>;
|
|
218
|
+
startInputEl?: ElementRef<HTMLInputElement>;
|
|
219
|
+
endInputEl?: ElementRef<HTMLInputElement>;
|
|
220
|
+
calendarComponent?: FuiCalendarComponent;
|
|
221
|
+
private _overlayRef;
|
|
222
|
+
private _overlaySubscriptions;
|
|
223
|
+
private readonly _overlayService;
|
|
224
|
+
private readonly _elementRef;
|
|
225
|
+
private readonly _document;
|
|
226
|
+
private readonly _ngZone;
|
|
227
|
+
private _outsideClickSub?;
|
|
228
|
+
private _onChange;
|
|
229
|
+
private _onTouched;
|
|
230
|
+
private _onValidatorChange;
|
|
231
|
+
readonly startInputText: WritableSignal<string>;
|
|
232
|
+
readonly endInputText: WritableSignal<string>;
|
|
233
|
+
readonly displayValue: _angular_core.Signal<string>;
|
|
234
|
+
constructor();
|
|
235
|
+
ngDoCheck(): void;
|
|
236
|
+
ngOnDestroy(): void;
|
|
237
|
+
writeValue(value: DatePickerModelValue | string): void;
|
|
238
|
+
registerOnChange(fn: (value: DatePickerModelValue) => void): void;
|
|
239
|
+
registerOnTouched(fn: () => void): void;
|
|
240
|
+
setDisabledState(isDisabled: boolean): void;
|
|
241
|
+
validate(_control: AbstractControl): ValidationErrors | null;
|
|
242
|
+
registerOnValidatorChange(fn: () => void): void;
|
|
243
|
+
private _validateSingleDate;
|
|
244
|
+
onContainerClick(_event: MouseEvent): void;
|
|
245
|
+
setDescribedByIds(ids: string[]): void;
|
|
246
|
+
setReadOnly(readOnly: boolean): void;
|
|
247
|
+
open(): void;
|
|
248
|
+
close(): void;
|
|
249
|
+
toggle(): void;
|
|
250
|
+
onTriggerClick(): void;
|
|
251
|
+
onToggleClick(event: MouseEvent): void;
|
|
252
|
+
onInput(event: Event): void;
|
|
253
|
+
onBlur(): void;
|
|
254
|
+
onKeydown(event: KeyboardEvent): void;
|
|
255
|
+
onEndInput(event: Event): void;
|
|
256
|
+
onEndBlur(): void;
|
|
257
|
+
onEndKeydown(event: KeyboardEvent): void;
|
|
258
|
+
onInputFocus(): void;
|
|
259
|
+
onDateSelected(date: Date): void;
|
|
260
|
+
onDateHovered(date: Date | null): void;
|
|
261
|
+
private _listenForOutsideClicks;
|
|
262
|
+
private _handleRangeSelection;
|
|
263
|
+
private _setValue;
|
|
264
|
+
private _createOverlay;
|
|
265
|
+
private _disposeOverlay;
|
|
266
|
+
private _isDateRange;
|
|
267
|
+
getStartPlaceholder(): string;
|
|
268
|
+
getEndPlaceholder(): string;
|
|
269
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FuiDatePickerComponent, never>;
|
|
270
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FuiDatePickerComponent, "fui-date-picker", never, { "placeholderInput": { "alias": "placeholder"; "required": false; "isSignal": true; }; "disabledInput": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "range": { "alias": "range"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "dateFilter": { "alias": "dateFilter"; "required": false; "isSignal": true; }; "startAt": { "alias": "startAt"; "required": false; "isSignal": true; }; "firstDayOfWeek": { "alias": "firstDayOfWeek"; "required": false; "isSignal": true; }; "rangeSeparator": { "alias": "rangeSeparator"; "required": false; "isSignal": true; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "dateChange": "dateChange"; "openedChange": "openedChange"; }, never, never, true, never>;
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
/**
|
|
274
|
+
* Normalize a date to noon to avoid DST edge cases.
|
|
275
|
+
*/
|
|
276
|
+
declare function normalizeDate(date: Date): Date;
|
|
277
|
+
/**
|
|
278
|
+
* Check if two dates are the same day (ignoring time).
|
|
279
|
+
*/
|
|
280
|
+
declare function isSameDay(a: Date | null | undefined, b: Date | null | undefined): boolean;
|
|
281
|
+
/**
|
|
282
|
+
* Check if a date is within [min, max] bounds (day-level).
|
|
283
|
+
*/
|
|
284
|
+
declare function isDateInRange(date: Date, min: Date | null, max: Date | null): boolean;
|
|
285
|
+
/**
|
|
286
|
+
* Get number of days in a given month.
|
|
287
|
+
*/
|
|
288
|
+
declare function getDaysInMonth(year: number, month: number): number;
|
|
289
|
+
/**
|
|
290
|
+
* Get localized weekday labels.
|
|
291
|
+
* @param firstDayOfWeek 0=Sunday, 1=Monday, etc.
|
|
292
|
+
* @param format 'short' | 'narrow'
|
|
293
|
+
*/
|
|
294
|
+
declare function getWeekdayLabels(firstDayOfWeek?: number, format?: 'short' | 'narrow'): string[];
|
|
295
|
+
/**
|
|
296
|
+
* Get localized month label.
|
|
297
|
+
*/
|
|
298
|
+
declare function getMonthLabel(year: number, month: number, format?: 'long' | 'short'): string;
|
|
299
|
+
/**
|
|
300
|
+
* Get short month name (for month view grid).
|
|
301
|
+
*/
|
|
302
|
+
declare function getShortMonthName(month: number): string;
|
|
303
|
+
/**
|
|
304
|
+
* Build a 6x7 calendar grid for a given month.
|
|
305
|
+
* @returns 6 rows of 7 Date objects each.
|
|
306
|
+
*/
|
|
307
|
+
declare function buildCalendarGrid(year: number, month: number, firstDayOfWeek?: number): Date[][];
|
|
308
|
+
/**
|
|
309
|
+
* Format a Date to a string using the given format pattern.
|
|
310
|
+
* Supported tokens: dd, d, MM, M, yyyy, yy
|
|
311
|
+
*/
|
|
312
|
+
declare function formatDate(date: Date | null, format: string): string;
|
|
313
|
+
/**
|
|
314
|
+
* Parse a date string to a Date using the given format.
|
|
315
|
+
* Returns null on failure.
|
|
316
|
+
*/
|
|
317
|
+
declare function parseDate(text: string, format: string): Date | null;
|
|
318
|
+
/**
|
|
319
|
+
* Apply date mask to raw input as user types.
|
|
320
|
+
* Returns the masked value and corrected cursor position.
|
|
321
|
+
*/
|
|
322
|
+
declare function applyDateMask(rawInput: string, format: string): {
|
|
323
|
+
masked: string;
|
|
324
|
+
cursor: number;
|
|
325
|
+
};
|
|
326
|
+
/**
|
|
327
|
+
* Check if date a is before date b (day-level).
|
|
328
|
+
*/
|
|
329
|
+
declare function isBefore(a: Date, b: Date): boolean;
|
|
330
|
+
/**
|
|
331
|
+
* Check if date a is after date b (day-level).
|
|
332
|
+
*/
|
|
333
|
+
declare function isAfter(a: Date, b: Date): boolean;
|
|
334
|
+
/**
|
|
335
|
+
* Check if date is between start and end (inclusive, day-level).
|
|
336
|
+
*/
|
|
337
|
+
declare function isBetween(date: Date, start: Date | null, end: Date | null): boolean;
|
|
338
|
+
|
|
339
|
+
export { DEFAULT_DATE_FORMAT, FuiCalendarComponent, FuiDatePickerComponent, RANGE_SEPARATOR, applyDateMask, buildCalendarGrid, formatDate, getDaysInMonth, getMonthLabel, getShortMonthName, getWeekdayLabels, isAfter, isBefore, isBetween, isDateInRange, isSameDay, normalizeDate, parseDate };
|
|
340
|
+
export type { CalendarDay, CalendarMonth, CalendarView, CalendarYear, DateFilterFn, DatePickerModelValue, DatePickerValue, DateRange };
|
|
341
|
+
//# sourceMappingURL=raintonic-formaui-components-date-picker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"raintonic-formaui-components-date-picker.d.ts","sources":["../../../lib/components/date-picker/date-picker.types.ts","../../../lib/components/date-picker/calendar/calendar.component.ts","../../../lib/components/date-picker/date-picker.component.ts","../../../lib/components/date-picker/date-picker.utils.ts"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { ElementRef } from '@angular/core';
|
|
3
|
+
|
|
4
|
+
type FuiDividerOrientation = 'horizontal' | 'vertical';
|
|
5
|
+
type FuiDividerTextAlign = 'start' | 'center' | 'end';
|
|
6
|
+
|
|
7
|
+
declare class FuiDividerComponent {
|
|
8
|
+
static nextId: number;
|
|
9
|
+
readonly orientation: _angular_core.InputSignal<FuiDividerOrientation>;
|
|
10
|
+
readonly textAlign: _angular_core.InputSignal<FuiDividerTextAlign>;
|
|
11
|
+
readonly inset: _angular_core.InputSignal<boolean>;
|
|
12
|
+
readonly hasContent: _angular_core.WritableSignal<boolean>;
|
|
13
|
+
contentWrapper?: ElementRef<HTMLElement>;
|
|
14
|
+
constructor();
|
|
15
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FuiDividerComponent, never>;
|
|
16
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FuiDividerComponent, "fui-divider", never, { "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "textAlign": { "alias": "textAlign"; "required": false; "isSignal": true; }; "inset": { "alias": "inset"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { FuiDividerComponent };
|
|
20
|
+
export type { FuiDividerOrientation, FuiDividerTextAlign };
|
|
21
|
+
//# sourceMappingURL=raintonic-formaui-components-divider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"raintonic-formaui-components-divider.d.ts","sources":["../../../lib/components/divider/divider.types.ts","../../../lib/components/divider/divider.component.ts"],"mappings":";;;KAAY,qBAAqB;AAC3B,KAAM,mBAAmB;;ACW/B,cAgBa,mBAAmB;;0BAGV,aAAA,CAAA,WAAA,CAAA,qBAAA;wBACF,aAAA,CAAA,WAAA,CAAA,mBAAA;oBACJ,aAAA,CAAA,WAAA;yBAEK,aAAA,CAAA,cAAA;AAE6B,qBAAiB,UAAU,CAAC,WAAW;;oDAT5E,mBAAmB;sDAAnB,mBAAmB;AAkB/B;;;;","names":[]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { WritableSignal, Signal, ElementRef } from '@angular/core';
|
|
3
|
+
|
|
4
|
+
type DrawerPosition = 'left' | 'right' | 'top' | 'bottom';
|
|
5
|
+
type DrawerMode = 'overlay' | 'push';
|
|
6
|
+
type DrawerSize = 'sm' | 'md' | 'lg' | 'full';
|
|
7
|
+
declare const DRAWER_SIZES: Record<DrawerSize, string>;
|
|
8
|
+
|
|
9
|
+
declare class FuiDrawerComponent {
|
|
10
|
+
private readonly _document;
|
|
11
|
+
readonly position: _angular_core.InputSignal<DrawerPosition>;
|
|
12
|
+
readonly mode: _angular_core.InputSignal<DrawerMode>;
|
|
13
|
+
readonly size: _angular_core.InputSignal<string>;
|
|
14
|
+
readonly opened: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
15
|
+
readonly hasBackdrop: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
16
|
+
readonly closeOnBackdropClick: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
17
|
+
readonly closeOnEsc: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
18
|
+
readonly title: _angular_core.InputSignal<string>;
|
|
19
|
+
readonly showCloseButton: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
20
|
+
/** ARIA label for the drawer, used when no visible title is present */
|
|
21
|
+
readonly ariaLabel: _angular_core.InputSignal<string | null>;
|
|
22
|
+
/** ID of an element that labels the drawer */
|
|
23
|
+
readonly ariaLabelledBy: _angular_core.InputSignal<string | null>;
|
|
24
|
+
readonly openedChange: _angular_core.OutputEmitterRef<boolean>;
|
|
25
|
+
readonly closed: _angular_core.OutputEmitterRef<void>;
|
|
26
|
+
readonly _opened: WritableSignal<boolean>;
|
|
27
|
+
readonly _animating: WritableSignal<boolean>;
|
|
28
|
+
private _lastInputValue;
|
|
29
|
+
private _previouslyFocusedElement;
|
|
30
|
+
readonly drawerPanel: Signal<ElementRef<HTMLElement> | undefined>;
|
|
31
|
+
readonly _sizeValue: Signal<string>;
|
|
32
|
+
readonly _isHorizontal: Signal<boolean>;
|
|
33
|
+
constructor();
|
|
34
|
+
onKeydown(event: KeyboardEvent): void;
|
|
35
|
+
open(): void;
|
|
36
|
+
close(): void;
|
|
37
|
+
toggle(): void;
|
|
38
|
+
private _openInternal;
|
|
39
|
+
private _closeInternal;
|
|
40
|
+
private _focusFirstTabbable;
|
|
41
|
+
private _getAllFocusableElements;
|
|
42
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FuiDrawerComponent, never>;
|
|
43
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FuiDrawerComponent, "fui-drawer", never, { "position": { "alias": "position"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "opened": { "alias": "opened"; "required": false; "isSignal": true; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; "isSignal": true; }; "closeOnBackdropClick": { "alias": "closeOnBackdropClick"; "required": false; "isSignal": true; }; "closeOnEsc": { "alias": "closeOnEsc"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "showCloseButton": { "alias": "showCloseButton"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; "isSignal": true; }; }, { "openedChange": "openedChange"; "closed": "closed"; }, never, ["*", "[drawerFooter]"], true, never>;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export { DRAWER_SIZES, FuiDrawerComponent };
|
|
47
|
+
export type { DrawerMode, DrawerPosition, DrawerSize };
|
|
48
|
+
//# sourceMappingURL=raintonic-formaui-components-drawer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"raintonic-formaui-components-drawer.d.ts","sources":["../../../lib/components/drawer/drawer.types.ts","../../../lib/components/drawer/drawer.component.ts"],"mappings":";;;AAAM,KAAM,cAAc;KACd,UAAU;AAChB,KAAM,UAAU;AAEtB,cAAa,YAAY,EAAE,MAAM,CAAC,UAAU;;ACiB5C,cAuBa,kBAAkB;AAC7B;uBAGiB,aAAA,CAAA,WAAA,CAAA,cAAA;mBACJ,aAAA,CAAA,WAAA,CAAA,UAAA;mBACA,aAAA,CAAA,WAAA;qBACE,aAAA,CAAA,wBAAA;0BACK,aAAA,CAAA,wBAAA;mCACS,aAAA,CAAA,wBAAA;yBACV,aAAA,CAAA,wBAAA;oBACL,aAAA,CAAA,WAAA;8BACU,aAAA,CAAA,wBAAA;;wBAGN,aAAA,CAAA,WAAA;;6BAGK,aAAA,CAAA,WAAA;2BAGF,aAAA,CAAA,gBAAA;qBACN,aAAA,CAAA,gBAAA;AAGf,sBAAkB,cAAc;AAChC,yBAAqB,cAAc;;;AASnC,0BAAsB,MAAM,CAAC,UAAU,CAAC,WAAW;AAGnD,yBAAqB,MAAM;AAK3B,4BAAwB,MAAM;;AAqB9B,qBAAiB,aAAa;AAkC9B;AAOA;AAQA;AAQA;AAUA;AAUA;AAcA;oDA3JW,kBAAkB;sDAAlB,kBAAkB;AA2K9B;;;;","names":[]}
|