@letsprogram/ng-oat 0.1.3 → 0.1.5
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/assets/oat/css/00-base.css +100 -1
- package/assets/oat/css/01-theme.css +39 -15
- package/assets/oat/css/accordion.css +1 -1
- package/assets/oat/css/alert.css +1 -1
- package/assets/oat/css/card.css +36 -0
- package/assets/oat/css/chips.css +2 -1
- package/assets/oat/css/dropdown.css +1 -0
- package/assets/oat/css/file-upload.css +2 -0
- package/assets/oat/css/grid.css +121 -77
- package/assets/oat/css/sidebar.css +10 -8
- package/assets/oat/css/tabs.css +8 -0
- package/assets/oat/css/toast.css +20 -4
- package/assets/oat/css/utilities.css +270 -4
- package/assets/oat/oat.css +1246 -669
- package/fesm2022/letsprogram-ng-oat.mjs +294 -91
- package/package.json +1 -1
- package/types/letsprogram-ng-oat.d.ts +144 -32
package/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { EnvironmentProviders, TemplateRef, ViewContainerRef, OnInit, OnDestroy, InjectionToken, AfterViewInit } from '@angular/core';
|
|
2
|
+
import { EnvironmentProviders, TemplateRef, ViewContainerRef, OnInit, OnDestroy, InjectionToken, AfterViewInit, ModelSignal } from '@angular/core';
|
|
3
3
|
import { FormCheckboxControl, FormValueControl, ValidationError, FieldState } from '@angular/forms/signals';
|
|
4
|
+
import { ControlValueAccessor } from '@angular/forms';
|
|
4
5
|
|
|
5
6
|
/** Configuration for provideNgOat() */
|
|
6
7
|
interface NgOatOptions {
|
|
@@ -707,12 +708,13 @@ declare class NgOatSpinner {
|
|
|
707
708
|
declare class NgOatSwitch implements FormCheckboxControl {
|
|
708
709
|
readonly label: _angular_core.InputSignal<string>;
|
|
709
710
|
readonly checked: _angular_core.ModelSignal<boolean>;
|
|
710
|
-
readonly disabled: _angular_core.
|
|
711
|
+
readonly disabled: _angular_core.ModelSignal<boolean>;
|
|
712
|
+
readonly touched: _angular_core.ModelSignal<boolean>;
|
|
711
713
|
readonly value: undefined;
|
|
712
714
|
readonly changed: _angular_core.OutputEmitterRef<boolean>;
|
|
713
715
|
onInputChange(event: Event): void;
|
|
714
716
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOatSwitch, never>;
|
|
715
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatSwitch, "ng-oat-switch", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; "changed": "changed"; }, never, never, true, never>;
|
|
717
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatSwitch, "ng-oat-switch", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; "disabled": "disabledChange"; "touched": "touchedChange"; "changed": "changed"; }, never, never, true, never>;
|
|
716
718
|
}
|
|
717
719
|
|
|
718
720
|
type NgOatSkeletonType = 'line' | 'box';
|
|
@@ -807,7 +809,8 @@ interface NgOatTableColumn {
|
|
|
807
809
|
* <ng-oat-table
|
|
808
810
|
* [columns]="[{key:'name', label:'Name'}, {key:'email', label:'Email'}]"
|
|
809
811
|
* [data]="users"
|
|
810
|
-
* [
|
|
812
|
+
* [scrollX]="true"
|
|
813
|
+
* [scrollY]="'320px'"
|
|
811
814
|
* (rowClick)="onRowClick($event)">
|
|
812
815
|
* </ng-oat-table>
|
|
813
816
|
* ```
|
|
@@ -818,10 +821,12 @@ declare class NgOatTable {
|
|
|
818
821
|
readonly striped: _angular_core.InputSignal<boolean>;
|
|
819
822
|
readonly clickable: _angular_core.InputSignal<boolean>;
|
|
820
823
|
readonly emptyText: _angular_core.InputSignal<string>;
|
|
824
|
+
readonly scrollX: _angular_core.InputSignal<boolean>;
|
|
825
|
+
readonly scrollY: _angular_core.InputSignal<string>;
|
|
821
826
|
readonly rowClick: _angular_core.OutputEmitterRef<Record<string, any>>;
|
|
822
827
|
onRowClick(row: Record<string, any>): void;
|
|
823
828
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOatTable, never>;
|
|
824
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatTable, "ng-oat-table", never, { "columns": { "alias": "columns"; "required": true; "isSignal": true; }; "data": { "alias": "data"; "required": true; "isSignal": true; }; "striped": { "alias": "striped"; "required": false; "isSignal": true; }; "clickable": { "alias": "clickable"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; }, { "rowClick": "rowClick"; }, never, never, true, never>;
|
|
829
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatTable, "ng-oat-table", never, { "columns": { "alias": "columns"; "required": true; "isSignal": true; }; "data": { "alias": "data"; "required": true; "isSignal": true; }; "striped": { "alias": "striped"; "required": false; "isSignal": true; }; "clickable": { "alias": "clickable"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; "scrollX": { "alias": "scrollX"; "required": false; "isSignal": true; }; "scrollY": { "alias": "scrollY"; "required": false; "isSignal": true; }; }, { "rowClick": "rowClick"; }, never, never, true, never>;
|
|
825
830
|
}
|
|
826
831
|
|
|
827
832
|
/**
|
|
@@ -1106,9 +1111,10 @@ declare class NgOatFileUpload {
|
|
|
1106
1111
|
declare class NgOatInputOtp implements FormValueControl<string> {
|
|
1107
1112
|
readonly length: _angular_core.InputSignal<number>;
|
|
1108
1113
|
readonly separator: _angular_core.InputSignal<number>;
|
|
1109
|
-
readonly disabled: _angular_core.
|
|
1114
|
+
readonly disabled: _angular_core.ModelSignal<boolean>;
|
|
1110
1115
|
readonly mask: _angular_core.InputSignal<boolean>;
|
|
1111
1116
|
readonly value: _angular_core.ModelSignal<string>;
|
|
1117
|
+
readonly touched: _angular_core.ModelSignal<boolean>;
|
|
1112
1118
|
readonly checked: undefined;
|
|
1113
1119
|
private slotInputRefs;
|
|
1114
1120
|
protected slots: _angular_core.Signal<string[]>;
|
|
@@ -1120,7 +1126,7 @@ declare class NgOatInputOtp implements FormValueControl<string> {
|
|
|
1120
1126
|
private focusSlot;
|
|
1121
1127
|
focus(options?: FocusOptions): void;
|
|
1122
1128
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOatInputOtp, never>;
|
|
1123
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatInputOtp, "ng-oat-input-otp", never, { "length": { "alias": "length"; "required": false; "isSignal": true; }; "separator": { "alias": "separator"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "mask": { "alias": "mask"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
|
|
1129
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatInputOtp, "ng-oat-input-otp", never, { "length": { "alias": "length"; "required": false; "isSignal": true; }; "separator": { "alias": "separator"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "mask": { "alias": "mask"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; "value": "valueChange"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
1124
1130
|
}
|
|
1125
1131
|
|
|
1126
1132
|
/**
|
|
@@ -1135,7 +1141,7 @@ declare class NgOatInputOtp implements FormValueControl<string> {
|
|
|
1135
1141
|
*/
|
|
1136
1142
|
declare class NgOatSearchInput implements FormValueControl<string>, OnInit, OnDestroy {
|
|
1137
1143
|
readonly placeholder: _angular_core.InputSignal<string>;
|
|
1138
|
-
readonly disabled: _angular_core.
|
|
1144
|
+
readonly disabled: _angular_core.ModelSignal<boolean>;
|
|
1139
1145
|
readonly shortcut: _angular_core.InputSignal<string>;
|
|
1140
1146
|
readonly debounceMs: _angular_core.InputSignal<number>;
|
|
1141
1147
|
readonly value: _angular_core.ModelSignal<string>;
|
|
@@ -1157,7 +1163,7 @@ declare class NgOatSearchInput implements FormValueControl<string>, OnInit, OnDe
|
|
|
1157
1163
|
focus(options?: FocusOptions): void;
|
|
1158
1164
|
private focusInput;
|
|
1159
1165
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOatSearchInput, never>;
|
|
1160
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatSearchInput, "ng-oat-search-input", never, { "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "shortcut": { "alias": "shortcut"; "required": false; "isSignal": true; }; "debounceMs": { "alias": "debounceMs"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "search": "search"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
1166
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatSearchInput, "ng-oat-search-input", never, { "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "shortcut": { "alias": "shortcut"; "required": false; "isSignal": true; }; "debounceMs": { "alias": "debounceMs"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; "value": "valueChange"; "search": "search"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
1161
1167
|
}
|
|
1162
1168
|
|
|
1163
1169
|
type NgOatSeparatorOrientation = 'horizontal' | 'vertical';
|
|
@@ -1644,7 +1650,7 @@ declare class NgOatThemeSelectorIcon {
|
|
|
1644
1650
|
*/
|
|
1645
1651
|
declare class NgOatThemeSelector implements OnInit {
|
|
1646
1652
|
/** Display mode: dropdown menu or inline toggle group */
|
|
1647
|
-
readonly mode: _angular_core.InputSignal<"
|
|
1653
|
+
readonly mode: _angular_core.InputSignal<"toggle" | "dropdown">;
|
|
1648
1654
|
/** Initial theme (overrides localStorage if set) */
|
|
1649
1655
|
readonly initialTheme: _angular_core.InputSignal<NgOatTheme | undefined>;
|
|
1650
1656
|
/**
|
|
@@ -1711,7 +1717,7 @@ declare class NgOatInput implements FormValueControl<string> {
|
|
|
1711
1717
|
private static nextId;
|
|
1712
1718
|
readonly value: _angular_core.ModelSignal<string>;
|
|
1713
1719
|
readonly checked: undefined;
|
|
1714
|
-
readonly disabled: _angular_core.
|
|
1720
|
+
readonly disabled: _angular_core.ModelSignal<boolean>;
|
|
1715
1721
|
readonly readonly: _angular_core.InputSignal<boolean>;
|
|
1716
1722
|
readonly required: _angular_core.InputSignal<boolean>;
|
|
1717
1723
|
readonly invalid: _angular_core.InputSignal<boolean>;
|
|
@@ -1725,12 +1731,12 @@ declare class NgOatInput implements FormValueControl<string> {
|
|
|
1725
1731
|
readonly type: _angular_core.InputSignal<NgOatInputType>;
|
|
1726
1732
|
readonly placeholder: _angular_core.InputSignal<string>;
|
|
1727
1733
|
readonly showErrors: _angular_core.InputSignal<boolean>;
|
|
1728
|
-
protected inputId:
|
|
1734
|
+
protected readonly inputId: string;
|
|
1729
1735
|
onInput(event: Event): void;
|
|
1730
1736
|
onBlur(): void;
|
|
1731
1737
|
focus(options?: FocusOptions): void;
|
|
1732
1738
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOatInput, never>;
|
|
1733
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatInput, "ng-oat-input", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "showErrors": { "alias": "showErrors"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
1739
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatInput, "ng-oat-input", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "showErrors": { "alias": "showErrors"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "disabled": "disabledChange"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
1734
1740
|
}
|
|
1735
1741
|
|
|
1736
1742
|
/**
|
|
@@ -1751,7 +1757,7 @@ declare class NgOatTextarea implements FormValueControl<string> {
|
|
|
1751
1757
|
private static nextId;
|
|
1752
1758
|
readonly value: _angular_core.ModelSignal<string>;
|
|
1753
1759
|
readonly checked: undefined;
|
|
1754
|
-
readonly disabled: _angular_core.
|
|
1760
|
+
readonly disabled: _angular_core.ModelSignal<boolean>;
|
|
1755
1761
|
readonly readonly: _angular_core.InputSignal<boolean>;
|
|
1756
1762
|
readonly required: _angular_core.InputSignal<boolean>;
|
|
1757
1763
|
readonly invalid: _angular_core.InputSignal<boolean>;
|
|
@@ -1763,12 +1769,12 @@ declare class NgOatTextarea implements FormValueControl<string> {
|
|
|
1763
1769
|
readonly placeholder: _angular_core.InputSignal<string>;
|
|
1764
1770
|
readonly rows: _angular_core.InputSignal<number>;
|
|
1765
1771
|
readonly showErrors: _angular_core.InputSignal<boolean>;
|
|
1766
|
-
protected textareaId:
|
|
1772
|
+
protected readonly textareaId: string;
|
|
1767
1773
|
onInput(event: Event): void;
|
|
1768
1774
|
onBlur(): void;
|
|
1769
1775
|
focus(options?: FocusOptions): void;
|
|
1770
1776
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOatTextarea, never>;
|
|
1771
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatTextarea, "ng-oat-textarea", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "showErrors": { "alias": "showErrors"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
1777
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatTextarea, "ng-oat-textarea", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "showErrors": { "alias": "showErrors"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "disabled": "disabledChange"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
1772
1778
|
}
|
|
1773
1779
|
|
|
1774
1780
|
interface NgOatSelectOption {
|
|
@@ -1797,7 +1803,7 @@ declare class NgOatSelect implements FormValueControl<string> {
|
|
|
1797
1803
|
private static nextId;
|
|
1798
1804
|
readonly checked: undefined;
|
|
1799
1805
|
readonly value: _angular_core.ModelSignal<string>;
|
|
1800
|
-
readonly disabled: _angular_core.
|
|
1806
|
+
readonly disabled: _angular_core.ModelSignal<boolean>;
|
|
1801
1807
|
readonly required: _angular_core.InputSignal<boolean>;
|
|
1802
1808
|
readonly invalid: _angular_core.InputSignal<boolean>;
|
|
1803
1809
|
readonly errors: _angular_core.InputSignal<readonly ValidationError.WithOptionalFieldTree[]>;
|
|
@@ -1806,12 +1812,12 @@ declare class NgOatSelect implements FormValueControl<string> {
|
|
|
1806
1812
|
readonly placeholder: _angular_core.InputSignal<string>;
|
|
1807
1813
|
readonly options: _angular_core.InputSignal<NgOatSelectOption[]>;
|
|
1808
1814
|
readonly showErrors: _angular_core.InputSignal<boolean>;
|
|
1809
|
-
protected selectId:
|
|
1815
|
+
protected readonly selectId: string;
|
|
1810
1816
|
onChange(event: Event): void;
|
|
1811
1817
|
onBlur(): void;
|
|
1812
1818
|
focus(options?: FocusOptions): void;
|
|
1813
1819
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOatSelect, never>;
|
|
1814
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatSelect, "ng-oat-select", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": true; "isSignal": true; }; "showErrors": { "alias": "showErrors"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
1820
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatSelect, "ng-oat-select", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": true; "isSignal": true; }; "showErrors": { "alias": "showErrors"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "disabled": "disabledChange"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
1815
1821
|
}
|
|
1816
1822
|
|
|
1817
1823
|
/**
|
|
@@ -1830,13 +1836,14 @@ declare class NgOatSelect implements FormValueControl<string> {
|
|
|
1830
1836
|
*/
|
|
1831
1837
|
declare class NgOatCheckbox implements FormCheckboxControl {
|
|
1832
1838
|
readonly checked: _angular_core.ModelSignal<boolean>;
|
|
1833
|
-
readonly disabled: _angular_core.
|
|
1839
|
+
readonly disabled: _angular_core.ModelSignal<boolean>;
|
|
1840
|
+
readonly touched: _angular_core.ModelSignal<boolean>;
|
|
1834
1841
|
/** FormCheckboxControl requires `value` to be undefined */
|
|
1835
1842
|
readonly value: undefined;
|
|
1836
1843
|
readonly label: _angular_core.InputSignal<string>;
|
|
1837
1844
|
onChange(event: Event): void;
|
|
1838
1845
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOatCheckbox, never>;
|
|
1839
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatCheckbox, "ng-oat-checkbox", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; }, never, never, true, never>;
|
|
1846
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatCheckbox, "ng-oat-checkbox", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; "disabled": "disabledChange"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
1840
1847
|
}
|
|
1841
1848
|
|
|
1842
1849
|
interface NgOatRadioOption {
|
|
@@ -1871,7 +1878,7 @@ declare class NgOatRadioGroup implements FormValueControl<string> {
|
|
|
1871
1878
|
private static nextId;
|
|
1872
1879
|
readonly value: _angular_core.ModelSignal<string>;
|
|
1873
1880
|
readonly checked: undefined;
|
|
1874
|
-
readonly disabled: _angular_core.
|
|
1881
|
+
readonly disabled: _angular_core.ModelSignal<boolean>;
|
|
1875
1882
|
readonly required: _angular_core.InputSignal<boolean>;
|
|
1876
1883
|
readonly invalid: _angular_core.InputSignal<boolean>;
|
|
1877
1884
|
readonly errors: _angular_core.InputSignal<readonly ValidationError.WithOptionalFieldTree[]>;
|
|
@@ -1879,29 +1886,134 @@ declare class NgOatRadioGroup implements FormValueControl<string> {
|
|
|
1879
1886
|
readonly label: _angular_core.InputSignal<string>;
|
|
1880
1887
|
readonly options: _angular_core.InputSignal<NgOatRadioOption[]>;
|
|
1881
1888
|
readonly showErrors: _angular_core.InputSignal<boolean>;
|
|
1882
|
-
protected groupName:
|
|
1889
|
+
protected readonly groupName: string;
|
|
1883
1890
|
onSelect(val: string): void;
|
|
1884
1891
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOatRadioGroup, never>;
|
|
1885
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatRadioGroup, "ng-oat-radio-group", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": true; "isSignal": true; }; "showErrors": { "alias": "showErrors"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
1892
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatRadioGroup, "ng-oat-radio-group", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": true; "isSignal": true; }; "showErrors": { "alias": "showErrors"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "disabled": "disabledChange"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
1886
1893
|
}
|
|
1887
1894
|
|
|
1888
1895
|
/**
|
|
1889
|
-
* Displays validation errors for
|
|
1890
|
-
* Shows errors only when the field has been touched and is invalid.
|
|
1896
|
+
* Displays validation errors for form fields.
|
|
1891
1897
|
*
|
|
1892
|
-
*
|
|
1898
|
+
* **Signal Forms** — pass the `FieldState` directly:
|
|
1893
1899
|
* ```html
|
|
1894
|
-
* <ng-oat-input label="Email" [formField]="myForm.email" />
|
|
1895
1900
|
* <ng-oat-form-error [control]="myForm.email" />
|
|
1896
1901
|
* ```
|
|
1902
|
+
*
|
|
1903
|
+
* **Reactive / Template-driven** — pass error strings and a visibility flag:
|
|
1904
|
+
* ```html
|
|
1905
|
+
* <ng-oat-form-error [errors]="['Email is required']" [show]="email.touched && email.invalid" />
|
|
1906
|
+
* ```
|
|
1897
1907
|
*/
|
|
1898
1908
|
declare class NgOatFormError {
|
|
1899
|
-
|
|
1909
|
+
/** Signal Forms FieldState — for automatic error display. */
|
|
1910
|
+
readonly control: _angular_core.InputSignal<FieldState<unknown, string | number> | undefined>;
|
|
1911
|
+
/** Plain error message strings — for Reactive / Template-driven forms. */
|
|
1912
|
+
readonly errors: _angular_core.InputSignal<string[]>;
|
|
1913
|
+
/** External visibility flag — for Reactive / Template-driven forms. */
|
|
1914
|
+
readonly show: _angular_core.InputSignal<boolean>;
|
|
1915
|
+
/** Unified list of error message strings. */
|
|
1916
|
+
protected readonly errorMessages: _angular_core.Signal<(string | undefined)[]>;
|
|
1900
1917
|
protected readonly shouldShowError: _angular_core.Signal<boolean>;
|
|
1901
1918
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOatFormError, never>;
|
|
1902
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatFormError, "ng-oat-form-error", never, { "control": { "alias": "control"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1919
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOatFormError, "ng-oat-form-error", never, { "control": { "alias": "control"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "show": { "alias": "show"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1920
|
+
}
|
|
1921
|
+
|
|
1922
|
+
/**
|
|
1923
|
+
* ControlValueAccessor adapter for ng-oat **value-type** components.
|
|
1924
|
+
*
|
|
1925
|
+
* Auto-activates when a Reactive Forms or Template-driven directive is present
|
|
1926
|
+
* (`formControlName`, `[formControl]`, or `[(ngModel)]`).
|
|
1927
|
+
*
|
|
1928
|
+
* Add this directive to your component's `imports` alongside the form component:
|
|
1929
|
+
* ```typescript
|
|
1930
|
+
* imports: [ReactiveFormsModule, NgOatInput, NgOatValueCva]
|
|
1931
|
+
* ```
|
|
1932
|
+
*
|
|
1933
|
+
* ```html
|
|
1934
|
+
* <ng-oat-input label="Email" formControlName="email" />
|
|
1935
|
+
* <ng-oat-input label="Name" [(ngModel)]="name" />
|
|
1936
|
+
* ```
|
|
1937
|
+
*/
|
|
1938
|
+
declare class NgOatValueCva implements ControlValueAccessor {
|
|
1939
|
+
private readonly host;
|
|
1940
|
+
private onChange;
|
|
1941
|
+
private onTouched;
|
|
1942
|
+
/**
|
|
1943
|
+
* Listen for native `input` and `change` events that bubble from the inner
|
|
1944
|
+
* `<input>`, `<textarea>`, or `<select>` element up to the host component.
|
|
1945
|
+
*/
|
|
1946
|
+
onHostValueChange(): void;
|
|
1947
|
+
/** Mark as touched when focus leaves the host element tree. */
|
|
1948
|
+
onHostBlur(): void;
|
|
1949
|
+
writeValue(val: string): void;
|
|
1950
|
+
registerOnChange(fn: (val: string) => void): void;
|
|
1951
|
+
registerOnTouched(fn: () => void): void;
|
|
1952
|
+
setDisabledState(isDisabled: boolean): void;
|
|
1953
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOatValueCva, never>;
|
|
1954
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgOatValueCva, "ng-oat-input[formControlName],ng-oat-input[formControl],ng-oat-input[ngModel],ng-oat-textarea[formControlName],ng-oat-textarea[formControl],ng-oat-textarea[ngModel],ng-oat-select[formControlName],ng-oat-select[formControl],ng-oat-select[ngModel],ng-oat-radio-group[formControlName],ng-oat-radio-group[formControl],ng-oat-radio-group[ngModel],ng-oat-search-input[formControlName],ng-oat-search-input[formControl],ng-oat-search-input[ngModel],ng-oat-input-otp[formControlName],ng-oat-input-otp[formControl],ng-oat-input-otp[ngModel]", never, {}, {}, never, never, true, never>;
|
|
1903
1955
|
}
|
|
1904
1956
|
|
|
1957
|
+
/**
|
|
1958
|
+
* ControlValueAccessor adapter for ng-oat **checkbox-type** components.
|
|
1959
|
+
*
|
|
1960
|
+
* Auto-activates when a Reactive Forms or Template-driven directive is present
|
|
1961
|
+
* (`formControlName`, `[formControl]`, or `[(ngModel)]`).
|
|
1962
|
+
*
|
|
1963
|
+
* Add this directive to your component's `imports` alongside the form component:
|
|
1964
|
+
* ```typescript
|
|
1965
|
+
* imports: [ReactiveFormsModule, NgOatCheckbox, NgOatCheckboxCva]
|
|
1966
|
+
* ```
|
|
1967
|
+
*
|
|
1968
|
+
* ```html
|
|
1969
|
+
* <ng-oat-checkbox label="Accept terms" formControlName="accepted" />
|
|
1970
|
+
* <ng-oat-switch label="Alerts" [(ngModel)]="alertsOn" />
|
|
1971
|
+
* ```
|
|
1972
|
+
*/
|
|
1973
|
+
declare class NgOatCheckboxCva implements ControlValueAccessor {
|
|
1974
|
+
private readonly host;
|
|
1975
|
+
private onChange;
|
|
1976
|
+
private onTouched;
|
|
1977
|
+
/**
|
|
1978
|
+
* Listen for native `change` events that bubble from the inner
|
|
1979
|
+
* `<input type="checkbox">` up to the host component.
|
|
1980
|
+
*/
|
|
1981
|
+
onHostChange(): void;
|
|
1982
|
+
/** Mark as touched when focus leaves the host element tree. */
|
|
1983
|
+
onHostBlur(): void;
|
|
1984
|
+
writeValue(val: boolean): void;
|
|
1985
|
+
registerOnChange(fn: (val: boolean) => void): void;
|
|
1986
|
+
registerOnTouched(fn: () => void): void;
|
|
1987
|
+
setDisabledState(isDisabled: boolean): void;
|
|
1988
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOatCheckboxCva, never>;
|
|
1989
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgOatCheckboxCva, "ng-oat-checkbox[formControlName],ng-oat-checkbox[formControl],ng-oat-checkbox[ngModel],ng-oat-switch[formControlName],ng-oat-switch[formControl],ng-oat-switch[ngModel]", never, {}, {}, never, never, true, never>;
|
|
1990
|
+
}
|
|
1991
|
+
|
|
1992
|
+
/**
|
|
1993
|
+
* Host interface for ng-oat components that carry a string `value`.
|
|
1994
|
+
* Used by the CVA adapter directives to bridge Reactive & Template-driven forms.
|
|
1995
|
+
*/
|
|
1996
|
+
interface NgOatValueHost {
|
|
1997
|
+
readonly value: ModelSignal<string>;
|
|
1998
|
+
readonly touched: ModelSignal<boolean>;
|
|
1999
|
+
readonly disabled: ModelSignal<boolean>;
|
|
2000
|
+
}
|
|
2001
|
+
/**
|
|
2002
|
+
* Host interface for ng-oat checkbox-style components that carry a boolean `checked`.
|
|
2003
|
+
*/
|
|
2004
|
+
interface NgOatCheckboxHost {
|
|
2005
|
+
readonly checked: ModelSignal<boolean>;
|
|
2006
|
+
readonly touched: ModelSignal<boolean>;
|
|
2007
|
+
readonly disabled: ModelSignal<boolean>;
|
|
2008
|
+
}
|
|
2009
|
+
/** Injection token provided by each value-type ng-oat form component. */
|
|
2010
|
+
declare const NG_OAT_VALUE_HOST: InjectionToken<NgOatValueHost>;
|
|
2011
|
+
/** Injection token provided by each checkbox-type ng-oat form component. */
|
|
2012
|
+
declare const NG_OAT_CHECKBOX_HOST: InjectionToken<NgOatCheckboxHost>;
|
|
2013
|
+
|
|
2014
|
+
/** Convenience array — import both CVA adapters at once. */
|
|
2015
|
+
declare const NgOatFormsCva: readonly [typeof NgOatValueCva, typeof NgOatCheckboxCva];
|
|
2016
|
+
|
|
1905
2017
|
/** Upstream Oat version this build is synced to. */
|
|
1906
2018
|
declare const OAT_VERSION = "0.0.0-vendored";
|
|
1907
2019
|
|
|
@@ -1920,5 +2032,5 @@ interface TooltipPositioner {
|
|
|
1920
2032
|
/** DI token for tooltip positioning strategy */
|
|
1921
2033
|
declare const TOOLTIP_POSITIONER: InjectionToken<TooltipPositioner>;
|
|
1922
2034
|
|
|
1923
|
-
export { NG_OAT_CHIP_GROUP, NG_OAT_TOGGLE_GROUP, NgOatAccordion, NgOatAlert, NgOatAvatar, NgOatBadge, NgOatBreadcrumb, NgOatButton, NgOatCard, NgOatCardCarousel, NgOatCardFooter, NgOatCardHeader, NgOatCarousel, NgOatCheckbox, NgOatChip, NgOatChipGroup, NgOatChipInput, NgOatDialog, NgOatDialogComponent, NgOatDropdown, NgOatDropdownComponent, NgOatFileUpload, NgOatFormError, NgOatInput, NgOatInputOtp, NgOatMeter, NgOatPagination, NgOatProgress, NgOatRadioGroup, NgOatSearchInput, NgOatSelect, NgOatSeparator, NgOatSidebar, NgOatSidebarComponent, NgOatSkeleton, NgOatSpinner, NgOatSplitButton, NgOatSwitch, NgOatTable, NgOatTabs, NgOatTabsComponent, NgOatTextarea, NgOatThemeRef, NgOatThemeSelector, NgOatThemeSelectorIcon, NgOatToast, NgOatToggle, NgOatToggleGroup, NgOatToolbar, NgOatToolbarRow, NgOatTooltip, NgOatTooltipComponent, OAT_TOKEN_MAP, OAT_VERSION, OAT_VERSION_TOKEN, TOOLTIP_POSITIONER, provideNgOat, provideNgOatTheme };
|
|
1924
|
-
export type { NgOatAccordionItem, NgOatAlertVariant, NgOatAvatarSize, NgOatBadgeVariant, NgOatButtonSize, NgOatButtonStyle, NgOatButtonVariant, NgOatCarouselAspectRatio, NgOatCarouselOrientation, NgOatCarouselSlide, NgOatChipGroupHost, NgOatChipSize, NgOatChipVariant, NgOatInputType, NgOatOptions, NgOatProductCard, NgOatRadioOption, NgOatSelectOption, NgOatSeparatorOrientation, NgOatSkeletonType, NgOatSpinnerSize, NgOatTabItem, NgOatTableColumn, NgOatTheme, NgOatThemeConfig, NgOatThemeOption, NgOatToastOptions, NgOatToastPlacement, NgOatToastVariant, NgOatToggleGroupHost, NgOatToggleGroupSize, NgOatToggleGroupVariant, NgOatToggleSize, NgOatToggleVariant, NgOatToolbarColor, OatBreadcrumbItem, OatTokens, Placement, TooltipPositioner };
|
|
2035
|
+
export { NG_OAT_CHECKBOX_HOST, NG_OAT_CHIP_GROUP, NG_OAT_TOGGLE_GROUP, NG_OAT_VALUE_HOST, NgOatAccordion, NgOatAlert, NgOatAvatar, NgOatBadge, NgOatBreadcrumb, NgOatButton, NgOatCard, NgOatCardCarousel, NgOatCardFooter, NgOatCardHeader, NgOatCarousel, NgOatCheckbox, NgOatCheckboxCva, NgOatChip, NgOatChipGroup, NgOatChipInput, NgOatDialog, NgOatDialogComponent, NgOatDropdown, NgOatDropdownComponent, NgOatFileUpload, NgOatFormError, NgOatFormsCva, NgOatInput, NgOatInputOtp, NgOatMeter, NgOatPagination, NgOatProgress, NgOatRadioGroup, NgOatSearchInput, NgOatSelect, NgOatSeparator, NgOatSidebar, NgOatSidebarComponent, NgOatSkeleton, NgOatSpinner, NgOatSplitButton, NgOatSwitch, NgOatTable, NgOatTabs, NgOatTabsComponent, NgOatTextarea, NgOatThemeRef, NgOatThemeSelector, NgOatThemeSelectorIcon, NgOatToast, NgOatToggle, NgOatToggleGroup, NgOatToolbar, NgOatToolbarRow, NgOatTooltip, NgOatTooltipComponent, NgOatValueCva, OAT_TOKEN_MAP, OAT_VERSION, OAT_VERSION_TOKEN, TOOLTIP_POSITIONER, provideNgOat, provideNgOatTheme };
|
|
2036
|
+
export type { NgOatAccordionItem, NgOatAlertVariant, NgOatAvatarSize, NgOatBadgeVariant, NgOatButtonSize, NgOatButtonStyle, NgOatButtonVariant, NgOatCarouselAspectRatio, NgOatCarouselOrientation, NgOatCarouselSlide, NgOatCheckboxHost, NgOatChipGroupHost, NgOatChipSize, NgOatChipVariant, NgOatInputType, NgOatOptions, NgOatProductCard, NgOatRadioOption, NgOatSelectOption, NgOatSeparatorOrientation, NgOatSkeletonType, NgOatSpinnerSize, NgOatTabItem, NgOatTableColumn, NgOatTheme, NgOatThemeConfig, NgOatThemeOption, NgOatToastOptions, NgOatToastPlacement, NgOatToastVariant, NgOatToggleGroupHost, NgOatToggleGroupSize, NgOatToggleGroupVariant, NgOatToggleSize, NgOatToggleVariant, NgOatToolbarColor, NgOatValueHost, OatBreadcrumbItem, OatTokens, Placement, TooltipPositioner };
|