@developer_tribe/react-native-comnyx 0.15.0 → 0.16.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.
Files changed (185) hide show
  1. package/Comnyx.podspec +10 -2
  2. package/README.md +50 -0
  3. package/android/build.gradle +1 -0
  4. package/android/consumer-rules.pro +23 -0
  5. package/android/generated/java/com/comnyx/NativeComnyxSpec.java +46 -0
  6. package/android/generated/jni/RNComnyxSpec-generated.cpp +23 -1
  7. package/android/generated/jni/RNComnyxSpec.h +7 -0
  8. package/android/generated/jni/react/renderer/components/RNComnyxSpec/RNComnyxSpecJSI-generated.cpp +21 -0
  9. package/android/generated/jni/react/renderer/components/RNComnyxSpec/RNComnyxSpecJSI.h +70 -0
  10. package/android/src/main/AndroidManifest.xml +11 -1
  11. package/android/src/main/AndroidManifestNew.xml +11 -1
  12. package/android/src/main/java/com/comnyx/ComnyxMediaPickerModule.kt +91 -51
  13. package/android/src/main/java/com/comnyx/ComnyxModule.kt +7 -0
  14. package/android/src/main/java/com/comnyx/src/messaging/firebase/FirebaseMessagingService.kt +4 -6
  15. package/android/src/main/res/xml/comnyx_file_paths.xml +12 -0
  16. package/ios/APNService.swift +9 -9
  17. package/ios/Comnyx.swift +17 -8
  18. package/ios/ComnyxMediaPicker.swift +47 -26
  19. package/ios/ComnyxMessaging.swift +2 -0
  20. package/ios/PrivacyInfo.xcprivacy +32 -0
  21. package/ios/comnyx_post_install.rb +25 -0
  22. package/ios/generated/RCTAppDependencyProvider.h +25 -0
  23. package/ios/generated/RCTAppDependencyProvider.mm +55 -0
  24. package/ios/generated/RCTModulesConformingToProtocolsProvider.h +18 -0
  25. package/ios/generated/RCTModulesConformingToProtocolsProvider.mm +33 -0
  26. package/ios/generated/RCTThirdPartyComponentsProvider.h +16 -0
  27. package/ios/generated/RCTThirdPartyComponentsProvider.mm +23 -0
  28. package/ios/generated/RNComnyxSpec/RNComnyxSpec-generated.mm +53 -0
  29. package/ios/generated/RNComnyxSpec/RNComnyxSpec.h +67 -0
  30. package/ios/generated/RNComnyxSpecJSI-generated.cpp +38 -0
  31. package/ios/generated/RNComnyxSpecJSI.h +89 -0
  32. package/ios/generated/ReactAppDependencyProvider.podspec +34 -0
  33. package/lib/commonjs/NativeComnyxMediaPicker.js +19 -0
  34. package/lib/commonjs/NativeComnyxMediaPicker.js.map +1 -1
  35. package/lib/commonjs/api/conversations.js +6 -6
  36. package/lib/commonjs/api/conversations.js.map +1 -1
  37. package/lib/commonjs/api/customers.js +3 -2
  38. package/lib/commonjs/api/customers.js.map +1 -1
  39. package/lib/commonjs/api/media.js +20 -6
  40. package/lib/commonjs/api/media.js.map +1 -1
  41. package/lib/commonjs/api/messages.js +3 -2
  42. package/lib/commonjs/api/messages.js.map +1 -1
  43. package/lib/commonjs/components/ChatList.js +93 -45
  44. package/lib/commonjs/components/ChatList.js.map +1 -1
  45. package/lib/commonjs/components/ComnyxErrorBoundary.js +92 -0
  46. package/lib/commonjs/components/ComnyxErrorBoundary.js.map +1 -0
  47. package/lib/commonjs/components/CustomerForm.js +2 -2
  48. package/lib/commonjs/components/CustomerForm.js.map +1 -1
  49. package/lib/commonjs/components/MediaMessageItem.js +4 -3
  50. package/lib/commonjs/components/MediaMessageItem.js.map +1 -1
  51. package/lib/commonjs/components/MessageInput.js +63 -13
  52. package/lib/commonjs/components/MessageInput.js.map +1 -1
  53. package/lib/commonjs/components/MessageItem.js +1 -1
  54. package/lib/commonjs/components/MessageItem.js.map +1 -1
  55. package/lib/commonjs/hooks/usePolling.js +25 -21
  56. package/lib/commonjs/hooks/usePolling.js.map +1 -1
  57. package/lib/commonjs/hooks/useThemeColors.js +12 -1
  58. package/lib/commonjs/hooks/useThemeColors.js.map +1 -1
  59. package/lib/commonjs/index.js.map +1 -1
  60. package/lib/commonjs/notifications/initializeNotifications.js +19 -16
  61. package/lib/commonjs/notifications/initializeNotifications.js.map +1 -1
  62. package/lib/commonjs/register/Accumulator.js +19 -6
  63. package/lib/commonjs/register/Accumulator.js.map +1 -1
  64. package/lib/commonjs/register/collectData.js +1 -1
  65. package/lib/commonjs/register/collectData.js.map +1 -1
  66. package/lib/commonjs/store/store.js +6 -0
  67. package/lib/commonjs/store/store.js.map +1 -1
  68. package/lib/commonjs/support/ComnyxSupport.js +60 -15
  69. package/lib/commonjs/support/ComnyxSupport.js.map +1 -1
  70. package/lib/commonjs/support/SupportConfigContext.js +24 -0
  71. package/lib/commonjs/support/SupportConfigContext.js.map +1 -0
  72. package/lib/commonjs/types/Theme.js +30 -2
  73. package/lib/commonjs/types/Theme.js.map +1 -1
  74. package/lib/commonjs/version.js +1 -1
  75. package/lib/module/NativeComnyxMediaPicker.js +18 -0
  76. package/lib/module/NativeComnyxMediaPicker.js.map +1 -1
  77. package/lib/module/api/conversations.js +6 -6
  78. package/lib/module/api/conversations.js.map +1 -1
  79. package/lib/module/api/customers.js +3 -2
  80. package/lib/module/api/customers.js.map +1 -1
  81. package/lib/module/api/media.js +21 -6
  82. package/lib/module/api/media.js.map +1 -1
  83. package/lib/module/api/messages.js +3 -2
  84. package/lib/module/api/messages.js.map +1 -1
  85. package/lib/module/components/ChatList.js +94 -46
  86. package/lib/module/components/ChatList.js.map +1 -1
  87. package/lib/module/components/ComnyxErrorBoundary.js +87 -0
  88. package/lib/module/components/ComnyxErrorBoundary.js.map +1 -0
  89. package/lib/module/components/CustomerForm.js +2 -2
  90. package/lib/module/components/CustomerForm.js.map +1 -1
  91. package/lib/module/components/MediaMessageItem.js +4 -3
  92. package/lib/module/components/MediaMessageItem.js.map +1 -1
  93. package/lib/module/components/MessageInput.js +64 -14
  94. package/lib/module/components/MessageInput.js.map +1 -1
  95. package/lib/module/components/MessageItem.js +1 -1
  96. package/lib/module/components/MessageItem.js.map +1 -1
  97. package/lib/module/hooks/usePolling.js +25 -21
  98. package/lib/module/hooks/usePolling.js.map +1 -1
  99. package/lib/module/hooks/useThemeColors.js +13 -2
  100. package/lib/module/hooks/useThemeColors.js.map +1 -1
  101. package/lib/module/index.js +0 -1
  102. package/lib/module/index.js.map +1 -1
  103. package/lib/module/notifications/initializeNotifications.js +19 -16
  104. package/lib/module/notifications/initializeNotifications.js.map +1 -1
  105. package/lib/module/register/Accumulator.js +19 -6
  106. package/lib/module/register/Accumulator.js.map +1 -1
  107. package/lib/module/register/collectData.js +1 -1
  108. package/lib/module/register/collectData.js.map +1 -1
  109. package/lib/module/store/store.js +6 -0
  110. package/lib/module/store/store.js.map +1 -1
  111. package/lib/module/support/ComnyxSupport.js +61 -16
  112. package/lib/module/support/ComnyxSupport.js.map +1 -1
  113. package/lib/module/support/SupportConfigContext.js +19 -0
  114. package/lib/module/support/SupportConfigContext.js.map +1 -0
  115. package/lib/module/types/Theme.js +30 -2
  116. package/lib/module/types/Theme.js.map +1 -1
  117. package/lib/module/version.js +1 -1
  118. package/lib/typescript/src/NativeComnyxMediaPicker.d.ts +9 -0
  119. package/lib/typescript/src/NativeComnyxMediaPicker.d.ts.map +1 -1
  120. package/lib/typescript/src/api/conversations.d.ts +2 -2
  121. package/lib/typescript/src/api/conversations.d.ts.map +1 -1
  122. package/lib/typescript/src/api/customers.d.ts +1 -1
  123. package/lib/typescript/src/api/customers.d.ts.map +1 -1
  124. package/lib/typescript/src/api/media.d.ts +3 -3
  125. package/lib/typescript/src/api/media.d.ts.map +1 -1
  126. package/lib/typescript/src/api/messages.d.ts +1 -1
  127. package/lib/typescript/src/api/messages.d.ts.map +1 -1
  128. package/lib/typescript/src/components/ChatList.d.ts.map +1 -1
  129. package/lib/typescript/src/components/ComnyxErrorBoundary.d.ts +18 -0
  130. package/lib/typescript/src/components/ComnyxErrorBoundary.d.ts.map +1 -0
  131. package/lib/typescript/src/components/MediaMessageItem.d.ts.map +1 -1
  132. package/lib/typescript/src/components/MessageInput.d.ts.map +1 -1
  133. package/lib/typescript/src/components/MessageItem.d.ts.map +1 -1
  134. package/lib/typescript/src/hooks/usePolling.d.ts.map +1 -1
  135. package/lib/typescript/src/hooks/useThemeColors.d.ts.map +1 -1
  136. package/lib/typescript/src/index.d.ts +2 -0
  137. package/lib/typescript/src/index.d.ts.map +1 -1
  138. package/lib/typescript/src/notifications/initializeNotifications.d.ts.map +1 -1
  139. package/lib/typescript/src/register/Accumulator.d.ts.map +1 -1
  140. package/lib/typescript/src/register/collectData.d.ts +4 -1
  141. package/lib/typescript/src/register/collectData.d.ts.map +1 -1
  142. package/lib/typescript/src/store/store.d.ts +6 -2
  143. package/lib/typescript/src/store/store.d.ts.map +1 -1
  144. package/lib/typescript/src/support/ComnyxSupport.d.ts +56 -2
  145. package/lib/typescript/src/support/ComnyxSupport.d.ts.map +1 -1
  146. package/lib/typescript/src/support/SupportConfigContext.d.ts +58 -0
  147. package/lib/typescript/src/support/SupportConfigContext.d.ts.map +1 -0
  148. package/lib/typescript/src/support/index.d.ts +1 -0
  149. package/lib/typescript/src/support/index.d.ts.map +1 -1
  150. package/lib/typescript/src/types/Conversation.d.ts +2 -2
  151. package/lib/typescript/src/types/Conversation.d.ts.map +1 -1
  152. package/lib/typescript/src/types/Customer.d.ts +1 -1
  153. package/lib/typescript/src/types/Customer.d.ts.map +1 -1
  154. package/lib/typescript/src/types/MessageResponse.d.ts +7 -4
  155. package/lib/typescript/src/types/MessageResponse.d.ts.map +1 -1
  156. package/lib/typescript/src/types/Theme.d.ts +26 -0
  157. package/lib/typescript/src/types/Theme.d.ts.map +1 -1
  158. package/lib/typescript/src/version.d.ts +1 -1
  159. package/package.json +12 -25
  160. package/src/NativeComnyxMediaPicker.ts +18 -0
  161. package/src/api/conversations.ts +6 -4
  162. package/src/api/customers.ts +3 -1
  163. package/src/api/media.ts +32 -10
  164. package/src/api/messages.ts +3 -1
  165. package/src/components/ChatList.tsx +115 -55
  166. package/src/components/ComnyxErrorBoundary.tsx +91 -0
  167. package/src/components/CustomerForm.tsx +2 -2
  168. package/src/components/MediaMessageItem.tsx +10 -3
  169. package/src/components/MessageInput.tsx +89 -16
  170. package/src/components/MessageItem.tsx +12 -13
  171. package/src/hooks/usePolling.ts +21 -11
  172. package/src/hooks/useThemeColors.ts +11 -2
  173. package/src/index.ts +12 -0
  174. package/src/notifications/initializeNotifications.ts +22 -20
  175. package/src/register/Accumulator.ts +26 -9
  176. package/src/register/collectData.ts +10 -2
  177. package/src/store/store.ts +11 -3
  178. package/src/support/ComnyxSupport.tsx +128 -22
  179. package/src/support/SupportConfigContext.tsx +79 -0
  180. package/src/support/index.ts +7 -0
  181. package/src/types/Conversation.ts +2 -2
  182. package/src/types/Customer.ts +1 -2
  183. package/src/types/MessageResponse.ts +4 -4
  184. package/src/types/Theme.ts +38 -0
  185. package/src/version.ts +1 -1
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.ComnyxSupport = ComnyxSupport;
7
7
  var _reactNative = require("react-native");
8
+ var _reactNativeSafeAreaContext = require("react-native-safe-area-context");
8
9
  var _ChatList = require("../components/ChatList.js");
9
10
  var _CustomerForm = require("../components/CustomerForm.js");
10
11
  var _react = require("react");
@@ -14,15 +15,23 @@ var _usePolling = require("../hooks/usePolling.js");
14
15
  var _store = require("../store/store.js");
15
16
  var _ScaledSheet = require("../components/ScaledSheet.js");
16
17
  var _Accumulator = require("../register/Accumulator.js");
18
+ var _SupportConfigContext = require("./SupportConfigContext.js");
19
+ var _ComnyxErrorBoundary = require("../components/ComnyxErrorBoundary.js");
17
20
  var _jsxRuntime = require("react/jsx-runtime");
18
21
  const closeIcon = require('../assets/x-close.png');
19
- function ComnyxSupport({
22
+ function ComnyxSupportInner({
20
23
  language = 'en',
21
24
  theme = 'dark',
22
25
  fake = false,
23
26
  onBack,
24
27
  themes,
25
- containerStyle
28
+ themeOverride,
29
+ containerStyle,
30
+ renderHeader,
31
+ renderEmptyState,
32
+ renderErrorState,
33
+ renderMessage,
34
+ onBeforeSend
26
35
  }) {
27
36
  const {
28
37
  customer,
@@ -33,13 +42,24 @@ function ComnyxSupport({
33
42
  }));
34
43
  const [initLoading, setInitLoading] = (0, _react.useState)(true);
35
44
  const themeColors = (0, _useThemeColors.useThemeColors)();
45
+ const insets = (0, _reactNativeSafeAreaContext.useSafeAreaInsets)();
36
46
  (0, _usePolling.usePolling)();
47
+ const supportConfig = (0, _react.useMemo)(() => ({
48
+ renderHeader,
49
+ renderEmptyState,
50
+ renderErrorState,
51
+ renderMessage,
52
+ onBeforeSend
53
+ }), [renderHeader, renderEmptyState, renderErrorState, renderMessage, onBeforeSend]);
37
54
  (0, _react.useEffect)(() => {
38
55
  if (!_Accumulator.accumulator.isListenerCalledOnce()) {
39
56
  _Accumulator.accumulator.flush().then(() => {
40
57
  setTimeout(() => {
41
58
  setInitLoading(false);
42
59
  }, 100);
60
+ }).catch(err => {
61
+ console.error('[Comnyx] accumulator.flush failed', err);
62
+ setInitLoading(false);
43
63
  });
44
64
  } else {
45
65
  setInitLoading(false);
@@ -53,24 +73,37 @@ function ComnyxSupport({
53
73
  }
54
74
  }, [customer, customer?.external_id]);
55
75
  (0, _react.useEffect)(() => {
56
- //TOOD: getState().initApp({language,theme,fake,rtlFix,themes})
57
76
  _store.useAppStore.getState().setLanguage(language);
58
77
  _store.useAppStore.getState().setTheme(theme);
59
78
  _store.useAppStore.getState().setFake(fake);
60
79
  if (themes) {
61
80
  _store.useAppStore.getState().setThemes(themes);
62
81
  }
63
- }, [language, theme, fake, themes]);
82
+ if (themeOverride) {
83
+ _store.useAppStore.getState().setThemeOverride(themeOverride);
84
+ }
85
+ }, [language, theme, fake, themes, themeOverride]);
86
+ let body;
64
87
  if (!customer) {
65
88
  //NOTE: customer yoksa register hiç çalışmamış
66
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
89
+ body = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
67
90
  style: [styles.container, {
68
91
  backgroundColor: themeColors.background
69
92
  }],
70
93
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
71
94
  activeOpacity: 1,
72
- style: [styles.iconContainer],
95
+ style: [styles.iconContainer, {
96
+ top: Math.max(insets.top, 16) + 16
97
+ }],
73
98
  onPress: onBack,
99
+ accessibilityRole: "button",
100
+ accessibilityLabel: "Close support",
101
+ hitSlop: {
102
+ top: 12,
103
+ bottom: 12,
104
+ left: 12,
105
+ right: 12
106
+ },
74
107
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Image, {
75
108
  source: closeIcon,
76
109
  style: [styles.closeIcon, {
@@ -86,19 +119,32 @@ function ComnyxSupport({
86
119
  });
87
120
  } else if (!formSubmitted) {
88
121
  //NOTE: customer var ama forSubmitted false (name===null)
89
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_CustomerForm.CustomerForm, {
122
+ body = /*#__PURE__*/(0, _jsxRuntime.jsx)(_CustomerForm.CustomerForm, {
90
123
  loading: initLoading,
91
124
  onBack: onBack,
92
125
  containerStyle: containerStyle
93
126
  });
127
+ } else {
128
+ body = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
129
+ style: [styles.container, {
130
+ backgroundColor: themeColors.background
131
+ }, containerStyle],
132
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChatList.ChatList, {
133
+ initLoading: initLoading,
134
+ onBack: onBack
135
+ })
136
+ });
94
137
  }
95
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
96
- style: [styles.container, {
97
- backgroundColor: themeColors.background
98
- }, containerStyle],
99
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChatList.ChatList, {
100
- initLoading: initLoading,
101
- onBack: onBack
138
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_SupportConfigContext.SupportConfigProvider, {
139
+ value: supportConfig,
140
+ children: body
141
+ });
142
+ }
143
+ function ComnyxSupport(props) {
144
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ComnyxErrorBoundary.ComnyxErrorBoundary, {
145
+ onBack: props.onBack,
146
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ComnyxSupportInner, {
147
+ ...props
102
148
  })
103
149
  });
104
150
  }
@@ -109,7 +155,6 @@ const styles = _ScaledSheet.ScaledSheet.create({
109
155
  },
110
156
  iconContainer: {
111
157
  position: 'absolute',
112
- top: '60@vs',
113
158
  left: '24@s'
114
159
  },
115
160
  closeIcon: {
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_ChatList","_CustomerForm","_react","_AppText","_useThemeColors","_usePolling","_store","_ScaledSheet","_Accumulator","_jsxRuntime","closeIcon","ComnyxSupport","language","theme","fake","onBack","themes","containerStyle","customer","formSubmitted","useAppStore","s","initLoading","setInitLoading","useState","themeColors","useThemeColors","usePolling","useEffect","accumulator","isListenerCalledOnce","flush","then","setTimeout","external_id","setState","data","getState","setLanguage","setTheme","setFake","setThemes","jsxs","View","style","styles","container","backgroundColor","background","children","jsx","TouchableOpacity","activeOpacity","iconContainer","onPress","Image","source","tintColor","text","AppText","textAlign","localization","CustomerForm","loading","ChatList","ScaledSheet","create","flex","justifyContent","position","top","left","width","height"],"sourceRoot":"../../../src","sources":["support/ComnyxSupport.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_reactNativeSafeAreaContext","_ChatList","_CustomerForm","_react","_AppText","_useThemeColors","_usePolling","_store","_ScaledSheet","_Accumulator","_SupportConfigContext","_ComnyxErrorBoundary","_jsxRuntime","closeIcon","ComnyxSupportInner","language","theme","fake","onBack","themes","themeOverride","containerStyle","renderHeader","renderEmptyState","renderErrorState","renderMessage","onBeforeSend","customer","formSubmitted","useAppStore","s","initLoading","setInitLoading","useState","themeColors","useThemeColors","insets","useSafeAreaInsets","usePolling","supportConfig","useMemo","useEffect","accumulator","isListenerCalledOnce","flush","then","setTimeout","catch","err","console","error","external_id","setState","data","getState","setLanguage","setTheme","setFake","setThemes","setThemeOverride","body","jsxs","View","style","styles","container","backgroundColor","background","children","jsx","TouchableOpacity","activeOpacity","iconContainer","top","Math","max","onPress","accessibilityRole","accessibilityLabel","hitSlop","bottom","left","right","Image","source","tintColor","text","AppText","textAlign","localization","CustomerForm","loading","ChatList","SupportConfigProvider","value","ComnyxSupport","props","ComnyxErrorBoundary","ScaledSheet","create","flex","justifyContent","position","width","height"],"sourceRoot":"../../../src","sources":["support/ComnyxSupport.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SupportConfigProvider = SupportConfigProvider;
7
+ exports.useSupportConfig = useSupportConfig;
8
+ var _react = require("react");
9
+ var _jsxRuntime = require("react/jsx-runtime");
10
+ const EMPTY_CONFIG = {};
11
+ const SupportConfigContext = /*#__PURE__*/(0, _react.createContext)(EMPTY_CONFIG);
12
+ function SupportConfigProvider({
13
+ value,
14
+ children
15
+ }) {
16
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(SupportConfigContext.Provider, {
17
+ value: value,
18
+ children: children
19
+ });
20
+ }
21
+ function useSupportConfig() {
22
+ return (0, _react.useContext)(SupportConfigContext);
23
+ }
24
+ //# sourceMappingURL=SupportConfigContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_jsxRuntime","EMPTY_CONFIG","SupportConfigContext","createContext","SupportConfigProvider","value","children","jsx","Provider","useSupportConfig","useContext"],"sourceRoot":"../../../src","sources":["support/SupportConfigContext.tsx"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAAkE,IAAAC,WAAA,GAAAD,OAAA;AA0DlE,MAAME,YAA2B,GAAG,CAAC,CAAC;AAEtC,MAAMC,oBAAoB,gBAAG,IAAAC,oBAAa,EAAgBF,YAAY,CAAC;AAEhE,SAASG,qBAAqBA,CAAC;EACpCC,KAAK;EACLC;AAIF,CAAC,EAAE;EACD,oBACE,IAAAN,WAAA,CAAAO,GAAA,EAACL,oBAAoB,CAACM,QAAQ;IAACH,KAAK,EAAEA,KAAM;IAAAC,QAAA,EACzCA;EAAQ,CACoB,CAAC;AAEpC;AAEO,SAASG,gBAAgBA,CAAA,EAAkB;EAChD,OAAO,IAAAC,iBAAU,EAACR,oBAAoB,CAAC;AACzC","ignoreList":[]}
@@ -23,7 +23,12 @@ const lightTheme = exports.lightTheme = {
23
23
  ghost: '#EFEFEF',
24
24
  navy: '#191A21',
25
25
  lavender: '#E0E0E0',
26
- silver: '#C7C7C7'
26
+ silver: '#C7C7C7',
27
+ link: '#0066CC',
28
+ toastBackground: '#333333',
29
+ toastText: '#FFFFFF',
30
+ playIcon: '#FFFFFF',
31
+ videoPlaceholder: '#1A1A2E'
27
32
  };
28
33
  const darkTheme = exports.darkTheme = {
29
34
  primary: '#4361EE',
@@ -44,6 +49,29 @@ const darkTheme = exports.darkTheme = {
44
49
  ghost: '#202129',
45
50
  navy: '#F5F5F5',
46
51
  lavender: '#262730',
47
- silver: '#44454D'
52
+ silver: '#44454D',
53
+ link: '#4D9FFF',
54
+ toastBackground: '#2A2A2A',
55
+ toastText: '#FFFFFF',
56
+ playIcon: '#FFFFFF',
57
+ videoPlaceholder: '#1A1A2E'
48
58
  };
59
+
60
+ /**
61
+ * Partial override for a single theme mode. Consumers can change one or more
62
+ * tokens without redeclaring the whole palette.
63
+ */
64
+
65
+ /**
66
+ * Full override map accepted by `ComnyxSupport.themeOverride`. Any token not
67
+ * provided falls back to the built-in light/dark palette.
68
+ *
69
+ * @example
70
+ * <ComnyxSupport
71
+ * themeOverride={{
72
+ * light: { primary: '#FF6B6B', link: '#FF9999' },
73
+ * dark: { primary: '#FF9999' },
74
+ * }}
75
+ * />
76
+ */
49
77
  //# sourceMappingURL=Theme.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["lightTheme","exports","primary","secondary","background","light_text","text","error","success","green","light_green","warning","info","border","dark_background","gainsboro","slate","ghost","navy","lavender","silver","darkTheme"],"sourceRoot":"../../../src","sources":["types/Theme.ts"],"mappings":";;;;;;AAsBO,MAAMA,UAAuB,GAAAC,OAAA,CAAAD,UAAA,GAAG;EACrCE,OAAO,EAAE,SAAS;EAClBC,SAAS,EAAE,SAAS;EACpBC,UAAU,EAAE,SAAS;EACrBC,UAAU,EAAE,SAAS;EACrBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,SAAS;EAChBC,OAAO,EAAE,SAAS;EAClBC,KAAK,EAAE,SAAS;EAChBC,WAAW,EAAE,SAAS;EACtBC,OAAO,EAAE,SAAS;EAClBC,IAAI,EAAE,SAAS;EACfC,MAAM,EAAE,SAAS;EACjBC,eAAe,EAAE,SAAS;EAC1BC,SAAS,EAAE,SAAS;EACpBC,KAAK,EAAE,SAAS;EAChBC,KAAK,EAAE,SAAS;EAChBC,IAAI,EAAE,SAAS;EACfC,QAAQ,EAAE,SAAS;EACnBC,MAAM,EAAE;AACV,CAAC;AAEM,MAAMC,SAAsB,GAAApB,OAAA,CAAAoB,SAAA,GAAG;EACpCnB,OAAO,EAAE,SAAS;EAClBC,SAAS,EAAE,SAAS;EACpBC,UAAU,EAAE,SAAS;EACrBC,UAAU,EAAE,SAAS;EACrBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,SAAS;EAChBC,OAAO,EAAE,SAAS;EAClBC,KAAK,EAAE,SAAS;EAChBC,WAAW,EAAE,SAAS;EACtBC,OAAO,EAAE,SAAS;EAClBC,IAAI,EAAE,SAAS;EACfC,MAAM,EAAE,SAAS;EACjBC,eAAe,EAAE,SAAS;EAC1BC,SAAS,EAAE,SAAS;EACpBC,KAAK,EAAE,SAAS;EAChBC,KAAK,EAAE,SAAS;EAChBC,IAAI,EAAE,SAAS;EACfC,QAAQ,EAAE,SAAS;EACnBC,MAAM,EAAE;AACV,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["lightTheme","exports","primary","secondary","background","light_text","text","error","success","green","light_green","warning","info","border","dark_background","gainsboro","slate","ghost","navy","lavender","silver","link","toastBackground","toastText","playIcon","videoPlaceholder","darkTheme"],"sourceRoot":"../../../src","sources":["types/Theme.ts"],"mappings":";;;;;;AA2BO,MAAMA,UAAuB,GAAAC,OAAA,CAAAD,UAAA,GAAG;EACrCE,OAAO,EAAE,SAAS;EAClBC,SAAS,EAAE,SAAS;EACpBC,UAAU,EAAE,SAAS;EACrBC,UAAU,EAAE,SAAS;EACrBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,SAAS;EAChBC,OAAO,EAAE,SAAS;EAClBC,KAAK,EAAE,SAAS;EAChBC,WAAW,EAAE,SAAS;EACtBC,OAAO,EAAE,SAAS;EAClBC,IAAI,EAAE,SAAS;EACfC,MAAM,EAAE,SAAS;EACjBC,eAAe,EAAE,SAAS;EAC1BC,SAAS,EAAE,SAAS;EACpBC,KAAK,EAAE,SAAS;EAChBC,KAAK,EAAE,SAAS;EAChBC,IAAI,EAAE,SAAS;EACfC,QAAQ,EAAE,SAAS;EACnBC,MAAM,EAAE,SAAS;EACjBC,IAAI,EAAE,SAAS;EACfC,eAAe,EAAE,SAAS;EAC1BC,SAAS,EAAE,SAAS;EACpBC,QAAQ,EAAE,SAAS;EACnBC,gBAAgB,EAAE;AACpB,CAAC;AAEM,MAAMC,SAAsB,GAAAzB,OAAA,CAAAyB,SAAA,GAAG;EACpCxB,OAAO,EAAE,SAAS;EAClBC,SAAS,EAAE,SAAS;EACpBC,UAAU,EAAE,SAAS;EACrBC,UAAU,EAAE,SAAS;EACrBC,IAAI,EAAE,SAAS;EACfC,KAAK,EAAE,SAAS;EAChBC,OAAO,EAAE,SAAS;EAClBC,KAAK,EAAE,SAAS;EAChBC,WAAW,EAAE,SAAS;EACtBC,OAAO,EAAE,SAAS;EAClBC,IAAI,EAAE,SAAS;EACfC,MAAM,EAAE,SAAS;EACjBC,eAAe,EAAE,SAAS;EAC1BC,SAAS,EAAE,SAAS;EACpBC,KAAK,EAAE,SAAS;EAChBC,KAAK,EAAE,SAAS;EAChBC,IAAI,EAAE,SAAS;EACfC,QAAQ,EAAE,SAAS;EACnBC,MAAM,EAAE,SAAS;EACjBC,IAAI,EAAE,SAAS;EACfC,eAAe,EAAE,SAAS;EAC1BC,SAAS,EAAE,SAAS;EACpBC,QAAQ,EAAE,SAAS;EACnBC,gBAAgB,EAAE;AACpB,CAAC;;AAOD;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
@@ -5,5 +5,5 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.VERSION = void 0;
7
7
  // This file is auto-generated. Do not edit manually.
8
- const VERSION = exports.VERSION = '0.15.0';
8
+ const VERSION = exports.VERSION = '0.16.0';
9
9
  //# sourceMappingURL=version.js.map
@@ -64,6 +64,24 @@ export async function deleteTempFile(uri) {
64
64
  }
65
65
  return ComnyxMediaPicker.deleteTempFile(uri);
66
66
  }
67
+
68
+ /**
69
+ * Android only. Converts a local file URI returned by the picker into a
70
+ * `content://` URI served by the Comnyx FileProvider, suitable for crossing
71
+ * process boundaries (e.g. sharing to another app, system ACTION_VIEW).
72
+ *
73
+ * On iOS, returns the input URI unchanged since iOS does not have the
74
+ * FileUriExposedException problem.
75
+ */
76
+ export async function getShareableUri(fileUri) {
77
+ if (!ComnyxMediaPicker) {
78
+ return fileUri;
79
+ }
80
+ if (typeof ComnyxMediaPicker.getShareableUri !== 'function') {
81
+ return fileUri;
82
+ }
83
+ return ComnyxMediaPicker.getShareableUri(fileUri);
84
+ }
67
85
  export async function cleanupTempFiles() {
68
86
  if (!ComnyxMediaPicker) {
69
87
  return;
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","ComnyxMediaPicker","mapResults","results","map","result","isImage","type","mimeType","startsWith","uri","fileName","fileSize","width","undefined","height","duration","thumbnailUri","pickMedia","Array","isArray","length","pickImage","pickVideo","openVideo","console","warn","generateThumbnail","videoUrl","deleteTempFile","cleanupTempFiles"],"sourceRoot":"../../src","sources":["NativeComnyxMediaPicker.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["NativeModules","ComnyxMediaPicker","mapResults","results","map","result","isImage","type","mimeType","startsWith","uri","fileName","fileSize","width","undefined","height","duration","thumbnailUri","pickMedia","Array","isArray","length","pickImage","pickVideo","openVideo","console","warn","generateThumbnail","videoUrl","deleteTempFile","getShareableUri","fileUri","cleanupTempFiles"],"sourceRoot":"../../src","sources":["NativeComnyxMediaPicker.ts"],"mappings":"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","ignoreList":[]}
@@ -4,29 +4,29 @@ import { getFakeConversationResponse, getFakePaginatedConversationResponse } fro
4
4
  import { axiosInstance } from "./api.js";
5
5
  import { dateToUnixTimestamp } from "../utils/date.js";
6
6
  const PER_PAGE = 25;
7
- export function getCustomerConversation(externalId, created_at, page = 0, options) {
7
+ export function getCustomerConversation(externalId, created_at, page = 0, options, signal) {
8
8
  if (options.fake) {
9
9
  return getFakePaginatedConversationResponse(page, options.per_page ?? PER_PAGE);
10
10
  }
11
11
  return axiosInstance.get(`/api/customers/${externalId}/conversation`, {
12
12
  params: {
13
13
  page,
14
- // per_page: PER_PAGE,
15
14
  getOld: 1,
16
15
  getFrom: dateToUnixTimestamp(created_at)
17
- }
16
+ },
17
+ signal
18
18
  }).then(res => res.data);
19
19
  }
20
- export function getNewCustomerConversation(externalId, created_at, options) {
20
+ export function getNewCustomerConversation(externalId, created_at, options, signal) {
21
21
  if (options.fake) {
22
22
  return getFakeConversationResponse(25, 0, 0, true);
23
23
  }
24
24
  return axiosInstance.get(`/api/customers/${externalId}/conversation`, {
25
25
  params: {
26
26
  page: 1,
27
- // per_page: 25,
28
27
  getFrom: dateToUnixTimestamp(created_at)
29
- }
28
+ },
29
+ signal
30
30
  }).then(res => res.data);
31
31
  }
32
32
  //# sourceMappingURL=conversations.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getFakeConversationResponse","getFakePaginatedConversationResponse","axiosInstance","dateToUnixTimestamp","PER_PAGE","getCustomerConversation","externalId","created_at","page","options","fake","per_page","get","params","getOld","getFrom","then","res","data","getNewCustomerConversation"],"sourceRoot":"../../../src","sources":["api/conversations.ts"],"mappings":";;AAEA,SACEA,2BAA2B,EAC3BC,oCAAoC,QAC/B,+BAA4B;AACnC,SAASC,aAAa,QAAQ,UAAO;AACrC,SAASC,mBAAmB,QAAQ,kBAAe;AAEnD,MAAMC,QAAQ,GAAG,EAAE;AAEnB,OAAO,SAASC,uBAAuBA,CACrCC,UAAkB,EAClBC,UAA4B,EAC5BC,IAAY,GAAG,CAAC,EAChBC,OAA2C,EACZ;EAC/B,IAAIA,OAAO,CAACC,IAAI,EAAE;IAChB,OAAOT,oCAAoC,CACzCO,IAAI,EACJC,OAAO,CAACE,QAAQ,IAAIP,QACtB,CAAC;EACH;EACA,OAAOF,aAAa,CACjBU,GAAG,CAAuB,kBAAkBN,UAAU,eAAe,EAAE;IACtEO,MAAM,EAAE;MACNL,IAAI;MACJ;MACAM,MAAM,EAAE,CAAC;MACTC,OAAO,EAAEZ,mBAAmB,CAACI,UAAU;IACzC;EACF,CAAC,CAAC,CACDS,IAAI,CAAEC,GAAG,IAAKA,GAAG,CAACC,IAAI,CAAC;AAC5B;AAEA,OAAO,SAASC,0BAA0BA,CACxCb,UAAkB,EAClBC,UAA4B,EAC5BE,OAAmB,EACY;EAC/B,IAAIA,OAAO,CAACC,IAAI,EAAE;IAChB,OAAOV,2BAA2B,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC;EACpD;EACA,OAAOE,aAAa,CACjBU,GAAG,CAAuB,kBAAkBN,UAAU,eAAe,EAAE;IACtEO,MAAM,EAAE;MACNL,IAAI,EAAE,CAAC;MACP;MACAO,OAAO,EAAEZ,mBAAmB,CAACI,UAAU;IACzC;EACF,CAAC,CAAC,CACDS,IAAI,CAAEC,GAAG,IAAKA,GAAG,CAACC,IAAI,CAAC;AAC5B","ignoreList":[]}
1
+ {"version":3,"names":["getFakeConversationResponse","getFakePaginatedConversationResponse","axiosInstance","dateToUnixTimestamp","PER_PAGE","getCustomerConversation","externalId","created_at","page","options","signal","fake","per_page","get","params","getOld","getFrom","then","res","data","getNewCustomerConversation"],"sourceRoot":"../../../src","sources":["api/conversations.ts"],"mappings":";;AAEA,SACEA,2BAA2B,EAC3BC,oCAAoC,QAC/B,+BAA4B;AACnC,SAASC,aAAa,QAAQ,UAAO;AACrC,SAASC,mBAAmB,QAAQ,kBAAe;AAEnD,MAAMC,QAAQ,GAAG,EAAE;AAEnB,OAAO,SAASC,uBAAuBA,CACrCC,UAAkB,EAClBC,UAA4B,EAC5BC,IAAY,GAAG,CAAC,EAChBC,OAA2C,EAC3CC,MAAoB,EACW;EAC/B,IAAID,OAAO,CAACE,IAAI,EAAE;IAChB,OAAOV,oCAAoC,CACzCO,IAAI,EACJC,OAAO,CAACG,QAAQ,IAAIR,QACtB,CAAC;EACH;EACA,OAAOF,aAAa,CACjBW,GAAG,CAAuB,kBAAkBP,UAAU,eAAe,EAAE;IACtEQ,MAAM,EAAE;MACNN,IAAI;MACJO,MAAM,EAAE,CAAC;MACTC,OAAO,EAAEb,mBAAmB,CAACI,UAAU;IACzC,CAAC;IACDG;EACF,CAAC,CAAC,CACDO,IAAI,CAAEC,GAAG,IAAKA,GAAG,CAACC,IAAI,CAAC;AAC5B;AAEA,OAAO,SAASC,0BAA0BA,CACxCd,UAAkB,EAClBC,UAA4B,EAC5BE,OAAmB,EACnBC,MAAoB,EACW;EAC/B,IAAID,OAAO,CAACE,IAAI,EAAE;IAChB,OAAOX,2BAA2B,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC;EACpD;EACA,OAAOE,aAAa,CACjBW,GAAG,CAAuB,kBAAkBP,UAAU,eAAe,EAAE;IACtEQ,MAAM,EAAE;MACNN,IAAI,EAAE,CAAC;MACPQ,OAAO,EAAEb,mBAAmB,CAACI,UAAU;IACzC,CAAC;IACDG;EACF,CAAC,CAAC,CACDO,IAAI,CAAEC,GAAG,IAAKA,GAAG,CAACC,IAAI,CAAC;AAC5B","ignoreList":[]}
@@ -3,12 +3,13 @@
3
3
  import { axiosInstance } from "./api.js";
4
4
 
5
5
  // NOTE: This is not a REST API endpoint. Data is collected with debounce and sent to the server at an appropriate time.
6
- export function updateCustomer(customerData, externalId) {
6
+ export function updateCustomer(customerData, externalId, signal) {
7
7
  console.info('[Comnyx] Adding customer info');
8
8
  return axiosInstance.post('/api/customers/create', customerData, {
9
9
  headers: {
10
10
  'external-id': externalId
11
- }
11
+ },
12
+ signal
12
13
  }).then(res => res.data);
13
14
  }
14
15
  //# sourceMappingURL=customers.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["axiosInstance","updateCustomer","customerData","externalId","console","info","post","headers","then","res","data"],"sourceRoot":"../../../src","sources":["api/customers.ts"],"mappings":";;AACA,SAASA,aAAa,QAAQ,UAAO;;AAErC;AACA,OAAO,SAASC,cAAcA,CAC5BC,YAAmC,EACnCC,UAAmB,EACc;EACjCC,OAAO,CAACC,IAAI,CAAC,+BAA+B,CAAC;EAC7C,OAAOL,aAAa,CACjBM,IAAI,CAAC,uBAAuB,EAAEJ,YAAY,EAAE;IAC3CK,OAAO,EAAE;MACP,aAAa,EAAEJ;IACjB;EACF,CAAC,CAAC,CACDK,IAAI,CAAEC,GAAG,IAAKA,GAAG,CAACC,IAAI,CAAC;AAC5B","ignoreList":[]}
1
+ {"version":3,"names":["axiosInstance","updateCustomer","customerData","externalId","signal","console","info","post","headers","then","res","data"],"sourceRoot":"../../../src","sources":["api/customers.ts"],"mappings":";;AACA,SAASA,aAAa,QAAQ,UAAO;;AAErC;AACA,OAAO,SAASC,cAAcA,CAC5BC,YAAmC,EACnCC,UAAmB,EACnBC,MAAoB,EACa;EACjCC,OAAO,CAACC,IAAI,CAAC,+BAA+B,CAAC;EAC7C,OAAON,aAAa,CACjBO,IAAI,CAAC,uBAAuB,EAAEL,YAAY,EAAE;IAC3CM,OAAO,EAAE;MACP,aAAa,EAAEL;IACjB,CAAC;IACDC;EACF,CAAC,CAAC,CACDK,IAAI,CAAEC,GAAG,IAAKA,GAAG,CAACC,IAAI,CAAC;AAC5B","ignoreList":[]}
@@ -3,21 +3,34 @@
3
3
  import { Platform } from 'react-native';
4
4
  import { axiosInstance } from "./api.js";
5
5
  import { getFakeUploadUrlResponse, fakeUploadToS3, getFakeMediaMessageResponse } from "../data/fake/media.js";
6
- export function getUploadUrl(fileName, contentType, options) {
6
+
7
+ // React Native's XMLHttpRequest.send accepts this shape to stream a file URI
8
+ // without loading it into memory. Not in lib.dom, so typed locally.
9
+
10
+ export function getUploadUrl(fileName, contentType, options, signal) {
7
11
  if (options.fake) {
8
12
  return getFakeUploadUrlResponse(fileName);
9
13
  }
10
14
  return axiosInstance.post('/api/media/presign', {
11
15
  fileName,
12
16
  fileType: contentType
17
+ }, {
18
+ signal
13
19
  }).then(res => res.data);
14
20
  }
15
- export function uploadFileToS3(uploadUrl, fileUri, contentType, onProgress, options) {
21
+ export function uploadFileToS3(uploadUrl, fileUri, contentType, onProgress, options, signal) {
16
22
  if (options?.fake) {
17
23
  return fakeUploadToS3(onProgress);
18
24
  }
19
25
  return new Promise((resolve, reject) => {
26
+ if (signal?.aborted) {
27
+ reject(new Error('Upload aborted'));
28
+ return;
29
+ }
20
30
  const xhr = new XMLHttpRequest();
31
+ const onAbort = () => xhr.abort();
32
+ signal?.addEventListener('abort', onAbort);
33
+ const cleanup = () => signal?.removeEventListener('abort', onAbort);
21
34
  xhr.upload.addEventListener('progress', event => {
22
35
  if (event.lengthComputable && onProgress) {
23
36
  const percentage = Math.min(100, Math.round(event.loaded / event.total * 100));
@@ -25,6 +38,7 @@ export function uploadFileToS3(uploadUrl, fileUri, contentType, onProgress, opti
25
38
  }
26
39
  });
27
40
  xhr.addEventListener('load', () => {
41
+ cleanup();
28
42
  if (xhr.status >= 200 && xhr.status < 300) {
29
43
  resolve();
30
44
  } else {
@@ -33,16 +47,16 @@ export function uploadFileToS3(uploadUrl, fileUri, contentType, onProgress, opti
33
47
  }
34
48
  });
35
49
  xhr.addEventListener('error', () => {
50
+ cleanup();
36
51
  console.error('[Comnyx] Upload XHR error, status:', xhr.status, 'response:', xhr.responseText);
37
52
  reject(new Error('Upload failed'));
38
53
  });
39
54
  xhr.addEventListener('abort', () => {
55
+ cleanup();
40
56
  reject(new Error('Upload aborted'));
41
57
  });
42
58
  xhr.open('PUT', uploadUrl);
43
59
  xhr.setRequestHeader('Content-Type', contentType);
44
-
45
- // React Native supports sending file URIs directly via XHR
46
60
  const file = {
47
61
  uri: Platform.OS === 'android' ? fileUri : fileUri.replace('file://', ''),
48
62
  type: contentType,
@@ -51,7 +65,7 @@ export function uploadFileToS3(uploadUrl, fileUri, contentType, onProgress, opti
51
65
  xhr.send(file);
52
66
  });
53
67
  }
54
- export function sendMediaMessage(externalId, fileUrls, mediaType, content, options) {
68
+ export function sendMediaMessage(externalId, fileUrls, mediaType, content, options, signal) {
55
69
  if (options.fake) {
56
70
  return getFakeMediaMessageResponse(fileUrls, mediaType);
57
71
  }
@@ -64,7 +78,8 @@ export function sendMediaMessage(externalId, fileUrls, mediaType, content, optio
64
78
  headers: {
65
79
  'Accept': 'application/json',
66
80
  'Content-Type': 'application/json'
67
- }
81
+ },
82
+ signal
68
83
  }).then(res => res.data);
69
84
  }
70
85
  //# sourceMappingURL=media.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","axiosInstance","getFakeUploadUrlResponse","fakeUploadToS3","getFakeMediaMessageResponse","getUploadUrl","fileName","contentType","options","fake","post","fileType","then","res","data","uploadFileToS3","uploadUrl","fileUri","onProgress","Promise","resolve","reject","xhr","XMLHttpRequest","upload","addEventListener","event","lengthComputable","percentage","Math","min","round","loaded","total","status","console","error","responseText","Error","open","setRequestHeader","file","uri","OS","replace","type","name","split","pop","send","sendMediaMessage","externalId","fileUrls","mediaType","content","files","media_type","headers"],"sourceRoot":"../../../src","sources":["api/media.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Platform","axiosInstance","getFakeUploadUrlResponse","fakeUploadToS3","getFakeMediaMessageResponse","getUploadUrl","fileName","contentType","options","signal","fake","post","fileType","then","res","data","uploadFileToS3","uploadUrl","fileUri","onProgress","Promise","resolve","reject","aborted","Error","xhr","XMLHttpRequest","onAbort","abort","addEventListener","cleanup","removeEventListener","upload","event","lengthComputable","percentage","Math","min","round","loaded","total","status","console","error","responseText","open","setRequestHeader","file","uri","OS","replace","type","name","split","pop","send","sendMediaMessage","externalId","fileUrls","mediaType","content","files","media_type","headers"],"sourceRoot":"../../../src","sources":["api/media.ts"],"mappings":"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","ignoreList":[]}
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { getFakeMessageResponse } from "../data/fake/messages.js";
4
4
  import { axiosInstance } from "./api.js";
5
- export function sendCustomerMessage(externalId, content, options) {
5
+ export function sendCustomerMessage(externalId, content, options, signal) {
6
6
  if (options.fake) {
7
7
  return new Promise((resolve, _) => {
8
8
  setTimeout(() => {
@@ -17,7 +17,8 @@ export function sendCustomerMessage(externalId, content, options) {
17
17
  headers: {
18
18
  'Accept': 'application/json',
19
19
  'Content-Type': 'application/x-www-form-urlencoded'
20
- }
20
+ },
21
+ signal
21
22
  }).then(res => res.data);
22
23
  }
23
24
  //# sourceMappingURL=messages.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getFakeMessageResponse","axiosInstance","sendCustomerMessage","externalId","content","options","fake","Promise","resolve","_","setTimeout","post","headers","then","res","data"],"sourceRoot":"../../../src","sources":["api/messages.ts"],"mappings":";;AAEA,SAASA,sBAAsB,QAAQ,0BAAuB;AAC9D,SAASC,aAAa,QAAQ,UAAO;AAErC,OAAO,SAASC,mBAAmBA,CACjCC,UAAkB,EAClBC,OAAe,EACfC,OAAmB,EACO;EAC1B,IAAIA,OAAO,CAACC,IAAI,EAAE;IAChB,OAAO,IAAIC,OAAO,CAAkB,CAACC,OAAO,EAAEC,CAAC,KAAK;MAClDC,UAAU,CAAC,MAAM;QACfF,OAAO,CAACR,sBAAsB,CAACI,OAAO,CAAC,CAAC;MAC1C,CAAC,EAAE,GAAG,CAAC;IACT,CAAC,CAAC;EACJ;EACA,OAAOH,aAAa,CACjBU,IAAI,CACH,wBAAwB,EACxB;IACER,UAAU;IACVC;EACF,CAAC,EACD;IACEQ,OAAO,EAAE;MACP,QAAQ,EAAE,kBAAkB;MAC5B,cAAc,EAAE;IAClB;EACF,CACF,CAAC,CACAC,IAAI,CAAEC,GAAG,IAAKA,GAAG,CAACC,IAAI,CAAC;AAC5B","ignoreList":[]}
1
+ {"version":3,"names":["getFakeMessageResponse","axiosInstance","sendCustomerMessage","externalId","content","options","signal","fake","Promise","resolve","_","setTimeout","post","headers","then","res","data"],"sourceRoot":"../../../src","sources":["api/messages.ts"],"mappings":";;AAEA,SAASA,sBAAsB,QAAQ,0BAAuB;AAC9D,SAASC,aAAa,QAAQ,UAAO;AAErC,OAAO,SAASC,mBAAmBA,CACjCC,UAAkB,EAClBC,OAAe,EACfC,OAAmB,EACnBC,MAAoB,EACM;EAC1B,IAAID,OAAO,CAACE,IAAI,EAAE;IAChB,OAAO,IAAIC,OAAO,CAAkB,CAACC,OAAO,EAAEC,CAAC,KAAK;MAClDC,UAAU,CAAC,MAAM;QACfF,OAAO,CAACT,sBAAsB,CAACI,OAAO,CAAC,CAAC;MAC1C,CAAC,EAAE,GAAG,CAAC;IACT,CAAC,CAAC;EACJ;EACA,OAAOH,aAAa,CACjBW,IAAI,CACH,wBAAwB,EACxB;IACET,UAAU;IACVC;EACF,CAAC,EACD;IACES,OAAO,EAAE;MACP,QAAQ,EAAE,kBAAkB;MAC5B,cAAc,EAAE;IAClB,CAAC;IACDP;EACF,CACF,CAAC,CACAQ,IAAI,CAAEC,GAAG,IAAKA,GAAG,CAACC,IAAI,CAAC;AAC5B","ignoreList":[]}