react-native-nano-icons 0.1.7 → 0.2.0

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 (116) hide show
  1. package/README.md +75 -13
  2. package/android/src/main/java/com/nanoicons/NanoIconsFontLoaderModule.kt +58 -0
  3. package/android/src/main/java/com/nanoicons/NanoIconsPackage.kt +19 -2
  4. package/ios/NanoIconView.h +5 -0
  5. package/ios/NanoIconView.mm +35 -9
  6. package/ios/NanoIconsFontLoader.h +11 -0
  7. package/ios/NanoIconsFontLoader.mm +110 -0
  8. package/lib/commonjs/cli/build.d.ts +3 -0
  9. package/lib/commonjs/cli/build.js +8 -4
  10. package/lib/commonjs/cli/config.d.ts +1 -0
  11. package/lib/commonjs/cli/config.js +10 -0
  12. package/lib/commonjs/cli/expoConfig.d.ts +8 -0
  13. package/lib/commonjs/cli/expoConfig.js +34 -0
  14. package/lib/commonjs/cli/index.d.ts +2 -1
  15. package/lib/commonjs/cli/index.js +4 -1
  16. package/lib/commonjs/cli/link.js +32 -22
  17. package/lib/commonjs/plugin/src/types.d.ts +9 -0
  18. package/lib/commonjs/plugin/src/withNanoIconsFontLinking.d.ts +5 -0
  19. package/lib/commonjs/plugin/src/withNanoIconsFontLinking.js +24 -10
  20. package/lib/commonjs/scripts/cli.js +23 -11
  21. package/lib/commonjs/src/core/pipeline/config.d.ts +1 -0
  22. package/lib/commonjs/src/core/pipeline/managers.js +1 -2
  23. package/lib/commonjs/src/core/pipeline/run.js +1 -0
  24. package/lib/commonjs/src/core/svg/svg_dom.d.ts +1 -0
  25. package/lib/commonjs/src/core/svg/svg_dom.js +22 -17
  26. package/lib/commonjs/src/core/svg/svg_pathops.js +30 -16
  27. package/lib/commonjs/src/core/types.d.ts +3 -0
  28. package/lib/module/const/codegenPrimitives.js +2 -0
  29. package/lib/module/const/codegenPrimitives.js.map +1 -0
  30. package/lib/module/core/font/compile.js.map +1 -1
  31. package/lib/module/core/pipeline/config.js.map +1 -1
  32. package/lib/module/core/pipeline/managers.js.map +1 -1
  33. package/lib/module/core/pipeline/run.js +4 -1
  34. package/lib/module/core/pipeline/run.js.map +1 -1
  35. package/lib/module/core/svg/layers.js.map +1 -1
  36. package/lib/module/core/svg/svg_dom.js +19 -19
  37. package/lib/module/core/svg/svg_dom.js.map +1 -1
  38. package/lib/module/core/svg/svg_pathops.js.map +1 -1
  39. package/lib/module/createNanoIconsSet.js +2 -2
  40. package/lib/module/createNanoIconsSet.js.map +1 -1
  41. package/lib/module/createNanoIconsSet.native.js +43 -16
  42. package/lib/module/createNanoIconsSet.native.js.map +1 -1
  43. package/lib/module/createNanoIconsSet.shared.js +49 -20
  44. package/lib/module/createNanoIconsSet.shared.js.map +1 -1
  45. package/lib/module/createNanoIconsSet.web.js +78 -0
  46. package/lib/module/createNanoIconsSet.web.js.map +1 -0
  47. package/lib/module/loadDynamicFont.js +118 -0
  48. package/lib/module/loadDynamicFont.js.map +1 -0
  49. package/lib/module/specs/NanoIconViewNativeComponent.ts +9 -8
  50. package/lib/module/specs/NativeNanoIconsFontLoader.js +7 -0
  51. package/lib/module/specs/NativeNanoIconsFontLoader.js.map +1 -0
  52. package/lib/module/utils/glyphRuntime.js +37 -0
  53. package/lib/module/utils/glyphRuntime.js.map +1 -0
  54. package/lib/typescript/__tests__/glyphRuntime.unit.test.d.ts +2 -0
  55. package/lib/typescript/__tests__/glyphRuntime.unit.test.d.ts.map +1 -0
  56. package/lib/typescript/__tests__/link.unit.test.d.ts +3 -0
  57. package/lib/typescript/__tests__/link.unit.test.d.ts.map +1 -0
  58. package/lib/typescript/__tests__/loadDynamicFont.unit.test.d.ts +2 -0
  59. package/lib/typescript/__tests__/loadDynamicFont.unit.test.d.ts.map +1 -0
  60. package/lib/typescript/cli/build.d.ts +3 -0
  61. package/lib/typescript/cli/build.d.ts.map +1 -1
  62. package/lib/typescript/cli/link.d.ts +12 -0
  63. package/lib/typescript/cli/link.d.ts.map +1 -0
  64. package/lib/typescript/src/const/codegenPrimitives.d.ts +3 -0
  65. package/lib/typescript/src/const/codegenPrimitives.d.ts.map +1 -0
  66. package/lib/typescript/src/core/font/compile.d.ts.map +1 -1
  67. package/lib/typescript/src/core/pipeline/config.d.ts +1 -0
  68. package/lib/typescript/src/core/pipeline/config.d.ts.map +1 -1
  69. package/lib/typescript/src/core/pipeline/managers.d.ts.map +1 -1
  70. package/lib/typescript/src/core/pipeline/run.d.ts.map +1 -1
  71. package/lib/typescript/src/core/svg/svg_dom.d.ts +1 -0
  72. package/lib/typescript/src/core/svg/svg_dom.d.ts.map +1 -1
  73. package/lib/typescript/src/core/svg/svg_pathops.d.ts.map +1 -1
  74. package/lib/typescript/src/core/types.d.ts +3 -0
  75. package/lib/typescript/src/core/types.d.ts.map +1 -1
  76. package/lib/typescript/src/createNanoIconsSet.d.ts +1 -0
  77. package/lib/typescript/src/createNanoIconsSet.d.ts.map +1 -1
  78. package/lib/typescript/src/createNanoIconsSet.native.d.ts +1 -0
  79. package/lib/typescript/src/createNanoIconsSet.native.d.ts.map +1 -1
  80. package/lib/typescript/src/createNanoIconsSet.shared.d.ts +11 -0
  81. package/lib/typescript/src/createNanoIconsSet.shared.d.ts.map +1 -1
  82. package/lib/typescript/src/createNanoIconsSet.web.d.ts +7 -0
  83. package/lib/typescript/src/createNanoIconsSet.web.d.ts.map +1 -0
  84. package/lib/typescript/src/loadDynamicFont.d.ts +28 -0
  85. package/lib/typescript/src/loadDynamicFont.d.ts.map +1 -0
  86. package/lib/typescript/src/specs/NanoIconViewNativeComponent.d.ts +9 -8
  87. package/lib/typescript/src/specs/NanoIconViewNativeComponent.d.ts.map +1 -1
  88. package/lib/typescript/src/specs/NativeNanoIconsFontLoader.d.ts +8 -0
  89. package/lib/typescript/src/specs/NativeNanoIconsFontLoader.d.ts.map +1 -0
  90. package/lib/typescript/src/types.d.ts +7 -1
  91. package/lib/typescript/src/types.d.ts.map +1 -1
  92. package/lib/typescript/src/utils/glyphRuntime.d.ts +18 -0
  93. package/lib/typescript/src/utils/glyphRuntime.d.ts.map +1 -0
  94. package/package.json +8 -5
  95. package/plugin/src/types.ts +9 -0
  96. package/plugin/src/withNanoIconsFontLinking.ts +29 -10
  97. package/react-native-nano-icons.podspec +1 -1
  98. package/scripts/cli.ts +31 -11
  99. package/src/const/codegenPrimitives.ts +14 -0
  100. package/src/core/font/compile.ts +1 -2
  101. package/src/core/pipeline/config.ts +1 -0
  102. package/src/core/pipeline/managers.ts +5 -10
  103. package/src/core/pipeline/run.ts +11 -6
  104. package/src/core/svg/layers.ts +4 -4
  105. package/src/core/svg/svg_dom.ts +26 -23
  106. package/src/core/svg/svg_pathops.ts +50 -24
  107. package/src/core/types.ts +10 -2
  108. package/src/createNanoIconsSet.native.tsx +78 -26
  109. package/src/createNanoIconsSet.shared.tsx +93 -40
  110. package/src/createNanoIconsSet.tsx +9 -1
  111. package/src/createNanoIconsSet.web.tsx +109 -0
  112. package/src/loadDynamicFont.ts +162 -0
  113. package/src/specs/NanoIconViewNativeComponent.ts +9 -8
  114. package/src/specs/NativeNanoIconsFontLoader.ts +11 -0
  115. package/src/types.ts +5 -1
  116. package/src/utils/glyphRuntime.ts +46 -0
@@ -1 +1 @@
1
- {"version":3,"names":["memo","useMemo","PixelRatio","Platform","Text","View","shallowEqualColor","jsx","_jsx","DEFAULT_ICON_SIZE","createJSIconSet","glyphMap","fontBasename","m","f","fontReference","select","windows","default","styleOverrides","fontFamily","fontWeight","fontStyle","position","includeFontPadding","bottom","unitsPerEm","u","resolveEntry","name","i","codepointCache","Map","getChar","codepoint","ch","get","undefined","String","fromCodePoint","set","Icon","size","color","style","allowFontScaling","accessible","accessibilityLabel","accessibilityRole","testID","ref","fontScale","getFontScale","adv","layers","scaledSize","width","colorArray","Array","isArray","lastPaletteColor","length","containerStyle","height","sizeStyle","fontSize","children","map","srcColor","layerColor","selectable","prev","next","displayName"],"sourceRoot":"../../src","sources":["createNanoIconsSet.shared.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["memo","useMemo","PixelRatio","Platform","Text","View","shallowEqualColor","DEFAULT_ICON_SIZE","resolveGlyphEntry","createCharCache","createLayerColorResolver","loadDynamicFont","useDynamicFontPending","jsx","_jsx","warnIfLinkingMismatch","fontFamily","linking","font","__DEV__","isDynamic","console","warn","createJSIconSet","glyphMap","fontBasename","m","f","l","managed","catch","err","fontReference","select","windows","default","styleOverrides","fontWeight","fontStyle","position","includeFontPadding","bottom","unitsPerEm","u","getChar","Icon","name","size","color","style","allowFontScaling","accessible","accessibilityLabel","accessibilityRole","accessibilityElementsHidden","importantForAccessibility","testID","ref","fontScale","getFontScale","adv","layers","scaledSize","width","pending","resolveColor","containerStyle","height","sizeStyle","fontSize","children","map","codepoint","srcColor","i","layerColor","selectable","prev","next","displayName","IconComp","loadFont","override","force","Promise","resolve"],"sourceRoot":"../../src","sources":["createNanoIconsSet.shared.tsx"],"mappings":";;AAAA,SAASA,IAAI,EAAEC,OAAO,QAAQ,OAAO;AACrC,SAASC,UAAU,EAAEC,QAAQ,EAAEC,IAAI,EAAEC,IAAI,QAAwB,cAAc;AAG/E,SAASC,iBAAiB,QAAQ,8BAA2B;AAC7D,SACEC,iBAAiB,EACjBC,iBAAiB,EACjBC,eAAe,EACfC,wBAAwB,QACnB,yBAAsB;AAC7B,SAASC,eAAe,EAAEC,qBAAqB,QAAQ,sBAAmB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAG3E,SAASR,iBAAiB;;AAE1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASS,qBAAqBA,CACnCC,UAAkB,EAClBC,OAA2B,EAC3BC,IAAa,EACP;EACN,IAAI,CAACC,OAAO,EAAE;EAEd,MAAMC,SAAS,GAAGH,OAAO,KAAK,GAAG;EACjC,IAAIG,SAAS,IAAIF,IAAI,IAAI,IAAI,EAAE;IAC7BG,OAAO,CAACC,IAAI,CACV,8BAA8BN,UAAU,kCAAkC,GACxE,qEAAqE,GACrE,uDAAuDA,UAAU,IACrE,CAAC;IACD;EACF;EACA,IAAI,CAACI,SAAS,IAAIF,IAAI,IAAI,IAAI,EAAE;IAC9BG,OAAO,CAACC,IAAI,CACV,8BAA8BN,UAAU,kCAAkC,GACxE,wDAAwD,GACxD,iEACJ,CAAC;EACH;AACF;;AAEA;AACA;AACA;AACA;;AAQA,OAAO,SAASO,eAAeA,CAC7BC,QAAY,EACZN,IAAc,EACK;EACnB,MAAMO,YAAY,GAAGD,QAAQ,CAACE,CAAC,CAACC,CAAC;EACjCZ,qBAAqB,CAACU,YAAY,EAAED,QAAQ,CAACE,CAAC,CAACE,CAAC,EAAEV,IAAI,CAAC;;EAEvD;EACA,MAAMW,OAAO,GAAGL,QAAQ,CAACE,CAAC,CAACE,CAAC,KAAK,GAAG,IAAIV,IAAI,IAAI,IAAI;EACpD,IAAIW,OAAO,EAAE;IACX,KAAKlB,eAAe,CAACc,YAAY,EAAEP,IAAI,CAAC,CAACY,KAAK,CAAEC,GAAG,IAAK;MACtD,IAAIZ,OAAO,EACTE,OAAO,CAACC,IAAI,CACV,0DAA0DG,YAAY,IAAI,EAC1EM,GACF,CAAC;IACL,CAAC,CAAC;EACJ;EAEA,MAAMC,aAAa,GAAG7B,QAAQ,CAAC8B,MAAM,CAAC;IACpCC,OAAO,EAAE,WAAWT,YAAY,EAAE;IAClCU,OAAO,EAAEV;EACX,CAAC,CAAC;EAEF,MAAMW,cAAkC,GAAG;IACzCpB,UAAU,EAAEgB,aAAa;IACzBK,UAAU,EAAE,QAAQ;IACpBC,SAAS,EAAE,QAAQ;IACnBC,QAAQ,EAAE,UAAU;IACpBC,kBAAkB,EAAE,KAAK;IACzBC,MAAM,EAAE;EACV,CAAC;EAED,MAAMC,UAAU,GAAGlB,QAAQ,CAACE,CAAC,CAACiB,CAAC;EAC/B,MAAMC,OAAO,GAAGnC,eAAe,CAAC,CAAC;EAEjC,MAAMoC,IAAI,gBAAG7C,IAAI,CACf,CAAC;IACC8C,IAAI;IACJC,IAAI,GAAGxC,iBAAiB;IACxByC,KAAK;IACLC,KAAK;IACLC,gBAAgB,GAAG,IAAI;IACvBC,UAAU;IACVC,kBAAkB;IAClBC,iBAAiB,GAAG,OAAO;IAC3BC,2BAA2B;IAC3BC,yBAAyB;IACzBC,MAAM;IACNC;EACwB,CAAC,KAAK;IAC9B,MAAMC,SAAS,GAAGR,gBAAgB,GAAGhD,UAAU,CAACyD,YAAY,CAAC,CAAC,GAAG,CAAC;IAClE,MAAM,CAACC,GAAG,EAAEC,MAAM,CAAC,GAAGrD,iBAAiB,CAACgB,QAAQ,EAAEsB,IAAI,CAAC;IACvD,MAAMgB,UAAU,GAAGf,IAAI,GAAGW,SAAS;IACnC,MAAMK,KAAK,GAAIH,GAAG,GAAGlB,UAAU,GAAIoB,UAAU;IAE7C,MAAME,OAAO,GAAGpD,qBAAqB,CAACiB,OAAO,EAAEJ,YAAY,CAAC;IAE5D,MAAMwC,YAAY,GAAGvD,wBAAwB,CAACsC,KAAK,CAAC;IAEpD,MAAMkB,cAAc,GAAGjE,OAAO,CAC5B,MAAM,CAAC;MAAEkE,MAAM,EAAEL,UAAU;MAAEC,KAAK;MAAEtB,MAAM,EAAE;IAAW,CAAC,EAAEQ,KAAK,CAAC,EAChE,CAACa,UAAU,EAAEC,KAAK,EAAEd,KAAK,CAC3B,CAAC;IAED,MAAMmB,SAAS,GAAGnE,OAAO,CAAC,OAAO;MAAEoE,QAAQ,EAAEtB;IAAK,CAAC,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;IAE7D,oBACEjC,IAAA,CAACT,IAAI;MACHoD,GAAG,EAAEA,GAAI;MACTR,KAAK,EAAEiB,cAAe;MACtBf,UAAU,EAAEA,UAAW;MACvBE,iBAAiB,EAAEA,iBAAkB;MACrCD,kBAAkB,EAAEA,kBAAkB,IAAKN,IAAgB;MAC3DQ,2BAA2B,EAAEA,2BAA4B;MACzDC,yBAAyB,EAAEA,yBAA0B;MACrDC,MAAM,EAAEA,MAAO;MAAAc,QAAA,EACdN,OAAO,GACJ,IAAI,GACJH,MAAM,CAACU,GAAG,CAAC,CAAC,CAACC,SAAS,EAAEC,QAAQ,CAAC,EAAEC,CAAC,KAAK;QACvC,MAAMC,UAAU,GAAGV,YAAY,CAACS,CAAC,EAAED,QAAQ,CAAC;QAE5C,oBACE3D,IAAA,CAACV,IAAI;UAEHwE,UAAU,EAAE,KAAM;UAClBzB,UAAU,EAAE,KAAM;UAClBD,gBAAgB,EAAEA,gBAAiB;UACnCD,KAAK,EAAE,CAACb,cAAc,EAAEgC,SAAS,EAAE;YAAEpB,KAAK,EAAE2B;UAAW,CAAC,CAAE;UAAAL,QAAA,EACzD1B,OAAO,CAAC4B,SAAS;QAAC,GALdE,CAMD,CAAC;MAEX,CAAC;IAAC,CACF,CAAC;EAEX,CAAC,EACD,CAACG,IAAI,EAAEC,IAAI,KACTD,IAAI,CAAC/B,IAAI,KAAKgC,IAAI,CAAChC,IAAI,IACvB+B,IAAI,CAAC9B,IAAI,KAAK+B,IAAI,CAAC/B,IAAI,IACvB8B,IAAI,CAAC3B,gBAAgB,KAAK4B,IAAI,CAAC5B,gBAAgB,IAC/C2B,IAAI,CAAC5B,KAAK,KAAK6B,IAAI,CAAC7B,KAAK,IACzB3C,iBAAiB,CAACuE,IAAI,CAAC7B,KAAK,EAAE8B,IAAI,CAAC9B,KAAK,CAC5C,CAAC;EAEDH,IAAI,CAACkC,WAAW,GAAG,YAAYtD,YAAY,GAAG;EAE9C,MAAMuD,QAAQ,GAAGnC,IAAoC;EACrDmC,QAAQ,CAACC,QAAQ,GAAIC,QAAQ,IAC3B1D,QAAQ,CAACE,CAAC,CAACE,CAAC,KAAK,GAAG,GAChBjB,eAAe,CAACc,YAAY,EAAEyD,QAAQ,IAAIhE,IAAI,EAAE;IAAEiE,KAAK,EAAE;EAAK,CAAC,CAAC,GAChEC,OAAO,CAACC,OAAO,CAAC,CAAC;EACvB,OAAOL,QAAQ;AACjB","ignoreList":[]}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ import { memo, useMemo } from 'react';
4
+ import { shallowEqualColor } from "./utils/shallowEqualColor.js";
5
+ import { DEFAULT_ICON_SIZE, resolveGlyphEntry, createCharCache, createLayerColorResolver } from "./utils/glyphRuntime.js";
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ export { shallowEqualColor };
8
+
9
+ // Web renderer: uses inline <span> elements so icons flow out of the box (display: inline-block keeps width/height)
10
+ export function createIconSet(glyphMap) {
11
+ const fontBasename = glyphMap.m.f;
12
+ const unitsPerEm = glyphMap.m.u;
13
+ const getChar = createCharCache();
14
+ const Icon = /*#__PURE__*/memo(({
15
+ name,
16
+ size = DEFAULT_ICON_SIZE,
17
+ color,
18
+ style,
19
+ accessible,
20
+ accessibilityLabel,
21
+ accessibilityRole = 'image',
22
+ accessibilityElementsHidden,
23
+ testID,
24
+ ref
25
+ }) => {
26
+ const [adv, layers] = resolveGlyphEntry(glyphMap, name);
27
+ const width = adv / unitsPerEm * size;
28
+ const resolveColor = createLayerColorResolver(color);
29
+ const containerStyle = useMemo(() => ({
30
+ display: 'inline-block',
31
+ position: 'relative',
32
+ width,
33
+ height: size,
34
+ lineHeight: 0,
35
+ verticalAlign: 'middle',
36
+ ...style
37
+ }), [size, width, style]);
38
+ const layerBaseStyle = useMemo(() => ({
39
+ position: 'absolute',
40
+ left: 0,
41
+ bottom: 0,
42
+ fontFamily: fontBasename,
43
+ fontWeight: 'normal',
44
+ fontStyle: 'normal',
45
+ fontSize: size,
46
+ lineHeight: 1,
47
+ whiteSpace: 'pre'
48
+ }), [size]);
49
+ const isHidden = accessible === false || accessibilityElementsHidden;
50
+ const role = accessibilityRole === 'image' ? 'img' : accessibilityRole;
51
+ return /*#__PURE__*/_jsx("span", {
52
+ ref: ref,
53
+ style: containerStyle,
54
+ role: isHidden ? undefined : role,
55
+ "aria-label": isHidden ? undefined : accessibilityLabel ?? name,
56
+ "aria-hidden": isHidden || undefined,
57
+ "data-testid": testID,
58
+ children: layers.map(([codepoint, srcColor], i) => {
59
+ const layerColor = resolveColor(i, srcColor);
60
+ return /*#__PURE__*/_jsx("span", {
61
+ "aria-hidden": true,
62
+ style: {
63
+ ...layerBaseStyle,
64
+ color: layerColor
65
+ },
66
+ children: getChar(codepoint)
67
+ }, i);
68
+ })
69
+ });
70
+ }, (prev, next) => prev.name === next.name && prev.size === next.size && prev.style === next.style && shallowEqualColor(prev.color, next.color));
71
+ Icon.displayName = `NanoIcon(${fontBasename})`;
72
+
73
+ // No-op on web: fonts come from CSS @font-face, nothing to load at runtime.
74
+ const IconComp = Icon;
75
+ IconComp.loadFont = () => Promise.resolve();
76
+ return IconComp;
77
+ }
78
+ //# sourceMappingURL=createNanoIconsSet.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["memo","useMemo","shallowEqualColor","DEFAULT_ICON_SIZE","resolveGlyphEntry","createCharCache","createLayerColorResolver","jsx","_jsx","createIconSet","glyphMap","fontBasename","m","f","unitsPerEm","u","getChar","Icon","name","size","color","style","accessible","accessibilityLabel","accessibilityRole","accessibilityElementsHidden","testID","ref","adv","layers","width","resolveColor","containerStyle","display","position","height","lineHeight","verticalAlign","layerBaseStyle","left","bottom","fontFamily","fontWeight","fontStyle","fontSize","whiteSpace","isHidden","role","undefined","children","map","codepoint","srcColor","i","layerColor","prev","next","displayName","IconComp","loadFont","Promise","resolve"],"sourceRoot":"../../src","sources":["createNanoIconsSet.web.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+
3
+ import { useSyncExternalStore } from 'react';
4
+ import { Image, Platform } from 'react-native';
5
+ import NanoIconsFontLoader from "./specs/NativeNanoIconsFontLoader.js";
6
+
7
+ /**
8
+ * Runtime registration of dynamically-linked (`l:"d"`) fonts.
9
+ */
10
+
11
+ const statusByFamily = new Map();
12
+ const inFlight = new Map();
13
+ const listeners = new Set();
14
+ function emit() {
15
+ for (const l of listeners) l();
16
+ }
17
+ function setStatus(family, status) {
18
+ statusByFamily.set(family, status);
19
+ emit();
20
+ }
21
+ export function getFontStatus(family) {
22
+ return statusByFamily.get(family);
23
+ }
24
+
25
+ /** A font source: a require()'d module, an { uri }, or a path/uri string. */
26
+
27
+ export function resolveFontUri(font) {
28
+ if (typeof font === 'number') {
29
+ const source = Image.resolveAssetSource(font);
30
+ if (!source?.uri) {
31
+ throw new Error('[react-native-nano-icons] Could not resolve the font asset to a uri.');
32
+ }
33
+ return source.uri;
34
+ }
35
+ if (typeof font === 'string') return font;
36
+ if (font != null && typeof font === 'object' && typeof font.uri === 'string') {
37
+ return font.uri;
38
+ }
39
+ throw new Error('[react-native-nano-icons] Unsupported font source. Pass require("Foo.ttf"), { uri }, or a path string.');
40
+ }
41
+ async function register(family, uri) {
42
+ if (Platform.OS === 'web') {
43
+ // Browser FontFace API. Typed loosely so this compiles under both the RN-only
44
+ // lib config and a DOM-aware app config without depending on the DOM lib.
45
+ const g = globalThis;
46
+ if (!g.FontFace || !g.document?.fonts) {
47
+ throw new Error('[react-native-nano-icons] FontFace API unavailable; cannot load dynamic font on this platform.');
48
+ }
49
+ const face = new g.FontFace(family, `url(${uri})`);
50
+ await face.load();
51
+ g.document.fonts.add(face);
52
+ return;
53
+ }
54
+ if (!NanoIconsFontLoader) {
55
+ throw new Error('[react-native-nano-icons] Native font loader is unavailable (Expo Go or module not built). ' + 'Load the font yourself, or use a development/production build.');
56
+ }
57
+ await NanoIconsFontLoader.registerFont(family, uri);
58
+ }
59
+
60
+ /**
61
+ * Register `font` under `family`. Concurrent calls share one in-flight load.
62
+ * Once settled, a later call retries after an error or no-ops if already
63
+ * registered — unless `opts.force` re-registers (used by the explicit `loadFont`).
64
+ */
65
+ export function loadDynamicFont(family, font, opts) {
66
+ // Dedupe concurrent calls.
67
+ const existing = inFlight.get(family);
68
+ if (existing) return existing;
69
+
70
+ // Already registered → skip, unless the caller forces a reload.
71
+ if (!opts?.force && statusByFamily.get(family) === 'ready') {
72
+ return Promise.resolve();
73
+ }
74
+ setStatus(family, 'loading');
75
+ const run = async () => {
76
+ try {
77
+ await register(family, resolveFontUri(font));
78
+ setStatus(family, 'ready');
79
+ } catch (err) {
80
+ setStatus(family, 'error');
81
+ throw err;
82
+ }
83
+ };
84
+ const tracked = run();
85
+
86
+ // Release the slot once settled so later calls can retry/reload
87
+ inFlight.set(family, (async () => {
88
+ try {
89
+ await tracked;
90
+ } catch {
91
+ // status already reflects the failure
92
+ } finally {
93
+ inFlight.delete(family);
94
+ }
95
+ })());
96
+ return tracked;
97
+ }
98
+
99
+ /**
100
+ * Subscribe a component to a family's load state. Returns `true` while a managed
101
+ * font is still loading (so the icon should hide), `false` otherwise (ready,
102
+ * errored, or not managed by us).
103
+ */
104
+ export function useDynamicFontPending(managed, family) {
105
+ const status = useSyncExternalStore(cb => {
106
+ listeners.add(cb);
107
+ return () => listeners.delete(cb);
108
+ }, () => managed ? statusByFamily.get(family) : undefined, () => undefined);
109
+ return managed && status === 'loading';
110
+ }
111
+
112
+ /** Test-only: reset module state between tests. */
113
+ export function __resetDynamicFontsForTests() {
114
+ statusByFamily.clear();
115
+ inFlight.clear();
116
+ listeners.clear();
117
+ }
118
+ //# sourceMappingURL=loadDynamicFont.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useSyncExternalStore","Image","Platform","NanoIconsFontLoader","statusByFamily","Map","inFlight","listeners","Set","emit","l","setStatus","family","status","set","getFontStatus","get","resolveFontUri","font","source","resolveAssetSource","uri","Error","register","OS","g","globalThis","FontFace","document","fonts","face","load","add","registerFont","loadDynamicFont","opts","existing","force","Promise","resolve","run","err","tracked","delete","useDynamicFontPending","managed","cb","undefined","__resetDynamicFontsForTests","clear"],"sourceRoot":"../../src","sources":["loadDynamicFont.ts"],"mappings":"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","ignoreList":[]}
@@ -1,15 +1,16 @@
1
1
  import { codegenNativeComponent } from 'react-native';
2
- import type { CodegenTypes as CT, ViewProps } from 'react-native';
2
+ import type { ViewProps } from 'react-native';
3
+ import type { Float, Int32 } from '../const/codegenPrimitives';
3
4
 
4
5
  export interface NativeProps extends ViewProps {
5
6
  fontFamily: string;
6
- codepoints: ReadonlyArray<CT.Int32>;
7
- colors: ReadonlyArray<CT.Int32>;
8
- fontSize: CT.Float;
9
- advanceWidth: CT.Int32;
10
- unitsPerEm: CT.Int32;
11
- iconWidth: CT.Float;
12
- iconHeight: CT.Float;
7
+ codepoints: ReadonlyArray<Int32>;
8
+ colors: ReadonlyArray<Int32>;
9
+ fontSize: Float;
10
+ advanceWidth: Int32;
11
+ unitsPerEm: Int32;
12
+ iconWidth: Float;
13
+ iconHeight: Float;
13
14
  }
14
15
 
15
16
  export default codegenNativeComponent<NativeProps>('NanoIconView');
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ import { TurboModuleRegistry } from 'react-native';
4
+ // `get` (not `getEnforcing`) so the absence of the native module (web, Expo Go,
5
+ // module not built) returns null and the caller can degrade gracefully.
6
+ export default TurboModuleRegistry.get('NanoIconsFontLoader');
7
+ //# sourceMappingURL=NativeNanoIconsFontLoader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TurboModuleRegistry","get"],"sourceRoot":"../../../src","sources":["specs/NativeNanoIconsFontLoader.ts"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,cAAc;AAOlD;AACA;AACA,eAAeA,mBAAmB,CAACC,GAAG,CAAO,qBAAqB,CAAC","ignoreList":[]}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ /** Default icon size (px) shared by every platform renderer. */
4
+ export const DEFAULT_ICON_SIZE = 12;
5
+
6
+ /**
7
+ * Look up a glyph entry by name, falling back to a single '?' layer
8
+ * (codepoint 63) sized to the font's em when the name is unknown.
9
+ */
10
+ export function resolveGlyphEntry(glyphMap, name) {
11
+ return glyphMap.i[name] ?? [glyphMap.m.u, [[63, 'black']]];
12
+ }
13
+
14
+ /** A memoized codepoint -> string converter, scoped per icon set. */
15
+ export function createCharCache() {
16
+ const cache = new Map();
17
+ return codepoint => {
18
+ let ch = cache.get(codepoint);
19
+ if (ch === undefined) {
20
+ ch = String.fromCodePoint(codepoint);
21
+ cache.set(codepoint, ch);
22
+ }
23
+ return ch;
24
+ };
25
+ }
26
+
27
+ /**
28
+ * Build a per-layer color resolver for one render: an explicit per-index
29
+ * color wins, else the last supplied palette color spills onto remaining
30
+ * layers, else the glyph's own source color, else black.
31
+ */
32
+ export function createLayerColorResolver(color) {
33
+ const colorArray = Array.isArray(color) ? color : [color];
34
+ const lastPaletteColor = colorArray[colorArray.length - 1];
35
+ return (index, srcColor) => colorArray[index] ?? lastPaletteColor ?? srcColor ?? 'black';
36
+ }
37
+ //# sourceMappingURL=glyphRuntime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DEFAULT_ICON_SIZE","resolveGlyphEntry","glyphMap","name","i","m","u","createCharCache","cache","Map","codepoint","ch","get","undefined","String","fromCodePoint","set","createLayerColorResolver","color","colorArray","Array","isArray","lastPaletteColor","length","index","srcColor"],"sourceRoot":"../../../src","sources":["utils/glyphRuntime.ts"],"mappings":";;AAGA;AACA,OAAO,MAAMA,iBAAiB,GAAG,EAAE;;AAEnC;AACA;AACA;AACA;AACA,OAAO,SAASC,iBAAiBA,CAC/BC,QAAY,EACZC,IAAmB,EACP;EACZ,OAAQD,QAAQ,CAACE,CAAC,CAACD,IAAI,CAAW,IAAI,CACpCD,QAAQ,CAACG,CAAC,CAACC,CAAC,EACZ,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAChB;AACH;;AAEA;AACA,OAAO,SAASC,eAAeA,CAAA,EAAkC;EAC/D,MAAMC,KAAK,GAAG,IAAIC,GAAG,CAAiB,CAAC;EACvC,OAAQC,SAAS,IAAK;IACpB,IAAIC,EAAE,GAAGH,KAAK,CAACI,GAAG,CAACF,SAAS,CAAC;IAC7B,IAAIC,EAAE,KAAKE,SAAS,EAAE;MACpBF,EAAE,GAAGG,MAAM,CAACC,aAAa,CAACL,SAAS,CAAC;MACpCF,KAAK,CAACQ,GAAG,CAACN,SAAS,EAAEC,EAAE,CAAC;IAC1B;IACA,OAAOA,EAAE;EACX,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASM,wBAAwBA,CACtCC,KAA4C,EACiB;EAC7D,MAAMC,UAAU,GAAGC,KAAK,CAACC,OAAO,CAACH,KAAK,CAAC,GAAGA,KAAK,GAAG,CAACA,KAAK,CAAC;EACzD,MAAMI,gBAAgB,GAAGH,UAAU,CAACA,UAAU,CAACI,MAAM,GAAG,CAAC,CAAC;EAC1D,OAAO,CAACC,KAAK,EAAEC,QAAQ,KACrBN,UAAU,CAACK,KAAK,CAAC,IAAIF,gBAAgB,IAAIG,QAAQ,IAAI,OAAO;AAChE","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=glyphRuntime.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glyphRuntime.unit.test.d.ts","sourceRoot":"","sources":["../../../__tests__/glyphRuntime.unit.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ /** @jest-environment node */
2
+ export {};
3
+ //# sourceMappingURL=link.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link.unit.test.d.ts","sourceRoot":"","sources":["../../../__tests__/link.unit.test.ts"],"names":[],"mappings":"AAAA,6BAA6B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=loadDynamicFont.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadDynamicFont.unit.test.d.ts","sourceRoot":"","sources":["../../../__tests__/loadDynamicFont.unit.test.ts"],"names":[],"mappings":""}
@@ -12,11 +12,14 @@ export type IconSetConfig = {
12
12
  safeZone?: number;
13
13
  /** First Unicode codepoint for glyphs (default 0xe900). Hex string or number. */
14
14
  startUnicode?: number | string;
15
+ /** Linking type for the font (default 'static'). Static bundles the TTF, dynamic delivers it via OTA*/
16
+ linking?: 'static' | 'dynamic';
15
17
  };
16
18
  export type BuiltFont = {
17
19
  fontFamily: string;
18
20
  ttfPath: string;
19
21
  glyphmapPath: string;
22
+ linking: 'static' | 'dynamic';
20
23
  };
21
24
  /**
22
25
  * Build TTF + glyphmap for all icon sets using a single Pyodide/PathKit instance.
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../cli/build.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,MAAM,MAAM,aAAa,GAAG;IAC1B,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qHAAqH;IACrH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iFAAiF;IACjF,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAkCF;;;;GAIG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,aAAa,EAAE,EACzB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,UAAU,CAAA;CAAE,GAChC,OAAO,CAAC,SAAS,EAAE,CAAC,CAmEtB"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../cli/build.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,MAAM,MAAM,aAAa,GAAG;IAC1B,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qHAAqH;IACrH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iFAAiF;IACjF,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,uGAAuG;IACvG,OAAO,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC/B,CAAC;AAqCF;;;;GAIG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,aAAa,EAAE,EACzB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,UAAU,CAAA;CAAE,GAChC,OAAO,CAAC,SAAS,EAAE,CAAC,CAwEtB"}
@@ -0,0 +1,12 @@
1
+ import type { NanoLogger } from './logger.js';
2
+ import type { BuiltFont } from './build.js';
3
+ /**
4
+ * Link built TTFs into native project directories.
5
+ *
6
+ * Handles three cases:
7
+ * - Both android/ and ios/ exist → link both platforms
8
+ * - Only one platform dir exists → link that platform only
9
+ * - Neither exists (e.g. React Native Web) → skip native linking, report output dir
10
+ */
11
+ export declare function linkBare(projectRoot: string, builtFonts: BuiltFont[], logger: NanoLogger): Promise<void>;
12
+ //# sourceMappingURL=link.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../../cli/link.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAuH5C;;;;;;;GAOG;AACH,wBAAsB,QAAQ,CAC5B,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,SAAS,EAAE,EACvB,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,IAAI,CAAC,CAuDf"}
@@ -0,0 +1,3 @@
1
+ export type Int32 = number;
2
+ export type Float = number;
3
+ //# sourceMappingURL=codegenPrimitives.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codegenPrimitives.d.ts","sourceRoot":"","sources":["../../../../src/const/codegenPrimitives.ts"],"names":[],"mappings":"AAYA,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC;AAC3B,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../../../../src/core/font/compile.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,SAAS,GAAG;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAqCF,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,OAAO,EACZ,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,QAarC;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,IAAI,EAAE;IAC/C,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBhB"}
1
+ {"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../../../../src/core/font/compile.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,SAAS,GAAG;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAqCF,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,OAAO,EACZ,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,QAarC;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,IAAI,EAAE;IAC/C,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBhB"}
@@ -3,6 +3,7 @@ export type PipelineConfig = {
3
3
  upm: number;
4
4
  safeZone: number;
5
5
  startUnicode: number;
6
+ linking: 'static' | 'dynamic';
6
7
  };
7
8
  export type PipelinePaths = {
8
9
  inputDir: string;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../src/core/pipeline/config.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAGhD;AAED,uGAAuG;AACvG,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE3C"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../src/core/pipeline/config.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAGhD;AAED,uGAAuG;AACvG,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE3C"}
@@ -1 +1 @@
1
- {"version":3,"file":"managers.d.ts","sourceRoot":"","sources":["../../../../../src/core/pipeline/managers.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAYhE,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA8B;WAExC,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC;CAyBnD;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA8B;WAExC,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC;WAkErC,YAAY,CACvB,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC;CAYnB;AAED,wBAAsB,YAAY,CAChC,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAEjB"}
1
+ {"version":3,"file":"managers.d.ts","sourceRoot":"","sources":["../../../../../src/core/pipeline/managers.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAYhE,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA8B;WAExC,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC;CAwBnD;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA8B;WAExC,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC;WA8DrC,YAAY,CACvB,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC;CAYnB;AAED,wBAAsB,YAAY,CAChC,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAEjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../../../src/core/pipeline/run.ts"],"names":[],"mappings":"AAUA,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AAerB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AA0EF;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,aAAa,EACpB,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,UAAU,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACpD,OAAO,CAAC,cAAc,CAAC,CAwJzB"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../../../src/core/pipeline/run.ts"],"names":[],"mappings":"AAUA,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AAYrB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AA+EF;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,aAAa,EACpB,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,UAAU,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACpD,OAAO,CAAC,cAAc,CAAC,CA2JzB"}
@@ -1,3 +1,4 @@
1
+ import { type Element } from '@xmldom/xmldom';
1
2
  export type ParsedFlatSvg = {
2
3
  viewBox: [number, number, number, number];
3
4
  paths: Array<{
@@ -1 +1 @@
1
- {"version":3,"file":"svg_dom.d.ts","sourceRoot":"","sources":["../../../../../src/core/svg/svg_dom.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,KAAK,EAAE,KAAK,CAAC;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;CACxE,CAAC;AAcF,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,OAAO,GACV,QAAQ,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,GAAG,CAKjD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAgB7E;AAED,eAAO,MAAM,SAAS,GACpB,GAAG,OAAO,KACT;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CA6BxD,CAAC;AAEF,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,GACpD,aAAa,CA6Bf;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAItE;AAED,MAAM,MAAM,aAAa,GAAG;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/E,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,CAQ1D;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAiBrE;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,EAC7B,UAAU,EAAE,MAAM,EAAE,GACnB,IAAI,CAQN;AAGD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAGrD"}
1
+ {"version":3,"file":"svg_dom.d.ts","sourceRoot":"","sources":["../../../../../src/core/svg/svg_dom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzD,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,KAAK,EAAE,KAAK,CAAC;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;CACxE,CAAC;AAcF,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,OAAO,GACV,QAAQ,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,GAAG,CAKjD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAgB7E;AAED,eAAO,MAAM,SAAS,GACpB,GAAG,OAAO,KACT;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CA6BxD,CAAC;AAEF,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,GACpD,aAAa,CA0Bf;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAItE;AAED,MAAM,MAAM,aAAa,GAAG;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/E,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,CAc1D;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAmBrE;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,EAC7B,UAAU,EAAE,MAAM,EAAE,GACnB,IAAI,CAQN;AAGD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAGrD"}
@@ -1 +1 @@
1
- {"version":3,"file":"svg_pathops.d.ts","sourceRoot":"","sources":["../../../../../src/core/svg/svg_pathops.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,aAAa,EAEb,WAAW,EACX,KAAK,EACN,MAAM,aAAa,CAAC;AAsnBrB;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,aAAa,EACtB,CAAC,EAAE,MAAM,GACR,MAAM,CAsDR;AAGD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,aAAa;6BAoF7B,MAAM,GAAG,WAAW;kBAM/B,WAAW,GAAG,WAAW;mBAIxB,WAAW,GAAG,IAAI;qBAIhB,WAAW,GAAG,MAAM;qBAKpB,WAAW,eAAe,MAAM,GAAG,IAAI;eAK7C,WAAW,KAAK,MAAM,KAAK,MAAM,GAAG,IAAI;eAKxC,WAAW,KAAK,MAAM,KAAK,MAAM,GAAG,IAAI;eAK9C,WAAW,MACV,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,GACT,IAAI;gBAKF,WAAW,MACV,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,GACT,IAAI;aAIE,WAAW,GAAG,IAAI;gBAIf,WAAW,yBAAuB,OAAO;cAsBhD,WAAW,SACP,MAAM,UACL,MAAM,WACL,MAAM,cACH,MAAM,aACP,OAAO,cACN,MAAM,GACjB,WAAW;gCAqDc,WAAW,QAAQ,MAAM,GAAG,IAAI;iBAKvD,WAAW,KACX,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,GACR,WAAW;gBAYH,WAAW,WACX,WAAW,SACb,MAAM,GACZ,WAAW,GAAG,IAAI;cAwBX,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAKhD,WAAW,GAAG,MAAM;qBAeX,WAAW,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;EAW1D"}
1
+ {"version":3,"file":"svg_pathops.d.ts","sourceRoot":"","sources":["../../../../../src/core/svg/svg_pathops.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,aAAa,EAEb,WAAW,EACX,KAAK,EACN,MAAM,aAAa,CAAC;AA8oBrB;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,aAAa,EACtB,CAAC,EAAE,MAAM,GACR,MAAM,CAwDR;AAGD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,aAAa;6BAoF7B,MAAM,GAAG,WAAW;kBAM/B,WAAW,GAAG,WAAW;mBAIxB,WAAW,GAAG,IAAI;qBAIhB,WAAW,GAAG,MAAM;qBAKpB,WAAW,eAAe,MAAM,GAAG,IAAI;eAK7C,WAAW,KAAK,MAAM,KAAK,MAAM,GAAG,IAAI;eAKxC,WAAW,KAAK,MAAM,KAAK,MAAM,GAAG,IAAI;eAK9C,WAAW,MACV,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,GACT,IAAI;gBAKF,WAAW,MACV,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,GACT,IAAI;aAIE,WAAW,GAAG,IAAI;gBAIf,WAAW,yBAAuB,OAAO;cAsBhD,WAAW,SACP,MAAM,UACL,MAAM,WACL,MAAM,cACH,MAAM,aACP,OAAO,cACN,MAAM,GACjB,WAAW;gCAqDc,WAAW,QAAQ,MAAM,GAAG,IAAI;iBAKvD,WAAW,KACX,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,GACR,WAAW;gBAYH,WAAW,WACX,WAAW,SACb,MAAM,GACZ,WAAW,GAAG,IAAI;cAwBX,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAKhD,WAAW,GAAG,MAAM;qBAeX,WAAW,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;EAW1D"}
@@ -109,6 +109,7 @@ export type IconsMap = Record<string, GlyphEntry>;
109
109
  * z - safe zone,
110
110
  * s - start unicode,
111
111
  * h - hash,
112
+ * l - linking mode: 's' (static, bundled — default when absent) or 'd' (dynamic, OTA-delivered),
112
113
  * i - icons,
113
114
  * adv - advance width,
114
115
  */
@@ -119,6 +120,7 @@ export type NanoGlyphMap = {
119
120
  z: number;
120
121
  s: number;
121
122
  h?: string;
123
+ l?: 's' | 'd';
122
124
  };
123
125
  i: IconsMap;
124
126
  };
@@ -130,6 +132,7 @@ export type NanoGlyphMapInput = {
130
132
  z: number;
131
133
  s: number;
132
134
  h?: string;
135
+ l?: 's' | 'd' | (string & {});
133
136
  };
134
137
  i: Record<string, readonly unknown[]>;
135
138
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/types.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,5 @@ import type { IconComponent } from './types';
3
3
  export type { IconComponent, IconProps } from './types';
4
4
  export { shallowEqualColor } from './utils/shallowEqualColor';
5
5
  export declare function createIconSet<GM extends NanoGlyphMapInput>(glyphMap: GM): IconComponent<GM>;
6
+ export declare function createIconSet<GM extends NanoGlyphMapInput>(glyphMap: GM, font: unknown): IconComponent<GM>;
6
7
  //# sourceMappingURL=createNanoIconsSet.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createNanoIconsSet.d.ts","sourceRoot":"","sources":["../../../src/createNanoIconsSet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D,wBAAgB,aAAa,CAAC,EAAE,SAAS,iBAAiB,EACxD,QAAQ,EAAE,EAAE,GACX,aAAa,CAAC,EAAE,CAAC,CAEnB"}
1
+ {"version":3,"file":"createNanoIconsSet.d.ts","sourceRoot":"","sources":["../../../src/createNanoIconsSet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D,wBAAgB,aAAa,CAAC,EAAE,SAAS,iBAAiB,EACxD,QAAQ,EAAE,EAAE,GACX,aAAa,CAAC,EAAE,CAAC,CAAC;AACrB,wBAAgB,aAAa,CAAC,EAAE,SAAS,iBAAiB,EACxD,QAAQ,EAAE,EAAE,EACZ,IAAI,EAAE,OAAO,GACZ,aAAa,CAAC,EAAE,CAAC,CAAC"}
@@ -4,4 +4,5 @@ import { shallowEqualColor } from './utils/shallowEqualColor';
4
4
  export type { IconComponent, IconProps };
5
5
  export { shallowEqualColor };
6
6
  export declare function createIconSet<GM extends NanoGlyphMapInput>(glyphMap: GM): IconComponent<GM>;
7
+ export declare function createIconSet<GM extends NanoGlyphMapInput>(glyphMap: GM, font: unknown): IconComponent<GM>;
7
8
  //# sourceMappingURL=createNanoIconsSet.native.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createNanoIconsSet.native.d.ts","sourceRoot":"","sources":["../../../src/createNanoIconsSet.native.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAc,MAAM,cAAc,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAI9D,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAkB7B,wBAAgB,aAAa,CAAC,EAAE,SAAS,iBAAiB,EACxD,QAAQ,EAAE,EAAE,GACX,aAAa,CAAC,EAAE,CAAC,CA8GnB"}
1
+ {"version":3,"file":"createNanoIconsSet.native.d.ts","sourceRoot":"","sources":["../../../src/createNanoIconsSet.native.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAc,MAAM,cAAc,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAa9D,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAgB7B,wBAAgB,aAAa,CAAC,EAAE,SAAS,iBAAiB,EACxD,QAAQ,EAAE,EAAE,GACX,aAAa,CAAC,EAAE,CAAC,CAAC;AACrB,wBAAgB,aAAa,CAAC,EAAE,SAAS,iBAAiB,EACxD,QAAQ,EAAE,EAAE,EACZ,IAAI,EAAE,OAAO,GACZ,aAAa,CAAC,EAAE,CAAC,CAAC"}
@@ -3,9 +3,20 @@ import type { IconComponent, IconProps } from './types';
3
3
  import { shallowEqualColor } from './utils/shallowEqualColor';
4
4
  export type { IconComponent, IconProps };
5
5
  export { shallowEqualColor };
6
+ /**
7
+ * Warn when the `font` argument and the glyphmap's linking mode are inconsistent.
8
+ *
9
+ * - Dynamic glyphmap without a `font` arg: caller probably forgot to pass it; icons
10
+ * will render as tofu until the host app loads a font under family `fontFamily`.
11
+ * - Static glyphmap with a `font` arg: argument is ignored, font is bundled natively.
12
+ *
13
+ * Fires once per `createIconSet` call (not per render).
14
+ */
15
+ export declare function warnIfLinkingMismatch(fontFamily: string, linking: string | undefined, font: unknown): void;
6
16
  /**
7
17
  * JS implementation using <View> + <Text> layers.
8
18
  * Used on web and as a fallback when native component is unavailable (e.g. Expo Go).
9
19
  */
10
20
  export declare function createJSIconSet<GM extends NanoGlyphMapInput>(glyphMap: GM): IconComponent<GM>;
21
+ export declare function createJSIconSet<GM extends NanoGlyphMapInput>(glyphMap: GM, font: unknown): IconComponent<GM>;
11
22
  //# sourceMappingURL=createNanoIconsSet.shared.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createNanoIconsSet.shared.d.ts","sourceRoot":"","sources":["../../../src/createNanoIconsSet.shared.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAc,MAAM,cAAc,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAI7B;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAAE,SAAS,iBAAiB,EAC1D,QAAQ,EAAE,EAAE,GACX,aAAa,CAAC,EAAE,CAAC,CAuGnB"}
1
+ {"version":3,"file":"createNanoIconsSet.shared.d.ts","sourceRoot":"","sources":["../../../src/createNanoIconsSet.shared.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAS9D,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,IAAI,EAAE,OAAO,GACZ,IAAI,CAmBN;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAAE,SAAS,iBAAiB,EAC1D,QAAQ,EAAE,EAAE,GACX,aAAa,CAAC,EAAE,CAAC,CAAC;AACrB,wBAAgB,eAAe,CAAC,EAAE,SAAS,iBAAiB,EAC1D,QAAQ,EAAE,EAAE,EACZ,IAAI,EAAE,OAAO,GACZ,aAAa,CAAC,EAAE,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { NanoGlyphMapInput } from './core/types';
2
+ import type { IconComponent, IconProps } from './types';
3
+ import { shallowEqualColor } from './utils/shallowEqualColor';
4
+ export type { IconComponent, IconProps };
5
+ export { shallowEqualColor };
6
+ export declare function createIconSet<GM extends NanoGlyphMapInput>(glyphMap: GM): IconComponent<GM>;
7
+ //# sourceMappingURL=createNanoIconsSet.web.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createNanoIconsSet.web.d.ts","sourceRoot":"","sources":["../../../src/createNanoIconsSet.web.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAQ9D,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAG7B,wBAAgB,aAAa,CAAC,EAAE,SAAS,iBAAiB,EACxD,QAAQ,EAAE,EAAE,GACX,aAAa,CAAC,EAAE,CAAC,CA2FnB"}