remove preload, add builder options, fix webtest
This commit is contained in:
parent
eb45a6ec16
commit
dd4b45103b
8 changed files with 247 additions and 245 deletions
400
package-lock.json
generated
400
package-lock.json
generated
|
@ -2021,9 +2021,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@cypress/request": {
|
"node_modules/@cypress/request": {
|
||||||
"version": "2.88.11",
|
"version": "2.88.12",
|
||||||
"resolved": "https://registry.npmjs.org/@cypress/request/-/request-2.88.11.tgz",
|
"resolved": "https://registry.npmjs.org/@cypress/request/-/request-2.88.12.tgz",
|
||||||
"integrity": "sha512-M83/wfQ1EkspjkE2lNWNV5ui2Cv7UCv1swW1DqljahbzLVWltcsexQh8jYtuS/vzFXP+HySntGM83ZXA9fn17w==",
|
"integrity": "sha512-tOn+0mDZxASFM+cuAP9szGUGPI1HwWVSvdzm7V4cCsPdFTx6qMj29CwaQmRAMIEhORIUBFBsYROYJcveK4uOjA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"aws-sign2": "~0.7.0",
|
"aws-sign2": "~0.7.0",
|
||||||
|
@ -2041,7 +2041,7 @@
|
||||||
"performance-now": "^2.1.0",
|
"performance-now": "^2.1.0",
|
||||||
"qs": "~6.10.3",
|
"qs": "~6.10.3",
|
||||||
"safe-buffer": "^5.1.2",
|
"safe-buffer": "^5.1.2",
|
||||||
"tough-cookie": "~2.5.0",
|
"tough-cookie": "^4.1.3",
|
||||||
"tunnel-agent": "^0.6.0",
|
"tunnel-agent": "^0.6.0",
|
||||||
"uuid": "^8.3.2"
|
"uuid": "^8.3.2"
|
||||||
},
|
},
|
||||||
|
@ -2069,9 +2069,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/android-arm": {
|
"node_modules/@esbuild/android-arm": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.19.tgz",
|
||||||
"integrity": "sha512-wHsmJG/dnL3OkpAcwbgoBTTMHVi4Uyou3F5mf58ZtmUyIKfcdA7TROav/6tCzET4A3QW2Q2FC+eFneMU+iyOxg==",
|
"integrity": "sha512-1uOoDurJYh5MNqPqpj3l/TQCI1V25BXgChEldCB7D6iryBYqYKrbZIhYO5AI9fulf66sM8UJpc3UcCly2Tv28w==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm"
|
"arm"
|
||||||
],
|
],
|
||||||
|
@ -2085,9 +2085,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/android-arm64": {
|
"node_modules/@esbuild/android-arm64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.19.tgz",
|
||||||
"integrity": "sha512-9np+YYdNDed5+Jgr1TdWBsozZ85U1Oa3xW0c7TWqH0y2aGghXtZsuT8nYRbzOMcl0bXZXjOGbksoTtVOlWrRZg==",
|
"integrity": "sha512-4+jkUFQxZkQfQOOxfGVZB38YUWHMJX2ihZwF+2nh8m7bHdWXpixiurgGRN3c/KMSwlltbYI0/i929jwBRMFzbA==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
|
@ -2101,9 +2101,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/android-x64": {
|
"node_modules/@esbuild/android-x64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.19.tgz",
|
||||||
"integrity": "sha512-O+FeWB/+xya0aLg23hHEM2E3hbfwZzjqumKMSIqcHbNvDa+dza2D0yLuymRBQQnC34CWrsJUXyH2MG5VnLd6uw==",
|
"integrity": "sha512-ae5sHYiP/Ogj2YNrLZbWkBmyHIDOhPgpkGvFnke7XFGQldBDWvc/AyYwSLpNuKw9UNkgnLlB/jPpnBmlF3G9Bg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
|
@ -2117,9 +2117,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/darwin-arm64": {
|
"node_modules/@esbuild/darwin-arm64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.19.tgz",
|
||||||
"integrity": "sha512-M9uJ9VSB1oli2BE/dJs3zVr9kcCBBsE883prage1NWz6pBS++1oNn/7soPNS3+1DGj0FrkSvnED4Bmlu1VAE9g==",
|
"integrity": "sha512-HIpQvNQWFYROmWDANMRL+jZvvTQGOiTuwWBIuAsMaQrnStedM+nEKJBzKQ6bfT9RFKH2wZ+ej+DY7+9xHBTFPg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
|
@ -2133,9 +2133,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/darwin-x64": {
|
"node_modules/@esbuild/darwin-x64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.19.tgz",
|
||||||
"integrity": "sha512-XDre+J5YeIJDMfp3n0279DFNrGCXlxOuGsWIkRb1NThMZ0BsrWXoTg23Jer7fEXQ9Ye5QjrvXpxnhzl3bHtk0g==",
|
"integrity": "sha512-m6JdvXJQt0thNLIcWOeG079h2ivhYH4B5sVCgqb/B29zTcFd7EE8/J1nIUHhdtwGeItdUeqKaqqb4towwxvglQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
|
@ -2149,9 +2149,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/freebsd-arm64": {
|
"node_modules/@esbuild/freebsd-arm64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.19.tgz",
|
||||||
"integrity": "sha512-cjTzGa3QlNfERa0+ptykyxs5A6FEUQQF0MuilYXYBGdBxD3vxJcKnzDlhDCa1VAJCmAxed6mYhA2KaJIbtiNuQ==",
|
"integrity": "sha512-G0p4EFMPZhGn/xVNspUyMQbORH3nlKTV0bFNHPIwLraBuAkTeMyxNviTe0ZXUbIXQrR1lrwniFjNFU4s+x7veQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
|
@ -2165,9 +2165,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/freebsd-x64": {
|
"node_modules/@esbuild/freebsd-x64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.19.tgz",
|
||||||
"integrity": "sha512-sOxEvR8d7V7Kw8QqzxWc7bFfnWnGdaFBut1dRUYtu+EIRXefBc/eIsiUiShnW0hM3FmQ5Zf27suDuHsKgZ5QrA==",
|
"integrity": "sha512-hBxgRlG42+W+j/1/cvlnSa+3+OBKeDCyO7OG2ICya1YJaSCYfSpuG30KfOnQHI7Ytgu4bRqCgrYXxQEzy0zM5Q==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
|
@ -2181,9 +2181,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/linux-arm": {
|
"node_modules/@esbuild/linux-arm": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.19.tgz",
|
||||||
"integrity": "sha512-2d3Lw6wkwgSLC2fIvXKoMNGVaeY8qdN0IC3rfuVxJp89CRfA3e3VqWifGDfuakPmp90+ZirmTfye1n4ncjv2lg==",
|
"integrity": "sha512-qtWyoQskfJlb9MD45mvzCEKeO4uCnDZ7lPFeNqbfaaJHqBiH9qA5Vu2EuckqYZuFMJWy1l4dxTf9NOulCVfUjg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm"
|
"arm"
|
||||||
],
|
],
|
||||||
|
@ -2197,9 +2197,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/linux-arm64": {
|
"node_modules/@esbuild/linux-arm64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.19.tgz",
|
||||||
"integrity": "sha512-c9w3tE7qA3CYWjT+M3BMbwMt+0JYOp3vCMKgVBrCl1nwjAlOMYzEo+gG7QaZ9AtqZFj5MbUc885wuBBmu6aADQ==",
|
"integrity": "sha512-X8g33tczY0GsJq3lhyBrjnFtaKjWVpp1gMq5IlF9BQJ3TUfSK74nQnz9mRIEejmcV+OIYn6bkOJeUaU1Knrljg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
|
@ -2213,9 +2213,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/linux-ia32": {
|
"node_modules/@esbuild/linux-ia32": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.19.tgz",
|
||||||
"integrity": "sha512-1DS9F966pn5pPnqXYz16dQqWIB0dmDfAQZd6jSSpiT9eX1NzKh07J6VKR3AoXXXEk6CqZMojiVDSZi1SlmKVdg==",
|
"integrity": "sha512-SAkRWJgb+KN+gOhmbiE6/wu23D6HRcGQi15cB13IVtBZZgXxygTV5GJlUAKLQ5Gcx0gtlmt+XIxEmSqA6sZTOw==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"ia32"
|
"ia32"
|
||||||
],
|
],
|
||||||
|
@ -2229,9 +2229,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/linux-loong64": {
|
"node_modules/@esbuild/linux-loong64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.19.tgz",
|
||||||
"integrity": "sha512-EvLsxCk6ZF0fpCB6w6eOI2Fc8KW5N6sHlIovNe8uOFObL2O+Mr0bflPHyHwLT6rwMg9r77WOAWb2FqCQrVnwFg==",
|
"integrity": "sha512-YLAslaO8NsB9UOxBchos82AOMRDbIAWChwDKfjlGrHSzS3v1kxce7dGlSTsrb0PJwo1KYccypN3VNjQVLtz7LA==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"loong64"
|
"loong64"
|
||||||
],
|
],
|
||||||
|
@ -2245,9 +2245,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/linux-mips64el": {
|
"node_modules/@esbuild/linux-mips64el": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.19.tgz",
|
||||||
"integrity": "sha512-e0bIdHA5p6l+lwqTE36NAW5hHtw2tNRmHlGBygZC14QObsA3bD4C6sXLJjvnDIjSKhW1/0S3eDy+QmX/uZWEYQ==",
|
"integrity": "sha512-vSYFtlYds/oTI8aflEP65xo3MXChMwBOG1eWPGGKs/ev9zkTeXVvciU+nifq8J1JYMz+eQ4J9JDN0O2RKF8+1Q==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"mips64el"
|
"mips64el"
|
||||||
],
|
],
|
||||||
|
@ -2261,9 +2261,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/linux-ppc64": {
|
"node_modules/@esbuild/linux-ppc64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.19.tgz",
|
||||||
"integrity": "sha512-BAAilJ0M5O2uMxHYGjFKn4nJKF6fNCdP1E0o5t5fvMYYzeIqy2JdAP88Az5LHt9qBoUa4tDaRpfWt21ep5/WqQ==",
|
"integrity": "sha512-tgG41lRVwlzqO9tv9l7aXYVw35BxKXLtPam1qALScwSqPivI8hjkZLNH0deaaSCYCFT9cBIdB+hUjWFlFFLL9A==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"ppc64"
|
"ppc64"
|
||||||
],
|
],
|
||||||
|
@ -2277,9 +2277,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/linux-riscv64": {
|
"node_modules/@esbuild/linux-riscv64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.19.tgz",
|
||||||
"integrity": "sha512-Wh/HW2MPnC3b8BqRSIme/9Zhab36PPH+3zam5pqGRH4pE+4xTrVLx2+XdGp6fVS3L2x+DrsIcsbMleex8fbE6g==",
|
"integrity": "sha512-EgBZFLoN1S5RuB4cCJI31pBPsjE1nZ+3+fHRjguq9Ibrzo29bOLSBcH1KZJvRNh5qtd+fcYIGiIUia8Jw5r1lQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"riscv64"
|
"riscv64"
|
||||||
],
|
],
|
||||||
|
@ -2293,9 +2293,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/linux-s390x": {
|
"node_modules/@esbuild/linux-s390x": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.19.tgz",
|
||||||
"integrity": "sha512-j/34jAl3ul3PNcK3pfI0NSlBANduT2UO5kZ7FCaK33XFv3chDhICLY8wJJWIhiQ+YNdQ9dxqQctRg2bvrMlYgg==",
|
"integrity": "sha512-q1V1rtHRojAzjSigZEqrcLkpfh5K09ShCoIsdTakozVBnM5rgV58PLFticqDp5UJ9uE0HScov9QNbbl8HBo6QQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"s390x"
|
"s390x"
|
||||||
],
|
],
|
||||||
|
@ -2309,9 +2309,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/linux-x64": {
|
"node_modules/@esbuild/linux-x64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.19.tgz",
|
||||||
"integrity": "sha512-QM50vJ/y+8I60qEmFxMoxIx4de03pGo2HwxdBeFd4nMh364X6TIBZ6VQ5UQmPbQWUVWHWws5MmJXlHAXvJEmpQ==",
|
"integrity": "sha512-D0IiYjpZRXxGZLQfsydeAD7ZWqdGyFLBj5f2UshJpy09WPs3qizDCsEr8zyzcym6Woj/UI9ZzMIXwvoXVtyt0A==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
|
@ -2325,9 +2325,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/netbsd-x64": {
|
"node_modules/@esbuild/netbsd-x64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.19.tgz",
|
||||||
"integrity": "sha512-/jGlhWR7Sj9JPZHzXyyMZ1RFMkNPjC6QIAan0sDOtIo2TYk3tZn5UDrkE0XgsTQCxWTTOcMPf9p6Rh2hXtl5TQ==",
|
"integrity": "sha512-3tt3SOS8L3D54R8oER41UdDshlBIAjYhdWRPiZCTZ1E41+shIZBpTjaW5UaN/jD1ENE/Ok5lkeqhoNMbxstyxw==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
|
@ -2341,9 +2341,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/openbsd-x64": {
|
"node_modules/@esbuild/openbsd-x64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.19.tgz",
|
||||||
"integrity": "sha512-rSEeYaGgyGGf4qZM2NonMhMOP/5EHp4u9ehFiBrg7stH6BYEEjlkVREuDEcQ0LfIl53OXLxNbfuIj7mr5m29TA==",
|
"integrity": "sha512-MxbhcuAYQPlfln1EMc4T26OUoeg/YQc6wNoEV8xvktDKZhLtBxjkoeESSo9BbPaGKhAPzusXYj5n8n5A8iZSrA==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
|
@ -2357,9 +2357,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/sunos-x64": {
|
"node_modules/@esbuild/sunos-x64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.19.tgz",
|
||||||
"integrity": "sha512-Y7ZBbkLqlSgn4+zot4KUNYst0bFoO68tRgI6mY2FIM+b7ZbyNVtNbDP5y8qlu4/knZZ73fgJDlXID+ohY5zt5g==",
|
"integrity": "sha512-m0/UOq1wj25JpWqOJxoWBRM9VWc3c32xiNzd+ERlYstUZ6uwx5SZsQUtkiFHaYmcaoj+f6+Tfcl7atuAz3idwQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
|
@ -2373,9 +2373,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/win32-arm64": {
|
"node_modules/@esbuild/win32-arm64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.19.tgz",
|
||||||
"integrity": "sha512-bwPmTJsEQcbZk26oYpc4c/8PvTY3J5/QK8jM19DVlEsAB41M39aWovWoHtNm78sd6ip6prilxeHosPADXtEJFw==",
|
"integrity": "sha512-L4vb6pcoB1cEcXUHU6EPnUhUc4+/tcz4OqlXTWPcSQWxegfmcOprhmIleKKwmMNQVc4wrx/+jB7tGkjjDmiupg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
|
@ -2389,9 +2389,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/win32-ia32": {
|
"node_modules/@esbuild/win32-ia32": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.19.tgz",
|
||||||
"integrity": "sha512-H/XaPtPKli2MhW+3CQueo6Ni3Avggi6hP/YvgkEe1aSaxw+AeO8MFjq8DlgfTd9Iz4Yih3QCZI6YLMoyccnPRg==",
|
"integrity": "sha512-rQng7LXSKdrDlNDb7/v0fujob6X0GAazoK/IPd9C3oShr642ri8uIBkgM37/l8B3Rd5sBQcqUXoDdEy75XC/jg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"ia32"
|
"ia32"
|
||||||
],
|
],
|
||||||
|
@ -2405,9 +2405,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@esbuild/win32-x64": {
|
"node_modules/@esbuild/win32-x64": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.19.tgz",
|
||||||
"integrity": "sha512-fGEb8f2BSA3CW7riJVurug65ACLuQAzKq0SSqkY2b2yHHH0MzDfbLyKIGzHwOI/gkHcxM/leuSW6D5w/LMNitA==",
|
"integrity": "sha512-z69jhyG20Gq4QL5JKPLqUT+eREuqnDAFItLbza4JCmpvUnIlY73YNjd5djlO7kBiiZnvTnJuAbOjIoZIOa1GjA==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
|
@ -3908,9 +3908,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@swc/core": {
|
"node_modules/@swc/core": {
|
||||||
"version": "1.3.72",
|
"version": "1.3.74",
|
||||||
"resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.72.tgz",
|
"resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.74.tgz",
|
||||||
"integrity": "sha512-+AKjwLH3/STfPrd7CHzB9+NG1FVT0UKJMUChuWq9sQ8b9xlV8vUeRgZXgh/EHYvNQgl/OUTQKtL6xU2yOLuEuA==",
|
"integrity": "sha512-P+MIExOTdWlfq8Heb1/NhBAke6UTckd4cRDuJoFcFMGBRvgoCMNWhnfP3FRRXPLI7GGg27dRZS+xHiqYyQmSrA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"hasInstallScript": true,
|
"hasInstallScript": true,
|
||||||
"engines": {
|
"engines": {
|
||||||
|
@ -3921,16 +3921,16 @@
|
||||||
"url": "https://opencollective.com/swc"
|
"url": "https://opencollective.com/swc"
|
||||||
},
|
},
|
||||||
"optionalDependencies": {
|
"optionalDependencies": {
|
||||||
"@swc/core-darwin-arm64": "1.3.72",
|
"@swc/core-darwin-arm64": "1.3.74",
|
||||||
"@swc/core-darwin-x64": "1.3.72",
|
"@swc/core-darwin-x64": "1.3.74",
|
||||||
"@swc/core-linux-arm-gnueabihf": "1.3.72",
|
"@swc/core-linux-arm-gnueabihf": "1.3.74",
|
||||||
"@swc/core-linux-arm64-gnu": "1.3.72",
|
"@swc/core-linux-arm64-gnu": "1.3.74",
|
||||||
"@swc/core-linux-arm64-musl": "1.3.72",
|
"@swc/core-linux-arm64-musl": "1.3.74",
|
||||||
"@swc/core-linux-x64-gnu": "1.3.72",
|
"@swc/core-linux-x64-gnu": "1.3.74",
|
||||||
"@swc/core-linux-x64-musl": "1.3.72",
|
"@swc/core-linux-x64-musl": "1.3.74",
|
||||||
"@swc/core-win32-arm64-msvc": "1.3.72",
|
"@swc/core-win32-arm64-msvc": "1.3.74",
|
||||||
"@swc/core-win32-ia32-msvc": "1.3.72",
|
"@swc/core-win32-ia32-msvc": "1.3.74",
|
||||||
"@swc/core-win32-x64-msvc": "1.3.72"
|
"@swc/core-win32-x64-msvc": "1.3.74"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@swc/helpers": "^0.5.0"
|
"@swc/helpers": "^0.5.0"
|
||||||
|
@ -3942,9 +3942,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@swc/core-darwin-arm64": {
|
"node_modules/@swc/core-darwin-arm64": {
|
||||||
"version": "1.3.72",
|
"version": "1.3.74",
|
||||||
"resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.72.tgz",
|
"resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.74.tgz",
|
||||||
"integrity": "sha512-oNSI5hVfZ+1xpj+dH1g4kQqA0VsGtqd8S9S+cDqkHZiOOVOevw9KN6dzVtmLOcPtlULVypVc0TVvsB55KdVZhQ==",
|
"integrity": "sha512-2rMV4QxM583jXcREfo0MhV3Oj5pgRSfSh/kVrB1twL2rQxOrbzkAPT/8flmygdVoL4f2F7o1EY5lKlYxEBiIKQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
|
@ -3958,9 +3958,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@swc/core-darwin-x64": {
|
"node_modules/@swc/core-darwin-x64": {
|
||||||
"version": "1.3.72",
|
"version": "1.3.74",
|
||||||
"resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.72.tgz",
|
"resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.74.tgz",
|
||||||
"integrity": "sha512-y5O/WQ1g0/VfTgeNahWIOutbdD5U2Gi703jaefdcoJo3FUx8WU108QQdbVGwGMgaqapo3iQB6Qs9paixYQAYsA==",
|
"integrity": "sha512-KKEGE1wXneYXe15fWDRM8/oekd/Q4yAuccA0vWY/7i6nOSPqWYcSDR0nRtR030ltDxWt0rk/eCTmNkrOWrKs3A==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
|
@ -3974,9 +3974,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@swc/core-linux-arm-gnueabihf": {
|
"node_modules/@swc/core-linux-arm-gnueabihf": {
|
||||||
"version": "1.3.72",
|
"version": "1.3.74",
|
||||||
"resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.72.tgz",
|
"resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.74.tgz",
|
||||||
"integrity": "sha512-05JdWcso0OomHF+7bk5MBDgI8MZ9skcQ/4nhSv5gboSgSiuBmKM15Bg3lZ5iAUwGByNj7pGkSmmd3YwTrXEB+g==",
|
"integrity": "sha512-HehH5DR6r/5fIVu7tu8ZqgrHkhSCQNewf1ztFQJgcmaQWn+H4AJERBjwkjosqh4TvUJucZv8vyRTvrFeBXaCSA==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm"
|
"arm"
|
||||||
],
|
],
|
||||||
|
@ -3990,9 +3990,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@swc/core-linux-arm64-gnu": {
|
"node_modules/@swc/core-linux-arm64-gnu": {
|
||||||
"version": "1.3.72",
|
"version": "1.3.74",
|
||||||
"resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.72.tgz",
|
"resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.74.tgz",
|
||||||
"integrity": "sha512-8qRELJaeYshhJgqvyOeXCKqBOpai+JYdWuouMbvvDUL85j3OcZhzR+bipexEbbJKcOCdRnoYB7Qg6mjqZ0t7VA==",
|
"integrity": "sha512-+xkbCRz/wczgdknoV4NwYxbRI2dD7x/qkIFcVM2buzLCq8oWLweuV8+aL4pRqu0qDh7ZSb1jcaVTUIsySCJznA==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
|
@ -4006,9 +4006,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@swc/core-linux-arm64-musl": {
|
"node_modules/@swc/core-linux-arm64-musl": {
|
||||||
"version": "1.3.72",
|
"version": "1.3.74",
|
||||||
"resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.72.tgz",
|
"resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.74.tgz",
|
||||||
"integrity": "sha512-tOqAGZw+Pe7YrBHFrwFVyRiKqjgjzwYbJmY+UDxLrzWrZSVtC3eO2TPrp7kWmhirg40Og81BbdfRAl8ds48w0Q==",
|
"integrity": "sha512-maKFZSCD3tQznzPV7T3V+TtiWZFEFM8YrnSS5fQNNb+K9J65sL+170uTb3M7H4cFkG+9Sm5k5yCrCIutlvV48g==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
|
@ -4022,9 +4022,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@swc/core-linux-x64-gnu": {
|
"node_modules/@swc/core-linux-x64-gnu": {
|
||||||
"version": "1.3.72",
|
"version": "1.3.74",
|
||||||
"resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.72.tgz",
|
"resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.74.tgz",
|
||||||
"integrity": "sha512-U2W2xWR3s9nplGVWz376GiBlcLTgxyYKlpZPBNZk0w3OvTcjKC62gW1Pe7PUkk4NgJUnaQDBa/mb4V4Zl+GZPA==",
|
"integrity": "sha512-LEXpcShF6DLTWJSiBhMSYZkLQ27UvaQ24fCFhoIV/R3dhYaUpHmIyLPPBNC82T03lB3ONUFVwrRw6fxDJ/f00A==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
|
@ -4038,9 +4038,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@swc/core-linux-x64-musl": {
|
"node_modules/@swc/core-linux-x64-musl": {
|
||||||
"version": "1.3.72",
|
"version": "1.3.74",
|
||||||
"resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.72.tgz",
|
"resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.74.tgz",
|
||||||
"integrity": "sha512-3+2dUiZBsifKgvnFEHWdysXjInK8K+BfPBw2tTZJmq1+fZLt0rvuErYDVMLfIJnVWLCcJMnDtTXrvkFV1y/6iA==",
|
"integrity": "sha512-sxsFctbFMZEFmDE7CmYljG0dMumH8XBTwwtGr8s6z0fYAzXBGNq2AFPcmEh2np9rPWkt7pE1m0ByESD+dMkbxQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
|
@ -4054,9 +4054,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@swc/core-win32-arm64-msvc": {
|
"node_modules/@swc/core-win32-arm64-msvc": {
|
||||||
"version": "1.3.72",
|
"version": "1.3.74",
|
||||||
"resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.72.tgz",
|
"resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.74.tgz",
|
||||||
"integrity": "sha512-ndI8xZ2AId806D25xgqw2SFJ9gc/jhg21+5hA8XPq9ZL+oDiaYDztaP3ijVmZ1G5xXKD9DpgB7xmylv/f6o6GA==",
|
"integrity": "sha512-F7hY9/BjFCozA4YPFYFH5FGCyWwa44vIXHqG66F5cDwXDGFn8ZtBsYIsiPfUYcx0AeAo1ojnVWKPxokZhYNYqA==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
|
@ -4070,9 +4070,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@swc/core-win32-ia32-msvc": {
|
"node_modules/@swc/core-win32-ia32-msvc": {
|
||||||
"version": "1.3.72",
|
"version": "1.3.74",
|
||||||
"resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.72.tgz",
|
"resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.74.tgz",
|
||||||
"integrity": "sha512-F3TK8JHP3SRFjLRlzcRVZPnvvGm2CQ5/cwbIkaEq0Dla3kyctU8SiRqvtYwWCW4JuY10cUygIg93Ec/C9Lkk4g==",
|
"integrity": "sha512-qBAsiD1AlIdqED6wy3UNRHyAys9pWMUidX0LJ6mj24r/vfrzzTBAUrLJe5m7bzE+F1Rgi001avYJeEW1DLEJ+Q==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"ia32"
|
"ia32"
|
||||||
],
|
],
|
||||||
|
@ -4086,9 +4086,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@swc/core-win32-x64-msvc": {
|
"node_modules/@swc/core-win32-x64-msvc": {
|
||||||
"version": "1.3.72",
|
"version": "1.3.74",
|
||||||
"resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.72.tgz",
|
"resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.74.tgz",
|
||||||
"integrity": "sha512-FXMnIUtLl0yEmGkw+xbUg/uUPExvUxUlLSHbX7CnbSuOIHqMHzvEd9skIueLAst4bvmJ8kT1hDyAIWQcTIAJYQ==",
|
"integrity": "sha512-S3YAvvLprTnPRwQuy9Dkwubb5SRLpVK3JJsqYDbGfgj8PGQyKHZcVJ5X3nfFsoWLy3j9B/3Os2nawprRSzeC5A==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
|
@ -4159,9 +4159,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@types/eslint": {
|
"node_modules/@types/eslint": {
|
||||||
"version": "8.44.1",
|
"version": "8.44.2",
|
||||||
"resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.1.tgz",
|
"resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.2.tgz",
|
||||||
"integrity": "sha512-XpNDc4Z5Tb4x+SW1MriMVeIsMoONHCkWFMkR/aPJbzEsxqHy+4Glu/BqTdPrApfDeMaXbtNh6bseNgl5KaWrSg==",
|
"integrity": "sha512-sdPRb9K6iL5XZOmBubg8yiFp5yS/JdUDQsq5e6h95km91MCYMuvp7mh1fjPEYUhvHepKpZOjnEaMBR4PxjWDzg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@types/estree": "*",
|
"@types/estree": "*",
|
||||||
|
@ -4198,9 +4198,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/@types/node": {
|
"node_modules/@types/node": {
|
||||||
"version": "20.4.5",
|
"version": "20.4.8",
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.5.tgz",
|
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.8.tgz",
|
||||||
"integrity": "sha512-rt40Nk13II9JwQBdeYqmbn2Q6IVTA5uPhvSO+JVqdXw/6/4glI6oR9ezty/A9Hg5u7JH4OmYmuQ+XvjKm0Datg==",
|
"integrity": "sha512-0mHckf6D2DiIAzh8fM8f3HQCvMKDpK94YQ0DSVkfWTG9BZleYIWudw9cJxX8oCk9bM+vAkDyujDV6dmKHbvQpg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/@types/parse-json": {
|
"node_modules/@types/parse-json": {
|
||||||
|
@ -4528,6 +4528,7 @@
|
||||||
"version": "0.31.4",
|
"version": "0.31.4",
|
||||||
"resolved": "https://registry.npmjs.org/@vitest/coverage-c8/-/coverage-c8-0.31.4.tgz",
|
"resolved": "https://registry.npmjs.org/@vitest/coverage-c8/-/coverage-c8-0.31.4.tgz",
|
||||||
"integrity": "sha512-VPx368m4DTcpA/P0v3YdVxl4QOSh1DbUcXURLRvDShrIB5KxOgfzw4Bn2R8AhAe/GyiWW/FIsJ/OJdYXCCiC1w==",
|
"integrity": "sha512-VPx368m4DTcpA/P0v3YdVxl4QOSh1DbUcXURLRvDShrIB5KxOgfzw4Bn2R8AhAe/GyiWW/FIsJ/OJdYXCCiC1w==",
|
||||||
|
"deprecated": "v8 coverage is moved to @vitest/coverage-v8 package",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@ampproject/remapping": "^2.2.1",
|
"@ampproject/remapping": "^2.2.1",
|
||||||
|
@ -5591,9 +5592,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/caniuse-lite": {
|
"node_modules/caniuse-lite": {
|
||||||
"version": "1.0.30001518",
|
"version": "1.0.30001519",
|
||||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001518.tgz",
|
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001519.tgz",
|
||||||
"integrity": "sha512-rup09/e3I0BKjncL+FesTayKtPrdwKhUufQFd3riFw1hHg8JmIFoInYfB102cFcY/pPgGmdyl/iy+jgiDi2vdA==",
|
"integrity": "sha512-0QHgqR+Jv4bxHMp8kZ1Kn8CH55OikjKJ6JmKkZYP1F3D7w+lnFXF70nG5eNfsZS89jadi5Ywy5UCSKLAglIRkg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
|
@ -5975,15 +5976,15 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/cypress": {
|
"node_modules/cypress": {
|
||||||
"version": "12.17.2",
|
"version": "12.17.3",
|
||||||
"resolved": "https://registry.npmjs.org/cypress/-/cypress-12.17.2.tgz",
|
"resolved": "https://registry.npmjs.org/cypress/-/cypress-12.17.3.tgz",
|
||||||
"integrity": "sha512-hxWAaWbqQBzzMuadSGSuQg5PDvIGOovm6xm0hIfpCVcORsCAj/gF2p0EvfnJ4f+jK2PCiDgP6D2eeE9/FK4Mjg==",
|
"integrity": "sha512-/R4+xdIDjUSLYkiQfwJd630S81KIgicmQOLXotFxVXkl+eTeVO+3bHXxdi5KBh/OgC33HWN33kHX+0tQR/ZWpg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"hasInstallScript": true,
|
"hasInstallScript": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@cypress/request": "^2.88.11",
|
"@cypress/request": "^2.88.11",
|
||||||
"@cypress/xvfb": "^1.2.4",
|
"@cypress/xvfb": "^1.2.4",
|
||||||
"@types/node": "^14.14.31",
|
"@types/node": "^16.18.39",
|
||||||
"@types/sinonjs__fake-timers": "8.1.1",
|
"@types/sinonjs__fake-timers": "8.1.1",
|
||||||
"@types/sizzle": "^2.3.2",
|
"@types/sizzle": "^2.3.2",
|
||||||
"arch": "^2.2.0",
|
"arch": "^2.2.0",
|
||||||
|
@ -6032,9 +6033,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/cypress/node_modules/@types/node": {
|
"node_modules/cypress/node_modules/@types/node": {
|
||||||
"version": "14.18.54",
|
"version": "16.18.39",
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.54.tgz",
|
"resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.39.tgz",
|
||||||
"integrity": "sha512-uq7O52wvo2Lggsx1x21tKZgqkJpvwCseBBPtX/nKQfpVlEsLOb11zZ1CRsWUKvJF0+lzuA9jwvA7Pr2Wt7i3xw==",
|
"integrity": "sha512-8q9ZexmdYYyc5/cfujaXb4YOucpQxAV4RMG0himLyDUOEr8Mr79VrqsFI+cQ2M2h89YIuy95lbxuYjxT4Hk4kQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/cypress/node_modules/fs-extra": {
|
"node_modules/cypress/node_modules/fs-extra": {
|
||||||
|
@ -6303,9 +6304,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/electron-to-chromium": {
|
"node_modules/electron-to-chromium": {
|
||||||
"version": "1.4.477",
|
"version": "1.4.485",
|
||||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.477.tgz",
|
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.485.tgz",
|
||||||
"integrity": "sha512-shUVy6Eawp33dFBFIoYbIwLHrX0IZ857AlH9ug2o4rvbWmpaCUdBpQ5Zw39HRrfzAFm4APJE9V+E2A/WB0YqJw==",
|
"integrity": "sha512-1ndQ5IBNEnFirPwvyud69GHL+31FkE09gH/CJ6m3KCbkx3i0EVOrjwz4UNxRmN9H8OVHbC6vMRZGN1yCvjSs9w==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/emoji-regex": {
|
"node_modules/emoji-regex": {
|
||||||
|
@ -6387,9 +6388,9 @@
|
||||||
"peer": true
|
"peer": true
|
||||||
},
|
},
|
||||||
"node_modules/esbuild": {
|
"node_modules/esbuild": {
|
||||||
"version": "0.18.17",
|
"version": "0.18.19",
|
||||||
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.17.tgz",
|
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.19.tgz",
|
||||||
"integrity": "sha512-1GJtYnUxsJreHYA0Y+iQz2UEykonY66HNWOb0yXYZi9/kNrORUEHVg87eQsCtqh59PEJ5YVZJO98JHznMJSWjg==",
|
"integrity": "sha512-ra3CaIKCzJp5bU5BDfrCc0FRqKj71fQi+gbld0aj6lN0ifuX2fWJYPgLVLGwPfA+ruKna+OWwOvf/yHj6n+i0g==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"hasInstallScript": true,
|
"hasInstallScript": true,
|
||||||
"bin": {
|
"bin": {
|
||||||
|
@ -6399,28 +6400,28 @@
|
||||||
"node": ">=12"
|
"node": ">=12"
|
||||||
},
|
},
|
||||||
"optionalDependencies": {
|
"optionalDependencies": {
|
||||||
"@esbuild/android-arm": "0.18.17",
|
"@esbuild/android-arm": "0.18.19",
|
||||||
"@esbuild/android-arm64": "0.18.17",
|
"@esbuild/android-arm64": "0.18.19",
|
||||||
"@esbuild/android-x64": "0.18.17",
|
"@esbuild/android-x64": "0.18.19",
|
||||||
"@esbuild/darwin-arm64": "0.18.17",
|
"@esbuild/darwin-arm64": "0.18.19",
|
||||||
"@esbuild/darwin-x64": "0.18.17",
|
"@esbuild/darwin-x64": "0.18.19",
|
||||||
"@esbuild/freebsd-arm64": "0.18.17",
|
"@esbuild/freebsd-arm64": "0.18.19",
|
||||||
"@esbuild/freebsd-x64": "0.18.17",
|
"@esbuild/freebsd-x64": "0.18.19",
|
||||||
"@esbuild/linux-arm": "0.18.17",
|
"@esbuild/linux-arm": "0.18.19",
|
||||||
"@esbuild/linux-arm64": "0.18.17",
|
"@esbuild/linux-arm64": "0.18.19",
|
||||||
"@esbuild/linux-ia32": "0.18.17",
|
"@esbuild/linux-ia32": "0.18.19",
|
||||||
"@esbuild/linux-loong64": "0.18.17",
|
"@esbuild/linux-loong64": "0.18.19",
|
||||||
"@esbuild/linux-mips64el": "0.18.17",
|
"@esbuild/linux-mips64el": "0.18.19",
|
||||||
"@esbuild/linux-ppc64": "0.18.17",
|
"@esbuild/linux-ppc64": "0.18.19",
|
||||||
"@esbuild/linux-riscv64": "0.18.17",
|
"@esbuild/linux-riscv64": "0.18.19",
|
||||||
"@esbuild/linux-s390x": "0.18.17",
|
"@esbuild/linux-s390x": "0.18.19",
|
||||||
"@esbuild/linux-x64": "0.18.17",
|
"@esbuild/linux-x64": "0.18.19",
|
||||||
"@esbuild/netbsd-x64": "0.18.17",
|
"@esbuild/netbsd-x64": "0.18.19",
|
||||||
"@esbuild/openbsd-x64": "0.18.17",
|
"@esbuild/openbsd-x64": "0.18.19",
|
||||||
"@esbuild/sunos-x64": "0.18.17",
|
"@esbuild/sunos-x64": "0.18.19",
|
||||||
"@esbuild/win32-arm64": "0.18.17",
|
"@esbuild/win32-arm64": "0.18.19",
|
||||||
"@esbuild/win32-ia32": "0.18.17",
|
"@esbuild/win32-ia32": "0.18.19",
|
||||||
"@esbuild/win32-x64": "0.18.17"
|
"@esbuild/win32-x64": "0.18.19"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/escalade": {
|
"node_modules/escalade": {
|
||||||
|
@ -7643,9 +7644,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/is-core-module": {
|
"node_modules/is-core-module": {
|
||||||
"version": "2.12.1",
|
"version": "2.13.0",
|
||||||
"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz",
|
"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz",
|
||||||
"integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==",
|
"integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"has": "^1.0.3"
|
"has": "^1.0.3"
|
||||||
|
@ -7982,30 +7983,6 @@
|
||||||
"node": ">= 6"
|
"node": ">= 6"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/jsdom/node_modules/tough-cookie": {
|
|
||||||
"version": "4.1.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz",
|
|
||||||
"integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==",
|
|
||||||
"dev": true,
|
|
||||||
"dependencies": {
|
|
||||||
"psl": "^1.1.33",
|
|
||||||
"punycode": "^2.1.1",
|
|
||||||
"universalify": "^0.2.0",
|
|
||||||
"url-parse": "^1.5.3"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=6"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/jsdom/node_modules/universalify": {
|
|
||||||
"version": "0.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz",
|
|
||||||
"integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==",
|
|
||||||
"dev": true,
|
|
||||||
"engines": {
|
|
||||||
"node": ">= 4.0.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/jsesc": {
|
"node_modules/jsesc": {
|
||||||
"version": "2.5.2",
|
"version": "2.5.2",
|
||||||
"resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
|
"resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
|
||||||
|
@ -9305,12 +9282,12 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/resolve": {
|
"node_modules/resolve": {
|
||||||
"version": "1.22.2",
|
"version": "1.22.4",
|
||||||
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz",
|
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz",
|
||||||
"integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==",
|
"integrity": "sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"is-core-module": "^2.11.0",
|
"is-core-module": "^2.13.0",
|
||||||
"path-parse": "^1.0.7",
|
"path-parse": "^1.0.7",
|
||||||
"supports-preserve-symlinks-flag": "^1.0.0"
|
"supports-preserve-symlinks-flag": "^1.0.0"
|
||||||
},
|
},
|
||||||
|
@ -9375,9 +9352,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/rollup": {
|
"node_modules/rollup": {
|
||||||
"version": "3.27.0",
|
"version": "3.27.2",
|
||||||
"resolved": "https://registry.npmjs.org/rollup/-/rollup-3.27.0.tgz",
|
"resolved": "https://registry.npmjs.org/rollup/-/rollup-3.27.2.tgz",
|
||||||
"integrity": "sha512-aOltLCrYZ0FhJDm7fCqwTjIUEVjWjcydKBV/Zeid6Mn8BWgDCUBBWT5beM5ieForYNo/1ZHuGJdka26kvQ3Gzg==",
|
"integrity": "sha512-YGwmHf7h2oUHkVBT248x0yt6vZkYQ3/rvE5iQuVBh3WO8GcJ6BNeOkpoX1yMHIiBm18EMLjBPIoUDkhgnyxGOQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"bin": {
|
"bin": {
|
||||||
"rollup": "dist/bin/rollup"
|
"rollup": "dist/bin/rollup"
|
||||||
|
@ -9749,12 +9726,12 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/strip-literal": {
|
"node_modules/strip-literal": {
|
||||||
"version": "1.0.1",
|
"version": "1.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-1.3.0.tgz",
|
||||||
"integrity": "sha512-QZTsipNpa2Ppr6v1AmJHESqJ3Uz247MUS0OjrnnZjFAvEoWqxuyFuXn2xLgMtRnijJShAa1HL0gtJyUs7u7n3Q==",
|
"integrity": "sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"acorn": "^8.8.2"
|
"acorn": "^8.10.0"
|
||||||
},
|
},
|
||||||
"funding": {
|
"funding": {
|
||||||
"url": "https://github.com/sponsors/antfu"
|
"url": "https://github.com/sponsors/antfu"
|
||||||
|
@ -10026,16 +10003,27 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/tough-cookie": {
|
"node_modules/tough-cookie": {
|
||||||
"version": "2.5.0",
|
"version": "4.1.3",
|
||||||
"resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz",
|
||||||
"integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
|
"integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"psl": "^1.1.28",
|
"psl": "^1.1.33",
|
||||||
"punycode": "^2.1.1"
|
"punycode": "^2.1.1",
|
||||||
|
"universalify": "^0.2.0",
|
||||||
|
"url-parse": "^1.5.3"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=0.8"
|
"node": ">=6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/tough-cookie/node_modules/universalify": {
|
||||||
|
"version": "0.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz",
|
||||||
|
"integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 4.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/tr46": {
|
"node_modules/tr46": {
|
||||||
|
@ -10404,14 +10392,14 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/vite": {
|
"node_modules/vite": {
|
||||||
"version": "4.4.7",
|
"version": "4.4.9",
|
||||||
"resolved": "https://registry.npmjs.org/vite/-/vite-4.4.7.tgz",
|
"resolved": "https://registry.npmjs.org/vite/-/vite-4.4.9.tgz",
|
||||||
"integrity": "sha512-6pYf9QJ1mHylfVh39HpuSfMPojPSKVxZvnclX1K1FyZ1PXDOcLBibdq5t1qxJSnL63ca8Wf4zts6mD8u8oc9Fw==",
|
"integrity": "sha512-2mbUn2LlUmNASWwSCNSJ/EG2HuSRTnVNaydp6vMCm5VIqJsjMfbIWtbH2kDuwUVW5mMUKKZvGPX/rqeqVvv1XA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"esbuild": "^0.18.10",
|
"esbuild": "^0.18.10",
|
||||||
"postcss": "^8.4.26",
|
"postcss": "^8.4.27",
|
||||||
"rollup": "^3.25.2"
|
"rollup": "^3.27.1"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
"vite": "bin/vite.js"
|
"vite": "bin/vite.js"
|
||||||
|
|
|
@ -46,7 +46,7 @@ document.querySelector("#next")?.addEventListener("click", () => {
|
||||||
})
|
})
|
||||||
|
|
||||||
document.querySelector("#play")?.addEventListener("click", () => {
|
document.querySelector("#play")?.addEventListener("click", () => {
|
||||||
euterpe.play_async().catch((e) => alert("Failed to play, " + e))
|
euterpe.try_play_async().catch((e) => alert("Failed to play, " + e))
|
||||||
})
|
})
|
||||||
document.querySelector("#pause")?.addEventListener("click", () => {
|
document.querySelector("#pause")?.addEventListener("click", () => {
|
||||||
euterpe.pause()
|
euterpe.pause()
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@euterpe.js/euterpe",
|
"name": "@euterpe.js/euterpe",
|
||||||
"version": "1.0.13",
|
"version": "1.0.15",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"description": "Fully featured solution for playing music on the web. Support for local library, audio visuals and more!",
|
"description": "Fully featured solution for playing music on the web. Support for local library, audio visuals and more!",
|
||||||
"main": "./src/index.js",
|
"main": "./src/index.js",
|
||||||
|
|
|
@ -1,25 +1,27 @@
|
||||||
import * as Player from "@euterpe.js/player"
|
import { MusicPlayer } from "@euterpe.js/player"
|
||||||
import * as Library from "@euterpe.js/music-library"
|
import { DB, Song, Artist } from "@euterpe.js/music-library"
|
||||||
|
|
||||||
export { Euterpe, EuterpeBuilder }
|
export { Euterpe, EuterpeBuilder }
|
||||||
/**
|
/**
|
||||||
* Avoid Writing directly to any fields in this class!
|
* Avoid Writing directly to any fields in this class!
|
||||||
*/
|
*/
|
||||||
class Euterpe extends Player.MusicPlayer {
|
class Euterpe extends MusicPlayer {
|
||||||
current_song: Library.Song | undefined
|
current_song: Song | undefined
|
||||||
current_song_id = 0
|
current_song_id = 0
|
||||||
queue: Library.Song[] = []
|
queue: Song[] = []
|
||||||
played_history: Library.Song[] = []
|
played_history: Song[] = []
|
||||||
constructor(
|
constructor(
|
||||||
public db: Library.DB,
|
public db: DB,
|
||||||
audio_context: AudioContext,
|
audio_context: AudioContext,
|
||||||
audio_element: HTMLAudioElement,
|
audio_element: HTMLAudioElement,
|
||||||
track: MediaElementAudioSourceNode,
|
track: MediaElementAudioSourceNode,
|
||||||
gain: GainNode,
|
gain: GainNode,
|
||||||
volume: number,
|
volume: number,
|
||||||
current_song_path?: string) {
|
current_song_path?: string,
|
||||||
|
private options?: BuilderOptions
|
||||||
|
) {
|
||||||
|
|
||||||
super(audio_context, audio_element, track, gain, volume, current_song_path,)
|
super(audio_context, audio_element, track, gain, volume, current_song_path)
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* Use to load song on page load.
|
* Use to load song on page load.
|
||||||
|
@ -43,7 +45,7 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
*/
|
*/
|
||||||
try_next_song_async() {
|
try_next_song_async() {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
let new_song: Library.Song
|
let new_song: Song
|
||||||
if (this.queue.length > 0) {
|
if (this.queue.length > 0) {
|
||||||
new_song = this.queue.shift()!
|
new_song = this.queue.shift()!
|
||||||
} else {
|
} else {
|
||||||
|
@ -54,7 +56,8 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
if (next_id == this.db.songs.length) reject(new Error("Won't go past the last song"))
|
if (next_id == this.db.songs.length) reject(new Error("Won't go past the last song"))
|
||||||
new_song = this.db.songs.find((song) => song.id == next_id)!
|
new_song = this.db.songs.find((song) => song.id == next_id)!
|
||||||
}
|
}
|
||||||
this.try_new_song_async(new_song.url.toString()).then(
|
const url = this.options?.use_only_pathname_url ? new_song.url.pathname : new_song.url.toString()
|
||||||
|
this.try_new_song_async(url).then(
|
||||||
() => {
|
() => {
|
||||||
this.try_play_async().then((s) => {
|
this.try_play_async().then((s) => {
|
||||||
if (this.current_song) this.played_history.push(this.current_song)
|
if (this.current_song) this.played_history.push(this.current_song)
|
||||||
|
@ -74,7 +77,7 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
*/
|
*/
|
||||||
next_song_async() {
|
next_song_async() {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
let new_song: Library.Song
|
let new_song: Song
|
||||||
if (this.queue.length > 0) {
|
if (this.queue.length > 0) {
|
||||||
new_song = this.queue.shift()!
|
new_song = this.queue.shift()!
|
||||||
} else {
|
} else {
|
||||||
|
@ -85,7 +88,8 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
if (next_id == this.db.songs.length) next_id = this.db.songs[0].id!
|
if (next_id == this.db.songs.length) next_id = this.db.songs[0].id!
|
||||||
new_song = this.db.songs.find((song) => song.id == next_id)!
|
new_song = this.db.songs.find((song) => song.id == next_id)!
|
||||||
}
|
}
|
||||||
this.try_new_song_async(new_song.url.toString()).then(
|
const url = this.options?.use_only_pathname_url ? new_song.url.pathname : new_song.url.toString()
|
||||||
|
this.try_new_song_async(url).then(
|
||||||
() => {
|
() => {
|
||||||
this.try_play_async().then((s) => {
|
this.try_play_async().then((s) => {
|
||||||
if (this.current_song) this.played_history.push(this.current_song)
|
if (this.current_song) this.played_history.push(this.current_song)
|
||||||
|
@ -103,7 +107,7 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
* If queue present, uses that, if not, relies on Song ID directly from DB
|
* If queue present, uses that, if not, relies on Song ID directly from DB
|
||||||
*/
|
*/
|
||||||
next_song() {
|
next_song() {
|
||||||
let new_song: Library.Song
|
let new_song: Song
|
||||||
if (this.queue.length > 0) {
|
if (this.queue.length > 0) {
|
||||||
new_song = this.queue.shift()!
|
new_song = this.queue.shift()!
|
||||||
} else {
|
} else {
|
||||||
|
@ -114,7 +118,8 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
if (next_id == this.db.songs.length) next_id = this.db.songs[0].id!
|
if (next_id == this.db.songs.length) next_id = this.db.songs[0].id!
|
||||||
new_song = this.db.songs.find((song) => song.id == next_id)!
|
new_song = this.db.songs.find((song) => song.id == next_id)!
|
||||||
}
|
}
|
||||||
this.new_song(new_song.url.toString())
|
const url = this.options?.use_only_pathname_url ? new_song.url.pathname : new_song.url.toString()
|
||||||
|
this.new_song(url)
|
||||||
this.play()
|
this.play()
|
||||||
if (this.current_song) this.played_history.push(this.current_song)
|
if (this.current_song) this.played_history.push(this.current_song)
|
||||||
this.current_song = new_song
|
this.current_song = new_song
|
||||||
|
@ -125,7 +130,7 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
* If queue present, uses that, if not, relies on Song ID directly from DB
|
* If queue present, uses that, if not, relies on Song ID directly from DB
|
||||||
*/
|
*/
|
||||||
try_next_song() {
|
try_next_song() {
|
||||||
let new_song: Library.Song
|
let new_song: Song
|
||||||
if (this.queue.length > 0) {
|
if (this.queue.length > 0) {
|
||||||
new_song = this.queue.shift()!
|
new_song = this.queue.shift()!
|
||||||
} else {
|
} else {
|
||||||
|
@ -135,7 +140,8 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
if (next_id == this.db.songs.length) throw new Error("Won't go past the last song")
|
if (next_id == this.db.songs.length) throw new Error("Won't go past the last song")
|
||||||
new_song = this.db.songs.find((song) => song.id == next_id)!
|
new_song = this.db.songs.find((song) => song.id == next_id)!
|
||||||
}
|
}
|
||||||
this.new_song(new_song.url.toString())
|
const url = this.options?.use_only_pathname_url ? new_song.url.pathname : new_song.url.toString()
|
||||||
|
this.new_song(url)
|
||||||
this.play()
|
this.play()
|
||||||
if (this.current_song) this.played_history.push(this.current_song)
|
if (this.current_song) this.played_history.push(this.current_song)
|
||||||
this.current_song = new_song
|
this.current_song = new_song
|
||||||
|
@ -149,7 +155,7 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
const new_song = this.db.songs.find((song) => song.id! == new_song_id)
|
const new_song = this.db.songs.find((song) => song.id! == new_song_id)
|
||||||
if (!new_song) reject(new Error(`No song with id "${new_song_id}" found`))
|
if (!new_song) reject(new Error(`No song with id "${new_song_id}" found`))
|
||||||
else {
|
else {
|
||||||
this.try_new_song_async(new_song.url.toString()).then(
|
this.try_new_song_async(new_song.url.pathname).then(
|
||||||
() => {
|
() => {
|
||||||
this.try_play_async().then((s) => {
|
this.try_play_async().then((s) => {
|
||||||
if (this.current_song) this.played_history.push(this.current_song)
|
if (this.current_song) this.played_history.push(this.current_song)
|
||||||
|
@ -171,7 +177,8 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
const new_song = this.db.songs.find((song) => song.id! == new_song_id)
|
const new_song = this.db.songs.find((song) => song.id! == new_song_id)
|
||||||
if (!new_song) reject(new Error(`No song with id "${new_song_id}" found`))
|
if (!new_song) reject(new Error(`No song with id "${new_song_id}" found`))
|
||||||
else {
|
else {
|
||||||
this.try_new_song_async(new_song.url.toString()).then(
|
const url = this.options?.use_only_pathname_url ? new_song.url.pathname : new_song.url.toString()
|
||||||
|
this.try_new_song_async(url).then(
|
||||||
() => {
|
() => {
|
||||||
this.play_async().then((s) => {
|
this.play_async().then((s) => {
|
||||||
if (this.current_song) this.played_history.push(this.current_song)
|
if (this.current_song) this.played_history.push(this.current_song)
|
||||||
|
@ -192,7 +199,8 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
const new_song = this.db.songs.find((song) => song.id! == new_song_id)
|
const new_song = this.db.songs.find((song) => song.id! == new_song_id)
|
||||||
if (!new_song) throw new Error(`No song with id "${new_song_id}" found`)
|
if (!new_song) throw new Error(`No song with id "${new_song_id}" found`)
|
||||||
else {
|
else {
|
||||||
this.new_song(new_song.url.toString())
|
const url = this.options?.use_only_pathname_url ? new_song.url.pathname : new_song.url.toString()
|
||||||
|
this.new_song(url)
|
||||||
this.play()
|
this.play()
|
||||||
if (this.current_song) this.played_history.push(this.current_song)
|
if (this.current_song) this.played_history.push(this.current_song)
|
||||||
this.current_song = new_song
|
this.current_song = new_song
|
||||||
|
@ -205,7 +213,7 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
*/
|
*/
|
||||||
try_previous_song_async() {
|
try_previous_song_async() {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
let new_song: Library.Song
|
let new_song: Song
|
||||||
if (this.played_history.length > 0) {
|
if (this.played_history.length > 0) {
|
||||||
new_song = this.played_history.pop()!
|
new_song = this.played_history.pop()!
|
||||||
} else {
|
} else {
|
||||||
|
@ -216,7 +224,8 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
if (next_id == this.db.songs.length) reject(new Error("Won't roll backwards to last song"))
|
if (next_id == this.db.songs.length) reject(new Error("Won't roll backwards to last song"))
|
||||||
new_song = this.db.songs.find((song) => song.id == next_id)!
|
new_song = this.db.songs.find((song) => song.id == next_id)!
|
||||||
}
|
}
|
||||||
this.try_new_song_async(new_song.url.toString()).then(
|
const url = this.options?.use_only_pathname_url ? new_song.url.pathname : new_song.url.toString()
|
||||||
|
this.try_new_song_async(url).then(
|
||||||
() => {
|
() => {
|
||||||
this.try_play_async().then((s) => {
|
this.try_play_async().then((s) => {
|
||||||
//if (this.current_song) this.played_history.push(this.current_song)
|
//if (this.current_song) this.played_history.push(this.current_song)
|
||||||
|
@ -236,7 +245,7 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
previous_song_async() {
|
previous_song_async() {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
|
|
||||||
let new_song: Library.Song
|
let new_song: Song
|
||||||
if (this.played_history.length > 0) {
|
if (this.played_history.length > 0) {
|
||||||
new_song = this.played_history.pop()!
|
new_song = this.played_history.pop()!
|
||||||
} else {
|
} else {
|
||||||
|
@ -247,7 +256,8 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
if (next_id == -1) next_id = this.db.songs[this.db.songs.length - 1].id!
|
if (next_id == -1) next_id = this.db.songs[this.db.songs.length - 1].id!
|
||||||
new_song = this.db.songs.find((song) => song.id == next_id)!
|
new_song = this.db.songs.find((song) => song.id == next_id)!
|
||||||
}
|
}
|
||||||
this.try_new_song_async(new_song.url.toString()).then(
|
const url = this.options?.use_only_pathname_url ? new_song.url.pathname : new_song.url.toString()
|
||||||
|
this.try_new_song_async(url).then(
|
||||||
() => {
|
() => {
|
||||||
this.try_play_async().then((s) => {
|
this.try_play_async().then((s) => {
|
||||||
//if (this.current_song) this.played_history.push(this.current_song)
|
//if (this.current_song) this.played_history.push(this.current_song)
|
||||||
|
@ -265,7 +275,7 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
* If history present, uses that, if not, relies on Song ID directly from DB
|
* If history present, uses that, if not, relies on Song ID directly from DB
|
||||||
*/
|
*/
|
||||||
try_previous_song() {
|
try_previous_song() {
|
||||||
let new_song: Library.Song
|
let new_song: Song
|
||||||
if (this.played_history.length > 0) {
|
if (this.played_history.length > 0) {
|
||||||
new_song = this.played_history.pop()!
|
new_song = this.played_history.pop()!
|
||||||
} else {
|
} else {
|
||||||
|
@ -276,7 +286,8 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
if (next_id == this.db.songs.length) throw new Error("Won't go past the last song")
|
if (next_id == this.db.songs.length) throw new Error("Won't go past the last song")
|
||||||
new_song = this.db.songs.find((song) => song.id == next_id)!
|
new_song = this.db.songs.find((song) => song.id == next_id)!
|
||||||
}
|
}
|
||||||
this.new_song(new_song.url.toString())
|
const url = this.options?.use_only_pathname_url ? new_song.url.pathname : new_song.url.toString()
|
||||||
|
this.new_song(url)
|
||||||
this.play()
|
this.play()
|
||||||
//if (this.current_song) this.played_history.push(this.current_song)
|
//if (this.current_song) this.played_history.push(this.current_song)
|
||||||
this.current_song_id = new_song.id!
|
this.current_song_id = new_song.id!
|
||||||
|
@ -287,7 +298,7 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
* If queue present, uses that, if not, relies on Song ID directly from DB
|
* If queue present, uses that, if not, relies on Song ID directly from DB
|
||||||
*/
|
*/
|
||||||
previous_song() {
|
previous_song() {
|
||||||
let new_song: Library.Song
|
let new_song: Song
|
||||||
if (this.played_history.length > 0) {
|
if (this.played_history.length > 0) {
|
||||||
new_song = this.played_history.pop()!
|
new_song = this.played_history.pop()!
|
||||||
} else {
|
} else {
|
||||||
|
@ -298,7 +309,8 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
if (next_id == this.db.songs.length) next_id = this.db.songs[this.db.songs.length].id!
|
if (next_id == this.db.songs.length) next_id = this.db.songs[this.db.songs.length].id!
|
||||||
new_song = this.db.songs.find((song) => song.id == next_id)!
|
new_song = this.db.songs.find((song) => song.id == next_id)!
|
||||||
}
|
}
|
||||||
this.new_song(new_song.url.toString())
|
const url = this.options?.use_only_pathname_url ? new_song.url.pathname : new_song.url.toString()
|
||||||
|
this.new_song(url)
|
||||||
this.play()
|
this.play()
|
||||||
//if (this.current_song) this.played_history.push(this.current_song)
|
//if (this.current_song) this.played_history.push(this.current_song)
|
||||||
this.current_song_id = new_song.id!
|
this.current_song_id = new_song.id!
|
||||||
|
@ -317,7 +329,7 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
let final_text = ""
|
let final_text = ""
|
||||||
|
|
||||||
for (const artist of curr_song.artists) {
|
for (const artist of curr_song.artists) {
|
||||||
const curr_artist = artist.get(this.db) as Library.Artist
|
const curr_artist = artist.get(this.db) as Artist
|
||||||
final_text += curr_artist.name + ", "
|
final_text += curr_artist.name + ", "
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -328,7 +340,7 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
final_text += " ("
|
final_text += " ("
|
||||||
|
|
||||||
for (const artist of curr_song.remix_artists) {
|
for (const artist of curr_song.remix_artists) {
|
||||||
const curr_artist = artist.get(this.db) as Library.Artist
|
const curr_artist = artist.get(this.db) as Artist
|
||||||
if (curr_artist.links && curr_artist.links.length > 0) {
|
if (curr_artist.links && curr_artist.links.length > 0) {
|
||||||
final_text += curr_artist.name
|
final_text += curr_artist.name
|
||||||
} else {
|
} else {
|
||||||
|
@ -392,6 +404,9 @@ class Euterpe extends Player.MusicPlayer {
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
type BuilderOptions = {
|
||||||
|
use_only_pathname_url?: boolean
|
||||||
|
}
|
||||||
|
|
||||||
class EuterpeBuilder {
|
class EuterpeBuilder {
|
||||||
#audio_context: AudioContext
|
#audio_context: AudioContext
|
||||||
|
@ -399,13 +414,14 @@ class EuterpeBuilder {
|
||||||
#track: MediaElementAudioSourceNode
|
#track: MediaElementAudioSourceNode
|
||||||
#volume = 1
|
#volume = 1
|
||||||
#prev_node: any;
|
#prev_node: any;
|
||||||
|
|
||||||
#is_gain_connected = false
|
#is_gain_connected = false
|
||||||
/**
|
/**
|
||||||
* Creates a context and #gain( Gets connected at the end )
|
* Creates a context and #gain( Gets connected at the end )
|
||||||
* will throw if audio_element is undefined (stupid vue setup amirite?)
|
* will throw if audio_element is undefined (stupid vue setup amirite?)
|
||||||
* will throw if user has not interacted with the page yet (Can't initiate AudioContext)
|
* will throw if user has not interacted with the page yet (Can't initiate AudioContext)
|
||||||
*/
|
*/
|
||||||
constructor(private audio_element: HTMLAudioElement, private db: Library.DB) {
|
constructor(private audio_element: HTMLAudioElement, private db: DB, private options?: BuilderOptions) {
|
||||||
if (audio_element === undefined) throw Error("audio_element was undefined")
|
if (audio_element === undefined) throw Error("audio_element was undefined")
|
||||||
// ↓ For old browsers
|
// ↓ For old browsers
|
||||||
const AudioContext = window.AudioContext || window.webkitAudioContext;
|
const AudioContext = window.AudioContext || window.webkitAudioContext;
|
||||||
|
@ -469,7 +485,6 @@ class EuterpeBuilder {
|
||||||
this.#prev_node = this.#gain
|
this.#prev_node = this.#gain
|
||||||
}
|
}
|
||||||
this.#prev_node.connect(this.#audio_context.destination)
|
this.#prev_node.connect(this.#audio_context.destination)
|
||||||
this.audio_element.preload = "metadata"
|
return new Euterpe(this.db, this.#audio_context, this.audio_element, this.#track, this.#gain, this.#volume, undefined, this.options)
|
||||||
return new Euterpe(this.db, this.#audio_context, this.audio_element, this.#track, this.#gain, this.#volume)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@euterpe.js/music-library",
|
"name": "@euterpe.js/music-library",
|
||||||
"version": "1.0.10",
|
"version": "1.0.11",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"description": "A simple music library, acting as a Local DB as JS Object. Contains everything a person would need to store their music data for website playback.",
|
"description": "A simple music library, acting as a Local DB as JS Object. Contains everything a person would need to store their music data for website playback.",
|
||||||
"main": "./src/index.js",
|
"main": "./src/index.js",
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@euterpe.js/player",
|
"name": "@euterpe.js/player",
|
||||||
"version": "1.0.8",
|
"version": "1.0.10",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"description": "A simple, safe AudioContext web music player",
|
"description": "A simple, safe AudioContext web music player",
|
||||||
"main": "./src/index.js",
|
"main": "./src/index.js",
|
||||||
|
|
|
@ -469,7 +469,6 @@ export class MusicPlayerBuilder {
|
||||||
this.#prev_node = this.#gain
|
this.#prev_node = this.#gain
|
||||||
}
|
}
|
||||||
this.#prev_node.connect(this.#audio_context.destination)
|
this.#prev_node.connect(this.#audio_context.destination)
|
||||||
this.audio_element.preload = "metadata"
|
|
||||||
return new MusicPlayer(this.#audio_context, this.audio_element, this.#track, this.#gain, this.#volume)
|
return new MusicPlayer(this.#audio_context, this.audio_element, this.#track, this.#gain, this.#volume)
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@euterpe.js/visualizer",
|
"name": "@euterpe.js/visualizer",
|
||||||
"version": "1.0.8",
|
"version": "1.0.9",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"description": "Music visualizer based on SVG and AudioContext",
|
"description": "Music visualizer based on SVG and AudioContext",
|
||||||
"main": "./src/index.js",
|
"main": "./src/index.js",
|
||||||
|
|
Loading…
Reference in a new issue