rn-iconify 2.1.0 → 2.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.
- package/lib/commonjs/IconRenderer.js +54 -12
- package/lib/commonjs/IconRenderer.js.map +1 -1
- package/lib/commonjs/babel/cache-writer.js +102 -26
- package/lib/commonjs/babel/cache-writer.js.map +1 -1
- package/lib/commonjs/babel/plugin.js +129 -44
- package/lib/commonjs/babel/plugin.js.map +1 -1
- package/lib/commonjs/babel/scanner.js +219 -0
- package/lib/commonjs/babel/scanner.js.map +1 -0
- package/lib/commonjs/babel/types.js.map +1 -1
- package/lib/commonjs/cache/CacheManager.js +82 -1
- package/lib/commonjs/cache/CacheManager.js.map +1 -1
- package/lib/commonjs/cache/DiskCache.js +33 -4
- package/lib/commonjs/cache/DiskCache.js.map +1 -1
- package/lib/commonjs/cli/CLAUDE.md +7 -0
- package/lib/commonjs/cli/commands/bundle.js +37 -6
- package/lib/commonjs/cli/commands/bundle.js.map +1 -1
- package/lib/commonjs/config/ConfigManager.js +8 -1
- package/lib/commonjs/config/ConfigManager.js.map +1 -1
- package/lib/commonjs/config/index.js.map +1 -1
- package/lib/commonjs/config/types.js +9 -0
- package/lib/commonjs/config/types.js.map +1 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/metro/devServerMiddleware.js +150 -0
- package/lib/commonjs/metro/devServerMiddleware.js.map +1 -0
- package/lib/commonjs/metro/index.js +20 -0
- package/lib/commonjs/metro/index.js.map +1 -0
- package/lib/commonjs/metro/types.js +6 -0
- package/lib/commonjs/metro/types.js.map +1 -0
- package/lib/commonjs/metro/withRnIconify.js +53 -0
- package/lib/commonjs/metro/withRnIconify.js.map +1 -0
- package/lib/commonjs/network/IconifyAPI.js +30 -2
- package/lib/commonjs/network/IconifyAPI.js.map +1 -1
- package/lib/module/IconRenderer.js +54 -12
- package/lib/module/IconRenderer.js.map +1 -1
- package/lib/module/babel/cache-writer.js +99 -26
- package/lib/module/babel/cache-writer.js.map +1 -1
- package/lib/module/babel/plugin.js +129 -46
- package/lib/module/babel/plugin.js.map +1 -1
- package/lib/module/babel/scanner.js +213 -0
- package/lib/module/babel/scanner.js.map +1 -0
- package/lib/module/babel/types.js.map +1 -1
- package/lib/module/cache/CacheManager.js +82 -1
- package/lib/module/cache/CacheManager.js.map +1 -1
- package/lib/module/cache/DiskCache.js +32 -4
- package/lib/module/cache/DiskCache.js.map +1 -1
- package/lib/module/cli/CLAUDE.md +7 -0
- package/lib/module/cli/commands/bundle.js +37 -6
- package/lib/module/cli/commands/bundle.js.map +1 -1
- package/lib/module/config/ConfigManager.js +8 -1
- package/lib/module/config/ConfigManager.js.map +1 -1
- package/lib/module/config/index.js.map +1 -1
- package/lib/module/config/types.js +9 -0
- package/lib/module/config/types.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/metro/devServerMiddleware.js +143 -0
- package/lib/module/metro/devServerMiddleware.js.map +1 -0
- package/lib/module/metro/index.js +19 -0
- package/lib/module/metro/index.js.map +1 -0
- package/lib/module/metro/types.js +2 -0
- package/lib/module/metro/types.js.map +1 -0
- package/lib/module/metro/withRnIconify.js +48 -0
- package/lib/module/metro/withRnIconify.js.map +1 -0
- package/lib/module/network/IconifyAPI.js +30 -2
- package/lib/module/network/IconifyAPI.js.map +1 -1
- package/lib/typescript/IconRenderer.d.ts.map +1 -1
- package/lib/typescript/babel/cache-writer.d.ts +16 -2
- package/lib/typescript/babel/cache-writer.d.ts.map +1 -1
- package/lib/typescript/babel/plugin.d.ts +5 -0
- package/lib/typescript/babel/plugin.d.ts.map +1 -1
- package/lib/typescript/babel/scanner.d.ts +31 -0
- package/lib/typescript/babel/scanner.d.ts.map +1 -0
- package/lib/typescript/babel/types.d.ts +8 -1
- package/lib/typescript/babel/types.d.ts.map +1 -1
- package/lib/typescript/cache/CacheManager.d.ts +16 -0
- package/lib/typescript/cache/CacheManager.d.ts.map +1 -1
- package/lib/typescript/cache/DiskCache.d.ts +2 -0
- package/lib/typescript/cache/DiskCache.d.ts.map +1 -1
- package/lib/typescript/cli/commands/bundle.d.ts.map +1 -1
- package/lib/typescript/components/Charm.d.ts +1 -1
- package/lib/typescript/components/Dashicons.d.ts +1 -1
- package/lib/typescript/components/Hugeicons.d.ts +1 -1
- package/lib/typescript/components/Ix.d.ts +1 -1
- package/lib/typescript/components/Tabler.d.ts +1 -1
- package/lib/typescript/components/Token.d.ts +1 -1
- package/lib/typescript/components/TokenBranded.d.ts +1 -1
- package/lib/typescript/config/ConfigManager.d.ts +5 -1
- package/lib/typescript/config/ConfigManager.d.ts.map +1 -1
- package/lib/typescript/config/index.d.ts +1 -1
- package/lib/typescript/config/index.d.ts.map +1 -1
- package/lib/typescript/config/types.d.ts +26 -0
- package/lib/typescript/config/types.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +1 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/metro/devServerMiddleware.d.ts +11 -0
- package/lib/typescript/metro/devServerMiddleware.d.ts.map +1 -0
- package/lib/typescript/metro/index.d.ts +19 -0
- package/lib/typescript/metro/index.d.ts.map +1 -0
- package/lib/typescript/metro/types.d.ts +46 -0
- package/lib/typescript/metro/types.d.ts.map +1 -0
- package/lib/typescript/metro/withRnIconify.d.ts +20 -0
- package/lib/typescript/metro/withRnIconify.d.ts.map +1 -0
- package/lib/typescript/network/IconifyAPI.d.ts.map +1 -1
- package/metro.js +12 -0
- package/package.json +13 -6
- package/src/IconRenderer.tsx +59 -12
- package/src/babel/cache-writer.ts +105 -31
- package/src/babel/plugin.ts +157 -34
- package/src/babel/scanner.ts +274 -0
- package/src/babel/types.ts +9 -1
- package/src/cache/CacheManager.ts +83 -1
- package/src/cache/DiskCache.ts +43 -4
- package/src/cli/CLAUDE.md +7 -0
- package/src/cli/commands/bundle.ts +52 -6
- package/src/config/ConfigManager.ts +9 -0
- package/src/config/index.ts +1 -0
- package/src/config/types.ts +35 -0
- package/src/index.ts +1 -0
- package/src/metro/devServerMiddleware.ts +137 -0
- package/src/metro/index.ts +19 -0
- package/src/metro/types.ts +52 -0
- package/src/metro/withRnIconify.ts +52 -0
- package/src/network/IconifyAPI.ts +23 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["fs","_interopRequireWildcard","require","path","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","USAGE_ENDPOINT","STATUS_ENDPOINT","readUsageFile","usagePath","existsSync","content","readFileSync","data","JSON","parse","version","Array","isArray","icons","updatedAt","Date","toISOString","writeUsageFile","dir","dirname","mkdirSync","recursive","tmpPath","writeFileSync","stringify","renameSync","parseBody","req","Promise","resolve","reject","body","on","chunk","toString","Error","createDevServerMiddleware","options","outputDir","verbose","projectRoot","process","cwd","isAbsolute","join","handleRequest","res","next","url","method","icon","includes","writeHead","end","error","usage","push","console","log","length","ok","iconCount"],"sourceRoot":"../../../src","sources":["metro/devServerMiddleware.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "createDevServerMiddleware", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _devServerMiddleware.createDevServerMiddleware;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "withRnIconify", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _withRnIconify.withRnIconify;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
var _withRnIconify = require("./withRnIconify");
|
|
19
|
+
var _devServerMiddleware = require("./devServerMiddleware");
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_withRnIconify","require","_devServerMiddleware"],"sourceRoot":"../../../src","sources":["metro/index.ts"],"mappings":";;;;;;;;;;;;;;;;;AAgBA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,oBAAA,GAAAD,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["metro/types.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.withRnIconify = withRnIconify;
|
|
7
|
+
var _devServerMiddleware = require("./devServerMiddleware");
|
|
8
|
+
/**
|
|
9
|
+
* Metro Config Wrapper
|
|
10
|
+
* Adds rn-iconify middleware to the Metro dev server
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```js
|
|
14
|
+
* // metro.config.js
|
|
15
|
+
* const { withRnIconify } = require('rn-iconify/metro');
|
|
16
|
+
*
|
|
17
|
+
* const config = getDefaultConfig(__dirname);
|
|
18
|
+
* module.exports = withRnIconify(config);
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Wrap a Metro config to add rn-iconify dev server middleware
|
|
24
|
+
* This enables runtime icon usage learning during development
|
|
25
|
+
*/
|
|
26
|
+
function withRnIconify(config, options) {
|
|
27
|
+
const middleware = (0, _devServerMiddleware.createDevServerMiddleware)(options);
|
|
28
|
+
const existingEnhance = config.server?.enhanceMiddleware;
|
|
29
|
+
return {
|
|
30
|
+
...config,
|
|
31
|
+
server: {
|
|
32
|
+
...config.server,
|
|
33
|
+
enhanceMiddleware: (metroMiddleware, server) => {
|
|
34
|
+
// Apply existing enhanceMiddleware if present
|
|
35
|
+
const enhanced = existingEnhance ? existingEnhance(metroMiddleware, server) : metroMiddleware;
|
|
36
|
+
|
|
37
|
+
// Wrap with our middleware
|
|
38
|
+
return (req, res, next) => {
|
|
39
|
+
// Check if this is our endpoint
|
|
40
|
+
const url = req.url;
|
|
41
|
+
if (url === '/__rn_iconify_log' || url === '/__rn_iconify_status') {
|
|
42
|
+
middleware(req, res, next);
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// Otherwise pass through
|
|
47
|
+
enhanced(req, res, next);
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=withRnIconify.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_devServerMiddleware","require","withRnIconify","config","options","middleware","createDevServerMiddleware","existingEnhance","server","enhanceMiddleware","metroMiddleware","enhanced","req","res","next","url"],"sourceRoot":"../../../src","sources":["metro/withRnIconify.ts"],"mappings":";;;;;;AAeA,IAAAA,oBAAA,GAAAC,OAAA;AAfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAKA;AACA;AACA;AACA;AACO,SAASC,aAAaA,CAACC,MAAmB,EAAEC,OAA+B,EAAe;EAC/F,MAAMC,UAAU,GAAG,IAAAC,8CAAyB,EAACF,OAAO,CAAC;EAErD,MAAMG,eAAe,GAAGJ,MAAM,CAACK,MAAM,EAAEC,iBAAiB;EAExD,OAAO;IACL,GAAGN,MAAM;IACTK,MAAM,EAAE;MACN,GAAGL,MAAM,CAACK,MAAM;MAChBC,iBAAiB,EAAEA,CAACC,eAAgC,EAAEF,MAAe,KAAsB;QACzF;QACA,MAAMG,QAAQ,GAAGJ,eAAe,GAC5BA,eAAe,CAACG,eAAe,EAAEF,MAAM,CAAC,GACxCE,eAAe;;QAEnB;QACA,OAAO,CAACE,GAAG,EAAEC,GAAG,EAAEC,IAAI,KAAK;UACzB;UACA,MAAMC,GAAG,GAAGH,GAAG,CAACG,GAAG;UACnB,IAAIA,GAAG,KAAK,mBAAmB,IAAIA,GAAG,KAAK,sBAAsB,EAAE;YACjEV,UAAU,CAACO,GAAG,EAAEC,GAAG,EAAEC,IAAI,CAAC;YAC1B;UACF;;UAEA;UACAH,QAAQ,CAACC,GAAG,EAAEC,GAAG,EAAEC,IAAI,CAAC;QAC1B,CAAC;MACH;IACF;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -69,18 +69,46 @@ async function fetchWithTimeout(url, options = {}, timeoutMs) {
|
|
|
69
69
|
|
|
70
70
|
/**
|
|
71
71
|
* Combine multiple AbortSignals into one
|
|
72
|
+
* Properly cleans up event listeners to prevent memory leaks
|
|
72
73
|
*/
|
|
73
74
|
function anySignal(signals) {
|
|
74
75
|
const controller = new AbortController();
|
|
76
|
+
|
|
77
|
+
// Check if any signal is already aborted
|
|
75
78
|
for (const signal of signals) {
|
|
76
79
|
if (signal.aborted) {
|
|
77
80
|
controller.abort();
|
|
78
81
|
return controller.signal;
|
|
79
82
|
}
|
|
80
|
-
|
|
81
|
-
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
// Create abort handlers that we can clean up
|
|
86
|
+
const abortHandlers = [];
|
|
87
|
+
const cleanup = () => {
|
|
88
|
+
for (const {
|
|
89
|
+
signal,
|
|
90
|
+
handler
|
|
91
|
+
} of abortHandlers) {
|
|
92
|
+
signal.removeEventListener('abort', handler);
|
|
93
|
+
}
|
|
94
|
+
abortHandlers.length = 0;
|
|
95
|
+
};
|
|
96
|
+
for (const signal of signals) {
|
|
97
|
+
const handler = () => {
|
|
98
|
+
cleanup();
|
|
99
|
+
controller.abort();
|
|
100
|
+
};
|
|
101
|
+
abortHandlers.push({
|
|
102
|
+
signal,
|
|
103
|
+
handler
|
|
82
104
|
});
|
|
105
|
+
signal.addEventListener('abort', handler);
|
|
83
106
|
}
|
|
107
|
+
|
|
108
|
+
// Also cleanup when our controller aborts (from timeout)
|
|
109
|
+
controller.signal.addEventListener('abort', cleanup, {
|
|
110
|
+
once: true
|
|
111
|
+
});
|
|
84
112
|
return controller.signal;
|
|
85
113
|
}
|
|
86
114
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_config","require","getAPISettings","config","ConfigManager","getAPIConfig","baseUrl","apiUrl","timeout","retries","retryDelay","headers","logging","pendingRequests","Map","fetchWithTimeout","url","options","timeoutMs","settings","effectiveTimeout","controller","AbortController","timeoutId","setTimeout","abort","signal","anySignal","response","fetch","clearTimeout","signals","aborted","addEventListener","once","isValidSvg","content","trim","startsWith","includes","SAFE_NAME_PATTERN","parseIconName","iconName","parts","split","length","prefix","name","test","buildSvg","data","defaultWidth","defaultHeight","width","height","left","top","viewBox","transform","transforms","rotate","rotation","push","hFlip","vFlip","scaleX","scaleY","translateX","translateY","join","body","fetchIcon","pending","get","parsed","Error","requestPromise","lastError","attempt","DOMException","console","log","ok","status","json","icons","iconData","svg","error","message","String","delay","Promise","resolve","set","delete","fetchIconsBatch","iconNames","success","failed","byPrefix","names","fetchPromises","Array","from","entries","map","forEach","sortedNames","sort","errorMessage","all","checkAPIHealth","method","getAPIBaseUrl","fetchCollection","uncategorized","isArray","categories","category","Object","values","Set","total","title","aliases","searchIconsAPI","query","prefixes","limit","params","URLSearchParams","toString"],"sourceRoot":"../../../src","sources":["network/IconifyAPI.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_config","require","getAPISettings","config","ConfigManager","getAPIConfig","baseUrl","apiUrl","timeout","retries","retryDelay","headers","logging","pendingRequests","Map","fetchWithTimeout","url","options","timeoutMs","settings","effectiveTimeout","controller","AbortController","timeoutId","setTimeout","abort","signal","anySignal","response","fetch","clearTimeout","signals","aborted","abortHandlers","cleanup","handler","removeEventListener","length","push","addEventListener","once","isValidSvg","content","trim","startsWith","includes","SAFE_NAME_PATTERN","parseIconName","iconName","parts","split","prefix","name","test","buildSvg","data","defaultWidth","defaultHeight","width","height","left","top","viewBox","transform","transforms","rotate","rotation","hFlip","vFlip","scaleX","scaleY","translateX","translateY","join","body","fetchIcon","pending","get","parsed","Error","requestPromise","lastError","attempt","DOMException","console","log","ok","status","json","icons","iconData","svg","error","message","String","delay","Promise","resolve","set","delete","fetchIconsBatch","iconNames","success","failed","byPrefix","names","fetchPromises","Array","from","entries","map","forEach","sortedNames","sort","errorMessage","all","checkAPIHealth","method","getAPIBaseUrl","fetchCollection","uncategorized","isArray","categories","category","Object","values","Set","total","title","aliases","searchIconsAPI","query","prefixes","limit","params","URLSearchParams","toString"],"sourceRoot":"../../../src","sources":["network/IconifyAPI.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -11,6 +11,7 @@ import { CacheManager } from './cache/CacheManager';
|
|
|
11
11
|
import { fetchIcon } from './network/IconifyAPI';
|
|
12
12
|
import { PlaceholderFactory } from './placeholder';
|
|
13
13
|
import { useIconAnimation } from './animated/useIconAnimation';
|
|
14
|
+
import { ConfigManager } from './config';
|
|
14
15
|
/**
|
|
15
16
|
* Escape special characters for XML attribute values
|
|
16
17
|
* Prevents XSS attacks when user input is used as color prop
|
|
@@ -53,13 +54,22 @@ export function IconRenderer({
|
|
|
53
54
|
autoPlay = true,
|
|
54
55
|
onAnimationComplete
|
|
55
56
|
}) {
|
|
57
|
+
// Resolve defaults from config
|
|
58
|
+
const defaultsConfig = ConfigManager.getDefaultsConfig();
|
|
59
|
+
const effectivePlaceholder = placeholder !== undefined ? placeholder : defaultsConfig.placeholder !== false ? defaultsConfig.placeholder : undefined;
|
|
60
|
+
const fadeIn = defaultsConfig.fadeIn;
|
|
61
|
+
const fadeInDuration = defaultsConfig.fadeInDuration;
|
|
56
62
|
const [svg, setSvg] = useState(null);
|
|
57
63
|
const [state, setState] = useState('idle');
|
|
58
64
|
const [showFallback, setShowFallback] = useState(false);
|
|
65
|
+
const [wasCacheHit, setWasCacheHit] = useState(false);
|
|
59
66
|
const mountedRef = useRef(true);
|
|
60
67
|
const fallbackTimerRef = useRef(null);
|
|
61
68
|
const abortControllerRef = useRef(null);
|
|
62
|
-
const isLoadingRef = useRef(false);
|
|
69
|
+
const isLoadingRef = useRef(false);
|
|
70
|
+
|
|
71
|
+
// Fade-in animation value
|
|
72
|
+
const fadeAnim = useRef(new Animated.Value(0)).current;
|
|
63
73
|
|
|
64
74
|
// Calculate dimensions
|
|
65
75
|
const iconWidth = propWidth ?? size;
|
|
@@ -95,7 +105,9 @@ export function IconRenderer({
|
|
|
95
105
|
if (mountedRef.current) {
|
|
96
106
|
setSvg(cached);
|
|
97
107
|
setState('loaded');
|
|
108
|
+
setWasCacheHit(true);
|
|
98
109
|
isLoadingRef.current = false;
|
|
110
|
+
fadeAnim.setValue(1); // No fade for cache hits
|
|
99
111
|
onLoad?.();
|
|
100
112
|
}
|
|
101
113
|
return;
|
|
@@ -104,14 +116,14 @@ export function IconRenderer({
|
|
|
104
116
|
// 2. Set loading state and start fallback timer
|
|
105
117
|
setState('loading');
|
|
106
118
|
isLoadingRef.current = true;
|
|
119
|
+
setWasCacheHit(false);
|
|
107
120
|
if (fallbackDelay > 0) {
|
|
108
121
|
fallbackTimerRef.current = setTimeout(() => {
|
|
109
|
-
// Use ref instead of state to avoid stale closure
|
|
110
122
|
if (mountedRef.current && isLoadingRef.current) {
|
|
111
123
|
setShowFallback(true);
|
|
112
124
|
}
|
|
113
125
|
}, fallbackDelay);
|
|
114
|
-
} else if (fallback) {
|
|
126
|
+
} else if (fallback || effectivePlaceholder !== undefined) {
|
|
115
127
|
setShowFallback(true);
|
|
116
128
|
}
|
|
117
129
|
|
|
@@ -119,16 +131,26 @@ export function IconRenderer({
|
|
|
119
131
|
try {
|
|
120
132
|
const fetchedSvg = await fetchIcon(iconName, abortControllerRef.current.signal);
|
|
121
133
|
if (mountedRef.current) {
|
|
122
|
-
// Store in cache
|
|
123
134
|
CacheManager.set(iconName, fetchedSvg);
|
|
124
135
|
setSvg(fetchedSvg);
|
|
125
136
|
setState('loaded');
|
|
126
137
|
isLoadingRef.current = false;
|
|
127
138
|
setShowFallback(false);
|
|
139
|
+
|
|
140
|
+
// Fade-in for non-cached icons
|
|
141
|
+
if (fadeIn) {
|
|
142
|
+
fadeAnim.setValue(0);
|
|
143
|
+
Animated.timing(fadeAnim, {
|
|
144
|
+
toValue: 1,
|
|
145
|
+
duration: fadeInDuration,
|
|
146
|
+
useNativeDriver: true
|
|
147
|
+
}).start();
|
|
148
|
+
} else {
|
|
149
|
+
fadeAnim.setValue(1);
|
|
150
|
+
}
|
|
128
151
|
onLoad?.();
|
|
129
152
|
}
|
|
130
153
|
} catch (error) {
|
|
131
|
-
// Ignore abort errors
|
|
132
154
|
if (error instanceof Error && error.name === 'AbortError') {
|
|
133
155
|
return;
|
|
134
156
|
}
|
|
@@ -138,7 +160,7 @@ export function IconRenderer({
|
|
|
138
160
|
onError?.(error instanceof Error ? error : new Error(String(error)));
|
|
139
161
|
}
|
|
140
162
|
}
|
|
141
|
-
}, [iconName, fallback, fallbackDelay, onLoad, onError
|
|
163
|
+
}, [iconName, fallback, fallbackDelay, onLoad, onError, effectivePlaceholder, fadeIn, fadeInDuration, fadeAnim]);
|
|
142
164
|
|
|
143
165
|
// Effect to load icon
|
|
144
166
|
useEffect(() => {
|
|
@@ -188,6 +210,9 @@ export function IconRenderer({
|
|
|
188
210
|
// Determine if we should show placeholder/fallback
|
|
189
211
|
const shouldShowPlaceholder = state === 'loading' && showFallback || state === 'error';
|
|
190
212
|
|
|
213
|
+
// Whether to use fade-in wrapper (only for non-cached, non-animated icons)
|
|
214
|
+
const useFadeIn = fadeIn && !wasCacheHit && state === 'loaded' && !hasAnimation;
|
|
215
|
+
|
|
191
216
|
// Check if icon should be pressable
|
|
192
217
|
const isPressable = !!(onPress || onLongPress);
|
|
193
218
|
|
|
@@ -219,8 +244,8 @@ export function IconRenderer({
|
|
|
219
244
|
|
|
220
245
|
// Render placeholder or fallback during loading/error
|
|
221
246
|
if (shouldShowPlaceholder) {
|
|
222
|
-
// Priority:
|
|
223
|
-
if (
|
|
247
|
+
// Priority: effectivePlaceholder (includes config default) > fallback
|
|
248
|
+
if (effectivePlaceholder !== undefined) {
|
|
224
249
|
return wrapWithPressable(/*#__PURE__*/React.createElement(View, _extends({
|
|
225
250
|
style: [{
|
|
226
251
|
width: iconWidth,
|
|
@@ -229,7 +254,7 @@ export function IconRenderer({
|
|
|
229
254
|
accessibilityLabel: accessibilityLabel,
|
|
230
255
|
testID: testID
|
|
231
256
|
}, nativeWindProps), /*#__PURE__*/React.createElement(PlaceholderFactory, {
|
|
232
|
-
type:
|
|
257
|
+
type: effectivePlaceholder,
|
|
233
258
|
width: iconWidth,
|
|
234
259
|
height: iconHeight,
|
|
235
260
|
color: placeholderColor,
|
|
@@ -280,7 +305,24 @@ export function IconRenderer({
|
|
|
280
305
|
})));
|
|
281
306
|
}
|
|
282
307
|
|
|
283
|
-
// Render without animation
|
|
308
|
+
// Render without animation (with optional fade-in)
|
|
309
|
+
if (useFadeIn) {
|
|
310
|
+
return wrapWithPressable(/*#__PURE__*/React.createElement(Animated.View, _extends({
|
|
311
|
+
style: [styles.container, {
|
|
312
|
+
width: iconWidth,
|
|
313
|
+
height: iconHeight,
|
|
314
|
+
transform: transformStyle,
|
|
315
|
+
opacity: fadeAnim
|
|
316
|
+
}, style],
|
|
317
|
+
accessibilityLabel: accessibilityLabel,
|
|
318
|
+
accessibilityRole: "image",
|
|
319
|
+
testID: testID
|
|
320
|
+
}, nativeWindProps), /*#__PURE__*/React.createElement(SvgXml, {
|
|
321
|
+
xml: colorizedSvg,
|
|
322
|
+
width: iconWidth,
|
|
323
|
+
height: iconHeight
|
|
324
|
+
})));
|
|
325
|
+
}
|
|
284
326
|
return wrapWithPressable(/*#__PURE__*/React.createElement(View, _extends({
|
|
285
327
|
style: [styles.container, {
|
|
286
328
|
width: iconWidth,
|
|
@@ -298,7 +340,7 @@ export function IconRenderer({
|
|
|
298
340
|
}
|
|
299
341
|
|
|
300
342
|
// Show placeholder immediately if set (no delay), otherwise empty view
|
|
301
|
-
if (
|
|
343
|
+
if (effectivePlaceholder !== undefined && state === 'loading') {
|
|
302
344
|
return wrapWithPressable(/*#__PURE__*/React.createElement(View, _extends({
|
|
303
345
|
style: [{
|
|
304
346
|
width: iconWidth,
|
|
@@ -307,7 +349,7 @@ export function IconRenderer({
|
|
|
307
349
|
accessibilityLabel: accessibilityLabel,
|
|
308
350
|
testID: testID
|
|
309
351
|
}, nativeWindProps), /*#__PURE__*/React.createElement(PlaceholderFactory, {
|
|
310
|
-
type:
|
|
352
|
+
type: effectivePlaceholder,
|
|
311
353
|
width: iconWidth,
|
|
312
354
|
height: iconHeight,
|
|
313
355
|
color: placeholderColor,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","useEffect","useCallback","useRef","useMemo","View","StyleSheet","Animated","Pressable","SvgXml","CacheManager","fetchIcon","PlaceholderFactory","useIconAnimation","escapeXmlAttribute","value","replace","IconRenderer","iconName","size","color","width","propWidth","height","propHeight","style","className","rotate","flip","fallback","fallbackDelay","placeholder","placeholderColor","placeholderDuration","onLoad","onError","accessibilityLabel","testID","onPress","onLongPress","onPressIn","onPressOut","disabled","pressedStyle","animate","animationDuration","animationLoop","animationEasing","animationDelay","autoPlay","onAnimationComplete","svg","setSvg","state","setState","showFallback","setShowFallback","mountedRef","fallbackTimerRef","abortControllerRef","isLoadingRef","iconWidth","iconHeight","animatedStyle","hasAnimation","animation","duration","loop","easing","delay","onComplete","loadIcon","current","abort","AbortController","cached","get","setTimeout","fetchedSvg","signal","set","error","Error","name","String","clearTimeout","transformStyle","transforms","push","scaleX","scaleY","length","undefined","colorizedSvg","safeColor","shouldShowPlaceholder","isPressable","nativeWindProps","wrapWithPressable","content","createElement","accessibilityRole","accessibilityState","pressed","_extends","type","styles","container","transform","xml","create","alignItems","justifyContent"],"sourceRoot":"../../src","sources":["IconRenderer.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useState","useEffect","useCallback","useRef","useMemo","View","StyleSheet","Animated","Pressable","SvgXml","CacheManager","fetchIcon","PlaceholderFactory","useIconAnimation","ConfigManager","escapeXmlAttribute","value","replace","IconRenderer","iconName","size","color","width","propWidth","height","propHeight","style","className","rotate","flip","fallback","fallbackDelay","placeholder","placeholderColor","placeholderDuration","onLoad","onError","accessibilityLabel","testID","onPress","onLongPress","onPressIn","onPressOut","disabled","pressedStyle","animate","animationDuration","animationLoop","animationEasing","animationDelay","autoPlay","onAnimationComplete","defaultsConfig","getDefaultsConfig","effectivePlaceholder","undefined","fadeIn","fadeInDuration","svg","setSvg","state","setState","showFallback","setShowFallback","wasCacheHit","setWasCacheHit","mountedRef","fallbackTimerRef","abortControllerRef","isLoadingRef","fadeAnim","Value","current","iconWidth","iconHeight","animatedStyle","hasAnimation","animation","duration","loop","easing","delay","onComplete","loadIcon","abort","AbortController","cached","get","setValue","setTimeout","fetchedSvg","signal","set","timing","toValue","useNativeDriver","start","error","Error","name","String","clearTimeout","transformStyle","transforms","push","scaleX","scaleY","length","colorizedSvg","safeColor","shouldShowPlaceholder","useFadeIn","isPressable","nativeWindProps","wrapWithPressable","content","createElement","accessibilityRole","accessibilityState","pressed","_extends","type","styles","container","transform","xml","opacity","create","alignItems","justifyContent"],"sourceRoot":"../../src","sources":["IconRenderer.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -190,7 +190,33 @@ export async function fetchAndCreateBundle(iconNames, options) {
|
|
|
190
190
|
}
|
|
191
191
|
|
|
192
192
|
/**
|
|
193
|
-
*
|
|
193
|
+
* Read existing bundle from disk
|
|
194
|
+
* Returns null if file doesn't exist or is invalid
|
|
195
|
+
*/
|
|
196
|
+
export function readExistingBundle(bundlePath) {
|
|
197
|
+
try {
|
|
198
|
+
if (!fs.existsSync(bundlePath)) return null;
|
|
199
|
+
const content = fs.readFileSync(bundlePath, 'utf-8');
|
|
200
|
+
const bundle = JSON.parse(content);
|
|
201
|
+
if (bundle.version === '1.0.0' && typeof bundle.count === 'number' && bundle.icons) {
|
|
202
|
+
return bundle;
|
|
203
|
+
}
|
|
204
|
+
} catch {
|
|
205
|
+
// Invalid bundle file
|
|
206
|
+
}
|
|
207
|
+
return null;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
/**
|
|
211
|
+
* Determine which icons are new and need to be fetched
|
|
212
|
+
*/
|
|
213
|
+
export function getNewIconNames(allIcons, existingBundle) {
|
|
214
|
+
if (!existingBundle) return allIcons;
|
|
215
|
+
return allIcons.filter(name => !existingBundle.icons[name]);
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
/**
|
|
219
|
+
* Write bundle to file (only if content changed)
|
|
194
220
|
*/
|
|
195
221
|
export function writeBundleToFile(bundle, outputPath, verbose) {
|
|
196
222
|
// Ensure directory exists
|
|
@@ -201,8 +227,28 @@ export function writeBundleToFile(bundle, outputPath, verbose) {
|
|
|
201
227
|
});
|
|
202
228
|
}
|
|
203
229
|
|
|
204
|
-
// Write bundle
|
|
230
|
+
// Write bundle JSON
|
|
205
231
|
const content = JSON.stringify(bundle);
|
|
232
|
+
|
|
233
|
+
// Check if content actually changed
|
|
234
|
+
if (fs.existsSync(outputPath)) {
|
|
235
|
+
try {
|
|
236
|
+
const existing = fs.readFileSync(outputPath, 'utf-8');
|
|
237
|
+
const existingBundle = JSON.parse(existing);
|
|
238
|
+
if (existingBundle.count === bundle.count && existingBundle.version === bundle.version) {
|
|
239
|
+
const existingKeys = Object.keys(existingBundle.icons).sort().join(',');
|
|
240
|
+
const newKeys = Object.keys(bundle.icons).sort().join(',');
|
|
241
|
+
if (existingKeys === newKeys) {
|
|
242
|
+
if (verbose) {
|
|
243
|
+
console.log('[rn-iconify] Bundle unchanged, skipping write');
|
|
244
|
+
}
|
|
245
|
+
return;
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
} catch {
|
|
249
|
+
// Existing file is corrupted, proceed with write
|
|
250
|
+
}
|
|
251
|
+
}
|
|
206
252
|
fs.writeFileSync(outputPath, content, 'utf-8');
|
|
207
253
|
if (verbose) {
|
|
208
254
|
const sizeKB = (content.length / 1024).toFixed(2);
|
|
@@ -210,12 +256,20 @@ export function writeBundleToFile(bundle, outputPath, verbose) {
|
|
|
210
256
|
}
|
|
211
257
|
}
|
|
212
258
|
|
|
259
|
+
/**
|
|
260
|
+
* Resolve the bundle directory path
|
|
261
|
+
*/
|
|
262
|
+
export function resolveBundleDir(outputPath, projectRoot) {
|
|
263
|
+
return path.isAbsolute(outputPath) ? outputPath : path.join(projectRoot, outputPath);
|
|
264
|
+
}
|
|
265
|
+
|
|
213
266
|
/**
|
|
214
267
|
* Generate icon bundle from collected icons
|
|
268
|
+
* Supports incremental fetching: only fetches icons not already in the existing bundle
|
|
215
269
|
*/
|
|
216
|
-
export async function generateBundle(iconNames, options, projectRoot) {
|
|
270
|
+
export async function generateBundle(iconNames, options, projectRoot, existingBundle) {
|
|
217
271
|
const {
|
|
218
|
-
outputPath = '
|
|
272
|
+
outputPath = '.rn-iconify',
|
|
219
273
|
verbose = false
|
|
220
274
|
} = options;
|
|
221
275
|
if (iconNames.length === 0) {
|
|
@@ -224,25 +278,52 @@ export async function generateBundle(iconNames, options, projectRoot) {
|
|
|
224
278
|
}
|
|
225
279
|
return;
|
|
226
280
|
}
|
|
281
|
+
const bundleDir = resolveBundleDir(outputPath, projectRoot);
|
|
282
|
+
const bundleFile = path.join(bundleDir, 'icons.json');
|
|
227
283
|
try {
|
|
228
|
-
//
|
|
229
|
-
const
|
|
284
|
+
// Read existing bundle if not provided
|
|
285
|
+
const existing = existingBundle !== undefined ? existingBundle : readExistingBundle(bundleFile);
|
|
286
|
+
|
|
287
|
+
// Determine which icons need fetching
|
|
288
|
+
const newIconNames = getNewIconNames(iconNames, existing);
|
|
289
|
+
if (newIconNames.length === 0 && existing) {
|
|
290
|
+
if (verbose) {
|
|
291
|
+
console.log('[rn-iconify] All icons already bundled, skipping fetch');
|
|
292
|
+
}
|
|
293
|
+
return;
|
|
294
|
+
}
|
|
230
295
|
|
|
231
|
-
//
|
|
232
|
-
const
|
|
296
|
+
// Fetch only new icons
|
|
297
|
+
const newBundle = newIconNames.length > 0 ? await fetchAndCreateBundle(newIconNames, options) : {
|
|
298
|
+
version: '1.0.0',
|
|
299
|
+
generatedAt: new Date().toISOString(),
|
|
300
|
+
icons: {},
|
|
301
|
+
count: 0
|
|
302
|
+
};
|
|
303
|
+
|
|
304
|
+
// Merge with existing bundle
|
|
305
|
+
const mergedIcons = {
|
|
306
|
+
...(existing?.icons || {}),
|
|
307
|
+
...newBundle.icons
|
|
308
|
+
};
|
|
309
|
+
const bundle = {
|
|
310
|
+
version: '1.0.0',
|
|
311
|
+
generatedAt: new Date().toISOString(),
|
|
312
|
+
icons: mergedIcons,
|
|
313
|
+
count: Object.keys(mergedIcons).length
|
|
314
|
+
};
|
|
233
315
|
|
|
234
316
|
// Write bundle to file
|
|
235
317
|
writeBundleToFile(bundle, bundleFile, verbose);
|
|
236
318
|
|
|
237
|
-
// Also write a JS module for
|
|
238
|
-
const jsContent = `// Auto-generated by rn-iconify babel plugin
|
|
239
|
-
|
|
240
|
-
module.exports = ${JSON.stringify(bundle)};
|
|
241
|
-
`;
|
|
242
|
-
const jsFile = bundleFile.replace('.json', '.js');
|
|
319
|
+
// Also write a JS module for direct require() by Metro
|
|
320
|
+
const jsContent = `// Auto-generated by rn-iconify babel plugin\n// Do not edit manually\nmodule.exports = ${JSON.stringify(bundle)};\n`;
|
|
321
|
+
const jsFile = path.join(bundleDir, 'icons.js');
|
|
243
322
|
fs.writeFileSync(jsFile, jsContent, 'utf-8');
|
|
244
323
|
if (verbose) {
|
|
245
|
-
|
|
324
|
+
const newCount = newIconNames.length;
|
|
325
|
+
const existingCount = existing ? Object.keys(existing.icons).length : 0;
|
|
326
|
+
console.log(`[rn-iconify] Bundle generation complete! ${newCount} new + ${existingCount} existing = ${bundle.count} total icons`);
|
|
246
327
|
}
|
|
247
328
|
} catch (error) {
|
|
248
329
|
// Don't fail the build on bundle generation error
|
|
@@ -254,16 +335,8 @@ module.exports = ${JSON.stringify(bundle)};
|
|
|
254
335
|
* Check if bundle file exists and is valid
|
|
255
336
|
*/
|
|
256
337
|
export function isBundleValid(outputPath, projectRoot) {
|
|
257
|
-
const
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
}
|
|
261
|
-
try {
|
|
262
|
-
const content = fs.readFileSync(bundleFile, 'utf-8');
|
|
263
|
-
const bundle = JSON.parse(content);
|
|
264
|
-
return bundle.version === '1.0.0' && typeof bundle.count === 'number';
|
|
265
|
-
} catch {
|
|
266
|
-
return false;
|
|
267
|
-
}
|
|
338
|
+
const bundleDir = resolveBundleDir(outputPath, projectRoot);
|
|
339
|
+
const bundleFile = path.join(bundleDir, 'icons.json');
|
|
340
|
+
return readExistingBundle(bundleFile) !== null;
|
|
268
341
|
}
|
|
269
342
|
//# sourceMappingURL=cache-writer.js.map
|