ngx-easy-emoji-picker 0.0.2 → 0.0.4
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/README.md +34 -9
- package/esm2022/lib/emoji-picker.component.mjs +1 -1
- package/esm2022/lib/emoji-picker.service.mjs +7 -24
- package/esm2022/ngx-easy-emoji-picker.mjs +1 -1
- package/esm2022/public-api.mjs +2 -2
- package/fesm2022/ngx-easy-emoji-picker.mjs +7 -24
- package/fesm2022/ngx-easy-emoji-picker.mjs.map +1 -1
- package/lib/emoji-picker.service.d.ts +4 -4
- package/package.json +2 -2
- package/esm2022/emojis.json +0 -12794
- package/fesm2022/ngx-easy-emoji-picker-emojis-Co7hqxeV.mjs +0 -21330
- package/fesm2022/ngx-easy-emoji-picker-emojis-Co7hqxeV.mjs.map +0 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
## ngx-emoji-picker
|
|
1
|
+
## ngx-easy-emoji-picker
|
|
2
2
|
|
|
3
|
-

|
|
3
|
+

|
|
4
4
|
|
|
5
5
|
An Angular library to easily pick and use emojis in your application.
|
|
6
6
|
|
|
@@ -18,22 +18,47 @@ You can visit the EmojiHub GitHub repository for more information:
|
|
|
18
18
|
## Installation
|
|
19
19
|
|
|
20
20
|
```bash
|
|
21
|
-
npm install ngx-emoji-picker
|
|
21
|
+
npm install ngx-easy-emoji-picker
|
|
22
22
|
```
|
|
23
23
|
|
|
24
24
|
## Usage
|
|
25
25
|
|
|
26
26
|
1. Import
|
|
27
27
|
|
|
28
|
+
app.module.ts
|
|
29
|
+
|
|
28
30
|
```typescript
|
|
29
|
-
import { EmojiPicker } from "ngx-emoji-picker";
|
|
31
|
+
import { EmojiPicker } from "ngx-easy-emoji-picker";
|
|
32
|
+
import { HttpClientModule } from "@angular/common/http";
|
|
30
33
|
|
|
31
34
|
@NgModule({
|
|
32
|
-
imports: [EmojiPicker],
|
|
35
|
+
imports: [EmojiPicker, HttpClientModule],
|
|
33
36
|
})
|
|
34
37
|
export class AppModule {}
|
|
35
38
|
```
|
|
36
39
|
|
|
40
|
+
# for new version of angular
|
|
41
|
+
|
|
42
|
+
app.config.ts
|
|
43
|
+
|
|
44
|
+
```typescript
|
|
45
|
+
import { ApplicationConfig, provideZoneChangeDetection } from "@angular/core";
|
|
46
|
+
import { provideRouter } from "@angular/router";
|
|
47
|
+
|
|
48
|
+
import { routes } from "./app.routes";
|
|
49
|
+
import { provideAnimationsAsync } from "@angular/platform-browser/animations/async";
|
|
50
|
+
import { provideHttpClient } from "@angular/common/http";
|
|
51
|
+
|
|
52
|
+
export const appConfig: ApplicationConfig = {
|
|
53
|
+
providers: [
|
|
54
|
+
provideZoneChangeDetection({ eventCoalescing: true }),
|
|
55
|
+
provideRouter(routes),
|
|
56
|
+
provideAnimationsAsync(),
|
|
57
|
+
provideHttpClient(),
|
|
58
|
+
],
|
|
59
|
+
};
|
|
60
|
+
```
|
|
61
|
+
|
|
37
62
|
2. Use it in your template
|
|
38
63
|
|
|
39
64
|
```html
|
|
@@ -47,7 +72,7 @@ app.component.ts
|
|
|
47
72
|
```typescript
|
|
48
73
|
import { Component } from "@angular/core";
|
|
49
74
|
import { RouterOutlet } from "@angular/router";
|
|
50
|
-
import { EmojiPicker } from "ngx-emoji-picker";
|
|
75
|
+
import { EmojiPicker } from "ngx-easy-emoji-picker";
|
|
51
76
|
|
|
52
77
|
@Component({
|
|
53
78
|
selector: "app-root",
|
|
@@ -57,9 +82,9 @@ import { EmojiPicker } from "ngx-emoji-picker";
|
|
|
57
82
|
styleUrl: "./app.component.css",
|
|
58
83
|
})
|
|
59
84
|
export class AppComponent {
|
|
60
|
-
title =
|
|
85
|
+
title = "my-project";
|
|
61
86
|
|
|
62
|
-
selectedEmoji =
|
|
87
|
+
selectedEmoji = "";
|
|
63
88
|
|
|
64
89
|
onEmojiSelected(emoji: string) {
|
|
65
90
|
this.selectedEmoji = emoji;
|
|
@@ -73,4 +98,4 @@ app.component.html
|
|
|
73
98
|
<emoji-picker (selectedEmoji)="onEmojiSelected($event)"> </emoji-picker>
|
|
74
99
|
|
|
75
100
|
<span [innerHTML]="selectedEmoji"></span>
|
|
76
|
-
```
|
|
101
|
+
```
|
|
@@ -53,4 +53,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.3", ngImpor
|
|
|
53
53
|
}], ctorParameters: () => [{ type: i1.EmojiPickerService }], propDecorators: { selectedEmoji: [{
|
|
54
54
|
type: Output
|
|
55
55
|
}] } });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1vamktcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1lYXN5LWVtb2ppLXBpY2tlci9zcmMvbGliL2Vtb2ppLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZWFzeS1lbW9qaS1waWNrZXIvc3JjL2xpYi9lbW9qaS1waWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFVaEUsTUFBTSxPQUFPLFdBQVc7SUFnQnRCLFlBQW9CLElBQXdCO1FBQXhCLFNBQUksR0FBSixJQUFJLENBQW9CO1FBZjVDLGNBQVMsR0FBaUIsRUFBRSxDQUFDO1FBQzdCLHVCQUFrQixHQUFpQixFQUFFLENBQUM7UUFFNUIsa0JBQWEsR0FBUSxJQUFJLFlBQVksRUFBVSxDQUFDO1FBRTFELG9CQUFlLEdBQUc7WUFDaEIsRUFBRSxJQUFJLEVBQUUsb0JBQW9CLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRTtZQUMxQyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFO1lBQ3RDLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFO1lBQ2pDLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7WUFDekMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7WUFDL0IsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7WUFDL0IsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7U0FDL0IsQ0FBQztJQUU2QyxDQUFDO0lBRWhELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFO1lBQzNDLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO2dCQUN0QyxPQUFPO29CQUNMLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtvQkFDeEIsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO29CQUNsQixRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7b0JBQzNCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO2lCQUMxQixDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3pELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFVO1FBQ3BCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsUUFBZ0I7UUFDL0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDeEQsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQ2xDLENBQUM7UUFDRixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVPLFlBQVk7UUFDbEIsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTlELElBQUksWUFBWSxFQUFFLENBQUM7WUFDakIsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDOUIsQ0FBQztJQUNILENBQUM7OEdBbkRVLFdBQVc7a0dBQVgsV0FBVyxxSENWeEIsc21CQWlCQTs7MkZEUGEsV0FBVztrQkFQdkIsU0FBUzsrQkFDRSxjQUFjLGNBQ1osSUFBSSxXQUNQLEVBQUU7dUZBUUQsYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBFbW9qaVBpY2tlclNlcnZpY2UgfSBmcm9tIFwiLi9lbW9qaS1waWNrZXIuc2VydmljZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiZW1vamktcGlja2VyXCIsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXSxcclxuICB0ZW1wbGF0ZVVybDogXCIuL2Vtb2ppLXBpY2tlci5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsOiBcIi4vZW1vamktcGlja2VyLmNvbXBvbmVudC5zY3NzXCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFbW9qaVBpY2tlciB7XHJcbiAgZW1vamlMaXN0OiBBcnJheTxFbW9qaT4gPSBbXTtcclxuICBkaXNwbGF5ZWRFbW9qaUxpc3Q6IEFycmF5PEVtb2ppPiA9IFtdO1xyXG5cclxuICBAT3V0cHV0KCkgc2VsZWN0ZWRFbW9qaTogYW55ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG4gIGVtb2ppQ2F0ZWdvcmllcyA9IFtcclxuICAgIHsgbmFtZTogXCJzbWlsZXlzIGFuZCBwZW9wbGVcIiwgaWNvbjogXCLwn5iAXCIgfSxcclxuICAgIHsgbmFtZTogXCJmb29kIGFuZCBkcmlua1wiLCBpY29uOiBcIvCfjZRcIiB9LFxyXG4gICAgeyBuYW1lOiBcImFjdGl2aXRpZXNcIiwgaWNvbjogXCLimr1cIiB9LFxyXG4gICAgeyBuYW1lOiBcInRyYXZlbCBhbmQgcGxhY2VzXCIsIGljb246IFwi8J+al1wiIH0sXHJcbiAgICB7IG5hbWU6IFwib2JqZWN0c1wiLCBpY29uOiBcIvCfk6ZcIiB9LFxyXG4gICAgeyBuYW1lOiBcInN5bWJvbHNcIiwgaWNvbjogXCLinaTvuI9cIiB9LFxyXG4gICAgeyBuYW1lOiBcImZsYWdzXCIsIGljb246IFwi8J+Ps++4j1wiIH0sXHJcbiAgXTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZXBzOiBFbW9qaVBpY2tlclNlcnZpY2UpIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5fZXBzLmdldEVtb2ppcygpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgdGhpcy5lbW9qaUxpc3QgPSByZXMubWFwKChlbW9qaTogYW55KSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgIGNhdGVnb3J5OiBlbW9qaS5jYXRlZ29yeSxcclxuICAgICAgICAgIGdyb3VwOiBlbW9qaS5ncm91cCxcclxuICAgICAgICAgIGh0bWxDb2RlOiBlbW9qaS5odG1sQ29kZVswXSxcclxuICAgICAgICAgIG5hbWU6IGVtb2ppLm5hbWUsXHJcbiAgICAgICAgICB1bmljb2RlOiBlbW9qaS51bmljb2RlWzBdLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5kaXNwbGF5ZWRFbW9qaUxpc3QgPSB0aGlzLmVtb2ppTGlzdC5zbGljZSgwLCAxMDApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBzZWxlY3RFbW9qaShlbW9qaTogYW55KSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkRW1vamkubmV4dChlbW9qaS5odG1sQ29kZSk7XHJcbiAgfVxyXG5cclxuICBmaWx0ZXJCeUNhdGVnb3J5KGNhdGVnb3J5OiBzdHJpbmcpIHtcclxuICAgIHRoaXMuZGlzcGxheWVkRW1vamlMaXN0ID0gdGhpcy5lbW9qaUxpc3QuZmlsdGVyKChlbW9qaSkgPT5cclxuICAgICAgZW1vamkuY2F0ZWdvcnkuaW5jbHVkZXMoY2F0ZWdvcnkpXHJcbiAgICApO1xyXG4gICAgdGhpcy5fc2Nyb2xsVG9Ub3AoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3Njcm9sbFRvVG9wKCkge1xyXG4gICAgY29uc3QgZW1vamlXcmFwcGVyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcIi5lbW9qaS13cmFwcGVyXCIpO1xyXG5cclxuICAgIGlmIChlbW9qaVdyYXBwZXIpIHtcclxuICAgICAgZW1vamlXcmFwcGVyLnNjcm9sbFRvKDAsIDApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxudHlwZSBFbW9qaSA9IHtcclxuICBjYXRlZ29yeTogc3RyaW5nO1xyXG4gIGdyb3VwOiBzdHJpbmc7XHJcbiAgaHRtbENvZGU6IEFycmF5PHN0cmluZz47XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHVuaWNvZGU6IEFycmF5PHN0cmluZz47XHJcbn07XHJcbiIsIjxkaXYgY2xhc3M9XCJlbW9qaS1jb250YWluZXJcIj5cclxuICA8ZGl2IGNsYXNzPVwiZW1vamktd3JhcHBlclwiPlxyXG4gICAgQGZvcihlbW9qaSBvZiBkaXNwbGF5ZWRFbW9qaUxpc3Q7IHRyYWNrIGVtb2ppKSB7XHJcbiAgICA8ZGl2IGNsYXNzPVwiZW1vamlcIiAoY2xpY2spPVwic2VsZWN0RW1vamkoZW1vamkpXCI+XHJcbiAgICAgIDwhLS0gPGltZyBbc3JjXT1cImVtb2ppLnVybFwiIGFsdD1cIlwiIHdpZHRoPVwiMjVcIiBoZWlnaHQ9XCIyNVwiIC8+IC0tPlxyXG4gICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cImVtb2ppLmh0bWxDb2RlXCI+PC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgICB9XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImVtb2ppLWJ1dHRvbi13cmFwcGVyXCI+XHJcbiAgICBAZm9yKGNhdGVnb3J5IG9mIGVtb2ppQ2F0ZWdvcmllczsgdHJhY2sgY2F0ZWdvcnkpIHtcclxuICAgIDxzcGFuIGNsYXNzPVwiZW1vamktYnV0dG9uXCIgKGNsaWNrKT1cImZpbHRlckJ5Q2F0ZWdvcnkoY2F0ZWdvcnkubmFtZSlcIj57e1xyXG4gICAgICBjYXRlZ29yeS5pY29uXHJcbiAgICB9fTwvc3Bhbj5cclxuICAgIH1cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,31 +1,14 @@
|
|
|
1
1
|
import { Injectable } from "@angular/core";
|
|
2
|
-
import { Observable } from "rxjs";
|
|
3
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common/http";
|
|
4
4
|
export class EmojiPickerService {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.
|
|
7
|
-
}
|
|
8
|
-
async loadEmojis() {
|
|
9
|
-
const emojiData = await import("../emojis.json");
|
|
10
|
-
this.emojis = emojiData.default || emojiData;
|
|
5
|
+
constructor(_http) {
|
|
6
|
+
this._http = _http;
|
|
11
7
|
}
|
|
12
8
|
getEmojis() {
|
|
13
|
-
|
|
14
|
-
return new Observable((observer) => {
|
|
15
|
-
this.loadEmojis().then(() => {
|
|
16
|
-
observer.next(this.emojis);
|
|
17
|
-
observer.complete();
|
|
18
|
-
});
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
return new Observable((observer) => {
|
|
23
|
-
observer.next(this.emojis);
|
|
24
|
-
observer.complete();
|
|
25
|
-
});
|
|
26
|
-
}
|
|
9
|
+
return this._http.get("https://storage.googleapis.com/ngx-easy-emoji-picker/emojis.json");
|
|
27
10
|
}
|
|
28
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: EmojiPickerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: EmojiPickerService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
29
12
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: EmojiPickerService, providedIn: "root" }); }
|
|
30
13
|
}
|
|
31
14
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: EmojiPickerService, decorators: [{
|
|
@@ -33,5 +16,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.3", ngImpor
|
|
|
33
16
|
args: [{
|
|
34
17
|
providedIn: "root",
|
|
35
18
|
}]
|
|
36
|
-
}], ctorParameters: () => [] });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1vamktcGlja2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZWFzeS1lbW9qaS1waWNrZXIvc3JjL2xpYi9lbW9qaS1waWNrZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPM0MsTUFBTSxPQUFPLGtCQUFrQjtJQUU3QixZQUFvQixLQUFpQjtRQUFqQixVQUFLLEdBQUwsS0FBSyxDQUFZO0lBQUcsQ0FBQztJQUV6QyxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FDbkIsa0VBQWtFLENBQ25FLENBQUM7SUFDSixDQUFDOzhHQVJVLGtCQUFrQjtrSEFBbEIsa0JBQWtCLGNBRmpCLE1BQU07OzJGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiBcInJvb3RcIixcclxufSlcclxuZXhwb3J0IGNsYXNzIEVtb2ppUGlja2VyU2VydmljZSB7XHJcbiAgZW1vamlzOiBhbnk7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfaHR0cDogSHR0cENsaWVudCkge31cclxuXHJcbiAgZ2V0RW1vamlzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2h0dHAuZ2V0KFxyXG4gICAgICBcImh0dHBzOi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9uZ3gtZWFzeS1lbW9qaS1waWNrZXIvZW1vamlzLmpzb25cIlxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* Generated bundle index. Do not edit.
|
|
3
3
|
*/
|
|
4
4
|
export * from './public-api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWVhc3ktZW1vamktcGlja2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvbmd4LWVhc3ktZW1vamktcGlja2VyL3NyYy9uZ3gtZWFzeS1lbW9qaS1waWNrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Public API Surface of ngx-emoji-picker
|
|
2
|
+
* Public API Surface of ngx-easy-emoji-picker
|
|
3
3
|
*/
|
|
4
4
|
export * from "./lib/emoji-picker.service";
|
|
5
5
|
export * from "./lib/emoji-picker.component";
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1lYXN5LWVtb2ppLXBpY2tlci9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyw4QkFBOEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtZWFzeS1lbW9qaS1waWNrZXJcclxuICovXHJcblxyXG5leHBvcnQgKiBmcm9tIFwiLi9saWIvZW1vamktcGlja2VyLnNlcnZpY2VcIjtcclxuZXhwb3J0ICogZnJvbSBcIi4vbGliL2Vtb2ppLXBpY2tlci5jb21wb25lbnRcIjsiXX0=
|
|
@@ -1,32 +1,15 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Injectable, EventEmitter, Component, Output } from '@angular/core';
|
|
3
|
-
import
|
|
3
|
+
import * as i1 from '@angular/common/http';
|
|
4
4
|
|
|
5
5
|
class EmojiPickerService {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.
|
|
8
|
-
}
|
|
9
|
-
async loadEmojis() {
|
|
10
|
-
const emojiData = await import('./ngx-easy-emoji-picker-emojis-Co7hqxeV.mjs');
|
|
11
|
-
this.emojis = emojiData.default || emojiData;
|
|
6
|
+
constructor(_http) {
|
|
7
|
+
this._http = _http;
|
|
12
8
|
}
|
|
13
9
|
getEmojis() {
|
|
14
|
-
|
|
15
|
-
return new Observable((observer) => {
|
|
16
|
-
this.loadEmojis().then(() => {
|
|
17
|
-
observer.next(this.emojis);
|
|
18
|
-
observer.complete();
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
else {
|
|
23
|
-
return new Observable((observer) => {
|
|
24
|
-
observer.next(this.emojis);
|
|
25
|
-
observer.complete();
|
|
26
|
-
});
|
|
27
|
-
}
|
|
10
|
+
return this._http.get("https://storage.googleapis.com/ngx-easy-emoji-picker/emojis.json");
|
|
28
11
|
}
|
|
29
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: EmojiPickerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: EmojiPickerService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
30
13
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: EmojiPickerService, providedIn: "root" }); }
|
|
31
14
|
}
|
|
32
15
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: EmojiPickerService, decorators: [{
|
|
@@ -34,7 +17,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.3", ngImpor
|
|
|
34
17
|
args: [{
|
|
35
18
|
providedIn: "root",
|
|
36
19
|
}]
|
|
37
|
-
}], ctorParameters: () => [] });
|
|
20
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }] });
|
|
38
21
|
|
|
39
22
|
class EmojiPicker {
|
|
40
23
|
constructor(_eps) {
|
|
@@ -90,7 +73,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.3", ngImpor
|
|
|
90
73
|
}] } });
|
|
91
74
|
|
|
92
75
|
/*
|
|
93
|
-
* Public API Surface of ngx-emoji-picker
|
|
76
|
+
* Public API Surface of ngx-easy-emoji-picker
|
|
94
77
|
*/
|
|
95
78
|
|
|
96
79
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-easy-emoji-picker.mjs","sources":["../../../projects/ngx-emoji-picker/src/lib/emoji-picker.service.ts","../../../projects/ngx-emoji-picker/src/lib/emoji-picker.component.ts","../../../projects/ngx-emoji-picker/src/lib/emoji-picker.component.html","../../../projects/ngx-emoji-picker/src/public-api.ts","../../../projects/ngx-emoji-picker/src/ngx-easy-emoji-picker.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\r\n\r\nimport {
|
|
1
|
+
{"version":3,"file":"ngx-easy-emoji-picker.mjs","sources":["../../../projects/ngx-easy-emoji-picker/src/lib/emoji-picker.service.ts","../../../projects/ngx-easy-emoji-picker/src/lib/emoji-picker.component.ts","../../../projects/ngx-easy-emoji-picker/src/lib/emoji-picker.component.html","../../../projects/ngx-easy-emoji-picker/src/public-api.ts","../../../projects/ngx-easy-emoji-picker/src/ngx-easy-emoji-picker.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\r\n\r\nimport { HttpClient } from \"@angular/common/http\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class EmojiPickerService {\r\n emojis: any;\r\n constructor(private _http: HttpClient) {}\r\n\r\n getEmojis() {\r\n return this._http.get(\r\n \"https://storage.googleapis.com/ngx-easy-emoji-picker/emojis.json\"\r\n );\r\n }\r\n}\r\n","import { Component, EventEmitter, Output } from \"@angular/core\";\r\nimport { EmojiPickerService } from \"./emoji-picker.service\";\r\n\r\n@Component({\r\n selector: \"emoji-picker\",\r\n standalone: true,\r\n imports: [],\r\n templateUrl: \"./emoji-picker.component.html\",\r\n styleUrl: \"./emoji-picker.component.scss\",\r\n})\r\nexport class EmojiPicker {\r\n emojiList: Array<Emoji> = [];\r\n displayedEmojiList: Array<Emoji> = [];\r\n\r\n @Output() selectedEmoji: any = new EventEmitter<string>();\r\n\r\n emojiCategories = [\r\n { name: \"smileys and people\", icon: \"😀\" },\r\n { name: \"food and drink\", icon: \"🍔\" },\r\n { name: \"activities\", icon: \"⚽\" },\r\n { name: \"travel and places\", icon: \"🚗\" },\r\n { name: \"objects\", icon: \"📦\" },\r\n { name: \"symbols\", icon: \"❤️\" },\r\n { name: \"flags\", icon: \"🏳️\" },\r\n ];\r\n\r\n constructor(private _eps: EmojiPickerService) {}\r\n\r\n ngOnInit() {\r\n this._eps.getEmojis().subscribe((res: any) => {\r\n this.emojiList = res.map((emoji: any) => {\r\n return {\r\n category: emoji.category,\r\n group: emoji.group,\r\n htmlCode: emoji.htmlCode[0],\r\n name: emoji.name,\r\n unicode: emoji.unicode[0],\r\n };\r\n });\r\n\r\n this.displayedEmojiList = this.emojiList.slice(0, 100);\r\n });\r\n }\r\n\r\n selectEmoji(emoji: any) {\r\n this.selectedEmoji.next(emoji.htmlCode);\r\n }\r\n\r\n filterByCategory(category: string) {\r\n this.displayedEmojiList = this.emojiList.filter((emoji) =>\r\n emoji.category.includes(category)\r\n );\r\n this._scrollToTop();\r\n }\r\n\r\n private _scrollToTop() {\r\n const emojiWrapper = document.querySelector(\".emoji-wrapper\");\r\n\r\n if (emojiWrapper) {\r\n emojiWrapper.scrollTo(0, 0);\r\n }\r\n }\r\n}\r\n\r\ntype Emoji = {\r\n category: string;\r\n group: string;\r\n htmlCode: Array<string>;\r\n name: string;\r\n unicode: Array<string>;\r\n};\r\n","<div class=\"emoji-container\">\r\n <div class=\"emoji-wrapper\">\r\n @for(emoji of displayedEmojiList; track emoji) {\r\n <div class=\"emoji\" (click)=\"selectEmoji(emoji)\">\r\n <!-- <img [src]=\"emoji.url\" alt=\"\" width=\"25\" height=\"25\" /> -->\r\n <span [innerHTML]=\"emoji.htmlCode\"></span>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"emoji-button-wrapper\">\r\n @for(category of emojiCategories; track category) {\r\n <span class=\"emoji-button\" (click)=\"filterByCategory(category.name)\">{{\r\n category.icon\r\n }}</span>\r\n }\r\n </div>\r\n</div>\r\n","/*\r\n * Public API Surface of ngx-easy-emoji-picker\r\n */\r\n\r\nexport * from \"./lib/emoji-picker.service\";\r\nexport * from \"./lib/emoji-picker.component\";","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.EmojiPickerService"],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { HttpClient } from "@angular/common/http";
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class EmojiPickerService {
|
|
4
|
+
private _http;
|
|
4
5
|
emojis: any;
|
|
5
|
-
constructor();
|
|
6
|
-
|
|
7
|
-
getEmojis(): Observable<unknown>;
|
|
6
|
+
constructor(_http: HttpClient);
|
|
7
|
+
getEmojis(): import("rxjs").Observable<Object>;
|
|
8
8
|
static ɵfac: i0.ɵɵFactoryDeclaration<EmojiPickerService, never>;
|
|
9
9
|
static ɵprov: i0.ɵɵInjectableDeclaration<EmojiPickerService>;
|
|
10
10
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ngx-easy-emoji-picker",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"author": "Alex Voronin <alex.varonin@gmail.com>",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"peerDependencies": {
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"typings": "index.d.ts",
|
|
17
17
|
"repository": {
|
|
18
18
|
"type": "git",
|
|
19
|
-
"url": "https://github.com/PsySanchez/ngx-emoji-picker.git"
|
|
19
|
+
"url": "https://github.com/PsySanchez/ngx-easy-emoji-picker.git"
|
|
20
20
|
},
|
|
21
21
|
"keywords": [
|
|
22
22
|
"emoji",
|