@react-native-vector-icons/common 12.4.1 → 12.4.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.
Files changed (40) hide show
  1. package/lib/commonjs/create-icon-set.js +2 -3
  2. package/lib/commonjs/create-icon-set.js.map +1 -1
  3. package/lib/commonjs/create-icon-source-cache.js +3 -26
  4. package/lib/commonjs/create-icon-source-cache.js.map +1 -1
  5. package/lib/commonjs/dynamicLoading/dynamic-loading-setting.js +3 -0
  6. package/lib/commonjs/dynamicLoading/dynamic-loading-setting.js.map +1 -1
  7. package/lib/commonjs/get-image-library.js +9 -6
  8. package/lib/commonjs/get-image-library.js.map +1 -1
  9. package/lib/commonjs/get-image-source.js +15 -28
  10. package/lib/commonjs/get-image-source.js.map +1 -1
  11. package/lib/module/create-icon-set.js +1 -1
  12. package/lib/module/create-icon-set.js.map +1 -1
  13. package/lib/module/create-icon-source-cache.js +3 -26
  14. package/lib/module/create-icon-source-cache.js.map +1 -1
  15. package/lib/module/dynamicLoading/dynamic-loading-setting.js +3 -0
  16. package/lib/module/dynamicLoading/dynamic-loading-setting.js.map +1 -1
  17. package/lib/module/get-image-library.js +9 -6
  18. package/lib/module/get-image-library.js.map +1 -1
  19. package/lib/module/get-image-source.js +15 -28
  20. package/lib/module/get-image-source.js.map +1 -1
  21. package/lib/typescript/commonjs/src/create-icon-source-cache.d.ts +2 -12
  22. package/lib/typescript/commonjs/src/create-icon-source-cache.d.ts.map +1 -1
  23. package/lib/typescript/commonjs/src/dynamicLoading/dynamic-loading-setting.d.ts +19 -1
  24. package/lib/typescript/commonjs/src/dynamicLoading/dynamic-loading-setting.d.ts.map +1 -1
  25. package/lib/typescript/commonjs/src/get-image-library.d.ts.map +1 -1
  26. package/lib/typescript/commonjs/src/get-image-source.d.ts +1 -1
  27. package/lib/typescript/commonjs/src/get-image-source.d.ts.map +1 -1
  28. package/lib/typescript/module/src/create-icon-source-cache.d.ts +2 -12
  29. package/lib/typescript/module/src/create-icon-source-cache.d.ts.map +1 -1
  30. package/lib/typescript/module/src/dynamicLoading/dynamic-loading-setting.d.ts +19 -1
  31. package/lib/typescript/module/src/dynamicLoading/dynamic-loading-setting.d.ts.map +1 -1
  32. package/lib/typescript/module/src/get-image-library.d.ts.map +1 -1
  33. package/lib/typescript/module/src/get-image-source.d.ts +1 -1
  34. package/lib/typescript/module/src/get-image-source.d.ts.map +1 -1
  35. package/package.json +1 -1
  36. package/src/create-icon-set.tsx +1 -1
  37. package/src/create-icon-source-cache.ts +5 -23
  38. package/src/dynamicLoading/dynamic-loading-setting.ts +23 -1
  39. package/src/get-image-library.ts +6 -4
  40. package/src/get-image-source.ts +14 -31
@@ -6,13 +6,12 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.createIconSet = createIconSet;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
- var _createIconSourceCache = _interopRequireDefault(require("./create-icon-source-cache.js"));
9
+ var _createIconSourceCache = require("./create-icon-source-cache.js");
10
10
  var _defaults = require("./defaults.js");
11
11
  var _dynamicFontLoading = require("./dynamicLoading/dynamic-font-loading.js");
12
12
  var _dynamicLoadingSetting = require("./dynamicLoading/dynamic-loading-setting.js");
13
13
  var _getImageSource = require("./get-image-source.js");
14
14
  var _jsxRuntime = require("react/jsx-runtime");
15
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
15
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
17
16
  // eslint-disable-next-line import/no-extraneous-dependencies
18
17
 
@@ -94,7 +93,7 @@ function createIconSet(glyphMap, postScriptNameOrOptions, fontFileNameParam, fon
94
93
  ...props
95
94
  }));
96
95
  WrappedIcon.displayName = `Icon(${postScriptName})`;
97
- const imageSourceCache = (0, _createIconSourceCache.default)();
96
+ const imageSourceCache = (0, _createIconSourceCache.createIconSourceCache)();
98
97
  const getImageSource = async (name, size, color) => {
99
98
  if (typeof postScriptNameOrOptions === 'object' && typeof postScriptNameOrOptions.fontSource !== 'undefined') {
100
99
  await _dynamicFontLoading.dynamicLoader.loadFontAsync(fontReference, postScriptNameOrOptions.fontSource);
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_createIconSourceCache","_interopRequireDefault","_defaults","_dynamicFontLoading","_dynamicLoadingSetting","_getImageSource","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","createIconSet","glyphMap","postScriptNameOrOptions","fontFileNameParam","fontStyleParam","postScriptName","fontFileName","fontStyle","fontBasename","replace","fontReference","Platform","select","windows","android","styleOverrides","fontFamily","fontWeight","resolveGlyph","name","glyph","String","fromCodePoint","Icon","size","DEFAULT_ICON_SIZE","color","DEFAULT_ICON_COLOR","style","children","allowFontScaling","innerRef","props","isFontLoaded","setIsFontLoaded","React","useState","isDynamicLoadingEnabled","dynamicLoader","isLoaded","useEffect","isMounted","fontSource","loadFontAsync","finally","styleDefaults","fontSize","newProps","jsxs","Text","ref","selectable","WrappedIcon","forwardRef","jsx","displayName","imageSourceCache","createIconSourceCache","getImageSource","getImageSourceImpl","getImageSourceSync","getImageSourceSyncImpl","IconNamespace","assign"],"sourceRoot":"../../src","sources":["create-icon-set.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_createIconSourceCache","_defaults","_dynamicFontLoading","_dynamicLoadingSetting","_getImageSource","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","createIconSet","glyphMap","postScriptNameOrOptions","fontFileNameParam","fontStyleParam","postScriptName","fontFileName","fontStyle","fontBasename","replace","fontReference","Platform","select","windows","android","styleOverrides","fontFamily","fontWeight","resolveGlyph","name","glyph","String","fromCodePoint","Icon","size","DEFAULT_ICON_SIZE","color","DEFAULT_ICON_COLOR","style","children","allowFontScaling","innerRef","props","isFontLoaded","setIsFontLoaded","React","useState","isDynamicLoadingEnabled","dynamicLoader","isLoaded","useEffect","isMounted","fontSource","loadFontAsync","finally","styleDefaults","fontSize","newProps","jsxs","Text","ref","selectable","WrappedIcon","forwardRef","jsx","displayName","imageSourceCache","createIconSourceCache","getImageSource","getImageSourceImpl","getImageSourceSync","getImageSourceSyncImpl","IconNamespace","assign"],"sourceRoot":"../../src","sources":["create-icon-set.tsx"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,sBAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AACA,IAAAI,mBAAA,GAAAJ,OAAA;AACA,IAAAK,sBAAA,GAAAL,OAAA;AAEA,IAAAM,eAAA,GAAAN,OAAA;AAAwH,IAAAO,WAAA,GAAAP,OAAA;AAAA,SAAAD,wBAAAS,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAX,uBAAA,YAAAA,CAAAS,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAVxH;;AAEA;;AAqDO,SAASkB,aAAaA,CAC3BC,QAAY,EACZC,uBAAsD,EACtDC,iBAA0B,EAC1BC,cAAmC,EAChB;EACnB,MAAM;IAAEC,cAAc;IAAEC,YAAY;IAAEC;EAAU,CAAC,GAC/C,OAAOL,uBAAuB,KAAK,QAAQ,GACvC;IACEG,cAAc,EAAEH,uBAAuB;IACvCI,YAAY,EAAEH,iBAAiB;IAC/BI,SAAS,EAAEH;EACb,CAAC,GACDF,uBAAuB;EAE7B,MAAMM,YAAY,GAAGF,YAAY,GAAGA,YAAY,CAACG,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,GAAGJ,cAAc;EAE7F,MAAMK,aAAa,GAAGC,qBAAQ,CAACC,MAAM,CAAC;IACpCC,OAAO,EAAE,WAAWP,YAAY,IAAID,cAAc,EAAE;IACpDS,OAAO,EAAEN,YAAY;IACrBjB,OAAO,EAAEc;EACX,CAAC,CAAC;EAEF,MAAMU,cAAkC,GAAG;IACzCC,UAAU,EAAEN,aAAa;IACzBO,UAAU,EAAE,QAAQ;IACpBV,SAAS,EAAE;EACb,CAAC;EAED,MAAMW,YAAY,GAAIC,IAAc,IAAa;IAC/C,MAAMC,KAAK,GAAGnB,QAAQ,CAACkB,IAAI,CAAC,IAAI,GAAG;IAEnC,IAAI,OAAOC,KAAK,KAAK,QAAQ,EAAE;MAC7B,OAAOC,MAAM,CAACC,aAAa,CAACF,KAAK,CAAC;IACpC;IAEA,OAAOA,KAAK;EACd,CAAC;EAED,MAAMG,IAAI,GAAGA,CAAC;IACZJ,IAAI;IACJK,IAAI,GAAGC,2BAAiB;IACxBC,KAAK,GAAGC,4BAAkB;IAC1BC,KAAK;IACLC,QAAQ;IACRC,gBAAgB,GAAG,KAAK;IACxBC,QAAQ;IACR,GAAGC;EACgB,CAAC,KAAK;IACzB,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAGC,cAAK,CAACC,QAAQ,CACpD,IAAAC,8CAAuB,EAAC,CAAC,GAAGC,iCAAa,CAACC,QAAQ,CAAC7B,aAAa,CAAC,GAAG,IACtE,CAAC;IACD,MAAMU,KAAK,GAAGa,YAAY,IAAId,IAAI,GAAGD,YAAY,CAACC,IAAI,CAAC,GAAG,EAAE;;IAE5D;IACA,IAAAqB,gBAAS,EAAC,MAAM;MACd,IAAIC,SAAS,GAAG,IAAI;MAEpB,IACE,CAACR,YAAY,IACb,OAAO/B,uBAAuB,KAAK,QAAQ,IAC3C,OAAOA,uBAAuB,CAACwC,UAAU,KAAK,WAAW,EACzD;QACAJ,iCAAa,CAACK,aAAa,CAACjC,aAAa,EAAER,uBAAuB,CAACwC,UAAU,CAAC,CAACE,OAAO,CAAC,MAAM;UAC3F,IAAIH,SAAS,EAAE;YACbP,eAAe,CAAC,IAAI,CAAC;UACvB;QACF,CAAC,CAAC;MACJ;MACA,OAAO,MAAM;QACXO,SAAS,GAAG,KAAK;MACnB,CAAC;IACH,CAAC,EAAE,EAAE,CAAC;IAEN,MAAMI,aAAa,GAAG;MACpBC,QAAQ,EAAEtB,IAAI;MACdE;IACF,CAAC;IAED,MAAMqB,QAAmB,GAAG;MAC1B,GAAGf,KAAK;MACRJ,KAAK,EAAE,CAACiB,aAAa,EAAEjB,KAAK,EAAEb,cAAc,EAAER,SAAS,IAAI,CAAC,CAAC,CAAC;MAC9DuB;IACF,CAAC;IAED,oBACE,IAAAlD,WAAA,CAAAoE,IAAA,EAAC1E,YAAA,CAAA2E,IAAI;MAACC,GAAG,EAAEnB,QAAS;MAACoB,UAAU,EAAE,KAAM;MAAA,GAAKJ,QAAQ;MAAAlB,QAAA,GACjDT,KAAK,EACLS,QAAQ;IAAA,CACL,CAAC;EAEX,CAAC;EAED,MAAMuB,WAAW,gBAAG,IAAAC,iBAAU,EAAyC,CAACrB,KAAK,EAAEkB,GAAG,kBAChF,IAAAtE,WAAA,CAAA0E,GAAA,EAAC/B,IAAI;IAACQ,QAAQ,EAAEmB,GAAI;IAAA,GAAKlB;EAAK,CAAG,CAClC,CAAC;EACFoB,WAAW,CAACG,WAAW,GAAG,QAAQlD,cAAc,GAAG;EAEnD,MAAMmD,gBAAgB,GAAG,IAAAC,4CAAqB,EAAC,CAAC;EAEhD,MAAMC,cAAgD,GAAG,MAAAA,CAAOvC,IAAI,EAAEK,IAAI,EAAEE,KAAK,KAAK;IACpF,IAAI,OAAOxB,uBAAuB,KAAK,QAAQ,IAAI,OAAOA,uBAAuB,CAACwC,UAAU,KAAK,WAAW,EAAE;MAC5G,MAAMJ,iCAAa,CAACK,aAAa,CAACjC,aAAa,EAAER,uBAAuB,CAACwC,UAAU,CAAC;IACtF;IACA,OAAO,IAAAiB,8BAAkB,EAACH,gBAAgB,EAAE9C,aAAa,EAAEQ,YAAY,CAACC,IAAI,CAAC,EAAEK,IAAI,EAAEE,KAAK,CAAC;EAC7F,CAAC;EAED,MAAMkC,kBAAwD,GAAGA,CAACzC,IAAI,EAAEK,IAAI,EAAEE,KAAK,KACjF,IAAAmC,kCAAsB,EAACL,gBAAgB,EAAE9C,aAAa,EAAEQ,YAAY,CAACC,IAAI,CAAC,EAAEK,IAAI,EAAEE,KAAK,CAAC;EAE1F,MAAMoC,aAAa,GAAGjE,MAAM,CAACkE,MAAM,CAACX,WAAW,EAAE;IAC/CM,cAAc;IACdE;EACF,CAAC,CAAC;EAEF,OAAOE,aAAa;AACtB","ignoreList":[]}
@@ -3,36 +3,13 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = createIconSourceCache;
7
- const TYPE_VALUE = 'value';
8
- const TYPE_ERROR = 'error';
6
+ exports.createIconSourceCache = createIconSourceCache;
9
7
  function createIconSourceCache() {
10
8
  const cache = new Map();
11
- const setValue = (key, value) => cache.set(key, {
12
- type: TYPE_VALUE,
13
- data: value
14
- });
15
- const setError = (key, error) => cache.set(key, {
16
- type: TYPE_ERROR,
17
- data: error
18
- });
19
- const get = key => {
20
- const value = cache.get(key);
21
- if (!value) {
22
- return undefined;
23
- }
24
- const {
25
- type,
26
- data
27
- } = value;
28
- if (type === TYPE_ERROR) {
29
- throw data;
30
- }
31
- return data;
32
- };
9
+ const setValue = (key, value) => cache.set(key, value);
10
+ const get = key => cache.get(key);
33
11
  return {
34
12
  setValue,
35
- setError,
36
13
  get
37
14
  };
38
15
  }
@@ -1 +1 @@
1
- {"version":3,"names":["TYPE_VALUE","TYPE_ERROR","createIconSourceCache","cache","Map","setValue","key","value","set","type","data","setError","error","get","undefined"],"sourceRoot":"../../src","sources":["create-icon-source-cache.ts"],"mappings":";;;;;;AAAA,MAAMA,UAAU,GAAG,OAAO;AAC1B,MAAMC,UAAU,GAAG,OAAO;AAMX,SAASC,qBAAqBA,CAAA,EAAG;EAC9C,MAAMC,KAAK,GAAG,IAAIC,GAAG,CAAgB,CAAC;EAEtC,MAAMC,QAAQ,GAAGA,CAACC,GAAW,EAAEC,KAAgB,KAAKJ,KAAK,CAACK,GAAG,CAACF,GAAG,EAAE;IAAEG,IAAI,EAAET,UAAU;IAAEU,IAAI,EAAEH;EAAM,CAAC,CAAC;EAErG,MAAMI,QAAQ,GAAGA,CAACL,GAAW,EAAEM,KAAY,KAAKT,KAAK,CAACK,GAAG,CAACF,GAAG,EAAE;IAAEG,IAAI,EAAER,UAAU;IAAES,IAAI,EAAEE;EAAM,CAAC,CAAC;EAEjG,MAAMC,GAAG,GAAIP,GAAW,IAAK;IAC3B,MAAMC,KAAK,GAAGJ,KAAK,CAACU,GAAG,CAACP,GAAG,CAAC;IAC5B,IAAI,CAACC,KAAK,EAAE;MACV,OAAOO,SAAS;IAClB;IAEA,MAAM;MAAEL,IAAI;MAAEC;IAAK,CAAC,GAAGH,KAAK;IAC5B,IAAIE,IAAI,KAAKR,UAAU,EAAE;MACvB,MAAMS,IAAI;IACZ;IACA,OAAOA,IAAI;EACb,CAAC;EAED,OAAO;IAAEL,QAAQ;IAAEM,QAAQ;IAAEE;EAAI,CAAC;AACpC","ignoreList":[]}
1
+ {"version":3,"names":["createIconSourceCache","cache","Map","setValue","key","value","set","get"],"sourceRoot":"../../src","sources":["create-icon-source-cache.ts"],"mappings":";;;;;;AAEO,SAASA,qBAAqBA,CAAA,EAAG;EACtC,MAAMC,KAAK,GAAG,IAAIC,GAAG,CAAoB,CAAC;EAE1C,MAAMC,QAAQ,GAAGA,CAACC,GAAW,EAAEC,KAAgB,KAAKJ,KAAK,CAACK,GAAG,CAACF,GAAG,EAAEC,KAAK,CAAC;EAEzE,MAAME,GAAG,GAAIH,GAAW,IAAKH,KAAK,CAACM,GAAG,CAACH,GAAG,CAAC;EAE3C,OAAO;IAAED,QAAQ;IAAEI;EAAI,CAAC;AAC1B","ignoreList":[]}
@@ -10,6 +10,9 @@ exports.setDynamicLoadingErrorCallback = exports.setDynamicLoadingEnabled = expo
10
10
  var _reactNative = require("react-native");
11
11
  // this is a file:// uri on native, or an object with uri and display on web
12
12
 
13
+ // RenderToImageResult needs to be usable as the `source` prop for image,
14
+ // so it must stay compatible with ImageURISource type
15
+
13
16
  // biome-ignore lint/suspicious/noExplicitAny: this is used internally with globalThis
14
17
  function getIsDynamicLoadingSupported(globalObj) {
15
18
  return globalObj?.expo && (_reactNative.Platform.OS === 'web' || typeof globalObj.expo.modules?.ExpoAsset?.downloadAsync === 'function') && typeof globalObj.expo.modules?.ExpoFontLoader?.getLoadedFonts === 'function' && typeof globalObj.expo.modules?.ExpoFontLoader?.loadAsync === 'function';
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","getIsDynamicLoadingSupported","globalObj","expo","Platform","OS","modules","ExpoAsset","downloadAsync","ExpoFontLoader","getLoadedFonts","loadAsync","getIsRenderToImageSupported","ExpoFontUtils","renderToImageAsync","assertExpoModulesPresent","Error","dynamicFontLoadingOverride","isDynamicLoadingSupported","globalThis","exports","setDynamicLoadingEnabled","value","process","env","NODE_ENV","hasNecessaryExpoModules","message","console","error","isDynamicLoadingEnabled","dynamicLoadingErrorCallback","setDynamicLoadingErrorCallback","callback","getErrorCallback"],"sourceRoot":"../../../src","sources":["dynamicLoading/dynamic-loading-setting.ts"],"mappings":";;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAUA;;AAyCA;AACA,SAASC,4BAA4BA,CAACC,SAAc,EAElD;EACA,OACEA,SAAS,EAAEC,IAAI,KACdC,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAI,OAAOH,SAAS,CAACC,IAAI,CAACG,OAAO,EAAEC,SAAS,EAAEC,aAAa,KAAK,UAAU,CAAC,IACjG,OAAON,SAAS,CAACC,IAAI,CAACG,OAAO,EAAEG,cAAc,EAAEC,cAAc,KAAK,UAAU,IAC5E,OAAOR,SAAS,CAACC,IAAI,CAACG,OAAO,EAAEG,cAAc,EAAEE,SAAS,KAAK,UAAU;AAE3E;;AAEA;AACO,SAASC,2BAA2BA,CAACV,SAAc,EAMxD;EACA,OAAOA,SAAS,EAAEC,IAAI,IAAI,OAAOD,SAAS,CAACC,IAAI,CAACG,OAAO,EAAEO,aAAa,EAAEC,kBAAkB,KAAK,UAAU;AAC3G;AAEO,SAASC,wBAAwBA,CAACb,SAAkB,EAAiD;EAC1G,IAAI,CAACD,4BAA4B,CAACC,SAAS,CAAC,EAAE;IAC5C,MAAM,IAAIc,KAAK,CAAC,2EAA2E,CAAC;EAC9F;AACF;;AAEA;AACA;AACA;;AAEA,IAAIC,0BAA0C,GAAG,IAAI;AAE9C,MAAMC,yBAAyB,GAAGA,CAAA,KAAMjB,4BAA4B,CAACkB,UAAU,CAAC;;AAEvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPAC,OAAA,CAAAF,yBAAA,GAAAA,yBAAA;AAQO,MAAMG,wBAAwB,GAAIC,KAAc,IAAc;EACnE,IAAI,CAACrB,4BAA4B,CAACkB,UAAU,CAAC,EAAE;IAC7C,IAAII,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,IAAI,CAAC,CAACH,KAAK,EAAE;MACpD,MAAMI,uBAAuB,GAC3B,CAACtB,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAI,CAAC,CAACc,UAAU,CAAChB,IAAI,EAAEG,OAAO,EAAEC,SAAS,KAAK,CAAC,CAACY,UAAU,CAAChB,IAAI,EAAEG,OAAO,EAAEG,cAAc;MAChH,MAAMkB,OAAO,GAAGD,uBAAuB,GACnC,sGAAsG,GACtG,sHAAsH;MAC1HE,OAAO,CAACC,KAAK,CAACF,OAAO,CAAC,CAAC,CAAC;IAC1B;IACA,OAAO,KAAK;EACd;EAEAV,0BAA0B,GAAG,CAAC,CAACK,KAAK;EAEpC,OAAO,IAAI;AACb,CAAC;;AAED;AACA;AACA;AAFAF,OAAA,CAAAC,wBAAA,GAAAA,wBAAA;AAGO,MAAMS,uBAAuB,GAAGA,CAAA,KACrCb,0BAA0B,IAAIhB,4BAA4B,CAACkB,UAAU,CAAC;AAACC,OAAA,CAAAU,uBAAA,GAAAA,uBAAA;AAIzE,IAAIC,2BAAsD;;AAE1D;AACA;AACA;AACO,MAAMC,8BAA8B,GAAIC,QAAuB,IAAK;EACzEF,2BAA2B,GAAGE,QAAQ;AACxC,CAAC;AAACb,OAAA,CAAAY,8BAAA,GAAAA,8BAAA;AAEK,MAAME,gBAAgB,GAAGA,CAAA,KAAMH,2BAA2B;AAACX,OAAA,CAAAc,gBAAA,GAAAA,gBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","getIsDynamicLoadingSupported","globalObj","expo","Platform","OS","modules","ExpoAsset","downloadAsync","ExpoFontLoader","getLoadedFonts","loadAsync","getIsRenderToImageSupported","ExpoFontUtils","renderToImageAsync","assertExpoModulesPresent","Error","dynamicFontLoadingOverride","isDynamicLoadingSupported","globalThis","exports","setDynamicLoadingEnabled","value","process","env","NODE_ENV","hasNecessaryExpoModules","message","console","error","isDynamicLoadingEnabled","dynamicLoadingErrorCallback","setDynamicLoadingErrorCallback","callback","getErrorCallback"],"sourceRoot":"../../../src","sources":["dynamicLoading/dynamic-loading-setting.ts"],"mappings":";;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAUA;;AAUA;AACA;;AAoDA;AACA,SAASC,4BAA4BA,CAACC,SAAc,EAElD;EACA,OACEA,SAAS,EAAEC,IAAI,KACdC,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAI,OAAOH,SAAS,CAACC,IAAI,CAACG,OAAO,EAAEC,SAAS,EAAEC,aAAa,KAAK,UAAU,CAAC,IACjG,OAAON,SAAS,CAACC,IAAI,CAACG,OAAO,EAAEG,cAAc,EAAEC,cAAc,KAAK,UAAU,IAC5E,OAAOR,SAAS,CAACC,IAAI,CAACG,OAAO,EAAEG,cAAc,EAAEE,SAAS,KAAK,UAAU;AAE3E;;AAEA;AACO,SAASC,2BAA2BA,CAACV,SAAc,EAMxD;EACA,OAAOA,SAAS,EAAEC,IAAI,IAAI,OAAOD,SAAS,CAACC,IAAI,CAACG,OAAO,EAAEO,aAAa,EAAEC,kBAAkB,KAAK,UAAU;AAC3G;AAEO,SAASC,wBAAwBA,CAACb,SAAkB,EAAiD;EAC1G,IAAI,CAACD,4BAA4B,CAACC,SAAS,CAAC,EAAE;IAC5C,MAAM,IAAIc,KAAK,CAAC,2EAA2E,CAAC;EAC9F;AACF;;AAEA;AACA;AACA;;AAEA,IAAIC,0BAA0C,GAAG,IAAI;AAE9C,MAAMC,yBAAyB,GAAGA,CAAA,KAAMjB,4BAA4B,CAACkB,UAAU,CAAC;;AAEvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPAC,OAAA,CAAAF,yBAAA,GAAAA,yBAAA;AAQO,MAAMG,wBAAwB,GAAIC,KAAc,IAAc;EACnE,IAAI,CAACrB,4BAA4B,CAACkB,UAAU,CAAC,EAAE;IAC7C,IAAII,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,IAAI,CAAC,CAACH,KAAK,EAAE;MACpD,MAAMI,uBAAuB,GAC3B,CAACtB,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAI,CAAC,CAACc,UAAU,CAAChB,IAAI,EAAEG,OAAO,EAAEC,SAAS,KAAK,CAAC,CAACY,UAAU,CAAChB,IAAI,EAAEG,OAAO,EAAEG,cAAc;MAChH,MAAMkB,OAAO,GAAGD,uBAAuB,GACnC,sGAAsG,GACtG,sHAAsH;MAC1HE,OAAO,CAACC,KAAK,CAACF,OAAO,CAAC,CAAC,CAAC;IAC1B;IACA,OAAO,KAAK;EACd;EAEAV,0BAA0B,GAAG,CAAC,CAACK,KAAK;EAEpC,OAAO,IAAI;AACb,CAAC;;AAED;AACA;AACA;AAFAF,OAAA,CAAAC,wBAAA,GAAAA,wBAAA;AAGO,MAAMS,uBAAuB,GAAGA,CAAA,KACrCb,0BAA0B,IAAIhB,4BAA4B,CAACkB,UAAU,CAAC;AAACC,OAAA,CAAAU,uBAAA,GAAAA,uBAAA;AAIzE,IAAIC,2BAAsD;;AAE1D;AACA;AACA;AACO,MAAMC,8BAA8B,GAAIC,QAAuB,IAAK;EACzEF,2BAA2B,GAAGE,QAAQ;AACxC,CAAC;AAACb,OAAA,CAAAY,8BAAA,GAAAA,8BAAA;AAEK,MAAME,gBAAgB,GAAGA,CAAA,KAAMH,2BAA2B;AAACX,OAAA,CAAAc,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -27,17 +27,20 @@ const ensureGetImageAvailable = () => {
27
27
  ExpoFontUtils
28
28
  } = globalRef.expo.modules;
29
29
  return {
30
- getImageForFont: async (fontReference, glyph, size, color) => ExpoFontUtils.renderToImageAsync(glyph, {
31
- fontFamily: fontReference,
32
- size,
33
- color
34
- }),
30
+ getImageForFont: async (fontReference, glyph, size, color) => {
31
+ const result = await ExpoFontUtils.renderToImageAsync(glyph, {
32
+ fontFamily: fontReference,
33
+ size,
34
+ color
35
+ });
36
+ return result.uri;
37
+ },
35
38
  getImageForFontSync: () => {
36
39
  throw new Error('You attempted to call `getImageForFontSync`. Expo dev client with `@react-native-vector-icons/get-image` installed is required for this. Alternatively, call `getImageForFont` or generate the image yourself and bundle it with the app.');
37
40
  }
38
41
  };
39
42
  }
40
- throw new Error('Error in getImageSource / getImageSourceSync: You need to either (1) install `@react-native-vector-icons/get-image` or (2) use Expo SDK 53+ (Expo dev client or Expo Go). Check your setup and rebuild the app.');
43
+ throw new Error('Error in getImageSource / getImageSourceSync: You need to either (1) install `@react-native-vector-icons/get-image` or (2) use Expo SDK 54+ (Expo dev client or Expo Go). Check your setup and rebuild the app.');
41
44
  };
42
45
  exports.ensureGetImageAvailable = ensureGetImageAvailable;
43
46
  //# sourceMappingURL=get-image-library.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_dynamicLoadingSetting","require","NativeIconAPI","globalRef","globalThis","hasExpoRenderToImage","getIsRenderToImageSupported","ensureGetImageAvailable","ensureNativeModuleAvailable","ExpoFontUtils","expo","modules","getImageForFont","fontReference","glyph","size","color","renderToImageAsync","fontFamily","getImageForFontSync","Error","exports"],"sourceRoot":"../../src","sources":["get-image-library.ts"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AAEA;AACA,IAAIC,aAA2E,GAAG,IAAI;AAEtF,IAAI;EACF;EACAA,aAAa,GAAGD,OAAO,CAAC,sCAAsC,CAAC;AACjE,CAAC,CAAC,MAAM;EACN;EACA;EACA;AAAA;AAGF,MAAME,SAAS,GAAGC,UAAU;AAC5B,MAAMC,oBAAoB,GAAG,IAAAC,kDAA2B,EAACH,SAAS,CAAC;AAE5D,MAAMI,uBAAuB,GAAGA,CAAA,KAAM;EAC3C,IAAIL,aAAa,EAAE;IACjBA,aAAa,CAACM,2BAA2B,CAAC,CAAC;IAC3C,OAAON,aAAa;EACtB;EACA,IAAIG,oBAAoB,EAAE;IACxB,MAAM;MAAEI;IAAc,CAAC,GAAGN,SAAS,CAACO,IAAI,CAACC,OAAO;IAChD,OAAO;MACLC,eAAe,EAAE,MAAAA,CAAOC,aAAqB,EAAEC,KAAa,EAAEC,IAAY,EAAEC,KAAa,KACvFP,aAAa,CAACQ,kBAAkB,CAACH,KAAK,EAAE;QACtCI,UAAU,EAAEL,aAAa;QACzBE,IAAI;QACJC;MACF,CAAC,CAAC;MACJG,mBAAmB,EAAEA,CAAA,KAAM;QACzB,MAAM,IAAIC,KAAK,CACb,2OACF,CAAC;MACH;IACF,CAAC;EACH;EACA,MAAM,IAAIA,KAAK,CACb,iNACF,CAAC;AACH,CAAC;AAACC,OAAA,CAAAd,uBAAA,GAAAA,uBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_dynamicLoadingSetting","require","NativeIconAPI","globalRef","globalThis","hasExpoRenderToImage","getIsRenderToImageSupported","ensureGetImageAvailable","ensureNativeModuleAvailable","ExpoFontUtils","expo","modules","getImageForFont","fontReference","glyph","size","color","result","renderToImageAsync","fontFamily","uri","getImageForFontSync","Error","exports"],"sourceRoot":"../../src","sources":["get-image-library.ts"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AAEA;AACA,IAAIC,aAA2E,GAAG,IAAI;AAEtF,IAAI;EACF;EACAA,aAAa,GAAGD,OAAO,CAAC,sCAAsC,CAAC;AACjE,CAAC,CAAC,MAAM;EACN;EACA;EACA;AAAA;AAGF,MAAME,SAAS,GAAGC,UAAU;AAC5B,MAAMC,oBAAoB,GAAG,IAAAC,kDAA2B,EAACH,SAAS,CAAC;AAE5D,MAAMI,uBAAuB,GAAGA,CAAA,KAAM;EAC3C,IAAIL,aAAa,EAAE;IACjBA,aAAa,CAACM,2BAA2B,CAAC,CAAC;IAC3C,OAAON,aAAa;EACtB;EACA,IAAIG,oBAAoB,EAAE;IACxB,MAAM;MAAEI;IAAc,CAAC,GAAGN,SAAS,CAACO,IAAI,CAACC,OAAO;IAChD,OAAO;MACLC,eAAe,EAAE,MAAAA,CAAOC,aAAqB,EAAEC,KAAa,EAAEC,IAAY,EAAEC,KAAa,KAAK;QAC5F,MAAMC,MAAM,GAAG,MAAMR,aAAa,CAACS,kBAAkB,CAACJ,KAAK,EAAE;UAC3DK,UAAU,EAAEN,aAAa;UACzBE,IAAI;UACJC;QACF,CAAC,CAAC;QACF,OAAOC,MAAM,CAACG,GAAG;MACnB,CAAC;MACDC,mBAAmB,EAAEA,CAAA,KAAM;QACzB,MAAM,IAAIC,KAAK,CACb,2OACF,CAAC;MACH;IACF,CAAC;EACH;EACA,MAAM,IAAIA,KAAK,CACb,iNACF,CAAC;AACH,CAAC;AAACC,OAAA,CAAAhB,uBAAA,GAAAA,uBAAA","ignoreList":[]}
@@ -13,22 +13,16 @@ const getImageSourceSync = (imageSourceCache, fontReference, glyph, size = _defa
13
13
  const cacheKey = `${glyph}:${size}:${String(processedColor)}`;
14
14
  const maybeCachedValue = imageSourceCache.get(cacheKey);
15
15
  if (maybeCachedValue !== undefined) {
16
- // FIXME: Should this check if it's an error and throw it again?
17
16
  return maybeCachedValue;
18
17
  }
19
- try {
20
- const imagePath = NativeIconAPI.getImageForFontSync(fontReference, glyph, size, processedColor // FIXME what if a non existent colour was passed in?
21
- );
22
- const value = {
23
- uri: imagePath,
24
- scale: _reactNative.PixelRatio.get()
25
- };
26
- imageSourceCache.setValue(cacheKey, value);
27
- return value;
28
- } catch (error) {
29
- imageSourceCache.setError(cacheKey, error);
30
- throw error;
31
- }
18
+ const imagePath = NativeIconAPI.getImageForFontSync(fontReference, glyph, size, processedColor // FIXME what if a non existent colour was passed in?,
19
+ );
20
+ const value = {
21
+ uri: imagePath,
22
+ scale: _reactNative.PixelRatio.get()
23
+ };
24
+ imageSourceCache.setValue(cacheKey, value);
25
+ return value;
32
26
  };
33
27
  exports.getImageSourceSync = getImageSourceSync;
34
28
  const getImageSource = async (imageSourceCache, fontReference, glyph, size = _defaults.DEFAULT_ICON_SIZE, color = _defaults.DEFAULT_ICON_COLOR) => {
@@ -37,22 +31,15 @@ const getImageSource = async (imageSourceCache, fontReference, glyph, size = _de
37
31
  const cacheKey = `${glyph}:${size}:${String(processedColor)}`;
38
32
  const maybeCachedValue = imageSourceCache.get(cacheKey);
39
33
  if (maybeCachedValue !== undefined) {
40
- // FIXME: Should this check if it's an error and throw it again?
41
34
  return maybeCachedValue;
42
35
  }
43
- try {
44
- const imagePath = await NativeIconAPI.getImageForFont(fontReference, glyph, size, processedColor // FIXME what if a non existent colour was passed in?
45
- );
46
- const value = {
47
- uri: imagePath,
48
- scale: _reactNative.PixelRatio.get()
49
- };
50
- imageSourceCache.setValue(cacheKey, value);
51
- return value;
52
- } catch (error) {
53
- imageSourceCache.setError(cacheKey, error);
54
- throw error;
55
- }
36
+ const imagePath = await NativeIconAPI.getImageForFont(fontReference, glyph, size, processedColor);
37
+ const value = {
38
+ uri: imagePath,
39
+ scale: _reactNative.PixelRatio.get()
40
+ };
41
+ imageSourceCache.setValue(cacheKey, value);
42
+ return value;
56
43
  };
57
44
  exports.getImageSource = getImageSource;
58
45
  //# sourceMappingURL=get-image-source.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_defaults","_getImageLibrary","getImageSourceSync","imageSourceCache","fontReference","glyph","size","DEFAULT_ICON_SIZE","color","DEFAULT_ICON_COLOR","NativeIconAPI","ensureGetImageAvailable","processedColor","processColor","cacheKey","String","maybeCachedValue","get","undefined","imagePath","getImageForFontSync","value","uri","scale","PixelRatio","setValue","error","setError","exports","getImageSource","getImageForFont"],"sourceRoot":"../../src","sources":["get-image-source.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAGA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AAEO,MAAMG,kBAAkB,GAAGA,CAChCC,gBAA0D,EAC1DC,aAAqB,EACrBC,KAAa,EACbC,IAAI,GAAGC,2BAAiB,EACxBC,KAAyB,GAAGC,4BAAkB,KAC3C;EACH,MAAMC,aAAa,GAAG,IAAAC,wCAAuB,EAAC,CAAC;EAE/C,MAAMC,cAAc,GAAG,IAAAC,yBAAY,EAACL,KAAK,CAAC;EAC1C,MAAMM,QAAQ,GAAG,GAAGT,KAAK,IAAIC,IAAI,IAAIS,MAAM,CAACH,cAAc,CAAC,EAAE;EAE7D,MAAMI,gBAAgB,GAAGb,gBAAgB,CAACc,GAAG,CAACH,QAAQ,CAAC;EACvD,IAAIE,gBAAgB,KAAKE,SAAS,EAAE;IAClC;IACA,OAAOF,gBAAgB;EACzB;EAEA,IAAI;IACF,MAAMG,SAAS,GAAGT,aAAa,CAACU,mBAAmB,CACjDhB,aAAa,EACbC,KAAK,EACLC,IAAI,EACJM,cAAc,CAAY;IAC5B,CAAC;IACD,MAAMS,KAAK,GAAG;MAAEC,GAAG,EAAEH,SAAS;MAAEI,KAAK,EAAEC,uBAAU,CAACP,GAAG,CAAC;IAAE,CAAC;IACzDd,gBAAgB,CAACsB,QAAQ,CAACX,QAAQ,EAAEO,KAAK,CAAC;IAC1C,OAAOA,KAAK;EACd,CAAC,CAAC,OAAOK,KAAK,EAAE;IACdvB,gBAAgB,CAACwB,QAAQ,CAACb,QAAQ,EAAEY,KAAc,CAAC;IACnD,MAAMA,KAAK;EACb;AACF,CAAC;AAACE,OAAA,CAAA1B,kBAAA,GAAAA,kBAAA;AAEK,MAAM2B,cAAc,GAAG,MAAAA,CAC5B1B,gBAA0D,EAC1DC,aAAqB,EACrBC,KAAa,EACbC,IAAI,GAAGC,2BAAiB,EACxBC,KAAyB,GAAGC,4BAAkB,KAC3C;EACH,MAAMC,aAAa,GAAG,IAAAC,wCAAuB,EAAC,CAAC;EAE/C,MAAMC,cAAc,GAAG,IAAAC,yBAAY,EAACL,KAAK,CAAC;EAC1C,MAAMM,QAAQ,GAAG,GAAGT,KAAK,IAAIC,IAAI,IAAIS,MAAM,CAACH,cAAc,CAAC,EAAE;EAE7D,MAAMI,gBAAgB,GAAGb,gBAAgB,CAACc,GAAG,CAACH,QAAQ,CAAC;EACvD,IAAIE,gBAAgB,KAAKE,SAAS,EAAE;IAClC;IACA,OAAOF,gBAAgB;EACzB;EAEA,IAAI;IACF,MAAMG,SAAS,GAAG,MAAMT,aAAa,CAACoB,eAAe,CACnD1B,aAAa,EACbC,KAAK,EACLC,IAAI,EACJM,cAAc,CAAY;IAC5B,CAAC;IACD,MAAMS,KAAK,GAAG;MAAEC,GAAG,EAAEH,SAAS;MAAEI,KAAK,EAAEC,uBAAU,CAACP,GAAG,CAAC;IAAE,CAAC;IACzDd,gBAAgB,CAACsB,QAAQ,CAACX,QAAQ,EAAEO,KAAK,CAAC;IAC1C,OAAOA,KAAK;EACd,CAAC,CAAC,OAAOK,KAAK,EAAE;IACdvB,gBAAgB,CAACwB,QAAQ,CAACb,QAAQ,EAAEY,KAAc,CAAC;IACnD,MAAMA,KAAK;EACb;AACF,CAAC;AAACE,OAAA,CAAAC,cAAA,GAAAA,cAAA","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_defaults","_getImageLibrary","getImageSourceSync","imageSourceCache","fontReference","glyph","size","DEFAULT_ICON_SIZE","color","DEFAULT_ICON_COLOR","NativeIconAPI","ensureGetImageAvailable","processedColor","processColor","cacheKey","String","maybeCachedValue","get","undefined","imagePath","getImageForFontSync","value","uri","scale","PixelRatio","setValue","exports","getImageSource","getImageForFont"],"sourceRoot":"../../src","sources":["get-image-source.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAGA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AAEO,MAAMG,kBAAkB,GAAGA,CAChCC,gBAA0D,EAC1DC,aAAqB,EACrBC,KAAa,EACbC,IAAI,GAAGC,2BAAiB,EACxBC,KAAyB,GAAGC,4BAAkB,KAC3C;EACH,MAAMC,aAAa,GAAG,IAAAC,wCAAuB,EAAC,CAAC;EAE/C,MAAMC,cAAc,GAAG,IAAAC,yBAAY,EAACL,KAAK,CAAC;EAC1C,MAAMM,QAAQ,GAAG,GAAGT,KAAK,IAAIC,IAAI,IAAIS,MAAM,CAACH,cAAc,CAAC,EAAE;EAE7D,MAAMI,gBAAgB,GAAGb,gBAAgB,CAACc,GAAG,CAACH,QAAQ,CAAC;EACvD,IAAIE,gBAAgB,KAAKE,SAAS,EAAE;IAClC,OAAOF,gBAAgB;EACzB;EAEA,MAAMG,SAAS,GAAGT,aAAa,CAACU,mBAAmB,CACjDhB,aAAa,EACbC,KAAK,EACLC,IAAI,EACJM,cAAc,CAAY;EAC5B,CAAC;EACD,MAAMS,KAAK,GAAG;IAAEC,GAAG,EAAEH,SAAS;IAAEI,KAAK,EAAEC,uBAAU,CAACP,GAAG,CAAC;EAAE,CAAC;EACzDd,gBAAgB,CAACsB,QAAQ,CAACX,QAAQ,EAAEO,KAAK,CAAC;EAC1C,OAAOA,KAAK;AACd,CAAC;AAACK,OAAA,CAAAxB,kBAAA,GAAAA,kBAAA;AAEK,MAAMyB,cAAc,GAAG,MAAAA,CAC5BxB,gBAA0D,EAC1DC,aAAqB,EACrBC,KAAa,EACbC,IAAI,GAAGC,2BAAiB,EACxBC,KAAyB,GAAGC,4BAAkB,KAC3C;EACH,MAAMC,aAAa,GAAG,IAAAC,wCAAuB,EAAC,CAAC;EAE/C,MAAMC,cAAc,GAAG,IAAAC,yBAAY,EAACL,KAAK,CAAC;EAC1C,MAAMM,QAAQ,GAAG,GAAGT,KAAK,IAAIC,IAAI,IAAIS,MAAM,CAACH,cAAc,CAAC,EAAE;EAE7D,MAAMI,gBAAgB,GAAGb,gBAAgB,CAACc,GAAG,CAACH,QAAQ,CAAC;EACvD,IAAIE,gBAAgB,KAAKE,SAAS,EAAE;IAClC,OAAOF,gBAAgB;EACzB;EAEA,MAAMG,SAAS,GAAG,MAAMT,aAAa,CAACkB,eAAe,CAACxB,aAAa,EAAEC,KAAK,EAAEC,IAAI,EAAEM,cAAwB,CAAC;EAC3G,MAAMS,KAAK,GAAG;IAAEC,GAAG,EAAEH,SAAS;IAAEI,KAAK,EAAEC,uBAAU,CAACP,GAAG,CAAC;EAAE,CAAC;EACzDd,gBAAgB,CAACsB,QAAQ,CAACX,QAAQ,EAAEO,KAAK,CAAC;EAC1C,OAAOA,KAAK;AACd,CAAC;AAACK,OAAA,CAAAC,cAAA,GAAAA,cAAA","ignoreList":[]}
@@ -4,7 +4,7 @@
4
4
  import React, { forwardRef, useEffect } from 'react';
5
5
  // eslint-disable-next-line import/no-extraneous-dependencies
6
6
  import { Platform, Text } from 'react-native';
7
- import createIconSourceCache from "./create-icon-source-cache.js";
7
+ import { createIconSourceCache } from "./create-icon-source-cache.js";
8
8
  import { DEFAULT_ICON_COLOR, DEFAULT_ICON_SIZE } from "./defaults.js";
9
9
  import { dynamicLoader } from "./dynamicLoading/dynamic-font-loading.js";
10
10
  import { isDynamicLoadingEnabled } from "./dynamicLoading/dynamic-loading-setting.js";
@@ -1 +1 @@
1
- {"version":3,"names":["React","forwardRef","useEffect","Platform","Text","createIconSourceCache","DEFAULT_ICON_COLOR","DEFAULT_ICON_SIZE","dynamicLoader","isDynamicLoadingEnabled","getImageSource","getImageSourceImpl","getImageSourceSync","getImageSourceSyncImpl","jsxs","_jsxs","jsx","_jsx","createIconSet","glyphMap","postScriptNameOrOptions","fontFileNameParam","fontStyleParam","postScriptName","fontFileName","fontStyle","fontBasename","replace","fontReference","select","windows","android","default","styleOverrides","fontFamily","fontWeight","resolveGlyph","name","glyph","String","fromCodePoint","Icon","size","color","style","children","allowFontScaling","innerRef","props","isFontLoaded","setIsFontLoaded","useState","isLoaded","isMounted","fontSource","loadFontAsync","finally","styleDefaults","fontSize","newProps","ref","selectable","WrappedIcon","displayName","imageSourceCache","IconNamespace","Object","assign"],"sourceRoot":"../../src","sources":["create-icon-set.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","forwardRef","useEffect","Platform","Text","createIconSourceCache","DEFAULT_ICON_COLOR","DEFAULT_ICON_SIZE","dynamicLoader","isDynamicLoadingEnabled","getImageSource","getImageSourceImpl","getImageSourceSync","getImageSourceSyncImpl","jsxs","_jsxs","jsx","_jsx","createIconSet","glyphMap","postScriptNameOrOptions","fontFileNameParam","fontStyleParam","postScriptName","fontFileName","fontStyle","fontBasename","replace","fontReference","select","windows","android","default","styleOverrides","fontFamily","fontWeight","resolveGlyph","name","glyph","String","fromCodePoint","Icon","size","color","style","children","allowFontScaling","innerRef","props","isFontLoaded","setIsFontLoaded","useState","isLoaded","isMounted","fontSource","loadFontAsync","finally","styleDefaults","fontSize","newProps","ref","selectable","WrappedIcon","displayName","imageSourceCache","IconNamespace","Object","assign"],"sourceRoot":"../../src","sources":["create-icon-set.tsx"],"mappings":";;AAAA;AACA,OAAOA,KAAK,IAAIC,UAAU,EAAYC,SAAS,QAAQ,OAAO;AAC9D;AACA,SAASC,QAAQ,EAAEC,IAAI,QAAwC,cAAc;AAE7E,SAASC,qBAAqB,QAAQ,+BAA4B;AAClE,SAASC,kBAAkB,EAAEC,iBAAiB,QAAQ,eAAY;AAClE,SAASC,aAAa,QAAQ,0CAAuC;AACrE,SAASC,uBAAuB,QAAQ,6CAA0C;AAElF,SAASC,cAAc,IAAIC,kBAAkB,EAAEC,kBAAkB,IAAIC,sBAAsB,QAAQ,uBAAoB;AAAC,SAAAC,IAAA,IAAAC,KAAA,EAAAC,GAAA,IAAAC,IAAA;AA6CxH,OAAO,SAASC,aAAaA,CAC3BC,QAAY,EACZC,uBAAsD,EACtDC,iBAA0B,EAC1BC,cAAmC,EAChB;EACnB,MAAM;IAAEC,cAAc;IAAEC,YAAY;IAAEC;EAAU,CAAC,GAC/C,OAAOL,uBAAuB,KAAK,QAAQ,GACvC;IACEG,cAAc,EAAEH,uBAAuB;IACvCI,YAAY,EAAEH,iBAAiB;IAC/BI,SAAS,EAAEH;EACb,CAAC,GACDF,uBAAuB;EAE7B,MAAMM,YAAY,GAAGF,YAAY,GAAGA,YAAY,CAACG,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,GAAGJ,cAAc;EAE7F,MAAMK,aAAa,GAAGzB,QAAQ,CAAC0B,MAAM,CAAC;IACpCC,OAAO,EAAE,WAAWN,YAAY,IAAID,cAAc,EAAE;IACpDQ,OAAO,EAAEL,YAAY;IACrBM,OAAO,EAAET;EACX,CAAC,CAAC;EAEF,MAAMU,cAAkC,GAAG;IACzCC,UAAU,EAAEN,aAAa;IACzBO,UAAU,EAAE,QAAQ;IACpBV,SAAS,EAAE;EACb,CAAC;EAED,MAAMW,YAAY,GAAIC,IAAc,IAAa;IAC/C,MAAMC,KAAK,GAAGnB,QAAQ,CAACkB,IAAI,CAAC,IAAI,GAAG;IAEnC,IAAI,OAAOC,KAAK,KAAK,QAAQ,EAAE;MAC7B,OAAOC,MAAM,CAACC,aAAa,CAACF,KAAK,CAAC;IACpC;IAEA,OAAOA,KAAK;EACd,CAAC;EAED,MAAMG,IAAI,GAAGA,CAAC;IACZJ,IAAI;IACJK,IAAI,GAAGnC,iBAAiB;IACxBoC,KAAK,GAAGrC,kBAAkB;IAC1BsC,KAAK;IACLC,QAAQ;IACRC,gBAAgB,GAAG,KAAK;IACxBC,QAAQ;IACR,GAAGC;EACgB,CAAC,KAAK;IACzB,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAGlD,KAAK,CAACmD,QAAQ,CACpD1C,uBAAuB,CAAC,CAAC,GAAGD,aAAa,CAAC4C,QAAQ,CAACxB,aAAa,CAAC,GAAG,IACtE,CAAC;IACD,MAAMU,KAAK,GAAGW,YAAY,IAAIZ,IAAI,GAAGD,YAAY,CAACC,IAAI,CAAC,GAAG,EAAE;;IAE5D;IACAnC,SAAS,CAAC,MAAM;MACd,IAAImD,SAAS,GAAG,IAAI;MAEpB,IACE,CAACJ,YAAY,IACb,OAAO7B,uBAAuB,KAAK,QAAQ,IAC3C,OAAOA,uBAAuB,CAACkC,UAAU,KAAK,WAAW,EACzD;QACA9C,aAAa,CAAC+C,aAAa,CAAC3B,aAAa,EAAER,uBAAuB,CAACkC,UAAU,CAAC,CAACE,OAAO,CAAC,MAAM;UAC3F,IAAIH,SAAS,EAAE;YACbH,eAAe,CAAC,IAAI,CAAC;UACvB;QACF,CAAC,CAAC;MACJ;MACA,OAAO,MAAM;QACXG,SAAS,GAAG,KAAK;MACnB,CAAC;IACH,CAAC,EAAE,EAAE,CAAC;IAEN,MAAMI,aAAa,GAAG;MACpBC,QAAQ,EAAEhB,IAAI;MACdC;IACF,CAAC;IAED,MAAMgB,QAAmB,GAAG;MAC1B,GAAGX,KAAK;MACRJ,KAAK,EAAE,CAACa,aAAa,EAAEb,KAAK,EAAEX,cAAc,EAAER,SAAS,IAAI,CAAC,CAAC,CAAC;MAC9DqB;IACF,CAAC;IAED,oBACE/B,KAAA,CAACX,IAAI;MAACwD,GAAG,EAAEb,QAAS;MAACc,UAAU,EAAE,KAAM;MAAA,GAAKF,QAAQ;MAAAd,QAAA,GACjDP,KAAK,EACLO,QAAQ;IAAA,CACL,CAAC;EAEX,CAAC;EAED,MAAMiB,WAAW,gBAAG7D,UAAU,CAAyC,CAAC+C,KAAK,EAAEY,GAAG,kBAChF3C,IAAA,CAACwB,IAAI;IAACM,QAAQ,EAAEa,GAAI;IAAA,GAAKZ;EAAK,CAAG,CAClC,CAAC;EACFc,WAAW,CAACC,WAAW,GAAG,QAAQxC,cAAc,GAAG;EAEnD,MAAMyC,gBAAgB,GAAG3D,qBAAqB,CAAC,CAAC;EAEhD,MAAMK,cAAgD,GAAG,MAAAA,CAAO2B,IAAI,EAAEK,IAAI,EAAEC,KAAK,KAAK;IACpF,IAAI,OAAOvB,uBAAuB,KAAK,QAAQ,IAAI,OAAOA,uBAAuB,CAACkC,UAAU,KAAK,WAAW,EAAE;MAC5G,MAAM9C,aAAa,CAAC+C,aAAa,CAAC3B,aAAa,EAAER,uBAAuB,CAACkC,UAAU,CAAC;IACtF;IACA,OAAO3C,kBAAkB,CAACqD,gBAAgB,EAAEpC,aAAa,EAAEQ,YAAY,CAACC,IAAI,CAAC,EAAEK,IAAI,EAAEC,KAAK,CAAC;EAC7F,CAAC;EAED,MAAM/B,kBAAwD,GAAGA,CAACyB,IAAI,EAAEK,IAAI,EAAEC,KAAK,KACjF9B,sBAAsB,CAACmD,gBAAgB,EAAEpC,aAAa,EAAEQ,YAAY,CAACC,IAAI,CAAC,EAAEK,IAAI,EAAEC,KAAK,CAAC;EAE1F,MAAMsB,aAAa,GAAGC,MAAM,CAACC,MAAM,CAACL,WAAW,EAAE;IAC/CpD,cAAc;IACdE;EACF,CAAC,CAAC;EAEF,OAAOqD,aAAa;AACtB","ignoreList":[]}
@@ -1,34 +1,11 @@
1
1
  "use strict";
2
2
 
3
- const TYPE_VALUE = 'value';
4
- const TYPE_ERROR = 'error';
5
- export default function createIconSourceCache() {
3
+ export function createIconSourceCache() {
6
4
  const cache = new Map();
7
- const setValue = (key, value) => cache.set(key, {
8
- type: TYPE_VALUE,
9
- data: value
10
- });
11
- const setError = (key, error) => cache.set(key, {
12
- type: TYPE_ERROR,
13
- data: error
14
- });
15
- const get = key => {
16
- const value = cache.get(key);
17
- if (!value) {
18
- return undefined;
19
- }
20
- const {
21
- type,
22
- data
23
- } = value;
24
- if (type === TYPE_ERROR) {
25
- throw data;
26
- }
27
- return data;
28
- };
5
+ const setValue = (key, value) => cache.set(key, value);
6
+ const get = key => cache.get(key);
29
7
  return {
30
8
  setValue,
31
- setError,
32
9
  get
33
10
  };
34
11
  }
@@ -1 +1 @@
1
- {"version":3,"names":["TYPE_VALUE","TYPE_ERROR","createIconSourceCache","cache","Map","setValue","key","value","set","type","data","setError","error","get","undefined"],"sourceRoot":"../../src","sources":["create-icon-source-cache.ts"],"mappings":";;AAAA,MAAMA,UAAU,GAAG,OAAO;AAC1B,MAAMC,UAAU,GAAG,OAAO;AAM1B,eAAe,SAASC,qBAAqBA,CAAA,EAAG;EAC9C,MAAMC,KAAK,GAAG,IAAIC,GAAG,CAAgB,CAAC;EAEtC,MAAMC,QAAQ,GAAGA,CAACC,GAAW,EAAEC,KAAgB,KAAKJ,KAAK,CAACK,GAAG,CAACF,GAAG,EAAE;IAAEG,IAAI,EAAET,UAAU;IAAEU,IAAI,EAAEH;EAAM,CAAC,CAAC;EAErG,MAAMI,QAAQ,GAAGA,CAACL,GAAW,EAAEM,KAAY,KAAKT,KAAK,CAACK,GAAG,CAACF,GAAG,EAAE;IAAEG,IAAI,EAAER,UAAU;IAAES,IAAI,EAAEE;EAAM,CAAC,CAAC;EAEjG,MAAMC,GAAG,GAAIP,GAAW,IAAK;IAC3B,MAAMC,KAAK,GAAGJ,KAAK,CAACU,GAAG,CAACP,GAAG,CAAC;IAC5B,IAAI,CAACC,KAAK,EAAE;MACV,OAAOO,SAAS;IAClB;IAEA,MAAM;MAAEL,IAAI;MAAEC;IAAK,CAAC,GAAGH,KAAK;IAC5B,IAAIE,IAAI,KAAKR,UAAU,EAAE;MACvB,MAAMS,IAAI;IACZ;IACA,OAAOA,IAAI;EACb,CAAC;EAED,OAAO;IAAEL,QAAQ;IAAEM,QAAQ;IAAEE;EAAI,CAAC;AACpC","ignoreList":[]}
1
+ {"version":3,"names":["createIconSourceCache","cache","Map","setValue","key","value","set","get"],"sourceRoot":"../../src","sources":["create-icon-source-cache.ts"],"mappings":";;AAEA,OAAO,SAASA,qBAAqBA,CAAA,EAAG;EACtC,MAAMC,KAAK,GAAG,IAAIC,GAAG,CAAoB,CAAC;EAE1C,MAAMC,QAAQ,GAAGA,CAACC,GAAW,EAAEC,KAAgB,KAAKJ,KAAK,CAACK,GAAG,CAACF,GAAG,EAAEC,KAAK,CAAC;EAEzE,MAAME,GAAG,GAAIH,GAAW,IAAKH,KAAK,CAACM,GAAG,CAACH,GAAG,CAAC;EAE3C,OAAO;IAAED,QAAQ;IAAEI;EAAI,CAAC;AAC1B","ignoreList":[]}
@@ -4,6 +4,9 @@ import { Platform } from 'react-native';
4
4
 
5
5
  // this is a file:// uri on native, or an object with uri and display on web
6
6
 
7
+ // RenderToImageResult needs to be usable as the `source` prop for image,
8
+ // so it must stay compatible with ImageURISource type
9
+
7
10
  // biome-ignore lint/suspicious/noExplicitAny: this is used internally with globalThis
8
11
  function getIsDynamicLoadingSupported(globalObj) {
9
12
  return globalObj?.expo && (Platform.OS === 'web' || typeof globalObj.expo.modules?.ExpoAsset?.downloadAsync === 'function') && typeof globalObj.expo.modules?.ExpoFontLoader?.getLoadedFonts === 'function' && typeof globalObj.expo.modules?.ExpoFontLoader?.loadAsync === 'function';
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","getIsDynamicLoadingSupported","globalObj","expo","OS","modules","ExpoAsset","downloadAsync","ExpoFontLoader","getLoadedFonts","loadAsync","getIsRenderToImageSupported","ExpoFontUtils","renderToImageAsync","assertExpoModulesPresent","Error","dynamicFontLoadingOverride","isDynamicLoadingSupported","globalThis","setDynamicLoadingEnabled","value","process","env","NODE_ENV","hasNecessaryExpoModules","message","console","error","isDynamicLoadingEnabled","dynamicLoadingErrorCallback","setDynamicLoadingErrorCallback","callback","getErrorCallback"],"sourceRoot":"../../../src","sources":["dynamicLoading/dynamic-loading-setting.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,cAAc;;AAUvC;;AAyCA;AACA,SAASC,4BAA4BA,CAACC,SAAc,EAElD;EACA,OACEA,SAAS,EAAEC,IAAI,KACdH,QAAQ,CAACI,EAAE,KAAK,KAAK,IAAI,OAAOF,SAAS,CAACC,IAAI,CAACE,OAAO,EAAEC,SAAS,EAAEC,aAAa,KAAK,UAAU,CAAC,IACjG,OAAOL,SAAS,CAACC,IAAI,CAACE,OAAO,EAAEG,cAAc,EAAEC,cAAc,KAAK,UAAU,IAC5E,OAAOP,SAAS,CAACC,IAAI,CAACE,OAAO,EAAEG,cAAc,EAAEE,SAAS,KAAK,UAAU;AAE3E;;AAEA;AACA,OAAO,SAASC,2BAA2BA,CAACT,SAAc,EAMxD;EACA,OAAOA,SAAS,EAAEC,IAAI,IAAI,OAAOD,SAAS,CAACC,IAAI,CAACE,OAAO,EAAEO,aAAa,EAAEC,kBAAkB,KAAK,UAAU;AAC3G;AAEA,OAAO,SAASC,wBAAwBA,CAACZ,SAAkB,EAAiD;EAC1G,IAAI,CAACD,4BAA4B,CAACC,SAAS,CAAC,EAAE;IAC5C,MAAM,IAAIa,KAAK,CAAC,2EAA2E,CAAC;EAC9F;AACF;;AAEA;AACA;AACA;;AAEA,IAAIC,0BAA0C,GAAG,IAAI;AAErD,OAAO,MAAMC,yBAAyB,GAAGA,CAAA,KAAMhB,4BAA4B,CAACiB,UAAU,CAAC;;AAEvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GAAIC,KAAc,IAAc;EACnE,IAAI,CAACnB,4BAA4B,CAACiB,UAAU,CAAC,EAAE;IAC7C,IAAIG,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,IAAI,CAAC,CAACH,KAAK,EAAE;MACpD,MAAMI,uBAAuB,GAC3B,CAACxB,QAAQ,CAACI,EAAE,KAAK,KAAK,IAAI,CAAC,CAACc,UAAU,CAACf,IAAI,EAAEE,OAAO,EAAEC,SAAS,KAAK,CAAC,CAACY,UAAU,CAACf,IAAI,EAAEE,OAAO,EAAEG,cAAc;MAChH,MAAMiB,OAAO,GAAGD,uBAAuB,GACnC,sGAAsG,GACtG,sHAAsH;MAC1HE,OAAO,CAACC,KAAK,CAACF,OAAO,CAAC,CAAC,CAAC;IAC1B;IACA,OAAO,KAAK;EACd;EAEAT,0BAA0B,GAAG,CAAC,CAACI,KAAK;EAEpC,OAAO,IAAI;AACb,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMQ,uBAAuB,GAAGA,CAAA,KACrCZ,0BAA0B,IAAIf,4BAA4B,CAACiB,UAAU,CAAC;AAIxE,IAAIW,2BAAsD;;AAE1D;AACA;AACA;AACA,OAAO,MAAMC,8BAA8B,GAAIC,QAAuB,IAAK;EACzEF,2BAA2B,GAAGE,QAAQ;AACxC,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAMH,2BAA2B","ignoreList":[]}
1
+ {"version":3,"names":["Platform","getIsDynamicLoadingSupported","globalObj","expo","OS","modules","ExpoAsset","downloadAsync","ExpoFontLoader","getLoadedFonts","loadAsync","getIsRenderToImageSupported","ExpoFontUtils","renderToImageAsync","assertExpoModulesPresent","Error","dynamicFontLoadingOverride","isDynamicLoadingSupported","globalThis","setDynamicLoadingEnabled","value","process","env","NODE_ENV","hasNecessaryExpoModules","message","console","error","isDynamicLoadingEnabled","dynamicLoadingErrorCallback","setDynamicLoadingErrorCallback","callback","getErrorCallback"],"sourceRoot":"../../../src","sources":["dynamicLoading/dynamic-loading-setting.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,cAAc;;AAUvC;;AAUA;AACA;;AAoDA;AACA,SAASC,4BAA4BA,CAACC,SAAc,EAElD;EACA,OACEA,SAAS,EAAEC,IAAI,KACdH,QAAQ,CAACI,EAAE,KAAK,KAAK,IAAI,OAAOF,SAAS,CAACC,IAAI,CAACE,OAAO,EAAEC,SAAS,EAAEC,aAAa,KAAK,UAAU,CAAC,IACjG,OAAOL,SAAS,CAACC,IAAI,CAACE,OAAO,EAAEG,cAAc,EAAEC,cAAc,KAAK,UAAU,IAC5E,OAAOP,SAAS,CAACC,IAAI,CAACE,OAAO,EAAEG,cAAc,EAAEE,SAAS,KAAK,UAAU;AAE3E;;AAEA;AACA,OAAO,SAASC,2BAA2BA,CAACT,SAAc,EAMxD;EACA,OAAOA,SAAS,EAAEC,IAAI,IAAI,OAAOD,SAAS,CAACC,IAAI,CAACE,OAAO,EAAEO,aAAa,EAAEC,kBAAkB,KAAK,UAAU;AAC3G;AAEA,OAAO,SAASC,wBAAwBA,CAACZ,SAAkB,EAAiD;EAC1G,IAAI,CAACD,4BAA4B,CAACC,SAAS,CAAC,EAAE;IAC5C,MAAM,IAAIa,KAAK,CAAC,2EAA2E,CAAC;EAC9F;AACF;;AAEA;AACA;AACA;;AAEA,IAAIC,0BAA0C,GAAG,IAAI;AAErD,OAAO,MAAMC,yBAAyB,GAAGA,CAAA,KAAMhB,4BAA4B,CAACiB,UAAU,CAAC;;AAEvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GAAIC,KAAc,IAAc;EACnE,IAAI,CAACnB,4BAA4B,CAACiB,UAAU,CAAC,EAAE;IAC7C,IAAIG,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,IAAI,CAAC,CAACH,KAAK,EAAE;MACpD,MAAMI,uBAAuB,GAC3B,CAACxB,QAAQ,CAACI,EAAE,KAAK,KAAK,IAAI,CAAC,CAACc,UAAU,CAACf,IAAI,EAAEE,OAAO,EAAEC,SAAS,KAAK,CAAC,CAACY,UAAU,CAACf,IAAI,EAAEE,OAAO,EAAEG,cAAc;MAChH,MAAMiB,OAAO,GAAGD,uBAAuB,GACnC,sGAAsG,GACtG,sHAAsH;MAC1HE,OAAO,CAACC,KAAK,CAACF,OAAO,CAAC,CAAC,CAAC;IAC1B;IACA,OAAO,KAAK;EACd;EAEAT,0BAA0B,GAAG,CAAC,CAACI,KAAK;EAEpC,OAAO,IAAI;AACb,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMQ,uBAAuB,GAAGA,CAAA,KACrCZ,0BAA0B,IAAIf,4BAA4B,CAACiB,UAAU,CAAC;AAIxE,IAAIW,2BAAsD;;AAE1D;AACA;AACA;AACA,OAAO,MAAMC,8BAA8B,GAAIC,QAAuB,IAAK;EACzEF,2BAA2B,GAAGE,QAAQ;AACxC,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAMH,2BAA2B","ignoreList":[]}
@@ -24,16 +24,19 @@ export const ensureGetImageAvailable = () => {
24
24
  ExpoFontUtils
25
25
  } = globalRef.expo.modules;
26
26
  return {
27
- getImageForFont: async (fontReference, glyph, size, color) => ExpoFontUtils.renderToImageAsync(glyph, {
28
- fontFamily: fontReference,
29
- size,
30
- color
31
- }),
27
+ getImageForFont: async (fontReference, glyph, size, color) => {
28
+ const result = await ExpoFontUtils.renderToImageAsync(glyph, {
29
+ fontFamily: fontReference,
30
+ size,
31
+ color
32
+ });
33
+ return result.uri;
34
+ },
32
35
  getImageForFontSync: () => {
33
36
  throw new Error('You attempted to call `getImageForFontSync`. Expo dev client with `@react-native-vector-icons/get-image` installed is required for this. Alternatively, call `getImageForFont` or generate the image yourself and bundle it with the app.');
34
37
  }
35
38
  };
36
39
  }
37
- throw new Error('Error in getImageSource / getImageSourceSync: You need to either (1) install `@react-native-vector-icons/get-image` or (2) use Expo SDK 53+ (Expo dev client or Expo Go). Check your setup and rebuild the app.');
40
+ throw new Error('Error in getImageSource / getImageSourceSync: You need to either (1) install `@react-native-vector-icons/get-image` or (2) use Expo SDK 54+ (Expo dev client or Expo Go). Check your setup and rebuild the app.');
38
41
  };
39
42
  //# sourceMappingURL=get-image-library.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getIsRenderToImageSupported","NativeIconAPI","require","globalRef","globalThis","hasExpoRenderToImage","ensureGetImageAvailable","ensureNativeModuleAvailable","ExpoFontUtils","expo","modules","getImageForFont","fontReference","glyph","size","color","renderToImageAsync","fontFamily","getImageForFontSync","Error"],"sourceRoot":"../../src","sources":["get-image-library.ts"],"mappings":";;AAAA,SAASA,2BAA2B,QAAQ,6CAA0C;;AAEtF;AACA,IAAIC,aAA2E,GAAG,IAAI;AAEtF,IAAI;EACF;EACAA,aAAa,GAAGC,OAAO,CAAC,sCAAsC,CAAC;AACjE,CAAC,CAAC,MAAM;EACN;EACA;EACA;AAAA;AAGF,MAAMC,SAAS,GAAGC,UAAU;AAC5B,MAAMC,oBAAoB,GAAGL,2BAA2B,CAACG,SAAS,CAAC;AAEnE,OAAO,MAAMG,uBAAuB,GAAGA,CAAA,KAAM;EAC3C,IAAIL,aAAa,EAAE;IACjBA,aAAa,CAACM,2BAA2B,CAAC,CAAC;IAC3C,OAAON,aAAa;EACtB;EACA,IAAII,oBAAoB,EAAE;IACxB,MAAM;MAAEG;IAAc,CAAC,GAAGL,SAAS,CAACM,IAAI,CAACC,OAAO;IAChD,OAAO;MACLC,eAAe,EAAE,MAAAA,CAAOC,aAAqB,EAAEC,KAAa,EAAEC,IAAY,EAAEC,KAAa,KACvFP,aAAa,CAACQ,kBAAkB,CAACH,KAAK,EAAE;QACtCI,UAAU,EAAEL,aAAa;QACzBE,IAAI;QACJC;MACF,CAAC,CAAC;MACJG,mBAAmB,EAAEA,CAAA,KAAM;QACzB,MAAM,IAAIC,KAAK,CACb,2OACF,CAAC;MACH;IACF,CAAC;EACH;EACA,MAAM,IAAIA,KAAK,CACb,iNACF,CAAC;AACH,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["getIsRenderToImageSupported","NativeIconAPI","require","globalRef","globalThis","hasExpoRenderToImage","ensureGetImageAvailable","ensureNativeModuleAvailable","ExpoFontUtils","expo","modules","getImageForFont","fontReference","glyph","size","color","result","renderToImageAsync","fontFamily","uri","getImageForFontSync","Error"],"sourceRoot":"../../src","sources":["get-image-library.ts"],"mappings":";;AAAA,SAASA,2BAA2B,QAAQ,6CAA0C;;AAEtF;AACA,IAAIC,aAA2E,GAAG,IAAI;AAEtF,IAAI;EACF;EACAA,aAAa,GAAGC,OAAO,CAAC,sCAAsC,CAAC;AACjE,CAAC,CAAC,MAAM;EACN;EACA;EACA;AAAA;AAGF,MAAMC,SAAS,GAAGC,UAAU;AAC5B,MAAMC,oBAAoB,GAAGL,2BAA2B,CAACG,SAAS,CAAC;AAEnE,OAAO,MAAMG,uBAAuB,GAAGA,CAAA,KAAM;EAC3C,IAAIL,aAAa,EAAE;IACjBA,aAAa,CAACM,2BAA2B,CAAC,CAAC;IAC3C,OAAON,aAAa;EACtB;EACA,IAAII,oBAAoB,EAAE;IACxB,MAAM;MAAEG;IAAc,CAAC,GAAGL,SAAS,CAACM,IAAI,CAACC,OAAO;IAChD,OAAO;MACLC,eAAe,EAAE,MAAAA,CAAOC,aAAqB,EAAEC,KAAa,EAAEC,IAAY,EAAEC,KAAa,KAAK;QAC5F,MAAMC,MAAM,GAAG,MAAMR,aAAa,CAACS,kBAAkB,CAACJ,KAAK,EAAE;UAC3DK,UAAU,EAAEN,aAAa;UACzBE,IAAI;UACJC;QACF,CAAC,CAAC;QACF,OAAOC,MAAM,CAACG,GAAG;MACnB,CAAC;MACDC,mBAAmB,EAAEA,CAAA,KAAM;QACzB,MAAM,IAAIC,KAAK,CACb,2OACF,CAAC;MACH;IACF,CAAC;EACH;EACA,MAAM,IAAIA,KAAK,CACb,iNACF,CAAC;AACH,CAAC","ignoreList":[]}
@@ -9,22 +9,16 @@ export const getImageSourceSync = (imageSourceCache, fontReference, glyph, size
9
9
  const cacheKey = `${glyph}:${size}:${String(processedColor)}`;
10
10
  const maybeCachedValue = imageSourceCache.get(cacheKey);
11
11
  if (maybeCachedValue !== undefined) {
12
- // FIXME: Should this check if it's an error and throw it again?
13
12
  return maybeCachedValue;
14
13
  }
15
- try {
16
- const imagePath = NativeIconAPI.getImageForFontSync(fontReference, glyph, size, processedColor // FIXME what if a non existent colour was passed in?
17
- );
18
- const value = {
19
- uri: imagePath,
20
- scale: PixelRatio.get()
21
- };
22
- imageSourceCache.setValue(cacheKey, value);
23
- return value;
24
- } catch (error) {
25
- imageSourceCache.setError(cacheKey, error);
26
- throw error;
27
- }
14
+ const imagePath = NativeIconAPI.getImageForFontSync(fontReference, glyph, size, processedColor // FIXME what if a non existent colour was passed in?,
15
+ );
16
+ const value = {
17
+ uri: imagePath,
18
+ scale: PixelRatio.get()
19
+ };
20
+ imageSourceCache.setValue(cacheKey, value);
21
+ return value;
28
22
  };
29
23
  export const getImageSource = async (imageSourceCache, fontReference, glyph, size = DEFAULT_ICON_SIZE, color = DEFAULT_ICON_COLOR) => {
30
24
  const NativeIconAPI = ensureGetImageAvailable();
@@ -32,21 +26,14 @@ export const getImageSource = async (imageSourceCache, fontReference, glyph, siz
32
26
  const cacheKey = `${glyph}:${size}:${String(processedColor)}`;
33
27
  const maybeCachedValue = imageSourceCache.get(cacheKey);
34
28
  if (maybeCachedValue !== undefined) {
35
- // FIXME: Should this check if it's an error and throw it again?
36
29
  return maybeCachedValue;
37
30
  }
38
- try {
39
- const imagePath = await NativeIconAPI.getImageForFont(fontReference, glyph, size, processedColor // FIXME what if a non existent colour was passed in?
40
- );
41
- const value = {
42
- uri: imagePath,
43
- scale: PixelRatio.get()
44
- };
45
- imageSourceCache.setValue(cacheKey, value);
46
- return value;
47
- } catch (error) {
48
- imageSourceCache.setError(cacheKey, error);
49
- throw error;
50
- }
31
+ const imagePath = await NativeIconAPI.getImageForFont(fontReference, glyph, size, processedColor);
32
+ const value = {
33
+ uri: imagePath,
34
+ scale: PixelRatio.get()
35
+ };
36
+ imageSourceCache.setValue(cacheKey, value);
37
+ return value;
51
38
  };
52
39
  //# sourceMappingURL=get-image-source.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["PixelRatio","processColor","DEFAULT_ICON_COLOR","DEFAULT_ICON_SIZE","ensureGetImageAvailable","getImageSourceSync","imageSourceCache","fontReference","glyph","size","color","NativeIconAPI","processedColor","cacheKey","String","maybeCachedValue","get","undefined","imagePath","getImageForFontSync","value","uri","scale","setValue","error","setError","getImageSource","getImageForFont"],"sourceRoot":"../../src","sources":["get-image-source.ts"],"mappings":";;AACA,SAASA,UAAU,EAAEC,YAAY,QAAQ,cAAc;AAGvD,SAASC,kBAAkB,EAAEC,iBAAiB,QAAQ,eAAY;AAClE,SAASC,uBAAuB,QAAQ,wBAAqB;AAE7D,OAAO,MAAMC,kBAAkB,GAAGA,CAChCC,gBAA0D,EAC1DC,aAAqB,EACrBC,KAAa,EACbC,IAAI,GAAGN,iBAAiB,EACxBO,KAAyB,GAAGR,kBAAkB,KAC3C;EACH,MAAMS,aAAa,GAAGP,uBAAuB,CAAC,CAAC;EAE/C,MAAMQ,cAAc,GAAGX,YAAY,CAACS,KAAK,CAAC;EAC1C,MAAMG,QAAQ,GAAG,GAAGL,KAAK,IAAIC,IAAI,IAAIK,MAAM,CAACF,cAAc,CAAC,EAAE;EAE7D,MAAMG,gBAAgB,GAAGT,gBAAgB,CAACU,GAAG,CAACH,QAAQ,CAAC;EACvD,IAAIE,gBAAgB,KAAKE,SAAS,EAAE;IAClC;IACA,OAAOF,gBAAgB;EACzB;EAEA,IAAI;IACF,MAAMG,SAAS,GAAGP,aAAa,CAACQ,mBAAmB,CACjDZ,aAAa,EACbC,KAAK,EACLC,IAAI,EACJG,cAAc,CAAY;IAC5B,CAAC;IACD,MAAMQ,KAAK,GAAG;MAAEC,GAAG,EAAEH,SAAS;MAAEI,KAAK,EAAEtB,UAAU,CAACgB,GAAG,CAAC;IAAE,CAAC;IACzDV,gBAAgB,CAACiB,QAAQ,CAACV,QAAQ,EAAEO,KAAK,CAAC;IAC1C,OAAOA,KAAK;EACd,CAAC,CAAC,OAAOI,KAAK,EAAE;IACdlB,gBAAgB,CAACmB,QAAQ,CAACZ,QAAQ,EAAEW,KAAc,CAAC;IACnD,MAAMA,KAAK;EACb;AACF,CAAC;AAED,OAAO,MAAME,cAAc,GAAG,MAAAA,CAC5BpB,gBAA0D,EAC1DC,aAAqB,EACrBC,KAAa,EACbC,IAAI,GAAGN,iBAAiB,EACxBO,KAAyB,GAAGR,kBAAkB,KAC3C;EACH,MAAMS,aAAa,GAAGP,uBAAuB,CAAC,CAAC;EAE/C,MAAMQ,cAAc,GAAGX,YAAY,CAACS,KAAK,CAAC;EAC1C,MAAMG,QAAQ,GAAG,GAAGL,KAAK,IAAIC,IAAI,IAAIK,MAAM,CAACF,cAAc,CAAC,EAAE;EAE7D,MAAMG,gBAAgB,GAAGT,gBAAgB,CAACU,GAAG,CAACH,QAAQ,CAAC;EACvD,IAAIE,gBAAgB,KAAKE,SAAS,EAAE;IAClC;IACA,OAAOF,gBAAgB;EACzB;EAEA,IAAI;IACF,MAAMG,SAAS,GAAG,MAAMP,aAAa,CAACgB,eAAe,CACnDpB,aAAa,EACbC,KAAK,EACLC,IAAI,EACJG,cAAc,CAAY;IAC5B,CAAC;IACD,MAAMQ,KAAK,GAAG;MAAEC,GAAG,EAAEH,SAAS;MAAEI,KAAK,EAAEtB,UAAU,CAACgB,GAAG,CAAC;IAAE,CAAC;IACzDV,gBAAgB,CAACiB,QAAQ,CAACV,QAAQ,EAAEO,KAAK,CAAC;IAC1C,OAAOA,KAAK;EACd,CAAC,CAAC,OAAOI,KAAK,EAAE;IACdlB,gBAAgB,CAACmB,QAAQ,CAACZ,QAAQ,EAAEW,KAAc,CAAC;IACnD,MAAMA,KAAK;EACb;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["PixelRatio","processColor","DEFAULT_ICON_COLOR","DEFAULT_ICON_SIZE","ensureGetImageAvailable","getImageSourceSync","imageSourceCache","fontReference","glyph","size","color","NativeIconAPI","processedColor","cacheKey","String","maybeCachedValue","get","undefined","imagePath","getImageForFontSync","value","uri","scale","setValue","getImageSource","getImageForFont"],"sourceRoot":"../../src","sources":["get-image-source.ts"],"mappings":";;AACA,SAASA,UAAU,EAAEC,YAAY,QAAQ,cAAc;AAGvD,SAASC,kBAAkB,EAAEC,iBAAiB,QAAQ,eAAY;AAClE,SAASC,uBAAuB,QAAQ,wBAAqB;AAE7D,OAAO,MAAMC,kBAAkB,GAAGA,CAChCC,gBAA0D,EAC1DC,aAAqB,EACrBC,KAAa,EACbC,IAAI,GAAGN,iBAAiB,EACxBO,KAAyB,GAAGR,kBAAkB,KAC3C;EACH,MAAMS,aAAa,GAAGP,uBAAuB,CAAC,CAAC;EAE/C,MAAMQ,cAAc,GAAGX,YAAY,CAACS,KAAK,CAAC;EAC1C,MAAMG,QAAQ,GAAG,GAAGL,KAAK,IAAIC,IAAI,IAAIK,MAAM,CAACF,cAAc,CAAC,EAAE;EAE7D,MAAMG,gBAAgB,GAAGT,gBAAgB,CAACU,GAAG,CAACH,QAAQ,CAAC;EACvD,IAAIE,gBAAgB,KAAKE,SAAS,EAAE;IAClC,OAAOF,gBAAgB;EACzB;EAEA,MAAMG,SAAS,GAAGP,aAAa,CAACQ,mBAAmB,CACjDZ,aAAa,EACbC,KAAK,EACLC,IAAI,EACJG,cAAc,CAAY;EAC5B,CAAC;EACD,MAAMQ,KAAK,GAAG;IAAEC,GAAG,EAAEH,SAAS;IAAEI,KAAK,EAAEtB,UAAU,CAACgB,GAAG,CAAC;EAAE,CAAC;EACzDV,gBAAgB,CAACiB,QAAQ,CAACV,QAAQ,EAAEO,KAAK,CAAC;EAC1C,OAAOA,KAAK;AACd,CAAC;AAED,OAAO,MAAMI,cAAc,GAAG,MAAAA,CAC5BlB,gBAA0D,EAC1DC,aAAqB,EACrBC,KAAa,EACbC,IAAI,GAAGN,iBAAiB,EACxBO,KAAyB,GAAGR,kBAAkB,KAC3C;EACH,MAAMS,aAAa,GAAGP,uBAAuB,CAAC,CAAC;EAE/C,MAAMQ,cAAc,GAAGX,YAAY,CAACS,KAAK,CAAC;EAC1C,MAAMG,QAAQ,GAAG,GAAGL,KAAK,IAAIC,IAAI,IAAIK,MAAM,CAACF,cAAc,CAAC,EAAE;EAE7D,MAAMG,gBAAgB,GAAGT,gBAAgB,CAACU,GAAG,CAACH,QAAQ,CAAC;EACvD,IAAIE,gBAAgB,KAAKE,SAAS,EAAE;IAClC,OAAOF,gBAAgB;EACzB;EAEA,MAAMG,SAAS,GAAG,MAAMP,aAAa,CAACc,eAAe,CAAClB,aAAa,EAAEC,KAAK,EAAEC,IAAI,EAAEG,cAAwB,CAAC;EAC3G,MAAMQ,KAAK,GAAG;IAAEC,GAAG,EAAEH,SAAS;IAAEI,KAAK,EAAEtB,UAAU,CAACgB,GAAG,CAAC;EAAE,CAAC;EACzDV,gBAAgB,CAACiB,QAAQ,CAACV,QAAQ,EAAEO,KAAK,CAAC;EAC1C,OAAOA,KAAK;AACd,CAAC","ignoreList":[]}
@@ -1,19 +1,9 @@
1
- declare const TYPE_VALUE = "value";
2
- declare const TYPE_ERROR = "error";
3
1
  type ValueData = {
4
2
  uri: string;
5
3
  scale: number;
6
4
  };
7
- type Value = {
8
- type: typeof TYPE_VALUE;
9
- data: ValueData;
10
- } | {
11
- type: typeof TYPE_ERROR;
12
- data: Error;
13
- };
14
- export default function createIconSourceCache(): {
15
- setValue: (key: string, value: ValueData) => Map<string, Value>;
16
- setError: (key: string, error: Error) => Map<string, Value>;
5
+ export declare function createIconSourceCache(): {
6
+ setValue: (key: string, value: ValueData) => Map<string, ValueData>;
17
7
  get: (key: string) => ValueData | undefined;
18
8
  };
19
9
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"create-icon-source-cache.d.ts","sourceRoot":"","sources":["../../../../src/create-icon-source-cache.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,UAAU,UAAU,CAAC;AAC3B,QAAA,MAAM,UAAU,UAAU,CAAC;AAE3B,KAAK,SAAS,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhD,KAAK,KAAK,GAAG;IAAE,IAAI,EAAE,OAAO,UAAU,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,UAAU,CAAC;IAAC,IAAI,EAAE,KAAK,CAAA;CAAE,CAAC;AAErG,MAAM,CAAC,OAAO,UAAU,qBAAqB;oBAGpB,MAAM,SAAS,SAAS;oBAExB,MAAM,SAAS,KAAK;eAEzB,MAAM;EAczB"}
1
+ {"version":3,"file":"create-icon-source-cache.d.ts","sourceRoot":"","sources":["../../../../src/create-icon-source-cache.ts"],"names":[],"mappings":"AAAA,KAAK,SAAS,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhD,wBAAgB,qBAAqB;oBAGZ,MAAM,SAAS,SAAS;eAE7B,MAAM;EAGzB"}
@@ -10,12 +10,30 @@ type ExpoFontLoaderModule = {
10
10
  getLoadedFonts: () => string[];
11
11
  loadAsync: (fontFamilyAlias: string, asset: LoadAsyncAsset) => Promise<void>;
12
12
  };
13
+ type RenderToImageResult = {
14
+ /**
15
+ * The file uri to the image.
16
+ */
17
+ uri: string;
18
+ /**
19
+ * Image width in dp.
20
+ */
21
+ width: number;
22
+ /**
23
+ * Image height in dp.
24
+ */
25
+ height: number;
26
+ /**
27
+ * Scale factor of the image. Multiply the dp dimensions by this value to get the dimensions in pixels.
28
+ * */
29
+ scale: number;
30
+ };
13
31
  type ExpoFontUtilsModule = {
14
32
  renderToImageAsync: (glyph: string, options: {
15
33
  fontFamily?: string;
16
34
  size?: number;
17
35
  color?: number;
18
- }) => Promise<string>;
36
+ }) => Promise<RenderToImageResult>;
19
37
  };
20
38
  declare global {
21
39
  interface ExpoGlobal {
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic-loading-setting.d.ts","sourceRoot":"","sources":["../../../../../src/dynamicLoading/dynamic-loading-setting.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,KAAK,eAAe,GAAG;IAGrB,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACzF,CAAC;AAGF,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvE,KAAK,oBAAoB,GAAG;IAG1B,cAAc,EAAE,MAAM,MAAM,EAAE,CAAC;IAC/B,SAAS,EAAE,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9E,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,kBAAkB,EAAE,CAClB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE;QACP,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,KACE,OAAO,CAAC,MAAM,CAAC,CAAC;CACtB,CAAC;AAEF,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,UAAU;QAClB,OAAO,EAAE;YACP,SAAS,CAAC,EAAE,eAAe,CAAC;YAC5B,cAAc,CAAC,EAAE,oBAAoB,CAAC;YACtC,aAAa,CAAC,EAAE,mBAAmB,CAAC;SACrC,CAAC;KACH;IAGD,IAAI,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;CAClC;AAED,KAAK,cAAc,GAAG;IACpB,OAAO,EAAE;QACP,SAAS,EAAE,eAAe,CAAC;QAC3B,cAAc,EAAE,oBAAoB,CAAC;KACtC,CAAC;CACH,CAAC;AAeF,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,GAAG,GAAG,SAAS,IAAI;IACxE,IAAI,EAAE;QACJ,OAAO,EAAE;YACP,aAAa,EAAE,mBAAmB,CAAC;SACpC,CAAC;KACH,CAAC;CACH,CAEA;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,SAAS,IAAI;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,CAI1G;AAQD,eAAO,MAAM,yBAAyB,eAAiD,CAAC;AAExF;;;;;;;KAOK;AACL,eAAO,MAAM,wBAAwB,GAAI,OAAO,OAAO,KAAG,OAgBzD,CAAC;AAEF;;KAEK;AACL,eAAO,MAAM,uBAAuB,QAAO,OAC6B,CAAC;AAEzE,KAAK,aAAa,GAAG,CAAC,IAAI,EAAE;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,UAAU,CAAA;CAAE,KAAK,IAAI,CAAC;AAIlG;;KAEK;AACL,eAAO,MAAM,8BAA8B,GAAI,UAAU,aAAa,SAErE,CAAC;AAEF,eAAO,MAAM,gBAAgB,iCAAoC,CAAC"}
1
+ {"version":3,"file":"dynamic-loading-setting.d.ts","sourceRoot":"","sources":["../../../../../src/dynamicLoading/dynamic-loading-setting.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,KAAK,eAAe,GAAG;IAGrB,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACzF,CAAC;AAGF,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvE,KAAK,oBAAoB,GAAG;IAG1B,cAAc,EAAE,MAAM,MAAM,EAAE,CAAC;IAC/B,SAAS,EAAE,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9E,CAAC;AAIF,KAAK,mBAAmB,GAAG;IACzB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;SAEK;IACL,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,kBAAkB,EAAE,CAClB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE;QACP,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,KACE,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACnC,CAAC;AAEF,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,UAAU;QAClB,OAAO,EAAE;YACP,SAAS,CAAC,EAAE,eAAe,CAAC;YAC5B,cAAc,CAAC,EAAE,oBAAoB,CAAC;YACtC,aAAa,CAAC,EAAE,mBAAmB,CAAC;SACrC,CAAC;KACH;IAGD,IAAI,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;CAClC;AAED,KAAK,cAAc,GAAG;IACpB,OAAO,EAAE;QACP,SAAS,EAAE,eAAe,CAAC;QAC3B,cAAc,EAAE,oBAAoB,CAAC;KACtC,CAAC;CACH,CAAC;AAeF,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,GAAG,GAAG,SAAS,IAAI;IACxE,IAAI,EAAE;QACJ,OAAO,EAAE;YACP,aAAa,EAAE,mBAAmB,CAAC;SACpC,CAAC;KACH,CAAC;CACH,CAEA;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,SAAS,IAAI;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,CAI1G;AAQD,eAAO,MAAM,yBAAyB,eAAiD,CAAC;AAExF;;;;;;;KAOK;AACL,eAAO,MAAM,wBAAwB,GAAI,OAAO,OAAO,KAAG,OAgBzD,CAAC;AAEF;;KAEK;AACL,eAAO,MAAM,uBAAuB,QAAO,OAC6B,CAAC;AAEzE,KAAK,aAAa,GAAG,CAAC,IAAI,EAAE;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,UAAU,CAAA;CAAE,KAAK,IAAI,CAAC;AAIlG;;KAEK;AACL,eAAO,MAAM,8BAA8B,GAAI,UAAU,aAAa,SAErE,CAAC;AAEF,eAAO,MAAM,gBAAgB,iCAAoC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-image-library.d.ts","sourceRoot":"","sources":["../../../../src/get-image-library.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,uBAAuB;qCAQS,MAAM,SAAS,MAAM,QAAQ,MAAM,SAAS,MAAM;;CAgB9F,CAAC"}
1
+ {"version":3,"file":"get-image-library.d.ts","sourceRoot":"","sources":["../../../../src/get-image-library.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,uBAAuB;qCAQS,MAAM,SAAS,MAAM,QAAQ,MAAM,SAAS,MAAM;;CAkB9F,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { TextStyle } from 'react-native';
2
- import type createIconSourceCache from './create-icon-source-cache';
2
+ import type { createIconSourceCache } from './create-icon-source-cache';
3
3
  export declare const getImageSourceSync: (imageSourceCache: ReturnType<typeof createIconSourceCache>, fontReference: string, glyph: string, size?: number, color?: TextStyle["color"]) => {
4
4
  uri: string;
5
5
  scale: number;
@@ -1 +1 @@
1
- {"version":3,"file":"get-image-source.d.ts","sourceRoot":"","sources":["../../../../src/get-image-source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,qBAAqB,MAAM,4BAA4B,CAAC;AAIpE,eAAO,MAAM,kBAAkB,GAC7B,kBAAkB,UAAU,CAAC,OAAO,qBAAqB,CAAC,EAC1D,eAAe,MAAM,EACrB,OAAO,MAAM,EACb,aAAwB,EACxB,QAAO,SAAS,CAAC,OAAO,CAAsB;;;CA2B/C,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,kBAAkB,UAAU,CAAC,OAAO,qBAAqB,CAAC,EAC1D,eAAe,MAAM,EACrB,OAAO,MAAM,EACb,aAAwB,EACxB,QAAO,SAAS,CAAC,OAAO,CAAsB;;;EA2B/C,CAAC"}
1
+ {"version":3,"file":"get-image-source.d.ts","sourceRoot":"","sources":["../../../../src/get-image-source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAIxE,eAAO,MAAM,kBAAkB,GAC7B,kBAAkB,UAAU,CAAC,OAAO,qBAAqB,CAAC,EAC1D,eAAe,MAAM,EACrB,OAAO,MAAM,EACb,aAAwB,EACxB,QAAO,SAAS,CAAC,OAAO,CAAsB;;;CAqB/C,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,kBAAkB,UAAU,CAAC,OAAO,qBAAqB,CAAC,EAC1D,eAAe,MAAM,EACrB,OAAO,MAAM,EACb,aAAwB,EACxB,QAAO,SAAS,CAAC,OAAO,CAAsB;;;EAgB/C,CAAC"}
@@ -1,19 +1,9 @@
1
- declare const TYPE_VALUE = "value";
2
- declare const TYPE_ERROR = "error";
3
1
  type ValueData = {
4
2
  uri: string;
5
3
  scale: number;
6
4
  };
7
- type Value = {
8
- type: typeof TYPE_VALUE;
9
- data: ValueData;
10
- } | {
11
- type: typeof TYPE_ERROR;
12
- data: Error;
13
- };
14
- export default function createIconSourceCache(): {
15
- setValue: (key: string, value: ValueData) => Map<string, Value>;
16
- setError: (key: string, error: Error) => Map<string, Value>;
5
+ export declare function createIconSourceCache(): {
6
+ setValue: (key: string, value: ValueData) => Map<string, ValueData>;
17
7
  get: (key: string) => ValueData | undefined;
18
8
  };
19
9
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"create-icon-source-cache.d.ts","sourceRoot":"","sources":["../../../../src/create-icon-source-cache.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,UAAU,UAAU,CAAC;AAC3B,QAAA,MAAM,UAAU,UAAU,CAAC;AAE3B,KAAK,SAAS,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhD,KAAK,KAAK,GAAG;IAAE,IAAI,EAAE,OAAO,UAAU,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,UAAU,CAAC;IAAC,IAAI,EAAE,KAAK,CAAA;CAAE,CAAC;AAErG,MAAM,CAAC,OAAO,UAAU,qBAAqB;oBAGpB,MAAM,SAAS,SAAS;oBAExB,MAAM,SAAS,KAAK;eAEzB,MAAM;EAczB"}
1
+ {"version":3,"file":"create-icon-source-cache.d.ts","sourceRoot":"","sources":["../../../../src/create-icon-source-cache.ts"],"names":[],"mappings":"AAAA,KAAK,SAAS,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhD,wBAAgB,qBAAqB;oBAGZ,MAAM,SAAS,SAAS;eAE7B,MAAM;EAGzB"}
@@ -10,12 +10,30 @@ type ExpoFontLoaderModule = {
10
10
  getLoadedFonts: () => string[];
11
11
  loadAsync: (fontFamilyAlias: string, asset: LoadAsyncAsset) => Promise<void>;
12
12
  };
13
+ type RenderToImageResult = {
14
+ /**
15
+ * The file uri to the image.
16
+ */
17
+ uri: string;
18
+ /**
19
+ * Image width in dp.
20
+ */
21
+ width: number;
22
+ /**
23
+ * Image height in dp.
24
+ */
25
+ height: number;
26
+ /**
27
+ * Scale factor of the image. Multiply the dp dimensions by this value to get the dimensions in pixels.
28
+ * */
29
+ scale: number;
30
+ };
13
31
  type ExpoFontUtilsModule = {
14
32
  renderToImageAsync: (glyph: string, options: {
15
33
  fontFamily?: string;
16
34
  size?: number;
17
35
  color?: number;
18
- }) => Promise<string>;
36
+ }) => Promise<RenderToImageResult>;
19
37
  };
20
38
  declare global {
21
39
  interface ExpoGlobal {
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic-loading-setting.d.ts","sourceRoot":"","sources":["../../../../../src/dynamicLoading/dynamic-loading-setting.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,KAAK,eAAe,GAAG;IAGrB,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACzF,CAAC;AAGF,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvE,KAAK,oBAAoB,GAAG;IAG1B,cAAc,EAAE,MAAM,MAAM,EAAE,CAAC;IAC/B,SAAS,EAAE,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9E,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,kBAAkB,EAAE,CAClB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE;QACP,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,KACE,OAAO,CAAC,MAAM,CAAC,CAAC;CACtB,CAAC;AAEF,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,UAAU;QAClB,OAAO,EAAE;YACP,SAAS,CAAC,EAAE,eAAe,CAAC;YAC5B,cAAc,CAAC,EAAE,oBAAoB,CAAC;YACtC,aAAa,CAAC,EAAE,mBAAmB,CAAC;SACrC,CAAC;KACH;IAGD,IAAI,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;CAClC;AAED,KAAK,cAAc,GAAG;IACpB,OAAO,EAAE;QACP,SAAS,EAAE,eAAe,CAAC;QAC3B,cAAc,EAAE,oBAAoB,CAAC;KACtC,CAAC;CACH,CAAC;AAeF,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,GAAG,GAAG,SAAS,IAAI;IACxE,IAAI,EAAE;QACJ,OAAO,EAAE;YACP,aAAa,EAAE,mBAAmB,CAAC;SACpC,CAAC;KACH,CAAC;CACH,CAEA;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,SAAS,IAAI;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,CAI1G;AAQD,eAAO,MAAM,yBAAyB,eAAiD,CAAC;AAExF;;;;;;;KAOK;AACL,eAAO,MAAM,wBAAwB,GAAI,OAAO,OAAO,KAAG,OAgBzD,CAAC;AAEF;;KAEK;AACL,eAAO,MAAM,uBAAuB,QAAO,OAC6B,CAAC;AAEzE,KAAK,aAAa,GAAG,CAAC,IAAI,EAAE;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,UAAU,CAAA;CAAE,KAAK,IAAI,CAAC;AAIlG;;KAEK;AACL,eAAO,MAAM,8BAA8B,GAAI,UAAU,aAAa,SAErE,CAAC;AAEF,eAAO,MAAM,gBAAgB,iCAAoC,CAAC"}
1
+ {"version":3,"file":"dynamic-loading-setting.d.ts","sourceRoot":"","sources":["../../../../../src/dynamicLoading/dynamic-loading-setting.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,KAAK,eAAe,GAAG;IAGrB,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACzF,CAAC;AAGF,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvE,KAAK,oBAAoB,GAAG;IAG1B,cAAc,EAAE,MAAM,MAAM,EAAE,CAAC;IAC/B,SAAS,EAAE,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9E,CAAC;AAIF,KAAK,mBAAmB,GAAG;IACzB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;SAEK;IACL,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,kBAAkB,EAAE,CAClB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE;QACP,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,KACE,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACnC,CAAC;AAEF,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,UAAU;QAClB,OAAO,EAAE;YACP,SAAS,CAAC,EAAE,eAAe,CAAC;YAC5B,cAAc,CAAC,EAAE,oBAAoB,CAAC;YACtC,aAAa,CAAC,EAAE,mBAAmB,CAAC;SACrC,CAAC;KACH;IAGD,IAAI,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;CAClC;AAED,KAAK,cAAc,GAAG;IACpB,OAAO,EAAE;QACP,SAAS,EAAE,eAAe,CAAC;QAC3B,cAAc,EAAE,oBAAoB,CAAC;KACtC,CAAC;CACH,CAAC;AAeF,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,GAAG,GAAG,SAAS,IAAI;IACxE,IAAI,EAAE;QACJ,OAAO,EAAE;YACP,aAAa,EAAE,mBAAmB,CAAC;SACpC,CAAC;KACH,CAAC;CACH,CAEA;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,SAAS,IAAI;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,CAI1G;AAQD,eAAO,MAAM,yBAAyB,eAAiD,CAAC;AAExF;;;;;;;KAOK;AACL,eAAO,MAAM,wBAAwB,GAAI,OAAO,OAAO,KAAG,OAgBzD,CAAC;AAEF;;KAEK;AACL,eAAO,MAAM,uBAAuB,QAAO,OAC6B,CAAC;AAEzE,KAAK,aAAa,GAAG,CAAC,IAAI,EAAE;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,UAAU,CAAA;CAAE,KAAK,IAAI,CAAC;AAIlG;;KAEK;AACL,eAAO,MAAM,8BAA8B,GAAI,UAAU,aAAa,SAErE,CAAC;AAEF,eAAO,MAAM,gBAAgB,iCAAoC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-image-library.d.ts","sourceRoot":"","sources":["../../../../src/get-image-library.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,uBAAuB;qCAQS,MAAM,SAAS,MAAM,QAAQ,MAAM,SAAS,MAAM;;CAgB9F,CAAC"}
1
+ {"version":3,"file":"get-image-library.d.ts","sourceRoot":"","sources":["../../../../src/get-image-library.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,uBAAuB;qCAQS,MAAM,SAAS,MAAM,QAAQ,MAAM,SAAS,MAAM;;CAkB9F,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { TextStyle } from 'react-native';
2
- import type createIconSourceCache from './create-icon-source-cache';
2
+ import type { createIconSourceCache } from './create-icon-source-cache';
3
3
  export declare const getImageSourceSync: (imageSourceCache: ReturnType<typeof createIconSourceCache>, fontReference: string, glyph: string, size?: number, color?: TextStyle["color"]) => {
4
4
  uri: string;
5
5
  scale: number;
@@ -1 +1 @@
1
- {"version":3,"file":"get-image-source.d.ts","sourceRoot":"","sources":["../../../../src/get-image-source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,qBAAqB,MAAM,4BAA4B,CAAC;AAIpE,eAAO,MAAM,kBAAkB,GAC7B,kBAAkB,UAAU,CAAC,OAAO,qBAAqB,CAAC,EAC1D,eAAe,MAAM,EACrB,OAAO,MAAM,EACb,aAAwB,EACxB,QAAO,SAAS,CAAC,OAAO,CAAsB;;;CA2B/C,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,kBAAkB,UAAU,CAAC,OAAO,qBAAqB,CAAC,EAC1D,eAAe,MAAM,EACrB,OAAO,MAAM,EACb,aAAwB,EACxB,QAAO,SAAS,CAAC,OAAO,CAAsB;;;EA2B/C,CAAC"}
1
+ {"version":3,"file":"get-image-source.d.ts","sourceRoot":"","sources":["../../../../src/get-image-source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAIxE,eAAO,MAAM,kBAAkB,GAC7B,kBAAkB,UAAU,CAAC,OAAO,qBAAqB,CAAC,EAC1D,eAAe,MAAM,EACrB,OAAO,MAAM,EACb,aAAwB,EACxB,QAAO,SAAS,CAAC,OAAO,CAAsB;;;CAqB/C,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,kBAAkB,UAAU,CAAC,OAAO,qBAAqB,CAAC,EAC1D,eAAe,MAAM,EACrB,OAAO,MAAM,EACb,aAAwB,EACxB,QAAO,SAAS,CAAC,OAAO,CAAsB;;;EAgB/C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-native-vector-icons/common",
3
- "version": "12.4.1",
3
+ "version": "12.4.2",
4
4
  "description": "Customizable Icons for React Native with support for image source and full styling.",
5
5
  "source": "./src/index.ts",
6
6
  "main": "./lib/commonjs/index.js",
@@ -3,7 +3,7 @@ import React, { forwardRef, type Ref, useEffect } from 'react';
3
3
  // eslint-disable-next-line import/no-extraneous-dependencies
4
4
  import { Platform, Text, type TextProps, type TextStyle } from 'react-native';
5
5
 
6
- import createIconSourceCache from './create-icon-source-cache';
6
+ import { createIconSourceCache } from './create-icon-source-cache';
7
7
  import { DEFAULT_ICON_COLOR, DEFAULT_ICON_SIZE } from './defaults';
8
8
  import { dynamicLoader } from './dynamicLoading/dynamic-font-loading';
9
9
  import { isDynamicLoadingEnabled } from './dynamicLoading/dynamic-loading-setting';
@@ -1,29 +1,11 @@
1
- const TYPE_VALUE = 'value';
2
- const TYPE_ERROR = 'error';
3
-
4
1
  type ValueData = { uri: string; scale: number };
5
2
 
6
- type Value = { type: typeof TYPE_VALUE; data: ValueData } | { type: typeof TYPE_ERROR; data: Error };
7
-
8
- export default function createIconSourceCache() {
9
- const cache = new Map<string, Value>();
10
-
11
- const setValue = (key: string, value: ValueData) => cache.set(key, { type: TYPE_VALUE, data: value });
12
-
13
- const setError = (key: string, error: Error) => cache.set(key, { type: TYPE_ERROR, data: error });
3
+ export function createIconSourceCache() {
4
+ const cache = new Map<string, ValueData>();
14
5
 
15
- const get = (key: string) => {
16
- const value = cache.get(key);
17
- if (!value) {
18
- return undefined;
19
- }
6
+ const setValue = (key: string, value: ValueData) => cache.set(key, value);
20
7
 
21
- const { type, data } = value;
22
- if (type === TYPE_ERROR) {
23
- throw data;
24
- }
25
- return data;
26
- };
8
+ const get = (key: string) => cache.get(key);
27
9
 
28
- return { setValue, setError, get };
10
+ return { setValue, get };
29
11
  }
@@ -18,6 +18,28 @@ type ExpoFontLoaderModule = {
18
18
  loadAsync: (fontFamilyAlias: string, asset: LoadAsyncAsset) => Promise<void>;
19
19
  };
20
20
 
21
+ // RenderToImageResult needs to be usable as the `source` prop for image,
22
+ // so it must stay compatible with ImageURISource type
23
+ type RenderToImageResult = {
24
+ /**
25
+ * The file uri to the image.
26
+ */
27
+ uri: string;
28
+ /**
29
+ * Image width in dp.
30
+ */
31
+ width: number;
32
+ /**
33
+ * Image height in dp.
34
+ */
35
+ height: number;
36
+
37
+ /**
38
+ * Scale factor of the image. Multiply the dp dimensions by this value to get the dimensions in pixels.
39
+ * */
40
+ scale: number;
41
+ };
42
+
21
43
  type ExpoFontUtilsModule = {
22
44
  renderToImageAsync: (
23
45
  glyph: string,
@@ -26,7 +48,7 @@ type ExpoFontUtilsModule = {
26
48
  size?: number;
27
49
  color?: number;
28
50
  },
29
- ) => Promise<string>;
51
+ ) => Promise<RenderToImageResult>;
30
52
  };
31
53
 
32
54
  declare global {
@@ -23,12 +23,14 @@ export const ensureGetImageAvailable = () => {
23
23
  if (hasExpoRenderToImage) {
24
24
  const { ExpoFontUtils } = globalRef.expo.modules;
25
25
  return {
26
- getImageForFont: async (fontReference: string, glyph: string, size: number, color: number) =>
27
- ExpoFontUtils.renderToImageAsync(glyph, {
26
+ getImageForFont: async (fontReference: string, glyph: string, size: number, color: number) => {
27
+ const result = await ExpoFontUtils.renderToImageAsync(glyph, {
28
28
  fontFamily: fontReference,
29
29
  size,
30
30
  color,
31
- }),
31
+ });
32
+ return result.uri;
33
+ },
32
34
  getImageForFontSync: () => {
33
35
  throw new Error(
34
36
  'You attempted to call `getImageForFontSync`. Expo dev client with `@react-native-vector-icons/get-image` installed is required for this. Alternatively, call `getImageForFont` or generate the image yourself and bundle it with the app.',
@@ -37,6 +39,6 @@ export const ensureGetImageAvailable = () => {
37
39
  };
38
40
  }
39
41
  throw new Error(
40
- 'Error in getImageSource / getImageSourceSync: You need to either (1) install `@react-native-vector-icons/get-image` or (2) use Expo SDK 53+ (Expo dev client or Expo Go). Check your setup and rebuild the app.',
42
+ 'Error in getImageSource / getImageSourceSync: You need to either (1) install `@react-native-vector-icons/get-image` or (2) use Expo SDK 54+ (Expo dev client or Expo Go). Check your setup and rebuild the app.',
41
43
  );
42
44
  };
@@ -1,7 +1,7 @@
1
1
  import type { TextStyle } from 'react-native';
2
2
  import { PixelRatio, processColor } from 'react-native';
3
3
 
4
- import type createIconSourceCache from './create-icon-source-cache';
4
+ import type { createIconSourceCache } from './create-icon-source-cache';
5
5
  import { DEFAULT_ICON_COLOR, DEFAULT_ICON_SIZE } from './defaults';
6
6
  import { ensureGetImageAvailable } from './get-image-library';
7
7
 
@@ -19,24 +19,18 @@ export const getImageSourceSync = (
19
19
 
20
20
  const maybeCachedValue = imageSourceCache.get(cacheKey);
21
21
  if (maybeCachedValue !== undefined) {
22
- // FIXME: Should this check if it's an error and throw it again?
23
22
  return maybeCachedValue;
24
23
  }
25
24
 
26
- try {
27
- const imagePath = NativeIconAPI.getImageForFontSync(
28
- fontReference,
29
- glyph,
30
- size,
31
- processedColor as number, // FIXME what if a non existent colour was passed in?
32
- );
33
- const value = { uri: imagePath, scale: PixelRatio.get() };
34
- imageSourceCache.setValue(cacheKey, value);
35
- return value;
36
- } catch (error) {
37
- imageSourceCache.setError(cacheKey, error as Error);
38
- throw error;
39
- }
25
+ const imagePath = NativeIconAPI.getImageForFontSync(
26
+ fontReference,
27
+ glyph,
28
+ size,
29
+ processedColor as number, // FIXME what if a non existent colour was passed in?,
30
+ );
31
+ const value = { uri: imagePath, scale: PixelRatio.get() };
32
+ imageSourceCache.setValue(cacheKey, value);
33
+ return value;
40
34
  };
41
35
 
42
36
  export const getImageSource = async (
@@ -53,22 +47,11 @@ export const getImageSource = async (
53
47
 
54
48
  const maybeCachedValue = imageSourceCache.get(cacheKey);
55
49
  if (maybeCachedValue !== undefined) {
56
- // FIXME: Should this check if it's an error and throw it again?
57
50
  return maybeCachedValue;
58
51
  }
59
52
 
60
- try {
61
- const imagePath = await NativeIconAPI.getImageForFont(
62
- fontReference,
63
- glyph,
64
- size,
65
- processedColor as number, // FIXME what if a non existent colour was passed in?
66
- );
67
- const value = { uri: imagePath, scale: PixelRatio.get() };
68
- imageSourceCache.setValue(cacheKey, value);
69
- return value;
70
- } catch (error) {
71
- imageSourceCache.setError(cacheKey, error as Error);
72
- throw error;
73
- }
53
+ const imagePath = await NativeIconAPI.getImageForFont(fontReference, glyph, size, processedColor as number);
54
+ const value = { uri: imagePath, scale: PixelRatio.get() };
55
+ imageSourceCache.setValue(cacheKey, value);
56
+ return value;
74
57
  };