@ardium-ui/ui 3.6.0 → 4.0.0
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/lib/buttons/_button-base.defaults.mjs +1 -1
- package/esm2022/lib/buttons/_button-base.mjs +1 -1
- package/esm2022/lib/buttons/button/button.component.mjs +1 -1
- package/esm2022/lib/buttons/fab/fab.component.mjs +1 -1
- package/esm2022/lib/buttons/icon-button/icon-button.component.mjs +1 -1
- package/esm2022/lib/checkbox/checkbox.component.mjs +3 -3
- package/esm2022/lib/checkbox/checkbox.module.mjs +1 -1
- package/esm2022/lib/checkbox/checkbox.types.mjs +1 -1
- package/esm2022/lib/dialog/dialog.component.mjs +18 -7
- package/esm2022/lib/dialog/dialog.defaults.mjs +1 -1
- package/esm2022/lib/dialog/dialog.directives.mjs +12 -1
- package/esm2022/lib/dialog/dialog.module.mjs +7 -7
- package/esm2022/lib/dialog/dialog.types.mjs +1 -1
- package/esm2022/lib/modal/index.mjs +2 -1
- package/esm2022/lib/modal/modal.component.mjs +18 -5
- package/esm2022/lib/modal/modal.defaults.mjs +1 -1
- package/esm2022/lib/modal/modal.directives.mjs +14 -0
- package/esm2022/lib/modal/modal.module.mjs +8 -7
- package/esm2022/lib/star/index.mjs +2 -1
- package/esm2022/lib/star/rating-display/index.mjs +6 -0
- package/esm2022/lib/star/rating-display/rating-display.component.mjs +71 -0
- package/esm2022/lib/star/rating-display/rating-display.defaults.mjs +16 -0
- package/esm2022/lib/star/rating-display/rating-display.directives.mjs +16 -0
- package/esm2022/lib/star/rating-display/rating-display.module.mjs +20 -0
- package/esm2022/lib/star/rating-display/rating-display.types.mjs +2 -0
- package/esm2022/lib/star/rating-input/index.mjs +6 -0
- package/esm2022/lib/star/rating-input/rating-input.component.mjs +191 -0
- package/esm2022/lib/star/rating-input/rating-input.defaults.mjs +17 -0
- package/esm2022/lib/star/rating-input/rating-input.directives.mjs +16 -0
- package/esm2022/lib/star/rating-input/rating-input.module.mjs +20 -0
- package/esm2022/lib/star/rating-input/rating-input.types.mjs +2 -0
- package/esm2022/lib/star/star-button/index.mjs +3 -1
- package/esm2022/lib/star/star-button/star-button.component.mjs +13 -5
- package/esm2022/lib/star/star-button/star-button.defaults.mjs +2 -2
- package/esm2022/lib/star/star-button/star-button.directives.mjs +16 -0
- package/esm2022/lib/star/star-button/star-button.module.mjs +7 -6
- package/esm2022/lib/star/star-button/star-button.types.mjs +2 -0
- package/esm2022/lib/star/star.component.mjs +14 -5
- package/esm2022/lib/star/star.defaults.mjs +2 -2
- package/esm2022/lib/star/star.directives.mjs +16 -0
- package/esm2022/lib/star/star.module.mjs +9 -7
- package/esm2022/lib/star/star.types.mjs +3 -3
- package/esm2022/public-api.mjs +3 -3
- package/fesm2022/ardium-ui-ui.mjs +258 -132
- package/fesm2022/ardium-ui-ui.mjs.map +1 -1
- package/lib/dialog/dialog.component.d.ts +6 -2
- package/lib/dialog/dialog.directives.d.ts +6 -0
- package/lib/dialog/dialog.module.d.ts +1 -1
- package/lib/dialog/dialog.types.d.ts +1 -0
- package/lib/modal/index.d.ts +1 -0
- package/lib/modal/modal.component.d.ts +7 -1
- package/lib/modal/modal.directives.d.ts +8 -0
- package/lib/modal/modal.module.d.ts +6 -5
- package/lib/star/index.d.ts +1 -0
- package/lib/star/rating-display/index.d.ts +5 -0
- package/lib/star/rating-display/rating-display.component.d.ts +17 -0
- package/lib/star/rating-display/rating-display.defaults.d.ts +9 -0
- package/lib/star/rating-display/rating-display.directives.d.ts +9 -0
- package/lib/star/rating-display/rating-display.module.d.ts +10 -0
- package/lib/star/rating-display/rating-display.types.d.ts +8 -0
- package/lib/star/rating-input/index.d.ts +5 -0
- package/lib/star/rating-input/rating-input.component.d.ts +46 -0
- package/lib/star/rating-input/rating-input.defaults.d.ts +9 -0
- package/lib/star/rating-input/rating-input.directives.d.ts +9 -0
- package/lib/star/rating-input/rating-input.module.d.ts +10 -0
- package/lib/star/rating-input/rating-input.types.d.ts +12 -0
- package/lib/star/star-button/index.d.ts +2 -0
- package/lib/star/star-button/star-button.component.d.ts +5 -1
- package/lib/star/star-button/star-button.directives.d.ts +9 -0
- package/lib/star/star-button/star-button.module.d.ts +4 -3
- package/lib/star/star-button/star-button.types.d.ts +6 -0
- package/lib/star/star.component.d.ts +6 -3
- package/lib/star/star.directives.d.ts +9 -0
- package/lib/star/star.module.d.ts +4 -2
- package/lib/star/star.types.d.ts +5 -2
- package/package.json +1 -1
- package/prebuilt-themes/default/buttons/button.css +2 -2
- package/prebuilt-themes/default/buttons/button.css.map +1 -1
- package/prebuilt-themes/default/buttons/fab.css +2 -2
- package/prebuilt-themes/default/buttons/fab.css.map +1 -1
- package/prebuilt-themes/default/buttons/icon-button.css +2 -2
- package/prebuilt-themes/default/buttons/icon-button.css.map +1 -1
- package/prebuilt-themes/default/card.css +5 -0
- package/prebuilt-themes/default/card.css.map +1 -1
- package/prebuilt-themes/default/core.css +1 -1
- package/prebuilt-themes/default/kbd.css +1 -0
- package/prebuilt-themes/default/kbd.css.map +1 -1
- package/prebuilt-themes/default/modal.css +3 -2
- package/prebuilt-themes/default/modal.css.map +1 -1
- package/prebuilt-themes/default/spinner.css +1 -1
- package/prebuilt-themes/default/stars.css +31 -73
- package/prebuilt-themes/default/stars.css.map +1 -1
- package/public-api.d.ts +2 -2
- package/themes/_variables.scss +121 -121
- package/themes/default/buttons/_button-mixins.scss +137 -138
- package/themes/default/buttons/button.scss +79 -79
- package/themes/default/buttons/fab.scss +81 -81
- package/themes/default/buttons/icon-button.scss +62 -62
- package/themes/default/card.scss +135 -129
- package/themes/default/core.scss +1 -1
- package/themes/default/kbd.scss +21 -20
- package/themes/default/modal.scss +94 -93
- package/themes/default/spinner.scss +21 -21
- package/themes/default/stars.scss +85 -122
- package/esm2022/lib/star/star-display/index.mjs +0 -4
- package/esm2022/lib/star/star-display/star-display.component.mjs +0 -61
- package/esm2022/lib/star/star-display/star-display.defaults.mjs +0 -16
- package/esm2022/lib/star/star-display/star-display.module.mjs +0 -19
- package/esm2022/lib/star/star-input/index.mjs +0 -4
- package/esm2022/lib/star/star-input/star-input.component.mjs +0 -188
- package/esm2022/lib/star/star-input/star-input.defaults.mjs +0 -17
- package/esm2022/lib/star/star-input/star-input.module.mjs +0 -19
- package/lib/star/star-display/index.d.ts +0 -3
- package/lib/star/star-display/star-display.component.d.ts +0 -13
- package/lib/star/star-display/star-display.defaults.d.ts +0 -9
- package/lib/star/star-display/star-display.module.d.ts +0 -9
- package/lib/star/star-input/index.d.ts +0 -3
- package/lib/star/star-input/star-input.component.d.ts +0 -48
- package/lib/star/star-input/star-input.defaults.d.ts +0 -9
- package/lib/star/star-input/star-input.module.d.ts +0 -9
|
@@ -1,122 +1,85 @@
|
|
|
1
|
-
@use './mixins' as defaultMixins;
|
|
2
|
-
@use './coloring' as coloringMixins;
|
|
3
|
-
@use '../variables' as ARD;
|
|
4
|
-
|
|
5
|
-
.ard-star,
|
|
6
|
-
.ard-star-button,
|
|
7
|
-
.ard-
|
|
8
|
-
.ard-
|
|
9
|
-
@include coloringMixins.typeColors();
|
|
10
|
-
color: var(--ard-cmpcl--bg-colored);
|
|
11
|
-
|
|
12
|
-
&.ard-color-
|
|
13
|
-
color: ARD.$
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
.ard-star {
|
|
17
|
-
font-size:
|
|
18
|
-
width:
|
|
19
|
-
height:
|
|
20
|
-
position: relative;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
.
|
|
60
|
-
.
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
left: -4px;
|
|
87
|
-
right: -4px;
|
|
88
|
-
bottom: -4px;
|
|
89
|
-
top: -4px;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
.ard-focus-overlay {
|
|
93
|
-
@include defaultMixins.focus-overlay;
|
|
94
|
-
position: absolute;
|
|
95
|
-
left: -0.125em;
|
|
96
|
-
right: -0.125em;
|
|
97
|
-
bottom: -0.125em;
|
|
98
|
-
top: -0.125em;
|
|
99
|
-
border-radius: 999px;
|
|
100
|
-
background: currentColor;
|
|
101
|
-
}
|
|
102
|
-
@include defaultMixins.focus-overlay-scale-addon();
|
|
103
|
-
&:hover,
|
|
104
|
-
&:focus {
|
|
105
|
-
.ard-focus-overlay {
|
|
106
|
-
opacity: 10%;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
&:active {
|
|
110
|
-
.ard-focus-overlay {
|
|
111
|
-
opacity: 20%;
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
//! disabled state for star-button
|
|
116
|
-
.ard-disabled {
|
|
117
|
-
> .ard-star-button,
|
|
118
|
-
> .ard-star-input {
|
|
119
|
-
pointer-events: none;
|
|
120
|
-
opacity: 50%;
|
|
121
|
-
}
|
|
122
|
-
}
|
|
1
|
+
@use './mixins' as defaultMixins;
|
|
2
|
+
@use './coloring' as coloringMixins;
|
|
3
|
+
@use '../variables' as ARD;
|
|
4
|
+
|
|
5
|
+
.ard-star,
|
|
6
|
+
.ard-star-button,
|
|
7
|
+
.ard-rating-display,
|
|
8
|
+
.ard-rating-input {
|
|
9
|
+
@include coloringMixins.typeColors();
|
|
10
|
+
color: var(--ard-cmpcl--bg-colored);
|
|
11
|
+
|
|
12
|
+
&.ard-color-gold {
|
|
13
|
+
color: ARD.$gold;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
.ard-star {
|
|
17
|
+
font-size: inherit;
|
|
18
|
+
width: 1.5em;
|
|
19
|
+
height: 1.5em;
|
|
20
|
+
position: relative;
|
|
21
|
+
}
|
|
22
|
+
.ard-rating-display,
|
|
23
|
+
.ard-rating-input {
|
|
24
|
+
display: flex;
|
|
25
|
+
user-select: none;
|
|
26
|
+
}
|
|
27
|
+
.ard-rating-input {
|
|
28
|
+
cursor: pointer;
|
|
29
|
+
|
|
30
|
+
.ard-star-not-in-value {
|
|
31
|
+
opacity: 50%;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
.ard-star-button {
|
|
35
|
+
position: relative;
|
|
36
|
+
cursor: pointer;
|
|
37
|
+
user-select: none;
|
|
38
|
+
font-size: inherit;
|
|
39
|
+
width: max-content;
|
|
40
|
+
height: max-content;
|
|
41
|
+
padding: 0;
|
|
42
|
+
display: flex;
|
|
43
|
+
justify-content: center;
|
|
44
|
+
align-items: center;
|
|
45
|
+
outline: none;
|
|
46
|
+
|
|
47
|
+
.ard-hitbox {
|
|
48
|
+
position: absolute;
|
|
49
|
+
left: -4px;
|
|
50
|
+
right: -4px;
|
|
51
|
+
bottom: -4px;
|
|
52
|
+
top: -4px;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.ard-focus-overlay {
|
|
56
|
+
@include defaultMixins.focus-overlay;
|
|
57
|
+
position: absolute;
|
|
58
|
+
left: -0.125em;
|
|
59
|
+
right: -0.125em;
|
|
60
|
+
bottom: -0.125em;
|
|
61
|
+
top: -0.125em;
|
|
62
|
+
border-radius: 999px;
|
|
63
|
+
background: currentColor;
|
|
64
|
+
}
|
|
65
|
+
@include defaultMixins.focus-overlay-scale-addon();
|
|
66
|
+
&:hover,
|
|
67
|
+
&:focus {
|
|
68
|
+
.ard-focus-overlay {
|
|
69
|
+
opacity: 10%;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
&:active {
|
|
73
|
+
.ard-focus-overlay {
|
|
74
|
+
opacity: 20%;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
//! disabled state for star-button
|
|
79
|
+
.ard-disabled {
|
|
80
|
+
> .ard-star-button,
|
|
81
|
+
> .ard-rating-input {
|
|
82
|
+
pointer-events: none;
|
|
83
|
+
opacity: 50%;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export * from './star-display.component';
|
|
2
|
-
export * from './star-display.defaults';
|
|
3
|
-
export * from './star-display.module';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3N0YXIvc3Rhci1kaXNwbGF5L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zdGFyLWRpc3BsYXkuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3Rhci1kaXNwbGF5LmRlZmF1bHRzJztcbmV4cG9ydCAqIGZyb20gJy4vc3Rhci1kaXNwbGF5Lm1vZHVsZSc7XG4iXX0=
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, inject, input } from '@angular/core';
|
|
2
|
-
import { coerceNumberProperty } from '@ardium-ui/devkit';
|
|
3
|
-
import { isArray } from 'simple-bool';
|
|
4
|
-
import { StarFillMode } from './../star.types';
|
|
5
|
-
import { ARD_STAR_DISPLAY_DEFAULTS } from './star-display.defaults';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/common";
|
|
8
|
-
import * as i2 from "../star.component";
|
|
9
|
-
export class ArdiumStarDisplayComponent {
|
|
10
|
-
constructor() {
|
|
11
|
-
this.wrapperClasses = input('');
|
|
12
|
-
this._DEFAULTS = inject(ARD_STAR_DISPLAY_DEFAULTS);
|
|
13
|
-
//! appearance
|
|
14
|
-
this.color = input(this._DEFAULTS.color);
|
|
15
|
-
this.ngClasses = computed(() => [this.wrapperClasses(), `ard-color-${this.color}`].join(' '));
|
|
16
|
-
//! stars
|
|
17
|
-
this.max = input(this._DEFAULTS.max, { transform: v => coerceNumberProperty(v, this._DEFAULTS.max) });
|
|
18
|
-
this.value = input(this._DEFAULTS.value, {
|
|
19
|
-
transform: v => {
|
|
20
|
-
if (isArray(v)) {
|
|
21
|
-
return v;
|
|
22
|
-
}
|
|
23
|
-
return coerceNumberProperty(v, 0);
|
|
24
|
-
},
|
|
25
|
-
});
|
|
26
|
-
this.starArray = computed(() => {
|
|
27
|
-
let v = this.value();
|
|
28
|
-
let newArr;
|
|
29
|
-
// pad the array with non-filled stars and return it
|
|
30
|
-
if (isArray(v)) {
|
|
31
|
-
newArr = [...v];
|
|
32
|
-
while (newArr.length < this.max()) {
|
|
33
|
-
newArr.push(StarFillMode.None);
|
|
34
|
-
}
|
|
35
|
-
return newArr;
|
|
36
|
-
}
|
|
37
|
-
// create an array from a numeric value
|
|
38
|
-
newArr = [];
|
|
39
|
-
while (newArr.length < this.max()) {
|
|
40
|
-
v--;
|
|
41
|
-
if (v + 1 >= 1) {
|
|
42
|
-
newArr.push(StarFillMode.Filled);
|
|
43
|
-
continue;
|
|
44
|
-
}
|
|
45
|
-
if (Math.round(v + 1) === 1) {
|
|
46
|
-
newArr.push(StarFillMode.Half);
|
|
47
|
-
continue;
|
|
48
|
-
}
|
|
49
|
-
newArr.push(StarFillMode.None);
|
|
50
|
-
}
|
|
51
|
-
return newArr;
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ArdiumStarDisplayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
55
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ArdiumStarDisplayComponent, selector: "ard-star-display", inputs: { wrapperClasses: { classPropertyName: "wrapperClasses", publicName: "wrapperClasses", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div\n class=\"ard-star-display\"\n [ngClass]=\"ngClasses()\"\n>\n @for (fillMode of starArray(); track $index) {\n <ard-star\n [filled]=\"fillMode\"\n [color]=\"color()\"\n />\n }\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.ArdiumStarComponent, selector: "ard-star", inputs: ["wrapperClasses", "color", "filled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
56
|
-
}
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ArdiumStarDisplayComponent, decorators: [{
|
|
58
|
-
type: Component,
|
|
59
|
-
args: [{ selector: 'ard-star-display', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"ard-star-display\"\n [ngClass]=\"ngClasses()\"\n>\n @for (fillMode of starArray(); track $index) {\n <ard-star\n [filled]=\"fillMode\"\n [color]=\"color()\"\n />\n }\n</div>\n" }]
|
|
60
|
-
}] });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhci1kaXNwbGF5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvc3Rhci9zdGFyLWRpc3BsYXkvc3Rhci1kaXNwbGF5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvc3Rhci9zdGFyLWRpc3BsYXkvc3Rhci1kaXNwbGF5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0csT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN0QyxPQUFPLEVBQWEsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFTcEUsTUFBTSxPQUFPLDBCQUEwQjtJQVB2QztRQVFXLG1CQUFjLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBRXpCLGNBQVMsR0FBRyxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUVqRSxjQUFjO1FBQ0wsVUFBSyxHQUFHLEtBQUssQ0FBWSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRS9DLGNBQVMsR0FBRyxRQUFRLENBQVMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLEVBQUUsYUFBYSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUUxRyxTQUFTO1FBQ0EsUUFBRyxHQUFHLEtBQUssQ0FBYyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLG9CQUFvQixDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUU5RyxVQUFLLEdBQUcsS0FBSyxDQUE0RCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRTtZQUN0RyxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUU7Z0JBQ2IsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDZixPQUFPLENBQUMsQ0FBQztnQkFDWCxDQUFDO2dCQUNELE9BQU8sb0JBQW9CLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7U0FDRixDQUFDLENBQUM7UUFFTSxjQUFTLEdBQUcsUUFBUSxDQUFpQixHQUFHLEVBQUU7WUFDakQsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3JCLElBQUksTUFBc0IsQ0FBQztZQUUzQixvREFBb0Q7WUFDcEQsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDZixNQUFNLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUNoQixPQUFPLE1BQU0sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUM7b0JBQ2xDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNqQyxDQUFDO2dCQUNELE9BQU8sTUFBTSxDQUFDO1lBQ2hCLENBQUM7WUFFRCx1Q0FBdUM7WUFDdkMsTUFBTSxHQUFHLEVBQUUsQ0FBQztZQUNaLE9BQU8sTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQztnQkFDbEMsQ0FBQyxFQUFFLENBQUM7Z0JBQ0osSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO29CQUNmLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUNqQyxTQUFTO2dCQUNYLENBQUM7Z0JBQ0QsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztvQkFDNUIsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQy9CLFNBQVM7Z0JBQ1gsQ0FBQztnQkFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNqQyxDQUFDO1lBQ0QsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQUM7S0FDSjsrR0FuRFksMEJBQTBCO21HQUExQiwwQkFBMEIseWpCQ2J2QyxvTkFXQTs7NEZERWEsMEJBQTBCO2tCQVB0QyxTQUFTOytCQUNFLGtCQUFrQixpQkFHYixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24sIGNvbXB1dGVkLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjb2VyY2VOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0BhcmRpdW0tdWkvZGV2a2l0JztcbmltcG9ydCB7IGlzQXJyYXkgfSBmcm9tICdzaW1wbGUtYm9vbCc7XG5pbXBvcnQgeyBTdGFyQ29sb3IsIFN0YXJGaWxsTW9kZSB9IGZyb20gJy4vLi4vc3Rhci50eXBlcyc7XG5pbXBvcnQgeyBBUkRfU1RBUl9ESVNQTEFZX0RFRkFVTFRTIH0gZnJvbSAnLi9zdGFyLWRpc3BsYXkuZGVmYXVsdHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcmQtc3Rhci1kaXNwbGF5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0YXItZGlzcGxheS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N0YXItZGlzcGxheS5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQXJkaXVtU3RhckRpc3BsYXlDb21wb25lbnQge1xuICByZWFkb25seSB3cmFwcGVyQ2xhc3NlcyA9IGlucHV0PHN0cmluZz4oJycpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBfREVGQVVMVFMgPSBpbmplY3QoQVJEX1NUQVJfRElTUExBWV9ERUZBVUxUUyk7XG5cbiAgLy8hIGFwcGVhcmFuY2VcbiAgcmVhZG9ubHkgY29sb3IgPSBpbnB1dDxTdGFyQ29sb3I+KHRoaXMuX0RFRkFVTFRTLmNvbG9yKTtcblxuICByZWFkb25seSBuZ0NsYXNzZXMgPSBjb21wdXRlZDxzdHJpbmc+KCgpID0+IFt0aGlzLndyYXBwZXJDbGFzc2VzKCksIGBhcmQtY29sb3ItJHt0aGlzLmNvbG9yfWBdLmpvaW4oJyAnKSk7XG5cbiAgLy8hIHN0YXJzXG4gIHJlYWRvbmx5IG1heCA9IGlucHV0PG51bWJlciwgYW55Pih0aGlzLl9ERUZBVUxUUy5tYXgsIHsgdHJhbnNmb3JtOiB2ID0+IGNvZXJjZU51bWJlclByb3BlcnR5KHYsIHRoaXMuX0RFRkFVTFRTLm1heCkgfSk7XG5cbiAgcmVhZG9ubHkgdmFsdWUgPSBpbnB1dDxudW1iZXIgfCBTdGFyRmlsbE1vZGVbXSwgc3RyaW5nIHwgbnVtYmVyIHwgU3RhckZpbGxNb2RlW10+KHRoaXMuX0RFRkFVTFRTLnZhbHVlLCB7XG4gICAgdHJhbnNmb3JtOiB2ID0+IHtcbiAgICAgIGlmIChpc0FycmF5KHYpKSB7XG4gICAgICAgIHJldHVybiB2O1xuICAgICAgfVxuICAgICAgcmV0dXJuIGNvZXJjZU51bWJlclByb3BlcnR5KHYsIDApO1xuICAgIH0sXG4gIH0pO1xuXG4gIHJlYWRvbmx5IHN0YXJBcnJheSA9IGNvbXB1dGVkPFN0YXJGaWxsTW9kZVtdPigoKSA9PiB7XG4gICAgbGV0IHYgPSB0aGlzLnZhbHVlKCk7XG4gICAgbGV0IG5ld0FycjogU3RhckZpbGxNb2RlW107XG5cbiAgICAvLyBwYWQgdGhlIGFycmF5IHdpdGggbm9uLWZpbGxlZCBzdGFycyBhbmQgcmV0dXJuIGl0XG4gICAgaWYgKGlzQXJyYXkodikpIHtcbiAgICAgIG5ld0FyciA9IFsuLi52XTtcbiAgICAgIHdoaWxlIChuZXdBcnIubGVuZ3RoIDwgdGhpcy5tYXgoKSkge1xuICAgICAgICBuZXdBcnIucHVzaChTdGFyRmlsbE1vZGUuTm9uZSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbmV3QXJyO1xuICAgIH1cblxuICAgIC8vIGNyZWF0ZSBhbiBhcnJheSBmcm9tIGEgbnVtZXJpYyB2YWx1ZVxuICAgIG5ld0FyciA9IFtdO1xuICAgIHdoaWxlIChuZXdBcnIubGVuZ3RoIDwgdGhpcy5tYXgoKSkge1xuICAgICAgdi0tO1xuICAgICAgaWYgKHYgKyAxID49IDEpIHtcbiAgICAgICAgbmV3QXJyLnB1c2goU3RhckZpbGxNb2RlLkZpbGxlZCk7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgaWYgKE1hdGgucm91bmQodiArIDEpID09PSAxKSB7XG4gICAgICAgIG5ld0Fyci5wdXNoKFN0YXJGaWxsTW9kZS5IYWxmKTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICBuZXdBcnIucHVzaChTdGFyRmlsbE1vZGUuTm9uZSk7XG4gICAgfVxuICAgIHJldHVybiBuZXdBcnI7XG4gIH0pO1xufVxuIiwiPGRpdlxuICBjbGFzcz1cImFyZC1zdGFyLWRpc3BsYXlcIlxuICBbbmdDbGFzc109XCJuZ0NsYXNzZXMoKVwiXG4+XG4gIEBmb3IgKGZpbGxNb2RlIG9mIHN0YXJBcnJheSgpOyB0cmFjayAkaW5kZXgpIHtcbiAgICA8YXJkLXN0YXJcbiAgICAgIFtmaWxsZWRdPVwiZmlsbE1vZGVcIlxuICAgICAgW2NvbG9yXT1cImNvbG9yKClcIlxuICAgIC8+XG4gIH1cbjwvZGl2PlxuIl19
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { InjectionToken } from '@angular/core';
|
|
2
|
-
import { StarColor } from '../star.types';
|
|
3
|
-
const _starDisplayDefaults = {
|
|
4
|
-
color: StarColor.Star,
|
|
5
|
-
max: 5,
|
|
6
|
-
value: 0,
|
|
7
|
-
};
|
|
8
|
-
export const ARD_STAR_DISPLAY_DEFAULTS = new InjectionToken('ard-star-display-defaults', {
|
|
9
|
-
factory: () => ({
|
|
10
|
-
..._starDisplayDefaults,
|
|
11
|
-
}),
|
|
12
|
-
});
|
|
13
|
-
export function provideStarDisplayDefaults(config) {
|
|
14
|
-
return { provide: ARD_STAR_DISPLAY_DEFAULTS, useValue: { ..._starDisplayDefaults, ...config } };
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhci1kaXNwbGF5LmRlZmF1bHRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9zdGFyL3N0YXItZGlzcGxheS9zdGFyLWRpc3BsYXkuZGVmYXVsdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBUTFDLE1BQU0sb0JBQW9CLEdBQTJCO0lBQ25ELEtBQUssRUFBRSxTQUFTLENBQUMsSUFBSTtJQUNyQixHQUFHLEVBQUUsQ0FBQztJQUNOLEtBQUssRUFBRSxDQUFDO0NBQ1QsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLElBQUksY0FBYyxDQUF5QiwyQkFBMkIsRUFBRTtJQUMvRyxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNkLEdBQUcsb0JBQW9CO0tBQ3hCLENBQUM7Q0FDSCxDQUFDLENBQUM7QUFFSCxNQUFNLFVBQVUsMEJBQTBCLENBQUMsTUFBdUM7SUFDaEYsT0FBTyxFQUFFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxRQUFRLEVBQUUsRUFBRSxHQUFHLG9CQUFvQixFQUFFLEdBQUcsTUFBTSxFQUFFLEVBQUUsQ0FBQztBQUNsRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdGFyQ29sb3IgfSBmcm9tICcuLi9zdGFyLnR5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBBcmRTdGFyRGlzcGxheURlZmF1bHRzIHtcbiAgY29sb3I6IFN0YXJDb2xvcjtcbiAgbWF4OiBudW1iZXI7XG4gIHZhbHVlOiBudW1iZXI7XG59XG5cbmNvbnN0IF9zdGFyRGlzcGxheURlZmF1bHRzOiBBcmRTdGFyRGlzcGxheURlZmF1bHRzID0ge1xuICBjb2xvcjogU3RhckNvbG9yLlN0YXIsXG4gIG1heDogNSxcbiAgdmFsdWU6IDAsXG59O1xuXG5leHBvcnQgY29uc3QgQVJEX1NUQVJfRElTUExBWV9ERUZBVUxUUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxBcmRTdGFyRGlzcGxheURlZmF1bHRzPignYXJkLXN0YXItZGlzcGxheS1kZWZhdWx0cycsIHtcbiAgZmFjdG9yeTogKCkgPT4gKHtcbiAgICAuLi5fc3RhckRpc3BsYXlEZWZhdWx0cyxcbiAgfSksXG59KTtcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVTdGFyRGlzcGxheURlZmF1bHRzKGNvbmZpZzogUGFydGlhbDxBcmRTdGFyRGlzcGxheURlZmF1bHRzPik6IFByb3ZpZGVyIHtcbiAgcmV0dXJuIHsgcHJvdmlkZTogQVJEX1NUQVJfRElTUExBWV9ERUZBVUxUUywgdXNlVmFsdWU6IHsgLi4uX3N0YXJEaXNwbGF5RGVmYXVsdHMsIC4uLmNvbmZpZyB9IH07XG59XG4iXX0=
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { ArdiumStarDisplayComponent } from './star-display.component';
|
|
4
|
-
import { ArdiumStarModule } from '../star.module';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class ArdiumStarDisplayModule {
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ArdiumStarDisplayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
8
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ArdiumStarDisplayModule, declarations: [ArdiumStarDisplayComponent], imports: [CommonModule, ArdiumStarModule], exports: [ArdiumStarDisplayComponent] }); }
|
|
9
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ArdiumStarDisplayModule, imports: [CommonModule, ArdiumStarModule] }); }
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ArdiumStarDisplayModule, decorators: [{
|
|
12
|
-
type: NgModule,
|
|
13
|
-
args: [{
|
|
14
|
-
declarations: [ArdiumStarDisplayComponent],
|
|
15
|
-
imports: [CommonModule, ArdiumStarModule],
|
|
16
|
-
exports: [ArdiumStarDisplayComponent],
|
|
17
|
-
}]
|
|
18
|
-
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhci1kaXNwbGF5Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvc3Rhci9zdGFyLWRpc3BsYXkvc3Rhci1kaXNwbGF5Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFPbEQsTUFBTSxPQUFPLHVCQUF1QjsrR0FBdkIsdUJBQXVCO2dIQUF2Qix1QkFBdUIsaUJBSm5CLDBCQUEwQixhQUMvQixZQUFZLEVBQUUsZ0JBQWdCLGFBQzlCLDBCQUEwQjtnSEFFekIsdUJBQXVCLFlBSHhCLFlBQVksRUFBRSxnQkFBZ0I7OzRGQUc3Qix1QkFBdUI7a0JBTG5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQzFDLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQztvQkFDekMsT0FBTyxFQUFFLENBQUMsMEJBQTBCLENBQUM7aUJBQ3RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBcmRpdW1TdGFyRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vc3Rhci1kaXNwbGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBcmRpdW1TdGFyTW9kdWxlIH0gZnJvbSAnLi4vc3Rhci5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtBcmRpdW1TdGFyRGlzcGxheUNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEFyZGl1bVN0YXJNb2R1bGVdLFxuICBleHBvcnRzOiBbQXJkaXVtU3RhckRpc3BsYXlDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBBcmRpdW1TdGFyRGlzcGxheU1vZHVsZSB7fVxuIl19
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export * from './star-input.component';
|
|
2
|
-
export * from './star-input.defaults';
|
|
3
|
-
export * from './star-input.module';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3N0YXIvc3Rhci1pbnB1dC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3Rhci1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zdGFyLWlucHV0LmRlZmF1bHRzJztcbmV4cG9ydCAqIGZyb20gJy4vc3Rhci1pbnB1dC5tb2R1bGUnO1xuIl19
|
|
@@ -1,188 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, HostListener, Inject, ViewEncapsulation, computed, effect, forwardRef, input, model, output, signal, viewChildren, } from '@angular/core';
|
|
2
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
-
import { coerceNumberProperty } from '@ardium-ui/devkit';
|
|
4
|
-
import { _NgModelComponentBase } from './../../_internal/ngmodel-component';
|
|
5
|
-
import { ARD_STAR_INPUT_DEFAULTS } from './star-input.defaults';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/common";
|
|
8
|
-
import * as i2 from "../star-button/star-button.component";
|
|
9
|
-
export class ArdiumStarInputComponent extends _NgModelComponentBase {
|
|
10
|
-
constructor(defaults) {
|
|
11
|
-
super(defaults);
|
|
12
|
-
this.wrapperClasses = input('');
|
|
13
|
-
//! appearance
|
|
14
|
-
this.color = input(this._DEFAULTS.color);
|
|
15
|
-
this.ngClasses = computed(() => [this.wrapperClasses(), `ard-color-${this.color()}`].join(' '));
|
|
16
|
-
//! events
|
|
17
|
-
this.changeEvent = output({ alias: 'change' });
|
|
18
|
-
this.highlightEvent = output({ alias: 'highlight' });
|
|
19
|
-
this.value = model(0);
|
|
20
|
-
//! stars
|
|
21
|
-
this.max = input(this._DEFAULTS.max, { transform: v => coerceNumberProperty(v, this._DEFAULTS.max) });
|
|
22
|
-
this.starButtonInstances = viewChildren('starButton');
|
|
23
|
-
this._highlightedStarIndex = signal(null);
|
|
24
|
-
this.starArray = computed(() => {
|
|
25
|
-
const v = this.value();
|
|
26
|
-
const max = this.max();
|
|
27
|
-
const hi = Math.round(this._highlightedStarIndex() ?? -1);
|
|
28
|
-
const arr = new Array(max);
|
|
29
|
-
for (let i = 0; i < max; i++) {
|
|
30
|
-
if (i <= hi) {
|
|
31
|
-
arr[i] = { filled: true, isInValue: true };
|
|
32
|
-
continue;
|
|
33
|
-
}
|
|
34
|
-
if (i < v) {
|
|
35
|
-
arr[i] = { filled: hi === -1, isInValue: true };
|
|
36
|
-
continue;
|
|
37
|
-
}
|
|
38
|
-
arr[i] = { filled: false, isInValue: false };
|
|
39
|
-
}
|
|
40
|
-
return arr;
|
|
41
|
-
});
|
|
42
|
-
//* focus handlers
|
|
43
|
-
this._isFocusEventSuppressed = false;
|
|
44
|
-
this._isBlurEventSuppressed = false;
|
|
45
|
-
this._currentFocusIndex = null;
|
|
46
|
-
effect(() => {
|
|
47
|
-
const hi = this._highlightedStarIndex();
|
|
48
|
-
if (hi !== null) {
|
|
49
|
-
this.highlightEvent.emit(hi);
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
effect(() => {
|
|
53
|
-
this.value(); // let the effect know when to fire
|
|
54
|
-
this._emitChange();
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
//! ControlValueAccessor's writeValue
|
|
58
|
-
writeValue(v) {
|
|
59
|
-
this.value.set(v);
|
|
60
|
-
}
|
|
61
|
-
onStarClick(index) {
|
|
62
|
-
this.value.set(index + 1);
|
|
63
|
-
}
|
|
64
|
-
onStarHighlight(index) {
|
|
65
|
-
this._highlightedStarIndex.set(index);
|
|
66
|
-
}
|
|
67
|
-
setDisplayToValue() {
|
|
68
|
-
this._highlightedStarIndex.set(null);
|
|
69
|
-
}
|
|
70
|
-
_emitChange() {
|
|
71
|
-
this._onChangeRegistered?.(this.value());
|
|
72
|
-
this.changeEvent.emit(this.value());
|
|
73
|
-
}
|
|
74
|
-
onStarButtonFocus(index, event) {
|
|
75
|
-
this._currentFocusIndex = index;
|
|
76
|
-
if (this._isFocusEventSuppressed) {
|
|
77
|
-
this._isFocusEventSuppressed = false;
|
|
78
|
-
return;
|
|
79
|
-
}
|
|
80
|
-
this.focusEvent.emit(event);
|
|
81
|
-
}
|
|
82
|
-
onStarButtonBlur(event) {
|
|
83
|
-
this._currentFocusIndex = null;
|
|
84
|
-
if (this._isBlurEventSuppressed) {
|
|
85
|
-
this._isBlurEventSuppressed = false;
|
|
86
|
-
return;
|
|
87
|
-
}
|
|
88
|
-
this.blurEvent.emit(event);
|
|
89
|
-
}
|
|
90
|
-
focusStarButtonByIndex(index) {
|
|
91
|
-
if (!this.starButtonInstances())
|
|
92
|
-
return;
|
|
93
|
-
this.starButtonInstances()[index].focus();
|
|
94
|
-
}
|
|
95
|
-
focusNextStarButton(offset) {
|
|
96
|
-
if (!this.starButtonInstances() || this._currentFocusIndex === null)
|
|
97
|
-
return;
|
|
98
|
-
let nextIndex = this._currentFocusIndex + offset;
|
|
99
|
-
nextIndex = Math.min(nextIndex, this.max() - 1);
|
|
100
|
-
nextIndex = Math.max(nextIndex, 0);
|
|
101
|
-
this.focusStarButtonByIndex(nextIndex);
|
|
102
|
-
}
|
|
103
|
-
_suppressFocusEvents() {
|
|
104
|
-
this._isFocusEventSuppressed = true;
|
|
105
|
-
this._isBlurEventSuppressed = true;
|
|
106
|
-
}
|
|
107
|
-
focus() {
|
|
108
|
-
this.focusStarButtonByIndex(0);
|
|
109
|
-
}
|
|
110
|
-
blur() {
|
|
111
|
-
if (!this.starButtonInstances() || this._currentFocusIndex === null)
|
|
112
|
-
return;
|
|
113
|
-
this.starButtonInstances()[this._currentFocusIndex].blur();
|
|
114
|
-
}
|
|
115
|
-
//! key press handlers
|
|
116
|
-
onKeyPress(event) {
|
|
117
|
-
switch (event.code) {
|
|
118
|
-
case 'Tab': {
|
|
119
|
-
this._onTabPress();
|
|
120
|
-
return;
|
|
121
|
-
}
|
|
122
|
-
case 'ArrowRight': {
|
|
123
|
-
this._onArrowRightPress(event);
|
|
124
|
-
return;
|
|
125
|
-
}
|
|
126
|
-
case 'ArrowLeft': {
|
|
127
|
-
this._onArrowLeftPress(event);
|
|
128
|
-
return;
|
|
129
|
-
}
|
|
130
|
-
case 'Home': {
|
|
131
|
-
this._onHomePress(event);
|
|
132
|
-
return;
|
|
133
|
-
}
|
|
134
|
-
case 'End': {
|
|
135
|
-
this._onEndPress(event);
|
|
136
|
-
return;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
_onArrowRightPress(event) {
|
|
141
|
-
event.preventDefault();
|
|
142
|
-
this._suppressFocusEvents();
|
|
143
|
-
this.focusNextStarButton(+1);
|
|
144
|
-
}
|
|
145
|
-
_onArrowLeftPress(event) {
|
|
146
|
-
event.preventDefault();
|
|
147
|
-
this._suppressFocusEvents();
|
|
148
|
-
this.focusNextStarButton(-1);
|
|
149
|
-
}
|
|
150
|
-
_onHomePress(event) {
|
|
151
|
-
event.preventDefault();
|
|
152
|
-
this._suppressFocusEvents();
|
|
153
|
-
this.focusStarButtonByIndex(0);
|
|
154
|
-
}
|
|
155
|
-
_onEndPress(event) {
|
|
156
|
-
event.preventDefault();
|
|
157
|
-
this._suppressFocusEvents();
|
|
158
|
-
this._onTabPress();
|
|
159
|
-
}
|
|
160
|
-
_onTabPress() {
|
|
161
|
-
this.focusStarButtonByIndex(this.max() - 1);
|
|
162
|
-
}
|
|
163
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ArdiumStarInputComponent, deps: [{ token: ARD_STAR_INPUT_DEFAULTS }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
164
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ArdiumStarInputComponent, selector: "ard-star-input", inputs: { wrapperClasses: { classPropertyName: "wrapperClasses", publicName: "wrapperClasses", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { changeEvent: "change", highlightEvent: "highlight", value: "valueChange" }, host: { listeners: { "keydown": "onKeyPress($event)" } }, providers: [
|
|
165
|
-
{
|
|
166
|
-
provide: NG_VALUE_ACCESSOR,
|
|
167
|
-
useExisting: forwardRef(() => ArdiumStarInputComponent),
|
|
168
|
-
multi: true,
|
|
169
|
-
},
|
|
170
|
-
], viewQueries: [{ propertyName: "starButtonInstances", predicate: ["starButton"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"ard-star-input\"\n [ngClass]=\"ngClasses()\"\n (mouseleave)=\"setDisplayToValue()\"\n>\n @for (object of starArray(); track $index) {\n <ard-star-button\n #starButton\n [class.ard-star-not-in-value]=\"!object.isInValue\"\n [color]=\"object.isInValue ? color() : 'none'\"\n clickStrategy=\"noop\"\n [selected]=\"object.filled\"\n (click)=\"onStarClick($index)\"\n (focus)=\"onStarButtonFocus($index, $event)\"\n (blur)=\"onStarButtonBlur($event)\"\n (mouseenter)=\"onStarHighlight($index)\"\n [tabIndex]=\"tabIndex()\"\n />\n }\n</div>\n", styles: [".ard-star-input{width:max-content}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.ArdiumStarButtonComponent, selector: "ard-star-button", inputs: ["wrapperClasses", "clickStrategy", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
171
|
-
}
|
|
172
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ArdiumStarInputComponent, decorators: [{
|
|
173
|
-
type: Component,
|
|
174
|
-
args: [{ selector: 'ard-star-input', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
175
|
-
{
|
|
176
|
-
provide: NG_VALUE_ACCESSOR,
|
|
177
|
-
useExisting: forwardRef(() => ArdiumStarInputComponent),
|
|
178
|
-
multi: true,
|
|
179
|
-
},
|
|
180
|
-
], template: "<div\n class=\"ard-star-input\"\n [ngClass]=\"ngClasses()\"\n (mouseleave)=\"setDisplayToValue()\"\n>\n @for (object of starArray(); track $index) {\n <ard-star-button\n #starButton\n [class.ard-star-not-in-value]=\"!object.isInValue\"\n [color]=\"object.isInValue ? color() : 'none'\"\n clickStrategy=\"noop\"\n [selected]=\"object.filled\"\n (click)=\"onStarClick($index)\"\n (focus)=\"onStarButtonFocus($index, $event)\"\n (blur)=\"onStarButtonBlur($event)\"\n (mouseenter)=\"onStarHighlight($index)\"\n [tabIndex]=\"tabIndex()\"\n />\n }\n</div>\n", styles: [".ard-star-input{width:max-content}\n"] }]
|
|
181
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
182
|
-
type: Inject,
|
|
183
|
-
args: [ARD_STAR_INPUT_DEFAULTS]
|
|
184
|
-
}] }], propDecorators: { onKeyPress: [{
|
|
185
|
-
type: HostListener,
|
|
186
|
-
args: ['keydown', ['$event']]
|
|
187
|
-
}] } });
|
|
188
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhci1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3N0YXIvc3Rhci1pbnB1dC9zdGFyLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvc3Rhci9zdGFyLWlucHV0L3N0YXItaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixpQkFBaUIsRUFDakIsUUFBUSxFQUNSLE1BQU0sRUFDTixVQUFVLEVBQ1YsS0FBSyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNOLFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFekQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFNUUsT0FBTyxFQUFFLHVCQUF1QixFQUF3QixNQUFNLHVCQUF1QixDQUFDOzs7O0FBcUJ0RixNQUFNLE9BQU8sd0JBQXlCLFNBQVEscUJBQXFCO0lBZ0JqRSxZQUE2QyxRQUE4QjtRQUN6RSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFoQlQsbUJBQWMsR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFJNUMsY0FBYztRQUNMLFVBQUssR0FBRyxLQUFLLENBQVksSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUUvQyxjQUFTLEdBQUcsUUFBUSxDQUFTLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLGFBQWEsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUU1RyxVQUFVO1FBQ0QsZ0JBQVcsR0FBRyxNQUFNLENBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNsRCxtQkFBYyxHQUFHLE1BQU0sQ0FBUyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBRXhELFVBQUssR0FBRyxLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFnQmxDLFNBQVM7UUFDQSxRQUFHLEdBQUcsS0FBSyxDQUFjLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRTlHLHdCQUFtQixHQUFHLFlBQVksQ0FBNEIsWUFBWSxDQUFDLENBQUM7UUFDcEUsMEJBQXFCLEdBQUcsTUFBTSxDQUFnQixJQUFJLENBQUMsQ0FBQztRQUU1RCxjQUFTLEdBQUcsUUFBUSxDQUFvQixHQUFHLEVBQUU7WUFDcEQsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3ZCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUN2QixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFMUQsTUFBTSxHQUFHLEdBQUcsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDM0IsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUM3QixJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztvQkFDWixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQztvQkFDM0MsU0FBUztnQkFDWCxDQUFDO2dCQUNELElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO29CQUNWLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDO29CQUNoRCxTQUFTO2dCQUNYLENBQUM7Z0JBQ0QsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDL0MsQ0FBQztZQUNELE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxDQUFDLENBQUM7UUFvQkgsa0JBQWtCO1FBQ1YsNEJBQXVCLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLDJCQUFzQixHQUFHLEtBQUssQ0FBQztRQUMvQix1QkFBa0IsR0FBa0IsSUFBSSxDQUFDO1FBM0QvQyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1YsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7WUFDeEMsSUFBSSxFQUFFLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQ2hCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQy9CLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDVixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxtQ0FBbUM7WUFDakQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQTRCRCxxQ0FBcUM7SUFDckMsVUFBVSxDQUFDLENBQVM7UUFDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUNELFdBQVcsQ0FBQyxLQUFhO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBQ0QsZUFBZSxDQUFDLEtBQWE7UUFDM0IsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBQ0QsaUJBQWlCO1FBQ2YsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBQ1MsV0FBVztRQUNuQixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBTUQsaUJBQWlCLENBQUMsS0FBYSxFQUFFLEtBQWlCO1FBQ2hELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7UUFDaEMsSUFBSSxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztZQUNqQyxJQUFJLENBQUMsdUJBQXVCLEdBQUcsS0FBSyxDQUFDO1lBQ3JDLE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUNELGdCQUFnQixDQUFDLEtBQWlCO1FBQ2hDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7UUFDL0IsSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztZQUNoQyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsS0FBSyxDQUFDO1lBQ3BDLE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUNELHNCQUFzQixDQUFDLEtBQWE7UUFDbEMsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUFFLE9BQU87UUFDeEMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUMsS0FBSyxDQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUNELG1CQUFtQixDQUFDLE1BQWM7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLElBQUksQ0FBQyxrQkFBa0IsS0FBSyxJQUFJO1lBQUUsT0FBTztRQUU1RSxJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsTUFBTSxDQUFDO1FBQ2pELFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDaEQsU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRW5DLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBQ08sb0JBQW9CO1FBQzFCLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxJQUFJLENBQUM7UUFDcEMsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQztJQUNyQyxDQUFDO0lBRVEsS0FBSztRQUNaLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBQ1EsSUFBSTtRQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEtBQUssSUFBSTtZQUFFLE9BQU87UUFDNUUsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUQsQ0FBQztJQUVELHNCQUFzQjtJQUV0QixVQUFVLENBQUMsS0FBb0I7UUFDN0IsUUFBUSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDbkIsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDO2dCQUNYLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDbkIsT0FBTztZQUNULENBQUM7WUFDRCxLQUFLLFlBQVksQ0FBQyxDQUFDLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDL0IsT0FBTztZQUNULENBQUM7WUFDRCxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDOUIsT0FBTztZQUNULENBQUM7WUFDRCxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUM7Z0JBQ1osSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDekIsT0FBTztZQUNULENBQUM7WUFDRCxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ1gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDeEIsT0FBTztZQUNULENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUNPLGtCQUFrQixDQUFDLEtBQW9CO1FBQzdDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBQ08saUJBQWlCLENBQUMsS0FBb0I7UUFDNUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFDTyxZQUFZLENBQUMsS0FBb0I7UUFDdkMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBQ08sV0FBVyxDQUFDLEtBQW9CO1FBQ3RDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUNPLFdBQVc7UUFDakIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM5QyxDQUFDOytHQXhLVSx3QkFBd0Isa0JBZ0JmLHVCQUF1QjttR0FoQmhDLHdCQUF3QiwyckJBUnhCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztnQkFDdkQsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLHVLQ3ZDSCxzbUJBb0JBOzs0RkRxQmEsd0JBQXdCO2tCQWRwQyxTQUFTOytCQUNFLGdCQUFnQixpQkFHWCxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHlCQUF5QixDQUFDOzRCQUN2RCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjs7MEJBa0JZLE1BQU07MkJBQUMsdUJBQXVCO3lDQTBHM0MsVUFBVTtzQkFEVCxZQUFZO3VCQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5qZWN0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgY29tcHV0ZWQsXG4gIGVmZmVjdCxcbiAgZm9yd2FyZFJlZixcbiAgaW5wdXQsXG4gIG1vZGVsLFxuICBvdXRwdXQsXG4gIHNpZ25hbCxcbiAgdmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFyZGl1bS11aS9kZXZraXQnO1xuaW1wb3J0IHsgQXJkaXVtU3RhckJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uL3N0YXItYnV0dG9uL3N0YXItYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBfTmdNb2RlbENvbXBvbmVudEJhc2UgfSBmcm9tICcuLy4uLy4uL19pbnRlcm5hbC9uZ21vZGVsLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdGFyQ29sb3IgfSBmcm9tICcuLy4uL3N0YXIudHlwZXMnO1xuaW1wb3J0IHsgQVJEX1NUQVJfSU5QVVRfREVGQVVMVFMsIEFyZFN0YXJJbnB1dERlZmF1bHRzIH0gZnJvbSAnLi9zdGFyLWlucHV0LmRlZmF1bHRzJztcblxuaW50ZXJmYWNlIFN0YXJJbnB1dE9iamVjdCB7XG4gIGZpbGxlZDogYm9vbGVhbjtcbiAgaXNJblZhbHVlOiBib29sZWFuO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcmQtc3Rhci1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zdGFyLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3Rhci1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBcmRpdW1TdGFySW5wdXRDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQXJkaXVtU3RhcklucHV0Q29tcG9uZW50IGV4dGVuZHMgX05nTW9kZWxDb21wb25lbnRCYXNlIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICByZWFkb25seSB3cmFwcGVyQ2xhc3NlcyA9IGlucHV0PHN0cmluZz4oJycpO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZWFkb25seSBfREVGQVVMVFMhOiBBcmRTdGFySW5wdXREZWZhdWx0cztcblxuICAvLyEgYXBwZWFyYW5jZVxuICByZWFkb25seSBjb2xvciA9IGlucHV0PFN0YXJDb2xvcj4odGhpcy5fREVGQVVMVFMuY29sb3IpO1xuXG4gIHJlYWRvbmx5IG5nQ2xhc3NlcyA9IGNvbXB1dGVkPHN0cmluZz4oKCkgPT4gW3RoaXMud3JhcHBlckNsYXNzZXMoKSwgYGFyZC1jb2xvci0ke3RoaXMuY29sb3IoKX1gXS5qb2luKCcgJykpO1xuXG4gIC8vISBldmVudHNcbiAgcmVhZG9ubHkgY2hhbmdlRXZlbnQgPSBvdXRwdXQ8bnVtYmVyPih7IGFsaWFzOiAnY2hhbmdlJyB9KTtcbiAgcmVhZG9ubHkgaGlnaGxpZ2h0RXZlbnQgPSBvdXRwdXQ8bnVtYmVyPih7IGFsaWFzOiAnaGlnaGxpZ2h0JyB9KTtcblxuICByZWFkb25seSB2YWx1ZSA9IG1vZGVsPG51bWJlcj4oMCk7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChBUkRfU1RBUl9JTlBVVF9ERUZBVUxUUykgZGVmYXVsdHM6IEFyZFN0YXJJbnB1dERlZmF1bHRzKSB7XG4gICAgc3VwZXIoZGVmYXVsdHMpO1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBjb25zdCBoaSA9IHRoaXMuX2hpZ2hsaWdodGVkU3RhckluZGV4KCk7XG4gICAgICBpZiAoaGkgIT09IG51bGwpIHtcbiAgICAgICAgdGhpcy5oaWdobGlnaHRFdmVudC5lbWl0KGhpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgdGhpcy52YWx1ZSgpOyAvLyBsZXQgdGhlIGVmZmVjdCBrbm93IHdoZW4gdG8gZmlyZVxuICAgICAgdGhpcy5fZW1pdENoYW5nZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgLy8hIHN0YXJzXG4gIHJlYWRvbmx5IG1heCA9IGlucHV0PG51bWJlciwgYW55Pih0aGlzLl9ERUZBVUxUUy5tYXgsIHsgdHJhbnNmb3JtOiB2ID0+IGNvZXJjZU51bWJlclByb3BlcnR5KHYsIHRoaXMuX0RFRkFVTFRTLm1heCkgfSk7XG5cbiAgcmVhZG9ubHkgc3RhckJ1dHRvbkluc3RhbmNlcyA9IHZpZXdDaGlsZHJlbjxBcmRpdW1TdGFyQnV0dG9uQ29tcG9uZW50Pignc3RhckJ1dHRvbicpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9oaWdobGlnaHRlZFN0YXJJbmRleCA9IHNpZ25hbDxudW1iZXIgfCBudWxsPihudWxsKTtcblxuICByZWFkb25seSBzdGFyQXJyYXkgPSBjb21wdXRlZDxTdGFySW5wdXRPYmplY3RbXT4oKCkgPT4ge1xuICAgIGNvbnN0IHYgPSB0aGlzLnZhbHVlKCk7XG4gICAgY29uc3QgbWF4ID0gdGhpcy5tYXgoKTtcbiAgICBjb25zdCBoaSA9IE1hdGgucm91bmQodGhpcy5faGlnaGxpZ2h0ZWRTdGFySW5kZXgoKSA/PyAtMSk7XG5cbiAgICBjb25zdCBhcnIgPSBuZXcgQXJyYXkobWF4KTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG1heDsgaSsrKSB7XG4gICAgICBpZiAoaSA8PSBoaSkge1xuICAgICAgICBhcnJbaV0gPSB7IGZpbGxlZDogdHJ1ZSwgaXNJblZhbHVlOiB0cnVlIH07XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgaWYgKGkgPCB2KSB7XG4gICAgICAgIGFycltpXSA9IHsgZmlsbGVkOiBoaSA9PT0gLTEsIGlzSW5WYWx1ZTogdHJ1ZSB9O1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cbiAgICAgIGFycltpXSA9IHsgZmlsbGVkOiBmYWxzZSwgaXNJblZhbHVlOiBmYWxzZSB9O1xuICAgIH1cbiAgICByZXR1cm4gYXJyO1xuICB9KTtcblxuICAvLyEgQ29udHJvbFZhbHVlQWNjZXNzb3IncyB3cml0ZVZhbHVlXG4gIHdyaXRlVmFsdWUodjogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZS5zZXQodik7XG4gIH1cbiAgb25TdGFyQ2xpY2soaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMudmFsdWUuc2V0KGluZGV4ICsgMSk7XG4gIH1cbiAgb25TdGFySGlnaGxpZ2h0KGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLl9oaWdobGlnaHRlZFN0YXJJbmRleC5zZXQoaW5kZXgpO1xuICB9XG4gIHNldERpc3BsYXlUb1ZhbHVlKCkge1xuICAgIHRoaXMuX2hpZ2hsaWdodGVkU3RhckluZGV4LnNldChudWxsKTtcbiAgfVxuICBwcm90ZWN0ZWQgX2VtaXRDaGFuZ2UoKTogdm9pZCB7XG4gICAgdGhpcy5fb25DaGFuZ2VSZWdpc3RlcmVkPy4odGhpcy52YWx1ZSgpKTtcbiAgICB0aGlzLmNoYW5nZUV2ZW50LmVtaXQodGhpcy52YWx1ZSgpKTtcbiAgfVxuXG4gIC8vKiBmb2N1cyBoYW5kbGVyc1xuICBwcml2YXRlIF9pc0ZvY3VzRXZlbnRTdXBwcmVzc2VkID0gZmFsc2U7XG4gIHByaXZhdGUgX2lzQmx1ckV2ZW50U3VwcHJlc3NlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9jdXJyZW50Rm9jdXNJbmRleDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG4gIG9uU3RhckJ1dHRvbkZvY3VzKGluZGV4OiBudW1iZXIsIGV2ZW50OiBGb2N1c0V2ZW50KSB7XG4gICAgdGhpcy5fY3VycmVudEZvY3VzSW5kZXggPSBpbmRleDtcbiAgICBpZiAodGhpcy5faXNGb2N1c0V2ZW50U3VwcHJlc3NlZCkge1xuICAgICAgdGhpcy5faXNGb2N1c0V2ZW50U3VwcHJlc3NlZCA9IGZhbHNlO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmZvY3VzRXZlbnQuZW1pdChldmVudCk7XG4gIH1cbiAgb25TdGFyQnV0dG9uQmx1cihldmVudDogRm9jdXNFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuX2N1cnJlbnRGb2N1c0luZGV4ID0gbnVsbDtcbiAgICBpZiAodGhpcy5faXNCbHVyRXZlbnRTdXBwcmVzc2VkKSB7XG4gICAgICB0aGlzLl9pc0JsdXJFdmVudFN1cHByZXNzZWQgPSBmYWxzZTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5ibHVyRXZlbnQuZW1pdChldmVudCk7XG4gIH1cbiAgZm9jdXNTdGFyQnV0dG9uQnlJbmRleChpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnN0YXJCdXR0b25JbnN0YW5jZXMoKSkgcmV0dXJuO1xuICAgIHRoaXMuc3RhckJ1dHRvbkluc3RhbmNlcygpW2luZGV4XSEuZm9jdXMoKTtcbiAgfVxuICBmb2N1c05leHRTdGFyQnV0dG9uKG9mZnNldDogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnN0YXJCdXR0b25JbnN0YW5jZXMoKSB8fCB0aGlzLl9jdXJyZW50Rm9jdXNJbmRleCA9PT0gbnVsbCkgcmV0dXJuO1xuXG4gICAgbGV0IG5leHRJbmRleCA9IHRoaXMuX2N1cnJlbnRGb2N1c0luZGV4ICsgb2Zmc2V0O1xuICAgIG5leHRJbmRleCA9IE1hdGgubWluKG5leHRJbmRleCwgdGhpcy5tYXgoKSAtIDEpO1xuICAgIG5leHRJbmRleCA9IE1hdGgubWF4KG5leHRJbmRleCwgMCk7XG5cbiAgICB0aGlzLmZvY3VzU3RhckJ1dHRvbkJ5SW5kZXgobmV4dEluZGV4KTtcbiAgfVxuICBwcml2YXRlIF9zdXBwcmVzc0ZvY3VzRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMuX2lzRm9jdXNFdmVudFN1cHByZXNzZWQgPSB0cnVlO1xuICAgIHRoaXMuX2lzQmx1ckV2ZW50U3VwcHJlc3NlZCA9IHRydWU7XG4gIH1cblxuICBvdmVycmlkZSBmb2N1cygpOiB2b2lkIHtcbiAgICB0aGlzLmZvY3VzU3RhckJ1dHRvbkJ5SW5kZXgoMCk7XG4gIH1cbiAgb3ZlcnJpZGUgYmx1cigpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc3RhckJ1dHRvbkluc3RhbmNlcygpIHx8IHRoaXMuX2N1cnJlbnRGb2N1c0luZGV4ID09PSBudWxsKSByZXR1cm47XG4gICAgdGhpcy5zdGFyQnV0dG9uSW5zdGFuY2VzKClbdGhpcy5fY3VycmVudEZvY3VzSW5kZXhdIS5ibHVyKCk7XG4gIH1cblxuICAvLyEga2V5IHByZXNzIGhhbmRsZXJzXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICBvbktleVByZXNzKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgc3dpdGNoIChldmVudC5jb2RlKSB7XG4gICAgICBjYXNlICdUYWInOiB7XG4gICAgICAgIHRoaXMuX29uVGFiUHJlc3MoKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY2FzZSAnQXJyb3dSaWdodCc6IHtcbiAgICAgICAgdGhpcy5fb25BcnJvd1JpZ2h0UHJlc3MoZXZlbnQpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjYXNlICdBcnJvd0xlZnQnOiB7XG4gICAgICAgIHRoaXMuX29uQXJyb3dMZWZ0UHJlc3MoZXZlbnQpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjYXNlICdIb21lJzoge1xuICAgICAgICB0aGlzLl9vbkhvbWVQcmVzcyhldmVudCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ0VuZCc6IHtcbiAgICAgICAgdGhpcy5fb25FbmRQcmVzcyhldmVudCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcHJpdmF0ZSBfb25BcnJvd1JpZ2h0UHJlc3MoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMuX3N1cHByZXNzRm9jdXNFdmVudHMoKTtcbiAgICB0aGlzLmZvY3VzTmV4dFN0YXJCdXR0b24oKzEpO1xuICB9XG4gIHByaXZhdGUgX29uQXJyb3dMZWZ0UHJlc3MoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMuX3N1cHByZXNzRm9jdXNFdmVudHMoKTtcbiAgICB0aGlzLmZvY3VzTmV4dFN0YXJCdXR0b24oLTEpO1xuICB9XG4gIHByaXZhdGUgX29uSG9tZVByZXNzKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLl9zdXBwcmVzc0ZvY3VzRXZlbnRzKCk7XG4gICAgdGhpcy5mb2N1c1N0YXJCdXR0b25CeUluZGV4KDApO1xuICB9XG4gIHByaXZhdGUgX29uRW5kUHJlc3MoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMuX3N1cHByZXNzRm9jdXNFdmVudHMoKTtcbiAgICB0aGlzLl9vblRhYlByZXNzKCk7XG4gIH1cbiAgcHJpdmF0ZSBfb25UYWJQcmVzcygpOiB2b2lkIHtcbiAgICB0aGlzLmZvY3VzU3RhckJ1dHRvbkJ5SW5kZXgodGhpcy5tYXgoKSAtIDEpO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiYXJkLXN0YXItaW5wdXRcIlxuICBbbmdDbGFzc109XCJuZ0NsYXNzZXMoKVwiXG4gIChtb3VzZWxlYXZlKT1cInNldERpc3BsYXlUb1ZhbHVlKClcIlxuPlxuICBAZm9yIChvYmplY3Qgb2Ygc3RhckFycmF5KCk7IHRyYWNrICRpbmRleCkge1xuICAgIDxhcmQtc3Rhci1idXR0b25cbiAgICAgICNzdGFyQnV0dG9uXG4gICAgICBbY2xhc3MuYXJkLXN0YXItbm90LWluLXZhbHVlXT1cIiFvYmplY3QuaXNJblZhbHVlXCJcbiAgICAgIFtjb2xvcl09XCJvYmplY3QuaXNJblZhbHVlID8gY29sb3IoKSA6ICdub25lJ1wiXG4gICAgICBjbGlja1N0cmF0ZWd5PVwibm9vcFwiXG4gICAgICBbc2VsZWN0ZWRdPVwib2JqZWN0LmZpbGxlZFwiXG4gICAgICAoY2xpY2spPVwib25TdGFyQ2xpY2soJGluZGV4KVwiXG4gICAgICAoZm9jdXMpPVwib25TdGFyQnV0dG9uRm9jdXMoJGluZGV4LCAkZXZlbnQpXCJcbiAgICAgIChibHVyKT1cIm9uU3RhckJ1dHRvbkJsdXIoJGV2ZW50KVwiXG4gICAgICAobW91c2VlbnRlcik9XCJvblN0YXJIaWdobGlnaHQoJGluZGV4KVwiXG4gICAgICBbdGFiSW5kZXhdPVwidGFiSW5kZXgoKVwiXG4gICAgLz5cbiAgfVxuPC9kaXY+XG4iXX0=
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { InjectionToken } from '@angular/core';
|
|
2
|
-
import { _ngModelComponentDefaults } from '../../_internal/ngmodel-component';
|
|
3
|
-
import { StarColor } from '../star.types';
|
|
4
|
-
const _starInputDefaults = {
|
|
5
|
-
..._ngModelComponentDefaults,
|
|
6
|
-
color: StarColor.Star,
|
|
7
|
-
max: 5,
|
|
8
|
-
};
|
|
9
|
-
export const ARD_STAR_INPUT_DEFAULTS = new InjectionToken('ard-star-input-defaults', {
|
|
10
|
-
factory: () => ({
|
|
11
|
-
..._starInputDefaults,
|
|
12
|
-
}),
|
|
13
|
-
});
|
|
14
|
-
export function provideStarInputDefaults(config) {
|
|
15
|
-
return { provide: ARD_STAR_INPUT_DEFAULTS, useValue: { ..._starInputDefaults, ...config } };
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhci1pbnB1dC5kZWZhdWx0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvc3Rhci9zdGFyLWlucHV0L3N0YXItaW5wdXQuZGVmYXVsdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUseUJBQXlCLEVBQTZCLE1BQU0sbUNBQW1DLENBQUM7QUFDekcsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU8xQyxNQUFNLGtCQUFrQixHQUF5QjtJQUMvQyxHQUFHLHlCQUF5QjtJQUM1QixLQUFLLEVBQUUsU0FBUyxDQUFDLElBQUk7SUFDckIsR0FBRyxFQUFFLENBQUM7Q0FDUCxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxjQUFjLENBQXVCLHlCQUF5QixFQUFFO0lBQ3pHLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ2QsR0FBRyxrQkFBa0I7S0FDdEIsQ0FBQztDQUNILENBQUMsQ0FBQztBQUVILE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxNQUFxQztJQUM1RSxPQUFPLEVBQUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFFBQVEsRUFBRSxFQUFFLEdBQUcsa0JBQWtCLEVBQUUsR0FBRyxNQUFNLEVBQUUsRUFBRSxDQUFDO0FBQzlGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiwgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IF9uZ01vZGVsQ29tcG9uZW50RGVmYXVsdHMsIF9OZ01vZGVsQ29tcG9uZW50RGVmYXVsdHMgfSBmcm9tICcuLi8uLi9faW50ZXJuYWwvbmdtb2RlbC1jb21wb25lbnQnO1xuaW1wb3J0IHsgU3RhckNvbG9yIH0gZnJvbSAnLi4vc3Rhci50eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXJkU3RhcklucHV0RGVmYXVsdHMgZXh0ZW5kcyBfTmdNb2RlbENvbXBvbmVudERlZmF1bHRzIHtcbiAgY29sb3I6IFN0YXJDb2xvcjtcbiAgbWF4OiBudW1iZXI7XG59XG5cbmNvbnN0IF9zdGFySW5wdXREZWZhdWx0czogQXJkU3RhcklucHV0RGVmYXVsdHMgPSB7XG4gIC4uLl9uZ01vZGVsQ29tcG9uZW50RGVmYXVsdHMsXG4gIGNvbG9yOiBTdGFyQ29sb3IuU3RhcixcbiAgbWF4OiA1LFxufTtcblxuZXhwb3J0IGNvbnN0IEFSRF9TVEFSX0lOUFVUX0RFRkFVTFRTID0gbmV3IEluamVjdGlvblRva2VuPEFyZFN0YXJJbnB1dERlZmF1bHRzPignYXJkLXN0YXItaW5wdXQtZGVmYXVsdHMnLCB7XG4gIGZhY3Rvcnk6ICgpID0+ICh7XG4gICAgLi4uX3N0YXJJbnB1dERlZmF1bHRzLFxuICB9KSxcbn0pO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVN0YXJJbnB1dERlZmF1bHRzKGNvbmZpZzogUGFydGlhbDxBcmRTdGFySW5wdXREZWZhdWx0cz4pOiBQcm92aWRlciB7XG4gIHJldHVybiB7IHByb3ZpZGU6IEFSRF9TVEFSX0lOUFVUX0RFRkFVTFRTLCB1c2VWYWx1ZTogeyAuLi5fc3RhcklucHV0RGVmYXVsdHMsIC4uLmNvbmZpZyB9IH07XG59XG4iXX0=
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { ArdiumStarButtonModule } from '../star-button/star-button.module';
|
|
4
|
-
import { ArdiumStarInputComponent } from './star-input.component';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class ArdiumStarInputModule {
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ArdiumStarInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
8
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ArdiumStarInputModule, declarations: [ArdiumStarInputComponent], imports: [CommonModule, ArdiumStarButtonModule], exports: [ArdiumStarInputComponent] }); }
|
|
9
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ArdiumStarInputModule, imports: [CommonModule, ArdiumStarButtonModule] }); }
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ArdiumStarInputModule, decorators: [{
|
|
12
|
-
type: NgModule,
|
|
13
|
-
args: [{
|
|
14
|
-
declarations: [ArdiumStarInputComponent],
|
|
15
|
-
imports: [CommonModule, ArdiumStarButtonModule],
|
|
16
|
-
exports: [ArdiumStarInputComponent],
|
|
17
|
-
}]
|
|
18
|
-
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rhci1pbnB1dC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3N0YXIvc3Rhci1pbnB1dC9zdGFyLWlucHV0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFPbEUsTUFBTSxPQUFPLHFCQUFxQjsrR0FBckIscUJBQXFCO2dIQUFyQixxQkFBcUIsaUJBSmpCLHdCQUF3QixhQUM3QixZQUFZLEVBQUUsc0JBQXNCLGFBQ3BDLHdCQUF3QjtnSEFFdkIscUJBQXFCLFlBSHRCLFlBQVksRUFBRSxzQkFBc0I7OzRGQUduQyxxQkFBcUI7a0JBTGpDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsd0JBQXdCLENBQUM7b0JBQ3hDLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxzQkFBc0IsQ0FBQztvQkFDL0MsT0FBTyxFQUFFLENBQUMsd0JBQXdCLENBQUM7aUJBQ3BDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcmRpdW1TdGFyQnV0dG9uTW9kdWxlIH0gZnJvbSAnLi4vc3Rhci1idXR0b24vc3Rhci1idXR0b24ubW9kdWxlJztcbmltcG9ydCB7IEFyZGl1bVN0YXJJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vc3Rhci1pbnB1dC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtBcmRpdW1TdGFySW5wdXRDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBBcmRpdW1TdGFyQnV0dG9uTW9kdWxlXSxcbiAgZXhwb3J0czogW0FyZGl1bVN0YXJJbnB1dENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIEFyZGl1bVN0YXJJbnB1dE1vZHVsZSB7fVxuIl19
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { StarColor, StarFillMode } from './../star.types';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export declare class ArdiumStarDisplayComponent {
|
|
4
|
-
readonly wrapperClasses: import("@angular/core").InputSignal<string>;
|
|
5
|
-
protected readonly _DEFAULTS: import("./star-display.defaults").ArdStarDisplayDefaults;
|
|
6
|
-
readonly color: import("@angular/core").InputSignal<StarColor>;
|
|
7
|
-
readonly ngClasses: import("@angular/core").Signal<string>;
|
|
8
|
-
readonly max: import("@angular/core").InputSignalWithTransform<number, any>;
|
|
9
|
-
readonly value: import("@angular/core").InputSignalWithTransform<number | StarFillMode[], string | number | StarFillMode[]>;
|
|
10
|
-
readonly starArray: import("@angular/core").Signal<StarFillMode[]>;
|
|
11
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ArdiumStarDisplayComponent, never>;
|
|
12
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ArdiumStarDisplayComponent, "ard-star-display", never, { "wrapperClasses": { "alias": "wrapperClasses"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
|
|
13
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { InjectionToken, Provider } from '@angular/core';
|
|
2
|
-
import { StarColor } from '../star.types';
|
|
3
|
-
export interface ArdStarDisplayDefaults {
|
|
4
|
-
color: StarColor;
|
|
5
|
-
max: number;
|
|
6
|
-
value: number;
|
|
7
|
-
}
|
|
8
|
-
export declare const ARD_STAR_DISPLAY_DEFAULTS: InjectionToken<ArdStarDisplayDefaults>;
|
|
9
|
-
export declare function provideStarDisplayDefaults(config: Partial<ArdStarDisplayDefaults>): Provider;
|