@skyux/avatar 10.0.0 → 10.1.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/documentation.json
CHANGED
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"fileName": "projects/avatar/src/modules/avatar/avatar.module.ts",
|
|
33
33
|
"line": 24,
|
|
34
34
|
"character": 13,
|
|
35
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
35
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.module.ts#L24"
|
|
36
36
|
}
|
|
37
37
|
],
|
|
38
38
|
"decorators": [
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
|
|
63
63
|
"line": 109,
|
|
64
64
|
"character": 2,
|
|
65
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
65
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L109"
|
|
66
66
|
}
|
|
67
67
|
],
|
|
68
68
|
"signatures": [
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
"fileName": "src/lib/modules/avatar/avatar.component.ts",
|
|
78
78
|
"line": 109,
|
|
79
79
|
"character": 2,
|
|
80
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
80
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L109"
|
|
81
81
|
}
|
|
82
82
|
],
|
|
83
83
|
"parameters": [
|
|
@@ -168,7 +168,7 @@
|
|
|
168
168
|
"fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
|
|
169
169
|
"line": 93,
|
|
170
170
|
"character": 9,
|
|
171
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
171
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L93"
|
|
172
172
|
}
|
|
173
173
|
],
|
|
174
174
|
"type": {
|
|
@@ -219,7 +219,7 @@
|
|
|
219
219
|
"content": [
|
|
220
220
|
{
|
|
221
221
|
"kind": "code",
|
|
222
|
-
"text": "```ts\
|
|
222
|
+
"text": "```ts\n512000 bytes\n```"
|
|
223
223
|
}
|
|
224
224
|
]
|
|
225
225
|
}
|
|
@@ -230,7 +230,7 @@
|
|
|
230
230
|
"fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
|
|
231
231
|
"line": 79,
|
|
232
232
|
"character": 9,
|
|
233
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
233
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L79"
|
|
234
234
|
}
|
|
235
235
|
],
|
|
236
236
|
"type": {
|
|
@@ -300,7 +300,7 @@
|
|
|
300
300
|
"fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
|
|
301
301
|
"line": 87,
|
|
302
302
|
"character": 9,
|
|
303
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
303
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L87"
|
|
304
304
|
}
|
|
305
305
|
],
|
|
306
306
|
"type": {
|
|
@@ -328,13 +328,13 @@
|
|
|
328
328
|
"fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
|
|
329
329
|
"line": 36,
|
|
330
330
|
"character": 13,
|
|
331
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
331
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L36"
|
|
332
332
|
},
|
|
333
333
|
{
|
|
334
334
|
"fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
|
|
335
335
|
"line": 40,
|
|
336
336
|
"character": 13,
|
|
337
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
337
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L40"
|
|
338
338
|
}
|
|
339
339
|
],
|
|
340
340
|
"getSignature": {
|
|
@@ -348,7 +348,7 @@
|
|
|
348
348
|
"fileName": "src/lib/modules/avatar/avatar.component.ts",
|
|
349
349
|
"line": 40,
|
|
350
350
|
"character": 13,
|
|
351
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
351
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L40"
|
|
352
352
|
}
|
|
353
353
|
],
|
|
354
354
|
"type": {
|
|
@@ -394,7 +394,7 @@
|
|
|
394
394
|
"fileName": "src/lib/modules/avatar/avatar.component.ts",
|
|
395
395
|
"line": 36,
|
|
396
396
|
"character": 13,
|
|
397
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
397
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L36"
|
|
398
398
|
}
|
|
399
399
|
],
|
|
400
400
|
"parameters": [
|
|
@@ -434,13 +434,13 @@
|
|
|
434
434
|
"fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
|
|
435
435
|
"line": 53,
|
|
436
436
|
"character": 13,
|
|
437
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
437
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L53"
|
|
438
438
|
},
|
|
439
439
|
{
|
|
440
440
|
"fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
|
|
441
441
|
"line": 57,
|
|
442
442
|
"character": 13,
|
|
443
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
443
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L57"
|
|
444
444
|
}
|
|
445
445
|
],
|
|
446
446
|
"getSignature": {
|
|
@@ -454,7 +454,7 @@
|
|
|
454
454
|
"fileName": "src/lib/modules/avatar/avatar.component.ts",
|
|
455
455
|
"line": 57,
|
|
456
456
|
"character": 13,
|
|
457
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
457
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L57"
|
|
458
458
|
}
|
|
459
459
|
],
|
|
460
460
|
"type": {
|
|
@@ -505,7 +505,7 @@
|
|
|
505
505
|
"fileName": "src/lib/modules/avatar/avatar.component.ts",
|
|
506
506
|
"line": 53,
|
|
507
507
|
"character": 13,
|
|
508
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
508
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L53"
|
|
509
509
|
}
|
|
510
510
|
],
|
|
511
511
|
"parameters": [
|
|
@@ -545,13 +545,13 @@
|
|
|
545
545
|
"fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
|
|
546
546
|
"line": 66,
|
|
547
547
|
"character": 13,
|
|
548
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
548
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L66"
|
|
549
549
|
},
|
|
550
550
|
{
|
|
551
551
|
"fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
|
|
552
552
|
"line": 70,
|
|
553
553
|
"character": 13,
|
|
554
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
554
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L70"
|
|
555
555
|
}
|
|
556
556
|
],
|
|
557
557
|
"getSignature": {
|
|
@@ -565,7 +565,7 @@
|
|
|
565
565
|
"fileName": "src/lib/modules/avatar/avatar.component.ts",
|
|
566
566
|
"line": 70,
|
|
567
567
|
"character": 13,
|
|
568
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
568
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L70"
|
|
569
569
|
}
|
|
570
570
|
],
|
|
571
571
|
"type": {
|
|
@@ -610,7 +610,7 @@
|
|
|
610
610
|
"fileName": "src/lib/modules/avatar/avatar.component.ts",
|
|
611
611
|
"line": 66,
|
|
612
612
|
"character": 13,
|
|
613
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
613
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L66"
|
|
614
614
|
}
|
|
615
615
|
],
|
|
616
616
|
"parameters": [
|
|
@@ -652,7 +652,7 @@
|
|
|
652
652
|
"fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
|
|
653
653
|
"line": 124,
|
|
654
654
|
"character": 9,
|
|
655
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
655
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L124"
|
|
656
656
|
}
|
|
657
657
|
],
|
|
658
658
|
"signatures": [
|
|
@@ -667,7 +667,7 @@
|
|
|
667
667
|
"fileName": "src/lib/modules/avatar/avatar.component.ts",
|
|
668
668
|
"line": 124,
|
|
669
669
|
"character": 9,
|
|
670
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
670
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L124"
|
|
671
671
|
}
|
|
672
672
|
],
|
|
673
673
|
"parameters": [
|
|
@@ -732,7 +732,7 @@
|
|
|
732
732
|
"fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
|
|
733
733
|
"line": 27,
|
|
734
734
|
"character": 13,
|
|
735
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
735
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L27"
|
|
736
736
|
}
|
|
737
737
|
],
|
|
738
738
|
"decorators": [
|
|
@@ -755,7 +755,7 @@
|
|
|
755
755
|
"fileName": "projects/avatar/src/modules/avatar/avatar-size.ts",
|
|
756
756
|
"line": 1,
|
|
757
757
|
"character": 12,
|
|
758
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
758
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar-size.ts#L1"
|
|
759
759
|
}
|
|
760
760
|
],
|
|
761
761
|
"type": {
|
|
@@ -787,7 +787,7 @@
|
|
|
787
787
|
"fileName": "projects/avatar/src/modules/avatar/avatar-src.ts",
|
|
788
788
|
"line": 1,
|
|
789
789
|
"character": 12,
|
|
790
|
-
"url": "https://github.com/blackbaud/skyux/blob/
|
|
790
|
+
"url": "https://github.com/blackbaud/skyux/blob/c918fcf/libs/components/avatar/src/lib/modules/avatar/avatar-src.ts#L1"
|
|
791
791
|
}
|
|
792
792
|
],
|
|
793
793
|
"type": {
|
|
@@ -988,18 +988,18 @@
|
|
|
988
988
|
"@angular/router": "17.3.1",
|
|
989
989
|
"@blackbaud/skyux-design-tokens": "0.0.28",
|
|
990
990
|
"@schematics/angular": "17.3.2",
|
|
991
|
-
"@skyux-sdk/testing": "10.
|
|
992
|
-
"@skyux/assets": "10.
|
|
993
|
-
"@skyux/avatar": "10.
|
|
994
|
-
"@skyux/core": "10.
|
|
995
|
-
"@skyux/errors": "10.
|
|
996
|
-
"@skyux/forms": "10.
|
|
997
|
-
"@skyux/i18n": "10.
|
|
991
|
+
"@skyux-sdk/testing": "10.1.0",
|
|
992
|
+
"@skyux/assets": "10.1.0",
|
|
993
|
+
"@skyux/avatar": "10.1.0",
|
|
994
|
+
"@skyux/core": "10.1.0",
|
|
995
|
+
"@skyux/errors": "10.1.0",
|
|
996
|
+
"@skyux/forms": "10.1.0",
|
|
997
|
+
"@skyux/i18n": "10.1.0",
|
|
998
998
|
"@skyux/icons": "7.0.0",
|
|
999
|
-
"@skyux/indicators": "10.
|
|
1000
|
-
"@skyux/modals": "10.
|
|
1001
|
-
"@skyux/popovers": "10.
|
|
1002
|
-
"@skyux/theme": "10.
|
|
999
|
+
"@skyux/indicators": "10.1.0",
|
|
1000
|
+
"@skyux/modals": "10.1.0",
|
|
1001
|
+
"@skyux/popovers": "10.1.0",
|
|
1002
|
+
"@skyux/theme": "10.1.0",
|
|
1003
1003
|
"axe-core": "4.9.0",
|
|
1004
1004
|
"cross-spawn": "7.0.3",
|
|
1005
1005
|
"fontfaceobserver": "2.3.0",
|
|
@@ -6,7 +6,7 @@ import * as i2 from "@skyux/forms";
|
|
|
6
6
|
import * as i3 from "@skyux/i18n";
|
|
7
7
|
import * as i4 from "@angular/common";
|
|
8
8
|
import * as i5 from "./avatar.inner.component";
|
|
9
|
-
const MAX_FILE_SIZE_DEFAULT =
|
|
9
|
+
const MAX_FILE_SIZE_DEFAULT = 512000;
|
|
10
10
|
export class SkyAvatarComponent {
|
|
11
11
|
/**
|
|
12
12
|
* Whether users can change the image. To select a different image,
|
|
@@ -55,7 +55,7 @@ export class SkyAvatarComponent {
|
|
|
55
55
|
constructor(errorService, fileSizePipe, resourcesService) {
|
|
56
56
|
/**
|
|
57
57
|
* The maximum file size for the image in bytes.
|
|
58
|
-
* @default
|
|
58
|
+
* @default 512000 bytes
|
|
59
59
|
*/
|
|
60
60
|
this.maxFileSize = MAX_FILE_SIZE_DEFAULT;
|
|
61
61
|
/**
|
|
@@ -108,7 +108,7 @@ export class SkyAvatarComponent {
|
|
|
108
108
|
return this.#resourcesService.getStringForLocale({ locale: 'en-US' }, key, ...args);
|
|
109
109
|
}
|
|
110
110
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: SkyAvatarComponent, deps: [{ token: i1.SkyErrorModalService }, { token: i2.SkyFileSizePipe }, { token: i3.SkyLibResourcesService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
111
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: SkyAvatarComponent, selector: "sky-avatar", inputs: { canChange: "canChange", name: "name", src: "src", maxFileSize: "maxFileSize", size: "size" }, outputs: { avatarChanged: "avatarChanged" }, ngImport: i0, template: "<div class=\"sky-avatar\">\n <div *ngIf=\"canChange\">\n <div class=\"sky-avatar-file-drop\">\n <sky-file-drop\n [acceptedTypes]=\"'image/*'\"\n [fileUploadAriaLabel]=\"\n src\n ? ('skyux_avatar_upload_change_aria_label' | skyLibResources: name)\n : ('skyux_avatar_upload_new_aria_label' | skyLibResources: name)\n \"\n [multiple]=\"false\"\n [maxFileSize]=\"maxFileSize\"\n [multiple]=\"false\"\n (filesChanged)=\"photoDrop($event)\"\n >\n <ng-container *ngTemplateOutlet=\"innerTemplate\"></ng-container>\n </sky-file-drop>\n </div>\n </div>\n <div *ngIf=\"!canChange\">\n <ng-container *ngTemplateOutlet=\"innerTemplate\"></ng-container>\n </div>\n</div>\n\n<ng-template #innerTemplate>\n <sky-avatar-inner\n [name]=\"name\"\n [size]=\"size ?? (sizeDefault | async) ?? 'large'\"\n [src]=\"src\"\n ></sky-avatar-inner>\n</ng-template>\n", styles: [".sky-avatar .sky-file-drop-col{flex-basis:initial}.sky-theme-modern .sky-file-drop:focus{outline:none}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.λ8, selector: "sky-file-drop", inputs: ["fileUploadAriaLabel", "linkUploadAriaLabel", "minFileSize", "maxFileSize", "multiple", "validateFn", "acceptedTypes", "noClick", "allowLinks"], outputs: ["filesChanged", "linkInputBlur", "linkChanged"] }, { kind: "component", type: i5.SkyAvatarInnerComponent, selector: "sky-avatar-inner", inputs: ["src", "name", "size"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.SkyLibResourcesPipe, name: "skyLibResources" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
111
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: SkyAvatarComponent, selector: "sky-avatar", inputs: { canChange: "canChange", name: "name", src: "src", maxFileSize: "maxFileSize", size: "size" }, outputs: { avatarChanged: "avatarChanged" }, ngImport: i0, template: "<div class=\"sky-avatar\">\n <div *ngIf=\"canChange\">\n <div class=\"sky-avatar-file-drop\">\n <sky-file-drop\n [acceptedTypes]=\"'image/*'\"\n [fileUploadAriaLabel]=\"\n src\n ? ('skyux_avatar_upload_change_aria_label' | skyLibResources: name)\n : ('skyux_avatar_upload_new_aria_label' | skyLibResources: name)\n \"\n [multiple]=\"false\"\n [maxFileSize]=\"maxFileSize\"\n [multiple]=\"false\"\n (filesChanged)=\"photoDrop($event)\"\n >\n <ng-container *ngTemplateOutlet=\"innerTemplate\"></ng-container>\n </sky-file-drop>\n </div>\n </div>\n <div *ngIf=\"!canChange\">\n <ng-container *ngTemplateOutlet=\"innerTemplate\"></ng-container>\n </div>\n</div>\n\n<ng-template #innerTemplate>\n <sky-avatar-inner\n [name]=\"name\"\n [size]=\"size ?? (sizeDefault | async) ?? 'large'\"\n [src]=\"src\"\n ></sky-avatar-inner>\n</ng-template>\n", styles: [".sky-avatar .sky-file-drop-col{flex-basis:initial}.sky-theme-modern .sky-file-drop:focus{outline:none}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.λ8, selector: "sky-file-drop", inputs: ["fileUploadAriaLabel", "linkUploadAriaLabel", "minFileSize", "maxFileSize", "multiple", "validateFn", "acceptedTypes", "noClick", "allowLinks", "labelText", "labelHidden"], outputs: ["filesChanged", "linkInputBlur", "linkChanged"] }, { kind: "component", type: i5.SkyAvatarInnerComponent, selector: "sky-avatar-inner", inputs: ["src", "name", "size"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.SkyLibResourcesPipe, name: "skyLibResources" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
112
112
|
}
|
|
113
113
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: SkyAvatarComponent, decorators: [{
|
|
114
114
|
type: Component,
|
|
@@ -126,4 +126,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
|
|
|
126
126
|
}], avatarChanged: [{
|
|
127
127
|
type: Output
|
|
128
128
|
}] } });
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hdmF0YXIvc3JjL2xpYi9tb2R1bGVzL2F2YXRhci9hdmF0YXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2F2YXRhci9zcmMvbGliL21vZHVsZXMvYXZhdGFyL2F2YXRhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixFQUNqQixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7Ozs7O0FBVXRELE1BQU0scUJBQXFCLEdBQUcsTUFBTSxDQUFDO0FBUXJDLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0I7Ozs7OztPQU1HO0lBQ0gsSUFDVyxTQUFTLENBQUMsS0FBMEI7UUFDN0MsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsSUFDVyxJQUFJLENBQUMsS0FBeUI7UUFDdkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFDVyxHQUFHLENBQUMsS0FBK0I7UUFDNUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELElBQVcsR0FBRztRQUNaLE9BQU8sSUFBSSxDQUFDLEtB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RUQsVUFBVSxDQUFDLEdBQVcsRUFBRSxHQUFHLElBQVc7UUFDcEMsNkVBQTZFO1FBQzdFLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixDQUM5QyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsRUFDbkIsR0FBRyxFQUNILEdBQUcsSUFBSSxDQUNSLENBQUM7SUFDSixDQUFDOzhHQXJKVSxrQkFBa0I7a0dBQWxCLGtCQUFrQix1TUMxQi9CLHM4QkErQkE7OzJGRExhLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDRSxZQUFZLGlCQUdQLGlCQUFpQixDQUFDLElBQUk7NEpBVzFCLFNBQVM7c0JBRG5CLEtBQUs7Z0JBa0JLLElBQUk7c0JBRGQsS0FBSztnQkFjSyxHQUFHO3NCQURiLEtBQUs7Z0JBY0MsV0FBVztzQkFEakIsS0FBSztnQkFTQyxJQUFJO3NCQURWLEtBQUs7Z0JBT0MsYUFBYTtzQkFEbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreURlZmF1bHRJbnB1dFByb3ZpZGVyIH0gZnJvbSAnQHNreXV4L2NvcmUnO1xuaW1wb3J0IHsgRXJyb3JNb2RhbENvbmZpZywgU2t5RXJyb3JNb2RhbFNlcnZpY2UgfSBmcm9tICdAc2t5dXgvZXJyb3JzJztcbmltcG9ydCB7IFNreUZpbGVEcm9wQ2hhbmdlLCBTa3lGaWxlSXRlbSwgU2t5RmlsZVNpemVQaXBlIH0gZnJvbSAnQHNreXV4L2Zvcm1zJztcbmltcG9ydCB7IFNreUxpYlJlc291cmNlc1NlcnZpY2UgfSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2t5QXZhdGFyU2l6ZSB9IGZyb20gJy4vYXZhdGFyLXNpemUnO1xuaW1wb3J0IHsgU2t5QXZhdGFyU3JjIH0gZnJvbSAnLi9hdmF0YXItc3JjJztcblxuY29uc3QgTUFYX0ZJTEVfU0laRV9ERUZBVUxUID0gNTAwMDAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktYXZhdGFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2F2YXRhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2F2YXRhci5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lBdmF0YXJDb21wb25lbnQge1xuICAvKipcbiAgICogV2hldGhlciB1c2VycyBjYW4gY2hhbmdlIHRoZSBpbWFnZS4gVG8gc2VsZWN0IGEgZGlmZmVyZW50IGltYWdlLFxuICAgKiB1c2VycyBjbGljayB0aGUgaW1hZ2Ugb3IgZHJhZyBhbm90aGVyIGltYWdlIG9uIHRvcCBvZiBpdCxcbiAgICogbXVjaCBsaWtlIHRoZSBgc2t5LWZpbGUtZHJvcGAgY29tcG9uZW50IGluIHRoZVxuICAgKiBbZmlsZSBhdHRhY2htZW50IG1vZHVsZV0oaHR0cHM6Ly9kZXZlbG9wZXIuYmxhY2tiYXVkLmNvbS9za3l1eC9jb21wb25lbnRzL2ZpbGUtYXR0YWNobWVudHMvZmlsZS1hdHRhY2htZW50KS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgY2FuQ2hhbmdlKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2NhbkNoYW5nZSA9ICEhdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNhbkNoYW5nZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy4jX2NhbkNoYW5nZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgcmVjb3JkIHRoYXQgdGhlIGF2YXRhciByZXByZXNlbnRzLlxuICAgKiBJZiB0aGUgYHNyY2AgcHJvcGVydHkgZG9lcyBub3Qgc3BlY2lmeSBhbiBpbWFnZSwgdGhlIGNvbXBvbmVudCBkaXNwbGF5c1xuICAgKiBpbml0aWFscyBmcm9tIHRoZSBmaXJzdCBhbmQgbGFzdCB3b3JkcyBpbiB0aGUgbmFtZS4gVG8gZW5zdXJlXG4gICAqIHRoYXQgdGhlIGNvbXBvbmVudCBleHRyYWN0cyB0aGUgY29ycmVjdCBpbml0aWFscywgc3BlY2lmeSBhIG5hbWUgd2l0aCBubyBwcmVmaXhcbiAgICogb3Igc3VmZml4LCBvciBqdXN0IHNwZWNpZnkgaW5pdGlhbHMgd2l0aCBhIHNwYWNlIGJldHdlZW4gdGhlbS4gVGhpcyBwcm9wZXJ0eSBpc1xuICAgKiBub3QgcmVxdWlyZWQsIGJ1dCB0aGUgY29tcG9uZW50IHJlcXVpcmVzIGVpdGhlciB0aGUgYG5hbWVgIG9yIGBzcmNgIHByb3BlcnR5LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBuYW1lKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfbmFtZSA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBuYW1lKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuI19uYW1lO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBpbWFnZSB0byBpZGVudGlmeSBhIHJlY29yZC4gVGhpcyBwcm9wZXJ0eSBpc1xuICAgKiBub3QgcmVxdWlyZWQsIGJ1dCB0aGUgY29tcG9uZW50IHJlcXVpcmVzIGVpdGhlciB0aGUgYG5hbWVgIG9yIGBzcmNgIHByb3BlcnR5LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBzcmModmFsdWU6IFNreUF2YXRhclNyYyB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI19zcmMgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc3JjKCk6IFNreUF2YXRhclNyYyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuI19zcmM7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG1heGltdW0gZmlsZSBzaXplIGZvciB0aGUgaW1hZ2UgaW4gYnl0ZXMuXG4gICAqIEBkZWZhdWx0IDUwMDAwMCBieXRlc1xuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIG1heEZpbGVTaXplOiBudW1iZXIgfCB1bmRlZmluZWQgPSBNQVhfRklMRV9TSVpFX0RFRkFVTFQ7XG5cbiAgLyoqXG4gICAqIFRoZSBzaXplIG9mIHRoZSBhdmF0YXIuXG4gICAqIEFjY2VwdGFibGUgdmFsdWVzIGFyZTogYFwic21hbGxcImAsIGBcIm1lZGl1bVwiYCwgYW5kIGBcImxhcmdlXCJgLlxuICAgKiBAZGVmYXVsdCBcImxhcmdlXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaXplOiBTa3lBdmF0YXJTaXplIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBFbWl0cyBhIGBTa3lGaWxlSXRlbWAgb2JqZWN0IHdoZW4gdGhlIGltYWdlIGlzIHVwZGF0ZWQuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIGF2YXRhckNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFNreUZpbGVJdGVtPigpO1xuXG4gIHByb3RlY3RlZCBzaXplRGVmYXVsdDogT2JzZXJ2YWJsZTxTa3lBdmF0YXJTaXplPiB8IHVuZGVmaW5lZDtcblxuICAjX2NhbkNoYW5nZSA9IGZhbHNlO1xuXG4gICNfbmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICNfc3JjOiBTa3lBdmF0YXJTcmMgfCB1bmRlZmluZWQ7XG5cbiAgI2Vycm9yU2VydmljZTogU2t5RXJyb3JNb2RhbFNlcnZpY2U7XG4gICNmaWxlU2l6ZVBpcGU6IFNreUZpbGVTaXplUGlwZTtcbiAgI3Jlc291cmNlc1NlcnZpY2U6IFNreUxpYlJlc291cmNlc1NlcnZpY2U7XG5cbiAgI2RlZmF1bHRJbnB1dFByb3ZpZGVyID0gaW5qZWN0KFNreURlZmF1bHRJbnB1dFByb3ZpZGVyLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGVycm9yU2VydmljZTogU2t5RXJyb3JNb2RhbFNlcnZpY2UsXG4gICAgZmlsZVNpemVQaXBlOiBTa3lGaWxlU2l6ZVBpcGUsXG4gICAgcmVzb3VyY2VzU2VydmljZTogU2t5TGliUmVzb3VyY2VzU2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy4jZXJyb3JTZXJ2aWNlID0gZXJyb3JTZXJ2aWNlO1xuICAgIHRoaXMuI2ZpbGVTaXplUGlwZSA9IGZpbGVTaXplUGlwZTtcbiAgICB0aGlzLiNyZXNvdXJjZXNTZXJ2aWNlID0gcmVzb3VyY2VzU2VydmljZTtcblxuICAgIHRoaXMuc2l6ZURlZmF1bHQgPSB0aGlzLiNkZWZhdWx0SW5wdXRQcm92aWRlcj8uZ2V0VmFsdWU8U2t5QXZhdGFyU2l6ZT4oXG4gICAgICAnYXZhdGFyJyxcbiAgICAgICdzaXplJyxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHBob3RvRHJvcChyZXN1bHQ6IFNreUZpbGVEcm9wQ2hhbmdlKTogdm9pZCB7XG4gICAgLyogc2FuaXR5IGNoZWNrICovXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAocmVzdWx0LmZpbGVzICYmIHJlc3VsdC5maWxlcy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLmF2YXRhckNoYW5nZWQuZW1pdChyZXN1bHQuZmlsZXNbMF0pO1xuICAgIH0gZWxzZSBpZiAocmVzdWx0LnJlamVjdGVkRmlsZXMgJiYgcmVzdWx0LnJlamVjdGVkRmlsZXMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy4jaGFuZGxlRXJyb3IocmVzdWx0LnJlamVjdGVkRmlsZXMpO1xuICAgIH1cbiAgfVxuXG4gICNoYW5kbGVFcnJvcihyZWplY3RlZEZpbGVzOiBTa3lGaWxlSXRlbVtdKTogdm9pZCB7XG4gICAgY29uc3QgcmVqZWN0ZWRGaWxlID0gcmVqZWN0ZWRGaWxlc1swXTtcblxuICAgIGlmIChyZWplY3RlZEZpbGUuZXJyb3JUeXBlID09PSAnbWF4RmlsZVNpemUnKSB7XG4gICAgICBjb25zdCB0aXRsZSA9IHRoaXMuI2dldFN0cmluZygnc2t5dXhfYXZhdGFyX2Vycm9yX3Rvb19sYXJnZV90aXRsZScpO1xuICAgICAgY29uc3QgZGVzY3JpcHRpb24gPSB0aGlzLiNnZXRTdHJpbmcoXG4gICAgICAgICdza3l1eF9hdmF0YXJfZXJyb3JfdG9vX2xhcmdlX2Rlc2NyaXB0aW9uJyxcbiAgICAgICAgdGhpcy4jbWF4RmlsZVNpemVUZXh0KCksXG4gICAgICApO1xuXG4gICAgICB0aGlzLiNvcGVuRXJyb3JNb2RhbCh0aXRsZSwgZGVzY3JpcHRpb24pO1xuICAgIH0gZWxzZSBpZiAocmVqZWN0ZWRGaWxlLmVycm9yVHlwZSA9PT0gJ2ZpbGVUeXBlJykge1xuICAgICAgY29uc3QgdGl0bGUgPSB0aGlzLiNnZXRTdHJpbmcoJ3NreXV4X2F2YXRhcl9lcnJvcl9ub3RfaW1hZ2VfdGl0bGUnKTtcbiAgICAgIGNvbnN0IGRlc2NyaXB0aW9uID0gdGhpcy4jZ2V0U3RyaW5nKFxuICAgICAgICAnc2t5dXhfYXZhdGFyX2Vycm9yX25vdF9pbWFnZV9kZXNjcmlwdGlvbicsXG4gICAgICApO1xuXG4gICAgICB0aGlzLiNvcGVuRXJyb3JNb2RhbCh0aXRsZSwgZGVzY3JpcHRpb24pO1xuICAgIH1cbiAgfVxuXG4gICNtYXhGaWxlU2l6ZVRleHQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy4jZmlsZVNpemVQaXBlLnRyYW5zZm9ybSh0aGlzLm1heEZpbGVTaXplKTtcbiAgfVxuXG4gICNvcGVuRXJyb3JNb2RhbCh0aXRsZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgY29uZmlnOiBFcnJvck1vZGFsQ29uZmlnID0ge1xuICAgICAgZXJyb3JUaXRsZTogdGl0bGUsXG4gICAgICBlcnJvckRlc2NyaXB0aW9uOiBkZXNjcmlwdGlvbixcbiAgICAgIGVycm9yQ2xvc2VUZXh0OiB0aGlzLiNnZXRTdHJpbmcoJ3NreXV4X2F2YXRhcl9lcnJvcm1vZGFsX29rJyksXG4gICAgfTtcblxuICAgIHRoaXMuI2Vycm9yU2VydmljZS5vcGVuKGNvbmZpZyk7XG4gIH1cblxuICAjZ2V0U3RyaW5nKGtleTogc3RyaW5nLCAuLi5hcmdzOiBhbnlbXSk6IHN0cmluZyB7XG4gICAgLy8gVE9ETzogTmVlZCB0byBpbXBsZW1lbnQgdGhlIGFzeW5jIGBnZXRTdHJpbmdgIG1ldGhvZCBpbiBhIGJyZWFraW5nIGNoYW5nZS5cbiAgICByZXR1cm4gdGhpcy4jcmVzb3VyY2VzU2VydmljZS5nZXRTdHJpbmdGb3JMb2NhbGUoXG4gICAgICB7IGxvY2FsZTogJ2VuLVVTJyB9LFxuICAgICAga2V5LFxuICAgICAgLi4uYXJncyxcbiAgICApO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2t5LWF2YXRhclwiPlxuICA8ZGl2ICpuZ0lmPVwiY2FuQ2hhbmdlXCI+XG4gICAgPGRpdiBjbGFzcz1cInNreS1hdmF0YXItZmlsZS1kcm9wXCI+XG4gICAgICA8c2t5LWZpbGUtZHJvcFxuICAgICAgICBbYWNjZXB0ZWRUeXBlc109XCInaW1hZ2UvKidcIlxuICAgICAgICBbZmlsZVVwbG9hZEFyaWFMYWJlbF09XCJcbiAgICAgICAgICBzcmNcbiAgICAgICAgICAgID8gKCdza3l1eF9hdmF0YXJfdXBsb2FkX2NoYW5nZV9hcmlhX2xhYmVsJyB8IHNreUxpYlJlc291cmNlczogbmFtZSlcbiAgICAgICAgICAgIDogKCdza3l1eF9hdmF0YXJfdXBsb2FkX25ld19hcmlhX2xhYmVsJyB8IHNreUxpYlJlc291cmNlczogbmFtZSlcbiAgICAgICAgXCJcbiAgICAgICAgW211bHRpcGxlXT1cImZhbHNlXCJcbiAgICAgICAgW21heEZpbGVTaXplXT1cIm1heEZpbGVTaXplXCJcbiAgICAgICAgW211bHRpcGxlXT1cImZhbHNlXCJcbiAgICAgICAgKGZpbGVzQ2hhbmdlZCk9XCJwaG90b0Ryb3AoJGV2ZW50KVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpbm5lclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L3NreS1maWxlLWRyb3A+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiIWNhbkNoYW5nZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpbm5lclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjaW5uZXJUZW1wbGF0ZT5cbiAgPHNreS1hdmF0YXItaW5uZXJcbiAgICBbbmFtZV09XCJuYW1lXCJcbiAgICBbc2l6ZV09XCJzaXplID8/IChzaXplRGVmYXVsdCB8IGFzeW5jKSA/PyAnbGFyZ2UnXCJcbiAgICBbc3JjXT1cInNyY1wiXG4gID48L3NreS1hdmF0YXItaW5uZXI+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hdmF0YXIvc3JjL2xpYi9tb2R1bGVzL2F2YXRhci9hdmF0YXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2F2YXRhci9zcmMvbGliL21vZHVsZXMvYXZhdGFyL2F2YXRhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixFQUNqQixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7Ozs7O0FBVXRELE1BQU0scUJBQXFCLEdBQUcsTUFBTSxDQUFDO0FBUXJDLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0I7Ozs7OztPQU1HO0lBQ0gsSUFDVyxTQUFTLENBQUMsS0FBMEI7UUFDN0MsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsSUFDVyxJQUFJLENBQUMsS0FBeUI7UUFDdkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFDVyxHQUFHLENBQUMsS0FBK0I7UUFDNUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELElBQVcsR0FBRztRQUNaLE9BQU8sSUFBSSxDQUFDLEtB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RUQsVUFBVSxDQUFDLEdBQVcsRUFBRSxHQUFHLElBQVc7UUFDcEMsNkVBQTZFO1FBQzdFLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixDQUM5QyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsRUFDbkIsR0FBRyxFQUNILEdBQUcsSUFBSSxDQUNSLENBQUM7SUFDSixDQUFDOzhHQXJKVSxrQkFBa0I7a0dBQWxCLGtCQUFrQix1TUMxQi9CLHM4QkErQkE7OzJGRExhLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDRSxZQUFZLGlCQUdQLGlCQUFpQixDQUFDLElBQUk7NEpBVzFCLFNBQVM7c0JBRG5CLEtBQUs7Z0JBa0JLLElBQUk7c0JBRGQsS0FBSztnQkFjSyxHQUFHO3NCQURiLEtBQUs7Z0JBY0MsV0FBVztzQkFEakIsS0FBSztnQkFTQyxJQUFJO3NCQURWLEtBQUs7Z0JBT0MsYUFBYTtzQkFEbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreURlZmF1bHRJbnB1dFByb3ZpZGVyIH0gZnJvbSAnQHNreXV4L2NvcmUnO1xuaW1wb3J0IHsgRXJyb3JNb2RhbENvbmZpZywgU2t5RXJyb3JNb2RhbFNlcnZpY2UgfSBmcm9tICdAc2t5dXgvZXJyb3JzJztcbmltcG9ydCB7IFNreUZpbGVEcm9wQ2hhbmdlLCBTa3lGaWxlSXRlbSwgU2t5RmlsZVNpemVQaXBlIH0gZnJvbSAnQHNreXV4L2Zvcm1zJztcbmltcG9ydCB7IFNreUxpYlJlc291cmNlc1NlcnZpY2UgfSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2t5QXZhdGFyU2l6ZSB9IGZyb20gJy4vYXZhdGFyLXNpemUnO1xuaW1wb3J0IHsgU2t5QXZhdGFyU3JjIH0gZnJvbSAnLi9hdmF0YXItc3JjJztcblxuY29uc3QgTUFYX0ZJTEVfU0laRV9ERUZBVUxUID0gNTEyMDAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktYXZhdGFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2F2YXRhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2F2YXRhci5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lBdmF0YXJDb21wb25lbnQge1xuICAvKipcbiAgICogV2hldGhlciB1c2VycyBjYW4gY2hhbmdlIHRoZSBpbWFnZS4gVG8gc2VsZWN0IGEgZGlmZmVyZW50IGltYWdlLFxuICAgKiB1c2VycyBjbGljayB0aGUgaW1hZ2Ugb3IgZHJhZyBhbm90aGVyIGltYWdlIG9uIHRvcCBvZiBpdCxcbiAgICogbXVjaCBsaWtlIHRoZSBgc2t5LWZpbGUtZHJvcGAgY29tcG9uZW50IGluIHRoZVxuICAgKiBbZmlsZSBhdHRhY2htZW50IG1vZHVsZV0oaHR0cHM6Ly9kZXZlbG9wZXIuYmxhY2tiYXVkLmNvbS9za3l1eC9jb21wb25lbnRzL2ZpbGUtYXR0YWNobWVudHMvZmlsZS1hdHRhY2htZW50KS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgY2FuQ2hhbmdlKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2NhbkNoYW5nZSA9ICEhdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNhbkNoYW5nZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy4jX2NhbkNoYW5nZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgcmVjb3JkIHRoYXQgdGhlIGF2YXRhciByZXByZXNlbnRzLlxuICAgKiBJZiB0aGUgYHNyY2AgcHJvcGVydHkgZG9lcyBub3Qgc3BlY2lmeSBhbiBpbWFnZSwgdGhlIGNvbXBvbmVudCBkaXNwbGF5c1xuICAgKiBpbml0aWFscyBmcm9tIHRoZSBmaXJzdCBhbmQgbGFzdCB3b3JkcyBpbiB0aGUgbmFtZS4gVG8gZW5zdXJlXG4gICAqIHRoYXQgdGhlIGNvbXBvbmVudCBleHRyYWN0cyB0aGUgY29ycmVjdCBpbml0aWFscywgc3BlY2lmeSBhIG5hbWUgd2l0aCBubyBwcmVmaXhcbiAgICogb3Igc3VmZml4LCBvciBqdXN0IHNwZWNpZnkgaW5pdGlhbHMgd2l0aCBhIHNwYWNlIGJldHdlZW4gdGhlbS4gVGhpcyBwcm9wZXJ0eSBpc1xuICAgKiBub3QgcmVxdWlyZWQsIGJ1dCB0aGUgY29tcG9uZW50IHJlcXVpcmVzIGVpdGhlciB0aGUgYG5hbWVgIG9yIGBzcmNgIHByb3BlcnR5LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBuYW1lKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfbmFtZSA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBuYW1lKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuI19uYW1lO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBpbWFnZSB0byBpZGVudGlmeSBhIHJlY29yZC4gVGhpcyBwcm9wZXJ0eSBpc1xuICAgKiBub3QgcmVxdWlyZWQsIGJ1dCB0aGUgY29tcG9uZW50IHJlcXVpcmVzIGVpdGhlciB0aGUgYG5hbWVgIG9yIGBzcmNgIHByb3BlcnR5LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBzcmModmFsdWU6IFNreUF2YXRhclNyYyB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI19zcmMgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc3JjKCk6IFNreUF2YXRhclNyYyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuI19zcmM7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG1heGltdW0gZmlsZSBzaXplIGZvciB0aGUgaW1hZ2UgaW4gYnl0ZXMuXG4gICAqIEBkZWZhdWx0IDUxMjAwMCBieXRlc1xuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIG1heEZpbGVTaXplOiBudW1iZXIgfCB1bmRlZmluZWQgPSBNQVhfRklMRV9TSVpFX0RFRkFVTFQ7XG5cbiAgLyoqXG4gICAqIFRoZSBzaXplIG9mIHRoZSBhdmF0YXIuXG4gICAqIEFjY2VwdGFibGUgdmFsdWVzIGFyZTogYFwic21hbGxcImAsIGBcIm1lZGl1bVwiYCwgYW5kIGBcImxhcmdlXCJgLlxuICAgKiBAZGVmYXVsdCBcImxhcmdlXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaXplOiBTa3lBdmF0YXJTaXplIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBFbWl0cyBhIGBTa3lGaWxlSXRlbWAgb2JqZWN0IHdoZW4gdGhlIGltYWdlIGlzIHVwZGF0ZWQuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIGF2YXRhckNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFNreUZpbGVJdGVtPigpO1xuXG4gIHByb3RlY3RlZCBzaXplRGVmYXVsdDogT2JzZXJ2YWJsZTxTa3lBdmF0YXJTaXplPiB8IHVuZGVmaW5lZDtcblxuICAjX2NhbkNoYW5nZSA9IGZhbHNlO1xuXG4gICNfbmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICNfc3JjOiBTa3lBdmF0YXJTcmMgfCB1bmRlZmluZWQ7XG5cbiAgI2Vycm9yU2VydmljZTogU2t5RXJyb3JNb2RhbFNlcnZpY2U7XG4gICNmaWxlU2l6ZVBpcGU6IFNreUZpbGVTaXplUGlwZTtcbiAgI3Jlc291cmNlc1NlcnZpY2U6IFNreUxpYlJlc291cmNlc1NlcnZpY2U7XG5cbiAgI2RlZmF1bHRJbnB1dFByb3ZpZGVyID0gaW5qZWN0KFNreURlZmF1bHRJbnB1dFByb3ZpZGVyLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGVycm9yU2VydmljZTogU2t5RXJyb3JNb2RhbFNlcnZpY2UsXG4gICAgZmlsZVNpemVQaXBlOiBTa3lGaWxlU2l6ZVBpcGUsXG4gICAgcmVzb3VyY2VzU2VydmljZTogU2t5TGliUmVzb3VyY2VzU2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy4jZXJyb3JTZXJ2aWNlID0gZXJyb3JTZXJ2aWNlO1xuICAgIHRoaXMuI2ZpbGVTaXplUGlwZSA9IGZpbGVTaXplUGlwZTtcbiAgICB0aGlzLiNyZXNvdXJjZXNTZXJ2aWNlID0gcmVzb3VyY2VzU2VydmljZTtcblxuICAgIHRoaXMuc2l6ZURlZmF1bHQgPSB0aGlzLiNkZWZhdWx0SW5wdXRQcm92aWRlcj8uZ2V0VmFsdWU8U2t5QXZhdGFyU2l6ZT4oXG4gICAgICAnYXZhdGFyJyxcbiAgICAgICdzaXplJyxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHBob3RvRHJvcChyZXN1bHQ6IFNreUZpbGVEcm9wQ2hhbmdlKTogdm9pZCB7XG4gICAgLyogc2FuaXR5IGNoZWNrICovXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAocmVzdWx0LmZpbGVzICYmIHJlc3VsdC5maWxlcy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLmF2YXRhckNoYW5nZWQuZW1pdChyZXN1bHQuZmlsZXNbMF0pO1xuICAgIH0gZWxzZSBpZiAocmVzdWx0LnJlamVjdGVkRmlsZXMgJiYgcmVzdWx0LnJlamVjdGVkRmlsZXMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy4jaGFuZGxlRXJyb3IocmVzdWx0LnJlamVjdGVkRmlsZXMpO1xuICAgIH1cbiAgfVxuXG4gICNoYW5kbGVFcnJvcihyZWplY3RlZEZpbGVzOiBTa3lGaWxlSXRlbVtdKTogdm9pZCB7XG4gICAgY29uc3QgcmVqZWN0ZWRGaWxlID0gcmVqZWN0ZWRGaWxlc1swXTtcblxuICAgIGlmIChyZWplY3RlZEZpbGUuZXJyb3JUeXBlID09PSAnbWF4RmlsZVNpemUnKSB7XG4gICAgICBjb25zdCB0aXRsZSA9IHRoaXMuI2dldFN0cmluZygnc2t5dXhfYXZhdGFyX2Vycm9yX3Rvb19sYXJnZV90aXRsZScpO1xuICAgICAgY29uc3QgZGVzY3JpcHRpb24gPSB0aGlzLiNnZXRTdHJpbmcoXG4gICAgICAgICdza3l1eF9hdmF0YXJfZXJyb3JfdG9vX2xhcmdlX2Rlc2NyaXB0aW9uJyxcbiAgICAgICAgdGhpcy4jbWF4RmlsZVNpemVUZXh0KCksXG4gICAgICApO1xuXG4gICAgICB0aGlzLiNvcGVuRXJyb3JNb2RhbCh0aXRsZSwgZGVzY3JpcHRpb24pO1xuICAgIH0gZWxzZSBpZiAocmVqZWN0ZWRGaWxlLmVycm9yVHlwZSA9PT0gJ2ZpbGVUeXBlJykge1xuICAgICAgY29uc3QgdGl0bGUgPSB0aGlzLiNnZXRTdHJpbmcoJ3NreXV4X2F2YXRhcl9lcnJvcl9ub3RfaW1hZ2VfdGl0bGUnKTtcbiAgICAgIGNvbnN0IGRlc2NyaXB0aW9uID0gdGhpcy4jZ2V0U3RyaW5nKFxuICAgICAgICAnc2t5dXhfYXZhdGFyX2Vycm9yX25vdF9pbWFnZV9kZXNjcmlwdGlvbicsXG4gICAgICApO1xuXG4gICAgICB0aGlzLiNvcGVuRXJyb3JNb2RhbCh0aXRsZSwgZGVzY3JpcHRpb24pO1xuICAgIH1cbiAgfVxuXG4gICNtYXhGaWxlU2l6ZVRleHQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy4jZmlsZVNpemVQaXBlLnRyYW5zZm9ybSh0aGlzLm1heEZpbGVTaXplKTtcbiAgfVxuXG4gICNvcGVuRXJyb3JNb2RhbCh0aXRsZTogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgY29uZmlnOiBFcnJvck1vZGFsQ29uZmlnID0ge1xuICAgICAgZXJyb3JUaXRsZTogdGl0bGUsXG4gICAgICBlcnJvckRlc2NyaXB0aW9uOiBkZXNjcmlwdGlvbixcbiAgICAgIGVycm9yQ2xvc2VUZXh0OiB0aGlzLiNnZXRTdHJpbmcoJ3NreXV4X2F2YXRhcl9lcnJvcm1vZGFsX29rJyksXG4gICAgfTtcblxuICAgIHRoaXMuI2Vycm9yU2VydmljZS5vcGVuKGNvbmZpZyk7XG4gIH1cblxuICAjZ2V0U3RyaW5nKGtleTogc3RyaW5nLCAuLi5hcmdzOiBhbnlbXSk6IHN0cmluZyB7XG4gICAgLy8gVE9ETzogTmVlZCB0byBpbXBsZW1lbnQgdGhlIGFzeW5jIGBnZXRTdHJpbmdgIG1ldGhvZCBpbiBhIGJyZWFraW5nIGNoYW5nZS5cbiAgICByZXR1cm4gdGhpcy4jcmVzb3VyY2VzU2VydmljZS5nZXRTdHJpbmdGb3JMb2NhbGUoXG4gICAgICB7IGxvY2FsZTogJ2VuLVVTJyB9LFxuICAgICAga2V5LFxuICAgICAgLi4uYXJncyxcbiAgICApO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2t5LWF2YXRhclwiPlxuICA8ZGl2ICpuZ0lmPVwiY2FuQ2hhbmdlXCI+XG4gICAgPGRpdiBjbGFzcz1cInNreS1hdmF0YXItZmlsZS1kcm9wXCI+XG4gICAgICA8c2t5LWZpbGUtZHJvcFxuICAgICAgICBbYWNjZXB0ZWRUeXBlc109XCInaW1hZ2UvKidcIlxuICAgICAgICBbZmlsZVVwbG9hZEFyaWFMYWJlbF09XCJcbiAgICAgICAgICBzcmNcbiAgICAgICAgICAgID8gKCdza3l1eF9hdmF0YXJfdXBsb2FkX2NoYW5nZV9hcmlhX2xhYmVsJyB8IHNreUxpYlJlc291cmNlczogbmFtZSlcbiAgICAgICAgICAgIDogKCdza3l1eF9hdmF0YXJfdXBsb2FkX25ld19hcmlhX2xhYmVsJyB8IHNreUxpYlJlc291cmNlczogbmFtZSlcbiAgICAgICAgXCJcbiAgICAgICAgW211bHRpcGxlXT1cImZhbHNlXCJcbiAgICAgICAgW21heEZpbGVTaXplXT1cIm1heEZpbGVTaXplXCJcbiAgICAgICAgW211bHRpcGxlXT1cImZhbHNlXCJcbiAgICAgICAgKGZpbGVzQ2hhbmdlZCk9XCJwaG90b0Ryb3AoJGV2ZW50KVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpbm5lclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L3NreS1maWxlLWRyb3A+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiIWNhbkNoYW5nZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpbm5lclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjaW5uZXJUZW1wbGF0ZT5cbiAgPHNreS1hdmF0YXItaW5uZXJcbiAgICBbbmFtZV09XCJuYW1lXCJcbiAgICBbc2l6ZV09XCJzaXplID8/IChzaXplRGVmYXVsdCB8IGFzeW5jKSA/PyAnbGFyZ2UnXCJcbiAgICBbc3JjXT1cInNyY1wiXG4gID48L3NreS1hdmF0YXItaW5uZXI+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -200,7 +200,7 @@ function getInitial(name) {
|
|
|
200
200
|
return name.charAt(0).toUpperCase();
|
|
201
201
|
}
|
|
202
202
|
|
|
203
|
-
const MAX_FILE_SIZE_DEFAULT =
|
|
203
|
+
const MAX_FILE_SIZE_DEFAULT = 512000;
|
|
204
204
|
class SkyAvatarComponent {
|
|
205
205
|
/**
|
|
206
206
|
* Whether users can change the image. To select a different image,
|
|
@@ -249,7 +249,7 @@ class SkyAvatarComponent {
|
|
|
249
249
|
constructor(errorService, fileSizePipe, resourcesService) {
|
|
250
250
|
/**
|
|
251
251
|
* The maximum file size for the image in bytes.
|
|
252
|
-
* @default
|
|
252
|
+
* @default 512000 bytes
|
|
253
253
|
*/
|
|
254
254
|
this.maxFileSize = MAX_FILE_SIZE_DEFAULT;
|
|
255
255
|
/**
|
|
@@ -302,7 +302,7 @@ class SkyAvatarComponent {
|
|
|
302
302
|
return this.#resourcesService.getStringForLocale({ locale: 'en-US' }, key, ...args);
|
|
303
303
|
}
|
|
304
304
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: SkyAvatarComponent, deps: [{ token: i1.SkyErrorModalService }, { token: i2.SkyFileSizePipe }, { token: i3$1.SkyLibResourcesService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
305
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: SkyAvatarComponent, selector: "sky-avatar", inputs: { canChange: "canChange", name: "name", src: "src", maxFileSize: "maxFileSize", size: "size" }, outputs: { avatarChanged: "avatarChanged" }, ngImport: i0, template: "<div class=\"sky-avatar\">\n <div *ngIf=\"canChange\">\n <div class=\"sky-avatar-file-drop\">\n <sky-file-drop\n [acceptedTypes]=\"'image/*'\"\n [fileUploadAriaLabel]=\"\n src\n ? ('skyux_avatar_upload_change_aria_label' | skyLibResources: name)\n : ('skyux_avatar_upload_new_aria_label' | skyLibResources: name)\n \"\n [multiple]=\"false\"\n [maxFileSize]=\"maxFileSize\"\n [multiple]=\"false\"\n (filesChanged)=\"photoDrop($event)\"\n >\n <ng-container *ngTemplateOutlet=\"innerTemplate\"></ng-container>\n </sky-file-drop>\n </div>\n </div>\n <div *ngIf=\"!canChange\">\n <ng-container *ngTemplateOutlet=\"innerTemplate\"></ng-container>\n </div>\n</div>\n\n<ng-template #innerTemplate>\n <sky-avatar-inner\n [name]=\"name\"\n [size]=\"size ?? (sizeDefault | async) ?? 'large'\"\n [src]=\"src\"\n ></sky-avatar-inner>\n</ng-template>\n", styles: [".sky-avatar .sky-file-drop-col{flex-basis:initial}.sky-theme-modern .sky-file-drop:focus{outline:none}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.λ8, selector: "sky-file-drop", inputs: ["fileUploadAriaLabel", "linkUploadAriaLabel", "minFileSize", "maxFileSize", "multiple", "validateFn", "acceptedTypes", "noClick", "allowLinks"], outputs: ["filesChanged", "linkInputBlur", "linkChanged"] }, { kind: "component", type: SkyAvatarInnerComponent, selector: "sky-avatar-inner", inputs: ["src", "name", "size"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.SkyLibResourcesPipe, name: "skyLibResources" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
305
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: SkyAvatarComponent, selector: "sky-avatar", inputs: { canChange: "canChange", name: "name", src: "src", maxFileSize: "maxFileSize", size: "size" }, outputs: { avatarChanged: "avatarChanged" }, ngImport: i0, template: "<div class=\"sky-avatar\">\n <div *ngIf=\"canChange\">\n <div class=\"sky-avatar-file-drop\">\n <sky-file-drop\n [acceptedTypes]=\"'image/*'\"\n [fileUploadAriaLabel]=\"\n src\n ? ('skyux_avatar_upload_change_aria_label' | skyLibResources: name)\n : ('skyux_avatar_upload_new_aria_label' | skyLibResources: name)\n \"\n [multiple]=\"false\"\n [maxFileSize]=\"maxFileSize\"\n [multiple]=\"false\"\n (filesChanged)=\"photoDrop($event)\"\n >\n <ng-container *ngTemplateOutlet=\"innerTemplate\"></ng-container>\n </sky-file-drop>\n </div>\n </div>\n <div *ngIf=\"!canChange\">\n <ng-container *ngTemplateOutlet=\"innerTemplate\"></ng-container>\n </div>\n</div>\n\n<ng-template #innerTemplate>\n <sky-avatar-inner\n [name]=\"name\"\n [size]=\"size ?? (sizeDefault | async) ?? 'large'\"\n [src]=\"src\"\n ></sky-avatar-inner>\n</ng-template>\n", styles: [".sky-avatar .sky-file-drop-col{flex-basis:initial}.sky-theme-modern .sky-file-drop:focus{outline:none}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.λ8, selector: "sky-file-drop", inputs: ["fileUploadAriaLabel", "linkUploadAriaLabel", "minFileSize", "maxFileSize", "multiple", "validateFn", "acceptedTypes", "noClick", "allowLinks", "labelText", "labelHidden"], outputs: ["filesChanged", "linkInputBlur", "linkChanged"] }, { kind: "component", type: SkyAvatarInnerComponent, selector: "sky-avatar-inner", inputs: ["src", "name", "size"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.SkyLibResourcesPipe, name: "skyLibResources" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
306
306
|
}
|
|
307
307
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: SkyAvatarComponent, decorators: [{
|
|
308
308
|
type: Component,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skyux-avatar.mjs","sources":["../../../../../libs/components/avatar/src/lib/modules/shared/sky-avatar-resources.module.ts","../../../../../libs/components/avatar/src/lib/modules/avatar/avatar-adapter.service.ts","../../../../../libs/components/avatar/src/lib/modules/avatar/avatar.inner.component.ts","../../../../../libs/components/avatar/src/lib/modules/avatar/avatar.inner.component.html","../../../../../libs/components/avatar/src/lib/modules/avatar/avatar.component.ts","../../../../../libs/components/avatar/src/lib/modules/avatar/avatar.component.html","../../../../../libs/components/avatar/src/lib/modules/avatar/avatar.module.ts","../../../../../libs/components/avatar/src/skyux-avatar.ts"],"sourcesContent":["/* istanbul ignore file */\n\n/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-avatar' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SKY_LIB_RESOURCES_PROVIDERS,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n SkyLibResourcesService,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: Record<string, SkyLibResources> = {\n 'EN-US': {\n skyux_avatar_error_not_image_description: {\n message: 'Please choose a file that is a valid image.',\n },\n skyux_avatar_error_not_image_title: { message: 'File is not an image.' },\n skyux_avatar_error_too_large_description: {\n message: 'Please choose an image that is less than {0}.',\n },\n skyux_avatar_error_too_large_title: { message: 'File is too large.' },\n skyux_avatar_errormodal_ok: { message: 'OK' },\n skyux_avatar_inner_description: { message: 'Profile picture of {0}' },\n skyux_avatar_upload_change_aria_label: {\n message:\n 'Change profile photo of {0}. Drag a file here or click to browse.',\n },\n skyux_avatar_upload_new_aria_label: {\n message: 'Add profile photo of {0}. Drag a file here or click to browse.',\n },\n },\n};\n\nSkyLibResourcesService.addResources(RESOURCES);\n\nexport class SkyAvatarResourcesProvider implements SkyLibResourcesProvider {\n public getString(\n localeInfo: SkyAppLocaleInfo,\n name: string,\n ): string | undefined {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyAvatarResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyAvatarResourcesModule {}\n","import { ElementRef, Injectable } from '@angular/core';\n\nimport { SkyAvatarSrc } from './avatar-src';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyAvatarAdapterService {\n #blobUrl: string | undefined;\n\n public updateImage(elementRef: ElementRef, src: SkyAvatarSrc) {\n this.#revokeBlobUrl();\n\n const el = elementRef.nativeElement;\n\n /*istanbul ignore else */\n if (el) {\n const imageEl = el.querySelector('.sky-avatar-image');\n\n /*istanbul ignore else */\n if (imageEl) {\n let url = src;\n\n if (src instanceof File || src instanceof Blob) {\n url = this.#createBlobUrl(src);\n }\n\n // Notice the quotes inside the `url` function. This ensures proper url escaping.\n imageEl.style.backgroundImage = 'url(\"' + url + '\")';\n }\n }\n }\n\n public destroy() {\n this.#revokeBlobUrl();\n }\n\n #createBlobUrl(src: Blob | File) {\n const url = URL.createObjectURL(src);\n\n // Keep the last blob URL around so we can revoke it later.\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL\n this.#blobUrl = url;\n return url;\n }\n\n #revokeBlobUrl() {\n if (this.#blobUrl) {\n URL.revokeObjectURL(this.#blobUrl);\n this.#blobUrl = undefined;\n }\n }\n}\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n Input,\n OnDestroy,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { SkyAvatarAdapterService } from './avatar-adapter.service';\nimport { SkyAvatarSize } from './avatar-size';\nimport { SkyAvatarSrc } from './avatar-src';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-avatar-inner',\n templateUrl: './avatar.inner.component.html',\n styleUrls: ['./avatar.inner.component.scss'],\n providers: [SkyAvatarAdapterService],\n encapsulation: ViewEncapsulation.None,\n})\nexport class SkyAvatarInnerComponent implements AfterViewInit, OnDestroy {\n public get src(): SkyAvatarSrc | undefined {\n return this.#_src;\n }\n\n @Input()\n public set src(value: SkyAvatarSrc | undefined) {\n this.#_src = value;\n this.#updateImage();\n }\n\n public get name(): string | undefined {\n return this.#_name;\n }\n\n @Input()\n public set name(value: string | undefined) {\n this.#_name = value;\n\n if (value) {\n // Generate a unique-ish color based on the record name. This is deterministic\n // so that a given name will always generate the same color.\n const seed =\n value.charCodeAt(0) + value.charCodeAt(value.length - 1) + value.length;\n this.#colorIndex = Math.abs(seed % 7);\n } else {\n this.#colorIndex = 0;\n }\n }\n\n @Input()\n public size: SkyAvatarSize | undefined = 'large';\n\n #viewInitialized = false;\n\n #_src: SkyAvatarSrc | undefined;\n\n #_name: string | undefined;\n\n #elementRef: ElementRef;\n #adapter: SkyAvatarAdapterService;\n\n constructor(elementRef: ElementRef, adapter: SkyAvatarAdapterService) {\n this.#elementRef = elementRef;\n this.#adapter = adapter;\n }\n\n public get initials(): string | undefined {\n let initials: string | undefined;\n\n if (this.name) {\n const nameSplit = this.name.split(' ');\n initials = getInitial(nameSplit[0]);\n\n if (nameSplit.length > 1) {\n initials += getInitial(nameSplit[nameSplit.length - 1]);\n }\n }\n\n return initials;\n }\n\n public get colorIndex(): number {\n return this.#colorIndex;\n }\n\n #colorIndex = 0;\n\n public ngAfterViewInit(): void {\n this.#viewInitialized = true;\n this.#updateImage();\n }\n\n public ngOnDestroy(): void {\n this.#adapter.destroy();\n }\n\n #updateImage(): void {\n if (this.#viewInitialized && this.src) {\n this.#adapter.updateImage(this.#elementRef, this.src);\n }\n }\n}\n\nfunction getInitial(name: string): string {\n return name.charAt(0).toUpperCase();\n}\n","<div\n class=\"sky-elevation-1 sky-avatar-wrapper\"\n [ngClass]=\"'sky-avatar-wrapper-size-' + size\"\n>\n <div class=\"sky-avatar-image\" [hidden]=\"!src\"></div>\n <div *ngIf=\"src\" class=\"sky-screen-reader-only\">\n {{ 'skyux_avatar_inner_description' | skyLibResources: name }}\n </div>\n <div\n class=\"sky-avatar-initials\"\n [hidden]=\"src || !name\"\n [ngClass]=\"'sky-avatar-colors-' + (colorIndex + 1)\"\n >\n <div\n *ngIf=\"size === 'small'\"\n class=\"sky-avatar-initials-inner\"\n [skyThemeClass]=\"{\n 'sky-font-body-sm': 'modern'\n }\"\n >\n {{ initials }}\n </div>\n <div\n *ngIf=\"size === 'medium'\"\n class=\"sky-avatar-initials-inner\"\n [skyThemeClass]=\"{\n 'sky-font-display-3': 'modern'\n }\"\n >\n {{ initials }}\n </div>\n <div\n *ngIf=\"size === 'large'\"\n class=\"sky-avatar-initials-inner\"\n [skyThemeClass]=\"{\n 'sky-font-display-2': 'modern'\n }\"\n >\n {{ initials }}\n </div>\n </div>\n</div>\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n ViewEncapsulation,\n inject,\n} from '@angular/core';\nimport { SkyDefaultInputProvider } from '@skyux/core';\nimport { ErrorModalConfig, SkyErrorModalService } from '@skyux/errors';\nimport { SkyFileDropChange, SkyFileItem, SkyFileSizePipe } from '@skyux/forms';\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { Observable } from 'rxjs';\n\nimport { SkyAvatarSize } from './avatar-size';\nimport { SkyAvatarSrc } from './avatar-src';\n\nconst MAX_FILE_SIZE_DEFAULT = 500000;\n\n@Component({\n selector: 'sky-avatar',\n templateUrl: './avatar.component.html',\n styleUrls: ['./avatar.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class SkyAvatarComponent {\n /**\n * Whether users can change the image. To select a different image,\n * users click the image or drag another image on top of it,\n * much like the `sky-file-drop` component in the\n * [file attachment module](https://developer.blackbaud.com/skyux/components/file-attachments/file-attachment).\n * @default false\n */\n @Input()\n public set canChange(value: boolean | undefined) {\n this.#_canChange = !!value;\n }\n\n public get canChange(): boolean {\n return this.#_canChange;\n }\n\n /**\n * The name of the record that the avatar represents.\n * If the `src` property does not specify an image, the component displays\n * initials from the first and last words in the name. To ensure\n * that the component extracts the correct initials, specify a name with no prefix\n * or suffix, or just specify initials with a space between them. This property is\n * not required, but the component requires either the `name` or `src` property.\n */\n @Input()\n public set name(value: string | undefined) {\n this.#_name = value;\n }\n\n public get name(): string | undefined {\n return this.#_name;\n }\n\n /**\n * The image to identify a record. This property is\n * not required, but the component requires either the `name` or `src` property.\n */\n @Input()\n public set src(value: SkyAvatarSrc | undefined) {\n this.#_src = value;\n }\n\n public get src(): SkyAvatarSrc | undefined {\n return this.#_src;\n }\n\n /**\n * The maximum file size for the image in bytes.\n * @default 500000 bytes\n */\n @Input()\n public maxFileSize: number | undefined = MAX_FILE_SIZE_DEFAULT;\n\n /**\n * The size of the avatar.\n * Acceptable values are: `\"small\"`, `\"medium\"`, and `\"large\"`.\n * @default \"large\"\n */\n @Input()\n public size: SkyAvatarSize | undefined;\n\n /**\n * Emits a `SkyFileItem` object when the image is updated.\n */\n @Output()\n public avatarChanged = new EventEmitter<SkyFileItem>();\n\n protected sizeDefault: Observable<SkyAvatarSize> | undefined;\n\n #_canChange = false;\n\n #_name: string | undefined;\n\n #_src: SkyAvatarSrc | undefined;\n\n #errorService: SkyErrorModalService;\n #fileSizePipe: SkyFileSizePipe;\n #resourcesService: SkyLibResourcesService;\n\n #defaultInputProvider = inject(SkyDefaultInputProvider, { optional: true });\n\n constructor(\n errorService: SkyErrorModalService,\n fileSizePipe: SkyFileSizePipe,\n resourcesService: SkyLibResourcesService,\n ) {\n this.#errorService = errorService;\n this.#fileSizePipe = fileSizePipe;\n this.#resourcesService = resourcesService;\n\n this.sizeDefault = this.#defaultInputProvider?.getValue<SkyAvatarSize>(\n 'avatar',\n 'size',\n );\n }\n\n public photoDrop(result: SkyFileDropChange): void {\n /* sanity check */\n /* istanbul ignore else */\n if (result.files && result.files.length > 0) {\n this.avatarChanged.emit(result.files[0]);\n } else if (result.rejectedFiles && result.rejectedFiles.length > 0) {\n this.#handleError(result.rejectedFiles);\n }\n }\n\n #handleError(rejectedFiles: SkyFileItem[]): void {\n const rejectedFile = rejectedFiles[0];\n\n if (rejectedFile.errorType === 'maxFileSize') {\n const title = this.#getString('skyux_avatar_error_too_large_title');\n const description = this.#getString(\n 'skyux_avatar_error_too_large_description',\n this.#maxFileSizeText(),\n );\n\n this.#openErrorModal(title, description);\n } else if (rejectedFile.errorType === 'fileType') {\n const title = this.#getString('skyux_avatar_error_not_image_title');\n const description = this.#getString(\n 'skyux_avatar_error_not_image_description',\n );\n\n this.#openErrorModal(title, description);\n }\n }\n\n #maxFileSizeText(): string {\n return this.#fileSizePipe.transform(this.maxFileSize);\n }\n\n #openErrorModal(title: string, description: string): void {\n const config: ErrorModalConfig = {\n errorTitle: title,\n errorDescription: description,\n errorCloseText: this.#getString('skyux_avatar_errormodal_ok'),\n };\n\n this.#errorService.open(config);\n }\n\n #getString(key: string, ...args: any[]): string {\n // TODO: Need to implement the async `getString` method in a breaking change.\n return this.#resourcesService.getStringForLocale(\n { locale: 'en-US' },\n key,\n ...args,\n );\n }\n}\n","<div class=\"sky-avatar\">\n <div *ngIf=\"canChange\">\n <div class=\"sky-avatar-file-drop\">\n <sky-file-drop\n [acceptedTypes]=\"'image/*'\"\n [fileUploadAriaLabel]=\"\n src\n ? ('skyux_avatar_upload_change_aria_label' | skyLibResources: name)\n : ('skyux_avatar_upload_new_aria_label' | skyLibResources: name)\n \"\n [multiple]=\"false\"\n [maxFileSize]=\"maxFileSize\"\n [multiple]=\"false\"\n (filesChanged)=\"photoDrop($event)\"\n >\n <ng-container *ngTemplateOutlet=\"innerTemplate\"></ng-container>\n </sky-file-drop>\n </div>\n </div>\n <div *ngIf=\"!canChange\">\n <ng-container *ngTemplateOutlet=\"innerTemplate\"></ng-container>\n </div>\n</div>\n\n<ng-template #innerTemplate>\n <sky-avatar-inner\n [name]=\"name\"\n [size]=\"size ?? (sizeDefault | async) ?? 'large'\"\n [src]=\"src\"\n ></sky-avatar-inner>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyErrorModule } from '@skyux/errors';\nimport { SkyFileAttachmentsModule, SkyFileSizePipe } from '@skyux/forms';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyAvatarResourcesModule } from '../shared/sky-avatar-resources.module';\n\nimport { SkyAvatarComponent } from './avatar.component';\nimport { SkyAvatarInnerComponent } from './avatar.inner.component';\n\n@NgModule({\n declarations: [SkyAvatarInnerComponent, SkyAvatarComponent],\n imports: [\n CommonModule,\n SkyAvatarResourcesModule,\n SkyErrorModule,\n SkyFileAttachmentsModule,\n SkyThemeModule,\n ],\n providers: [SkyFileSizePipe],\n exports: [SkyAvatarComponent],\n})\nexport class SkyAvatarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.SkyAvatarAdapterService","i2","i4","i3","i5.SkyAvatarInnerComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skyux-avatar.mjs","sources":["../../../../../libs/components/avatar/src/lib/modules/shared/sky-avatar-resources.module.ts","../../../../../libs/components/avatar/src/lib/modules/avatar/avatar-adapter.service.ts","../../../../../libs/components/avatar/src/lib/modules/avatar/avatar.inner.component.ts","../../../../../libs/components/avatar/src/lib/modules/avatar/avatar.inner.component.html","../../../../../libs/components/avatar/src/lib/modules/avatar/avatar.component.ts","../../../../../libs/components/avatar/src/lib/modules/avatar/avatar.component.html","../../../../../libs/components/avatar/src/lib/modules/avatar/avatar.module.ts","../../../../../libs/components/avatar/src/skyux-avatar.ts"],"sourcesContent":["/* istanbul ignore file */\n\n/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-avatar' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SKY_LIB_RESOURCES_PROVIDERS,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n SkyLibResourcesService,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: Record<string, SkyLibResources> = {\n 'EN-US': {\n skyux_avatar_error_not_image_description: {\n message: 'Please choose a file that is a valid image.',\n },\n skyux_avatar_error_not_image_title: { message: 'File is not an image.' },\n skyux_avatar_error_too_large_description: {\n message: 'Please choose an image that is less than {0}.',\n },\n skyux_avatar_error_too_large_title: { message: 'File is too large.' },\n skyux_avatar_errormodal_ok: { message: 'OK' },\n skyux_avatar_inner_description: { message: 'Profile picture of {0}' },\n skyux_avatar_upload_change_aria_label: {\n message:\n 'Change profile photo of {0}. Drag a file here or click to browse.',\n },\n skyux_avatar_upload_new_aria_label: {\n message: 'Add profile photo of {0}. Drag a file here or click to browse.',\n },\n },\n};\n\nSkyLibResourcesService.addResources(RESOURCES);\n\nexport class SkyAvatarResourcesProvider implements SkyLibResourcesProvider {\n public getString(\n localeInfo: SkyAppLocaleInfo,\n name: string,\n ): string | undefined {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyAvatarResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyAvatarResourcesModule {}\n","import { ElementRef, Injectable } from '@angular/core';\n\nimport { SkyAvatarSrc } from './avatar-src';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyAvatarAdapterService {\n #blobUrl: string | undefined;\n\n public updateImage(elementRef: ElementRef, src: SkyAvatarSrc) {\n this.#revokeBlobUrl();\n\n const el = elementRef.nativeElement;\n\n /*istanbul ignore else */\n if (el) {\n const imageEl = el.querySelector('.sky-avatar-image');\n\n /*istanbul ignore else */\n if (imageEl) {\n let url = src;\n\n if (src instanceof File || src instanceof Blob) {\n url = this.#createBlobUrl(src);\n }\n\n // Notice the quotes inside the `url` function. This ensures proper url escaping.\n imageEl.style.backgroundImage = 'url(\"' + url + '\")';\n }\n }\n }\n\n public destroy() {\n this.#revokeBlobUrl();\n }\n\n #createBlobUrl(src: Blob | File) {\n const url = URL.createObjectURL(src);\n\n // Keep the last blob URL around so we can revoke it later.\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL\n this.#blobUrl = url;\n return url;\n }\n\n #revokeBlobUrl() {\n if (this.#blobUrl) {\n URL.revokeObjectURL(this.#blobUrl);\n this.#blobUrl = undefined;\n }\n }\n}\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n Input,\n OnDestroy,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { SkyAvatarAdapterService } from './avatar-adapter.service';\nimport { SkyAvatarSize } from './avatar-size';\nimport { SkyAvatarSrc } from './avatar-src';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-avatar-inner',\n templateUrl: './avatar.inner.component.html',\n styleUrls: ['./avatar.inner.component.scss'],\n providers: [SkyAvatarAdapterService],\n encapsulation: ViewEncapsulation.None,\n})\nexport class SkyAvatarInnerComponent implements AfterViewInit, OnDestroy {\n public get src(): SkyAvatarSrc | undefined {\n return this.#_src;\n }\n\n @Input()\n public set src(value: SkyAvatarSrc | undefined) {\n this.#_src = value;\n this.#updateImage();\n }\n\n public get name(): string | undefined {\n return this.#_name;\n }\n\n @Input()\n public set name(value: string | undefined) {\n this.#_name = value;\n\n if (value) {\n // Generate a unique-ish color based on the record name. This is deterministic\n // so that a given name will always generate the same color.\n const seed =\n value.charCodeAt(0) + value.charCodeAt(value.length - 1) + value.length;\n this.#colorIndex = Math.abs(seed % 7);\n } else {\n this.#colorIndex = 0;\n }\n }\n\n @Input()\n public size: SkyAvatarSize | undefined = 'large';\n\n #viewInitialized = false;\n\n #_src: SkyAvatarSrc | undefined;\n\n #_name: string | undefined;\n\n #elementRef: ElementRef;\n #adapter: SkyAvatarAdapterService;\n\n constructor(elementRef: ElementRef, adapter: SkyAvatarAdapterService) {\n this.#elementRef = elementRef;\n this.#adapter = adapter;\n }\n\n public get initials(): string | undefined {\n let initials: string | undefined;\n\n if (this.name) {\n const nameSplit = this.name.split(' ');\n initials = getInitial(nameSplit[0]);\n\n if (nameSplit.length > 1) {\n initials += getInitial(nameSplit[nameSplit.length - 1]);\n }\n }\n\n return initials;\n }\n\n public get colorIndex(): number {\n return this.#colorIndex;\n }\n\n #colorIndex = 0;\n\n public ngAfterViewInit(): void {\n this.#viewInitialized = true;\n this.#updateImage();\n }\n\n public ngOnDestroy(): void {\n this.#adapter.destroy();\n }\n\n #updateImage(): void {\n if (this.#viewInitialized && this.src) {\n this.#adapter.updateImage(this.#elementRef, this.src);\n }\n }\n}\n\nfunction getInitial(name: string): string {\n return name.charAt(0).toUpperCase();\n}\n","<div\n class=\"sky-elevation-1 sky-avatar-wrapper\"\n [ngClass]=\"'sky-avatar-wrapper-size-' + size\"\n>\n <div class=\"sky-avatar-image\" [hidden]=\"!src\"></div>\n <div *ngIf=\"src\" class=\"sky-screen-reader-only\">\n {{ 'skyux_avatar_inner_description' | skyLibResources: name }}\n </div>\n <div\n class=\"sky-avatar-initials\"\n [hidden]=\"src || !name\"\n [ngClass]=\"'sky-avatar-colors-' + (colorIndex + 1)\"\n >\n <div\n *ngIf=\"size === 'small'\"\n class=\"sky-avatar-initials-inner\"\n [skyThemeClass]=\"{\n 'sky-font-body-sm': 'modern'\n }\"\n >\n {{ initials }}\n </div>\n <div\n *ngIf=\"size === 'medium'\"\n class=\"sky-avatar-initials-inner\"\n [skyThemeClass]=\"{\n 'sky-font-display-3': 'modern'\n }\"\n >\n {{ initials }}\n </div>\n <div\n *ngIf=\"size === 'large'\"\n class=\"sky-avatar-initials-inner\"\n [skyThemeClass]=\"{\n 'sky-font-display-2': 'modern'\n }\"\n >\n {{ initials }}\n </div>\n </div>\n</div>\n","import {\n Component,\n EventEmitter,\n Input,\n Output,\n ViewEncapsulation,\n inject,\n} from '@angular/core';\nimport { SkyDefaultInputProvider } from '@skyux/core';\nimport { ErrorModalConfig, SkyErrorModalService } from '@skyux/errors';\nimport { SkyFileDropChange, SkyFileItem, SkyFileSizePipe } from '@skyux/forms';\nimport { SkyLibResourcesService } from '@skyux/i18n';\n\nimport { Observable } from 'rxjs';\n\nimport { SkyAvatarSize } from './avatar-size';\nimport { SkyAvatarSrc } from './avatar-src';\n\nconst MAX_FILE_SIZE_DEFAULT = 512000;\n\n@Component({\n selector: 'sky-avatar',\n templateUrl: './avatar.component.html',\n styleUrls: ['./avatar.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class SkyAvatarComponent {\n /**\n * Whether users can change the image. To select a different image,\n * users click the image or drag another image on top of it,\n * much like the `sky-file-drop` component in the\n * [file attachment module](https://developer.blackbaud.com/skyux/components/file-attachments/file-attachment).\n * @default false\n */\n @Input()\n public set canChange(value: boolean | undefined) {\n this.#_canChange = !!value;\n }\n\n public get canChange(): boolean {\n return this.#_canChange;\n }\n\n /**\n * The name of the record that the avatar represents.\n * If the `src` property does not specify an image, the component displays\n * initials from the first and last words in the name. To ensure\n * that the component extracts the correct initials, specify a name with no prefix\n * or suffix, or just specify initials with a space between them. This property is\n * not required, but the component requires either the `name` or `src` property.\n */\n @Input()\n public set name(value: string | undefined) {\n this.#_name = value;\n }\n\n public get name(): string | undefined {\n return this.#_name;\n }\n\n /**\n * The image to identify a record. This property is\n * not required, but the component requires either the `name` or `src` property.\n */\n @Input()\n public set src(value: SkyAvatarSrc | undefined) {\n this.#_src = value;\n }\n\n public get src(): SkyAvatarSrc | undefined {\n return this.#_src;\n }\n\n /**\n * The maximum file size for the image in bytes.\n * @default 512000 bytes\n */\n @Input()\n public maxFileSize: number | undefined = MAX_FILE_SIZE_DEFAULT;\n\n /**\n * The size of the avatar.\n * Acceptable values are: `\"small\"`, `\"medium\"`, and `\"large\"`.\n * @default \"large\"\n */\n @Input()\n public size: SkyAvatarSize | undefined;\n\n /**\n * Emits a `SkyFileItem` object when the image is updated.\n */\n @Output()\n public avatarChanged = new EventEmitter<SkyFileItem>();\n\n protected sizeDefault: Observable<SkyAvatarSize> | undefined;\n\n #_canChange = false;\n\n #_name: string | undefined;\n\n #_src: SkyAvatarSrc | undefined;\n\n #errorService: SkyErrorModalService;\n #fileSizePipe: SkyFileSizePipe;\n #resourcesService: SkyLibResourcesService;\n\n #defaultInputProvider = inject(SkyDefaultInputProvider, { optional: true });\n\n constructor(\n errorService: SkyErrorModalService,\n fileSizePipe: SkyFileSizePipe,\n resourcesService: SkyLibResourcesService,\n ) {\n this.#errorService = errorService;\n this.#fileSizePipe = fileSizePipe;\n this.#resourcesService = resourcesService;\n\n this.sizeDefault = this.#defaultInputProvider?.getValue<SkyAvatarSize>(\n 'avatar',\n 'size',\n );\n }\n\n public photoDrop(result: SkyFileDropChange): void {\n /* sanity check */\n /* istanbul ignore else */\n if (result.files && result.files.length > 0) {\n this.avatarChanged.emit(result.files[0]);\n } else if (result.rejectedFiles && result.rejectedFiles.length > 0) {\n this.#handleError(result.rejectedFiles);\n }\n }\n\n #handleError(rejectedFiles: SkyFileItem[]): void {\n const rejectedFile = rejectedFiles[0];\n\n if (rejectedFile.errorType === 'maxFileSize') {\n const title = this.#getString('skyux_avatar_error_too_large_title');\n const description = this.#getString(\n 'skyux_avatar_error_too_large_description',\n this.#maxFileSizeText(),\n );\n\n this.#openErrorModal(title, description);\n } else if (rejectedFile.errorType === 'fileType') {\n const title = this.#getString('skyux_avatar_error_not_image_title');\n const description = this.#getString(\n 'skyux_avatar_error_not_image_description',\n );\n\n this.#openErrorModal(title, description);\n }\n }\n\n #maxFileSizeText(): string {\n return this.#fileSizePipe.transform(this.maxFileSize);\n }\n\n #openErrorModal(title: string, description: string): void {\n const config: ErrorModalConfig = {\n errorTitle: title,\n errorDescription: description,\n errorCloseText: this.#getString('skyux_avatar_errormodal_ok'),\n };\n\n this.#errorService.open(config);\n }\n\n #getString(key: string, ...args: any[]): string {\n // TODO: Need to implement the async `getString` method in a breaking change.\n return this.#resourcesService.getStringForLocale(\n { locale: 'en-US' },\n key,\n ...args,\n );\n }\n}\n","<div class=\"sky-avatar\">\n <div *ngIf=\"canChange\">\n <div class=\"sky-avatar-file-drop\">\n <sky-file-drop\n [acceptedTypes]=\"'image/*'\"\n [fileUploadAriaLabel]=\"\n src\n ? ('skyux_avatar_upload_change_aria_label' | skyLibResources: name)\n : ('skyux_avatar_upload_new_aria_label' | skyLibResources: name)\n \"\n [multiple]=\"false\"\n [maxFileSize]=\"maxFileSize\"\n [multiple]=\"false\"\n (filesChanged)=\"photoDrop($event)\"\n >\n <ng-container *ngTemplateOutlet=\"innerTemplate\"></ng-container>\n </sky-file-drop>\n </div>\n </div>\n <div *ngIf=\"!canChange\">\n <ng-container *ngTemplateOutlet=\"innerTemplate\"></ng-container>\n </div>\n</div>\n\n<ng-template #innerTemplate>\n <sky-avatar-inner\n [name]=\"name\"\n [size]=\"size ?? (sizeDefault | async) ?? 'large'\"\n [src]=\"src\"\n ></sky-avatar-inner>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyErrorModule } from '@skyux/errors';\nimport { SkyFileAttachmentsModule, SkyFileSizePipe } from '@skyux/forms';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyAvatarResourcesModule } from '../shared/sky-avatar-resources.module';\n\nimport { SkyAvatarComponent } from './avatar.component';\nimport { SkyAvatarInnerComponent } from './avatar.inner.component';\n\n@NgModule({\n declarations: [SkyAvatarInnerComponent, SkyAvatarComponent],\n imports: [\n CommonModule,\n SkyAvatarResourcesModule,\n SkyErrorModule,\n SkyFileAttachmentsModule,\n SkyThemeModule,\n ],\n providers: [SkyFileSizePipe],\n exports: [SkyAvatarComponent],\n})\nexport class SkyAvatarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.SkyAvatarAdapterService","i2","i4","i3","i5.SkyAvatarInnerComponent"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skyux/avatar",
|
|
3
|
-
"version": "10.
|
|
3
|
+
"version": "10.1.0",
|
|
4
4
|
"author": "Blackbaud, Inc.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"blackbaud",
|
|
@@ -39,12 +39,12 @@
|
|
|
39
39
|
"@angular/common": "^17.3.1",
|
|
40
40
|
"@angular/core": "^17.3.1",
|
|
41
41
|
"@angular/platform-browser": "^17.3.1",
|
|
42
|
-
"@skyux-sdk/testing": "10.
|
|
43
|
-
"@skyux/core": "10.
|
|
44
|
-
"@skyux/errors": "10.
|
|
45
|
-
"@skyux/forms": "10.
|
|
46
|
-
"@skyux/i18n": "10.
|
|
47
|
-
"@skyux/theme": "10.
|
|
42
|
+
"@skyux-sdk/testing": "10.1.0",
|
|
43
|
+
"@skyux/core": "10.1.0",
|
|
44
|
+
"@skyux/errors": "10.1.0",
|
|
45
|
+
"@skyux/forms": "10.1.0",
|
|
46
|
+
"@skyux/i18n": "10.1.0",
|
|
47
|
+
"@skyux/theme": "10.1.0"
|
|
48
48
|
},
|
|
49
49
|
"dependencies": {
|
|
50
50
|
"tslib": "^2.6.2"
|