@skyux/avatar 12.0.0-alpha.0 → 12.0.0-alpha.2

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.
@@ -33,7 +33,7 @@
33
33
  "fileName": "projects/avatar/src/modules/avatar/avatar.module.ts",
34
34
  "line": 24,
35
35
  "character": 13,
36
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.module.ts#L24"
36
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.module.ts#L24"
37
37
  }
38
38
  ],
39
39
  "decorators": [
@@ -63,7 +63,7 @@
63
63
  "fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
64
64
  "line": 110,
65
65
  "character": 2,
66
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L110"
66
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L110"
67
67
  }
68
68
  ],
69
69
  "signatures": [
@@ -78,7 +78,7 @@
78
78
  "fileName": "libs/components/avatar/src/lib/modules/avatar/avatar.component.ts",
79
79
  "line": 110,
80
80
  "character": 2,
81
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L110"
81
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L110"
82
82
  }
83
83
  ],
84
84
  "parameters": [
@@ -169,7 +169,7 @@
169
169
  "fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
170
170
  "line": 94,
171
171
  "character": 9,
172
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L94"
172
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L94"
173
173
  }
174
174
  ],
175
175
  "type": {
@@ -231,7 +231,7 @@
231
231
  "fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
232
232
  "line": 80,
233
233
  "character": 9,
234
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L80"
234
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L80"
235
235
  }
236
236
  ],
237
237
  "type": {
@@ -301,7 +301,7 @@
301
301
  "fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
302
302
  "line": 88,
303
303
  "character": 9,
304
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L88"
304
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L88"
305
305
  }
306
306
  ],
307
307
  "type": {
@@ -329,13 +329,13 @@
329
329
  "fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
330
330
  "line": 37,
331
331
  "character": 13,
332
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L37"
332
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L37"
333
333
  },
334
334
  {
335
335
  "fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
336
336
  "line": 41,
337
337
  "character": 13,
338
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L41"
338
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L41"
339
339
  }
340
340
  ],
341
341
  "getSignature": {
@@ -348,8 +348,8 @@
348
348
  {
349
349
  "fileName": "libs/components/avatar/src/lib/modules/avatar/avatar.component.ts",
350
350
  "line": 41,
351
- "character": 13,
352
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L41"
351
+ "character": 2,
352
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L41"
353
353
  }
354
354
  ],
355
355
  "type": {
@@ -393,9 +393,9 @@
393
393
  "sources": [
394
394
  {
395
395
  "fileName": "libs/components/avatar/src/lib/modules/avatar/avatar.component.ts",
396
- "line": 37,
397
- "character": 13,
398
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L37"
396
+ "line": 36,
397
+ "character": 2,
398
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L36"
399
399
  }
400
400
  ],
401
401
  "parameters": [
@@ -435,13 +435,13 @@
435
435
  "fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
436
436
  "line": 54,
437
437
  "character": 13,
438
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L54"
438
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L54"
439
439
  },
440
440
  {
441
441
  "fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
442
442
  "line": 58,
443
443
  "character": 13,
444
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L58"
444
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L58"
445
445
  }
446
446
  ],
447
447
  "getSignature": {
@@ -454,8 +454,8 @@
454
454
  {
455
455
  "fileName": "libs/components/avatar/src/lib/modules/avatar/avatar.component.ts",
456
456
  "line": 58,
457
- "character": 13,
458
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L58"
457
+ "character": 2,
458
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L58"
459
459
  }
460
460
  ],
461
461
  "type": {
@@ -504,9 +504,9 @@
504
504
  "sources": [
505
505
  {
506
506
  "fileName": "libs/components/avatar/src/lib/modules/avatar/avatar.component.ts",
507
- "line": 54,
508
- "character": 13,
509
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L54"
507
+ "line": 53,
508
+ "character": 2,
509
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L53"
510
510
  }
511
511
  ],
512
512
  "parameters": [
@@ -546,13 +546,13 @@
546
546
  "fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
547
547
  "line": 67,
548
548
  "character": 13,
549
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L67"
549
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L67"
550
550
  },
551
551
  {
552
552
  "fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
553
553
  "line": 71,
554
554
  "character": 13,
555
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L71"
555
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L71"
556
556
  }
557
557
  ],
558
558
  "getSignature": {
@@ -565,8 +565,8 @@
565
565
  {
566
566
  "fileName": "libs/components/avatar/src/lib/modules/avatar/avatar.component.ts",
567
567
  "line": 71,
568
- "character": 13,
569
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L71"
568
+ "character": 2,
569
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L71"
570
570
  }
571
571
  ],
572
572
  "type": {
@@ -609,9 +609,9 @@
609
609
  "sources": [
610
610
  {
611
611
  "fileName": "libs/components/avatar/src/lib/modules/avatar/avatar.component.ts",
612
- "line": 67,
613
- "character": 13,
614
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L67"
612
+ "line": 66,
613
+ "character": 2,
614
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L66"
615
615
  }
616
616
  ],
617
617
  "parameters": [
@@ -653,7 +653,7 @@
653
653
  "fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
654
654
  "line": 125,
655
655
  "character": 9,
656
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L125"
656
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L125"
657
657
  }
658
658
  ],
659
659
  "signatures": [
@@ -667,8 +667,8 @@
667
667
  {
668
668
  "fileName": "libs/components/avatar/src/lib/modules/avatar/avatar.component.ts",
669
669
  "line": 125,
670
- "character": 9,
671
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L125"
670
+ "character": 2,
671
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L125"
672
672
  }
673
673
  ],
674
674
  "parameters": [
@@ -733,7 +733,7 @@
733
733
  "fileName": "projects/avatar/src/modules/avatar/avatar.component.ts",
734
734
  "line": 28,
735
735
  "character": 13,
736
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L28"
736
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar.component.ts#L28"
737
737
  }
738
738
  ],
739
739
  "decorators": [
@@ -749,14 +749,14 @@
749
749
  "id": 3,
750
750
  "name": "SkyAvatarSize",
751
751
  "variant": "declaration",
752
- "kind": 2097152,
752
+ "kind": 4194304,
753
753
  "flags": {},
754
754
  "sources": [
755
755
  {
756
756
  "fileName": "projects/avatar/src/modules/avatar/avatar-size.ts",
757
757
  "line": 1,
758
758
  "character": 12,
759
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar-size.ts#L1"
759
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar-size.ts#L1"
760
760
  }
761
761
  ],
762
762
  "type": {
@@ -781,14 +781,14 @@
781
781
  "id": 4,
782
782
  "name": "SkyAvatarSrc",
783
783
  "variant": "declaration",
784
- "kind": 2097152,
784
+ "kind": 4194304,
785
785
  "flags": {},
786
786
  "sources": [
787
787
  {
788
788
  "fileName": "projects/avatar/src/modules/avatar/avatar-src.ts",
789
789
  "line": 1,
790
790
  "character": 12,
791
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/src/lib/modules/avatar/avatar-src.ts#L1"
791
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/src/lib/modules/avatar/avatar-src.ts#L1"
792
792
  }
793
793
  ],
794
794
  "type": {
@@ -801,7 +801,7 @@
801
801
  {
802
802
  "type": "reference",
803
803
  "target": {
804
- "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts",
804
+ "sourceFileName": "node_modules/@skyux/dev-infra-private/node_modules/typescript/lib/lib.dom.d.ts",
805
805
  "qualifiedName": "Blob"
806
806
  },
807
807
  "name": "Blob",
@@ -810,7 +810,7 @@
810
810
  {
811
811
  "type": "reference",
812
812
  "target": {
813
- "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts",
813
+ "sourceFileName": "node_modules/@skyux/dev-infra-private/node_modules/typescript/lib/lib.dom.d.ts",
814
814
  "qualifiedName": "File"
815
815
  },
816
816
  "name": "File",
@@ -911,7 +911,7 @@
911
911
  "fileName": "projects/avatar/src/testing/modules/avatar/avatar-harness.ts",
912
912
  "line": 116,
913
913
  "character": 15,
914
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L116"
914
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L116"
915
915
  }
916
916
  ],
917
917
  "signatures": [
@@ -933,14 +933,14 @@
933
933
  {
934
934
  "fileName": "libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts",
935
935
  "line": 116,
936
- "character": 15,
937
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L116"
936
+ "character": 2,
937
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L116"
938
938
  }
939
939
  ],
940
940
  "type": {
941
941
  "type": "reference",
942
942
  "target": {
943
- "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts",
943
+ "sourceFileName": "node_modules/@skyux/dev-infra-private/node_modules/typescript/lib/lib.es5.d.ts",
944
944
  "qualifiedName": "Promise"
945
945
  },
946
946
  "typeArguments": [
@@ -969,7 +969,7 @@
969
969
  "fileName": "projects/avatar/src/testing/modules/avatar/avatar-harness.ts",
970
970
  "line": 76,
971
971
  "character": 15,
972
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L76"
972
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L76"
973
973
  }
974
974
  ],
975
975
  "signatures": [
@@ -991,8 +991,8 @@
991
991
  {
992
992
  "fileName": "libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts",
993
993
  "line": 76,
994
- "character": 15,
995
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L76"
994
+ "character": 2,
995
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L76"
996
996
  }
997
997
  ],
998
998
  "parameters": [
@@ -1005,7 +1005,7 @@
1005
1005
  "type": {
1006
1006
  "type": "reference",
1007
1007
  "target": {
1008
- "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts",
1008
+ "sourceFileName": "node_modules/@skyux/dev-infra-private/node_modules/typescript/lib/lib.dom.d.ts",
1009
1009
  "qualifiedName": "File"
1010
1010
  },
1011
1011
  "name": "File",
@@ -1029,7 +1029,7 @@
1029
1029
  "type": {
1030
1030
  "type": "reference",
1031
1031
  "target": {
1032
- "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts",
1032
+ "sourceFileName": "node_modules/@skyux/dev-infra-private/node_modules/typescript/lib/lib.es5.d.ts",
1033
1033
  "qualifiedName": "Promise"
1034
1034
  },
1035
1035
  "typeArguments": [
@@ -1058,7 +1058,7 @@
1058
1058
  "fileName": "projects/avatar/src/testing/modules/avatar/avatar-harness.ts",
1059
1059
  "line": 69,
1060
1060
  "character": 15,
1061
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L69"
1061
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L69"
1062
1062
  }
1063
1063
  ],
1064
1064
  "signatures": [
@@ -1080,14 +1080,14 @@
1080
1080
  {
1081
1081
  "fileName": "libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts",
1082
1082
  "line": 69,
1083
- "character": 15,
1084
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L69"
1083
+ "character": 2,
1084
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L69"
1085
1085
  }
1086
1086
  ],
1087
1087
  "type": {
1088
1088
  "type": "reference",
1089
1089
  "target": {
1090
- "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts",
1090
+ "sourceFileName": "node_modules/@skyux/dev-infra-private/node_modules/typescript/lib/lib.es5.d.ts",
1091
1091
  "qualifiedName": "Promise"
1092
1092
  },
1093
1093
  "typeArguments": [
@@ -1116,7 +1116,7 @@
1116
1116
  "fileName": "projects/avatar/src/testing/modules/avatar/avatar-harness.ts",
1117
1117
  "line": 43,
1118
1118
  "character": 15,
1119
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L43"
1119
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L43"
1120
1120
  }
1121
1121
  ],
1122
1122
  "signatures": [
@@ -1138,14 +1138,14 @@
1138
1138
  {
1139
1139
  "fileName": "libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts",
1140
1140
  "line": 43,
1141
- "character": 15,
1142
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L43"
1141
+ "character": 2,
1142
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L43"
1143
1143
  }
1144
1144
  ],
1145
1145
  "type": {
1146
1146
  "type": "reference",
1147
1147
  "target": {
1148
- "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts",
1148
+ "sourceFileName": "node_modules/@skyux/dev-infra-private/node_modules/typescript/lib/lib.es5.d.ts",
1149
1149
  "qualifiedName": "Promise"
1150
1150
  },
1151
1151
  "typeArguments": [
@@ -1174,7 +1174,7 @@
1174
1174
  "fileName": "projects/avatar/src/testing/modules/avatar/avatar-harness.ts",
1175
1175
  "line": 56,
1176
1176
  "character": 15,
1177
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L56"
1177
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L56"
1178
1178
  }
1179
1179
  ],
1180
1180
  "signatures": [
@@ -1196,14 +1196,14 @@
1196
1196
  {
1197
1197
  "fileName": "libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts",
1198
1198
  "line": 56,
1199
- "character": 15,
1200
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L56"
1199
+ "character": 2,
1200
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L56"
1201
1201
  }
1202
1202
  ],
1203
1203
  "type": {
1204
1204
  "type": "reference",
1205
1205
  "target": {
1206
- "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts",
1206
+ "sourceFileName": "node_modules/@skyux/dev-infra-private/node_modules/typescript/lib/lib.es5.d.ts",
1207
1207
  "qualifiedName": "Promise"
1208
1208
  },
1209
1209
  "typeArguments": [
@@ -1217,7 +1217,7 @@
1217
1217
  {
1218
1218
  "type": "reference",
1219
1219
  "target": {
1220
- "sourceFileName": "node_modules/typescript/lib/lib.dom.d.ts",
1220
+ "sourceFileName": "node_modules/@skyux/dev-infra-private/node_modules/typescript/lib/lib.dom.d.ts",
1221
1221
  "qualifiedName": "Blob"
1222
1222
  },
1223
1223
  "name": "Blob",
@@ -1246,7 +1246,7 @@
1246
1246
  "fileName": "projects/avatar/src/testing/modules/avatar/avatar-harness.ts",
1247
1247
  "line": 98,
1248
1248
  "character": 15,
1249
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L98"
1249
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L98"
1250
1250
  }
1251
1251
  ],
1252
1252
  "signatures": [
@@ -1268,14 +1268,14 @@
1268
1268
  {
1269
1269
  "fileName": "libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts",
1270
1270
  "line": 98,
1271
- "character": 15,
1272
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L98"
1271
+ "character": 2,
1272
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L98"
1273
1273
  }
1274
1274
  ],
1275
1275
  "type": {
1276
1276
  "type": "reference",
1277
1277
  "target": {
1278
- "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts",
1278
+ "sourceFileName": "node_modules/@skyux/dev-infra-private/node_modules/typescript/lib/lib.es5.d.ts",
1279
1279
  "qualifiedName": "Promise"
1280
1280
  },
1281
1281
  "typeArguments": [
@@ -1304,7 +1304,7 @@
1304
1304
  "fileName": "projects/avatar/src/testing/modules/avatar/avatar-harness.ts",
1305
1305
  "line": 107,
1306
1306
  "character": 15,
1307
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L107"
1307
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L107"
1308
1308
  }
1309
1309
  ],
1310
1310
  "signatures": [
@@ -1326,14 +1326,14 @@
1326
1326
  {
1327
1327
  "fileName": "libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts",
1328
1328
  "line": 107,
1329
- "character": 15,
1330
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L107"
1329
+ "character": 2,
1330
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L107"
1331
1331
  }
1332
1332
  ],
1333
1333
  "type": {
1334
1334
  "type": "reference",
1335
1335
  "target": {
1336
- "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts",
1336
+ "sourceFileName": "node_modules/@skyux/dev-infra-private/node_modules/typescript/lib/lib.es5.d.ts",
1337
1337
  "qualifiedName": "Promise"
1338
1338
  },
1339
1339
  "typeArguments": [
@@ -1354,9 +1354,7 @@
1354
1354
  "name": "host",
1355
1355
  "variant": "declaration",
1356
1356
  "kind": 2048,
1357
- "flags": {
1358
- "isInherited": true
1359
- },
1357
+ "flags": {},
1360
1358
  "sources": [
1361
1359
  {
1362
1360
  "fileName": "node_modules/@angular/cdk/testing/index.d.ts",
@@ -1370,9 +1368,7 @@
1370
1368
  "name": "host",
1371
1369
  "variant": "signature",
1372
1370
  "kind": 4096,
1373
- "flags": {
1374
- "isInherited": true
1375
- },
1371
+ "flags": {},
1376
1372
  "comment": {
1377
1373
  "summary": [
1378
1374
  {
@@ -1407,7 +1403,7 @@
1407
1403
  "type": {
1408
1404
  "type": "reference",
1409
1405
  "target": {
1410
- "sourceFileName": "node_modules/typescript/lib/lib.es5.d.ts",
1406
+ "sourceFileName": "node_modules/@skyux/dev-infra-private/node_modules/typescript/lib/lib.es5.d.ts",
1411
1407
  "qualifiedName": "Promise"
1412
1408
  },
1413
1409
  "typeArguments": [
@@ -1451,7 +1447,7 @@
1451
1447
  "fileName": "projects/avatar/src/testing/modules/avatar/avatar-harness.ts",
1452
1448
  "line": 34,
1453
1449
  "character": 16,
1454
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L34"
1450
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L34"
1455
1451
  }
1456
1452
  ],
1457
1453
  "signatures": [
@@ -1489,8 +1485,8 @@
1489
1485
  {
1490
1486
  "fileName": "libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts",
1491
1487
  "line": 34,
1492
- "character": 16,
1493
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L34"
1488
+ "character": 2,
1489
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L34"
1494
1490
  }
1495
1491
  ],
1496
1492
  "parameters": [
@@ -1560,7 +1556,7 @@
1560
1556
  "fileName": "projects/avatar/src/testing/modules/avatar/avatar-harness.ts",
1561
1557
  "line": 18,
1562
1558
  "character": 13,
1563
- "url": "https://github.com/blackbaud/skyux/blob/1dd1f2a823b5b6c6103874369a8374910f2f3850/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L18"
1559
+ "url": "https://github.com/blackbaud/skyux/blob/86cd0af/libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts#L18"
1564
1560
  }
1565
1561
  ],
1566
1562
  "extendedTypes": [
@@ -1818,16 +1814,6 @@
1818
1814
  "sourceFileName": "node_modules/@angular/cdk/testing/index.d.ts",
1819
1815
  "qualifiedName": "ComponentHarness.host"
1820
1816
  }
1821
- },
1822
- "files": {
1823
- "entries": {
1824
- "1": "libs/components/avatar/src/index.ts",
1825
- "2": "libs/components/avatar/testing/src/public-api.ts"
1826
- },
1827
- "reflections": {
1828
- "1": 1,
1829
- "2": 2
1830
- }
1831
1817
  }
1832
1818
  },
1833
1819
  "codeExamples": [
@@ -1864,27 +1850,25 @@
1864
1850
  "@angular/forms": "19.0.5",
1865
1851
  "@angular/platform-browser": "19.0.5",
1866
1852
  "@angular/router": "19.0.5",
1867
- "@blackbaud/skyux-design-tokens": "0.0.42",
1853
+ "@blackbaud/skyux-design-tokens": "0.0.43",
1868
1854
  "@schematics/angular": "19.0.6",
1869
- "@skyux-sdk/testing": "12.0.0-alpha.0",
1870
- "@skyux/assets": "12.0.0-alpha.0",
1871
- "@skyux/avatar": "12.0.0-alpha.0",
1872
- "@skyux/core": "12.0.0-alpha.0",
1873
- "@skyux/errors": "12.0.0-alpha.0",
1874
- "@skyux/forms": "12.0.0-alpha.0",
1875
- "@skyux/help-inline": "12.0.0-alpha.0",
1876
- "@skyux/i18n": "12.0.0-alpha.0",
1877
- "@skyux/icon": "12.0.0-alpha.0",
1878
- "@skyux/icons": "7.8.0",
1879
- "@skyux/indicators": "12.0.0-alpha.0",
1880
- "@skyux/modals": "12.0.0-alpha.0",
1881
- "@skyux/popovers": "12.0.0-alpha.0",
1882
- "@skyux/theme": "12.0.0-alpha.0",
1855
+ "@skyux-sdk/testing": "12.0.0-alpha.2",
1856
+ "@skyux/assets": "12.0.0-alpha.2",
1857
+ "@skyux/avatar": "12.0.0-alpha.2",
1858
+ "@skyux/core": "12.0.0-alpha.2",
1859
+ "@skyux/errors": "12.0.0-alpha.2",
1860
+ "@skyux/forms": "12.0.0-alpha.2",
1861
+ "@skyux/help-inline": "12.0.0-alpha.2",
1862
+ "@skyux/i18n": "12.0.0-alpha.2",
1863
+ "@skyux/icon": "12.0.0-alpha.2",
1864
+ "@skyux/icons": "7.10.0",
1865
+ "@skyux/indicators": "12.0.0-alpha.2",
1866
+ "@skyux/modals": "12.0.0-alpha.2",
1867
+ "@skyux/popovers": "12.0.0-alpha.2",
1868
+ "@skyux/theme": "12.0.0-alpha.2",
1883
1869
  "@types/node": "20.14.12",
1884
- "axe-core": "4.10.0",
1885
- "cross-spawn": "7.0.6",
1870
+ "axe-core": "4.10.2",
1886
1871
  "fontfaceobserver": "2.3.0",
1887
- "glob": "11.0.0",
1888
1872
  "jsonc-parser": "3.3.1",
1889
1873
  "minimist": "1.2.8",
1890
1874
  "rxjs": "7.8.1",
@@ -97,7 +97,7 @@ class SkyAvatarHarness extends SkyComponentHarness {
97
97
  await this.#dropAndWait(fileDrop, file);
98
98
  }
99
99
  else {
100
- await fileDrop.dropFile(file);
100
+ await fileDrop.loadFile(file);
101
101
  }
102
102
  }
103
103
  /**
@@ -133,7 +133,7 @@ class SkyAvatarHarness extends SkyComponentHarness {
133
133
  }
134
134
  async #dropAndWait(fileDrop, file) {
135
135
  const currentUrl = await this.#getImageUrl();
136
- await fileDrop.dropFile(file);
136
+ await fileDrop.loadFile(file);
137
137
  return await new Promise((resolve, reject) => {
138
138
  const checkForFileChange = async (attempts) => {
139
139
  if ((await this.#getImageUrl()) !== currentUrl) {
@@ -1 +1 @@
1
- {"version":3,"file":"skyux-avatar-testing.mjs","sources":["../../../../../libs/components/avatar/testing/src/legacy/avatar-fixture.ts","../../../../../libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts","../../../../../libs/components/avatar/testing/src/skyux-avatar-testing.ts"],"sourcesContent":["import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { By } from '@angular/platform-browser';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\n/**\n * Allows interaction with a SKY UX avatar component.\n * @deprecated Use `SkyAvatarHarness` instead.\n * @internal\n */\nexport class SkyAvatarFixture {\n /**\n * The initials displayed when no image URL is specified.\n */\n public get initials(): string | undefined {\n const initialsEl = this.#debugEl.query(By.css('.sky-avatar-initials'));\n\n if (SkyAppTestUtility.isVisible(initialsEl)) {\n return SkyAppTestUtility.getText(\n initialsEl.query(By.css('.sky-avatar-initials-inner')),\n );\n }\n\n return undefined;\n }\n\n /**\n * The avatar's current image URL.\n */\n public get imageUrl(): string | undefined {\n const imageEl = this.#debugEl.query(By.css('.sky-avatar-image'));\n\n if (SkyAppTestUtility.isVisible(imageEl)) {\n return SkyAppTestUtility.getBackgroundImageUrl(imageEl);\n }\n\n return undefined;\n }\n\n #debugEl: DebugElement;\n\n constructor(fixture: ComponentFixture<any>, skyTestId: string) {\n this.#debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-avatar',\n );\n }\n}\n","import { HarnessPredicate, TestElement } from '@angular/cdk/testing';\nimport { SkyComponentHarness, SkyHarnessUtility } from '@skyux/core/testing';\nimport { SkyErrorModalHarness } from '@skyux/errors/testing';\nimport { SkyFileDropHarness } from '@skyux/forms/testing';\n\nimport { SkyAvatarHarnessFilters } from './avatar-harness-filters';\n\nconst WAIT_INTERVAL = 10;\nconst WAIT_TIMEOUT = 3000;\n\nasync function isHidden(el: TestElement): Promise<boolean> {\n return (await el.getCssValue('display')) === 'none';\n}\n\n/**\n * Harness for interacting with an avatar component in tests.\n */\nexport class SkyAvatarHarness extends SkyComponentHarness {\n /**\n * @internal\n */\n public static hostSelector = 'sky-avatar';\n\n #documentRootLocator = this.documentRootLocatorFactory();\n\n #getFileDrop = this.locatorForOptional(SkyFileDropHarness);\n #errorModal =\n this.#documentRootLocator.locatorForOptional(SkyErrorModalHarness);\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyAvatarHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyAvatarHarnessFilters,\n ): HarnessPredicate<SkyAvatarHarness> {\n return SkyAvatarHarness.getDataSkyIdPredicate(filters);\n }\n\n /**\n * Gets the initials displayed when no image URL is specified.\n */\n public async getInitials(): Promise<string | undefined> {\n const initialsEl = await this.locatorFor('.sky-avatar-initials')();\n\n if (await isHidden(initialsEl)) {\n return undefined;\n }\n\n return await initialsEl.text();\n }\n\n /**\n * Gets the avatar's current image URL or Blob.\n */\n public async getSrc(): Promise<string | Blob | undefined> {\n const url = await this.#getImageUrl();\n\n if (url?.startsWith('blob:')) {\n return await (await fetch(url)).blob();\n }\n\n return url;\n }\n\n /**\n * Gets whether users can change the image.\n */\n public async getCanChange(): Promise<boolean> {\n return !!(await this.#getFileDrop());\n }\n\n /**\n * Simulates the user selecting or dropping an image onto the component.\n */\n public async dropAvatarFile(\n file: File,\n waitForChange?: boolean,\n ): Promise<void> {\n const fileDrop = await this.#getFileDrop();\n\n if (!fileDrop) {\n throw new Error(\n 'A new avatar cannot be selected because the canChange input is not set to true.',\n );\n }\n\n if (waitForChange) {\n await this.#dropAndWait(fileDrop, file);\n } else {\n await fileDrop.dropFile(file);\n }\n }\n\n /**\n * Gets whether an error indicating an invalid file type is displayed.\n */\n public async hasFileTypeError(): Promise<boolean> {\n const errorModal = await this.#errorModal();\n\n return !!(await errorModal?.getTitle())?.includes('File is not an image.');\n }\n\n /**\n * Gets whether an error indicating an invalid file size is displayed.\n */\n public async hasMaxSizeError(): Promise<boolean> {\n const errorModal = await this.#errorModal();\n\n return !!(await errorModal?.getTitle())?.includes('File is too large.');\n }\n\n /**\n * Closes the currently displayed error.\n */\n public async closeError(): Promise<void> {\n const errorModal = await this.#errorModal();\n\n if (!errorModal) {\n throw new Error('No error is currently displayed.');\n }\n\n await errorModal.clickCloseButton();\n }\n\n async #getImageUrl(): Promise<string | undefined> {\n const imageEl = await this.locatorFor('.sky-avatar-image')();\n\n if (await isHidden(imageEl)) {\n return undefined;\n }\n\n return await SkyHarnessUtility.getBackgroundImageUrl(imageEl);\n }\n\n async #dropAndWait(fileDrop: SkyFileDropHarness, file: File): Promise<void> {\n const currentUrl = await this.#getImageUrl();\n\n await fileDrop.dropFile(file);\n\n return await new Promise<void>((resolve, reject) => {\n const checkForFileChange = async (attempts: number): Promise<void> => {\n if ((await this.#getImageUrl()) !== currentUrl) {\n resolve();\n } else if (attempts * WAIT_INTERVAL < WAIT_TIMEOUT) {\n setTimeout(\n () => void checkForFileChange(attempts + 1),\n WAIT_INTERVAL,\n );\n } else {\n reject(\n new Error(\n 'The avatar src did not change within the expected time span',\n ),\n );\n }\n };\n\n void checkForFileChange(0);\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skyux-avatar-testing.mjs","sources":["../../../../../libs/components/avatar/testing/src/legacy/avatar-fixture.ts","../../../../../libs/components/avatar/testing/src/modules/avatar/avatar-harness.ts","../../../../../libs/components/avatar/testing/src/skyux-avatar-testing.ts"],"sourcesContent":["import { DebugElement } from '@angular/core';\nimport { ComponentFixture } from '@angular/core/testing';\nimport { By } from '@angular/platform-browser';\nimport { SkyAppTestUtility } from '@skyux-sdk/testing';\n\n/**\n * Allows interaction with a SKY UX avatar component.\n * @deprecated Use `SkyAvatarHarness` instead.\n * @internal\n */\nexport class SkyAvatarFixture {\n /**\n * The initials displayed when no image URL is specified.\n */\n public get initials(): string | undefined {\n const initialsEl = this.#debugEl.query(By.css('.sky-avatar-initials'));\n\n if (SkyAppTestUtility.isVisible(initialsEl)) {\n return SkyAppTestUtility.getText(\n initialsEl.query(By.css('.sky-avatar-initials-inner')),\n );\n }\n\n return undefined;\n }\n\n /**\n * The avatar's current image URL.\n */\n public get imageUrl(): string | undefined {\n const imageEl = this.#debugEl.query(By.css('.sky-avatar-image'));\n\n if (SkyAppTestUtility.isVisible(imageEl)) {\n return SkyAppTestUtility.getBackgroundImageUrl(imageEl);\n }\n\n return undefined;\n }\n\n #debugEl: DebugElement;\n\n constructor(fixture: ComponentFixture<any>, skyTestId: string) {\n this.#debugEl = SkyAppTestUtility.getDebugElementByTestId(\n fixture,\n skyTestId,\n 'sky-avatar',\n );\n }\n}\n","import { HarnessPredicate, TestElement } from '@angular/cdk/testing';\nimport { SkyComponentHarness, SkyHarnessUtility } from '@skyux/core/testing';\nimport { SkyErrorModalHarness } from '@skyux/errors/testing';\nimport { SkyFileDropHarness } from '@skyux/forms/testing';\n\nimport { SkyAvatarHarnessFilters } from './avatar-harness-filters';\n\nconst WAIT_INTERVAL = 10;\nconst WAIT_TIMEOUT = 3000;\n\nasync function isHidden(el: TestElement): Promise<boolean> {\n return (await el.getCssValue('display')) === 'none';\n}\n\n/**\n * Harness for interacting with an avatar component in tests.\n */\nexport class SkyAvatarHarness extends SkyComponentHarness {\n /**\n * @internal\n */\n public static hostSelector = 'sky-avatar';\n\n #documentRootLocator = this.documentRootLocatorFactory();\n\n #getFileDrop = this.locatorForOptional(SkyFileDropHarness);\n #errorModal =\n this.#documentRootLocator.locatorForOptional(SkyErrorModalHarness);\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyAvatarHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyAvatarHarnessFilters,\n ): HarnessPredicate<SkyAvatarHarness> {\n return SkyAvatarHarness.getDataSkyIdPredicate(filters);\n }\n\n /**\n * Gets the initials displayed when no image URL is specified.\n */\n public async getInitials(): Promise<string | undefined> {\n const initialsEl = await this.locatorFor('.sky-avatar-initials')();\n\n if (await isHidden(initialsEl)) {\n return undefined;\n }\n\n return await initialsEl.text();\n }\n\n /**\n * Gets the avatar's current image URL or Blob.\n */\n public async getSrc(): Promise<string | Blob | undefined> {\n const url = await this.#getImageUrl();\n\n if (url?.startsWith('blob:')) {\n return await (await fetch(url)).blob();\n }\n\n return url;\n }\n\n /**\n * Gets whether users can change the image.\n */\n public async getCanChange(): Promise<boolean> {\n return !!(await this.#getFileDrop());\n }\n\n /**\n * Simulates the user selecting or dropping an image onto the component.\n */\n public async dropAvatarFile(\n file: File,\n waitForChange?: boolean,\n ): Promise<void> {\n const fileDrop = await this.#getFileDrop();\n\n if (!fileDrop) {\n throw new Error(\n 'A new avatar cannot be selected because the canChange input is not set to true.',\n );\n }\n\n if (waitForChange) {\n await this.#dropAndWait(fileDrop, file);\n } else {\n await fileDrop.loadFile(file);\n }\n }\n\n /**\n * Gets whether an error indicating an invalid file type is displayed.\n */\n public async hasFileTypeError(): Promise<boolean> {\n const errorModal = await this.#errorModal();\n\n return !!(await errorModal?.getTitle())?.includes('File is not an image.');\n }\n\n /**\n * Gets whether an error indicating an invalid file size is displayed.\n */\n public async hasMaxSizeError(): Promise<boolean> {\n const errorModal = await this.#errorModal();\n\n return !!(await errorModal?.getTitle())?.includes('File is too large.');\n }\n\n /**\n * Closes the currently displayed error.\n */\n public async closeError(): Promise<void> {\n const errorModal = await this.#errorModal();\n\n if (!errorModal) {\n throw new Error('No error is currently displayed.');\n }\n\n await errorModal.clickCloseButton();\n }\n\n async #getImageUrl(): Promise<string | undefined> {\n const imageEl = await this.locatorFor('.sky-avatar-image')();\n\n if (await isHidden(imageEl)) {\n return undefined;\n }\n\n return await SkyHarnessUtility.getBackgroundImageUrl(imageEl);\n }\n\n async #dropAndWait(fileDrop: SkyFileDropHarness, file: File): Promise<void> {\n const currentUrl = await this.#getImageUrl();\n\n await fileDrop.loadFile(file);\n\n return await new Promise<void>((resolve, reject) => {\n const checkForFileChange = async (attempts: number): Promise<void> => {\n if ((await this.#getImageUrl()) !== currentUrl) {\n resolve();\n } else if (attempts * WAIT_INTERVAL < WAIT_TIMEOUT) {\n setTimeout(\n () => void checkForFileChange(attempts + 1),\n WAIT_INTERVAL,\n );\n } else {\n reject(\n new Error(\n 'The avatar src did not change within the expected time span',\n ),\n );\n }\n };\n\n void checkForFileChange(0);\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -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 SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesService,\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\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\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 standalone: false,\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 @if (src) {\n <div class=\"sky-screen-reader-only\">\n {{ 'skyux_avatar_inner_description' | skyLibResources: name }}\n </div>\n }\n <div\n class=\"sky-avatar-initials\"\n [hidden]=\"src || !name\"\n [ngClass]=\"'sky-avatar-colors-' + (colorIndex + 1)\"\n >\n @if (size === 'small') {\n <div\n class=\"sky-avatar-initials-inner\"\n [skyThemeClass]=\"{\n 'sky-font-body-sm': 'modern'\n }\"\n >\n {{ initials }}\n </div>\n } @else if (size === 'medium') {\n <div\n class=\"sky-avatar-initials-inner\"\n [skyThemeClass]=\"{\n 'sky-font-display-3': 'modern'\n }\"\n >\n {{ initials }}\n </div>\n } @else if (size === 'large') {\n <div\n class=\"sky-avatar-initials-inner\"\n [skyThemeClass]=\"{\n 'sky-font-display-2': 'modern'\n }\"\n >\n {{ initials }}\n </div>\n }\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 standalone: false,\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 @if (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\" />\n </sky-file-drop>\n </div>\n } @else {\n <div>\n <ng-container *ngTemplateOutlet=\"innerTemplate\" />\n </div>\n }\n</div>\n\n<ng-template #innerTemplate>\n <sky-avatar-inner\n [name]=\"name\"\n [size]=\"size ?? (sizeDefault | async) ?? 'large'\"\n [src]=\"src\"\n />\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 * 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 SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesService,\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\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\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 standalone: false,\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 @if (src) {\n <div class=\"sky-screen-reader-only\">\n {{ 'skyux_avatar_inner_description' | skyLibResources: name }}\n </div>\n }\n <div\n class=\"sky-avatar-initials\"\n [hidden]=\"src || !name\"\n [ngClass]=\"'sky-avatar-colors-' + (colorIndex + 1)\"\n >\n @if (size === 'small') {\n <div\n class=\"sky-avatar-initials-inner\"\n [skyThemeClass]=\"{\n 'sky-font-body-sm': 'modern'\n }\"\n >\n {{ initials }}\n </div>\n } @else if (size === 'medium') {\n <div\n class=\"sky-avatar-initials-inner\"\n [skyThemeClass]=\"{\n 'sky-font-display-3': 'modern'\n }\"\n >\n {{ initials }}\n </div>\n } @else if (size === 'large') {\n <div\n class=\"sky-avatar-initials-inner\"\n [skyThemeClass]=\"{\n 'sky-font-display-2': 'modern'\n }\"\n >\n {{ initials }}\n </div>\n }\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 standalone: false,\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 @if (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\" />\n </sky-file-drop>\n </div>\n } @else {\n <div>\n <ng-container *ngTemplateOutlet=\"innerTemplate\" />\n </div>\n }\n</div>\n\n<ng-template #innerTemplate>\n <sky-avatar-inner\n [name]=\"name\"\n [size]=\"size ?? (sizeDefault | async) ?? 'large'\"\n [src]=\"src\"\n />\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": "12.0.0-alpha.0",
3
+ "version": "12.0.0-alpha.2",
4
4
  "author": "Blackbaud, Inc.",
5
5
  "keywords": [
6
6
  "blackbaud",
@@ -36,12 +36,12 @@
36
36
  "@angular/common": "^19.0.5",
37
37
  "@angular/core": "^19.0.5",
38
38
  "@angular/platform-browser": "^19.0.5",
39
- "@skyux-sdk/testing": "12.0.0-alpha.0",
40
- "@skyux/core": "12.0.0-alpha.0",
41
- "@skyux/errors": "12.0.0-alpha.0",
42
- "@skyux/forms": "12.0.0-alpha.0",
43
- "@skyux/i18n": "12.0.0-alpha.0",
44
- "@skyux/theme": "12.0.0-alpha.0"
39
+ "@skyux-sdk/testing": "12.0.0-alpha.2",
40
+ "@skyux/core": "12.0.0-alpha.2",
41
+ "@skyux/errors": "12.0.0-alpha.2",
42
+ "@skyux/forms": "12.0.0-alpha.2",
43
+ "@skyux/i18n": "12.0.0-alpha.2",
44
+ "@skyux/theme": "12.0.0-alpha.2"
45
45
  },
46
46
  "dependencies": {
47
47
  "tslib": "^2.8.1"