diff --git a/package-lock.json b/package-lock.json
index 055c321..2b5973d 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -8,11 +8,12 @@
"name": "fatweb-ui",
"version": "0.0.0",
"dependencies": {
- "@ant-design/charts": "^2.0.0-beta.0",
"@ant-design/icons": "^5.2.6",
"antd": "^5.12.1",
"axios": "^1.6.2",
"dayjs": "^1.11.10",
+ "echarts": "^5.4.3",
+ "fast-deep-equal": "^3.1.3",
"jwt-decode": "^4.0.0",
"localforage": "^1.10.0",
"lodash": "^4.17.21",
@@ -21,14 +22,15 @@
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-router": "^6.20.1",
- "react-router-dom": "^6.20.1"
+ "react-router-dom": "^6.20.1",
+ "size-sensor": "^1.0.2"
},
"devDependencies": {
"@svgr/core": "^8.1.0",
"@svgr/plugin-jsx": "^8.1.0",
"@types/jsdom": "^21.1.6",
"@types/lodash": "^4.14.202",
- "@types/node": "^20.10.3",
+ "@types/node": "^20.10.4",
"@types/react": "^18.2.42",
"@types/react-dom": "^18.2.17",
"@typescript-eslint/eslint-plugin": "^6.13.2",
@@ -46,10 +48,10 @@
"prettier": "^3.1.0",
"sass": "^1.69.5",
"stylelint-config-prettier": "^9.0.5",
- "typescript": "^5.3.2",
+ "typescript": "^5.3.3",
"unplugin-auto-import": "^0.17.2",
"unplugin-icons": "^0.18.1",
- "vite": "^5.0.5"
+ "vite": "^5.0.6"
}
},
"node_modules/@aashutoshrathi/word-wrap": {
@@ -74,28 +76,6 @@
"node": ">=6.0.0"
}
},
- "node_modules/@ant-design/charts": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/@ant-design/charts/-/charts-2.0.2.tgz",
- "integrity": "sha512-am6vjbWoix/NF42eNdgMjhspBcGnspre3ZZDofPLs3QRl695DMWhe9G+AUWTn+vEgmND5s/LwclbNyn/pJNYVg==",
- "dependencies": {
- "@ant-design/plots": "2.0.3"
- },
- "peerDependencies": {
- "lodash-es": "^4.17.21",
- "react": ">=16.8.4",
- "react-dom": ">=16.8.4"
- }
- },
- "node_modules/@ant-design/charts-util": {
- "version": "0.0.1-alpha.0",
- "resolved": "https://registry.npmjs.org/@ant-design/charts-util/-/charts-util-0.0.1-alpha.0.tgz",
- "integrity": "sha512-ggaeLhENcOa37Cx+81+IiQ6X9yc/DJFkM/vQ4u+5JXJheR7Sm1YlTjyAc24aO7WqFf7pbdSewDLMBXyYyI1/5Q==",
- "peerDependencies": {
- "react": ">=16.8.4",
- "react-dom": ">=16.8.4"
- }
- },
"node_modules/@ant-design/colors": {
"version": "7.0.0",
"resolved": "https://registry.npmmirror.com/@ant-design/colors/-/colors-7.0.0.tgz",
@@ -146,21 +126,6 @@
"resolved": "https://registry.npmmirror.com/@ant-design/icons-svg/-/icons-svg-4.3.1.tgz",
"integrity": "sha512-4QBZg8ccyC6LPIRii7A0bZUk3+lEDCLnhB+FVsflGdcWPPmV+j3fire4AwwoqHV/BibgvBmR9ZIo4s867smv+g=="
},
- "node_modules/@ant-design/plots": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@ant-design/plots/-/plots-2.0.3.tgz",
- "integrity": "sha512-ZHHp3jGr6VedkMJvuheUC+d7s/I/wMg8+QPTPrgkpYQcv5KvSfvcPRtwwLS87wyuPUVxInM65ZNA6Kcxum6+4A==",
- "dependencies": {
- "@ant-design/charts-util": "0.0.1-alpha.0",
- "@antv/event-emitter": "^0.1.3",
- "@antv/g2": "^5.1.9"
- },
- "peerDependencies": {
- "lodash-es": "^4.17.21",
- "react": ">=16.8.4",
- "react-dom": ">=16.8.4"
- }
- },
"node_modules/@ant-design/react-slick": {
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/@ant-design/react-slick/-/react-slick-1.0.2.tgz",
@@ -250,273 +215,6 @@
"integrity": "sha512-pvFiLP2BeOKA/ZOS6jxx4XhKzdVLHDhGlFEaZ2flWWYf2xOqVniqpk38I04DFRyz+L0ASggl7SkItTc+ZLju4w==",
"dev": true
},
- "node_modules/@antv/component": {
- "version": "1.0.0-beta.2",
- "resolved": "https://registry.npmjs.org/@antv/component/-/component-1.0.0-beta.2.tgz",
- "integrity": "sha512-WQPgnoLsvVOoHXGaQWKitD38mF1olP+IqoXYARfwCuNEMMDMtNqdUbMZrU/P3ypmz2iEbqdVEOjagL9Aebk/Rw==",
- "dependencies": {
- "@antv/g": "^5.15.15",
- "@antv/scale": "^0.4.3",
- "@antv/util": "^3.3.5",
- "svg-path-parser": "^1.1.0"
- },
- "peerDependencies": {
- "@antv/g": "^5.14.1"
- }
- },
- "node_modules/@antv/coord": {
- "version": "0.4.7",
- "resolved": "https://registry.npmjs.org/@antv/coord/-/coord-0.4.7.tgz",
- "integrity": "sha512-UTbrMLhwJUkKzqJx5KFnSRpU3BqrdLORJbwUbHK2zHSCT3q3bjcFA//ZYLVfIlwqFDXp/hzfMyRtp0c77A9ZVA==",
- "dependencies": {
- "@antv/scale": "^0.4.12",
- "@antv/util": "^2.0.13",
- "gl-matrix": "^3.4.3"
- }
- },
- "node_modules/@antv/coord/node_modules/@antv/util": {
- "version": "2.0.17",
- "resolved": "https://registry.npmjs.org/@antv/util/-/util-2.0.17.tgz",
- "integrity": "sha512-o6I9hi5CIUvLGDhth0RxNSFDRwXeywmt6ExR4+RmVAzIi48ps6HUy+svxOCayvrPBN37uE6TAc2KDofRo0nK9Q==",
- "dependencies": {
- "csstype": "^3.0.8",
- "tslib": "^2.0.3"
- }
- },
- "node_modules/@antv/event-emitter": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/@antv/event-emitter/-/event-emitter-0.1.3.tgz",
- "integrity": "sha512-4ddpsiHN9Pd4UIlWuKVK1C4IiZIdbwQvy9i7DUSI3xNJ89FPUFt8lxDYj8GzzfdllV0NkJTRxnG+FvLk0llidg=="
- },
- "node_modules/@antv/g": {
- "version": "5.18.22",
- "resolved": "https://registry.npmjs.org/@antv/g/-/g-5.18.22.tgz",
- "integrity": "sha512-l6ttQEy4413F6ONFq3m0GmdS3ge5ZTSBp50G7FmuCifoI2gIAtBiuI2IohdhhchwYIMdNN4PC+iJ4bedor3kWw==",
- "dependencies": {
- "@antv/g-camera-api": "1.2.20",
- "@antv/g-dom-mutation-observer-api": "1.2.19",
- "@antv/g-lite": "1.2.19",
- "@antv/g-web-animations-api": "1.2.20"
- }
- },
- "node_modules/@antv/g-camera-api": {
- "version": "1.2.20",
- "resolved": "https://registry.npmjs.org/@antv/g-camera-api/-/g-camera-api-1.2.20.tgz",
- "integrity": "sha512-HapY48zFzDt43A3Z34kogApshwmUxQiXJKQ8XwB0UGzLc6ndMKGYx9tyXdMuozSqIQZ0AT5qasujYuu4h+6m7g==",
- "dependencies": {
- "@antv/g-lite": "1.2.19",
- "@antv/util": "^3.3.4",
- "gl-matrix": "^3.4.3",
- "tslib": "^2.5.3"
- }
- },
- "node_modules/@antv/g-canvas": {
- "version": "1.11.24",
- "resolved": "https://registry.npmjs.org/@antv/g-canvas/-/g-canvas-1.11.24.tgz",
- "integrity": "sha512-BEgYZNN7ZXV3l4acZ/d3FoP+EBPeB/fQPInA+6iRf4gBfTsH/fSKNbqvHqV00hgtLHT/u3z16WyP7jcMH1vgHA==",
- "dependencies": {
- "@antv/g-lite": "1.2.19",
- "@antv/g-plugin-canvas-path-generator": "1.3.19",
- "@antv/g-plugin-canvas-picker": "1.10.21",
- "@antv/g-plugin-canvas-renderer": "1.9.21",
- "@antv/g-plugin-dom-interaction": "1.9.19",
- "@antv/g-plugin-html-renderer": "1.9.22",
- "@antv/g-plugin-image-loader": "1.3.19",
- "@antv/util": "^3.3.4",
- "tslib": "^2.5.3"
- }
- },
- "node_modules/@antv/g-dom-mutation-observer-api": {
- "version": "1.2.19",
- "resolved": "https://registry.npmjs.org/@antv/g-dom-mutation-observer-api/-/g-dom-mutation-observer-api-1.2.19.tgz",
- "integrity": "sha512-sBrwUIkcixEQIr1hhoRfCrZ80m6aNl/VbI0PhRGLDlkJRuoLd9pLn1uSQI042N7M5X7oLW4F9tbN1Aw3ahjT+Q==",
- "dependencies": {
- "@antv/g-lite": "1.2.19"
- }
- },
- "node_modules/@antv/g-lite": {
- "version": "1.2.19",
- "resolved": "https://registry.npmjs.org/@antv/g-lite/-/g-lite-1.2.19.tgz",
- "integrity": "sha512-eHFkha7smINzzPCZ2znh10Fx47B7wGf9HM8I6srL5WJskgDYc7nQ2fs/azJcwoFdWxJLar3hugWi8azYkRTZNA==",
- "dependencies": {
- "@antv/g-math": "2.0.2",
- "@antv/util": "^3.3.4",
- "d3-color": "^1.4.0",
- "eventemitter3": "^5.0.1",
- "gl-matrix": "^3.4.3",
- "rbush": "^3.0.1",
- "tslib": "^2.5.3"
- }
- },
- "node_modules/@antv/g-math": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/@antv/g-math/-/g-math-2.0.2.tgz",
- "integrity": "sha512-uqGU1C+70orjeSUoIzD3TuXjL5dRQCIyjZrBrTmm0FWd6VQJMWHyG5ypuZ2lMiI5MrRajVSE1w+3J4hiNBYSJg==",
- "dependencies": {
- "@antv/util": "^3.3.4",
- "gl-matrix": "^3.4.3",
- "tslib": "^2.5.3"
- }
- },
- "node_modules/@antv/g-plugin-canvas-path-generator": {
- "version": "1.3.19",
- "resolved": "https://registry.npmjs.org/@antv/g-plugin-canvas-path-generator/-/g-plugin-canvas-path-generator-1.3.19.tgz",
- "integrity": "sha512-fJTtx1Th8JHaaShrfNdU9fmasR+u6qH2P6ItUnJS9Yp8d+/Q+yPVPC0YOgI/d9dMpl6wcdcRjSkIvm1upXH8Kw==",
- "dependencies": {
- "@antv/g-lite": "1.2.19",
- "@antv/g-math": "2.0.2",
- "@antv/util": "^3.3.4",
- "tslib": "^2.5.3"
- }
- },
- "node_modules/@antv/g-plugin-canvas-picker": {
- "version": "1.10.21",
- "resolved": "https://registry.npmjs.org/@antv/g-plugin-canvas-picker/-/g-plugin-canvas-picker-1.10.21.tgz",
- "integrity": "sha512-6Vt21POTJ8MO3VrGFyOEInDgGAPOe9HYhod67R8Q6yG3iKbuWCNeqNP5V5po5lNF5joFRfw08Bp3rY3VdJqZNg==",
- "dependencies": {
- "@antv/g-lite": "1.2.19",
- "@antv/g-math": "2.0.2",
- "@antv/g-plugin-canvas-path-generator": "1.3.19",
- "@antv/g-plugin-canvas-renderer": "1.9.21",
- "@antv/util": "^3.3.4",
- "gl-matrix": "^3.4.3",
- "tslib": "^2.5.3"
- }
- },
- "node_modules/@antv/g-plugin-canvas-renderer": {
- "version": "1.9.21",
- "resolved": "https://registry.npmjs.org/@antv/g-plugin-canvas-renderer/-/g-plugin-canvas-renderer-1.9.21.tgz",
- "integrity": "sha512-XvV0zhDQUOdhY6p1LjQ9oNX80rc0AODjx4deEflGShSSX+lRtlxf3ovZEeeWA2qV7EGint3BsywZiyv9/nf66A==",
- "dependencies": {
- "@antv/g-lite": "1.2.19",
- "@antv/g-math": "2.0.2",
- "@antv/g-plugin-canvas-path-generator": "1.3.19",
- "@antv/g-plugin-image-loader": "1.3.19",
- "@antv/util": "^3.3.4",
- "gl-matrix": "^3.4.3",
- "tslib": "^2.5.3"
- }
- },
- "node_modules/@antv/g-plugin-dom-interaction": {
- "version": "1.9.19",
- "resolved": "https://registry.npmjs.org/@antv/g-plugin-dom-interaction/-/g-plugin-dom-interaction-1.9.19.tgz",
- "integrity": "sha512-4owDqeRLGwImB2FM0sW0g1Yw1GQSqALHBJVlyWRbJy6o64EgDOrKvNzs7oeL2rqzvGZSLIVeJPxJrJ2koEYymw==",
- "dependencies": {
- "@antv/g-lite": "1.2.19",
- "tslib": "^2.5.3"
- }
- },
- "node_modules/@antv/g-plugin-dragndrop": {
- "version": "1.8.19",
- "resolved": "https://registry.npmjs.org/@antv/g-plugin-dragndrop/-/g-plugin-dragndrop-1.8.19.tgz",
- "integrity": "sha512-dLmOXxQjnsdoEVa0FSFELuVqFHdaCVqDiTwIwrde9xSpsRHkDamyBxnihvn18aCptuX9Gwz/D340xXJNMGgjjQ==",
- "dependencies": {
- "@antv/g-lite": "1.2.19",
- "@antv/util": "^3.3.4",
- "tslib": "^2.5.3"
- }
- },
- "node_modules/@antv/g-plugin-html-renderer": {
- "version": "1.9.22",
- "resolved": "https://registry.npmjs.org/@antv/g-plugin-html-renderer/-/g-plugin-html-renderer-1.9.22.tgz",
- "integrity": "sha512-+vGFscjEa6yWxJzqPOmkGL5WjrfT0jDlRBzsF1UczeMNEM8zFQu5/VXL8LlCDOnOTJEo3UpkzrUT0fQe4mHaAA==",
- "dependencies": {
- "@antv/g-lite": "1.2.19",
- "@antv/util": "^3.3.4",
- "gl-matrix": "^3.4.3",
- "tslib": "^2.5.3"
- }
- },
- "node_modules/@antv/g-plugin-image-loader": {
- "version": "1.3.19",
- "resolved": "https://registry.npmjs.org/@antv/g-plugin-image-loader/-/g-plugin-image-loader-1.3.19.tgz",
- "integrity": "sha512-82YBFax1DeNY8S8FsudlkuxTcg/6LBnHdp2vHHvZWDCmCP0BU0+neRQMIqC2b13mn+7zRiGXg0DllwnJEWBZ8g==",
- "dependencies": {
- "@antv/g-lite": "1.2.19",
- "@antv/util": "^3.3.4",
- "gl-matrix": "^3.4.3",
- "tslib": "^2.5.3"
- }
- },
- "node_modules/@antv/g-web-animations-api": {
- "version": "1.2.20",
- "resolved": "https://registry.npmjs.org/@antv/g-web-animations-api/-/g-web-animations-api-1.2.20.tgz",
- "integrity": "sha512-Hs0zJUs2lMSL9BoRnOMsXt3eGuLr0yiETGDXDhv858YS4t0Dw+CHmGUct+pNIaOK/OgF1s9xtmJjRITXntWgpg==",
- "dependencies": {
- "@antv/g-lite": "1.2.19",
- "@antv/util": "^3.3.4",
- "tslib": "^2.5.3"
- }
- },
- "node_modules/@antv/g2": {
- "version": "5.1.10",
- "resolved": "https://registry.npmjs.org/@antv/g2/-/g2-5.1.10.tgz",
- "integrity": "sha512-Htw1Hlexpz7yFeslTH+4FnRsVayu+TrNarkZaMzQvqJ+IpVMmdflIMj+brFIFEgBe71zKjzxx6X/OcCtFww6Sg==",
- "dependencies": {
- "@antv/component": "1.0.0-beta.2",
- "@antv/coord": "^0.4.6",
- "@antv/event-emitter": "^0.1.3",
- "@antv/g": "^5.18.19",
- "@antv/g-canvas": "^1.11.22",
- "@antv/g-plugin-dragndrop": "^1.8.17",
- "@antv/path-util": "^3.0.1",
- "@antv/scale": "^0.4.12",
- "@antv/util": "^3.3.5",
- "d3-array": "^3.2.4",
- "d3-dsv": "^3.0.1",
- "d3-force": "^3.0.0",
- "d3-format": "^3.1.0",
- "d3-geo": "^3.1.0",
- "d3-hierarchy": "^3.1.2",
- "d3-path": "^3.1.0",
- "d3-scale-chromatic": "^3.0.0",
- "d3-shape": "^3.2.0",
- "d3-voronoi": "^1.1.4",
- "flru": "^1.0.2",
- "fmin": "^0.0.2",
- "pdfast": "^0.2.0"
- }
- },
- "node_modules/@antv/path-util": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@antv/path-util/-/path-util-3.0.1.tgz",
- "integrity": "sha512-tpvAzMpF9Qm6ik2YSMqICNU5tco5POOW7S4XoxZAI/B0L26adU+Md/SmO0BBo2SpuywKvzPH3hPT3xmoyhr04Q==",
- "dependencies": {
- "gl-matrix": "^3.1.0",
- "lodash-es": "^4.17.21",
- "tslib": "^2.0.3"
- }
- },
- "node_modules/@antv/scale": {
- "version": "0.4.13",
- "resolved": "https://registry.npmjs.org/@antv/scale/-/scale-0.4.13.tgz",
- "integrity": "sha512-aWOXZdvkHQjEOMWmDBJF6nja30Y38nC5WTtx3fzX4INqfqYLX9u/fcZfElsjFzryewh2qveO+7L0rq8ugutDTw==",
- "dependencies": {
- "@antv/util": "^2.0.13",
- "color-string": "^1.5.5",
- "fecha": "^4.2.1"
- }
- },
- "node_modules/@antv/scale/node_modules/@antv/util": {
- "version": "2.0.17",
- "resolved": "https://registry.npmjs.org/@antv/util/-/util-2.0.17.tgz",
- "integrity": "sha512-o6I9hi5CIUvLGDhth0RxNSFDRwXeywmt6ExR4+RmVAzIi48ps6HUy+svxOCayvrPBN37uE6TAc2KDofRo0nK9Q==",
- "dependencies": {
- "csstype": "^3.0.8",
- "tslib": "^2.0.3"
- }
- },
- "node_modules/@antv/util": {
- "version": "3.3.5",
- "resolved": "https://registry.npmjs.org/@antv/util/-/util-3.3.5.tgz",
- "integrity": "sha512-bVv1loamL/MgUEN9dNt7VKAsghO4Wgb+kzr8B9TgkM5tHgKk++xiTwi3pejIdgU8DDkzcyaRsO+VTOXJt8jLng==",
- "dependencies": {
- "fast-deep-equal": "^3.1.3",
- "flru": "^1.0.2",
- "gl-matrix": "^3.3.0",
- "tslib": "^2.3.1"
- }
- },
"node_modules/@babel/code-frame": {
"version": "7.23.5",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz",
@@ -1532,28 +1230,6 @@
"@jridgewell/sourcemap-codec": "^1.4.14"
}
},
- "node_modules/@ljharb/resumer": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/@ljharb/resumer/-/resumer-0.0.1.tgz",
- "integrity": "sha512-skQiAOrCfO7vRTq53cxznMpks7wS1va95UCidALlOVWqvBAzwPVErwizDwoMqNVMEn1mDq0utxZd02eIrvF1lw==",
- "dependencies": {
- "@ljharb/through": "^2.3.9"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/@ljharb/through": {
- "version": "2.3.11",
- "resolved": "https://registry.npmjs.org/@ljharb/through/-/through-2.3.11.tgz",
- "integrity": "sha512-ccfcIDlogiXNq5KcbAwbaO7lMh3Tm1i3khMPYpxlK8hH/W53zN81KM9coerRLOnTGu3nfXIniAmQbRI9OxbC0w==",
- "dependencies": {
- "call-bind": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.5",
"resolved": "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
@@ -2153,9 +1829,9 @@
"peer": true
},
"node_modules/@types/node": {
- "version": "20.10.3",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.3.tgz",
- "integrity": "sha512-XJavIpZqiXID5Yxnxv3RUDKTN5b81ddNC3ecsA0SoFXz/QU8OGBwZGMomiq0zw+uuqbL/krztv/DINAQ/EV4gg==",
+ "version": "20.10.4",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.4.tgz",
+ "integrity": "sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==",
"dev": true,
"dependencies": {
"undici-types": "~5.26.4"
@@ -2581,38 +2257,6 @@
"url": "https://github.com/sponsors/epoberezkin"
}
},
- "node_modules/align-text": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz",
- "integrity": "sha512-GrTZLRpmp6wIC2ztrWW9MjjTgSKccffgFagbNDOX95/dcjEcYZibYTeaOntySQLcdw1ztBoFkviiUvTMbb9MYg==",
- "dependencies": {
- "kind-of": "^3.0.2",
- "longest": "^1.0.1",
- "repeat-string": "^1.5.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/align-text/node_modules/kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
- "dependencies": {
- "is-buffer": "^1.1.5"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/amdefine": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
- "integrity": "sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==",
- "engines": {
- "node": ">=0.4.2"
- }
- },
"node_modules/ansi-regex": {
"version": "5.0.1",
"resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
@@ -2720,6 +2364,7 @@
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz",
"integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"is-array-buffer": "^3.0.1"
@@ -2811,6 +2456,7 @@
"version": "1.0.1",
"resolved": "https://registry.npmmirror.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.1.tgz",
"integrity": "sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==",
+ "dev": true,
"dependencies": {
"array-buffer-byte-length": "^1.0.0",
"call-bind": "^1.0.2",
@@ -2857,6 +2503,7 @@
"version": "1.0.5",
"resolved": "https://registry.npmmirror.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz",
"integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==",
+ "dev": true,
"engines": {
"node": ">= 0.4"
}
@@ -2874,7 +2521,8 @@
"node_modules/balanced-match": {
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz",
- "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
+ "dev": true
},
"node_modules/big-integer": {
"version": "1.6.51",
@@ -2910,6 +2558,7 @@
"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"
@@ -3007,6 +2656,7 @@
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/call-bind/-/call-bind-1.0.2.tgz",
"integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
+ "dev": true,
"dependencies": {
"function-bind": "^1.1.1",
"get-intrinsic": "^1.0.2"
@@ -3061,18 +2711,6 @@
"integrity": "sha512-/3z+wB4icFt3r0USMwxujAqRvaD/B7rvGTsKhbhSQErVrJvkZCLhgNLJxU8MevahQVH6hCU9FsHdNUFbiwmE7Q==",
"dev": true
},
- "node_modules/center-align": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz",
- "integrity": "sha512-Baz3aNe2gd2LP2qk5U+sDk/m4oSuwSDcBfayTCTBoWpfIGO5XFxPmjILQII4NGiZjD6DoDI6kf7gKaxkf7s3VQ==",
- "dependencies": {
- "align-text": "^0.1.3",
- "lazy-cache": "^1.0.3"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/chalk": {
"version": "2.4.2",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
@@ -3125,16 +2763,6 @@
"resolved": "https://registry.npmmirror.com/classnames/-/classnames-2.3.2.tgz",
"integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw=="
},
- "node_modules/cliui": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz",
- "integrity": "sha512-GIOYRizG+TGoc7Wgc1LiOTLare95R3mzKgoln+Q/lE4ceiYH19gUpl0l0Ffq4lJDEf3FxujMe6IBfOCs7pfqNA==",
- "dependencies": {
- "center-align": "^0.1.1",
- "right-align": "^0.1.1",
- "wordwrap": "0.0.2"
- }
- },
"node_modules/color-convert": {
"version": "1.9.3",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
@@ -3147,16 +2775,8 @@
"node_modules/color-name": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
- "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="
- },
- "node_modules/color-string": {
- "version": "1.9.1",
- "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz",
- "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==",
- "dependencies": {
- "color-name": "^1.0.0",
- "simple-swizzle": "^0.2.2"
- }
+ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
+ "dev": true
},
"node_modules/colord": {
"version": "2.9.3",
@@ -3176,14 +2796,6 @@
"node": ">= 0.8"
}
},
- "node_modules/commander": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
- "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==",
- "engines": {
- "node": ">= 10"
- }
- },
"node_modules/compute-scroll-into-view": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-3.1.0.tgz",
@@ -3192,12 +2804,8 @@
"node_modules/concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
- },
- "node_modules/contour_plot": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/contour_plot/-/contour_plot-0.0.1.tgz",
- "integrity": "sha512-Nil2HI76Xux6sVGORvhSS8v66m+/h5CwFkBJDO+U5vWaMdNC0yXNCsGDPbzPhvqOEU5koebhdEvD372LI+IyLw=="
+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
+ "dev": true
},
"node_modules/convert-source-map": {
"version": "2.0.0",
@@ -3290,157 +2898,6 @@
"resolved": "https://registry.npmmirror.com/csstype/-/csstype-3.1.2.tgz",
"integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
},
- "node_modules/d3-array": {
- "version": "3.2.4",
- "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz",
- "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==",
- "dependencies": {
- "internmap": "1 - 2"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/d3-color": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-1.4.1.tgz",
- "integrity": "sha512-p2sTHSLCJI2QKunbGb7ocOh7DgTAn8IrLx21QRc/BSnodXM4sv6aLQlnfpvehFMLZEfBc6g9pH9SWQccFYfJ9Q=="
- },
- "node_modules/d3-dispatch": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz",
- "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==",
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/d3-dsv": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-3.0.1.tgz",
- "integrity": "sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q==",
- "dependencies": {
- "commander": "7",
- "iconv-lite": "0.6",
- "rw": "1"
- },
- "bin": {
- "csv2json": "bin/dsv2json.js",
- "csv2tsv": "bin/dsv2dsv.js",
- "dsv2dsv": "bin/dsv2dsv.js",
- "dsv2json": "bin/dsv2json.js",
- "json2csv": "bin/json2dsv.js",
- "json2dsv": "bin/json2dsv.js",
- "json2tsv": "bin/json2dsv.js",
- "tsv2csv": "bin/dsv2dsv.js",
- "tsv2json": "bin/dsv2json.js"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/d3-force": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz",
- "integrity": "sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==",
- "dependencies": {
- "d3-dispatch": "1 - 3",
- "d3-quadtree": "1 - 3",
- "d3-timer": "1 - 3"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/d3-format": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz",
- "integrity": "sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==",
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/d3-geo": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.0.tgz",
- "integrity": "sha512-JEo5HxXDdDYXCaWdwLRt79y7giK8SbhZJbFWXqbRTolCHFI5jRqteLzCsq51NKbUoX0PjBVSohxrx+NoOUujYA==",
- "dependencies": {
- "d3-array": "2.5.0 - 3"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/d3-hierarchy": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz",
- "integrity": "sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA==",
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/d3-interpolate": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz",
- "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==",
- "dependencies": {
- "d3-color": "1 - 3"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/d3-path": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz",
- "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==",
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/d3-quadtree": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz",
- "integrity": "sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==",
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/d3-scale-chromatic": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz",
- "integrity": "sha512-Lx9thtxAKrO2Pq6OO2Ua474opeziKr279P/TKZsMAhYyNDD3EnCffdbgeSYN5O7m2ByQsxtuP2CSDczNUIZ22g==",
- "dependencies": {
- "d3-color": "1 - 3",
- "d3-interpolate": "1 - 3"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/d3-shape": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz",
- "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==",
- "dependencies": {
- "d3-path": "^3.1.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/d3-timer": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz",
- "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==",
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/d3-voronoi": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/d3-voronoi/-/d3-voronoi-1.1.4.tgz",
- "integrity": "sha512-dArJ32hchFsrQ8uMiTBLq256MpnZjeuBtdHpaDlYuQyjU0CVzCJl/BVW+SkszaAeH95D/8gxqAhgx0ouAWAfRg=="
- },
"node_modules/data-urls": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz",
@@ -3480,6 +2937,8 @@
"version": "1.2.0",
"resolved": "https://registry.npmmirror.com/decamelize/-/decamelize-1.2.0.tgz",
"integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
+ "dev": true,
+ "peer": true,
"engines": {
"node": ">=0.10.0"
}
@@ -3514,25 +2973,6 @@
"integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==",
"dev": true
},
- "node_modules/deep-equal": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.2.tgz",
- "integrity": "sha512-5tdhKF6DbU7iIzrIOa1AOUt39ZRm13cmL1cGEh//aqR8x9+tNfbywRf0n5FD/18OKMdo7DNEtrX2t22ZAkI+eg==",
- "dependencies": {
- "is-arguments": "^1.1.1",
- "is-date-object": "^1.0.5",
- "is-regex": "^1.1.4",
- "object-is": "^1.1.5",
- "object-keys": "^1.1.1",
- "regexp.prototype.flags": "^1.5.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/deep-is": {
"version": "0.1.4",
"resolved": "https://registry.npmmirror.com/deep-is/-/deep-is-0.1.4.tgz",
@@ -3571,6 +3011,7 @@
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz",
"integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==",
+ "dev": true,
"dependencies": {
"get-intrinsic": "^1.2.1",
"gopd": "^1.0.1",
@@ -3593,6 +3034,7 @@
"version": "1.2.0",
"resolved": "https://registry.npmmirror.com/define-properties/-/define-properties-1.2.0.tgz",
"integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==",
+ "dev": true,
"dependencies": {
"has-property-descriptors": "^1.0.0",
"object-keys": "^1.1.1"
@@ -3601,14 +3043,6 @@
"node": ">= 0.4"
}
},
- "node_modules/defined": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz",
- "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==",
- "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",
@@ -3651,17 +3085,20 @@
"tslib": "^2.0.3"
}
},
- "node_modules/dotignore": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/dotignore/-/dotignore-0.1.2.tgz",
- "integrity": "sha512-UGGGWfSauusaVJC+8fgV+NVvBXkCTmVv7sk6nojDZZvuOUNGUy0Zk4UpHQD6EDjS0jpBwcACvH4eofvyzBcRDw==",
+ "node_modules/echarts": {
+ "version": "5.4.3",
+ "resolved": "https://registry.npmjs.org/echarts/-/echarts-5.4.3.tgz",
+ "integrity": "sha512-mYKxLxhzy6zyTi/FaEbJMOZU1ULGEQHaeIeuMR5L+JnJTpz+YR03mnnpBhbR4+UYJAgiXgpyTVLffPAjOTLkZA==",
"dependencies": {
- "minimatch": "^3.0.4"
- },
- "bin": {
- "ignored": "bin/ignored"
+ "tslib": "2.3.0",
+ "zrender": "5.4.4"
}
},
+ "node_modules/echarts/node_modules/tslib": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz",
+ "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg=="
+ },
"node_modules/electron-to-chromium": {
"version": "1.4.508",
"resolved": "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.4.508.tgz",
@@ -3697,6 +3134,7 @@
"version": "1.22.1",
"resolved": "https://registry.npmmirror.com/es-abstract/-/es-abstract-1.22.1.tgz",
"integrity": "sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==",
+ "dev": true,
"dependencies": {
"array-buffer-byte-length": "^1.0.0",
"arraybuffer.prototype.slice": "^1.0.1",
@@ -3746,6 +3184,7 @@
"version": "2.0.1",
"resolved": "https://registry.npmmirror.com/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz",
"integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==",
+ "dev": true,
"dependencies": {
"get-intrinsic": "^1.1.3",
"has": "^1.0.3",
@@ -3768,6 +3207,7 @@
"version": "1.2.1",
"resolved": "https://registry.npmmirror.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
"integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
+ "dev": true,
"dependencies": {
"is-callable": "^1.1.4",
"is-date-object": "^1.0.1",
@@ -3827,6 +3267,7 @@
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
"integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
+ "dev": true,
"engines": {
"node": ">=0.8.0"
}
@@ -4348,11 +3789,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/eventemitter3": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz",
- "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA=="
- },
"node_modules/execa": {
"version": "7.2.0",
"resolved": "https://registry.npmmirror.com/execa/-/execa-7.2.0.tgz",
@@ -4375,7 +3811,7 @@
},
"node_modules/fast-deep-equal": {
"version": "3.1.3",
- "resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
},
"node_modules/fast-diff": {
@@ -4443,11 +3879,6 @@
"reusify": "^1.0.4"
}
},
- "node_modules/fecha": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz",
- "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw=="
- },
"node_modules/file-entry-cache": {
"version": "6.0.1",
"resolved": "https://registry.npmmirror.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
@@ -4505,89 +3936,6 @@
"integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==",
"dev": true
},
- "node_modules/flru": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/flru/-/flru-1.0.2.tgz",
- "integrity": "sha512-kWyh8ADvHBFz6ua5xYOPnUroZTT/bwWfrCeL0Wj1dzG4/YOmOcfJ99W8dOVyyynJN35rZ9aCOtHChqQovV7yog==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/fmin": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/fmin/-/fmin-0.0.2.tgz",
- "integrity": "sha512-sSi6DzInhl9d8yqssDfGZejChO8d2bAGIpysPsvYsxFe898z89XhCZg6CPNV3nhUhFefeC/AXZK2bAJxlBjN6A==",
- "dependencies": {
- "contour_plot": "^0.0.1",
- "json2module": "^0.0.3",
- "rollup": "^0.25.8",
- "tape": "^4.5.1",
- "uglify-js": "^2.6.2"
- }
- },
- "node_modules/fmin/node_modules/ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/fmin/node_modules/ansi-styles": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
- "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/fmin/node_modules/chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==",
- "dependencies": {
- "ansi-styles": "^2.2.1",
- "escape-string-regexp": "^1.0.2",
- "has-ansi": "^2.0.0",
- "strip-ansi": "^3.0.0",
- "supports-color": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/fmin/node_modules/rollup": {
- "version": "0.25.8",
- "resolved": "https://registry.npmjs.org/rollup/-/rollup-0.25.8.tgz",
- "integrity": "sha512-a2S4Bh3bgrdO4BhKr2E4nZkjTvrJ2m2bWjMTzVYtoqSCn0HnuxosXnaJUHrMEziOWr3CzL9GjilQQKcyCQpJoA==",
- "dependencies": {
- "chalk": "^1.1.1",
- "minimist": "^1.2.0",
- "source-map-support": "^0.3.2"
- },
- "bin": {
- "rollup": "bin/rollup"
- }
- },
- "node_modules/fmin/node_modules/strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==",
- "dependencies": {
- "ansi-regex": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/fmin/node_modules/supports-color": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
- "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==",
- "engines": {
- "node": ">=0.8.0"
- }
- },
"node_modules/follow-redirects": {
"version": "1.15.2",
"resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.2.tgz",
@@ -4605,6 +3953,7 @@
"version": "0.3.3",
"resolved": "https://registry.npmmirror.com/for-each/-/for-each-0.3.3.tgz",
"integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==",
+ "dev": true,
"dependencies": {
"is-callable": "^1.1.3"
}
@@ -4625,7 +3974,8 @@
"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=="
+ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
+ "dev": true
},
"node_modules/fsevents": {
"version": "2.3.3",
@@ -4645,6 +3995,7 @@
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
"integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
+ "dev": true,
"funding": {
"url": "https://github.com/sponsors/ljharb"
}
@@ -4653,6 +4004,7 @@
"version": "1.1.6",
"resolved": "https://registry.npmmirror.com/function.prototype.name/-/function.prototype.name-1.1.6.tgz",
"integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"define-properties": "^1.2.0",
@@ -4666,7 +4018,8 @@
"node_modules/functions-have-names": {
"version": "1.2.3",
"resolved": "https://registry.npmmirror.com/functions-have-names/-/functions-have-names-1.2.3.tgz",
- "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ=="
+ "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
+ "dev": true
},
"node_modules/gensync": {
"version": "1.0.0-beta.2",
@@ -4681,6 +4034,7 @@
"version": "1.2.1",
"resolved": "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.2.1.tgz",
"integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==",
+ "dev": true,
"dependencies": {
"function-bind": "^1.1.1",
"has": "^1.0.3",
@@ -4701,6 +4055,7 @@
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz",
"integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"get-intrinsic": "^1.1.1"
@@ -4709,15 +4064,11 @@
"node": ">= 0.4"
}
},
- "node_modules/gl-matrix": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.4.3.tgz",
- "integrity": "sha512-wcCp8vu8FT22BnvKVPjXa/ICBWRq/zjFfdofZy1WSpQZpphblv12/bOQLBC1rMM7SGOFS9ltVmKOHil5+Ml7gA=="
- },
"node_modules/glob": {
"version": "7.2.3",
"resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz",
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
+ "dev": true,
"dependencies": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
@@ -4796,6 +4147,7 @@
"version": "1.0.3",
"resolved": "https://registry.npmmirror.com/globalthis/-/globalthis-1.0.3.tgz",
"integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==",
+ "dev": true,
"dependencies": {
"define-properties": "^1.1.3"
},
@@ -4831,6 +4183,7 @@
"version": "1.0.1",
"resolved": "https://registry.npmmirror.com/gopd/-/gopd-1.0.1.tgz",
"integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
+ "dev": true,
"dependencies": {
"get-intrinsic": "^1.1.3"
}
@@ -4855,6 +4208,7 @@
"version": "1.0.3",
"resolved": "https://registry.npmmirror.com/has/-/has-1.0.3.tgz",
"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
+ "dev": true,
"dependencies": {
"function-bind": "^1.1.1"
},
@@ -4862,29 +4216,11 @@
"node": ">= 0.4.0"
}
},
- "node_modules/has-ansi": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
- "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==",
- "dependencies": {
- "ansi-regex": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/has-ansi/node_modules/ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/has-bigints": {
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/has-bigints/-/has-bigints-1.0.2.tgz",
- "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ=="
+ "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==",
+ "dev": true
},
"node_modules/has-flag": {
"version": "3.0.0",
@@ -4899,6 +4235,7 @@
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz",
"integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==",
+ "dev": true,
"dependencies": {
"get-intrinsic": "^1.1.1"
}
@@ -4907,6 +4244,7 @@
"version": "1.0.1",
"resolved": "https://registry.npmmirror.com/has-proto/-/has-proto-1.0.1.tgz",
"integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==",
+ "dev": true,
"engines": {
"node": ">= 0.4"
}
@@ -4915,6 +4253,7 @@
"version": "1.0.3",
"resolved": "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.0.3.tgz",
"integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
+ "dev": true,
"engines": {
"node": ">= 0.4"
}
@@ -4923,6 +4262,7 @@
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz",
"integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==",
+ "dev": true,
"dependencies": {
"has-symbols": "^1.0.2"
},
@@ -4934,6 +4274,7 @@
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz",
"integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==",
+ "dev": true,
"dependencies": {
"function-bind": "^1.1.2"
},
@@ -5035,6 +4376,7 @@
"version": "0.6.3",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
"integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+ "dev": true,
"dependencies": {
"safer-buffer": ">= 2.1.2 < 3.0.0"
},
@@ -5108,6 +4450,7 @@
"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"
@@ -5116,7 +4459,8 @@
"node_modules/inherits": {
"version": "2.0.4",
"resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "dev": true
},
"node_modules/ini": {
"version": "1.3.8",
@@ -5129,6 +4473,7 @@
"version": "1.0.5",
"resolved": "https://registry.npmmirror.com/internal-slot/-/internal-slot-1.0.5.tgz",
"integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==",
+ "dev": true,
"dependencies": {
"get-intrinsic": "^1.2.0",
"has": "^1.0.3",
@@ -5138,33 +4483,11 @@
"node": ">= 0.4"
}
},
- "node_modules/internmap": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz",
- "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==",
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/is-arguments": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz",
- "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/is-array-buffer": {
"version": "3.0.2",
"resolved": "https://registry.npmmirror.com/is-array-buffer/-/is-array-buffer-3.0.2.tgz",
"integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"get-intrinsic": "^1.2.0",
@@ -5181,6 +4504,7 @@
"version": "1.0.4",
"resolved": "https://registry.npmmirror.com/is-bigint/-/is-bigint-1.0.4.tgz",
"integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==",
+ "dev": true,
"dependencies": {
"has-bigints": "^1.0.1"
}
@@ -5201,6 +4525,7 @@
"version": "1.1.2",
"resolved": "https://registry.npmmirror.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz",
"integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"has-tostringtag": "^1.0.0"
@@ -5209,15 +4534,11 @@
"node": ">= 0.4"
}
},
- "node_modules/is-buffer": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
- "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w=="
- },
"node_modules/is-callable": {
"version": "1.2.7",
"resolved": "https://registry.npmmirror.com/is-callable/-/is-callable-1.2.7.tgz",
"integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==",
+ "dev": true,
"engines": {
"node": ">= 0.4"
}
@@ -5226,6 +4547,7 @@
"version": "2.13.1",
"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz",
"integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==",
+ "dev": true,
"dependencies": {
"hasown": "^2.0.0"
},
@@ -5237,6 +4559,7 @@
"version": "1.0.5",
"resolved": "https://registry.npmmirror.com/is-date-object/-/is-date-object-1.0.5.tgz",
"integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==",
+ "dev": true,
"dependencies": {
"has-tostringtag": "^1.0.0"
},
@@ -5306,6 +4629,7 @@
"version": "2.0.2",
"resolved": "https://registry.npmmirror.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz",
"integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==",
+ "dev": true,
"engines": {
"node": ">= 0.4"
}
@@ -5323,6 +4647,7 @@
"version": "1.0.7",
"resolved": "https://registry.npmmirror.com/is-number-object/-/is-number-object-1.0.7.tgz",
"integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==",
+ "dev": true,
"dependencies": {
"has-tostringtag": "^1.0.0"
},
@@ -5369,6 +4694,7 @@
"version": "1.1.4",
"resolved": "https://registry.npmmirror.com/is-regex/-/is-regex-1.1.4.tgz",
"integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"has-tostringtag": "^1.0.0"
@@ -5381,6 +4707,7 @@
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz",
"integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2"
}
@@ -5398,6 +4725,7 @@
"version": "1.0.7",
"resolved": "https://registry.npmmirror.com/is-string/-/is-string-1.0.7.tgz",
"integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==",
+ "dev": true,
"dependencies": {
"has-tostringtag": "^1.0.0"
},
@@ -5409,6 +4737,7 @@
"version": "1.0.4",
"resolved": "https://registry.npmmirror.com/is-symbol/-/is-symbol-1.0.4.tgz",
"integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==",
+ "dev": true,
"dependencies": {
"has-symbols": "^1.0.2"
},
@@ -5420,6 +4749,7 @@
"version": "1.1.12",
"resolved": "https://registry.npmmirror.com/is-typed-array/-/is-typed-array-1.1.12.tgz",
"integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==",
+ "dev": true,
"dependencies": {
"which-typed-array": "^1.1.11"
},
@@ -5431,6 +4761,7 @@
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/is-weakref/-/is-weakref-1.0.2.tgz",
"integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2"
}
@@ -5462,7 +4793,8 @@
"node_modules/isarray": {
"version": "2.0.5",
"resolved": "https://registry.npmmirror.com/isarray/-/isarray-2.0.5.tgz",
- "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw=="
+ "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
+ "dev": true
},
"node_modules/isexe": {
"version": "2.0.0",
@@ -5563,17 +4895,6 @@
"integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
"dev": true
},
- "node_modules/json2module": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/json2module/-/json2module-0.0.3.tgz",
- "integrity": "sha512-qYGxqrRrt4GbB8IEOy1jJGypkNsjWoIMlZt4bAsmUScCA507Hbc2p1JOhBzqn45u3PWafUgH2OnzyNU7udO/GA==",
- "dependencies": {
- "rw": "^1.3.2"
- },
- "bin": {
- "json2module": "bin/json2module"
- }
- },
"node_modules/json2mq": {
"version": "0.2.0",
"resolved": "https://registry.npmmirror.com/json2mq/-/json2mq-0.2.0.tgz",
@@ -5640,14 +4961,6 @@
"integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==",
"dev": true
},
- "node_modules/lazy-cache": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz",
- "integrity": "sha512-RE2g0b5VGZsOCFOCgP7omTRYFqydmZkBwl5oNnQ1lDYC57uyO9KqNnNVxT7COSHTxrRCWVcAVOcbjk+tvh/rgQ==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/levn": {
"version": "0.4.1",
"resolved": "https://registry.npmmirror.com/levn/-/levn-0.4.1.tgz",
@@ -5716,11 +5029,6 @@
"resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz",
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
},
- "node_modules/lodash-es": {
- "version": "4.17.21",
- "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz",
- "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw=="
- },
"node_modules/lodash.merge": {
"version": "4.6.2",
"resolved": "https://registry.npmmirror.com/lodash.merge/-/lodash.merge-4.6.2.tgz",
@@ -5734,14 +5042,6 @@
"dev": true,
"peer": true
},
- "node_modules/longest": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz",
- "integrity": "sha512-k+yt5n3l48JU4k8ftnKG6V7u32wyH2NfKzeMto9F/QRE0amxy/LayxwlvjjkZEIzqR+19IrtFO8p5kB9QaYUFg==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/loose-envify": {
"version": "1.4.0",
"resolved": "https://registry.npmmirror.com/loose-envify/-/loose-envify-1.4.0.tgz",
@@ -5903,6 +5203,7 @@
"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"
},
@@ -5913,7 +5214,8 @@
"node_modules/minimist": {
"version": "1.2.8",
"resolved": "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz",
- "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA=="
+ "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
+ "dev": true
},
"node_modules/minimist-options": {
"version": "4.1.0",
@@ -5942,25 +5244,6 @@
"ufo": "^1.3.0"
}
},
- "node_modules/mock-property": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/mock-property/-/mock-property-1.0.3.tgz",
- "integrity": "sha512-2emPTb1reeLLYwHxyVx993iYyCHEiRRO+y8NFXFPL5kl5q14sgTK76cXyEKkeKCHeRw35SfdkUJ10Q1KfHuiIQ==",
- "dependencies": {
- "define-data-property": "^1.1.1",
- "functions-have-names": "^1.2.3",
- "gopd": "^1.0.1",
- "has-property-descriptors": "^1.0.0",
- "hasown": "^2.0.0",
- "isarray": "^2.0.5"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/moment": {
"version": "2.29.4",
"resolved": "https://registry.npmmirror.com/moment/-/moment-2.29.4.tgz",
@@ -6106,27 +5389,14 @@
"node_modules/object-inspect": {
"version": "1.12.3",
"resolved": "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.12.3.tgz",
- "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g=="
- },
- "node_modules/object-is": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz",
- "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
+ "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==",
+ "dev": true
},
"node_modules/object-keys": {
"version": "1.1.1",
"resolved": "https://registry.npmmirror.com/object-keys/-/object-keys-1.1.1.tgz",
"integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
+ "dev": true,
"engines": {
"node": ">= 0.4"
}
@@ -6135,6 +5405,7 @@
"version": "4.1.4",
"resolved": "https://registry.npmmirror.com/object.assign/-/object.assign-4.1.4.tgz",
"integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.4",
@@ -6189,6 +5460,7 @@
"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"
}
@@ -6320,6 +5592,7 @@
"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"
}
@@ -6336,7 +5609,8 @@
"node_modules/path-parse": {
"version": "1.0.7",
"resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz",
- "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+ "dev": true
},
"node_modules/path-type": {
"version": "4.0.0",
@@ -6353,11 +5627,6 @@
"integrity": "sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==",
"dev": true
},
- "node_modules/pdfast": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/pdfast/-/pdfast-0.2.0.tgz",
- "integrity": "sha512-cq6TTu6qKSFUHwEahi68k/kqN2mfepjkGrG9Un70cgdRRKLKY6Rf8P8uvP2NvZktaQZNF3YE7agEkLj0vGK9bA=="
- },
"node_modules/picocolors": {
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz",
@@ -6546,19 +5815,6 @@
"node": ">=8"
}
},
- "node_modules/quickselect": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz",
- "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw=="
- },
- "node_modules/rbush": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz",
- "integrity": "sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==",
- "dependencies": {
- "quickselect": "^2.0.0"
- }
- },
"node_modules/rc-cascader": {
"version": "3.20.0",
"resolved": "https://registry.npmjs.org/rc-cascader/-/rc-cascader-3.20.0.tgz",
@@ -7365,6 +6621,7 @@
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz",
"integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"define-properties": "^1.2.0",
@@ -7382,14 +6639,6 @@
"resolved": "https://registry.npmmirror.com/remove-accents/-/remove-accents-0.4.2.tgz",
"integrity": "sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA=="
},
- "node_modules/repeat-string": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
- "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==",
- "engines": {
- "node": ">=0.10"
- }
- },
"node_modules/require-from-string": {
"version": "2.0.2",
"resolved": "https://registry.npmmirror.com/require-from-string/-/require-from-string-2.0.2.tgz",
@@ -7415,6 +6664,7 @@
"version": "1.22.8",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
"integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
+ "dev": true,
"dependencies": {
"is-core-module": "^2.13.0",
"path-parse": "^1.0.7",
@@ -7446,17 +6696,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/right-align": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz",
- "integrity": "sha512-yqINtL/G7vs2v+dFIZmFUDbnVyFUJFKd6gK22Kgo6R4jfJGFtisKyncWDDULgjfqf4ASQuIQyjJ7XZ+3aWpsAg==",
- "dependencies": {
- "align-text": "^0.1.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/rimraf": {
"version": "3.0.2",
"resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz",
@@ -7604,15 +6843,11 @@
"queue-microtask": "^1.2.2"
}
},
- "node_modules/rw": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz",
- "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ=="
- },
"node_modules/safe-array-concat": {
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/safe-array-concat/-/safe-array-concat-1.0.0.tgz",
"integrity": "sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"get-intrinsic": "^1.2.0",
@@ -7627,6 +6862,7 @@
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz",
"integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"get-intrinsic": "^1.1.3",
@@ -7636,7 +6872,8 @@
"node_modules/safer-buffer": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
+ "dev": true
},
"node_modules/sass": {
"version": "1.69.5",
@@ -7702,6 +6939,7 @@
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz",
"integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==",
+ "dev": true,
"dependencies": {
"define-data-property": "^1.0.1",
"functions-have-names": "^1.2.3",
@@ -7736,6 +6974,7 @@
"version": "1.0.4",
"resolved": "https://registry.npmmirror.com/side-channel/-/side-channel-1.0.4.tgz",
"integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.0",
"get-intrinsic": "^1.0.2",
@@ -7748,18 +6987,10 @@
"integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
"dev": true
},
- "node_modules/simple-swizzle": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz",
- "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==",
- "dependencies": {
- "is-arrayish": "^0.3.1"
- }
- },
- "node_modules/simple-swizzle/node_modules/is-arrayish": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz",
- "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ=="
+ "node_modules/size-sensor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/size-sensor/-/size-sensor-1.0.2.tgz",
+ "integrity": "sha512-2NCmWxY7A9pYKGXNBfteo4hy14gWu47rg5692peVMst6lQLPKrVjhY+UTEsPI5ceFRJSl3gVgMYaUi/hKuaiKw=="
},
"node_modules/slash": {
"version": "3.0.0",
@@ -7828,14 +7059,6 @@
"tslib": "^2.0.3"
}
},
- "node_modules/source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/source-map-js": {
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz",
@@ -7845,25 +7068,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/source-map-support": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.3.3.tgz",
- "integrity": "sha512-9O4+y9n64RewmFoKUZ/5Tx9IHIcXM6Q+RTSw6ehnqybUz4a7iwR3Eaw80uLtqqQ5D0C+5H03D4KKGo9PdP33Gg==",
- "dependencies": {
- "source-map": "0.1.32"
- }
- },
- "node_modules/source-map-support/node_modules/source-map": {
- "version": "0.1.32",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.32.tgz",
- "integrity": "sha512-htQyLrrRLkQ87Zfrir4/yN+vAUd6DNjVayEjTSHXu29AYQJw57I4/xEL/M6p6E/woPNJwvZt6rVlzc7gFEJccQ==",
- "dependencies": {
- "amdefine": ">=0.0.4"
- },
- "engines": {
- "node": ">=0.8.0"
- }
- },
"node_modules/spdx-correct": {
"version": "3.2.0",
"resolved": "https://registry.npmmirror.com/spdx-correct/-/spdx-correct-3.2.0.tgz",
@@ -7924,6 +7128,7 @@
"version": "1.2.8",
"resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz",
"integrity": "sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"define-properties": "^1.2.0",
@@ -7940,6 +7145,7 @@
"version": "1.0.6",
"resolved": "https://registry.npmmirror.com/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz",
"integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.4",
@@ -7950,6 +7156,7 @@
"version": "1.0.6",
"resolved": "https://registry.npmmirror.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz",
"integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.4",
@@ -8191,6 +7398,7 @@
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
"integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "dev": true,
"engines": {
"node": ">= 0.4"
}
@@ -8201,11 +7409,6 @@
"integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==",
"dev": true
},
- "node_modules/svg-path-parser": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/svg-path-parser/-/svg-path-parser-1.1.0.tgz",
- "integrity": "sha512-jGCUqcQyXpfe38R7RFfhrMyfXcBmpMNJI/B+4CE9/Unkh98UporAc461GTthv+TVDuZXsBx7/WiwJb1Oh4tt4A=="
- },
"node_modules/svg-tags": {
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/svg-tags/-/svg-tags-1.0.0.tgz",
@@ -8269,35 +7472,6 @@
"dev": true,
"peer": true
},
- "node_modules/tape": {
- "version": "4.17.0",
- "resolved": "https://registry.npmjs.org/tape/-/tape-4.17.0.tgz",
- "integrity": "sha512-KCuXjYxCZ3ru40dmND+oCLsXyuA8hoseu2SS404Px5ouyS0A99v8X/mdiLqsR5MTAyamMBN7PRwt2Dv3+xGIxw==",
- "dependencies": {
- "@ljharb/resumer": "~0.0.1",
- "@ljharb/through": "~2.3.9",
- "call-bind": "~1.0.2",
- "deep-equal": "~1.1.1",
- "defined": "~1.0.1",
- "dotignore": "~0.1.2",
- "for-each": "~0.3.3",
- "glob": "~7.2.3",
- "has": "~1.0.3",
- "inherits": "~2.0.4",
- "is-regex": "~1.1.4",
- "minimist": "~1.2.8",
- "mock-property": "~1.0.0",
- "object-inspect": "~1.12.3",
- "resolve": "~1.22.6",
- "string.prototype.trim": "~1.2.8"
- },
- "bin": {
- "tape": "bin/tape"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/text-table": {
"version": "0.2.0",
"resolved": "https://registry.npmmirror.com/text-table/-/text-table-0.2.0.tgz",
@@ -8423,7 +7597,8 @@
"node_modules/tslib": {
"version": "2.6.2",
"resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.6.2.tgz",
- "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
+ "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==",
+ "dev": true
},
"node_modules/type-check": {
"version": "0.4.0",
@@ -8451,6 +7626,7 @@
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz",
"integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"get-intrinsic": "^1.2.1",
@@ -8464,6 +7640,7 @@
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz",
"integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"for-each": "^0.3.3",
@@ -8478,6 +7655,7 @@
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz",
"integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==",
+ "dev": true,
"dependencies": {
"available-typed-arrays": "^1.0.5",
"call-bind": "^1.0.2",
@@ -8493,6 +7671,7 @@
"version": "1.0.4",
"resolved": "https://registry.npmmirror.com/typed-array-length/-/typed-array-length-1.0.4.tgz",
"integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"for-each": "^0.3.3",
@@ -8500,9 +7679,9 @@
}
},
"node_modules/typescript": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz",
- "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==",
+ "version": "5.3.3",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz",
+ "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==",
"dev": true,
"bin": {
"tsc": "bin/tsc",
@@ -8518,34 +7697,11 @@
"integrity": "sha512-uY/99gMLIOlJPwATcMVYfqDSxUR9//AUcgZMzwfSTJPDKzA1S8mX4VLqa+fiAtveraQUBCz4FFcwVZBGbwBXIw==",
"dev": true
},
- "node_modules/uglify-js": {
- "version": "2.8.29",
- "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz",
- "integrity": "sha512-qLq/4y2pjcU3vhlhseXGGJ7VbFO4pBANu0kwl8VCa9KEI0V8VfZIx2Fy3w01iSTA/pGwKZSmu/+I4etLNDdt5w==",
- "dependencies": {
- "source-map": "~0.5.1",
- "yargs": "~3.10.0"
- },
- "bin": {
- "uglifyjs": "bin/uglifyjs"
- },
- "engines": {
- "node": ">=0.8.0"
- },
- "optionalDependencies": {
- "uglify-to-browserify": "~1.0.0"
- }
- },
- "node_modules/uglify-to-browserify": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz",
- "integrity": "sha512-vb2s1lYx2xBtUgy+ta+b2J/GLVUR+wmpINwHePmPRhOsIVCG2wDzKJ0n14GslH1BifsqVzSOwQhRaCAsZ/nI4Q==",
- "optional": true
- },
"node_modules/unbox-primitive": {
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
"integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==",
+ "dev": true,
"dependencies": {
"call-bind": "^1.0.2",
"has-bigints": "^1.0.2",
@@ -8778,9 +7934,9 @@
}
},
"node_modules/vite": {
- "version": "5.0.5",
- "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.5.tgz",
- "integrity": "sha512-OekeWqR9Ls56f3zd4CaxzbbS11gqYkEiBtnWFFgYR2WV8oPJRRKq0mpskYy/XaoCL3L7VINDhqqOMNDiYdGvGg==",
+ "version": "5.0.6",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.6.tgz",
+ "integrity": "sha512-MD3joyAEBtV7QZPl2JVVUai6zHms3YOmLR+BpMzLlX2Yzjfcc4gTgNi09d/Rua3F4EtC8zdwPU8eQYyib4vVMQ==",
"dev": true,
"dependencies": {
"esbuild": "^0.19.3",
@@ -8921,6 +8077,7 @@
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
"integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
+ "dev": true,
"dependencies": {
"is-bigint": "^1.0.1",
"is-boolean-object": "^1.1.0",
@@ -8933,6 +8090,7 @@
"version": "1.1.11",
"resolved": "https://registry.npmmirror.com/which-typed-array/-/which-typed-array-1.1.11.tgz",
"integrity": "sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==",
+ "dev": true,
"dependencies": {
"available-typed-arrays": "^1.0.5",
"call-bind": "^1.0.2",
@@ -8944,26 +8102,11 @@
"node": ">= 0.4"
}
},
- "node_modules/window-size": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz",
- "integrity": "sha512-1pTPQDKTdd61ozlKGNCjhNRd+KPmgLSGa3mZTHoOliaGcESD8G1PXhh7c1fgiPjVbNVfgy2Faw4BI8/m0cC8Mg==",
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/wordwrap": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
- "integrity": "sha512-xSBsCeh+g+dinoBv3GAOWM4LcVVO68wLXRanibtBSdUvkGWQRGeE9P7IwU9EmDDi4jA6L44lz15CGMwdw9N5+Q==",
- "engines": {
- "node": ">=0.4.0"
- }
- },
"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=="
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
+ "dev": true
},
"node_modules/write-file-atomic": {
"version": "4.0.2",
@@ -9031,17 +8174,6 @@
"node": ">= 6"
}
},
- "node_modules/yargs": {
- "version": "3.10.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz",
- "integrity": "sha512-QFzUah88GAGy9lyDKGBqZdkYApt63rCXYBGYnEP4xDJPXNqXXnBDACnbrXnViV6jRSqAePwrATi2i8mfYm4L1A==",
- "dependencies": {
- "camelcase": "^1.0.2",
- "cliui": "^2.1.0",
- "decamelize": "^1.0.0",
- "window-size": "0.1.0"
- }
- },
"node_modules/yargs-parser": {
"version": "20.2.9",
"resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-20.2.9.tgz",
@@ -9052,14 +8184,6 @@
"node": ">=10"
}
},
- "node_modules/yargs/node_modules/camelcase": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz",
- "integrity": "sha512-wzLkDa4K/mzI1OSITC+DUyjgIl/ETNHE9QvYgy6J6Jvqyyz4C0Xfd+lQhb19sX2jMpZV4IssUn0VDVmglV+s4g==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/yocto-queue": {
"version": "0.1.0",
"resolved": "https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz",
@@ -9068,6 +8192,19 @@
"engines": {
"node": ">=10"
}
+ },
+ "node_modules/zrender": {
+ "version": "5.4.4",
+ "resolved": "https://registry.npmjs.org/zrender/-/zrender-5.4.4.tgz",
+ "integrity": "sha512-0VxCNJ7AGOMCWeHVyTrGzUgrK4asT4ml9PEkeGirAkKNYXYzoPJCLvmyfdoOXcjTHPs10OZVMfD1Rwg16AZyYw==",
+ "dependencies": {
+ "tslib": "2.3.0"
+ }
+ },
+ "node_modules/zrender/node_modules/tslib": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz",
+ "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg=="
}
}
}
diff --git a/package.json b/package.json
index 4b29a1f..54679a0 100644
--- a/package.json
+++ b/package.json
@@ -15,10 +15,11 @@
},
"dependencies": {
"@ant-design/icons": "^5.2.6",
- "@ant-design/charts": "^2.0.0-beta.0",
"antd": "^5.12.1",
"axios": "^1.6.2",
"dayjs": "^1.11.10",
+ "echarts": "^5.4.3",
+ "fast-deep-equal": "^3.1.3",
"jwt-decode": "^4.0.0",
"localforage": "^1.10.0",
"lodash": "^4.17.21",
@@ -27,14 +28,15 @@
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-router": "^6.20.1",
- "react-router-dom": "^6.20.1"
+ "react-router-dom": "^6.20.1",
+ "size-sensor": "^1.0.2"
},
"devDependencies": {
"@svgr/core": "^8.1.0",
"@svgr/plugin-jsx": "^8.1.0",
"@types/jsdom": "^21.1.6",
"@types/lodash": "^4.14.202",
- "@types/node": "^20.10.3",
+ "@types/node": "^20.10.4",
"@types/react": "^18.2.42",
"@types/react-dom": "^18.2.17",
"@typescript-eslint/eslint-plugin": "^6.13.2",
@@ -52,9 +54,9 @@
"prettier": "^3.1.0",
"sass": "^1.69.5",
"stylelint-config-prettier": "^9.0.5",
- "typescript": "^5.3.2",
+ "typescript": "^5.3.3",
"unplugin-auto-import": "^0.17.2",
"unplugin-icons": "^0.18.1",
- "vite": "^5.0.5"
+ "vite": "^5.0.6"
}
}
diff --git a/src/assets/css/pages/system/index.scss b/src/assets/css/pages/system/index.scss
index 0503caf..619ef30 100644
--- a/src/assets/css/pages/system/index.scss
+++ b/src/assets/css/pages/system/index.scss
@@ -3,9 +3,12 @@
.root-content {
padding: 30px;
gap: 20px;
+ flex-wrap: wrap;
+ justify-content: center;
- .root-row {
- gap: 20px;
+ >.card-box {
+ width: 48%;
+ flex: 0 0 auto;
.common-card {
padding: 20px;
@@ -48,6 +51,15 @@
}
}
+ .value-chart {
+ >div {
+ height: 12px;
+ >* {
+ transform: translateY(1px);
+ }
+ }
+ }
+
> * {
gap: 5px;
}
diff --git a/src/assets/svg/cpu.svg b/src/assets/svg/cpu.svg
new file mode 100644
index 0000000..11a6990
--- /dev/null
+++ b/src/assets/svg/cpu.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg/java.svg b/src/assets/svg/java.svg
new file mode 100644
index 0000000..359d827
--- /dev/null
+++ b/src/assets/svg/java.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg/memory.svg b/src/assets/svg/memory.svg
new file mode 100644
index 0000000..a41c3e6
--- /dev/null
+++ b/src/assets/svg/memory.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/components/common/echarts/EChartReact.tsx b/src/components/common/echarts/EChartReact.tsx
new file mode 100644
index 0000000..174f2b0
--- /dev/null
+++ b/src/components/common/echarts/EChartReact.tsx
@@ -0,0 +1,181 @@
+import React, { CSSProperties, useState } from 'react'
+import echarts, { EChartsCoreOption, EChartsType } from 'echarts/core'
+import { RendererType } from 'echarts/types/src/util/types'
+import { LocaleOption } from 'echarts/types/src/core/locale'
+import { bind, clear } from 'size-sensor'
+import isEqual from 'fast-deep-equal'
+import { usePrevious } from '@/util/hooks'
+
+interface EChartsInitOpts {
+ locale?: string | LocaleOption
+ renderer?: RendererType
+ devicePixelRatio?: number
+ useDirtyRect?: boolean
+ useCoarsePointer?: boolean
+ pointerSize?: number
+ ssr?: boolean
+ width?: number | string
+ height?: number | string
+}
+
+interface EChartsReactProps {
+ echarts: typeof echarts
+ className?: string
+ style?: CSSProperties
+ option: EChartsCoreOption
+ theme?: string | object | null
+ notMerge?: boolean
+ lazyUpdate?: boolean
+ showLoading?: boolean
+ loadingOption?: object
+ opts?: EChartsInitOpts
+ onChartReady?: (instance: EChartsType) => void
+ onEvents?: Record void>
+ shouldSetOption?: (prevProps: EChartsReactProps, props: EChartsReactProps) => boolean
+}
+
+const EChartReact: React.FC = (props) => {
+ const elementRef = useRef(null)
+ const prevProps = usePrevious(props)
+ const [echarts] = useState(props.echarts)
+ const [isInitialResize, setIsInitialResize] = useState(true)
+
+ const { style, className = '', theme, opts } = props
+
+ const renderNewECharts = () => {
+ const { onEvents, onChartReady } = props
+
+ const eChartsInstance = updateEChartsOption()
+
+ bindEvents(eChartsInstance, onEvents || {})
+
+ if (typeof onChartReady === 'function') {
+ onChartReady(eChartsInstance)
+ }
+
+ if (elementRef.current) {
+ bind(elementRef.current, () => {
+ resize()
+ })
+ }
+
+ return () => {
+ dispose()
+ }
+ }
+
+ const updateEChartsOption = () => {
+ const { option, notMerge = false, lazyUpdate = false, showLoading, loadingOption } = props
+
+ const eChartsInstance = getEChartsInstance()
+ eChartsInstance.setOption(option, notMerge, lazyUpdate)
+ if (showLoading) {
+ eChartsInstance.showLoading(loadingOption)
+ } else {
+ eChartsInstance.hideLoading()
+ }
+
+ return eChartsInstance
+ }
+
+ const getEChartsInstance = () =>
+ (elementRef.current && echarts.getInstanceByDom(elementRef.current)) ||
+ echarts.init(elementRef.current, theme, opts)
+
+ const bindEvents = (instance: EChartsType, events: EChartsReactProps['onEvents']) => {
+ const _bindEvents = (
+ eventName: string,
+ func: (param: unknown, instance: EChartsType) => void
+ ) => {
+ if (typeof func === 'function') {
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access,@typescript-eslint/no-unsafe-call
+ instance.on(eventName, (param: unknown) => {
+ func(param, instance)
+ })
+ }
+ }
+
+ for (const eventName in events) {
+ if (Object.prototype.hasOwnProperty.call(events, eventName)) {
+ _bindEvents(eventName, events[eventName])
+ }
+ }
+ }
+
+ const resize = () => {
+ const eChartsInstance = getEChartsInstance()
+
+ if (!isInitialResize) {
+ try {
+ eChartsInstance.resize()
+ } catch (e) {
+ console.warn(e)
+ }
+ }
+
+ setIsInitialResize(false)
+ }
+
+ const dispose = () => {
+ if (elementRef.current) {
+ try {
+ clear(elementRef.current)
+ } catch (e) {
+ console.warn(e)
+ }
+ echarts.dispose(elementRef.current)
+ }
+ }
+
+ const pick = (obj: EChartsReactProps | undefined, keys: string[]): Record => {
+ const r = {}
+ keys.forEach((key) => {
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
+ // @ts-expect-error
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
+ r[key] = obj[key]
+ })
+ return r
+ }
+
+ useEffect(() => {
+ renderNewECharts()
+ })
+
+ useEffect(() => {
+ const { shouldSetOption } = props
+ if (
+ typeof shouldSetOption === 'function' &&
+ prevProps &&
+ !shouldSetOption(prevProps, props)
+ ) {
+ return
+ }
+
+ if (
+ !isEqual(prevProps?.theme, props.theme) ||
+ !isEqual(prevProps?.opts, props.opts) ||
+ !isEqual(prevProps?.onEvents, props.onEvents)
+ ) {
+ dispose()
+ renderNewECharts()
+ return
+ }
+
+ const pickKeys = ['option', 'notMerge', 'lazyUpdate', 'showLoading', 'loadingOption']
+ if (!isEqual(pick(props, pickKeys), pick(prevProps, pickKeys))) {
+ updateEChartsOption()
+ }
+
+ if (
+ !isEqual(prevProps?.style, props.style) ||
+ !isEqual(prevProps?.className, props.className)
+ ) {
+ resize()
+ }
+ }, [props])
+
+ return
+}
+
+export default EChartReact
diff --git a/src/constants/urls.constants.ts b/src/constants/urls.constants.ts
index 887bdc8..c668bea 100644
--- a/src/constants/urls.constants.ts
+++ b/src/constants/urls.constants.ts
@@ -14,6 +14,9 @@ export const URL_SYS_SETTINGS_MAIL = `${URL_SYS_SETTINGS}/mail`
export const URL_SYS_STATISTICS = '/system/statistics'
export const URL_SYS_STATISTICS_SOFTWARE = `${URL_SYS_STATISTICS}/software`
export const URL_SYS_STATISTICS_HARDWARE = `${URL_SYS_STATISTICS}/hardware`
+export const URL_SYS_STATISTICS_CPU = `${URL_SYS_STATISTICS}/cpu`
+export const URL_SYS_STATISTICS_MEMORY = `${URL_SYS_STATISTICS}/memory`
+export const URL_SYS_STATISTICS_JVM = `${URL_SYS_STATISTICS}/jvm`
export const URL_API_V1 = '/api/v1'
export const URL_API_V1_AVATAR_RANDOM_BASE64 = `${URL_API_V1}/avatar/base64`
diff --git a/src/global.d.ts b/src/global.d.ts
index 36a6253..0524f23 100644
--- a/src/global.d.ts
+++ b/src/global.d.ts
@@ -351,3 +351,24 @@ interface HardwareInfoVo {
memories: string
disks: string
}
+
+interface CpuInfoVo {
+ user: number
+ nice: number
+ system: number
+ idle: number
+ iowait: number
+ irq: number
+ softirq: number
+ steal: number
+ processors: CpuInfoVo[]
+}
+
+interface MemoryInfoVo {
+ total: number
+ free: number
+ virtualInUse: number
+ virtualMax: number
+ swapTotal: number
+ swapUsed: number
+}
diff --git a/src/pages/system/index.tsx b/src/pages/system/index.tsx
index 6e23f0d..65d601a 100644
--- a/src/pages/system/index.tsx
+++ b/src/pages/system/index.tsx
@@ -1,16 +1,33 @@
import React, { useState } from 'react'
import Icon from '@ant-design/icons'
-// import { DualAxes, DualAxesConfig } from '@ant-design/plots'
+import * as echarts from 'echarts/core'
+import {
+ TooltipComponent,
+ TooltipComponentOption,
+ GridComponent,
+ GridComponentOption
+} from 'echarts/components'
+import { BarChart, BarSeriesOption } from 'echarts/charts'
+import { CanvasRenderer } from 'echarts/renderers'
import '@/assets/css/pages/system/index.scss'
import { useUpdatedEffect } from '@/util/hooks'
import { utcToLocalTime } from '@/util/datetime'
-import { r_sys_statistics_hardware, r_sys_statistics_software } from '@/services/system'
+import {
+ r_sys_statistics_cpu,
+ r_sys_statistics_hardware,
+ r_sys_statistics_software
+} from '@/services/system'
import Card from '@/components/common/Card'
import FlexBox from '@/components/common/FlexBox'
import FitFullScreen from '@/components/common/FitFullScreen'
import HideScrollbar from '@/components/common/HideScrollbar'
import LoadingMask from '@/components/common/LoadingMask'
+import EChartReact from '@/components/common/echarts/EChartReact'
+echarts.use([TooltipComponent, GridComponent, BarChart, CanvasRenderer])
+type EChartsOption = echarts.ComposeOption<
+ TooltipComponentOption | GridComponentOption | BarSeriesOption
+>
interface CommonCardProps extends React.PropsWithChildren {
icon: IconComponent
title: string
@@ -19,7 +36,7 @@ interface CommonCardProps extends React.PropsWithChildren {
const CommonCard: React.FC = (props) => {
return (
-
+
@@ -27,7 +44,7 @@ const CommonCard: React.FC = (props) => {
}
+ maskContent={}
>
{props.children}
@@ -124,9 +141,9 @@ const HardwareInfo: React.FC = () => {
CPU 架构
微架构
64位
- CPU 插槽
- CPU 内核
- CPU 逻辑处理器
+ 物理 CPU
+ 物理核心
+ 逻辑核心
内存
磁盘
@@ -156,75 +173,121 @@ const HardwareInfo: React.FC = () => {
)
}
-const System: React.FC = () => {
- /*
- const dualAxesData = [
- { year: '1991', value: 3, count: 10 },
- { year: '1992', value: 4, count: 4 },
- { year: '1993', value: 3.5, count: 5 },
- { year: '1994', value: 5, count: 5 },
- { year: '1995', value: 4.9, count: 4.9 },
- { year: '1996', value: 6, count: 35 },
- { year: '1997', value: 7, count: 7 },
- { year: '1998', value: 9, count: 1 },
- { year: '1999', value: 13, count: 20 }
- ]
+const CPUInfo: React.FC = () => {
+ const [cpuInfoData, setCpuInfoData] = useState()
- const userStatisticsData = [
- { time: '2023-12-01', type: 'register', number: 23 },
- { time: '2023-12-02', type: 'register', number: 123 },
- { time: '2023-12-03', type: 'register', number: 1432 },
- { time: '2023-12-05', type: 'register', number: 1 },
- { time: '2023-12-04', type: 'register', number: 234 },
- { time: '2023-12-06', type: 'register', number: 23 },
- { time: '2023-12-07', type: 'register', number: 54 },
- { time: '2023-12-08', type: 'register', number: 87 },
- { time: '2023-12-09', type: 'register', number: 12 },
- { time: '2023-12-10', type: 'register', number: 123 },
- { time: '2023-12-11', type: 'register', number: 20 },
- { time: '2023-12-01', type: 'login', number: 433 },
- { time: '2023-12-02', type: 'login', number: 2 },
- { time: '2023-12-03', type: 'login', number: 34 },
- { time: '2023-12-05', type: 'login', number: 12 },
- { time: '2023-12-04', type: 'login', number: 345 },
- { time: '2023-12-06', type: 'login', number: 121 },
- { time: '2023-12-07', type: 'login', number: 2 },
- { time: '2023-12-08', type: 'login', number: 435 },
- { time: '2023-12-09', type: 'login', number: 1 },
- { time: '2023-12-10', type: 'login', number: 54 },
- { time: '2023-12-11', type: 'login', number: 56 }
- ]
-
- const dualAxesConfig: DualAxesConfig = {
- data: userStatisticsData,
- slider: { x: true },
- shapeField: 'smooth',
- xField: 'time',
- children: [
- {
- type: 'line',
- yField: 'number',
- colorField: 'type'
- }
- ]
+ const defaultSeriesOption: BarSeriesOption = {
+ type: 'bar',
+ stack: 'total',
+ emphasis: {
+ focus: 'series'
+ }
}
-*/
+ useUpdatedEffect(() => {
+ setInterval(
+ () =>
+ r_sys_statistics_cpu().then((res) => {
+ const response = res.data
+ if (response.success) {
+ const data = response.data
+ if (data) {
+ const cpuInfoData = Object.entries(data)
+ .filter(([key]) => key !== 'processors')
+ .map(([key, value]) => ({
+ ...defaultSeriesOption,
+ name: key,
+ data: [value as number]
+ }))
+ console.log(cpuInfoData)
+ setCpuInfoData(cpuInfoData)
+ }
+ }
+ }),
+ 5000
+ )
+ }, [])
+
+ const option: EChartsOption = {
+ tooltip: {},
+ xAxis: {
+ show: false
+ },
+ yAxis: {
+ data: ['总使用'],
+ axisLine: {
+ show: false
+ },
+ axisLabel: {
+ show: false
+ },
+ axisTick: {
+ show: false
+ },
+ splitLine: {
+ show: false
+ },
+ axisPointer: {
+ show: false
+ }
+ },
+ series: cpuInfoData
+ }
+
+ return (
+ <>
+
+
+
+ 总占用
+ 总占用
+ 总占用
+
+
+
+
+
+
+
+
+
+
+ >
+ )
+}
+
+const MemoryInfo: React.FC = () => {
+ return (
+ <>
+
+ >
+ )
+}
+
+const JvmInfo: React.FC = () => {
+ return (
+ <>
+
+ >
+ )
+}
+
+const System: React.FC = () => {
return (
<>
-
-
-
-
-
-
-
- {/**/}
-
-
-
+
+
+
+
+
+
+
diff --git a/src/services/system.tsx b/src/services/system.tsx
index 23d3f0f..37da0ec 100644
--- a/src/services/system.tsx
+++ b/src/services/system.tsx
@@ -10,7 +10,10 @@ import {
URL_SYS_LOG,
URL_SYS_SETTINGS_MAIL,
URL_SYS_STATISTICS_SOFTWARE,
- URL_SYS_STATISTICS_HARDWARE
+ URL_SYS_STATISTICS_HARDWARE,
+ URL_SYS_STATISTICS_CPU,
+ URL_SYS_STATISTICS_MEMORY,
+ URL_SYS_STATISTICS_JVM
} from '@/constants/urls.constants'
import request from '@/services/index'
@@ -80,3 +83,9 @@ export const r_sys_statistics_software = () =>
export const r_sys_statistics_hardware = () =>
request.get(URL_SYS_STATISTICS_HARDWARE)
+
+export const r_sys_statistics_cpu = () => request.get(URL_SYS_STATISTICS_CPU)
+
+export const r_sys_statistics_memory = () => request.get(URL_SYS_STATISTICS_MEMORY)
+
+export const r_sys_statistics_jvm = () => request.get(URL_SYS_STATISTICS_JVM)
diff --git a/src/util/hooks.tsx b/src/util/hooks.tsx
index da151a4..4667408 100644
--- a/src/util/hooks.tsx
+++ b/src/util/hooks.tsx
@@ -14,3 +14,11 @@ export const useUpdatedEffect = (
}
}, dependencies)
}
+
+export const usePrevious = (value: T): T | undefined => {
+ const ref = useRef()
+ useEffect(() => {
+ ref.current = value
+ })
+ return ref.current
+}