@droppii-org/chat-mobile 0.2.25 → 0.2.27

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 (132) hide show
  1. package/README.md +113 -0
  2. package/lib/module/components/flows/inputButtons/index.js +3 -6
  3. package/lib/module/components/flows/inputButtons/index.js.map +1 -1
  4. package/lib/module/components/messages/fileMessage/index.js +1 -1
  5. package/lib/module/components/messages/fileMessage/index.js.map +1 -1
  6. package/lib/module/components/messages/imageMessage/index.js +1 -1
  7. package/lib/module/components/messages/imageMessage/index.js.map +1 -1
  8. package/lib/module/components/messages/linkMessage/index.js +7 -7
  9. package/lib/module/components/messages/linkMessage/index.js.map +1 -1
  10. package/lib/module/components/messages/mergedMessage/index.js +5 -8
  11. package/lib/module/components/messages/mergedMessage/index.js.map +1 -1
  12. package/lib/module/components/messages/styles.js +12 -0
  13. package/lib/module/components/messages/styles.js.map +1 -1
  14. package/lib/module/components/messages/textMessage/index.js +10 -7
  15. package/lib/module/components/messages/textMessage/index.js.map +1 -1
  16. package/lib/module/components/messages/videoMessage/index.js +7 -11
  17. package/lib/module/components/messages/videoMessage/index.js.map +1 -1
  18. package/lib/module/core/index.js +3 -0
  19. package/lib/module/core/index.js.map +1 -1
  20. package/lib/module/core/notification/backgroundStatus.js +15 -0
  21. package/lib/module/core/notification/backgroundStatus.js.map +1 -0
  22. package/lib/module/core/notification/index.js +5 -0
  23. package/lib/module/core/notification/index.js.map +1 -0
  24. package/lib/module/core/notification/pushToken.js +23 -0
  25. package/lib/module/core/notification/pushToken.js.map +1 -0
  26. package/lib/module/core/notification/useBackgroundStatusSync.js +16 -0
  27. package/lib/module/core/notification/useBackgroundStatusSync.js.map +1 -0
  28. package/lib/module/hooks/useChatMessages.js +2 -1
  29. package/lib/module/hooks/useChatMessages.js.map +1 -1
  30. package/lib/module/index.js +1 -0
  31. package/lib/module/index.js.map +1 -1
  32. package/lib/module/screens/chat-detail/ChatDetail.js +11 -1
  33. package/lib/module/screens/chat-detail/ChatDetail.js.map +1 -1
  34. package/lib/module/screens/chat-detail/ChatListLegend.js +21 -14
  35. package/lib/module/screens/chat-detail/ChatListLegend.js.map +1 -1
  36. package/lib/module/screens/chat-detail/constants.js +3 -2
  37. package/lib/module/screens/chat-detail/constants.js.map +1 -1
  38. package/lib/module/screens/chat-detail/legend/LegendChatMessage.js +36 -8
  39. package/lib/module/screens/chat-detail/legend/LegendChatMessage.js.map +1 -1
  40. package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxMenu.js +98 -0
  41. package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxMenu.js.map +1 -0
  42. package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxOverlay.js +110 -0
  43. package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxOverlay.js.map +1 -0
  44. package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxWrapper.js +64 -0
  45. package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxWrapper.js.map +1 -0
  46. package/lib/module/screens/chat-detail/messageToolbox/messageToolbox.utils.js +37 -0
  47. package/lib/module/screens/chat-detail/messageToolbox/messageToolbox.utils.js.map +1 -0
  48. package/lib/module/screens/chat-detail/messageToolbox/types.js +4 -0
  49. package/lib/module/screens/chat-detail/messageToolbox/types.js.map +1 -0
  50. package/lib/module/services/attachmentOrchestrator.js +2 -1
  51. package/lib/module/services/attachmentOrchestrator.js.map +1 -1
  52. package/lib/module/translation/resources/i18n.js +5 -0
  53. package/lib/module/translation/resources/i18n.js.map +1 -1
  54. package/lib/module/utils/promise.js +14 -0
  55. package/lib/module/utils/promise.js.map +1 -0
  56. package/lib/module/utils/ui.js +19 -0
  57. package/lib/module/utils/ui.js.map +1 -0
  58. package/lib/typescript/src/components/flows/inputButtons/index.d.ts.map +1 -1
  59. package/lib/typescript/src/components/messages/fileMessage/index.d.ts.map +1 -1
  60. package/lib/typescript/src/components/messages/mergedMessage/index.d.ts.map +1 -1
  61. package/lib/typescript/src/components/messages/styles.d.ts +15 -3
  62. package/lib/typescript/src/components/messages/styles.d.ts.map +1 -1
  63. package/lib/typescript/src/components/messages/textMessage/index.d.ts.map +1 -1
  64. package/lib/typescript/src/components/messages/videoMessage/index.d.ts.map +1 -1
  65. package/lib/typescript/src/core/index.d.ts +1 -0
  66. package/lib/typescript/src/core/index.d.ts.map +1 -1
  67. package/lib/typescript/src/core/notification/backgroundStatus.d.ts +6 -0
  68. package/lib/typescript/src/core/notification/backgroundStatus.d.ts.map +1 -0
  69. package/lib/typescript/src/core/notification/index.d.ts +3 -0
  70. package/lib/typescript/src/core/notification/index.d.ts.map +1 -0
  71. package/lib/typescript/src/core/notification/pushToken.d.ts +14 -0
  72. package/lib/typescript/src/core/notification/pushToken.d.ts.map +1 -0
  73. package/lib/typescript/src/core/notification/useBackgroundStatusSync.d.ts +2 -0
  74. package/lib/typescript/src/core/notification/useBackgroundStatusSync.d.ts.map +1 -0
  75. package/lib/typescript/src/hooks/useChatMessages.d.ts.map +1 -1
  76. package/lib/typescript/src/index.d.ts +1 -0
  77. package/lib/typescript/src/index.d.ts.map +1 -1
  78. package/lib/typescript/src/screens/chat-detail/ChatDetail.d.ts.map +1 -1
  79. package/lib/typescript/src/screens/chat-detail/ChatListLegend.d.ts +1 -1
  80. package/lib/typescript/src/screens/chat-detail/ChatListLegend.d.ts.map +1 -1
  81. package/lib/typescript/src/screens/chat-detail/constants.d.ts +2 -2
  82. package/lib/typescript/src/screens/chat-detail/constants.d.ts.map +1 -1
  83. package/lib/typescript/src/screens/chat-detail/legend/LegendChatMessage.d.ts +2 -1
  84. package/lib/typescript/src/screens/chat-detail/legend/LegendChatMessage.d.ts.map +1 -1
  85. package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxMenu.d.ts +11 -0
  86. package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxMenu.d.ts.map +1 -0
  87. package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxOverlay.d.ts +10 -0
  88. package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxOverlay.d.ts.map +1 -0
  89. package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxWrapper.d.ts +11 -0
  90. package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxWrapper.d.ts.map +1 -0
  91. package/lib/typescript/src/screens/chat-detail/messageToolbox/messageToolbox.utils.d.ts +18 -0
  92. package/lib/typescript/src/screens/chat-detail/messageToolbox/messageToolbox.utils.d.ts.map +1 -0
  93. package/lib/typescript/src/screens/chat-detail/messageToolbox/types.d.ts +12 -0
  94. package/lib/typescript/src/screens/chat-detail/messageToolbox/types.d.ts.map +1 -0
  95. package/lib/typescript/src/screens/chat-detail/types.d.ts +2 -0
  96. package/lib/typescript/src/screens/chat-detail/types.d.ts.map +1 -1
  97. package/lib/typescript/src/services/attachmentOrchestrator.d.ts.map +1 -1
  98. package/lib/typescript/src/translation/resources/i18n.d.ts.map +1 -1
  99. package/lib/typescript/src/utils/promise.d.ts +13 -0
  100. package/lib/typescript/src/utils/promise.d.ts.map +1 -0
  101. package/lib/typescript/src/utils/ui.d.ts +2 -0
  102. package/lib/typescript/src/utils/ui.d.ts.map +1 -0
  103. package/package.json +3 -1
  104. package/src/components/flows/inputButtons/index.tsx +3 -5
  105. package/src/components/messages/fileMessage/index.tsx +0 -1
  106. package/src/components/messages/imageMessage/index.tsx +1 -1
  107. package/src/components/messages/linkMessage/index.tsx +4 -3
  108. package/src/components/messages/mergedMessage/index.tsx +13 -17
  109. package/src/components/messages/styles.ts +12 -0
  110. package/src/components/messages/textMessage/index.tsx +8 -3
  111. package/src/components/messages/videoMessage/index.tsx +8 -10
  112. package/src/core/index.ts +4 -0
  113. package/src/core/notification/backgroundStatus.ts +22 -0
  114. package/src/core/notification/index.ts +5 -0
  115. package/src/core/notification/pushToken.ts +24 -0
  116. package/src/core/notification/useBackgroundStatusSync.ts +18 -0
  117. package/src/hooks/useChatMessages.ts +2 -1
  118. package/src/index.tsx +1 -0
  119. package/src/screens/chat-detail/ChatDetail.tsx +17 -0
  120. package/src/screens/chat-detail/ChatListLegend.tsx +30 -16
  121. package/src/screens/chat-detail/constants.ts +3 -2
  122. package/src/screens/chat-detail/legend/LegendChatMessage.tsx +49 -11
  123. package/src/screens/chat-detail/messageToolbox/MessageToolboxMenu.tsx +114 -0
  124. package/src/screens/chat-detail/messageToolbox/MessageToolboxOverlay.tsx +130 -0
  125. package/src/screens/chat-detail/messageToolbox/MessageToolboxWrapper.tsx +99 -0
  126. package/src/screens/chat-detail/messageToolbox/messageToolbox.utils.ts +56 -0
  127. package/src/screens/chat-detail/messageToolbox/types.ts +13 -0
  128. package/src/screens/chat-detail/types.ts +2 -0
  129. package/src/services/attachmentOrchestrator.ts +2 -1
  130. package/src/translation/resources/i18n.ts +5 -0
  131. package/src/utils/promise.ts +18 -0
  132. package/src/utils/ui.ts +23 -0
@@ -0,0 +1,18 @@
1
+ export type SettledResult<T> =
2
+ | { status: 'fulfilled'; value: T }
3
+ | { status: 'rejected'; reason: unknown };
4
+
5
+ /**
6
+ * Promise.allSettled polyfill — the RN/Hermes target for this app doesn't
7
+ * ship it, so a rejection would otherwise short-circuit Promise.all.
8
+ */
9
+ export const allSettled = <T extends readonly unknown[]>(
10
+ promises: readonly [...T]
11
+ ): Promise<{ [K in keyof T]: SettledResult<Awaited<T[K]>> }> =>
12
+ Promise.all(
13
+ promises.map((p) =>
14
+ Promise.resolve(p)
15
+ .then((value) => ({ status: 'fulfilled' as const, value }))
16
+ .catch((reason) => ({ status: 'rejected' as const, reason }))
17
+ )
18
+ ) as Promise<{ [K in keyof T]: SettledResult<Awaited<T[K]>> }>;
@@ -0,0 +1,23 @@
1
+ const hexToObject = (hex: string) => {
2
+ const [_, r = 0, g = 0, b = 0] =
3
+ /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})/i
4
+ .exec(hex)
5
+ ?.slice(0, 4)
6
+ .map((x) => parseInt(x, 16)) ?? [];
7
+
8
+ return { r, g, b };
9
+ };
10
+
11
+ export function opacityToSolid(
12
+ foregroundColor: string,
13
+ backgroundColor: string,
14
+ alpha: number
15
+ ) {
16
+ const fg = hexToObject(foregroundColor);
17
+ const bg = hexToObject(backgroundColor);
18
+ const r = Math.round(fg.r * alpha + bg.r * (1 - alpha));
19
+ const g = Math.round(fg.g * alpha + bg.g * (1 - alpha));
20
+ const b = Math.round(fg.b * alpha + bg.b * (1 - alpha));
21
+
22
+ return `rgb(${r}, ${g}, ${b})`;
23
+ }