@spartan-ng/brain 0.0.1-alpha.412 → 0.0.1-alpha.413
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/esm2022/select/index.mjs +15 -5
- package/esm2022/select/lib/brn-select-content.component.mjs +64 -45
- package/esm2022/select/lib/brn-select-content.token.mjs +9 -0
- package/esm2022/select/lib/brn-select-option.directive.mjs +49 -45
- package/esm2022/select/lib/brn-select-placeholder.directive.mjs +16 -0
- package/esm2022/select/lib/brn-select-trigger.directive.mjs +67 -0
- package/esm2022/select/lib/brn-select-value.component.mjs +58 -36
- package/esm2022/select/lib/brn-select-value.directive.mjs +16 -0
- package/esm2022/select/lib/brn-select.component.mjs +104 -178
- package/esm2022/select/lib/brn-select.token.mjs +9 -0
- package/fesm2022/spartan-ng-brain-select.mjs +378 -497
- package/fesm2022/spartan-ng-brain-select.mjs.map +1 -1
- package/package.json +1 -1
- package/select/index.d.ts +11 -5
- package/select/lib/brn-select-content.component.d.ts +17 -19
- package/select/lib/brn-select-content.token.d.ts +4 -0
- package/select/lib/brn-select-option.directive.d.ts +19 -19
- package/select/lib/brn-select-placeholder.directive.d.ts +8 -0
- package/select/lib/brn-select-trigger.directive.d.ts +20 -0
- package/select/lib/brn-select-value.component.d.ts +13 -6
- package/select/lib/brn-select-value.directive.d.ts +11 -0
- package/select/lib/brn-select.component.d.ts +38 -49
- package/select/lib/brn-select.token.d.ts +4 -0
- package/esm2022/select/lib/brn-select.service.mjs +0 -207
- package/select/lib/brn-select.service.d.ts +0 -71
|
@@ -1,46 +1,68 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { NgTemplateOutlet } from '@angular/common';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, computed, contentChild, input } from '@angular/core';
|
|
3
|
+
import { BrnSelectPlaceholderDirective } from './brn-select-placeholder.directive';
|
|
4
|
+
import { BrnSelectValueDirective } from './brn-select-value.directive';
|
|
5
|
+
import { injectBrnSelect } from './brn-select.token';
|
|
4
6
|
import * as i0 from "@angular/core";
|
|
5
7
|
export class BrnSelectValueComponent {
|
|
6
|
-
|
|
7
|
-
id = computed(() => `${this.
|
|
8
|
-
placeholder = computed(() => this.
|
|
9
|
-
|
|
8
|
+
_select = injectBrnSelect();
|
|
9
|
+
id = computed(() => `${this._select.id()}--value`);
|
|
10
|
+
placeholder = computed(() => this._select.placeholder());
|
|
11
|
+
_showPlaceholder = computed(() => this.value() === null || this.value() === undefined || this.value() === '');
|
|
12
|
+
/** Allow a custom value template */
|
|
13
|
+
customValueTemplate = contentChild(BrnSelectValueDirective, { descendants: true });
|
|
14
|
+
customPlaceholderTemplate = contentChild(BrnSelectPlaceholderDirective, { descendants: true });
|
|
15
|
+
value = computed(() => {
|
|
16
|
+
const value = this._values();
|
|
17
|
+
if (value.length === 0) {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
// remove any selected values that are not in the options list
|
|
21
|
+
const existingOptions = value.filter((val) => this._select.options().some((option) => option.value() === val));
|
|
22
|
+
const selectedOption = existingOptions.map((val) => this._select.options().find((option) => option.value() === val));
|
|
23
|
+
if (selectedOption.length === 0) {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
const selectedLabels = selectedOption.map((option) => option?.getLabel());
|
|
27
|
+
if (this._select.dir() === 'rtl') {
|
|
28
|
+
selectedLabels.reverse();
|
|
29
|
+
}
|
|
30
|
+
return this.transformFn()(selectedLabels);
|
|
31
|
+
});
|
|
32
|
+
/** Normalize the values as an array */
|
|
33
|
+
_values = computed(() => Array.isArray(this._select.value()) ? this._select.value() : [this._select.value()]);
|
|
10
34
|
transformFn = input((values) => (values ?? []).join(', '));
|
|
11
|
-
constructor() {
|
|
12
|
-
const cdr = inject(ChangeDetectorRef);
|
|
13
|
-
// In certain cases (when using a computed signal for value) where the value of the select and the options are
|
|
14
|
-
// changed dynamically, the template does not update until the next frame. To work around this we can use a simple
|
|
15
|
-
// string variable in the template and manually trigger change detection when we update it.
|
|
16
|
-
toObservable(this._selectService.selectedOptions)
|
|
17
|
-
.pipe(takeUntilDestroyed())
|
|
18
|
-
.subscribe((value) => {
|
|
19
|
-
if (value.length === 0) {
|
|
20
|
-
this.value = null;
|
|
21
|
-
cdr.detectChanges();
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
const selectedLabels = value.map((selectedOption) => selectedOption?.getLabel());
|
|
25
|
-
if (this._selectService.dir() === 'rtl') {
|
|
26
|
-
selectedLabels.reverse();
|
|
27
|
-
}
|
|
28
|
-
const result = this.transformFn()(selectedLabels);
|
|
29
|
-
this.value = result;
|
|
30
|
-
cdr.detectChanges();
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
35
|
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnSelectValueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
-
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.
|
|
35
|
-
|
|
36
|
-
|
|
36
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.5", type: BrnSelectValueComponent, isStandalone: true, selector: "brn-select-value, hlm-select-value", inputs: { transformFn: { classPropertyName: "transformFn", publicName: "transformFn", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "id": "id()" } }, queries: [{ propertyName: "customValueTemplate", first: true, predicate: BrnSelectValueDirective, descendants: true, isSignal: true }, { propertyName: "customPlaceholderTemplate", first: true, predicate: BrnSelectPlaceholderDirective, descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
37
|
+
@if (_showPlaceholder()) {
|
|
38
|
+
<ng-container [ngTemplateOutlet]="customPlaceholderTemplate()?.templateRef ?? defaultPlaceholderTemplate" />
|
|
39
|
+
} @else {
|
|
40
|
+
<ng-container
|
|
41
|
+
[ngTemplateOutlet]="customValueTemplate()?.templateRef ?? defaultValueTemplate"
|
|
42
|
+
[ngTemplateOutletContext]="{ $implicit: _select.value() }"
|
|
43
|
+
/>
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
<ng-template #defaultValueTemplate>{{ value() }}</ng-template>
|
|
47
|
+
<ng-template #defaultPlaceholderTemplate>{{ placeholder() }}</ng-template>
|
|
48
|
+
`, isInline: true, styles: [":host{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;white-space:nowrap;pointer-events:none}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
37
49
|
}
|
|
38
50
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnSelectValueComponent, decorators: [{
|
|
39
51
|
type: Component,
|
|
40
|
-
args: [{ selector: 'brn-select-value, hlm-select-value', template: `
|
|
41
|
-
|
|
52
|
+
args: [{ selector: 'brn-select-value, hlm-select-value', imports: [NgTemplateOutlet], template: `
|
|
53
|
+
@if (_showPlaceholder()) {
|
|
54
|
+
<ng-container [ngTemplateOutlet]="customPlaceholderTemplate()?.templateRef ?? defaultPlaceholderTemplate" />
|
|
55
|
+
} @else {
|
|
56
|
+
<ng-container
|
|
57
|
+
[ngTemplateOutlet]="customValueTemplate()?.templateRef ?? defaultValueTemplate"
|
|
58
|
+
[ngTemplateOutletContext]="{ $implicit: _select.value() }"
|
|
59
|
+
/>
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
<ng-template #defaultValueTemplate>{{ value() }}</ng-template>
|
|
63
|
+
<ng-template #defaultPlaceholderTemplate>{{ placeholder() }}</ng-template>
|
|
42
64
|
`, host: {
|
|
43
65
|
'[id]': 'id()',
|
|
44
66
|
}, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;white-space:nowrap;pointer-events:none}\n"] }]
|
|
45
|
-
}]
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
}] });
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLXNlbGVjdC12YWx1ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2JyYWluL3NlbGVjdC9zcmMvbGliL2Jybi1zZWxlY3QtdmFsdWUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbkYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQW1DckQsTUFBTSxPQUFPLHVCQUF1QjtJQUNoQixPQUFPLEdBQUcsZUFBZSxFQUFLLENBQUM7SUFDbEMsRUFBRSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ25ELFdBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBRXRELGdCQUFnQixHQUFHLFFBQVEsQ0FDN0MsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQ2hGLENBQUM7SUFFRixvQ0FBb0M7SUFDakIsbUJBQW1CLEdBQUcsWUFBWSxDQUFDLHVCQUF1QixFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDbkYseUJBQXlCLEdBQUcsWUFBWSxDQUFDLDZCQUE2QixFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFFL0YsS0FBSyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDeEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBRTdCLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN4QixPQUFPLElBQUksQ0FBQztRQUNiLENBQUM7UUFFRCw4REFBOEQ7UUFDOUQsTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQy9HLE1BQU0sY0FBYyxHQUFHLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUNsRCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxLQUFLLEdBQUcsQ0FBQyxDQUMvRCxDQUFDO1FBRUYsSUFBSSxjQUFjLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2pDLE9BQU8sSUFBSSxDQUFDO1FBQ2IsQ0FBQztRQUVELE1BQU0sY0FBYyxHQUFHLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBRTFFLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxjQUFjLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDMUIsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzNDLENBQUMsQ0FBQyxDQUFDO0lBRUgsdUNBQXVDO0lBQ3BCLE9BQU8sR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQzFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBVSxDQUFDLENBQUMsQ0FBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQVMsQ0FDckcsQ0FBQztJQUVjLFdBQVcsR0FBRyxLQUFLLENBQTBDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQzswSEEzQ3hHLHVCQUF1Qjs4R0FBdkIsdUJBQXVCLDZVQVVtQix1QkFBdUIsNEdBQ2pCLDZCQUE2QixnRUF6Qy9FOzs7Ozs7Ozs7Ozs7RUFZVCw4TEFiUyxnQkFBZ0I7OzJGQStCZCx1QkFBdUI7a0JBakNuQyxTQUFTOytCQUNDLG9DQUFvQyxXQUNyQyxDQUFDLGdCQUFnQixDQUFDLFlBQ2pCOzs7Ozs7Ozs7Ozs7RUFZVCxRQUNLO3dCQUNMLE1BQU0sRUFBRSxNQUFNO3FCQUNkLGNBWVcsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgY29udGVudENoaWxkLCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnJuU2VsZWN0UGxhY2Vob2xkZXJEaXJlY3RpdmUgfSBmcm9tICcuL2Jybi1zZWxlY3QtcGxhY2Vob2xkZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IEJyblNlbGVjdFZhbHVlRGlyZWN0aXZlIH0gZnJvbSAnLi9icm4tc2VsZWN0LXZhbHVlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBpbmplY3RCcm5TZWxlY3QgfSBmcm9tICcuL2Jybi1zZWxlY3QudG9rZW4nO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICdicm4tc2VsZWN0LXZhbHVlLCBobG0tc2VsZWN0LXZhbHVlJyxcblx0aW1wb3J0czogW05nVGVtcGxhdGVPdXRsZXRdLFxuXHR0ZW1wbGF0ZTogYFxuXHRcdEBpZiAoX3Nob3dQbGFjZWhvbGRlcigpKSB7XG5cdFx0XHQ8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImN1c3RvbVBsYWNlaG9sZGVyVGVtcGxhdGUoKT8udGVtcGxhdGVSZWYgPz8gZGVmYXVsdFBsYWNlaG9sZGVyVGVtcGxhdGVcIiAvPlxuXHRcdH0gQGVsc2Uge1xuXHRcdFx0PG5nLWNvbnRhaW5lclxuXHRcdFx0XHRbbmdUZW1wbGF0ZU91dGxldF09XCJjdXN0b21WYWx1ZVRlbXBsYXRlKCk/LnRlbXBsYXRlUmVmID8/IGRlZmF1bHRWYWx1ZVRlbXBsYXRlXCJcblx0XHRcdFx0W25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBfc2VsZWN0LnZhbHVlKCkgfVwiXG5cdFx0XHQvPlxuXHRcdH1cblxuXHRcdDxuZy10ZW1wbGF0ZSAjZGVmYXVsdFZhbHVlVGVtcGxhdGU+e3sgdmFsdWUoKSB9fTwvbmctdGVtcGxhdGU+XG5cdFx0PG5nLXRlbXBsYXRlICNkZWZhdWx0UGxhY2Vob2xkZXJUZW1wbGF0ZT57eyBwbGFjZWhvbGRlcigpIH19PC9uZy10ZW1wbGF0ZT5cblx0YCxcblx0aG9zdDoge1xuXHRcdCdbaWRdJzogJ2lkKCknLFxuXHR9LFxuXHRzdHlsZXM6IFtcblx0XHRgXG5cdFx0XHQ6aG9zdCB7XG5cdFx0XHRcdGRpc3BsYXk6IC13ZWJraXQtYm94O1xuXHRcdFx0XHQtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuXHRcdFx0XHQtd2Via2l0LWxpbmUtY2xhbXA6IDE7XG5cdFx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdFx0fVxuXHRcdGAsXG5cdF0sXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBCcm5TZWxlY3RWYWx1ZUNvbXBvbmVudDxUPiB7XG5cdHByb3RlY3RlZCByZWFkb25seSBfc2VsZWN0ID0gaW5qZWN0QnJuU2VsZWN0PFQ+KCk7XG5cdHB1YmxpYyByZWFkb25seSBpZCA9IGNvbXB1dGVkKCgpID0+IGAke3RoaXMuX3NlbGVjdC5pZCgpfS0tdmFsdWVgKTtcblx0cHVibGljIHJlYWRvbmx5IHBsYWNlaG9sZGVyID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5fc2VsZWN0LnBsYWNlaG9sZGVyKCkpO1xuXG5cdHByb3RlY3RlZCByZWFkb25seSBfc2hvd1BsYWNlaG9sZGVyID0gY29tcHV0ZWQoXG5cdFx0KCkgPT4gdGhpcy52YWx1ZSgpID09PSBudWxsIHx8IHRoaXMudmFsdWUoKSA9PT0gdW5kZWZpbmVkIHx8IHRoaXMudmFsdWUoKSA9PT0gJycsXG5cdCk7XG5cblx0LyoqIEFsbG93IGEgY3VzdG9tIHZhbHVlIHRlbXBsYXRlICovXG5cdHByb3RlY3RlZCByZWFkb25seSBjdXN0b21WYWx1ZVRlbXBsYXRlID0gY29udGVudENoaWxkKEJyblNlbGVjdFZhbHVlRGlyZWN0aXZlLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pO1xuXHRwcm90ZWN0ZWQgcmVhZG9ubHkgY3VzdG9tUGxhY2Vob2xkZXJUZW1wbGF0ZSA9IGNvbnRlbnRDaGlsZChCcm5TZWxlY3RQbGFjZWhvbGRlckRpcmVjdGl2ZSwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KTtcblxuXHRwcm90ZWN0ZWQgcmVhZG9ubHkgdmFsdWUgPSBjb21wdXRlZCgoKSA9PiB7XG5cdFx0Y29uc3QgdmFsdWUgPSB0aGlzLl92YWx1ZXMoKTtcblxuXHRcdGlmICh2YWx1ZS5sZW5ndGggPT09IDApIHtcblx0XHRcdHJldHVybiBudWxsO1xuXHRcdH1cblxuXHRcdC8vIHJlbW92ZSBhbnkgc2VsZWN0ZWQgdmFsdWVzIHRoYXQgYXJlIG5vdCBpbiB0aGUgb3B0aW9ucyBsaXN0XG5cdFx0Y29uc3QgZXhpc3RpbmdPcHRpb25zID0gdmFsdWUuZmlsdGVyKCh2YWwpID0+IHRoaXMuX3NlbGVjdC5vcHRpb25zKCkuc29tZSgob3B0aW9uKSA9PiBvcHRpb24udmFsdWUoKSA9PT0gdmFsKSk7XG5cdFx0Y29uc3Qgc2VsZWN0ZWRPcHRpb24gPSBleGlzdGluZ09wdGlvbnMubWFwKCh2YWwpID0+XG5cdFx0XHR0aGlzLl9zZWxlY3Qub3B0aW9ucygpLmZpbmQoKG9wdGlvbikgPT4gb3B0aW9uLnZhbHVlKCkgPT09IHZhbCksXG5cdFx0KTtcblxuXHRcdGlmIChzZWxlY3RlZE9wdGlvbi5sZW5ndGggPT09IDApIHtcblx0XHRcdHJldHVybiBudWxsO1xuXHRcdH1cblxuXHRcdGNvbnN0IHNlbGVjdGVkTGFiZWxzID0gc2VsZWN0ZWRPcHRpb24ubWFwKChvcHRpb24pID0+IG9wdGlvbj8uZ2V0TGFiZWwoKSk7XG5cblx0XHRpZiAodGhpcy5fc2VsZWN0LmRpcigpID09PSAncnRsJykge1xuXHRcdFx0c2VsZWN0ZWRMYWJlbHMucmV2ZXJzZSgpO1xuXHRcdH1cblx0XHRyZXR1cm4gdGhpcy50cmFuc2Zvcm1GbigpKHNlbGVjdGVkTGFiZWxzKTtcblx0fSk7XG5cblx0LyoqIE5vcm1hbGl6ZSB0aGUgdmFsdWVzIGFzIGFuIGFycmF5ICovXG5cdHByb3RlY3RlZCByZWFkb25seSBfdmFsdWVzID0gY29tcHV0ZWQoKCkgPT5cblx0XHRBcnJheS5pc0FycmF5KHRoaXMuX3NlbGVjdC52YWx1ZSgpKSA/ICh0aGlzLl9zZWxlY3QudmFsdWUoKSBhcyBUW10pIDogKFt0aGlzLl9zZWxlY3QudmFsdWUoKV0gYXMgVFtdKSxcblx0KTtcblxuXHRwdWJsaWMgcmVhZG9ubHkgdHJhbnNmb3JtRm4gPSBpbnB1dDwodmFsdWVzOiAoc3RyaW5nIHwgdW5kZWZpbmVkKVtdKSA9PiBhbnk+KCh2YWx1ZXMpID0+ICh2YWx1ZXMgPz8gW10pLmpvaW4oJywgJykpO1xufVxuIl19
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Directive, inject, TemplateRef } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class BrnSelectValueDirective {
|
|
4
|
+
/** @internale */
|
|
5
|
+
templateRef = inject(TemplateRef);
|
|
6
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnSelectValueDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
7
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.5", type: BrnSelectValueDirective, isStandalone: true, selector: "[brnSelectValue], [hlmSelectValue]", ngImport: i0 });
|
|
8
|
+
}
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnSelectValueDirective, decorators: [{
|
|
10
|
+
type: Directive,
|
|
11
|
+
args: [{
|
|
12
|
+
standalone: true,
|
|
13
|
+
selector: '[brnSelectValue], [hlmSelectValue]',
|
|
14
|
+
}]
|
|
15
|
+
}] });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLXNlbGVjdC12YWx1ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2JyYWluL3NlbGVjdC9zcmMvbGliL2Jybi1zZWxlY3QtdmFsdWUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNL0QsTUFBTSxPQUFPLHVCQUF1QjtJQUNuQyxpQkFBaUI7SUFDRCxXQUFXLEdBQUcsTUFBTSxDQUF3QyxXQUFXLENBQUMsQ0FBQzswSEFGN0UsdUJBQXVCOzhHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBSm5DLFNBQVM7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxvQ0FBb0M7aUJBQzlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRzZWxlY3RvcjogJ1ticm5TZWxlY3RWYWx1ZV0sIFtobG1TZWxlY3RWYWx1ZV0nLFxufSlcbmV4cG9ydCBjbGFzcyBCcm5TZWxlY3RWYWx1ZURpcmVjdGl2ZTxUPiB7XG5cdC8qKiBAaW50ZXJuYWxlICovXG5cdHB1YmxpYyByZWFkb25seSB0ZW1wbGF0ZVJlZiA9IGluamVjdDxUZW1wbGF0ZVJlZjxCcm5TZWxlY3RWYWx1ZUNvbnRleHQ8VD4+PihUZW1wbGF0ZVJlZik7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnJuU2VsZWN0VmFsdWVDb250ZXh0PFQ+IHtcblx0JGltcGxpY2l0OiBUIHwgVFtdO1xufVxuIl19
|