@sudobility/svgr_lib 0.0.22 → 0.0.24

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 +1 @@
1
- {"version":3,"file":"useImageConverter.d.ts","sourceRoot":"","sources":["../../src/hooks/useImageConverter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAU1D,MAAM,WAAW,mBAAmB;IAElC,OAAO,EAAE,MAAM,CAAC;IAEhB,aAAa,EAAE,OAAO,CAAC;IAEvB,GAAG,EAAE,OAAO,CAAC;IAEb,UAAU,EAAE,OAAO,CAAC;IAEpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB,YAAY,EAAE,OAAO,CAAC;CACvB;AAQD,MAAM,WAAW,uBAAwB,SAAQ,mBAAmB;IAElE,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAEhC,gBAAgB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAEvC,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAE7B,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAMpC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAEpD,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAsCD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,GAAG,uBAAuB,CAsD7E"}
1
+ {"version":3,"file":"useImageConverter.d.ts","sourceRoot":"","sources":["../../src/hooks/useImageConverter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAU1D,MAAM,WAAW,mBAAmB;IAElC,OAAO,EAAE,MAAM,CAAC;IAEhB,aAAa,EAAE,OAAO,CAAC;IAEvB,GAAG,EAAE,OAAO,CAAC;IAEb,UAAU,EAAE,OAAO,CAAC;IAEpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB,YAAY,EAAE,OAAO,CAAC;CACvB;AAQD,MAAM,WAAW,uBAAwB,SAAQ,mBAAmB;IAElE,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAEhC,gBAAgB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAEvC,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAE7B,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAMpC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAEpD,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAsCD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,GAAG,uBAAuB,CAgE7E"}
@@ -9,22 +9,37 @@ export function useImageConverter(client) {
9
9
  const [mergePaths, setMergePaths] = useState(false);
10
10
  const [svgResult, setSvgResult] = useState(null);
11
11
  const [error, setError] = useState(null);
12
- const convert = useCallback((base64, filename) => {
12
+ const [isFetchingSvg, setIsFetchingSvg] = useState(false);
13
+ const convert = useCallback(async (base64, filename) => {
13
14
  setError(null);
14
- convertMutation.mutate({ original: base64, filename, quality, transparentBg, ocr, mergePaths }, {
15
- onSuccess: response => {
16
- if (response.success && response.data) {
17
- setSvgResult(response.data.svg);
15
+ try {
16
+ const response = await convertMutation.mutateAsync({
17
+ original: base64,
18
+ filename,
19
+ quality,
20
+ transparentBg,
21
+ ocr,
22
+ mergePaths,
23
+ });
24
+ if (response.success && response.data) {
25
+ setIsFetchingSvg(true);
26
+ try {
27
+ const svg = await client.fetchSvg(response.data.cacheId);
28
+ setSvgResult(svg);
18
29
  }
19
- else {
20
- setError(response.error || 'Conversion failed');
30
+ finally {
31
+ setIsFetchingSvg(false);
21
32
  }
22
- },
23
- onError: err => {
24
- setError(err instanceof Error ? err.message : 'Conversion failed');
25
- },
26
- });
27
- }, [convertMutation, quality, transparentBg, ocr, mergePaths]);
33
+ }
34
+ else {
35
+ setError(response.error || 'Conversion failed');
36
+ }
37
+ }
38
+ catch (err) {
39
+ setError(err instanceof Error ? err.message : 'Conversion failed');
40
+ setIsFetchingSvg(false);
41
+ }
42
+ }, [convertMutation, client, quality, transparentBg, ocr, mergePaths]);
28
43
  const reset = useCallback(() => {
29
44
  setSvgResult(null);
30
45
  setError(null);
@@ -36,7 +51,7 @@ export function useImageConverter(client) {
36
51
  mergePaths,
37
52
  svgResult,
38
53
  error,
39
- isConverting: convertMutation.isPending,
54
+ isConverting: convertMutation.isPending || isFetchingSvg,
40
55
  setQuality,
41
56
  setTransparentBg,
42
57
  setOcr,
@@ -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;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAuFtD,MAAM,UAAU,iBAAiB,CAAC,MAAkB;IAClD,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAE3C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;IACxD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1D,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAChE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAExD,MAAM,OAAO,GAAG,WAAW,CACzB,CAAC,MAAc,EAAE,QAAgB,EAAE,EAAE;QACnC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,eAAe,CAAC,MAAM,CACpB,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,UAAU,EAAE,EACvE;YACE,SAAS,EAAE,QAAQ,CAAC,EAAE;gBACpB,IAAI,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;oBACtC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAClC,CAAC;qBAAM,CAAC;oBACN,QAAQ,CACL,QAA+B,CAAC,KAAK,IAAI,mBAAmB,CAC9D,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,OAAO,EAAE,GAAG,CAAC,EAAE;gBACb,QAAQ,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;YACrE,CAAC;SACF,CACF,CAAC;IACJ,CAAC,EACD,CAAC,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,UAAU,CAAC,CAC3D,CAAC;IAEF,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,QAAQ,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,OAAO;QACP,aAAa;QACb,GAAG;QACH,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY,EAAE,eAAe,CAAC,SAAS;QACvC,UAAU;QACV,gBAAgB;QAChB,MAAM;QACN,aAAa;QACb,OAAO;QACP,KAAK;KACN,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"useImageConverter.js","sourceRoot":"","sources":["../../src/hooks/useImageConverter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAuFtD,MAAM,UAAU,iBAAiB,CAAC,MAAkB;IAClD,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAE3C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;IACxD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1D,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAChE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1D,MAAM,OAAO,GAAG,WAAW,CACzB,KAAK,EAAE,MAAc,EAAE,QAAgB,EAAE,EAAE;QACzC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC;gBACjD,QAAQ,EAAE,MAAM;gBAChB,QAAQ;gBACR,OAAO;gBACP,aAAa;gBACb,GAAG;gBACH,UAAU;aACX,CAAC,CAAC;YACH,IAAI,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACtC,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACvB,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACzD,YAAY,CAAC,GAAG,CAAC,CAAC;gBACpB,CAAC;wBAAS,CAAC;oBACT,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,QAAQ,CACL,QAA+B,CAAC,KAAK,IAAI,mBAAmB,CAC9D,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;YACnE,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC,EACD,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,UAAU,CAAC,CACnE,CAAC;IAEF,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,QAAQ,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,OAAO;QACP,aAAa;QACb,GAAG;QACH,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY,EAAE,eAAe,CAAC,SAAS,IAAI,aAAa;QACxD,UAAU;QACV,gBAAgB;QAChB,MAAM;QACN,aAAa;QACb,OAAO;QACP,KAAK;KACN,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sudobility/svgr_lib",
3
- "version": "0.0.22",
3
+ "version": "0.0.24",
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.25",
39
- "@sudobility/svgr_types": "^1.0.15",
38
+ "@sudobility/svgr_client": "^1.0.27",
39
+ "@sudobility/svgr_types": "^1.0.17",
40
40
  "@sudobility/types": "^1.9.61",
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.25",
47
- "@sudobility/svgr_types": "^1.0.15",
46
+ "@sudobility/svgr_client": "^1.0.27",
47
+ "@sudobility/svgr_types": "^1.0.17",
48
48
  "@sudobility/types": "^1.9.61",
49
49
  "@tanstack/react-query": "^5.90.5",
50
50
  "@types/node": "^24.9.1",