react-native-divkit 1.6.0 → 1.6.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"DivText.d.ts","sourceRoot":"","sources":["../../../src/components/text/DivText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAsC,MAAM,kBAAkB,CAAC;AAKxF,MAAM,WAAW,YAAY;IACzB,gBAAgB,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC;CACnD;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,OAAO,CAAC,EAAE,gBAAgB,EAAE,EAAE,YAAY,qBA2LzD"}
1
+ {"version":3,"file":"DivText.d.ts","sourceRoot":"","sources":["../../../src/components/text/DivText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAsC,MAAM,kBAAkB,CAAC;AAKxF,MAAM,WAAW,YAAY;IACzB,gBAAgB,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC;CACnD;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,OAAO,CAAC,EAAE,gBAAgB,EAAE,EAAE,YAAY,qBAkMzD"}
@@ -33,6 +33,8 @@ export function DivText({ componentContext }) {
33
33
  const textAlignmentHorizontal = useDerivedFromVarsSimple(json.text_alignment_horizontal || 'start', variables || new Map());
34
34
  const textAlignmentVertical = useDerivedFromVarsSimple(json.text_alignment_vertical || 'top', variables || new Map());
35
35
  const fontSizeUnit = useDerivedFromVarsSimple(json.font_size_unit || 'sp', variables || new Map());
36
+ const lineHeight = useDerivedFromVarsSimple(json.line_height, variables || new Map());
37
+ const letterSpacing = useDerivedFromVarsSimple(json.letter_spacing, variables || new Map());
36
38
  const maxLines = useDerivedFromVarsSimple(json.max_lines, variables || new Map());
37
39
  // Convert size value based on font_size_unit
38
40
  // sp = scalable pixels (allowFontScaling handles this in RN)
@@ -80,12 +82,15 @@ export function DivText({ componentContext }) {
80
82
  style.fontFamily = mappedFamily;
81
83
  }
82
84
  // Line height
83
- if (json.line_height && fontSize) {
84
- style.lineHeight = convertSize(json.line_height);
85
+ // Android requires lineHeight to be an integer >= fontSize
86
+ if (lineHeight && fontSize) {
87
+ const computedLineHeight = convertSize(lineHeight);
88
+ const computedFontSize = style.fontSize || convertSize(fontSize);
89
+ style.lineHeight = Math.round(Math.max(computedLineHeight, computedFontSize));
85
90
  }
86
91
  // Letter spacing
87
- if (json.letter_spacing !== undefined) {
88
- style.letterSpacing = json.letter_spacing;
92
+ if (letterSpacing !== undefined) {
93
+ style.letterSpacing = letterSpacing;
89
94
  }
90
95
  // Text alignment
91
96
  const alignValue = textAlignmentHorizontal;
@@ -131,8 +136,8 @@ export function DivText({ componentContext }) {
131
136
  json.font_weight_value,
132
137
  json.font_family,
133
138
  typefaceProvider,
134
- json.line_height,
135
- json.letter_spacing,
139
+ lineHeight,
140
+ letterSpacing,
136
141
  json.underline,
137
142
  json.strike,
138
143
  json.font_feature_settings,
@@ -1 +1 @@
1
- {"version":3,"file":"DivText.js","sourceRoot":"","sources":["../../../src/components/text/DivText.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DivText.js","sourceRoot":"","sources":["../../../src/components/text/DivText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAwB,MAAM,cAAc,CAAC;AAGtE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAM/D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,OAAO,CAAC,EAAE,gBAAgB,EAAgB;IACtD,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAC3D,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,gBAAgB,CAAC;IAE7C,4EAA4E;IAC5E,MAAM,IAAI,GAAG,wBAAwB,CAAS,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,SAAS,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC;IAEvF,MAAM,QAAQ,GAAG,wBAAwB,CAAS,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE,SAAS,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC;IAEhG,MAAM,SAAS,GAAG,wBAAwB,CAAS,IAAI,CAAC,UAAU,IAAI,SAAS,EAAE,SAAS,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC;IAEzG,MAAM,uBAAuB,GAAG,wBAAwB,CACpD,IAAI,CAAC,yBAAyB,IAAI,OAAO,EACzC,SAAS,IAAI,IAAI,GAAG,EAAE,CACzB,CAAC;IAEF,MAAM,qBAAqB,GAAG,wBAAwB,CAClD,IAAI,CAAC,uBAAuB,IAAI,KAAK,EACrC,SAAS,IAAI,IAAI,GAAG,EAAE,CACzB,CAAC;IAEF,MAAM,YAAY,GAAG,wBAAwB,CAAe,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE,SAAS,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC;IAEjH,MAAM,UAAU,GAAG,wBAAwB,CAAqB,IAAI,CAAC,WAAW,EAAE,SAAS,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC;IAE1G,MAAM,aAAa,GAAG,wBAAwB,CAAqB,IAAI,CAAC,cAAc,EAAE,SAAS,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC;IAEhH,MAAM,QAAQ,GAAG,wBAAwB,CAAqB,IAAI,CAAC,SAAS,EAAE,SAAS,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC;IAEtG,6CAA6C;IAC7C,6DAA6D;IAC7D,oDAAoD;IACpD,sDAAsD;IACtD,MAAM,WAAW,GAAG,CAAC,KAAa,EAAU,EAAE;QAC1C,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;YACxB,OAAO,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC;QACpC,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,YAAY,KAAK,IAAI,CAAC;IAE/C,mBAAmB;IACnB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAc,EAAE;QACtC,MAAM,KAAK,GAAc,EAAE,CAAC;QAE5B,YAAY;QACZ,IAAI,QAAQ,EAAE,CAAC;YACX,KAAK,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC3C,CAAC;QAED,aAAa;QACb,IAAI,SAAS,EAAE,CAAC;YACZ,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC;QAC5B,CAAC;QAED,cAAc;QACd,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,MAAM,SAAS,GAAgD;gBAC3D,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,KAAK;aACd,CAAC;YACF,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC;QAC5D,CAAC;aAAM,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAChC,gCAAgC;YAChC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;YACpE,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,CAA4B,CAAC;QACjE,CAAC;QAED,kFAAkF;QAClF,4FAA4F;QAC5F,MAAM,gBAAgB,GAAG,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACrE,MAAM,YAAY,GAAG,gBAAgB,CAAC,gBAAgB,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QACxE,IAAI,YAAY,EAAE,CAAC;YACf,KAAK,CAAC,UAAU,GAAG,YAAY,CAAC;QACpC,CAAC;QAED,cAAc;QACd,2DAA2D;QAC3D,IAAI,UAAU,IAAI,QAAQ,EAAE,CAAC;YACzB,MAAM,kBAAkB,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;YACnD,MAAM,gBAAgB,GAAG,KAAK,CAAC,QAAQ,IAAI,WAAW,CAAC,QAAQ,CAAC,CAAC;YACjE,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CAAC,CAAC;QAClF,CAAC;QAED,iBAAiB;QACjB,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAC9B,KAAK,CAAC,aAAa,GAAG,aAAa,CAAC;QACxC,CAAC;QAED,iBAAiB;QACjB,MAAM,UAAU,GAAG,uBAAuB,CAAC;QAC3C,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;YACzB,KAAK,CAAC,SAAS,GAAG,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;QAC7D,CAAC;aAAM,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YAC9B,KAAK,CAAC,SAAS,GAAG,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;QAC7D,CAAC;aAAM,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;YACjC,KAAK,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC/B,CAAC;aAAM,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;YACzD,KAAK,CAAC,SAAS,GAAG,UAAU,CAAC;QACjC,CAAC;QAED,8BAA8B;QAC9B,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;YAC9B,KAAK,CAAC,kBAAkB,GAAG,WAAW,CAAC;QAC3C,CAAC;QAED,2CAA2C;QAC3C,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,kBAAkB,KAAK,WAAW,EAAE,CAAC;gBAC3C,KAAK,CAAC,kBAAkB,GAAG,wBAAwB,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACJ,KAAK,CAAC,kBAAkB,GAAG,cAAc,CAAC;YAC9C,CAAC;QACL,CAAC;QAED,8CAA8C;QAC9C,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC7B,sDAAsD;YACtD,oDAAoD;YACpD,qBAAqB;YACrB,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAQ,CAAC;QACxF,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC,EAAE;QACC,QAAQ;QACR,YAAY;QACZ,SAAS;QACT,uBAAuB;QACvB,IAAI,CAAC,WAAW;QAChB,IAAI,CAAC,iBAAiB;QACtB,IAAI,CAAC,WAAW;QAChB,gBAAgB;QAChB,UAAU;QACV,aAAa;QACb,IAAI,CAAC,SAAS;QACd,IAAI,CAAC,MAAM;QACX,IAAI,CAAC,qBAAqB;QAC1B,SAAS;KACZ,CAAC,CAAC;IAEH,+BAA+B;IAC/B,MAAM,aAAa,GAAG,QAAQ,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAEtE,iBAAiB;IACjB,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAgC,CAAC;QACvD,IAAI,QAAQ,KAAK,KAAK,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YACpD,OAAO,MAAM,CAAC;QAClB,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC;IAEnC,0EAA0E;IAC1E,uFAAuF;IACvF,4EAA4E;IAC5E,MAAM,UAAU,GAAG,OAAO,CAAC,GAAc,EAAE;QACvC,MAAM,KAAK,GAAc,EAAE,CAAC;QAE5B,mCAAmC;QACnC,QAAQ,qBAAqB,EAAE,CAAC;YAC5B,KAAK,QAAQ;gBACT,KAAK,CAAC,cAAc,GAAG,QAAQ,CAAC;gBAChC,MAAM;YACV,KAAK,QAAQ;gBACT,KAAK,CAAC,cAAc,GAAG,UAAU,CAAC;gBAClC,MAAM;YACV,KAAK,UAAU;gBACX,KAAK,CAAC,cAAc,GAAG,UAAU,CAAC;gBAClC,MAAM;YACV,SAAS,MAAM;gBACX,KAAK,CAAC,cAAc,GAAG,YAAY,CAAC;gBACpC,MAAM;QACd,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAE5B,OAAO,CACH,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CACzD;YAAA,CAAC,IAAI,CACD,KAAK,CAAC,CAAC,SAAS,CAAC,CACjB,aAAa,CAAC,CAAC,aAAa,CAAC,CAC7B,aAAa,CAAC,CAAC,aAAa,CAAC,CAC7B,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CAEnC;gBAAA,CAAC,IAAI,CACT;YAAA,EAAE,IAAI,CACV;QAAA,EAAE,KAAK,CAAC,CACX,CAAC;AACN,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useDerivedFromVars.d.ts","sourceRoot":"","sources":["../../src/hooks/useDerivedFromVars.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAGxE,MAAM,WAAW,yBAAyB;IACtC;;OAEG;IACH,SAAS,EAAE,YAAY,CAAC;IAExB;;OAEG;IACH,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEvC;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACrC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,yBAAyB,GAAG,YAAY,CAAC,CAAC,CAAC,CA0FtG;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,CAEjG"}
1
+ {"version":3,"file":"useDerivedFromVars.d.ts","sourceRoot":"","sources":["../../src/hooks/useDerivedFromVars.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAYxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAGxE,MAAM,WAAW,yBAAyB;IACtC;;OAEG;IACH,SAAS,EAAE,YAAY,CAAC;IAExB;;OAEG;IACH,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEvC;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACrC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,yBAAyB,GAAG,YAAY,CAAC,CAAC,CAAC,CA0FtG;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,CAEjG"}
@@ -6,6 +6,15 @@
6
6
  */
7
7
  import { useEffect, useState, useMemo, useRef } from 'react';
8
8
  import { prepareVars } from '../expressions/json';
9
+ /**
10
+ * Stable module-level fallback for logError.
11
+ * Must be defined at module scope so that babel-plugin-transform-remove-console
12
+ * replaces console.error only once (stable reference), not on every hook call.
13
+ * If defined inline as a default parameter, the plugin creates a new function(){}
14
+ * on every invocation, breaking useMemo dependency comparison and causing infinite re-renders.
15
+ */
16
+ // eslint-disable-next-line no-console
17
+ const defaultLogError = console.error;
9
18
  /**
10
19
  * Hook that subscribes to variables used in JSON expressions and re-evaluates when they change
11
20
  *
@@ -20,7 +29,7 @@ import { prepareVars } from '../expressions/json';
20
29
  * ```
21
30
  */
22
31
  export function useDerivedFromVars(jsonProp, options) {
23
- const { variables, additionalVars, keepComplex = false, maxDepth = 10, customFunctions, store, weekStartDay = 0, logError = console.error } = options;
32
+ const { variables, additionalVars, keepComplex = false, maxDepth = 10, customFunctions, store, weekStartDay = 0, logError = defaultLogError } = options;
24
33
  // Merge variables maps
25
34
  const allVariables = useMemo(() => {
26
35
  if (!additionalVars || additionalVars.size === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"useDerivedFromVars.js","sourceRoot":"","sources":["../../src/hooks/useDerivedFromVars.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useDerivedFromVars.js","sourceRoot":"","sources":["../../src/hooks/useDerivedFromVars.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-divkit",
3
- "version": "1.6.0",
3
+ "version": "1.6.2",
4
4
  "description": "DivKit renderer for React Native - Server-driven UI framework",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -53,6 +53,10 @@ export function DivText({ componentContext }: DivTextProps) {
53
53
 
54
54
  const fontSizeUnit = useDerivedFromVarsSimple<FontSizeUnit>(json.font_size_unit || 'sp', variables || new Map());
55
55
 
56
+ const lineHeight = useDerivedFromVarsSimple<number | undefined>(json.line_height, variables || new Map());
57
+
58
+ const letterSpacing = useDerivedFromVarsSimple<number | undefined>(json.letter_spacing, variables || new Map());
59
+
56
60
  const maxLines = useDerivedFromVarsSimple<number | undefined>(json.max_lines, variables || new Map());
57
61
 
58
62
  // Convert size value based on font_size_unit
@@ -107,13 +111,16 @@ export function DivText({ componentContext }: DivTextProps) {
107
111
  }
108
112
 
109
113
  // Line height
110
- if (json.line_height && fontSize) {
111
- style.lineHeight = convertSize(json.line_height);
114
+ // Android requires lineHeight to be an integer >= fontSize
115
+ if (lineHeight && fontSize) {
116
+ const computedLineHeight = convertSize(lineHeight);
117
+ const computedFontSize = style.fontSize || convertSize(fontSize);
118
+ style.lineHeight = Math.round(Math.max(computedLineHeight, computedFontSize));
112
119
  }
113
120
 
114
121
  // Letter spacing
115
- if (json.letter_spacing !== undefined) {
116
- style.letterSpacing = json.letter_spacing;
122
+ if (letterSpacing !== undefined) {
123
+ style.letterSpacing = letterSpacing;
117
124
  }
118
125
 
119
126
  // Text alignment
@@ -160,8 +167,8 @@ export function DivText({ componentContext }: DivTextProps) {
160
167
  json.font_weight_value,
161
168
  json.font_family,
162
169
  typefaceProvider,
163
- json.line_height,
164
- json.letter_spacing,
170
+ lineHeight,
171
+ letterSpacing,
165
172
  json.underline,
166
173
  json.strike,
167
174
  json.font_feature_settings,
@@ -8,6 +8,16 @@
8
8
  import { useEffect, useState, useMemo, useRef } from 'react';
9
9
  import type { MaybeMissing } from '../expressions/json';
10
10
  import { prepareVars } from '../expressions/json';
11
+
12
+ /**
13
+ * Stable module-level fallback for logError.
14
+ * Must be defined at module scope so that babel-plugin-transform-remove-console
15
+ * replaces console.error only once (stable reference), not on every hook call.
16
+ * If defined inline as a default parameter, the plugin creates a new function(){}
17
+ * on every invocation, breaking useMemo dependency comparison and causing infinite re-renders.
18
+ */
19
+ // eslint-disable-next-line no-console
20
+ const defaultLogError: (error: Error) => void = console.error;
11
21
  import type { Variable } from '../expressions/variable';
12
22
  import type { VariablesMap } from '../expressions/eval';
13
23
  import type { Store } from '../../typings/store';
@@ -81,7 +91,7 @@ export function useDerivedFromVars<T>(jsonProp: T, options: UseDerivedFromVarsOp
81
91
  customFunctions,
82
92
  store,
83
93
  weekStartDay = 0,
84
- logError = console.error
94
+ logError = defaultLogError
85
95
  } = options;
86
96
 
87
97
  // Merge variables maps