@next-libs/cmdb-instances 7.28.2 → 7.28.3
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/dist/cjs/instance-detail/components/instances-attachment-display/instances-attachment-display.js +33 -4
- package/dist/cjs/instance-detail/components/instances-attachment-display/instances-attachment-display.js.map +1 -1
- package/dist/esm/instance-detail/components/instances-attachment-display/instances-attachment-display.js +32 -4
- package/dist/esm/instance-detail/components/instances-attachment-display/instances-attachment-display.js.map +1 -1
- package/dist/types/instance-detail/components/instances-attachment-display/instances-attachment-display.spec.d.ts +1 -0
- package/package.json +2 -2
|
@@ -11,15 +11,37 @@ var _jsBase = require("js-base64");
|
|
|
11
11
|
var _cmdbUtils = require("@next-libs/cmdb-utils");
|
|
12
12
|
var _constants = require("../../../constants");
|
|
13
13
|
var _instancesAttachmentDisplayModule = _interopRequireDefault(require("./instances-attachment-display.module.css"));
|
|
14
|
+
function getParams(url) {
|
|
15
|
+
const regex = /[?&]([^=&#]+)(?:=([^&#]*))?/g;
|
|
16
|
+
const params = {};
|
|
17
|
+
let match;
|
|
18
|
+
while ((match = regex.exec(url)) !== null) {
|
|
19
|
+
const key = decodeURIComponent(match[1]);
|
|
20
|
+
const value = match[2] ? decodeURIComponent(match[2]) : "";
|
|
21
|
+
params[key] = value;
|
|
22
|
+
}
|
|
23
|
+
return params;
|
|
24
|
+
}
|
|
25
|
+
function setUrlSearchParams(paramsObject) {
|
|
26
|
+
const params = new URLSearchParams();
|
|
27
|
+
for (const [key, value] of Object.entries(paramsObject)) {
|
|
28
|
+
params.set(key, value);
|
|
29
|
+
}
|
|
30
|
+
return params.toString();
|
|
31
|
+
}
|
|
14
32
|
function InstancesAttachmentDisplay(props) {
|
|
15
33
|
const {
|
|
16
34
|
value
|
|
17
35
|
} = props;
|
|
18
36
|
// 下载
|
|
19
37
|
const handleDownload = file => {
|
|
38
|
+
var _file$url, _file$url$split;
|
|
20
39
|
const domain = `${window.location.origin}/next`;
|
|
21
40
|
const link = document.createElement("a");
|
|
22
|
-
link.href = `${domain}/${file.url
|
|
41
|
+
link.href = `${domain}/${(_file$url = file.url) === null || _file$url === void 0 ? void 0 : (_file$url$split = _file$url.split("?")) === null || _file$url$split === void 0 ? void 0 : _file$url$split[0]}?${setUrlSearchParams({
|
|
42
|
+
fileName: file.name,
|
|
43
|
+
...getParams(file.url)
|
|
44
|
+
})}`;
|
|
23
45
|
link.download = file.name;
|
|
24
46
|
document.body.appendChild(link);
|
|
25
47
|
link.click();
|
|
@@ -27,10 +49,17 @@ function InstancesAttachmentDisplay(props) {
|
|
|
27
49
|
};
|
|
28
50
|
// 预览
|
|
29
51
|
const handlePreview = file => {
|
|
30
|
-
var _file$
|
|
52
|
+
var _file$url2, _file$url3, _file$url3$split;
|
|
31
53
|
const domain = `${window.location.origin}/next`;
|
|
32
|
-
const
|
|
33
|
-
const
|
|
54
|
+
const params = getParams(file.url);
|
|
55
|
+
const checksum = params.checksum || ((_file$url2 = file.url) === null || _file$url2 === void 0 ? void 0 : _file$url2.slice(_constants.DownloadFileUrl.length + 1, file.url.length));
|
|
56
|
+
const queryString = setUrlSearchParams({
|
|
57
|
+
checksum,
|
|
58
|
+
fileName: file.name,
|
|
59
|
+
fullfilename: file.name,
|
|
60
|
+
...params
|
|
61
|
+
});
|
|
62
|
+
const url = `${domain}/${(_file$url3 = file.url) === null || _file$url3 === void 0 ? void 0 : (_file$url3$split = _file$url3.split("?")) === null || _file$url3$split === void 0 ? void 0 : _file$url3$split[0]}?${queryString}`;
|
|
34
63
|
const previewUrl = `${domain}/api/gateway/file_previewer.preview.PreviewFile/onlinePreview?url=${encodeURIComponent(_jsBase.Base64.encode(url)
|
|
35
64
|
// window.btoa(url)
|
|
36
65
|
)}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instances-attachment-display.js","names":["_react","_interopRequireDefault","require","_icons","_jsBase","_cmdbUtils","_constants","_instancesAttachmentDisplayModule","
|
|
1
|
+
{"version":3,"file":"instances-attachment-display.js","names":["_react","_interopRequireDefault","require","_icons","_jsBase","_cmdbUtils","_constants","_instancesAttachmentDisplayModule","getParams","url","regex","params","match","exec","key","decodeURIComponent","value","setUrlSearchParams","paramsObject","URLSearchParams","Object","entries","set","toString","InstancesAttachmentDisplay","props","handleDownload","file","_file$url","_file$url$split","domain","window","location","origin","link","document","createElement","href","split","fileName","name","download","body","appendChild","click","removeChild","handlePreview","_file$url2","_file$url3","_file$url3$split","checksum","slice","DownloadFileUrl","length","queryString","fullfilename","previewUrl","encodeURIComponent","Base64","encode","open","default","Fragment","map","isPreview","FileUtils","sizeCompare","supportFileType","id","className","styles","attachmentItem","FileTextOutlined","style","marginRight","attachmentText","attachmentSpan","EyeOutlined","attachmentIconItem","onClick","DownloadOutlined"],"sources":["../../../../../src/instance-detail/components/instances-attachment-display/instances-attachment-display.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n EyeOutlined,\n DownloadOutlined,\n FileTextOutlined,\n} from \"@ant-design/icons\";\nimport { Base64 } from \"js-base64\";\nimport { FileUtils } from \"@next-libs/cmdb-utils\";\nimport { DownloadFileUrl } from \"../../../constants\";\nimport styles from \"./instances-attachment-display.module.css\";\n\ninterface InstancesAttachmentDisplayProps {\n value?: Record<string, any>[];\n}\n\nfunction getParams(url: string): Record<string, any> {\n const regex = /[?&]([^=&#]+)(?:=([^&#]*))?/g;\n const params: Record<string, any> = {};\n let match;\n\n while ((match = regex.exec(url)) !== null) {\n const key = decodeURIComponent(match[1]);\n const value = match[2] ? decodeURIComponent(match[2]) : \"\";\n params[key] = value;\n }\n return params;\n}\n\nfunction setUrlSearchParams(paramsObject: Record<string, any>): string {\n const params = new URLSearchParams();\n for (const [key, value] of Object.entries(paramsObject)) {\n params.set(key, value);\n }\n return params.toString();\n}\n\nexport function InstancesAttachmentDisplay(\n props: InstancesAttachmentDisplayProps\n): React.ReactElement {\n const { value } = props;\n // 下载\n const handleDownload = (file: any): void => {\n const domain = `${window.location.origin}/next`;\n const link = document.createElement(\"a\");\n link.href = `${domain}/${file.url?.split(\"?\")?.[0]}?${setUrlSearchParams({\n fileName: file.name,\n ...getParams(file.url),\n })}`;\n link.download = file.name;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n };\n // 预览\n const handlePreview = (file: any): void => {\n const domain = `${window.location.origin}/next`;\n const params: Record<string, any> = getParams(file.url);\n const checksum =\n params.checksum ||\n file.url?.slice(DownloadFileUrl.length + 1, file.url.length);\n const queryString = setUrlSearchParams({\n checksum,\n fileName: file.name,\n fullfilename: file.name,\n ...params,\n });\n const url = `${domain}/${file.url?.split(\"?\")?.[0]}?${queryString}`;\n const previewUrl = `${domain}/api/gateway/file_previewer.preview.PreviewFile/onlinePreview?url=${encodeURIComponent(\n Base64.encode(url)\n // window.btoa(url)\n )}`;\n window.open(previewUrl, \"_blank\");\n };\n return (\n <>\n {value?.map((file: any) => {\n // 是否支持预览\n const isPreview =\n !FileUtils.sizeCompare(file, 100) && FileUtils.supportFileType(file);\n return (\n <div key={file.id} className={styles.attachmentItem}>\n <span>\n <FileTextOutlined style={{ marginRight: \"6px\" }} />\n <span className={styles.attachmentText}>{file.name}</span>\n </span>\n <span className={styles.attachmentSpan}>\n {isPreview && (\n <EyeOutlined\n className={styles.attachmentIconItem}\n onClick={() => handlePreview(file)}\n />\n )}\n <DownloadOutlined\n className={styles.attachmentIconItem}\n onClick={() => handleDownload(file)}\n />\n </span>\n </div>\n );\n })}\n </>\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,18 +1,40 @@
|
|
|
1
|
+
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
|
1
2
|
import React from "react";
|
|
2
3
|
import { EyeOutlined, DownloadOutlined, FileTextOutlined } from "@ant-design/icons";
|
|
3
4
|
import { Base64 } from "js-base64";
|
|
4
5
|
import { FileUtils } from "@next-libs/cmdb-utils";
|
|
5
6
|
import { DownloadFileUrl } from "../../../constants";
|
|
6
7
|
import styles from "./instances-attachment-display.module.css";
|
|
8
|
+
function getParams(url) {
|
|
9
|
+
var regex = /[?&]([^=&#]+)(?:=([^&#]*))?/g;
|
|
10
|
+
var params = {};
|
|
11
|
+
var match;
|
|
12
|
+
while ((match = regex.exec(url)) !== null) {
|
|
13
|
+
var key = decodeURIComponent(match[1]);
|
|
14
|
+
var value = match[2] ? decodeURIComponent(match[2]) : "";
|
|
15
|
+
params[key] = value;
|
|
16
|
+
}
|
|
17
|
+
return params;
|
|
18
|
+
}
|
|
19
|
+
function setUrlSearchParams(paramsObject) {
|
|
20
|
+
var params = new URLSearchParams();
|
|
21
|
+
for (var [key, value] of Object.entries(paramsObject)) {
|
|
22
|
+
params.set(key, value);
|
|
23
|
+
}
|
|
24
|
+
return params.toString();
|
|
25
|
+
}
|
|
7
26
|
export function InstancesAttachmentDisplay(props) {
|
|
8
27
|
var {
|
|
9
28
|
value
|
|
10
29
|
} = props;
|
|
11
30
|
// 下载
|
|
12
31
|
var handleDownload = file => {
|
|
32
|
+
var _file$url, _file$url$split;
|
|
13
33
|
var domain = "".concat(window.location.origin, "/next");
|
|
14
34
|
var link = document.createElement("a");
|
|
15
|
-
link.href = "".concat(domain, "/").concat(file.url, "?
|
|
35
|
+
link.href = "".concat(domain, "/").concat((_file$url = file.url) === null || _file$url === void 0 ? void 0 : (_file$url$split = _file$url.split("?")) === null || _file$url$split === void 0 ? void 0 : _file$url$split[0], "?").concat(setUrlSearchParams(_objectSpread({
|
|
36
|
+
fileName: file.name
|
|
37
|
+
}, getParams(file.url))));
|
|
16
38
|
link.download = file.name;
|
|
17
39
|
document.body.appendChild(link);
|
|
18
40
|
link.click();
|
|
@@ -20,10 +42,16 @@ export function InstancesAttachmentDisplay(props) {
|
|
|
20
42
|
};
|
|
21
43
|
// 预览
|
|
22
44
|
var handlePreview = file => {
|
|
23
|
-
var _file$
|
|
45
|
+
var _file$url2, _file$url3, _file$url3$split;
|
|
24
46
|
var domain = "".concat(window.location.origin, "/next");
|
|
25
|
-
var
|
|
26
|
-
var
|
|
47
|
+
var params = getParams(file.url);
|
|
48
|
+
var checksum = params.checksum || ((_file$url2 = file.url) === null || _file$url2 === void 0 ? void 0 : _file$url2.slice(DownloadFileUrl.length + 1, file.url.length));
|
|
49
|
+
var queryString = setUrlSearchParams(_objectSpread({
|
|
50
|
+
checksum,
|
|
51
|
+
fileName: file.name,
|
|
52
|
+
fullfilename: file.name
|
|
53
|
+
}, params));
|
|
54
|
+
var url = "".concat(domain, "/").concat((_file$url3 = file.url) === null || _file$url3 === void 0 ? void 0 : (_file$url3$split = _file$url3.split("?")) === null || _file$url3$split === void 0 ? void 0 : _file$url3$split[0], "?").concat(queryString);
|
|
27
55
|
var previewUrl = "".concat(domain, "/api/gateway/file_previewer.preview.PreviewFile/onlinePreview?url=").concat(encodeURIComponent(Base64.encode(url)
|
|
28
56
|
// window.btoa(url)
|
|
29
57
|
));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instances-attachment-display.js","names":["React","EyeOutlined","DownloadOutlined","FileTextOutlined","Base64","FileUtils","DownloadFileUrl","styles","
|
|
1
|
+
{"version":3,"file":"instances-attachment-display.js","names":["React","EyeOutlined","DownloadOutlined","FileTextOutlined","Base64","FileUtils","DownloadFileUrl","styles","getParams","url","regex","params","match","exec","key","decodeURIComponent","value","setUrlSearchParams","paramsObject","URLSearchParams","Object","entries","set","toString","InstancesAttachmentDisplay","props","handleDownload","file","_file$url","_file$url$split","domain","concat","window","location","origin","link","document","createElement","href","split","_objectSpread","fileName","name","download","body","appendChild","click","removeChild","handlePreview","_file$url2","_file$url3","_file$url3$split","checksum","slice","length","queryString","fullfilename","previewUrl","encodeURIComponent","encode","open","Fragment","map","isPreview","sizeCompare","supportFileType","id","className","attachmentItem","style","marginRight","attachmentText","attachmentSpan","attachmentIconItem","onClick"],"sources":["../../../../../src/instance-detail/components/instances-attachment-display/instances-attachment-display.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n EyeOutlined,\n DownloadOutlined,\n FileTextOutlined,\n} from \"@ant-design/icons\";\nimport { Base64 } from \"js-base64\";\nimport { FileUtils } from \"@next-libs/cmdb-utils\";\nimport { DownloadFileUrl } from \"../../../constants\";\nimport styles from \"./instances-attachment-display.module.css\";\n\ninterface InstancesAttachmentDisplayProps {\n value?: Record<string, any>[];\n}\n\nfunction getParams(url: string): Record<string, any> {\n const regex = /[?&]([^=&#]+)(?:=([^&#]*))?/g;\n const params: Record<string, any> = {};\n let match;\n\n while ((match = regex.exec(url)) !== null) {\n const key = decodeURIComponent(match[1]);\n const value = match[2] ? decodeURIComponent(match[2]) : \"\";\n params[key] = value;\n }\n return params;\n}\n\nfunction setUrlSearchParams(paramsObject: Record<string, any>): string {\n const params = new URLSearchParams();\n for (const [key, value] of Object.entries(paramsObject)) {\n params.set(key, value);\n }\n return params.toString();\n}\n\nexport function InstancesAttachmentDisplay(\n props: InstancesAttachmentDisplayProps\n): React.ReactElement {\n const { value } = props;\n // 下载\n const handleDownload = (file: any): void => {\n const domain = `${window.location.origin}/next`;\n const link = document.createElement(\"a\");\n link.href = `${domain}/${file.url?.split(\"?\")?.[0]}?${setUrlSearchParams({\n fileName: file.name,\n ...getParams(file.url),\n })}`;\n link.download = file.name;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n };\n // 预览\n const handlePreview = (file: any): void => {\n const domain = `${window.location.origin}/next`;\n const params: Record<string, any> = getParams(file.url);\n const checksum =\n params.checksum ||\n file.url?.slice(DownloadFileUrl.length + 1, file.url.length);\n const queryString = setUrlSearchParams({\n checksum,\n fileName: file.name,\n fullfilename: file.name,\n ...params,\n });\n const url = `${domain}/${file.url?.split(\"?\")?.[0]}?${queryString}`;\n const previewUrl = `${domain}/api/gateway/file_previewer.preview.PreviewFile/onlinePreview?url=${encodeURIComponent(\n Base64.encode(url)\n // window.btoa(url)\n )}`;\n window.open(previewUrl, \"_blank\");\n };\n return (\n <>\n {value?.map((file: any) => {\n // 是否支持预览\n const isPreview =\n !FileUtils.sizeCompare(file, 100) && FileUtils.supportFileType(file);\n return (\n <div key={file.id} className={styles.attachmentItem}>\n <span>\n <FileTextOutlined style={{ marginRight: \"6px\" }} />\n <span className={styles.attachmentText}>{file.name}</span>\n </span>\n <span className={styles.attachmentSpan}>\n {isPreview && (\n <EyeOutlined\n className={styles.attachmentIconItem}\n onClick={() => handlePreview(file)}\n />\n )}\n <DownloadOutlined\n className={styles.attachmentIconItem}\n onClick={() => handleDownload(file)}\n />\n </span>\n </div>\n );\n })}\n </>\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@next-libs/cmdb-instances",
|
|
3
|
-
"version": "7.28.
|
|
3
|
+
"version": "7.28.3",
|
|
4
4
|
"description": "> TODO: description",
|
|
5
5
|
"homepage": "https://github.com/easyops-cn/next-libs/tree/master/libs/cmdb-instances",
|
|
6
6
|
"license": "GPL-3.0",
|
|
@@ -52,5 +52,5 @@
|
|
|
52
52
|
"js-base64": "^3.7.7",
|
|
53
53
|
"marked": "^2.1.3"
|
|
54
54
|
},
|
|
55
|
-
"gitHead": "
|
|
55
|
+
"gitHead": "426fe4d61899bc6a857c20a9b7cf8481ff6800e6"
|
|
56
56
|
}
|