ugcinc-render 1.8.167 → 1.8.169
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/dist/index.d.mts +4 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +38 -17
- package/dist/index.mjs +38 -17
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -1104,6 +1104,10 @@ interface IMessageDmCompositionProps {
|
|
|
1104
1104
|
recipientBubbleLeft?: number;
|
|
1105
1105
|
senderBubbleRight?: number;
|
|
1106
1106
|
bubbleMaxWidth?: number;
|
|
1107
|
+
senderImageLeft?: number;
|
|
1108
|
+
senderImageHeight?: number;
|
|
1109
|
+
senderImageGapToText?: number;
|
|
1110
|
+
senderImageBorderRadius?: number;
|
|
1107
1111
|
messages?: ImMessage[];
|
|
1108
1112
|
}
|
|
1109
1113
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1104,6 +1104,10 @@ interface IMessageDmCompositionProps {
|
|
|
1104
1104
|
recipientBubbleLeft?: number;
|
|
1105
1105
|
senderBubbleRight?: number;
|
|
1106
1106
|
bubbleMaxWidth?: number;
|
|
1107
|
+
senderImageLeft?: number;
|
|
1108
|
+
senderImageHeight?: number;
|
|
1109
|
+
senderImageGapToText?: number;
|
|
1110
|
+
senderImageBorderRadius?: number;
|
|
1107
1111
|
messages?: ImMessage[];
|
|
1108
1112
|
}
|
|
1109
1113
|
|
package/dist/index.js
CHANGED
|
@@ -5288,11 +5288,11 @@ var MESSAGE_DEFAULTS2 = {
|
|
|
5288
5288
|
recipientBubbleLeft: 48,
|
|
5289
5289
|
senderBubbleRight: 1158,
|
|
5290
5290
|
bubbleMaxWidth: 900,
|
|
5291
|
-
//
|
|
5292
|
-
|
|
5293
|
-
|
|
5294
|
-
|
|
5295
|
-
|
|
5291
|
+
// Sender image attachment
|
|
5292
|
+
senderImageLeft: 336,
|
|
5293
|
+
senderImageHeight: 1120,
|
|
5294
|
+
senderImageGapToText: 3,
|
|
5295
|
+
senderImageBorderRadius: 30
|
|
5296
5296
|
};
|
|
5297
5297
|
var FONT_FAMILY2 = getFontFamily("apple");
|
|
5298
5298
|
function calculateAutoWidthAndLines3({
|
|
@@ -5409,9 +5409,9 @@ function calculateMessagePositions2(props) {
|
|
|
5409
5409
|
const recipientBubbleLeft = props.recipientBubbleLeft ?? MESSAGE_DEFAULTS2.recipientBubbleLeft;
|
|
5410
5410
|
const senderBubbleRight = props.senderBubbleRight ?? MESSAGE_DEFAULTS2.senderBubbleRight;
|
|
5411
5411
|
const bubbleMaxWidth = props.bubbleMaxWidth ?? MESSAGE_DEFAULTS2.bubbleMaxWidth;
|
|
5412
|
-
const
|
|
5413
|
-
const
|
|
5414
|
-
const
|
|
5412
|
+
const senderImageLeft = props.senderImageLeft ?? MESSAGE_DEFAULTS2.senderImageLeft;
|
|
5413
|
+
const senderImageHeight = props.senderImageHeight ?? MESSAGE_DEFAULTS2.senderImageHeight;
|
|
5414
|
+
const senderImageGapToText = props.senderImageGapToText ?? MESSAGE_DEFAULTS2.senderImageGapToText;
|
|
5415
5415
|
const calculatedMessages = [];
|
|
5416
5416
|
let currentBottom = messageAreaBottom;
|
|
5417
5417
|
for (let i = messages.length - 1; i >= 0; i--) {
|
|
@@ -5462,10 +5462,10 @@ function calculateMessagePositions2(props) {
|
|
|
5462
5462
|
let imageWidth;
|
|
5463
5463
|
let imageHeight;
|
|
5464
5464
|
let imageY;
|
|
5465
|
-
if (message.imageUrl) {
|
|
5466
|
-
imageWidth =
|
|
5467
|
-
imageHeight =
|
|
5468
|
-
imageY = bubbleTop -
|
|
5465
|
+
if (message.imageUrl && message.sender === "user") {
|
|
5466
|
+
imageWidth = senderBubbleRight - senderImageLeft;
|
|
5467
|
+
imageHeight = senderImageHeight;
|
|
5468
|
+
imageY = bubbleTop - senderImageGapToText - imageHeight;
|
|
5469
5469
|
}
|
|
5470
5470
|
calculatedMessages.unshift({
|
|
5471
5471
|
message,
|
|
@@ -5537,24 +5537,24 @@ function generateMessageElements2(props, calculatedMessages) {
|
|
|
5537
5537
|
const bubbleMaxWidth = props.bubbleMaxWidth ?? MESSAGE_DEFAULTS2.bubbleMaxWidth;
|
|
5538
5538
|
const recipientBubbleLeft = props.recipientBubbleLeft ?? MESSAGE_DEFAULTS2.recipientBubbleLeft;
|
|
5539
5539
|
const senderBubbleRight = props.senderBubbleRight ?? MESSAGE_DEFAULTS2.senderBubbleRight;
|
|
5540
|
-
const
|
|
5540
|
+
const senderImageLeft = props.senderImageLeft ?? MESSAGE_DEFAULTS2.senderImageLeft;
|
|
5541
|
+
const senderImageBorderRadius = props.senderImageBorderRadius ?? MESSAGE_DEFAULTS2.senderImageBorderRadius;
|
|
5541
5542
|
const lineHeightMultiplier = messageLineHeight / messageFontSize;
|
|
5542
5543
|
for (let i = 0; i < calculatedMessages.length; i++) {
|
|
5543
5544
|
const cm = calculatedMessages[i];
|
|
5544
5545
|
const isUser = cm.message.sender === "user";
|
|
5545
5546
|
const bubbleColor = isUser ? senderBubbleColor : recipientBubbleColor;
|
|
5546
|
-
if (cm.message.imageUrl && cm.imageWidth && cm.imageHeight && cm.imageY !== void 0) {
|
|
5547
|
-
const imageX = isUser ? senderBubbleRight - cm.imageWidth : recipientBubbleLeft;
|
|
5547
|
+
if (cm.message.imageUrl && cm.imageWidth && cm.imageHeight && cm.imageY !== void 0 && isUser) {
|
|
5548
5548
|
elements.push({
|
|
5549
5549
|
id: `image-${cm.message.id}`,
|
|
5550
5550
|
type: "image",
|
|
5551
|
-
x:
|
|
5551
|
+
x: senderImageLeft,
|
|
5552
5552
|
y: cm.imageY,
|
|
5553
5553
|
width: cm.imageWidth,
|
|
5554
5554
|
height: cm.imageHeight,
|
|
5555
5555
|
zIndex: 5 + i,
|
|
5556
5556
|
url: cm.message.imageUrl,
|
|
5557
|
-
borderRadius:
|
|
5557
|
+
borderRadius: senderImageBorderRadius,
|
|
5558
5558
|
objectFit: "cover"
|
|
5559
5559
|
});
|
|
5560
5560
|
}
|
|
@@ -5737,6 +5737,11 @@ var defaultIMessageDmProps = {
|
|
|
5737
5737
|
recipientBubbleLeft: 48,
|
|
5738
5738
|
senderBubbleRight: 1158,
|
|
5739
5739
|
bubbleMaxWidth: 900,
|
|
5740
|
+
// Sender image attachment
|
|
5741
|
+
senderImageLeft: 336,
|
|
5742
|
+
senderImageHeight: 1120,
|
|
5743
|
+
senderImageGapToText: 3,
|
|
5744
|
+
senderImageBorderRadius: 30,
|
|
5740
5745
|
// Example messages
|
|
5741
5746
|
messages: [
|
|
5742
5747
|
{ id: "msg-1", sender: "user", text: "heyyy fae, help me slide on this baddie pls \u{1F64F}", imageUrl: "https://n14dcpakf8w1fekl.public.blob.vercel-storage.com/media/06c3ed1c-eefb-4a60-b0c4-5fb872811ba0/pinterest-1766175214139-0-JpXmGIxVWdjEJ3qxGyoC4DAi2KAZrg.jpg" },
|
|
@@ -5754,6 +5759,17 @@ var IMessageDmComposition = (props) => {
|
|
|
5754
5759
|
if (typeof document !== "undefined" && document.fonts?.ready) {
|
|
5755
5760
|
await document.fonts.ready;
|
|
5756
5761
|
}
|
|
5762
|
+
await new Promise((resolve) => {
|
|
5763
|
+
if (typeof requestAnimationFrame !== "undefined") {
|
|
5764
|
+
requestAnimationFrame(() => {
|
|
5765
|
+
requestAnimationFrame(() => {
|
|
5766
|
+
resolve();
|
|
5767
|
+
});
|
|
5768
|
+
});
|
|
5769
|
+
} else {
|
|
5770
|
+
resolve();
|
|
5771
|
+
}
|
|
5772
|
+
});
|
|
5757
5773
|
};
|
|
5758
5774
|
loadFonts().then(() => {
|
|
5759
5775
|
setFontsLoaded(true);
|
|
@@ -6951,6 +6967,11 @@ var iMessageDmPropsSchema = import_zod.z.object({
|
|
|
6951
6967
|
recipientBubbleLeft: import_zod.z.number().optional(),
|
|
6952
6968
|
senderBubbleRight: import_zod.z.number().optional(),
|
|
6953
6969
|
bubbleMaxWidth: import_zod.z.number().optional(),
|
|
6970
|
+
// Sender image attachment
|
|
6971
|
+
senderImageLeft: import_zod.z.number().optional(),
|
|
6972
|
+
senderImageHeight: import_zod.z.number().optional(),
|
|
6973
|
+
senderImageGapToText: import_zod.z.number().optional(),
|
|
6974
|
+
senderImageBorderRadius: import_zod.z.number().optional(),
|
|
6954
6975
|
// Messages
|
|
6955
6976
|
messages: import_zod.z.array(import_zod.z.object({
|
|
6956
6977
|
id: import_zod.z.string(),
|
package/dist/index.mjs
CHANGED
|
@@ -4334,11 +4334,11 @@ var MESSAGE_DEFAULTS2 = {
|
|
|
4334
4334
|
recipientBubbleLeft: 48,
|
|
4335
4335
|
senderBubbleRight: 1158,
|
|
4336
4336
|
bubbleMaxWidth: 900,
|
|
4337
|
-
//
|
|
4338
|
-
|
|
4339
|
-
|
|
4340
|
-
|
|
4341
|
-
|
|
4337
|
+
// Sender image attachment
|
|
4338
|
+
senderImageLeft: 336,
|
|
4339
|
+
senderImageHeight: 1120,
|
|
4340
|
+
senderImageGapToText: 3,
|
|
4341
|
+
senderImageBorderRadius: 30
|
|
4342
4342
|
};
|
|
4343
4343
|
var FONT_FAMILY2 = getFontFamily("apple");
|
|
4344
4344
|
function calculateAutoWidthAndLines3({
|
|
@@ -4455,9 +4455,9 @@ function calculateMessagePositions2(props) {
|
|
|
4455
4455
|
const recipientBubbleLeft = props.recipientBubbleLeft ?? MESSAGE_DEFAULTS2.recipientBubbleLeft;
|
|
4456
4456
|
const senderBubbleRight = props.senderBubbleRight ?? MESSAGE_DEFAULTS2.senderBubbleRight;
|
|
4457
4457
|
const bubbleMaxWidth = props.bubbleMaxWidth ?? MESSAGE_DEFAULTS2.bubbleMaxWidth;
|
|
4458
|
-
const
|
|
4459
|
-
const
|
|
4460
|
-
const
|
|
4458
|
+
const senderImageLeft = props.senderImageLeft ?? MESSAGE_DEFAULTS2.senderImageLeft;
|
|
4459
|
+
const senderImageHeight = props.senderImageHeight ?? MESSAGE_DEFAULTS2.senderImageHeight;
|
|
4460
|
+
const senderImageGapToText = props.senderImageGapToText ?? MESSAGE_DEFAULTS2.senderImageGapToText;
|
|
4461
4461
|
const calculatedMessages = [];
|
|
4462
4462
|
let currentBottom = messageAreaBottom;
|
|
4463
4463
|
for (let i = messages.length - 1; i >= 0; i--) {
|
|
@@ -4508,10 +4508,10 @@ function calculateMessagePositions2(props) {
|
|
|
4508
4508
|
let imageWidth;
|
|
4509
4509
|
let imageHeight;
|
|
4510
4510
|
let imageY;
|
|
4511
|
-
if (message.imageUrl) {
|
|
4512
|
-
imageWidth =
|
|
4513
|
-
imageHeight =
|
|
4514
|
-
imageY = bubbleTop -
|
|
4511
|
+
if (message.imageUrl && message.sender === "user") {
|
|
4512
|
+
imageWidth = senderBubbleRight - senderImageLeft;
|
|
4513
|
+
imageHeight = senderImageHeight;
|
|
4514
|
+
imageY = bubbleTop - senderImageGapToText - imageHeight;
|
|
4515
4515
|
}
|
|
4516
4516
|
calculatedMessages.unshift({
|
|
4517
4517
|
message,
|
|
@@ -4583,24 +4583,24 @@ function generateMessageElements2(props, calculatedMessages) {
|
|
|
4583
4583
|
const bubbleMaxWidth = props.bubbleMaxWidth ?? MESSAGE_DEFAULTS2.bubbleMaxWidth;
|
|
4584
4584
|
const recipientBubbleLeft = props.recipientBubbleLeft ?? MESSAGE_DEFAULTS2.recipientBubbleLeft;
|
|
4585
4585
|
const senderBubbleRight = props.senderBubbleRight ?? MESSAGE_DEFAULTS2.senderBubbleRight;
|
|
4586
|
-
const
|
|
4586
|
+
const senderImageLeft = props.senderImageLeft ?? MESSAGE_DEFAULTS2.senderImageLeft;
|
|
4587
|
+
const senderImageBorderRadius = props.senderImageBorderRadius ?? MESSAGE_DEFAULTS2.senderImageBorderRadius;
|
|
4587
4588
|
const lineHeightMultiplier = messageLineHeight / messageFontSize;
|
|
4588
4589
|
for (let i = 0; i < calculatedMessages.length; i++) {
|
|
4589
4590
|
const cm = calculatedMessages[i];
|
|
4590
4591
|
const isUser = cm.message.sender === "user";
|
|
4591
4592
|
const bubbleColor = isUser ? senderBubbleColor : recipientBubbleColor;
|
|
4592
|
-
if (cm.message.imageUrl && cm.imageWidth && cm.imageHeight && cm.imageY !== void 0) {
|
|
4593
|
-
const imageX = isUser ? senderBubbleRight - cm.imageWidth : recipientBubbleLeft;
|
|
4593
|
+
if (cm.message.imageUrl && cm.imageWidth && cm.imageHeight && cm.imageY !== void 0 && isUser) {
|
|
4594
4594
|
elements.push({
|
|
4595
4595
|
id: `image-${cm.message.id}`,
|
|
4596
4596
|
type: "image",
|
|
4597
|
-
x:
|
|
4597
|
+
x: senderImageLeft,
|
|
4598
4598
|
y: cm.imageY,
|
|
4599
4599
|
width: cm.imageWidth,
|
|
4600
4600
|
height: cm.imageHeight,
|
|
4601
4601
|
zIndex: 5 + i,
|
|
4602
4602
|
url: cm.message.imageUrl,
|
|
4603
|
-
borderRadius:
|
|
4603
|
+
borderRadius: senderImageBorderRadius,
|
|
4604
4604
|
objectFit: "cover"
|
|
4605
4605
|
});
|
|
4606
4606
|
}
|
|
@@ -4783,6 +4783,11 @@ var defaultIMessageDmProps = {
|
|
|
4783
4783
|
recipientBubbleLeft: 48,
|
|
4784
4784
|
senderBubbleRight: 1158,
|
|
4785
4785
|
bubbleMaxWidth: 900,
|
|
4786
|
+
// Sender image attachment
|
|
4787
|
+
senderImageLeft: 336,
|
|
4788
|
+
senderImageHeight: 1120,
|
|
4789
|
+
senderImageGapToText: 3,
|
|
4790
|
+
senderImageBorderRadius: 30,
|
|
4786
4791
|
// Example messages
|
|
4787
4792
|
messages: [
|
|
4788
4793
|
{ id: "msg-1", sender: "user", text: "heyyy fae, help me slide on this baddie pls \u{1F64F}", imageUrl: "https://n14dcpakf8w1fekl.public.blob.vercel-storage.com/media/06c3ed1c-eefb-4a60-b0c4-5fb872811ba0/pinterest-1766175214139-0-JpXmGIxVWdjEJ3qxGyoC4DAi2KAZrg.jpg" },
|
|
@@ -4800,6 +4805,17 @@ var IMessageDmComposition = (props) => {
|
|
|
4800
4805
|
if (typeof document !== "undefined" && document.fonts?.ready) {
|
|
4801
4806
|
await document.fonts.ready;
|
|
4802
4807
|
}
|
|
4808
|
+
await new Promise((resolve) => {
|
|
4809
|
+
if (typeof requestAnimationFrame !== "undefined") {
|
|
4810
|
+
requestAnimationFrame(() => {
|
|
4811
|
+
requestAnimationFrame(() => {
|
|
4812
|
+
resolve();
|
|
4813
|
+
});
|
|
4814
|
+
});
|
|
4815
|
+
} else {
|
|
4816
|
+
resolve();
|
|
4817
|
+
}
|
|
4818
|
+
});
|
|
4803
4819
|
};
|
|
4804
4820
|
loadFonts().then(() => {
|
|
4805
4821
|
setFontsLoaded(true);
|
|
@@ -5714,6 +5730,11 @@ var iMessageDmPropsSchema = z.object({
|
|
|
5714
5730
|
recipientBubbleLeft: z.number().optional(),
|
|
5715
5731
|
senderBubbleRight: z.number().optional(),
|
|
5716
5732
|
bubbleMaxWidth: z.number().optional(),
|
|
5733
|
+
// Sender image attachment
|
|
5734
|
+
senderImageLeft: z.number().optional(),
|
|
5735
|
+
senderImageHeight: z.number().optional(),
|
|
5736
|
+
senderImageGapToText: z.number().optional(),
|
|
5737
|
+
senderImageBorderRadius: z.number().optional(),
|
|
5717
5738
|
// Messages
|
|
5718
5739
|
messages: z.array(z.object({
|
|
5719
5740
|
id: z.string(),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ugcinc-render",
|
|
3
|
-
"version": "1.8.
|
|
3
|
+
"version": "1.8.169",
|
|
4
4
|
"description": "Unified rendering package for UGC Inc - shared types, components, and compositions for pixel-perfect client/server rendering",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.mjs",
|