ugcinc-render 1.8.170 → 1.8.172
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 +9 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.js +97 -5
- package/dist/index.mjs +97 -5
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -1108,6 +1108,15 @@ interface IMessageDmCompositionProps {
|
|
|
1108
1108
|
senderImageHeight?: number;
|
|
1109
1109
|
senderImageGapToText?: number;
|
|
1110
1110
|
senderImageBorderRadius?: number;
|
|
1111
|
+
messageHeaderImessageText?: string;
|
|
1112
|
+
messageHeaderTimestampText?: string;
|
|
1113
|
+
messageHeaderTimestampGap?: number;
|
|
1114
|
+
messageHeaderImessageGap?: number;
|
|
1115
|
+
messageHeaderTextColor?: string;
|
|
1116
|
+
messageHeaderFontSize?: number;
|
|
1117
|
+
messageHeaderLetterSpacing?: number;
|
|
1118
|
+
messageHeaderLeft?: number;
|
|
1119
|
+
messageHeaderRight?: number;
|
|
1111
1120
|
messages?: ImMessage[];
|
|
1112
1121
|
}
|
|
1113
1122
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1108,6 +1108,15 @@ interface IMessageDmCompositionProps {
|
|
|
1108
1108
|
senderImageHeight?: number;
|
|
1109
1109
|
senderImageGapToText?: number;
|
|
1110
1110
|
senderImageBorderRadius?: number;
|
|
1111
|
+
messageHeaderImessageText?: string;
|
|
1112
|
+
messageHeaderTimestampText?: string;
|
|
1113
|
+
messageHeaderTimestampGap?: number;
|
|
1114
|
+
messageHeaderImessageGap?: number;
|
|
1115
|
+
messageHeaderTextColor?: string;
|
|
1116
|
+
messageHeaderFontSize?: number;
|
|
1117
|
+
messageHeaderLetterSpacing?: number;
|
|
1118
|
+
messageHeaderLeft?: number;
|
|
1119
|
+
messageHeaderRight?: number;
|
|
1111
1120
|
messages?: ImMessage[];
|
|
1112
1121
|
}
|
|
1113
1122
|
|
package/dist/index.js
CHANGED
|
@@ -5293,7 +5293,17 @@ var MESSAGE_DEFAULTS2 = {
|
|
|
5293
5293
|
senderImageLeft: 336,
|
|
5294
5294
|
senderImageHeight: 1120,
|
|
5295
5295
|
senderImageGapToText: 3,
|
|
5296
|
-
senderImageBorderRadius:
|
|
5296
|
+
senderImageBorderRadius: 51,
|
|
5297
|
+
// Message area header text (above first message)
|
|
5298
|
+
messageHeaderImessageText: "iMessage",
|
|
5299
|
+
messageHeaderTimestampText: "Today 12:16 PM",
|
|
5300
|
+
messageHeaderTimestampGap: 36,
|
|
5301
|
+
messageHeaderImessageGap: 39,
|
|
5302
|
+
messageHeaderTextColor: "#626167",
|
|
5303
|
+
messageHeaderFontSize: 36,
|
|
5304
|
+
messageHeaderLetterSpacing: 0.5,
|
|
5305
|
+
messageHeaderLeft: 0,
|
|
5306
|
+
messageHeaderRight: 1206
|
|
5297
5307
|
};
|
|
5298
5308
|
var FONT_FAMILY2 = getFontFamily("apple");
|
|
5299
5309
|
function calculateAutoWidthAndLines3({
|
|
@@ -5592,6 +5602,66 @@ function generateMessageElements2(props, calculatedMessages) {
|
|
|
5592
5602
|
}
|
|
5593
5603
|
return elements;
|
|
5594
5604
|
}
|
|
5605
|
+
function generateHeaderTextElements(props, calculatedMessages) {
|
|
5606
|
+
if (calculatedMessages.length === 0) {
|
|
5607
|
+
return [];
|
|
5608
|
+
}
|
|
5609
|
+
const elements = [];
|
|
5610
|
+
const messageHeaderImessageText = props.messageHeaderImessageText ?? MESSAGE_DEFAULTS2.messageHeaderImessageText;
|
|
5611
|
+
const messageHeaderTimestampText = props.messageHeaderTimestampText ?? MESSAGE_DEFAULTS2.messageHeaderTimestampText;
|
|
5612
|
+
const messageHeaderTimestampGap = props.messageHeaderTimestampGap ?? MESSAGE_DEFAULTS2.messageHeaderTimestampGap;
|
|
5613
|
+
const messageHeaderImessageGap = props.messageHeaderImessageGap ?? MESSAGE_DEFAULTS2.messageHeaderImessageGap;
|
|
5614
|
+
const messageHeaderTextColor = props.messageHeaderTextColor ?? MESSAGE_DEFAULTS2.messageHeaderTextColor;
|
|
5615
|
+
const messageHeaderFontSize = props.messageHeaderFontSize ?? MESSAGE_DEFAULTS2.messageHeaderFontSize;
|
|
5616
|
+
const messageHeaderLetterSpacing = props.messageHeaderLetterSpacing ?? MESSAGE_DEFAULTS2.messageHeaderLetterSpacing;
|
|
5617
|
+
const messageHeaderLeft = props.messageHeaderLeft ?? MESSAGE_DEFAULTS2.messageHeaderLeft;
|
|
5618
|
+
const messageHeaderRight = props.messageHeaderRight ?? MESSAGE_DEFAULTS2.messageHeaderRight;
|
|
5619
|
+
const messageHeaderWidth = messageHeaderRight - messageHeaderLeft;
|
|
5620
|
+
const firstMessage = calculatedMessages[0];
|
|
5621
|
+
let firstMessageTop = firstMessage.top;
|
|
5622
|
+
if (firstMessage.imageY !== void 0) {
|
|
5623
|
+
firstMessageTop = firstMessage.imageY;
|
|
5624
|
+
}
|
|
5625
|
+
const timestampBottom = firstMessageTop - messageHeaderTimestampGap;
|
|
5626
|
+
const timestampTop = timestampBottom - messageHeaderFontSize;
|
|
5627
|
+
elements.push({
|
|
5628
|
+
id: "message-header-timestamp",
|
|
5629
|
+
type: "text",
|
|
5630
|
+
x: messageHeaderLeft,
|
|
5631
|
+
y: timestampTop,
|
|
5632
|
+
width: messageHeaderWidth,
|
|
5633
|
+
height: messageHeaderFontSize,
|
|
5634
|
+
zIndex: 4,
|
|
5635
|
+
text: messageHeaderTimestampText,
|
|
5636
|
+
font: "apple",
|
|
5637
|
+
fontWeight: 400,
|
|
5638
|
+
fontSize: messageHeaderFontSize,
|
|
5639
|
+
letterSpacing: messageHeaderLetterSpacing,
|
|
5640
|
+
color: messageHeaderTextColor,
|
|
5641
|
+
textAlign: "center",
|
|
5642
|
+
verticalAlign: "middle"
|
|
5643
|
+
});
|
|
5644
|
+
const imessageBottom = timestampTop - messageHeaderImessageGap;
|
|
5645
|
+
const imessageTop = imessageBottom - messageHeaderFontSize;
|
|
5646
|
+
elements.push({
|
|
5647
|
+
id: "message-header-imessage",
|
|
5648
|
+
type: "text",
|
|
5649
|
+
x: messageHeaderLeft,
|
|
5650
|
+
y: imessageTop,
|
|
5651
|
+
width: messageHeaderWidth,
|
|
5652
|
+
height: messageHeaderFontSize,
|
|
5653
|
+
zIndex: 4,
|
|
5654
|
+
text: messageHeaderImessageText,
|
|
5655
|
+
font: "apple",
|
|
5656
|
+
fontWeight: 400,
|
|
5657
|
+
fontSize: messageHeaderFontSize,
|
|
5658
|
+
letterSpacing: messageHeaderLetterSpacing,
|
|
5659
|
+
color: messageHeaderTextColor,
|
|
5660
|
+
textAlign: "center",
|
|
5661
|
+
verticalAlign: "middle"
|
|
5662
|
+
});
|
|
5663
|
+
return elements;
|
|
5664
|
+
}
|
|
5595
5665
|
function buildImageUrls2(props) {
|
|
5596
5666
|
const imageUrls = {};
|
|
5597
5667
|
const messages = props.messages ?? [];
|
|
@@ -5607,10 +5677,12 @@ function convertPropsToElements2(props) {
|
|
|
5607
5677
|
const height = props.height ?? 2622;
|
|
5608
5678
|
const calculatedMessages = calculateMessagePositions2(props);
|
|
5609
5679
|
const messageElements = generateMessageElements2(props, calculatedMessages);
|
|
5610
|
-
|
|
5680
|
+
const headerTextElements = generateHeaderTextElements(props, calculatedMessages);
|
|
5681
|
+
const allElements = [...messageElements, ...headerTextElements];
|
|
5682
|
+
allElements.sort((a, b) => (a.zIndex ?? 0) - (b.zIndex ?? 0));
|
|
5611
5683
|
const imageUrls = buildImageUrls2(props);
|
|
5612
5684
|
return {
|
|
5613
|
-
elements:
|
|
5685
|
+
elements: allElements,
|
|
5614
5686
|
imageUrls,
|
|
5615
5687
|
width,
|
|
5616
5688
|
height
|
|
@@ -5641,7 +5713,7 @@ var defaultIMessageDmProps = {
|
|
|
5641
5713
|
username: "aidan gollan",
|
|
5642
5714
|
usernameTop: 355,
|
|
5643
5715
|
usernameBottom: 404,
|
|
5644
|
-
usernameLeft:
|
|
5716
|
+
usernameLeft: 452,
|
|
5645
5717
|
usernameRight: 752,
|
|
5646
5718
|
usernameFontSize: 36,
|
|
5647
5719
|
usernameLetterSpacing: 0.8,
|
|
@@ -5754,7 +5826,17 @@ var defaultIMessageDmProps = {
|
|
|
5754
5826
|
senderImageLeft: 336,
|
|
5755
5827
|
senderImageHeight: 1120,
|
|
5756
5828
|
senderImageGapToText: 3,
|
|
5757
|
-
senderImageBorderRadius:
|
|
5829
|
+
senderImageBorderRadius: 51,
|
|
5830
|
+
// Message area header text (above first message)
|
|
5831
|
+
messageHeaderImessageText: "iMessage",
|
|
5832
|
+
messageHeaderTimestampText: "Today 12:16 PM",
|
|
5833
|
+
messageHeaderTimestampGap: 36,
|
|
5834
|
+
messageHeaderImessageGap: 39,
|
|
5835
|
+
messageHeaderTextColor: "#626167",
|
|
5836
|
+
messageHeaderFontSize: 36,
|
|
5837
|
+
messageHeaderLetterSpacing: 0.5,
|
|
5838
|
+
messageHeaderLeft: 0,
|
|
5839
|
+
messageHeaderRight: 1206,
|
|
5758
5840
|
// Example messages
|
|
5759
5841
|
messages: [
|
|
5760
5842
|
{ 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" },
|
|
@@ -6986,6 +7068,16 @@ var iMessageDmPropsSchema = import_zod.z.object({
|
|
|
6986
7068
|
senderImageHeight: import_zod.z.number().optional(),
|
|
6987
7069
|
senderImageGapToText: import_zod.z.number().optional(),
|
|
6988
7070
|
senderImageBorderRadius: import_zod.z.number().optional(),
|
|
7071
|
+
// Message area header text
|
|
7072
|
+
messageHeaderImessageText: import_zod.z.string().optional(),
|
|
7073
|
+
messageHeaderTimestampText: import_zod.z.string().optional(),
|
|
7074
|
+
messageHeaderTimestampGap: import_zod.z.number().optional(),
|
|
7075
|
+
messageHeaderImessageGap: import_zod.z.number().optional(),
|
|
7076
|
+
messageHeaderTextColor: import_zod.z.string().optional(),
|
|
7077
|
+
messageHeaderFontSize: import_zod.z.number().optional(),
|
|
7078
|
+
messageHeaderLetterSpacing: import_zod.z.number().optional(),
|
|
7079
|
+
messageHeaderLeft: import_zod.z.number().optional(),
|
|
7080
|
+
messageHeaderRight: import_zod.z.number().optional(),
|
|
6989
7081
|
// Messages
|
|
6990
7082
|
messages: import_zod.z.array(import_zod.z.object({
|
|
6991
7083
|
id: import_zod.z.string(),
|
package/dist/index.mjs
CHANGED
|
@@ -4339,7 +4339,17 @@ var MESSAGE_DEFAULTS2 = {
|
|
|
4339
4339
|
senderImageLeft: 336,
|
|
4340
4340
|
senderImageHeight: 1120,
|
|
4341
4341
|
senderImageGapToText: 3,
|
|
4342
|
-
senderImageBorderRadius:
|
|
4342
|
+
senderImageBorderRadius: 51,
|
|
4343
|
+
// Message area header text (above first message)
|
|
4344
|
+
messageHeaderImessageText: "iMessage",
|
|
4345
|
+
messageHeaderTimestampText: "Today 12:16 PM",
|
|
4346
|
+
messageHeaderTimestampGap: 36,
|
|
4347
|
+
messageHeaderImessageGap: 39,
|
|
4348
|
+
messageHeaderTextColor: "#626167",
|
|
4349
|
+
messageHeaderFontSize: 36,
|
|
4350
|
+
messageHeaderLetterSpacing: 0.5,
|
|
4351
|
+
messageHeaderLeft: 0,
|
|
4352
|
+
messageHeaderRight: 1206
|
|
4343
4353
|
};
|
|
4344
4354
|
var FONT_FAMILY2 = getFontFamily("apple");
|
|
4345
4355
|
function calculateAutoWidthAndLines3({
|
|
@@ -4638,6 +4648,66 @@ function generateMessageElements2(props, calculatedMessages) {
|
|
|
4638
4648
|
}
|
|
4639
4649
|
return elements;
|
|
4640
4650
|
}
|
|
4651
|
+
function generateHeaderTextElements(props, calculatedMessages) {
|
|
4652
|
+
if (calculatedMessages.length === 0) {
|
|
4653
|
+
return [];
|
|
4654
|
+
}
|
|
4655
|
+
const elements = [];
|
|
4656
|
+
const messageHeaderImessageText = props.messageHeaderImessageText ?? MESSAGE_DEFAULTS2.messageHeaderImessageText;
|
|
4657
|
+
const messageHeaderTimestampText = props.messageHeaderTimestampText ?? MESSAGE_DEFAULTS2.messageHeaderTimestampText;
|
|
4658
|
+
const messageHeaderTimestampGap = props.messageHeaderTimestampGap ?? MESSAGE_DEFAULTS2.messageHeaderTimestampGap;
|
|
4659
|
+
const messageHeaderImessageGap = props.messageHeaderImessageGap ?? MESSAGE_DEFAULTS2.messageHeaderImessageGap;
|
|
4660
|
+
const messageHeaderTextColor = props.messageHeaderTextColor ?? MESSAGE_DEFAULTS2.messageHeaderTextColor;
|
|
4661
|
+
const messageHeaderFontSize = props.messageHeaderFontSize ?? MESSAGE_DEFAULTS2.messageHeaderFontSize;
|
|
4662
|
+
const messageHeaderLetterSpacing = props.messageHeaderLetterSpacing ?? MESSAGE_DEFAULTS2.messageHeaderLetterSpacing;
|
|
4663
|
+
const messageHeaderLeft = props.messageHeaderLeft ?? MESSAGE_DEFAULTS2.messageHeaderLeft;
|
|
4664
|
+
const messageHeaderRight = props.messageHeaderRight ?? MESSAGE_DEFAULTS2.messageHeaderRight;
|
|
4665
|
+
const messageHeaderWidth = messageHeaderRight - messageHeaderLeft;
|
|
4666
|
+
const firstMessage = calculatedMessages[0];
|
|
4667
|
+
let firstMessageTop = firstMessage.top;
|
|
4668
|
+
if (firstMessage.imageY !== void 0) {
|
|
4669
|
+
firstMessageTop = firstMessage.imageY;
|
|
4670
|
+
}
|
|
4671
|
+
const timestampBottom = firstMessageTop - messageHeaderTimestampGap;
|
|
4672
|
+
const timestampTop = timestampBottom - messageHeaderFontSize;
|
|
4673
|
+
elements.push({
|
|
4674
|
+
id: "message-header-timestamp",
|
|
4675
|
+
type: "text",
|
|
4676
|
+
x: messageHeaderLeft,
|
|
4677
|
+
y: timestampTop,
|
|
4678
|
+
width: messageHeaderWidth,
|
|
4679
|
+
height: messageHeaderFontSize,
|
|
4680
|
+
zIndex: 4,
|
|
4681
|
+
text: messageHeaderTimestampText,
|
|
4682
|
+
font: "apple",
|
|
4683
|
+
fontWeight: 400,
|
|
4684
|
+
fontSize: messageHeaderFontSize,
|
|
4685
|
+
letterSpacing: messageHeaderLetterSpacing,
|
|
4686
|
+
color: messageHeaderTextColor,
|
|
4687
|
+
textAlign: "center",
|
|
4688
|
+
verticalAlign: "middle"
|
|
4689
|
+
});
|
|
4690
|
+
const imessageBottom = timestampTop - messageHeaderImessageGap;
|
|
4691
|
+
const imessageTop = imessageBottom - messageHeaderFontSize;
|
|
4692
|
+
elements.push({
|
|
4693
|
+
id: "message-header-imessage",
|
|
4694
|
+
type: "text",
|
|
4695
|
+
x: messageHeaderLeft,
|
|
4696
|
+
y: imessageTop,
|
|
4697
|
+
width: messageHeaderWidth,
|
|
4698
|
+
height: messageHeaderFontSize,
|
|
4699
|
+
zIndex: 4,
|
|
4700
|
+
text: messageHeaderImessageText,
|
|
4701
|
+
font: "apple",
|
|
4702
|
+
fontWeight: 400,
|
|
4703
|
+
fontSize: messageHeaderFontSize,
|
|
4704
|
+
letterSpacing: messageHeaderLetterSpacing,
|
|
4705
|
+
color: messageHeaderTextColor,
|
|
4706
|
+
textAlign: "center",
|
|
4707
|
+
verticalAlign: "middle"
|
|
4708
|
+
});
|
|
4709
|
+
return elements;
|
|
4710
|
+
}
|
|
4641
4711
|
function buildImageUrls2(props) {
|
|
4642
4712
|
const imageUrls = {};
|
|
4643
4713
|
const messages = props.messages ?? [];
|
|
@@ -4653,10 +4723,12 @@ function convertPropsToElements2(props) {
|
|
|
4653
4723
|
const height = props.height ?? 2622;
|
|
4654
4724
|
const calculatedMessages = calculateMessagePositions2(props);
|
|
4655
4725
|
const messageElements = generateMessageElements2(props, calculatedMessages);
|
|
4656
|
-
|
|
4726
|
+
const headerTextElements = generateHeaderTextElements(props, calculatedMessages);
|
|
4727
|
+
const allElements = [...messageElements, ...headerTextElements];
|
|
4728
|
+
allElements.sort((a, b) => (a.zIndex ?? 0) - (b.zIndex ?? 0));
|
|
4657
4729
|
const imageUrls = buildImageUrls2(props);
|
|
4658
4730
|
return {
|
|
4659
|
-
elements:
|
|
4731
|
+
elements: allElements,
|
|
4660
4732
|
imageUrls,
|
|
4661
4733
|
width,
|
|
4662
4734
|
height
|
|
@@ -4687,7 +4759,7 @@ var defaultIMessageDmProps = {
|
|
|
4687
4759
|
username: "aidan gollan",
|
|
4688
4760
|
usernameTop: 355,
|
|
4689
4761
|
usernameBottom: 404,
|
|
4690
|
-
usernameLeft:
|
|
4762
|
+
usernameLeft: 452,
|
|
4691
4763
|
usernameRight: 752,
|
|
4692
4764
|
usernameFontSize: 36,
|
|
4693
4765
|
usernameLetterSpacing: 0.8,
|
|
@@ -4800,7 +4872,17 @@ var defaultIMessageDmProps = {
|
|
|
4800
4872
|
senderImageLeft: 336,
|
|
4801
4873
|
senderImageHeight: 1120,
|
|
4802
4874
|
senderImageGapToText: 3,
|
|
4803
|
-
senderImageBorderRadius:
|
|
4875
|
+
senderImageBorderRadius: 51,
|
|
4876
|
+
// Message area header text (above first message)
|
|
4877
|
+
messageHeaderImessageText: "iMessage",
|
|
4878
|
+
messageHeaderTimestampText: "Today 12:16 PM",
|
|
4879
|
+
messageHeaderTimestampGap: 36,
|
|
4880
|
+
messageHeaderImessageGap: 39,
|
|
4881
|
+
messageHeaderTextColor: "#626167",
|
|
4882
|
+
messageHeaderFontSize: 36,
|
|
4883
|
+
messageHeaderLetterSpacing: 0.5,
|
|
4884
|
+
messageHeaderLeft: 0,
|
|
4885
|
+
messageHeaderRight: 1206,
|
|
4804
4886
|
// Example messages
|
|
4805
4887
|
messages: [
|
|
4806
4888
|
{ 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" },
|
|
@@ -5749,6 +5831,16 @@ var iMessageDmPropsSchema = z.object({
|
|
|
5749
5831
|
senderImageHeight: z.number().optional(),
|
|
5750
5832
|
senderImageGapToText: z.number().optional(),
|
|
5751
5833
|
senderImageBorderRadius: z.number().optional(),
|
|
5834
|
+
// Message area header text
|
|
5835
|
+
messageHeaderImessageText: z.string().optional(),
|
|
5836
|
+
messageHeaderTimestampText: z.string().optional(),
|
|
5837
|
+
messageHeaderTimestampGap: z.number().optional(),
|
|
5838
|
+
messageHeaderImessageGap: z.number().optional(),
|
|
5839
|
+
messageHeaderTextColor: z.string().optional(),
|
|
5840
|
+
messageHeaderFontSize: z.number().optional(),
|
|
5841
|
+
messageHeaderLetterSpacing: z.number().optional(),
|
|
5842
|
+
messageHeaderLeft: z.number().optional(),
|
|
5843
|
+
messageHeaderRight: z.number().optional(),
|
|
5752
5844
|
// Messages
|
|
5753
5845
|
messages: z.array(z.object({
|
|
5754
5846
|
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.172",
|
|
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",
|