@oiij/emoji-picker 0.0.14 → 0.0.15
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/dist/index.d.mts +8 -8
- package/dist/index.mjs +10 -13
- package/package.json +5 -5
package/dist/index.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as _vueuse_core0 from "@vueuse/core";
|
|
2
2
|
import { Picker } from "emoji-mart";
|
|
3
|
-
import * as
|
|
3
|
+
import * as vue from "vue";
|
|
4
4
|
import { MaybeRefOrGetter, TemplateRef } from "vue";
|
|
5
5
|
|
|
6
6
|
//#region src/index.d.ts
|
|
@@ -197,7 +197,7 @@ type UseEmojiPickerOptions = {
|
|
|
197
197
|
* import { useEmojiPicker } from '@oiij/emoji-picker'
|
|
198
198
|
*
|
|
199
199
|
* const pickerRef = ref()
|
|
200
|
-
* const { emojiPickerInst,
|
|
200
|
+
* const { emojiPickerInst, setDarkMode } = useEmojiPicker(pickerRef, {
|
|
201
201
|
* darkMode: false,
|
|
202
202
|
* language: 'zh',
|
|
203
203
|
* emojiPickerOptions: {
|
|
@@ -214,12 +214,12 @@ type UseEmojiPickerOptions = {
|
|
|
214
214
|
* ```
|
|
215
215
|
*/
|
|
216
216
|
declare function useEmojiPicker(templateRef: TemplateRef<HTMLElement>, options?: UseEmojiPickerOptions): {
|
|
217
|
-
templateRef: Readonly<
|
|
218
|
-
darkMode:
|
|
219
|
-
language:
|
|
220
|
-
emojiPickerInst:
|
|
221
|
-
|
|
222
|
-
|
|
217
|
+
templateRef: Readonly<vue.ShallowRef<HTMLElement | null>>;
|
|
218
|
+
darkMode: vue.Ref<boolean | undefined, boolean | undefined>;
|
|
219
|
+
language: vue.Ref<"zh" | "en" | undefined, "zh" | "en" | undefined>;
|
|
220
|
+
emojiPickerInst: vue.ShallowRef<Picker | null, Picker | null>;
|
|
221
|
+
setDarkMode: (darkMode?: boolean) => void;
|
|
222
|
+
setLanguage: (language?: "zh" | "en") => void;
|
|
223
223
|
onRender: _vueuse_core0.EventHookOn<[Picker]>;
|
|
224
224
|
};
|
|
225
225
|
/**
|
package/dist/index.mjs
CHANGED
|
@@ -2,7 +2,6 @@ import data from "@emoji-mart/data";
|
|
|
2
2
|
import { createEventHook, watchOnce } from "@vueuse/core";
|
|
3
3
|
import { Picker } from "emoji-mart";
|
|
4
4
|
import { onUnmounted, ref, shallowRef, toValue, watch, watchEffect } from "vue";
|
|
5
|
-
|
|
6
5
|
//#region ../_utils/custom-watch.ts
|
|
7
6
|
function watchRefOrGetter(value, callback) {
|
|
8
7
|
const refValue = ref(toValue(value));
|
|
@@ -14,7 +13,6 @@ function watchRefOrGetter(value, callback) {
|
|
|
14
13
|
});
|
|
15
14
|
return refValue;
|
|
16
15
|
}
|
|
17
|
-
|
|
18
16
|
//#endregion
|
|
19
17
|
//#region src/index.ts
|
|
20
18
|
/**
|
|
@@ -31,7 +29,7 @@ function watchRefOrGetter(value, callback) {
|
|
|
31
29
|
* import { useEmojiPicker } from '@oiij/emoji-picker'
|
|
32
30
|
*
|
|
33
31
|
* const pickerRef = ref()
|
|
34
|
-
* const { emojiPickerInst,
|
|
32
|
+
* const { emojiPickerInst, setDarkMode } = useEmojiPicker(pickerRef, {
|
|
35
33
|
* darkMode: false,
|
|
36
34
|
* language: 'zh',
|
|
37
35
|
* emojiPickerOptions: {
|
|
@@ -49,8 +47,8 @@ function watchRefOrGetter(value, callback) {
|
|
|
49
47
|
*/
|
|
50
48
|
function useEmojiPicker(templateRef, options) {
|
|
51
49
|
const { darkMode, language, emojiPickerOptions } = options ?? {};
|
|
52
|
-
const darkModeRef = watchRefOrGetter(darkMode,
|
|
53
|
-
const languageRef = watchRefOrGetter(language,
|
|
50
|
+
const darkModeRef = watchRefOrGetter(darkMode, () => setDarkMode());
|
|
51
|
+
const languageRef = watchRefOrGetter(language, () => setLanguage());
|
|
54
52
|
const _options = {
|
|
55
53
|
data,
|
|
56
54
|
emojiButtonRadius: "6px",
|
|
@@ -73,8 +71,8 @@ function useEmojiPicker(templateRef, options) {
|
|
|
73
71
|
*
|
|
74
72
|
* @param darkMode - 是否开启暗黑模式
|
|
75
73
|
*/
|
|
76
|
-
function
|
|
77
|
-
if (darkMode !== void 0
|
|
74
|
+
function setDarkMode(darkMode) {
|
|
75
|
+
if (darkMode !== void 0) darkModeRef.value = darkMode;
|
|
78
76
|
_options.theme = darkModeRef.value ? "dark" : "light";
|
|
79
77
|
destroy();
|
|
80
78
|
render();
|
|
@@ -84,8 +82,8 @@ function useEmojiPicker(templateRef, options) {
|
|
|
84
82
|
*
|
|
85
83
|
* @param language - 语言
|
|
86
84
|
*/
|
|
87
|
-
function
|
|
88
|
-
if (language !== void 0
|
|
85
|
+
function setLanguage(language) {
|
|
86
|
+
if (language !== void 0) languageRef.value = language;
|
|
89
87
|
_options.locale = languageRef.value ?? "zh";
|
|
90
88
|
destroy();
|
|
91
89
|
render();
|
|
@@ -112,11 +110,10 @@ function useEmojiPicker(templateRef, options) {
|
|
|
112
110
|
darkMode: darkModeRef,
|
|
113
111
|
language: languageRef,
|
|
114
112
|
emojiPickerInst,
|
|
115
|
-
|
|
116
|
-
|
|
113
|
+
setDarkMode,
|
|
114
|
+
setLanguage,
|
|
117
115
|
onRender: onRenderEvent.on
|
|
118
116
|
};
|
|
119
117
|
}
|
|
120
|
-
|
|
121
118
|
//#endregion
|
|
122
|
-
export { useEmojiPicker };
|
|
119
|
+
export { useEmojiPicker };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oiij/emoji-picker",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.15",
|
|
5
5
|
"description": "A Vue Composable for emoji-picker",
|
|
6
6
|
"author": "oiij",
|
|
7
7
|
"license": "MIT",
|
|
@@ -26,15 +26,15 @@
|
|
|
26
26
|
],
|
|
27
27
|
"peerDependencies": {
|
|
28
28
|
"@emoji-mart/data": "^1.2.1",
|
|
29
|
-
"@vueuse/core": "^14.1
|
|
29
|
+
"@vueuse/core": "^14.2.1",
|
|
30
30
|
"emoji-mart": "^5.6.0",
|
|
31
|
-
"vue": "^3.5.
|
|
31
|
+
"vue": "^3.5.30"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@emoji-mart/data": "^1.2.1",
|
|
35
|
-
"@vueuse/core": "^14.1
|
|
35
|
+
"@vueuse/core": "^14.2.1",
|
|
36
36
|
"emoji-mart": "^5.6.0",
|
|
37
|
-
"vue": "^3.5.
|
|
37
|
+
"vue": "^3.5.30"
|
|
38
38
|
},
|
|
39
39
|
"publishConfig": {
|
|
40
40
|
"access": "public"
|