diff --git a/.idea/betternovelpia.iml b/.idea/betternovelpia.iml new file mode 100644 index 0000000..d6ebd48 --- /dev/null +++ b/.idea/betternovelpia.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/discord.xml b/.idea/discord.xml new file mode 100644 index 0000000..30bab2a --- /dev/null +++ b/.idea/discord.xml @@ -0,0 +1,7 @@ + + + + + \ No newline at end of file diff --git a/.idea/git_toolbox_prj.xml b/.idea/git_toolbox_prj.xml new file mode 100644 index 0000000..02b915b --- /dev/null +++ b/.idea/git_toolbox_prj.xml @@ -0,0 +1,15 @@ + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..6e86672 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..4e6df17 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/package.json b/package.json index 66797e3..6a74d6a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "betternovelpia", - "version": "10.7.0", + "version": "10.7.1", "license": "UNLICENSED", "scripts": { "preinstall": "npx only-allow pnpm", @@ -8,12 +8,12 @@ "dev": "webpack-dev-server --config webpack.dev.js" }, "devDependencies": { - "@swc/core": "^1.3.96", + "@swc/core": "^1.3.100", "@types/js-cookie": "^3.0.6", - "@types/react": "^18.2.36", - "@types/react-dom": "^18.2.14", - "@types/styled-components": "^5.1.29", - "@types/webpack-env": "^1.18.3", + "@types/react": "^18.2.42", + "@types/react-dom": "^18.2.17", + "@types/styled-components": "^5.1.34", + "@types/webpack-env": "^1.18.4", "cash-dom": "^8.1.5", "fork-ts-checker-webpack-plugin": "^8.0.0", "html-entities": "^2.4.0", @@ -23,10 +23,10 @@ "react-dom": "^18.2.0", "react-is": "^18.2.0", "regenerator-runtime": "^0.13.11", - "styled-components": "^6.1.0", + "styled-components": "^6.1.1", "swc-loader": "^0.2.3", "terser-webpack-plugin": "^5.3.9", - "typescript": "^5.2.2", + "typescript": "^5.3.2", "use-force-update": "^1.0.11", "use-long-press": "^3.2.0", "webpack": "^5.89.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c08db52..41f3fbc 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,29 +6,29 @@ settings: devDependencies: '@swc/core': - specifier: ^1.3.96 - version: 1.3.96 + specifier: ^1.3.100 + version: 1.3.100 '@types/js-cookie': specifier: ^3.0.6 version: 3.0.6 '@types/react': - specifier: ^18.2.36 - version: 18.2.36 + specifier: ^18.2.42 + version: 18.2.42 '@types/react-dom': - specifier: ^18.2.14 - version: 18.2.14 + specifier: ^18.2.17 + version: 18.2.17 '@types/styled-components': - specifier: ^5.1.29 - version: 5.1.29 + specifier: ^5.1.34 + version: 5.1.34 '@types/webpack-env': - specifier: ^1.18.3 - version: 1.18.3 + specifier: ^1.18.4 + version: 1.18.4 cash-dom: specifier: ^8.1.5 version: 8.1.5 fork-ts-checker-webpack-plugin: specifier: ^8.0.0 - version: 8.0.0(typescript@5.2.2)(webpack@5.89.0) + version: 8.0.0(typescript@5.3.2)(webpack@5.89.0) html-entities: specifier: ^2.4.0 version: 2.4.0 @@ -51,17 +51,17 @@ devDependencies: specifier: ^0.13.11 version: 0.13.11 styled-components: - specifier: ^6.1.0 - version: 6.1.0(react-dom@18.2.0)(react@18.2.0) + specifier: ^6.1.1 + version: 6.1.1(react-dom@18.2.0)(react@18.2.0) swc-loader: specifier: ^0.2.3 - version: 0.2.3(@swc/core@1.3.96)(webpack@5.89.0) + version: 0.2.3(@swc/core@1.3.100)(webpack@5.89.0) terser-webpack-plugin: specifier: ^5.3.9 - version: 5.3.9(@swc/core@1.3.96)(webpack@5.89.0) + version: 5.3.9(@swc/core@1.3.100)(webpack@5.89.0) typescript: - specifier: ^5.2.2 - version: 5.2.2 + specifier: ^5.3.2 + version: 5.3.2 use-force-update: specifier: ^1.0.11 version: 1.0.11(react@18.2.0) @@ -70,7 +70,7 @@ devDependencies: version: 3.2.0(react@18.2.0) webpack: specifier: ^5.89.0 - version: 5.89.0(@swc/core@1.3.96)(webpack-cli@5.1.4) + version: 5.89.0(@swc/core@1.3.100)(webpack-cli@5.1.4) webpack-cli: specifier: ^5.1.4 version: 5.1.4(webpack-dev-server@4.15.1)(webpack@5.89.0) @@ -86,11 +86,11 @@ devDependencies: packages: - /@babel/code-frame@7.22.13: - resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} + /@babel/code-frame@7.23.5: + resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/highlight': 7.22.20 + '@babel/highlight': 7.23.4 chalk: 2.4.2 dev: true @@ -99,8 +99,8 @@ packages: engines: {node: '>=6.9.0'} dev: true - /@babel/highlight@7.22.20: - resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==} + /@babel/highlight@7.23.4: + resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-validator-identifier': 7.22.20 @@ -168,8 +168,8 @@ packages: resolution: {integrity: sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==} dev: true - /@swc/core-darwin-arm64@1.3.96: - resolution: {integrity: sha512-8hzgXYVd85hfPh6mJ9yrG26rhgzCmcLO0h1TIl8U31hwmTbfZLzRitFQ/kqMJNbIBCwmNH1RU2QcJnL3d7f69A==} + /@swc/core-darwin-arm64@1.3.100: + resolution: {integrity: sha512-XVWFsKe6ei+SsDbwmsuRkYck1SXRpO60Hioa4hoLwR8fxbA9eVp6enZtMxzVVMBi8ej5seZ4HZQeAWepbukiBw==} engines: {node: '>=10'} cpu: [arm64] os: [darwin] @@ -177,8 +177,8 @@ packages: dev: true optional: true - /@swc/core-darwin-x64@1.3.96: - resolution: {integrity: sha512-mFp9GFfuPg+43vlAdQZl0WZpZSE8sEzqL7sr/7Reul5McUHP0BaLsEzwjvD035ESfkY8GBZdLpMinblIbFNljQ==} + /@swc/core-darwin-x64@1.3.100: + resolution: {integrity: sha512-KF/MXrnH1nakm1wbt4XV8FS7kvqD9TGmVxeJ0U4bbvxXMvzeYUurzg3AJUTXYmXDhH/VXOYJE5N5RkwZZPs5iA==} engines: {node: '>=10'} cpu: [x64] os: [darwin] @@ -186,17 +186,8 @@ packages: dev: true optional: true - /@swc/core-linux-arm-gnueabihf@1.3.96: - resolution: {integrity: sha512-8UEKkYJP4c8YzYIY/LlbSo8z5Obj4hqcv/fUTHiEePiGsOddgGf7AWjh56u7IoN/0uEmEro59nc1ChFXqXSGyg==} - engines: {node: '>=10'} - cpu: [arm] - os: [linux] - requiresBuild: true - dev: true - optional: true - - /@swc/core-linux-arm64-gnu@1.3.96: - resolution: {integrity: sha512-c/IiJ0s1y3Ymm2BTpyC/xr6gOvoqAVETrivVXHq68xgNms95luSpbYQ28rqaZC8bQC8M5zdXpSc0T8DJu8RJGw==} + /@swc/core-linux-arm64-gnu@1.3.100: + resolution: {integrity: sha512-p8hikNnAEJrw5vHCtKiFT4hdlQxk1V7vqPmvUDgL/qe2menQDK/i12tbz7/3BEQ4UqUPnvwpmVn2d19RdEMNxw==} engines: {node: '>=10'} cpu: [arm64] os: [linux] @@ -204,8 +195,8 @@ packages: dev: true optional: true - /@swc/core-linux-arm64-musl@1.3.96: - resolution: {integrity: sha512-i5/UTUwmJLri7zhtF6SAo/4QDQJDH2fhYJaBIUhrICmIkRO/ltURmpejqxsM/ye9Jqv5zG7VszMC0v/GYn/7BQ==} + /@swc/core-linux-arm64-musl@1.3.100: + resolution: {integrity: sha512-BWx/0EeY89WC4q3AaIaBSGfQxkYxIlS3mX19dwy2FWJs/O+fMvF9oLk/CyJPOZzbp+1DjGeeoGFuDYpiNO91JA==} engines: {node: '>=10'} cpu: [arm64] os: [linux] @@ -213,8 +204,8 @@ packages: dev: true optional: true - /@swc/core-linux-x64-gnu@1.3.96: - resolution: {integrity: sha512-USdaZu8lTIkm4Yf9cogct/j5eqtdZqTgcTib4I+NloUW0E/hySou3eSyp3V2UAA1qyuC72ld1otXuyKBna0YKQ==} + /@swc/core-linux-x64-gnu@1.3.100: + resolution: {integrity: sha512-XUdGu3dxAkjsahLYnm8WijPfKebo+jHgHphDxaW0ovI6sTdmEGFDew7QzKZRlbYL2jRkUuuKuDGvD6lO5frmhA==} engines: {node: '>=10'} cpu: [x64] os: [linux] @@ -222,8 +213,8 @@ packages: dev: true optional: true - /@swc/core-linux-x64-musl@1.3.96: - resolution: {integrity: sha512-QYErutd+G2SNaCinUVobfL7jWWjGTI0QEoQ6hqTp7PxCJS/dmKmj3C5ZkvxRYcq7XcZt7ovrYCTwPTHzt6lZBg==} + /@swc/core-linux-x64-musl@1.3.100: + resolution: {integrity: sha512-PhoXKf+f0OaNW/GCuXjJ0/KfK9EJX7z2gko+7nVnEA0p3aaPtbP6cq1Ubbl6CMoPL+Ci3gZ7nYumDqXNc3CtLQ==} engines: {node: '>=10'} cpu: [x64] os: [linux] @@ -231,8 +222,8 @@ packages: dev: true optional: true - /@swc/core-win32-arm64-msvc@1.3.96: - resolution: {integrity: sha512-hjGvvAduA3Un2cZ9iNP4xvTXOO4jL3G9iakhFsgVhpkU73SGmK7+LN8ZVBEu4oq2SUcHO6caWvnZ881cxGuSpg==} + /@swc/core-win32-arm64-msvc@1.3.100: + resolution: {integrity: sha512-PwLADZN6F9cXn4Jw52FeP/MCLVHm8vwouZZSOoOScDtihjY495SSjdPnlosMaRSR4wJQssGwiD/4MbpgQPqbAw==} engines: {node: '>=10'} cpu: [arm64] os: [win32] @@ -240,8 +231,8 @@ packages: dev: true optional: true - /@swc/core-win32-ia32-msvc@1.3.96: - resolution: {integrity: sha512-Far2hVFiwr+7VPCM2GxSmbh3ikTpM3pDombE+d69hkedvYHYZxtTF+2LTKl/sXtpbUnsoq7yV/32c9R/xaaWfw==} + /@swc/core-win32-ia32-msvc@1.3.100: + resolution: {integrity: sha512-0f6nicKSLlDKlyPRl2JEmkpBV4aeDfRQg6n8mPqgL7bliZIcDahG0ej+HxgNjZfS3e0yjDxsNRa6sAqWU2Z60A==} engines: {node: '>=10'} cpu: [ia32] os: [win32] @@ -249,8 +240,8 @@ packages: dev: true optional: true - /@swc/core-win32-x64-msvc@1.3.96: - resolution: {integrity: sha512-4VbSAniIu0ikLf5mBX81FsljnfqjoVGleEkCQv4+zRlyZtO3FHoDPkeLVoy6WRlj7tyrRcfUJ4mDdPkbfTO14g==} + /@swc/core-win32-x64-msvc@1.3.100: + resolution: {integrity: sha512-b7J0rPoMkRTa3XyUGt8PwCaIBuYWsL2DqbirrQKRESzgCvif5iNpqaM6kjIjI/5y5q1Ycv564CB51YDpiS8EtQ==} engines: {node: '>=10'} cpu: [x64] os: [win32] @@ -258,8 +249,8 @@ packages: dev: true optional: true - /@swc/core@1.3.96: - resolution: {integrity: sha512-zwE3TLgoZwJfQygdv2SdCK9mRLYluwDOM53I+dT6Z5ZvrgVENmY3txvWDvduzkV+/8IuvrRbVezMpxcojadRdQ==} + /@swc/core@1.3.100: + resolution: {integrity: sha512-7dKgTyxJjlrMwFZYb1auj3Xq0D8ZBe+5oeIgfMlRU05doXZypYJe0LAk0yjj3WdbwYzpF+T1PLxwTWizI0pckw==} engines: {node: '>=10'} requiresBuild: true peerDependencies: @@ -271,16 +262,15 @@ packages: '@swc/counter': 0.1.2 '@swc/types': 0.1.5 optionalDependencies: - '@swc/core-darwin-arm64': 1.3.96 - '@swc/core-darwin-x64': 1.3.96 - '@swc/core-linux-arm-gnueabihf': 1.3.96 - '@swc/core-linux-arm64-gnu': 1.3.96 - '@swc/core-linux-arm64-musl': 1.3.96 - '@swc/core-linux-x64-gnu': 1.3.96 - '@swc/core-linux-x64-musl': 1.3.96 - '@swc/core-win32-arm64-msvc': 1.3.96 - '@swc/core-win32-ia32-msvc': 1.3.96 - '@swc/core-win32-x64-msvc': 1.3.96 + '@swc/core-darwin-arm64': 1.3.100 + '@swc/core-darwin-x64': 1.3.100 + '@swc/core-linux-arm64-gnu': 1.3.100 + '@swc/core-linux-arm64-musl': 1.3.100 + '@swc/core-linux-x64-gnu': 1.3.100 + '@swc/core-linux-x64-musl': 1.3.100 + '@swc/core-win32-arm64-msvc': 1.3.100 + '@swc/core-win32-ia32-msvc': 1.3.100 + '@swc/core-win32-x64-msvc': 1.3.100 dev: true /@swc/counter@0.1.2: @@ -299,37 +289,37 @@ packages: resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} dependencies: '@types/connect': 3.4.38 - '@types/node': 20.8.10 + '@types/node': 20.10.3 dev: true /@types/bonjour@3.5.13: resolution: {integrity: sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==} dependencies: - '@types/node': 20.8.10 + '@types/node': 20.10.3 dev: true - /@types/connect-history-api-fallback@1.5.3: - resolution: {integrity: sha512-6mfQ6iNvhSKCZJoY6sIG3m0pKkdUcweVNOLuBBKvoWGzl2yRxOJcYOTRyLKt3nxXvBLJWa6QkW//tgbIwJehmA==} + /@types/connect-history-api-fallback@1.5.4: + resolution: {integrity: sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==} dependencies: '@types/express-serve-static-core': 4.17.41 - '@types/node': 20.8.10 + '@types/node': 20.10.3 dev: true /@types/connect@3.4.38: resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} dependencies: - '@types/node': 20.8.10 + '@types/node': 20.10.3 dev: true /@types/eslint-scope@3.7.7: resolution: {integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==} dependencies: - '@types/eslint': 8.44.7 + '@types/eslint': 8.44.8 '@types/estree': 1.0.5 dev: true - /@types/eslint@8.44.7: - resolution: {integrity: sha512-f5ORu2hcBbKei97U73mf+l9t4zTGl74IqZ0GQk4oVea/VS8tQZYkUveSYojk+frraAVYId0V2WC9O4PTNru2FQ==} + /@types/eslint@8.44.8: + resolution: {integrity: sha512-4K8GavROwhrYl2QXDXm0Rv9epkA8GBFu0EI+XrrnnuCl7u8CWBRusX7fXJfanhZTDWSAL24gDI/UqXyUM0Injw==} dependencies: '@types/estree': 1.0.5 '@types/json-schema': 7.0.15 @@ -342,7 +332,7 @@ packages: /@types/express-serve-static-core@4.17.41: resolution: {integrity: sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==} dependencies: - '@types/node': 20.8.10 + '@types/node': 20.10.3 '@types/qs': 6.9.10 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 @@ -360,7 +350,7 @@ packages: /@types/hoist-non-react-statics@3.3.5: resolution: {integrity: sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==} dependencies: - '@types/react': 18.2.36 + '@types/react': 18.2.42 hoist-non-react-statics: 3.3.2 dev: true @@ -371,7 +361,7 @@ packages: /@types/http-proxy@1.17.14: resolution: {integrity: sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==} dependencies: - '@types/node': 20.8.10 + '@types/node': 20.10.3 dev: true /@types/js-cookie@3.0.6: @@ -382,22 +372,22 @@ packages: resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} dev: true - /@types/mime@1.3.4: - resolution: {integrity: sha512-1Gjee59G25MrQGk8bsNvC6fxNiRgUlGn2wlhGf95a59DrprnnHk80FIMMFG9XHMdrfsuA119ht06QPDXA1Z7tw==} + /@types/mime@1.3.5: + resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} dev: true - /@types/mime@3.0.3: - resolution: {integrity: sha512-i8MBln35l856k5iOhKk2XJ4SeAWg75mLIpZB4v6imOagKL6twsukBZGDMNhdOVk7yRFTMPpfILocMos59Q1otQ==} + /@types/mime@3.0.4: + resolution: {integrity: sha512-iJt33IQnVRkqeqC7PzBHPTC6fDlRNRW8vjrgqtScAhrmMwe8c4Eo7+fUGTa+XdWrpEgpyKWMYmi2dIwMAYRzPw==} dev: true - /@types/node-forge@1.3.9: - resolution: {integrity: sha512-meK88cx/sTalPSLSoCzkiUB4VPIFHmxtXm5FaaqRDqBX2i/Sy8bJ4odsan0b20RBjPh06dAQ+OTTdnyQyhJZyQ==} + /@types/node-forge@1.3.10: + resolution: {integrity: sha512-y6PJDYN4xYBxwd22l+OVH35N+1fCYWiuC3aiP2SlXVE6Lo7SS+rSx9r89hLxrP4pn6n1lBGhHJ12pj3F3Mpttw==} dependencies: - '@types/node': 20.8.10 + '@types/node': 20.10.3 dev: true - /@types/node@20.8.10: - resolution: {integrity: sha512-TlgT8JntpcbmKUFzjhsyhGfP2fsiz1Mv56im6enJ905xG1DAYesxJaeSbGqQmAw8OWPdhyJGhGSQGKRNJ45u9w==} + /@types/node@20.10.3: + resolution: {integrity: sha512-XJavIpZqiXID5Yxnxv3RUDKTN5b81ddNC3ecsA0SoFXz/QU8OGBwZGMomiq0zw+uuqbL/krztv/DINAQ/EV4gg==} dependencies: undici-types: 5.26.5 dev: true @@ -406,8 +396,8 @@ packages: resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} dev: true - /@types/prop-types@15.7.10: - resolution: {integrity: sha512-mxSnDQxPqsZxmeShFH+uwQ4kO4gcJcGahjjMFeLbKE95IAZiiZyiEepGZjtXJ7hN/yfu0bu9xN2ajcU0JcxX6A==} + /@types/prop-types@15.7.11: + resolution: {integrity: sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==} dev: true /@types/qs@6.9.10: @@ -418,17 +408,17 @@ packages: resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} dev: true - /@types/react-dom@18.2.14: - resolution: {integrity: sha512-V835xgdSVmyQmI1KLV2BEIUgqEuinxp9O4G6g3FqO/SqLac049E53aysv0oEFD2kHfejeKU+ZqL2bcFWj9gLAQ==} + /@types/react-dom@18.2.17: + resolution: {integrity: sha512-rvrT/M7Df5eykWFxn6MYt5Pem/Dbyc1N8Y0S9Mrkw2WFCRiqUgw9P7ul2NpwsXCSM1DVdENzdG9J5SreqfAIWg==} dependencies: - '@types/react': 18.2.36 + '@types/react': 18.2.42 dev: true - /@types/react@18.2.36: - resolution: {integrity: sha512-o9XFsHYLLZ4+sb9CWUYwHqFVoG61SesydF353vFMMsQziiyRu8np4n2OYMUSDZ8XuImxDr9c5tR7gidlH29Vnw==} + /@types/react@18.2.42: + resolution: {integrity: sha512-c1zEr96MjakLYus/wPnuWDo1/zErfdU9rNsIGmE+NV71nx88FG9Ttgo5dqorXTu/LImX2f63WBP986gJkMPNbA==} dependencies: - '@types/prop-types': 15.7.10 - '@types/scheduler': 0.16.6 + '@types/prop-types': 15.7.11 + '@types/scheduler': 0.16.8 csstype: 3.1.2 dev: true @@ -436,15 +426,15 @@ packages: resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==} dev: true - /@types/scheduler@0.16.6: - resolution: {integrity: sha512-Vlktnchmkylvc9SnwwwozTv04L/e1NykF5vgoQ0XTmI8DD+wxfjQuHuvHS3p0r2jz2x2ghPs2h1FVeDirIteWA==} + /@types/scheduler@0.16.8: + resolution: {integrity: sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==} dev: true /@types/send@0.17.4: resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} dependencies: - '@types/mime': 1.3.4 - '@types/node': 20.8.10 + '@types/mime': 1.3.5 + '@types/node': 20.10.3 dev: true /@types/serve-index@1.9.4: @@ -457,36 +447,36 @@ packages: resolution: {integrity: sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==} dependencies: '@types/http-errors': 2.0.4 - '@types/mime': 3.0.3 - '@types/node': 20.8.10 + '@types/mime': 3.0.4 + '@types/node': 20.10.3 dev: true - /@types/sockjs@0.3.35: - resolution: {integrity: sha512-tIF57KB+ZvOBpAQwSaACfEu7htponHXaFzP7RfKYgsOS0NoYnn+9+jzp7bbq4fWerizI3dTB4NfAZoyeQKWJLw==} + /@types/sockjs@0.3.36: + resolution: {integrity: sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==} dependencies: - '@types/node': 20.8.10 + '@types/node': 20.10.3 dev: true - /@types/styled-components@5.1.29: - resolution: {integrity: sha512-5h/ah9PAblggQ6Laa4peplT4iY5ddA8qM1LMD4HzwToUWs3hftfy0fayeRgbtH1JZUdw5CCaowmz7Lnb8SjIxQ==} + /@types/styled-components@5.1.34: + resolution: {integrity: sha512-mmiVvwpYklFIv9E8qfxuPyIt/OuyIrn6gMOAMOFUO3WJfSrSE+sGUoa4PiZj77Ut7bKZpaa6o1fBKS/4TOEvnA==} dependencies: '@types/hoist-non-react-statics': 3.3.5 - '@types/react': 18.2.36 + '@types/react': 18.2.42 csstype: 3.1.2 dev: true - /@types/stylis@4.2.2: - resolution: {integrity: sha512-Rm17MsTpQQP5Jq4BF7CdrxJsDufoiL/q5IbJZYZmOZAJALyijgF7BzLgobXUqraNcQdqFYLYGeglDp6QzaxPpg==} + /@types/stylis@4.2.4: + resolution: {integrity: sha512-36ZrGJ8fgtBr6nwNnuJ9jXIj+bn/pF6UoqmrQT7+Y99+tFFeHHsoR54+194dHdyhPjgbeoNz3Qru0oRt0l6ASQ==} dev: true - /@types/webpack-env@1.18.3: - resolution: {integrity: sha512-v4CH6FLBCftYGFAswDhzFLjKgucXsOkIf5Mzl8ZZhEtC6oye9whFInNPKszNB9AvX7JEZMtpXxWctih6addP+Q==} + /@types/webpack-env@1.18.4: + resolution: {integrity: sha512-I6e+9+HtWADAWeeJWDFQtdk4EVSAbj6Rtz4q8fJ7mSr1M0jzlFcs8/HZ+Xb5SHzVm1dxH7aUiI+A8kA8Gcrm0A==} dev: true - /@types/ws@8.5.8: - resolution: {integrity: sha512-flUksGIQCnJd6sZ1l5dqCEG/ksaoAg/eUwiLAGTJQcfgvZJKF++Ta4bJA6A5aPSJmsr+xlseHn4KLgVlNnvPTg==} + /@types/ws@8.5.10: + resolution: {integrity: sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==} dependencies: - '@types/node': 20.8.10 + '@types/node': 20.10.3 dev: true /@webassemblyjs/ast@1.11.6: @@ -602,7 +592,7 @@ packages: webpack: 5.x.x webpack-cli: 5.x.x dependencies: - webpack: 5.89.0(@swc/core@1.3.96)(webpack-cli@5.1.4) + webpack: 5.89.0(@swc/core@1.3.100)(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack-dev-server@4.15.1)(webpack@5.89.0) dev: true @@ -613,7 +603,7 @@ packages: webpack: 5.x.x webpack-cli: 5.x.x dependencies: - webpack: 5.89.0(@swc/core@1.3.96)(webpack-cli@5.1.4) + webpack: 5.89.0(@swc/core@1.3.100)(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack-dev-server@4.15.1)(webpack@5.89.0) dev: true @@ -628,7 +618,7 @@ packages: webpack-dev-server: optional: true dependencies: - webpack: 5.89.0(@swc/core@1.3.96)(webpack-cli@5.1.4) + webpack: 5.89.0(@swc/core@1.3.100)(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack-dev-server@4.15.1)(webpack@5.89.0) webpack-dev-server: 4.15.1(webpack-cli@5.1.4)(webpack@5.89.0) dev: true @@ -838,15 +828,15 @@ packages: fill-range: 7.0.1 dev: true - /browserslist@4.22.1: - resolution: {integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==} + /browserslist@4.22.2: + resolution: {integrity: sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001561 - electron-to-chromium: 1.4.577 - node-releases: 2.0.13 - update-browserslist-db: 1.0.13(browserslist@4.22.1) + caniuse-lite: 1.0.30001566 + electron-to-chromium: 1.4.605 + node-releases: 2.0.14 + update-browserslist-db: 1.0.13(browserslist@4.22.2) dev: true /buffer-from@1.1.2: @@ -880,8 +870,8 @@ packages: resolution: {integrity: sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==} dev: true - /caniuse-lite@1.0.30001561: - resolution: {integrity: sha512-NTt0DNoKe958Q0BE0j0c1V9jbUzhBxHIEJy7asmGrpE0yG63KTV7PLHPnK2E1O9RsQrQ081I3NLuXGS6zht3cw==} + /caniuse-lite@1.0.30001566: + resolution: {integrity: sha512-ggIhCsTxmITBAMmK8yZjEhCO5/47jKXPu6Dha/wuCS4JePVL+3uiDEBuhu2aIoT+bqTOR8L76Ip1ARL9xYsEJA==} dev: true /caseless@0.12.0: @@ -1182,8 +1172,8 @@ packages: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} dev: true - /electron-to-chromium@1.4.577: - resolution: {integrity: sha512-/5xHPH6f00SxhHw6052r+5S1xO7gHNc89hV7tqlvnStvKbSrDqc/u6AlwPvVWWNj+s4/KL6T6y8ih+nOY0qYNA==} + /electron-to-chromium@1.4.605: + resolution: {integrity: sha512-V52j+P5z6cdRqTjPR/bYNxx7ETCHIkm5VIGuyCy3CMrfSnbEpIlLnk5oHmZo7gYvDfh2TfHeanB6rawyQ23ktg==} dev: true /encodeurl@1.0.2: @@ -1211,8 +1201,8 @@ packages: is-arrayish: 0.2.1 dev: true - /es-module-lexer@1.3.1: - resolution: {integrity: sha512-JUFAyicQV9mXc3YRxPnDlrfBKpqt6hUYzz9/boprUJHs4e4KVr3XwOF70doO6gwXUor6EWZJAyWAfKki84t20Q==} + /es-module-lexer@1.4.1: + resolution: {integrity: sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==} dev: true /escalade@3.1.1: @@ -1407,14 +1397,14 @@ packages: resolution: {integrity: sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==} dev: true - /fork-ts-checker-webpack-plugin@8.0.0(typescript@5.2.2)(webpack@5.89.0): + /fork-ts-checker-webpack-plugin@8.0.0(typescript@5.3.2)(webpack@5.89.0): resolution: {integrity: sha512-mX3qW3idpueT2klaQXBzrIM/pHw+T0B/V9KHEvNrqijTq9NFnMZU6oreVxDYcf33P8a5cW+67PjodNHthGnNVg==} engines: {node: '>=12.13.0', yarn: '>=1.0.0'} peerDependencies: typescript: '>3.6.0' webpack: ^5.11.0 dependencies: - '@babel/code-frame': 7.22.13 + '@babel/code-frame': 7.23.5 chalk: 4.1.2 chokidar: 3.5.3 cosmiconfig: 7.1.0 @@ -1426,8 +1416,8 @@ packages: schema-utils: 3.3.0 semver: 7.5.4 tapable: 2.2.1 - typescript: 5.2.2 - webpack: 5.89.0(@swc/core@1.3.96)(webpack-cli@5.1.4) + typescript: 5.3.2 + webpack: 5.89.0(@swc/core@1.3.100)(webpack-cli@5.1.4) dev: true /form-data@2.3.3: @@ -1816,7 +1806,7 @@ packages: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 20.8.10 + '@types/node': 20.10.3 merge-stream: 2.0.0 supports-color: 8.1.1 dev: true @@ -2048,8 +2038,8 @@ packages: engines: {node: '>= 6.13.0'} dev: true - /node-releases@2.0.13: - resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} + /node-releases@2.0.14: + resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} dev: true /normalize-path@3.0.0: @@ -2155,7 +2145,7 @@ packages: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} dependencies: - '@babel/code-frame': 7.22.13 + '@babel/code-frame': 7.23.5 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -2230,8 +2220,8 @@ packages: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} dev: true - /postcss@8.4.31: - resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} + /postcss@8.4.32: + resolution: {integrity: sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==} engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.7 @@ -2485,7 +2475,7 @@ packages: resolution: {integrity: sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==} engines: {node: '>=10'} dependencies: - '@types/node-forge': 1.3.9 + '@types/node-forge': 1.3.10 node-forge: 1.3.1 dev: true @@ -2713,8 +2703,8 @@ packages: engines: {node: '>=6'} dev: true - /styled-components@6.1.0(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-VWNfYYBuXzuLS/QYEeoPgMErP26WL+dX9//rEh80B2mmlS1yRxRxuL5eax4m6ybYEUoHWlTy2XOU32767mlMkg==} + /styled-components@6.1.1(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-cpZZP5RrKRIClBW5Eby4JM1wElLVP4NQrJbJ0h10TidTyJf4SIIwa3zLXOoPb4gJi8MsJ8mjq5mu2IrEhZIAcQ==} engines: {node: '>= 16'} peerDependencies: react: '>= 16.8.0' @@ -2722,10 +2712,10 @@ packages: dependencies: '@emotion/is-prop-valid': 1.2.1 '@emotion/unitless': 0.8.1 - '@types/stylis': 4.2.2 + '@types/stylis': 4.2.4 css-to-react-native: 3.2.0 csstype: 3.1.2 - postcss: 8.4.31 + postcss: 8.4.32 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) shallowequal: 1.1.0 @@ -2763,14 +2753,14 @@ packages: engines: {node: '>= 0.4'} dev: true - /swc-loader@0.2.3(@swc/core@1.3.96)(webpack@5.89.0): + /swc-loader@0.2.3(@swc/core@1.3.100)(webpack@5.89.0): resolution: {integrity: sha512-D1p6XXURfSPleZZA/Lipb3A8pZ17fP4NObZvFCDjK/OKljroqDpPmsBdTraWhVBqUNpcWBQY1imWdoPScRlQ7A==} peerDependencies: '@swc/core': ^1.2.147 webpack: '>=2' dependencies: - '@swc/core': 1.3.96 - webpack: 5.89.0(@swc/core@1.3.96)(webpack-cli@5.1.4) + '@swc/core': 1.3.100 + webpack: 5.89.0(@swc/core@1.3.100)(webpack-cli@5.1.4) dev: true /tapable@2.2.1: @@ -2778,7 +2768,7 @@ packages: engines: {node: '>=6'} dev: true - /terser-webpack-plugin@5.3.9(@swc/core@1.3.96)(webpack@5.89.0): + /terser-webpack-plugin@5.3.9(@swc/core@1.3.100)(webpack@5.89.0): resolution: {integrity: sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==} engines: {node: '>= 10.13.0'} peerDependencies: @@ -2795,16 +2785,16 @@ packages: optional: true dependencies: '@jridgewell/trace-mapping': 0.3.20 - '@swc/core': 1.3.96 + '@swc/core': 1.3.100 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.1 - terser: 5.24.0 - webpack: 5.89.0(@swc/core@1.3.96)(webpack-cli@5.1.4) + terser: 5.25.0 + webpack: 5.89.0(@swc/core@1.3.100)(webpack-cli@5.1.4) dev: true - /terser@5.24.0: - resolution: {integrity: sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==} + /terser@5.25.0: + resolution: {integrity: sha512-we0I9SIsfvNUMP77zC9HG+MylwYYsGFSBG8qm+13oud2Yh+O104y614FRbyjpxys16jZwot72Fpi827YvGzuqg==} engines: {node: '>=10'} hasBin: true dependencies: @@ -2860,8 +2850,8 @@ packages: mime-types: 2.1.35 dev: true - /typescript@5.2.2: - resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==} + /typescript@5.3.2: + resolution: {integrity: sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==} engines: {node: '>=14.17'} hasBin: true dev: true @@ -2880,13 +2870,13 @@ packages: engines: {node: '>= 0.8'} dev: true - /update-browserslist-db@1.0.13(browserslist@4.22.1): + /update-browserslist-db@1.0.13(browserslist@4.22.2): resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' dependencies: - browserslist: 4.22.1 + browserslist: 4.22.2 escalade: 3.1.1 picocolors: 1.0.0 dev: true @@ -2990,7 +2980,7 @@ packages: import-local: 3.1.0 interpret: 3.1.1 rechoir: 0.8.0 - webpack: 5.89.0(@swc/core@1.3.96)(webpack-cli@5.1.4) + webpack: 5.89.0(@swc/core@1.3.100)(webpack-cli@5.1.4) webpack-dev-server: 4.15.1(webpack-cli@5.1.4)(webpack@5.89.0) webpack-merge: 5.10.0 dev: true @@ -3006,7 +2996,7 @@ packages: mime-types: 2.1.35 range-parser: 1.2.1 schema-utils: 4.2.0 - webpack: 5.89.0(@swc/core@1.3.96)(webpack-cli@5.1.4) + webpack: 5.89.0(@swc/core@1.3.100)(webpack-cli@5.1.4) dev: true /webpack-dev-server@4.15.1(webpack-cli@5.1.4)(webpack@5.89.0): @@ -3023,12 +3013,12 @@ packages: optional: true dependencies: '@types/bonjour': 3.5.13 - '@types/connect-history-api-fallback': 1.5.3 + '@types/connect-history-api-fallback': 1.5.4 '@types/express': 4.17.21 '@types/serve-index': 1.9.4 '@types/serve-static': 1.15.5 - '@types/sockjs': 0.3.35 - '@types/ws': 8.5.8 + '@types/sockjs': 0.3.36 + '@types/ws': 8.5.10 ansi-html-community: 0.0.8 bonjour-service: 1.1.1 chokidar: 3.5.3 @@ -3050,7 +3040,7 @@ packages: serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - webpack: 5.89.0(@swc/core@1.3.96)(webpack-cli@5.1.4) + webpack: 5.89.0(@swc/core@1.3.100)(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack-dev-server@4.15.1)(webpack@5.89.0) webpack-dev-middleware: 5.3.3(webpack@5.89.0) ws: 8.14.2 @@ -3094,11 +3084,11 @@ packages: request: 2.88.2 schema-utils: 1.0.0 ssri: 8.0.1 - webpack: 5.89.0(@swc/core@1.3.96)(webpack-cli@5.1.4) + webpack: 5.89.0(@swc/core@1.3.100)(webpack-cli@5.1.4) webpack-sources: 1.4.3 dev: true - /webpack@5.89.0(@swc/core@1.3.96)(webpack-cli@5.1.4): + /webpack@5.89.0(@swc/core@1.3.100)(webpack-cli@5.1.4): resolution: {integrity: sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==} engines: {node: '>=10.13.0'} hasBin: true @@ -3115,10 +3105,10 @@ packages: '@webassemblyjs/wasm-parser': 1.11.6 acorn: 8.11.2 acorn-import-assertions: 1.9.0(acorn@8.11.2) - browserslist: 4.22.1 + browserslist: 4.22.2 chrome-trace-event: 1.0.3 enhanced-resolve: 5.15.0 - es-module-lexer: 1.3.1 + es-module-lexer: 1.4.1 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -3129,7 +3119,7 @@ packages: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.9(@swc/core@1.3.96)(webpack@5.89.0) + terser-webpack-plugin: 5.3.9(@swc/core@1.3.100)(webpack@5.89.0) watchpack: 2.4.0 webpack-cli: 5.1.4(webpack-dev-server@4.15.1)(webpack@5.89.0) webpack-sources: 3.2.3 diff --git a/src/@types/userscript.d.ts b/src/@types/userscript.d.ts index a6f37a8..dde1514 100644 --- a/src/@types/userscript.d.ts +++ b/src/@types/userscript.d.ts @@ -29,6 +29,12 @@ interface CustomWindow extends Window { getPageMark(): void; + makePageMark(): void; + + updateMark(): void; + + updateMarkEpis(): void; + get_ad_banner(): void; up_down_btn_view(option: "on" | "off"): void; @@ -402,6 +408,7 @@ declare interface VMScriptGMXHRDetails { onprogress?: (resp: VMScriptResponseObject) => void; onreadystatechange?: (resp: VMScriptResponseObject) => void; ontimeout?: (resp: VMScriptResponseObject) => void; + cookie?: string; } /** Makes a request like XMLHttpRequest, with some special capabilities, not restricted by same-origin policy. */ diff --git a/src/header.json b/src/header.json index 1b4c8ae..49779f8 100644 --- a/src/header.json +++ b/src/header.json @@ -1,21 +1,21 @@ { - "author": "green1052", - "name": "BetterNovelpia", - "namespace": "BetterNovelpia", - "match": "https://novelpia.com/*", - "description": "노벨피아를 더 좋게 바꿔줍니다!", - "rut-at": "document-start", - "noframes": true, - "grant": [ - "GM_getValue", - "GM_setValue", - "GM_deleteValue", - "GM_listValues", - "GM_addStyle", - "GM_setClipboard", - "GM_xmlhttpRequest", - "unsafeWindow" - ], - "homepageURL": "https://github.com/green1052/betternovelpia", - "supportURL": "https://github.com/green1052/betternovelpia/issues" + "author": "green1052", + "name": "BetterNovelpia", + "namespace": "BetterNovelpia", + "match": "https://novelpia.com/*", + "description": "노벨피아를 더 좋게 바꿔줍니다!", + "rut-at": "document-start", + "noframes": true, + "grant": [ + "GM_getValue", + "GM_setValue", + "GM_deleteValue", + "GM_listValues", + "GM_addStyle", + "GM_setClipboard", + "GM_xmlhttpRequest", + "unsafeWindow" + ], + "homepageURL": "https://github.com/green1052/betternovelpia", + "supportURL": "https://github.com/green1052/betternovelpia/issues" } \ No newline at end of file diff --git a/src/module/Bookmark.tsx b/src/module/Bookmark.tsx index 002d36f..156d315 100644 --- a/src/module/Bookmark.tsx +++ b/src/module/Bookmark.tsx @@ -316,8 +316,16 @@ function Viewer() { askAlert = false; } - if (scrollTop !== -1) { - useLayoutEffect(() => { + useLayoutEffect(() => { + const noop = () => { + }; + + unsafeWindow.getPageMark = noop; + unsafeWindow.makePageMark = noop; + unsafeWindow.updateMark = noop; + unsafeWindow.updateMarkEpis = noop; + + if (scrollTop !== -1) { novelLoaded(() => { setTimeout(() => { if (askAlert && !confirm("북마크로 이동하시겠습니까?")) return; @@ -325,16 +333,11 @@ function Viewer() { document.querySelector(NOVEL_BOX)?.scroll(0, scrollTop); }, 500); }); - }, []); - } - - if (GM_getValue("PreviousBookmark", false)) { - useLayoutEffect(() => { - unsafeWindow.getPageMark = () => { - }; + } + if (GM_getValue("PreviousBookmark", false)) { const url = location.href; - let scrollTop = -1; + scrollTop = -1; $(NOVEL_BOX).on("scroll", (e) => scrollTop = e.currentTarget.scrollTop); @@ -347,8 +350,9 @@ function Viewer() { setPreviousBookmark(previousBookmark1); GM_setValue("previousBookmark", previousBookmark1); }); - }, []); - } + + } + }, []); const click = useCallback(() => { if (location.hash !== "") diff --git a/src/module/Preload.ts b/src/module/Preload.ts index 7b840bc..345a98e 100644 --- a/src/module/Preload.ts +++ b/src/module/Preload.ts @@ -22,11 +22,7 @@ export default { const PreLoadEpisodeListEnable = GM_getValue("PreLoadEpisodeList", false); if (PreLoadCommentEnable) { - const code = unsafeWindow.episode_list_viewer - .toString() - .replace(/^.*animate.*$/mig, ""); - - novelLoaded(() => eval(code)); + novelLoaded(() => unsafeWindow.episode_list_viewer()); } if (PreLoadEpisodeListEnable) { diff --git a/src/module/ViewNovelToCookie.ts b/src/module/ViewNovelToCookie.ts index d1641d8..048a1ff 100644 --- a/src/module/ViewNovelToCookie.ts +++ b/src/module/ViewNovelToCookie.ts @@ -34,7 +34,7 @@ export default { async start() { const blocked = document.querySelector("#payment_app"); - if (!blocked) + if (!blocked || blocked.style.display === "none") return; const loginKey = GM_getValue("ViewNovelToCookie_LOGINKEY", "") as string; @@ -43,16 +43,18 @@ export default { if (!loginKey || !userKey) return; - const oldLoginKey = Cookies.get("LOGINKEY") ?? ""; - const oldUserKey = Cookies.get("USERKEY") ?? ""; + // const oldLoginKey = Cookies.get("LOGINKEY") ?? ""; + // const oldUserKey = Cookies.get("USERKEY") ?? ""; + // + // resetCookie("LOGINKEY", loginKey); + // resetCookie("USERKEY", userKey); - resetCookie("LOGINKEY", loginKey); - resetCookie("USERKEY", userKey); + // const data = await viewerData(location.pathname.substring(8), () => { + // resetCookie("LOGINKEY", oldLoginKey); + // resetCookie("USERKEY", oldUserKey); + // }); - const data = await viewerData(location.pathname.substring(8), () => { - resetCookie("LOGINKEY", oldLoginKey); - resetCookie("USERKEY", oldUserKey); - }); + const data = await viewerData(location.pathname.substring(8), `LOGINKEY=${loginKey}; USERKEY=${userKey};`); if (data.length <= 0) return; diff --git a/src/util/FakeViewer.ts b/src/util/FakeViewer.ts index f053d4b..a3fe357 100644 --- a/src/util/FakeViewer.ts +++ b/src/util/FakeViewer.ts @@ -10,19 +10,39 @@ export function fakeViewer(blocked: HTMLElement, novelData: { text: string, size $blocked.remove(); + $("#list_box").detach().appendTo("#viewer_no_drag"); + unsafeWindow.novel_data = novelData; setTimeout(() => { unsafeWindow.data_load = 1; unsafeWindow.novel_drawing(unsafeWindow.novel_data); - const next = $(".menu-next-item").attr("onclick"); + const $episodeListViewer = $("#episode_list_viewer") + + if ($episodeListViewer.children.length === 0) { + unsafeWindow.episode_list_viewer(); + } + + const next = $(".menu-next-item") + + setTimeout(() => { + const rChapter = $(".menu-top-tag").text(); + const chapter = unsafeWindow.$(`.ep_style5:has(span:contains("${rChapter}"))`).attr("onclick") + + if (chapter) { + next.children("span").removeClass("epi-menu-none") + next.children("img").attr("src", "//images.novelpia.com/img/new/viewer/navbar/next.svg") + next.attr("onclick", chapter) + } + + $(NOVEL_DRAWING) + .children("br:last-child") + .before(next.attr("onclick") + ? `
다음화 보기
` + : `
여기까지가 등록된 마지막 회차입니다
` + ); + }, 5000); - $(NOVEL_DRAWING) - .children("br:last-child") - .before(next - ? `
다음화 보기
` - : `
여기까지가 등록된 마지막 회차입니다
` - ); }, 10); } diff --git a/src/util/ViewerData.ts b/src/util/ViewerData.ts index f5a5ebc..3e99041 100644 --- a/src/util/ViewerData.ts +++ b/src/util/ViewerData.ts @@ -1,22 +1,45 @@ -import ky from "ky"; +export async function viewerData(url: string, cookie: string): Promise { + return new Promise((resolve, reject) => { + GM_xmlhttpRequest({ + method: "POST", + url: `/proc/viewer_data/${url}`, + data: "size=14", + headers: { + "Cookie": cookie, + }, + cookie: cookie, + responseType: "json", + anonymous: true, + onload: ({response}) => { + resolve((response as { c: string, s: { text: string }[] }).s.map(({text}) => { + return { + text: text, + size: 11, + align: "left" + }; + })) + }, + onerror: reject, + }) + }); -export async function viewerData(url: string, code?: () => void): Promise { - try { - const response = await ky.post(`/proc/viewer_data/${url}`, { - timeout: 5000, - searchParams: { - size: "14" - } - }).json<{ c: string, s: { text: string }[] }>(); - return response.s.map(({text}) => { - return { - text: text, - size: 11, - align: "left" - }; - }); - } finally { - code?.(); - } + // try { + // const response = await ky.post(`/proc/viewer_data/${url}`, { + // timeout: 5000, + // searchParams: { + // size: "14" + // } + // }).json<{ c: string, s: { text: string }[] }>(); + // + // return response.s.map(({text}) => { + // return { + // text: text, + // size: 11, + // align: "left" + // }; + // }); + // } finally { + // code?.(); + // } }