@coreui/angular-pro 5.0.0-alpha.7 → 5.0.0-alpha.9
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/grid/row.directive.mjs +4 -4
- package/esm2022/lib/progress/progress-bar.component.mjs +54 -47
- package/esm2022/lib/progress/progress.component.mjs +27 -9
- package/esm2022/lib/progress/progress.type.mjs +2 -0
- package/esm2022/lib/progress/public_api.mjs +1 -1
- package/esm2022/lib/services/color-mode.service.mjs +79 -0
- package/esm2022/lib/services/in-memory-storage.service.mjs +33 -0
- package/esm2022/lib/services/local-storage.service.mjs +47 -0
- package/esm2022/lib/services/public_api.mjs +4 -1
- package/esm2022/lib/utilities/shadow-on-scroll.directive.mjs +2 -2
- package/fesm2022/coreui-angular-pro.mjs +273 -105
- package/fesm2022/coreui-angular-pro.mjs.map +1 -1
- package/lib/progress/progress-bar.component.d.ts +24 -19
- package/lib/progress/progress.component.d.ts +21 -5
- package/lib/progress/progress.type.d.ts +19 -0
- package/lib/progress/public_api.d.ts +1 -1
- package/lib/services/color-mode.service.d.ts +17 -0
- package/lib/services/in-memory-storage.service.d.ts +13 -0
- package/lib/services/local-storage.service.d.ts +18 -0
- package/lib/services/public_api.d.ts +3 -0
- package/lib/smart-table/smart-table.utils.d.ts +1 -1
- package/package.json +3 -3
- package/esm2022/lib/progress/progress-bar.mjs +0 -2
- package/lib/progress/progress-bar.d.ts +0 -10
|
@@ -6,14 +6,14 @@ export class RowDirective {
|
|
|
6
6
|
const cols = this.xs;
|
|
7
7
|
const classes = {
|
|
8
8
|
row: true,
|
|
9
|
-
[`row-cols-${cols}`]: !!cols
|
|
9
|
+
[`row-cols-${cols}`]: !!cols
|
|
10
10
|
};
|
|
11
11
|
Object.keys(BreakpointInfix).forEach(breakpoint => {
|
|
12
12
|
// @ts-ignore
|
|
13
13
|
const value = this[breakpoint];
|
|
14
14
|
if ((typeof value === 'number') || (typeof value === 'string')) {
|
|
15
|
-
const infix = breakpoint === 'xs' ? '' : breakpoint
|
|
16
|
-
classes[`row-cols
|
|
15
|
+
const infix = breakpoint === 'xs' ? '' : `-${breakpoint}`;
|
|
16
|
+
classes[`row-cols${infix}-${value}`] = !!value;
|
|
17
17
|
}
|
|
18
18
|
});
|
|
19
19
|
return classes;
|
|
@@ -43,4 +43,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
43
43
|
type: HostBinding,
|
|
44
44
|
args: ['class']
|
|
45
45
|
}] } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvZ3JpZC9yb3cuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBT2xELE1BQU0sT0FBTyxZQUFZO0lBZ0N2QixJQUNJLFdBQVc7UUFFYixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBRXJCLE1BQU0sT0FBTyxHQUFRO1lBQ25CLEdBQUcsRUFBRSxJQUFJO1lBQ1QsQ0FBQyxZQUFZLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUk7U0FDN0IsQ0FBQztRQUVGLE1BQU0sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2hELGFBQWE7WUFDYixNQUFNLEtBQUssR0FBUSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDLEVBQUU7Z0JBQzlELE1BQU0sS0FBSyxHQUFXLFVBQVUsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxVQUFVLEVBQUUsQ0FBQztnQkFDbEUsT0FBTyxDQUFDLFdBQVcsS0FBSyxJQUFJLEtBQUssRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQzthQUNoRDtRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQzs4R0FwRFUsWUFBWTtrR0FBWixZQUFZOzsyRkFBWixZQUFZO2tCQUp4QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxRQUFRO29CQUNsQixVQUFVLEVBQUUsSUFBSTtpQkFDakI7OEJBTVUsRUFBRTtzQkFBVixLQUFLO2dCQUtHLEVBQUU7c0JBQVYsS0FBSztnQkFLRyxFQUFFO3NCQUFWLEtBQUs7Z0JBS0csRUFBRTtzQkFBVixLQUFLO2dCQUtHLEVBQUU7c0JBQVYsS0FBSztnQkFLRyxHQUFHO3NCQUFYLEtBQUs7Z0JBR0YsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBCcmVha3BvaW50SW5maXggfSBmcm9tICcuLi9jb3JldWkudHlwZXMnO1xuaW1wb3J0IHsgSVJvdywgTnVtYmVyT2ZDb2x1bW5zIH0gZnJvbSAnLi9yb3cudHlwZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tjUm93XScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgUm93RGlyZWN0aXZlIGltcGxlbWVudHMgSVJvdyB7XG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIGNvbHVtbnMvb2Zmc2V0L29yZGVyIG9uIGV4dHJhIHNtYWxsIGRldmljZXMgKDw1NzZweCkuXG4gICAqIEB0eXBlIHt7IGNvbHM6ICdhdXRvJyB8IG51bWJlciB9XG4gICAqL1xuICBASW5wdXQoKSB4cz86IE51bWJlck9mQ29sdW1ucztcbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgY29sdW1ucy9vZmZzZXQvb3JkZXIgb24gc21hbGwgZGV2aWNlcyAoPDc2OHB4KS5cbiAgICogQHR5cGUge3sgY29sczogJ2F1dG8nIHwgbnVtYmVyIH1cbiAgICovXG4gIEBJbnB1dCgpIHNtPzogTnVtYmVyT2ZDb2x1bW5zO1xuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBjb2x1bW5zL29mZnNldC9vcmRlciBvbiBtZWRpdW0gZGV2aWNlcyAoPDk5MnB4KS5cbiAgICogQHR5cGUge3sgY29sczogJ2F1dG8nIHwgbnVtYmVyIH1cbiAgICovXG4gIEBJbnB1dCgpIG1kPzogTnVtYmVyT2ZDb2x1bW5zO1xuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBjb2x1bW5zL29mZnNldC9vcmRlciBvbiBsYXJnZSBkZXZpY2VzICg8MTIwMHB4KS5cbiAgICogQHR5cGUge3sgY29sczogJ2F1dG8nIHwgbnVtYmVyIH1cbiAgICovXG4gIEBJbnB1dCgpIGxnPzogTnVtYmVyT2ZDb2x1bW5zO1xuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBjb2x1bW5zL29mZnNldC9vcmRlciBvbiBYLUxhcmdlIGRldmljZXMgKDwxNDAwcHgpLlxuICAgKiBAdHlwZSB7eyBjb2xzOiAnYXV0bycgfCBudW1iZXIgfVxuICAgKi9cbiAgQElucHV0KCkgeGw/OiBOdW1iZXJPZkNvbHVtbnM7XG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIGNvbHVtbnMvb2Zmc2V0L29yZGVyIG9uIFhYLUxhcmdlIGRldmljZXMgKOKJpTE0MDBweCkuXG4gICAqIEB0eXBlIHt7IGNvbHM6ICdhdXRvJyB8IG51bWJlciB9XG4gICAqL1xuICBASW5wdXQoKSB4eGw/OiBOdW1iZXJPZkNvbHVtbnM7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBhbnkge1xuXG4gICAgY29uc3QgY29scyA9IHRoaXMueHM7XG5cbiAgICBjb25zdCBjbGFzc2VzOiBhbnkgPSB7XG4gICAgICByb3c6IHRydWUsXG4gICAgICBbYHJvdy1jb2xzLSR7Y29sc31gXTogISFjb2xzXG4gICAgfTtcblxuICAgIE9iamVjdC5rZXlzKEJyZWFrcG9pbnRJbmZpeCkuZm9yRWFjaChicmVha3BvaW50ID0+IHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGNvbnN0IHZhbHVlOiBhbnkgPSB0aGlzW2JyZWFrcG9pbnRdO1xuICAgICAgaWYgKCh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB8fCAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykpIHtcbiAgICAgICAgY29uc3QgaW5maXg6IHN0cmluZyA9IGJyZWFrcG9pbnQgPT09ICd4cycgPyAnJyA6IGAtJHticmVha3BvaW50fWA7XG4gICAgICAgIGNsYXNzZXNbYHJvdy1jb2xzJHtpbmZpeH0tJHt2YWx1ZX1gXSA9ICEhdmFsdWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gY2xhc3NlcztcbiAgfVxufVxuIl19
|
|
@@ -1,9 +1,22 @@
|
|
|
1
|
-
import { booleanAttribute, Component, HostBinding, Input, numberAttribute } from '@angular/core';
|
|
1
|
+
import { booleanAttribute, Component, computed, effect, ElementRef, HostBinding, inject, Input, numberAttribute, Renderer2, signal } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class ProgressBarComponent {
|
|
4
|
-
constructor(
|
|
5
|
-
this
|
|
6
|
-
this
|
|
4
|
+
constructor() {
|
|
5
|
+
this.#renderer = inject(Renderer2);
|
|
6
|
+
this.#hostElement = inject(ElementRef);
|
|
7
|
+
this.#max = signal(100);
|
|
8
|
+
this.#min = signal(0);
|
|
9
|
+
this.#value = signal(0);
|
|
10
|
+
this.#percent = computed(() => {
|
|
11
|
+
return +((this.#value() / (this.#max() - this.#min())) * 100).toFixed(this.precision);
|
|
12
|
+
});
|
|
13
|
+
this.#valuesEffect = effect(() => {
|
|
14
|
+
const host = this.#hostElement.nativeElement;
|
|
15
|
+
this.#renderer.setStyle(host, 'width', `${this.#percent()}%`);
|
|
16
|
+
this.#renderer.setAttribute(host, 'aria-valuenow', String(this.#value()));
|
|
17
|
+
this.#renderer.setAttribute(host, 'aria-valuemin', String(this.#min()));
|
|
18
|
+
this.#renderer.setAttribute(host, 'aria-valuemax', String(this.#max()));
|
|
19
|
+
});
|
|
7
20
|
/**
|
|
8
21
|
* Use to animate the stripes right to left via CSS3 animations.
|
|
9
22
|
* @type boolean
|
|
@@ -11,33 +24,42 @@ export class ProgressBarComponent {
|
|
|
11
24
|
this.animated = false;
|
|
12
25
|
// TODO: check if this is necessary.
|
|
13
26
|
this.precision = 0;
|
|
14
|
-
/**
|
|
15
|
-
* The percent to progress the ProgressBar.
|
|
16
|
-
* @type number
|
|
17
|
-
*/
|
|
18
|
-
this.value = 0;
|
|
19
27
|
/**
|
|
20
28
|
* Set default html role attribute.
|
|
21
29
|
* @type string
|
|
22
30
|
*/
|
|
23
31
|
this.role = 'progressbar';
|
|
24
|
-
this.state = {
|
|
25
|
-
percent: 0,
|
|
26
|
-
min: 0,
|
|
27
|
-
max: 100
|
|
28
|
-
};
|
|
29
32
|
}
|
|
30
|
-
|
|
31
|
-
|
|
33
|
+
#renderer;
|
|
34
|
+
#hostElement;
|
|
35
|
+
#max;
|
|
36
|
+
#min;
|
|
37
|
+
#value;
|
|
38
|
+
#percent;
|
|
39
|
+
#valuesEffect;
|
|
40
|
+
/**
|
|
41
|
+
* The percent value the ProgressBar.
|
|
42
|
+
* @type number
|
|
43
|
+
* @default 0
|
|
44
|
+
*/
|
|
45
|
+
set value(value) {
|
|
46
|
+
this.#value.set(value);
|
|
32
47
|
}
|
|
48
|
+
/**
|
|
49
|
+
* The min value of the ProgressBar.
|
|
50
|
+
* @type number
|
|
51
|
+
* @default 0
|
|
52
|
+
*/
|
|
33
53
|
set min(value) {
|
|
34
|
-
this.
|
|
35
|
-
}
|
|
36
|
-
get max() {
|
|
37
|
-
return this.state.max;
|
|
54
|
+
this.#min.set(isNaN(value) || value >= this.#max() ? 0 : value);
|
|
38
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* The max value of the ProgressBar.
|
|
58
|
+
* @type number
|
|
59
|
+
* @default 100
|
|
60
|
+
*/
|
|
39
61
|
set max(value) {
|
|
40
|
-
this.
|
|
62
|
+
this.#max.set(isNaN(value) || value <= 0 || value <= this.#min() ? 100 : value);
|
|
41
63
|
}
|
|
42
64
|
get hostClasses() {
|
|
43
65
|
return {
|
|
@@ -47,34 +69,17 @@ export class ProgressBarComponent {
|
|
|
47
69
|
[`bg-${this.color}`]: !!this.color
|
|
48
70
|
};
|
|
49
71
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
}
|
|
53
|
-
setPercent() {
|
|
54
|
-
this.state.percent = +((this.value / (this.max - this.min)) * 100).toFixed(this.precision);
|
|
55
|
-
}
|
|
56
|
-
setValues() {
|
|
57
|
-
this.setPercent();
|
|
58
|
-
const host = this.hostElement.nativeElement;
|
|
59
|
-
this.renderer.setStyle(host, 'width', `${this.state.percent}%`);
|
|
60
|
-
this.renderer.setAttribute(host, 'aria-valuenow', String(this.value));
|
|
61
|
-
this.renderer.setAttribute(host, 'aria-valuemin', String(this.min));
|
|
62
|
-
this.renderer.setAttribute(host, 'aria-valuemax', String(this.max));
|
|
63
|
-
}
|
|
64
|
-
ngOnChanges(changes) {
|
|
65
|
-
this.setValues();
|
|
66
|
-
}
|
|
67
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ProgressBarComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
68
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "17.0.8", type: ProgressBarComponent, isStandalone: true, selector: "c-progress-bar", inputs: { animated: ["animated", "animated", booleanAttribute], color: "color", precision: ["precision", "precision", numberAttribute], value: ["value", "value", numberAttribute], variant: "variant", role: "role", min: "min", max: "max" }, host: { properties: { "attr.role": "this.role", "class": "this.hostClasses" } }, usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true }); }
|
|
72
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
73
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "17.0.8", type: ProgressBarComponent, isStandalone: true, selector: "c-progress-bar", inputs: { animated: ["animated", "animated", booleanAttribute], color: "color", precision: ["precision", "precision", numberAttribute], value: ["value", "value", numberAttribute], variant: "variant", min: ["min", "min", numberAttribute], max: ["max", "max", numberAttribute], role: "role" }, host: { properties: { "attr.role": "this.role", "class": "this.hostClasses" } }, ngImport: i0, template: '<ng-content />', isInline: true }); }
|
|
69
74
|
}
|
|
70
75
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ProgressBarComponent, decorators: [{
|
|
71
76
|
type: Component,
|
|
72
77
|
args: [{
|
|
73
78
|
selector: 'c-progress-bar',
|
|
74
|
-
template: '<ng-content
|
|
79
|
+
template: '<ng-content />',
|
|
75
80
|
standalone: true
|
|
76
81
|
}]
|
|
77
|
-
}],
|
|
82
|
+
}], propDecorators: { animated: [{
|
|
78
83
|
type: Input,
|
|
79
84
|
args: [{ transform: booleanAttribute }]
|
|
80
85
|
}], color: [{
|
|
@@ -87,17 +92,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
87
92
|
args: [{ transform: numberAttribute }]
|
|
88
93
|
}], variant: [{
|
|
89
94
|
type: Input
|
|
95
|
+
}], min: [{
|
|
96
|
+
type: Input,
|
|
97
|
+
args: [{ transform: numberAttribute }]
|
|
98
|
+
}], max: [{
|
|
99
|
+
type: Input,
|
|
100
|
+
args: [{ transform: numberAttribute }]
|
|
90
101
|
}], role: [{
|
|
91
102
|
type: Input
|
|
92
103
|
}, {
|
|
93
104
|
type: HostBinding,
|
|
94
105
|
args: ['attr.role']
|
|
95
|
-
}], min: [{
|
|
96
|
-
type: Input
|
|
97
|
-
}], max: [{
|
|
98
|
-
type: Input
|
|
99
106
|
}], hostClasses: [{
|
|
100
107
|
type: HostBinding,
|
|
101
108
|
args: ['class']
|
|
102
109
|
}] } });
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvcHJvZ3Jlc3MvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsTUFBTSxFQUVOLFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxlQUFlLEVBQ2YsU0FBUyxFQUNULE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQzs7QUFTdkIsTUFBTSxPQUFPLG9CQUFvQjtJQUxqQztRQU9XLGNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDOUIsaUJBQVksR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFbEMsU0FBSSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuQixTQUFJLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pCLFdBQU0sR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFbkIsYUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDaEMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQVMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hHLENBQUMsQ0FBQyxDQUFDO1FBRU0sa0JBQWEsR0FBYyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQzlDLE1BQU0sSUFBSSxHQUFnQixJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQztZQUMxRCxJQUFJLENBQUMsU0FBUyxDQUFDLFFB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RixHQUFHO3NCQUROLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQVdqQyxHQUFHO3NCQUROLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQVVYLElBQUk7c0JBRDdCLEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsV0FBVztnQkFHcEIsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBib29sZWFuQXR0cmlidXRlLFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBlZmZlY3QsXG4gIEVmZmVjdFJlZixcbiAgRWxlbWVudFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIG51bWJlckF0dHJpYnV0ZSxcbiAgUmVuZGVyZXIyLFxuICBzaWduYWxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb2xvcnMgfSBmcm9tICcuLi9jb3JldWkudHlwZXMnO1xuaW1wb3J0IHsgSVByb2dyZXNzQmFyIH0gZnJvbSAnLi9wcm9ncmVzcy50eXBlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYy1wcm9ncmVzcy1iYXInLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50IC8+JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBQcm9ncmVzc0JhckNvbXBvbmVudCBpbXBsZW1lbnRzIElQcm9ncmVzc0JhciB7XG5cbiAgcmVhZG9ubHkgI3JlbmRlcmVyID0gaW5qZWN0KFJlbmRlcmVyMik7XG4gIHJlYWRvbmx5ICNob3N0RWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmKTtcblxuICByZWFkb25seSAjbWF4ID0gc2lnbmFsKDEwMCk7XG4gIHJlYWRvbmx5ICNtaW4gPSBzaWduYWwoMCk7XG4gIHJlYWRvbmx5ICN2YWx1ZSA9IHNpZ25hbCgwKTtcblxuICByZWFkb25seSAjcGVyY2VudCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gKygodGhpcy4jdmFsdWUoKSAvICh0aGlzLiNtYXgoKSAtIHRoaXMuI21pbigpKSkgKiAxMDApLnRvRml4ZWQoPG51bWJlcj50aGlzLnByZWNpc2lvbik7XG4gIH0pO1xuXG4gIHJlYWRvbmx5ICN2YWx1ZXNFZmZlY3Q6IEVmZmVjdFJlZiA9IGVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgaG9zdDogSFRNTEVsZW1lbnQgPSB0aGlzLiNob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50O1xuICAgIHRoaXMuI3JlbmRlcmVyLnNldFN0eWxlKGhvc3QsICd3aWR0aCcsIGAke3RoaXMuI3BlcmNlbnQoKX0lYCk7XG4gICAgdGhpcy4jcmVuZGVyZXIuc2V0QXR0cmlidXRlKGhvc3QsICdhcmlhLXZhbHVlbm93JywgU3RyaW5nKHRoaXMuI3ZhbHVlKCkpKTtcbiAgICB0aGlzLiNyZW5kZXJlci5zZXRBdHRyaWJ1dGUoaG9zdCwgJ2FyaWEtdmFsdWVtaW4nLCBTdHJpbmcodGhpcy4jbWluKCkpKTtcbiAgICB0aGlzLiNyZW5kZXJlci5zZXRBdHRyaWJ1dGUoaG9zdCwgJ2FyaWEtdmFsdWVtYXgnLCBTdHJpbmcodGhpcy4jbWF4KCkpKTtcbiAgfSk7XG5cbiAgLyoqXG4gICAqIFVzZSB0byBhbmltYXRlIHRoZSBzdHJpcGVzIHJpZ2h0IHRvIGxlZnQgdmlhIENTUzMgYW5pbWF0aW9ucy5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGFuaW1hdGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGNvbG9yIGNvbnRleHQgb2YgdGhlIGNvbXBvbmVudCB0byBvbmUgb2YgQ29yZVVJ4oCZcyB0aGVtZWQgY29sb3JzLlxuICAgKiBAdmFsdWVzICdwcmltYXJ5JywgJ3NlY29uZGFyeScsICdzdWNjZXNzJywgJ2RhbmdlcicsICd3YXJuaW5nJywgJ2luZm8nLCAnZGFyaycsICdsaWdodCdcbiAgICovXG4gIEBJbnB1dCgpIGNvbG9yPzogQ29sb3JzO1xuXG4gIC8vIFRPRE86IGNoZWNrIGlmIHRoaXMgaXMgbmVjZXNzYXJ5LlxuICBASW5wdXQoeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KSBwcmVjaXNpb246IG51bWJlciA9IDA7XG5cbiAgLyoqXG4gICAqIFRoZSBwZXJjZW50IHZhbHVlIHRoZSBQcm9ncmVzc0Jhci5cbiAgICogQHR5cGUgbnVtYmVyXG4gICAqIEBkZWZhdWx0IDBcbiAgICovXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pXG4gIHNldCB2YWx1ZSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy4jdmFsdWUuc2V0KHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHByb2dyZXNzIGJhciB2YXJpYW50IHRvIG9wdGlvbmFsIHN0cmlwZWQuXG4gICAqIEB2YWx1ZXMgJ3N0cmlwZWQnXG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgQElucHV0KCkgdmFyaWFudD86ICdzdHJpcGVkJztcblxuICAvKipcbiAgICogVGhlIG1pbiB2YWx1ZSBvZiAgdGhlIFByb2dyZXNzQmFyLlxuICAgKiBAdHlwZSBudW1iZXJcbiAgICogQGRlZmF1bHQgMFxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSlcbiAgc2V0IG1pbih2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy4jbWluLnNldChpc05hTih2YWx1ZSkgfHwgdmFsdWUgPj0gdGhpcy4jbWF4KCkgPyAwIDogdmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBtYXggdmFsdWUgb2YgdGhlIFByb2dyZXNzQmFyLlxuICAgKiBAdHlwZSBudW1iZXJcbiAgICogQGRlZmF1bHQgMTAwXG4gICAqL1xuICBASW5wdXQoeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KVxuICBzZXQgbWF4KHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLiNtYXguc2V0KGlzTmFOKHZhbHVlKSB8fCB2YWx1ZSA8PSAwIHx8IHZhbHVlIDw9IHRoaXMuI21pbigpID8gMTAwIDogdmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBkZWZhdWx0IGh0bWwgcm9sZSBhdHRyaWJ1dGUuXG4gICAqIEB0eXBlIHN0cmluZ1xuICAgKi9cbiAgQElucHV0KClcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnJvbGUnKSByb2xlOiBzdHJpbmcgPSAncHJvZ3Jlc3NiYXInO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgaG9zdENsYXNzZXMoKTogYW55IHtcbiAgICByZXR1cm4ge1xuICAgICAgJ3Byb2dyZXNzLWJhcic6IHRydWUsXG4gICAgICAncHJvZ3Jlc3MtYmFyLWFuaW1hdGVkJzogdGhpcy5hbmltYXRlZCxcbiAgICAgIFtgcHJvZ3Jlc3MtYmFyLSR7dGhpcy52YXJpYW50fWBdOiAhIXRoaXMudmFyaWFudCxcbiAgICAgIFtgYmctJHt0aGlzLmNvbG9yfWBdOiAhIXRoaXMuY29sb3JcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { NgTemplateOutlet } from '@angular/common';
|
|
2
|
+
import { booleanAttribute, Component, ElementRef, HostBinding, inject, Input, numberAttribute } from '@angular/core';
|
|
3
|
+
import { ProgressBarComponent } from './progress-bar.component';
|
|
2
4
|
import * as i0 from "@angular/core";
|
|
3
5
|
export class ProgressComponent {
|
|
4
6
|
constructor() {
|
|
7
|
+
this.#elementRef = inject(ElementRef);
|
|
5
8
|
/**
|
|
6
9
|
* Sets the height of the component. If you set that value the inner `<CProgressBar>` will automatically resize accordingly.
|
|
7
10
|
* @type number
|
|
@@ -17,7 +20,10 @@ export class ProgressComponent {
|
|
|
17
20
|
* @type boolean
|
|
18
21
|
*/
|
|
19
22
|
this.white = false;
|
|
23
|
+
this.max = 100;
|
|
24
|
+
this.min = 0;
|
|
20
25
|
}
|
|
26
|
+
#elementRef;
|
|
21
27
|
get hostClasses() {
|
|
22
28
|
return {
|
|
23
29
|
progress: true,
|
|
@@ -26,18 +32,14 @@ export class ProgressComponent {
|
|
|
26
32
|
};
|
|
27
33
|
}
|
|
28
34
|
get hostStyle() {
|
|
29
|
-
return !!this.height ? `${this.height}px` : '';
|
|
35
|
+
return !!this.height ? `${this.height}px` : this.#elementRef?.nativeElement?.style?.height ?? '';
|
|
30
36
|
}
|
|
31
37
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
32
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
38
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.8", type: ProgressComponent, isStandalone: true, selector: "c-progress", inputs: { height: ["height", "height", numberAttribute], thin: ["thin", "thin", booleanAttribute], white: ["white", "white", booleanAttribute], value: ["value", "value", numberAttribute], max: ["max", "max", numberAttribute], min: ["min", "min", numberAttribute], animated: ["animated", "animated", booleanAttribute], color: "color", variant: "variant" }, host: { properties: { "class": "this.hostClasses", "style.height": "this.hostStyle" } }, ngImport: i0, template: "@if (value !== undefined) {\n <c-progress-bar [value]=\"value\" [min]=\"min\" [max]=\"max\" [animated]=\"animated\" [variant]=\"variant\" [color]=\"color\">\n <ng-container *ngTemplateOutlet=\"defaultContent\" />\n </c-progress-bar>\n} @else {\n <ng-container *ngTemplateOutlet=\"defaultContent\" />\n}\n\n<ng-template #defaultContent>\n <ng-content />\n</ng-template>\n\n", dependencies: [{ kind: "component", type: ProgressBarComponent, selector: "c-progress-bar", inputs: ["animated", "color", "precision", "value", "variant", "min", "max", "role"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
|
|
33
39
|
}
|
|
34
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ProgressComponent, decorators: [{
|
|
35
41
|
type: Component,
|
|
36
|
-
args: [{
|
|
37
|
-
selector: 'c-progress',
|
|
38
|
-
template: '<ng-content></ng-content>',
|
|
39
|
-
standalone: true
|
|
40
|
-
}]
|
|
42
|
+
args: [{ selector: 'c-progress', imports: [ProgressBarComponent, NgTemplateOutlet], standalone: true, template: "@if (value !== undefined) {\n <c-progress-bar [value]=\"value\" [min]=\"min\" [max]=\"max\" [animated]=\"animated\" [variant]=\"variant\" [color]=\"color\">\n <ng-container *ngTemplateOutlet=\"defaultContent\" />\n </c-progress-bar>\n} @else {\n <ng-container *ngTemplateOutlet=\"defaultContent\" />\n}\n\n<ng-template #defaultContent>\n <ng-content />\n</ng-template>\n\n" }]
|
|
41
43
|
}], propDecorators: { height: [{
|
|
42
44
|
type: Input,
|
|
43
45
|
args: [{ transform: numberAttribute }]
|
|
@@ -47,6 +49,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
47
49
|
}], white: [{
|
|
48
50
|
type: Input,
|
|
49
51
|
args: [{ transform: booleanAttribute }]
|
|
52
|
+
}], value: [{
|
|
53
|
+
type: Input,
|
|
54
|
+
args: [{ transform: numberAttribute }]
|
|
55
|
+
}], max: [{
|
|
56
|
+
type: Input,
|
|
57
|
+
args: [{ transform: numberAttribute }]
|
|
58
|
+
}], min: [{
|
|
59
|
+
type: Input,
|
|
60
|
+
args: [{ transform: numberAttribute }]
|
|
61
|
+
}], animated: [{
|
|
62
|
+
type: Input,
|
|
63
|
+
args: [{ transform: booleanAttribute }]
|
|
64
|
+
}], color: [{
|
|
65
|
+
type: Input
|
|
66
|
+
}], variant: [{
|
|
67
|
+
type: Input
|
|
50
68
|
}], hostClasses: [{
|
|
51
69
|
type: HostBinding,
|
|
52
70
|
args: ['class']
|
|
@@ -54,4 +72,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
54
72
|
type: HostBinding,
|
|
55
73
|
args: ['style.height']
|
|
56
74
|
}] } });
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi9wcm9ncmVzcy9wcm9ncmVzcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3Byb2dyZXNzL3Byb2dyZXNzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdySCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFTaEUsTUFBTSxPQUFPLGlCQUFpQjtJQU45QjtRQVFXLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTFDOzs7V0FHRztRQUNvQyxXQUFNLEdBQVcsQ0FBQyxDQUFDO1FBRTFEOzs7V0FHRztRQUNxQyxTQUFJLEdBQVksS0FBSyxDQUFDO1FBRTlEOzs7V0FHRztRQUNxQyxVQUFLLEdBQVksS0FBSyxDQUFDO1FBTXhCLFFBQUcsR0FBWSxHQUFHLENBQUM7UUFDbkIsUUFBRyxHQUFZLENBQUMsQ0FBQztLQWtCekQ7SUEzQ1UsV0FBVyxDQUFzQjtJQThCMUMsSUFDSSxXQUFXO1FBQ2IsT0FBTztZQUNMLFFBQVEsRUFBRSxJQUFJO1lBQ2QsZUFBZSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQzFCLGdCQUFnQixFQUFFLElBQUksQ0FBQyxLQUFLO1NBQzdCLENBQUM7SUFDSixDQUFDO0lBRUQsSUFDSSxTQUFTO1FBQ1gsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxNQUFNLElBQUksRUFBRSxDQUFDO0lBQ25HLENBQUM7OEdBNUNVLGlCQUFpQjtrR0FBakIsaUJBQWlCLHFGQVFSLGVBQWUsMEJBTWYsZ0JBQWdCLDZCQU1oQixnQkFBZ0IsNkJBS2hCLGVBQWUsdUJBQ2YsZUFBZSx1QkFDZixlQUFlLHNDQUNmLGdCQUFnQiwwSkN6Q3RDLDZYQVlBLDRDREZZLG9CQUFvQixpSkFBRSxnQkFBZ0I7OzJGQUdyQyxpQkFBaUI7a0JBTjdCLFNBQVM7K0JBQ0UsWUFBWSxXQUViLENBQUMsb0JBQW9CLEVBQUUsZ0JBQWdCLENBQUMsY0FDckMsSUFBSTs4QkFVdUIsTUFBTTtzQkFBNUMsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUU7Z0JBTUcsSUFBSTtzQkFBM0MsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFNRSxLQUFLO3NCQUE1QyxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUtDLEtBQUs7c0JBQTNDLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQUNFLEdBQUc7c0JBQXpDLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQUNFLEdBQUc7c0JBQXpDLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQUNHLFFBQVE7c0JBQS9DLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBQzdCLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBR0YsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU87Z0JBVWhCLFNBQVM7c0JBRFosV0FBVzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBib29sZWFuQXR0cmlidXRlLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBpbmplY3QsIElucHV0LCBudW1iZXJBdHRyaWJ1dGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ29sb3JzIH0gZnJvbSAnLi4vY29yZXVpLnR5cGVzJztcbmltcG9ydCB7IFByb2dyZXNzQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9wcm9ncmVzcy1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7IElQcm9ncmVzcyB9IGZyb20gJy4vcHJvZ3Jlc3MudHlwZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2MtcHJvZ3Jlc3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJvZ3Jlc3MuY29tcG9uZW50Lmh0bWwnLFxuICBpbXBvcnRzOiBbUHJvZ3Jlc3NCYXJDb21wb25lbnQsIE5nVGVtcGxhdGVPdXRsZXRdLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFByb2dyZXNzQ29tcG9uZW50IGltcGxlbWVudHMgSVByb2dyZXNzIHtcblxuICByZWFkb25seSAjZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcblxuICAvKipcbiAgICogU2V0cyB0aGUgaGVpZ2h0IG9mIHRoZSBjb21wb25lbnQuIElmIHlvdSBzZXQgdGhhdCB2YWx1ZSB0aGUgaW5uZXIgYDxDUHJvZ3Jlc3NCYXI+YCB3aWxsIGF1dG9tYXRpY2FsbHkgcmVzaXplIGFjY29yZGluZ2x5LlxuICAgKiBAdHlwZSBudW1iZXJcbiAgICovXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pIGhlaWdodDogbnVtYmVyID0gMDtcblxuICAvKipcbiAgICogRGlzcGxheXMgdGhpbiBwcm9ncmVzcy5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIHRoaW46IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogQ2hhbmdlIHRoZSBkZWZhdWx0IGNvbG9yIHRvIHdoaXRlLlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgd2hpdGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogcHJvcHMgZm9yIFByb2dyZXNzQmFyLlxuICAgKi9cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSkgdmFsdWU/OiBudW1iZXI7XG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pIG1heD86IG51bWJlciA9IDEwMDtcbiAgQElucHV0KHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSkgbWluPzogbnVtYmVyID0gMDtcbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGFuaW1hdGVkPzogYm9vbGVhbjtcbiAgQElucHV0KCkgY29sb3I/OiBDb2xvcnM7XG4gIEBJbnB1dCgpIHZhcmlhbnQ/OiAnc3RyaXBlZCc7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICBwcm9ncmVzczogdHJ1ZSxcbiAgICAgICdwcm9ncmVzcy10aGluJzogdGhpcy50aGluLFxuICAgICAgJ3Byb2dyZXNzLXdoaXRlJzogdGhpcy53aGl0ZVxuICAgIH07XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLmhlaWdodCcpXG4gIGdldCBob3N0U3R5bGUoKTogYW55IHtcbiAgICByZXR1cm4gISF0aGlzLmhlaWdodCA/IGAke3RoaXMuaGVpZ2h0fXB4YCA6IHRoaXMuI2VsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQ/LnN0eWxlPy5oZWlnaHQgPz8gJyc7XG4gIH1cbn1cbiIsIkBpZiAodmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICA8Yy1wcm9ncmVzcy1iYXIgW3ZhbHVlXT1cInZhbHVlXCIgW21pbl09XCJtaW5cIiBbbWF4XT1cIm1heFwiIFthbmltYXRlZF09XCJhbmltYXRlZFwiIFt2YXJpYW50XT1cInZhcmlhbnRcIiBbY29sb3JdPVwiY29sb3JcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGVmYXVsdENvbnRlbnRcIiAvPlxuICA8L2MtcHJvZ3Jlc3MtYmFyPlxufSBAZWxzZSB7XG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkZWZhdWx0Q29udGVudFwiIC8+XG59XG5cbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdENvbnRlbnQ+XG4gIDxuZy1jb250ZW50IC8+XG48L25nLXRlbXBsYXRlPlxuXG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvcHJvZ3Jlc3MvcHJvZ3Jlc3MudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sb3JzIH0gZnJvbSAnLi4vY29yZXVpLnR5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBJUHJvZ3Jlc3MgZXh0ZW5kcyBPbWl0PElQcm9ncmVzc0JhciwgJ2FuaW1hdGVkJyB8ICd2YWx1ZSc+IHtcbiAgdGhpbj86IGJvb2xlYW47XG4gIGhlaWdodD86IG51bWJlcjtcbiAgYW5pbWF0ZWQ/OiBib29sZWFuO1xuICB2YWx1ZT86IG51bWJlcjtcbiAgd2hpdGU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQcm9ncmVzc0JhciB7XG4gIGFuaW1hdGVkOiBib29sZWFuO1xuICBjb2xvcj86IENvbG9ycztcbiAgdmFsdWU6IG51bWJlcjtcbiAgdmFyaWFudD86ICdzdHJpcGVkJztcbiAgbWluPzogbnVtYmVyO1xuICBtYXg/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVN0YWNrZWRCYXIgZXh0ZW5kcyBJUHJvZ3Jlc3NCYXIge1xuICBsYWJlbD86IHN0cmluZztcbn1cbiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { ProgressComponent } from './progress.component';
|
|
2
2
|
export { ProgressBarComponent } from './progress-bar.component';
|
|
3
3
|
export { ProgressModule } from './progress.module';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvcHJvZ3Jlc3MvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBJU3RhY2tlZEJhciwgSVByb2dyZXNzQmFyLCBJUHJvZ3Jlc3MgfSBmcm9tICcuL3Byb2dyZXNzLnR5cGUnO1xuZXhwb3J0IHsgUHJvZ3Jlc3NDb21wb25lbnQgfSBmcm9tICcuL3Byb2dyZXNzLmNvbXBvbmVudCc7XG5leHBvcnQgeyBQcm9ncmVzc0JhckNvbXBvbmVudCB9IGZyb20gJy4vcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgeyBQcm9ncmVzc01vZHVsZSB9IGZyb20gJy4vcHJvZ3Jlc3MubW9kdWxlJztcbiJdfQ==
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { DOCUMENT } from '@angular/common';
|
|
2
|
+
import { DestroyRef, effect, inject, Injectable, signal } from '@angular/core';
|
|
3
|
+
import { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';
|
|
4
|
+
import { ActivatedRoute } from '@angular/router';
|
|
5
|
+
import { tap } from 'rxjs/operators';
|
|
6
|
+
import { LocalStorageService } from './local-storage.service';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export class ColorModeService {
|
|
9
|
+
#destroyRef;
|
|
10
|
+
#document;
|
|
11
|
+
#window;
|
|
12
|
+
#activatedRoute;
|
|
13
|
+
#localStorage;
|
|
14
|
+
constructor() {
|
|
15
|
+
this.#destroyRef = inject(DestroyRef);
|
|
16
|
+
this.#document = inject(DOCUMENT);
|
|
17
|
+
this.#window = this.#document.defaultView;
|
|
18
|
+
this.#activatedRoute = inject(ActivatedRoute);
|
|
19
|
+
this.#localStorage = inject(LocalStorageService);
|
|
20
|
+
this.eventName = signal('ColorSchemeChange');
|
|
21
|
+
this.localStorageItemName = signal('coreui-angular-color-scheme');
|
|
22
|
+
this.localStorageItemName$ = toObservable(this.localStorageItemName);
|
|
23
|
+
this.colorMode = signal('light');
|
|
24
|
+
this.colorModeEffect = effect(() => {
|
|
25
|
+
if (this.colorMode()) {
|
|
26
|
+
this.setStoredTheme(this.localStorageItemName(), this.colorMode());
|
|
27
|
+
this.setTheme(this.colorMode());
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
this.#activatedRoute.queryParams
|
|
31
|
+
.pipe(takeUntilDestroyed(this.#destroyRef), tap(params => {
|
|
32
|
+
const theme = params['theme']?.match(/^[A-Za-z0-9\s]+/)[0];
|
|
33
|
+
if (theme) {
|
|
34
|
+
this.colorMode.set(theme);
|
|
35
|
+
}
|
|
36
|
+
}))
|
|
37
|
+
.subscribe();
|
|
38
|
+
this.localStorageItemName$
|
|
39
|
+
.pipe(takeUntilDestroyed(this.#destroyRef), tap(params => {
|
|
40
|
+
this.colorMode.set(this.getPreferredColorScheme(params));
|
|
41
|
+
}))
|
|
42
|
+
.subscribe();
|
|
43
|
+
}
|
|
44
|
+
getStoredTheme(localStorageItemName) {
|
|
45
|
+
return this.#localStorage.getItem(localStorageItemName);
|
|
46
|
+
}
|
|
47
|
+
setStoredTheme(localStorageItemName, colorMode) {
|
|
48
|
+
return this.#localStorage.setItem(localStorageItemName, colorMode);
|
|
49
|
+
}
|
|
50
|
+
getPreferredColorScheme(localStorageItemName) {
|
|
51
|
+
if (this.#window === undefined) {
|
|
52
|
+
return 'light';
|
|
53
|
+
}
|
|
54
|
+
const storedTheme = this.getStoredTheme(localStorageItemName);
|
|
55
|
+
if (storedTheme) {
|
|
56
|
+
return storedTheme;
|
|
57
|
+
}
|
|
58
|
+
return this.#window?.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
|
|
59
|
+
}
|
|
60
|
+
;
|
|
61
|
+
setTheme(colorMode) {
|
|
62
|
+
this.#document.documentElement.dataset['coreuiTheme'] =
|
|
63
|
+
colorMode === 'auto' && this.#document.defaultView?.matchMedia('(prefers-color-scheme: dark)').matches
|
|
64
|
+
? 'dark'
|
|
65
|
+
: colorMode;
|
|
66
|
+
const event = new Event(this.eventName());
|
|
67
|
+
this.#document.documentElement.dispatchEvent(event);
|
|
68
|
+
}
|
|
69
|
+
;
|
|
70
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ColorModeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
71
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ColorModeService, providedIn: 'root' }); }
|
|
72
|
+
}
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ColorModeService, decorators: [{
|
|
74
|
+
type: Injectable,
|
|
75
|
+
args: [{
|
|
76
|
+
providedIn: 'root'
|
|
77
|
+
}]
|
|
78
|
+
}], ctorParameters: () => [] });
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItbW9kZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi9zZXJ2aWNlcy9jb2xvci1tb2RlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFrQixNQUFNLGVBQWUsQ0FBQztBQUMvRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFLOUQsTUFBTSxPQUFPLGdCQUFnQjtJQUVsQixXQUFXLENBQWtDO0lBQzdDLFNBQVMsQ0FBOEI7SUFDdkMsT0FBTyxDQUE4QjtJQUNyQyxlQUFlLENBQTBDO0lBQ3pELGFBQWEsQ0FBb0Q7SUFlMUU7UUFuQlMsZ0JBQVcsR0FBZSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDN0MsY0FBUyxHQUFhLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN2QyxZQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUM7UUFDckMsb0JBQWUsR0FBbUIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3pELGtCQUFhLEdBQXdCLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRWpFLGNBQVMsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUN4Qyx5QkFBb0IsR0FBRyxNQUFNLENBQUMsNkJBQTZCLENBQUMs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LGNBRmYsTUFBTTs7MkZBRVAsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERlc3Ryb3lSZWYsIGVmZmVjdCwgaW5qZWN0LCBJbmplY3RhYmxlLCBzaWduYWwsIFdyaXRhYmxlU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQsIHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuL2xvY2FsLXN0b3JhZ2Uuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENvbG9yTW9kZVNlcnZpY2Uge1xuXG4gIHJlYWRvbmx5ICNkZXN0cm95UmVmOiBEZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICByZWFkb25seSAjZG9jdW1lbnQ6IERvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcbiAgcmVhZG9ubHkgI3dpbmRvdyA9IHRoaXMuI2RvY3VtZW50LmRlZmF1bHRWaWV3O1xuICByZWFkb25seSAjYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgcmVhZG9ubHkgI2xvY2FsU3RvcmFnZTogTG9jYWxTdG9yYWdlU2VydmljZSA9IGluamVjdChMb2NhbFN0b3JhZ2VTZXJ2aWNlKTtcblxuICByZWFkb25seSBldmVudE5hbWUgPSBzaWduYWwoJ0NvbG9yU2NoZW1lQ2hhbmdlJyk7XG4gIHJlYWRvbmx5IGxvY2FsU3RvcmFnZUl0ZW1OYW1lID0gc2lnbmFsKCdjb3JldWktYW5ndWxhci1jb2xvci1zY2hlbWUnKTtcbiAgcmVhZG9ubHkgbG9jYWxTdG9yYWdlSXRlbU5hbWUkID0gdG9PYnNlcnZhYmxlKHRoaXMubG9jYWxTdG9yYWdlSXRlbU5hbWUpO1xuXG4gIHJlYWRvbmx5IGNvbG9yTW9kZTogV3JpdGFibGVTaWduYWw8J2xpZ2h0JyB8ICdkYXJrJyB8ICdhdXRvJz4gPSBzaWduYWwoJ2xpZ2h0Jyk7XG5cbiAgcmVhZG9ubHkgY29sb3JNb2RlRWZmZWN0ID0gZWZmZWN0KCgpID0+IHtcbiAgICBpZiAodGhpcy5jb2xvck1vZGUoKSkge1xuICAgICAgdGhpcy5zZXRTdG9yZWRUaGVtZSh0aGlzLmxvY2FsU3RvcmFnZUl0ZW1OYW1lKCksIHRoaXMuY29sb3JNb2RlKCkpO1xuICAgICAgdGhpcy5zZXRUaGVtZSh0aGlzLmNvbG9yTW9kZSgpKTtcbiAgICB9XG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuI2FjdGl2YXRlZFJvdXRlLnF1ZXJ5UGFyYW1zXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuI2Rlc3Ryb3lSZWYpLFxuICAgICAgICB0YXAocGFyYW1zID0+IHtcbiAgICAgICAgICBjb25zdCB0aGVtZSA9IHBhcmFtc1sndGhlbWUnXT8ubWF0Y2goL15bQS1aYS16MC05XFxzXSsvKVswXTtcbiAgICAgICAgICBpZiAodGhlbWUpIHtcbiAgICAgICAgICAgIHRoaXMuY29sb3JNb2RlLnNldCh0aGVtZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuXG4gICAgdGhpcy5sb2NhbFN0b3JhZ2VJdGVtTmFtZSRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy4jZGVzdHJveVJlZiksXG4gICAgICAgIHRhcChwYXJhbXMgPT4ge1xuICAgICAgICAgIHRoaXMuY29sb3JNb2RlLnNldCh0aGlzLmdldFByZWZlcnJlZENvbG9yU2NoZW1lKHBhcmFtcykpO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuXG4gIH1cblxuICBnZXRTdG9yZWRUaGVtZShsb2NhbFN0b3JhZ2VJdGVtTmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuI2xvY2FsU3RvcmFnZS5nZXRJdGVtKGxvY2FsU3RvcmFnZUl0ZW1OYW1lKTtcbiAgfVxuXG4gIHNldFN0b3JlZFRoZW1lKGxvY2FsU3RvcmFnZUl0ZW1OYW1lOiBzdHJpbmcsIGNvbG9yTW9kZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuI2xvY2FsU3RvcmFnZS5zZXRJdGVtKGxvY2FsU3RvcmFnZUl0ZW1OYW1lLCBjb2xvck1vZGUpO1xuICB9XG5cbiAgZ2V0UHJlZmVycmVkQ29sb3JTY2hlbWUobG9jYWxTdG9yYWdlSXRlbU5hbWU6IHN0cmluZykge1xuICAgIGlmICh0aGlzLiN3aW5kb3cgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuICdsaWdodCc7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RvcmVkVGhlbWUgPSB0aGlzLmdldFN0b3JlZFRoZW1lKGxvY2FsU3RvcmFnZUl0ZW1OYW1lKTtcblxuICAgIGlmIChzdG9yZWRUaGVtZSkge1xuICAgICAgcmV0dXJuIHN0b3JlZFRoZW1lO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLiN3aW5kb3c/Lm1hdGNoTWVkaWEoJyhwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyayknKS5tYXRjaGVzID8gJ2RhcmsnIDogJ2xpZ2h0JztcbiAgfTtcblxuICBzZXRUaGVtZShjb2xvck1vZGU6IHN0cmluZykge1xuICAgIHRoaXMuI2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5kYXRhc2V0Wydjb3JldWlUaGVtZSddID1cbiAgICAgIGNvbG9yTW9kZSA9PT0gJ2F1dG8nICYmIHRoaXMuI2RvY3VtZW50LmRlZmF1bHRWaWV3Py5tYXRjaE1lZGlhKCcocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspJykubWF0Y2hlc1xuICAgICAgPyAnZGFyaydcbiAgICAgIDogY29sb3JNb2RlO1xuXG4gICAgY29uc3QgZXZlbnQgPSBuZXcgRXZlbnQodGhpcy5ldmVudE5hbWUoKSk7XG4gICAgdGhpcy4jZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmRpc3BhdGNoRXZlbnQoZXZlbnQpO1xuICB9O1xuXG59XG4iXX0=
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class InMemoryStorageService {
|
|
4
|
+
#storage = new Map();
|
|
5
|
+
constructor() { }
|
|
6
|
+
setItem(key, data) {
|
|
7
|
+
this.#storage.set(key, JSON.stringify(data));
|
|
8
|
+
}
|
|
9
|
+
getItem(key) {
|
|
10
|
+
return this.#storage.has(key) ? JSON.parse(this.#storage.get(key) ?? 'null') : undefined;
|
|
11
|
+
}
|
|
12
|
+
removeItem(key) {
|
|
13
|
+
this.#storage.delete(key);
|
|
14
|
+
}
|
|
15
|
+
clear() {
|
|
16
|
+
this.#storage.clear();
|
|
17
|
+
}
|
|
18
|
+
get length() {
|
|
19
|
+
return this.#storage.size;
|
|
20
|
+
}
|
|
21
|
+
key(index) {
|
|
22
|
+
return Array.from(this.#storage.keys())[index];
|
|
23
|
+
}
|
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: InMemoryStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
25
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: InMemoryStorageService, providedIn: 'root' }); }
|
|
26
|
+
}
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: InMemoryStorageService, decorators: [{
|
|
28
|
+
type: Injectable,
|
|
29
|
+
args: [{
|
|
30
|
+
providedIn: 'root'
|
|
31
|
+
}]
|
|
32
|
+
}], ctorParameters: () => [] });
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW4tbWVtb3J5LXN0b3JhZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvc2VydmljZXMvaW4tbWVtb3J5LXN0b3JhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sc0JBQXNCO0lBRWpDLFFBQVEsR0FBRyxJQUFJLEdBQUcsRUFBa0IsQ0FBQztJQUVyQyxnQkFBZ0IsQ0FBQztJQUVWLE9BQU8sQ0FBQyxHQUFXLEVBQUUsSUFBUztRQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTSxPQUFPLENBQUMsR0FBVztRQUN4QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDM0YsQ0FBQztJQUVNLFVBQVUsQ0FBQyxHQUFXO1FBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztJQUM1QixDQUFDO0lBRU0sR0FBRyxDQUFDLEtBQWE7UUFDdEIsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqRCxDQUFDOzhHQTVCVSxzQkFBc0I7a0hBQXRCLHNCQUFzQixjQUZyQixNQUFNOzsyRkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBJbk1lbW9yeVN0b3JhZ2VTZXJ2aWNlIGltcGxlbWVudHMgU3RvcmFnZSB7XG5cbiAgI3N0b3JhZ2UgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPigpO1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgcHVibGljIHNldEl0ZW0oa2V5OiBzdHJpbmcsIGRhdGE6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuI3N0b3JhZ2Uuc2V0KGtleSwgSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xuICB9XG5cbiAgcHVibGljIGdldEl0ZW0oa2V5OiBzdHJpbmcpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLiNzdG9yYWdlLmhhcyhrZXkpID8gSlNPTi5wYXJzZSh0aGlzLiNzdG9yYWdlLmdldChrZXkpID8/ICdudWxsJykgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlSXRlbShrZXk6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuI3N0b3JhZ2UuZGVsZXRlKGtleSk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXIoKSB7XG4gICAgdGhpcy4jc3RvcmFnZS5jbGVhcigpO1xuICB9XG5cbiAgcHVibGljIGdldCBsZW5ndGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuI3N0b3JhZ2Uuc2l6ZTtcbiAgfVxuXG4gIHB1YmxpYyBrZXkoaW5kZXg6IG51bWJlcikge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuI3N0b3JhZ2Uua2V5cygpKVtpbmRleF07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { DOCUMENT, isPlatformBrowser } from '@angular/common';
|
|
2
|
+
import { Inject, Injectable, PLATFORM_ID } from '@angular/core';
|
|
3
|
+
import { BehaviorSubject } from 'rxjs';
|
|
4
|
+
import { InMemoryStorageService } from './in-memory-storage.service';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class LocalStorageService {
|
|
7
|
+
constructor(platformId, document) {
|
|
8
|
+
this.platformId = platformId;
|
|
9
|
+
this.document = document;
|
|
10
|
+
this.#data$ = new BehaviorSubject(null);
|
|
11
|
+
this.data$ = this.#data$.asObservable();
|
|
12
|
+
this.localStorage = isPlatformBrowser(this.platformId) && this.document.defaultView ? this.document.defaultView?.localStorage : new InMemoryStorageService();
|
|
13
|
+
}
|
|
14
|
+
#data$;
|
|
15
|
+
setItem(key, data) {
|
|
16
|
+
this.localStorage.setItem(key, JSON.stringify(data));
|
|
17
|
+
this.#data$.next({ key, data });
|
|
18
|
+
}
|
|
19
|
+
getItem(key) {
|
|
20
|
+
const data = JSON.parse(this.localStorage.getItem(key) ?? 'null');
|
|
21
|
+
this.#data$.next({ key, data });
|
|
22
|
+
return data;
|
|
23
|
+
}
|
|
24
|
+
removeItem(key) {
|
|
25
|
+
this.localStorage.removeItem(key);
|
|
26
|
+
this.#data$.next({ key, data: null });
|
|
27
|
+
}
|
|
28
|
+
clear() {
|
|
29
|
+
this.localStorage.clear();
|
|
30
|
+
this.#data$.next(null);
|
|
31
|
+
}
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalStorageService, deps: [{ token: PLATFORM_ID }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
33
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalStorageService, providedIn: 'root' }); }
|
|
34
|
+
}
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: LocalStorageService, decorators: [{
|
|
36
|
+
type: Injectable,
|
|
37
|
+
args: [{
|
|
38
|
+
providedIn: 'root'
|
|
39
|
+
}]
|
|
40
|
+
}], ctorParameters: () => [{ type: Object, decorators: [{
|
|
41
|
+
type: Inject,
|
|
42
|
+
args: [PLATFORM_ID]
|
|
43
|
+
}] }, { type: Document, decorators: [{
|
|
44
|
+
type: Inject,
|
|
45
|
+
args: [DOCUMENT]
|
|
46
|
+
}] }] });
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi9zZXJ2aWNlcy9sb2NhbC1zdG9yYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUtyRSxNQUFNLE9BQU8sbUJBQW1CO0lBSTlCLFlBQytCLFVBQWtCLEVBQ3JCLFFBQWtCO1FBRGYsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQUNyQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBSzlDLFdBQU0sR0FBRyxJQUFJLGVBQWUsQ0FBb0MsSUFBSSxDQUFDLENBQUM7UUFDL0QsVUFBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7UUFKeEMsSUFBSSxDQUFDLFlBQVksR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxzQkFBc0IsRUFBRSxDQUFDO0lBQy9KLENBQUM7SUFFRCxNQUFNLENBQWdFO0lBRy9ELE9BQU8sQ0FBQyxHQUFXLEVBQUUsSUFBUztRQUNuQyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVNLE9BQU8sQ0FBQyxHQUFXO1FBQ3hCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksTUFBTSxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNoQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxVQUFVLENBQUMsR0FBVztRQUMzQixJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekIsQ0FBQzs4R0FqQ1UsbUJBQW1CLGtCQUtwQixXQUFXLGFBQ1gsUUFBUTtrSEFOUCxtQkFBbUIsY0FGbEIsTUFBTTs7MkZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBTUksTUFBTTsyQkFBQyxXQUFXOzswQkFDbEIsTUFBTTsyQkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQsIGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSW5NZW1vcnlTdG9yYWdlU2VydmljZSB9IGZyb20gJy4vaW4tbWVtb3J5LXN0b3JhZ2Uuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIExvY2FsU3RvcmFnZVNlcnZpY2Uge1xuXG4gIGxvY2FsU3RvcmFnZTogU3RvcmFnZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IE9iamVjdCxcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBEb2N1bWVudFxuICApIHtcbiAgICB0aGlzLmxvY2FsU3RvcmFnZSA9IGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkgJiYgdGhpcy5kb2N1bWVudC5kZWZhdWx0VmlldyA/IHRoaXMuZG9jdW1lbnQuZGVmYXVsdFZpZXc/LmxvY2FsU3RvcmFnZSA6IG5ldyBJbk1lbW9yeVN0b3JhZ2VTZXJ2aWNlKCk7XG4gIH1cblxuICAjZGF0YSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHsga2V5OiBzdHJpbmcsIGRhdGE6IGFueSB9IHwgbnVsbD4obnVsbCk7XG4gIHB1YmxpYyBkYXRhJCA9IHRoaXMuI2RhdGEkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIHB1YmxpYyBzZXRJdGVtKGtleTogc3RyaW5nLCBkYXRhOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xuICAgIHRoaXMuI2RhdGEkLm5leHQoeyBrZXksIGRhdGEgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0SXRlbShrZXk6IHN0cmluZyk6IGFueSB7XG4gICAgY29uc3QgZGF0YSA9IEpTT04ucGFyc2UodGhpcy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXkpID8/ICdudWxsJyk7XG4gICAgdGhpcy4jZGF0YSQubmV4dCh7IGtleSwgZGF0YSB9KTtcbiAgICByZXR1cm4gZGF0YTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVJdGVtKGtleTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5sb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShrZXkpO1xuICAgIHRoaXMuI2RhdGEkLm5leHQoeyBrZXksIGRhdGE6IG51bGwgfSk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXIoKSB7XG4gICAgdGhpcy5sb2NhbFN0b3JhZ2UuY2xlYXIoKTtcbiAgICB0aGlzLiNkYXRhJC5uZXh0KG51bGwpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
export { IntersectionService } from './intersection.service';
|
|
2
2
|
export { ListenersService } from './listeners.service';
|
|
3
3
|
export { ClassToggleService } from './class-toggle.service';
|
|
4
|
-
|
|
4
|
+
export { LocalStorageService } from './local-storage.service';
|
|
5
|
+
export { InMemoryStorageService } from './in-memory-storage.service';
|
|
6
|
+
export { ColorModeService } from './color-mode.service';
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvc2VydmljZXMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQTZCLE1BQU0sd0JBQXdCLENBQUM7QUFDeEYsT0FBTyxFQUFFLGdCQUFnQixFQUFvQixNQUFNLHFCQUFxQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgSW50ZXJzZWN0aW9uU2VydmljZSwgSUludGVyc2VjdGlvbk9ic2VydmVySW5pdCB9IGZyb20gJy4vaW50ZXJzZWN0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHsgTGlzdGVuZXJzU2VydmljZSwgSUxpc3RlbmVyc0NvbmZpZyB9IGZyb20gJy4vbGlzdGVuZXJzLnNlcnZpY2UnO1xuZXhwb3J0IHsgQ2xhc3NUb2dnbGVTZXJ2aWNlIH0gZnJvbSAnLi9jbGFzcy10b2dnbGUuc2VydmljZSc7XG5leHBvcnQgeyBMb2NhbFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9sb2NhbC1zdG9yYWdlLnNlcnZpY2UnO1xuZXhwb3J0IHsgSW5NZW1vcnlTdG9yYWdlU2VydmljZSB9IGZyb20gJy4vaW4tbWVtb3J5LXN0b3JhZ2Uuc2VydmljZSc7XG5leHBvcnQgeyBDb2xvck1vZGVTZXJ2aWNlIH0gZnJvbSAnLi9jb2xvci1tb2RlLnNlcnZpY2UnO1xuIl19
|
|
@@ -7,7 +7,7 @@ export class ShadowOnScrollDirective {
|
|
|
7
7
|
#destroyRef = inject(DestroyRef);
|
|
8
8
|
#document = inject(DOCUMENT);
|
|
9
9
|
#elementRef = inject(ElementRef);
|
|
10
|
-
#scrolled = signal(
|
|
10
|
+
#scrolled = signal(false);
|
|
11
11
|
#scrollEffect = effect(() => {
|
|
12
12
|
this.#elementRef.nativeElement.classList.toggle(this.#shadowClass, this.#scrolled());
|
|
13
13
|
});
|
|
@@ -45,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
45
45
|
}], ctorParameters: () => [], propDecorators: { cShadowOnScroll: [{
|
|
46
46
|
type: Input
|
|
47
47
|
}] } });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhZG93LW9uLXNjcm9sbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3V0aWxpdGllcy9zaGFkb3ctb24tc2Nyb2xsLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDakgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFNBQVMsRUFBZ0IsTUFBTSxNQUFNLENBQUM7O0FBTS9DLE1BQU0sT0FBTyx1QkFBdUI7SUFFekIsV0FBVyxHQUFlLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUM3QyxTQUFTLEdBQWEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3ZDLFdBQVcsR0FBZSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDN0MsU0FBUyxHQUE0QixNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFbkQsYUFBYSxHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7UUFDbkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZGLENBQUMsQ0FBQyxDQUFDO0lBRUgsV0FBVyxDQUFnQjtJQUMzQixZQUFZLEdBQUcsV0FBVyxDQUFDO0lBRTNCO1FBQ0UsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzlCLElBQUksQ0FBQyxhQUFhLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFDSSxlQUFlLENBQUMsS0FBcUM7UUFDdkQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUIsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsVUFBVSxLQUFLLEVBQUUsQ0FBQztZQUNsRSxJQUFJLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQztpQkFDbkQsSUFBSSxDQUNILGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FDckM7aUJBQ0EsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUNwQixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDbkUsQ0FBQyxDQUFDLENBQUM7U0FDTjthQUFNO1lBQ0wsSUFBSSxDQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsQ0FBQztTQUNqQztJQUNILENBQUM7SUFBQSxDQUFDOzhHQW5DUyx1QkFBdUI7a0dBQXZCLHVCQUF1Qjs7MkZBQXZCLHVCQUF1QjtrQkFKbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtpQkFDakI7d0RBc0JLLGVBQWU7c0JBRGxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEZXN0cm95UmVmLCBEaXJlY3RpdmUsIGVmZmVjdCwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbnB1dCwgc2lnbmFsLCBXcml0YWJsZVNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2NTaGFkb3dPblNjcm9sbF0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFNoYWRvd09uU2Nyb2xsRGlyZWN0aXZlIHtcblxuICByZWFkb25seSAjZGVzdHJveVJlZjogRGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcbiAgcmVhZG9ubHkgI2RvY3VtZW50OiBEb2N1bWVudCA9IGluamVjdChET0NVTUVOVCk7XG4gIHJlYWRvbmx5ICNlbGVtZW50UmVmOiBFbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICByZWFkb25seSAjc2Nyb2xsZWQ6IFdyaXRhYmxlU2lnbmFsPGJvb2xlYW4+ID0gc2lnbmFsKGZhbHNlKTtcblxuICByZWFkb25seSAjc2Nyb2xsRWZmZWN0ID0gZWZmZWN0KCgpID0+IHtcbiAgICB0aGlzLiNlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LnRvZ2dsZSh0aGlzLiNzaGFkb3dDbGFzcywgdGhpcy4jc2Nyb2xsZWQoKSk7XG4gIH0pO1xuXG4gICNvYnNlcnZhYmxlITogU3Vic2NyaXB0aW9uO1xuICAjc2hhZG93Q2xhc3MgPSAnc2hhZG93LXNtJztcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLiNkZXN0cm95UmVmLm9uRGVzdHJveSgoKSA9PiB7XG4gICAgICB0aGlzLiNzY3JvbGxFZmZlY3Q/LmRlc3Ryb3koKTtcbiAgICB9KTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBjU2hhZG93T25TY3JvbGwodmFsdWU6ICdzbScgfCAnbGcnIHwgJ25vbmUnIHwgYm9vbGVhbikge1xuICAgIHRoaXMuI3Njcm9sbGVkLnNldChmYWxzZSk7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLiNzaGFkb3dDbGFzcyA9IHZhbHVlID09PSB0cnVlID8gJ3NoYWRvdycgOiBgc2hhZG93LSR7dmFsdWV9YDtcbiAgICAgIHRoaXMuI29ic2VydmFibGUgPSBmcm9tRXZlbnQodGhpcy4jZG9jdW1lbnQsICdzY3JvbGwnKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy4jZGVzdHJveVJlZilcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKHNjcm9sbGVkID0+IHtcbiAgICAgICAgICB0aGlzLiNzY3JvbGxlZC5zZXQodGhpcy4jZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcCA+IDApO1xuICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy4jb2JzZXJ2YWJsZT8udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH07XG59XG4iXX0=
|