@latitude-ui/widgets 0.0.11 → 0.0.13
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/core/public-api.d.ts +2 -0
- package/core/src/dimensions.d.ts +13 -0
- package/core/src/root.d.ts +12 -0
- package/esm2022/button/src/button.component.js +1 -1
- package/esm2022/core/public-api.js +3 -1
- package/esm2022/core/src/dimensions.js +56 -0
- package/esm2022/core/src/root.js +20 -0
- package/esm2022/icons/src/icon.component.js +18 -10
- package/esm2022/icons/src/icon.service.js +62 -0
- package/esm2022/icons/src/icon.tokens.js +8 -2
- package/esm2022/input/src/input.directive.js +6 -5
- package/esm2022/lookup/latitude-ui-widgets-lookup.js +5 -0
- package/esm2022/lookup/public-api.js +3 -0
- package/esm2022/lookup/src/lookup-outlet.directive.js +13 -0
- package/esm2022/lookup/src/lookup.component.js +11 -0
- package/esm2022/select/public-api.js +4 -4
- package/esm2022/select/src/select/select.directive.js +86 -0
- package/esm2022/select/src/select-dropdown/select-dropdown.component.js +39 -0
- package/esm2022/select/src/select-multiple.component.js +38 -29
- package/esm2022/select/src/select-option/select-option.component.js +21 -0
- package/esm2022/select/src/select-option/select-option.directive.js +19 -0
- package/esm2022/select/src/select-single.component.js +34 -29
- package/esm2022/select/src/select-trigger/select-trigger.component.js +29 -0
- package/esm2022/select/src/select-value/select-value.component.js +15 -0
- package/esm2022/select/src/select-values/select-values.component.js +16 -0
- package/esm2022/select/src/select.module.js +2 -2
- package/esm2022/textarea/src/textarea.component.js +8 -19
- package/esm2022/textbox/public-api.js +2 -1
- package/esm2022/textbox/src/textbox.component.js +7 -15
- package/esm2022/textbox/src/textbox.directive.js +25 -0
- package/esm2022/textbox-number/src/textbox-number.component.js +11 -11
- package/esm2022/textbox-search/src/textbox-search.component.js +2 -3
- package/esm2022/toolbar/latitude-ui-widgets-toolbar.js +5 -0
- package/esm2022/toolbar/public-api.js +2 -0
- package/esm2022/toolbar/src/toolbar.component.js +14 -0
- package/icons/src/icon.component.d.ts +3 -1
- package/icons/src/icon.service.d.ts +15 -0
- package/icons/src/icon.tokens.d.ts +2 -1
- package/input/src/input.directive.d.ts +2 -1
- package/lookup/README.md +3 -0
- package/lookup/latitude-ui-widgets-lookup.d.ts +5 -0
- package/lookup/public-api.d.ts +2 -0
- package/lookup/src/lookup-outlet.directive.d.ts +5 -0
- package/lookup/src/lookup.component.d.ts +5 -0
- package/package.json +14 -6
- package/select/public-api.d.ts +3 -3
- package/select/src/select/select.directive.d.ts +24 -0
- package/select/src/select-dropdown/select-dropdown.component.d.ts +14 -0
- package/select/src/select-multiple.component.d.ts +7 -7
- package/select/src/{select-option.component.d.ts → select-option/select-option.component.d.ts} +2 -2
- package/select/src/{select-option.directive.d.ts → select-option/select-option.directive.d.ts} +3 -3
- package/select/src/select-single.component.d.ts +6 -7
- package/select/src/{select-trigger.component.d.ts → select-trigger/select-trigger.component.d.ts} +2 -2
- package/select/src/{select-value.component.d.ts → select-value/select-value.component.d.ts} +1 -1
- package/select/src/select-values/select-values.component.d.ts +7 -0
- package/select/src/select.module.d.ts +1 -1
- package/styles/_defaults.scss +13 -0
- package/styles/forms/_index.scss +117 -85
- package/styles/icons/_index.scss +2 -2
- package/textarea/src/textarea.component.d.ts +3 -9
- package/textbox/public-api.d.ts +1 -0
- package/textbox/src/textbox.component.d.ts +3 -8
- package/textbox/src/textbox.directive.d.ts +12 -0
- package/textbox-number/src/textbox-number.component.d.ts +4 -5
- package/textbox-search/src/textbox-search.component.d.ts +1 -2
- package/toolbar/latitude-ui-widgets-toolbar.d.ts +5 -0
- package/toolbar/public-api.d.ts +1 -0
- package/toolbar/src/toolbar.component.d.ts +5 -0
- package/esm2022/select/src/select-option.component.js +0 -21
- package/esm2022/select/src/select-option.directive.js +0 -19
- package/esm2022/select/src/select-trigger.component.js +0 -28
- package/esm2022/select/src/select-value.component.js +0 -13
- package/esm2022/select/src/select.component.js +0 -44
- package/esm2022/select/src/select.directive.js +0 -103
- package/select/src/select.component.d.ts +0 -13
- package/select/src/select.directive.d.ts +0 -25
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, contentChildren, effect, inject, input, linkedSignal, signal, untracked, ViewEncapsulation, } from '@angular/core';
|
|
2
|
-
import { SelectOptionComponent } from './select-option.component';
|
|
3
|
-
import { SelectDirective } from './select.directive';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "./select.directive";
|
|
6
|
-
export class SelectComponent {
|
|
7
|
-
dir = inject((SelectDirective), { self: true });
|
|
8
|
-
placeholder = input();
|
|
9
|
-
options = contentChildren((SelectOptionComponent));
|
|
10
|
-
constructor() {
|
|
11
|
-
effect(() => {
|
|
12
|
-
const options = this.options();
|
|
13
|
-
untracked(() => {
|
|
14
|
-
this.dir.options.update(() => {
|
|
15
|
-
return options.map((option, index) => {
|
|
16
|
-
return {
|
|
17
|
-
value: linkedSignal(() => option.value()),
|
|
18
|
-
label: linkedSignal(() => option.label()),
|
|
19
|
-
disabled: linkedSignal(() => option.disabled()),
|
|
20
|
-
hidden: signal(false),
|
|
21
|
-
setsize: signal(options.length),
|
|
22
|
-
posinset: signal(index),
|
|
23
|
-
selected: signal(false),
|
|
24
|
-
};
|
|
25
|
-
});
|
|
26
|
-
});
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: SelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
31
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.0.4", type: SelectComponent, isStandalone: true, selector: "lat-select", inputs: { placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "options", predicate: (SelectOptionComponent), isSignal: true }], exportAs: ["latSelect"], hostDirectives: [{ directive: i1.SelectDirective }], ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
32
|
-
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: SelectComponent, decorators: [{
|
|
34
|
-
type: Component,
|
|
35
|
-
args: [{
|
|
36
|
-
exportAs: 'latSelect',
|
|
37
|
-
selector: 'lat-select',
|
|
38
|
-
template: '',
|
|
39
|
-
encapsulation: ViewEncapsulation.None,
|
|
40
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
41
|
-
hostDirectives: [SelectDirective],
|
|
42
|
-
}]
|
|
43
|
-
}], ctorParameters: () => [] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3dpZGdldHMvc2VsZWN0L3NyYy9zZWxlY3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULGVBQWUsRUFDZixNQUFNLEVBQ04sTUFBTSxFQUNOLEtBQUssRUFDTCxZQUFZLEVBQ1osTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7O0FBVXJELE1BQU0sT0FBZ0IsZUFBZTtJQUNuQixHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUEsZUFBdUIsQ0FBQSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFdEQsV0FBVyxHQUFHLEtBQUssRUFBVSxDQUFDO0lBRTlCLE9BQU8sR0FBRyxlQUFlLENBQUMsQ0FBQSxxQkFBaUMsQ0FBQSxDQUFDLENBQUM7SUFFN0U7UUFDRSxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1YsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBRS9CLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRTtvQkFDM0IsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO3dCQUNuQyxPQUFPOzRCQUNMLEtBQUssRUFBRSxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDOzRCQUN6QyxLQUFLLEVBQUUsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQzs0QkFDekMsUUFBUSxFQUFFLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7NEJBQy9DLE1BQU0sRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDOzRCQUNyQixPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7NEJBQy9CLFFBQVEsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDOzRCQUN2QixRQUFRLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQzt5QkFDTCxDQUFDO29CQUN2QixDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3VHQTNCbUIsZUFBZTsyRkFBZixlQUFlLG9QQUtPLENBQUEscUJBQWlDLENBQUEsMkhBVmpFLEVBQUU7OzJGQUtRLGVBQWU7a0JBUnBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLFFBQVEsRUFBRSxZQUFZO29CQUN0QixRQUFRLEVBQUUsRUFBRTtvQkFDWixhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGNBQWMsRUFBRSxDQUFDLGVBQWUsQ0FBQztpQkFDbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBjb250ZW50Q2hpbGRyZW4sXG4gIGVmZmVjdCxcbiAgaW5qZWN0LFxuICBpbnB1dCxcbiAgbGlua2VkU2lnbmFsLFxuICBzaWduYWwsXG4gIHVudHJhY2tlZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTZWxlY3RPcHRpb24sIFNlbGVjdE9wdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0LW9wdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VsZWN0RGlyZWN0aXZlIH0gZnJvbSAnLi9zZWxlY3QuZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gIGV4cG9ydEFzOiAnbGF0U2VsZWN0JyxcbiAgc2VsZWN0b3I6ICdsYXQtc2VsZWN0JyxcbiAgdGVtcGxhdGU6ICcnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdERpcmVjdGl2ZXM6IFtTZWxlY3REaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTZWxlY3RDb21wb25lbnQ8VCwgVFZhbHVlPiB7XG4gIHB1YmxpYyByZWFkb25seSBkaXIgPSBpbmplY3QoU2VsZWN0RGlyZWN0aXZlPFRWYWx1ZT4sIHsgc2VsZjogdHJ1ZSB9KTtcblxuICBwdWJsaWMgcmVhZG9ubHkgcGxhY2Vob2xkZXIgPSBpbnB1dDxzdHJpbmc+KCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IG9wdGlvbnMgPSBjb250ZW50Q2hpbGRyZW4oU2VsZWN0T3B0aW9uQ29tcG9uZW50PFRba2V5b2YgVF0+KTtcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoKSB7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLm9wdGlvbnMoKTtcblxuICAgICAgdW50cmFja2VkKCgpID0+IHtcbiAgICAgICAgdGhpcy5kaXIub3B0aW9ucy51cGRhdGUoKCkgPT4ge1xuICAgICAgICAgIHJldHVybiBvcHRpb25zLm1hcCgob3B0aW9uLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgdmFsdWU6IGxpbmtlZFNpZ25hbCgoKSA9PiBvcHRpb24udmFsdWUoKSksXG4gICAgICAgICAgICAgIGxhYmVsOiBsaW5rZWRTaWduYWwoKCkgPT4gb3B0aW9uLmxhYmVsKCkpLFxuICAgICAgICAgICAgICBkaXNhYmxlZDogbGlua2VkU2lnbmFsKCgpID0+IG9wdGlvbi5kaXNhYmxlZCgpKSxcbiAgICAgICAgICAgICAgaGlkZGVuOiBzaWduYWwoZmFsc2UpLFxuICAgICAgICAgICAgICBzZXRzaXplOiBzaWduYWwob3B0aW9ucy5sZW5ndGgpLFxuICAgICAgICAgICAgICBwb3NpbnNldDogc2lnbmFsKGluZGV4KSxcbiAgICAgICAgICAgICAgc2VsZWN0ZWQ6IHNpZ25hbChmYWxzZSksXG4gICAgICAgICAgICB9IGFzIFNlbGVjdE9wdGlvbjxUPjtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBoYW5kbGVTZWxlY3RPcHRpb24ob3B0aW9uOiBTZWxlY3RPcHRpb248VD4pOiB2b2lkO1xufVxuXG5cblxuXG4iXX0=
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
import { delay, of, switchMap } from 'rxjs';
|
|
2
|
-
import { computed, contentChildren, Directive, forwardRef, inject, InjectionToken, input, signal } from '@angular/core';
|
|
3
|
-
import { takeUntilDestroyed, toObservable, toSignal } from '@angular/core/rxjs-interop';
|
|
4
|
-
import { BuildInInputValueAccessor } from '@latitude-ui/widgets/input';
|
|
5
|
-
import { SelectOptionDirective } from './select-option.directive';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export const SELECT_VALUE_COERCION = new InjectionToken('SELECT_VALUE_COERCION');
|
|
8
|
-
export class SelectDirective extends BuildInInputValueAccessor {
|
|
9
|
-
coercion = inject(SELECT_VALUE_COERCION);
|
|
10
|
-
placeholder = input();
|
|
11
|
-
options = contentChildren(SelectOptionDirective);
|
|
12
|
-
indexes = computed(() => {
|
|
13
|
-
const options = this.options();
|
|
14
|
-
return new Map(options.map((option) => [option.value(), option]));
|
|
15
|
-
});
|
|
16
|
-
selected = computed(() => this.coercion(this.value()));
|
|
17
|
-
selectedOptions = computed(() => {
|
|
18
|
-
const selected = this.selected();
|
|
19
|
-
const indexes = this.indexes();
|
|
20
|
-
return selected.map((value) => indexes.get(value)).filter(Boolean);
|
|
21
|
-
});
|
|
22
|
-
overlayWidth = signal(0);
|
|
23
|
-
overlayState = signal(false);
|
|
24
|
-
overlayPositions = signal([
|
|
25
|
-
{
|
|
26
|
-
originX: 'start',
|
|
27
|
-
originY: 'bottom',
|
|
28
|
-
overlayX: 'start',
|
|
29
|
-
overlayY: 'top',
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
originX: 'end',
|
|
33
|
-
originY: 'bottom',
|
|
34
|
-
overlayX: 'end',
|
|
35
|
-
overlayY: 'top',
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
originX: 'start',
|
|
39
|
-
originY: 'top',
|
|
40
|
-
overlayX: 'start',
|
|
41
|
-
overlayY: 'bottom',
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
originX: 'end',
|
|
45
|
-
originY: 'top',
|
|
46
|
-
overlayX: 'end',
|
|
47
|
-
overlayY: 'bottom',
|
|
48
|
-
},
|
|
49
|
-
]);
|
|
50
|
-
overlayPositionSide = signal('bottom');
|
|
51
|
-
overlayExpanded = toSignal(toObservable(this.overlayState).pipe(switchMap((state) => {
|
|
52
|
-
return state ? of(state) : of(state).pipe(delay(100));
|
|
53
|
-
}), takeUntilDestroyed()), { initialValue: false });
|
|
54
|
-
hide() {
|
|
55
|
-
if (!this.overlayState()) {
|
|
56
|
-
return void 0;
|
|
57
|
-
}
|
|
58
|
-
this.overlayState.set(false);
|
|
59
|
-
this.markAsTouched();
|
|
60
|
-
}
|
|
61
|
-
open() {
|
|
62
|
-
if (this.overlayState() || this.disabled() || this.options().length === 0) {
|
|
63
|
-
return void 0;
|
|
64
|
-
}
|
|
65
|
-
this.overlayState.set(true);
|
|
66
|
-
}
|
|
67
|
-
toggle() {
|
|
68
|
-
if (this.overlayState()) {
|
|
69
|
-
this.hide();
|
|
70
|
-
}
|
|
71
|
-
else {
|
|
72
|
-
this.open();
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
updateOverlayPositionSide({ connectionPair }) {
|
|
76
|
-
this.overlayPositionSide.update(() => {
|
|
77
|
-
return connectionPair.originY === 'center'
|
|
78
|
-
? connectionPair.originX === 'start'
|
|
79
|
-
? 'left'
|
|
80
|
-
: 'right'
|
|
81
|
-
: connectionPair.originY;
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: SelectDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
85
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "20.0.4", type: SelectDirective, isStandalone: true, inputs: { placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
86
|
-
{
|
|
87
|
-
provide: BuildInInputValueAccessor,
|
|
88
|
-
useExisting: forwardRef(() => SelectDirective),
|
|
89
|
-
},
|
|
90
|
-
], queries: [{ propertyName: "options", predicate: SelectOptionDirective, isSignal: true }], usesInheritance: true, ngImport: i0 });
|
|
91
|
-
}
|
|
92
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: SelectDirective, decorators: [{
|
|
93
|
-
type: Directive,
|
|
94
|
-
args: [{
|
|
95
|
-
providers: [
|
|
96
|
-
{
|
|
97
|
-
provide: BuildInInputValueAccessor,
|
|
98
|
-
useExisting: forwardRef(() => SelectDirective),
|
|
99
|
-
},
|
|
100
|
-
],
|
|
101
|
-
}]
|
|
102
|
-
}] });
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3dpZGdldHMvc2VsZWN0L3NyYy9zZWxlY3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUU1QyxPQUFPLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4SCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBSXhGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUVsRSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FBNkIsdUJBQXVCLENBQUMsQ0FBQztBQVU3RyxNQUFNLE9BQU8sZUFBbUQsU0FBUSx5QkFBeUQ7SUFDL0csUUFBUSxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBRXpDLFdBQVcsR0FBRyxLQUFLLEVBQVUsQ0FBQztJQUU5QixPQUFPLEdBQUcsZUFBZSxDQUEyQixxQkFBcUIsQ0FBQyxDQUFDO0lBRTNFLE9BQU8sR0FBRyxRQUFRLENBQW1DLEdBQUcsRUFBRTtRQUN4RSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFFL0IsT0FBTyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxNQUFNLENBQUMs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Q0gsQ0FBQztJQUVNLHlCQUF5QixDQUFDLEVBQUUsY0FBYyxFQUFrQztRQUNqRixJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNuQyxPQUFPLGNBQWMsQ0FBQyxPQUFPLEtBQUssUUFBUTtnQkFDeEMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxPQUFPLEtBQUssT0FBTztvQkFDbEMsQ0FBQyxDQUFDLE1BQU07b0JBQ1IsQ0FBQyxDQUFDLE9BQU87Z0JBQ1gsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3VHQS9GVSxlQUFlOzJGQUFmLGVBQWUsdUxBUGY7WUFDVDtnQkFDRSxPQUFPLEVBQUUseUJBQXlCO2dCQUNsQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQzthQUMvQztTQUNGLGtEQU9tRSxxQkFBcUI7OzJGQUw5RSxlQUFlO2tCQVIzQixTQUFTO21CQUFDO29CQUNULFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUseUJBQXlCOzRCQUNsQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxnQkFBZ0IsQ0FBQzt5QkFDL0M7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBkZWxheSwgb2YsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBjb21wdXRlZCwgY29udGVudENoaWxkcmVuLCBEaXJlY3RpdmUsIGZvcndhcmRSZWYsIGluamVjdCwgSW5qZWN0aW9uVG9rZW4sIGlucHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCwgdG9PYnNlcnZhYmxlLCB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuaW1wb3J0IHsgQ29ubmVjdGVkT3ZlcmxheVBvc2l0aW9uQ2hhbmdlLCBDb25uZWN0ZWRQb3NpdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcblxuaW1wb3J0IHsgQnVpbGRJbklucHV0VmFsdWVBY2Nlc3NvciB9IGZyb20gJ0BsYXRpdHVkZS11aS93aWRnZXRzL2lucHV0JztcblxuaW1wb3J0IHsgU2VsZWN0T3B0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi9zZWxlY3Qtb3B0aW9uLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCBjb25zdCBTRUxFQ1RfVkFMVUVfQ09FUkNJT04gPSBuZXcgSW5qZWN0aW9uVG9rZW48PFQ+KHZhbHVlOiB1bmtub3duKSA9PiBUW10+KCdTRUxFQ1RfVkFMVUVfQ09FUkNJT04nKTtcblxuQERpcmVjdGl2ZSh7XG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEJ1aWxkSW5JbnB1dFZhbHVlQWNjZXNzb3IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTZWxlY3REaXJlY3RpdmUpLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdERpcmVjdGl2ZTxULCBUU2luZ2xlIGV4dGVuZHMgYm9vbGVhbiA9IHRydWU+IGV4dGVuZHMgQnVpbGRJbklucHV0VmFsdWVBY2Nlc3NvcjxUU2luZ2xlIGV4dGVuZHMgdHJ1ZSA/IFQgOiBUW10+IHtcbiAgcHVibGljIHJlYWRvbmx5IGNvZXJjaW9uID0gaW5qZWN0KFNFTEVDVF9WQUxVRV9DT0VSQ0lPTik7XG5cbiAgcHVibGljIHJlYWRvbmx5IHBsYWNlaG9sZGVyID0gaW5wdXQ8c3RyaW5nPigpO1xuXG4gIHB1YmxpYyByZWFkb25seSBvcHRpb25zID0gY29udGVudENoaWxkcmVuPFNlbGVjdE9wdGlvbkRpcmVjdGl2ZTxUPj4oU2VsZWN0T3B0aW9uRGlyZWN0aXZlKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgaW5kZXhlcyA9IGNvbXB1dGVkPE1hcDxULCBTZWxlY3RPcHRpb25EaXJlY3RpdmU8VD4+PigoKSA9PiB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHRoaXMub3B0aW9ucygpO1xuXG4gICAgcmV0dXJuIG5ldyBNYXAob3B0aW9ucy5tYXAoKG9wdGlvbikgPT4gW29wdGlvbi52YWx1ZSgpLCBvcHRpb25dKSk7XG4gIH0pO1xuXG4gIHB1YmxpYyByZWFkb25seSBzZWxlY3RlZCA9ICBjb21wdXRlZCgoKSA9PiB0aGlzLmNvZXJjaW9uKHRoaXMudmFsdWUoKSkgYXMgVFtdKTtcbiAgcHVibGljIHJlYWRvbmx5IHNlbGVjdGVkT3B0aW9ucyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBzZWxlY3RlZCA9IHRoaXMuc2VsZWN0ZWQoKTtcblxuICAgIGNvbnN0IGluZGV4ZXMgPSB0aGlzLmluZGV4ZXMoKTtcbiAgICByZXR1cm4gc2VsZWN0ZWQubWFwKCh2YWx1ZSkgPT4gaW5kZXhlcy5nZXQodmFsdWUpKS5maWx0ZXIoQm9vbGVhbikgYXMgU2VsZWN0T3B0aW9uRGlyZWN0aXZlPFQ+W107XG4gIH0pO1xuXG4gIHB1YmxpYyByZWFkb25seSBvdmVybGF5V2lkdGggPSBzaWduYWw8bnVtYmVyPigwKTtcbiAgcHVibGljIHJlYWRvbmx5IG92ZXJsYXlTdGF0ZSA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyByZWFkb25seSBvdmVybGF5UG9zaXRpb25zID0gc2lnbmFsPENvbm5lY3RlZFBvc2l0aW9uW10+KFtcbiAgICB7XG4gICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIG9yaWdpblg6ICdlbmQnLFxuICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICBvdmVybGF5WDogJ2VuZCcsXG4gICAgICBvdmVybGF5WTogJ3RvcCcsXG4gICAgfSxcbiAgICB7XG4gICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIG9yaWdpblg6ICdlbmQnLFxuICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICBvdmVybGF5WDogJ2VuZCcsXG4gICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgfSxcbiAgXSk7XG4gIHB1YmxpYyByZWFkb25seSBvdmVybGF5UG9zaXRpb25TaWRlID0gc2lnbmFsPCd0b3AnIHwgJ2JvdHRvbScgfCAnbGVmdCcgfCAncmlnaHQnPignYm90dG9tJyk7XG5cbiAgcHVibGljIHJlYWRvbmx5IG92ZXJsYXlFeHBhbmRlZCA9IHRvU2lnbmFsKFxuICAgIHRvT2JzZXJ2YWJsZSh0aGlzLm92ZXJsYXlTdGF0ZSkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoc3RhdGUpID0+IHtcbiAgICAgICAgcmV0dXJuIHN0YXRlID8gb2Yoc3RhdGUpIDogb2Yoc3RhdGUpLnBpcGUoZGVsYXkoMTAwKSk7XG4gICAgICB9KSxcbiAgICAgIHRha2VVbnRpbERlc3Ryb3llZCgpLFxuICAgICksXG4gICAgeyBpbml0aWFsVmFsdWU6IGZhbHNlIH0sXG4gICk7XG5cbiAgcHVibGljIGhpZGUoKSB7XG4gICAgaWYgKCF0aGlzLm92ZXJsYXlTdGF0ZSgpKSB7XG4gICAgICByZXR1cm4gdm9pZCAwO1xuICAgIH1cblxuICAgIHRoaXMub3ZlcmxheVN0YXRlLnNldChmYWxzZSk7XG5cbiAgICB0aGlzLm1hcmtBc1RvdWNoZWQoKTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuKCkge1xuICAgIGlmICh0aGlzLm92ZXJsYXlTdGF0ZSgpIHx8IHRoaXMuZGlzYWJsZWQoKSB8fCB0aGlzLm9wdGlvbnMoKS5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB2b2lkIDA7XG4gICAgfVxuXG4gICAgdGhpcy5vdmVybGF5U3RhdGUuc2V0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIHRvZ2dsZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5vdmVybGF5U3RhdGUoKSkge1xuICAgICAgdGhpcy5oaWRlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMub3BlbigpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVPdmVybGF5UG9zaXRpb25TaWRlKHsgY29ubmVjdGlvblBhaXIgfTogQ29ubmVjdGVkT3ZlcmxheVBvc2l0aW9uQ2hhbmdlKSB7XG4gICAgdGhpcy5vdmVybGF5UG9zaXRpb25TaWRlLnVwZGF0ZSgoKSA9PiB7XG4gICAgICByZXR1cm4gY29ubmVjdGlvblBhaXIub3JpZ2luWSA9PT0gJ2NlbnRlcidcbiAgICAgICAgPyBjb25uZWN0aW9uUGFpci5vcmlnaW5YID09PSAnc3RhcnQnXG4gICAgICAgICAgPyAnbGVmdCdcbiAgICAgICAgICA6ICdyaWdodCdcbiAgICAgICAgOiBjb25uZWN0aW9uUGFpci5vcmlnaW5ZO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { SelectOption, SelectOptionComponent } from './select-option.component';
|
|
2
|
-
import { SelectDirective } from './select.directive';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "./select.directive";
|
|
5
|
-
export declare abstract class SelectComponent<T, TValue> {
|
|
6
|
-
readonly dir: SelectDirective<any>;
|
|
7
|
-
readonly placeholder: import("@angular/core").InputSignal<string | undefined>;
|
|
8
|
-
readonly options: import("@angular/core").Signal<readonly SelectOptionComponent<T[keyof T]>[]>;
|
|
9
|
-
protected constructor();
|
|
10
|
-
protected abstract handleSelectOption(option: SelectOption<T>): void;
|
|
11
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<SelectComponent<any, any>, never>;
|
|
12
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SelectComponent<any, any>, "lat-select", ["latSelect"], { "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; }, {}, ["options"], never, true, [{ directive: typeof i1.SelectDirective; inputs: {}; outputs: {}; }]>;
|
|
13
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { InjectionToken } from '@angular/core';
|
|
2
|
-
import { ConnectedOverlayPositionChange, ConnectedPosition } from '@angular/cdk/overlay';
|
|
3
|
-
import { BuildInInputValueAccessor } from '@latitude-ui/widgets/input';
|
|
4
|
-
import { SelectOptionDirective } from './select-option.directive';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export declare const SELECT_VALUE_COERCION: InjectionToken<(<T>(value: unknown) => T[])>;
|
|
7
|
-
export declare class SelectDirective<T, TSingle extends boolean = true> extends BuildInInputValueAccessor<TSingle extends true ? T : T[]> {
|
|
8
|
-
readonly coercion: <T_1>(value: unknown) => T_1[];
|
|
9
|
-
readonly placeholder: import("@angular/core").InputSignal<string | undefined>;
|
|
10
|
-
readonly options: import("@angular/core").Signal<readonly SelectOptionDirective<T>[]>;
|
|
11
|
-
readonly indexes: import("@angular/core").Signal<Map<T, SelectOptionDirective<T>>>;
|
|
12
|
-
readonly selected: import("@angular/core").Signal<T[]>;
|
|
13
|
-
readonly selectedOptions: import("@angular/core").Signal<SelectOptionDirective<T>[]>;
|
|
14
|
-
readonly overlayWidth: import("@angular/core").WritableSignal<number>;
|
|
15
|
-
readonly overlayState: import("@angular/core").WritableSignal<boolean>;
|
|
16
|
-
readonly overlayPositions: import("@angular/core").WritableSignal<ConnectedPosition[]>;
|
|
17
|
-
readonly overlayPositionSide: import("@angular/core").WritableSignal<"bottom" | "top" | "left" | "right">;
|
|
18
|
-
readonly overlayExpanded: import("@angular/core").Signal<boolean>;
|
|
19
|
-
hide(): undefined;
|
|
20
|
-
open(): undefined;
|
|
21
|
-
toggle(): void;
|
|
22
|
-
updateOverlayPositionSide({ connectionPair }: ConnectedOverlayPositionChange): void;
|
|
23
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<SelectDirective<any, any>, never>;
|
|
24
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<SelectDirective<any, any>, never, never, { "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; }, {}, ["options"], never, true, never>;
|
|
25
|
-
}
|