@expensify/react-native-live-markdown 0.1.270 → 0.1.272

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 CHANGED
@@ -66,6 +66,12 @@ const FONT_FAMILY_MONOSPACE = Platform.select({
66
66
  default: 'monospace',
67
67
  });
68
68
 
69
+ const FONT_FAMILY_EMOJI = Platform.select({
70
+ ios: 'Apple Color Emoji',
71
+ android: 'Noto Color Emoji',
72
+ default: 'Apple Color Emoji, Segoe UI Emoji, Noto Color Emoji',
73
+ });
74
+
69
75
  const markdownStyle: MarkdownStyle = {
70
76
  syntax: {
71
77
  color: 'gray',
@@ -78,6 +84,7 @@ const markdownStyle: MarkdownStyle = {
78
84
  },
79
85
  emoji: {
80
86
  fontSize: 20,
87
+ fontFamily: FONT_FAMILY_EMOJI,
81
88
  },
82
89
  blockquote: {
83
90
  borderColor: 'gray',
@@ -70,7 +70,8 @@ public class MarkdownFormatter {
70
70
  setSpan(ssb, new MarkdownStrikethroughSpan(), start, end);
71
71
  break;
72
72
  case "emoji":
73
- setSpan(ssb, new MarkdownEmojiSpan(markdownStyle.getEmojiFontSize()), start, end);
73
+ setSpan(ssb, new MarkdownFontFamilySpan(markdownStyle.getEmojiFontFamily(), mAssetManager), start, end);
74
+ setSpan(ssb, new MarkdownFontSizeSpan(markdownStyle.getEmojiFontSize()), start, end);
74
75
  break;
75
76
  case "mention-here":
76
77
  setSpan(ssb, new MarkdownForegroundColorSpan(markdownStyle.getMentionHereColor()), start, end);
@@ -21,6 +21,9 @@ public class MarkdownStyle {
21
21
 
22
22
  private final float mH1FontSize;
23
23
 
24
+ @NonNull
25
+ private final String mEmojiFontFamily;
26
+
24
27
  private final float mEmojiFontSize;
25
28
 
26
29
  @ColorInt
@@ -77,6 +80,7 @@ public class MarkdownStyle {
77
80
  mLinkColor = parseColor(map, "link", "color", context);
78
81
  mH1FontSize = parseFloat(map, "h1", "fontSize");
79
82
  mEmojiFontSize = parseFloat(map, "emoji", "fontSize");
83
+ mEmojiFontFamily = parseString(map, "emoji", "fontFamily");
80
84
  mBlockquoteBorderColor = parseColor(map, "blockquote", "borderColor", context);
81
85
  mBlockquoteBorderWidth = parseFloat(map, "blockquote", "borderWidth");
82
86
  mBlockquoteMarginLeft = parseFloat(map, "blockquote", "marginLeft");
@@ -142,6 +146,10 @@ public class MarkdownStyle {
142
146
  return mEmojiFontSize;
143
147
  }
144
148
 
149
+ public String getEmojiFontFamily() {
150
+ return mEmojiFontFamily;
151
+ }
152
+
145
153
  @ColorInt
146
154
  public int getBlockquoteBorderColor() {
147
155
  return mBlockquoteBorderColor;
@@ -74,7 +74,7 @@
74
74
  variant:nil
75
75
  scaleMultiplier:0];
76
76
  } else if (type == "emoji") {
77
- font = [RCTFont updateFont:font withFamily:nil
77
+ font = [RCTFont updateFont:font withFamily:markdownStyle.emojiFontFamily
78
78
  size:[NSNumber numberWithFloat:markdownStyle.emojiFontSize]
79
79
  weight:nil
80
80
  style:nil
@@ -10,6 +10,7 @@ NS_ASSUME_NONNULL_BEGIN
10
10
  @property (nonatomic) UIColor *linkColor;
11
11
  @property (nonatomic) CGFloat h1FontSize;
12
12
  @property (nonatomic) CGFloat emojiFontSize;
13
+ @property (nonatomic) NSString *emojiFontFamily;
13
14
  @property (nonatomic) UIColor *blockquoteBorderColor;
14
15
  @property (nonatomic) CGFloat blockquoteBorderWidth;
15
16
  @property (nonatomic) CGFloat blockquoteMarginLeft;
@@ -14,6 +14,7 @@
14
14
  _h1FontSize = style.h1.fontSize;
15
15
 
16
16
  _emojiFontSize = style.emoji.fontSize;
17
+ _emojiFontFamily = RCTNSStringFromString(style.emoji.fontFamily);
17
18
 
18
19
  _blockquoteBorderColor = RCTUIColorFromSharedColor(style.blockquote.borderColor);
19
20
  _blockquoteBorderWidth = style.blockquote.borderWidth;
@@ -1 +1 @@
1
- {"version":3,"names":["_codegenNativeComponent","_interopRequireDefault","require","e","__esModule","default","_default","exports","codegenNativeComponent","interfaceOnly"],"sourceRoot":"../../src","sources":["MarkdownTextInputDecoratorViewNativeComponent.ts"],"mappings":";;;;;;AAGA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA6F,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAF,OAAA,GA+E9E,IAAAG,+BAAsB,EAAc,gCAAgC,EAAE;EACnFC,aAAa,EAAE;AACjB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_codegenNativeComponent","_interopRequireDefault","require","e","__esModule","default","_default","exports","codegenNativeComponent","interfaceOnly"],"sourceRoot":"../../src","sources":["MarkdownTextInputDecoratorViewNativeComponent.ts"],"mappings":";;;;;;AAGA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA6F,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAF,OAAA,GAgF9E,IAAAG,+BAAsB,EAAc,gCAAgC,EAAE;EACnFC,aAAa,EAAE;AACjB,CAAC,CAAC","ignoreList":[]}
@@ -10,6 +10,11 @@ const FONT_FAMILY_MONOSPACE = _reactNative.Platform.select({
10
10
  ios: 'Courier',
11
11
  default: 'monospace'
12
12
  });
13
+ const FONT_FAMILY_EMOJI = _reactNative.Platform.select({
14
+ ios: 'Apple Color Emoji',
15
+ android: 'Noto Color Emoji',
16
+ default: 'Apple Color Emoji, Segoe UI Emoji, Noto Color Emoji'
17
+ });
13
18
  function makeDefaultMarkdownStyle() {
14
19
  return {
15
20
  syntax: {
@@ -22,7 +27,8 @@ function makeDefaultMarkdownStyle() {
22
27
  fontSize: 25
23
28
  },
24
29
  emoji: {
25
- fontSize: 20
30
+ fontSize: 20,
31
+ fontFamily: FONT_FAMILY_EMOJI
26
32
  },
27
33
  blockquote: {
28
34
  borderColor: 'gray',
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","FONT_FAMILY_MONOSPACE","Platform","select","ios","default","makeDefaultMarkdownStyle","syntax","color","link","h1","fontSize","emoji","blockquote","borderColor","borderWidth","marginLeft","paddingLeft","code","fontFamily","backgroundColor","pre","mentionHere","mentionUser","mentionReport","inlineImage","minWidth","minHeight","maxWidth","maxHeight","marginTop","marginBottom","borderRadius","loadingIndicator","primaryColor","secondaryColor","mergeMarkdownStyleWithDefault","input","output","undefined","Object","keys","forEach","key","outputValue","assign","parseStringWithUnitToNumber","value","parseInt","replace"],"sourceRoot":"../../src","sources":["styleUtils.ts"],"mappings":";;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAOA,MAAMC,qBAAqB,GAAGC,qBAAQ,CAACC,MAAM,CAAC;EAC5CC,GAAG,EAAE,SAAS;EACdC,OAAO,EAAE;AACX,CAAC,CAAC;AAEF,SAASC,wBAAwBA,CAAA,EAAkB;EACjD,OAAO;IACLC,MAAM,EAAE;MACNC,KAAK,EAAE;IACT,CAAC;IACDC,IAAI,EAAE;MACJD,KAAK,EAAE;IACT,CAAC;IACDE,EAAE,EAAE;MACFC,QAAQ,EAAE;IACZ,CAAC;IACDC,KAAK,EAAE;MACLD,QAAQ,EAAE;IACZ,CAAC;IACDE,UAAU,EAAE;MACVC,WAAW,EAAE,MAAM;MACnBC,WAAW,EAAE,CAAC;MACdC,UAAU,EAAE,CAAC;MACbC,WAAW,EAAE;IACf,CAAC;IACDC,IAAI,EAAE;MACJC,UAAU,EAAElB,qBAAqB;MACjCU,QAAQ,EAAE,EAAE;MACZH,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDC,GAAG,EAAE;MACHF,UAAU,EAAElB,qBAAqB;MACjCU,QAAQ,EAAE,EAAE;MACZH,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDE,WAAW,EAAE;MACXd,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDG,WAAW,EAAE;MACXf,KAAK,EAAE,MAAM;MACbY,eAAe,EAAE;IACnB,CAAC;IACDI,aAAa,EAAE;MACbhB,KAAK,EAAE,KAAK;MACZY,eAAe,EAAE;IACnB,CAAC;IACDK,WAAW,EAAE;MACXC,QAAQ,EAAE,EAAE;MACZC,SAAS,EAAE,EAAE;MACbC,QAAQ,EAAE,GAAG;MACbC,SAAS,EAAE,GAAG;MACdC,SAAS,EAAE,CAAC;MACZC,YAAY,EAAE,CAAC;MACfC,YAAY,EAAE;IAChB,CAAC;IACDC,gBAAgB,EAAE;MAChBC,YAAY,EAAE,MAAM;MACpBC,cAAc,EAAE;IAClB;EACF,CAAC;AACH;AAEA,SAASC,6BAA6BA,CAACC,KAAuC,EAAiB;EAC7F,MAAMC,MAAM,GAAGhC,wBAAwB,CAAC,CAAC;EAEzC,IAAI+B,KAAK,KAAKE,SAAS,EAAE;IACvBC,MAAM,CAACC,IAAI,CAACJ,KAAK,CAAC,CAACK,OAAO,CAAEC,GAAG,IAAK;MAClC,IAAI,EAAEA,GAAG,IAAIL,MAAM,CAAC,EAAE;QACpB;MACF;MAEA,MAAMM,WAAW,GAAGN,MAAM,CAACK,GAAG,CAAwB;MACtD,IAAIC,WAAW,EAAE;QACfJ,MAAM,CAACK,MAAM,CAACD,WAAW,EAAEP,KAAK,CAACM,GAAG,CAAwB,CAAC;MAC/D;IACF,CAAC,CAAC;EACJ;EAEA,OAAOL,MAAM;AACf;AAEA,SAASQ,2BAA2BA,CAACC,KAAoB,EAAU;EACjE,OAAOA,KAAK,GAAGC,QAAQ,CAACD,KAAK,CAACE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC;AAC1D","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","FONT_FAMILY_MONOSPACE","Platform","select","ios","default","FONT_FAMILY_EMOJI","android","makeDefaultMarkdownStyle","syntax","color","link","h1","fontSize","emoji","fontFamily","blockquote","borderColor","borderWidth","marginLeft","paddingLeft","code","backgroundColor","pre","mentionHere","mentionUser","mentionReport","inlineImage","minWidth","minHeight","maxWidth","maxHeight","marginTop","marginBottom","borderRadius","loadingIndicator","primaryColor","secondaryColor","mergeMarkdownStyleWithDefault","input","output","undefined","Object","keys","forEach","key","outputValue","assign","parseStringWithUnitToNumber","value","parseInt","replace"],"sourceRoot":"../../src","sources":["styleUtils.ts"],"mappings":";;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAOA,MAAMC,qBAAqB,GAAGC,qBAAQ,CAACC,MAAM,CAAC;EAC5CC,GAAG,EAAE,SAAS;EACdC,OAAO,EAAE;AACX,CAAC,CAAC;AAEF,MAAMC,iBAAiB,GAAGJ,qBAAQ,CAACC,MAAM,CAAC;EACxCC,GAAG,EAAE,mBAAmB;EACxBG,OAAO,EAAE,kBAAkB;EAC3BF,OAAO,EAAE;AACX,CAAC,CAAC;AAEF,SAASG,wBAAwBA,CAAA,EAAkB;EACjD,OAAO;IACLC,MAAM,EAAE;MACNC,KAAK,EAAE;IACT,CAAC;IACDC,IAAI,EAAE;MACJD,KAAK,EAAE;IACT,CAAC;IACDE,EAAE,EAAE;MACFC,QAAQ,EAAE;IACZ,CAAC;IACDC,KAAK,EAAE;MACLD,QAAQ,EAAE,EAAE;MACZE,UAAU,EAAET;IACd,CAAC;IACDU,UAAU,EAAE;MACVC,WAAW,EAAE,MAAM;MACnBC,WAAW,EAAE,CAAC;MACdC,UAAU,EAAE,CAAC;MACbC,WAAW,EAAE;IACf,CAAC;IACDC,IAAI,EAAE;MACJN,UAAU,EAAEd,qBAAqB;MACjCY,QAAQ,EAAE,EAAE;MACZH,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDC,GAAG,EAAE;MACHR,UAAU,EAAEd,qBAAqB;MACjCY,QAAQ,EAAE,EAAE;MACZH,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDE,WAAW,EAAE;MACXd,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDG,WAAW,EAAE;MACXf,KAAK,EAAE,MAAM;MACbY,eAAe,EAAE;IACnB,CAAC;IACDI,aAAa,EAAE;MACbhB,KAAK,EAAE,KAAK;MACZY,eAAe,EAAE;IACnB,CAAC;IACDK,WAAW,EAAE;MACXC,QAAQ,EAAE,EAAE;MACZC,SAAS,EAAE,EAAE;MACbC,QAAQ,EAAE,GAAG;MACbC,SAAS,EAAE,GAAG;MACdC,SAAS,EAAE,CAAC;MACZC,YAAY,EAAE,CAAC;MACfC,YAAY,EAAE;IAChB,CAAC;IACDC,gBAAgB,EAAE;MAChBC,YAAY,EAAE,MAAM;MACpBC,cAAc,EAAE;IAClB;EACF,CAAC;AACH;AAEA,SAASC,6BAA6BA,CAACC,KAAuC,EAAiB;EAC7F,MAAMC,MAAM,GAAGhC,wBAAwB,CAAC,CAAC;EAEzC,IAAI+B,KAAK,KAAKE,SAAS,EAAE;IACvBC,MAAM,CAACC,IAAI,CAACJ,KAAK,CAAC,CAACK,OAAO,CAAEC,GAAG,IAAK;MAClC,IAAI,EAAEA,GAAG,IAAIL,MAAM,CAAC,EAAE;QACpB;MACF;MAEA,MAAMM,WAAW,GAAGN,MAAM,CAACK,GAAG,CAAwB;MACtD,IAAIC,WAAW,EAAE;QACfJ,MAAM,CAACK,MAAM,CAACD,WAAW,EAAEP,KAAK,CAACM,GAAG,CAAwB,CAAC;MAC/D;IACF,CAAC,CAAC;EACJ;EAEA,OAAOL,MAAM;AACf;AAEA,SAASQ,2BAA2BA,CAACC,KAAoB,EAAU;EACjE,OAAOA,KAAK,GAAGC,QAAQ,CAACD,KAAK,CAACE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC;AAC1D","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["codegenNativeComponent","interfaceOnly"],"sourceRoot":"../../src","sources":["MarkdownTextInputDecoratorViewNativeComponent.ts"],"mappings":"AAGA,OAAOA,sBAAsB,MAAM,yDAAyD;AA+E5F,eAAeA,sBAAsB,CAAc,gCAAgC,EAAE;EACnFC,aAAa,EAAE;AACjB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["codegenNativeComponent","interfaceOnly"],"sourceRoot":"../../src","sources":["MarkdownTextInputDecoratorViewNativeComponent.ts"],"mappings":"AAGA,OAAOA,sBAAsB,MAAM,yDAAyD;AAgF5F,eAAeA,sBAAsB,CAAc,gCAAgC,EAAE;EACnFC,aAAa,EAAE;AACjB,CAAC,CAAC","ignoreList":[]}
@@ -3,6 +3,11 @@ const FONT_FAMILY_MONOSPACE = Platform.select({
3
3
  ios: 'Courier',
4
4
  default: 'monospace'
5
5
  });
6
+ const FONT_FAMILY_EMOJI = Platform.select({
7
+ ios: 'Apple Color Emoji',
8
+ android: 'Noto Color Emoji',
9
+ default: 'Apple Color Emoji, Segoe UI Emoji, Noto Color Emoji'
10
+ });
6
11
  function makeDefaultMarkdownStyle() {
7
12
  return {
8
13
  syntax: {
@@ -15,7 +20,8 @@ function makeDefaultMarkdownStyle() {
15
20
  fontSize: 25
16
21
  },
17
22
  emoji: {
18
- fontSize: 20
23
+ fontSize: 20,
24
+ fontFamily: FONT_FAMILY_EMOJI
19
25
  },
20
26
  blockquote: {
21
27
  borderColor: 'gray',
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","FONT_FAMILY_MONOSPACE","select","ios","default","makeDefaultMarkdownStyle","syntax","color","link","h1","fontSize","emoji","blockquote","borderColor","borderWidth","marginLeft","paddingLeft","code","fontFamily","backgroundColor","pre","mentionHere","mentionUser","mentionReport","inlineImage","minWidth","minHeight","maxWidth","maxHeight","marginTop","marginBottom","borderRadius","loadingIndicator","primaryColor","secondaryColor","mergeMarkdownStyleWithDefault","input","output","undefined","Object","keys","forEach","key","outputValue","assign","parseStringWithUnitToNumber","value","parseInt","replace"],"sourceRoot":"../../src","sources":["styleUtils.ts"],"mappings":"AAAA,SAAQA,QAAQ,QAAO,cAAc;AAOrC,MAAMC,qBAAqB,GAAGD,QAAQ,CAACE,MAAM,CAAC;EAC5CC,GAAG,EAAE,SAAS;EACdC,OAAO,EAAE;AACX,CAAC,CAAC;AAEF,SAASC,wBAAwBA,CAAA,EAAkB;EACjD,OAAO;IACLC,MAAM,EAAE;MACNC,KAAK,EAAE;IACT,CAAC;IACDC,IAAI,EAAE;MACJD,KAAK,EAAE;IACT,CAAC;IACDE,EAAE,EAAE;MACFC,QAAQ,EAAE;IACZ,CAAC;IACDC,KAAK,EAAE;MACLD,QAAQ,EAAE;IACZ,CAAC;IACDE,UAAU,EAAE;MACVC,WAAW,EAAE,MAAM;MACnBC,WAAW,EAAE,CAAC;MACdC,UAAU,EAAE,CAAC;MACbC,WAAW,EAAE;IACf,CAAC;IACDC,IAAI,EAAE;MACJC,UAAU,EAAEjB,qBAAqB;MACjCS,QAAQ,EAAE,EAAE;MACZH,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDC,GAAG,EAAE;MACHF,UAAU,EAAEjB,qBAAqB;MACjCS,QAAQ,EAAE,EAAE;MACZH,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDE,WAAW,EAAE;MACXd,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDG,WAAW,EAAE;MACXf,KAAK,EAAE,MAAM;MACbY,eAAe,EAAE;IACnB,CAAC;IACDI,aAAa,EAAE;MACbhB,KAAK,EAAE,KAAK;MACZY,eAAe,EAAE;IACnB,CAAC;IACDK,WAAW,EAAE;MACXC,QAAQ,EAAE,EAAE;MACZC,SAAS,EAAE,EAAE;MACbC,QAAQ,EAAE,GAAG;MACbC,SAAS,EAAE,GAAG;MACdC,SAAS,EAAE,CAAC;MACZC,YAAY,EAAE,CAAC;MACfC,YAAY,EAAE;IAChB,CAAC;IACDC,gBAAgB,EAAE;MAChBC,YAAY,EAAE,MAAM;MACpBC,cAAc,EAAE;IAClB;EACF,CAAC;AACH;AAEA,SAASC,6BAA6BA,CAACC,KAAuC,EAAiB;EAC7F,MAAMC,MAAM,GAAGhC,wBAAwB,CAAC,CAAC;EAEzC,IAAI+B,KAAK,KAAKE,SAAS,EAAE;IACvBC,MAAM,CAACC,IAAI,CAACJ,KAAK,CAAC,CAACK,OAAO,CAAEC,GAAG,IAAK;MAClC,IAAI,EAAEA,GAAG,IAAIL,MAAM,CAAC,EAAE;QACpB;MACF;MAEA,MAAMM,WAAW,GAAGN,MAAM,CAACK,GAAG,CAAwB;MACtD,IAAIC,WAAW,EAAE;QACfJ,MAAM,CAACK,MAAM,CAACD,WAAW,EAAEP,KAAK,CAACM,GAAG,CAAwB,CAAC;MAC/D;IACF,CAAC,CAAC;EACJ;EAEA,OAAOL,MAAM;AACf;AAEA,SAASQ,2BAA2BA,CAACC,KAAoB,EAAU;EACjE,OAAOA,KAAK,GAAGC,QAAQ,CAACD,KAAK,CAACE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC;AAC1D;AAIA,SAAQb,6BAA6B,EAAEU,2BAA2B","ignoreList":[]}
1
+ {"version":3,"names":["Platform","FONT_FAMILY_MONOSPACE","select","ios","default","FONT_FAMILY_EMOJI","android","makeDefaultMarkdownStyle","syntax","color","link","h1","fontSize","emoji","fontFamily","blockquote","borderColor","borderWidth","marginLeft","paddingLeft","code","backgroundColor","pre","mentionHere","mentionUser","mentionReport","inlineImage","minWidth","minHeight","maxWidth","maxHeight","marginTop","marginBottom","borderRadius","loadingIndicator","primaryColor","secondaryColor","mergeMarkdownStyleWithDefault","input","output","undefined","Object","keys","forEach","key","outputValue","assign","parseStringWithUnitToNumber","value","parseInt","replace"],"sourceRoot":"../../src","sources":["styleUtils.ts"],"mappings":"AAAA,SAAQA,QAAQ,QAAO,cAAc;AAOrC,MAAMC,qBAAqB,GAAGD,QAAQ,CAACE,MAAM,CAAC;EAC5CC,GAAG,EAAE,SAAS;EACdC,OAAO,EAAE;AACX,CAAC,CAAC;AAEF,MAAMC,iBAAiB,GAAGL,QAAQ,CAACE,MAAM,CAAC;EACxCC,GAAG,EAAE,mBAAmB;EACxBG,OAAO,EAAE,kBAAkB;EAC3BF,OAAO,EAAE;AACX,CAAC,CAAC;AAEF,SAASG,wBAAwBA,CAAA,EAAkB;EACjD,OAAO;IACLC,MAAM,EAAE;MACNC,KAAK,EAAE;IACT,CAAC;IACDC,IAAI,EAAE;MACJD,KAAK,EAAE;IACT,CAAC;IACDE,EAAE,EAAE;MACFC,QAAQ,EAAE;IACZ,CAAC;IACDC,KAAK,EAAE;MACLD,QAAQ,EAAE,EAAE;MACZE,UAAU,EAAET;IACd,CAAC;IACDU,UAAU,EAAE;MACVC,WAAW,EAAE,MAAM;MACnBC,WAAW,EAAE,CAAC;MACdC,UAAU,EAAE,CAAC;MACbC,WAAW,EAAE;IACf,CAAC;IACDC,IAAI,EAAE;MACJN,UAAU,EAAEb,qBAAqB;MACjCW,QAAQ,EAAE,EAAE;MACZH,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDC,GAAG,EAAE;MACHR,UAAU,EAAEb,qBAAqB;MACjCW,QAAQ,EAAE,EAAE;MACZH,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDE,WAAW,EAAE;MACXd,KAAK,EAAE,OAAO;MACdY,eAAe,EAAE;IACnB,CAAC;IACDG,WAAW,EAAE;MACXf,KAAK,EAAE,MAAM;MACbY,eAAe,EAAE;IACnB,CAAC;IACDI,aAAa,EAAE;MACbhB,KAAK,EAAE,KAAK;MACZY,eAAe,EAAE;IACnB,CAAC;IACDK,WAAW,EAAE;MACXC,QAAQ,EAAE,EAAE;MACZC,SAAS,EAAE,EAAE;MACbC,QAAQ,EAAE,GAAG;MACbC,SAAS,EAAE,GAAG;MACdC,SAAS,EAAE,CAAC;MACZC,YAAY,EAAE,CAAC;MACfC,YAAY,EAAE;IAChB,CAAC;IACDC,gBAAgB,EAAE;MAChBC,YAAY,EAAE,MAAM;MACpBC,cAAc,EAAE;IAClB;EACF,CAAC;AACH;AAEA,SAASC,6BAA6BA,CAACC,KAAuC,EAAiB;EAC7F,MAAMC,MAAM,GAAGhC,wBAAwB,CAAC,CAAC;EAEzC,IAAI+B,KAAK,KAAKE,SAAS,EAAE;IACvBC,MAAM,CAACC,IAAI,CAACJ,KAAK,CAAC,CAACK,OAAO,CAAEC,GAAG,IAAK;MAClC,IAAI,EAAEA,GAAG,IAAIL,MAAM,CAAC,EAAE;QACpB;MACF;MAEA,MAAMM,WAAW,GAAGN,MAAM,CAACK,GAAG,CAAwB;MACtD,IAAIC,WAAW,EAAE;QACfJ,MAAM,CAACK,MAAM,CAACD,WAAW,EAAEP,KAAK,CAACM,GAAG,CAAwB,CAAC;MAC/D;IACF,CAAC,CAAC;EACJ;EAEA,OAAOL,MAAM;AACf;AAEA,SAASQ,2BAA2BA,CAACC,KAAoB,EAAU;EACjE,OAAOA,KAAK,GAAGC,QAAQ,CAACD,KAAK,CAACE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC;AAC1D;AAIA,SAAQb,6BAA6B,EAAEU,2BAA2B","ignoreList":[]}
@@ -7,6 +7,7 @@ interface MarkdownStyle {
7
7
  };
8
8
  emoji: {
9
9
  fontSize: Float;
10
+ fontFamily: string;
10
11
  };
11
12
  link: {
12
13
  color: ColorValue;
@@ -1 +1 @@
1
- {"version":3,"file":"MarkdownTextInputDecoratorViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/MarkdownTextInputDecoratorViewNativeComponent.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAC,UAAU,EAAE,SAAS,EAAC,MAAM,cAAc,CAAC;AAExD,OAAO,KAAK,EAAC,KAAK,EAAE,KAAK,EAAC,MAAM,2CAA2C,CAAC;AAG5E,UAAU,aAAa;IACrB,MAAM,EAAE;QACN,KAAK,EAAE,UAAU,CAAC;KACnB,CAAC;IACF,KAAK,EAAE;QACL,QAAQ,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,IAAI,EAAE;QACJ,KAAK,EAAE,UAAU,CAAC;KACnB,CAAC;IACF,EAAE,EAAE;QACF,QAAQ,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,UAAU,EAAE;QACV,WAAW,EAAE,UAAU,CAAC;QACxB,WAAW,EAAE,KAAK,CAAC;QACnB,UAAU,EAAE,KAAK,CAAC;QAClB,WAAW,EAAE,KAAK,CAAC;KACpB,CAAC;IACF,IAAI,EAAE;QACJ,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,KAAK,CAAC;QAChB,KAAK,EAAE,UAAU,CAAC;QAClB,eAAe,EAAE,UAAU,CAAC;KAC7B,CAAC;IACF,GAAG,EAAE;QACH,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,KAAK,CAAC;QAChB,KAAK,EAAE,UAAU,CAAC;QAClB,eAAe,EAAE,UAAU,CAAC;KAC7B,CAAC;IACF,WAAW,EAAE;QACX,KAAK,EAAE,UAAU,CAAC;QAClB,eAAe,EAAE,UAAU,CAAC;QAC5B,YAAY,CAAC,EAAE,KAAK,CAAC;KACtB,CAAC;IACF,WAAW,EAAE;QACX,KAAK,EAAE,UAAU,CAAC;QAClB,eAAe,EAAE,UAAU,CAAC;QAC5B,YAAY,CAAC,EAAE,KAAK,CAAC;KACtB,CAAC;IACF,aAAa,EAAE;QACb,KAAK,EAAE,UAAU,CAAC;QAClB,eAAe,EAAE,UAAU,CAAC;QAC5B,YAAY,CAAC,EAAE,KAAK,CAAC;KACtB,CAAC;IACF,WAAW,EAAE;QACX,QAAQ,EAAE,KAAK,CAAC;QAChB,SAAS,EAAE,KAAK,CAAC;QACjB,QAAQ,EAAE,KAAK,CAAC;QAChB,SAAS,EAAE,KAAK,CAAC;QACjB,SAAS,EAAE,KAAK,CAAC;QACjB,YAAY,EAAE,KAAK,CAAC;QACpB,YAAY,EAAE,KAAK,CAAC;KACrB,CAAC;IACF,yBAAyB,CAAC,EAAE;QAC1B,eAAe,CAAC,EAAE,UAAU,CAAC;QAC7B,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,WAAW,CAAC,EAAE,UAAU,CAAC;QACzB,YAAY,CAAC,EAAE,KAAK,CAAC;QACrB,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,MAAM,CAAC,EAAE,KAAK,CAAC;KAChB,CAAC;IACF,gBAAgB,CAAC,EAAE;QACjB,YAAY,CAAC,EAAE,UAAU,CAAC;QAC1B,cAAc,CAAC,EAAE,UAAU,CAAC;QAC5B,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,WAAW,CAAC,EAAE,KAAK,CAAC;KACrB,CAAC;CACH;AAED,UAAU,WAAY,SAAQ,SAAS;IACrC,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,KAAK,CAAC;CACjB;;AAED,wBAEG;AAEH,YAAY,EAAC,aAAa,EAAC,CAAC"}
1
+ {"version":3,"file":"MarkdownTextInputDecoratorViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/MarkdownTextInputDecoratorViewNativeComponent.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAC,UAAU,EAAE,SAAS,EAAC,MAAM,cAAc,CAAC;AAExD,OAAO,KAAK,EAAC,KAAK,EAAE,KAAK,EAAC,MAAM,2CAA2C,CAAC;AAG5E,UAAU,aAAa;IACrB,MAAM,EAAE;QACN,KAAK,EAAE,UAAU,CAAC;KACnB,CAAC;IACF,KAAK,EAAE;QACL,QAAQ,EAAE,KAAK,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,IAAI,EAAE;QACJ,KAAK,EAAE,UAAU,CAAC;KACnB,CAAC;IACF,EAAE,EAAE;QACF,QAAQ,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,UAAU,EAAE;QACV,WAAW,EAAE,UAAU,CAAC;QACxB,WAAW,EAAE,KAAK,CAAC;QACnB,UAAU,EAAE,KAAK,CAAC;QAClB,WAAW,EAAE,KAAK,CAAC;KACpB,CAAC;IACF,IAAI,EAAE;QACJ,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,KAAK,CAAC;QAChB,KAAK,EAAE,UAAU,CAAC;QAClB,eAAe,EAAE,UAAU,CAAC;KAC7B,CAAC;IACF,GAAG,EAAE;QACH,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,KAAK,CAAC;QAChB,KAAK,EAAE,UAAU,CAAC;QAClB,eAAe,EAAE,UAAU,CAAC;KAC7B,CAAC;IACF,WAAW,EAAE;QACX,KAAK,EAAE,UAAU,CAAC;QAClB,eAAe,EAAE,UAAU,CAAC;QAC5B,YAAY,CAAC,EAAE,KAAK,CAAC;KACtB,CAAC;IACF,WAAW,EAAE;QACX,KAAK,EAAE,UAAU,CAAC;QAClB,eAAe,EAAE,UAAU,CAAC;QAC5B,YAAY,CAAC,EAAE,KAAK,CAAC;KACtB,CAAC;IACF,aAAa,EAAE;QACb,KAAK,EAAE,UAAU,CAAC;QAClB,eAAe,EAAE,UAAU,CAAC;QAC5B,YAAY,CAAC,EAAE,KAAK,CAAC;KACtB,CAAC;IACF,WAAW,EAAE;QACX,QAAQ,EAAE,KAAK,CAAC;QAChB,SAAS,EAAE,KAAK,CAAC;QACjB,QAAQ,EAAE,KAAK,CAAC;QAChB,SAAS,EAAE,KAAK,CAAC;QACjB,SAAS,EAAE,KAAK,CAAC;QACjB,YAAY,EAAE,KAAK,CAAC;QACpB,YAAY,EAAE,KAAK,CAAC;KACrB,CAAC;IACF,yBAAyB,CAAC,EAAE;QAC1B,eAAe,CAAC,EAAE,UAAU,CAAC;QAC7B,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,WAAW,CAAC,EAAE,UAAU,CAAC;QACzB,YAAY,CAAC,EAAE,KAAK,CAAC;QACrB,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,MAAM,CAAC,EAAE,KAAK,CAAC;KAChB,CAAC;IACF,gBAAgB,CAAC,EAAE;QACjB,YAAY,CAAC,EAAE,UAAU,CAAC;QAC1B,cAAc,CAAC,EAAE,UAAU,CAAC;QAC5B,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,WAAW,CAAC,EAAE,KAAK,CAAC;KACrB,CAAC;CACH;AAED,UAAU,WAAY,SAAQ,SAAS;IACrC,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,KAAK,CAAC;CACjB;;AAED,wBAEG;AAEH,YAAY,EAAC,aAAa,EAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"styleUtils.d.ts","sourceRoot":"","sources":["../../../src/styleUtils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,iDAAiD,CAAC;AAEnF,KAAK,oBAAoB,GAAG,OAAO,CAAC;KACjC,CAAC,IAAI,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;CACtD,CAAC,CAAC;AAmEH,iBAAS,6BAA6B,CAAC,KAAK,EAAE,oBAAoB,GAAG,SAAS,GAAG,aAAa,CAiB7F;AAED,iBAAS,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAEjE;AAED,YAAY,EAAC,oBAAoB,EAAC,CAAC;AAEnC,OAAO,EAAC,6BAA6B,EAAE,2BAA2B,EAAC,CAAC"}
1
+ {"version":3,"file":"styleUtils.d.ts","sourceRoot":"","sources":["../../../src/styleUtils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,iDAAiD,CAAC;AAEnF,KAAK,oBAAoB,GAAG,OAAO,CAAC;KACjC,CAAC,IAAI,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;CACtD,CAAC,CAAC;AA0EH,iBAAS,6BAA6B,CAAC,KAAK,EAAE,oBAAoB,GAAG,SAAS,GAAG,aAAa,CAiB7F;AAED,iBAAS,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAEjE;AAED,YAAY,EAAC,oBAAoB,EAAC,CAAC;AAEnC,OAAO,EAAC,6BAA6B,EAAE,2BAA2B,EAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@expensify/react-native-live-markdown",
3
- "version": "0.1.270",
3
+ "version": "0.1.272",
4
4
  "description": "Drop-in replacement for React Native's TextInput component with Markdown formatting.",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -87,7 +87,7 @@
87
87
  "eslint-plugin-prettier": "^4.0.0",
88
88
  "eslint-plugin-promise": "^6.1.1",
89
89
  "eslint-plugin-tsdoc": "^0.2.17",
90
- "expensify-common": "2.0.115",
90
+ "expensify-common": "2.0.134",
91
91
  "jest": "^29.6.3",
92
92
  "jest-environment-jsdom": "^29.7.0",
93
93
  "nodemon": "^3.1.3",
@@ -9,6 +9,7 @@ interface MarkdownStyle {
9
9
  };
10
10
  emoji: {
11
11
  fontSize: Float;
12
+ fontFamily: string;
12
13
  };
13
14
  link: {
14
15
  color: ColorValue;
package/src/styleUtils.ts CHANGED
@@ -10,6 +10,12 @@ const FONT_FAMILY_MONOSPACE = Platform.select({
10
10
  default: 'monospace',
11
11
  });
12
12
 
13
+ const FONT_FAMILY_EMOJI = Platform.select({
14
+ ios: 'Apple Color Emoji',
15
+ android: 'Noto Color Emoji',
16
+ default: 'Apple Color Emoji, Segoe UI Emoji, Noto Color Emoji',
17
+ });
18
+
13
19
  function makeDefaultMarkdownStyle(): MarkdownStyle {
14
20
  return {
15
21
  syntax: {
@@ -23,6 +29,7 @@ function makeDefaultMarkdownStyle(): MarkdownStyle {
23
29
  },
24
30
  emoji: {
25
31
  fontSize: 20,
32
+ fontFamily: FONT_FAMILY_EMOJI,
26
33
  },
27
34
  blockquote: {
28
35
  borderColor: 'gray',
@@ -1,11 +0,0 @@
1
- package com.expensify.livemarkdown.spans;
2
-
3
- import android.text.style.AbsoluteSizeSpan;
4
-
5
- import com.facebook.react.uimanager.PixelUtil;
6
-
7
- public class MarkdownEmojiSpan extends AbsoluteSizeSpan implements MarkdownSpan {
8
- public MarkdownEmojiSpan(float fontSize) {
9
- super((int) PixelUtil.toPixelFromDIP(fontSize), false);
10
- }
11
- }