From 1788c96aea9247cc36ef8b82734997f1a6a92fb4 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期五, 23 八月 2024 11:07:42 +0800
Subject: [PATCH] 新增新版本。静安区特供版
---
src/composables/fetchData.js | 1
src/utils/chart/chart-option.js | 13
src/constant/radio-options/options-jingan.js | 31
src/utils/map/dialog.js | 26
src/model/Factor.js | 1
src/api/missionApi.js | 18
src/components/search/SearchBar.vue | 27
src/components/search/OptionTime.vue | 47
src/components/map/MapScene.vue | 1
src/components/map/MapToolbox.vue | 36
src/components/monitor/DataTable.vue | 13
src/lib/jquery.xml2json.js | 200 ++
src/constant/scene-types/options-jingan.js | 93
src/constant/device-type.js | 54
src/components/search/OptionType copy.vue | 54
src/views/realtimemode/component/DeviceChange.vue | 24
public/favicon.ico | 0
src/components/search/OptionType.vue | 19
src/utils/factor/data.js | 246 ++
src/views/LoginPage.vue | 185 +
src/views/historymode/HistoryMode.vue | 75
src/components/monitor/FactorTrend.vue | 48
src/components/mission/MIssionCreate.vue | 44
src/components/mission/MissionManage.vue | 25
src/components/animation/HistoricalTrajectory.vue | 36
src/views/historymode/component/DataSheet.vue | 14
src/router/index.js | 2
.env.development | 2
src/constant/scene-types/options.js | 86
src/model/Legend.js | 9
src/components/monitor/FactorRadio.vue | 1
src/views/historymode/HistoryMode copy.vue | 237 ++
src/test.xml | 13
src/components/search/OptionLocation.vue | 23
.env.production | 2
src/model/FrameAnimation.js | 15
.env.production.jingan | 2
src/assets/common-style.css | 11
package-lock.json | 2058 +++++++++++++++++++
src/components/monitor/WeatherData.vue | 2
src/components/monitor/FactorCheckbox.vue | 19
src/components.d.ts | 3
src/views/realtimemode/RealtimeMode.vue | 92
src/styles/elementUI.scss | 7
src/lib/jquery.soap.js | 792 ++++++++
.env.development.jingan | 2
src/components/search/OptionDevice copy.vue | 72
src/api/index.js | 35
src/constant/factor-name.js | 1
src/constant/factor-unit.js | 4
src/views/realtimemode/component/RealTimeTrend.vue | 3
src/constant/checkbox-options/options-jingan.js | 51
src/views/historymode/component/TrendAnalysis.vue | 21
src/constant/scene-types.js | 89
src/components/SliderBar.vue | 12
src/model/FactorDatas.js | 7
src/components/monitor/DataSummary.vue | 4
src/views/realtimemode/component/DashBoard.vue | 9
package.json | 9
src/utils/map/sector.js | 19
src/views/realtimemode/RealtimeMode copy.vue | 186 +
src/components/search/OptionDevice.vue | 32
src/components/search/OptionMission.vue | 21
src/constant/checkbox-options.js | 218 -
src/utils/number.js | 4
src/constant/checkbox-options/options.js | 173 +
src/constant/radio-options.js | 158
src/constant/radio-options/options.js | 74
68 files changed, 5,176 insertions(+), 735 deletions(-)
diff --git a/.env.development b/.env.development
new file mode 100644
index 0000000..ebe9a97
--- /dev/null
+++ b/.env.development
@@ -0,0 +1,2 @@
+# 寮�鍙戞ā寮�
+VITE_DATA_MODE='origin'
\ No newline at end of file
diff --git a/.env.development.jingan b/.env.development.jingan
new file mode 100644
index 0000000..18f406d
--- /dev/null
+++ b/.env.development.jingan
@@ -0,0 +1,2 @@
+# 寮�鍙戞ā寮忥紙閽堝闈欏畨鍖虹増鏈級
+VITE_DATA_MODE='jingan'
\ No newline at end of file
diff --git a/.env.production b/.env.production
new file mode 100644
index 0000000..4213a54
--- /dev/null
+++ b/.env.production
@@ -0,0 +1,2 @@
+# 鐢熶骇妯″紡
+VITE_DATA_MODE='origin'
\ No newline at end of file
diff --git a/.env.production.jingan b/.env.production.jingan
new file mode 100644
index 0000000..7bbc51d
--- /dev/null
+++ b/.env.production.jingan
@@ -0,0 +1,2 @@
+# 鐢熶骇妯″紡锛堥拡瀵归潤瀹夊尯鐗堟湰锛�
+VITE_DATA_MODE='jingan'
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index d551b73..61ffb58 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -20,11 +20,16 @@
"echarts": "^5.5.0",
"element-plus": "^2.6.2",
"jquery": "^3.7.1",
+ "jquery-xml2json": "^0.0.8",
+ "jquery.soap": "^1.7.3",
+ "js-base64": "^3.7.7",
"moment": "^2.30.1",
"pinia": "^2.1.7",
+ "strong-soap": "^4.1.3",
"unplugin-vue-components": "^0.26.0",
"vue": "^3.4.21",
- "vue-router": "^4.3.0"
+ "vue-router": "^4.3.0",
+ "xml2json": "^0.12.0"
},
"devDependencies": {
"@rushstack/eslint-patch": "^1.3.3",
@@ -76,6 +81,55 @@
"integrity": "sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==",
"engines": {
"node": ">=10"
+ }
+ },
+ "node_modules/@cypress/request": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmmirror.com/@cypress/request/-/request-3.0.1.tgz",
+ "integrity": "sha512-TWivJlJi8ZDx2wGOw1dbLuHJKUYX7bWySw377nlnGOW3hP9/MUKIsEdXT/YngWxVdgNCHRBmFlBipE+5/2ZZlQ==",
+ "dependencies": {
+ "aws-sign2": "~0.7.0",
+ "aws4": "^1.8.0",
+ "caseless": "~0.12.0",
+ "combined-stream": "~1.0.6",
+ "extend": "~3.0.2",
+ "forever-agent": "~0.6.1",
+ "form-data": "~2.3.2",
+ "http-signature": "~1.3.6",
+ "is-typedarray": "~1.0.0",
+ "isstream": "~0.1.2",
+ "json-stringify-safe": "~5.0.1",
+ "mime-types": "~2.1.19",
+ "performance-now": "^2.1.0",
+ "qs": "6.10.4",
+ "safe-buffer": "^5.1.2",
+ "tough-cookie": "^4.1.3",
+ "tunnel-agent": "^0.6.0",
+ "uuid": "^8.3.2"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/@cypress/request/node_modules/form-data": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmmirror.com/form-data/-/form-data-2.3.3.tgz",
+ "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
+ "dependencies": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.6",
+ "mime-types": "^2.1.12"
+ },
+ "engines": {
+ "node": ">= 0.12"
+ }
+ },
+ "node_modules/@cypress/request/node_modules/uuid": {
+ "version": "8.3.2",
+ "resolved": "https://registry.npmmirror.com/uuid/-/uuid-8.3.2.tgz",
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
+ "bin": {
+ "uuid": "dist/bin/uuid"
}
},
"node_modules/@element-plus/icons-vue": {
@@ -1263,6 +1317,14 @@
}
}
},
+ "node_modules/@xmldom/xmldom": {
+ "version": "0.8.10",
+ "resolved": "https://registry.npmmirror.com/@xmldom/xmldom/-/xmldom-0.8.10.tgz",
+ "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==",
+ "engines": {
+ "node": ">=10.0.0"
+ }
+ },
"node_modules/abbrev": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/abbrev/-/abbrev-2.0.0.tgz",
@@ -1270,6 +1332,14 @@
"dev": true,
"engines": {
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/accept-language": {
+ "version": "3.0.20",
+ "resolved": "https://registry.npmmirror.com/accept-language/-/accept-language-3.0.20.tgz",
+ "integrity": "sha512-xklPzRma4aoDEPk0ZfMjeuxB2FP4JBYlAR25OFUqCoOYDjYo6wGwAs49SnTN/MoB5VpnNX9tENfZ+vEIFmHQMQ==",
+ "dependencies": {
+ "bcp47": "^1.1.2"
}
},
"node_modules/acorn": {
@@ -1364,6 +1434,22 @@
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"dev": true
},
+ "node_modules/asn1": {
+ "version": "0.2.6",
+ "resolved": "https://registry.npmmirror.com/asn1/-/asn1-0.2.6.tgz",
+ "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==",
+ "dependencies": {
+ "safer-buffer": "~2.1.0"
+ }
+ },
+ "node_modules/assert-plus": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/assert-plus/-/assert-plus-1.0.0.tgz",
+ "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==",
+ "engines": {
+ "node": ">=0.8"
+ }
+ },
"node_modules/assertion-error": {
"version": "1.1.0",
"resolved": "https://registry.npmmirror.com/assertion-error/-/assertion-error-1.1.0.tgz",
@@ -1383,10 +1469,23 @@
"resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz",
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
},
+ "node_modules/aws-sign2": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmmirror.com/aws-sign2/-/aws-sign2-0.7.0.tgz",
+ "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==",
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/aws4": {
+ "version": "1.13.1",
+ "resolved": "https://registry.npmmirror.com/aws4/-/aws4-1.13.1.tgz",
+ "integrity": "sha512-u5w79Rd7SU4JaIlA/zFqG+gOiuq25q5VLyZ8E+ijJeILuTxVzZgp2CaGw/UTw6pXYN9XMO9yiqj/nEHmhTG5CA=="
+ },
"node_modules/axios": {
- "version": "1.6.8",
- "resolved": "https://registry.npmmirror.com/axios/-/axios-1.6.8.tgz",
- "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==",
+ "version": "1.7.4",
+ "resolved": "https://registry.npmmirror.com/axios/-/axios-1.7.4.tgz",
+ "integrity": "sha512-DukmaFRnY6AzAALSH4J2M3k6PkaC+MfaAGdEERRWcC9q3/TWQwLpHR8ZRLKTdQ3aBDL64EdluRDjJqKw+BPZEw==",
"dependencies": {
"follow-redirects": "^1.15.6",
"form-data": "^4.0.0",
@@ -1398,12 +1497,36 @@
"resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz",
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
},
+ "node_modules/bcp47": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmmirror.com/bcp47/-/bcp47-1.1.2.tgz",
+ "integrity": "sha512-JnkkL4GUpOvvanH9AZPX38CxhiLsXMBicBY2IAtqiVN8YulGDQybUydWA4W6yAMtw6iShtw+8HEF6cfrTHU+UQ==",
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/bcrypt-pbkdf": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmmirror.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
+ "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==",
+ "dependencies": {
+ "tweetnacl": "^0.14.3"
+ }
+ },
"node_modules/binary-extensions": {
"version": "2.3.0",
"resolved": "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.3.0.tgz",
"integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==",
"engines": {
"node": ">=8"
+ }
+ },
+ "node_modules/bindings": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmmirror.com/bindings/-/bindings-1.5.0.tgz",
+ "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
+ "dependencies": {
+ "file-uri-to-path": "1.0.0"
}
},
"node_modules/boolbase": {
@@ -1416,7 +1539,6 @@
"version": "1.1.11",
"resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
"dependencies": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -1433,6 +1555,11 @@
"node": ">=8"
}
},
+ "node_modules/brackets2dots": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmmirror.com/brackets2dots/-/brackets2dots-1.1.0.tgz",
+ "integrity": "sha512-DEIJz+ebFQ2SYPpXd8owCjy+8H+9N2Pd9DeSf0J33oavLyBYpAtjLg/Z/RmdJdTeHmKVva+L411HjnvyV2rSOA=="
+ },
"node_modules/cac": {
"version": "6.7.14",
"resolved": "https://registry.npmmirror.com/cac/-/cac-6.7.14.tgz",
@@ -1440,6 +1567,24 @@
"dev": true,
"engines": {
"node": ">=8"
+ }
+ },
+ "node_modules/call-bind": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmmirror.com/call-bind/-/call-bind-1.0.7.tgz",
+ "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==",
+ "dependencies": {
+ "es-define-property": "^1.0.0",
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2",
+ "get-intrinsic": "^1.2.4",
+ "set-function-length": "^1.2.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/callsites": {
@@ -1450,6 +1595,11 @@
"engines": {
"node": ">=6"
}
+ },
+ "node_modules/caseless": {
+ "version": "0.12.0",
+ "resolved": "https://registry.npmmirror.com/caseless/-/caseless-0.12.0.tgz",
+ "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw=="
},
"node_modules/chai": {
"version": "4.4.1",
@@ -1480,6 +1630,14 @@
},
"engines": {
"node": ">=10"
+ }
+ },
+ "node_modules/charenc": {
+ "version": "0.0.2",
+ "resolved": "https://registry.npmmirror.com/charenc/-/charenc-0.0.2.tgz",
+ "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==",
+ "engines": {
+ "node": "*"
}
},
"node_modules/check-error": {
@@ -1525,6 +1683,11 @@
"node": ">= 6"
}
},
+ "node_modules/cldrjs": {
+ "version": "0.5.5",
+ "resolved": "https://registry.npmmirror.com/cldrjs/-/cldrjs-0.5.5.tgz",
+ "integrity": "sha512-KDwzwbmLIPfCgd8JERVDpQKrUUM1U4KpFJJg2IROv89rF172lLufoJnqJ/Wea6fXL5bO6WjuLMzY8V52UWPvkA=="
+ },
"node_modules/color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
@@ -1563,11 +1726,15 @@
"node": ">=14"
}
},
+ "node_modules/compress": {
+ "version": "0.99.0",
+ "resolved": "https://registry.npmmirror.com/compress/-/compress-0.99.0.tgz",
+ "integrity": "sha512-+qy9iMBFGTLUqKwYkAqRtZ5Xdl1PGKrSMYCuiirsxSQ5OgDoyP9QO6YoZ4feHzhpufGOwJ+y4qRXz2ytzZ1l0g=="
+ },
"node_modules/concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
- "dev": true
+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
},
"node_modules/config-chain": {
"version": "1.1.13",
@@ -1579,11 +1746,15 @@
"proto-list": "~1.2.1"
}
},
+ "node_modules/core-util-is": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmmirror.com/core-util-is/-/core-util-is-1.0.2.tgz",
+ "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ=="
+ },
"node_modules/cross-spawn": {
"version": "7.0.3",
"resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz",
"integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
- "dev": true,
"dependencies": {
"path-key": "^3.1.0",
"shebang-command": "^2.0.0",
@@ -1591,6 +1762,14 @@
},
"engines": {
"node": ">= 8"
+ }
+ },
+ "node_modules/crypt": {
+ "version": "0.0.2",
+ "resolved": "https://registry.npmmirror.com/crypt/-/crypt-0.0.2.tgz",
+ "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==",
+ "engines": {
+ "node": "*"
}
},
"node_modules/cssesc": {
@@ -1622,6 +1801,25 @@
"resolved": "https://registry.npmmirror.com/csstype/-/csstype-3.1.3.tgz",
"integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="
},
+ "node_modules/curry2": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/curry2/-/curry2-1.0.3.tgz",
+ "integrity": "sha512-2vXqPLsITt0ccyczu1BFl3tc8Q6BOCsTHt+NZYasd8wp60RQIYhGM3Beis5h5FgJPT11M1rfiKOR7dPL6cL14Q==",
+ "dependencies": {
+ "fast-bind": "^1.0.0"
+ }
+ },
+ "node_modules/dashdash": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmmirror.com/dashdash/-/dashdash-1.14.1.tgz",
+ "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==",
+ "dependencies": {
+ "assert-plus": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
"node_modules/data-urls": {
"version": "5.0.0",
"resolved": "https://registry.npmmirror.com/data-urls/-/data-urls-5.0.0.tgz",
@@ -1641,9 +1839,9 @@
"integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ=="
},
"node_modules/debug": {
- "version": "4.3.4",
- "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz",
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "version": "4.3.6",
+ "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.6.tgz",
+ "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==",
"dependencies": {
"ms": "2.1.2"
},
@@ -1680,12 +1878,37 @@
"integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
"dev": true
},
+ "node_modules/define-data-property": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmmirror.com/define-data-property/-/define-data-property-1.1.4.tgz",
+ "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==",
+ "dependencies": {
+ "es-define-property": "^1.0.0",
+ "es-errors": "^1.3.0",
+ "gopd": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/delayed-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz",
"integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
"engines": {
"node": ">=0.4.0"
+ }
+ },
+ "node_modules/des.js": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmmirror.com/des.js/-/des.js-1.1.0.tgz",
+ "integrity": "sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==",
+ "dependencies": {
+ "inherits": "^2.0.1",
+ "minimalistic-assert": "^1.0.0"
}
},
"node_modules/diff-sequences": {
@@ -1709,11 +1932,25 @@
"node": ">=6.0.0"
}
},
+ "node_modules/dotsplit.js": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmmirror.com/dotsplit.js/-/dotsplit.js-1.1.0.tgz",
+ "integrity": "sha512-oFVx9VEE+M3yM4oUkaiDa+U2RhOmjXWyXwtfdc5UiHDSZWleE96FS3nx3yXMVuhLJOdI2GMThvaegkwRYPgAFQ=="
+ },
"node_modules/eastasianwidth": {
"version": "0.2.0",
"resolved": "https://registry.npmmirror.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
"integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
"dev": true
+ },
+ "node_modules/ecc-jsbn": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmmirror.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
+ "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==",
+ "dependencies": {
+ "jsbn": "~0.1.0",
+ "safer-buffer": "^2.1.0"
+ }
},
"node_modules/echarts": {
"version": "5.5.0",
@@ -1872,12 +2109,39 @@
"integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
"dev": true
},
+ "node_modules/end-of-stream": {
+ "version": "1.4.4",
+ "resolved": "https://registry.npmmirror.com/end-of-stream/-/end-of-stream-1.4.4.tgz",
+ "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
+ "dependencies": {
+ "once": "^1.4.0"
+ }
+ },
"node_modules/entities": {
"version": "4.5.0",
"resolved": "https://registry.npmmirror.com/entities/-/entities-4.5.0.tgz",
"integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
"engines": {
"node": ">=0.12"
+ }
+ },
+ "node_modules/es-define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/es-define-property/-/es-define-property-1.0.0.tgz",
+ "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==",
+ "dependencies": {
+ "get-intrinsic": "^1.2.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/es-errors": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmmirror.com/es-errors/-/es-errors-1.3.0.tgz",
+ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
+ "engines": {
+ "node": ">= 0.4"
}
},
"node_modules/esbuild": {
@@ -2152,6 +2416,24 @@
"node": ">=16.17"
}
},
+ "node_modules/extend": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmmirror.com/extend/-/extend-3.0.2.tgz",
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
+ },
+ "node_modules/extsprintf": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmmirror.com/extsprintf/-/extsprintf-1.3.0.tgz",
+ "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==",
+ "engines": [
+ "node >=0.6.0"
+ ]
+ },
+ "node_modules/fast-bind": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/fast-bind/-/fast-bind-1.0.0.tgz",
+ "integrity": "sha512-kna1xVU4nn4HW4RVwh6VYSWoii+u8EkWKS3I6YZluncEvtQwahHKhZTRPFHOOkeJK4m0/Tz2Ir9n10tARqeiXw=="
+ },
"node_modules/fast-deep-equal": {
"version": "3.1.3",
"resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
@@ -2221,6 +2503,11 @@
"engines": {
"node": "^10.12.0 || >=12.0.0"
}
+ },
+ "node_modules/file-uri-to-path": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
+ "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw=="
},
"node_modules/fill-range": {
"version": "7.0.1",
@@ -2292,6 +2579,14 @@
"node": ">=14"
}
},
+ "node_modules/forever-agent": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmmirror.com/forever-agent/-/forever-agent-0.6.1.tgz",
+ "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==",
+ "engines": {
+ "node": "*"
+ }
+ },
"node_modules/form-data": {
"version": "4.0.0",
"resolved": "https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz",
@@ -2308,8 +2603,7 @@
"node_modules/fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
- "dev": true
+ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
},
"node_modules/fsevents": {
"version": "2.3.3",
@@ -2338,6 +2632,24 @@
"node": "*"
}
},
+ "node_modules/get-intrinsic": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz",
+ "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==",
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2",
+ "has-proto": "^1.0.1",
+ "has-symbols": "^1.0.3",
+ "hasown": "^2.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/get-stream": {
"version": "8.0.1",
"resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-8.0.1.tgz",
@@ -2345,6 +2657,14 @@
"dev": true,
"engines": {
"node": ">=16"
+ }
+ },
+ "node_modules/getpass": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmmirror.com/getpass/-/getpass-0.1.7.tgz",
+ "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==",
+ "dependencies": {
+ "assert-plus": "^1.0.0"
}
},
"node_modules/glob": {
@@ -2399,6 +2719,14 @@
"node": ">=16 || 14 >=14.17"
}
},
+ "node_modules/globalize": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmmirror.com/globalize/-/globalize-1.7.0.tgz",
+ "integrity": "sha512-faR46vTIbFCeAemyuc9E6/d7Wrx9k2ae2L60UhakztFg6VuE42gENVJNuPFtt7Sdjrk9m2w8+py7Jj+JTNy59w==",
+ "dependencies": {
+ "cldrjs": "^0.5.4"
+ }
+ },
"node_modules/globals": {
"version": "13.24.0",
"resolved": "https://registry.npmmirror.com/globals/-/globals-13.24.0.tgz",
@@ -2409,6 +2737,17 @@
},
"engines": {
"node": ">=8"
+ }
+ },
+ "node_modules/gopd": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmmirror.com/gopd/-/gopd-1.0.1.tgz",
+ "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
+ "dependencies": {
+ "get-intrinsic": "^1.1.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/graphemer": {
@@ -2426,6 +2765,39 @@
"node": ">=8"
}
},
+ "node_modules/has-property-descriptors": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
+ "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==",
+ "dependencies": {
+ "es-define-property": "^1.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-proto": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/has-proto/-/has-proto-1.0.3.tgz",
+ "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-symbols": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.0.3.tgz",
+ "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/hasown": {
"version": "2.0.2",
"resolved": "https://registry.npmmirror.com/hasown/-/hasown-2.0.2.tgz",
@@ -2435,6 +2807,15 @@
},
"engines": {
"node": ">= 0.4"
+ }
+ },
+ "node_modules/hoek": {
+ "version": "4.3.1",
+ "resolved": "https://registry.npmmirror.com/hoek/-/hoek-4.3.1.tgz",
+ "integrity": "sha512-v7E+yIjcHECn973i0xHm4kJkEpv3C8sbYS4344WXbzYqRyiDD7rjnnKo4hsJkejQBAFdRMUGNHySeSPKSH9Rqw==",
+ "deprecated": "This module has moved and is now available at @hapi/hoek. Please update your dependencies as this version is no longer maintained an may contain bugs and security issues.",
+ "engines": {
+ "node": ">=6.0.0"
}
},
"node_modules/html-encoding-sniffer": {
@@ -2460,6 +2841,51 @@
},
"engines": {
"node": ">= 14"
+ }
+ },
+ "node_modules/http-signature": {
+ "version": "1.3.6",
+ "resolved": "https://registry.npmmirror.com/http-signature/-/http-signature-1.3.6.tgz",
+ "integrity": "sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==",
+ "dependencies": {
+ "assert-plus": "^1.0.0",
+ "jsprim": "^2.0.2",
+ "sshpk": "^1.14.1"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/httpntlm": {
+ "version": "1.8.13",
+ "resolved": "https://registry.npmmirror.com/httpntlm/-/httpntlm-1.8.13.tgz",
+ "integrity": "sha512-2F2FDPiWT4rewPzNMg3uPhNkP3NExENlUGADRUDPQvuftuUTGW98nLZtGemCIW3G40VhWZYgkIDcQFAwZ3mf2Q==",
+ "funding": [
+ {
+ "type": "paypal",
+ "url": "https://www.paypal.com/donate/?hosted_button_id=2CKNJLZJBW8ZC"
+ },
+ {
+ "type": "buymeacoffee",
+ "url": "https://www.buymeacoffee.com/samdecrock"
+ }
+ ],
+ "dependencies": {
+ "des.js": "^1.0.1",
+ "httpreq": ">=0.4.22",
+ "js-md4": "^0.3.2",
+ "underscore": "~1.12.1"
+ },
+ "engines": {
+ "node": ">=10.4.0"
+ }
+ },
+ "node_modules/httpreq": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmmirror.com/httpreq/-/httpreq-1.1.1.tgz",
+ "integrity": "sha512-uhSZLPPD2VXXOSN8Cni3kIsoFHaU2pT/nySEU/fHr/ePbqHYr0jeiQRmUKLEirC09SFPsdMoA7LU7UXMd/w0Kw==",
+ "engines": {
+ "node": ">= 6.15.1"
}
},
"node_modules/https-proxy-agent": {
@@ -2537,7 +2963,6 @@
"version": "1.0.6",
"resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
- "dev": true,
"dependencies": {
"once": "^1.3.0",
"wrappy": "1"
@@ -2546,14 +2971,24 @@
"node_modules/inherits": {
"version": "2.0.4",
"resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
- "dev": true
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
},
"node_modules/ini": {
"version": "1.3.8",
"resolved": "https://registry.npmmirror.com/ini/-/ini-1.3.8.tgz",
"integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
"dev": true
+ },
+ "node_modules/invert-kv": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmmirror.com/invert-kv/-/invert-kv-3.0.1.tgz",
+ "integrity": "sha512-CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw==",
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sindresorhus/invert-kv?sponsor=1"
+ }
},
"node_modules/is-binary-path": {
"version": "2.1.0",
@@ -2565,6 +3000,11 @@
"engines": {
"node": ">=8"
}
+ },
+ "node_modules/is-buffer": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmmirror.com/is-buffer/-/is-buffer-1.1.6.tgz",
+ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w=="
},
"node_modules/is-core-module": {
"version": "2.13.1",
@@ -2634,11 +3074,31 @@
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
}
},
+ "node_modules/is-typedarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/is-typedarray/-/is-typedarray-1.0.0.tgz",
+ "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA=="
+ },
+ "node_modules/isemail": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmmirror.com/isemail/-/isemail-3.2.0.tgz",
+ "integrity": "sha512-zKqkK+O+dGqevc93KNsbZ/TqTUFd46MwWjYOoMrjIMZ51eU7DtQG3Wmd9SQQT7i7RVnuTPEiYEWHU3MSbxC1Tg==",
+ "dependencies": {
+ "punycode": "2.x.x"
+ },
+ "engines": {
+ "node": ">=4.0.0"
+ }
+ },
"node_modules/isexe": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
- "dev": true
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
+ },
+ "node_modules/isstream": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmmirror.com/isstream/-/isstream-0.1.2.tgz",
+ "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g=="
},
"node_modules/jackspeak": {
"version": "2.3.6",
@@ -2655,10 +3115,51 @@
"@pkgjs/parseargs": "^0.11.0"
}
},
+ "node_modules/joi": {
+ "version": "13.7.0",
+ "resolved": "https://registry.npmmirror.com/joi/-/joi-13.7.0.tgz",
+ "integrity": "sha512-xuY5VkHfeOYK3Hdi91ulocfuFopwgbSORmIwzcwHKESQhC7w1kD5jaVSPnqDxS2I8t3RZ9omCKAxNwXN5zG1/Q==",
+ "deprecated": "This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).",
+ "dependencies": {
+ "hoek": "5.x.x",
+ "isemail": "3.x.x",
+ "topo": "3.x.x"
+ },
+ "engines": {
+ "node": ">=8.9.0"
+ }
+ },
+ "node_modules/joi/node_modules/hoek": {
+ "version": "5.0.4",
+ "resolved": "https://registry.npmmirror.com/hoek/-/hoek-5.0.4.tgz",
+ "integrity": "sha512-Alr4ZQgoMlnere5FZJsIyfIjORBqZll5POhDsF4q64dPuJR6rNxXdDxtHSQq8OXRurhmx+PWYEE8bXRROY8h0w==",
+ "deprecated": "This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).",
+ "engines": {
+ "node": ">=8.9.0"
+ }
+ },
"node_modules/jquery": {
"version": "3.7.1",
"resolved": "https://registry.npmmirror.com/jquery/-/jquery-3.7.1.tgz",
"integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg=="
+ },
+ "node_modules/jquery-xml2json": {
+ "version": "0.0.8",
+ "resolved": "https://registry.npmmirror.com/jquery-xml2json/-/jquery-xml2json-0.0.8.tgz",
+ "integrity": "sha512-PF8yh3sEeQev44ZWQ3c4Mxg1rXP8MEhOKPt5lDyaMe25SJaDI7pQvQOS5kpBPb1YC/d/0nEzUn+YewaXhAQFlw=="
+ },
+ "node_modules/jquery.soap": {
+ "version": "1.7.3",
+ "resolved": "https://registry.npmmirror.com/jquery.soap/-/jquery.soap-1.7.3.tgz",
+ "integrity": "sha512-ZNMQ2Rmy8uQ/4CSJMz0IDZCYhdmT+SiAlLFMGDPvygthZfEsbj9TLPATBIjotx5STyTooRZBgmoaHbAXEAID1A==",
+ "dependencies": {
+ "jquery": ">=1.9.0"
+ }
+ },
+ "node_modules/js-base64": {
+ "version": "3.7.7",
+ "resolved": "https://registry.npmmirror.com/js-base64/-/js-base64-3.7.7.tgz",
+ "integrity": "sha512-7rCnleh0z2CkXhH67J8K1Ytz0b2Y+yxTPL+/KOJoa20hfnVQ/3/T6W/KflYI4bRHRagNeXeU2bkNGI3v1oS/lw=="
},
"node_modules/js-beautify": {
"version": "1.15.1",
@@ -2690,6 +3191,11 @@
"node": ">=14"
}
},
+ "node_modules/js-md4": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmmirror.com/js-md4/-/js-md4-0.3.2.tgz",
+ "integrity": "sha512-/GDnfQYsltsjRswQhN9fhv3EMw2sCpUdrdxyWDOUK7eyD++r3gRhzgiQgc/x4MAv2i1iuQ4lxO5mvqM3vj4bwA=="
+ },
"node_modules/js-tokens": {
"version": "8.0.3",
"resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-8.0.3.tgz",
@@ -2707,6 +3213,11 @@
"bin": {
"js-yaml": "bin/js-yaml.js"
}
+ },
+ "node_modules/jsbn": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmmirror.com/jsbn/-/jsbn-0.1.1.tgz",
+ "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg=="
},
"node_modules/jsdom": {
"version": "24.0.0",
@@ -2763,6 +3274,11 @@
"integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
"dev": true
},
+ "node_modules/json-schema": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmmirror.com/json-schema/-/json-schema-0.4.0.tgz",
+ "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA=="
+ },
"node_modules/json-schema-traverse": {
"version": "0.4.1",
"resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
@@ -2775,11 +3291,30 @@
"integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
"dev": true
},
+ "node_modules/json-stringify-safe": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmmirror.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
+ "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA=="
+ },
"node_modules/jsonc-parser": {
"version": "3.2.1",
"resolved": "https://registry.npmmirror.com/jsonc-parser/-/jsonc-parser-3.2.1.tgz",
"integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==",
"dev": true
+ },
+ "node_modules/jsprim": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmmirror.com/jsprim/-/jsprim-2.0.2.tgz",
+ "integrity": "sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==",
+ "engines": [
+ "node >=0.6.0"
+ ],
+ "dependencies": {
+ "assert-plus": "1.0.0",
+ "extsprintf": "1.3.0",
+ "json-schema": "0.4.0",
+ "verror": "1.10.0"
+ }
},
"node_modules/keyv": {
"version": "4.5.4",
@@ -2788,6 +3323,17 @@
"dev": true,
"dependencies": {
"json-buffer": "3.0.1"
+ }
+ },
+ "node_modules/lcid": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmmirror.com/lcid/-/lcid-3.1.1.tgz",
+ "integrity": "sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg==",
+ "dependencies": {
+ "invert-kv": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
"node_modules/levn": {
@@ -2883,6 +3429,48 @@
"node": ">=12"
}
},
+ "node_modules/map-age-cleaner": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmmirror.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz",
+ "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==",
+ "dependencies": {
+ "p-defer": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/md5": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmmirror.com/md5/-/md5-2.3.0.tgz",
+ "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==",
+ "dependencies": {
+ "charenc": "0.0.2",
+ "crypt": "0.0.2",
+ "is-buffer": "~1.1.6"
+ }
+ },
+ "node_modules/mem": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmmirror.com/mem/-/mem-5.1.1.tgz",
+ "integrity": "sha512-qvwipnozMohxLXG1pOqoLiZKNkC4r4qqRucSoDwXowsNGDSULiqFTRUF05vcZWnwJSG22qTsynQhxbaMtnX9gw==",
+ "dependencies": {
+ "map-age-cleaner": "^0.1.3",
+ "mimic-fn": "^2.1.0",
+ "p-is-promise": "^2.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/mem/node_modules/mimic-fn": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz",
+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
+ "engines": {
+ "node": ">=6"
+ }
+ },
"node_modules/memoize-one": {
"version": "6.0.0",
"resolved": "https://registry.npmmirror.com/memoize-one/-/memoize-one-6.0.0.tgz",
@@ -2891,8 +3479,7 @@
"node_modules/merge-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/merge-stream/-/merge-stream-2.0.0.tgz",
- "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
- "dev": true
+ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="
},
"node_modules/merge2": {
"version": "1.4.1",
@@ -2942,11 +3529,15 @@
"node": ">=12"
}
},
+ "node_modules/minimalistic-assert": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmmirror.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
+ "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A=="
+ },
"node_modules/minimatch": {
"version": "3.1.2",
"resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz",
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
"dependencies": {
"brace-expansion": "^1.1.7"
},
@@ -2961,6 +3552,17 @@
"dev": true,
"engines": {
"node": ">=16 || 14 >=14.17"
+ }
+ },
+ "node_modules/mkdirp": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz",
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
+ "bin": {
+ "mkdirp": "bin/cmd.js"
+ },
+ "engines": {
+ "node": ">=10"
}
},
"node_modules/mlly": {
@@ -2988,6 +3590,11 @@
"resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz",
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
},
+ "node_modules/nan": {
+ "version": "2.20.0",
+ "resolved": "https://registry.npmmirror.com/nan/-/nan-2.20.0.tgz",
+ "integrity": "sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw=="
+ },
"node_modules/nanoid": {
"version": "3.3.7",
"resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.7.tgz",
@@ -3004,6 +3611,24 @@
"resolved": "https://registry.npmmirror.com/natural-compare/-/natural-compare-1.4.0.tgz",
"integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
"dev": true
+ },
+ "node_modules/node-expat": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmmirror.com/node-expat/-/node-expat-2.4.1.tgz",
+ "integrity": "sha512-uWgvQLgo883NKIL+66oJsK9ysKK3ej0YjVCPBZzO/7wMAuH68/Yb7+JwPWNaVq0yPaxrb48AoEXfYEc8gsmFbg==",
+ "hasInstallScript": true,
+ "dependencies": {
+ "bindings": "^1.5.0",
+ "nan": "^2.19.0"
+ }
+ },
+ "node_modules/node-rsa": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmmirror.com/node-rsa/-/node-rsa-1.1.1.tgz",
+ "integrity": "sha512-Jd4cvbJMryN21r5HgxQOpMEqv+ooke/korixNNK3mGqfGJmy0M77WDDzo/05969+OkMy3XW1UuZsSmW9KQm7Fw==",
+ "dependencies": {
+ "asn1": "^0.2.4"
+ }
},
"node_modules/nopt": {
"version": "7.2.0",
@@ -3069,11 +3694,21 @@
"integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==",
"dev": true
},
+ "node_modules/object-inspect": {
+ "version": "1.13.2",
+ "resolved": "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.13.2.tgz",
+ "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/once": {
"version": "1.4.0",
"resolved": "https://registry.npmmirror.com/once/-/once-1.4.0.tgz",
"integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
- "dev": true,
"dependencies": {
"wrappy": "1"
}
@@ -3105,6 +3740,139 @@
},
"engines": {
"node": ">= 0.8.0"
+ }
+ },
+ "node_modules/os-locale": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmmirror.com/os-locale/-/os-locale-5.0.0.tgz",
+ "integrity": "sha512-tqZcNEDAIZKBEPnHPlVDvKrp7NzgLi7jRmhKiUoa2NUmhl13FtkAGLUVR+ZsYvApBQdBfYm43A4tXXQ4IrYLBA==",
+ "dependencies": {
+ "execa": "^4.0.0",
+ "lcid": "^3.0.0",
+ "mem": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/os-locale/node_modules/execa": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmmirror.com/execa/-/execa-4.1.0.tgz",
+ "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==",
+ "dependencies": {
+ "cross-spawn": "^7.0.0",
+ "get-stream": "^5.0.0",
+ "human-signals": "^1.1.1",
+ "is-stream": "^2.0.0",
+ "merge-stream": "^2.0.0",
+ "npm-run-path": "^4.0.0",
+ "onetime": "^5.1.0",
+ "signal-exit": "^3.0.2",
+ "strip-final-newline": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sindresorhus/execa?sponsor=1"
+ }
+ },
+ "node_modules/os-locale/node_modules/get-stream": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-5.2.0.tgz",
+ "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
+ "dependencies": {
+ "pump": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/os-locale/node_modules/human-signals": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmmirror.com/human-signals/-/human-signals-1.1.1.tgz",
+ "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==",
+ "engines": {
+ "node": ">=8.12.0"
+ }
+ },
+ "node_modules/os-locale/node_modules/is-stream": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmmirror.com/is-stream/-/is-stream-2.0.1.tgz",
+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/os-locale/node_modules/mimic-fn": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz",
+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/os-locale/node_modules/npm-run-path": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmmirror.com/npm-run-path/-/npm-run-path-4.0.1.tgz",
+ "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
+ "dependencies": {
+ "path-key": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/os-locale/node_modules/onetime": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmmirror.com/onetime/-/onetime-5.1.2.tgz",
+ "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
+ "dependencies": {
+ "mimic-fn": "^2.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/os-locale/node_modules/signal-exit": {
+ "version": "3.0.7",
+ "resolved": "https://registry.npmmirror.com/signal-exit/-/signal-exit-3.0.7.tgz",
+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
+ },
+ "node_modules/os-locale/node_modules/strip-final-newline": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmmirror.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
+ "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/p-defer": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/p-defer/-/p-defer-1.0.0.tgz",
+ "integrity": "sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/p-is-promise": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmmirror.com/p-is-promise/-/p-is-promise-2.1.0.tgz",
+ "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==",
+ "engines": {
+ "node": ">=6"
}
},
"node_modules/p-limit": {
@@ -3165,7 +3933,6 @@
"version": "1.0.1",
"resolved": "https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
- "dev": true,
"engines": {
"node": ">=0.10.0"
}
@@ -3174,7 +3941,6 @@
"version": "3.1.1",
"resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz",
"integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
- "dev": true,
"engines": {
"node": ">=8"
}
@@ -3211,6 +3977,11 @@
"engines": {
"node": "*"
}
+ },
+ "node_modules/performance-now": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmmirror.com/performance-now/-/performance-now-2.1.0.tgz",
+ "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow=="
},
"node_modules/picocolors": {
"version": "1.0.0",
@@ -3376,23 +4147,43 @@
"node_modules/psl": {
"version": "1.9.0",
"resolved": "https://registry.npmmirror.com/psl/-/psl-1.9.0.tgz",
- "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==",
- "dev": true
+ "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag=="
+ },
+ "node_modules/pump": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/pump/-/pump-3.0.0.tgz",
+ "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
+ "dependencies": {
+ "end-of-stream": "^1.1.0",
+ "once": "^1.3.1"
+ }
},
"node_modules/punycode": {
"version": "2.3.1",
"resolved": "https://registry.npmmirror.com/punycode/-/punycode-2.3.1.tgz",
"integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
- "dev": true,
"engines": {
"node": ">=6"
+ }
+ },
+ "node_modules/qs": {
+ "version": "6.10.4",
+ "resolved": "https://registry.npmmirror.com/qs/-/qs-6.10.4.tgz",
+ "integrity": "sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==",
+ "dependencies": {
+ "side-channel": "^1.0.4"
+ },
+ "engines": {
+ "node": ">=0.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/querystringify": {
"version": "2.2.0",
"resolved": "https://registry.npmmirror.com/querystringify/-/querystringify-2.2.0.tgz",
- "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==",
- "dev": true
+ "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ=="
},
"node_modules/queue-microtask": {
"version": "1.2.3",
@@ -3419,8 +4210,7 @@
"node_modules/requires-port": {
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz",
- "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==",
- "dev": true
+ "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ=="
},
"node_modules/resolve": {
"version": "1.22.8",
@@ -3528,11 +4318,29 @@
"queue-microtask": "^1.2.2"
}
},
+ "node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
+ },
"node_modules/safer-buffer": {
"version": "2.1.2",
"resolved": "https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
- "dev": true
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
},
"node_modules/sass": {
"version": "1.76.0",
@@ -3551,6 +4359,11 @@
"node": ">=14.0.0"
}
},
+ "node_modules/sax": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmmirror.com/sax/-/sax-1.4.1.tgz",
+ "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg=="
+ },
"node_modules/saxes": {
"version": "6.0.0",
"resolved": "https://registry.npmmirror.com/saxes/-/saxes-6.0.0.tgz",
@@ -3562,6 +4375,30 @@
"engines": {
"node": ">=v12.22.7"
}
+ },
+ "node_modules/selectn": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmmirror.com/selectn/-/selectn-1.1.2.tgz",
+ "integrity": "sha512-AaQlR5br4jWANaF5p5J1ctpsOKwFE5ljWK8ZUSrc4u4ZwcmFLyiowTMt7UjfzQN2/aXF3xnuSVnV4c3Q9tBDqQ==",
+ "dependencies": {
+ "brackets2dots": "^1.1.0",
+ "curry2": "^1.0.0",
+ "debug": "^2.5.2",
+ "dotsplit.js": "^1.0.3"
+ }
+ },
+ "node_modules/selectn/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dependencies": {
+ "ms": "2.0.0"
+ }
+ },
+ "node_modules/selectn/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
},
"node_modules/semver": {
"version": "7.6.0",
@@ -3590,11 +4427,26 @@
"node": ">=10"
}
},
+ "node_modules/set-function-length": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmmirror.com/set-function-length/-/set-function-length-1.2.2.tgz",
+ "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==",
+ "dependencies": {
+ "define-data-property": "^1.1.4",
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2",
+ "get-intrinsic": "^1.2.4",
+ "gopd": "^1.0.1",
+ "has-property-descriptors": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
"node_modules/shebang-command": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz",
"integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
- "dev": true,
"dependencies": {
"shebang-regex": "^3.0.0"
},
@@ -3606,9 +4458,25 @@
"version": "3.0.0",
"resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz",
"integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
- "dev": true,
"engines": {
"node": ">=8"
+ }
+ },
+ "node_modules/side-channel": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmmirror.com/side-channel/-/side-channel-1.0.6.tgz",
+ "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==",
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "es-errors": "^1.3.0",
+ "get-intrinsic": "^1.2.4",
+ "object-inspect": "^1.13.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/siginfo": {
@@ -3630,6 +4498,35 @@
"version": "1.2.0",
"resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.0.tgz",
"integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g=="
+ },
+ "node_modules/sshpk": {
+ "version": "1.18.0",
+ "resolved": "https://registry.npmmirror.com/sshpk/-/sshpk-1.18.0.tgz",
+ "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==",
+ "dependencies": {
+ "asn1": "~0.2.3",
+ "assert-plus": "^1.0.0",
+ "bcrypt-pbkdf": "^1.0.0",
+ "dashdash": "^1.12.0",
+ "ecc-jsbn": "~0.1.1",
+ "getpass": "^0.1.1",
+ "jsbn": "~0.1.0",
+ "safer-buffer": "^2.0.2",
+ "tweetnacl": "~0.14.0"
+ },
+ "bin": {
+ "sshpk-conv": "bin/sshpk-conv",
+ "sshpk-sign": "bin/sshpk-sign",
+ "sshpk-verify": "bin/sshpk-verify"
+ },
"engines": {
"node": ">=0.10.0"
}
@@ -3754,6 +4651,66 @@
"js-tokens": "^8.0.2"
}
},
+ "node_modules/strong-globalize": {
+ "version": "6.0.6",
+ "resolved": "https://registry.npmmirror.com/strong-globalize/-/strong-globalize-6.0.6.tgz",
+ "integrity": "sha512-+mN0wTXBg9rLiKBk7jsyfXFWsg08q160XQcmJ3gNxSQ8wrC668dzR8JUp/wcK3NZ2eQ5h5tvc8O6Y+FC0D61lw==",
+ "dependencies": {
+ "accept-language": "^3.0.18",
+ "debug": "^4.2.0",
+ "globalize": "^1.6.0",
+ "lodash": "^4.17.20",
+ "md5": "^2.3.0",
+ "mkdirp": "^1.0.4",
+ "os-locale": "^5.0.0",
+ "yamljs": "^0.3.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/strong-soap": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmmirror.com/strong-soap/-/strong-soap-4.1.3.tgz",
+ "integrity": "sha512-Ts19vzoumipPPR3iWlmd2OVERAxlLdz6LXayDPBWyh9OuKyRw1hNrsaaGWzhlY2JY+5kq/j7mq2MpEVSYsk10w==",
+ "dependencies": {
+ "@cypress/request": "^3.0.1",
+ "compress": "^0.99.0",
+ "debug": "^4.3.6",
+ "httpntlm": "^1.8.13",
+ "lodash": "^4.17.21",
+ "node-rsa": "^1.1.1",
+ "sax": "^1.4.1",
+ "selectn": "^1.1.2",
+ "strong-globalize": "^6.0.6",
+ "uuid": "^10.0.0",
+ "xml-crypto": "^3.2.0",
+ "xmlbuilder": "^10.1.1"
+ },
+ "engines": {
+ "node": "18 || 20 || 21"
+ }
+ },
+ "node_modules/strong-soap/node_modules/xml-crypto": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmmirror.com/xml-crypto/-/xml-crypto-3.2.0.tgz",
+ "integrity": "sha512-qVurBUOQrmvlgmZqIVBqmb06TD2a/PpEUfFPgD7BuBfjmoH4zgkqaWSIJrnymlCvM2GGt9x+XtJFA+ttoAufqg==",
+ "dependencies": {
+ "@xmldom/xmldom": "^0.8.8",
+ "xpath": "0.0.32"
+ },
+ "engines": {
+ "node": ">=4.0.0"
+ }
+ },
+ "node_modules/strong-soap/node_modules/xpath": {
+ "version": "0.0.32",
+ "resolved": "https://registry.npmmirror.com/xpath/-/xpath-0.0.32.tgz",
+ "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==",
+ "engines": {
+ "node": ">=0.6.0"
+ }
+ },
"node_modules/supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz",
@@ -3834,11 +4791,25 @@
"node": ">=8.0"
}
},
+ "node_modules/topo": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmmirror.com/topo/-/topo-3.0.3.tgz",
+ "integrity": "sha512-IgpPtvD4kjrJ7CRA3ov2FhWQADwv+Tdqbsf1ZnPUSAtCJ9e1Z44MmoSGDXGk4IppoZA7jd/QRkNddlLJWlUZsQ==",
+ "deprecated": "This module has moved and is now available at @hapi/topo. Please update your dependencies as this version is no longer maintained an may contain bugs and security issues.",
+ "dependencies": {
+ "hoek": "6.x.x"
+ }
+ },
+ "node_modules/topo/node_modules/hoek": {
+ "version": "6.1.3",
+ "resolved": "https://registry.npmmirror.com/hoek/-/hoek-6.1.3.tgz",
+ "integrity": "sha512-YXXAAhmF9zpQbC7LEcREFtXfGq5K1fmd+4PHkBq8NUqmzW3G+Dq10bI/i0KucLRwss3YYFQ0fSfoxBZYiGUqtQ==",
+ "deprecated": "This module has moved and is now available at @hapi/hoek. Please update your dependencies as this version is no longer maintained an may contain bugs and security issues."
+ },
"node_modules/tough-cookie": {
"version": "4.1.3",
"resolved": "https://registry.npmmirror.com/tough-cookie/-/tough-cookie-4.1.3.tgz",
"integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==",
- "dev": true,
"dependencies": {
"psl": "^1.1.33",
"punycode": "^2.1.1",
@@ -3866,6 +4837,22 @@
"resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.6.2.tgz",
"integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==",
"dev": true
+ },
+ "node_modules/tunnel-agent": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmmirror.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
+ "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==",
+ "dependencies": {
+ "safe-buffer": "^5.0.1"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/tweetnacl": {
+ "version": "0.14.5",
+ "resolved": "https://registry.npmmirror.com/tweetnacl/-/tweetnacl-0.14.5.tgz",
+ "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA=="
},
"node_modules/type-check": {
"version": "0.4.0",
@@ -3903,11 +4890,15 @@
"integrity": "sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==",
"dev": true
},
+ "node_modules/underscore": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmmirror.com/underscore/-/underscore-1.12.1.tgz",
+ "integrity": "sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw=="
+ },
"node_modules/universalify": {
"version": "0.2.0",
"resolved": "https://registry.npmmirror.com/universalify/-/universalify-0.2.0.tgz",
"integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==",
- "dev": true,
"engines": {
"node": ">= 4.0.0"
}
@@ -3999,7 +4990,6 @@
"version": "1.5.10",
"resolved": "https://registry.npmmirror.com/url-parse/-/url-parse-1.5.10.tgz",
"integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==",
- "dev": true,
"dependencies": {
"querystringify": "^2.1.1",
"requires-port": "^1.0.0"
@@ -4010,6 +5000,31 @@
"resolved": "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz",
"integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
"dev": true
+ },
+ "node_modules/uuid": {
+ "version": "10.0.0",
+ "resolved": "https://registry.npmmirror.com/uuid/-/uuid-10.0.0.tgz",
+ "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==",
+ "funding": [
+ "https://github.com/sponsors/broofa",
+ "https://github.com/sponsors/ctavan"
+ ],
+ "bin": {
+ "uuid": "dist/bin/uuid"
+ }
+ },
+ "node_modules/verror": {
+ "version": "1.10.0",
+ "resolved": "https://registry.npmmirror.com/verror/-/verror-1.10.0.tgz",
+ "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==",
+ "engines": [
+ "node >=0.6.0"
+ ],
+ "dependencies": {
+ "assert-plus": "^1.0.0",
+ "core-util-is": "1.0.2",
+ "extsprintf": "^1.2.0"
+ }
},
"node_modules/vite": {
"version": "5.2.6",
@@ -4283,7 +5298,6 @@
"version": "2.0.2",
"resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz",
"integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
- "dev": true,
"dependencies": {
"isexe": "^2.0.0"
},
@@ -4392,8 +5406,7 @@
"node_modules/wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
- "dev": true
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
},
"node_modules/ws": {
"version": "8.16.0",
@@ -4425,6 +5438,27 @@
"node": ">=12"
}
},
+ "node_modules/xml2json": {
+ "version": "0.12.0",
+ "resolved": "https://registry.npmmirror.com/xml2json/-/xml2json-0.12.0.tgz",
+ "integrity": "sha512-EPJHRWJnJUYbJlzR4pBhZODwWdi2IaYGtDdteJi0JpZ4OD31IplWALuit8r73dJuM4iHZdDVKY1tLqY2UICejg==",
+ "dependencies": {
+ "hoek": "^4.2.1",
+ "joi": "^13.1.2",
+ "node-expat": "^2.3.18"
+ },
+ "bin": {
+ "xml2json": "bin/xml2json"
+ }
+ },
+ "node_modules/xmlbuilder": {
+ "version": "10.1.1",
+ "resolved": "https://registry.npmmirror.com/xmlbuilder/-/xmlbuilder-10.1.1.tgz",
+ "integrity": "sha512-OyzrcFLL/nb6fMGHbiRDuPup9ljBycsdCypwuyg5AAHvyWzGfChJpCXMG88AGTIMFhGZ9RccFN1e6lhg3hkwKg==",
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
"node_modules/xmlchars": {
"version": "2.2.0",
"resolved": "https://registry.npmmirror.com/xmlchars/-/xmlchars-2.2.0.tgz",
@@ -4436,6 +5470,47 @@
"resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz",
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
"dev": true
+ },
+ "node_modules/yamljs": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmmirror.com/yamljs/-/yamljs-0.3.0.tgz",
+ "integrity": "sha512-C/FsVVhht4iPQYXOInoxUM/1ELSf9EsgKH34FofQOp6hwCPrW4vG4w5++TED3xRUo8gD7l0P1J1dLlDYzODsTQ==",
+ "dependencies": {
+ "argparse": "^1.0.7",
+ "glob": "^7.0.5"
+ },
+ "bin": {
+ "json2yaml": "bin/json2yaml",
+ "yaml2json": "bin/yaml2json"
+ }
+ },
+ "node_modules/yamljs/node_modules/argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmmirror.com/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
+ "dependencies": {
+ "sprintf-js": "~1.0.2"
+ }
+ },
+ "node_modules/yamljs/node_modules/glob": {
+ "version": "7.2.3",
+ "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz",
+ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
+ "deprecated": "Glob versions prior to v9 are no longer supported",
+ "dependencies": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.1.1",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ },
+ "engines": {
+ "node": "*"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
},
"node_modules/yocto-queue": {
"version": "0.1.0",
@@ -4486,6 +5561,48 @@
"version": "3.6.1",
"resolved": "https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-3.6.1.tgz",
"integrity": "sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA=="
+ },
+ "@cypress/request": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmmirror.com/@cypress/request/-/request-3.0.1.tgz",
+ "integrity": "sha512-TWivJlJi8ZDx2wGOw1dbLuHJKUYX7bWySw377nlnGOW3hP9/MUKIsEdXT/YngWxVdgNCHRBmFlBipE+5/2ZZlQ==",
+ "requires": {
+ "aws-sign2": "~0.7.0",
+ "aws4": "^1.8.0",
+ "caseless": "~0.12.0",
+ "combined-stream": "~1.0.6",
+ "extend": "~3.0.2",
+ "forever-agent": "~0.6.1",
+ "form-data": "~2.3.2",
+ "http-signature": "~1.3.6",
+ "is-typedarray": "~1.0.0",
+ "isstream": "~0.1.2",
+ "json-stringify-safe": "~5.0.1",
+ "mime-types": "~2.1.19",
+ "performance-now": "^2.1.0",
+ "qs": "6.10.4",
+ "safe-buffer": "^5.1.2",
+ "tough-cookie": "^4.1.3",
+ "tunnel-agent": "^0.6.0",
+ "uuid": "^8.3.2"
+ },
+ "dependencies": {
+ "form-data": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmmirror.com/form-data/-/form-data-2.3.3.tgz",
+ "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
+ "requires": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.6",
+ "mime-types": "^2.1.12"
+ }
+ },
+ "uuid": {
+ "version": "8.3.2",
+ "resolved": "https://registry.npmmirror.com/uuid/-/uuid-8.3.2.tgz",
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg=="
+ }
+ }
},
"@element-plus/icons-vue": {
"version": "2.3.1",
@@ -5265,11 +6382,24 @@
}
}
},
+ "@xmldom/xmldom": {
+ "version": "0.8.10",
+ "resolved": "https://registry.npmmirror.com/@xmldom/xmldom/-/xmldom-0.8.10.tgz",
+ "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw=="
+ },
"abbrev": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/abbrev/-/abbrev-2.0.0.tgz",
"integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==",
"dev": true
+ },
+ "accept-language": {
+ "version": "3.0.20",
+ "resolved": "https://registry.npmmirror.com/accept-language/-/accept-language-3.0.20.tgz",
+ "integrity": "sha512-xklPzRma4aoDEPk0ZfMjeuxB2FP4JBYlAR25OFUqCoOYDjYo6wGwAs49SnTN/MoB5VpnNX9tENfZ+vEIFmHQMQ==",
+ "requires": {
+ "bcp47": "^1.1.2"
+ }
},
"acorn": {
"version": "8.11.3",
@@ -5340,6 +6470,19 @@
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"dev": true
},
+ "asn1": {
+ "version": "0.2.6",
+ "resolved": "https://registry.npmmirror.com/asn1/-/asn1-0.2.6.tgz",
+ "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==",
+ "requires": {
+ "safer-buffer": "~2.1.0"
+ }
+ },
+ "assert-plus": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/assert-plus/-/assert-plus-1.0.0.tgz",
+ "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw=="
+ },
"assertion-error": {
"version": "1.1.0",
"resolved": "https://registry.npmmirror.com/assertion-error/-/assertion-error-1.1.0.tgz",
@@ -5356,10 +6499,20 @@
"resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz",
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
},
+ "aws-sign2": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmmirror.com/aws-sign2/-/aws-sign2-0.7.0.tgz",
+ "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA=="
+ },
+ "aws4": {
+ "version": "1.13.1",
+ "resolved": "https://registry.npmmirror.com/aws4/-/aws4-1.13.1.tgz",
+ "integrity": "sha512-u5w79Rd7SU4JaIlA/zFqG+gOiuq25q5VLyZ8E+ijJeILuTxVzZgp2CaGw/UTw6pXYN9XMO9yiqj/nEHmhTG5CA=="
+ },
"axios": {
- "version": "1.6.8",
- "resolved": "https://registry.npmmirror.com/axios/-/axios-1.6.8.tgz",
- "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==",
+ "version": "1.7.4",
+ "resolved": "https://registry.npmmirror.com/axios/-/axios-1.7.4.tgz",
+ "integrity": "sha512-DukmaFRnY6AzAALSH4J2M3k6PkaC+MfaAGdEERRWcC9q3/TWQwLpHR8ZRLKTdQ3aBDL64EdluRDjJqKw+BPZEw==",
"requires": {
"follow-redirects": "^1.15.6",
"form-data": "^4.0.0",
@@ -5371,10 +6524,31 @@
"resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz",
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
},
+ "bcp47": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmmirror.com/bcp47/-/bcp47-1.1.2.tgz",
+ "integrity": "sha512-JnkkL4GUpOvvanH9AZPX38CxhiLsXMBicBY2IAtqiVN8YulGDQybUydWA4W6yAMtw6iShtw+8HEF6cfrTHU+UQ=="
+ },
+ "bcrypt-pbkdf": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmmirror.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
+ "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==",
+ "requires": {
+ "tweetnacl": "^0.14.3"
+ }
+ },
"binary-extensions": {
"version": "2.3.0",
"resolved": "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.3.0.tgz",
"integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw=="
+ },
+ "bindings": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmmirror.com/bindings/-/bindings-1.5.0.tgz",
+ "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
+ "requires": {
+ "file-uri-to-path": "1.0.0"
+ }
},
"boolbase": {
"version": "1.0.0",
@@ -5386,7 +6560,6 @@
"version": "1.1.11",
"resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -5400,17 +6573,39 @@
"fill-range": "^7.0.1"
}
},
+ "brackets2dots": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmmirror.com/brackets2dots/-/brackets2dots-1.1.0.tgz",
+ "integrity": "sha512-DEIJz+ebFQ2SYPpXd8owCjy+8H+9N2Pd9DeSf0J33oavLyBYpAtjLg/Z/RmdJdTeHmKVva+L411HjnvyV2rSOA=="
+ },
"cac": {
"version": "6.7.14",
"resolved": "https://registry.npmmirror.com/cac/-/cac-6.7.14.tgz",
"integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==",
"dev": true
},
+ "call-bind": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmmirror.com/call-bind/-/call-bind-1.0.7.tgz",
+ "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==",
+ "requires": {
+ "es-define-property": "^1.0.0",
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2",
+ "get-intrinsic": "^1.2.4",
+ "set-function-length": "^1.2.1"
+ }
+ },
"callsites": {
"version": "3.1.0",
"resolved": "https://registry.npmmirror.com/callsites/-/callsites-3.1.0.tgz",
"integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
"dev": true
+ },
+ "caseless": {
+ "version": "0.12.0",
+ "resolved": "https://registry.npmmirror.com/caseless/-/caseless-0.12.0.tgz",
+ "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw=="
},
"chai": {
"version": "4.4.1",
@@ -5436,6 +6631,11 @@
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
+ },
+ "charenc": {
+ "version": "0.0.2",
+ "resolved": "https://registry.npmmirror.com/charenc/-/charenc-0.0.2.tgz",
+ "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA=="
},
"check-error": {
"version": "1.0.3",
@@ -5471,6 +6671,11 @@
}
}
},
+ "cldrjs": {
+ "version": "0.5.5",
+ "resolved": "https://registry.npmmirror.com/cldrjs/-/cldrjs-0.5.5.tgz",
+ "integrity": "sha512-KDwzwbmLIPfCgd8JERVDpQKrUUM1U4KpFJJg2IROv89rF172lLufoJnqJ/Wea6fXL5bO6WjuLMzY8V52UWPvkA=="
+ },
"color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
@@ -5500,11 +6705,15 @@
"integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==",
"dev": true
},
+ "compress": {
+ "version": "0.99.0",
+ "resolved": "https://registry.npmmirror.com/compress/-/compress-0.99.0.tgz",
+ "integrity": "sha512-+qy9iMBFGTLUqKwYkAqRtZ5Xdl1PGKrSMYCuiirsxSQ5OgDoyP9QO6YoZ4feHzhpufGOwJ+y4qRXz2ytzZ1l0g=="
+ },
"concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
- "dev": true
+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
},
"config-chain": {
"version": "1.1.13",
@@ -5516,16 +6725,25 @@
"proto-list": "~1.2.1"
}
},
+ "core-util-is": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmmirror.com/core-util-is/-/core-util-is-1.0.2.tgz",
+ "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ=="
+ },
"cross-spawn": {
"version": "7.0.3",
"resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz",
"integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
- "dev": true,
"requires": {
"path-key": "^3.1.0",
"shebang-command": "^2.0.0",
"which": "^2.0.1"
}
+ },
+ "crypt": {
+ "version": "0.0.2",
+ "resolved": "https://registry.npmmirror.com/crypt/-/crypt-0.0.2.tgz",
+ "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow=="
},
"cssesc": {
"version": "3.0.0",
@@ -5547,6 +6765,22 @@
"resolved": "https://registry.npmmirror.com/csstype/-/csstype-3.1.3.tgz",
"integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="
},
+ "curry2": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/curry2/-/curry2-1.0.3.tgz",
+ "integrity": "sha512-2vXqPLsITt0ccyczu1BFl3tc8Q6BOCsTHt+NZYasd8wp60RQIYhGM3Beis5h5FgJPT11M1rfiKOR7dPL6cL14Q==",
+ "requires": {
+ "fast-bind": "^1.0.0"
+ }
+ },
+ "dashdash": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmmirror.com/dashdash/-/dashdash-1.14.1.tgz",
+ "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==",
+ "requires": {
+ "assert-plus": "^1.0.0"
+ }
+ },
"data-urls": {
"version": "5.0.0",
"resolved": "https://registry.npmmirror.com/data-urls/-/data-urls-5.0.0.tgz",
@@ -5563,9 +6797,9 @@
"integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ=="
},
"debug": {
- "version": "4.3.4",
- "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz",
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "version": "4.3.6",
+ "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.6.tgz",
+ "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==",
"requires": {
"ms": "2.1.2"
}
@@ -5591,10 +6825,29 @@
"integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
"dev": true
},
+ "define-data-property": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmmirror.com/define-data-property/-/define-data-property-1.1.4.tgz",
+ "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==",
+ "requires": {
+ "es-define-property": "^1.0.0",
+ "es-errors": "^1.3.0",
+ "gopd": "^1.0.1"
+ }
+ },
"delayed-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz",
"integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
+ },
+ "des.js": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmmirror.com/des.js/-/des.js-1.1.0.tgz",
+ "integrity": "sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==",
+ "requires": {
+ "inherits": "^2.0.1",
+ "minimalistic-assert": "^1.0.0"
+ }
},
"diff-sequences": {
"version": "29.6.3",
@@ -5611,11 +6864,25 @@
"esutils": "^2.0.2"
}
},
+ "dotsplit.js": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmmirror.com/dotsplit.js/-/dotsplit.js-1.1.0.tgz",
+ "integrity": "sha512-oFVx9VEE+M3yM4oUkaiDa+U2RhOmjXWyXwtfdc5UiHDSZWleE96FS3nx3yXMVuhLJOdI2GMThvaegkwRYPgAFQ=="
+ },
"eastasianwidth": {
"version": "0.2.0",
"resolved": "https://registry.npmmirror.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
"integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
"dev": true
+ },
+ "ecc-jsbn": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmmirror.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
+ "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==",
+ "requires": {
+ "jsbn": "~0.1.0",
+ "safer-buffer": "^2.1.0"
+ }
},
"echarts": {
"version": "5.5.0",
@@ -5740,10 +7007,31 @@
"integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
"dev": true
},
+ "end-of-stream": {
+ "version": "1.4.4",
+ "resolved": "https://registry.npmmirror.com/end-of-stream/-/end-of-stream-1.4.4.tgz",
+ "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
+ "requires": {
+ "once": "^1.4.0"
+ }
+ },
"entities": {
"version": "4.5.0",
"resolved": "https://registry.npmmirror.com/entities/-/entities-4.5.0.tgz",
"integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw=="
+ },
+ "es-define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/es-define-property/-/es-define-property-1.0.0.tgz",
+ "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==",
+ "requires": {
+ "get-intrinsic": "^1.2.4"
+ }
+ },
+ "es-errors": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmmirror.com/es-errors/-/es-errors-1.3.0.tgz",
+ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw=="
},
"esbuild": {
"version": "0.20.2",
@@ -5949,6 +7237,21 @@
"strip-final-newline": "^3.0.0"
}
},
+ "extend": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmmirror.com/extend/-/extend-3.0.2.tgz",
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
+ },
+ "extsprintf": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmmirror.com/extsprintf/-/extsprintf-1.3.0.tgz",
+ "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g=="
+ },
+ "fast-bind": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/fast-bind/-/fast-bind-1.0.0.tgz",
+ "integrity": "sha512-kna1xVU4nn4HW4RVwh6VYSWoii+u8EkWKS3I6YZluncEvtQwahHKhZTRPFHOOkeJK4m0/Tz2Ir9n10tARqeiXw=="
+ },
"fast-deep-equal": {
"version": "3.1.3",
"resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
@@ -6012,6 +7315,11 @@
"flat-cache": "^3.0.4"
}
},
+ "file-uri-to-path": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
+ "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw=="
+ },
"fill-range": {
"version": "7.0.1",
"resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz",
@@ -6062,6 +7370,11 @@
"signal-exit": "^4.0.1"
}
},
+ "forever-agent": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmmirror.com/forever-agent/-/forever-agent-0.6.1.tgz",
+ "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw=="
+ },
"form-data": {
"version": "4.0.0",
"resolved": "https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz",
@@ -6075,8 +7388,7 @@
"fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
- "dev": true
+ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
},
"fsevents": {
"version": "2.3.3",
@@ -6095,11 +7407,31 @@
"integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==",
"dev": true
},
+ "get-intrinsic": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz",
+ "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==",
+ "requires": {
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2",
+ "has-proto": "^1.0.1",
+ "has-symbols": "^1.0.3",
+ "hasown": "^2.0.0"
+ }
+ },
"get-stream": {
"version": "8.0.1",
"resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-8.0.1.tgz",
"integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==",
"dev": true
+ },
+ "getpass": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmmirror.com/getpass/-/getpass-0.1.7.tgz",
+ "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==",
+ "requires": {
+ "assert-plus": "^1.0.0"
+ }
},
"glob": {
"version": "10.3.10",
@@ -6143,6 +7475,14 @@
"is-glob": "^4.0.3"
}
},
+ "globalize": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmmirror.com/globalize/-/globalize-1.7.0.tgz",
+ "integrity": "sha512-faR46vTIbFCeAemyuc9E6/d7Wrx9k2ae2L60UhakztFg6VuE42gENVJNuPFtt7Sdjrk9m2w8+py7Jj+JTNy59w==",
+ "requires": {
+ "cldrjs": "^0.5.4"
+ }
+ },
"globals": {
"version": "13.24.0",
"resolved": "https://registry.npmmirror.com/globals/-/globals-13.24.0.tgz",
@@ -6150,6 +7490,14 @@
"dev": true,
"requires": {
"type-fest": "^0.20.2"
+ }
+ },
+ "gopd": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmmirror.com/gopd/-/gopd-1.0.1.tgz",
+ "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
+ "requires": {
+ "get-intrinsic": "^1.1.3"
}
},
"graphemer": {
@@ -6164,6 +7512,24 @@
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true
},
+ "has-property-descriptors": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
+ "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==",
+ "requires": {
+ "es-define-property": "^1.0.0"
+ }
+ },
+ "has-proto": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/has-proto/-/has-proto-1.0.3.tgz",
+ "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q=="
+ },
+ "has-symbols": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.0.3.tgz",
+ "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A=="
+ },
"hasown": {
"version": "2.0.2",
"resolved": "https://registry.npmmirror.com/hasown/-/hasown-2.0.2.tgz",
@@ -6171,6 +7537,11 @@
"requires": {
"function-bind": "^1.1.2"
}
+ },
+ "hoek": {
+ "version": "4.3.1",
+ "resolved": "https://registry.npmmirror.com/hoek/-/hoek-4.3.1.tgz",
+ "integrity": "sha512-v7E+yIjcHECn973i0xHm4kJkEpv3C8sbYS4344WXbzYqRyiDD7rjnnKo4hsJkejQBAFdRMUGNHySeSPKSH9Rqw=="
},
"html-encoding-sniffer": {
"version": "4.0.0",
@@ -6190,6 +7561,32 @@
"agent-base": "^7.1.0",
"debug": "^4.3.4"
}
+ },
+ "http-signature": {
+ "version": "1.3.6",
+ "resolved": "https://registry.npmmirror.com/http-signature/-/http-signature-1.3.6.tgz",
+ "integrity": "sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==",
+ "requires": {
+ "assert-plus": "^1.0.0",
+ "jsprim": "^2.0.2",
+ "sshpk": "^1.14.1"
+ }
+ },
+ "httpntlm": {
+ "version": "1.8.13",
+ "resolved": "https://registry.npmmirror.com/httpntlm/-/httpntlm-1.8.13.tgz",
+ "integrity": "sha512-2F2FDPiWT4rewPzNMg3uPhNkP3NExENlUGADRUDPQvuftuUTGW98nLZtGemCIW3G40VhWZYgkIDcQFAwZ3mf2Q==",
+ "requires": {
+ "des.js": "^1.0.1",
+ "httpreq": ">=0.4.22",
+ "js-md4": "^0.3.2",
+ "underscore": "~1.12.1"
+ }
+ },
+ "httpreq": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmmirror.com/httpreq/-/httpreq-1.1.1.tgz",
+ "integrity": "sha512-uhSZLPPD2VXXOSN8Cni3kIsoFHaU2pT/nySEU/fHr/ePbqHYr0jeiQRmUKLEirC09SFPsdMoA7LU7UXMd/w0Kw=="
},
"https-proxy-agent": {
"version": "7.0.4",
@@ -6248,7 +7645,6 @@
"version": "1.0.6",
"resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
- "dev": true,
"requires": {
"once": "^1.3.0",
"wrappy": "1"
@@ -6257,14 +7653,18 @@
"inherits": {
"version": "2.0.4",
"resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
- "dev": true
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
},
"ini": {
"version": "1.3.8",
"resolved": "https://registry.npmmirror.com/ini/-/ini-1.3.8.tgz",
"integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
"dev": true
+ },
+ "invert-kv": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmmirror.com/invert-kv/-/invert-kv-3.0.1.tgz",
+ "integrity": "sha512-CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw=="
},
"is-binary-path": {
"version": "2.1.0",
@@ -6273,6 +7673,11 @@
"requires": {
"binary-extensions": "^2.0.0"
}
+ },
+ "is-buffer": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmmirror.com/is-buffer/-/is-buffer-1.1.6.tgz",
+ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w=="
},
"is-core-module": {
"version": "2.13.1",
@@ -6324,11 +7729,28 @@
"integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==",
"dev": true
},
+ "is-typedarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/is-typedarray/-/is-typedarray-1.0.0.tgz",
+ "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA=="
+ },
+ "isemail": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmmirror.com/isemail/-/isemail-3.2.0.tgz",
+ "integrity": "sha512-zKqkK+O+dGqevc93KNsbZ/TqTUFd46MwWjYOoMrjIMZ51eU7DtQG3Wmd9SQQT7i7RVnuTPEiYEWHU3MSbxC1Tg==",
+ "requires": {
+ "punycode": "2.x.x"
+ }
+ },
"isexe": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
- "dev": true
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
+ },
+ "isstream": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmmirror.com/isstream/-/isstream-0.1.2.tgz",
+ "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g=="
},
"jackspeak": {
"version": "2.3.6",
@@ -6340,10 +7762,45 @@
"@pkgjs/parseargs": "^0.11.0"
}
},
+ "joi": {
+ "version": "13.7.0",
+ "resolved": "https://registry.npmmirror.com/joi/-/joi-13.7.0.tgz",
+ "integrity": "sha512-xuY5VkHfeOYK3Hdi91ulocfuFopwgbSORmIwzcwHKESQhC7w1kD5jaVSPnqDxS2I8t3RZ9omCKAxNwXN5zG1/Q==",
+ "requires": {
+ "hoek": "5.x.x",
+ "isemail": "3.x.x",
+ "topo": "3.x.x"
+ },
+ "dependencies": {
+ "hoek": {
+ "version": "5.0.4",
+ "resolved": "https://registry.npmmirror.com/hoek/-/hoek-5.0.4.tgz",
+ "integrity": "sha512-Alr4ZQgoMlnere5FZJsIyfIjORBqZll5POhDsF4q64dPuJR6rNxXdDxtHSQq8OXRurhmx+PWYEE8bXRROY8h0w=="
+ }
+ }
+ },
"jquery": {
"version": "3.7.1",
"resolved": "https://registry.npmmirror.com/jquery/-/jquery-3.7.1.tgz",
"integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg=="
+ },
+ "jquery-xml2json": {
+ "version": "0.0.8",
+ "resolved": "https://registry.npmmirror.com/jquery-xml2json/-/jquery-xml2json-0.0.8.tgz",
+ "integrity": "sha512-PF8yh3sEeQev44ZWQ3c4Mxg1rXP8MEhOKPt5lDyaMe25SJaDI7pQvQOS5kpBPb1YC/d/0nEzUn+YewaXhAQFlw=="
+ },
+ "jquery.soap": {
+ "version": "1.7.3",
+ "resolved": "https://registry.npmmirror.com/jquery.soap/-/jquery.soap-1.7.3.tgz",
+ "integrity": "sha512-ZNMQ2Rmy8uQ/4CSJMz0IDZCYhdmT+SiAlLFMGDPvygthZfEsbj9TLPATBIjotx5STyTooRZBgmoaHbAXEAID1A==",
+ "requires": {
+ "jquery": ">=1.9.0"
+ }
+ },
+ "js-base64": {
+ "version": "3.7.7",
+ "resolved": "https://registry.npmmirror.com/js-base64/-/js-base64-3.7.7.tgz",
+ "integrity": "sha512-7rCnleh0z2CkXhH67J8K1Ytz0b2Y+yxTPL+/KOJoa20hfnVQ/3/T6W/KflYI4bRHRagNeXeU2bkNGI3v1oS/lw=="
},
"js-beautify": {
"version": "1.15.1",
@@ -6364,6 +7821,11 @@
"integrity": "sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==",
"dev": true
},
+ "js-md4": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmmirror.com/js-md4/-/js-md4-0.3.2.tgz",
+ "integrity": "sha512-/GDnfQYsltsjRswQhN9fhv3EMw2sCpUdrdxyWDOUK7eyD++r3gRhzgiQgc/x4MAv2i1iuQ4lxO5mvqM3vj4bwA=="
+ },
"js-tokens": {
"version": "8.0.3",
"resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-8.0.3.tgz",
@@ -6378,6 +7840,11 @@
"requires": {
"argparse": "^2.0.1"
}
+ },
+ "jsbn": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmmirror.com/jsbn/-/jsbn-0.1.1.tgz",
+ "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg=="
},
"jsdom": {
"version": "24.0.0",
@@ -6422,6 +7889,11 @@
"integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
"dev": true
},
+ "json-schema": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmmirror.com/json-schema/-/json-schema-0.4.0.tgz",
+ "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA=="
+ },
"json-schema-traverse": {
"version": "0.4.1",
"resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
@@ -6434,11 +7906,27 @@
"integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
"dev": true
},
+ "json-stringify-safe": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmmirror.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
+ "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA=="
+ },
"jsonc-parser": {
"version": "3.2.1",
"resolved": "https://registry.npmmirror.com/jsonc-parser/-/jsonc-parser-3.2.1.tgz",
"integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==",
"dev": true
+ },
+ "jsprim": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmmirror.com/jsprim/-/jsprim-2.0.2.tgz",
+ "integrity": "sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==",
+ "requires": {
+ "assert-plus": "1.0.0",
+ "extsprintf": "1.3.0",
+ "json-schema": "0.4.0",
+ "verror": "1.10.0"
+ }
},
"keyv": {
"version": "4.5.4",
@@ -6447,6 +7935,14 @@
"dev": true,
"requires": {
"json-buffer": "3.0.1"
+ }
+ },
+ "lcid": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmmirror.com/lcid/-/lcid-3.1.1.tgz",
+ "integrity": "sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg==",
+ "requires": {
+ "invert-kv": "^3.0.0"
}
},
"levn": {
@@ -6523,6 +8019,41 @@
"@jridgewell/sourcemap-codec": "^1.4.15"
}
},
+ "map-age-cleaner": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmmirror.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz",
+ "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==",
+ "requires": {
+ "p-defer": "^1.0.0"
+ }
+ },
+ "md5": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmmirror.com/md5/-/md5-2.3.0.tgz",
+ "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==",
+ "requires": {
+ "charenc": "0.0.2",
+ "crypt": "0.0.2",
+ "is-buffer": "~1.1.6"
+ }
+ },
+ "mem": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmmirror.com/mem/-/mem-5.1.1.tgz",
+ "integrity": "sha512-qvwipnozMohxLXG1pOqoLiZKNkC4r4qqRucSoDwXowsNGDSULiqFTRUF05vcZWnwJSG22qTsynQhxbaMtnX9gw==",
+ "requires": {
+ "map-age-cleaner": "^0.1.3",
+ "mimic-fn": "^2.1.0",
+ "p-is-promise": "^2.1.0"
+ },
+ "dependencies": {
+ "mimic-fn": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz",
+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg=="
+ }
+ }
+ },
"memoize-one": {
"version": "6.0.0",
"resolved": "https://registry.npmmirror.com/memoize-one/-/memoize-one-6.0.0.tgz",
@@ -6531,8 +8062,7 @@
"merge-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/merge-stream/-/merge-stream-2.0.0.tgz",
- "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
- "dev": true
+ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="
},
"merge2": {
"version": "1.4.1",
@@ -6567,11 +8097,15 @@
"integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==",
"dev": true
},
+ "minimalistic-assert": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmmirror.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
+ "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A=="
+ },
"minimatch": {
"version": "3.1.2",
"resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz",
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@@ -6581,6 +8115,11 @@
"resolved": "https://registry.npmmirror.com/minipass/-/minipass-7.0.4.tgz",
"integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==",
"dev": true
+ },
+ "mkdirp": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz",
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="
},
"mlly": {
"version": "1.6.1",
@@ -6604,6 +8143,11 @@
"resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz",
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
},
+ "nan": {
+ "version": "2.20.0",
+ "resolved": "https://registry.npmmirror.com/nan/-/nan-2.20.0.tgz",
+ "integrity": "sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw=="
+ },
"nanoid": {
"version": "3.3.7",
"resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.7.tgz",
@@ -6614,6 +8158,23 @@
"resolved": "https://registry.npmmirror.com/natural-compare/-/natural-compare-1.4.0.tgz",
"integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
"dev": true
+ },
+ "node-expat": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmmirror.com/node-expat/-/node-expat-2.4.1.tgz",
+ "integrity": "sha512-uWgvQLgo883NKIL+66oJsK9ysKK3ej0YjVCPBZzO/7wMAuH68/Yb7+JwPWNaVq0yPaxrb48AoEXfYEc8gsmFbg==",
+ "requires": {
+ "bindings": "^1.5.0",
+ "nan": "^2.19.0"
+ }
+ },
+ "node-rsa": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmmirror.com/node-rsa/-/node-rsa-1.1.1.tgz",
+ "integrity": "sha512-Jd4cvbJMryN21r5HgxQOpMEqv+ooke/korixNNK3mGqfGJmy0M77WDDzo/05969+OkMy3XW1UuZsSmW9KQm7Fw==",
+ "requires": {
+ "asn1": "^0.2.4"
+ }
},
"nopt": {
"version": "7.2.0",
@@ -6666,11 +8227,15 @@
"integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==",
"dev": true
},
+ "object-inspect": {
+ "version": "1.13.2",
+ "resolved": "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.13.2.tgz",
+ "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g=="
+ },
"once": {
"version": "1.4.0",
"resolved": "https://registry.npmmirror.com/once/-/once-1.4.0.tgz",
"integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
- "dev": true,
"requires": {
"wrappy": "1"
}
@@ -6697,6 +8262,93 @@
"prelude-ls": "^1.2.1",
"type-check": "^0.4.0"
}
+ },
+ "os-locale": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmmirror.com/os-locale/-/os-locale-5.0.0.tgz",
+ "integrity": "sha512-tqZcNEDAIZKBEPnHPlVDvKrp7NzgLi7jRmhKiUoa2NUmhl13FtkAGLUVR+ZsYvApBQdBfYm43A4tXXQ4IrYLBA==",
+ "requires": {
+ "execa": "^4.0.0",
+ "lcid": "^3.0.0",
+ "mem": "^5.0.0"
+ },
+ "dependencies": {
+ "execa": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmmirror.com/execa/-/execa-4.1.0.tgz",
+ "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==",
+ "requires": {
+ "cross-spawn": "^7.0.0",
+ "get-stream": "^5.0.0",
+ "human-signals": "^1.1.1",
+ "is-stream": "^2.0.0",
+ "merge-stream": "^2.0.0",
+ "npm-run-path": "^4.0.0",
+ "onetime": "^5.1.0",
+ "signal-exit": "^3.0.2",
+ "strip-final-newline": "^2.0.0"
+ }
+ },
+ "get-stream": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-5.2.0.tgz",
+ "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
+ "requires": {
+ "pump": "^3.0.0"
+ }
+ },
+ "human-signals": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmmirror.com/human-signals/-/human-signals-1.1.1.tgz",
+ "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw=="
+ },
+ "is-stream": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmmirror.com/is-stream/-/is-stream-2.0.1.tgz",
+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg=="
+ },
+ "mimic-fn": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz",
+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg=="
+ },
+ "npm-run-path": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmmirror.com/npm-run-path/-/npm-run-path-4.0.1.tgz",
+ "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
+ "requires": {
+ "path-key": "^3.0.0"
+ }
+ },
+ "onetime": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmmirror.com/onetime/-/onetime-5.1.2.tgz",
+ "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
+ "requires": {
+ "mimic-fn": "^2.1.0"
+ }
+ },
+ "signal-exit": {
+ "version": "3.0.7",
+ "resolved": "https://registry.npmmirror.com/signal-exit/-/signal-exit-3.0.7.tgz",
+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
+ },
+ "strip-final-newline": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmmirror.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
+ "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA=="
+ }
+ }
+ },
+ "p-defer": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/p-defer/-/p-defer-1.0.0.tgz",
+ "integrity": "sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw=="
+ },
+ "p-is-promise": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmmirror.com/p-is-promise/-/p-is-promise-2.1.0.tgz",
+ "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg=="
},
"p-limit": {
"version": "3.1.0",
@@ -6743,14 +8395,12 @@
"path-is-absolute": {
"version": "1.0.1",
"resolved": "https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
- "dev": true
+ "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg=="
},
"path-key": {
"version": "3.1.1",
"resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz",
- "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
- "dev": true
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="
},
"path-parse": {
"version": "1.0.7",
@@ -6778,6 +8428,11 @@
"resolved": "https://registry.npmmirror.com/pathval/-/pathval-1.1.1.tgz",
"integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==",
"dev": true
+ },
+ "performance-now": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmmirror.com/performance-now/-/performance-now-2.1.0.tgz",
+ "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow=="
},
"picocolors": {
"version": "1.0.0",
@@ -6891,20 +8546,34 @@
"psl": {
"version": "1.9.0",
"resolved": "https://registry.npmmirror.com/psl/-/psl-1.9.0.tgz",
- "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==",
- "dev": true
+ "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag=="
+ },
+ "pump": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/pump/-/pump-3.0.0.tgz",
+ "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
+ "requires": {
+ "end-of-stream": "^1.1.0",
+ "once": "^1.3.1"
+ }
},
"punycode": {
"version": "2.3.1",
"resolved": "https://registry.npmmirror.com/punycode/-/punycode-2.3.1.tgz",
- "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
- "dev": true
+ "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg=="
+ },
+ "qs": {
+ "version": "6.10.4",
+ "resolved": "https://registry.npmmirror.com/qs/-/qs-6.10.4.tgz",
+ "integrity": "sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==",
+ "requires": {
+ "side-channel": "^1.0.4"
+ }
},
"querystringify": {
"version": "2.2.0",
"resolved": "https://registry.npmmirror.com/querystringify/-/querystringify-2.2.0.tgz",
- "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==",
- "dev": true
+ "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ=="
},
"queue-microtask": {
"version": "1.2.3",
@@ -6928,8 +8597,7 @@
"requires-port": {
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz",
- "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==",
- "dev": true
+ "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ=="
},
"resolve": {
"version": "1.22.8",
@@ -7014,11 +8682,15 @@
"queue-microtask": "^1.2.2"
}
},
+ "safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
+ },
"safer-buffer": {
"version": "2.1.2",
"resolved": "https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
- "dev": true
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
},
"sass": {
"version": "1.76.0",
@@ -7031,6 +8703,11 @@
"source-map-js": ">=0.6.2 <2.0.0"
}
},
+ "sax": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmmirror.com/sax/-/sax-1.4.1.tgz",
+ "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg=="
+ },
"saxes": {
"version": "6.0.0",
"resolved": "https://registry.npmmirror.com/saxes/-/saxes-6.0.0.tgz",
@@ -7038,6 +8715,32 @@
"dev": true,
"requires": {
"xmlchars": "^2.2.0"
+ }
+ },
+ "selectn": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmmirror.com/selectn/-/selectn-1.1.2.tgz",
+ "integrity": "sha512-AaQlR5br4jWANaF5p5J1ctpsOKwFE5ljWK8ZUSrc4u4ZwcmFLyiowTMt7UjfzQN2/aXF3xnuSVnV4c3Q9tBDqQ==",
+ "requires": {
+ "brackets2dots": "^1.1.0",
+ "curry2": "^1.0.0",
+ "debug": "^2.5.2",
+ "dotsplit.js": "^1.0.3"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "requires": {
+ "ms": "2.0.0"
+ }
+ },
+ "ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
+ }
}
},
"semver": {
@@ -7060,11 +8763,23 @@
}
}
},
+ "set-function-length": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmmirror.com/set-function-length/-/set-function-length-1.2.2.tgz",
+ "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==",
+ "requires": {
+ "define-data-property": "^1.1.4",
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2",
+ "get-intrinsic": "^1.2.4",
+ "gopd": "^1.0.1",
+ "has-property-descriptors": "^1.0.2"
+ }
+ },
"shebang-command": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz",
"integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
- "dev": true,
"requires": {
"shebang-regex": "^3.0.0"
}
@@ -7072,8 +8787,18 @@
"shebang-regex": {
"version": "3.0.0",
"resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz",
- "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
- "dev": true
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="
+ },
+ "side-channel": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmmirror.com/side-channel/-/side-channel-1.0.6.tgz",
+ "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==",
+ "requires": {
+ "call-bind": "^1.0.7",
+ "es-errors": "^1.3.0",
+ "get-intrinsic": "^1.2.4",
+ "object-inspect": "^1.13.1"
+ }
},
"siginfo": {
"version": "2.0.0",
@@ -7091,6 +8816,27 @@
"version": "1.2.0",
"resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.0.tgz",
"integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg=="
+ },
+ "sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g=="
+ },
+ "sshpk": {
+ "version": "1.18.0",
+ "resolved": "https://registry.npmmirror.com/sshpk/-/sshpk-1.18.0.tgz",
+ "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==",
+ "requires": {
+ "asn1": "~0.2.3",
+ "assert-plus": "^1.0.0",
+ "bcrypt-pbkdf": "^1.0.0",
+ "dashdash": "^1.12.0",
+ "ecc-jsbn": "~0.1.1",
+ "getpass": "^0.1.1",
+ "jsbn": "~0.1.0",
+ "safer-buffer": "^2.0.2",
+ "tweetnacl": "~0.14.0"
+ }
},
"stackback": {
"version": "0.0.2",
@@ -7190,6 +8936,56 @@
"js-tokens": "^8.0.2"
}
},
+ "strong-globalize": {
+ "version": "6.0.6",
+ "resolved": "https://registry.npmmirror.com/strong-globalize/-/strong-globalize-6.0.6.tgz",
+ "integrity": "sha512-+mN0wTXBg9rLiKBk7jsyfXFWsg08q160XQcmJ3gNxSQ8wrC668dzR8JUp/wcK3NZ2eQ5h5tvc8O6Y+FC0D61lw==",
+ "requires": {
+ "accept-language": "^3.0.18",
+ "debug": "^4.2.0",
+ "globalize": "^1.6.0",
+ "lodash": "^4.17.20",
+ "md5": "^2.3.0",
+ "mkdirp": "^1.0.4",
+ "os-locale": "^5.0.0",
+ "yamljs": "^0.3.0"
+ }
+ },
+ "strong-soap": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmmirror.com/strong-soap/-/strong-soap-4.1.3.tgz",
+ "integrity": "sha512-Ts19vzoumipPPR3iWlmd2OVERAxlLdz6LXayDPBWyh9OuKyRw1hNrsaaGWzhlY2JY+5kq/j7mq2MpEVSYsk10w==",
+ "requires": {
+ "@cypress/request": "^3.0.1",
+ "compress": "^0.99.0",
+ "debug": "^4.3.6",
+ "httpntlm": "^1.8.13",
+ "lodash": "^4.17.21",
+ "node-rsa": "^1.1.1",
+ "sax": "^1.4.1",
+ "selectn": "^1.1.2",
+ "strong-globalize": "^6.0.6",
+ "uuid": "^10.0.0",
+ "xml-crypto": "^3.2.0",
+ "xmlbuilder": "^10.1.1"
+ },
+ "dependencies": {
+ "xml-crypto": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmmirror.com/xml-crypto/-/xml-crypto-3.2.0.tgz",
+ "integrity": "sha512-qVurBUOQrmvlgmZqIVBqmb06TD2a/PpEUfFPgD7BuBfjmoH4zgkqaWSIJrnymlCvM2GGt9x+XtJFA+ttoAufqg==",
+ "requires": {
+ "@xmldom/xmldom": "^0.8.8",
+ "xpath": "0.0.32"
+ }
+ },
+ "xpath": {
+ "version": "0.0.32",
+ "resolved": "https://registry.npmmirror.com/xpath/-/xpath-0.0.32.tgz",
+ "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw=="
+ }
+ }
+ },
"supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz",
@@ -7252,11 +9048,25 @@
"is-number": "^7.0.0"
}
},
+ "topo": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmmirror.com/topo/-/topo-3.0.3.tgz",
+ "integrity": "sha512-IgpPtvD4kjrJ7CRA3ov2FhWQADwv+Tdqbsf1ZnPUSAtCJ9e1Z44MmoSGDXGk4IppoZA7jd/QRkNddlLJWlUZsQ==",
+ "requires": {
+ "hoek": "6.x.x"
+ },
+ "dependencies": {
+ "hoek": {
+ "version": "6.1.3",
+ "resolved": "https://registry.npmmirror.com/hoek/-/hoek-6.1.3.tgz",
+ "integrity": "sha512-YXXAAhmF9zpQbC7LEcREFtXfGq5K1fmd+4PHkBq8NUqmzW3G+Dq10bI/i0KucLRwss3YYFQ0fSfoxBZYiGUqtQ=="
+ }
+ }
+ },
"tough-cookie": {
"version": "4.1.3",
"resolved": "https://registry.npmmirror.com/tough-cookie/-/tough-cookie-4.1.3.tgz",
"integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==",
- "dev": true,
"requires": {
"psl": "^1.1.33",
"punycode": "^2.1.1",
@@ -7278,6 +9088,19 @@
"resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.6.2.tgz",
"integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==",
"dev": true
+ },
+ "tunnel-agent": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmmirror.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
+ "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==",
+ "requires": {
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "tweetnacl": {
+ "version": "0.14.5",
+ "resolved": "https://registry.npmmirror.com/tweetnacl/-/tweetnacl-0.14.5.tgz",
+ "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA=="
},
"type-check": {
"version": "0.4.0",
@@ -7306,11 +9129,15 @@
"integrity": "sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==",
"dev": true
},
+ "underscore": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmmirror.com/underscore/-/underscore-1.12.1.tgz",
+ "integrity": "sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw=="
+ },
"universalify": {
"version": "0.2.0",
"resolved": "https://registry.npmmirror.com/universalify/-/universalify-0.2.0.tgz",
- "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==",
- "dev": true
+ "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg=="
},
"unplugin": {
"version": "1.10.0",
@@ -7376,7 +9203,6 @@
"version": "1.5.10",
"resolved": "https://registry.npmmirror.com/url-parse/-/url-parse-1.5.10.tgz",
"integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==",
- "dev": true,
"requires": {
"querystringify": "^2.1.1",
"requires-port": "^1.0.0"
@@ -7387,6 +9213,21 @@
"resolved": "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz",
"integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
"dev": true
+ },
+ "uuid": {
+ "version": "10.0.0",
+ "resolved": "https://registry.npmmirror.com/uuid/-/uuid-10.0.0.tgz",
+ "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ=="
+ },
+ "verror": {
+ "version": "1.10.0",
+ "resolved": "https://registry.npmmirror.com/verror/-/verror-1.10.0.tgz",
+ "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==",
+ "requires": {
+ "assert-plus": "^1.0.0",
+ "core-util-is": "1.0.2",
+ "extsprintf": "^1.2.0"
+ }
},
"vite": {
"version": "5.2.6",
@@ -7544,7 +9385,6 @@
"version": "2.0.2",
"resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz",
"integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
- "dev": true,
"requires": {
"isexe": "^2.0.0"
}
@@ -7626,8 +9466,7 @@
"wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
- "dev": true
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
},
"ws": {
"version": "8.16.0",
@@ -7642,6 +9481,21 @@
"integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==",
"dev": true
},
+ "xml2json": {
+ "version": "0.12.0",
+ "resolved": "https://registry.npmmirror.com/xml2json/-/xml2json-0.12.0.tgz",
+ "integrity": "sha512-EPJHRWJnJUYbJlzR4pBhZODwWdi2IaYGtDdteJi0JpZ4OD31IplWALuit8r73dJuM4iHZdDVKY1tLqY2UICejg==",
+ "requires": {
+ "hoek": "^4.2.1",
+ "joi": "^13.1.2",
+ "node-expat": "^2.3.18"
+ }
+ },
+ "xmlbuilder": {
+ "version": "10.1.1",
+ "resolved": "https://registry.npmmirror.com/xmlbuilder/-/xmlbuilder-10.1.1.tgz",
+ "integrity": "sha512-OyzrcFLL/nb6fMGHbiRDuPup9ljBycsdCypwuyg5AAHvyWzGfChJpCXMG88AGTIMFhGZ9RccFN1e6lhg3hkwKg=="
+ },
"xmlchars": {
"version": "2.2.0",
"resolved": "https://registry.npmmirror.com/xmlchars/-/xmlchars-2.2.0.tgz",
@@ -7654,6 +9508,38 @@
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
"dev": true
},
+ "yamljs": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmmirror.com/yamljs/-/yamljs-0.3.0.tgz",
+ "integrity": "sha512-C/FsVVhht4iPQYXOInoxUM/1ELSf9EsgKH34FofQOp6hwCPrW4vG4w5++TED3xRUo8gD7l0P1J1dLlDYzODsTQ==",
+ "requires": {
+ "argparse": "^1.0.7",
+ "glob": "^7.0.5"
+ },
+ "dependencies": {
+ "argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmmirror.com/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
+ "requires": {
+ "sprintf-js": "~1.0.2"
+ }
+ },
+ "glob": {
+ "version": "7.2.3",
+ "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz",
+ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.1.1",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ }
+ }
+ },
"yocto-queue": {
"version": "0.1.0",
"resolved": "https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz",
diff --git a/package.json b/package.json
index b002e29..c9aa419 100644
--- a/package.json
+++ b/package.json
@@ -5,7 +5,9 @@
"type": "module",
"scripts": {
"dev": "vite",
+ "dev:jingan": "vite --mode development.jingan",
"build": "vite build",
+ "build:jingan": "vite build --mode production.jingan",
"preview": "vite preview",
"test:unit": "vitest",
"lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs --fix --ignore-path .gitignore",
@@ -24,11 +26,16 @@
"echarts": "^5.5.0",
"element-plus": "^2.6.2",
"jquery": "^3.7.1",
+ "jquery-xml2json": "^0.0.8",
+ "jquery.soap": "^1.7.3",
+ "js-base64": "^3.7.7",
"moment": "^2.30.1",
"pinia": "^2.1.7",
+ "strong-soap": "^4.1.3",
"unplugin-vue-components": "^0.26.0",
"vue": "^3.4.21",
- "vue-router": "^4.3.0"
+ "vue-router": "^4.3.0",
+ "xml2json": "^0.12.0"
},
"devDependencies": {
"@rushstack/eslint-patch": "^1.3.3",
diff --git a/public/favicon.ico b/public/favicon.ico
index df36fcf..43aa390 100644
--- a/public/favicon.ico
+++ b/public/favicon.ico
Binary files differ
diff --git a/src/api/index.js b/src/api/index.js
index ed45795..ef5ed5c 100644
--- a/src/api/index.js
+++ b/src/api/index.js
@@ -1,10 +1,13 @@
import axios from 'axios';
import { ElMessage } from 'element-plus';
-const debug = false;
+const debug = true;
-// let ip1 = 'http://114.215.109.124:8805/';
let ip1 = 'http://47.100.191.150:9029/';
+// console.log(import.meta.env);
+if (import.meta.env.VITE_DATA_MODE == 'jingan') {
+ ip1 = 'http://114.215.109.124:8805/';
+}
if (debug) {
ip1 = 'http://192.168.0.138:8084/';
@@ -21,17 +24,21 @@
i.interceptors.request.use(
function (config) {
// 鍦ㄥ彂閫佽姹備箣鍓嶅仛浜涗粈涔�
- console.log('==>璇锋眰寮�濮�');
- console.log(`${config.baseURL}${config.url}`);
- if (config.data) {
- console.log('==>璇锋眰鏁版嵁', config.data);
+ if (import.meta.env.DEV) {
+ console.log('==>璇锋眰寮�濮�');
+ console.log(`${config.baseURL}${config.url}`);
+ if (config.data) {
+ console.log('==>璇锋眰鏁版嵁', config.data);
+ }
}
return config;
},
function (error) {
// 瀵硅姹傞敊璇仛浜涗粈涔�
- console.log('==>璇锋眰寮�濮�');
- console.log(error);
+ if (import.meta.env.DEV) {
+ console.log('==>璇锋眰寮�濮�');
+ console.log(error);
+ }
ElMessage({
message: error,
type: 'error'
@@ -45,8 +52,10 @@
function (response) {
// 2xx 鑼冨洿鍐呯殑鐘舵�佺爜閮戒細瑙﹀彂璇ュ嚱鏁般��
// 瀵瑰搷搴旀暟鎹仛鐐逛粈涔�
- console.log(response);
- console.log('==>璇锋眰缁撴潫');
+ if (import.meta.env.DEV) {
+ console.log(response);
+ console.log('==>璇锋眰缁撴潫');
+ }
if (response.status == 200) {
if (
response.data.success != undefined &&
@@ -71,8 +80,10 @@
function (error) {
// 瓒呭嚭 2xx 鑼冨洿鐨勭姸鎬佺爜閮戒細瑙﹀彂璇ュ嚱鏁般��
// 瀵瑰搷搴旈敊璇仛鐐逛粈涔�
- console.log(error);
- console.log('==>璇锋眰缁撴潫');
+ if (import.meta.env.DEV) {
+ console.log(error);
+ console.log('==>璇锋眰缁撴潫');
+ }
ElMessage({
message: error,
type: 'error'
diff --git a/src/api/missionApi.js b/src/api/missionApi.js
index af08c4d..764199a 100644
--- a/src/api/missionApi.js
+++ b/src/api/missionApi.js
@@ -1,4 +1,5 @@
import { $http } from './index';
+import { Base64 } from 'js-base64';
/**
*
@@ -17,5 +18,22 @@
deleteMission(missionCode) {
let params = `missionCode=${missionCode}`;
return $http.post(`air/mission/delete?${params}`).then((res) => res.data);
+ },
+
+ downloadReport(missionCode) {
+ let params = `missionCode=${missionCode}`;
+ return $http
+ .get(`air/mission/report?${params}`, { responseType: 'blob' })
+ .then((res) => {
+ const name = Base64.decode(res.headers.get('fileName'));
+ const url = window.URL.createObjectURL(res.data);
+ const link = document.createElement('a');
+ link.href = url;
+ link.setAttribute('download', name);
+ document.body.appendChild(link);
+ link.click();
+ document.body.removeChild(link);
+ window.URL.revokeObjectURL(url);
+ });
}
};
diff --git a/src/assets/common-style.css b/src/assets/common-style.css
index f3d4346..e2de279 100644
--- a/src/assets/common-style.css
+++ b/src/assets/common-style.css
@@ -181,7 +181,7 @@
}
.time {
- color: #ffffff9d;
+ color: #ffffffde;
font-size: 12px;
}
@@ -415,7 +415,7 @@
}
.custom-info {
- border: solid 1px silver;
+ border: solid 1px rgb(255, 255, 255);
}
div.info-top {
@@ -440,6 +440,7 @@
div.info-middle {
padding: 0px 12px 4px 0px;
/* line-height: 20px; */
+ color: #ffffffde;
}
div.refresh-btn {
@@ -527,4 +528,10 @@
color: var(--font-color);
font-size: 16px;
padding: 0px 4px;
+}
+
+.text-clz {
+ /* background-color: aliceblue; */
+ font-size: 14px;
+ line-height: 16px;
}
\ No newline at end of file
diff --git a/src/components.d.ts b/src/components.d.ts
index c720d3b..216f2b2 100644
--- a/src/components.d.ts
+++ b/src/components.d.ts
@@ -11,6 +11,7 @@
BaseMap: typeof import('./components/map/BaseMap.vue')['default']
CardButton: typeof import('./components/CardButton.vue')['default']
CardDialog: typeof import('./components/CardDialog.vue')['default']
+ copy: typeof import('./components/search/OptionType copy.vue')['default']
CoreHeader: typeof import('./components/core/CoreHeader.vue')['default']
CoreMenu: typeof import('./components/core/CoreMenu.vue')['default']
DataSummary: typeof import('./components/monitor/DataSummary.vue')['default']
@@ -57,11 +58,13 @@
MissionImport: typeof import('./components/mission/MissionImport.vue')['default']
MissionManage: typeof import('./components/mission/MissionManage.vue')['default']
OptionDevice: typeof import('./components/search/OptionDevice.vue')['default']
+ 'OptionDevice copy': typeof import('./components/search/OptionDevice copy.vue')['default']
OptionLocation: typeof import('./components/search/OptionLocation.vue')['default']
OptionLocation2: typeof import('./components/search/OptionLocation2.vue')['default']
OptionMission: typeof import('./components/search/OptionMission.vue')['default']
OptionTime: typeof import('./components/search/OptionTime.vue')['default']
OptionType: typeof import('./components/search/OptionType.vue')['default']
+ 'OptionType copy': typeof import('./components/search/OptionType copy.vue')['default']
ProgressLineChart: typeof import('./components/chart/ProgressLineChart.vue')['default']
RealTimeLineChart: typeof import('./components/chart/RealTimeLineChart.vue')['default']
RouterLink: typeof import('vue-router')['RouterLink']
diff --git a/src/components/SliderBar.vue b/src/components/SliderBar.vue
index 6acf1bd..9dfb8c5 100644
--- a/src/components/SliderBar.vue
+++ b/src/components/SliderBar.vue
@@ -1,6 +1,7 @@
<template>
<el-row justify="center" align="middle" class="wrap">
- <el-form-item label="鏁版嵁閲�">
+ <!-- <el-col :span="6"> -->
+ <el-form-item label="灞曠ず鏁版嵁閲�">
<el-select
v-model="pageSize"
@change="handleSizeChange"
@@ -12,9 +13,12 @@
<el-option label="500" :value="500" />
</el-select>
</el-form-item>
+ <!-- </el-col> -->
+ <!-- <el-col :span="18"> -->
<div class="slider-wrap m-l-16">
<el-slider :model-value="progress" :marks="marks" @input="handleInput" />
</div>
+ <!-- </el-col> -->
</el-row>
</template>
<script>
@@ -62,6 +66,10 @@
height: 60px;
}
.slider-wrap {
- min-width: 400px;
+ /* background-color: aliceblue; */
+ min-width: 290px;
+}
+.el-form-item {
+ margin-bottom: 0px;
}
</style>
diff --git a/src/components/animation/HistoricalTrajectory.vue b/src/components/animation/HistoricalTrajectory.vue
index 4aaea2d..37d23be 100644
--- a/src/components/animation/HistoricalTrajectory.vue
+++ b/src/components/animation/HistoricalTrajectory.vue
@@ -2,28 +2,28 @@
<BaseCard size="middle-s" direction="up">
<template #content>
<el-row align="middle" style="gap: 6px">
- <div>鍘嗗彶杞ㄨ抗</div>
- <div class="map-btn-group">
- <font-awesome-icon
- :icon="btnStop.icon"
- :class="'btn-search m-r-2 ' + btnStop.clz"
- @click="handleStop"
- />
- <font-awesome-icon
- :icon="btnPlay.icon"
- class="btn-search"
- @click="handlePlayOrPause"
- />
- </div>
- <div class="label-date margin-left-2">
- <span class="label-date-title">鍊嶉��</span>
+ <el-form-item label="鍘嗗彶杞ㄨ抗">
+ <div class="map-btn-group">
+ <font-awesome-icon
+ :icon="btnStop.icon"
+ :class="'btn-search m-r-2 ' + btnStop.clz"
+ @click="handleStop"
+ />
+ <font-awesome-icon
+ :icon="btnPlay.icon"
+ class="btn-search"
+ @click="handlePlayOrPause"
+ />
+ </div>
+ </el-form-item>
+ <el-form-item label="鍊嶉��">
<el-select v-model="speed" size="small" class="w-60">
<el-option label="1.0X" :value="1" />
<el-option label="4.0X" :value="4" />
<el-option label="8.0X" :value="8" />
<el-option label="16X" :value="16" />
</el-select>
- </div>
+ </el-form-item>
</el-row>
</template>
</BaseCard>
@@ -140,4 +140,8 @@
.btn-disable {
color: gray;
}
+
+.el-form-item {
+ margin-bottom: 0px;
+}
</style>
diff --git a/src/components/map/MapScene.vue b/src/components/map/MapScene.vue
index b230c8c..c3cb97a 100644
--- a/src/components/map/MapScene.vue
+++ b/src/components/map/MapScene.vue
@@ -28,6 +28,7 @@
v-for="item in options"
:key="item.label"
:value="item.value"
+ :disabled="item.disabled"
>{{ item.label }}</el-checkbox
>
</div>
diff --git a/src/components/map/MapToolbox.vue b/src/components/map/MapToolbox.vue
index 0b0db4d..39f98c7 100644
--- a/src/components/map/MapToolbox.vue
+++ b/src/components/map/MapToolbox.vue
@@ -72,25 +72,25 @@
this.value = !this.value;
toolbox.toggleCoorPicking(this.value);
}
- },
- {
- icon: 'fa fa-compass',
- label: '鏁版嵁鏍囪',
- value: true,
- click: function () {
- this.value = !this.value;
- // todo 鏁版嵁鏍囪
- }
- },
- {
- icon: 'fa fa-compass',
- label: '鏁版嵁寮规',
- value: true,
- click: function () {
- this.value = !this.value;
- // todo 鏁版嵁寮规
- }
}
+ // {
+ // icon: 'fa fa-compass',
+ // label: '鏁版嵁鏍囪',
+ // value: true,
+ // click: function () {
+ // this.value = !this.value;
+ // // todo 鏁版嵁鏍囪
+ // }
+ // },
+ // {
+ // icon: 'fa fa-compass',
+ // label: '鏁版嵁寮规',
+ // value: true,
+ // click: function () {
+ // this.value = !this.value;
+ // // todo 鏁版嵁寮规
+ // }
+ // }
]
};
},
diff --git a/src/components/mission/MIssionCreate.vue b/src/components/mission/MIssionCreate.vue
index 1966572..11ddbb4 100644
--- a/src/components/mission/MIssionCreate.vue
+++ b/src/components/mission/MIssionCreate.vue
@@ -33,14 +33,6 @@
/>
</el-form-item>
<OptionType v-model="formObj.deviceType"></OptionType>
- <!-- <el-form-item label="璁惧缂栧彿" prop="acountname">
- <el-input
- size="small"
- clearable
- v-model="formObj.deviceCode"
- placeholder="璁惧缂栧彿"
- />
- </el-form-item> -->
<OptionDevice
:type="formObj.deviceType"
v-model="formObj.deviceCode"
@@ -60,6 +52,7 @@
</CardDialog>
</template>
<script setup>
+import moment from 'moment';
import { ref, reactive, computed } from 'vue';
import missionApi from '@/api/missionApi';
import { useFormConfirm } from '@/composables/formConfirm';
@@ -87,8 +80,23 @@
timeArray: [
{
required: true,
- message: '鏃堕棿涓嶈兘涓虹┖',
- trigger: 'change'
+ // message: '鏃堕棿涓嶈兘涓虹┖',
+ trigger: 'change',
+ validator: (rule, value, callback) => {
+ console.log(rule);
+ console.log(value);
+ if (value == null) {
+ callback(new Error('鏃堕棿涓嶈兘涓虹┖'));
+ } else {
+ const st = moment(value[0]);
+ const et = moment(value[1]);
+ const range = et.diff(st, 'second');
+ if (range > 12 * 60 * 60) {
+ callback(new Error('浠诲姟鏃堕暱鏈�澶氫负12灏忔椂'));
+ }
+ }
+ callback();
+ }
}
]
});
@@ -121,4 +129,20 @@
}
}
});
+
+if (import.meta.env.VITE_DATA_MODE == 'jingan') {
+ formObj.value.location = {
+ pCode: '31',
+ pName: '涓婃捣甯�',
+ cCode: '3100',
+ cName: '涓婃捣甯�',
+ dCode: '310106',
+ dName: '闈欏畨鍖�'
+ };
+}
</script>
+<style scoped>
+/* .el-form-item {
+ margin-bottom: 0px;
+} */
+</style>
diff --git a/src/components/mission/MissionManage.vue b/src/components/mission/MissionManage.vue
index 5884383..7e67122 100644
--- a/src/components/mission/MissionManage.vue
+++ b/src/components/mission/MissionManage.vue
@@ -41,7 +41,7 @@
align="center"
:formatter="timeFormatter"
/>
- <el-table-column label="绠$悊" width="70" align="center">
+ <el-table-column label="绠$悊" width="140" align="center">
<template #default="{ row }">
<el-button
type="primary"
@@ -49,6 +49,14 @@
class="el-button-custom"
@click="deleteMission(row)"
>鍒犻櫎</el-button
+ >
+ <el-button
+ :loading="row.downloadLoading"
+ type="primary"
+ size="small"
+ class="el-button-custom"
+ @click="downloadReport(row)"
+ >鎶ュ憡</el-button
>
</template>
</el-table-column>
@@ -61,16 +69,16 @@
</el-button> -->
<MissionCreate></MissionCreate>
</div>
- <div>
+ <!-- <div>
<el-button type="primary" class="el-button-custom">
鏁版嵁瀵煎叆
</el-button>
- </div>
- <div>
+ </div> -->
+ <!-- <div>
<el-button type="primary" class="el-button-custom">
涓嬭浇妯℃澘
</el-button>
- </div>
+ </div> -->
</el-col>
</el-row>
</CardDialog>
@@ -84,6 +92,7 @@
</template>
<script>
import moment from 'moment';
+import missionApi from '@/api/missionApi';
import { mapStores } from 'pinia';
import { useMissionStore } from '@/stores/mission';
import { useFetchData } from '@/composables/fetchData';
@@ -111,6 +120,12 @@
};
this.msgBoxVisible = true;
},
+ downloadReport(row) {
+ row.downloadLoading = true;
+ missionApi
+ .downloadReport(row.missionCode)
+ .finally(() => (row.downloadLoading = false));
+ },
timeFormatter(row, col, cellValue, index) {
return moment(cellValue).format('YYYY-MM-DD HH:mm:ss');
}
diff --git a/src/components/monitor/DataSummary.vue b/src/components/monitor/DataSummary.vue
index 4d4b9e2..39a61f0 100644
--- a/src/components/monitor/DataSummary.vue
+++ b/src/components/monitor/DataSummary.vue
@@ -70,12 +70,14 @@
total += v.factorData;
count++;
});
+ let _avg = count == 0 ? 0 : Math.round((total / count) * 100) / 100;
+ if (isNaN(_avg)) _avg = '-';
list.push({
factorId: f.factorId,
factor: factorName[f.factorName],
min,
max,
- avg: count == 0 ? 0 : Math.round((total / count) * 100) / 100
+ avg: _avg
});
}
}
diff --git a/src/components/monitor/DataTable.vue b/src/components/monitor/DataTable.vue
index 2681130..29619e0 100644
--- a/src/components/monitor/DataTable.vue
+++ b/src/components/monitor/DataTable.vue
@@ -65,6 +65,7 @@
import { FactorDatas } from '@/model/FactorDatas';
import { checkboxOptions } from '@/constant/checkbox-options';
import { TYPE0 } from '@/constant/device-type';
+import { windDir } from '@/constant/wind-dir';
export default {
props: {
@@ -112,13 +113,18 @@
if (Object.hasOwnProperty.call(this.factorDatas.factor, key)) {
const f = this.factorDatas.factor[key];
f.datas.forEach((v, i) => {
+ const name = f.factorName;
+ let value = v.factorData;
+ if (name == 'WIND_DIRECTION') {
+ value = windDir(value);
+ }
if (list.length <= i) {
list.push({
index: i,
- [f.factorName]: v.factorData
+ [name]: value
});
} else {
- list[i][f.factorName] = v.factorData;
+ list[i][name] = value;
}
});
}
@@ -164,7 +170,8 @@
.el-table {
--el-table-bg-color: transparent;
--el-table-row-hover-bg-color: #23dad0a2;
- --el-table-current-row-bg-color: #7dff5d96;
+ --el-table-current-row-bg-color: #23dad0a2;
+ /* --el-table-current-row-bg-color: #7dff5d96; */
--el-table-text-color: var(--font-color);
}
diff --git a/src/components/monitor/FactorCheckbox.vue b/src/components/monitor/FactorCheckbox.vue
index 7e236e3..093920a 100644
--- a/src/components/monitor/FactorCheckbox.vue
+++ b/src/components/monitor/FactorCheckbox.vue
@@ -63,9 +63,7 @@
},
emits: ['update:modelValue'],
data() {
- return {
- checkbox: [checkboxOptions(TYPE0)[0].value]
- };
+ return {};
},
computed: {
options() {
@@ -81,7 +79,7 @@
const e = array[i];
res.push(e.value);
}
- this.$emit('update:modelValue', res);
+ this.handleChange(res);
}
}
},
@@ -95,10 +93,23 @@
<style scoped>
.el-checkbox {
--el-checkbox-text-color: white;
+ --main-color: #23dad1;
+ --el-checkbox-checked-text-color: var(--main-color);
+ --el-checkbox-checked-input-border-color: var(--main-color);
+ --el-checkbox-checked-bg-color: var(--main-color);
+ --el-checkbox-input-border-color-hover: var(--main-color);
+
+ --el-checkbox-disabled-checked-input-fill: var(--main-color);
+ --el-checkbox-disabled-checked-input-border-color: var(--main-color);
+ --el-checkbox-disabled-checked-icon-color: white;
margin-right: 6px;
/* height: initial; */
}
+.el-checkbox__input.is-disabled + span.el-checkbox__label {
+ color: var(--el-color-primary);
+}
+
.vertical-class {
display: flex;
flex-direction: column;
diff --git a/src/components/monitor/FactorRadio.vue b/src/components/monitor/FactorRadio.vue
index afdd4d5..ce67151 100644
--- a/src/components/monitor/FactorRadio.vue
+++ b/src/components/monitor/FactorRadio.vue
@@ -52,6 +52,7 @@
<style scoped>
.el-radio {
--el-radio-text-color: white;
+ --el-color-primary: #23dad1;
margin-right: 10px;
height: initial;
}
diff --git a/src/components/monitor/FactorTrend.vue b/src/components/monitor/FactorTrend.vue
index f2e0e3f..eddadbb 100644
--- a/src/components/monitor/FactorTrend.vue
+++ b/src/components/monitor/FactorTrend.vue
@@ -2,18 +2,6 @@
<BaseCard size="medium" direction="left">
<template #content>
<el-scrollbar height="calc(98vh - var(--bevel-length-2))">
- <!-- <div v-for="item in factorTypes" :key="item">
- <el-row>
- <div>{{ allSeries.get(item.value).name }}</div>
- <div>{{ allSeries.get(item.value).currentData }}</div>
- <div>{{ allSeries.get(item.value).min }}</div>
- <div>{{ allSeries.get(item.value).max }}</div>
- <RealTimeLineChart
- v-show="selectFactorType.includes(item.value)"
- :model-value="series(item.value)"
- ></RealTimeLineChart>
- </el-row>
- </div> -->
<div v-for="item in seriesList" :key="item.key">
<el-row
v-show="selectFactorType.includes(item.series.key)"
@@ -74,18 +62,8 @@
};
},
computed: {
- factorTypes() {
- return checkboxOptions(this.deviceType);
- }
- // seriesList() {
- // const list = [];
- // for (const iterator of this.allSeries) {
- // list.push({
- // xAxis: this.xAxis,
- // series: iterator[1]
- // });
- // }
- // return list;
+ // factorTypes() {
+ // return checkboxOptions(this.deviceType);
// }
},
watch: {
@@ -165,12 +143,20 @@
},
toList() {
const list = [];
- for (const iterator of this.allSeries) {
- list.push({
- xAxis: this.xAxis,
- series: iterator[1]
- });
- }
+ // for (const iterator of this.allSeries) {
+ // list.push({
+ // xAxis: this.xAxis,
+ // series: iterator[1]
+ // });
+ // }
+ checkboxOptions(this.deviceType).forEach((t) => {
+ if (this.allSeries.has(t.value)) {
+ list.push({
+ xAxis: this.xAxis,
+ series: this.allSeries.get(t.value)
+ });
+ }
+ });
this.seriesList = list;
},
// getScaleValue(label, value) {
@@ -199,7 +185,7 @@
}
.factor-name {
- color: var(--el-color-warning);
+ color: #23dad1;
}
.factor-unit {
diff --git a/src/components/monitor/WeatherData.vue b/src/components/monitor/WeatherData.vue
index 6609315..af32269 100644
--- a/src/components/monitor/WeatherData.vue
+++ b/src/components/monitor/WeatherData.vue
@@ -26,7 +26,7 @@
</template>
<script>
import { FactorDatas } from '@/model/FactorDatas';
-import { windDir } from '../../constant/wind-dir';
+import { windDir } from '@/constant/wind-dir';
export default {
props: {
diff --git a/src/components/search/OptionDevice copy.vue b/src/components/search/OptionDevice copy.vue
new file mode 100644
index 0000000..6fc1b0a
--- /dev/null
+++ b/src/components/search/OptionDevice copy.vue
@@ -0,0 +1,72 @@
+<template>
+ <el-form-item label="璁惧">
+ <el-select
+ :model-value="modelValue"
+ @update:model-value="handleChange"
+ placeholder="璁惧"
+ size="small"
+ class="w-120"
+ >
+ <el-option
+ v-for="(s, i) in deviceList"
+ :key="i"
+ :label="s.label"
+ :value="s.value"
+ />
+ </el-select>
+ </el-form-item>
+</template>
+
+<script>
+export default {
+ props: {
+ type: String,
+ modelValue: String
+ },
+ emits: ['update:modelValue'],
+ data() {
+ return {};
+ },
+ computed: {
+ deviceList() {
+ const t = this.type ? this.type : '0a';
+ return [1, 2, 3].map((v) => {
+ const label = `${this.getDeviceType(t)}璁惧${v}鍙穈;
+ const value = `${t}000000000${v}`;
+ return {
+ label: label,
+ value: value
+ };
+ });
+ }
+ },
+ watch: {
+ deviceList(nV, oV) {
+ if (nV != oV) {
+ this.handleChange(nV[0].value);
+ }
+ }
+ },
+ methods: {
+ handleChange(value) {
+ this.$emit('update:modelValue', value);
+ },
+ getDeviceType(t) {
+ switch (t) {
+ case '0a':
+ return '杞﹁浇';
+ case '0b':
+ return '鏃犱汉鏈�';
+ case '0c':
+ return '鏃犱汉鑸�';
+ default:
+ return '杞﹁浇';
+ }
+ }
+ },
+ mounted() {
+ this.handleChange(this.deviceList[0].value);
+ }
+};
+</script>
+<style scoped></style>
diff --git a/src/components/search/OptionDevice.vue b/src/components/search/OptionDevice.vue
index 6fc1b0a..2ba1468 100644
--- a/src/components/search/OptionDevice.vue
+++ b/src/components/search/OptionDevice.vue
@@ -8,7 +8,7 @@
class="w-120"
>
<el-option
- v-for="(s, i) in deviceList"
+ v-for="(s, i) in deviceOptions"
:key="i"
:label="s.label"
:value="s.value"
@@ -18,6 +18,8 @@
</template>
<script>
+import { deviceList } from '@/constant/device-type';
+
export default {
props: {
type: String,
@@ -28,20 +30,12 @@
return {};
},
computed: {
- deviceList() {
- const t = this.type ? this.type : '0a';
- return [1, 2, 3].map((v) => {
- const label = `${this.getDeviceType(t)}璁惧${v}鍙穈;
- const value = `${t}000000000${v}`;
- return {
- label: label,
- value: value
- };
- });
+ deviceOptions() {
+ return deviceList(this.type);
}
},
watch: {
- deviceList(nV, oV) {
+ deviceOptions(nV, oV) {
if (nV != oV) {
this.handleChange(nV[0].value);
}
@@ -50,22 +44,10 @@
methods: {
handleChange(value) {
this.$emit('update:modelValue', value);
- },
- getDeviceType(t) {
- switch (t) {
- case '0a':
- return '杞﹁浇';
- case '0b':
- return '鏃犱汉鏈�';
- case '0c':
- return '鏃犱汉鑸�';
- default:
- return '杞﹁浇';
- }
}
},
mounted() {
- this.handleChange(this.deviceList[0].value);
+ this.handleChange(this.deviceOptions[0].value);
}
};
</script>
diff --git a/src/components/search/OptionLocation.vue b/src/components/search/OptionLocation.vue
index 71e5edc..b4ceed8 100644
--- a/src/components/search/OptionLocation.vue
+++ b/src/components/search/OptionLocation.vue
@@ -25,12 +25,7 @@
emits: ['update:modelValue'],
data() {
return {
- typeList: [
- {
- label: '闀垮畞鍖�',
- value: '310105'
- }
- ]
+ typeList: []
};
},
methods: {
@@ -40,6 +35,22 @@
}
},
mounted() {
+ let options = [
+ {
+ label: '闀垮畞鍖�',
+ value: '310105'
+ }
+ ];
+
+ if (import.meta.env.VITE_DATA_MODE == 'jingan') {
+ options = [
+ {
+ label: '闈欏畨鍖�',
+ value: '310106'
+ }
+ ];
+ }
+ this.typeList = options;
this.handleChange(this.typeList[0].value);
}
};
diff --git a/src/components/search/OptionMission.vue b/src/components/search/OptionMission.vue
index 7ee4d9b..f26efe3 100644
--- a/src/components/search/OptionMission.vue
+++ b/src/components/search/OptionMission.vue
@@ -19,7 +19,6 @@
<script>
import { mapStores } from 'pinia';
-import missionApi from '@/api/missionApi';
import { useFetchData } from '@/composables/fetchData';
import { useMissionStore } from '@/stores/mission';
@@ -43,23 +42,15 @@
},
methods: {
fetchMission() {
- // this.fetchData((page, pageSize) => {
- // return missionApi
- // .fethchMission({ type: this.type, page, pageSize })
- // .then((res) => {
- // this.missionList = res.data;
- // this.missionStore.missionList = res.data;
- // // if (this.missionList.length > 0) {
- // // this.handleChange(0);
- // // }
- // return res.head;
- // });
- // });
- this.missionStore.fetchMission(this.type);
+ this.missionStore.fetchMission(this.type).then((res) => {
+ if (res.success && res.data.length > 0) {
+ this.index = 0;
+ this.handleChange(0);
+ }
+ });
},
handleChange(value) {
this.$emit('update:modelValue', this.missionStore.missionList[value]);
- // this.$emit('change', this.missionList[value]);
}
},
mounted() {
diff --git a/src/components/search/OptionTime.vue b/src/components/search/OptionTime.vue
index 29ccf19..bb11f85 100644
--- a/src/components/search/OptionTime.vue
+++ b/src/components/search/OptionTime.vue
@@ -7,20 +7,30 @@
start-placeholder="閫夋嫨寮�濮嬫椂闂�"
end-placeholder="閫夋嫨缁撴潫鏃堕棿"
size="small"
+ :disabled-date="diableData"
/>
</el-form-item>
</template>
<script>
+import moment from 'moment';
+import { ElMessage } from 'element-plus';
+
export default {
props: {
+ // 鏃ユ湡鍊�
modelValue: {
type: Array
},
+ // 鎺т欢绫诲瀷
type: {
type: String,
default: 'datetimerange'
- }
+ },
+ // 鍏佽寮�濮嬫椂闂�
+ startDate: Date,
+ // 鍏佽缁撴潫鏃堕棿
+ endDate: Date
},
emits: ['update:modelValue'],
data() {
@@ -28,7 +38,40 @@
},
methods: {
handleChange(value) {
- this.$emit('update:modelValue', value);
+ // 鏃堕棿涓嶈兘瓒呰繃璁惧畾鐨勫紑濮嬬粨鏉熸椂闂�
+ let outRange = false;
+ if (this.startDate) {
+ outRange =
+ outRange ||
+ moment(value[0]).isBefore(this.startDate) ||
+ moment(value[1]).isBefore(this.startDate);
+ }
+ if (this.endDate) {
+ outRange =
+ outRange ||
+ moment(value[0]).isAfter(this.endDate) ||
+ moment(value[1]).isAfter(this.endDate);
+ }
+ if (outRange) {
+ ElMessage({
+ message: '鎵�閫夋椂闂翠笉鑳借秴杩囪蛋鑸换鍔℃椂闂磋寖鍥�',
+ type: 'warning'
+ });
+ } else {
+ this.$emit('update:modelValue', value);
+ }
+ },
+ diableData(date) {
+ const time = moment(date);
+ let result1 = false;
+ let result2 = false;
+ if (this.startDate) {
+ result1 = time.isBefore(this.startDate);
+ }
+ if (this.endDate) {
+ result2 = time.isAfter(this.endDate);
+ }
+ return result1 || result2;
}
},
mounted() {
diff --git a/src/components/search/OptionType copy.vue b/src/components/search/OptionType copy.vue
new file mode 100644
index 0000000..b6e4817
--- /dev/null
+++ b/src/components/search/OptionType copy.vue
@@ -0,0 +1,54 @@
+<template>
+ <el-form-item label="绫诲瀷">
+ <el-select
+ :model-value="modelValue"
+ @update:model-value="handleChange"
+ placeholder="绫诲瀷"
+ size="small"
+ class="w-80"
+ >
+ <el-option
+ v-for="(s, i) in typeList"
+ :key="i"
+ :label="s.label"
+ :value="s.value"
+ />
+ </el-select>
+ </el-form-item>
+</template>
+
+<script>
+export default {
+ props: {
+ modelValue: String
+ },
+ emits: ['update:modelValue'],
+ data() {
+ return {
+ typeList: [
+ {
+ label: '杞﹁浇',
+ value: '0a'
+ },
+ {
+ label: '鏃犱汉鏈�',
+ value: '0b'
+ },
+ {
+ label: '鏃犱汉鑸�',
+ value: '0c'
+ }
+ ]
+ };
+ },
+ methods: {
+ handleChange(value) {
+ // todo 鏍规嵁璁惧绫诲瀷鍒囨崲鍦板浘杞藉叿鐨勫浘鏍囥��
+ this.$emit('update:modelValue', value);
+ }
+ },
+ mounted() {
+ this.handleChange(this.typeList[0].value);
+ }
+};
+</script>
diff --git a/src/components/search/OptionType.vue b/src/components/search/OptionType.vue
index b6e4817..644898d 100644
--- a/src/components/search/OptionType.vue
+++ b/src/components/search/OptionType.vue
@@ -1,5 +1,5 @@
<template>
- <el-form-item label="绫诲瀷">
+ <el-form-item v-show="isShow" label="绫诲瀷">
<el-select
:model-value="modelValue"
@update:model-value="handleChange"
@@ -18,6 +18,7 @@
</template>
<script>
+import { typeList } from '@/constant/device-type';
export default {
props: {
modelValue: String
@@ -25,20 +26,8 @@
emits: ['update:modelValue'],
data() {
return {
- typeList: [
- {
- label: '杞﹁浇',
- value: '0a'
- },
- {
- label: '鏃犱汉鏈�',
- value: '0b'
- },
- {
- label: '鏃犱汉鑸�',
- value: '0c'
- }
- ]
+ typeList: typeList(),
+ isShow: import.meta.env.VITE_DATA_MODE != 'jingan'
};
},
methods: {
diff --git a/src/components/search/SearchBar.vue b/src/components/search/SearchBar.vue
index 4534886..a7de11b 100644
--- a/src/components/search/SearchBar.vue
+++ b/src/components/search/SearchBar.vue
@@ -8,7 +8,11 @@
:type="formSearch.type"
v-model="formSearch.deviceCode"
></OptionDevice>
- <OptionTime v-model="formSearch.timeArray"></OptionTime>
+ <OptionTime
+ v-model="formSearch.timeArray"
+ :start-date="dateRange[0]"
+ :end-date="dateRange[1]"
+ ></OptionTime>
<el-button
:loading="loading"
type="primary"
@@ -31,12 +35,14 @@
},
data() {
return {
- mission: {},
+ mission: undefined,
formSearch: {
type: '',
deviceCode: '',
timeArray: []
- }
+ },
+ // 鍙�夋棩鏈熻寖鍥达紝鏍规嵁璧拌埅浠诲姟鍐冲畾
+ dateRange: []
};
},
emits: ['search'],
@@ -52,8 +58,16 @@
new Date(nV.startTime),
new Date(nV.endTime)
];
+ this.dateRange = [new Date(nV.startTime), new Date(nV.endTime)];
this.formSearch.type = nV.deviceType;
this.formSearch.deviceCode = nV.deviceCode;
+
+ // 浠h〃棣栨杩涘叆鐣岄潰锛屾鏃惰嚜鍔ㄦ墽琛岄涓换鍔$殑鏁版嵁鏌ヨ鎿嶄綔
+ if (oV == undefined) {
+ setTimeout(() => {
+ this.handleClick();
+ }, 500);
+ }
}
}
},
@@ -64,7 +78,7 @@
}
};
</script>
-<style lang="scss">
+<style scoped lang="scss">
.map-date-selector {
display: inline-block;
position: relative;
@@ -78,4 +92,9 @@
.p-events-auto {
}
+
+.el-form-item {
+ margin-bottom: 0px;
+ margin-right: 8px !important;
+}
</style>
diff --git a/src/composables/fetchData.js b/src/composables/fetchData.js
index c1b4937..350e92e 100644
--- a/src/composables/fetchData.js
+++ b/src/composables/fetchData.js
@@ -37,6 +37,7 @@
}
loadStatus.value = 0;
+ return pageInfo;
})
.catch(() => {
loadStatus.value = 3;
diff --git a/src/constant/checkbox-options.js b/src/constant/checkbox-options.js
index 6f1178d..f9cc44d 100644
--- a/src/constant/checkbox-options.js
+++ b/src/constant/checkbox-options.js
@@ -1,186 +1,50 @@
import { TYPE0, TYPE1, TYPE2, TYPE4 } from '@/constant/device-type';
+import {
+ option1,
+ option2,
+ option3,
+ option4
+} from '@/constant/checkbox-options/options';
+import { option1 as option1Jingan } from '@/constant/checkbox-options/options-jingan';
// 鐩戞祴鍥犲瓙鍗曢�夋閫夐」
function checkboxOptions(deviceType) {
- switch (deviceType) {
- case TYPE0:
- return option1;
- case TYPE1:
- return option3;
- case TYPE2:
- return option2;
- case TYPE4:
- return option4;
- default:
- return option1;
+ if (import.meta.env.VITE_DATA_MODE == 'jingan') {
+ switch (deviceType) {
+ case TYPE0:
+ return option1Jingan;
+ default:
+ return option1Jingan;
+ }
+ } else {
+ switch (deviceType) {
+ case TYPE0:
+ return option1;
+ case TYPE1:
+ return option3;
+ case TYPE2:
+ return option2;
+ case TYPE4:
+ return option4;
+ default:
+ return option1;
+ }
}
}
-const option1 = [
- {
- label: 'NO2',
- name: 'NO2',
- value: '1'
- },
- {
- label: 'CO',
- name: 'CO',
- value: '2'
- },
- {
- label: 'H2S',
- name: 'H2S',
- value: '3'
- },
- {
- label: 'SO2',
- name: 'SO2',
- value: '4'
- },
- {
- label: 'O3',
- name: 'O3',
- value: '5'
- },
- {
- label: 'PM2.5',
- name: 'PM25',
- value: '6'
- },
- {
- label: 'PM10',
- name: 'PM10',
- value: '7'
- },
- {
- label: 'TVOC',
- name: 'VOC',
- value: '10'
- },
-
- // {
- // label: "NOI",
- // name: "NOI",
- // value: "11"
- // },
- {
- label: '杞﹂��',
- name: 'VELOCITY',
- value: '14'
- },
- {
- label: '椋庨��',
- name: 'WIND_SPEED',
- value: '16'
- },
- {
- label: '椋庡悜',
- name: 'WIND_DIRECTION',
- value: '17'
- },
- {
- label: '楂樺害',
- name: 'HEIGHT',
- value: '18'
+/**
+ * 榛樿閫夐」
+ * @param {*} deviceType 璁惧绫诲瀷
+ * @param {*} count 榛樿閫変腑涓暟
+ * @returns
+ */
+function defaultFactorTypes(deviceType, count = 3) {
+ const list = checkboxOptions(deviceType);
+ if (list.length > count) {
+ return list.slice(0, count).map((v) => v.value);
+ } else {
+ return list.map((v) => v.value);
}
-];
+}
-const option2 = [
- {
- label: '娓╁害',
- name: 'TMP',
- value: '1'
- },
- {
- label: '鐢靛鐜�',
- name: 'spC',
- value: '2'
- },
- {
- label: '娴婂害',
- name: 'tur',
- value: '3'
- },
- {
- label: '婧惰В姘�',
- name: 'DO',
- value: '4'
- },
- {
- label: 'PH',
- name: 'PH',
- value: '5'
- }
-];
-
-const option3 = [
- {
- label: 'NO2',
- name: 'NO2',
- value: '1'
- },
- {
- label: 'CO',
- name: 'CO',
- value: '2'
- },
- {
- label: 'H2S',
- name: 'H2S',
- value: '3'
- },
- {
- label: 'SO2',
- name: 'SO2',
- value: '4'
- },
- {
- label: 'O3',
- name: 'O3',
- value: '5'
- },
- {
- label: 'PM2.5',
- name: 'PM25',
- value: '6'
- },
- {
- label: 'PM10',
- name: 'PM10',
- value: '7'
- },
- {
- label: 'TVOC',
- name: 'VOC',
- value: '10'
- },
- {
- label: '椋庨��',
- name: 'WIND_SPEED',
- value: '16'
- },
- {
- label: '椋庡悜',
- name: 'WIND_DIRECTION',
- value: '17'
- }
-];
-
-const option4 = [
- {
- label: 'A鐩哥數娴�',
- name: 'EA',
- value: '1'
- },
- {
- label: 'B鐩哥數娴�',
- name: 'EB',
- value: '2'
- },
- {
- label: 'C鐩哥數娴�',
- name: 'EC',
- value: '3'
- }
-];
-export { checkboxOptions };
+export { checkboxOptions, defaultFactorTypes };
diff --git a/src/constant/checkbox-options/options-jingan.js b/src/constant/checkbox-options/options-jingan.js
new file mode 100644
index 0000000..7d23581
--- /dev/null
+++ b/src/constant/checkbox-options/options-jingan.js
@@ -0,0 +1,51 @@
+/**
+ * 涓婃捣甯傞潤瀹夊尯涓撴湁绯荤粺鍥捐〃鏄剧ず鍥犲瓙鍒囨崲閫夐」
+ */
+
+export const option1 = [
+ {
+ label: 'NO',
+ name: 'NO',
+ value: '19'
+ },
+ {
+ label: 'NO2',
+ name: 'NO2',
+ value: '1'
+ },
+ {
+ label: 'CO',
+ name: 'CO',
+ value: '2'
+ },
+ {
+ label: 'PM2.5',
+ name: 'PM25',
+ value: '6'
+ },
+ {
+ label: 'PM10',
+ name: 'PM10',
+ value: '7'
+ },
+ {
+ label: '娓╁害',
+ name: 'TEMPERATURE',
+ value: '8'
+ },
+ {
+ label: '杞﹂��',
+ name: 'VELOCITY',
+ value: '14'
+ },
+ {
+ label: '椋庨��',
+ name: 'WIND_SPEED',
+ value: '16'
+ }
+ // {
+ // label: '椋庡悜',
+ // name: 'WIND_DIRECTION',
+ // value: '17'
+ // }
+];
diff --git a/src/constant/checkbox-options/options.js b/src/constant/checkbox-options/options.js
new file mode 100644
index 0000000..3f6b106
--- /dev/null
+++ b/src/constant/checkbox-options/options.js
@@ -0,0 +1,173 @@
+/**
+ * 鍘熷绯荤粺鍥捐〃鏄剧ず鍥犲瓙鍒囨崲閫夐」
+ */
+
+const option1 = [
+ {
+ label: 'NO2',
+ name: 'NO2',
+ value: '1'
+ },
+ {
+ label: 'CO',
+ name: 'CO',
+ value: '2'
+ },
+ {
+ label: 'H2S',
+ name: 'H2S',
+ value: '3'
+ },
+ {
+ label: 'SO2',
+ name: 'SO2',
+ value: '4'
+ },
+ {
+ label: 'O3',
+ name: 'O3',
+ value: '5'
+ },
+ {
+ label: 'PM2.5',
+ name: 'PM25',
+ value: '6'
+ },
+ {
+ label: 'PM10',
+ name: 'PM10',
+ value: '7'
+ },
+ {
+ label: 'TVOC',
+ name: 'VOC',
+ value: '10'
+ },
+
+ // {
+ // label: "NOI",
+ // name: "NOI",
+ // value: "11"
+ // },
+ {
+ label: '杞﹂��',
+ name: 'VELOCITY',
+ value: '14'
+ },
+ {
+ label: '椋庨��',
+ name: 'WIND_SPEED',
+ value: '16'
+ },
+ // {
+ // label: '椋庡悜',
+ // name: 'WIND_DIRECTION',
+ // value: '17'
+ // },
+ {
+ label: '楂樺害',
+ name: 'HEIGHT',
+ value: '18'
+ }
+];
+
+const option2 = [
+ {
+ label: '娓╁害',
+ name: 'TMP',
+ value: '1'
+ },
+ {
+ label: '鐢靛鐜�',
+ name: 'spC',
+ value: '2'
+ },
+ {
+ label: '娴婂害',
+ name: 'tur',
+ value: '3'
+ },
+ {
+ label: '婧惰В姘�',
+ name: 'DO',
+ value: '4'
+ },
+ {
+ label: 'PH',
+ name: 'PH',
+ value: '5'
+ }
+];
+
+const option3 = [
+ {
+ label: 'NO2',
+ name: 'NO2',
+ value: '1'
+ },
+ {
+ label: 'CO',
+ name: 'CO',
+ value: '2'
+ },
+ {
+ label: 'H2S',
+ name: 'H2S',
+ value: '3'
+ },
+ {
+ label: 'SO2',
+ name: 'SO2',
+ value: '4'
+ },
+ {
+ label: 'O3',
+ name: 'O3',
+ value: '5'
+ },
+ {
+ label: 'PM2.5',
+ name: 'PM25',
+ value: '6'
+ },
+ {
+ label: 'PM10',
+ name: 'PM10',
+ value: '7'
+ },
+ {
+ label: 'TVOC',
+ name: 'VOC',
+ value: '10'
+ },
+ {
+ label: '椋庨��',
+ name: 'WIND_SPEED',
+ value: '16'
+ }
+ // {
+ // label: '椋庡悜',
+ // name: 'WIND_DIRECTION',
+ // value: '17'
+ // }
+];
+
+const option4 = [
+ {
+ label: 'A鐩哥數娴�',
+ name: 'EA',
+ value: '1'
+ },
+ {
+ label: 'B鐩哥數娴�',
+ name: 'EB',
+ value: '2'
+ },
+ {
+ label: 'C鐩哥數娴�',
+ name: 'EC',
+ value: '3'
+ }
+];
+
+export { option1, option2, option3, option4 };
diff --git a/src/constant/device-type.js b/src/constant/device-type.js
index 8d163f8..dde0588 100644
--- a/src/constant/device-type.js
+++ b/src/constant/device-type.js
@@ -9,4 +9,56 @@
// 鐢ㄧ數閲�
const TYPE4 = '31';
-export { TYPE0, TYPE1, TYPE2, TYPE3, TYPE4 };
+function typeList() {
+ if (import.meta.env.VITE_DATA_MODE == 'jingan') {
+ return [
+ {
+ label: '杞﹁浇',
+ value: '0a'
+ }
+ ];
+ } else {
+ return [
+ {
+ label: '杞﹁浇',
+ value: '0a'
+ },
+ {
+ label: '鏃犱汉鏈�',
+ value: '0b'
+ },
+ {
+ label: '鏃犱汉鑸�',
+ value: '0c'
+ }
+ ];
+ }
+}
+
+// fixeme 2024.8.19 鍚庣画璁惧缂栧彿搴旇浠庢湇鍔″櫒鍔ㄦ�佽幏鍙栵紝鍚屾椂鏈夎澶囧彿鐨勫湪绾跨紪杈戝姛鑳�
+function deviceList(type) {
+ if (import.meta.env.VITE_DATA_MODE == 'jingan') {
+ return [
+ {
+ label: '杞﹁浇璁惧1鍙�',
+ value: 'TX105'
+ }
+ ];
+ } else {
+ const t = type ? type : '0a';
+ const _typeList = typeList();
+ const typeStr = _typeList.find((v) => {
+ return v.value == t;
+ });
+ return [1, 2, 3].map((v) => {
+ const label = `${typeStr}璁惧${v}鍙穈;
+ const value = `${t}000000000${v}`;
+ return {
+ label: label,
+ value: value
+ };
+ });
+ }
+}
+
+export { TYPE0, TYPE1, TYPE2, TYPE3, TYPE4, typeList, deviceList };
diff --git a/src/constant/factor-name.js b/src/constant/factor-name.js
index 360e5f0..5857ead 100644
--- a/src/constant/factor-name.js
+++ b/src/constant/factor-name.js
@@ -2,6 +2,7 @@
* 鐩戞祴鍥犲瓙鍚嶇О
*/
export const factorName = {
+ NO: 'NO',
NO2: 'NO2', //2
CO: 'CO', //4
H2S: 'H2S', //6
diff --git a/src/constant/factor-unit.js b/src/constant/factor-unit.js
index 878baf0..ec21d10 100644
--- a/src/constant/factor-unit.js
+++ b/src/constant/factor-unit.js
@@ -2,6 +2,10 @@
* 鐩戞祴鍥犲瓙鍗曚綅
*/
export const factorUnit = {
+ NO: {
+ scale: 1,
+ unit: '渭g/m鲁'
+ },
NO2: {
scale: 1,
unit: '渭g/m鲁'
diff --git a/src/constant/radio-options.js b/src/constant/radio-options.js
index 9cf3509..c56bd55 100644
--- a/src/constant/radio-options.js
+++ b/src/constant/radio-options.js
@@ -1,84 +1,94 @@
import { TYPE0, TYPE1, TYPE2 } from '@/constant/device-type';
+import { option1, option2 } from '@/constant/radio-options/options';
+import { option1 as option1Jingan } from '@/constant/radio-options/options-jingan';
// 鐩戞祴鍥犲瓙鍗曢�夋閫夐」
function radioOptions(deviceType) {
- if ([TYPE0, TYPE1].includes(deviceType)) {
- return option1;
- } else if (deviceType == TYPE2) {
- return option2;
+ if (import.meta.env.VITE_DATA_MODE == 'jingan') {
+ if (TYPE0 == deviceType) {
+ return option1Jingan;
+ } else {
+ return [];
+ }
} else {
- return [];
+ if ([TYPE0, TYPE1].includes(deviceType)) {
+ return option1;
+ } else if (deviceType == TYPE2) {
+ return option2;
+ } else {
+ return [];
+ }
}
}
-const option1 = [
- {
- label: 'NO2',
- name: 'NO2',
- value: '1'
- },
- {
- label: 'CO',
- name: 'CO',
- value: '2'
- },
- {
- label: 'H2S',
- name: 'H2S',
- value: '3'
- },
- {
- label: 'SO2',
- name: 'SO2',
- value: '4'
- },
- {
- label: 'O3',
- name: 'O3',
- value: '5'
- },
- {
- label: 'PM2.5',
- name: 'PM25',
- value: '6'
- },
- {
- label: 'PM10',
- name: 'PM10',
- value: '7'
- },
- {
- label: 'TVOC',
- name: 'VOC',
- value: '10'
- }
-];
+// const option1 = [
+// {
+// label: 'NO2',
+// name: 'NO2',
+// value: '1'
+// },
+// {
+// label: 'CO',
+// name: 'CO',
+// value: '2'
+// },
+// {
+// label: 'H2S',
+// name: 'H2S',
+// value: '3'
+// },
+// {
+// label: 'SO2',
+// name: 'SO2',
+// value: '4'
+// },
+// {
+// label: 'O3',
+// name: 'O3',
+// value: '5'
+// },
+// {
+// label: 'PM2.5',
+// name: 'PM25',
+// value: '6'
+// },
+// {
+// label: 'PM10',
+// name: 'PM10',
+// value: '7'
+// },
+// {
+// label: 'TVOC',
+// name: 'VOC',
+// value: '10'
+// }
+// ];
-const option2 = [
- {
- label: '娓╁害',
- name: 'TMP',
- value: '1'
- },
- {
- label: '鐢靛鐜�',
- name: 'spC',
- value: '2'
- },
- {
- label: '娴婂害',
- name: 'tur',
- value: '3'
- },
- {
- label: '婧惰В姘�',
- name: 'DO',
- value: '4'
- },
- {
- label: 'PH',
- name: 'PH',
- value: '5'
- }
-];
+// const option2 = [
+// {
+// label: '娓╁害',
+// name: 'TMP',
+// value: '1'
+// },
+// {
+// label: '鐢靛鐜�',
+// name: 'spC',
+// value: '2'
+// },
+// {
+// label: '娴婂害',
+// name: 'tur',
+// value: '3'
+// },
+// {
+// label: '婧惰В姘�',
+// name: 'DO',
+// value: '4'
+// },
+// {
+// label: 'PH',
+// name: 'PH',
+// value: '5'
+// }
+// ];
export { radioOptions };
diff --git a/src/constant/radio-options/options-jingan.js b/src/constant/radio-options/options-jingan.js
new file mode 100644
index 0000000..d82ee85
--- /dev/null
+++ b/src/constant/radio-options/options-jingan.js
@@ -0,0 +1,31 @@
+/**
+ * 涓婃捣甯傞潤瀹夊尯涓撴湁绯荤粺鍦板浘鏄剧ず鍥犲瓙鍒囨崲閫夐」
+ */
+
+export const option1 = [
+ {
+ label: 'NO',
+ name: 'NO',
+ value: '19'
+ },
+ {
+ label: 'NO2',
+ name: 'NO2',
+ value: '1'
+ },
+ {
+ label: 'CO',
+ name: 'CO',
+ value: '2'
+ },
+ {
+ label: 'PM2.5',
+ name: 'PM25',
+ value: '6'
+ },
+ {
+ label: 'PM10',
+ name: 'PM10',
+ value: '7'
+ }
+];
diff --git a/src/constant/radio-options/options.js b/src/constant/radio-options/options.js
new file mode 100644
index 0000000..12cb189
--- /dev/null
+++ b/src/constant/radio-options/options.js
@@ -0,0 +1,74 @@
+/**
+ * 鍘熷绯荤粺鍦板浘鏄剧ず鍥犲瓙鍒囨崲閫夐」
+ */
+
+export const option1 = [
+ {
+ label: 'NO2',
+ name: 'NO2',
+ value: '1'
+ },
+ {
+ label: 'CO',
+ name: 'CO',
+ value: '2'
+ },
+ {
+ label: 'H2S',
+ name: 'H2S',
+ value: '3'
+ },
+ {
+ label: 'SO2',
+ name: 'SO2',
+ value: '4'
+ },
+ {
+ label: 'O3',
+ name: 'O3',
+ value: '5'
+ },
+ {
+ label: 'PM2.5',
+ name: 'PM25',
+ value: '6'
+ },
+ {
+ label: 'PM10',
+ name: 'PM10',
+ value: '7'
+ },
+ {
+ label: 'TVOC',
+ name: 'VOC',
+ value: '10'
+ }
+];
+
+export const option2 = [
+ {
+ label: '娓╁害',
+ name: 'TMP',
+ value: '1'
+ },
+ {
+ label: '鐢靛鐜�',
+ name: 'spC',
+ value: '2'
+ },
+ {
+ label: '娴婂害',
+ name: 'tur',
+ value: '3'
+ },
+ {
+ label: '婧惰В姘�',
+ name: 'DO',
+ value: '4'
+ },
+ {
+ label: 'PH',
+ name: 'PH',
+ value: '5'
+ }
+];
diff --git a/src/constant/scene-types.js b/src/constant/scene-types.js
index c0d9043..30c5590 100644
--- a/src/constant/scene-types.js
+++ b/src/constant/scene-types.js
@@ -8,90 +8,15 @@
import scene_18 from '@/assets/mipmap/scene_18.png';
import scene_19 from '@/assets/mipmap/scene_19.png';
import scene_20 from '@/assets/mipmap/scene_20.png';
+import { option } from '@/constant/scene-types/options';
+import { option as optionJingan } from '@/constant/scene-types/options-jingan';
function sceneTypes() {
- return [
- {
- label: '宸ュ湴',
- value: '1'
- },
- // {
- // label: '鐮佸ご',
- // value: '2',
- // },
- // {
- // label: '鎼呮媽绔�',
- // value: '3',
- // },
- {
- label: '宸ヤ笟浼佷笟',
- value: '4'
- },
- {
- label: '椁愰ギ',
- value: '5'
- },
- {
- label: '姹戒慨',
- value: '6'
- },
- // {
- // label: '闄嶅皹鐐�',
- // value: '7',
- // },
- // {
- // label: '绌烘皵璐ㄩ噺鐩戞祴鐐�',
- // value: '8',
- // },
- // {
- // label: '閬撹矾鎵皹鐩戞祴鐐�',
- // value: '9',
- // },
- // {
- // label: '閬撹矾',
- // value: '10',
- // },
- // {
- // label: '娌虫祦鏂潰',
- // value: '11',
- // },
- // {
- // label: '宸ヤ笟鍥尯',
- // value: '12',
- // },
- // {
- // label: '鏃犲浐瀹氬満鏅�',
- // value: '13',
- // },
- // {
- // label: '鍫嗗満',
- // value: '14',
- // },
- {
- label: '瀹為獙瀹�',
- value: '15'
- },
- {
- label: '绮惧搧灏忓尯',
- value: '16'
- },
- {
- label: '鍔犳补绔�',
- value: '17'
- },
- {
- label: '鍟嗕笟浣�',
- value: '18'
- },
- {
- label: '鍥芥帶鐐�',
- value: '19'
- },
- {
- label: '甯傛帶鐐�',
- value: '20'
- }
- ];
+ if (import.meta.env.VITE_DATA_MODE == 'jingan') {
+ return optionJingan;
+ } else {
+ return option;
+ }
}
function sceneIcon(type) {
diff --git a/src/constant/scene-types/options-jingan.js b/src/constant/scene-types/options-jingan.js
new file mode 100644
index 0000000..f8cc40f
--- /dev/null
+++ b/src/constant/scene-types/options-jingan.js
@@ -0,0 +1,93 @@
+/**
+ * 涓婃捣甯傞潤瀹夊尯涓撴湁绯荤粺鍦板浘鏄剧ず鍦烘櫙绫诲瀷鍒囨崲閫夐」
+ */
+
+export const option = [
+ {
+ label: '宸ュ湴',
+ value: '1'
+ },
+ // {
+ // label: '鐮佸ご',
+ // value: '2',
+ // },
+ // {
+ // label: '鎼呮媽绔�',
+ // value: '3',
+ // },
+ {
+ label: '宸ヤ笟浼佷笟',
+ value: '4',
+ disabled: true
+ },
+ {
+ label: '椁愰ギ',
+ value: '5',
+ disabled: true
+ },
+ {
+ label: '姹戒慨',
+ value: '6',
+ disabled: true
+ },
+ // {
+ // label: '闄嶅皹鐐�',
+ // value: '7',
+ // },
+ // {
+ // label: '绌烘皵璐ㄩ噺鐩戞祴鐐�',
+ // value: '8',
+ // },
+ // {
+ // label: '閬撹矾鎵皹鐩戞祴鐐�',
+ // value: '9',
+ // },
+ // {
+ // label: '閬撹矾',
+ // value: '10',
+ // },
+ // {
+ // label: '娌虫祦鏂潰',
+ // value: '11',
+ // },
+ // {
+ // label: '宸ヤ笟鍥尯',
+ // value: '12',
+ // },
+ // {
+ // label: '鏃犲浐瀹氬満鏅�',
+ // value: '13',
+ // },
+ // {
+ // label: '鍫嗗満',
+ // value: '14',
+ // },
+ {
+ label: '瀹為獙瀹�',
+ value: '15',
+ disabled: true
+ },
+ {
+ label: '绮惧搧灏忓尯',
+ value: '16',
+ disabled: true
+ },
+ {
+ label: '鍔犳补绔�',
+ value: '17',
+ disabled: true
+ },
+ {
+ label: '鍟嗕笟浣�',
+ value: '18',
+ disabled: true
+ },
+ {
+ label: '鍥芥帶鐐�',
+ value: '19'
+ },
+ {
+ label: '甯傛帶鐐�',
+ value: '20'
+ }
+];
diff --git a/src/constant/scene-types/options.js b/src/constant/scene-types/options.js
new file mode 100644
index 0000000..1bba61d
--- /dev/null
+++ b/src/constant/scene-types/options.js
@@ -0,0 +1,86 @@
+/**
+ * 鍘熷绯荤粺鍦板浘鏄剧ず鍦烘櫙绫诲瀷鍒囨崲閫夐」
+ */
+
+export const option = [
+ {
+ label: '宸ュ湴',
+ value: '1'
+ },
+ // {
+ // label: '鐮佸ご',
+ // value: '2',
+ // },
+ // {
+ // label: '鎼呮媽绔�',
+ // value: '3',
+ // },
+ {
+ label: '宸ヤ笟浼佷笟',
+ value: '4'
+ },
+ {
+ label: '椁愰ギ',
+ value: '5'
+ },
+ {
+ label: '姹戒慨',
+ value: '6'
+ },
+ // {
+ // label: '闄嶅皹鐐�',
+ // value: '7',
+ // },
+ // {
+ // label: '绌烘皵璐ㄩ噺鐩戞祴鐐�',
+ // value: '8',
+ // },
+ // {
+ // label: '閬撹矾鎵皹鐩戞祴鐐�',
+ // value: '9',
+ // },
+ // {
+ // label: '閬撹矾',
+ // value: '10',
+ // },
+ // {
+ // label: '娌虫祦鏂潰',
+ // value: '11',
+ // },
+ // {
+ // label: '宸ヤ笟鍥尯',
+ // value: '12',
+ // },
+ // {
+ // label: '鏃犲浐瀹氬満鏅�',
+ // value: '13',
+ // },
+ // {
+ // label: '鍫嗗満',
+ // value: '14',
+ // },
+ {
+ label: '瀹為獙瀹�',
+ value: '15'
+ },
+ {
+ label: '绮惧搧灏忓尯',
+ value: '16'
+ },
+ {
+ label: '鍔犳补绔�',
+ value: '17'
+ },
+ {
+ label: '鍟嗕笟浣�',
+ value: '18'
+ },
+ {
+ label: '鍥芥帶鐐�',
+ value: '19'
+ },
+ {
+ label: '甯傛帶鐐�',
+ value: '20'
+ }
+];
diff --git a/src/lib/jquery.soap.js b/src/lib/jquery.soap.js
new file mode 100644
index 0000000..afc3fdd
--- /dev/null
+++ b/src/lib/jquery.soap.js
@@ -0,0 +1,792 @@
+import $ from 'jquery';
+
+var enableLogging;
+var globalConfig = {
+ // this setup once, defaults go here
+ appendMethodToURL: true,
+ async: true,
+ enableLogging: false,
+ noPrefix: false,
+ soap12: false,
+ withCredentials: false,
+ timeout: 5000
+};
+function soap(options) {
+ var config = {};
+ // a configuration call will not have 'data' specified ('params' is used for backwards compatibility)
+ if (options && !options.params && !options.data) {
+ $.extend(globalConfig, options); // update global config
+ enableLogging = options.enableLogging;
+ log('jQuery.soap - globalConfig updated:', globalConfig);
+ return globalConfig;
+ }
+ $.extend(config, globalConfig, options);
+ // function log will only work below this line!
+ enableLogging = config.enableLogging;
+
+ log('jquery.soap - config:', config);
+
+ // fallbacks for changed properties
+ SOAPTool.fallbackDeprecated(config);
+
+ var soapObject = SOAPTool.processData({
+ data: config.data,
+ name: config.elementName ? config.elementName : config.method,
+ context: config.context,
+ prefix:
+ !!config.namespaceQualifier && !config.noPrefix
+ ? config.namespaceQualifier + ':'
+ : ''
+ });
+
+ if (!!config.namespaceQualifier && !!config.namespaceURL) {
+ soapObject.addNamespace(config.namespaceQualifier, config.namespaceURL);
+ } else if (config.namespaceURL) {
+ soapObject.attr('xmlns', config.namespaceURL);
+ }
+
+ if (!!soapObject && !!config.url) {
+ // we have a request and somewhere to send it
+ // Create a SOAPEnvelope with the soapObject
+ var soapEnvelope = new SOAPEnvelope(soapObject);
+ // Additional attributes and namespaces for the Envelope
+ if (config.envAttributes) {
+ for (var i in config.envAttributes) {
+ soapEnvelope.addAttribute(i, config.envAttributes[i]);
+ }
+ }
+ // SOAPHeader
+ if (config.SOAPHeader) {
+ var soapHeader = SOAPTool.processData({
+ data: config.SOAPHeader,
+ name: 'temp',
+ prefix: ''
+ });
+ if (soapHeader) {
+ if (soapHeader.hasChildren()) {
+ for (var j in soapHeader.children) {
+ soapEnvelope.addHeader(soapHeader.children[j]);
+ }
+ } else {
+ soapEnvelope.addHeader(soapHeader);
+ }
+ }
+ }
+ // WSS
+ if (config.wss) {
+ var wssObj = SOAPTool.createWSS(config.wss);
+ // add to WSS Security header to soapEnvelope
+ if (wssObj) {
+ soapEnvelope.addHeader(wssObj);
+ }
+ }
+ // append Method?
+ if (!!config.appendMethodToURL && !!config.method) {
+ // fixme 2024.8.15 淇敼姝ゅ閫昏緫锛寀rl涓嶅啀鑷姩娣诲姞method浣滀负璺緞
+ // config.url += config.method;
+ }
+ return soapEnvelope
+ .send({
+ url: config.url,
+ context: config.context,
+ timeout: config.timeout,
+ async: config.async,
+ headers: config.HTTPHeaders ? config.HTTPHeaders : {},
+ action: config.SOAPAction ? config.SOAPAction : config.method,
+ soap12: config.soap12,
+ beforeSend: config.beforeSend,
+ statusCode: config.statusCode
+ })
+ .done(function (data, textStatus, jqXHR) {
+ var response = new SOAPResponse(textStatus, jqXHR);
+ log('jquery.soap - receive:', response.toString());
+ if ($.isFunction(config.success)) {
+ config.success.call(this, response);
+ }
+ })
+ .fail(function (jqXHR, textStatus, errorThrown) {
+ log('jquery.soap - error:', errorThrown);
+ if ($.isFunction(config.error)) {
+ config.error.call(this, new SOAPResponse(textStatus, jqXHR));
+ }
+ });
+ } else {
+ var errDeferred = new $.Deferred(),
+ errmsg;
+
+ if (!soapObject) {
+ errmsg = 'jquery.soap - no soapObject';
+ }
+ if (!config.url) {
+ errmsg = 'jquery.soap - no url';
+ }
+ if (errmsg) {
+ warn(errmsg);
+ errDeferred.reject(errmsg);
+ }
+ return errDeferred.promise();
+ }
+}
+
+//Soap request - this is what being sent
+function SOAPEnvelope(soapObject) {
+ this.typeOf = 'SOAPEnvelope';
+ this.prefix = 'soap';
+ this.soapConfig = null;
+ this.attributes = {};
+ this.headers = [];
+ this.bodies = [];
+
+ // let's get the soap namespace prefix
+ var parts = soapObject.name.split(':'),
+ len;
+ if (parts[1] === 'Envelope' || parts[1] === 'Body') {
+ this.prefix = parts[0];
+ if (
+ soapObject.attr('xmlns:' + this.prefix) === SOAPTool.SOAP11.namespaceURL
+ ) {
+ this.soapConfig = this.SOAP11;
+ }
+ if (
+ soapObject.attr('xmlns:' + this.prefix) === SOAPTool.SOAP12.namespaceURL
+ ) {
+ this.soapConfig = this.SOAP12;
+ }
+ // Envelope
+ var env = soapObject.find(this.prefix + ':Envelope');
+ if (env && env.attributes) {
+ for (var i in env.attributes) {
+ this.addAttribute(i, env.attributes[i]);
+ }
+ }
+ // headers
+ var header = soapObject.find(this.prefix + ':Header');
+ if (header && header.children) {
+ len = header.children.length;
+ for (var j = 0; j < len; j++) {
+ this.addHeader(header.children[j]);
+ }
+ }
+ // body
+ var body = soapObject.find(this.prefix + ':Body');
+ if (body && body.children) {
+ len = body.children.length;
+ for (var k = 0; k < len; k++) {
+ this.addBody(body.children[k]);
+ }
+ } else {
+ len = soapObject.children.length;
+ for (var l = 0; l < len; l++) {
+ this.addBody(soapObject.children[l]);
+ }
+ }
+ } else {
+ // a soapObject with nothing, mere data
+ this.addBody(soapObject);
+ }
+}
+
+SOAPEnvelope.prototype = {
+ addAttribute: function (name, value) {
+ this.attributes[name] = value;
+ },
+ addNamespace: function (name, uri) {
+ this.addAttribute('xmlns:' + name, uri);
+ },
+ addHeader: function (soapObject) {
+ this.headers.push(soapObject);
+ },
+ addBody: function (soapObject) {
+ this.bodies.push(soapObject);
+ },
+ toString: function () {
+ var soapEnv = new SOAPObject(this.prefix + ':Envelope'),
+ len;
+ //Add attributes
+ for (var name in this.attributes) {
+ soapEnv.attr(name, this.attributes[name]);
+ }
+ //Add Headers
+ len = this.headers.length;
+ if (len > 0) {
+ var soapHeader = soapEnv.newChild(this.prefix + ':Header');
+ for (var i = 0; i < len; i++) {
+ soapHeader.appendChild(this.headers[i]);
+ }
+ }
+ //Add Bodies
+ len = this.bodies.length;
+ if (len > 0) {
+ var soapBody = soapEnv.newChild(this.prefix + ':Body');
+ for (var j = 0; j < len; j++) {
+ soapBody.appendChild(this.bodies[j]);
+ }
+ }
+ // Check for main NS over here...
+ if (!soapEnv.attr('xmlns:' + this.prefix)) {
+ soapEnv.addNamespace(this.prefix, this.soapConfig.namespaceURL);
+ }
+ if (!soapEnv.attr('xmlns:xsi')) {
+ soapEnv.addNamespace('xsi', 'http://www.w3.org/2001/XMLSchema-instance');
+ }
+ if (!soapEnv.attr('xmlns:xsd')) {
+ soapEnv.addNamespace('xsd', 'http://www.w3.org/2001/XMLSchema');
+ }
+ return '<?xml version="1.0" encoding="UTF-8"?>' + soapEnv.toString();
+ },
+ send: function (options) {
+ var self = this;
+ if (!this.soapConfig) {
+ this.soapConfig = options.soap12 ? SOAPTool.SOAP12 : SOAPTool.SOAP11;
+ }
+ var contentType = this.soapConfig.type;
+ if (contentType === SOAPTool.SOAP11.type && !!options.action) {
+ options.headers.SOAPAction = options.action;
+ }
+ log('jquery.soap - beforeSend:', this.toString());
+ return $.ajax({
+ type: 'POST',
+ context: options.context,
+ statusCode: options.statusCode,
+ url: options.url,
+ async: options.async,
+ headers: options.headers,
+ timeout: options.timeout,
+ // crossDomain: true,
+ dataType: 'xml',
+ processData: false,
+ data: this.toString(),
+ contentType:
+ contentType +
+ '; charset=UTF-8' +
+ (options.soap12 ? '; action=' + options.action : ''),
+ xhrFields: {
+ // Add xhrFields, and set xhrFields.withCredentials = true by default, otherwise,
+ // it can't send a cross-domain request successfully in Chrome without this settings.
+ // You can use it to set withCredentials to true for cross-domain requests if needed.
+ // More about it is in jQuery official website. (http://api.jquery.com/jquery.ajax/).
+ // I hope it's useful and tested in Chrome & IE 11+ & IE Edge, Thanks.
+ withCredentials: options.withCredentials
+ },
+ // second attempt to get some progres info (but still a no go)
+ // I still keep this in tho, we might see it working one day when browsers mature...
+ /*
+ //WRT issue #80 (https://github.com/doedje/jquery.soap/issues/80) commenting out the xhr function below for IE8 and IE9 compatability. Issue exists when used alongside any script that modifies the XMLHttpRequest object like, for example, the xdomain or xhook libraries. This could be explicitly enabled by users on a per-case basis if it is mentioned somewhere in the readme.md file.
+ xhr: function() {
+ var xhr = new window.XMLHttpRequest();
+ xhr.upload.addEventListener("progress", function(evt) {
+ if (evt.lengthComputable) {
+ var progress = evt.loaded / evt.total;
+ log("jquery.soap - progress up: ", (progress * 100) + '% total: ' + evt.total);
+ }
+ }, false);
+ xhr.addEventListener("progress", function(evt) {
+ if (evt.lengthComputable) {
+ var progress = evt.loaded / evt.total;
+ log("jquery.soap - progress down: ", (progress * 100) + '% total: ' + evt.total);
+ }
+ }, false);
+
+ return xhr;
+ },
+ */
+ beforeSend: function () {
+ if ($.isFunction(options.beforeSend)) {
+ return options.beforeSend.call(options.context, self);
+ }
+ }
+ });
+ }
+};
+
+// SOAPObject - an abstraction layer to build SOAP Objects.
+var SOAPObject = function (name) {
+ this.typeOf = 'SOAPObject';
+ this.name = name;
+ this.ns = {};
+ this.attributes = {};
+ this._parent = null;
+ this.children = [];
+ this.value = undefined;
+};
+
+SOAPObject.prototype = {
+ attr: function (name, value) {
+ if ((!!name && !!value) || (!!name && value === '')) {
+ this.attributes[name] = value;
+ return this;
+ } else if (name) {
+ return this.attributes[name];
+ } else {
+ return this.attributes;
+ }
+ },
+ val: function (value) {
+ if (value === undefined) {
+ if (this.attr('xsi:nil') === 'true') {
+ return null;
+ } else {
+ return this.value;
+ }
+ } else if (value === null) {
+ this.attr('xsi:nil', 'true');
+ return this;
+ } else {
+ this.value = value;
+ return this;
+ }
+ },
+ addNamespace: function (name, url) {
+ this.ns[name] = url;
+ return this;
+ },
+ appendChild: function (obj) {
+ obj._parent = this;
+ this.children.push(obj);
+ return obj;
+ },
+ newChild: function (name) {
+ var obj = new SOAPObject(name);
+ this.appendChild(obj);
+ return obj;
+ },
+ addParameter: function (name, value) {
+ var obj = new SOAPObject(name);
+ obj.val(value);
+ this.appendChild(obj);
+ return this;
+ },
+ hasChildren: function () {
+ return this.children.length > 0 ? true : false;
+ },
+ find: function (name) {
+ if (this.name === name) {
+ return this;
+ } else {
+ for (var i = 0, len = this.children.length; i < len; i++) {
+ var result = this.children[i].find(name);
+ if (result) {
+ return result;
+ }
+ }
+ }
+ },
+ end: function () {
+ return this.parent();
+ },
+ parent: function () {
+ return this._parent;
+ },
+ toString: function () {
+ var out = [],
+ encodedValue;
+ out.push('<' + this.name);
+ //Namespaces
+ for (var name in this.ns) {
+ out.push(' xmlns:' + name + '="' + this.ns[name] + '"');
+ }
+ //Node Attributes
+ for (var attr in this.attributes) {
+ if (typeof this.attributes[attr] === 'string') {
+ out.push(
+ ' ' +
+ attr +
+ '="' +
+ SOAPTool.encodeXmlValue(this.attributes[attr]) +
+ '"'
+ );
+ }
+ }
+ out.push('>');
+ //Node children
+ if (this.hasChildren()) {
+ for (var cPos in this.children) {
+ var cObj = this.children[cPos];
+ if (typeof cObj === 'object' && cObj.typeOf === 'SOAPObject') {
+ out.push(cObj.toString());
+ }
+ }
+ }
+ //Node Value
+ if (this.value !== undefined) {
+ if (typeof this.value === 'string') {
+ switch (this.value.indexOf('<![CDATA[')) {
+ case -1:
+ // no CDATA blocks => encode everything
+ encodedValue = SOAPTool.encodeXmlValue(this.value);
+ break;
+ case 0:
+ if (this.value.indexOf(']]>') === this.value.length - 3) {
+ // entire value wrapped in one single CDATA block => no encoding required
+ encodedValue = this.value;
+ break;
+ }
+ default:
+ // encode with more advanced CDATA check
+ encodedValue = SOAPTool.encodeXmlValueWithCDataCheck(this.value);
+ }
+ } else if (typeof this.value === 'number') {
+ encodedValue = this.value.toString();
+ }
+ out.push(encodedValue);
+ }
+ //Close Tag
+ out.push('</' + this.name + '>');
+ return out.join('');
+ }
+};
+
+//Soap response - this will be passed to the callback from SOAPEnvelope.send
+var SOAPResponse = function (status, xhr) {
+ this.typeOf = 'SOAPResponse';
+ this.status = status;
+ this.headers = xhr.getAllResponseHeaders().split('\n');
+ this.httpCode = xhr.status;
+ this.httpText = xhr.statusText;
+ this.content =
+ xhr.responseXML === undefined || xhr.responseXML === null
+ ? xhr.responseText
+ : xhr.responseXML;
+ this.toString = function () {
+ if (typeof this.content === 'string') {
+ return this.content;
+ }
+ if ($.isXMLDoc(this.content)) {
+ return SOAPTool.dom2string(this.content);
+ }
+ throw new Error('Unexpected Content: ' + $.type(this.content));
+ };
+ this.toXML = function () {
+ if ($.isXMLDoc(this.content)) {
+ return this.content;
+ }
+ return $.parseXML(this.content);
+ };
+ this.toJSON = function () {
+ if ($.xml2json) {
+ return $.xml2json(this.content);
+ }
+ warn(
+ "jQuery.soap - Missing JQuery Plugin 'xml2json', info at: https://github.com/doedje/jquery.soap#dependencies"
+ );
+ };
+};
+
+//Singleton SOAP Tool
+var SOAPTool = {
+ SOAP11: {
+ type: 'text/xml',
+ namespaceURL: 'http://schemas.xmlsoap.org/soap/envelope/'
+ },
+ SOAP12: {
+ type: 'application/soap+xml',
+ namespaceURL: 'http://www.w3.org/2003/05/soap-envelope'
+ },
+ processData: function (options) {
+ var soapObject;
+ if ($.type(options.data) === 'string') {
+ // if data is XML string, parse to XML DOM
+ // ensure that string is not empty and contains more than whitespace
+ if (/\S/.test(options.data)) {
+ if (options.data.indexOf('<') > -1) {
+ options.data = $.parseXML(options.data);
+ } else {
+ // this is for bare parameters #125
+ soapObject = SOAPTool.json2soap(
+ options.name,
+ options.data,
+ options.prefix
+ );
+ }
+ }
+ }
+ if ($.isXMLDoc(options.data)) {
+ // if data is XML DOM, parse to SOAPObject
+ soapObject = SOAPTool.dom2soap(options.data.firstChild);
+ } else if ($.isArray(options.data)) {
+ // if data is an Array, asume SOAP::Lite
+ soapObject = SOAPTool.array2soap(options);
+ } else if ($.isPlainObject(options.data)) {
+ // if data is JSON, parse to SOAPObject
+ soapObject = SOAPTool.json2soap(
+ options.name,
+ options.data,
+ options.prefix
+ );
+ } else if ($.isFunction(options.data)) {
+ // if data is function, the function should return a SOAPObject
+ soapObject = options.data.call(options.context, SOAPObject);
+ }
+ return soapObject;
+ },
+ encodeXmlValue: function (value) {
+ var encodedValue,
+ xmlCharMap = {
+ '<': '<',
+ '>': '>',
+ '&': '&',
+ '"': '"',
+ "'": '''
+ },
+ encodedValue;
+
+ encodedValue = value.replace(/[<>&"']/g, function (ch) {
+ return xmlCharMap[ch];
+ });
+ return encodedValue;
+ },
+ encodeXmlValueWithCDataCheck: function (value) {
+ // This function will only encode the parts within value that are not inside a CDATA section, allowing multiple usages of CDATA-blocks
+ // ie. "encoding here <!CDATA[[ no encoding here ]]> encoding here <!CDATA[[ no encoding here ]]>"
+ var cdata = false,
+ valueArray = value.split(''),
+ encoded = [],
+ char;
+
+ for (var i = 0, j = valueArray.length; i < j; i++) {
+ switch (valueArray[i]) {
+ case '<':
+ if (cdata) {
+ encoded.push('<');
+ } else if (value.substr(i, 9) === '<![CDATA[') {
+ // if no CDATA section started, check if current char is part of CDATA start
+ encoded.push('<![CDATA[');
+ i += 8; // skip CDATA start chars
+ cdata = true;
+ } else {
+ encoded.push('<');
+ }
+ break;
+
+ case ']':
+ if (cdata && value.substr(i, 3) === ']]>') {
+ // if CDATA section started, check if current char is part of CDATA end
+ encoded.push(']]>');
+ i += 2; // skip CDATA end chars
+ cdata = false;
+ } else {
+ encoded.push(']');
+ }
+ break;
+
+ case '>':
+ encoded.push(cdata ? '>' : '>');
+ break;
+ case '&':
+ encoded.push(cdata ? '&' : '&');
+ break;
+ case '"':
+ encoded.push(cdata ? '"' : '"');
+ break;
+ case "'":
+ encoded.push(cdata ? "'" : ''');
+ break;
+ default:
+ encoded.push(valueArray[i]);
+ }
+ }
+ return encoded.join('');
+ },
+ json2soap: function (name, params, prefix, parentNode) {
+ var soapObject;
+ var childObject;
+ if (params === null) {
+ soapObject = new SOAPObject(prefix + name);
+ soapObject.attr('xsi:nil', 'true');
+ } else if (typeof params == 'object') {
+ // added by DT - check if object is in fact an Array and treat accordingly
+ if (params.constructor.toString().indexOf('Array') > -1) {
+ // type is array
+ for (var i = 0, len = params.length; i < len; i++) {
+ childObject = this.json2soap(name, params[i], prefix, parentNode);
+ parentNode.appendChild(childObject);
+ }
+ } else if (params.constructor.toString().indexOf('String') > -1) {
+ // type is string
+ // handle String objects as string primitive value
+ soapObject = new SOAPObject(prefix + name);
+ soapObject.val(params);
+ } else if (params.constructor.toString().indexOf('Date') > -1) {
+ // type is Date
+ // handle Date objects as ISO8601 formated value
+ soapObject = new SOAPObject(prefix + name);
+ soapObject.val(params.toISOString());
+ } else {
+ soapObject = new SOAPObject(prefix + name);
+ for (var y in params) {
+ childObject = this.json2soap(y, params[y], prefix, soapObject);
+ if (childObject) {
+ soapObject.appendChild(childObject);
+ }
+ }
+ }
+ } else if (typeof params == 'boolean') {
+ soapObject = new SOAPObject(prefix + name);
+ soapObject.val(params ? 'true' : 'false');
+ } else {
+ soapObject = new SOAPObject(prefix + name);
+ soapObject.val(params);
+ }
+ return soapObject;
+ },
+ dom2soap: function (xmldom) {
+ var whitespace = /^\s+$/,
+ soapObject = new SOAPObject(xmldom.nodeName),
+ len;
+
+ len = xmldom.attributes.length;
+ for (var i = 0; i < len; i++) {
+ var attribute = xmldom.attributes[i];
+ soapObject.attr(attribute.name, attribute.value);
+ }
+ len = xmldom.childNodes.length;
+ for (var j = 0; j < len; j++) {
+ var child = xmldom.childNodes[j];
+ if (child.nodeType === 1) {
+ var childObject = SOAPTool.dom2soap(child);
+ soapObject.appendChild(childObject);
+ }
+ if (child.nodeType === 3 && !whitespace.test(child.nodeValue)) {
+ soapObject.val(child.nodeValue);
+ }
+ if (child.nodeType === 4) {
+ soapObject.val('<![CDATA[' + child.nodeValue + ']]>');
+ }
+ }
+ return soapObject;
+ },
+ array2soap: function (options) {
+ soapObject = new SOAPObject(options.name);
+ for (var index = 0, len = options.data.length; index < len; index++) {
+ if ($.isArray(options.data[index])) {
+ var new_item = soapObject.newChild('soapenc:Array');
+ new_item.attr(
+ 'soapenc:arrayType',
+ 'xsd:string[' + options.data[index].length + ']'
+ );
+ for (
+ var item = 0, len2 = options.data[index].length;
+ item < len2;
+ item++
+ ) {
+ new_item
+ .newChild('item')
+ .attr('type', 'xsd:string')
+ .val(options.data[index][item])
+ .end();
+ }
+ } else {
+ soapObject
+ .newChild('c-gensym' + index)
+ .attr('type', 'xsd:string')
+ .val(options.data[index])
+ .end();
+ }
+ }
+ return soapObject;
+ },
+ dom2string: function (dom) {
+ if (typeof XMLSerializer !== 'undefined') {
+ return new window.XMLSerializer().serializeToString(dom);
+ } else {
+ return dom.xml;
+ }
+ },
+ createWSS: function (wssValues) {
+ if (!!wssValues.username && !!wssValues.password) {
+ var wssConst = {
+ security: 'wsse:Security',
+ securityNS:
+ 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd',
+ usernameToken: 'wsse:UsernameToken',
+ usernameTokenNS:
+ 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd',
+ username: 'wsse:Username',
+ usernameType:
+ 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd',
+ password: 'wsse:Password',
+ passwordType:
+ 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText',
+ nonce: 'wsse:Nonce',
+ nonceType:
+ 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd',
+ wsuCreated: 'wsu:Created',
+ wsuCreatedType:
+ 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd'
+ };
+ var WSSObj = new SOAPObject(wssConst.security)
+ .addNamespace('wsse', wssConst.securityNS)
+ .addNamespace('wsu', wssConst.usernameTokenNS)
+ .newChild(wssConst.usernameToken)
+ .newChild(wssConst.username)
+ .attr('Type', wssConst.usernameType)
+ .val(wssValues.username)
+ .end()
+ .newChild(wssConst.password)
+ .attr('Type', wssConst.passwordType)
+ .val(wssValues.password)
+ .end()
+ .end();
+ var userTokenObj = WSSObj.find(wssConst.usernameToken);
+ if (wssValues.nonce) {
+ userTokenObj
+ .newChild(wssConst.nonce)
+ .attr('Type', wssConst.nonceType)
+ .val(wssValues.nonce);
+ }
+ if (wssValues.created) {
+ userTokenObj
+ .newChild(wssConst.wsuCreated)
+ .attr('Type', wssConst.wsuCreatedType)
+ .val(wssValues.created);
+ }
+ return WSSObj;
+ }
+ },
+ fallbackDeprecated: function (config) {
+ // fallbacks for changed properties: (the old names will deprecate at version 2.0.0!)
+ var deprecated = {
+ // usage -> oldParam: 'newParam'
+ namespaceUrl: 'namespaceURL',
+ request: 'beforeSend',
+ params: 'data'
+ };
+ for (var oldParam in deprecated) {
+ var newParam = deprecated[oldParam];
+ if (!config[newParam] && !!config[oldParam]) {
+ warn(
+ 'jquery.soap: ' +
+ oldParam +
+ ' is deprecated, use ' +
+ newParam +
+ ' instead!'
+ );
+ config[newParam] = config[oldParam];
+ delete config[oldParam];
+ }
+ }
+ }
+};
+function log() {
+ if (enableLogging && typeof console === 'object') {
+ if ($.isFunction(console.log)) {
+ if (arguments.length == 1) {
+ console.log(arguments[0]);
+ } else {
+ console.log(arguments);
+ }
+ }
+ }
+}
+function warn() {
+ if (typeof console === 'object') {
+ if ($.isFunction(console.warn)) {
+ if (arguments.length == 1) {
+ console.warn(arguments[0]);
+ } else {
+ console.warn(arguments);
+ }
+ }
+ }
+}
+$.soap = soap;
diff --git a/src/lib/jquery.xml2json.js b/src/lib/jquery.xml2json.js
new file mode 100644
index 0000000..1f15cfb
--- /dev/null
+++ b/src/lib/jquery.xml2json.js
@@ -0,0 +1,200 @@
+/*
+ ### jQuery XML to JSON Plugin v1.3 - 2013-02-18 ###
+ * https://www.fyneworks.com/ - diego@fyneworks.com
+ * Licensed under http://en.wikipedia.org/wiki/MIT_License
+ ###
+ Website: http://www.fyneworks.com/jquery/xml-to-json/
+*/ /*
+ # INSPIRED BY: http://www.terracoder.com/
+ AND: http://www.thomasfrank.se/xml_to_json.html
+ AND: http://www.kawa.net/works/js/xml/objtree-e.html
+*/ /*
+ This simple script converts XML (document of code) into a JSON object. It is the combination of 2
+ 'xml to json' great parsers (see below) which allows for both 'simple' and 'extended' parsing modes.
+*/
+import $ from 'jquery';
+// Avoid collisions
+
+// Add function to jQuery namespace
+$.extend({
+ // converts xml documents and xml text to json object
+ xml2json: function (xml, extended) {
+ if (!xml) return {}; // quick fail
+
+ //### PARSER LIBRARY
+ // Core function
+ function parseXML(node, simple) {
+ if (!node) return null;
+ var txt = '',
+ obj = null,
+ att = null;
+ var nt = node.nodeType,
+ nn = jsVar(node.localName || node.nodeName);
+ var nv = node.text || node.nodeValue || '';
+ /*DBG*/ //if(window.console) console.log(['x2j',nn,nt,nv.length+' bytes']);
+ if (node.childNodes) {
+ if (node.childNodes.length > 0) {
+ /*DBG*/ //if(window.console) console.log(['x2j',nn,'CHILDREN',node.childNodes]);
+ $.each(node.childNodes, function (n, cn) {
+ var cnt = cn.nodeType,
+ cnn = jsVar(cn.localName || cn.nodeName);
+ var cnv = cn.text || cn.nodeValue || '';
+ /*DBG*/ //if(window.console) console.log(['x2j',nn,'node>a',cnn,cnt,cnv]);
+ if (cnt == 8) {
+ /*DBG*/ //if(window.console) console.log(['x2j',nn,'node>b',cnn,'COMMENT (ignore)']);
+ return; // ignore comment node
+ } else if (cnt == 3 || cnt == 4 || !cnn) {
+ // ignore white-space in between tags
+ if (cnv.match(/^\s+$/)) {
+ /*DBG*/ //if(window.console) console.log(['x2j',nn,'node>c',cnn,'WHITE-SPACE (ignore)']);
+ return;
+ }
+ /*DBG*/ //if(window.console) console.log(['x2j',nn,'node>d',cnn,'TEXT']);
+ txt += cnv.replace(/^\s+/, '').replace(/\s+$/, '');
+ // make sure we ditch trailing spaces from markup
+ } else {
+ /*DBG*/ //if(window.console) console.log(['x2j',nn,'node>e',cnn,'OBJECT']);
+ obj = obj || {};
+ if (obj[cnn]) {
+ /*DBG*/ //if(window.console) console.log(['x2j',nn,'node>f',cnn,'ARRAY']);
+
+ // http://forum.jquery.com/topic/jquery-jquery-xml2json-problems-when-siblings-of-the-same-tagname-only-have-a-textnode-as-a-child
+ if (!obj[cnn].length) obj[cnn] = myArr(obj[cnn]);
+ obj[cnn] = myArr(obj[cnn]);
+
+ obj[cnn][obj[cnn].length] = parseXML(cn, true /* simple */);
+ obj[cnn].length = obj[cnn].length;
+ } else {
+ /*DBG*/ //if(window.console) console.log(['x2j',nn,'node>g',cnn,'dig deeper...']);
+ obj[cnn] = parseXML(cn);
+ }
+ }
+ });
+ } //node.childNodes.length>0
+ } //node.childNodes
+ if (node.attributes) {
+ if (node.attributes.length > 0) {
+ /*DBG*/ //if(window.console) console.log(['x2j',nn,'ATTRIBUTES',node.attributes])
+ att = {};
+ obj = obj || {};
+ $.each(node.attributes, function (a, at) {
+ var atn = jsVar(at.name),
+ atv = at.value;
+ att[atn] = atv;
+ if (obj[atn]) {
+ /*DBG*/ //if(window.console) console.log(['x2j',nn,'attr>',atn,'ARRAY']);
+
+ // http://forum.jquery.com/topic/jquery-jquery-xml2json-problems-when-siblings-of-the-same-tagname-only-have-a-textnode-as-a-child
+ //if(!obj[atn].length) obj[atn] = myArr(obj[atn]);//[ obj[ atn ] ];
+ obj[cnn] = myArr(obj[cnn]);
+
+ obj[atn][obj[atn].length] = atv;
+ obj[atn].length = obj[atn].length;
+ } else {
+ /*DBG*/ //if(window.console) console.log(['x2j',nn,'attr>',atn,'TEXT']);
+ obj[atn] = atv;
+ }
+ });
+ //obj['attributes'] = att;
+ } //node.attributes.length>0
+ } //node.attributes
+ if (obj) {
+ obj = $.extend(
+ txt != '' ? new String(txt) : {},
+ /* {text:txt},*/ obj || {} /*, att || {}*/
+ );
+ //txt = (obj.text) ? (typeof(obj.text)=='object' ? obj.text : [obj.text || '']).concat([txt]) : txt;
+ txt = obj.text ? [obj.text || ''].concat([txt]) : txt;
+ if (txt) obj.text = txt;
+ txt = '';
+ }
+ var out = obj || txt;
+ //console.log([extended, simple, out]);
+ if (extended) {
+ if (txt) out = {}; //new String(out);
+ txt = out.text || txt || '';
+ if (txt) out.text = txt;
+ if (!simple) out = myArr(out);
+ }
+ return out;
+ } // parseXML
+ // Core Function End
+ // Utility functions
+ var jsVar = function (s) {
+ return String(s || '').replace(/-/g, '_');
+ };
+
+ // NEW isNum function: 01/09/2010
+ // Thanks to Emile Grau, GigaTecnologies S.L., www.gigatransfer.com, www.mygigamail.com
+ function isNum(s) {
+ // based on utility function isNum from xml2json plugin (http://www.fyneworks.com/ - diego@fyneworks.com)
+ // few bugs corrected from original function :
+ // - syntax error : regexp.test(string) instead of string.test(reg)
+ // - regexp modified to accept comma as decimal mark (latin syntax : 25,24 )
+ // - regexp modified to reject if no number before decimal mark : ".7" is not accepted
+ // - string is "trimmed", allowing to accept space at the beginning and end of string
+ var regexp = /^((-)?([0-9]+)(([\.\,]{0,1})([0-9]+))?$)/;
+ return (
+ typeof s == 'number' ||
+ regexp.test(String(s && typeof s == 'string' ? jQuery.trim(s) : ''))
+ );
+ }
+ // OLD isNum function: (for reference only)
+ //var isNum = function(s){ return (typeof s == "number") || String((s && typeof s == "string") ? s : '').test(/^((-)?([0-9]*)((\.{0,1})([0-9]+))?$)/); };
+
+ var myArr = function (o) {
+ // http://forum.jquery.com/topic/jquery-jquery-xml2json-problems-when-siblings-of-the-same-tagname-only-have-a-textnode-as-a-child
+ //if(!o.length) o = [ o ]; o.length=o.length;
+ if (!$.isArray(o)) o = [o];
+ o.length = o.length;
+
+ // here is where you can attach additional functionality, such as searching and sorting...
+ return o;
+ };
+ // Utility functions End
+ //### PARSER LIBRARY END
+
+ // Convert plain text to xml
+ if (typeof xml == 'string') xml = $.text2xml(xml);
+
+ // Quick fail if not xml (or if this is a node)
+ if (!xml.nodeType) return;
+ if (xml.nodeType == 3 || xml.nodeType == 4) return xml.nodeValue;
+
+ // Find xml root node
+ var root = xml.nodeType == 9 ? xml.documentElement : xml;
+
+ // Convert xml to json
+ var out = parseXML(root, true /* simple */);
+
+ // Clean-up memory
+ xml = null;
+ root = null;
+
+ // Send output
+ return out;
+ },
+
+ // Convert text to XML DOM
+ text2xml: function (str) {
+ // NOTE: I'd like to use jQuery for this, but jQuery makes all tags uppercase
+ //return $(xml)[0];
+
+ /* prior to jquery 1.9 */
+ /*
+ var out;
+ try{
+ var xml = ((!$.support.opacity && !$.support.style))?new ActiveXObject("Microsoft.XMLDOM"):new DOMParser();
+ xml.async = false;
+ }catch(e){ throw new Error("XML Parser could not be instantiated") };
+ try{
+ if((!$.support.opacity && !$.support.style)) out = (xml.loadXML(str))?xml:false;
+ else out = xml.parseFromString(str, "text/xml");
+ }catch(e){ throw new Error("Error parsing XML string") };
+ return out;
+ */
+
+ /* jquery 1.9+ */
+ return $.parseXML(str);
+ }
+}); // extend $
diff --git a/src/model/Factor.js b/src/model/Factor.js
index f142012..354a585 100644
--- a/src/model/Factor.js
+++ b/src/model/Factor.js
@@ -1,6 +1,7 @@
import { Legend } from './Legend';
const _hMap = {
+ 19: [0, 1000], //NO
1: [0, 1000], //NO2
2: [0, 2000], //CO
3: [0, 1000], //H2S
diff --git a/src/model/FactorDatas.js b/src/model/FactorDatas.js
index 58bc5a8..d3c2c1a 100644
--- a/src/model/FactorDatas.js
+++ b/src/model/FactorDatas.js
@@ -47,6 +47,9 @@
}]
*/
setData: function (dataList, drawMode, callback) {
+ if (dataList.length == 0) {
+ return;
+ }
this.clearData();
dataList.forEach((d) => {
@@ -67,6 +70,10 @@
// 鏂板涓�涓柊鏁版嵁
addData: function (dataList, drawMode, callback) {
+ if (dataList.length == 0) {
+ return;
+ }
+
var newGps = [];
dataList.forEach((data) => {
this.times.push(data.time);
diff --git a/src/model/FrameAnimation.js b/src/model/FrameAnimation.js
index 4ef624d..211fa0f 100644
--- a/src/model/FrameAnimation.js
+++ b/src/model/FrameAnimation.js
@@ -17,7 +17,7 @@
this.isPause = false;
this.isRunning = false;
- this.isStop = false;
+ this.isStop = true;
// 鏄惁寮�鍚姩鎬佺粯鍒堕�熷害
this.dynamicSpeed = false;
// 姣忎釜浠诲姟鑰楁椂锛堢锛�
@@ -28,13 +28,13 @@
FrameAnimation.prototype = {
start: function () {
- if (this.intervalFlag != undefined) {
- this.isPause = false;
- this.isStop = false;
- } else {
- this.isRunning = true;
+ // 涓嶅瓨鍦ㄥ姩鐢讳换鍔℃椂閲嶆柊寮�濮嬶紝鍚﹀垯缁х画
+ if (this.intervalFlag == undefined) {
this._doTask();
}
+ this.isPause = false;
+ this.isStop = false;
+ this.isRunning = true;
},
/**
* 鍔ㄦ�佸姩鐢婚�熷害
@@ -67,8 +67,11 @@
},
pause: function () {
this.isPause = true;
+ this.isRunning = false;
},
stop: function () {
+ if (this.isStop) return;
+
if (this.intervalFlag != undefined) {
clearInterval(this.intervalFlag);
this.intervalFlag = undefined;
diff --git a/src/model/Legend.js b/src/model/Legend.js
index 304934e..dffc4e0 100644
--- a/src/model/Legend.js
+++ b/src/model/Legend.js
@@ -8,6 +8,7 @@
//鍚勭洃娴嬪洜瀛愭暟鎹垎绾э紙鏍囧噯锛�
_legend_r: {
+ NO: [0, 100, 200, 700, 1200, 2340],
NO2: [0, 100, 200, 700, 1200, 2340],
CO: [0, 5, 10, 35, 60, 90],
H2S: [0, 150, 500, 650, 800, 1600],
@@ -25,6 +26,14 @@
//鍚勭洃娴嬪洜瀛愭暟鎹垎绾э紙鏍囧噯锛夊搴旈鑹�
_legend_c: {
+ NO: [
+ [0, 0.89, 0, 0.75],
+ [1, 1, 0, 0.75],
+ [1, 0.49, 0, 0.75],
+ [1, 0, 0, 0.75],
+ [0.6, 0, 0.3, 0.75],
+ [0.49, 0, 0.14, 0.75]
+ ],
NO2: [
[0, 0.89, 0, 0.75],
[1, 1, 0, 0.75],
diff --git a/src/router/index.js b/src/router/index.js
index 3587b77..1c06db5 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -6,7 +6,7 @@
routes: [
{
path: '/',
- redirect: '/index/hmode'
+ redirect: '/login'
},
// 鐧婚檰椤甸潰
{
diff --git a/src/styles/elementUI.scss b/src/styles/elementUI.scss
index b3203b6..30ea08a 100644
--- a/src/styles/elementUI.scss
+++ b/src/styles/elementUI.scss
@@ -2,13 +2,8 @@
// --el-text-color-regular: #ffffff;
}
-.el-form-item {
- margin-bottom: 0px;
- margin-right: 8px !important;
-}
-
.el-form-item__label {
- color: white !important;
+ color: rgba(255, 255, 255, 0.849) !important;
}
// .el-radio {
diff --git a/src/test.xml b/src/test.xml
new file mode 100644
index 0000000..201fdee
--- /dev/null
+++ b/src/test.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <soap:Body>
+ <GetData>
+ <compUser>user1</compUser>
+ <compPassword>User1@jingan</compPassword>
+ <mn>TX105</mn>
+ <dtFrom>2024-08-07 10:00:00</dtFrom>
+ <dtTo>2024-08-07 10:00:59</dtTo>
+ </GetData>
+ </soap:Body>
+</soap:Envelope>
\ No newline at end of file
diff --git a/src/utils/chart/chart-option.js b/src/utils/chart/chart-option.js
index 06357e1..5ce5a26 100644
--- a/src/utils/chart/chart-option.js
+++ b/src/utils/chart/chart-option.js
@@ -48,6 +48,8 @@
},
xAxis: {
name: '鏃堕棿',
+ nameLocation: 'middle',
+ nameGap: 30,
data: _xAxis,
axisLabel: {
textStyle: {
@@ -74,7 +76,16 @@
}
},
yAxis: {
- name: '娴撳害(渭g/m鲁)',
+ name: '娴撳害(渭g/m鲁)/娓╁害(鈩�)/閫熷害(m/s)',
+ nameLocation: 'middle',
+ nameGap: 30,
+ // nameTruncate: {
+ // maxWidth: 100,
+ // ellipsis: '...'
+ // },
+ // nameTextStyle: {
+ // color: 'red'
+ // },
axisLabel: {
textStyle: {
fontSize: fontSize
diff --git a/src/utils/factor/data.js b/src/utils/factor/data.js
new file mode 100644
index 0000000..472ccbc
--- /dev/null
+++ b/src/utils/factor/data.js
@@ -0,0 +1,246 @@
+/**
+ * 鏁版嵁鑾峰彇绠$悊
+ */
+import '@/lib/jquery.xml2json';
+import 'jquery.soap';
+// import '@/lib/jquery.soap';
+import $ from 'jquery';
+import moment from 'moment';
+import monitorDataApi from '@/api/monitorDataApi';
+import { ElMessage } from 'element-plus';
+import { parseFloatNAN } from '@/utils/number';
+
+/**************************--鏈郴缁熷師濮嬭蛋鑸暟鎹幏鍙�--*********************************/
+/**
+ * 鑾峰彇鍘嗗彶鏁版嵁
+ * @param {Object} params
+ * @returns
+ */
+function fetchOriginHistoryData(params) {
+ return monitorDataApi.fetchHistroyData(params);
+}
+
+/**
+ * 鑾峰彇瀹炴椂鏈�鏂版暟鎹�
+ * @param {Object} params
+ * @returns
+ */
+function fetchOriginRealTimeData(params) {
+ return monitorDataApi.fetchNextData(params);
+}
+
+/**************************--绗笁鏂圭敵娆g幆淇濊蛋鑸暟鎹幏鍙�--*********************************/
+
+/**
+ * 鑾峰彇鐢虫鐜繚璧拌埅鏁版嵁
+ * @date 2024.8.16
+ * @param {Object} params
+ * @returns
+ */
+function fetchThirdPartyData(params) {
+ return new Promise((resolve, reject) => {
+ $.soap({
+ // url: 'http://180.169.129.106:9001/WebService.asmx',
+ url: 'http://114.215.109.124:8082/jingan/WebService.asmx',
+ method: 'GetData',
+ appendMethodToURL: false,
+ namespaceURL: 'http://tempuri.org/',
+ SOAPAction: 'http://tempuri.org/GetData',
+ data: params,
+ success: function (soapResponse) {
+ const json = $.xml2json(soapResponse.toString());
+ // console.log(json);
+ // todo 2024.8.16 鏁版嵁鏍煎紡杞崲
+ const res = json.Body.GetDataResponse.GetDataResult;
+ if (res.ReturnCode != '0') {
+ reject(soapResponse);
+ ElMessage({
+ message: res.ReturnMessage,
+ type: 'error'
+ });
+ } else if (typeof res.ListInfo != 'object') {
+ resolve({
+ success: true,
+ message: '璇锋眰鎴愬姛',
+ data: []
+ });
+ // reject(soapResponse);
+ ElMessage({
+ message: '鏆傛棤鏂扮洃娴嬫暟鎹�',
+ type: 'warning'
+ });
+ } else {
+ // 姝ゅ鏈変竴涓� $.xml2json 鏂规硶鐨勪竴涓壒鎬э紝褰撳瓧娈礑ataInfo涓彧鏈変竴涓�兼椂锛屾鏃禗ataInfo涓哄璞$被鍨嬶紝鑰岄潪鏁扮粍
+ if (res.ListInfo.DataInfo.length == undefined) {
+ res.ListInfo.DataInfo = [res.ListInfo.DataInfo];
+ }
+ const _res = res.ListInfo.DataInfo.map((value) => {
+ const _time = moment(value.PostTime).format('YYYY-MM-DD HH:mm:ss');
+ return {
+ deviceCode: params.mn,
+ lat: parseFloat(value.Lat),
+ lng: parseFloat(value.Lon),
+ time: _time,
+ values: [
+ {
+ factorId: '19',
+ factorName: 'NO',
+ factorData: parseFloatNAN(value.NO)
+ },
+ {
+ factorId: '1',
+ factorName: 'NO2',
+ factorData: parseFloatNAN(value.NO2)
+ },
+ {
+ factorId: '2',
+ factorName: 'CO',
+ factorData: parseFloatNAN(value.CO) * 1000
+ },
+ {
+ factorId: '6',
+ factorName: 'PM25',
+ factorData: parseFloatNAN(value.PM25)
+ },
+ {
+ factorId: '7',
+ factorName: 'PM10',
+ factorData: parseFloatNAN(value.PM10)
+ },
+ {
+ factorId: '8',
+ factorName: 'TEMPERATURE',
+ factorData: parseFloatNAN(value.Temperature)
+ },
+ {
+ factorId: '14',
+ factorName: 'VELOCITY',
+ factorData: parseFloatNAN(value.Speed)
+ },
+ {
+ factorId: '15',
+ factorName: 'TIME',
+ factorData: moment(_time).valueOf(),
+ statusList: [_time]
+ },
+ {
+ factorId: '16',
+ factorName: 'WIND_SPEED',
+ factorData: parseFloatNAN(value.WindSpeed)
+ },
+ {
+ factorId: '17',
+ factorName: 'WIND_DIRECTION',
+ factorData: parseFloatNAN(value.WindDirection)
+ }
+ ]
+ };
+ });
+ resolve({
+ success: true,
+ message: '璇锋眰鎴愬姛',
+ data: _res
+ });
+ }
+ },
+ error: function (SOAPResponse) {
+ // show error
+ reject(SOAPResponse);
+ ElMessage({
+ message: '鏁版嵁鑾峰彇澶辫触',
+ type: 'error'
+ });
+ }
+ });
+ });
+}
+
+/**************************--瀵瑰鏆撮湶缁熶竴鎺ュ彛--*********************************/
+/**
+ * 鑾峰彇鍘嗗彶鏁版嵁
+ */
+function fetchHistoryData(params) {
+ if (import.meta.env.VITE_DATA_MODE == 'jingan') {
+ const _params = {
+ compUser: 'user1',
+ compPassword: 'User1@jingan',
+ mn: params.deviceCode,
+ dtFrom: params.startTime
+ ? params.startTime
+ : moment().subtract(6, 'm').format('YYYY-MM-DD HH:mm:ss'),
+ dtTo: params.endTime
+ ? params.endTime
+ : moment().format('YYYY-MM-DD HH:mm:ss')
+ };
+ return fetchThirdPartyData(_params);
+ } else {
+ return fetchOriginHistoryData(params);
+ }
+}
+
+var fetchingTask;
+var isFetching;
+/**
+ * 寮�鍚疄鏃舵暟鎹惊鐜幏鍙�
+ * @param {Object} params
+ */
+function startLoopFetchRealTimeData(onParam, callback) {
+ // 鏃堕棿闂撮殧
+ let interval;
+ // 鏁版嵁鑾峰彇鏂规硶
+ let fetchFun;
+ if (import.meta.env.VITE_DATA_MODE == 'jingan') {
+ // 璇ユ暟鎹紶杈撴渶浣庨棿闅斾负1鍒嗛挓锛屾瘡娆¤幏鍙栫粨鏉熸椂闂磋嚜鍔ㄨ皟鏁翠负寮�濮嬫椂闂寸殑1鍒嗛挓鍚�
+ fetchFun = fetchThirdPartyData;
+ interval = 60 * 1000;
+ } else {
+ fetchFun = fetchOriginRealTimeData;
+ interval = 10 * 1000;
+ }
+ // 寮�濮嬪惊鐜换鍔�
+ clearFetchingTask();
+ fetchingTask = setInterval(() => {
+ if (isFetching) {
+ return;
+ }
+ isFetching = true;
+ // 鍙傛暟
+ let _params;
+ if (typeof onParam === 'function') {
+ const params = onParam();
+ if (import.meta.env.VITE_DATA_MODE == 'jingan') {
+ _params = {
+ compUser: 'user1',
+ compPassword: 'User1@jingan',
+ mn: params.deviceCode,
+ dtFrom: params.updateTime,
+ dtTo: moment().format('YYYY-MM-DD HH:mm:ss')
+ };
+ } else {
+ _params = params;
+ }
+ }
+ fetchFun(_params)
+ .then((res) => {
+ if (typeof callback === 'function') {
+ callback(res);
+ }
+ })
+ .finally(() => {
+ isFetching = false;
+ });
+ }, interval);
+}
+
+/**
+ * 娓呯悊鍘嗗彶瀹炴椂鏁版嵁鑾峰彇浠诲姟
+ */
+function clearFetchingTask() {
+ if (fetchingTask) {
+ clearInterval(fetchingTask);
+ fetchingTask = undefined;
+ isFetching = false;
+ }
+}
+
+export { fetchHistoryData, startLoopFetchRealTimeData, clearFetchingTask };
diff --git a/src/utils/map/dialog.js b/src/utils/map/dialog.js
index 900ac0c..713af62 100644
--- a/src/utils/map/dialog.js
+++ b/src/utils/map/dialog.js
@@ -21,8 +21,9 @@
* @param {*} onClose 鍏抽棴寮瑰嚭妗嗗洖璋�
* @returns
*/
- createInfoWindow(factorDatas, i, onClose) {
+ createInfoWindow(deviceCode, factorDatas, i, onClose) {
let m = {
+ deviceCode: deviceCode,
data: factorDatas,
index: i,
window: '',
@@ -76,9 +77,9 @@
const time = marker.time;
const factorList = marker.factorList;
//瀹炰緥鍖栦俊鎭獥浣�
- // var title = '<div>' + site.name + '</div>' + '<div class="sub-title">缂栧彿:' + site.code + '</div>',
- var title = '',
- content = '',
+ // var title = '<div class="time">缂栧彿:' + marker.deviceCode + '</div>';
+ var title = '缂栧彿:' + marker.deviceCode;
+ var content = '',
tag = '';
tag += "<div class='time'>" + '鏃堕棿: ' + time;
@@ -127,6 +128,7 @@
var orderList = [
'VOC',
'H2S',
+ 'NO',
'NO2',
'CO',
'SO2',
@@ -139,7 +141,10 @@
'WIND_DIRECTION'
];
orderList.forEach((e) => {
- content += _contents.get(e);
+ const c = _contents.get(e);
+ if (c != undefined) {
+ content += c;
+ }
});
// content +=
@@ -162,11 +167,12 @@
var top_t = document.createElement('div');
top_t.className = 'ff-border-top';
var top_c = document.createElement('div');
- top_c.className = 'ff-border-content flexbox flex-space-between';
+ top_c.className = 'text-clz ff-border-content flexbox flex-space-between';
var titleD = document.createElement('div');
- var closeX = document.createElement('i');
- titleD.innerHTML = title;
+ var closeX = document.createElement('div');
+ $(titleD).text(title);
+ // titleD.className = 'time';
closeX.className = 'text-close';
$(closeX).attr('aria-hidden', 'true');
$(closeX).text('X');
@@ -247,9 +253,9 @@
return info;
},
- openNewWindow(factorDatas, i, onClose) {
+ openNewWindow(deviceCode, factorDatas, i, onClose) {
if (!this.show) return;
- const window = this.createInfoWindow(factorDatas, i, onClose);
+ const window = this.createInfoWindow(deviceCode, factorDatas, i, onClose);
window.open(map, factorDatas.lnglats_GD[i]);
},
diff --git a/src/utils/map/sector.js b/src/utils/map/sector.js
index de4a8b5..32a88e6 100644
--- a/src/utils/map/sector.js
+++ b/src/utils/map/sector.js
@@ -109,7 +109,7 @@
function drawSectorMesh(sDeg, eDeg, lnglat, distance, distance2) {
if (distance == 0 || distance2 == 0) {
- return;
+ return false;
}
// eslint-disable-next-line no-undef
var sector = new AMap.Object3D.Mesh();
@@ -167,6 +167,7 @@
}
object3Dlayer.add(sector);
_sector = sector;
+ return true;
}
function drawTextMaker(list, list2, distance, distance2) {
@@ -247,13 +248,14 @@
* @returns 鏁版嵁鍧愭爣鐐瑰拰鎵囧舰鏈�澶у崐寰�
*/
drawSector(fDatas, i) {
- if (_sector != undefined) {
- this.clearSector();
- }
+ this.clearSector();
const { sDeg, eDeg, lnglat, distance, distance2, list, list2 } =
sectorParams(fDatas, i);
- drawSectorMesh(sDeg, eDeg, lnglat, distance, distance2);
- drawElasticMarker(list, list2, distance, distance2);
+ if (drawSectorMesh(sDeg, eDeg, lnglat, distance, distance2)) {
+ // 褰撻閫熷ぇ浜�0缁樺埗浜嗘墖褰㈡椂锛屾墠缁樺埗瀵瑰簲鐨勮窛绂荤瓑鏂囨湰鏍囪
+ // drawElasticMarker(list, list2, distance, distance2);
+ drawTextMaker(list, list2, distance, distance2);
+ }
return { p: lnglat, r: distance };
},
@@ -266,7 +268,8 @@
this.clearSectorMesh();
const { sDeg, eDeg, lnglat, distance, distance2, list, list2 } =
sectorParams(fDatas, i);
- drawSectorMesh(sDeg, eDeg, lnglat, distance, distance2);
- drawTextMaker(list, list2, distance, distance2);
+ if (drawSectorMesh(sDeg, eDeg, lnglat, distance, distance2)) {
+ drawTextMaker(list, list2, distance, distance2);
+ }
}
};
diff --git a/src/utils/number.js b/src/utils/number.js
new file mode 100644
index 0000000..4792e4c
--- /dev/null
+++ b/src/utils/number.js
@@ -0,0 +1,4 @@
+export function parseFloatNAN(t) {
+ const res = parseFloat(t);
+ return isNaN(res) ? 0 : res;
+}
diff --git a/src/views/LoginPage.vue b/src/views/LoginPage.vue
index ae1bd3e..e02c33d 100644
--- a/src/views/LoginPage.vue
+++ b/src/views/LoginPage.vue
@@ -1,9 +1,190 @@
<template>
- <div>LoginPage</div>
+ <div class="background">
+ <div class="title-content">椋炵窘澶ф皵鐜鏅鸿兘璧拌埅鐩戞祴绯荤粺</div>
+
+ <div class="flexbox flex-space-around">
+ <img :src="underwayPng" alt="璧拌埅鐩戞祴" class="img-1" />
+
+ <div class="input-box flexbox">
+ <div class="flexbox-col align-items" style="margin: auto">
+ <div class="flexbox-col input-content flex-space-between">
+ <el-form
+ :model="formObj"
+ ref="formRef"
+ :rules="rules"
+ label-position="top"
+ >
+ <el-form-item label="鐢ㄦ埛鍚�" prop="userName">
+ <el-input
+ size="default"
+ v-model="formObj.userName"
+ placeholder="鐢ㄦ埛鍚�"
+ style="width: 200px"
+ />
+ </el-form-item>
+ <el-form-item label="瀵嗙爜" prop="password">
+ <el-input
+ size="default"
+ type="password"
+ show-password
+ v-model="formObj.password"
+ placeholder="瀵嗙爜"
+ style="width: 200px"
+ />
+ </el-form-item>
+ </el-form>
+ </div>
+ <div class="btn-login" @click="login">鐧诲綍</div>
+ </div>
+ </div>
+ </div>
+ </div>
</template>
<script>
+import underwayPng from '@/assets/mipmap/underway-2.png';
+import { ElMessage } from 'element-plus';
+
export default {
- name: 'LoginPage'
+ data() {
+ return {
+ underwayPng: underwayPng,
+ formObj: {},
+ rules: {
+ userName: [
+ {
+ required: true,
+ message: '璇疯緭鍏ョ敤鎴峰悕',
+ trigger: 'blur'
+ }
+ ],
+ password: [
+ {
+ required: true,
+ message: '璇疯緭鍏ュ瘑鐮�',
+ trigger: 'blur'
+ }
+ ]
+ }
+ };
+ },
+ methods: {
+ login() {
+ this.$refs.formRef.validate((valid) => {
+ if (valid) {
+ if (
+ this.formObj.userName == 'jingan' &&
+ this.formObj.password == 'jingan123'
+ ) {
+ this.$router.replace('/index/hmode');
+ } else {
+ ElMessage({
+ message: '鐢ㄦ埛鍚嶆垨瀵嗙爜閿欒',
+ type: 'error'
+ });
+ }
+ }
+ });
+ }
+ }
};
</script>
+<style scoped>
+.background {
+ background-color: #002378;
+ position: absolute;
+ left: 0;
+ top: 0;
+ bottom: 0;
+ width: 100%;
+ height: 100%;
+ min-height: 768px;
+ min-width: 1366px;
+}
+
+.title-content {
+ /* position: absolute; */
+ width: 100%;
+ height: 200px;
+ padding: 3vh 0 0 0;
+ /* top: 80px;
+ left: 0;
+ right: 0; */
+ color: white;
+ font-size: 1.4rem;
+ display: flex;
+ justify-content: center;
+ background-image: url('@/assets/mipmap/title_bg.png');
+ background-size: contain;
+ background-repeat: no-repeat;
+}
+
+.img-1 {
+ min-height: 500px;
+ height: 60vh;
+ /* margin-left: 6vw; */
+}
+
+.input-box {
+ width: 400px;
+ height: 420px;
+ /* background-color: aquamarine; */
+ background-image: url('@/assets/mipmap/border.png');
+ background-size: 100% 100%;
+ color: white;
+}
+
+.input-content {
+}
+
+.input-content .text-box {
+ width: 220px;
+ height: 28px;
+ font-size: 12px;
+ border-radius: 6px;
+}
+
+.btn-login {
+ margin-top: 20px;
+ border-radius: 6px;
+ padding: 8px 60px;
+ box-shadow: 10px 10px 10px rgba(39, 39, 39, 0.473);
+ background: -moz-linear-gradient(
+ left,
+ rgb(109, 213, 231),
+ rgb(80, 166, 202),
+ rgb(65, 141, 186),
+ rgb(33, 90, 154),
+ rgb(13, 56, 133),
+ rgb(11, 53, 131)
+ );
+ background: -ms-linear-gradient(
+ left,
+ rgb(109, 213, 231),
+ rgb(80, 166, 202),
+ rgb(65, 141, 186),
+ rgb(33, 90, 154),
+ rgb(13, 56, 133),
+ rgb(11, 53, 131)
+ );
+ background: -o-linear-gradient(
+ left,
+ rgb(109, 213, 231),
+ rgb(80, 166, 202),
+ rgb(65, 141, 186),
+ rgb(33, 90, 154),
+ rgb(13, 56, 133),
+ rgb(11, 53, 131)
+ );
+ background: -webkit-linear-gradient(
+ left,
+ rgb(109, 213, 231),
+ rgb(80, 166, 202),
+ rgb(65, 141, 186),
+ rgb(33, 90, 154),
+ rgb(13, 56, 133),
+ rgb(11, 53, 131)
+ );
+ cursor: pointer;
+}
+</style>
diff --git a/src/views/historymode/HistoryMode copy.vue b/src/views/historymode/HistoryMode copy.vue
new file mode 100644
index 0000000..9421a94
--- /dev/null
+++ b/src/views/historymode/HistoryMode copy.vue
@@ -0,0 +1,237 @@
+<template>
+ <div class="p-events-none m-t-2">
+ <el-row justify="center" align="middle" class="top-wrap">
+ <SearchBar
+ v-show="status == 0"
+ :search-time="searchTime"
+ :loading="loading"
+ @search="fetchHistroyData"
+ ></SearchBar>
+ <TrajectoryState v-show="status != 0" :status="status"></TrajectoryState>
+ </el-row>
+ <el-row class="m-t-2">
+ <FactorRadio
+ :device-type="deviceType"
+ @change="(e) => (factorType = e)"
+ ></FactorRadio>
+ </el-row>
+ <el-row class="m-t-2">
+ <FactorLegend
+ class="m-t-2"
+ :factor="factorDatas.factor[factorType]"
+ ></FactorLegend>
+ </el-row>
+ <el-row class="historical" justify="center">
+ <HistoricalTrajectory
+ :factor-datas="factorDatas"
+ :factor-type="factorType"
+ @change="(e) => (status = e)"
+ @stop="draw"
+ ></HistoricalTrajectory>
+ </el-row>
+ <TrendAnalysis
+ class="trend-analysis"
+ :locate-index="locateIndex"
+ @chart-click="handelIndexChange"
+ :factor-datas="factorDatas"
+ :device-type="deviceType"
+ ></TrendAnalysis>
+ <DataSheet
+ class="data-sheet"
+ :locate-index="locateIndex"
+ @table-click="handelIndexChange"
+ :factor-datas="factorDatas"
+ :device-type="deviceType"
+ ></DataSheet>
+ </div>
+</template>
+
+<script>
+import Layer from '@/utils/map/3dLayer';
+import marks from '@/utils/map/marks';
+import sector from '@/utils/map/sector';
+import mapUtil from '@/utils/map/util';
+import { DialogUtil } from '@/utils/map/dialog';
+import monitorDataApi from '@/api/monitorDataApi';
+import { useFetchData } from '@/composables/fetchData';
+import moment from 'moment';
+import { TYPE0 } from '@/constant/device-type';
+import { FactorDatas } from '@/model/FactorDatas';
+import TrendAnalysis from './component/TrendAnalysis.vue';
+import DataSheet from './component/DataSheet.vue';
+import { ElMessageBox, ElNotification, ElMessage } from 'element-plus';
+
+export default {
+ components: { TrendAnalysis, DataSheet },
+ setup() {
+ const { loading, fetchData } = useFetchData(10000);
+ return { loading, fetchData };
+ },
+ data() {
+ return {
+ // 鐩戞祴璁惧绫诲瀷
+ deviceType: TYPE0,
+ // 鐩戞祴鍥犲瓙鐨勭被鍨嬬紪鍙�
+ factorType: '1',
+ // 鐩戞祴鏁版嵁
+ factorDatas: new FactorDatas(),
+ // 鍐冲畾缁樺埗3D鍥惧舰鏃舵槸鍚︿笌鍘熷浘鍍忓悎骞�
+ merge: false,
+ // 鍐冲畾缁樺埗瀹�3D鍥惧舰鍚庡湴鍥捐瑙掓槸鍚﹁嚜鍔ㄥ洖涓�
+ setCenter: true,
+ // 缁樺埗妯″紡锛�0锛氳嚜鍔ㄦā寮忥紝鑷姩璁$畻褰撳墠鏁版嵁鐨勮寖鍥达紝缁樺埗鍚堥�傜殑姣斾緥锛�1锛氭墜鍔ㄦā寮忥紝鏍规嵁椤甸潰璁剧疆鐨勭粯鍥捐寖鍥磋繘琛岀粯鍒�
+ drawMode: 0,
+ searchTime: [],
+ // 褰撳墠閫変腑楂樹寒鐨勬暟鎹偣绱㈠紩
+ locateIndex: undefined,
+ // 杞ㄨ抗鍔ㄧ敾鐘舵��
+ status: 0
+ };
+ },
+ watch: {
+ factorType(nValue, oValue) {
+ if (nValue != oValue && this.status == 0) {
+ this.draw();
+ }
+ }
+ },
+ methods: {
+ // 妫�鏌ユ暟鎹粡绾害鏄惁鍚堟硶
+ checkDataIsValid(index) {
+ const lnglats_GD = this.factorDatas.lnglats_GD[index];
+ const time = this.factorDatas.times[index];
+ if (lnglats_GD[0] == 0 && lnglats_GD[1] == 0) {
+ ElMessage({
+ message: `${time}鐨勬暟鎹粡绾害鏃犳晥`,
+ type: 'warning'
+ });
+ return false;
+ } else {
+ this.locateIndex = index;
+ return true;
+ }
+ },
+ // 鐩戝惉鎶樼嚎鍥惧拰琛ㄦ牸鐨勭偣鍑讳簨浠�
+ handelIndexChange(index) {
+ if (this.checkDataIsValid(index)) {
+ this.drawSector(index);
+ }
+ },
+ draw() {
+ // 鍒锋柊鍥句緥
+ const factor = this.factorDatas.factor[this.factorType];
+ sector.clearSector();
+ this.drawRoadMap(factor);
+ this.drawMassMarks(factor);
+ },
+ // 缁樺埗3D璧拌璺嚎鍥�
+ drawRoadMap(e) {
+ this.factorDatas.refreshHeight(this.factorType);
+
+ Layer.drawRoadMap(this.factorDatas, e, this.merge, this.setCenter);
+ // }
+ },
+ drawMassMarks(e) {
+ marks.drawMassMarks(this.factorDatas, e, (index) => {
+ // 鏌ヨ鑼冨洿鍐呯殑鐩戞祴绔欑偣
+ // SceneUtil.searchByCoordinate(lnglat[0], lnglat[1], distance);
+ if (this.checkDataIsValid(index)) {
+ this.drawSector(index);
+ }
+ });
+ // 璋冩暣鍦板浘瑙嗚
+ mapUtil.setBound(this.factorDatas.lnglats_GD);
+ },
+ drawSector(index) {
+ // 1. 缁樺埗鏂版墖褰㈠尯鍩�
+ const pr = sector.drawSector(this.factorDatas, index);
+ // 璋冩暣瑙嗚灞呬腑鏄剧ず
+ mapUtil.setFitSector(pr);
+ // 2. 缁樺埗瀵硅瘽妗�
+ DialogUtil.openNewWindow(this.factorDatas, index, () => {
+ // 绉婚櫎鎵囧舰鍖哄煙
+ sector.clearSector();
+ });
+ },
+ onFetchData(type, data) {
+ // todo 鏍规嵁璁惧绫诲瀷鍒囨崲鍦板浘鐩戞祴鍥犲瓙灞曠ず鍗曢�夋銆佹姌绾垮浘澶嶉�夋銆佹暟鎹〃鏍煎閫夋鐨勫洜瀛愮被鍨�
+ this.deviceType = type;
+ this.factorDatas.setData(data, this.drawMode, () => {
+ this.factorDatas.refreshHeight(this.factorType);
+ this.draw();
+ });
+ },
+ fetchHistroyData(option) {
+ const { deviceCode, type, timeArray } = option;
+ let startTime, endTime;
+ if (timeArray && timeArray.length == 2) {
+ startTime = moment(timeArray[0]).format('YYYY-MM-DD HH:mm:ss');
+ endTime = moment(timeArray[1]).format('YYYY-MM-DD HH:mm:ss');
+ }
+ this.fetchData((page, pageSize) => {
+ return monitorDataApi
+ .fetchHistroyData({
+ deviceCode,
+ startTime,
+ endTime,
+ page,
+ perPage: pageSize
+ })
+ .then((res) => this.onFetchData(type, res.data));
+ });
+ },
+ fetchRealTimeData() {
+ // fixme 2024.5.3 姝ゅ鍒濆鑾峰彇鐨勬暟鎹紝鍙傛暟搴旇鐢眘earchbar鍐冲畾锛屽悗缁慨鏀�
+ this.fetchData((page) => {
+ return monitorDataApi
+ .fetchHistroyData({
+ deviceCode: '0a0000000001',
+ // type: TYPE0,
+ page,
+ perPage: 100
+ })
+ .then((res) => {
+ if (res.data.length > 0) {
+ const s = new Date(res.data[0].time.replace(' ', 'T'));
+ const e = new Date(
+ res.data[res.data.length - 1].time.replace(' ', 'T')
+ );
+ this.searchTime = [s, e];
+ }
+ this.onFetchData(TYPE0, res.data);
+ });
+ });
+ }
+ },
+ mounted() {
+ this.fetchRealTimeData();
+ },
+ unmounted() {
+ mapUtil.clearMap();
+ }
+};
+</script>
+<style scoped>
+.top-wrap {
+ height: 40px;
+}
+
+.trend-analysis {
+ position: absolute;
+ left: 0;
+ bottom: 2px;
+}
+
+.data-sheet {
+ position: absolute;
+ right: 0;
+ top: 0;
+}
+
+.historical {
+ position: absolute;
+ bottom: 10px;
+ left: 0;
+ right: 0;
+}
+</style>
diff --git a/src/views/historymode/HistoryMode.vue b/src/views/historymode/HistoryMode.vue
index 9421a94..9df700d 100644
--- a/src/views/historymode/HistoryMode.vue
+++ b/src/views/historymode/HistoryMode.vue
@@ -52,14 +52,15 @@
import sector from '@/utils/map/sector';
import mapUtil from '@/utils/map/util';
import { DialogUtil } from '@/utils/map/dialog';
-import monitorDataApi from '@/api/monitorDataApi';
import { useFetchData } from '@/composables/fetchData';
import moment from 'moment';
import { TYPE0 } from '@/constant/device-type';
+import { radioOptions } from '@/constant/radio-options';
import { FactorDatas } from '@/model/FactorDatas';
import TrendAnalysis from './component/TrendAnalysis.vue';
import DataSheet from './component/DataSheet.vue';
-import { ElMessageBox, ElNotification, ElMessage } from 'element-plus';
+import { ElMessage } from 'element-plus';
+import { fetchHistoryData } from '@/utils/factor/data';
export default {
components: { TrendAnalysis, DataSheet },
@@ -71,8 +72,10 @@
return {
// 鐩戞祴璁惧绫诲瀷
deviceType: TYPE0,
+ // 鐩戞祴璁惧缂栧彿
+ deviceCode: '',
// 鐩戞祴鍥犲瓙鐨勭被鍨嬬紪鍙�
- factorType: '1',
+ factorType: radioOptions(TYPE0)[0].value,
// 鐩戞祴鏁版嵁
factorDatas: new FactorDatas(),
// 鍐冲畾缁樺埗3D鍥惧舰鏃舵槸鍚︿笌鍘熷浘鍍忓悎骞�
@@ -146,9 +149,10 @@
// 1. 缁樺埗鏂版墖褰㈠尯鍩�
const pr = sector.drawSector(this.factorDatas, index);
// 璋冩暣瑙嗚灞呬腑鏄剧ず
- mapUtil.setFitSector(pr);
+ mapUtil.setCenter(pr.p);
+ // mapUtil.setFitSector(pr);
// 2. 缁樺埗瀵硅瘽妗�
- DialogUtil.openNewWindow(this.factorDatas, index, () => {
+ DialogUtil.openNewWindow(this.deviceCode, this.factorDatas, index, () => {
// 绉婚櫎鎵囧舰鍖哄煙
sector.clearSector();
});
@@ -163,48 +167,45 @@
},
fetchHistroyData(option) {
const { deviceCode, type, timeArray } = option;
+ this.deviceCode = deviceCode;
let startTime, endTime;
if (timeArray && timeArray.length == 2) {
startTime = moment(timeArray[0]).format('YYYY-MM-DD HH:mm:ss');
endTime = moment(timeArray[1]).format('YYYY-MM-DD HH:mm:ss');
}
this.fetchData((page, pageSize) => {
- return monitorDataApi
- .fetchHistroyData({
- deviceCode,
- startTime,
- endTime,
- page,
- perPage: pageSize
- })
- .then((res) => this.onFetchData(type, res.data));
- });
- },
- fetchRealTimeData() {
- // fixme 2024.5.3 姝ゅ鍒濆鑾峰彇鐨勬暟鎹紝鍙傛暟搴旇鐢眘earchbar鍐冲畾锛屽悗缁慨鏀�
- this.fetchData((page) => {
- return monitorDataApi
- .fetchHistroyData({
- deviceCode: '0a0000000001',
- // type: TYPE0,
- page,
- perPage: 100
- })
- .then((res) => {
- if (res.data.length > 0) {
- const s = new Date(res.data[0].time.replace(' ', 'T'));
- const e = new Date(
- res.data[res.data.length - 1].time.replace(' ', 'T')
- );
- this.searchTime = [s, e];
- }
- this.onFetchData(TYPE0, res.data);
- });
+ return fetchHistoryData({
+ deviceCode,
+ startTime,
+ endTime,
+ page,
+ perPage: pageSize
+ }).then((res) => this.onFetchData(type, res.data));
});
}
+ // fetchRealTimeData() {
+ // // fixme 2024.5.3 姝ゅ鍒濆鑾峰彇鐨勬暟鎹紝鍙傛暟搴旇鐢眘earchbar鍐冲畾锛屽悗缁慨鏀�
+ // this.fetchData((page) => {
+ // return fetchHistoryData({
+ // deviceCode: '0a0000000001',
+ // // type: TYPE0,
+ // page,
+ // perPage: 100
+ // }).then((res) => {
+ // if (res.data.length > 0) {
+ // const s = new Date(res.data[0].time.replace(' ', 'T'));
+ // const e = new Date(
+ // res.data[res.data.length - 1].time.replace(' ', 'T')
+ // );
+ // this.searchTime = [s, e];
+ // }
+ // this.onFetchData(TYPE0, res.data);
+ // });
+ // });
+ // }
},
mounted() {
- this.fetchRealTimeData();
+ // this.fetchRealTimeData();
},
unmounted() {
mapUtil.clearMap();
diff --git a/src/views/historymode/component/DataSheet.vue b/src/views/historymode/component/DataSheet.vue
index 526c7cc..778d322 100644
--- a/src/views/historymode/component/DataSheet.vue
+++ b/src/views/historymode/component/DataSheet.vue
@@ -41,7 +41,7 @@
<script>
// import { toRefs } from 'vue';
import { TYPE0 } from '@/constant/device-type';
-import { checkboxOptions } from '@/constant/checkbox-options';
+import { defaultFactorTypes } from '@/constant/checkbox-options';
import { FactorDatas } from '@/model/FactorDatas';
// import { useDefaultFactorType } from "../../../composables/defaultFactorType";
@@ -63,7 +63,7 @@
},
data() {
return {
- selectFactorType: this.defaultFactorTypes(),
+ selectFactorType: defaultFactorTypes(this.deviceType),
show: false
};
},
@@ -71,21 +71,13 @@
watch: {
deviceType(nV, oV) {
if (nV != oV) {
- this.selectFactorType = this.defaultFactorTypes();
+ this.selectFactorType = defaultFactorTypes(nV);
}
}
},
methods: {
handleTableClick(index) {
this.$emit('tableClick', index);
- },
- defaultFactorTypes() {
- const list = checkboxOptions(this.deviceType);
- if (list.length > 3) {
- return list.slice(0, 3).map((v) => v.value);
- } else {
- return list.map((v) => v.value);
- }
}
}
};
diff --git a/src/views/historymode/component/TrendAnalysis.vue b/src/views/historymode/component/TrendAnalysis.vue
index cc5205b..665305f 100644
--- a/src/views/historymode/component/TrendAnalysis.vue
+++ b/src/views/historymode/component/TrendAnalysis.vue
@@ -1,7 +1,7 @@
<template>
<el-row class="wrap">
<Transition name="">
- <el-col v-show="show" span="10">
+ <el-col v-show="show" span="10" class="wrap-left">
<FactorCheckbox
v-model="selectFactorType"
:device-type="deviceType"
@@ -28,11 +28,14 @@
* 鐩戞祴瑕佺礌瓒嬪娍鍒嗘瀽
*/
import { FactorDatas } from '@/model/FactorDatas';
+import { defaultFactorTypes } from '@/constant/checkbox-options';
+import { TYPE0 } from '@/constant/device-type';
export default {
props: {
deviceType: {
- type: String
+ type: String,
+ default: TYPE0
},
factorDatas: FactorDatas,
// 褰撳墠閫変腑楂樹寒鐨勬暟鎹偣绱㈠紩
@@ -40,11 +43,18 @@
},
data() {
return {
- selectFactorType: ['1'],
+ selectFactorType: defaultFactorTypes(this.deviceType, 1),
show: true
};
},
emits: ['chartClick'],
+ watch: {
+ deviceType(nV, oV) {
+ if (nV != oV) {
+ this.selectFactorType = defaultFactorTypes(nV, 1);
+ }
+ }
+ },
methods: {
handleChartClick(index) {
this.$emit('chartClick', index);
@@ -59,6 +69,11 @@
/* background-color: aliceblue; */
}
+.wrap-left {
+ /* background-color: aliceblue; */
+ min-width: 600px;
+}
+
.slide-fade-enter-active {
transition: all 0.3s ease-out;
}
diff --git a/src/views/realtimemode/RealtimeMode copy.vue b/src/views/realtimemode/RealtimeMode copy.vue
new file mode 100644
index 0000000..9c352f2
--- /dev/null
+++ b/src/views/realtimemode/RealtimeMode copy.vue
@@ -0,0 +1,186 @@
+<template>
+ <div class="p-events-none m-t-2">
+ <el-row justify="center" align="middle" class="top-wrap">
+ <DeviceChange @change="onDeviceChange"></DeviceChange>
+ </el-row>
+ <el-row class="m-t-2">
+ <FactorRadio
+ :device-type="deviceType"
+ @change="(e) => (factorType = e)"
+ ></FactorRadio>
+ </el-row>
+ <el-row class="m-t-2">
+ <FactorLegend
+ class="m-t-2"
+ :factor="factorDatas.factor[factorType]"
+ ></FactorLegend>
+ </el-row>
+ <DashBoard class="dash-board" :factor-datas="factorDatas"></DashBoard>
+ <RealTimeTrend
+ class="real-time-trend"
+ :factor-datas="factorDatas"
+ :device-type="deviceType"
+ ></RealTimeTrend>
+ </div>
+</template>
+
+<script>
+import { useFetchData } from '@/composables/fetchData';
+import { TYPE0 } from '@/constant/device-type';
+import { FactorDatas } from '@/model/FactorDatas';
+import monitorDataApi from '@/api/monitorDataApi';
+import DashBoard from './component/DashBoard.vue';
+import RealTimeTrend from './component/RealTimeTrend.vue';
+import DeviceChange from './component/DeviceChange.vue';
+import { realTimeMapAnimation } from '@/utils/map/animation';
+import { startLoopFetchRealTimeData } from '@/utils/factor/data';
+
+// const mapAnimation = new MapAnimation();
+
+export default {
+ components: { DashBoard, RealTimeTrend, DeviceChange },
+ setup() {
+ const { loading, fetchData } = useFetchData(10000);
+ return { loading, fetchData };
+ },
+ data() {
+ return {
+ // 鐩戞祴璁惧绫诲瀷
+ deviceType: TYPE0,
+ deviceCode: '0a0000000001',
+ // 鐩戞祴鍥犲瓙鐨勭被鍨嬬紪鍙�
+ factorType: '1',
+ // 鏂拌幏鍙栫殑鐩戞祴鏁版嵁
+ factorDatas: new FactorDatas(),
+ // 鍏ㄩ儴鐩戞祴鏁版嵁
+ allFactorDatas: new FactorDatas()
+ };
+ },
+ watch: {
+ factorType(nV, oV) {
+ if (nV != oV) {
+ realTimeMapAnimation.setFactorType(nV);
+ }
+ }
+ },
+ computed: {
+ latestTime() {
+ if (this.factorDatas.times.length == 0) {
+ return '';
+ } else {
+ return this.factorDatas.times[this.factorDatas.times.length - 1];
+ }
+ }
+ },
+ methods: {
+ onDeviceChange({ type, deviceCode }) {
+ this.deviceType = type;
+ this.deviceCode = deviceCode;
+ this.clearFetchingTask();
+ realTimeMapAnimation.stop();
+ this.allFactorDatas.clearData();
+ this.factorDatas.clearData();
+ this.notFirstFetch = false;
+ this.fetchRealTimeData();
+ },
+ onFetchData(data) {
+ // todo 鏍规嵁璁惧绫诲瀷鍒囨崲鍦板浘鐩戞祴鍥犲瓙灞曠ず鍗曢�夋銆佹姌绾垮浘澶嶉�夋銆佹暟鎹〃鏍煎閫夋鐨勫洜瀛愮被鍨�
+ // this.deviceType = type;
+ const fDatas = new FactorDatas();
+ fDatas.setData(data, this.drawMode, () => {
+ fDatas.refreshHeight(this.factorType);
+ // this.draw();
+ this.factorDatas = fDatas;
+ });
+ },
+ fetchRealTimeData() {
+ this.fetchData((page) => {
+ return monitorDataApi
+ .fetchHistroyData({
+ deviceCode: this.deviceCode,
+ // startTime: '2021-11-04 09:53:35',
+ page,
+ perPage: 100
+ })
+ .then((res) => {
+ this.onFetchData(res.data);
+ this.onMapData(res.data);
+ this.fetchNextData();
+ });
+ });
+ },
+ clearFetchingTask() {
+ if (this.fetchingTask) {
+ clearInterval(this.fetchingTask);
+ this.fetchingTask = undefined;
+ }
+ },
+ fetchNextData() {
+ this.clearFetchingTask();
+ this.fetchingTask = setInterval(() => {
+ if (this.isFetching) {
+ return;
+ }
+
+ this.isFetching = true;
+ this.fetchData(() => {
+ return monitorDataApi
+ .fetchNextData({
+ deviceCode: this.deviceCode,
+ updateTime: this.latestTime,
+ perPage: 10
+ })
+ .then((res) => {
+ this.onFetchData(res.data);
+ this.onMapData(res.data);
+ })
+ .finally(() => (this.isFetching = false));
+ });
+ }, 10000);
+ },
+ onMapData(dataList) {
+ let startIndex = this.allFactorDatas.length() - 1;
+ if (!this.notFirstFetch) {
+ startIndex = dataList.length - 2;
+ this.notFirstFetch = true;
+ }
+ startIndex = startIndex < 0 ? 0 : startIndex;
+ return new Promise((resolve, reject) => {
+ this.allFactorDatas.addData(dataList, this.drawMode, () => {
+ realTimeMapAnimation.moveAnimation(
+ this.allFactorDatas,
+ this.factorType,
+ startIndex
+ );
+ });
+ });
+ }
+ },
+ mounted() {
+ this.fetchRealTimeData();
+ // startLoopFetchRealTimeData({
+ // compUser: 'user1',
+ // compPassword: 'User1@jingan',
+ // mn: 'TX105',
+ // dtFrom: '2024-08-07 10:00:00',
+ // dtTo: '2024-08-07 10:00:59'
+ // });
+ },
+ unmounted() {
+ this.clearFetchingTask();
+ realTimeMapAnimation.stop();
+ }
+};
+</script>
+<style scoped>
+.dash-board {
+ position: absolute;
+ left: 0;
+ bottom: 2px;
+}
+.real-time-trend {
+ position: absolute;
+ right: 0;
+ top: 0;
+}
+</style>
diff --git a/src/views/realtimemode/RealtimeMode.vue b/src/views/realtimemode/RealtimeMode.vue
index c4de517..f6ff253 100644
--- a/src/views/realtimemode/RealtimeMode.vue
+++ b/src/views/realtimemode/RealtimeMode.vue
@@ -25,14 +25,20 @@
</template>
<script>
+import moment from 'moment';
import { useFetchData } from '@/composables/fetchData';
import { TYPE0 } from '@/constant/device-type';
+import { radioOptions } from '@/constant/radio-options';
import { FactorDatas } from '@/model/FactorDatas';
-import monitorDataApi from '@/api/monitorDataApi';
import DashBoard from './component/DashBoard.vue';
import RealTimeTrend from './component/RealTimeTrend.vue';
import DeviceChange from './component/DeviceChange.vue';
import { realTimeMapAnimation } from '@/utils/map/animation';
+import {
+ fetchHistoryData,
+ startLoopFetchRealTimeData,
+ clearFetchingTask
+} from '@/utils/factor/data';
// const mapAnimation = new MapAnimation();
@@ -46,9 +52,9 @@
return {
// 鐩戞祴璁惧绫诲瀷
deviceType: TYPE0,
- deviceCode: '0a0000000001',
+ deviceCode: '',
// 鐩戞祴鍥犲瓙鐨勭被鍨嬬紪鍙�
- factorType: '1',
+ factorType: radioOptions(TYPE0)[0].value,
// 鏂拌幏鍙栫殑鐩戞祴鏁版嵁
factorDatas: new FactorDatas(),
// 鍏ㄩ儴鐩戞祴鏁版嵁
@@ -63,11 +69,13 @@
}
},
computed: {
+ // 鏁版嵁鏈�鏂版椂闂达紙鏈�鏂版暟鎹殑閲囨牱鏃堕棿鍔�1绉掞紱娌℃湁鏁版嵁鏃讹紝閲囩敤褰撳墠鏃堕棿鐨勫墠6鍒嗛挓锛�
latestTime() {
if (this.factorDatas.times.length == 0) {
- return '';
+ return moment().subtract(6, 'm').format('YYYY-MM-DD HH:mm:ss');
} else {
- return this.factorDatas.times[this.factorDatas.times.length - 1];
+ const _time = this.factorDatas.times[this.factorDatas.times.length - 1];
+ return moment(_time).add(1, 's').format('YYYY-MM-DD HH:mm:ss');
}
}
},
@@ -93,50 +101,40 @@
});
},
fetchRealTimeData() {
- // fixme 2024.5.3 姝ゅ鍒濆鑾峰彇鐨勬暟鎹紝鍙傛暟搴旇鐢眘earchbar鍐冲畾锛屽悗缁慨鏀�
this.fetchData((page) => {
- return monitorDataApi
- .fetchHistroyData({
- deviceCode: this.deviceCode,
- // startTime: '2021-11-04 09:53:35',
- page,
- perPage: 100
- })
- .then((res) => {
- this.onFetchData(res.data);
- this.onMapData(res.data);
- this.fetchNextData();
- });
+ return fetchHistoryData({
+ deviceCode: this.deviceCode,
+ // startTime: '2024-08-20 06:00:00',
+ // endTime: '2024-08-20 06:02:00',
+ page,
+ perPage: 100
+ }).then((res) => {
+ this.onFetchData(res.data);
+ this.onMapData(res.data);
+ // if (res.data.length > 0) {
+ // this.fetchNextData(res.data[res.data.length - 1].time);
+ // }
+ this.fetchNextData();
+ });
});
},
clearFetchingTask() {
- if (this.fetchingTask) {
- clearInterval(this.fetchingTask);
- this.fetchingTask = undefined;
- }
+ clearFetchingTask();
},
fetchNextData() {
- this.clearFetchingTask();
- this.fetchingTask = setInterval(() => {
- if (this.isFetching) {
- return;
+ startLoopFetchRealTimeData(
+ () => {
+ return {
+ deviceCode: this.deviceCode,
+ updateTime: this.latestTime,
+ perPage: 10
+ };
+ },
+ (res) => {
+ this.onFetchData(res.data);
+ this.onMapData(res.data);
}
-
- this.isFetching = true;
- this.fetchData(() => {
- return monitorDataApi
- .fetchNextData({
- deviceCode: this.deviceCode,
- updateTime: this.latestTime,
- perPage: 10
- })
- .then((res) => {
- this.onFetchData(res.data);
- this.onMapData(res.data);
- })
- .finally(() => (this.isFetching = false));
- });
- }, 10000);
+ );
},
onMapData(dataList) {
let startIndex = this.allFactorDatas.length() - 1;
@@ -157,12 +155,18 @@
}
},
mounted() {
- this.fetchRealTimeData();
+ // this.fetchRealTimeData();
+ // startLoopFetchRealTimeData({
+ // compUser: 'user1',
+ // compPassword: 'User1@jingan',
+ // mn: 'TX105',
+ // dtFrom: '2024-08-07 10:00:00',
+ // dtTo: '2024-08-07 10:00:59'
+ // });
},
unmounted() {
this.clearFetchingTask();
realTimeMapAnimation.stop();
- console.log('clear');
}
};
</script>
diff --git a/src/views/realtimemode/component/DashBoard.vue b/src/views/realtimemode/component/DashBoard.vue
index 36078e4..30c87e6 100644
--- a/src/views/realtimemode/component/DashBoard.vue
+++ b/src/views/realtimemode/component/DashBoard.vue
@@ -46,8 +46,13 @@
},
methods: {
getFactorData(factorDatas, index, key, scale = 10) {
- let d = factorDatas.factor[key].datas[index].factorData;
- return Math.round(d * scale) / scale;
+ const _factor = factorDatas.factor[key];
+ if (_factor != undefined) {
+ let d = _factor.datas[index].factorData;
+ return Math.round(d * scale) / scale;
+ } else {
+ return '--';
+ }
},
refresh(factorDatas, index) {
this.temprature = this.getFactorData(factorDatas, index, '8') + '';
diff --git a/src/views/realtimemode/component/DeviceChange.vue b/src/views/realtimemode/component/DeviceChange.vue
index 3772b7d..4b78b7e 100644
--- a/src/views/realtimemode/component/DeviceChange.vue
+++ b/src/views/realtimemode/component/DeviceChange.vue
@@ -31,18 +31,22 @@
handleClick() {
this.$emit('change', this.formSearch);
}
+ },
+ watch: {
+ // formSearch(nV, oV) {
+ // if (nV != oV) {
+ // this.handleChange(nV[0].value);
+ // }
+ // }
+ },
+ mounted() {
+ this.$emit('change', this.formSearch);
}
};
</script>
-<style lang="scss">
-.map-date-selector {
- display: inline-block;
- position: relative;
- /* left: 0;
- right: 0;
- top: 0px; */
- /* padding: 0 4px; */
- /* color: ffffffbd; */
- /* background-color: antiquewhite; */
+<style scoped lang="scss">
+.el-form-item {
+ margin-bottom: 0px;
+ margin-right: 8px !important;
}
</style>
diff --git a/src/views/realtimemode/component/RealTimeTrend.vue b/src/views/realtimemode/component/RealTimeTrend.vue
index f22411e..ecda9af 100644
--- a/src/views/realtimemode/component/RealTimeTrend.vue
+++ b/src/views/realtimemode/component/RealTimeTrend.vue
@@ -30,6 +30,7 @@
</template>
<script>
import { TYPE0 } from '@/constant/device-type';
+import { defaultFactorTypes } from '@/constant/checkbox-options';
import { FactorDatas } from '@/model/FactorDatas';
export default {
@@ -44,7 +45,7 @@
},
data() {
return {
- selectFactorType: ['1', '2', '3'],
+ selectFactorType: defaultFactorTypes(this.deviceType),
show: true
};
}
--
Gitblit v1.9.3