@fangzhongya/utils 0.0.37 → 0.0.39

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 (52) hide show
  1. package/dist/basic/array/index.cjs +7 -7
  2. package/dist/basic/array/index.js +7 -7
  3. package/dist/basic/index.cjs +10 -10
  4. package/dist/basic/index.js +9 -9
  5. package/dist/basic/string/index.cjs +10 -10
  6. package/dist/basic/string/index.js +12 -12
  7. package/dist/{chunk-6KVKFJFV.cjs → chunk-77ZAHOKN.cjs} +5 -5
  8. package/dist/{chunk-4GGVTYW6.js → chunk-BWA6OSIZ.js} +4 -4
  9. package/dist/chunk-CFR7GIIL.js +44 -0
  10. package/dist/{chunk-B4DESWHL.cjs → chunk-FA4AVVIV.cjs} +4 -4
  11. package/dist/{chunk-52V6AAWI.cjs → chunk-PGENJCCV.cjs} +18 -0
  12. package/dist/chunk-PW76Z25D.cjs +249 -0
  13. package/dist/{chunk-D72TRCRX.js → chunk-XOTRYNO4.js} +2 -2
  14. package/dist/chunk-ZLEU2YQ2.js +249 -0
  15. package/dist/css/index.cjs +12 -12
  16. package/dist/css/index.js +13 -13
  17. package/dist/html/index.cjs +1 -1
  18. package/dist/html/index.js +1 -1
  19. package/dist/index-9-f0oXM3.d.ts +22 -0
  20. package/dist/index-_GH04n6g.d.cts +22 -0
  21. package/dist/index.cjs +37 -36
  22. package/dist/index.d.cts +2 -1
  23. package/dist/index.d.ts +2 -1
  24. package/dist/index.js +37 -36
  25. package/dist/name/index.cjs +3 -3
  26. package/dist/name/index.js +4 -4
  27. package/dist/urls/getReplaceUrls.cjs +3 -3
  28. package/dist/urls/getReplaceUrls.js +2 -2
  29. package/dist/urls/index.cjs +8 -8
  30. package/dist/urls/index.js +7 -7
  31. package/dist/window/download.cjs +21 -0
  32. package/dist/window/download.d.cts +72 -0
  33. package/dist/window/download.d.ts +72 -0
  34. package/dist/window/download.js +21 -0
  35. package/dist/window/index.cjs +20 -2
  36. package/dist/window/index.d.cts +1 -0
  37. package/dist/window/index.d.ts +1 -0
  38. package/dist/window/index.js +19 -1
  39. package/package.json +6 -1
  40. package/dist/chunk-XLSPETGS.js +0 -26
  41. package/dist/index-DAi9PP0w.d.cts +0 -13
  42. package/dist/index-vCPDFXBq.d.ts +0 -13
  43. package/dist/{chunk-IVDRKJ33.js → chunk-BFN33JM5.js} +3 -3
  44. package/dist/{chunk-ZXWKQRGH.cjs → chunk-BG2YS767.cjs} +2 -2
  45. package/dist/{chunk-DQM6GFE7.cjs → chunk-DI5JC25H.cjs} +10 -10
  46. package/dist/{chunk-B6JR73IC.js → chunk-HAXXG6HP.js} +6 -6
  47. package/dist/{chunk-KDSELPFY.js → chunk-HKUOF43F.js} +10 -10
  48. package/dist/{chunk-LWMBPLWN.cjs → chunk-HPQRTXFK.cjs} +6 -6
  49. package/dist/{chunk-D4ROZ7CV.js → chunk-JQPUT54I.js} +11 -11
  50. package/dist/{chunk-HMAAC5QA.cjs → chunk-UJ6W4KCR.cjs} +3 -3
  51. package/dist/{chunk-3SJOLMSI.cjs → chunk-UZMD5VAA.cjs} +8 -8
  52. package/dist/{chunk-GHJWTV6H.js → chunk-YP4WA3PQ.js} +3 -3
@@ -1,22 +1,22 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../chunk-LWMBPLWN.cjs');
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../chunk-HPQRTXFK.cjs');
2
2
 
3
3
 
4
- var _chunkNDKOWDDXcjs = require('../../chunk-NDKOWDDX.cjs');
4
+ var _chunkSOAKYJIGcjs = require('../../chunk-SOAKYJIG.cjs');
5
5
 
6
6
 
7
- var _chunkXSQOJWXLcjs = require('../../chunk-XSQOJWXL.cjs');
7
+ var _chunkTCMJPIRMcjs = require('../../chunk-TCMJPIRM.cjs');
8
8
 
9
9
 
10
- var _chunkGD3OA7GUcjs = require('../../chunk-GD3OA7GU.cjs');
10
+ var _chunkNDKOWDDXcjs = require('../../chunk-NDKOWDDX.cjs');
11
11
 
12
12
 
13
- var _chunkMHHMXDHDcjs = require('../../chunk-MHHMXDHD.cjs');
13
+ var _chunkXSQOJWXLcjs = require('../../chunk-XSQOJWXL.cjs');
14
14
 
15
15
 
16
- var _chunkSOAKYJIGcjs = require('../../chunk-SOAKYJIG.cjs');
16
+ var _chunkGD3OA7GUcjs = require('../../chunk-GD3OA7GU.cjs');
17
17
 
18
18
 
19
- var _chunkTCMJPIRMcjs = require('../../chunk-TCMJPIRM.cjs');
19
+ var _chunkMHHMXDHDcjs = require('../../chunk-MHHMXDHD.cjs');
20
20
 
21
21
 
22
22
  var _chunkXW3XIK3Dcjs = require('../../chunk-XW3XIK3D.cjs');
@@ -1,4 +1,10 @@
1
- import "../../chunk-B6JR73IC.js";
1
+ import "../../chunk-HAXXG6HP.js";
2
+ import {
3
+ toggleArray
4
+ } from "../../chunk-APKFW4LU.js";
5
+ import {
6
+ asyncMergeArray
7
+ } from "../../chunk-Q6FMBSK4.js";
2
8
  import {
3
9
  compareArray
4
10
  } from "../../chunk-WQ2PUZ2S.js";
@@ -11,12 +17,6 @@ import {
11
17
  import {
12
18
  replaceAfter
13
19
  } from "../../chunk-K33LOE73.js";
14
- import {
15
- toggleArray
16
- } from "../../chunk-APKFW4LU.js";
17
- import {
18
- asyncMergeArray
19
- } from "../../chunk-Q6FMBSK4.js";
20
20
  import {
21
21
  sortObj
22
22
  } from "../../chunk-O34QAOO7.js";
@@ -1,15 +1,15 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-B4DESWHL.cjs');
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-FA4AVVIV.cjs');
2
2
 
3
3
 
4
- var _chunk3SJOLMSIcjs = require('../chunk-3SJOLMSI.cjs');
4
+ var _chunkUZMD5VAAcjs = require('../chunk-UZMD5VAA.cjs');
5
+ require('../chunk-L7FSHU27.cjs');
5
6
  require('../chunk-JHV27P2Q.cjs');
6
7
  require('../chunk-ETMYYVQJ.cjs');
7
8
  require('../chunk-XG44HG5N.cjs');
8
9
  require('../chunk-QXK4IUBI.cjs');
9
10
  require('../chunk-3GVTDRAE.cjs');
10
- require('../chunk-J7S3KBHL.cjs');
11
- require('../chunk-L7FSHU27.cjs');
12
11
  require('../chunk-XWCRGY54.cjs');
12
+ require('../chunk-J7S3KBHL.cjs');
13
13
 
14
14
 
15
15
  var _chunkUGT4QBTMcjs = require('../chunk-UGT4QBTM.cjs');
@@ -25,17 +25,17 @@ require('../chunk-7AIT4XSD.cjs');
25
25
  require('../chunk-GOUC2DFA.cjs');
26
26
 
27
27
 
28
- var _chunkLWMBPLWNcjs = require('../chunk-LWMBPLWN.cjs');
28
+ var _chunkHPQRTXFKcjs = require('../chunk-HPQRTXFK.cjs');
29
+ require('../chunk-SOAKYJIG.cjs');
30
+ require('../chunk-TCMJPIRM.cjs');
29
31
  require('../chunk-NDKOWDDX.cjs');
30
32
  require('../chunk-XSQOJWXL.cjs');
31
33
  require('../chunk-GD3OA7GU.cjs');
32
34
  require('../chunk-MHHMXDHD.cjs');
33
- require('../chunk-SOAKYJIG.cjs');
34
- require('../chunk-TCMJPIRM.cjs');
35
- require('../chunk-2H3KVSFA.cjs');
36
- require('../chunk-ILJLXJ5O.cjs');
37
35
  require('../chunk-OJBZ7UUC.cjs');
38
36
  require('../chunk-JR6ZN6QD.cjs');
37
+ require('../chunk-2H3KVSFA.cjs');
38
+ require('../chunk-ILJLXJ5O.cjs');
39
39
  require('../chunk-PW7RP73J.cjs');
40
40
  require('../chunk-XW3XIK3D.cjs');
41
41
  require('../chunk-UEVMS6QD.cjs');
@@ -48,4 +48,4 @@ require('../chunk-75ZPJI57.cjs');
48
48
 
49
49
 
50
50
 
51
- exports.array = _chunkLWMBPLWNcjs.array_exports; exports.object = _chunkUGT4QBTMcjs.object_exports; exports.string = _chunk3SJOLMSIcjs.string_exports;
51
+ exports.array = _chunkHPQRTXFKcjs.array_exports; exports.object = _chunkUGT4QBTMcjs.object_exports; exports.string = _chunkUZMD5VAAcjs.string_exports;
@@ -1,15 +1,15 @@
1
- import "../chunk-D72TRCRX.js";
1
+ import "../chunk-XOTRYNO4.js";
2
2
  import {
3
3
  string_exports
4
- } from "../chunk-KDSELPFY.js";
4
+ } from "../chunk-HKUOF43F.js";
5
+ import "../chunk-VKE5JARB.js";
5
6
  import "../chunk-U3PZBQ6G.js";
6
7
  import "../chunk-5HC662VK.js";
7
8
  import "../chunk-MGK5PCGH.js";
8
9
  import "../chunk-7O4MJOHM.js";
9
10
  import "../chunk-DILPRD5C.js";
10
- import "../chunk-7DTHADVK.js";
11
- import "../chunk-VKE5JARB.js";
12
11
  import "../chunk-FS4JPT23.js";
12
+ import "../chunk-7DTHADVK.js";
13
13
  import {
14
14
  object_exports
15
15
  } from "../chunk-IEQHKLEL.js";
@@ -25,17 +25,17 @@ import "../chunk-ZEAT23CI.js";
25
25
  import "../chunk-3IR2ABRO.js";
26
26
  import {
27
27
  array_exports
28
- } from "../chunk-B6JR73IC.js";
28
+ } from "../chunk-HAXXG6HP.js";
29
+ import "../chunk-APKFW4LU.js";
30
+ import "../chunk-Q6FMBSK4.js";
29
31
  import "../chunk-WQ2PUZ2S.js";
30
32
  import "../chunk-DBSRZCFK.js";
31
33
  import "../chunk-ZVBCHJA5.js";
32
34
  import "../chunk-K33LOE73.js";
33
- import "../chunk-APKFW4LU.js";
34
- import "../chunk-Q6FMBSK4.js";
35
- import "../chunk-USIMBBLW.js";
36
- import "../chunk-P7AWHISY.js";
37
35
  import "../chunk-LPMR5W6M.js";
38
36
  import "../chunk-DMZP4RPN.js";
37
+ import "../chunk-USIMBBLW.js";
38
+ import "../chunk-P7AWHISY.js";
39
39
  import "../chunk-A276ZDLP.js";
40
40
  import "../chunk-O34QAOO7.js";
41
41
  import "../chunk-4OBNLDTJ.js";
@@ -1,4 +1,7 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../chunk-3SJOLMSI.cjs');
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../chunk-UZMD5VAA.cjs');
2
+
3
+
4
+ var _chunkL7FSHU27cjs = require('../../chunk-L7FSHU27.cjs');
2
5
 
3
6
 
4
7
 
@@ -22,26 +25,23 @@ var _chunkQXK4IUBIcjs = require('../../chunk-QXK4IUBI.cjs');
22
25
  var _chunk3GVTDRAEcjs = require('../../chunk-3GVTDRAE.cjs');
23
26
 
24
27
 
25
- var _chunkJ7S3KBHLcjs = require('../../chunk-J7S3KBHL.cjs');
26
-
27
-
28
- var _chunkL7FSHU27cjs = require('../../chunk-L7FSHU27.cjs');
28
+ var _chunkXWCRGY54cjs = require('../../chunk-XWCRGY54.cjs');
29
29
 
30
30
 
31
- var _chunkXWCRGY54cjs = require('../../chunk-XWCRGY54.cjs');
31
+ var _chunkJ7S3KBHLcjs = require('../../chunk-J7S3KBHL.cjs');
32
32
  require('../../chunk-E4WBX6J5.cjs');
33
33
 
34
34
 
35
- var _chunk2H3KVSFAcjs = require('../../chunk-2H3KVSFA.cjs');
35
+ var _chunkOJBZ7UUCcjs = require('../../chunk-OJBZ7UUC.cjs');
36
36
 
37
37
 
38
- var _chunkILJLXJ5Ocjs = require('../../chunk-ILJLXJ5O.cjs');
38
+ var _chunkJR6ZN6QDcjs = require('../../chunk-JR6ZN6QD.cjs');
39
39
 
40
40
 
41
- var _chunkOJBZ7UUCcjs = require('../../chunk-OJBZ7UUC.cjs');
41
+ var _chunk2H3KVSFAcjs = require('../../chunk-2H3KVSFA.cjs');
42
42
 
43
43
 
44
- var _chunkJR6ZN6QDcjs = require('../../chunk-JR6ZN6QD.cjs');
44
+ var _chunkILJLXJ5Ocjs = require('../../chunk-ILJLXJ5O.cjs');
45
45
 
46
46
 
47
47
  var _chunkPW7RP73Jcjs = require('../../chunk-PW7RP73J.cjs');
@@ -1,4 +1,7 @@
1
- import "../../chunk-KDSELPFY.js";
1
+ import "../../chunk-HKUOF43F.js";
2
+ import {
3
+ splitUpper
4
+ } from "../../chunk-VKE5JARB.js";
2
5
  import {
3
6
  toJSONParse,
4
7
  toJSONStringify
@@ -20,28 +23,25 @@ import {
20
23
  getImports,
21
24
  getImportss
22
25
  } from "../../chunk-DILPRD5C.js";
26
+ import {
27
+ deComment
28
+ } from "../../chunk-FS4JPT23.js";
23
29
  import {
24
30
  getStartSame
25
31
  } from "../../chunk-7DTHADVK.js";
32
+ import "../../chunk-754Z5VW6.js";
26
33
  import {
27
- splitUpper
28
- } from "../../chunk-VKE5JARB.js";
34
+ appearNum
35
+ } from "../../chunk-LPMR5W6M.js";
29
36
  import {
30
- deComment
31
- } from "../../chunk-FS4JPT23.js";
32
- import "../../chunk-754Z5VW6.js";
37
+ appearNumSeat
38
+ } from "../../chunk-DMZP4RPN.js";
33
39
  import {
34
40
  getStrNunPosit
35
41
  } from "../../chunk-USIMBBLW.js";
36
42
  import {
37
43
  startsNum
38
44
  } from "../../chunk-P7AWHISY.js";
39
- import {
40
- appearNum
41
- } from "../../chunk-LPMR5W6M.js";
42
- import {
43
- appearNumSeat
44
- } from "../../chunk-DMZP4RPN.js";
45
45
  import {
46
46
  getStartSames
47
47
  } from "../../chunk-A276ZDLP.js";
@@ -1,6 +1,9 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkHMAAC5QAcjs = require('./chunk-HMAAC5QA.cjs');
3
+ var _chunk3DD7YCN2cjs = require('./chunk-3DD7YCN2.cjs');
4
+
5
+
6
+ var _chunkUJ6W4KCRcjs = require('./chunk-UJ6W4KCR.cjs');
4
7
 
5
8
 
6
9
  var _chunk6A6EAFGLcjs = require('./chunk-6A6EAFGL.cjs');
@@ -33,9 +36,6 @@ var _chunk77SI5VSScjs = require('./chunk-77SI5VSS.cjs');
33
36
  var _chunkRFUD3TOQcjs = require('./chunk-RFUD3TOQ.cjs');
34
37
 
35
38
 
36
- var _chunk3DD7YCN2cjs = require('./chunk-3DD7YCN2.cjs');
37
-
38
-
39
39
  var _chunk75ZPJI57cjs = require('./chunk-75ZPJI57.cjs');
40
40
 
41
41
  // packages/urls/index.ts
@@ -47,7 +47,7 @@ _chunk75ZPJI57cjs.__export.call(void 0, urls_exports, {
47
47
  getReplaceCompleteUrl: () => _chunkNESVPZNFcjs.getReplaceCompleteUrl,
48
48
  getReplaceImportUrl: () => _chunkRFUD3TOQcjs.getReplaceImportUrl,
49
49
  getReplaceUrl: () => _chunk3DD7YCN2cjs.getReplaceUrl,
50
- getReplaceUrls: () => _chunkHMAAC5QAcjs.getReplaceUrls,
50
+ getReplaceUrls: () => _chunkUJ6W4KCRcjs.getReplaceUrls,
51
51
  getSuffix: () => _chunk6A6EAFGLcjs.getSuffix,
52
52
  getUrlCatalogue: () => _chunkCP2ZSRMUcjs.getUrlCatalogue,
53
53
  getUrlCatalogueLast: () => _chunk3ERQHPTDcjs.getUrlCatalogueLast,
@@ -1,6 +1,9 @@
1
+ import {
2
+ getReplaceUrl
3
+ } from "./chunk-SE7A43WC.js";
1
4
  import {
2
5
  getReplaceUrls
3
- } from "./chunk-GHJWTV6H.js";
6
+ } from "./chunk-YP4WA3PQ.js";
4
7
  import {
5
8
  getSuffix
6
9
  } from "./chunk-UOADEBDH.js";
@@ -31,9 +34,6 @@ import {
31
34
  import {
32
35
  getReplaceImportUrl
33
36
  } from "./chunk-ZJHRAMCL.js";
34
- import {
35
- getReplaceUrl
36
- } from "./chunk-SE7A43WC.js";
37
37
  import {
38
38
  __export
39
39
  } from "./chunk-MLKGABMK.js";
@@ -0,0 +1,44 @@
1
+ import {
2
+ downloadCSV,
3
+ downloadFile,
4
+ downloadFromURL,
5
+ downloadImage,
6
+ downloadJSON,
7
+ downloadMultipleFiles,
8
+ downloadText,
9
+ downloadViaAJAX
10
+ } from "./chunk-ZLEU2YQ2.js";
11
+ import {
12
+ getAllParams,
13
+ getParam,
14
+ getUrlParam,
15
+ getUrlParams
16
+ } from "./chunk-MCT2IB67.js";
17
+ import {
18
+ copy
19
+ } from "./chunk-W45DTA4D.js";
20
+ import {
21
+ __export
22
+ } from "./chunk-MLKGABMK.js";
23
+
24
+ // packages/window/index.ts
25
+ var window_exports = {};
26
+ __export(window_exports, {
27
+ copy: () => copy,
28
+ downloadCSV: () => downloadCSV,
29
+ downloadFile: () => downloadFile,
30
+ downloadFromURL: () => downloadFromURL,
31
+ downloadImage: () => downloadImage,
32
+ downloadJSON: () => downloadJSON,
33
+ downloadMultipleFiles: () => downloadMultipleFiles,
34
+ downloadText: () => downloadText,
35
+ downloadViaAJAX: () => downloadViaAJAX,
36
+ getAllParams: () => getAllParams,
37
+ getParam: () => getParam,
38
+ getUrlParam: () => getUrlParam,
39
+ getUrlParams: () => getUrlParams
40
+ });
41
+
42
+ export {
43
+ window_exports
44
+ };
@@ -1,12 +1,12 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunk3SJOLMSIcjs = require('./chunk-3SJOLMSI.cjs');
3
+ var _chunkUZMD5VAAcjs = require('./chunk-UZMD5VAA.cjs');
4
4
 
5
5
 
6
6
  var _chunkUGT4QBTMcjs = require('./chunk-UGT4QBTM.cjs');
7
7
 
8
8
 
9
- var _chunkLWMBPLWNcjs = require('./chunk-LWMBPLWN.cjs');
9
+ var _chunkHPQRTXFKcjs = require('./chunk-HPQRTXFK.cjs');
10
10
 
11
11
 
12
12
  var _chunk75ZPJI57cjs = require('./chunk-75ZPJI57.cjs');
@@ -14,9 +14,9 @@ var _chunk75ZPJI57cjs = require('./chunk-75ZPJI57.cjs');
14
14
  // packages/basic/index.ts
15
15
  var basic_exports = {};
16
16
  _chunk75ZPJI57cjs.__export.call(void 0, basic_exports, {
17
- array: () => _chunkLWMBPLWNcjs.array_exports,
17
+ array: () => _chunkHPQRTXFKcjs.array_exports,
18
18
  object: () => _chunkUGT4QBTMcjs.object_exports,
19
- string: () => _chunk3SJOLMSIcjs.string_exports
19
+ string: () => _chunkUZMD5VAAcjs.string_exports
20
20
  });
21
21
 
22
22
 
@@ -3,6 +3,16 @@
3
3
 
4
4
 
5
5
 
6
+
7
+
8
+
9
+
10
+ var _chunkPW76Z25Dcjs = require('./chunk-PW76Z25D.cjs');
11
+
12
+
13
+
14
+
15
+
6
16
  var _chunkZRO5GHYVcjs = require('./chunk-ZRO5GHYV.cjs');
7
17
 
8
18
 
@@ -15,6 +25,14 @@ var _chunk75ZPJI57cjs = require('./chunk-75ZPJI57.cjs');
15
25
  var window_exports = {};
16
26
  _chunk75ZPJI57cjs.__export.call(void 0, window_exports, {
17
27
  copy: () => _chunkVYOTXPMMcjs.copy,
28
+ downloadCSV: () => _chunkPW76Z25Dcjs.downloadCSV,
29
+ downloadFile: () => _chunkPW76Z25Dcjs.downloadFile,
30
+ downloadFromURL: () => _chunkPW76Z25Dcjs.downloadFromURL,
31
+ downloadImage: () => _chunkPW76Z25Dcjs.downloadImage,
32
+ downloadJSON: () => _chunkPW76Z25Dcjs.downloadJSON,
33
+ downloadMultipleFiles: () => _chunkPW76Z25Dcjs.downloadMultipleFiles,
34
+ downloadText: () => _chunkPW76Z25Dcjs.downloadText,
35
+ downloadViaAJAX: () => _chunkPW76Z25Dcjs.downloadViaAJAX,
18
36
  getAllParams: () => _chunkZRO5GHYVcjs.getAllParams,
19
37
  getParam: () => _chunkZRO5GHYVcjs.getParam,
20
38
  getUrlParam: () => _chunkZRO5GHYVcjs.getUrlParam,
@@ -0,0 +1,249 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// packages/window/download.ts
2
+ function downloadText(text, filename = "text.txt", mimeType = "text/plain") {
3
+ downloadFile(text, { filename, mimeType });
4
+ }
5
+ function downloadJSON(jsonData, filename = "data.json") {
6
+ downloadFile(jsonData, {
7
+ filename,
8
+ mimeType: "application/json"
9
+ });
10
+ }
11
+ function downloadCSV(data, filename = "data.csv", headers) {
12
+ let csvContent = "";
13
+ if (Array.isArray(data) && data.length > 0) {
14
+ if (Array.isArray(data[0])) {
15
+ const rows = data;
16
+ csvContent = rows.map(
17
+ (row) => row.map((cell) => `"${String(cell).replace(/"/g, '""')}"`).join(",")
18
+ ).join("\n");
19
+ } else if (typeof data[0] === "object") {
20
+ const objects = data;
21
+ const objectHeaders = headers || Object.keys(objects[0]);
22
+ csvContent = objectHeaders.map((header) => `"${String(header).replace(/"/g, '""')}"`).join(",") + "\n";
23
+ csvContent += objects.map(
24
+ (obj) => objectHeaders.map(
25
+ (header) => `"${String(obj[header] || "").replace(
26
+ /"/g,
27
+ '""'
28
+ )}"`
29
+ ).join(",")
30
+ ).join("\n");
31
+ }
32
+ }
33
+ downloadFile(csvContent, {
34
+ filename,
35
+ mimeType: "text/csv"
36
+ });
37
+ }
38
+ async function downloadViaAJAX(url, filename, options = {}) {
39
+ try {
40
+ const response = await fetch(url, {
41
+ method: "GET",
42
+ ...options
43
+ });
44
+ if (!response.ok) {
45
+ throw new Error(`HTTP error! status: ${response.status}`);
46
+ }
47
+ const blob = await response.blob();
48
+ let finalFilename = filename;
49
+ if (!finalFilename) {
50
+ const contentDisposition = response.headers.get(
51
+ "content-disposition"
52
+ );
53
+ if (contentDisposition) {
54
+ const filenameMatch = contentDisposition.match(/filename="?(.+?)"?$/);
55
+ if (filenameMatch) {
56
+ finalFilename = filenameMatch[1];
57
+ }
58
+ }
59
+ }
60
+ downloadFile(blob, { filename: finalFilename });
61
+ } catch (error) {
62
+ console.error("AJAX \u4E0B\u8F7D\u5931\u8D25:", error);
63
+ throw new Error(
64
+ `\u4E0B\u8F7D\u5931\u8D25: ${error instanceof Error ? error.message : "\u672A\u77E5\u9519\u8BEF"}`
65
+ );
66
+ }
67
+ }
68
+ function downloadFile(data, options = {}) {
69
+ const {
70
+ filename = "download",
71
+ mimeType = "application/octet-stream",
72
+ charset = "utf-8",
73
+ bom = ""
74
+ } = options;
75
+ try {
76
+ let blobData;
77
+ if (data instanceof Blob) {
78
+ blobData = data;
79
+ } else if (typeof data === "object") {
80
+ const jsonString = JSON.stringify(data, null, 2);
81
+ blobData = bom + jsonString;
82
+ } else if (typeof data === "string") {
83
+ blobData = bom + data;
84
+ } else {
85
+ blobData = data;
86
+ }
87
+ const blob = new Blob([blobData], {
88
+ type: `${mimeType};charset=${charset}`
89
+ });
90
+ const blobUrl = URL.createObjectURL(blob);
91
+ const link = document.createElement("a");
92
+ link.href = blobUrl;
93
+ link.download = filename;
94
+ link.style.display = "none";
95
+ document.body.appendChild(link);
96
+ link.click();
97
+ setTimeout(() => {
98
+ document.body.removeChild(link);
99
+ URL.revokeObjectURL(blobUrl);
100
+ }, 100);
101
+ } catch (error) {
102
+ console.error("\u6587\u4EF6\u4E0B\u8F7D\u5931\u8D25:", error);
103
+ throw new Error(
104
+ `\u4E0B\u8F7D\u5931\u8D25: ${error instanceof Error ? error.message : "\u672A\u77E5\u9519\u8BEF"}`
105
+ );
106
+ }
107
+ }
108
+ async function downloadFromURL(url, filename, options = {}) {
109
+ const {
110
+ useBlob = true,
111
+ // 默认使用 Blob 方式,确保能触发下载
112
+ headers = {},
113
+ timeout = 3e4
114
+ } = options;
115
+ try {
116
+ if (!useBlob) {
117
+ const link = document.createElement("a");
118
+ link.href = url;
119
+ link.download = filename || getFilenameFromURL(url);
120
+ link.style.display = "none";
121
+ link.target = "_blank";
122
+ document.body.appendChild(link);
123
+ link.click();
124
+ setTimeout(() => {
125
+ document.body.removeChild(link);
126
+ }, 100);
127
+ return;
128
+ }
129
+ const controller = new AbortController();
130
+ const timeoutId = setTimeout(() => controller.abort(), timeout);
131
+ const response = await fetch(url, {
132
+ method: "GET",
133
+ headers,
134
+ signal: controller.signal
135
+ });
136
+ clearTimeout(timeoutId);
137
+ if (!response.ok) {
138
+ throw new Error(`HTTP error! status: ${response.status}`);
139
+ }
140
+ const blob = await response.blob();
141
+ let finalFilename = filename;
142
+ if (!finalFilename) {
143
+ const contentDisposition = response.headers.get(
144
+ "content-disposition"
145
+ );
146
+ if (contentDisposition) {
147
+ const filenameMatch = contentDisposition.match(
148
+ /filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/
149
+ );
150
+ if (filenameMatch && filenameMatch[1]) {
151
+ finalFilename = filenameMatch[1].replace(/['"]/g, "");
152
+ }
153
+ }
154
+ if (!finalFilename) {
155
+ finalFilename = getFilenameFromURL(url);
156
+ }
157
+ }
158
+ const mimeType = getMimeTypeFromBlob(blob, url);
159
+ downloadFile(blob, {
160
+ filename: finalFilename,
161
+ mimeType
162
+ });
163
+ } catch (error) {
164
+ console.error("URL \u4E0B\u8F7D\u5931\u8D25:", error);
165
+ if (error instanceof Error && error.name === "AbortError") {
166
+ throw new Error("\u4E0B\u8F7D\u8D85\u65F6\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u8FDE\u63A5\u6216\u6587\u4EF6\u5927\u5C0F");
167
+ }
168
+ if (useBlob) {
169
+ console.log("Blob \u65B9\u5F0F\u5931\u8D25\uFF0C\u5C1D\u8BD5\u76F4\u63A5\u4E0B\u8F7D...");
170
+ await downloadFromURL(url, filename, {
171
+ ...options,
172
+ useBlob: false
173
+ });
174
+ } else {
175
+ throw new Error(
176
+ `\u4E0B\u8F7D\u5931\u8D25: ${error instanceof Error ? error.message : "\u672A\u77E5\u9519\u8BEF"}`
177
+ );
178
+ }
179
+ }
180
+ }
181
+ async function downloadImage(imageUrl, filename) {
182
+ await downloadFromURL(imageUrl, filename, {
183
+ useBlob: true,
184
+ headers: {
185
+ Accept: "image/*"
186
+ }
187
+ });
188
+ }
189
+ function getFilenameFromURL(url) {
190
+ try {
191
+ const urlObj = new URL(url);
192
+ const pathname = urlObj.pathname;
193
+ const filename = pathname.substring(pathname.lastIndexOf("/") + 1);
194
+ if (!filename || filename === "/" || !filename.includes(".")) {
195
+ const extension = getFileExtensionFromURL(url) || "bin";
196
+ return `download_${Date.now()}.${extension}`;
197
+ }
198
+ return decodeURIComponent(filename);
199
+ } catch (e) {
200
+ const extension = getFileExtensionFromURL(url) || "bin";
201
+ return `download_${Date.now()}.${extension}`;
202
+ }
203
+ }
204
+ function getFileExtensionFromURL(url) {
205
+ const match = url.match(/\.([a-zA-Z0-9]+)(?:[?#]|$)/);
206
+ return match ? match[1].toLowerCase() : null;
207
+ }
208
+ function getMimeTypeFromBlob(blob, url) {
209
+ if (blob.type && blob.type !== "application/octet-stream") {
210
+ return blob.type;
211
+ }
212
+ const extension = getFileExtensionFromURL(url);
213
+ const mimeTypes = {
214
+ jpg: "image/jpeg",
215
+ jpeg: "image/jpeg",
216
+ png: "image/png",
217
+ gif: "image/gif",
218
+ webp: "image/webp",
219
+ svg: "image/svg+xml",
220
+ pdf: "application/pdf",
221
+ txt: "text/plain",
222
+ json: "application/json",
223
+ csv: "text/csv",
224
+ xml: "application/xml",
225
+ zip: "application/zip",
226
+ mp3: "audio/mpeg",
227
+ mp4: "video/mp4",
228
+ avi: "video/x-msvideo"
229
+ };
230
+ return extension && mimeTypes[extension] ? mimeTypes[extension] : "application/octet-stream";
231
+ }
232
+ async function downloadMultipleFiles(downloads) {
233
+ return Promise.all(
234
+ downloads.map(
235
+ (download) => downloadFromURL(download.url, download.filename)
236
+ )
237
+ );
238
+ }
239
+
240
+
241
+
242
+
243
+
244
+
245
+
246
+
247
+
248
+
249
+ exports.downloadText = downloadText; exports.downloadJSON = downloadJSON; exports.downloadCSV = downloadCSV; exports.downloadViaAJAX = downloadViaAJAX; exports.downloadFile = downloadFile; exports.downloadFromURL = downloadFromURL; exports.downloadImage = downloadImage; exports.downloadMultipleFiles = downloadMultipleFiles;
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  string_exports
3
- } from "./chunk-KDSELPFY.js";
3
+ } from "./chunk-HKUOF43F.js";
4
4
  import {
5
5
  object_exports
6
6
  } from "./chunk-IEQHKLEL.js";
7
7
  import {
8
8
  array_exports
9
- } from "./chunk-B6JR73IC.js";
9
+ } from "./chunk-HAXXG6HP.js";
10
10
  import {
11
11
  __export
12
12
  } from "./chunk-MLKGABMK.js";