@sudobility/svgr_lib 0.0.39 → 0.0.43
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ImageType, SvgrClient } from '@sudobility/svgr_client';
|
|
1
|
+
import type { ImageType, JobResult, SvgrClient } from '@sudobility/svgr_client';
|
|
2
2
|
export declare const OCR_SUPPORTED_IMAGE_TYPES: ReadonlySet<ImageType>;
|
|
3
3
|
export declare const TRANSPARENT_BG_SUPPORTED_IMAGE_TYPES: ReadonlySet<ImageType>;
|
|
4
4
|
export interface ImageConverterState {
|
|
@@ -7,11 +7,17 @@ export interface ImageConverterState {
|
|
|
7
7
|
ocr: boolean;
|
|
8
8
|
mergePaths: boolean;
|
|
9
9
|
imageType: ImageType;
|
|
10
|
-
svgResult: string | null;
|
|
11
|
-
error: string | null;
|
|
12
|
-
isConverting: boolean;
|
|
13
10
|
supportsOcr: boolean;
|
|
14
11
|
supportsTransparentBg: boolean;
|
|
12
|
+
imageId: string | null;
|
|
13
|
+
isUploading: boolean;
|
|
14
|
+
currentJobId: string | null;
|
|
15
|
+
currentJob: JobResult | null;
|
|
16
|
+
isConverting: boolean;
|
|
17
|
+
previewUrl: string | null;
|
|
18
|
+
svgFilename: string | null;
|
|
19
|
+
jobs: JobResult[];
|
|
20
|
+
error: string | null;
|
|
15
21
|
}
|
|
16
22
|
export interface UseImageConverterReturn extends ImageConverterState {
|
|
17
23
|
setQuality: (q: number) => void;
|
|
@@ -19,11 +25,14 @@ export interface UseImageConverterReturn extends ImageConverterState {
|
|
|
19
25
|
setOcr: (v: boolean) => void;
|
|
20
26
|
setMergePaths: (v: boolean) => void;
|
|
21
27
|
setImageType: (v: ImageType) => void;
|
|
22
|
-
|
|
28
|
+
upload: (file: File) => Promise<void>;
|
|
29
|
+
convert: () => void;
|
|
23
30
|
reset: () => void;
|
|
31
|
+
selectJob: (jobId: string) => void;
|
|
32
|
+
fetchSvg: () => Promise<Blob | null>;
|
|
24
33
|
}
|
|
25
34
|
export type ScaleImageFn = (base64: string, maxPixels: number) => Promise<string>;
|
|
26
35
|
export declare function supportsOcrOption(imageType: ImageType): boolean;
|
|
27
36
|
export declare function supportsTransparentBgOption(imageType: ImageType): boolean;
|
|
28
|
-
export declare function useImageConverter(client: SvgrClient,
|
|
37
|
+
export declare function useImageConverter(client: SvgrClient, _scaleImage?: ScaleImageFn): UseImageConverterReturn;
|
|
29
38
|
//# sourceMappingURL=useImageConverter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useImageConverter.d.ts","sourceRoot":"","sources":["../../src/hooks/useImageConverter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useImageConverter.d.ts","sourceRoot":"","sources":["../../src/hooks/useImageConverter.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAIhF,eAAO,MAAM,yBAAyB,EAAE,WAAW,CAAC,SAAS,CAkB3D,CAAC;AAEH,eAAO,MAAM,oCAAoC,EAAE,WAAW,CAAC,SAAS,CAoBpE,CAAC;AAEL,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IACvB,GAAG,EAAE,OAAO,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,qBAAqB,EAAE,OAAO,CAAC;IAG/B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAEvB,WAAW,EAAE,OAAO,CAAC;IAGrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,UAAU,EAAE,SAAS,GAAG,IAAI,CAAC;IAE7B,YAAY,EAAE,OAAO,CAAC;IAGtB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAG3B,IAAI,EAAE,SAAS,EAAE,CAAC;IAElB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,uBAAwB,SAAQ,mBAAmB;IAClE,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,gBAAgB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7B,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACpC,YAAY,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAC;IAGrC,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtC,OAAO,EAAE,MAAM,IAAI,CAAC;IAEpB,KAAK,EAAE,MAAM,IAAI,CAAC;IAElB,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAEnC,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;CACtC;AAMD,MAAM,MAAM,YAAY,GAAG,CACzB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,KACd,OAAO,CAAC,MAAM,CAAC,CAAC;AAErB,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAE/D;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAEzE;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,UAAU,EAClB,WAAW,CAAC,EAAE,YAAY,GACzB,uBAAuB,CAiNzB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { useCallback, useState } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { useCallback, useEffect, useState } from 'react';
|
|
2
|
+
import { svgrKeys, useCreateJob, useImageJobs, useJobStatus, useUploadImage, } from '@sudobility/svgr_client';
|
|
3
|
+
import { useQueryClient } from '@tanstack/react-query';
|
|
4
|
+
import { QUALITY_DEFAULT } from '../config/constants';
|
|
4
5
|
export const OCR_SUPPORTED_IMAGE_TYPES = new Set([
|
|
5
6
|
'auto',
|
|
6
7
|
'design',
|
|
@@ -46,16 +47,50 @@ export function supportsOcrOption(imageType) {
|
|
|
46
47
|
export function supportsTransparentBgOption(imageType) {
|
|
47
48
|
return TRANSPARENT_BG_SUPPORTED_IMAGE_TYPES.has(imageType);
|
|
48
49
|
}
|
|
49
|
-
export function useImageConverter(client,
|
|
50
|
-
const
|
|
50
|
+
export function useImageConverter(client, _scaleImage) {
|
|
51
|
+
const queryClient = useQueryClient();
|
|
52
|
+
const uploadMutation = useUploadImage(client);
|
|
53
|
+
const createJobMutation = useCreateJob(client);
|
|
51
54
|
const [quality, setQuality] = useState(QUALITY_DEFAULT);
|
|
52
55
|
const [transparentBg, setTransparentBgState] = useState(false);
|
|
53
56
|
const [ocr, setOcrState] = useState(true);
|
|
54
57
|
const [mergePaths, setMergePaths] = useState(false);
|
|
55
58
|
const [imageType, setImageTypeState] = useState('auto');
|
|
56
|
-
const [
|
|
59
|
+
const [imageId, setImageId] = useState(null);
|
|
60
|
+
const [currentJobId, setCurrentJobId] = useState(null);
|
|
61
|
+
const [previewUrl, setPreviewUrl] = useState(null);
|
|
62
|
+
const [svgFilename, setSvgFilename] = useState(null);
|
|
57
63
|
const [error, setError] = useState(null);
|
|
58
|
-
const
|
|
64
|
+
const jobStatusQuery = useJobStatus(client, currentJobId);
|
|
65
|
+
const currentJob = jobStatusQuery.data?.data ?? null;
|
|
66
|
+
const imageJobsQuery = useImageJobs(client, imageId);
|
|
67
|
+
const jobs = imageJobsQuery.data?.data ?? [];
|
|
68
|
+
useEffect(() => {
|
|
69
|
+
if (!currentJob)
|
|
70
|
+
return;
|
|
71
|
+
if (currentJob.status === 'done' && currentJob.previewFilename) {
|
|
72
|
+
setSvgFilename(currentJob.svgFilename ?? null);
|
|
73
|
+
client
|
|
74
|
+
.fetchFile(currentJob.previewFilename)
|
|
75
|
+
.then(blob => {
|
|
76
|
+
const url = URL.createObjectURL(blob);
|
|
77
|
+
setPreviewUrl(prev => {
|
|
78
|
+
if (prev)
|
|
79
|
+
URL.revokeObjectURL(prev);
|
|
80
|
+
return url;
|
|
81
|
+
});
|
|
82
|
+
})
|
|
83
|
+
.catch(err => {
|
|
84
|
+
console.error('Failed to fetch preview:', err);
|
|
85
|
+
});
|
|
86
|
+
queryClient.invalidateQueries({
|
|
87
|
+
queryKey: svgrKeys.imageJobs(currentJob.imageId),
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
else if (currentJob.status === 'error') {
|
|
91
|
+
setError(currentJob.errorMessage ?? 'Conversion failed');
|
|
92
|
+
}
|
|
93
|
+
}, [currentJob?.status, currentJob?.previewFilename]);
|
|
59
94
|
const setTransparentBg = useCallback((v) => {
|
|
60
95
|
setTransparentBgState(supportsTransparentBgOption(imageType) ? v : false);
|
|
61
96
|
}, [imageType]);
|
|
@@ -71,71 +106,133 @@ export function useImageConverter(client, scaleImage) {
|
|
|
71
106
|
setOcrState(false);
|
|
72
107
|
}
|
|
73
108
|
}, []);
|
|
74
|
-
const
|
|
109
|
+
const upload = useCallback(async (file) => {
|
|
75
110
|
setError(null);
|
|
76
111
|
try {
|
|
77
|
-
const
|
|
78
|
-
? await scaleImage(base64, MAX_PIXELS)
|
|
79
|
-
: base64;
|
|
80
|
-
const response = await convertMutation.mutateAsync({
|
|
81
|
-
original: scaled,
|
|
82
|
-
filename,
|
|
83
|
-
quality,
|
|
84
|
-
transparentBg,
|
|
85
|
-
ocr,
|
|
86
|
-
mergePaths,
|
|
87
|
-
imageType,
|
|
88
|
-
});
|
|
112
|
+
const response = await uploadMutation.mutateAsync(file);
|
|
89
113
|
if (response.success && response.data) {
|
|
90
|
-
|
|
91
|
-
try {
|
|
92
|
-
const svg = await client.fetchSvg(response.data.cacheId);
|
|
93
|
-
setSvgResult(svg);
|
|
94
|
-
}
|
|
95
|
-
finally {
|
|
96
|
-
setIsFetchingSvg(false);
|
|
97
|
-
}
|
|
114
|
+
setImageId(response.data.imageId);
|
|
98
115
|
}
|
|
99
116
|
else {
|
|
100
|
-
setError(response.error
|
|
117
|
+
setError(response.error ?? 'Upload failed');
|
|
101
118
|
}
|
|
102
119
|
}
|
|
103
120
|
catch (err) {
|
|
104
|
-
setError(err instanceof Error ? err.message : '
|
|
105
|
-
setIsFetchingSvg(false);
|
|
121
|
+
setError(err instanceof Error ? err.message : 'Upload failed');
|
|
106
122
|
}
|
|
123
|
+
}, [uploadMutation]);
|
|
124
|
+
const convert = useCallback(() => {
|
|
125
|
+
if (!imageId)
|
|
126
|
+
return;
|
|
127
|
+
setError(null);
|
|
128
|
+
setPreviewUrl(prev => {
|
|
129
|
+
if (prev)
|
|
130
|
+
URL.revokeObjectURL(prev);
|
|
131
|
+
return null;
|
|
132
|
+
});
|
|
133
|
+
setSvgFilename(null);
|
|
134
|
+
createJobMutation
|
|
135
|
+
.mutateAsync({
|
|
136
|
+
imageId,
|
|
137
|
+
quality,
|
|
138
|
+
transparentBg,
|
|
139
|
+
ocr,
|
|
140
|
+
mergePaths,
|
|
141
|
+
imageType,
|
|
142
|
+
})
|
|
143
|
+
.then(response => {
|
|
144
|
+
if (response.success && response.data) {
|
|
145
|
+
setCurrentJobId(response.data.jobId);
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
setError(response.error ?? 'Failed to create job');
|
|
149
|
+
}
|
|
150
|
+
})
|
|
151
|
+
.catch(err => {
|
|
152
|
+
setError(err instanceof Error ? err.message : 'Failed to create job');
|
|
153
|
+
});
|
|
107
154
|
}, [
|
|
108
|
-
|
|
109
|
-
client,
|
|
110
|
-
scaleImage,
|
|
155
|
+
imageId,
|
|
111
156
|
quality,
|
|
112
157
|
transparentBg,
|
|
113
158
|
ocr,
|
|
114
159
|
mergePaths,
|
|
115
160
|
imageType,
|
|
161
|
+
createJobMutation,
|
|
116
162
|
]);
|
|
117
163
|
const reset = useCallback(() => {
|
|
118
|
-
|
|
164
|
+
setImageId(null);
|
|
165
|
+
setCurrentJobId(null);
|
|
166
|
+
setPreviewUrl(prev => {
|
|
167
|
+
if (prev)
|
|
168
|
+
URL.revokeObjectURL(prev);
|
|
169
|
+
return null;
|
|
170
|
+
});
|
|
171
|
+
setSvgFilename(null);
|
|
119
172
|
setError(null);
|
|
120
173
|
}, []);
|
|
174
|
+
const selectJob = useCallback((jobId) => {
|
|
175
|
+
const job = jobs.find(j => j.jobId === jobId);
|
|
176
|
+
if (!job || job.status !== 'done')
|
|
177
|
+
return;
|
|
178
|
+
setCurrentJobId(jobId);
|
|
179
|
+
setSvgFilename(job.svgFilename ?? null);
|
|
180
|
+
if (job.previewFilename) {
|
|
181
|
+
client
|
|
182
|
+
.fetchFile(job.previewFilename)
|
|
183
|
+
.then(blob => {
|
|
184
|
+
const url = URL.createObjectURL(blob);
|
|
185
|
+
setPreviewUrl(prev => {
|
|
186
|
+
if (prev)
|
|
187
|
+
URL.revokeObjectURL(prev);
|
|
188
|
+
return url;
|
|
189
|
+
});
|
|
190
|
+
})
|
|
191
|
+
.catch(err => console.error('Failed to fetch preview:', err));
|
|
192
|
+
}
|
|
193
|
+
}, [jobs, client]);
|
|
194
|
+
const fetchSvg = useCallback(async () => {
|
|
195
|
+
if (!svgFilename)
|
|
196
|
+
return null;
|
|
197
|
+
try {
|
|
198
|
+
return await client.fetchFile(svgFilename);
|
|
199
|
+
}
|
|
200
|
+
catch (err) {
|
|
201
|
+
console.error('Failed to fetch SVG:', err);
|
|
202
|
+
return null;
|
|
203
|
+
}
|
|
204
|
+
}, [svgFilename, client]);
|
|
205
|
+
const isConverting = createJobMutation.isPending ||
|
|
206
|
+
(currentJob !== null &&
|
|
207
|
+
currentJob.status !== 'done' &&
|
|
208
|
+
currentJob.status !== 'error');
|
|
121
209
|
return {
|
|
122
210
|
quality,
|
|
123
211
|
transparentBg,
|
|
124
212
|
ocr,
|
|
125
213
|
mergePaths,
|
|
126
214
|
imageType,
|
|
127
|
-
svgResult,
|
|
128
|
-
error,
|
|
129
|
-
isConverting: convertMutation.isPending || isFetchingSvg,
|
|
130
215
|
supportsOcr: supportsOcrOption(imageType),
|
|
131
216
|
supportsTransparentBg: supportsTransparentBgOption(imageType),
|
|
217
|
+
imageId,
|
|
218
|
+
isUploading: uploadMutation.isPending,
|
|
219
|
+
currentJobId,
|
|
220
|
+
currentJob,
|
|
221
|
+
isConverting,
|
|
222
|
+
previewUrl,
|
|
223
|
+
svgFilename,
|
|
224
|
+
jobs,
|
|
225
|
+
error,
|
|
132
226
|
setQuality,
|
|
133
227
|
setTransparentBg,
|
|
134
228
|
setOcr,
|
|
135
229
|
setMergePaths,
|
|
136
230
|
setImageType,
|
|
231
|
+
upload,
|
|
137
232
|
convert,
|
|
138
233
|
reset,
|
|
234
|
+
selectJob,
|
|
235
|
+
fetchSvg,
|
|
139
236
|
};
|
|
140
237
|
}
|
|
141
238
|
//# sourceMappingURL=useImageConverter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useImageConverter.js","sourceRoot":"","sources":["../../src/hooks/useImageConverter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"useImageConverter.js","sourceRoot":"","sources":["../../src/hooks/useImageConverter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sudobility/svgr_lib",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.43",
|
|
4
4
|
"description": "Shared business logic library for SVGR web and React Native apps",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -35,16 +35,16 @@
|
|
|
35
35
|
"author": "John Huang",
|
|
36
36
|
"license": "BUSL-1.1",
|
|
37
37
|
"peerDependencies": {
|
|
38
|
-
"@sudobility/svgr_client": "^1.0.
|
|
39
|
-
"@sudobility/svgr_types": "^1.0.
|
|
38
|
+
"@sudobility/svgr_client": "^1.0.37",
|
|
39
|
+
"@sudobility/svgr_types": "^1.0.24",
|
|
40
40
|
"@sudobility/types": "^1.9.62",
|
|
41
41
|
"@tanstack/react-query": ">=5.0.0",
|
|
42
42
|
"react": ">=18.0.0"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"@eslint/js": "^9.39.2",
|
|
46
|
-
"@sudobility/svgr_client": "^1.0.
|
|
47
|
-
"@sudobility/svgr_types": "^1.0.
|
|
46
|
+
"@sudobility/svgr_client": "^1.0.37",
|
|
47
|
+
"@sudobility/svgr_types": "^1.0.24",
|
|
48
48
|
"@sudobility/types": "^1.9.62",
|
|
49
49
|
"@tanstack/react-query": "^5.90.5",
|
|
50
50
|
"@types/node": "^24.9.1",
|