@planningcenter/chat-react-native 3.33.1-rc.2 → 3.34.0-rc.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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emoji_tab.d.ts","sourceRoot":"","sources":["../../../src/screens/avatar_picker/emoji_tab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"emoji_tab.d.ts","sourceRoot":"","sources":["../../../src/screens/avatar_picker/emoji_tab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAgB1C,UAAU,aAAa;IACrB,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACvC;AAED,wBAAgB,QAAQ,CAAC,EAAE,aAAa,EAAE,EAAE,aAAa,qBAwDxD"}
|
|
@@ -1,7 +1,16 @@
|
|
|
1
1
|
import React, { useCallback } from 'react';
|
|
2
2
|
import { StyleSheet, View } from 'react-native';
|
|
3
3
|
import { EmojiKeyboard } from 'rn-emoji-keyboard';
|
|
4
|
+
// rn-emoji-keyboard exposes no public exclusion API, so we reach into its
|
|
5
|
+
// internal src/ tree for the emoji JSON. Version is pinned in package.json
|
|
6
|
+
// — verify this path still resolves before bumping rn-emoji-keyboard.
|
|
7
|
+
import emojiData from 'rn-emoji-keyboard/src/assets/emojis.json';
|
|
4
8
|
import { useTheme } from '../../hooks';
|
|
9
|
+
const BLOCKED_EMOJIS = new Set(['🖕']);
|
|
10
|
+
const filteredEmojis = emojiData.map(category => ({
|
|
11
|
+
...category,
|
|
12
|
+
data: category.data.filter(e => !BLOCKED_EMOJIS.has(e.emoji)),
|
|
13
|
+
}));
|
|
5
14
|
export function EmojiTab({ onEmojiSelect }) {
|
|
6
15
|
const styles = useStyles();
|
|
7
16
|
const { colors } = useTheme();
|
|
@@ -30,7 +39,7 @@ export function EmojiTab({ onEmojiSelect }) {
|
|
|
30
39
|
},
|
|
31
40
|
};
|
|
32
41
|
return (<View style={styles.container}>
|
|
33
|
-
<EmojiKeyboard categoryPosition="top" onEmojiSelected={handleEmojiSelected} enableSearchBar enableRecentlyUsed theme={emojiTheme} styles={{
|
|
42
|
+
<EmojiKeyboard categoryPosition="top" emojisByCategory={filteredEmojis} onEmojiSelected={handleEmojiSelected} enableSearchBar enableRecentlyUsed theme={emojiTheme} styles={{
|
|
34
43
|
container: { borderRadius: 0 },
|
|
35
44
|
category: {
|
|
36
45
|
container: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emoji_tab.js","sourceRoot":"","sources":["../../../src/screens/avatar_picker/emoji_tab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"emoji_tab.js","sourceRoot":"","sources":["../../../src/screens/avatar_picker/emoji_tab.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useCallback } from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { EmojiKeyboard, type EmojiType, type EmojisByCategory } from 'rn-emoji-keyboard'\n// rn-emoji-keyboard exposes no public exclusion API, so we reach into its\n// internal src/ tree for the emoji JSON. Version is pinned in package.json\n// — verify this path still resolves before bumping rn-emoji-keyboard.\nimport emojiData from 'rn-emoji-keyboard/src/assets/emojis.json'\nimport { useTheme } from '../../hooks'\n\nconst BLOCKED_EMOJIS = new Set(['🖕'])\n\nconst filteredEmojis = (emojiData as EmojisByCategory[]).map(category => ({\n ...category,\n data: category.data.filter(e => !BLOCKED_EMOJIS.has(e.emoji)),\n}))\n\ninterface EmojiTabProps {\n onEmojiSelect: (emoji: string) => void\n}\n\nexport function EmojiTab({ onEmojiSelect }: EmojiTabProps) {\n const styles = useStyles()\n const { colors } = useTheme()\n\n const handleEmojiSelected = useCallback(\n (emojiObject: EmojiType) => {\n onEmojiSelect(emojiObject.emoji)\n },\n [onEmojiSelect]\n )\n\n const emojiTheme = {\n container: colors.fillColorNeutral100Inverted,\n header: colors.textColorDefaultSecondary,\n knob: colors.fillColorNeutral040,\n skinTonesContainer: colors.fillColorNeutral060,\n category: {\n icon: colors.textColorDefaultSecondary,\n iconActive: colors.interaction,\n container: colors.fillColorNeutral100Inverted,\n containerActive: colors.fillColorNeutral080,\n },\n search: {\n background: colors.fillColorNeutral080,\n text: colors.textColorDefaultPrimary,\n placeholder: colors.textColorDefaultSecondary,\n icon: colors.textColorDefaultSecondary,\n },\n emoji: {\n selected: colors.fillColorNeutral080,\n },\n }\n\n return (\n <View style={styles.container}>\n <EmojiKeyboard\n categoryPosition=\"top\"\n emojisByCategory={filteredEmojis}\n onEmojiSelected={handleEmojiSelected}\n enableSearchBar\n enableRecentlyUsed\n theme={emojiTheme}\n styles={{\n container: { borderRadius: 0 },\n category: {\n container: {\n borderRadius: 0,\n marginTop: -6,\n borderBottomWidth: 1,\n borderBottomColor: colors.borderColorDefaultDim,\n },\n },\n }}\n />\n </View>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n\n return StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: colors.fillColorNeutral100Inverted,\n },\n })\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@planningcenter/chat-react-native",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.34.0-rc.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "build/index.js",
|
|
6
6
|
"types": "build/index.d.ts",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"@fortawesome/react-native-fontawesome": "^0.3.2",
|
|
28
28
|
"lodash-inflection": "^1.5.0",
|
|
29
29
|
"react-compiler-runtime": "^1.0.0",
|
|
30
|
-
"rn-emoji-keyboard": "
|
|
30
|
+
"rn-emoji-keyboard": "1.7.0"
|
|
31
31
|
},
|
|
32
32
|
"peerDependencies": {
|
|
33
33
|
"@planningcenter/datetime-fmt": ">=2.0.0",
|
|
@@ -65,5 +65,5 @@
|
|
|
65
65
|
"react-native-url-polyfill": "^2.0.0",
|
|
66
66
|
"typescript": "~5.9.2"
|
|
67
67
|
},
|
|
68
|
-
"gitHead": "
|
|
68
|
+
"gitHead": "515400fc78733bf6f1a6ed53ed85310753eb997c"
|
|
69
69
|
}
|
|
@@ -1,8 +1,19 @@
|
|
|
1
1
|
import React, { useCallback } from 'react'
|
|
2
2
|
import { StyleSheet, View } from 'react-native'
|
|
3
|
-
import { EmojiKeyboard, type EmojiType } from 'rn-emoji-keyboard'
|
|
3
|
+
import { EmojiKeyboard, type EmojiType, type EmojisByCategory } from 'rn-emoji-keyboard'
|
|
4
|
+
// rn-emoji-keyboard exposes no public exclusion API, so we reach into its
|
|
5
|
+
// internal src/ tree for the emoji JSON. Version is pinned in package.json
|
|
6
|
+
// — verify this path still resolves before bumping rn-emoji-keyboard.
|
|
7
|
+
import emojiData from 'rn-emoji-keyboard/src/assets/emojis.json'
|
|
4
8
|
import { useTheme } from '../../hooks'
|
|
5
9
|
|
|
10
|
+
const BLOCKED_EMOJIS = new Set(['🖕'])
|
|
11
|
+
|
|
12
|
+
const filteredEmojis = (emojiData as EmojisByCategory[]).map(category => ({
|
|
13
|
+
...category,
|
|
14
|
+
data: category.data.filter(e => !BLOCKED_EMOJIS.has(e.emoji)),
|
|
15
|
+
}))
|
|
16
|
+
|
|
6
17
|
interface EmojiTabProps {
|
|
7
18
|
onEmojiSelect: (emoji: string) => void
|
|
8
19
|
}
|
|
@@ -44,6 +55,7 @@ export function EmojiTab({ onEmojiSelect }: EmojiTabProps) {
|
|
|
44
55
|
<View style={styles.container}>
|
|
45
56
|
<EmojiKeyboard
|
|
46
57
|
categoryPosition="top"
|
|
58
|
+
emojisByCategory={filteredEmojis}
|
|
47
59
|
onEmojiSelected={handleEmojiSelected}
|
|
48
60
|
enableSearchBar
|
|
49
61
|
enableRecentlyUsed
|