@latitude-ui/widgets 0.0.21 → 0.0.23
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/README.md +7 -7
- package/button/README.md +2 -2
- package/checkbox/README.md +3 -0
- package/fesm2022/latitude-widgets-button.mjs +96 -0
- package/fesm2022/latitude-widgets-button.mjs.map +1 -0
- package/fesm2022/{latitude-ui-widgets-checkbox.mjs → latitude-widgets-checkbox.mjs} +6 -6
- package/fesm2022/latitude-widgets-checkbox.mjs.map +1 -0
- package/fesm2022/{latitude-ui-widgets-icons.mjs → latitude-widgets-icon.mjs} +45 -49
- package/fesm2022/latitude-widgets-icon.mjs.map +1 -0
- package/fesm2022/{latitude-ui-widgets-input.mjs → latitude-widgets-input.mjs} +67 -109
- package/fesm2022/latitude-widgets-input.mjs.map +1 -0
- package/fesm2022/{latitude-ui-widgets-listbox.mjs → latitude-widgets-listbox.mjs} +25 -30
- package/fesm2022/latitude-widgets-listbox.mjs.map +1 -0
- package/fesm2022/{latitude-ui-widgets-select.mjs → latitude-widgets-select.mjs} +67 -73
- package/fesm2022/latitude-widgets-select.mjs.map +1 -0
- package/fesm2022/{latitude-ui-widgets-switch.mjs → latitude-widgets-switch.mjs} +5 -5
- package/fesm2022/latitude-widgets-switch.mjs.map +1 -0
- package/fesm2022/latitude-widgets-textbox-date.mjs +30 -0
- package/fesm2022/latitude-widgets-textbox-date.mjs.map +1 -0
- package/fesm2022/{latitude-ui-widgets-textbox-number.mjs → latitude-widgets-textbox-number.mjs} +50 -58
- package/fesm2022/latitude-widgets-textbox-number.mjs.map +1 -0
- package/fesm2022/{latitude-ui-widgets-textbox.mjs → latitude-widgets-textbox.mjs} +17 -17
- package/fesm2022/latitude-widgets-textbox.mjs.map +1 -0
- package/fesm2022/{latitude-ui-widgets.mjs → latitude-widgets.mjs} +1 -1
- package/fesm2022/latitude-widgets.mjs.map +1 -0
- package/icon/README.md +3 -0
- package/input/README.md +2 -2
- package/listbox/README.md +3 -0
- package/package.json +34 -54
- package/select/README.md +3 -0
- package/switch/README.md +3 -0
- package/textbox/README.md +3 -0
- package/textbox-date/README.md +3 -0
- package/textbox-number/README.md +3 -0
- package/types/latitude-widgets-button.d.ts +29 -0
- package/{checkbox/index.d.ts → types/latitude-widgets-checkbox.d.ts} +1 -1
- package/types/latitude-widgets-icon.d.ts +44 -0
- package/{input/index.d.ts → types/latitude-widgets-input.d.ts} +6 -32
- package/{listbox/index.d.ts → types/latitude-widgets-listbox.d.ts} +6 -8
- package/{select/index.d.ts → types/latitude-widgets-select.d.ts} +2 -4
- package/{switch/index.d.ts → types/latitude-widgets-switch.d.ts} +1 -1
- package/types/latitude-widgets-textbox-date.d.ts +9 -0
- package/{textbox-number/index.d.ts → types/latitude-widgets-textbox-number.d.ts} +11 -8
- package/{textbox/index.d.ts → types/latitude-widgets-textbox.d.ts} +6 -6
- package/button/index.d.ts +0 -19
- package/core/README.md +0 -3
- package/core/index.d.ts +0 -39
- package/fesm2022/latitude-ui-widgets-button.mjs +0 -51
- package/fesm2022/latitude-ui-widgets-button.mjs.map +0 -1
- package/fesm2022/latitude-ui-widgets-checkbox.mjs.map +0 -1
- package/fesm2022/latitude-ui-widgets-core.mjs +0 -116
- package/fesm2022/latitude-ui-widgets-core.mjs.map +0 -1
- package/fesm2022/latitude-ui-widgets-icons.mjs.map +0 -1
- package/fesm2022/latitude-ui-widgets-input.mjs.map +0 -1
- package/fesm2022/latitude-ui-widgets-listbox.mjs.map +0 -1
- package/fesm2022/latitude-ui-widgets-select.mjs.map +0 -1
- package/fesm2022/latitude-ui-widgets-switch.mjs.map +0 -1
- package/fesm2022/latitude-ui-widgets-textbox-number.mjs.map +0 -1
- package/fesm2022/latitude-ui-widgets-textbox.mjs.map +0 -1
- package/fesm2022/latitude-ui-widgets-toolbar.mjs +0 -20
- package/fesm2022/latitude-ui-widgets-toolbar.mjs.map +0 -1
- package/fesm2022/latitude-ui-widgets.mjs.map +0 -1
- package/icons/index.d.ts +0 -19
- package/styles/_colors.scss +0 -99
- package/styles/_defaults.scss +0 -135
- package/styles/_index.scss +0 -11
- package/styles/_typography.scss +0 -37
- package/styles/button/_index.scss +0 -199
- package/styles/forms/_index.scss +0 -888
- package/styles/icons/_index.scss +0 -34
- package/styles/list/_index.scss +0 -0
- package/styles/listbox/_index.scss +0 -30
- package/toolbar/index.d.ts +0 -8
- /package/{index.d.ts → types/latitude-widgets.d.ts} +0 -0
|
@@ -2,55 +2,55 @@ import { switchMap, of, delay } from 'rxjs';
|
|
|
2
2
|
import { toSignal, toObservable, takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
4
|
import { input, booleanAttribute, forwardRef, ChangeDetectionStrategy, ViewEncapsulation, Component, inject, computed, Directive, contentChildren, signal, output, viewChild, untracked, afterRenderEffect, ElementRef, numberAttribute } from '@angular/core';
|
|
5
|
-
import { BuildInInputValueAccessor } from '@latitude
|
|
5
|
+
import { BuildInInputValueAccessor } from '@latitude/widgets/input';
|
|
6
6
|
import { CdkOverlayOrigin, CdkConnectedOverlay } from '@angular/cdk/overlay';
|
|
7
7
|
import * as i2 from '@angular/forms';
|
|
8
8
|
import { FormsModule } from '@angular/forms';
|
|
9
|
-
import { IconComponent } from '@latitude
|
|
10
|
-
import * as i1 from '@latitude
|
|
11
|
-
import { ListBoxModule } from '@latitude
|
|
12
|
-
import { TextBoxComponent } from '@latitude
|
|
13
|
-
import { ButtonComponent } from '@latitude
|
|
9
|
+
import { IconComponent } from '@latitude/widgets/icon';
|
|
10
|
+
import * as i1 from '@latitude/widgets/listbox';
|
|
11
|
+
import { ListBoxModule } from '@latitude/widgets/listbox';
|
|
12
|
+
import { TextBoxComponent } from '@latitude/widgets/textbox';
|
|
13
|
+
import { ButtonComponent } from '@latitude/widgets/button';
|
|
14
14
|
|
|
15
15
|
class SelectOptionComponent {
|
|
16
|
-
value = input.required();
|
|
17
|
-
label = input.required();
|
|
18
|
-
hidden = input(false, { transform: booleanAttribute });
|
|
19
|
-
disabled = input(false, { transform: booleanAttribute });
|
|
20
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
21
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
16
|
+
value = input.required(...(ngDevMode ? [{ debugName: "value" }] : []));
|
|
17
|
+
label = input.required(...(ngDevMode ? [{ debugName: "label" }] : []));
|
|
18
|
+
hidden = input(false, { ...(ngDevMode ? { debugName: "hidden" } : {}), transform: booleanAttribute });
|
|
19
|
+
disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : {}), transform: booleanAttribute });
|
|
20
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectOptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
21
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.1", type: SelectOptionComponent, isStandalone: true, selector: "lat-select-option", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, hidden: { classPropertyName: "hidden", publicName: "hidden", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["latSelectOption"], hostDirectives: [{ directive: i0.forwardRef(() => SelectOptionDirective) }], ngImport: i0, template: "\r\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
22
22
|
}
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectOptionComponent, decorators: [{
|
|
24
24
|
type: Component,
|
|
25
25
|
args: [{ exportAs: 'latSelectOption', selector: 'lat-select-option', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
|
|
26
26
|
{
|
|
27
27
|
directive: forwardRef(() => SelectOptionDirective),
|
|
28
28
|
},
|
|
29
29
|
], template: "\r\n" }]
|
|
30
|
-
}] });
|
|
30
|
+
}], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: true }] }], hidden: [{ type: i0.Input, args: [{ isSignal: true, alias: "hidden", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }] } });
|
|
31
31
|
|
|
32
32
|
class SelectOptionDirective {
|
|
33
33
|
select = inject((SelectDirective));
|
|
34
34
|
option = inject((SelectOptionComponent), { host: true });
|
|
35
|
-
value = computed(() => this.option.value());
|
|
36
|
-
label = computed(() => this.option.label());
|
|
37
|
-
hidden = computed(() => this.option.hidden());
|
|
38
|
-
disabled = computed(() => this.option.disabled());
|
|
39
|
-
selected = computed(() => this.select.selected().includes(this.value()));
|
|
40
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
41
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
35
|
+
value = computed(() => this.option.value(), ...(ngDevMode ? [{ debugName: "value" }] : []));
|
|
36
|
+
label = computed(() => this.option.label(), ...(ngDevMode ? [{ debugName: "label" }] : []));
|
|
37
|
+
hidden = computed(() => this.option.hidden(), ...(ngDevMode ? [{ debugName: "hidden" }] : []));
|
|
38
|
+
disabled = computed(() => this.option.disabled(), ...(ngDevMode ? [{ debugName: "disabled" }] : []));
|
|
39
|
+
selected = computed(() => this.select.selected().includes(this.value()), ...(ngDevMode ? [{ debugName: "selected" }] : []));
|
|
40
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectOptionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
41
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: SelectOptionDirective, isStandalone: true, ngImport: i0 });
|
|
42
42
|
}
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectOptionDirective, decorators: [{
|
|
44
44
|
type: Directive
|
|
45
45
|
}] });
|
|
46
46
|
|
|
47
47
|
class SelectDirective extends BuildInInputValueAccessor {
|
|
48
|
-
searchable = input(false, { transform: booleanAttribute });
|
|
49
|
-
contentChildren = contentChildren(SelectOptionDirective);
|
|
48
|
+
searchable = input(false, { ...(ngDevMode ? { debugName: "searchable" } : {}), transform: booleanAttribute });
|
|
49
|
+
contentChildren = contentChildren(SelectOptionDirective, ...(ngDevMode ? [{ debugName: "contentChildren" }] : []));
|
|
50
50
|
/** @internal */
|
|
51
|
-
_overlayWidth = signal(0);
|
|
51
|
+
_overlayWidth = signal(0, ...(ngDevMode ? [{ debugName: "_overlayWidth" }] : []));
|
|
52
52
|
/** @internal */
|
|
53
|
-
_overlayState = signal(false);
|
|
53
|
+
_overlayState = signal(false, ...(ngDevMode ? [{ debugName: "_overlayState" }] : []));
|
|
54
54
|
/** @internal */
|
|
55
55
|
_overlayExpanded = toSignal(toObservable(this._overlayState).pipe(switchMap((state) => {
|
|
56
56
|
return state ? of(state) : of(state).pipe(delay(100));
|
|
@@ -81,14 +81,14 @@ class SelectDirective extends BuildInInputValueAccessor {
|
|
|
81
81
|
overlayX: 'end',
|
|
82
82
|
overlayY: 'bottom',
|
|
83
83
|
},
|
|
84
|
-
]);
|
|
84
|
+
], ...(ngDevMode ? [{ debugName: "_overlayPositions" }] : []));
|
|
85
85
|
/** @internal */
|
|
86
|
-
_overlayPositionSide = signal('bottom');
|
|
86
|
+
_overlayPositionSide = signal('bottom', ...(ngDevMode ? [{ debugName: "_overlayPositionSide" }] : []));
|
|
87
87
|
/** @internal */
|
|
88
88
|
_indexes = computed(() => {
|
|
89
89
|
const children = this.contentChildren();
|
|
90
90
|
return new Map(children.map((option) => [option.value(), option]));
|
|
91
|
-
});
|
|
91
|
+
}, ...(ngDevMode ? [{ debugName: "_indexes" }] : []));
|
|
92
92
|
/** @internal */
|
|
93
93
|
_selected = computed(() => {
|
|
94
94
|
const selected = this.selected();
|
|
@@ -96,7 +96,7 @@ class SelectDirective extends BuildInInputValueAccessor {
|
|
|
96
96
|
return selected
|
|
97
97
|
.filter((value) => indexes.has(value))
|
|
98
98
|
.map((value) => indexes.get(value));
|
|
99
|
-
});
|
|
99
|
+
}, ...(ngDevMode ? [{ debugName: "_selected" }] : []));
|
|
100
100
|
hide() {
|
|
101
101
|
if (!this._overlayState()) {
|
|
102
102
|
return void 0;
|
|
@@ -128,36 +128,36 @@ class SelectDirective extends BuildInInputValueAccessor {
|
|
|
128
128
|
: connectionPair.originY;
|
|
129
129
|
});
|
|
130
130
|
}
|
|
131
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
132
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "
|
|
131
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
132
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.1.1", type: SelectDirective, isStandalone: true, inputs: { searchable: { classPropertyName: "searchable", publicName: "searchable", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "contentChildren", predicate: SelectOptionDirective, isSignal: true }], usesInheritance: true, ngImport: i0 });
|
|
133
133
|
}
|
|
134
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
134
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectDirective, decorators: [{
|
|
135
135
|
type: Directive
|
|
136
|
-
}] });
|
|
136
|
+
}], propDecorators: { searchable: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchable", required: false }] }], contentChildren: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => SelectOptionDirective), { isSignal: true }] }] } });
|
|
137
137
|
|
|
138
138
|
class SelectDropDownComponent {
|
|
139
139
|
dir = inject(SelectDirective);
|
|
140
140
|
selection = output();
|
|
141
|
-
textbox = viewChild(TextBoxComponent);
|
|
142
|
-
search = signal('');
|
|
141
|
+
textbox = viewChild(TextBoxComponent, ...(ngDevMode ? [{ debugName: "textbox" }] : []));
|
|
142
|
+
search = signal('', ...(ngDevMode ? [{ debugName: "search" }] : []));
|
|
143
143
|
options = computed(() => {
|
|
144
144
|
const options = this.dir.contentChildren();
|
|
145
145
|
const search = this.search();
|
|
146
146
|
const searchRegExp = search.length ? new RegExp(`.*${search}*.`, 'i') : null;
|
|
147
147
|
return untracked(() => (searchRegExp ? options.filter((option) => option.label().match(searchRegExp)) : options));
|
|
148
|
-
});
|
|
148
|
+
}, ...(ngDevMode ? [{ debugName: "options" }] : []));
|
|
149
149
|
constructor() {
|
|
150
150
|
afterRenderEffect(() => this.textbox()?.focus());
|
|
151
151
|
}
|
|
152
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
153
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
152
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectDropDownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
153
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: SelectDropDownComponent, isStandalone: true, selector: "lat-select-dropdown", outputs: { selection: "selection" }, host: { properties: { "attr.data-side": "dir._overlayPositionSide()" } }, viewQueries: [{ propertyName: "textbox", first: true, predicate: TextBoxComponent, descendants: true, isSignal: true }], exportAs: ["latSelectDropDown"], ngImport: i0, template: "@if (dir.searchable()) {\r\n <lat-textbox [(ngModel)]=\"search\" />\r\n}\r\n\r\n<lat-listbox [style.width.px]=\"dir._overlayWidth()\" [attr.data-side]=\"dir._overlayPositionSide()\">\r\n @for (option of options(); track option.value()) {\r\n <lat-option\r\n [value]=\"option.value()\"\r\n [disabled]=\"option.disabled()\"\r\n [setsize]=\"$count\"\r\n [posinset]=\"$index\"\r\n (click)=\"selection.emit(option)\"\r\n >\r\n @if (option.selected()) {\r\n <lat-icon name=\"check\" />\r\n }\r\n <span>{{ option.label() }}</span>\r\n </lat-option>\r\n }\r\n</lat-listbox>\r\n", dependencies: [{ kind: "component", type: IconComponent, selector: "lat-icon", inputs: ["url", "name"], exportAs: ["latIcon"] }, { kind: "component", type: i1.ListBoxComponent, selector: "lat-listbox", exportAs: ["latListBox"] }, { kind: "component", type: i1.ListBoxOptionComponent, selector: "lat-listbox-option, lat-option", inputs: ["value", "setsize", "posinset", "selected", "disabled", "checkbox"], exportAs: ["latListBoxOption"] }, { kind: "component", type: TextBoxComponent, selector: "lat-textbox:not([type]), lat-textbox[type=\"text\"]", inputs: ["rows", "maxlength", "minlength"], exportAs: ["latTextBox"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
154
154
|
}
|
|
155
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
155
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectDropDownComponent, decorators: [{
|
|
156
156
|
type: Component,
|
|
157
157
|
args: [{ imports: [IconComponent, ListBoxModule, TextBoxComponent, FormsModule], exportAs: 'latSelectDropDown', selector: 'lat-select-dropdown', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
158
158
|
'[attr.data-side]': 'dir._overlayPositionSide()',
|
|
159
159
|
}, template: "@if (dir.searchable()) {\r\n <lat-textbox [(ngModel)]=\"search\" />\r\n}\r\n\r\n<lat-listbox [style.width.px]=\"dir._overlayWidth()\" [attr.data-side]=\"dir._overlayPositionSide()\">\r\n @for (option of options(); track option.value()) {\r\n <lat-option\r\n [value]=\"option.value()\"\r\n [disabled]=\"option.disabled()\"\r\n [setsize]=\"$count\"\r\n [posinset]=\"$index\"\r\n (click)=\"selection.emit(option)\"\r\n >\r\n @if (option.selected()) {\r\n <lat-icon name=\"check\" />\r\n }\r\n <span>{{ option.label() }}</span>\r\n </lat-option>\r\n }\r\n</lat-listbox>\r\n" }]
|
|
160
|
-
}], ctorParameters: () => [] });
|
|
160
|
+
}], ctorParameters: () => [], propDecorators: { selection: [{ type: i0.Output, args: ["selection"] }], textbox: [{ type: i0.ViewChild, args: [i0.forwardRef(() => TextBoxComponent), { isSignal: true }] }] } });
|
|
161
161
|
|
|
162
162
|
class SelectTriggerComponent {
|
|
163
163
|
el = inject((ElementRef)).nativeElement;
|
|
@@ -171,24 +171,24 @@ class SelectTriggerComponent {
|
|
|
171
171
|
onCleanup(() => observer.disconnect());
|
|
172
172
|
});
|
|
173
173
|
}
|
|
174
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
175
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
174
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectTriggerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
175
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: SelectTriggerComponent, isStandalone: true, selector: "lat-select-trigger", host: { attributes: { "role": "combobox" }, listeners: { "click": "select.toggle()" }, properties: { "attr.data-size": "select.size()" } }, exportAs: ["latSelectTrigger"], ngImport: i0, template: "<ng-content select=\"lat-select-values\" />\r\n\r\n@if (!select.readonly()) {\r\n <section class=\"lat-select-control\">\r\n <lat-button tabindex=\"-1\" variant=\"subtle\" [size]=\"select.size()\" [disabled]=\"select.disabled()\">\r\n <lat-icon [name]=\"select._overlayState() ? 'chevron-up' : 'chevron-down'\"/>\r\n </lat-button>\r\n </section>\r\n}\r\n\r\n", dependencies: [{ kind: "component", type: ButtonComponent, selector: "lat-button", exportAs: ["latButton"] }, { kind: "component", type: IconComponent, selector: "lat-icon", inputs: ["url", "name"], exportAs: ["latIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
176
176
|
}
|
|
177
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
177
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectTriggerComponent, decorators: [{
|
|
178
178
|
type: Component,
|
|
179
179
|
args: [{ imports: [ButtonComponent, IconComponent], exportAs: 'latSelectTrigger', selector: 'lat-select-trigger', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
180
180
|
role: 'combobox',
|
|
181
181
|
'[attr.data-size]': 'select.size()',
|
|
182
182
|
'(click)': 'select.toggle()',
|
|
183
|
-
}, template: "<ng-content select=\"lat-select-values\" />\n\n@if (!select.readonly()) {\n <section class=\"lat-select-control\">\n <lat-button tabindex=\"-1\" variant=\"subtle\" [size]=\"select.size()\" [disabled]=\"select.disabled()\">\n <lat-icon [name]=\"select._overlayState() ? 'chevron-up' : 'chevron-down'\"/>\n </lat-button>\n </section>\n}\n\n" }]
|
|
183
|
+
}, template: "<ng-content select=\"lat-select-values\" />\r\n\r\n@if (!select.readonly()) {\r\n <section class=\"lat-select-control\">\r\n <lat-button tabindex=\"-1\" variant=\"subtle\" [size]=\"select.size()\" [disabled]=\"select.disabled()\">\r\n <lat-icon [name]=\"select._overlayState() ? 'chevron-up' : 'chevron-down'\"/>\r\n </lat-button>\r\n </section>\r\n}\r\n\r\n" }]
|
|
184
184
|
}], ctorParameters: () => [] });
|
|
185
185
|
|
|
186
186
|
class SelectValueComponent {
|
|
187
187
|
select = inject(SelectDirective);
|
|
188
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
189
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
188
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectValueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
189
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.1", type: SelectValueComponent, isStandalone: true, selector: "lat-select-value", host: { attributes: { "role": "listitem" } }, exportAs: ["latSelectValue"], ngImport: i0, template: "<span>\r\n <ng-content />\r\n</span>\r\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
190
190
|
}
|
|
191
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
191
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectValueComponent, decorators: [{
|
|
192
192
|
type: Component,
|
|
193
193
|
args: [{ exportAs: 'latSelectValue', selector: 'lat-select-value', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
194
194
|
role: 'listitem'
|
|
@@ -197,10 +197,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
197
197
|
|
|
198
198
|
class SelectValuesComponent {
|
|
199
199
|
select = inject(SelectDirective);
|
|
200
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
201
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
200
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectValuesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
201
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: SelectValuesComponent, isStandalone: true, selector: "lat-select-values", host: { attributes: { "role": "list" } }, exportAs: ["latSelectValues"], ngImport: i0, template: "@for (option of select._selected(); track option.value()) {\r\n <lat-select-value>\r\n {{ option.label() }}\r\n </lat-select-value>\r\n} @empty {\r\n {{ select.placeholder() }}\r\n}\r\n", dependencies: [{ kind: "component", type: SelectValueComponent, selector: "lat-select-value", exportAs: ["latSelectValue"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
202
202
|
}
|
|
203
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
203
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectValuesComponent, decorators: [{
|
|
204
204
|
type: Component,
|
|
205
205
|
args: [{ imports: [SelectValueComponent], exportAs: 'latSelectValues', selector: 'lat-select-values', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
206
206
|
role: 'list'
|
|
@@ -208,11 +208,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
208
208
|
}] });
|
|
209
209
|
|
|
210
210
|
class SelectMultipleComponent extends SelectDirective {
|
|
211
|
-
maxlength = input(Number.MAX_SAFE_INTEGER, { transform: numberAttribute });
|
|
211
|
+
maxlength = input(Number.MAX_SAFE_INTEGER, { ...(ngDevMode ? { debugName: "maxlength" } : {}), transform: numberAttribute });
|
|
212
212
|
selected = computed(() => {
|
|
213
213
|
const value = this.value();
|
|
214
214
|
return (value ? (Array.isArray(value) ? value : [value]) : []);
|
|
215
|
-
});
|
|
215
|
+
}, ...(ngDevMode ? [{ debugName: "selected" }] : []));
|
|
216
216
|
select(option) {
|
|
217
217
|
const selected = this.selected().slice();
|
|
218
218
|
if (selected.length >= this.maxlength()) {
|
|
@@ -227,8 +227,8 @@ class SelectMultipleComponent extends SelectDirective {
|
|
|
227
227
|
}
|
|
228
228
|
this.writeValue(selected);
|
|
229
229
|
}
|
|
230
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
231
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
230
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectMultipleComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
231
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.1", type: SelectMultipleComponent, isStandalone: true, selector: "lat-select[type=\"multiple\"]", inputs: { maxlength: { classPropertyName: "maxlength", publicName: "maxlength", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
232
232
|
{
|
|
233
233
|
provide: SelectDirective,
|
|
234
234
|
useExisting: forwardRef(() => SelectMultipleComponent),
|
|
@@ -237,9 +237,9 @@ class SelectMultipleComponent extends SelectDirective {
|
|
|
237
237
|
provide: BuildInInputValueAccessor,
|
|
238
238
|
useExisting: forwardRef(() => SelectMultipleComponent),
|
|
239
239
|
},
|
|
240
|
-
], exportAs: ["latSelect"], usesInheritance: true, ngImport: i0, template: "<lat-select-trigger cdkOverlayOrigin #trigger=\"cdkOverlayOrigin\">\r\n <lat-select-values />\r\n</lat-select-trigger>\r\n\r\n<ng-template\r\n cdkConnectedOverlay\r\n cdkConnectedOverlayHasBackdrop\r\n cdkConnectedOverlayLockPosition\r\n cdkConnectedOverlayPanelClass=\"lat-select-dropdown\"\r\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\r\n [cdkConnectedOverlayOrigin]=\"trigger\"\r\n [cdkConnectedOverlayOpen]=\"_overlayExpanded()\"\r\n [cdkConnectedOverlayWidth]=\"_overlayWidth() > 0 ? _overlayWidth() : 'auto'\"\r\n [cdkConnectedOverlayPositions]=\"_overlayPositions()\"\r\n (detach)=\"hide()\"\r\n (backdropClick)=\"hide()\"\r\n (positionChange)=\"updateOverlayPositionSide($event)\"\r\n>\r\n <lat-select-dropdown (selection)=\"select($event)\" />\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "directive", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "component", type: SelectDropDownComponent, selector: "lat-select-dropdown", outputs: ["selection"], exportAs: ["latSelectDropDown"] }, { kind: "component", type: SelectTriggerComponent, selector: "lat-select-trigger", exportAs: ["latSelectTrigger"] }, { kind: "component", type: SelectValuesComponent, selector: "lat-select-values", exportAs: ["latSelectValues"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
240
|
+
], exportAs: ["latSelect"], usesInheritance: true, ngImport: i0, template: "<lat-select-trigger cdkOverlayOrigin #trigger=\"cdkOverlayOrigin\">\r\n <lat-select-values />\r\n</lat-select-trigger>\r\n\r\n<ng-template\r\n cdkConnectedOverlay\r\n cdkConnectedOverlayHasBackdrop\r\n cdkConnectedOverlayLockPosition\r\n cdkConnectedOverlayPanelClass=\"lat-select-dropdown\"\r\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\r\n [cdkConnectedOverlayOrigin]=\"trigger\"\r\n [cdkConnectedOverlayOpen]=\"_overlayExpanded()\"\r\n [cdkConnectedOverlayWidth]=\"_overlayWidth() > 0 ? _overlayWidth() : 'auto'\"\r\n [cdkConnectedOverlayPositions]=\"_overlayPositions()\"\r\n (detach)=\"hide()\"\r\n (backdropClick)=\"hide()\"\r\n (positionChange)=\"updateOverlayPositionSide($event)\"\r\n>\r\n <lat-select-dropdown (selection)=\"select($event)\" />\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "directive", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation", "cdkConnectedOverlayUsePopover", "cdkConnectedOverlayMatchWidth", "cdkConnectedOverlay"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "component", type: SelectDropDownComponent, selector: "lat-select-dropdown", outputs: ["selection"], exportAs: ["latSelectDropDown"] }, { kind: "component", type: SelectTriggerComponent, selector: "lat-select-trigger", exportAs: ["latSelectTrigger"] }, { kind: "component", type: SelectValuesComponent, selector: "lat-select-values", exportAs: ["latSelectValues"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
241
241
|
}
|
|
242
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
242
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectMultipleComponent, decorators: [{
|
|
243
243
|
type: Component,
|
|
244
244
|
args: [{ imports: [
|
|
245
245
|
CdkOverlayOrigin,
|
|
@@ -257,21 +257,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
257
257
|
useExisting: forwardRef(() => SelectMultipleComponent),
|
|
258
258
|
},
|
|
259
259
|
], template: "<lat-select-trigger cdkOverlayOrigin #trigger=\"cdkOverlayOrigin\">\r\n <lat-select-values />\r\n</lat-select-trigger>\r\n\r\n<ng-template\r\n cdkConnectedOverlay\r\n cdkConnectedOverlayHasBackdrop\r\n cdkConnectedOverlayLockPosition\r\n cdkConnectedOverlayPanelClass=\"lat-select-dropdown\"\r\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\r\n [cdkConnectedOverlayOrigin]=\"trigger\"\r\n [cdkConnectedOverlayOpen]=\"_overlayExpanded()\"\r\n [cdkConnectedOverlayWidth]=\"_overlayWidth() > 0 ? _overlayWidth() : 'auto'\"\r\n [cdkConnectedOverlayPositions]=\"_overlayPositions()\"\r\n (detach)=\"hide()\"\r\n (backdropClick)=\"hide()\"\r\n (positionChange)=\"updateOverlayPositionSide($event)\"\r\n>\r\n <lat-select-dropdown (selection)=\"select($event)\" />\r\n</ng-template>\r\n" }]
|
|
260
|
-
}] });
|
|
260
|
+
}], propDecorators: { maxlength: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxlength", required: false }] }] } });
|
|
261
261
|
|
|
262
262
|
class SelectSingleComponent extends SelectDirective {
|
|
263
|
-
nullable = input(true, { transform: booleanAttribute });
|
|
263
|
+
nullable = input(true, { ...(ngDevMode ? { debugName: "nullable" } : {}), transform: booleanAttribute });
|
|
264
264
|
selected = computed(() => {
|
|
265
265
|
const value = this.value();
|
|
266
266
|
return (value === undefined ? [] : [value]);
|
|
267
|
-
});
|
|
267
|
+
}, ...(ngDevMode ? [{ debugName: "selected" }] : []));
|
|
268
268
|
select(option) {
|
|
269
269
|
const value = this.nullable() ? (option.selected() ? null : option.value()) : option.value();
|
|
270
270
|
this.writeValue(value);
|
|
271
271
|
this.hide();
|
|
272
272
|
}
|
|
273
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
274
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
273
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectSingleComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
274
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.1", type: SelectSingleComponent, isStandalone: true, selector: "lat-select[type=\"single\"]", inputs: { nullable: { classPropertyName: "nullable", publicName: "nullable", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
275
275
|
{
|
|
276
276
|
provide: SelectDirective,
|
|
277
277
|
useExisting: forwardRef(() => SelectSingleComponent),
|
|
@@ -280,9 +280,9 @@ class SelectSingleComponent extends SelectDirective {
|
|
|
280
280
|
provide: BuildInInputValueAccessor,
|
|
281
281
|
useExisting: forwardRef(() => SelectSingleComponent),
|
|
282
282
|
},
|
|
283
|
-
], exportAs: ["latSelect"], usesInheritance: true, ngImport: i0, template: "<lat-select-trigger cdkOverlayOrigin #trigger=\"cdkOverlayOrigin\">\r\n <lat-select-values />\r\n</lat-select-trigger>\r\n\r\n<ng-template\r\n cdkConnectedOverlay\r\n cdkConnectedOverlayHasBackdrop\r\n cdkConnectedOverlayLockPosition\r\n cdkConnectedOverlayPanelClass=\"lat-select-dropdown\"\r\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\r\n [cdkConnectedOverlayOrigin]=\"trigger\"\r\n [cdkConnectedOverlayOpen]=\"_overlayExpanded()\"\r\n [cdkConnectedOverlayWidth]=\"_overlayWidth() > 0 ? _overlayWidth() : 'auto'\"\r\n [cdkConnectedOverlayPositions]=\"_overlayPositions()\"\r\n (detach)=\"hide()\"\r\n (backdropClick)=\"hide()\"\r\n (positionChange)=\"updateOverlayPositionSide($event)\"\r\n>\r\n <lat-select-dropdown (selection)=\"select($event)\" />\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "directive", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "component", type: SelectDropDownComponent, selector: "lat-select-dropdown", outputs: ["selection"], exportAs: ["latSelectDropDown"] }, { kind: "component", type: SelectTriggerComponent, selector: "lat-select-trigger", exportAs: ["latSelectTrigger"] }, { kind: "component", type: SelectValuesComponent, selector: "lat-select-values", exportAs: ["latSelectValues"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
283
|
+
], exportAs: ["latSelect"], usesInheritance: true, ngImport: i0, template: "<lat-select-trigger cdkOverlayOrigin #trigger=\"cdkOverlayOrigin\">\r\n <lat-select-values />\r\n</lat-select-trigger>\r\n\r\n<ng-template\r\n cdkConnectedOverlay\r\n cdkConnectedOverlayHasBackdrop\r\n cdkConnectedOverlayLockPosition\r\n cdkConnectedOverlayPanelClass=\"lat-select-dropdown\"\r\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\r\n [cdkConnectedOverlayOrigin]=\"trigger\"\r\n [cdkConnectedOverlayOpen]=\"_overlayExpanded()\"\r\n [cdkConnectedOverlayWidth]=\"_overlayWidth() > 0 ? _overlayWidth() : 'auto'\"\r\n [cdkConnectedOverlayPositions]=\"_overlayPositions()\"\r\n (detach)=\"hide()\"\r\n (backdropClick)=\"hide()\"\r\n (positionChange)=\"updateOverlayPositionSide($event)\"\r\n>\r\n <lat-select-dropdown (selection)=\"select($event)\" />\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "directive", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation", "cdkConnectedOverlayUsePopover", "cdkConnectedOverlayMatchWidth", "cdkConnectedOverlay"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "component", type: SelectDropDownComponent, selector: "lat-select-dropdown", outputs: ["selection"], exportAs: ["latSelectDropDown"] }, { kind: "component", type: SelectTriggerComponent, selector: "lat-select-trigger", exportAs: ["latSelectTrigger"] }, { kind: "component", type: SelectValuesComponent, selector: "lat-select-values", exportAs: ["latSelectValues"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
284
284
|
}
|
|
285
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
285
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SelectSingleComponent, decorators: [{
|
|
286
286
|
type: Component,
|
|
287
287
|
args: [{ imports: [
|
|
288
288
|
CdkOverlayOrigin,
|
|
@@ -300,17 +300,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
300
300
|
useExisting: forwardRef(() => SelectSingleComponent),
|
|
301
301
|
},
|
|
302
302
|
], template: "<lat-select-trigger cdkOverlayOrigin #trigger=\"cdkOverlayOrigin\">\r\n <lat-select-values />\r\n</lat-select-trigger>\r\n\r\n<ng-template\r\n cdkConnectedOverlay\r\n cdkConnectedOverlayHasBackdrop\r\n cdkConnectedOverlayLockPosition\r\n cdkConnectedOverlayPanelClass=\"lat-select-dropdown\"\r\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\r\n [cdkConnectedOverlayOrigin]=\"trigger\"\r\n [cdkConnectedOverlayOpen]=\"_overlayExpanded()\"\r\n [cdkConnectedOverlayWidth]=\"_overlayWidth() > 0 ? _overlayWidth() : 'auto'\"\r\n [cdkConnectedOverlayPositions]=\"_overlayPositions()\"\r\n (detach)=\"hide()\"\r\n (backdropClick)=\"hide()\"\r\n (positionChange)=\"updateOverlayPositionSide($event)\"\r\n>\r\n <lat-select-dropdown (selection)=\"select($event)\" />\r\n</ng-template>\r\n" }]
|
|
303
|
-
}] });
|
|
304
|
-
|
|
305
|
-
const SelectModule = [
|
|
306
|
-
SelectOptionComponent,
|
|
307
|
-
SelectMultipleComponent,
|
|
308
|
-
SelectSingleComponent
|
|
309
|
-
];
|
|
303
|
+
}], propDecorators: { nullable: [{ type: i0.Input, args: [{ isSignal: true, alias: "nullable", required: false }] }] } });
|
|
310
304
|
|
|
311
305
|
/**
|
|
312
306
|
* Generated bundle index. Do not edit.
|
|
313
307
|
*/
|
|
314
308
|
|
|
315
|
-
export { SelectDirective,
|
|
316
|
-
//# sourceMappingURL=latitude-
|
|
309
|
+
export { SelectDirective, SelectMultipleComponent, SelectOptionComponent, SelectOptionDirective, SelectSingleComponent };
|
|
310
|
+
//# sourceMappingURL=latitude-widgets-select.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"latitude-widgets-select.mjs","sources":["../../../../packages/widgets/select/lib/select-option/select-option.component.ts","../../../../packages/widgets/select/lib/select-option/select-option.component.html","../../../../packages/widgets/select/lib/select-option/select-option.directive.ts","../../../../packages/widgets/select/lib/select/select.directive.ts","../../../../packages/widgets/select/lib/select-dropdown/select-dropdown.component.ts","../../../../packages/widgets/select/lib/select-dropdown/select-dropdown.component.html","../../../../packages/widgets/select/lib/select-trigger/select-trigger.component.ts","../../../../packages/widgets/select/lib/select-trigger/select-trigger.component.html","../../../../packages/widgets/select/lib/select-value/select-value.component.ts","../../../../packages/widgets/select/lib/select-value/select-value.component.html","../../../../packages/widgets/select/lib/select-values/select-values.component.ts","../../../../packages/widgets/select/lib/select-values/select-values.component.html","../../../../packages/widgets/select/lib/select-multiple.component.ts","../../../../packages/widgets/select/lib/select/select.component.html","../../../../packages/widgets/select/lib/select-single.component.ts","../../../../packages/widgets/select/latitude-widgets-select.ts"],"sourcesContent":["import {\r\n booleanAttribute,\r\n ChangeDetectionStrategy,\r\n Component,\r\n forwardRef,\r\n input,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\n\r\nimport { SelectOptionDirective } from './select-option.directive';\r\n\r\n@Component({\r\n exportAs: 'latSelectOption',\r\n selector: 'lat-select-option',\r\n templateUrl: './select-option.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n hostDirectives: [\r\n {\r\n directive: forwardRef(() => SelectOptionDirective),\r\n },\r\n ],\r\n})\r\nexport class SelectOptionComponent<T> {\r\n public readonly value = input.required<T>();\r\n public readonly label = input.required<string>();\r\n\r\n public readonly hidden = input<boolean, unknown>(false, { transform: booleanAttribute });\r\n public readonly disabled = input<boolean, unknown>(false, { transform: booleanAttribute });\r\n}\r\n","\r\n","import { computed, Directive, inject } from '@angular/core';\r\n\r\nimport { SelectDirective } from '../select/select.directive';\r\nimport { SelectOptionComponent } from './select-option.component';\r\n\r\n@Directive()\r\nexport class SelectOptionDirective<T> {\r\n public readonly select = inject(SelectDirective<T, T | T[]>);\r\n public readonly option = inject(SelectOptionComponent<T>, { host: true });\r\n\r\n public readonly value = computed(() => this.option.value());\r\n public readonly label = computed(() => this.option.label());\r\n public readonly hidden = computed(() => this.option.hidden());\r\n public readonly disabled = computed(() => this.option.disabled());\r\n\r\n public readonly selected = computed(() => this.select.selected().includes(this.value()));\r\n}\r\n","import { delay, of, switchMap } from 'rxjs';\r\n\r\nimport { takeUntilDestroyed, toObservable, toSignal } from '@angular/core/rxjs-interop';\r\nimport { booleanAttribute, computed, contentChildren, Directive, input, Signal, signal } from '@angular/core';\r\n\r\nimport { ConnectedOverlayPositionChange, ConnectedPosition } from '@angular/cdk/overlay';\r\n\r\nimport { BuildInInputValueAccessor } from '@latitude/widgets/input';\r\n\r\nimport { SelectOptionDirective } from '../select-option/select-option.directive';\r\n\r\n@Directive()\r\nexport abstract class SelectDirective<T, TValue> extends BuildInInputValueAccessor<TValue> {\r\n public readonly searchable = input<boolean, unknown>(false, { transform: booleanAttribute });\r\n\r\n public readonly contentChildren = contentChildren<SelectOptionDirective<T>>(SelectOptionDirective);\r\n\r\n /** @internal */\r\n public readonly _overlayWidth = signal<number>(0);\r\n\r\n /** @internal */\r\n public readonly _overlayState = signal<boolean>(false);\r\n\r\n /** @internal */\r\n public readonly _overlayExpanded = toSignal(\r\n toObservable(this._overlayState).pipe(\r\n switchMap((state) => {\r\n return state ? of(state) : of(state).pipe(delay(100));\r\n }),\r\n takeUntilDestroyed()\r\n ),\r\n { initialValue: false }\r\n );\r\n\r\n /** @internal */\r\n public readonly _overlayPositions = signal<ConnectedPosition[]>([\r\n {\r\n originX: 'start',\r\n originY: 'bottom',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'bottom',\r\n overlayX: 'end',\r\n overlayY: 'top',\r\n },\r\n {\r\n originX: 'start',\r\n originY: 'top',\r\n overlayX: 'start',\r\n overlayY: 'bottom',\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'top',\r\n overlayX: 'end',\r\n overlayY: 'bottom',\r\n },\r\n ]);\r\n\r\n /** @internal */\r\n public readonly _overlayPositionSide = signal<'top' | 'bottom' | 'left' | 'right'>('bottom');\r\n\r\n /** @internal */\r\n public readonly _indexes = computed(() => {\r\n const children = this.contentChildren();\r\n\r\n return new Map(children.map((option) => [option.value(), option]));\r\n });\r\n\r\n /** @internal */\r\n public readonly _selected = computed(() => {\r\n const selected = this.selected();\r\n\r\n const indexes = this._indexes();\r\n\r\n return selected\r\n .filter((value) => indexes.has(value))\r\n .map((value) => indexes.get(value)) as SelectOptionDirective<T>[];\r\n });\r\n\r\n public hide() {\r\n if (!this._overlayState()) {\r\n return void 0;\r\n }\r\n\r\n this._overlayState.set(false);\r\n\r\n this.markAsTouched();\r\n }\r\n\r\n public open() {\r\n if (this._overlayState() || this.disabled() || this.contentChildren().length === 0) {\r\n return void 0;\r\n }\r\n\r\n this._overlayState.set(true);\r\n }\r\n\r\n public toggle(): void {\r\n if (this._overlayState()) {\r\n this.hide();\r\n } else {\r\n this.open();\r\n }\r\n }\r\n\r\n /** @internal */\r\n protected updateOverlayPositionSide({ connectionPair }: ConnectedOverlayPositionChange) {\r\n this._overlayPositionSide.update(() => {\r\n return connectionPair.originY === 'center'\r\n ? connectionPair.originX === 'start'\r\n ? 'left'\r\n : 'right'\r\n : connectionPair.originY;\r\n });\r\n }\r\n\r\n /** ABSTRACT SECTION */\r\n\r\n abstract selected: Signal<T[]>;\r\n\r\n abstract select(option: SelectOptionDirective<T>): void;\r\n}\r\n","import {\r\n afterRenderEffect,\r\n ChangeDetectionStrategy,\r\n Component,\r\n computed,\r\n inject,\r\n output,\r\n signal,\r\n untracked,\r\n viewChild,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { IconComponent } from '@latitude/widgets/icon';\r\nimport { ListBoxModule } from '@latitude/widgets/listbox';\r\nimport { TextBoxComponent } from '@latitude/widgets/textbox';\r\n\r\nimport { SelectDirective } from '../select/select.directive';\r\nimport { SelectOptionDirective } from '../select-option/select-option.directive';\r\n\r\n@Component({\r\n imports: [IconComponent, ListBoxModule, TextBoxComponent, FormsModule],\r\n exportAs: 'latSelectDropDown',\r\n selector: 'lat-select-dropdown',\r\n templateUrl: './select-dropdown.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n host: {\r\n '[attr.data-side]': 'dir._overlayPositionSide()',\r\n },\r\n})\r\nexport class SelectDropDownComponent<T> {\r\n public readonly dir = inject(SelectDirective);\r\n\r\n public readonly selection = output<SelectOptionDirective<T>>();\r\n\r\n public readonly textbox = viewChild(TextBoxComponent);\r\n\r\n public readonly search = signal('');\r\n public readonly options = computed(() => {\r\n const options = this.dir.contentChildren();\r\n\r\n const search = this.search()\r\n const searchRegExp = search.length ? new RegExp(`.*${search}*.`, 'i') : null\r\n\r\n return untracked(() => (searchRegExp ? options.filter((option) => option.label().match(searchRegExp)) : options));\r\n });\r\n\r\n constructor() {\r\n afterRenderEffect(() => this.textbox()?.focus());\r\n }\r\n}\r\n","@if (dir.searchable()) {\r\n <lat-textbox [(ngModel)]=\"search\" />\r\n}\r\n\r\n<lat-listbox [style.width.px]=\"dir._overlayWidth()\" [attr.data-side]=\"dir._overlayPositionSide()\">\r\n @for (option of options(); track option.value()) {\r\n <lat-option\r\n [value]=\"option.value()\"\r\n [disabled]=\"option.disabled()\"\r\n [setsize]=\"$count\"\r\n [posinset]=\"$index\"\r\n (click)=\"selection.emit(option)\"\r\n >\r\n @if (option.selected()) {\r\n <lat-icon name=\"check\" />\r\n }\r\n <span>{{ option.label() }}</span>\r\n </lat-option>\r\n }\r\n</lat-listbox>\r\n","import {\r\n afterRenderEffect,\r\n ChangeDetectionStrategy,\r\n Component,\r\n ElementRef,\r\n inject,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\n\r\nimport { ButtonComponent } from '@latitude/widgets/button';\r\nimport { IconComponent } from '@latitude/widgets/icon';\r\n\r\nimport { SelectDirective } from '../select/select.directive';\r\n\r\n@Component({\r\n imports: [ButtonComponent, IconComponent],\r\n exportAs: 'latSelectTrigger',\r\n selector: 'lat-select-trigger',\r\n templateUrl: './select-trigger.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n host: {\r\n role: 'combobox',\r\n '[attr.data-size]': 'select.size()',\r\n '(click)': 'select.toggle()',\r\n },\r\n})\r\nexport class SelectTriggerComponent {\r\n public readonly el = inject(ElementRef<HTMLElement>).nativeElement;\r\n public readonly select = inject(SelectDirective);\r\n\r\n constructor() {\r\n afterRenderEffect((onCleanup) => {\r\n const observer = new ResizeObserver(() => {\r\n this.select._overlayWidth.set(this.el.offsetWidth);\r\n });\r\n\r\n observer.observe(this.el);\r\n\r\n onCleanup(() => observer.disconnect());\r\n });\r\n }\r\n}\r\n","<ng-content select=\"lat-select-values\" />\r\n\r\n@if (!select.readonly()) {\r\n <section class=\"lat-select-control\">\r\n <lat-button tabindex=\"-1\" variant=\"subtle\" [size]=\"select.size()\" [disabled]=\"select.disabled()\">\r\n <lat-icon [name]=\"select._overlayState() ? 'chevron-up' : 'chevron-down'\"/>\r\n </lat-button>\r\n </section>\r\n}\r\n\r\n","import { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';\r\nimport { SelectDirective } from '../select/select.directive';\r\n\r\n@Component({\r\n exportAs: 'latSelectValue',\r\n selector: 'lat-select-value',\r\n templateUrl: './select-value.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n host: {\r\n role: 'listitem'\r\n },\r\n})\r\nexport class SelectValueComponent {\r\n public readonly select = inject(SelectDirective);\r\n}\r\n","<span>\r\n <ng-content />\r\n</span>\r\n","import { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';\r\nimport { SelectDirective } from '../select/select.directive';\r\nimport { SelectValueComponent } from '../select-value/select-value.component';\r\n\r\n@Component({\r\n imports: [SelectValueComponent],\r\n exportAs: 'latSelectValues',\r\n selector: 'lat-select-values',\r\n templateUrl: './select-values.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n host: {\r\n role: 'list'\r\n },\r\n})\r\nexport class SelectValuesComponent {\r\n public readonly select = inject(SelectDirective);\r\n}\r\n","@for (option of select._selected(); track option.value()) {\r\n <lat-select-value>\r\n {{ option.label() }}\r\n </lat-select-value>\r\n} @empty {\r\n {{ select.placeholder() }}\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n computed,\r\n forwardRef,\r\n input,\r\n numberAttribute,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\n\r\nimport { CdkConnectedOverlay, CdkOverlayOrigin } from '@angular/cdk/overlay';\r\n\r\nimport { BuildInInputValueAccessor } from '@latitude/widgets/input';\r\n\r\nimport { SelectDirective } from './select/select.directive';\r\n\r\nimport { SelectDropDownComponent } from './select-dropdown/select-dropdown.component';\r\nimport { SelectTriggerComponent } from './select-trigger/select-trigger.component';\r\nimport { SelectOptionDirective } from './select-option/select-option.directive';\r\nimport { SelectValuesComponent } from './select-values/select-values.component';\r\n\r\n@Component({\r\n imports: [\r\n CdkOverlayOrigin,\r\n CdkConnectedOverlay,\r\n SelectDropDownComponent,\r\n SelectTriggerComponent,\r\n SelectValuesComponent,\r\n ],\r\n exportAs: 'latSelect',\r\n selector: 'lat-select[type=\"multiple\"]',\r\n templateUrl: './select/select.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: SelectDirective,\r\n useExisting: forwardRef(() => SelectMultipleComponent),\r\n },\r\n {\r\n provide: BuildInInputValueAccessor,\r\n useExisting: forwardRef(() => SelectMultipleComponent),\r\n },\r\n ],\r\n})\r\nexport class SelectMultipleComponent<T> extends SelectDirective<T, T[]> {\r\n public readonly maxlength = input<number, unknown>(Number.MAX_SAFE_INTEGER, { transform: numberAttribute });\r\n\r\n public override selected = computed(() => {\r\n const value = this.value();\r\n\r\n return (value ? (Array.isArray(value) ? value : [value]) : []) as T[];\r\n });\r\n\r\n public override select(option: SelectOptionDirective<T>): void {\r\n const selected = this.selected().slice();\r\n\r\n if (selected.length >= this.maxlength()) {\r\n return void 0;\r\n }\r\n\r\n const index = selected.findIndex((value) => value === option.value());\r\n\r\n if (index === -1) {\r\n selected.push(option.value());\r\n } else {\r\n selected.splice(index, 1);\r\n }\r\n\r\n this.writeValue(selected);\r\n }\r\n}\r\n","<lat-select-trigger cdkOverlayOrigin #trigger=\"cdkOverlayOrigin\">\r\n <lat-select-values />\r\n</lat-select-trigger>\r\n\r\n<ng-template\r\n cdkConnectedOverlay\r\n cdkConnectedOverlayHasBackdrop\r\n cdkConnectedOverlayLockPosition\r\n cdkConnectedOverlayPanelClass=\"lat-select-dropdown\"\r\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\r\n [cdkConnectedOverlayOrigin]=\"trigger\"\r\n [cdkConnectedOverlayOpen]=\"_overlayExpanded()\"\r\n [cdkConnectedOverlayWidth]=\"_overlayWidth() > 0 ? _overlayWidth() : 'auto'\"\r\n [cdkConnectedOverlayPositions]=\"_overlayPositions()\"\r\n (detach)=\"hide()\"\r\n (backdropClick)=\"hide()\"\r\n (positionChange)=\"updateOverlayPositionSide($event)\"\r\n>\r\n <lat-select-dropdown (selection)=\"select($event)\" />\r\n</ng-template>\r\n","import {\r\n booleanAttribute,\r\n ChangeDetectionStrategy,\r\n Component,\r\n computed, forwardRef,\r\n input,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\n\r\nimport { CdkConnectedOverlay, CdkOverlayOrigin } from '@angular/cdk/overlay';\r\n\r\nimport { BuildInInputValueAccessor } from '@latitude/widgets/input';\r\n\r\nimport { SelectDirective } from './select/select.directive';\r\n\r\nimport { SelectDropDownComponent } from './select-dropdown/select-dropdown.component';\r\nimport { SelectOptionDirective } from './select-option/select-option.directive';\r\nimport { SelectTriggerComponent } from './select-trigger/select-trigger.component';\r\nimport { SelectValuesComponent } from './select-values/select-values.component';\r\n\r\n\r\n@Component({\r\n imports: [\r\n CdkOverlayOrigin,\r\n CdkConnectedOverlay,\r\n SelectDropDownComponent,\r\n SelectTriggerComponent,\r\n SelectValuesComponent,\r\n ],\r\n exportAs: 'latSelect',\r\n selector: 'lat-select[type=\"single\"]',\r\n templateUrl: './select/select.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: SelectDirective,\r\n useExisting: forwardRef(() => SelectSingleComponent),\r\n },\r\n {\r\n provide: BuildInInputValueAccessor,\r\n useExisting: forwardRef(() => SelectSingleComponent),\r\n },\r\n ],\r\n})\r\nexport class SelectSingleComponent<T> extends SelectDirective<T, T> {\r\n public readonly nullable = input<unknown, boolean>(true, { transform: booleanAttribute });\r\n\r\n public override selected = computed(() => {\r\n const value = this.value();\r\n return (value === undefined ? [] : [value]) as T[];\r\n });\r\n\r\n public override select(option: SelectOptionDirective<T>): void {\r\n const value = this.nullable() ? (option.selected() ? null : option.value()) : option.value();\r\n\r\n this.writeValue(value);\r\n this.hide();\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { forwardRef, ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';
|
|
3
|
-
import { BuildInInputValueAccessor } from '@latitude
|
|
3
|
+
import { BuildInInputValueAccessor } from '@latitude/widgets/input';
|
|
4
4
|
|
|
5
5
|
class SwitchComponent extends BuildInInputValueAccessor {
|
|
6
6
|
toggle() {
|
|
@@ -9,15 +9,15 @@ class SwitchComponent extends BuildInInputValueAccessor {
|
|
|
9
9
|
this.writeValue(!value);
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
13
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
12
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SwitchComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
13
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.1", type: SwitchComponent, isStandalone: true, selector: "lat-switch", host: { listeners: { "click": "toggle()" } }, providers: [
|
|
14
14
|
{
|
|
15
15
|
provide: BuildInInputValueAccessor,
|
|
16
16
|
useExisting: forwardRef(() => SwitchComponent),
|
|
17
17
|
},
|
|
18
18
|
], exportAs: ["latSwitch"], usesInheritance: true, ngImport: i0, template: "<button\r\n type=\"button\"\r\n role=\"switch\"\r\n [attr.id]=\"inputId()\"\r\n [attr.value]=\"value() ? 'on' : 'off'\"\r\n [attr.tabindex]=\"disabled() ? -1 : tabindex()\"\r\n [attr.disabled]=\"disabled() || undefined\"\r\n [attr.aria-checked]=\"value() || false\"\r\n>\r\n <div\r\n role=\"presentation\"\r\n class=\"lat-switch-thumb\"\r\n ></div>\r\n</button>\r\n<ng-content/>\r\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
19
19
|
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SwitchComponent, decorators: [{
|
|
21
21
|
type: Component,
|
|
22
22
|
args: [{ exportAs: 'latSwitch', selector: 'lat-switch', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
23
23
|
{
|
|
@@ -34,4 +34,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
34
34
|
*/
|
|
35
35
|
|
|
36
36
|
export { SwitchComponent };
|
|
37
|
-
//# sourceMappingURL=latitude-
|
|
37
|
+
//# sourceMappingURL=latitude-widgets-switch.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"latitude-widgets-switch.mjs","sources":["../../../../packages/widgets/switch/lib/switch.component.ts","../../../../packages/widgets/switch/lib/switch.component.html","../../../../packages/widgets/switch/latitude-widgets-switch.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, ViewEncapsulation } from '@angular/core';\r\nimport { BuildInInputValueAccessor } from '@latitude/widgets/input';\r\n\r\n@Component({\r\n exportAs: 'latSwitch',\r\n selector: 'lat-switch',\r\n templateUrl: './switch.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: BuildInInputValueAccessor,\r\n useExisting: forwardRef(() => SwitchComponent),\r\n },\r\n ],\r\n host: {\r\n '(click)': 'toggle()',\r\n },\r\n})\r\nexport class SwitchComponent extends BuildInInputValueAccessor<boolean> {\r\n public toggle() {\r\n if (!this.disabled()) {\r\n const value = this.value() ?? false;\r\n\r\n this.writeValue(!value);\r\n }\r\n }\r\n}\r\n","<button\r\n type=\"button\"\r\n role=\"switch\"\r\n [attr.id]=\"inputId()\"\r\n [attr.value]=\"value() ? 'on' : 'off'\"\r\n [attr.tabindex]=\"disabled() ? -1 : tabindex()\"\r\n [attr.disabled]=\"disabled() || undefined\"\r\n [attr.aria-checked]=\"value() || false\"\r\n>\r\n <div\r\n role=\"presentation\"\r\n class=\"lat-switch-thumb\"\r\n ></div>\r\n</button>\r\n<ng-content/>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;AAmBM,MAAO,eAAgB,SAAQ,yBAAkC,CAAA;IAC9D,MAAM,GAAA;AACX,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE;YACpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,KAAK;AAEnC,YAAA,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC;QACzB;IACF;uGAPW,eAAe,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,UAAA,EAAA,EAAA,EAAA,SAAA,EAVf;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,yBAAyB;AAClC,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,eAAe,CAAC;AAC/C,aAAA;AACF,SAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECdH,+YAeA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FDIa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAhB3B,SAAS;+BACE,WAAW,EAAA,QAAA,EACX,YAAY,EAAA,aAAA,EAEP,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,yBAAyB;AAClC,4BAAA,WAAW,EAAE,UAAU,CAAC,qBAAqB,CAAC;AAC/C,yBAAA;qBACF,EAAA,IAAA,EACK;AACJ,wBAAA,SAAS,EAAE,UAAU;AACtB,qBAAA,EAAA,QAAA,EAAA,+YAAA,EAAA;;;AEjBH;;AAEG;;;;"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { forwardRef, ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';
|
|
3
|
+
import { BuildInInputValueAccessor } from '@latitude/widgets/input';
|
|
4
|
+
import { BuildInTextBoxComponent } from '@latitude/widgets/textbox';
|
|
5
|
+
|
|
6
|
+
class TextBoxDateComponent extends BuildInTextBoxComponent {
|
|
7
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TextBoxDateComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
8
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.1", type: TextBoxDateComponent, isStandalone: true, selector: "lat-textbox[type=\"date\"]", providers: [
|
|
9
|
+
{
|
|
10
|
+
provide: BuildInInputValueAccessor,
|
|
11
|
+
useExisting: forwardRef(() => TextBoxDateComponent),
|
|
12
|
+
},
|
|
13
|
+
], exportAs: ["latTextBox"], usesInheritance: true, ngImport: i0, template: "", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
14
|
+
}
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TextBoxDateComponent, decorators: [{
|
|
16
|
+
type: Component,
|
|
17
|
+
args: [{ imports: [], exportAs: 'latTextBox', selector: 'lat-textbox[type="date"]', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
18
|
+
{
|
|
19
|
+
provide: BuildInInputValueAccessor,
|
|
20
|
+
useExisting: forwardRef(() => TextBoxDateComponent),
|
|
21
|
+
},
|
|
22
|
+
], template: "" }]
|
|
23
|
+
}] });
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Generated bundle index. Do not edit.
|
|
27
|
+
*/
|
|
28
|
+
|
|
29
|
+
export { TextBoxDateComponent };
|
|
30
|
+
//# sourceMappingURL=latitude-widgets-textbox-date.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"latitude-widgets-textbox-date.mjs","sources":["../../../../packages/widgets/textbox-date/lib/textbox-date.component.ts","../../../../packages/widgets/textbox-date/lib/textbox-date.component.html","../../../../packages/widgets/textbox-date/latitude-widgets-textbox-date.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, forwardRef, ViewEncapsulation } from '@angular/core';\r\n\r\nimport { BuildInInputValueAccessor } from '@latitude/widgets/input';\r\nimport { BuildInTextBoxComponent } from '@latitude/widgets/textbox';\r\n\r\n@Component({\r\n imports: [],\r\n exportAs: 'latTextBox',\r\n selector: 'lat-textbox[type=\"date\"]',\r\n templateUrl: './textbox-date.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: BuildInInputValueAccessor,\r\n useExisting: forwardRef(() => TextBoxDateComponent),\r\n },\r\n ],\r\n})\r\nexport class TextBoxDateComponent extends BuildInTextBoxComponent<number> {}\r\n","","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;AAmBM,MAAO,oBAAqB,SAAQ,uBAA+B,CAAA;uGAA5D,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAApB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,SAAA,EAPpB;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,yBAAyB;AAClC,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,oBAAoB,CAAC;AACpD,aAAA;AACF,SAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjBH,EAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FDmBa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAdhC,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,OAAA,EAAA,EAAE,EAAA,QAAA,EACD,YAAY,EAAA,QAAA,EACZ,0BAA0B,EAAA,aAAA,EAErB,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,yBAAyB;AAClC,4BAAA,WAAW,EAAE,UAAU,CAAC,0BAA0B,CAAC;AACpD,yBAAA;AACF,qBAAA,EAAA,QAAA,EAAA,EAAA,EAAA;;;AEjBH;;AAEG;;;;"}
|