react-native-gifted-chat 0.16.3 → 1.0.0-beta-1

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.
Files changed (68) hide show
  1. package/README.md +12 -9
  2. package/lib/Actions.d.ts +13 -11
  3. package/lib/Actions.js +28 -34
  4. package/lib/Actions.js.map +1 -1
  5. package/lib/Avatar.d.ts +5 -6
  6. package/lib/Avatar.js +34 -39
  7. package/lib/Avatar.js.map +1 -1
  8. package/lib/Bubble.d.ts +11 -8
  9. package/lib/Bubble.js +13 -7
  10. package/lib/Bubble.js.map +1 -1
  11. package/lib/Composer.d.ts +5 -11
  12. package/lib/Composer.js +34 -40
  13. package/lib/Composer.js.map +1 -1
  14. package/lib/Day.d.ts +7 -10
  15. package/lib/Day.js +15 -19
  16. package/lib/Day.js.map +1 -1
  17. package/lib/GiftedAvatar.js +3 -3
  18. package/lib/GiftedAvatar.js.map +1 -1
  19. package/lib/GiftedChat.d.ts +47 -38
  20. package/lib/GiftedChat.js +61 -36
  21. package/lib/GiftedChat.js.flow +8 -0
  22. package/lib/GiftedChat.js.map +1 -1
  23. package/lib/GiftedChatContext.d.ts +9 -0
  24. package/lib/GiftedChatContext.js +9 -0
  25. package/lib/GiftedChatContext.js.map +1 -0
  26. package/lib/InputToolbar.d.ts +14 -28
  27. package/lib/InputToolbar.js +27 -83
  28. package/lib/InputToolbar.js.map +1 -1
  29. package/lib/LoadEarlier.d.ts +4 -5
  30. package/lib/LoadEarlier.js +12 -25
  31. package/lib/LoadEarlier.js.map +1 -1
  32. package/lib/Message.d.ts +10 -7
  33. package/lib/Message.js +11 -9
  34. package/lib/Message.js.map +1 -1
  35. package/lib/MessageAudio.d.ts +1 -3
  36. package/lib/MessageAudio.js +11 -9
  37. package/lib/MessageAudio.js.map +1 -1
  38. package/lib/MessageContainer.d.ts +3 -8
  39. package/lib/MessageContainer.js +3 -41
  40. package/lib/MessageContainer.js.map +1 -1
  41. package/lib/MessageImage.d.ts +4 -5
  42. package/lib/MessageImage.js +12 -15
  43. package/lib/MessageImage.js.map +1 -1
  44. package/lib/MessageText.d.ts +5 -13
  45. package/lib/MessageText.js +79 -82
  46. package/lib/MessageText.js.map +1 -1
  47. package/lib/MessageVideo.d.ts +1 -3
  48. package/lib/MessageVideo.js +11 -9
  49. package/lib/MessageVideo.js.map +1 -1
  50. package/lib/Models.d.ts +3 -4
  51. package/lib/Models.js +1 -0
  52. package/lib/QuickReplies.d.ts +5 -15
  53. package/lib/QuickReplies.js +67 -87
  54. package/lib/QuickReplies.js.map +1 -1
  55. package/lib/Send.d.ts +6 -7
  56. package/lib/Send.js +16 -21
  57. package/lib/Send.js.map +1 -1
  58. package/lib/SystemMessage.d.ts +4 -5
  59. package/lib/SystemMessage.js +10 -12
  60. package/lib/SystemMessage.js.map +1 -1
  61. package/lib/Time.d.ts +5 -9
  62. package/lib/Time.js +33 -33
  63. package/lib/Time.js.map +1 -1
  64. package/lib/TypingIndicator.d.ts +0 -1
  65. package/lib/hooks/useUpdateLayoutEffect.d.ts +3 -2
  66. package/lib/hooks/useUpdateLayoutEffect.js +1 -1
  67. package/lib/hooks/useUpdateLayoutEffect.js.map +1 -1
  68. package/package.json +22 -19
@@ -1,8 +1,9 @@
1
1
  import PropTypes from 'prop-types';
2
- import React, { Component } from 'react';
2
+ import React, { useState, useMemo } from 'react';
3
3
  import { Text, StyleSheet, View, TouchableOpacity, } from 'react-native';
4
4
  import Color from './Color';
5
5
  import { warning, StylePropType } from './utils';
6
+ import { useCallbackOne } from 'use-memo-one';
6
7
  const styles = StyleSheet.create({
7
8
  container: {
8
9
  flexDirection: 'row',
@@ -34,97 +35,76 @@ const styles = StyleSheet.create({
34
35
  });
35
36
  const sameReply = (currentReply) => (reply) => currentReply.value === reply.value;
36
37
  const diffReply = (currentReply) => (reply) => currentReply.value !== reply.value;
37
- export default class QuickReplies extends Component {
38
- constructor() {
39
- super(...arguments);
40
- this.state = {
41
- replies: [],
42
- };
43
- this.handlePress = (reply) => () => {
44
- const { currentMessage } = this.props;
45
- const { replies } = this.state;
46
- if (currentMessage) {
47
- const { type } = currentMessage.quickReplies;
48
- switch (type) {
49
- case 'radio': {
50
- this.handleSend([reply])();
51
- return;
52
- }
53
- case 'checkbox': {
54
- if (replies.find(sameReply(reply))) {
55
- this.setState({
56
- replies: this.state.replies.filter(diffReply(reply)),
57
- });
58
- }
59
- else {
60
- this.setState({ replies: [...this.state.replies, reply] });
61
- }
62
- return;
38
+ export function QuickReplies(props) {
39
+ const { currentMessage, nextMessage, color, quickReplyStyle, onQuickReply, sendText, renderQuickReplySend, } = props;
40
+ const { type } = currentMessage.quickReplies;
41
+ const [replies, setReplies] = useState([]);
42
+ const shouldComponentDisplay = useMemo(() => {
43
+ const hasReplies = !!currentMessage && !!currentMessage.quickReplies;
44
+ const hasNext = !!nextMessage && !!nextMessage._id;
45
+ const keepIt = currentMessage.quickReplies.keepIt;
46
+ if (hasReplies && !hasNext) {
47
+ return true;
48
+ }
49
+ if (hasReplies && hasNext && keepIt) {
50
+ return true;
51
+ }
52
+ return false;
53
+ }, [currentMessage, nextMessage]);
54
+ if (!shouldComponentDisplay) {
55
+ return null;
56
+ }
57
+ const handlePress = useCallbackOne((reply) => () => {
58
+ if (currentMessage) {
59
+ const { type } = currentMessage.quickReplies;
60
+ switch (type) {
61
+ case 'radio': {
62
+ handleSend([reply])();
63
+ return;
64
+ }
65
+ case 'checkbox': {
66
+ if (replies.find(sameReply(reply))) {
67
+ setReplies(replies.filter(diffReply(reply)));
63
68
  }
64
- default: {
65
- warning(`onQuickReply unknown type: ${type}`);
66
- return;
69
+ else {
70
+ setReplies([...replies, reply]);
67
71
  }
72
+ return;
73
+ }
74
+ default: {
75
+ warning(`onQuickReply unknown type: ${type}`);
76
+ return;
68
77
  }
69
78
  }
70
- };
71
- this.handleSend = (replies) => () => {
72
- const { currentMessage } = this.props;
73
- if (this.props.onQuickReply) {
74
- this.props.onQuickReply(replies.map((reply) => ({
75
- ...reply,
76
- messageId: currentMessage._id,
77
- })));
78
- }
79
- };
80
- this.shouldComponentDisplay = () => {
81
- const { currentMessage, nextMessage } = this.props;
82
- const hasReplies = !!currentMessage && !!currentMessage.quickReplies;
83
- const hasNext = !!nextMessage && !!nextMessage._id;
84
- const keepIt = currentMessage.quickReplies.keepIt;
85
- if (hasReplies && !hasNext) {
86
- return true;
87
- }
88
- if (hasReplies && hasNext && keepIt) {
89
- return true;
90
- }
91
- return false;
92
- };
93
- this.renderQuickReplySend = () => {
94
- const { replies } = this.state;
95
- const { sendText, renderQuickReplySend: customSend } = this.props;
96
- return (<TouchableOpacity style={[styles.quickReply, styles.sendLink]} onPress={this.handleSend(replies)}>
97
- {customSend ? (customSend()) : (<Text style={styles.sendLinkText}>{sendText}</Text>)}
98
- </TouchableOpacity>);
99
- };
100
- }
101
- render() {
102
- const { currentMessage, color, quickReplyStyle } = this.props;
103
- const { replies } = this.state;
104
- if (!this.shouldComponentDisplay()) {
105
- return null;
106
79
  }
107
- const { type } = currentMessage.quickReplies;
108
- return (<View style={styles.container}>
109
- {currentMessage.quickReplies.values.map((reply, index) => {
110
- const selected = type === 'checkbox' && replies.find(sameReply(reply));
111
- return (<TouchableOpacity onPress={this.handlePress(reply)} style={[
112
- styles.quickReply,
113
- quickReplyStyle,
114
- { borderColor: color },
115
- selected && { backgroundColor: color },
116
- ]} key={`${reply.value}-${index}`}>
117
- <Text numberOfLines={10} ellipsizeMode={'tail'} style={[
118
- styles.quickReplyText,
119
- { color: selected ? Color.white : color },
120
- ]}>
121
- {reply.title}
122
- </Text>
123
- </TouchableOpacity>);
124
- })}
125
- {replies.length > 0 && this.renderQuickReplySend()}
126
- </View>);
127
- }
80
+ }, [replies, currentMessage]);
81
+ const handleSend = (repliesData) => () => {
82
+ onQuickReply === null || onQuickReply === void 0 ? void 0 : onQuickReply(repliesData.map((reply) => ({
83
+ ...reply,
84
+ messageId: currentMessage._id,
85
+ })));
86
+ };
87
+ return (<View style={styles.container}>
88
+ {currentMessage.quickReplies.values.map((reply, index) => {
89
+ const selected = type === 'checkbox' && replies.find(sameReply(reply));
90
+ return (<TouchableOpacity onPress={handlePress(reply)} style={[
91
+ styles.quickReply,
92
+ quickReplyStyle,
93
+ { borderColor: color },
94
+ selected && { backgroundColor: color },
95
+ ]} key={`${reply.value}-${index}`}>
96
+ <Text numberOfLines={10} ellipsizeMode={'tail'} style={[
97
+ styles.quickReplyText,
98
+ { color: selected ? Color.white : color },
99
+ ]}>
100
+ {reply.title}
101
+ </Text>
102
+ </TouchableOpacity>);
103
+ })}
104
+ {replies.length > 0 && (<TouchableOpacity style={[styles.quickReply, styles.sendLink]} onPress={handleSend(replies)}>
105
+ {(renderQuickReplySend === null || renderQuickReplySend === void 0 ? void 0 : renderQuickReplySend()) || (<Text style={styles.sendLinkText}>{sendText}</Text>)}
106
+ </TouchableOpacity>)}
107
+ </View>);
128
108
  }
129
109
  QuickReplies.defaultProps = {
130
110
  currentMessage: {
@@ -1 +1 @@
1
- {"version":3,"file":"QuickReplies.js","sourceRoot":"","sources":["../src/QuickReplies.tsx"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAA;AAClC,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACxC,OAAO,EACL,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,gBAAgB,GAGjB,MAAM,cAAc,CAAA;AAErB,OAAO,KAAK,MAAM,SAAS,CAAA;AAC3B,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEhD,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,SAAS,EAAE;QACT,aAAa,EAAE,KAAK;QACpB,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,GAAG;KACd;IACD,UAAU,EAAE;QACV,cAAc,EAAE,QAAQ;QACxB,UAAU,EAAE,QAAQ;QACpB,WAAW,EAAE,CAAC;QACd,QAAQ,EAAE,GAAG;QACb,eAAe,EAAE,CAAC;QAClB,iBAAiB,EAAE,EAAE;QACrB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,EAAE;QAChB,MAAM,EAAE,CAAC;KACV;IACD,cAAc,EAAE;QACd,QAAQ,EAAE,SAAS;KACpB;IACD,QAAQ,EAAE;QACR,WAAW,EAAE,CAAC;KACf;IACD,YAAY,EAAE;QACZ,KAAK,EAAE,KAAK,CAAC,WAAW;QACxB,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,EAAE;KACb;CACF,CAAC,CAAA;AAgBF,MAAM,SAAS,GAAG,CAAC,YAAmB,EAAE,EAAE,CAAC,CAAC,KAAY,EAAE,EAAE,CAC1D,YAAY,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAA;AAEpC,MAAM,SAAS,GAAG,CAAC,YAAmB,EAAE,EAAE,CAAC,CAAC,KAAY,EAAE,EAAE,CAC1D,YAAY,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAA;AAEpC,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,SAGzC;IAHD;;QA0BE,UAAK,GAAG;YACN,OAAO,EAAE,EAAE;SACZ,CAAA;QAED,gBAAW,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,GAAG,EAAE;YACnC,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;YACrC,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;YAC9B,IAAI,cAAc,EAAE;gBAClB,MAAM,EAAE,IAAI,EAAE,GAAG,cAAc,CAAC,YAAa,CAAA;gBAC7C,QAAQ,IAAI,EAAE;oBACZ,KAAK,OAAO,CAAC,CAAC;wBACZ,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAA;wBAC1B,OAAM;qBACP;oBAED,KAAK,UAAU,CAAC,CAAC;wBACf,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE;4BAClC,IAAI,CAAC,QAAQ,CAAC;gCACZ,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;6BACrD,CAAC,CAAA;yBACH;6BAAM;4BACL,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA;yBAC3D;wBACD,OAAM;qBACP;oBAED,OAAO,CAAC,CAAC;wBACP,OAAO,CAAC,8BAA8B,IAAI,EAAE,CAAC,CAAA;wBAC7C,OAAM;qBACP;iBACF;aACF;QACH,CAAC,CAAA;QAED,eAAU,GAAG,CAAC,OAAgB,EAAE,EAAE,CAAC,GAAG,EAAE;YACtC,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;YACrC,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE;gBAC3B,IAAI,CAAC,KAAK,CAAC,YAAY,CACrB,OAAO,CAAC,GAAG,CAAC,CAAC,KAAY,EAAE,EAAE,CAAC,CAAC;oBAC7B,GAAG,KAAK;oBACR,SAAS,EAAE,cAAe,CAAC,GAAG;iBAC/B,CAAC,CAAC,CACJ,CAAA;aACF;QACH,CAAC,CAAA;QAED,2BAAsB,GAAG,GAAG,EAAE;YAC5B,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;YAClD,MAAM,UAAU,GAAG,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,cAAe,CAAC,YAAY,CAAA;YACrE,MAAM,OAAO,GAAG,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,WAAY,CAAC,GAAG,CAAA;YACnD,MAAM,MAAM,GAAG,cAAe,CAAC,YAAa,CAAC,MAAM,CAAA;YAEnD,IAAI,UAAU,IAAI,CAAC,OAAO,EAAE;gBAC1B,OAAO,IAAI,CAAA;aACZ;YACD,IAAI,UAAU,IAAI,OAAO,IAAI,MAAM,EAAE;gBACnC,OAAO,IAAI,CAAA;aACZ;YACD,OAAO,KAAK,CAAA;QACd,CAAC,CAAA;QAED,yBAAoB,GAAG,GAAG,EAAE;YAC1B,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;YAC9B,MAAM,EAAE,QAAQ,EAAE,oBAAoB,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;YAEjE,OAAO,CACL,CAAC,gBAAgB,CACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAC5C,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAElC;QAAA,CAAC,UAAU,CAAC,CAAC,CAAC,CACZ,UAAU,EAAE,CACb,CAAC,CAAC,CAAC,CACF,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CACpD,CACH;MAAA,EAAE,gBAAgB,CAAC,CACpB,CAAA;QACH,CAAC,CAAA;IA+CH,CAAC;IA7CC,MAAM;QACJ,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC7D,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAE9B,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE;YAClC,OAAO,IAAI,CAAA;SACZ;QAED,MAAM,EAAE,IAAI,EAAE,GAAG,cAAe,CAAC,YAAa,CAAA;QAE9C,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAC5B;QAAA,CAAC,cAAe,CAAC,YAAa,CAAC,MAAM,CAAC,GAAG,CACvC,CAAC,KAAY,EAAE,KAAa,EAAE,EAAE;YAC9B,MAAM,QAAQ,GACZ,IAAI,KAAK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAA;YACvD,OAAO,CACL,CAAC,gBAAgB,CACf,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CACjC,KAAK,CAAC,CAAC;gBACL,MAAM,CAAC,UAAU;gBACjB,eAAe;gBACf,EAAE,WAAW,EAAE,KAAK,EAAE;gBACtB,QAAQ,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE;aACvC,CAAC,CACF,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,EAAE,CAAC,CAE/B;gBAAA,CAAC,IAAI,CACH,aAAa,CAAC,CAAC,EAAE,CAAC,CAClB,aAAa,CAAC,CAAC,MAAM,CAAC,CACtB,KAAK,CAAC,CAAC;gBACL,MAAM,CAAC,cAAc;gBACrB,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE;aAC1C,CAAC,CAEF;kBAAA,CAAC,KAAK,CAAC,KAAK,CACd;gBAAA,EAAE,IAAI,CACR;cAAA,EAAE,gBAAgB,CAAC,CACpB,CAAA;QACH,CAAC,CACF,CACD;QAAA,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,oBAAoB,EAAE,CACpD;MAAA,EAAE,IAAI,CAAC,CACR,CAAA;IACH,CAAC;;AAjJM,yBAAY,GAAG;IACpB,cAAc,EAAE;QACd,YAAY,EAAE,EAAE;KACjB;IACD,YAAY,EAAE,GAAG,EAAE,GAAE,CAAC;IACtB,KAAK,EAAE,KAAK,CAAC,UAAU;IACvB,QAAQ,EAAE,MAAM;IAChB,WAAW,EAAE,KAAK;IAClB,oBAAoB,EAAE,SAAS;IAC/B,eAAe,EAAE,SAAS;CAC3B,CAAA;AAEM,sBAAS,GAAG;IACjB,cAAc,EAAE,SAAS,CAAC,MAAM,CAAC,UAAU;IAC3C,YAAY,EAAE,SAAS,CAAC,IAAI;IAC5B,KAAK,EAAE,SAAS,CAAC,MAAM;IACvB,QAAQ,EAAE,SAAS,CAAC,MAAM;IAC1B,WAAW,EAAE,SAAS,CAAC,IAAI;IAC3B,oBAAoB,EAAE,SAAS,CAAC,IAAI;IACpC,eAAe,EAAE,aAAa;CAC/B,CAAA"}
1
+ {"version":3,"file":"QuickReplies.js","sourceRoot":"","sources":["../src/QuickReplies.tsx"],"names":[],"mappings":"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"}
package/lib/Send.d.ts CHANGED
@@ -1,5 +1,5 @@
1
+ import * as React from 'react';
1
2
  import PropTypes from 'prop-types';
2
- import React, { Component } from 'react';
3
3
  import { StyleProp, ViewStyle, TextStyle, TouchableOpacityProps } from 'react-native';
4
4
  import { IMessage } from './Models';
5
5
  export interface SendProps<TMessage extends IMessage> {
@@ -13,8 +13,9 @@ export interface SendProps<TMessage extends IMessage> {
13
13
  sendButtonProps?: Partial<TouchableOpacityProps>;
14
14
  onSend?(messages: Partial<TMessage> | Partial<TMessage>[], shouldResetInputToolbar: boolean): void;
15
15
  }
16
- export default class Send<TMessage extends IMessage = IMessage> extends Component<SendProps<TMessage>> {
17
- static defaultProps: {
16
+ export declare const Send: {
17
+ <TMessage extends IMessage = IMessage>({ text, containerStyle, children, textStyle, label, alwaysShowSend, disabled, sendButtonProps, onSend, }: SendProps<TMessage>): JSX.Element;
18
+ defaultProps: {
18
19
  text: string;
19
20
  onSend: () => void;
20
21
  label: string;
@@ -25,7 +26,7 @@ export default class Send<TMessage extends IMessage = IMessage> extends Componen
25
26
  disabled: boolean;
26
27
  sendButtonProps: null;
27
28
  };
28
- static propTypes: {
29
+ propTypes: {
29
30
  text: PropTypes.Requireable<string>;
30
31
  onSend: PropTypes.Requireable<(...args: any[]) => any>;
31
32
  label: PropTypes.Requireable<string>;
@@ -36,6 +37,4 @@ export default class Send<TMessage extends IMessage = IMessage> extends Componen
36
37
  disabled: PropTypes.Requireable<boolean>;
37
38
  sendButtonProps: PropTypes.Requireable<object>;
38
39
  };
39
- handleOnPress: () => void;
40
- render(): JSX.Element;
41
- }
40
+ };
package/lib/Send.js CHANGED
@@ -1,6 +1,7 @@
1
+ import * as React from 'react';
1
2
  import PropTypes from 'prop-types';
2
- import React, { Component } from 'react';
3
3
  import { StyleSheet, Text, TouchableOpacity, View, } from 'react-native';
4
+ import { useCallbackOne, useMemoOne } from 'use-memo-one';
4
5
  import Color from './Color';
5
6
  import { StylePropType } from './utils';
6
7
  const styles = StyleSheet.create({
@@ -18,28 +19,22 @@ const styles = StyleSheet.create({
18
19
  marginRight: 10,
19
20
  },
20
21
  });
21
- export default class Send extends Component {
22
- constructor() {
23
- super(...arguments);
24
- this.handleOnPress = () => {
25
- const { text, onSend } = this.props;
26
- if (text && onSend) {
27
- onSend({ text: text.trim() }, true);
28
- }
29
- };
30
- }
31
- render() {
32
- const { text, containerStyle, children, textStyle, label, alwaysShowSend, disabled, sendButtonProps, } = this.props;
33
- if (alwaysShowSend || (text && text.trim().length > 0)) {
34
- return (<TouchableOpacity testID='send' accessible accessibilityLabel='send' style={[styles.container, containerStyle]} onPress={this.handleOnPress} accessibilityTraits='button' disabled={disabled} {...sendButtonProps}>
35
- <View>
36
- {children || <Text style={[styles.text, textStyle]}>{label}</Text>}
37
- </View>
38
- </TouchableOpacity>);
22
+ export const Send = ({ text, containerStyle, children, textStyle, label, alwaysShowSend, disabled, sendButtonProps, onSend, }) => {
23
+ const handleOnPress = useCallbackOne(() => {
24
+ if (text && onSend) {
25
+ onSend({ text: text.trim() }, true);
39
26
  }
40
- return <View />;
27
+ }, [text, onSend]);
28
+ const showSend = useMemoOne(() => alwaysShowSend || (text && text.trim().length > 0), [alwaysShowSend, text]);
29
+ if (showSend) {
30
+ return (<TouchableOpacity testID='send' accessible accessibilityLabel='send' style={[styles.container, containerStyle]} onPress={handleOnPress} accessibilityRole='button' disabled={disabled} {...sendButtonProps}>
31
+ <View>
32
+ {children || <Text style={[styles.text, textStyle]}>{label}</Text>}
33
+ </View>
34
+ </TouchableOpacity>);
41
35
  }
42
- }
36
+ return <View />;
37
+ };
43
38
  Send.defaultProps = {
44
39
  text: '',
45
40
  onSend: () => { },
package/lib/Send.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Send.js","sourceRoot":"","sources":["../src/Send.tsx"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAA;AAClC,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACxC,OAAO,EACL,UAAU,EACV,IAAI,EACJ,gBAAgB,EAChB,IAAI,GAKL,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,MAAM,SAAS,CAAA;AAE3B,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEvC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,SAAS,EAAE;QACT,MAAM,EAAE,EAAE;QACV,cAAc,EAAE,UAAU;KAC3B;IACD,IAAI,EAAE;QACJ,KAAK,EAAE,KAAK,CAAC,WAAW;QACxB,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,EAAE;QACZ,eAAe,EAAE,KAAK,CAAC,qBAAqB;QAC5C,YAAY,EAAE,EAAE;QAChB,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,EAAE;KAChB;CACF,CAAC,CAAA;AAiBF,MAAM,CAAC,OAAO,OAAO,IAEnB,SAAQ,SAA8B;IAFxC;;QA2BE,kBAAa,GAAG,GAAG,EAAE;YACnB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;YACnC,IAAI,IAAI,IAAI,MAAM,EAAE;gBAClB,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAuB,EAAE,IAAI,CAAC,CAAA;aACzD;QACH,CAAC,CAAA;IAiCH,CAAC;IA/BC,MAAM;QACJ,MAAM,EACJ,IAAI,EACJ,cAAc,EACd,QAAQ,EACR,SAAS,EACT,KAAK,EACL,cAAc,EACd,QAAQ,EACR,eAAe,GAChB,GAAG,IAAI,CAAC,KAAK,CAAA;QACd,IAAI,cAAc,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE;YACtD,OAAO,CACL,CAAC,gBAAgB,CACf,MAAM,CAAC,MAAM,CACb,UAAU,CACV,kBAAkB,CAAC,MAAM,CACzB,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAC1C,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAC5B,mBAAmB,CAAC,QAAQ,CAC5B,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,IAAI,eAAe,CAAC,CAEpB;UAAA,CAAC,IAAI,CACH;YAAA,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CACpE;UAAA,EAAE,IAAI,CACR;QAAA,EAAE,gBAAgB,CAAC,CACpB,CAAA;SACF;QACD,OAAO,CAAC,IAAI,CAAC,AAAD,EAAG,CAAA;IACjB,CAAC;;AA7DM,iBAAY,GAAG;IACpB,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;IAChB,KAAK,EAAE,MAAM;IACb,cAAc,EAAE,EAAE;IAClB,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,IAAI;IACd,cAAc,EAAE,KAAK;IACrB,QAAQ,EAAE,KAAK;IACf,eAAe,EAAE,IAAI;CACtB,CAAA;AAEM,cAAS,GAAG;IACjB,IAAI,EAAE,SAAS,CAAC,MAAM;IACtB,MAAM,EAAE,SAAS,CAAC,IAAI;IACtB,KAAK,EAAE,SAAS,CAAC,MAAM;IACvB,cAAc,EAAE,aAAa;IAC7B,SAAS,EAAE,aAAa;IACxB,QAAQ,EAAE,SAAS,CAAC,OAAO;IAC3B,cAAc,EAAE,SAAS,CAAC,IAAI;IAC9B,QAAQ,EAAE,SAAS,CAAC,IAAI;IACxB,eAAe,EAAE,SAAS,CAAC,MAAM;CAClC,CAAA"}
1
+ {"version":3,"file":"Send.js","sourceRoot":"","sources":["../src/Send.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import { Component } from 'react';
2
1
  import { ViewStyle, StyleProp, TextStyle } from 'react-native';
3
2
  import PropTypes from 'prop-types';
4
3
  import { IMessage } from './Models';
@@ -8,8 +7,9 @@ export interface SystemMessageProps<TMessage extends IMessage> {
8
7
  wrapperStyle?: StyleProp<ViewStyle>;
9
8
  textStyle?: StyleProp<TextStyle>;
10
9
  }
11
- export default class SystemMessage<TMessage extends IMessage = IMessage> extends Component<SystemMessageProps<TMessage>> {
12
- static defaultProps: {
10
+ export declare function SystemMessage<TMessage extends IMessage = IMessage>(props: SystemMessageProps<TMessage>): JSX.Element | null;
11
+ export declare namespace SystemMessage {
12
+ var defaultProps: {
13
13
  currentMessage: {
14
14
  system: boolean;
15
15
  };
@@ -17,11 +17,10 @@ export default class SystemMessage<TMessage extends IMessage = IMessage> extends
17
17
  wrapperStyle: {};
18
18
  textStyle: {};
19
19
  };
20
- static propTypes: {
20
+ var propTypes: {
21
21
  currentMessage: PropTypes.Requireable<object>;
22
22
  containerStyle: PropTypes.Requireable<number | boolean | object>;
23
23
  wrapperStyle: PropTypes.Requireable<number | boolean | object>;
24
24
  textStyle: PropTypes.Requireable<number | boolean | object>;
25
25
  };
26
- render(): JSX.Element | null;
27
26
  }
@@ -1,4 +1,4 @@
1
- import React, { Component } from 'react';
1
+ import React from 'react';
2
2
  import { StyleSheet, Text, View, } from 'react-native';
3
3
  import PropTypes from 'prop-types';
4
4
  import Color from './Color';
@@ -18,18 +18,16 @@ const styles = StyleSheet.create({
18
18
  fontWeight: '300',
19
19
  },
20
20
  });
21
- export default class SystemMessage extends Component {
22
- render() {
23
- const { currentMessage, containerStyle, wrapperStyle, textStyle, } = this.props;
24
- if (currentMessage) {
25
- return (<View style={[styles.container, containerStyle]}>
26
- <View style={wrapperStyle}>
27
- <Text style={[styles.text, textStyle]}>{currentMessage.text}</Text>
28
- </View>
29
- </View>);
30
- }
31
- return null;
21
+ export function SystemMessage(props) {
22
+ const { currentMessage, containerStyle, wrapperStyle, textStyle } = props;
23
+ if (currentMessage) {
24
+ return (<View style={[styles.container, containerStyle]}>
25
+ <View style={wrapperStyle}>
26
+ <Text style={[styles.text, textStyle]}>{currentMessage.text}</Text>
27
+ </View>
28
+ </View>);
32
29
  }
30
+ return null;
33
31
  }
34
32
  SystemMessage.defaultProps = {
35
33
  currentMessage: {
@@ -1 +1 @@
1
- {"version":3,"file":"SystemMessage.js","sourceRoot":"","sources":["../src/SystemMessage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACxC,OAAO,EACL,UAAU,EACV,IAAI,EACJ,IAAI,GAIL,MAAM,cAAc,CAAA;AACrB,OAAO,SAAS,MAAM,YAAY,CAAA;AAClC,OAAO,KAAK,MAAM,SAAS,CAAA;AAE3B,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEvC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,SAAS,EAAE;QACT,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,QAAQ;QACxB,IAAI,EAAE,CAAC;QACP,SAAS,EAAE,CAAC;QACZ,YAAY,EAAE,EAAE;KACjB;IACD,IAAI,EAAE;QACJ,eAAe,EAAE,KAAK,CAAC,qBAAqB;QAC5C,KAAK,EAAE,KAAK,CAAC,YAAY;QACzB,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,KAAK;KAClB;CACF,CAAC,CAAA;AASF,MAAM,CAAC,OAAO,OAAO,aAEnB,SAAQ,SAAuC;IAiB/C,MAAM;QACJ,MAAM,EACJ,cAAc,EACd,cAAc,EACd,YAAY,EACZ,SAAS,GACV,GAAG,IAAI,CAAC,KAAK,CAAA;QACd,IAAI,cAAc,EAAE;YAClB,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAC9C;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CACxB;YAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,CACpE;UAAA,EAAE,IAAI,CACR;QAAA,EAAE,IAAI,CAAC,CACR,CAAA;SACF;QACD,OAAO,IAAI,CAAA;IACb,CAAC;;AAjCM,0BAAY,GAAG;IACpB,cAAc,EAAE;QACd,MAAM,EAAE,KAAK;KACd;IACD,cAAc,EAAE,EAAE;IAClB,YAAY,EAAE,EAAE;IAChB,SAAS,EAAE,EAAE;CACd,CAAA;AAEM,uBAAS,GAAG;IACjB,cAAc,EAAE,SAAS,CAAC,MAAM;IAChC,cAAc,EAAE,aAAa;IAC7B,YAAY,EAAE,aAAa;IAC3B,SAAS,EAAE,aAAa;CACzB,CAAA"}
1
+ {"version":3,"file":"SystemMessage.js","sourceRoot":"","sources":["../src/SystemMessage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EACL,UAAU,EACV,IAAI,EACJ,IAAI,GAIL,MAAM,cAAc,CAAA;AACrB,OAAO,SAAS,MAAM,YAAY,CAAA;AAClC,OAAO,KAAK,MAAM,SAAS,CAAA;AAE3B,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEvC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,SAAS,EAAE;QACT,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,QAAQ;QACxB,IAAI,EAAE,CAAC;QACP,SAAS,EAAE,CAAC;QACZ,YAAY,EAAE,EAAE;KACjB;IACD,IAAI,EAAE;QACJ,eAAe,EAAE,KAAK,CAAC,qBAAqB;QAC5C,KAAK,EAAE,KAAK,CAAC,YAAY;QACzB,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,KAAK;KAClB;CACF,CAAC,CAAA;AASF,MAAM,UAAU,aAAa,CAC3B,KAAmC;IAEnC,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,KAAK,CAAA;IAEzE,IAAI,cAAc,EAAE;QAClB,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAC9C;QAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CACxB;UAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,CACpE;QAAA,EAAE,IAAI,CACR;MAAA,EAAE,IAAI,CAAC,CACR,CAAA;KACF;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,aAAa,CAAC,YAAY,GAAG;IAC3B,cAAc,EAAE;QACd,MAAM,EAAE,KAAK;KACd;IACD,cAAc,EAAE,EAAE;IAClB,YAAY,EAAE,EAAE;IAChB,SAAS,EAAE,EAAE;CACd,CAAA;AAED,aAAa,CAAC,SAAS,GAAG;IACxB,cAAc,EAAE,SAAS,CAAC,MAAM;IAChC,cAAc,EAAE,aAAa;IAC7B,YAAY,EAAE,aAAa;IAC3B,SAAS,EAAE,aAAa;CACzB,CAAA"}
package/lib/Time.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  import PropTypes from 'prop-types';
2
- import { Component } from 'react';
3
2
  import { ViewStyle, TextStyle } from 'react-native';
4
3
  import { LeftRightStyle, IMessage } from './Models';
5
4
  export interface TimeProps<TMessage extends IMessage> {
@@ -9,11 +8,9 @@ export interface TimeProps<TMessage extends IMessage> {
9
8
  timeTextStyle?: LeftRightStyle<TextStyle>;
10
9
  timeFormat?: string;
11
10
  }
12
- export default class Time<TMessage extends IMessage = IMessage> extends Component<TimeProps<TMessage>> {
13
- static contextTypes: {
14
- getLocale: PropTypes.Requireable<(...args: any[]) => any>;
15
- };
16
- static defaultProps: {
11
+ export declare const Time: {
12
+ <TMessage extends IMessage = IMessage>({ position, containerStyle, currentMessage, timeFormat, timeTextStyle, }: TimeProps<TMessage>): JSX.Element | null;
13
+ defaultProps: {
17
14
  position: string;
18
15
  currentMessage: {
19
16
  createdAt: null;
@@ -22,7 +19,7 @@ export default class Time<TMessage extends IMessage = IMessage> extends Componen
22
19
  timeFormat: string;
23
20
  timeTextStyle: {};
24
21
  };
25
- static propTypes: {
22
+ propTypes: {
26
23
  position: PropTypes.Requireable<string>;
27
24
  currentMessage: PropTypes.Requireable<object>;
28
25
  containerStyle: PropTypes.Requireable<PropTypes.InferProps<{
@@ -35,5 +32,4 @@ export default class Time<TMessage extends IMessage = IMessage> extends Componen
35
32
  right: PropTypes.Requireable<number | boolean | object>;
36
33
  }>>;
37
34
  };
38
- render(): JSX.Element | null;
39
- }
35
+ };
package/lib/Time.js CHANGED
@@ -1,20 +1,25 @@
1
+ import * as React from 'react';
1
2
  import PropTypes from 'prop-types';
2
- import React, { Component } from 'react';
3
3
  import { StyleSheet, Text, View } from 'react-native';
4
4
  import dayjs from 'dayjs';
5
5
  import Color from './Color';
6
6
  import { TIME_FORMAT } from './Constant';
7
7
  import { StylePropType } from './utils';
8
- const containerStyle = {
9
- marginLeft: 10,
10
- marginRight: 10,
11
- marginBottom: 5,
12
- };
13
- const textStyle = {
14
- fontSize: 10,
15
- backgroundColor: 'transparent',
16
- textAlign: 'right',
17
- };
8
+ import { useChatContext } from './GiftedChatContext';
9
+ const { containerStyle } = StyleSheet.create({
10
+ containerStyle: {
11
+ marginLeft: 10,
12
+ marginRight: 10,
13
+ marginBottom: 5,
14
+ },
15
+ });
16
+ const { textStyle } = StyleSheet.create({
17
+ textStyle: {
18
+ fontSize: 10,
19
+ backgroundColor: 'transparent',
20
+ textAlign: 'right',
21
+ },
22
+ });
18
23
  const styles = {
19
24
  left: StyleSheet.create({
20
25
  container: {
@@ -35,29 +40,24 @@ const styles = {
35
40
  },
36
41
  }),
37
42
  };
38
- export default class Time extends Component {
39
- render() {
40
- const { position, containerStyle, currentMessage, timeFormat, timeTextStyle, } = this.props;
41
- if (!!currentMessage) {
42
- return (<View style={[
43
- styles[position].container,
44
- containerStyle && containerStyle[position],
45
- ]}>
46
- <Text style={[
47
- styles[position].text,
48
- timeTextStyle && timeTextStyle[position],
49
- ]}>
50
- {dayjs(currentMessage.createdAt)
51
- .locale(this.context.getLocale())
52
- .format(timeFormat)}
53
- </Text>
54
- </View>);
55
- }
56
- return null;
43
+ export const Time = ({ position, containerStyle, currentMessage, timeFormat, timeTextStyle, }) => {
44
+ const { getLocale } = useChatContext();
45
+ if (!!currentMessage) {
46
+ return (<View style={[
47
+ styles[position].container,
48
+ containerStyle && containerStyle[position],
49
+ ]}>
50
+ <Text style={[
51
+ styles[position].text,
52
+ timeTextStyle && timeTextStyle[position],
53
+ ]}>
54
+ {dayjs(currentMessage.createdAt)
55
+ .locale(getLocale())
56
+ .format(timeFormat)}
57
+ </Text>
58
+ </View>);
57
59
  }
58
- }
59
- Time.contextTypes = {
60
- getLocale: PropTypes.func,
60
+ return null;
61
61
  };
62
62
  Time.defaultProps = {
63
63
  position: 'left',
package/lib/Time.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Time.js","sourceRoot":"","sources":["../src/Time.tsx"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAA;AAClC,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAwB,MAAM,cAAc,CAAA;AAC3E,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,MAAM,SAAS,CAAA;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAExC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAEvC,MAAM,cAAc,GAAG;IACrB,UAAU,EAAE,EAAE;IACd,WAAW,EAAE,EAAE;IACf,YAAY,EAAE,CAAC;CAChB,CAAA;AAED,MAAM,SAAS,GAAG;IAChB,QAAQ,EAAE,EAAE;IACZ,eAAe,EAAE,aAAa;IAC9B,SAAS,EAAE,OAAO;CACnB,CAAA;AAED,MAAM,MAAM,GAAG;IACb,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC;QACtB,SAAS,EAAE;YACT,GAAG,cAAc;SAClB;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,KAAK,CAAC,aAAa;YAC1B,GAAG,SAAS;SACb;KACF,CAAC;IACF,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC;QACvB,SAAS,EAAE;YACT,GAAG,cAAc;SAClB;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,GAAG,SAAS;SACb;KACF,CAAC;CACH,CAAA;AAUD,MAAM,CAAC,OAAO,OAAO,IAEnB,SAAQ,SAA8B;IA6BtC,MAAM;QACJ,MAAM,EACJ,QAAQ,EACR,cAAc,EACd,cAAc,EACd,UAAU,EACV,aAAa,GACd,GAAG,IAAI,CAAC,KAAK,CAAA;QAEd,IAAI,CAAC,CAAC,cAAc,EAAE;YACpB,OAAO,CACL,CAAC,IAAI,CACH,KAAK,CAAC,CAAC;gBACL,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS;gBAC1B,cAAc,IAAI,cAAc,CAAC,QAAQ,CAAC;aAC3C,CAAC,CAEF;UAAA,CAAC,IAAI,CACH,KAAK,CAAC,CACJ;gBACE,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI;gBACrB,aAAa,IAAI,aAAa,CAAC,QAAQ,CAAC;aAC5B,CACf,CAED;YAAA,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC;iBAC7B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;iBAChC,MAAM,CAAC,UAAU,CAAC,CACvB;UAAA,EAAE,IAAI,CACR;QAAA,EAAE,IAAI,CAAC,CACR,CAAA;SACF;QACD,OAAO,IAAI,CAAA;IACb,CAAC;;AA7DM,iBAAY,GAAG;IACpB,SAAS,EAAE,SAAS,CAAC,IAAI;CAC1B,CAAA;AAEM,iBAAY,GAAG;IACpB,QAAQ,EAAE,MAAM;IAChB,cAAc,EAAE;QACd,SAAS,EAAE,IAAI;KAChB;IACD,cAAc,EAAE,EAAE;IAClB,UAAU,EAAE,WAAW;IACvB,aAAa,EAAE,EAAE;CAClB,CAAA;AAEM,cAAS,GAAG;IACjB,QAAQ,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,cAAc,EAAE,SAAS,CAAC,MAAM;IAChC,cAAc,EAAE,SAAS,CAAC,KAAK,CAAC;QAC9B,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,aAAa;KACrB,CAAC;IACF,UAAU,EAAE,SAAS,CAAC,MAAM;IAC5B,aAAa,EAAE,SAAS,CAAC,KAAK,CAAC;QAC7B,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,aAAa;KACrB,CAAC;CACH,CAAA"}
1
+ {"version":3,"file":"Time.js","sourceRoot":"","sources":["../src/Time.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  interface Props {
3
2
  isTyping?: boolean;
4
3
  }
@@ -1,7 +1,8 @@
1
+ import { DependencyList } from 'react';
1
2
  /**
2
3
  * A custom useEffect hook that only triggers on updates, not on initial mount
3
4
  * Idea stolen from: https://stackoverflow.com/a/55075818/1526448
4
5
  * @param {()=>void} effect the function to call
5
- * @param {Array<any>} dependencies the state(s) that fires the update
6
+ * @param {DependencyList} dependencies the state(s) that fires the update
6
7
  */
7
- export declare function useUpdateLayoutEffect(effect: () => void, dependencies?: any[]): void;
8
+ export declare function useUpdateLayoutEffect(effect: () => void, dependencies?: DependencyList): void;
@@ -3,7 +3,7 @@ import { useLayoutEffect, useRef } from 'react';
3
3
  * A custom useEffect hook that only triggers on updates, not on initial mount
4
4
  * Idea stolen from: https://stackoverflow.com/a/55075818/1526448
5
5
  * @param {()=>void} effect the function to call
6
- * @param {Array<any>} dependencies the state(s) that fires the update
6
+ * @param {DependencyList} dependencies the state(s) that fires the update
7
7
  */
8
8
  export function useUpdateLayoutEffect(effect, dependencies = []) {
9
9
  const isInitialMount = useRef(true);
@@ -1 +1 @@
1
- {"version":3,"file":"useUpdateLayoutEffect.js","sourceRoot":"","sources":["../../src/hooks/useUpdateLayoutEffect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAE/C;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,MAAkB,EAClB,eAAsB,EAAE;IAExB,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IAEnC,eAAe,CAAC,GAAG,EAAE;QACnB,IAAI,cAAc,CAAC,OAAO,EAAE;YAC1B,cAAc,CAAC,OAAO,GAAG,KAAK,CAAA;SAC/B;aAAM;YACL,MAAM,EAAE,CAAA;SACT;IACH,CAAC,EAAE,YAAY,CAAC,CAAA;AAClB,CAAC"}
1
+ {"version":3,"file":"useUpdateLayoutEffect.js","sourceRoot":"","sources":["../../src/hooks/useUpdateLayoutEffect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,eAAe,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAE/D;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,MAAkB,EAClB,eAA+B,EAAE;IAEjC,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IAEnC,eAAe,CAAC,GAAG,EAAE;QACnB,IAAI,cAAc,CAAC,OAAO,EAAE;YAC1B,cAAc,CAAC,OAAO,GAAG,KAAK,CAAA;SAC/B;aAAM;YACL,MAAM,EAAE,CAAA;SACT;IACH,CAAC,EAAE,YAAY,CAAC,CAAA;AAClB,CAAC"}