@energinet/watt 4.1.29 → 4.1.30
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/segmented-buttons/watt-segmented-button.component.js +5 -4
- package/esm2022/segmented-buttons/watt-segmented-buttons.component.js +50 -29
- package/package.json +1 -1
- package/segmented-buttons/watt-segmented-button.component.d.ts +3 -2
- package/segmented-buttons/watt-segmented-buttons.component.d.ts +1 -17
|
@@ -20,9 +20,10 @@ import { Component, input, TemplateRef, viewChild } from '@angular/core';
|
|
|
20
20
|
import * as i0 from "@angular/core";
|
|
21
21
|
export class WattSegmentedButtonComponent {
|
|
22
22
|
templateRef = viewChild.required(TemplateRef);
|
|
23
|
-
value = input
|
|
23
|
+
value = input(...(ngDevMode ? [undefined, { debugName: "value" }] : []));
|
|
24
|
+
link = input(...(ngDevMode ? [undefined, { debugName: "link" }] : []));
|
|
24
25
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: WattSegmentedButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
25
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.6", type: WattSegmentedButtonComponent, isStandalone: true, selector: "watt-segmented-button", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: TemplateRef, descendants: true, isSignal: true }], ngImport: i0, template: ` <ng-template>
|
|
26
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.6", type: WattSegmentedButtonComponent, isStandalone: true, selector: "watt-segmented-button", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, link: { classPropertyName: "link", publicName: "link", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: TemplateRef, descendants: true, isSignal: true }], ngImport: i0, template: ` <ng-template>
|
|
26
27
|
<ng-content />
|
|
27
28
|
</ng-template>`, isInline: true });
|
|
28
29
|
}
|
|
@@ -34,5 +35,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImpor
|
|
|
34
35
|
<ng-content />
|
|
35
36
|
</ng-template>`,
|
|
36
37
|
}]
|
|
37
|
-
}], propDecorators: { templateRef: [{ type: i0.ViewChild, args: [i0.forwardRef(() => TemplateRef), { isSignal: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }] } });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
}], propDecorators: { templateRef: [{ type: i0.ViewChild, args: [i0.forwardRef(() => TemplateRef), { isSignal: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], link: [{ type: i0.Input, args: [{ isSignal: true, alias: "link", required: false }] }] } });
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2F0dC1zZWdtZW50ZWQtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvd2F0dC9wYWNrYWdlL3NlZ21lbnRlZC1idXR0b25zL3dhdHQtc2VnbWVudGVkLWJ1dHRvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FBQ2pCOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUNILFlBQVk7QUFDWixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVF6RSxNQUFNLE9BQU8sNEJBQTRCO0lBQ3ZDLFdBQVcsR0FBRyxTQUFTLENBQUMsUUFBUSxDQUF1QixXQUFXLENBQUMsQ0FBQztJQUNwRSxLQUFLLEdBQUcsS0FBSywyREFBVSxDQUFDO0lBQ3hCLElBQUksR0FBRyxLQUFLLDBEQUFVLENBQUM7dUdBSFosNEJBQTRCOzJGQUE1Qiw0QkFBNEIsdVhBQ2dCLFdBQVcsZ0VBTHhEOztpQkFFSzs7MkZBRUosNEJBQTRCO2tCQU54QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFFBQVEsRUFBRTs7aUJBRUs7aUJBQ2hCOzZGQUV3RCxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiLy8jcmVnaW9uIExpY2Vuc2Vcbi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDIwIEVuZXJnaW5ldCBEYXRhSHViIEEvU1xuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2UyXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbi8vI2VuZHJlZ2lvblxuaW1wb3J0IHsgQ29tcG9uZW50LCBpbnB1dCwgVGVtcGxhdGVSZWYsIHZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3YXR0LXNlZ21lbnRlZC1idXR0b24nLFxuICB0ZW1wbGF0ZTogYCA8bmctdGVtcGxhdGU+XG4gICAgPG5nLWNvbnRlbnQgLz5cbiAgPC9uZy10ZW1wbGF0ZT5gLFxufSlcbmV4cG9ydCBjbGFzcyBXYXR0U2VnbWVudGVkQnV0dG9uQ29tcG9uZW50IHtcbiAgdGVtcGxhdGVSZWYgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8VGVtcGxhdGVSZWY8dW5rbm93bj4+KFRlbXBsYXRlUmVmKTtcbiAgdmFsdWUgPSBpbnB1dDxzdHJpbmc+KCk7XG4gIGxpbmsgPSBpbnB1dDxzdHJpbmc+KCk7XG59XG4iXX0=
|
|
@@ -16,10 +16,11 @@
|
|
|
16
16
|
* limitations under the License.
|
|
17
17
|
*/
|
|
18
18
|
//#endregion
|
|
19
|
+
import { NgTemplateOutlet } from '@angular/common';
|
|
20
|
+
import { RouterLinkWithHref, RouterLinkActive } from '@angular/router';
|
|
19
21
|
import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
20
|
-
import {
|
|
22
|
+
import { model, signal, inject, Component, ElementRef, forwardRef, contentChildren, ViewEncapsulation, ChangeDetectionStrategy, } from '@angular/core';
|
|
21
23
|
import { MatButtonToggleModule } from '@angular/material/button-toggle';
|
|
22
|
-
import { NgTemplateOutlet } from '@angular/common';
|
|
23
24
|
import { WattSegmentedButtonComponent } from './watt-segmented-button.component';
|
|
24
25
|
import * as i0 from "@angular/core";
|
|
25
26
|
import * as i1 from "@angular/material/button-toggle";
|
|
@@ -28,10 +29,10 @@ import * as i2 from "@angular/forms";
|
|
|
28
29
|
* Segmented buttons.
|
|
29
30
|
*/
|
|
30
31
|
export class WattSegmentedButtonsComponent {
|
|
32
|
+
element = inject(ElementRef);
|
|
31
33
|
segmentedButtonElements = contentChildren(WattSegmentedButtonComponent, ...(ngDevMode ? [{ debugName: "segmentedButtonElements" }] : []));
|
|
32
34
|
selected = model('', ...(ngDevMode ? [{ debugName: "selected" }] : []));
|
|
33
35
|
disabled = signal(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
|
|
34
|
-
element = inject(ElementRef);
|
|
35
36
|
writeValue(selected) {
|
|
36
37
|
this.selected.set(selected);
|
|
37
38
|
}
|
|
@@ -51,38 +52,58 @@ export class WattSegmentedButtonsComponent {
|
|
|
51
52
|
useExisting: forwardRef(() => WattSegmentedButtonsComponent),
|
|
52
53
|
multi: true,
|
|
53
54
|
},
|
|
54
|
-
], queries: [{ propertyName: "segmentedButtonElements", predicate: WattSegmentedButtonComponent, isSignal: true }], ngImport: i0, template: `
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
<
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
55
|
+
], queries: [{ propertyName: "segmentedButtonElements", predicate: WattSegmentedButtonComponent, isSignal: true }], ngImport: i0, template: `
|
|
56
|
+
<mat-button-toggle-group
|
|
57
|
+
[(ngModel)]="selected"
|
|
58
|
+
[multiple]="false"
|
|
59
|
+
[hideSingleSelectionIndicator]="true"
|
|
60
|
+
[disabled]="disabled()"
|
|
61
|
+
>
|
|
62
|
+
@for (segmentedButton of segmentedButtonElements(); track segmentedButton) {
|
|
63
|
+
<mat-button-toggle
|
|
64
|
+
[routerLink]="segmentedButton.link()"
|
|
65
|
+
routerLinkActive="mat-button-toggle-checked"
|
|
66
|
+
[disableRipple]="true"
|
|
67
|
+
[value]="segmentedButton.value()"
|
|
68
|
+
>
|
|
69
|
+
<ng-container *ngTemplateOutlet="segmentedButton.templateRef()" />
|
|
70
|
+
</mat-button-toggle>
|
|
71
|
+
}
|
|
72
|
+
</mat-button-toggle-group>
|
|
73
|
+
`, isInline: true, styles: ["@use \"@energinet/watt/utils\" as watt;@use \"@angular/material\" as mat;:root{@include mat.button-toggle-overrides((selected-state-text-color: white,selected-state-background-color: var(--watt-color-primary),height: 2.5rem,));}:root mat-button-toggle-group{border-color:var(--watt-color-neutral-grey-700)}:root mat-button-toggle-group mat-button-toggle{border-color:var(--watt-color-neutral-grey-700)!important}:root mat-button-toggle-group mat-button-toggle button{min-width:6.5rem}:root mat-button-toggle-group mat-button-toggle button span{font-size:.875rem;font-weight:600}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonToggleModule }, { kind: "directive", type: i1.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled", "disabledInteractive", "hideSingleSelectionIndicator", "hideMultipleSelectionIndicator"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i1.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled", "disabledInteractive"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { 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"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: RouterLinkWithHref, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
66
74
|
}
|
|
67
75
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: WattSegmentedButtonsComponent, decorators: [{
|
|
68
76
|
type: Component,
|
|
69
|
-
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [
|
|
77
|
+
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [
|
|
78
|
+
MatButtonToggleModule,
|
|
79
|
+
FormsModule,
|
|
80
|
+
NgTemplateOutlet,
|
|
81
|
+
RouterLinkWithHref,
|
|
82
|
+
RouterLinkActive,
|
|
83
|
+
], providers: [
|
|
70
84
|
{
|
|
71
85
|
provide: NG_VALUE_ACCESSOR,
|
|
72
86
|
useExisting: forwardRef(() => WattSegmentedButtonsComponent),
|
|
73
87
|
multi: true,
|
|
74
88
|
},
|
|
75
|
-
], selector: 'watt-segmented-buttons', template: `
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
<
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
89
|
+
], selector: 'watt-segmented-buttons', template: `
|
|
90
|
+
<mat-button-toggle-group
|
|
91
|
+
[(ngModel)]="selected"
|
|
92
|
+
[multiple]="false"
|
|
93
|
+
[hideSingleSelectionIndicator]="true"
|
|
94
|
+
[disabled]="disabled()"
|
|
95
|
+
>
|
|
96
|
+
@for (segmentedButton of segmentedButtonElements(); track segmentedButton) {
|
|
97
|
+
<mat-button-toggle
|
|
98
|
+
[routerLink]="segmentedButton.link()"
|
|
99
|
+
routerLinkActive="mat-button-toggle-checked"
|
|
100
|
+
[disableRipple]="true"
|
|
101
|
+
[value]="segmentedButton.value()"
|
|
102
|
+
>
|
|
103
|
+
<ng-container *ngTemplateOutlet="segmentedButton.templateRef()" />
|
|
104
|
+
</mat-button-toggle>
|
|
105
|
+
}
|
|
106
|
+
</mat-button-toggle-group>
|
|
107
|
+
`, styles: ["@use \"@energinet/watt/utils\" as watt;@use \"@angular/material\" as mat;:root{@include mat.button-toggle-overrides((selected-state-text-color: white,selected-state-background-color: var(--watt-color-primary),height: 2.5rem,));}:root mat-button-toggle-group{border-color:var(--watt-color-neutral-grey-700)}:root mat-button-toggle-group mat-button-toggle{border-color:var(--watt-color-neutral-grey-700)!important}:root mat-button-toggle-group mat-button-toggle button{min-width:6.5rem}:root mat-button-toggle-group mat-button-toggle button span{font-size:.875rem;font-weight:600}\n"] }]
|
|
87
108
|
}], propDecorators: { segmentedButtonElements: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => WattSegmentedButtonComponent), { isSignal: true }] }], selected: [{ type: i0.Input, args: [{ isSignal: true, alias: "selected", required: false }] }, { type: i0.Output, args: ["selectedChange"] }] } });
|
|
88
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2F0dC1zZWdtZW50ZWQtYnV0dG9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL3dhdHQvcGFja2FnZS9zZWdtZW50ZWQtYnV0dG9ucy93YXR0LXNlZ21lbnRlZC1idXR0b25zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUFDakI7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsWUFBWTtBQUNaLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZFLE9BQU8sRUFBd0IsV0FBVyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEYsT0FBTyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLGVBQWUsRUFDZixpQkFBaUIsRUFDakIsdUJBQXVCLEdBQ3hCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7O0FBRWpGOztHQUVHO0FBc0VILE1BQU0sT0FBTyw2QkFBNkI7SUFDaEMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNyQyx1QkFBdUIsR0FBRyxlQUFlLENBQUMsNEJBQTRCLG1FQUFDLENBQUM7SUFDeEUsUUFBUSxHQUFHLEtBQUssQ0FBUyxFQUFFLG9EQUFDLENBQUM7SUFDN0IsUUFBUSxHQUFHLE1BQU0sQ0FBQyxLQUFLLG9EQUFDLENBQUM7SUFFekIsVUFBVSxDQUFDLFFBQWdCO1FBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUEyQjtRQUMxQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBNEI7UUFDNUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxnQkFBZ0IsQ0FBRSxVQUFtQjtRQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNoQyxDQUFDO3VHQXBCVSw2QkFBNkI7MkZBQTdCLDZCQUE2QiwyUEEzRDdCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztnQkFDNUQsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLGtFQXVEeUMsNEJBQTRCLDZDQXRCNUQ7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCVCw2b0JBL0RDLHFCQUFxQixzb0JBQ3JCLFdBQVcsK1ZBQ1gsZ0JBQWdCLG9KQUNoQixrQkFBa0Isb09BQ2xCLGdCQUFnQjs7MkZBNkRQLDZCQUE2QjtrQkFyRXpDLFNBQVM7c0NBQ1MsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxXQUM1Qjt3QkFDUCxxQkFBcUI7d0JBQ3JCLFdBQVc7d0JBQ1gsZ0JBQWdCO3dCQUNoQixrQkFBa0I7d0JBQ2xCLGdCQUFnQjtxQkFDakIsYUFDVTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSw4QkFBOEIsQ0FBQzs0QkFDNUQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0YsWUFDUyx3QkFBd0IsWUFnQ3hCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQlQ7K0dBSXlDLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbIi8vI3JlZ2lvbiBMaWNlbnNlXG4vKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAyMCBFbmVyZ2luZXQgRGF0YUh1YiBBL1NcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlMlwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG4vLyNlbmRyZWdpb25cbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUm91dGVyTGlua1dpdGhIcmVmLCBSb3V0ZXJMaW5rQWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3Jtc01vZHVsZSwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBtb2RlbCxcbiAgc2lnbmFsLFxuICBpbmplY3QsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgZm9yd2FyZFJlZixcbiAgY29udGVudENoaWxkcmVuLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBNYXRCdXR0b25Ub2dnbGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24tdG9nZ2xlJztcbmltcG9ydCB7IFdhdHRTZWdtZW50ZWRCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL3dhdHQtc2VnbWVudGVkLWJ1dHRvbi5jb21wb25lbnQnO1xuXG4vKipcbiAqIFNlZ21lbnRlZCBidXR0b25zLlxuICovXG5AQ29tcG9uZW50KHtcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGltcG9ydHM6IFtcbiAgICBNYXRCdXR0b25Ub2dnbGVNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICBSb3V0ZXJMaW5rV2l0aEhyZWYsXG4gICAgUm91dGVyTGlua0FjdGl2ZSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBXYXR0U2VnbWVudGVkQnV0dG9uc0NvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBzZWxlY3RvcjogJ3dhdHQtc2VnbWVudGVkLWJ1dHRvbnMnLFxuICBzdHlsZXM6IGBcbiAgICBAdXNlICdAZW5lcmdpbmV0L3dhdHQvdXRpbHMnIGFzIHdhdHQ7XG4gICAgQHVzZSAnQGFuZ3VsYXIvbWF0ZXJpYWwnIGFzIG1hdDtcblxuICAgIDpyb290IHtcbiAgICAgIEBpbmNsdWRlIG1hdC5idXR0b24tdG9nZ2xlLW92ZXJyaWRlcyhcbiAgICAgICAgKFxuICAgICAgICAgIHNlbGVjdGVkLXN0YXRlLXRleHQtY29sb3I6IHdoaXRlLFxuICAgICAgICAgIHNlbGVjdGVkLXN0YXRlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXdhdHQtY29sb3ItcHJpbWFyeSksXG4gICAgICAgICAgaGVpZ2h0OiAyLjVyZW0sXG4gICAgICAgIClcbiAgICAgICk7XG5cbiAgICAgIG1hdC1idXR0b24tdG9nZ2xlLWdyb3VwIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS13YXR0LWNvbG9yLW5ldXRyYWwtZ3JleS03MDApO1xuXG4gICAgICAgIG1hdC1idXR0b24tdG9nZ2xlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXdhdHQtY29sb3ItbmV1dHJhbC1ncmV5LTcwMCkgIWltcG9ydGFudDtcblxuICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDYuNXJlbTtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICBgLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxtYXQtYnV0dG9uLXRvZ2dsZS1ncm91cFxuICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZFwiXG4gICAgICBbbXVsdGlwbGVdPVwiZmFsc2VcIlxuICAgICAgW2hpZGVTaW5nbGVTZWxlY3Rpb25JbmRpY2F0b3JdPVwidHJ1ZVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXG4gICAgPlxuICAgICAgQGZvciAoc2VnbWVudGVkQnV0dG9uIG9mIHNlZ21lbnRlZEJ1dHRvbkVsZW1lbnRzKCk7IHRyYWNrIHNlZ21lbnRlZEJ1dHRvbikge1xuICAgICAgICA8bWF0LWJ1dHRvbi10b2dnbGVcbiAgICAgICAgICBbcm91dGVyTGlua109XCJzZWdtZW50ZWRCdXR0b24ubGluaygpXCJcbiAgICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwibWF0LWJ1dHRvbi10b2dnbGUtY2hlY2tlZFwiXG4gICAgICAgICAgW2Rpc2FibGVSaXBwbGVdPVwidHJ1ZVwiXG4gICAgICAgICAgW3ZhbHVlXT1cInNlZ21lbnRlZEJ1dHRvbi52YWx1ZSgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzZWdtZW50ZWRCdXR0b24udGVtcGxhdGVSZWYoKVwiIC8+XG4gICAgICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XG4gICAgICB9XG4gICAgPC9tYXQtYnV0dG9uLXRvZ2dsZS1ncm91cD5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgV2F0dFNlZ21lbnRlZEJ1dHRvbnNDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHByaXZhdGUgZWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgc2VnbWVudGVkQnV0dG9uRWxlbWVudHMgPSBjb250ZW50Q2hpbGRyZW4oV2F0dFNlZ21lbnRlZEJ1dHRvbkNvbXBvbmVudCk7XG4gIHNlbGVjdGVkID0gbW9kZWw8c3RyaW5nPignJyk7XG4gIGRpc2FibGVkID0gc2lnbmFsKGZhbHNlKTtcblxuICB3cml0ZVZhbHVlKHNlbGVjdGVkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkLnNldChzZWxlY3RlZCk7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IHN0cmluZykgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMuc2VsZWN0ZWQuc3Vic2NyaWJlKGZuKTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAodmFsdWU6IGJvb2xlYW4pID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdmb2N1c291dCcsIGZuKTtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkLnNldChpc0Rpc2FibGVkKTtcbiAgfVxufVxuIl19
|
package/package.json
CHANGED
|
@@ -18,7 +18,8 @@ import { TemplateRef } from '@angular/core';
|
|
|
18
18
|
import * as i0 from "@angular/core";
|
|
19
19
|
export declare class WattSegmentedButtonComponent {
|
|
20
20
|
templateRef: import("@angular/core").Signal<TemplateRef<unknown>>;
|
|
21
|
-
value: import("@angular/core").InputSignal<string>;
|
|
21
|
+
value: import("@angular/core").InputSignal<string | undefined>;
|
|
22
|
+
link: import("@angular/core").InputSignal<string | undefined>;
|
|
22
23
|
static ɵfac: i0.ɵɵFactoryDeclaration<WattSegmentedButtonComponent, never>;
|
|
23
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<WattSegmentedButtonComponent, "watt-segmented-button", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
24
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<WattSegmentedButtonComponent, "watt-segmented-button", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "link": { "alias": "link"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
24
25
|
}
|
|
@@ -1,19 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2020 Energinet DataHub A/S
|
|
4
|
-
*
|
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License2");
|
|
6
|
-
* you may not use this file except in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
* See the License for the specific language governing permissions and
|
|
15
|
-
* limitations under the License.
|
|
16
|
-
*/
|
|
17
1
|
import { ControlValueAccessor } from '@angular/forms';
|
|
18
2
|
import { WattSegmentedButtonComponent } from './watt-segmented-button.component';
|
|
19
3
|
import * as i0 from "@angular/core";
|
|
@@ -21,10 +5,10 @@ import * as i0 from "@angular/core";
|
|
|
21
5
|
* Segmented buttons.
|
|
22
6
|
*/
|
|
23
7
|
export declare class WattSegmentedButtonsComponent implements ControlValueAccessor {
|
|
8
|
+
private element;
|
|
24
9
|
segmentedButtonElements: import("@angular/core").Signal<readonly WattSegmentedButtonComponent[]>;
|
|
25
10
|
selected: import("@angular/core").ModelSignal<string>;
|
|
26
11
|
disabled: import("@angular/core").WritableSignal<boolean>;
|
|
27
|
-
private element;
|
|
28
12
|
writeValue(selected: string): void;
|
|
29
13
|
registerOnChange(fn: (value: string) => void): void;
|
|
30
14
|
registerOnTouched(fn: (value: boolean) => void): void;
|