@ctrl/ngx-emoji-mart 6.0.1 → 6.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/anchors.component.d.ts +3 -0
- package/category.component.d.ts +3 -0
- package/ctrl-ngx-emoji-mart.d.ts +1 -0
- package/emoji-frequently.service.d.ts +3 -0
- package/emoji-search.service.d.ts +3 -0
- package/esm2020/anchors.component.mjs +83 -0
- package/esm2020/category.component.mjs +386 -0
- package/{esm2015/ctrl-ngx-emoji-mart.js → esm2020/ctrl-ngx-emoji-mart.mjs} +0 -0
- package/{esm2015/emoji-frequently.service.js → esm2020/emoji-frequently.service.mjs} +10 -8
- package/esm2020/emoji-search.service.mjs +177 -0
- package/{esm2015/ngx-emoji/ctrl-ngx-emoji-mart-ngx-emoji.js → esm2020/ngx-emoji/ctrl-ngx-emoji-mart-ngx-emoji.mjs} +0 -0
- package/{esm2015/ngx-emoji/data/categories.js → esm2020/ngx-emoji/data/categories.mjs} +0 -0
- package/{esm2015/ngx-emoji/data/data.interfaces.js → esm2020/ngx-emoji/data/data.interfaces.mjs} +0 -0
- package/{esm2015/ngx-emoji/data/emojis.js → esm2020/ngx-emoji/data/emojis.mjs} +0 -0
- package/{esm2015/ngx-emoji/data/skins.js → esm2020/ngx-emoji/data/skins.mjs} +0 -0
- package/esm2020/ngx-emoji/emoji.component.mjs +236 -0
- package/esm2020/ngx-emoji/emoji.module.mjs +18 -0
- package/esm2020/ngx-emoji/emoji.service.mjs +144 -0
- package/{esm2015/ngx-emoji/index.js → esm2020/ngx-emoji/index.mjs} +0 -0
- package/esm2020/picker.component.mjs +505 -0
- package/esm2020/picker.module.mjs +49 -0
- package/esm2020/preview.component.mjs +181 -0
- package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
- package/esm2020/search.component.mjs +165 -0
- package/esm2020/skins.component.mjs +108 -0
- package/{esm2015/svgs/index.js → esm2020/svgs/index.mjs} +0 -0
- package/{esm2015/utils/index.js → esm2020/utils/index.mjs} +0 -0
- package/fesm2015/{ctrl-ngx-emoji-mart-ngx-emoji.js → ctrl-ngx-emoji-mart-ngx-emoji.mjs} +101 -44
- package/fesm2015/ctrl-ngx-emoji-mart-ngx-emoji.mjs.map +1 -0
- package/fesm2015/{ctrl-ngx-emoji-mart.js → ctrl-ngx-emoji-mart.mjs} +623 -284
- package/fesm2015/ctrl-ngx-emoji-mart.mjs.map +1 -0
- package/fesm2020/ctrl-ngx-emoji-mart-ngx-emoji.mjs +31829 -0
- package/fesm2020/ctrl-ngx-emoji-mart-ngx-emoji.mjs.map +1 -0
- package/fesm2020/ctrl-ngx-emoji-mart.mjs +1751 -0
- package/fesm2020/ctrl-ngx-emoji-mart.mjs.map +1 -0
- package/ngx-emoji/ctrl-ngx-emoji-mart-ngx-emoji.d.ts +1 -0
- package/ngx-emoji/emoji.component.d.ts +3 -0
- package/ngx-emoji/emoji.module.d.ts +6 -0
- package/ngx-emoji/emoji.service.d.ts +3 -0
- package/ngx-emoji/package.json +6 -7
- package/package.json +29 -10
- package/picker.component.d.ts +3 -0
- package/picker.module.d.ts +13 -0
- package/preview.component.d.ts +4 -1
- package/search.component.d.ts +3 -0
- package/skins.component.d.ts +6 -3
- package/bundles/ctrl-ngx-emoji-mart-ngx-emoji.umd.js +0 -32104
- package/bundles/ctrl-ngx-emoji-mart-ngx-emoji.umd.js.map +0 -1
- package/bundles/ctrl-ngx-emoji-mart.umd.js +0 -1729
- package/bundles/ctrl-ngx-emoji-mart.umd.js.map +0 -1
- package/ctrl-ngx-emoji-mart.metadata.json +0 -1
- package/esm2015/anchors.component.js +0 -54
- package/esm2015/category.component.js +0 -275
- package/esm2015/emoji-search.service.js +0 -179
- package/esm2015/ngx-emoji/emoji.component.js +0 -174
- package/esm2015/ngx-emoji/emoji.module.js +0 -13
- package/esm2015/ngx-emoji/emoji.service.js +0 -143
- package/esm2015/picker.component.js +0 -459
- package/esm2015/picker.module.js +0 -34
- package/esm2015/preview.component.js +0 -113
- package/esm2015/search.component.js +0 -115
- package/esm2015/skins.component.js +0 -76
- package/fesm2015/ctrl-ngx-emoji-mart-ngx-emoji.js.map +0 -1
- package/fesm2015/ctrl-ngx-emoji-mart.js.map +0 -1
- package/ngx-emoji/ctrl-ngx-emoji-mart-ngx-emoji.metadata.json +0 -1
@@ -1,113 +0,0 @@
|
|
1
|
-
import { EmojiService } from '@ctrl/ngx-emoji-mart/ngx-emoji';
|
2
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core';
|
3
|
-
export class PreviewComponent {
|
4
|
-
constructor(ref, emojiService) {
|
5
|
-
this.ref = ref;
|
6
|
-
this.emojiService = emojiService;
|
7
|
-
this.skinChange = new EventEmitter();
|
8
|
-
this.emojiData = {};
|
9
|
-
}
|
10
|
-
ngOnChanges() {
|
11
|
-
var _a;
|
12
|
-
if (!this.emoji) {
|
13
|
-
return;
|
14
|
-
}
|
15
|
-
this.emojiData = this.emojiService.getData(this.emoji, this.emojiSkin, this.emojiSet);
|
16
|
-
const knownEmoticons = [];
|
17
|
-
const listedEmoticons = [];
|
18
|
-
const emoitcons = this.emojiData.emoticons || [];
|
19
|
-
emoitcons.forEach((emoticon) => {
|
20
|
-
if (knownEmoticons.indexOf(emoticon.toLowerCase()) >= 0) {
|
21
|
-
return;
|
22
|
-
}
|
23
|
-
knownEmoticons.push(emoticon.toLowerCase());
|
24
|
-
listedEmoticons.push(emoticon);
|
25
|
-
});
|
26
|
-
this.listedEmoticons = listedEmoticons;
|
27
|
-
(_a = this.ref) === null || _a === void 0 ? void 0 : _a.detectChanges();
|
28
|
-
}
|
29
|
-
}
|
30
|
-
PreviewComponent.decorators = [
|
31
|
-
{ type: Component, args: [{
|
32
|
-
selector: 'emoji-preview',
|
33
|
-
template: `
|
34
|
-
<div class="emoji-mart-preview" *ngIf="emoji && emojiData">
|
35
|
-
<div class="emoji-mart-preview-emoji">
|
36
|
-
<ngx-emoji
|
37
|
-
[emoji]="emoji"
|
38
|
-
[size]="38"
|
39
|
-
[isNative]="emojiIsNative"
|
40
|
-
[skin]="emojiSkin"
|
41
|
-
[size]="emojiSize"
|
42
|
-
[set]="emojiSet"
|
43
|
-
[sheetSize]="emojiSheetSize"
|
44
|
-
[backgroundImageFn]="emojiBackgroundImageFn"
|
45
|
-
[imageUrlFn]="emojiImageUrlFn"
|
46
|
-
></ngx-emoji>
|
47
|
-
</div>
|
48
|
-
|
49
|
-
<div class="emoji-mart-preview-data">
|
50
|
-
<div class="emoji-mart-preview-name">{{ emojiData.name }}</div>
|
51
|
-
<div class="emoji-mart-preview-shortname">
|
52
|
-
<span
|
53
|
-
class="emoji-mart-preview-shortname"
|
54
|
-
*ngFor="let short_name of emojiData.shortNames"
|
55
|
-
>
|
56
|
-
:{{ short_name }}:
|
57
|
-
</span>
|
58
|
-
</div>
|
59
|
-
<div class="emoji-mart-preview-emoticons">
|
60
|
-
<span class="emoji-mart-preview-emoticon" *ngFor="let emoticon of listedEmoticons">
|
61
|
-
{{ emoticon }}
|
62
|
-
</span>
|
63
|
-
</div>
|
64
|
-
</div>
|
65
|
-
</div>
|
66
|
-
|
67
|
-
<div class="emoji-mart-preview" *ngIf="!emoji">
|
68
|
-
<div class="emoji-mart-preview-emoji">
|
69
|
-
<ngx-emoji
|
70
|
-
*ngIf="idleEmoji && idleEmoji.length"
|
71
|
-
[isNative]="emojiIsNative"
|
72
|
-
[skin]="emojiSkin"
|
73
|
-
[set]="emojiSet"
|
74
|
-
[emoji]="idleEmoji"
|
75
|
-
[backgroundImageFn]="emojiBackgroundImageFn"
|
76
|
-
[size]="38"
|
77
|
-
[imageUrlFn]="emojiImageUrlFn"
|
78
|
-
></ngx-emoji>
|
79
|
-
</div>
|
80
|
-
|
81
|
-
<div class="emoji-mart-preview-data">
|
82
|
-
<span class="emoji-mart-title-label">{{ title }}</span>
|
83
|
-
</div>
|
84
|
-
|
85
|
-
<div class="emoji-mart-preview-skins">
|
86
|
-
<emoji-skins [skin]="emojiSkin" (changeSkin)="skinChange.emit($event)" [i18n]="i18n">
|
87
|
-
</emoji-skins>
|
88
|
-
</div>
|
89
|
-
</div>
|
90
|
-
`,
|
91
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
92
|
-
preserveWhitespaces: false
|
93
|
-
},] }
|
94
|
-
];
|
95
|
-
PreviewComponent.ctorParameters = () => [
|
96
|
-
{ type: ChangeDetectorRef },
|
97
|
-
{ type: EmojiService }
|
98
|
-
];
|
99
|
-
PreviewComponent.propDecorators = {
|
100
|
-
title: [{ type: Input }],
|
101
|
-
emoji: [{ type: Input }],
|
102
|
-
idleEmoji: [{ type: Input }],
|
103
|
-
i18n: [{ type: Input }],
|
104
|
-
emojiIsNative: [{ type: Input }],
|
105
|
-
emojiSkin: [{ type: Input }],
|
106
|
-
emojiSize: [{ type: Input }],
|
107
|
-
emojiSet: [{ type: Input }],
|
108
|
-
emojiSheetSize: [{ type: Input }],
|
109
|
-
emojiBackgroundImageFn: [{ type: Input }],
|
110
|
-
emojiImageUrlFn: [{ type: Input }],
|
111
|
-
skinChange: [{ type: Output }]
|
112
|
-
};
|
113
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL3BpY2tlci9wcmV2aWV3LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2hGLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQWtFdkIsTUFBTSxPQUFPLGdCQUFnQjtJQWdCM0IsWUFBbUIsR0FBc0IsRUFBVSxZQUEwQjtRQUExRCxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBSm5FLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ2xELGNBQVMsR0FBdUIsRUFBRSxDQUFDO0lBRzZDLENBQUM7SUFFakYsV0FBVzs7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNmLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQ3hDLElBQUksQ0FBQyxLQUFLLEVBQ1YsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsUUFBUSxDQUNELENBQUM7UUFDZixNQUFNLGNBQWMsR0FBYSxFQUFFLENBQUM7UUFDcEMsTUFBTSxlQUFlLEdBQWEsRUFBRSxDQUFDO1FBQ3JDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQztRQUNqRCxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBZ0IsRUFBRSxFQUFFO1lBQ3JDLElBQUksY0FBYyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3ZELE9BQU87YUFDUjtZQUNELGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFDNUMsZUFBZSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxlQUFlLEdBQUcsZUFBZSxDQUFDO1FBQ3ZDLE1BQUEsSUFBSSxDQUFDLEdBQUcsMENBQUUsYUFBYSxFQUFFLENBQUM7SUFDNUIsQ0FBQzs7O1lBdEdGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZUFBZTtnQkFDekIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5RFQ7Z0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07Z0JBQy9DLG1CQUFtQixFQUFFLEtBQUs7YUFDM0I7OztZQXZFQyxpQkFBaUI7WUFIUSxZQUFZOzs7b0JBNEVwQyxLQUFLO29CQUNMLEtBQUs7d0JBQ0wsS0FBSzttQkFDTCxLQUFLOzRCQUNMLEtBQUs7d0JBQ0wsS0FBSzt3QkFDTCxLQUFLO3VCQUNMLEtBQUs7NkJBQ0wsS0FBSztxQ0FDTCxLQUFLOzhCQUNMLEtBQUs7eUJBQ0wsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVtb2ppLCBFbW9qaURhdGEsIEVtb2ppU2VydmljZSB9IGZyb20gJ0BjdHJsL25neC1lbW9qaS1tYXJ0L25neC1lbW9qaSc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPdXRwdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW1vamktcHJldmlldycsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImVtb2ppLW1hcnQtcHJldmlld1wiICpuZ0lmPVwiZW1vamkgJiYgZW1vamlEYXRhXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZW1vamktbWFydC1wcmV2aWV3LWVtb2ppXCI+XG4gICAgICAgIDxuZ3gtZW1vamlcbiAgICAgICAgICBbZW1vamldPVwiZW1vamlcIlxuICAgICAgICAgIFtzaXplXT1cIjM4XCJcbiAgICAgICAgICBbaXNOYXRpdmVdPVwiZW1vamlJc05hdGl2ZVwiXG4gICAgICAgICAgW3NraW5dPVwiZW1vamlTa2luXCJcbiAgICAgICAgICBbc2l6ZV09XCJlbW9qaVNpemVcIlxuICAgICAgICAgIFtzZXRdPVwiZW1vamlTZXRcIlxuICAgICAgICAgIFtzaGVldFNpemVdPVwiZW1vamlTaGVldFNpemVcIlxuICAgICAgICAgIFtiYWNrZ3JvdW5kSW1hZ2VGbl09XCJlbW9qaUJhY2tncm91bmRJbWFnZUZuXCJcbiAgICAgICAgICBbaW1hZ2VVcmxGbl09XCJlbW9qaUltYWdlVXJsRm5cIlxuICAgICAgICA+PC9uZ3gtZW1vamk+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImVtb2ppLW1hcnQtcHJldmlldy1kYXRhXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJlbW9qaS1tYXJ0LXByZXZpZXctbmFtZVwiPnt7IGVtb2ppRGF0YS5uYW1lIH19PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJlbW9qaS1tYXJ0LXByZXZpZXctc2hvcnRuYW1lXCI+XG4gICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgIGNsYXNzPVwiZW1vamktbWFydC1wcmV2aWV3LXNob3J0bmFtZVwiXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgc2hvcnRfbmFtZSBvZiBlbW9qaURhdGEuc2hvcnROYW1lc1wiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgOnt7IHNob3J0X25hbWUgfX06XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImVtb2ppLW1hcnQtcHJldmlldy1lbW90aWNvbnNcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImVtb2ppLW1hcnQtcHJldmlldy1lbW90aWNvblwiICpuZ0Zvcj1cImxldCBlbW90aWNvbiBvZiBsaXN0ZWRFbW90aWNvbnNcIj5cbiAgICAgICAgICAgIHt7IGVtb3RpY29uIH19XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImVtb2ppLW1hcnQtcHJldmlld1wiICpuZ0lmPVwiIWVtb2ppXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZW1vamktbWFydC1wcmV2aWV3LWVtb2ppXCI+XG4gICAgICAgIDxuZ3gtZW1vamlcbiAgICAgICAgICAqbmdJZj1cImlkbGVFbW9qaSAmJiBpZGxlRW1vamkubGVuZ3RoXCJcbiAgICAgICAgICBbaXNOYXRpdmVdPVwiZW1vamlJc05hdGl2ZVwiXG4gICAgICAgICAgW3NraW5dPVwiZW1vamlTa2luXCJcbiAgICAgICAgICBbc2V0XT1cImVtb2ppU2V0XCJcbiAgICAgICAgICBbZW1vamldPVwiaWRsZUVtb2ppXCJcbiAgICAgICAgICBbYmFja2dyb3VuZEltYWdlRm5dPVwiZW1vamlCYWNrZ3JvdW5kSW1hZ2VGblwiXG4gICAgICAgICAgW3NpemVdPVwiMzhcIlxuICAgICAgICAgIFtpbWFnZVVybEZuXT1cImVtb2ppSW1hZ2VVcmxGblwiXG4gICAgICAgID48L25neC1lbW9qaT5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZW1vamktbWFydC1wcmV2aWV3LWRhdGFcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJlbW9qaS1tYXJ0LXRpdGxlLWxhYmVsXCI+e3sgdGl0bGUgfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImVtb2ppLW1hcnQtcHJldmlldy1za2luc1wiPlxuICAgICAgICA8ZW1vamktc2tpbnMgW3NraW5dPVwiZW1vamlTa2luXCIgKGNoYW5nZVNraW4pPVwic2tpbkNoYW5nZS5lbWl0KCRldmVudClcIiBbaTE4bl09XCJpMThuXCI+XG4gICAgICAgIDwvZW1vamktc2tpbnM+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBQcmV2aWV3Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgdGl0bGU/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGVtb2ppOiBhbnk7XG4gIEBJbnB1dCgpIGlkbGVFbW9qaTogYW55O1xuICBASW5wdXQoKSBpMThuOiBhbnk7XG4gIEBJbnB1dCgpIGVtb2ppSXNOYXRpdmU/OiBFbW9qaVsnaXNOYXRpdmUnXTtcbiAgQElucHV0KCkgZW1vamlTa2luPzogRW1vamlbJ3NraW4nXTtcbiAgQElucHV0KCkgZW1vamlTaXplPzogRW1vamlbJ3NpemUnXTtcbiAgQElucHV0KCkgZW1vamlTZXQ/OiBFbW9qaVsnc2V0J107XG4gIEBJbnB1dCgpIGVtb2ppU2hlZXRTaXplPzogRW1vamlbJ3NoZWV0U2l6ZSddO1xuICBASW5wdXQoKSBlbW9qaUJhY2tncm91bmRJbWFnZUZuPzogRW1vamlbJ2JhY2tncm91bmRJbWFnZUZuJ107XG4gIEBJbnB1dCgpIGVtb2ppSW1hZ2VVcmxGbj86IEVtb2ppWydpbWFnZVVybEZuJ107XG4gIEBPdXRwdXQoKSBza2luQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG4gIGVtb2ppRGF0YTogUGFydGlhbDxFbW9qaURhdGE+ID0ge307XG4gIGxpc3RlZEVtb3RpY29ucz86IHN0cmluZ1tdO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWY6IENoYW5nZURldGVjdG9yUmVmLCBwcml2YXRlIGVtb2ppU2VydmljZTogRW1vamlTZXJ2aWNlKSB7fVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIGlmICghdGhpcy5lbW9qaSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmVtb2ppRGF0YSA9IHRoaXMuZW1vamlTZXJ2aWNlLmdldERhdGEoXG4gICAgICB0aGlzLmVtb2ppLFxuICAgICAgdGhpcy5lbW9qaVNraW4sXG4gICAgICB0aGlzLmVtb2ppU2V0LFxuICAgICkgYXMgRW1vamlEYXRhO1xuICAgIGNvbnN0IGtub3duRW1vdGljb25zOiBzdHJpbmdbXSA9IFtdO1xuICAgIGNvbnN0IGxpc3RlZEVtb3RpY29uczogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCBlbW9pdGNvbnMgPSB0aGlzLmVtb2ppRGF0YS5lbW90aWNvbnMgfHwgW107XG4gICAgZW1vaXRjb25zLmZvckVhY2goKGVtb3RpY29uOiBzdHJpbmcpID0+IHtcbiAgICAgIGlmIChrbm93bkVtb3RpY29ucy5pbmRleE9mKGVtb3RpY29uLnRvTG93ZXJDYXNlKCkpID49IDApIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAga25vd25FbW90aWNvbnMucHVzaChlbW90aWNvbi50b0xvd2VyQ2FzZSgpKTtcbiAgICAgIGxpc3RlZEVtb3RpY29ucy5wdXNoKGVtb3RpY29uKTtcbiAgICB9KTtcbiAgICB0aGlzLmxpc3RlZEVtb3RpY29ucyA9IGxpc3RlZEVtb3RpY29ucztcbiAgICB0aGlzLnJlZj8uZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG59XG4iXX0=
|
@@ -1,115 +0,0 @@
|
|
1
|
-
import { Component, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
|
2
|
-
import { EmojiSearch } from './emoji-search.service';
|
3
|
-
let id = 0;
|
4
|
-
export class SearchComponent {
|
5
|
-
constructor(emojiSearch) {
|
6
|
-
this.emojiSearch = emojiSearch;
|
7
|
-
this.maxResults = 75;
|
8
|
-
this.autoFocus = false;
|
9
|
-
this.include = [];
|
10
|
-
this.exclude = [];
|
11
|
-
this.custom = [];
|
12
|
-
this.searchResults = new EventEmitter();
|
13
|
-
this.enterKey = new EventEmitter();
|
14
|
-
this.isSearching = false;
|
15
|
-
this.query = '';
|
16
|
-
this.inputId = `emoji-mart-search-${++id}`;
|
17
|
-
}
|
18
|
-
ngOnInit() {
|
19
|
-
this.icon = this.icons.search;
|
20
|
-
}
|
21
|
-
ngAfterViewInit() {
|
22
|
-
if (this.autoFocus) {
|
23
|
-
this.inputRef.nativeElement.focus();
|
24
|
-
}
|
25
|
-
}
|
26
|
-
clear() {
|
27
|
-
this.query = '';
|
28
|
-
this.handleSearch('');
|
29
|
-
this.inputRef.nativeElement.focus();
|
30
|
-
}
|
31
|
-
handleEnterKey($event) {
|
32
|
-
if (!this.query) {
|
33
|
-
return;
|
34
|
-
}
|
35
|
-
this.enterKey.emit($event);
|
36
|
-
$event.preventDefault();
|
37
|
-
}
|
38
|
-
handleSearch(value) {
|
39
|
-
if (value === '') {
|
40
|
-
this.icon = this.icons.search;
|
41
|
-
this.isSearching = false;
|
42
|
-
}
|
43
|
-
else {
|
44
|
-
this.icon = this.icons.delete;
|
45
|
-
this.isSearching = true;
|
46
|
-
}
|
47
|
-
const emojis = this.emojiSearch.search(this.query, this.emojisToShowFilter, this.maxResults, this.include, this.exclude, this.custom);
|
48
|
-
this.searchResults.emit(emojis);
|
49
|
-
}
|
50
|
-
handleChange() {
|
51
|
-
this.handleSearch(this.query);
|
52
|
-
}
|
53
|
-
}
|
54
|
-
SearchComponent.decorators = [
|
55
|
-
{ type: Component, args: [{
|
56
|
-
selector: 'emoji-search',
|
57
|
-
template: `
|
58
|
-
<div class="emoji-mart-search">
|
59
|
-
<input
|
60
|
-
[id]="inputId"
|
61
|
-
#inputRef
|
62
|
-
type="search"
|
63
|
-
(keyup.enter)="handleEnterKey($event)"
|
64
|
-
[placeholder]="i18n.search"
|
65
|
-
[autofocus]="autoFocus"
|
66
|
-
[(ngModel)]="query"
|
67
|
-
(ngModelChange)="handleChange()"
|
68
|
-
/>
|
69
|
-
<!--
|
70
|
-
Use a <label> in addition to the placeholder for accessibility, but place it off-screen
|
71
|
-
http://www.maxability.co.in/2016/01/placeholder-attribute-and-why-it-is-not-accessible/
|
72
|
-
-->
|
73
|
-
<label class="emoji-mart-sr-only" [htmlFor]="inputId">
|
74
|
-
{{ i18n.search }}
|
75
|
-
</label>
|
76
|
-
<button
|
77
|
-
type="button"
|
78
|
-
class="emoji-mart-search-icon"
|
79
|
-
(click)="clear()"
|
80
|
-
(keyup.enter)="clear()"
|
81
|
-
[disabled]="!isSearching"
|
82
|
-
[attr.aria-label]="i18n.clear"
|
83
|
-
>
|
84
|
-
<svg
|
85
|
-
xmlns="http://www.w3.org/2000/svg"
|
86
|
-
viewBox="0 0 20 20"
|
87
|
-
width="13"
|
88
|
-
height="13"
|
89
|
-
opacity="0.5"
|
90
|
-
>
|
91
|
-
<path [attr.d]="icon" />
|
92
|
-
</svg>
|
93
|
-
</button>
|
94
|
-
</div>
|
95
|
-
`,
|
96
|
-
preserveWhitespaces: false
|
97
|
-
},] }
|
98
|
-
];
|
99
|
-
SearchComponent.ctorParameters = () => [
|
100
|
-
{ type: EmojiSearch }
|
101
|
-
];
|
102
|
-
SearchComponent.propDecorators = {
|
103
|
-
maxResults: [{ type: Input }],
|
104
|
-
autoFocus: [{ type: Input }],
|
105
|
-
i18n: [{ type: Input }],
|
106
|
-
include: [{ type: Input }],
|
107
|
-
exclude: [{ type: Input }],
|
108
|
-
custom: [{ type: Input }],
|
109
|
-
icons: [{ type: Input }],
|
110
|
-
emojisToShowFilter: [{ type: Input }],
|
111
|
-
searchResults: [{ type: Output }],
|
112
|
-
enterKey: [{ type: Output }],
|
113
|
-
inputRef: [{ type: ViewChild, args: ['inputRef', { static: true },] }]
|
114
|
-
};
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvcGlja2VyL3NlYXJjaC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXJELElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztBQTZDWCxNQUFNLE9BQU8sZUFBZTtJQWlCMUIsWUFBb0IsV0FBd0I7UUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFoQm5DLGVBQVUsR0FBRyxFQUFFLENBQUM7UUFDaEIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUVsQixZQUFPLEdBQWEsRUFBRSxDQUFDO1FBQ3ZCLFlBQU8sR0FBYSxFQUFFLENBQUM7UUFDdkIsV0FBTSxHQUFVLEVBQUUsQ0FBQztRQUdsQixrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFTLENBQUM7UUFDMUMsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFFN0MsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFFcEIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLFlBQU8sR0FBRyxxQkFBcUIsRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUVTLENBQUM7SUFFaEQsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7SUFDaEMsQ0FBQztJQUNELGVBQWU7UUFDYixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDckM7SUFDSCxDQUFDO0lBQ0QsS0FBSztRQUNILElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUNELGNBQWMsQ0FBQyxNQUFhO1FBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0IsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFDRCxZQUFZLENBQUMsS0FBYTtRQUN4QixJQUFJLEtBQUssS0FBSyxFQUFFLEVBQUU7WUFDaEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUM5QixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztTQUMxQjthQUFNO1lBQ0wsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUM5QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztTQUN6QjtRQUNELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUNwQyxJQUFJLENBQUMsS0FBSyxFQUNWLElBQUksQ0FBQyxrQkFBa0IsRUFDdkIsSUFBSSxDQUFDLFVBQVUsRUFDZixJQUFJLENBQUMsT0FBTyxFQUNaLElBQUksQ0FBQyxPQUFPLEVBQ1osSUFBSSxDQUFDLE1BQU0sQ0FDSCxDQUFDO1FBQ1gsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUNELFlBQVk7UUFDVixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDOzs7WUF0R0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxjQUFjO2dCQUN4QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0NUO2dCQUNELG1CQUFtQixFQUFFLEtBQUs7YUFDM0I7OztZQTlDUSxXQUFXOzs7eUJBZ0RqQixLQUFLO3dCQUNMLEtBQUs7bUJBQ0wsS0FBSztzQkFDTCxLQUFLO3NCQUNMLEtBQUs7cUJBQ0wsS0FBSztvQkFDTCxLQUFLO2lDQUNMLEtBQUs7NEJBQ0wsTUFBTTt1QkFDTixNQUFNO3VCQUNOLFNBQVMsU0FBQyxVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRW1vamlTZWFyY2ggfSBmcm9tICcuL2Vtb2ppLXNlYXJjaC5zZXJ2aWNlJztcblxubGV0IGlkID0gMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW1vamktc2VhcmNoJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiZW1vamktbWFydC1zZWFyY2hcIj5cbiAgICAgIDxpbnB1dFxuICAgICAgICBbaWRdPVwiaW5wdXRJZFwiXG4gICAgICAgICNpbnB1dFJlZlxuICAgICAgICB0eXBlPVwic2VhcmNoXCJcbiAgICAgICAgKGtleXVwLmVudGVyKT1cImhhbmRsZUVudGVyS2V5KCRldmVudClcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiaTE4bi5zZWFyY2hcIlxuICAgICAgICBbYXV0b2ZvY3VzXT1cImF1dG9Gb2N1c1wiXG4gICAgICAgIFsobmdNb2RlbCldPVwicXVlcnlcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoKVwiXG4gICAgICAvPlxuICAgICAgPCEtLVxuICAgICAgVXNlIGEgPGxhYmVsPiBpbiBhZGRpdGlvbiB0byB0aGUgcGxhY2Vob2xkZXIgZm9yIGFjY2Vzc2liaWxpdHksIGJ1dCBwbGFjZSBpdCBvZmYtc2NyZWVuXG4gICAgICBodHRwOi8vd3d3Lm1heGFiaWxpdHkuY28uaW4vMjAxNi8wMS9wbGFjZWhvbGRlci1hdHRyaWJ1dGUtYW5kLXdoeS1pdC1pcy1ub3QtYWNjZXNzaWJsZS9cbiAgICAgIC0tPlxuICAgICAgPGxhYmVsIGNsYXNzPVwiZW1vamktbWFydC1zci1vbmx5XCIgW2h0bWxGb3JdPVwiaW5wdXRJZFwiPlxuICAgICAgICB7eyBpMThuLnNlYXJjaCB9fVxuICAgICAgPC9sYWJlbD5cbiAgICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiZW1vamktbWFydC1zZWFyY2gtaWNvblwiXG4gICAgICAgIChjbGljayk9XCJjbGVhcigpXCJcbiAgICAgICAgKGtleXVwLmVudGVyKT1cImNsZWFyKClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiIWlzU2VhcmNoaW5nXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJpMThuLmNsZWFyXCJcbiAgICAgID5cbiAgICAgICAgPHN2Z1xuICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjAgMjBcIlxuICAgICAgICAgIHdpZHRoPVwiMTNcIlxuICAgICAgICAgIGhlaWdodD1cIjEzXCJcbiAgICAgICAgICBvcGFjaXR5PVwiMC41XCJcbiAgICAgICAgPlxuICAgICAgICAgIDxwYXRoIFthdHRyLmRdPVwiaWNvblwiIC8+XG4gICAgICAgIDwvc3ZnPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBTZWFyY2hDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkluaXQge1xuICBASW5wdXQoKSBtYXhSZXN1bHRzID0gNzU7XG4gIEBJbnB1dCgpIGF1dG9Gb2N1cyA9IGZhbHNlO1xuICBASW5wdXQoKSBpMThuOiBhbnk7XG4gIEBJbnB1dCgpIGluY2x1ZGU6IHN0cmluZ1tdID0gW107XG4gIEBJbnB1dCgpIGV4Y2x1ZGU6IHN0cmluZ1tdID0gW107XG4gIEBJbnB1dCgpIGN1c3RvbTogYW55W10gPSBbXTtcbiAgQElucHV0KCkgaWNvbnMhOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuICBASW5wdXQoKSBlbW9qaXNUb1Nob3dGaWx0ZXI/OiAoeDogYW55KSA9PiBib29sZWFuO1xuICBAT3V0cHV0KCkgc2VhcmNoUmVzdWx0cyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55W10+KCk7XG4gIEBPdXRwdXQoKSBlbnRlcktleSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAVmlld0NoaWxkKCdpbnB1dFJlZicsIHsgc3RhdGljOiB0cnVlIH0pIHByaXZhdGUgaW5wdXRSZWYhOiBFbGVtZW50UmVmO1xuICBpc1NlYXJjaGluZyA9IGZhbHNlO1xuICBpY29uPzogc3RyaW5nO1xuICBxdWVyeSA9ICcnO1xuICBpbnB1dElkID0gYGVtb2ppLW1hcnQtc2VhcmNoLSR7KytpZH1gO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZW1vamlTZWFyY2g6IEVtb2ppU2VhcmNoKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaWNvbiA9IHRoaXMuaWNvbnMuc2VhcmNoO1xuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy5hdXRvRm9jdXMpIHtcbiAgICAgIHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuICBjbGVhcigpIHtcbiAgICB0aGlzLnF1ZXJ5ID0gJyc7XG4gICAgdGhpcy5oYW5kbGVTZWFyY2goJycpO1xuICAgIHRoaXMuaW5wdXRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICB9XG4gIGhhbmRsZUVudGVyS2V5KCRldmVudDogRXZlbnQpIHtcbiAgICBpZiAoIXRoaXMucXVlcnkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5lbnRlcktleS5lbWl0KCRldmVudCk7XG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cbiAgaGFuZGxlU2VhcmNoKHZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAodmFsdWUgPT09ICcnKSB7XG4gICAgICB0aGlzLmljb24gPSB0aGlzLmljb25zLnNlYXJjaDtcbiAgICAgIHRoaXMuaXNTZWFyY2hpbmcgPSBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pY29uID0gdGhpcy5pY29ucy5kZWxldGU7XG4gICAgICB0aGlzLmlzU2VhcmNoaW5nID0gdHJ1ZTtcbiAgICB9XG4gICAgY29uc3QgZW1vamlzID0gdGhpcy5lbW9qaVNlYXJjaC5zZWFyY2goXG4gICAgICB0aGlzLnF1ZXJ5LFxuICAgICAgdGhpcy5lbW9qaXNUb1Nob3dGaWx0ZXIsXG4gICAgICB0aGlzLm1heFJlc3VsdHMsXG4gICAgICB0aGlzLmluY2x1ZGUsXG4gICAgICB0aGlzLmV4Y2x1ZGUsXG4gICAgICB0aGlzLmN1c3RvbSxcbiAgICApIGFzIGFueVtdO1xuICAgIHRoaXMuc2VhcmNoUmVzdWx0cy5lbWl0KGVtb2ppcyk7XG4gIH1cbiAgaGFuZGxlQ2hhbmdlKCkge1xuICAgIHRoaXMuaGFuZGxlU2VhcmNoKHRoaXMucXVlcnkpO1xuICB9XG59XG4iXX0=
|
@@ -1,76 +0,0 @@
|
|
1
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
|
2
|
-
export class SkinComponent {
|
3
|
-
constructor() {
|
4
|
-
this.changeSkin = new EventEmitter();
|
5
|
-
this.opened = false;
|
6
|
-
this.skinTones = [1, 2, 3, 4, 5, 6];
|
7
|
-
}
|
8
|
-
toggleOpen() {
|
9
|
-
this.opened = !this.opened;
|
10
|
-
}
|
11
|
-
isSelected(skinTone) {
|
12
|
-
return skinTone === this.skin;
|
13
|
-
}
|
14
|
-
isVisible(skinTone) {
|
15
|
-
return this.opened || this.isSelected(skinTone);
|
16
|
-
}
|
17
|
-
pressed(skinTone) {
|
18
|
-
return this.opened ? !!this.isSelected(skinTone) : '';
|
19
|
-
}
|
20
|
-
tabIndex(skinTone) {
|
21
|
-
return this.isVisible(skinTone) ? '0' : '';
|
22
|
-
}
|
23
|
-
expanded(skinTone) {
|
24
|
-
return this.isSelected(skinTone) ? this.opened : '';
|
25
|
-
}
|
26
|
-
handleClick(skin) {
|
27
|
-
if (!this.opened) {
|
28
|
-
this.opened = true;
|
29
|
-
return;
|
30
|
-
}
|
31
|
-
this.opened = false;
|
32
|
-
if (skin !== this.skin) {
|
33
|
-
this.changeSkin.emit(skin);
|
34
|
-
}
|
35
|
-
}
|
36
|
-
}
|
37
|
-
SkinComponent.decorators = [
|
38
|
-
{ type: Component, args: [{
|
39
|
-
selector: 'emoji-skins',
|
40
|
-
template: `
|
41
|
-
<section
|
42
|
-
class="emoji-mart-skin-swatches"
|
43
|
-
[class.opened]="opened"
|
44
|
-
>
|
45
|
-
<span
|
46
|
-
*ngFor="let skinTone of skinTones"
|
47
|
-
class="emoji-mart-skin-swatch"
|
48
|
-
[class.selected]="skinTone === skin"
|
49
|
-
>
|
50
|
-
<span
|
51
|
-
(click)="this.handleClick(skinTone)"
|
52
|
-
(keyup.enter)="handleClick(skinTone)"
|
53
|
-
(keyup.space)="handleClick(skinTone)"
|
54
|
-
class="emoji-mart-skin emoji-mart-skin-tone-{{ skinTone }}"
|
55
|
-
role="button"
|
56
|
-
[tabIndex]="tabIndex(skinTone)"
|
57
|
-
[attr.aria-hidden]="!isVisible(skinTone)"
|
58
|
-
[attr.aria-pressed]="pressed(skinTone)"
|
59
|
-
[attr.aria-haspopup]="!!isSelected(skinTone)"
|
60
|
-
[attr.aria-expanded]="expanded(skinTone)"
|
61
|
-
[attr.aria-label]="i18n.skintones[skinTone]"
|
62
|
-
[title]="i18n.skintones[skinTone]"
|
63
|
-
></span>
|
64
|
-
</span>
|
65
|
-
</section>
|
66
|
-
`,
|
67
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
68
|
-
preserveWhitespaces: false
|
69
|
-
},] }
|
70
|
-
];
|
71
|
-
SkinComponent.propDecorators = {
|
72
|
-
skin: [{ type: Input }],
|
73
|
-
i18n: [{ type: Input }],
|
74
|
-
changeSkin: [{ type: Output }]
|
75
|
-
};
|
76
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tpbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9waWNrZXIvc2tpbnMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBb0N2QixNQUFNLE9BQU8sYUFBYTtJQWhDMUI7UUFvQ1ksZUFBVSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDbEQsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUNmLGNBQVMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFvQ2pDLENBQUM7SUFsQ0MsVUFBVTtRQUNSLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQzdCLENBQUM7SUFFRCxVQUFVLENBQUMsUUFBdUI7UUFDaEMsT0FBTyxRQUFRLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUyxDQUFDLFFBQXVCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxPQUFPLENBQUMsUUFBdUI7UUFDN0IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3hELENBQUM7SUFFRCxRQUFRLENBQUMsUUFBdUI7UUFDOUIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRUQsUUFBUSxDQUFDLFFBQXVCO1FBQzlCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFFRCxXQUFXLENBQUMsSUFBWTtRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNoQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztZQUNuQixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLElBQUksS0FBSyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzVCO0lBQ0gsQ0FBQzs7O1lBekVGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsYUFBYTtnQkFDdkIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTBCVDtnQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtnQkFDL0MsbUJBQW1CLEVBQUUsS0FBSzthQUMzQjs7O21CQUdFLEtBQUs7bUJBQ0wsS0FBSzt5QkFDTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRW1vamkgfSBmcm9tICdAY3RybC9uZ3gtZW1vamktbWFydC9uZ3gtZW1vamknO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbW9qaS1za2lucycsXG4gIHRlbXBsYXRlOiBgXG4gICAgPHNlY3Rpb25cbiAgICAgIGNsYXNzPVwiZW1vamktbWFydC1za2luLXN3YXRjaGVzXCJcbiAgICAgIFtjbGFzcy5vcGVuZWRdPVwib3BlbmVkXCJcbiAgICA+XG4gICAgICA8c3BhblxuICAgICAgICAqbmdGb3I9XCJsZXQgc2tpblRvbmUgb2Ygc2tpblRvbmVzXCJcbiAgICAgICAgY2xhc3M9XCJlbW9qaS1tYXJ0LXNraW4tc3dhdGNoXCJcbiAgICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cInNraW5Ub25lID09PSBza2luXCJcbiAgICAgID5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICAoY2xpY2spPVwidGhpcy5oYW5kbGVDbGljayhza2luVG9uZSlcIlxuICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJoYW5kbGVDbGljayhza2luVG9uZSlcIlxuICAgICAgICAgIChrZXl1cC5zcGFjZSk9XCJoYW5kbGVDbGljayhza2luVG9uZSlcIlxuICAgICAgICAgIGNsYXNzPVwiZW1vamktbWFydC1za2luIGVtb2ppLW1hcnQtc2tpbi10b25lLXt7IHNraW5Ub25lIH19XCJcbiAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICBbdGFiSW5kZXhdPVwidGFiSW5kZXgoc2tpblRvbmUpXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWhpZGRlbl09XCIhaXNWaXNpYmxlKHNraW5Ub25lKVwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1wcmVzc2VkXT1cInByZXNzZWQoc2tpblRvbmUpXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWhhc3BvcHVwXT1cIiEhaXNTZWxlY3RlZChza2luVG9uZSlcIlxuICAgICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiZXhwYW5kZWQoc2tpblRvbmUpXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImkxOG4uc2tpbnRvbmVzW3NraW5Ub25lXVwiXG4gICAgICAgICAgW3RpdGxlXT1cImkxOG4uc2tpbnRvbmVzW3NraW5Ub25lXVwiXG4gICAgICAgID48L3NwYW4+XG4gICAgICA8L3NwYW4+XG4gICAgPC9zZWN0aW9uPlxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIFNraW5Db21wb25lbnQge1xuICAvKiogY3VycmVudGx5IHNlbGVjdGVkIHNraW4gKi9cbiAgQElucHV0KCkgc2tpbj86IEVtb2ppWydza2luJ107XG4gIEBJbnB1dCgpIGkxOG46IGFueTtcbiAgQE91dHB1dCgpIGNoYW5nZVNraW4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcbiAgb3BlbmVkID0gZmFsc2U7XG4gIHNraW5Ub25lcyA9IFsxLCAyLCAzLCA0LCA1LCA2XTtcblxuICB0b2dnbGVPcGVuKCkge1xuICAgIHRoaXMub3BlbmVkID0gIXRoaXMub3BlbmVkO1xuICB9XG5cbiAgaXNTZWxlY3RlZChza2luVG9uZTogRW1vamlbJ3NraW4nXSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBza2luVG9uZSA9PT0gdGhpcy5za2luO1xuICB9XG5cbiAgaXNWaXNpYmxlKHNraW5Ub25lOiBFbW9qaVsnc2tpbiddKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMub3BlbmVkIHx8IHRoaXMuaXNTZWxlY3RlZChza2luVG9uZSk7XG4gIH1cblxuICBwcmVzc2VkKHNraW5Ub25lOiBFbW9qaVsnc2tpbiddKSB7XG4gICAgcmV0dXJuIHRoaXMub3BlbmVkID8gISF0aGlzLmlzU2VsZWN0ZWQoc2tpblRvbmUpIDogJyc7XG4gIH1cblxuICB0YWJJbmRleChza2luVG9uZTogRW1vamlbJ3NraW4nXSkge1xuICAgIHJldHVybiB0aGlzLmlzVmlzaWJsZShza2luVG9uZSkgPyAnMCcgOiAnJztcbiAgfVxuXG4gIGV4cGFuZGVkKHNraW5Ub25lOiBFbW9qaVsnc2tpbiddKSB7XG4gICAgcmV0dXJuIHRoaXMuaXNTZWxlY3RlZChza2luVG9uZSkgPyB0aGlzLm9wZW5lZCA6ICcnO1xuICB9XG5cbiAgaGFuZGxlQ2xpY2soc2tpbjogbnVtYmVyKSB7XG4gICAgaWYgKCF0aGlzLm9wZW5lZCkge1xuICAgICAgdGhpcy5vcGVuZWQgPSB0cnVlO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm9wZW5lZCA9IGZhbHNlO1xuICAgIGlmIChza2luICE9PSB0aGlzLnNraW4pIHtcbiAgICAgIHRoaXMuY2hhbmdlU2tpbi5lbWl0KHNraW4pO1xuICAgIH1cbiAgfVxufVxuIl19
|