ugcinc-render 1.8.165 → 1.8.167

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.js CHANGED
@@ -5276,7 +5276,7 @@ var MESSAGE_DEFAULTS2 = {
5276
5276
  // Recipient padding
5277
5277
  recipientPaddingLeft: 37,
5278
5278
  recipientPaddingRight: 36,
5279
- multiLineRecipientPaddingRight: 36,
5279
+ multiLineRecipientPaddingRight: 48,
5280
5280
  // Bubble corner radii
5281
5281
  bubbleRadiusNormal: 51,
5282
5282
  bubbleRadiusGrouped: 51,
@@ -5725,7 +5725,7 @@ var defaultIMessageDmProps = {
5725
5725
  multiLineSenderPaddingLeft: 34,
5726
5726
  recipientPaddingLeft: 37,
5727
5727
  recipientPaddingRight: 36,
5728
- multiLineRecipientPaddingRight: 36,
5728
+ multiLineRecipientPaddingRight: 48,
5729
5729
  // Bubble corner radii
5730
5730
  bubbleRadiusNormal: 51,
5731
5731
  bubbleRadiusGrouped: 51,
@@ -5746,13 +5746,34 @@ var defaultIMessageDmProps = {
5746
5746
  ]
5747
5747
  };
5748
5748
  var IMessageDmComposition = (props) => {
5749
+ const [fontsLoaded, setFontsLoaded] = (0, import_react10.useState)(false);
5750
+ (0, import_react10.useEffect)(() => {
5751
+ const handle = (0, import_remotion10.delayRender)("Loading fonts for IMessageDmComposition");
5752
+ const loadFonts = async () => {
5753
+ await preloadFonts();
5754
+ if (typeof document !== "undefined" && document.fonts?.ready) {
5755
+ await document.fonts.ready;
5756
+ }
5757
+ };
5758
+ loadFonts().then(() => {
5759
+ setFontsLoaded(true);
5760
+ (0, import_remotion10.continueRender)(handle);
5761
+ }).catch((err) => {
5762
+ console.error("[IMessageDmComposition] Failed to load fonts:", err);
5763
+ setFontsLoaded(true);
5764
+ (0, import_remotion10.continueRender)(handle);
5765
+ });
5766
+ }, []);
5749
5767
  const mergedProps = (0, import_react10.useMemo)(() => ({
5750
5768
  ...defaultIMessageDmProps,
5751
5769
  ...props
5752
5770
  }), [props]);
5753
5771
  const conversionResult = (0, import_react10.useMemo)(() => {
5772
+ if (!fontsLoaded) {
5773
+ return { elements: [], width: mergedProps.width ?? 1206, height: mergedProps.height ?? 2622 };
5774
+ }
5754
5775
  return convertPropsToElements2(mergedProps);
5755
- }, [mergedProps]);
5776
+ }, [mergedProps, fontsLoaded]);
5756
5777
  const {
5757
5778
  width = 1206,
5758
5779
  height = 2622,
package/dist/index.mjs CHANGED
@@ -4296,8 +4296,8 @@ function convertPublicToProps(input) {
4296
4296
  }
4297
4297
 
4298
4298
  // src/compositions/IMessageDmComposition/index.tsx
4299
- import { useMemo as useMemo8 } from "react";
4300
- import { Img as Img5, staticFile as staticFile3 } from "remotion";
4299
+ import { useEffect as useEffect4, useMemo as useMemo8, useState as useState4 } from "react";
4300
+ import { Img as Img5, staticFile as staticFile3, delayRender as delayRender3, continueRender as continueRender3 } from "remotion";
4301
4301
 
4302
4302
  // src/compositions/IMessageDmComposition/convertPropsToElements.ts
4303
4303
  var MESSAGE_DEFAULTS2 = {
@@ -4322,7 +4322,7 @@ var MESSAGE_DEFAULTS2 = {
4322
4322
  // Recipient padding
4323
4323
  recipientPaddingLeft: 37,
4324
4324
  recipientPaddingRight: 36,
4325
- multiLineRecipientPaddingRight: 36,
4325
+ multiLineRecipientPaddingRight: 48,
4326
4326
  // Bubble corner radii
4327
4327
  bubbleRadiusNormal: 51,
4328
4328
  bubbleRadiusGrouped: 51,
@@ -4771,7 +4771,7 @@ var defaultIMessageDmProps = {
4771
4771
  multiLineSenderPaddingLeft: 34,
4772
4772
  recipientPaddingLeft: 37,
4773
4773
  recipientPaddingRight: 36,
4774
- multiLineRecipientPaddingRight: 36,
4774
+ multiLineRecipientPaddingRight: 48,
4775
4775
  // Bubble corner radii
4776
4776
  bubbleRadiusNormal: 51,
4777
4777
  bubbleRadiusGrouped: 51,
@@ -4792,13 +4792,34 @@ var defaultIMessageDmProps = {
4792
4792
  ]
4793
4793
  };
4794
4794
  var IMessageDmComposition = (props) => {
4795
+ const [fontsLoaded, setFontsLoaded] = useState4(false);
4796
+ useEffect4(() => {
4797
+ const handle = delayRender3("Loading fonts for IMessageDmComposition");
4798
+ const loadFonts = async () => {
4799
+ await preloadFonts();
4800
+ if (typeof document !== "undefined" && document.fonts?.ready) {
4801
+ await document.fonts.ready;
4802
+ }
4803
+ };
4804
+ loadFonts().then(() => {
4805
+ setFontsLoaded(true);
4806
+ continueRender3(handle);
4807
+ }).catch((err) => {
4808
+ console.error("[IMessageDmComposition] Failed to load fonts:", err);
4809
+ setFontsLoaded(true);
4810
+ continueRender3(handle);
4811
+ });
4812
+ }, []);
4795
4813
  const mergedProps = useMemo8(() => ({
4796
4814
  ...defaultIMessageDmProps,
4797
4815
  ...props
4798
4816
  }), [props]);
4799
4817
  const conversionResult = useMemo8(() => {
4818
+ if (!fontsLoaded) {
4819
+ return { elements: [], width: mergedProps.width ?? 1206, height: mergedProps.height ?? 2622 };
4820
+ }
4800
4821
  return convertPropsToElements2(mergedProps);
4801
- }, [mergedProps]);
4822
+ }, [mergedProps, fontsLoaded]);
4802
4823
  const {
4803
4824
  width = 1206,
4804
4825
  height = 2622,
@@ -5473,10 +5494,10 @@ function MediaBubble({
5473
5494
  }
5474
5495
 
5475
5496
  // src/hooks/index.ts
5476
- import { useEffect as useEffect4, useState as useState4, useMemo as useMemo9 } from "react";
5497
+ import { useEffect as useEffect5, useState as useState5, useMemo as useMemo9 } from "react";
5477
5498
  function useFontsLoaded() {
5478
- const [loaded, setLoaded] = useState4(areFontsLoaded());
5479
- useEffect4(() => {
5499
+ const [loaded, setLoaded] = useState5(areFontsLoaded());
5500
+ useEffect5(() => {
5480
5501
  if (!loaded) {
5481
5502
  preloadFonts().then(() => setLoaded(true)).catch(console.error);
5482
5503
  }
@@ -5484,8 +5505,8 @@ function useFontsLoaded() {
5484
5505
  return loaded;
5485
5506
  }
5486
5507
  function useImageLoader(src) {
5487
- const [image, setImage] = useState4(null);
5488
- useEffect4(() => {
5508
+ const [image, setImage] = useState5(null);
5509
+ useEffect5(() => {
5489
5510
  if (!src) {
5490
5511
  setImage(null);
5491
5512
  return;
@@ -5505,9 +5526,9 @@ function useImageLoader(src) {
5505
5526
  return image;
5506
5527
  }
5507
5528
  function useImagePreloader(sources) {
5508
- const [images, setImages] = useState4({});
5509
- const [loaded, setLoaded] = useState4(false);
5510
- useEffect4(() => {
5529
+ const [images, setImages] = useState5({});
5530
+ const [loaded, setLoaded] = useState5(false);
5531
+ useEffect5(() => {
5511
5532
  const entries = Object.entries(sources);
5512
5533
  if (entries.length === 0) {
5513
5534
  setLoaded(true);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ugcinc-render",
3
- "version": "1.8.165",
3
+ "version": "1.8.167",
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",