diff --git a/package-lock.json b/package-lock.json
index 77f590f9..f8f01766 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -27,17 +27,17 @@
"@types/react": "^18.0.31",
"aegir": "^42.2.2",
"babel-loader": "^9.1.3",
- "compression-webpack-plugin": "^10.0.0",
"copy-webpack-plugin": "^11.0.0",
"css-loader": "^6.10.0",
"eslint-config-standard-with-typescript": "^34.0.1",
"html-webpack-plugin": "^5.5.0",
- "node-polyfill-webpack-plugin": "^2.0.1",
"npm-run-all": "^4.1.5",
"patch-package": "^6.5.1",
"rimraf": "^4.4.1",
"style-loader": "^3.3.4",
+ "terser-webpack-plugin": "^5.3.10",
"webpack": "^5.77.0",
+ "webpack-bundle-analyzer": "^4.10.1",
"webpack-cli": "^5.1.4",
"webpack-dev-server": "^4.15.1",
"webpack-merge": "^5.8.0"
@@ -2876,30 +2876,33 @@
}
},
"node_modules/@jridgewell/set-array": {
- "version": "1.1.2",
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+ "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
"dev": true,
- "license": "MIT",
"engines": {
"node": ">=6.0.0"
}
},
"node_modules/@jridgewell/source-map": {
- "version": "0.3.2",
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz",
+ "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==",
"dev": true,
- "license": "MIT",
"dependencies": {
"@jridgewell/gen-mapping": "^0.3.0",
"@jridgewell/trace-mapping": "^0.3.9"
}
},
"node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": {
- "version": "0.3.2",
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+ "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
"dev": true,
- "license": "MIT",
"dependencies": {
- "@jridgewell/set-array": "^1.0.1",
+ "@jridgewell/set-array": "^1.2.1",
"@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.9"
+ "@jridgewell/trace-mapping": "^0.3.24"
},
"engines": {
"node": ">=6.0.0"
@@ -2911,12 +2914,13 @@
"license": "MIT"
},
"node_modules/@jridgewell/trace-mapping": {
- "version": "0.3.17",
+ "version": "0.3.25",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+ "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
"dev": true,
- "license": "MIT",
"dependencies": {
- "@jridgewell/resolve-uri": "3.1.0",
- "@jridgewell/sourcemap-codec": "1.4.14"
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
}
},
"node_modules/@leichtgewicht/ip-codec": {
@@ -5335,17 +5339,6 @@
"dev": true,
"license": "BSD-2-Clause"
},
- "node_modules/abort-controller": {
- "version": "3.0.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "event-target-shim": "^5.0.0"
- },
- "engines": {
- "node": ">=6.5"
- }
- },
"node_modules/accepts": {
"version": "1.3.8",
"resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
@@ -6226,22 +6219,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/asn1.js": {
- "version": "5.4.1",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bn.js": "^4.0.0",
- "inherits": "^2.0.1",
- "minimalistic-assert": "^1.0.0",
- "safer-buffer": "^2.1.0"
- }
- },
- "node_modules/asn1.js/node_modules/bn.js": {
- "version": "4.12.0",
- "dev": true,
- "license": "MIT"
- },
"node_modules/asn1js": {
"version": "3.0.5",
"resolved": "https://registry.npmjs.org/asn1js/-/asn1js-3.0.5.tgz",
@@ -6565,11 +6542,6 @@
"node": ">=10.0.0"
}
},
- "node_modules/bn.js": {
- "version": "5.2.1",
- "dev": true,
- "license": "MIT"
- },
"node_modules/body-parser": {
"version": "1.20.1",
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz",
@@ -6667,11 +6639,6 @@
"node": ">=8"
}
},
- "node_modules/brorand": {
- "version": "1.1.0",
- "dev": true,
- "license": "MIT"
- },
"node_modules/browser-readablestream-to-it": {
"version": "2.0.5",
"license": "Apache-2.0 OR MIT"
@@ -6681,86 +6648,6 @@
"dev": true,
"license": "ISC"
},
- "node_modules/browserify-aes": {
- "version": "1.2.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "buffer-xor": "^1.0.3",
- "cipher-base": "^1.0.0",
- "create-hash": "^1.1.0",
- "evp_bytestokey": "^1.0.3",
- "inherits": "^2.0.1",
- "safe-buffer": "^5.0.1"
- }
- },
- "node_modules/browserify-cipher": {
- "version": "1.0.1",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "browserify-aes": "^1.0.4",
- "browserify-des": "^1.0.0",
- "evp_bytestokey": "^1.0.0"
- }
- },
- "node_modules/browserify-des": {
- "version": "1.0.2",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cipher-base": "^1.0.1",
- "des.js": "^1.0.0",
- "inherits": "^2.0.1",
- "safe-buffer": "^5.1.2"
- }
- },
- "node_modules/browserify-rsa": {
- "version": "4.1.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bn.js": "^5.0.0",
- "randombytes": "^2.0.1"
- }
- },
- "node_modules/browserify-sign": {
- "version": "4.2.1",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "bn.js": "^5.1.1",
- "browserify-rsa": "^4.0.1",
- "create-hash": "^1.2.0",
- "create-hmac": "^1.1.7",
- "elliptic": "^6.5.3",
- "inherits": "^2.0.4",
- "parse-asn1": "^5.1.5",
- "readable-stream": "^3.6.0",
- "safe-buffer": "^5.2.0"
- }
- },
- "node_modules/browserify-sign/node_modules/readable-stream": {
- "version": "3.6.2",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/browserify-zlib": {
- "version": "0.2.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "pako": "~1.0.5"
- }
- },
"node_modules/browserslist": {
"version": "4.21.5",
"dev": true,
@@ -6823,11 +6710,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/buffer-xor": {
- "version": "1.0.3",
- "dev": true,
- "license": "MIT"
- },
"node_modules/builtin-modules": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz",
@@ -6840,11 +6722,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/builtin-status-codes": {
- "version": "3.0.0",
- "dev": true,
- "license": "MIT"
- },
"node_modules/builtins": {
"version": "5.0.1",
"dev": true,
@@ -7287,15 +7164,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/cipher-base": {
- "version": "1.0.4",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.1",
- "safe-buffer": "^5.0.1"
- }
- },
"node_modules/clean-css": {
"version": "5.3.2",
"dev": true,
@@ -7612,25 +7480,6 @@
"node": ">= 0.8.0"
}
},
- "node_modules/compression-webpack-plugin": {
- "version": "10.0.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "schema-utils": "^4.0.0",
- "serialize-javascript": "^6.0.0"
- },
- "engines": {
- "node": ">= 14.15.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- },
- "peerDependencies": {
- "webpack": "^5.1.0"
- }
- },
"node_modules/compression/node_modules/bytes": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
@@ -7685,15 +7534,6 @@
"node": ">=0.8"
}
},
- "node_modules/console-browserify": {
- "version": "1.2.0",
- "dev": true
- },
- "node_modules/constants-browserify": {
- "version": "1.0.0",
- "dev": true,
- "license": "MIT"
- },
"node_modules/content-disposition": {
"version": "0.5.4",
"resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
@@ -8063,45 +7903,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/create-ecdh": {
- "version": "4.0.4",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bn.js": "^4.1.0",
- "elliptic": "^6.5.3"
- }
- },
- "node_modules/create-ecdh/node_modules/bn.js": {
- "version": "4.12.0",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/create-hash": {
- "version": "1.2.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cipher-base": "^1.0.1",
- "inherits": "^2.0.1",
- "md5.js": "^1.3.4",
- "ripemd160": "^2.0.1",
- "sha.js": "^2.4.0"
- }
- },
- "node_modules/create-hmac": {
- "version": "1.1.7",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cipher-base": "^1.0.3",
- "create-hash": "^1.1.0",
- "inherits": "^2.0.1",
- "ripemd160": "^2.0.0",
- "safe-buffer": "^5.0.1",
- "sha.js": "^2.4.8"
- }
- },
"node_modules/create-require": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz",
@@ -8121,27 +7922,6 @@
"node": ">= 8"
}
},
- "node_modules/crypto-browserify": {
- "version": "3.12.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "browserify-cipher": "^1.0.0",
- "browserify-sign": "^4.0.0",
- "create-ecdh": "^4.0.0",
- "create-hash": "^1.1.0",
- "create-hmac": "^1.1.0",
- "diffie-hellman": "^5.0.0",
- "inherits": "^2.0.1",
- "pbkdf2": "^3.0.3",
- "public-encrypt": "^4.0.0",
- "randombytes": "^2.0.0",
- "randomfill": "^1.0.3"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/crypto-random-string": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz",
@@ -8318,6 +8098,12 @@
"dev": true,
"license": "MIT"
},
+ "node_modules/debounce": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz",
+ "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==",
+ "dev": true
+ },
"node_modules/debug": {
"version": "4.3.4",
"license": "MIT",
@@ -8834,15 +8620,6 @@
"node": ">=6"
}
},
- "node_modules/des.js": {
- "version": "1.0.1",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.1",
- "minimalistic-assert": "^1.0.0"
- }
- },
"node_modules/destroy": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
@@ -8892,21 +8669,6 @@
"node": ">=0.3.1"
}
},
- "node_modules/diffie-hellman": {
- "version": "5.0.3",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bn.js": "^4.1.0",
- "miller-rabin": "^4.0.0",
- "randombytes": "^2.0.0"
- }
- },
- "node_modules/diffie-hellman/node_modules/bn.js": {
- "version": "4.12.0",
- "dev": true,
- "license": "MIT"
- },
"node_modules/dir-glob": {
"version": "3.0.1",
"dev": true,
@@ -8970,17 +8732,6 @@
"url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
}
},
- "node_modules/domain-browser": {
- "version": "4.22.0",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://bevry.me/fund"
- }
- },
"node_modules/domelementtype": {
"version": "2.3.0",
"dev": true,
@@ -9469,25 +9220,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/elliptic": {
- "version": "6.5.4",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bn.js": "^4.11.9",
- "brorand": "^1.1.0",
- "hash.js": "^1.0.0",
- "hmac-drbg": "^1.0.1",
- "inherits": "^2.0.4",
- "minimalistic-assert": "^1.0.1",
- "minimalistic-crypto-utils": "^1.0.1"
- }
- },
- "node_modules/elliptic/node_modules/bn.js": {
- "version": "4.12.0",
- "dev": true,
- "license": "MIT"
- },
"node_modules/email-addresses": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/email-addresses/-/email-addresses-5.0.0.tgz",
@@ -10830,14 +10562,6 @@
"node": ">= 0.6"
}
},
- "node_modules/event-target-shim": {
- "version": "5.0.1",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/eventemitter3": {
"version": "4.0.7",
"dev": true,
@@ -10850,15 +10574,6 @@
"node": ">=0.8.x"
}
},
- "node_modules/evp_bytestokey": {
- "version": "1.0.3",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "md5.js": "^1.3.4",
- "safe-buffer": "^5.1.1"
- }
- },
"node_modules/execa": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz",
@@ -11187,14 +10902,6 @@
"node": ">=8"
}
},
- "node_modules/filter-obj": {
- "version": "2.0.2",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/finalhandler": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz",
@@ -11886,6 +11593,21 @@
"node": ">=4.x"
}
},
+ "node_modules/gzip-size": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz",
+ "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==",
+ "dev": true,
+ "dependencies": {
+ "duplexer": "^0.1.2"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/hamt-sharding": {
"version": "3.0.6",
"resolved": "https://registry.npmjs.org/hamt-sharding/-/hamt-sharding-3.0.6.tgz",
@@ -12025,41 +11747,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/hash-base": {
- "version": "3.1.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.4",
- "readable-stream": "^3.6.0",
- "safe-buffer": "^5.2.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/hash-base/node_modules/readable-stream": {
- "version": "3.6.2",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/hash.js": {
- "version": "1.1.7",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "minimalistic-assert": "^1.0.1"
- }
- },
"node_modules/hasha": {
"version": "5.2.2",
"dev": true,
@@ -12119,16 +11806,6 @@
"he": "bin/he"
}
},
- "node_modules/hmac-drbg": {
- "version": "1.0.1",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hash.js": "^1.0.3",
- "minimalistic-assert": "^1.0.0",
- "minimalistic-crypto-utils": "^1.0.1"
- }
- },
"node_modules/hook-std": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/hook-std/-/hook-std-3.0.0.tgz",
@@ -12379,11 +12056,6 @@
"node": ">=10.19.0"
}
},
- "node_modules/https-browserify": {
- "version": "1.0.0",
- "dev": true,
- "license": "MIT"
- },
"node_modules/https-proxy-agent": {
"version": "7.0.2",
"resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz",
@@ -13090,6 +12762,15 @@
"node": ">=8"
}
},
+ "node_modules/is-plain-object": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
+ "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/is-promise": {
"version": "2.2.2",
"dev": true,
@@ -14562,16 +14243,6 @@
"node": ">=6"
}
},
- "node_modules/md5.js": {
- "version": "1.3.5",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hash-base": "^3.0.0",
- "inherits": "^2.0.1",
- "safe-buffer": "^5.1.2"
- }
- },
"node_modules/mdast-util-find-and-replace": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.1.tgz",
@@ -15496,23 +15167,6 @@
"node": ">=8.6"
}
},
- "node_modules/miller-rabin": {
- "version": "4.0.1",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bn.js": "^4.0.0",
- "brorand": "^1.0.1"
- },
- "bin": {
- "miller-rabin": "bin/miller-rabin"
- }
- },
- "node_modules/miller-rabin/node_modules/bn.js": {
- "version": "4.12.0",
- "dev": true,
- "license": "MIT"
- },
"node_modules/mime": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/mime/-/mime-4.0.1.tgz",
@@ -15580,11 +15234,6 @@
"dev": true,
"license": "ISC"
},
- "node_modules/minimalistic-crypto-utils": {
- "version": "1.0.1",
- "dev": true,
- "license": "MIT"
- },
"node_modules/minimatch": {
"version": "9.0.3",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz",
@@ -16154,69 +15803,6 @@
"node": ">= 6.13.0"
}
},
- "node_modules/node-polyfill-webpack-plugin": {
- "version": "2.0.1",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "assert": "^2.0.0",
- "browserify-zlib": "^0.2.0",
- "buffer": "^6.0.3",
- "console-browserify": "^1.2.0",
- "constants-browserify": "^1.0.0",
- "crypto-browserify": "^3.12.0",
- "domain-browser": "^4.22.0",
- "events": "^3.3.0",
- "filter-obj": "^2.0.2",
- "https-browserify": "^1.0.0",
- "os-browserify": "^0.3.0",
- "path-browserify": "^1.0.1",
- "process": "^0.11.10",
- "punycode": "^2.1.1",
- "querystring-es3": "^0.2.1",
- "readable-stream": "^4.0.0",
- "stream-browserify": "^3.0.0",
- "stream-http": "^3.2.0",
- "string_decoder": "^1.3.0",
- "timers-browserify": "^2.0.12",
- "tty-browserify": "^0.0.1",
- "type-fest": "^2.14.0",
- "url": "^0.11.0",
- "util": "^0.12.4",
- "vm-browserify": "^1.1.2"
- },
- "engines": {
- "node": ">=12"
- },
- "peerDependencies": {
- "webpack": ">=5"
- }
- },
- "node_modules/node-polyfill-webpack-plugin/node_modules/readable-stream": {
- "version": "4.3.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "abort-controller": "^3.0.0",
- "buffer": "^6.0.3",
- "events": "^3.3.0",
- "process": "^0.11.10"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- }
- },
- "node_modules/node-polyfill-webpack-plugin/node_modules/type-fest": {
- "version": "2.19.0",
- "dev": true,
- "license": "(MIT OR CC0-1.0)",
- "engines": {
- "node": ">=12.20"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/node-preload": {
"version": "0.2.1",
"dev": true,
@@ -19952,6 +19538,15 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/opener": {
+ "version": "1.5.2",
+ "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz",
+ "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==",
+ "dev": true,
+ "bin": {
+ "opener": "bin/opener-bin.js"
+ }
+ },
"node_modules/optionator": {
"version": "0.9.1",
"dev": true,
@@ -20124,11 +19719,6 @@
"url": "https://github.com/chalk/strip-ansi?sponsor=1"
}
},
- "node_modules/os-browserify": {
- "version": "0.3.0",
- "dev": true,
- "license": "MIT"
- },
"node_modules/os-tmpdir": {
"version": "1.0.2",
"dev": true,
@@ -20336,11 +19926,6 @@
"node": ">=8"
}
},
- "node_modules/pako": {
- "version": "1.0.11",
- "dev": true,
- "license": "(MIT AND Zlib)"
- },
"node_modules/param-case": {
"version": "3.0.4",
"dev": true,
@@ -20361,18 +19946,6 @@
"node": ">=6"
}
},
- "node_modules/parse-asn1": {
- "version": "5.1.6",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "asn1.js": "^5.2.0",
- "browserify-aes": "^1.0.0",
- "evp_bytestokey": "^1.0.0",
- "pbkdf2": "^3.0.3",
- "safe-buffer": "^5.1.1"
- }
- },
"node_modules/parse-json": {
"version": "5.2.0",
"dev": true,
@@ -20724,21 +20297,6 @@
"node": "*"
}
},
- "node_modules/pbkdf2": {
- "version": "3.1.2",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "create-hash": "^1.1.2",
- "create-hmac": "^1.1.4",
- "ripemd160": "^2.0.1",
- "safe-buffer": "^5.0.1",
- "sha.js": "^2.4.8"
- },
- "engines": {
- "node": ">=0.12"
- }
- },
"node_modules/peek-readable": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-5.0.0.tgz",
@@ -21529,24 +21087,6 @@
"node": ">= 0.10"
}
},
- "node_modules/public-encrypt": {
- "version": "4.0.3",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bn.js": "^4.1.0",
- "browserify-rsa": "^4.0.0",
- "create-hash": "^1.1.0",
- "parse-asn1": "^5.0.0",
- "randombytes": "^2.0.1",
- "safe-buffer": "^5.1.2"
- }
- },
- "node_modules/public-encrypt/node_modules/bn.js": {
- "version": "4.12.0",
- "dev": true,
- "license": "MIT"
- },
"node_modules/pump": {
"version": "3.0.0",
"dev": true,
@@ -21604,20 +21144,6 @@
"lodash": "^4.17.21"
}
},
- "node_modules/querystring": {
- "version": "0.2.0",
- "dev": true,
- "engines": {
- "node": ">=0.4.x"
- }
- },
- "node_modules/querystring-es3": {
- "version": "0.2.1",
- "dev": true,
- "engines": {
- "node": ">=0.4.x"
- }
- },
"node_modules/queue-microtask": {
"version": "1.2.3",
"dev": true,
@@ -21695,15 +21221,6 @@
"safe-buffer": "^5.1.0"
}
},
- "node_modules/randomfill": {
- "version": "1.0.4",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "randombytes": "^2.0.5",
- "safe-buffer": "^5.1.0"
- }
- },
"node_modules/range-parser": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
@@ -22790,15 +22307,6 @@
"url": "https://github.com/sponsors/isaacs"
}
},
- "node_modules/ripemd160": {
- "version": "2.0.2",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hash-base": "^3.0.0",
- "inherits": "^2.0.1"
- }
- },
"node_modules/roarr": {
"version": "2.15.4",
"resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz",
@@ -23722,29 +23230,12 @@
"node": ">= 0.4"
}
},
- "node_modules/setimmediate": {
- "version": "1.0.5",
- "dev": true,
- "license": "MIT"
- },
"node_modules/setprototypeof": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
"integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
"dev": true
},
- "node_modules/sha.js": {
- "version": "2.4.11",
- "dev": true,
- "license": "(MIT AND BSD-3-Clause)",
- "dependencies": {
- "inherits": "^2.0.1",
- "safe-buffer": "^5.0.1"
- },
- "bin": {
- "sha.js": "bin.js"
- }
- },
"node_modules/shallow-clone": {
"version": "3.0.1",
"dev": true,
@@ -24138,30 +23629,6 @@
"readable-stream": "^2.0.2"
}
},
- "node_modules/stream-http": {
- "version": "3.2.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "builtin-status-codes": "^3.0.0",
- "inherits": "^2.0.4",
- "readable-stream": "^3.6.0",
- "xtend": "^4.0.2"
- }
- },
- "node_modules/stream-http/node_modules/readable-stream": {
- "version": "3.6.2",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
"node_modules/string_decoder": {
"version": "1.3.0",
"license": "MIT",
@@ -24532,12 +23999,13 @@
}
},
"node_modules/terser": {
- "version": "5.16.6",
+ "version": "5.29.1",
+ "resolved": "https://registry.npmjs.org/terser/-/terser-5.29.1.tgz",
+ "integrity": "sha512-lZQ/fyaIGxsbGxApKmoPTODIzELy3++mXhS5hOqaAWZjQtpq/hFHAc+rm29NND1rYRxRWKcjuARNwULNXa5RtQ==",
"dev": true,
- "license": "BSD-2-Clause",
"dependencies": {
- "@jridgewell/source-map": "^0.3.2",
- "acorn": "^8.5.0",
+ "@jridgewell/source-map": "^0.3.3",
+ "acorn": "^8.8.2",
"commander": "^2.20.0",
"source-map-support": "~0.5.20"
},
@@ -24549,15 +24017,16 @@
}
},
"node_modules/terser-webpack-plugin": {
- "version": "5.3.7",
+ "version": "5.3.10",
+ "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz",
+ "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==",
"dev": true,
- "license": "MIT",
"dependencies": {
- "@jridgewell/trace-mapping": "^0.3.17",
+ "@jridgewell/trace-mapping": "^0.3.20",
"jest-worker": "^27.4.5",
"schema-utils": "^3.1.1",
"serialize-javascript": "^6.0.1",
- "terser": "^5.16.5"
+ "terser": "^5.26.0"
},
"engines": {
"node": ">= 10.13.0"
@@ -24667,17 +24136,6 @@
"retimer": "^3.0.0"
}
},
- "node_modules/timers-browserify": {
- "version": "2.0.12",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "setimmediate": "^1.0.4"
- },
- "engines": {
- "node": ">=0.6.0"
- }
- },
"node_modules/timestamp-nano": {
"version": "1.0.1",
"license": "MIT",
@@ -24945,11 +24403,6 @@
"dev": true,
"license": "0BSD"
},
- "node_modules/tty-browserify": {
- "version": "0.0.1",
- "dev": true,
- "license": "MIT"
- },
"node_modules/type-check": {
"version": "0.4.0",
"dev": true,
@@ -25679,15 +25132,6 @@
"punycode": "^2.1.0"
}
},
- "node_modules/url": {
- "version": "0.11.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "punycode": "1.3.2",
- "querystring": "0.2.0"
- }
- },
"node_modules/url-join": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/url-join/-/url-join-5.0.0.tgz",
@@ -25697,11 +25141,6 @@
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
}
},
- "node_modules/url/node_modules/punycode": {
- "version": "1.3.2",
- "dev": true,
- "license": "MIT"
- },
"node_modules/util": {
"version": "0.12.5",
"dev": true,
@@ -25814,11 +25253,6 @@
"node": ">= 0.8"
}
},
- "node_modules/vm-browserify": {
- "version": "1.1.2",
- "dev": true,
- "license": "MIT"
- },
"node_modules/vscode-oniguruma": {
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz",
@@ -25911,6 +25345,75 @@
}
}
},
+ "node_modules/webpack-bundle-analyzer": {
+ "version": "4.10.1",
+ "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.1.tgz",
+ "integrity": "sha512-s3P7pgexgT/HTUSYgxJyn28A+99mmLq4HsJepMPzu0R8ImJc52QNqaFYW1Z2z2uIb1/J3eYgaAWVpaC+v/1aAQ==",
+ "dev": true,
+ "dependencies": {
+ "@discoveryjs/json-ext": "0.5.7",
+ "acorn": "^8.0.4",
+ "acorn-walk": "^8.0.0",
+ "commander": "^7.2.0",
+ "debounce": "^1.2.1",
+ "escape-string-regexp": "^4.0.0",
+ "gzip-size": "^6.0.0",
+ "html-escaper": "^2.0.2",
+ "is-plain-object": "^5.0.0",
+ "opener": "^1.5.2",
+ "picocolors": "^1.0.0",
+ "sirv": "^2.0.3",
+ "ws": "^7.3.1"
+ },
+ "bin": {
+ "webpack-bundle-analyzer": "lib/bin/analyzer.js"
+ },
+ "engines": {
+ "node": ">= 10.13.0"
+ }
+ },
+ "node_modules/webpack-bundle-analyzer/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==",
+ "dev": true,
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/webpack-bundle-analyzer/node_modules/escape-string-regexp": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
+ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/webpack-bundle-analyzer/node_modules/ws": {
+ "version": "7.5.9",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz",
+ "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=8.3.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": "^5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
"node_modules/webpack-cli": {
"version": "5.1.4",
"resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz",
diff --git a/package.json b/package.json
index 70f830b5..2e8a3bc9 100644
--- a/package.json
+++ b/package.json
@@ -7,6 +7,7 @@
"keywords": [],
"license": "MIT",
"scripts": {
+ "analyze-bundle": "webpack --env analyze",
"clean": "aegir clean",
"dep-check": "aegir dep-check",
"lint": "aegir lint",
@@ -49,19 +50,20 @@
"@types/react": "^18.0.31",
"aegir": "^42.2.2",
"babel-loader": "^9.1.3",
- "compression-webpack-plugin": "^10.0.0",
"copy-webpack-plugin": "^11.0.0",
"css-loader": "^6.10.0",
"eslint-config-standard-with-typescript": "^34.0.1",
"html-webpack-plugin": "^5.5.0",
- "node-polyfill-webpack-plugin": "^2.0.1",
"npm-run-all": "^4.1.5",
"patch-package": "^6.5.1",
"rimraf": "^4.4.1",
"style-loader": "^3.3.4",
+ "terser-webpack-plugin": "^5.3.10",
"webpack": "^5.77.0",
+ "webpack-bundle-analyzer": "^4.10.1",
"webpack-cli": "^5.1.4",
"webpack-dev-server": "^4.15.1",
"webpack-merge": "^5.8.0"
- }
+ },
+ "sideEffects": false
}
diff --git a/public/_redirects b/public/_redirects
index e31815fc..3b2133ec 100644
--- a/public/_redirects
+++ b/public/_redirects
@@ -1,2 +1 @@
-/config /#/config 302
/* /?helia-sw=/:splat 302
diff --git a/src/app.tsx b/src/app.tsx
index f35c2259..a1c1775c 100644
--- a/src/app.tsx
+++ b/src/app.tsx
@@ -8,13 +8,19 @@ import RedirectPage from './redirectPage.tsx'
function App (): JSX.Element {
const { isConfigExpanded, setConfigExpanded } = useContext(ConfigContext)
+ const isRequestToViewConfigPage = isConfigPage(window.location.hash)
+ const isSubdomainRender = isPathOrSubdomainRequest(window.location)
+
+ if (isRequestToViewConfigPage) {
+ if (isSubdomainRender) {
+ return
{text}- } else { - const iframeSrc = path[0] === '/' ? `${path}` : `/${path}` - // parsing succeeded - content = - } - } else { - content = Not a supported content-type of
{contentType}- } - - return ( -