@elik56a/react-native-pickers 0.0.0-stage → 0.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/LICENSE +21 -0
- package/README.md +276 -2
- package/lib/date/Calendar.d.ts +89 -0
- package/lib/date/Calendar.d.ts.map +1 -0
- package/lib/date/Calendar.js +249 -0
- package/lib/date/Calendar.js.map +1 -0
- package/lib/date/DatePicker.d.ts +14 -0
- package/lib/date/DatePicker.d.ts.map +1 -0
- package/lib/date/DatePicker.js +17 -0
- package/lib/date/DatePicker.js.map +1 -0
- package/lib/date/DateWheelPicker.d.ts +29 -0
- package/lib/date/DateWheelPicker.d.ts.map +1 -0
- package/lib/date/DateWheelPicker.js +83 -0
- package/lib/date/DateWheelPicker.js.map +1 -0
- package/lib/emoji/EmojiPicker.d.ts +47 -0
- package/lib/emoji/EmojiPicker.d.ts.map +1 -0
- package/lib/emoji/EmojiPicker.js +161 -0
- package/lib/emoji/EmojiPicker.js.map +1 -0
- package/lib/emoji/data.d.ts +2 -0
- package/lib/emoji/data.d.ts.map +1 -0
- package/lib/emoji/data.js +4 -0
- package/lib/emoji/data.js.map +1 -0
- package/lib/emoji/emojis.d.ts +23 -0
- package/lib/emoji/emojis.d.ts.map +1 -0
- package/lib/emoji/emojis.js +100 -0
- package/lib/emoji/emojis.js.map +1 -0
- package/lib/index.d.ts +17 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +17 -0
- package/lib/index.js.map +1 -0
- package/lib/select/SelectList.d.ts +58 -0
- package/lib/select/SelectList.d.ts.map +1 -0
- package/lib/select/SelectList.js +91 -0
- package/lib/select/SelectList.js.map +1 -0
- package/lib/select/SelectPicker.d.ts +35 -0
- package/lib/select/SelectPicker.d.ts.map +1 -0
- package/lib/select/SelectPicker.js +64 -0
- package/lib/select/SelectPicker.js.map +1 -0
- package/lib/select/filter.d.ts +3 -0
- package/lib/select/filter.d.ts.map +1 -0
- package/lib/select/filter.js +13 -0
- package/lib/select/filter.js.map +1 -0
- package/lib/sheet/BottomSheet.d.ts +29 -0
- package/lib/sheet/BottomSheet.d.ts.map +1 -0
- package/lib/sheet/BottomSheet.js +89 -0
- package/lib/sheet/BottomSheet.js.map +1 -0
- package/lib/sheet/PickerSheet.d.ts +26 -0
- package/lib/sheet/PickerSheet.d.ts.map +1 -0
- package/lib/sheet/PickerSheet.js +27 -0
- package/lib/sheet/PickerSheet.js.map +1 -0
- package/lib/sheet/sheets.d.ts +48 -0
- package/lib/sheet/sheets.d.ts.map +1 -0
- package/lib/sheet/sheets.js +58 -0
- package/lib/sheet/sheets.js.map +1 -0
- package/lib/theme.d.ts +81 -0
- package/lib/theme.d.ts.map +1 -0
- package/lib/theme.js +96 -0
- package/lib/theme.js.map +1 -0
- package/lib/time/TimePicker.d.ts +41 -0
- package/lib/time/TimePicker.d.ts.map +1 -0
- package/lib/time/TimePicker.js +105 -0
- package/lib/time/TimePicker.js.map +1 -0
- package/lib/types.d.ts +9 -0
- package/lib/types.d.ts.map +1 -0
- package/lib/types.js +2 -0
- package/lib/types.js.map +1 -0
- package/lib/utils/OwnScroll.d.ts +10 -0
- package/lib/utils/OwnScroll.d.ts.map +1 -0
- package/lib/utils/OwnScroll.js +13 -0
- package/lib/utils/OwnScroll.js.map +1 -0
- package/lib/utils/date.d.ts +30 -0
- package/lib/utils/date.d.ts.map +1 -0
- package/lib/utils/date.js +115 -0
- package/lib/utils/date.js.map +1 -0
- package/lib/wheel/MultiWheelPicker.d.ts +26 -0
- package/lib/wheel/MultiWheelPicker.d.ts.map +1 -0
- package/lib/wheel/MultiWheelPicker.js +28 -0
- package/lib/wheel/MultiWheelPicker.js.map +1 -0
- package/lib/wheel/WheelPicker.d.ts +59 -0
- package/lib/wheel/WheelPicker.d.ts.map +1 -0
- package/lib/wheel/WheelPicker.js +257 -0
- package/lib/wheel/WheelPicker.js.map +1 -0
- package/lib/wheel/typeToSelect.d.ts +8 -0
- package/lib/wheel/typeToSelect.d.ts.map +1 -0
- package/lib/wheel/typeToSelect.js +10 -0
- package/lib/wheel/typeToSelect.js.map +1 -0
- package/package.json +68 -3
- package/src/date/Calendar.tsx +586 -0
- package/src/date/DatePicker.tsx +22 -0
- package/src/date/DateWheelPicker.tsx +149 -0
- package/src/emoji/EmojiPicker.tsx +410 -0
- package/src/emoji/data.ts +3 -0
- package/src/emoji/emojis.ts +127 -0
- package/src/index.ts +16 -0
- package/src/select/SelectList.tsx +263 -0
- package/src/select/SelectPicker.tsx +203 -0
- package/src/select/filter.ts +17 -0
- package/src/sheet/BottomSheet.tsx +199 -0
- package/src/sheet/PickerSheet.tsx +86 -0
- package/src/sheet/sheets.tsx +218 -0
- package/src/theme.tsx +160 -0
- package/src/time/TimePicker.tsx +199 -0
- package/src/types.ts +10 -0
- package/src/utils/OwnScroll.tsx +14 -0
- package/src/utils/date.ts +131 -0
- package/src/wheel/MultiWheelPicker.tsx +96 -0
- package/src/wheel/WheelPicker.tsx +534 -0
- package/src/wheel/typeToSelect.ts +12 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Calendar.js","sourceRoot":"","sources":["../../src/date/Calendar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { CalendarProps } from './Calendar';
|
|
2
|
+
import type { DateWheelPickerProps } from './DateWheelPicker';
|
|
3
|
+
export type DatePickerProps = ({
|
|
4
|
+
display?: 'calendar';
|
|
5
|
+
} & CalendarProps) | ({
|
|
6
|
+
display: 'wheel';
|
|
7
|
+
} & DateWheelPickerProps);
|
|
8
|
+
/**
|
|
9
|
+
* Date picker.
|
|
10
|
+
* - `display="calendar"` (default): month grid with single / range / multiple selection
|
|
11
|
+
* - `display="wheel"`: day / month / year wheels
|
|
12
|
+
*/
|
|
13
|
+
export declare function DatePicker(props: DatePickerProps): import("react").JSX.Element;
|
|
14
|
+
//# sourceMappingURL=DatePicker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../src/date/DatePicker.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,MAAM,MAAM,eAAe,GACvB,CAAC;IAAE,OAAO,CAAC,EAAE,UAAU,CAAA;CAAE,GAAG,aAAa,CAAC,GAC1C,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,GAAG,oBAAoB,CAAC,CAAC;AAElD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,+BAOhD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Calendar } from './Calendar';
|
|
3
|
+
import { DateWheelPicker } from './DateWheelPicker';
|
|
4
|
+
/**
|
|
5
|
+
* Date picker.
|
|
6
|
+
* - `display="calendar"` (default): month grid with single / range / multiple selection
|
|
7
|
+
* - `display="wheel"`: day / month / year wheels
|
|
8
|
+
*/
|
|
9
|
+
export function DatePicker(props) {
|
|
10
|
+
if (props.display === 'wheel') {
|
|
11
|
+
const { display: _d, ...rest } = props;
|
|
12
|
+
return _jsx(DateWheelPicker, { ...rest });
|
|
13
|
+
}
|
|
14
|
+
const { display: _d, ...rest } = props;
|
|
15
|
+
return _jsx(Calendar, { ...rest });
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=DatePicker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatePicker.js","sourceRoot":"","sources":["../../src/date/DatePicker.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAOpD;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,KAAsB;IAC/C,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;QAC9B,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;QACvC,OAAO,KAAC,eAAe,OAAK,IAAI,GAAI,CAAC;IACvC,CAAC;IACD,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IACvC,OAAO,KAAC,QAAQ,OAAM,IAAsB,GAAI,CAAC;AACnD,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { StyleProp, ViewStyle } from 'react-native';
|
|
2
|
+
import type { MultiWheelSlot } from '../wheel/MultiWheelPicker';
|
|
3
|
+
import type { SlotStyles, ThemableProps } from '../types';
|
|
4
|
+
export type DatePart = 'day' | 'month' | 'year';
|
|
5
|
+
export interface DateWheelPickerProps extends ThemableProps {
|
|
6
|
+
value?: Date;
|
|
7
|
+
defaultValue?: Date;
|
|
8
|
+
onChange?: (date: Date) => void;
|
|
9
|
+
onValueChanging?: (date: Date) => void;
|
|
10
|
+
locale?: string;
|
|
11
|
+
minDate?: Date;
|
|
12
|
+
maxDate?: Date;
|
|
13
|
+
/** Column order. Default: from locale (e.g. M/D/Y for en-US, D/M/Y for he) */
|
|
14
|
+
order?: DatePart[];
|
|
15
|
+
/** 'long' (January), 'short' (Jan) or 'numeric' (01). Default: 'long' */
|
|
16
|
+
monthFormat?: 'long' | 'short' | 'numeric';
|
|
17
|
+
/** Years when no min/max is given. Default: ±100 from today */
|
|
18
|
+
yearRange?: [number, number];
|
|
19
|
+
/** Loop the day and month wheels. Default: true */
|
|
20
|
+
loop?: boolean;
|
|
21
|
+
itemHeight?: number;
|
|
22
|
+
visibleItems?: number;
|
|
23
|
+
variant?: '3d' | 'flat';
|
|
24
|
+
style?: StyleProp<ViewStyle>;
|
|
25
|
+
styles?: SlotStyles<MultiWheelSlot>;
|
|
26
|
+
testID?: string;
|
|
27
|
+
}
|
|
28
|
+
export declare function DateWheelPicker({ value, defaultValue, onChange, onValueChanging, locale, minDate, maxDate, order, monthFormat, yearRange, loop, itemHeight, visibleItems, variant, style, styles, theme, testID, }: DateWheelPickerProps): import("react").JSX.Element;
|
|
29
|
+
//# sourceMappingURL=DateWheelPicker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DateWheelPicker.d.ts","sourceRoot":"","sources":["../../src/date/DateWheelPicker.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzD,OAAO,KAAK,EAAE,cAAc,EAAe,MAAM,2BAA2B,CAAC;AAE7E,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE1D,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;AAEhD,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IACzD,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAChC,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,8EAA8E;IAC9E,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IACnB,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IAC3C,+DAA+D;IAC/D,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,mDAAmD;IACnD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAaD,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,YAAY,EACZ,QAAQ,EACR,eAAe,EACf,MAAM,EACN,OAAO,EACP,OAAO,EACP,KAAK,EACL,WAAoB,EACpB,SAAS,EACT,IAAW,EACX,UAAU,EACV,YAAY,EACZ,OAAO,EACP,KAAK,EACL,MAAM,EACN,KAAK,EACL,MAAM,GACP,EAAE,oBAAoB,+BAqFtB"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback, useMemo, useState } from 'react';
|
|
3
|
+
import { MultiWheelPicker } from '../wheel/MultiWheelPicker';
|
|
4
|
+
import { clampDate, daysInMonth, getMonthNames, isOutOfRange } from '../utils/date';
|
|
5
|
+
function localeOrder(locale) {
|
|
6
|
+
try {
|
|
7
|
+
const parts = new Intl.DateTimeFormat(locale, { day: 'numeric', month: 'long', year: 'numeric' }).formatToParts(new Date(2021, 10, 23));
|
|
8
|
+
const order = parts.map((p) => p.type).filter((t) => t === 'day' || t === 'month' || t === 'year');
|
|
9
|
+
if (order.length === 3)
|
|
10
|
+
return order;
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
// fall through
|
|
14
|
+
}
|
|
15
|
+
return ['month', 'day', 'year'];
|
|
16
|
+
}
|
|
17
|
+
export function DateWheelPicker({ value, defaultValue, onChange, onValueChanging, locale, minDate, maxDate, order, monthFormat = 'long', yearRange, loop = true, itemHeight, visibleItems, variant, style, styles, theme, testID, }) {
|
|
18
|
+
const [inner, setInner] = useState(() => clampDate(value ?? defaultValue ?? new Date(), minDate, maxDate));
|
|
19
|
+
const date = value ?? inner;
|
|
20
|
+
const y = date.getFullYear();
|
|
21
|
+
const m = date.getMonth();
|
|
22
|
+
const d = date.getDate();
|
|
23
|
+
const cols = order ?? localeOrder(locale);
|
|
24
|
+
const now = new Date();
|
|
25
|
+
const minY = minDate?.getFullYear() ?? yearRange?.[0] ?? now.getFullYear() - 100;
|
|
26
|
+
const maxY = maxDate?.getFullYear() ?? yearRange?.[1] ?? now.getFullYear() + 100;
|
|
27
|
+
const make = useCallback((patch) => {
|
|
28
|
+
const ny = patch.y ?? y;
|
|
29
|
+
const nm = patch.m ?? m;
|
|
30
|
+
const nd = Math.min(patch.d ?? d, daysInMonth(ny, nm));
|
|
31
|
+
const out = new Date(date);
|
|
32
|
+
out.setFullYear(ny, nm, nd);
|
|
33
|
+
return clampDate(out, minDate, maxDate);
|
|
34
|
+
}, [d, date, m, maxDate, minDate, y]);
|
|
35
|
+
const commit = useCallback((next) => {
|
|
36
|
+
if (value === undefined)
|
|
37
|
+
setInner(next);
|
|
38
|
+
onChange?.(next);
|
|
39
|
+
}, [onChange, value]);
|
|
40
|
+
const columns = useMemo(() => {
|
|
41
|
+
const monthNames = monthFormat === 'numeric' ? null : getMonthNames(locale, monthFormat);
|
|
42
|
+
const handlers = (pick) => ({
|
|
43
|
+
onChange: (v) => commit(pick(v)),
|
|
44
|
+
onValueChanging: onValueChanging ? (v) => onValueChanging(pick(v)) : undefined,
|
|
45
|
+
});
|
|
46
|
+
const all = {
|
|
47
|
+
day: {
|
|
48
|
+
key: 'day',
|
|
49
|
+
items: Array.from({ length: daysInMonth(y, m) }, (_, i) => ({
|
|
50
|
+
value: i + 1,
|
|
51
|
+
label: String(i + 1).padStart(monthFormat === 'numeric' ? 2 : 1, '0'),
|
|
52
|
+
disabled: isOutOfRange(new Date(y, m, i + 1), minDate, maxDate),
|
|
53
|
+
})),
|
|
54
|
+
value: d,
|
|
55
|
+
loop,
|
|
56
|
+
flex: 0.8,
|
|
57
|
+
...handlers((v) => make({ d: v })),
|
|
58
|
+
},
|
|
59
|
+
month: {
|
|
60
|
+
key: 'month',
|
|
61
|
+
items: Array.from({ length: 12 }, (_, i) => ({
|
|
62
|
+
value: i,
|
|
63
|
+
label: monthNames ? monthNames[i] : String(i + 1).padStart(2, '0'),
|
|
64
|
+
disabled: isOutOfRange(new Date(y, i, daysInMonth(y, i)), minDate, null) || isOutOfRange(new Date(y, i, 1), null, maxDate),
|
|
65
|
+
})),
|
|
66
|
+
value: m,
|
|
67
|
+
loop,
|
|
68
|
+
flex: monthFormat === 'long' ? 1.6 : 1,
|
|
69
|
+
...handlers((v) => make({ m: v })),
|
|
70
|
+
},
|
|
71
|
+
year: {
|
|
72
|
+
key: 'year',
|
|
73
|
+
items: Array.from({ length: maxY - minY + 1 }, (_, i) => minY + i),
|
|
74
|
+
value: y,
|
|
75
|
+
flex: 1,
|
|
76
|
+
...handlers((v) => make({ y: v })),
|
|
77
|
+
},
|
|
78
|
+
};
|
|
79
|
+
return cols.map((c) => all[c]);
|
|
80
|
+
}, [cols, commit, d, locale, loop, m, make, maxDate, maxY, minDate, minY, monthFormat, onValueChanging, y]);
|
|
81
|
+
return (_jsx(MultiWheelPicker, { columns: columns, itemHeight: itemHeight, visibleItems: visibleItems, variant: variant, style: style, styles: styles, theme: theme, testID: testID }));
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=DateWheelPicker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DateWheelPicker.js","sourceRoot":"","sources":["../../src/date/DateWheelPicker.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { StyleProp, ViewStyle } from 'react-native';
|
|
3
|
+
import type { SlotStyles, ThemableProps } from '../types';
|
|
4
|
+
import type { Emoji, EmojiCategory, SkinTone } from './emojis';
|
|
5
|
+
type SectionKey = EmojiCategory | 'recent' | 'search';
|
|
6
|
+
export type EmojiPickerSlot = 'container' | 'header' | 'searchInput' | 'skinToneButton' | 'skinToneMenu' | 'categoryBar' | 'categoryTab' | 'activeCategoryTab' | 'categoryIndicator' | 'sectionHeader' | 'sectionHeaderText' | 'emojiCell' | 'emojiText' | 'empty' | 'emptyText';
|
|
7
|
+
export interface EmojiPickerProps extends ThemableProps {
|
|
8
|
+
onSelect: (emoji: string, data: Emoji) => void;
|
|
9
|
+
/** Emojis per row. Default: 8 */
|
|
10
|
+
columns?: number;
|
|
11
|
+
/** Font size of emojis. Default: ~60% of the cell */
|
|
12
|
+
emojiSize?: number;
|
|
13
|
+
/** Height of the picker. Default: 380 */
|
|
14
|
+
height?: number;
|
|
15
|
+
/** Which categories to show, in order */
|
|
16
|
+
categories?: EmojiCategory[];
|
|
17
|
+
/** Emoji characters to hide */
|
|
18
|
+
exclude?: string[];
|
|
19
|
+
/** Hide emojis newer than this Emoji version (older Android can't render them). */
|
|
20
|
+
maxEmojiVersion?: number;
|
|
21
|
+
searchable?: boolean;
|
|
22
|
+
searchPlaceholder?: string;
|
|
23
|
+
emptyText?: string;
|
|
24
|
+
showCategoryBar?: boolean;
|
|
25
|
+
categoryBarPosition?: 'top' | 'bottom';
|
|
26
|
+
showSectionHeaders?: boolean;
|
|
27
|
+
categoryLabels?: Partial<Record<SectionKey, string>>;
|
|
28
|
+
categoryIcons?: Partial<Record<EmojiCategory | 'recent', React.ReactNode>>;
|
|
29
|
+
/** Controlled skin tone (0 default, 1–5 light → dark) */
|
|
30
|
+
skinTone?: SkinTone;
|
|
31
|
+
defaultSkinTone?: SkinTone;
|
|
32
|
+
onSkinToneChange?: (tone: SkinTone) => void;
|
|
33
|
+
showSkinTones?: boolean;
|
|
34
|
+
/** Recently used emojis (characters). Persist with onRecentChange. */
|
|
35
|
+
recent?: string[];
|
|
36
|
+
defaultRecent?: string[];
|
|
37
|
+
onRecentChange?: (recent: string[]) => void;
|
|
38
|
+
showRecent?: boolean;
|
|
39
|
+
maxRecent?: number;
|
|
40
|
+
renderEmoji?: (emoji: string, data: Emoji, size: number) => React.ReactNode;
|
|
41
|
+
style?: StyleProp<ViewStyle>;
|
|
42
|
+
styles?: SlotStyles<EmojiPickerSlot>;
|
|
43
|
+
testID?: string;
|
|
44
|
+
}
|
|
45
|
+
export declare function EmojiPicker({ onSelect, columns, emojiSize, height, categories, exclude, maxEmojiVersion, searchable, searchPlaceholder, emptyText, showCategoryBar, categoryBarPosition, showSectionHeaders, categoryLabels, categoryIcons, skinTone: skinToneProp, defaultSkinTone, onSkinToneChange, showSkinTones, recent: recentProp, defaultRecent, onRecentChange, showRecent, maxRecent, renderEmoji, style, styles: slots, theme: themeOverride, testID, }: EmojiPickerProps): React.JSX.Element;
|
|
46
|
+
export {};
|
|
47
|
+
//# sourceMappingURL=EmojiPicker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmojiPicker.d.ts","sourceRoot":"","sources":["../../src/emoji/EmojiPicker.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { memo, useCallback, useMemo, useRef, useState } from 'react';
|
|
3
|
+
import { FlatList, Pressable, StyleSheet, Text, TextInput, View } from 'react-native';
|
|
4
|
+
import { textStyle, usePickerTheme } from '../theme';
|
|
5
|
+
import { DEFAULT_CATEGORY_ICONS, DEFAULT_CATEGORY_LABELS, EMOJI_CATEGORIES, findEmoji, getAllEmojis, searchEmojis, withSkinTone, } from './emojis';
|
|
6
|
+
import { OwnScroll } from '../utils/OwnScroll';
|
|
7
|
+
const HEADER_H = 32;
|
|
8
|
+
const TONE_SWATCH = ['✋', '✋🏻', '✋🏼', '✋🏽', '✋🏾', '✋🏿'];
|
|
9
|
+
export function EmojiPicker({ onSelect, columns = 8, emojiSize, height = 380, categories = EMOJI_CATEGORIES, exclude, maxEmojiVersion, searchable = true, searchPlaceholder = 'Search emoji', emptyText = 'No emoji found', showCategoryBar = true, categoryBarPosition = 'top', showSectionHeaders = true, categoryLabels, categoryIcons, skinTone: skinToneProp, defaultSkinTone = 0, onSkinToneChange, showSkinTones = true, recent: recentProp, defaultRecent = [], onRecentChange, showRecent = true, maxRecent = 24, renderEmoji, style, styles: slots, theme: themeOverride, testID, }) {
|
|
10
|
+
const theme = usePickerTheme(themeOverride);
|
|
11
|
+
const c = theme.colors;
|
|
12
|
+
const [width, setWidth] = useState(0);
|
|
13
|
+
const [query, setQuery] = useState('');
|
|
14
|
+
const [toneMenu, setToneMenu] = useState(false);
|
|
15
|
+
const [innerTone, setInnerTone] = useState(defaultSkinTone);
|
|
16
|
+
const tone = skinToneProp ?? innerTone;
|
|
17
|
+
const [innerRecent, setInnerRecent] = useState(defaultRecent);
|
|
18
|
+
const recent = recentProp ?? innerRecent;
|
|
19
|
+
const [active, setActive] = useState(categories[0] ?? 'smileys');
|
|
20
|
+
const listRef = useRef(null);
|
|
21
|
+
const jumping = useRef(false);
|
|
22
|
+
const cell = width > 0 ? Math.floor(width / columns) : 40;
|
|
23
|
+
const fontSize = emojiSize ?? Math.round(cell * 0.62);
|
|
24
|
+
const labels = { ...DEFAULT_CATEGORY_LABELS, ...categoryLabels };
|
|
25
|
+
const icons = { ...DEFAULT_CATEGORY_ICONS, ...categoryIcons };
|
|
26
|
+
const pool = useMemo(() => {
|
|
27
|
+
const ex = exclude ? new Set(exclude) : null;
|
|
28
|
+
const cats = new Set(categories);
|
|
29
|
+
return getAllEmojis().filter((e) => cats.has(e.category) && (maxEmojiVersion === undefined || e.version <= maxEmojiVersion) && !(ex && ex.has(e.emoji)));
|
|
30
|
+
}, [categories, exclude, maxEmojiVersion]);
|
|
31
|
+
const recentEmojis = useMemo(() => recent.map((ch) => findEmoji(ch)).filter((e) => !!e && pool.includes(e)), [pool, recent]);
|
|
32
|
+
const sections = useMemo(() => {
|
|
33
|
+
if (query.trim())
|
|
34
|
+
return [{ key: 'search', items: searchEmojis(query, pool) }];
|
|
35
|
+
const out = [];
|
|
36
|
+
if (showRecent && recentEmojis.length)
|
|
37
|
+
out.push({ key: 'recent', items: recentEmojis });
|
|
38
|
+
for (const cat of categories) {
|
|
39
|
+
const items = pool.filter((e) => e.category === cat);
|
|
40
|
+
if (items.length)
|
|
41
|
+
out.push({ key: cat, items });
|
|
42
|
+
}
|
|
43
|
+
return out;
|
|
44
|
+
}, [categories, pool, query, recentEmojis, showRecent]);
|
|
45
|
+
// Flatten into rows with known heights so we can jump to categories.
|
|
46
|
+
const { rows, offsets, headerIndex } = useMemo(() => {
|
|
47
|
+
const rows = [];
|
|
48
|
+
const offsets = [];
|
|
49
|
+
const headerIndex = new Map();
|
|
50
|
+
let y = 0;
|
|
51
|
+
for (const sec of sections) {
|
|
52
|
+
if (showSectionHeaders || sec.key !== 'search') {
|
|
53
|
+
headerIndex.set(sec.key, rows.length);
|
|
54
|
+
if (showSectionHeaders) {
|
|
55
|
+
rows.push({ type: 'header', key: sec.key });
|
|
56
|
+
offsets.push(y);
|
|
57
|
+
y += HEADER_H;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
for (let i = 0; i < sec.items.length; i += columns) {
|
|
61
|
+
if (!showSectionHeaders && i === 0)
|
|
62
|
+
headerIndex.set(sec.key, rows.length);
|
|
63
|
+
rows.push({ type: 'emojis', items: sec.items.slice(i, i + columns), section: sec.key });
|
|
64
|
+
offsets.push(y);
|
|
65
|
+
y += cell;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return { rows, offsets, headerIndex };
|
|
69
|
+
}, [cell, columns, sections, showSectionHeaders]);
|
|
70
|
+
const rowLength = useCallback((r) => (r.type === 'header' ? HEADER_H : cell), [cell]);
|
|
71
|
+
const select = useCallback((e) => {
|
|
72
|
+
const ch = withSkinTone(e, tone);
|
|
73
|
+
onSelect(ch, e);
|
|
74
|
+
if (showRecent) {
|
|
75
|
+
const next = [e.emoji, ...recent.filter((r) => findEmoji(r) !== e)].slice(0, maxRecent);
|
|
76
|
+
if (recentProp === undefined)
|
|
77
|
+
setInnerRecent(next);
|
|
78
|
+
onRecentChange?.(next);
|
|
79
|
+
}
|
|
80
|
+
}, [maxRecent, onRecentChange, onSelect, recent, recentProp, showRecent, tone]);
|
|
81
|
+
const setTone = (t) => {
|
|
82
|
+
if (skinToneProp === undefined)
|
|
83
|
+
setInnerTone(t);
|
|
84
|
+
onSkinToneChange?.(t);
|
|
85
|
+
setToneMenu(false);
|
|
86
|
+
};
|
|
87
|
+
const jumpTo = (key) => {
|
|
88
|
+
const idx = headerIndex.get(key);
|
|
89
|
+
if (idx === undefined)
|
|
90
|
+
return;
|
|
91
|
+
setActive(key);
|
|
92
|
+
jumping.current = true;
|
|
93
|
+
listRef.current?.scrollToOffset({ offset: offsets[idx] ?? 0, animated: true });
|
|
94
|
+
setTimeout(() => (jumping.current = false), 450);
|
|
95
|
+
};
|
|
96
|
+
const onScroll = useCallback((e) => {
|
|
97
|
+
if (jumping.current || query)
|
|
98
|
+
return;
|
|
99
|
+
const y = e.nativeEvent.contentOffset.y + 4;
|
|
100
|
+
// binary search the row at y
|
|
101
|
+
let lo = 0;
|
|
102
|
+
let hi = offsets.length - 1;
|
|
103
|
+
while (lo < hi) {
|
|
104
|
+
const mid = (lo + hi + 1) >> 1;
|
|
105
|
+
if (offsets[mid] <= y)
|
|
106
|
+
lo = mid;
|
|
107
|
+
else
|
|
108
|
+
hi = mid - 1;
|
|
109
|
+
}
|
|
110
|
+
const r = rows[lo];
|
|
111
|
+
const key = r ? (r.type === 'header' ? r.key : r.section) : undefined;
|
|
112
|
+
if (key && key !== active)
|
|
113
|
+
setActive(key);
|
|
114
|
+
}, [active, offsets, query, rows]);
|
|
115
|
+
const onLayout = (e) => setWidth(e.nativeEvent.layout.width);
|
|
116
|
+
const renderRow = ({ item }) => {
|
|
117
|
+
if (item.type === 'header') {
|
|
118
|
+
return (_jsx(View, { style: [{ height: HEADER_H, justifyContent: 'flex-end', paddingHorizontal: 4, paddingBottom: 6 }, slots?.sectionHeader], children: _jsx(Text, { style: [textStyle(theme, 'xs', 'bold'), { color: c.textSecondary }, slots?.sectionHeaderText], children: labels[item.key] }) }));
|
|
119
|
+
}
|
|
120
|
+
return (_jsx(View, { style: s.row, children: item.items.map((e) => (_jsx(EmojiCell, { e: e, ch: withSkinTone(e, tone), size: cell, fontSize: fontSize, theme: theme, slots: slots, renderEmoji: renderEmoji, onPress: select }, e.emoji))) }));
|
|
121
|
+
};
|
|
122
|
+
const categoryBar = showCategoryBar && !query && (_jsx(View, { style: [s.bar, { borderColor: c.border }, categoryBarPosition === 'top' ? { borderBottomWidth: StyleSheet.hairlineWidth } : { borderTopWidth: StyleSheet.hairlineWidth }, slots?.categoryBar], children: ['recent', ...categories]
|
|
123
|
+
.filter((k) => headerIndex.has(k))
|
|
124
|
+
.map((k) => {
|
|
125
|
+
const on = active === k;
|
|
126
|
+
const icon = icons[k];
|
|
127
|
+
return (_jsxs(Pressable, { onPress: () => jumpTo(k), accessibilityRole: "tab", accessibilityLabel: labels[k], accessibilityState: { selected: on }, style: [s.tab, slots?.categoryTab, on && slots?.activeCategoryTab], children: [typeof icon === 'string' ? _jsx(Text, { style: { fontSize: 18, opacity: on ? 1 : 0.45 }, children: icon }) : icon, _jsx(View, { style: [
|
|
128
|
+
s.tabIndicator,
|
|
129
|
+
{ backgroundColor: on ? c.primary : 'transparent', [categoryBarPosition === 'top' ? 'bottom' : 'top']: 0 },
|
|
130
|
+
slots?.categoryIndicator,
|
|
131
|
+
] })] }, k));
|
|
132
|
+
}) }));
|
|
133
|
+
return (_jsxs(View, { style: [{ height, backgroundColor: c.background }, style, slots?.container], testID: testID, children: [(searchable || showSkinTones) && (_jsxs(View, { style: [s.header, { paddingHorizontal: theme.spacing.sm, paddingTop: theme.spacing.sm, gap: theme.spacing.sm }, slots?.header], children: [searchable ? (_jsx(TextInput, { value: query, onChangeText: (t) => {
|
|
134
|
+
setQuery(t);
|
|
135
|
+
listRef.current?.scrollToOffset({ offset: 0, animated: false });
|
|
136
|
+
}, placeholder: searchPlaceholder, placeholderTextColor: c.textSecondary, autoCorrect: false, autoCapitalize: "none", clearButtonMode: "while-editing", accessibilityLabel: searchPlaceholder, style: [
|
|
137
|
+
textStyle(theme, 'md'),
|
|
138
|
+
s.flex,
|
|
139
|
+
{ backgroundColor: c.surface, borderRadius: theme.radius.md, paddingHorizontal: theme.spacing.md, height: 40 },
|
|
140
|
+
slots?.searchInput,
|
|
141
|
+
] })) : (_jsx(View, { style: s.flex })), showSkinTones && (_jsx(Pressable, { onPress: () => setToneMenu((v) => !v), accessibilityRole: "button", accessibilityLabel: "Skin tone", style: [s.toneBtn, { backgroundColor: c.surface, borderRadius: theme.radius.md }, slots?.skinToneButton], children: _jsx(Text, { style: { fontSize: 20 }, children: TONE_SWATCH[tone] }) }))] })), toneMenu && (_jsx(View, { style: [s.toneMenu, { marginHorizontal: theme.spacing.sm, backgroundColor: c.surface, borderRadius: theme.radius.md }, slots?.skinToneMenu], children: TONE_SWATCH.map((sw, i) => (_jsx(Pressable, { onPress: () => setTone(i), accessibilityRole: "button", accessibilityState: { selected: i === tone }, style: [s.toneOpt, { borderRadius: theme.radius.sm, backgroundColor: i === tone ? c.primaryMuted : 'transparent' }], children: _jsx(Text, { style: { fontSize: 22 }, children: sw }) }, i))) })), categoryBarPosition === 'top' && categoryBar, _jsx(View, { style: [s.flex, { paddingHorizontal: theme.spacing.xs }], onLayout: onLayout, children: width > 0 && (_jsx(OwnScroll, { children: _jsx(FlatList, { ref: listRef, data: rows, renderItem: renderRow, keyExtractor: (r, i) => (r.type === 'header' ? `h-${r.key}` : `r-${r.section}-${i}`), getItemLayout: (_, i) => ({ index: i, length: rows[i] ? rowLength(rows[i]) : cell, offset: offsets[i] ?? 0 }), onScroll: onScroll, scrollEventThrottle: 32, keyboardShouldPersistTaps: "handled", initialNumToRender: Math.ceil(height / cell) + 2, maxToRenderPerBatch: 8, windowSize: 7, ListEmptyComponent: _jsx(View, { style: [{ padding: theme.spacing.xl, alignItems: 'center' }, slots?.empty], children: _jsx(Text, { style: [textStyle(theme, 'md'), { color: c.textSecondary }, slots?.emptyText], children: emptyText }) }) }) })) }), categoryBarPosition === 'bottom' && categoryBar] }));
|
|
142
|
+
}
|
|
143
|
+
const EmojiCell = memo(function EmojiCell({ e, ch, size, fontSize, theme, slots, renderEmoji, onPress }) {
|
|
144
|
+
return (_jsx(Pressable, { onPress: () => onPress(e), accessibilityRole: "button", accessibilityLabel: e.name, style: ({ pressed }) => [
|
|
145
|
+
{ width: size, height: size, alignItems: 'center', justifyContent: 'center', borderRadius: theme.radius.sm },
|
|
146
|
+
pressed && { backgroundColor: theme.colors.surface, transform: [{ scale: 1.15 }] },
|
|
147
|
+
slots?.emojiCell,
|
|
148
|
+
], children: renderEmoji ? renderEmoji(ch, e, fontSize) : _jsx(Text, { style: [{ fontSize, lineHeight: fontSize * 1.2 }, slots?.emojiText], children: ch }) }));
|
|
149
|
+
});
|
|
150
|
+
const s = StyleSheet.create({
|
|
151
|
+
flex: { flex: 1 },
|
|
152
|
+
row: { flexDirection: 'row' },
|
|
153
|
+
header: { flexDirection: 'row', alignItems: 'center' },
|
|
154
|
+
toneBtn: { width: 40, height: 40, alignItems: 'center', justifyContent: 'center' },
|
|
155
|
+
toneMenu: { flexDirection: 'row', justifyContent: 'space-around', padding: 4, marginTop: 6 },
|
|
156
|
+
toneOpt: { padding: 6 },
|
|
157
|
+
bar: { flexDirection: 'row', marginTop: 6 },
|
|
158
|
+
tab: { flex: 1, height: 40, alignItems: 'center', justifyContent: 'center' },
|
|
159
|
+
tabIndicator: { position: 'absolute', left: '25%', right: '25%', height: 2.5, borderRadius: 2 },
|
|
160
|
+
});
|
|
161
|
+
//# sourceMappingURL=EmojiPicker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmojiPicker.js","sourceRoot":"","sources":["../../src/emoji/EmojiPicker.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/emoji/data.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,EAAE,MAAmghH,CAAC"}
|