@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.
- package/README.md +113 -0
- package/lib/module/components/flows/inputButtons/index.js +3 -6
- package/lib/module/components/flows/inputButtons/index.js.map +1 -1
- package/lib/module/components/messages/fileMessage/index.js +1 -1
- package/lib/module/components/messages/fileMessage/index.js.map +1 -1
- package/lib/module/components/messages/imageMessage/index.js +1 -1
- package/lib/module/components/messages/imageMessage/index.js.map +1 -1
- package/lib/module/components/messages/linkMessage/index.js +7 -7
- package/lib/module/components/messages/linkMessage/index.js.map +1 -1
- package/lib/module/components/messages/mergedMessage/index.js +5 -8
- package/lib/module/components/messages/mergedMessage/index.js.map +1 -1
- package/lib/module/components/messages/styles.js +12 -0
- package/lib/module/components/messages/styles.js.map +1 -1
- package/lib/module/components/messages/textMessage/index.js +10 -7
- package/lib/module/components/messages/textMessage/index.js.map +1 -1
- package/lib/module/components/messages/videoMessage/index.js +7 -11
- package/lib/module/components/messages/videoMessage/index.js.map +1 -1
- package/lib/module/core/index.js +3 -0
- package/lib/module/core/index.js.map +1 -1
- package/lib/module/core/notification/backgroundStatus.js +15 -0
- package/lib/module/core/notification/backgroundStatus.js.map +1 -0
- package/lib/module/core/notification/index.js +5 -0
- package/lib/module/core/notification/index.js.map +1 -0
- package/lib/module/core/notification/pushToken.js +23 -0
- package/lib/module/core/notification/pushToken.js.map +1 -0
- package/lib/module/core/notification/useBackgroundStatusSync.js +16 -0
- package/lib/module/core/notification/useBackgroundStatusSync.js.map +1 -0
- package/lib/module/hooks/useChatMessages.js +2 -1
- package/lib/module/hooks/useChatMessages.js.map +1 -1
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/screens/chat-detail/ChatDetail.js +11 -1
- package/lib/module/screens/chat-detail/ChatDetail.js.map +1 -1
- package/lib/module/screens/chat-detail/ChatListLegend.js +21 -14
- package/lib/module/screens/chat-detail/ChatListLegend.js.map +1 -1
- package/lib/module/screens/chat-detail/constants.js +3 -2
- package/lib/module/screens/chat-detail/constants.js.map +1 -1
- package/lib/module/screens/chat-detail/legend/LegendChatMessage.js +36 -8
- package/lib/module/screens/chat-detail/legend/LegendChatMessage.js.map +1 -1
- package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxMenu.js +98 -0
- package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxMenu.js.map +1 -0
- package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxOverlay.js +110 -0
- package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxOverlay.js.map +1 -0
- package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxWrapper.js +64 -0
- package/lib/module/screens/chat-detail/messageToolbox/MessageToolboxWrapper.js.map +1 -0
- package/lib/module/screens/chat-detail/messageToolbox/messageToolbox.utils.js +37 -0
- package/lib/module/screens/chat-detail/messageToolbox/messageToolbox.utils.js.map +1 -0
- package/lib/module/screens/chat-detail/messageToolbox/types.js +4 -0
- package/lib/module/screens/chat-detail/messageToolbox/types.js.map +1 -0
- package/lib/module/services/attachmentOrchestrator.js +2 -1
- package/lib/module/services/attachmentOrchestrator.js.map +1 -1
- package/lib/module/translation/resources/i18n.js +5 -0
- package/lib/module/translation/resources/i18n.js.map +1 -1
- package/lib/module/utils/promise.js +14 -0
- package/lib/module/utils/promise.js.map +1 -0
- package/lib/module/utils/ui.js +19 -0
- package/lib/module/utils/ui.js.map +1 -0
- package/lib/typescript/src/components/flows/inputButtons/index.d.ts.map +1 -1
- package/lib/typescript/src/components/messages/fileMessage/index.d.ts.map +1 -1
- package/lib/typescript/src/components/messages/mergedMessage/index.d.ts.map +1 -1
- package/lib/typescript/src/components/messages/styles.d.ts +15 -3
- package/lib/typescript/src/components/messages/styles.d.ts.map +1 -1
- package/lib/typescript/src/components/messages/textMessage/index.d.ts.map +1 -1
- package/lib/typescript/src/components/messages/videoMessage/index.d.ts.map +1 -1
- package/lib/typescript/src/core/index.d.ts +1 -0
- package/lib/typescript/src/core/index.d.ts.map +1 -1
- package/lib/typescript/src/core/notification/backgroundStatus.d.ts +6 -0
- package/lib/typescript/src/core/notification/backgroundStatus.d.ts.map +1 -0
- package/lib/typescript/src/core/notification/index.d.ts +3 -0
- package/lib/typescript/src/core/notification/index.d.ts.map +1 -0
- package/lib/typescript/src/core/notification/pushToken.d.ts +14 -0
- package/lib/typescript/src/core/notification/pushToken.d.ts.map +1 -0
- package/lib/typescript/src/core/notification/useBackgroundStatusSync.d.ts +2 -0
- package/lib/typescript/src/core/notification/useBackgroundStatusSync.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useChatMessages.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +1 -0
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/screens/chat-detail/ChatDetail.d.ts.map +1 -1
- package/lib/typescript/src/screens/chat-detail/ChatListLegend.d.ts +1 -1
- package/lib/typescript/src/screens/chat-detail/ChatListLegend.d.ts.map +1 -1
- package/lib/typescript/src/screens/chat-detail/constants.d.ts +2 -2
- package/lib/typescript/src/screens/chat-detail/constants.d.ts.map +1 -1
- package/lib/typescript/src/screens/chat-detail/legend/LegendChatMessage.d.ts +2 -1
- package/lib/typescript/src/screens/chat-detail/legend/LegendChatMessage.d.ts.map +1 -1
- package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxMenu.d.ts +11 -0
- package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxMenu.d.ts.map +1 -0
- package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxOverlay.d.ts +10 -0
- package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxOverlay.d.ts.map +1 -0
- package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxWrapper.d.ts +11 -0
- package/lib/typescript/src/screens/chat-detail/messageToolbox/MessageToolboxWrapper.d.ts.map +1 -0
- package/lib/typescript/src/screens/chat-detail/messageToolbox/messageToolbox.utils.d.ts +18 -0
- package/lib/typescript/src/screens/chat-detail/messageToolbox/messageToolbox.utils.d.ts.map +1 -0
- package/lib/typescript/src/screens/chat-detail/messageToolbox/types.d.ts +12 -0
- package/lib/typescript/src/screens/chat-detail/messageToolbox/types.d.ts.map +1 -0
- package/lib/typescript/src/screens/chat-detail/types.d.ts +2 -0
- package/lib/typescript/src/screens/chat-detail/types.d.ts.map +1 -1
- package/lib/typescript/src/services/attachmentOrchestrator.d.ts.map +1 -1
- package/lib/typescript/src/translation/resources/i18n.d.ts.map +1 -1
- package/lib/typescript/src/utils/promise.d.ts +13 -0
- package/lib/typescript/src/utils/promise.d.ts.map +1 -0
- package/lib/typescript/src/utils/ui.d.ts +2 -0
- package/lib/typescript/src/utils/ui.d.ts.map +1 -0
- package/package.json +3 -1
- package/src/components/flows/inputButtons/index.tsx +3 -5
- package/src/components/messages/fileMessage/index.tsx +0 -1
- package/src/components/messages/imageMessage/index.tsx +1 -1
- package/src/components/messages/linkMessage/index.tsx +4 -3
- package/src/components/messages/mergedMessage/index.tsx +13 -17
- package/src/components/messages/styles.ts +12 -0
- package/src/components/messages/textMessage/index.tsx +8 -3
- package/src/components/messages/videoMessage/index.tsx +8 -10
- package/src/core/index.ts +4 -0
- package/src/core/notification/backgroundStatus.ts +22 -0
- package/src/core/notification/index.ts +5 -0
- package/src/core/notification/pushToken.ts +24 -0
- package/src/core/notification/useBackgroundStatusSync.ts +18 -0
- package/src/hooks/useChatMessages.ts +2 -1
- package/src/index.tsx +1 -0
- package/src/screens/chat-detail/ChatDetail.tsx +17 -0
- package/src/screens/chat-detail/ChatListLegend.tsx +30 -16
- package/src/screens/chat-detail/constants.ts +3 -2
- package/src/screens/chat-detail/legend/LegendChatMessage.tsx +49 -11
- package/src/screens/chat-detail/messageToolbox/MessageToolboxMenu.tsx +114 -0
- package/src/screens/chat-detail/messageToolbox/MessageToolboxOverlay.tsx +130 -0
- package/src/screens/chat-detail/messageToolbox/MessageToolboxWrapper.tsx +99 -0
- package/src/screens/chat-detail/messageToolbox/messageToolbox.utils.ts +56 -0
- package/src/screens/chat-detail/messageToolbox/types.ts +13 -0
- package/src/screens/chat-detail/types.ts +2 -0
- package/src/services/attachmentOrchestrator.ts +2 -1
- package/src/translation/resources/i18n.ts +5 -0
- package/src/utils/promise.ts +18 -0
- 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]>> }>;
|
package/src/utils/ui.ts
ADDED
|
@@ -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
|
+
}
|