mirror of
https://github.com/jellyfin/jellyfin-web.git
synced 2024-10-07 03:13:43 +00:00
Update tanstack query to v5
This commit is contained in:
parent
be891c3a98
commit
ac42b3a203
183
package-lock.json
generated
183
package-lock.json
generated
@ -24,8 +24,8 @@
|
|||||||
"@mui/material": "5.15.17",
|
"@mui/material": "5.15.17",
|
||||||
"@mui/x-data-grid": "6.19.11",
|
"@mui/x-data-grid": "6.19.11",
|
||||||
"@react-hook/resize-observer": "1.2.6",
|
"@react-hook/resize-observer": "1.2.6",
|
||||||
"@tanstack/react-query": "4.36.1",
|
"@tanstack/react-query": "5.40.0",
|
||||||
"@tanstack/react-query-devtools": "4.36.1",
|
"@tanstack/react-query-devtools": "5.40.0",
|
||||||
"@types/react-lazy-load-image-component": "1.6.4",
|
"@types/react-lazy-load-image-component": "1.6.4",
|
||||||
"abortcontroller-polyfill": "1.7.5",
|
"abortcontroller-polyfill": "1.7.5",
|
||||||
"blurhash": "2.0.5",
|
"blurhash": "2.0.5",
|
||||||
@ -4619,73 +4619,53 @@
|
|||||||
"url": "https://github.com/sponsors/sindresorhus"
|
"url": "https://github.com/sponsors/sindresorhus"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@tanstack/match-sorter-utils": {
|
"node_modules/@tanstack/query-core": {
|
||||||
"version": "8.8.4",
|
"version": "5.40.0",
|
||||||
"resolved": "https://registry.npmjs.org/@tanstack/match-sorter-utils/-/match-sorter-utils-8.8.4.tgz",
|
"resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.40.0.tgz",
|
||||||
"integrity": "sha512-rKH8LjZiszWEvmi01NR72QWZ8m4xmXre0OOwlRGnjU01Eqz/QnN+cqpty2PJ0efHblq09+KilvyR7lsbzmXVEw==",
|
"integrity": "sha512-eD8K8jsOIq0Z5u/QbvOmfvKKE/XC39jA7yv4hgpl/1SRiU+J8QCIwgM/mEHuunQsL87dcvnHqSVLmf9pD4CiaA==",
|
||||||
"dependencies": {
|
|
||||||
"remove-accents": "0.4.2"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=12"
|
|
||||||
},
|
|
||||||
"funding": {
|
"funding": {
|
||||||
"type": "github",
|
"type": "github",
|
||||||
"url": "https://github.com/sponsors/kentcdodds"
|
"url": "https://github.com/sponsors/tannerlinsley"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@tanstack/query-core": {
|
"node_modules/@tanstack/query-devtools": {
|
||||||
"version": "4.36.1",
|
"version": "5.37.1",
|
||||||
"resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-4.36.1.tgz",
|
"resolved": "https://registry.npmjs.org/@tanstack/query-devtools/-/query-devtools-5.37.1.tgz",
|
||||||
"integrity": "sha512-DJSilV5+ytBP1FbFcEJovv4rnnm/CokuVvrBEtW/Va9DvuJ3HksbXUJEpI0aV1KtuL4ZoO9AVE6PyNLzF7tLeA==",
|
"integrity": "sha512-XcG4IIHIv0YQKrexTqo2zogQWR1Sz672tX2KsfE9kzB+9zhx44vRKH5si4WDILE1PIWQpStFs/NnrDQrBAUQpg==",
|
||||||
"funding": {
|
"funding": {
|
||||||
"type": "github",
|
"type": "github",
|
||||||
"url": "https://github.com/sponsors/tannerlinsley"
|
"url": "https://github.com/sponsors/tannerlinsley"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@tanstack/react-query": {
|
"node_modules/@tanstack/react-query": {
|
||||||
"version": "4.36.1",
|
"version": "5.40.0",
|
||||||
"resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-4.36.1.tgz",
|
"resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.40.0.tgz",
|
||||||
"integrity": "sha512-y7ySVHFyyQblPl3J3eQBWpXZkliroki3ARnBKsdJchlgt7yJLRDUcf4B8soufgiYt3pEQIkBWBx1N9/ZPIeUWw==",
|
"integrity": "sha512-iv/W0Axc4aXhFzkrByToE1JQqayxTPNotCoSCnarR/A1vDIHaoKpg7FTIfP3Ev2mbKn1yrxq0ZKYUdLEJxs6Tg==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@tanstack/query-core": "4.36.1",
|
"@tanstack/query-core": "5.40.0"
|
||||||
"use-sync-external-store": "^1.2.0"
|
|
||||||
},
|
},
|
||||||
"funding": {
|
"funding": {
|
||||||
"type": "github",
|
"type": "github",
|
||||||
"url": "https://github.com/sponsors/tannerlinsley"
|
"url": "https://github.com/sponsors/tannerlinsley"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"react": "^16.8.0 || ^17.0.0 || ^18.0.0",
|
"react": "^18.0.0"
|
||||||
"react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0",
|
|
||||||
"react-native": "*"
|
|
||||||
},
|
|
||||||
"peerDependenciesMeta": {
|
|
||||||
"react-dom": {
|
|
||||||
"optional": true
|
|
||||||
},
|
|
||||||
"react-native": {
|
|
||||||
"optional": true
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@tanstack/react-query-devtools": {
|
"node_modules/@tanstack/react-query-devtools": {
|
||||||
"version": "4.36.1",
|
"version": "5.40.0",
|
||||||
"resolved": "https://registry.npmjs.org/@tanstack/react-query-devtools/-/react-query-devtools-4.36.1.tgz",
|
"resolved": "https://registry.npmjs.org/@tanstack/react-query-devtools/-/react-query-devtools-5.40.0.tgz",
|
||||||
"integrity": "sha512-WYku83CKP3OevnYSG8Y/QO9g0rT75v1om5IvcWUwiUZJ4LanYGLVCZ8TdFG5jfsq4Ej/lu2wwDAULEUnRIMBSw==",
|
"integrity": "sha512-JoQOQj/LKaHoHVMAh73R0pc4lIAHiZMV8L4DGHsTSvHcKi22LZmSC9aYBY9oMkqGpFtKmbspwrUIn55+czNSbA==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@tanstack/match-sorter-utils": "^8.7.0",
|
"@tanstack/query-devtools": "5.37.1"
|
||||||
"superjson": "^1.10.0",
|
|
||||||
"use-sync-external-store": "^1.2.0"
|
|
||||||
},
|
},
|
||||||
"funding": {
|
"funding": {
|
||||||
"type": "github",
|
"type": "github",
|
||||||
"url": "https://github.com/sponsors/tannerlinsley"
|
"url": "https://github.com/sponsors/tannerlinsley"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@tanstack/react-query": "^4.36.1",
|
"@tanstack/react-query": "^5.40.0",
|
||||||
"react": "^16.8.0 || ^17.0.0 || ^18.0.0",
|
"react": "^18 || ^19"
|
||||||
"react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@trysound/sax": {
|
"node_modules/@trysound/sax": {
|
||||||
@ -7423,20 +7403,6 @@
|
|||||||
"integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=",
|
"integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/copy-anything": {
|
|
||||||
"version": "3.0.5",
|
|
||||||
"resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz",
|
|
||||||
"integrity": "sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==",
|
|
||||||
"dependencies": {
|
|
||||||
"is-what": "^4.1.8"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=12.13"
|
|
||||||
},
|
|
||||||
"funding": {
|
|
||||||
"url": "https://github.com/sponsors/mesqueeb"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/copy-descriptor": {
|
"node_modules/copy-descriptor": {
|
||||||
"version": "0.1.1",
|
"version": "0.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
|
||||||
@ -12775,17 +12741,6 @@
|
|||||||
"url": "https://github.com/sponsors/ljharb"
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/is-what": {
|
|
||||||
"version": "4.1.13",
|
|
||||||
"resolved": "https://registry.npmjs.org/is-what/-/is-what-4.1.13.tgz",
|
|
||||||
"integrity": "sha512-Aoe8pT24sWzyoO0S2PTDyutGp9l7qYHyFtzYlC8hMLshyqV/minljBANT4f2hiS5OxnWvcKMiA5io+VaLMJ1oA==",
|
|
||||||
"engines": {
|
|
||||||
"node": ">=12.13"
|
|
||||||
},
|
|
||||||
"funding": {
|
|
||||||
"url": "https://github.com/sponsors/mesqueeb"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/is-whitespace-character": {
|
"node_modules/is-whitespace-character": {
|
||||||
"version": "1.0.4",
|
"version": "1.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz",
|
||||||
@ -17701,11 +17656,6 @@
|
|||||||
"url": "https://opencollective.com/unified"
|
"url": "https://opencollective.com/unified"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/remove-accents": {
|
|
||||||
"version": "0.4.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.2.tgz",
|
|
||||||
"integrity": "sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA=="
|
|
||||||
},
|
|
||||||
"node_modules/renderkid": {
|
"node_modules/renderkid": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz",
|
||||||
@ -21452,17 +21402,6 @@
|
|||||||
"node": ">=6"
|
"node": ">=6"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/superjson": {
|
|
||||||
"version": "1.12.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/superjson/-/superjson-1.12.3.tgz",
|
|
||||||
"integrity": "sha512-0j+U70KUtP8+roVPbwfqkyQI7lBt7ETnuA7KXbTDX3mCKiD/4fXs2ldKSMdt0MCfpTwiMxo20yFU3vu6ewETpQ==",
|
|
||||||
"dependencies": {
|
|
||||||
"copy-anything": "^3.0.2"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=10"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/supports-color": {
|
"node_modules/supports-color": {
|
||||||
"version": "5.5.0",
|
"version": "5.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
||||||
@ -22738,14 +22677,6 @@
|
|||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/use-sync-external-store": {
|
|
||||||
"version": "1.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz",
|
|
||||||
"integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==",
|
|
||||||
"peerDependencies": {
|
|
||||||
"react": "^16.8.0 || ^17.0.0 || ^18.0.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/usehooks-ts": {
|
"node_modules/usehooks-ts": {
|
||||||
"version": "3.1.0",
|
"version": "3.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/usehooks-ts/-/usehooks-ts-3.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/usehooks-ts/-/usehooks-ts-3.1.0.tgz",
|
||||||
@ -26898,36 +26829,30 @@
|
|||||||
"integrity": "sha512-rUV5WyJrJLoloD4NDN1V1+LDMDWOa4OTsT4yYJwQNpTU6FWxkxHpL7eu4w+DmiH8x/EAM1otkPE1+LaspIbplw==",
|
"integrity": "sha512-rUV5WyJrJLoloD4NDN1V1+LDMDWOa4OTsT4yYJwQNpTU6FWxkxHpL7eu4w+DmiH8x/EAM1otkPE1+LaspIbplw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@tanstack/match-sorter-utils": {
|
|
||||||
"version": "8.8.4",
|
|
||||||
"resolved": "https://registry.npmjs.org/@tanstack/match-sorter-utils/-/match-sorter-utils-8.8.4.tgz",
|
|
||||||
"integrity": "sha512-rKH8LjZiszWEvmi01NR72QWZ8m4xmXre0OOwlRGnjU01Eqz/QnN+cqpty2PJ0efHblq09+KilvyR7lsbzmXVEw==",
|
|
||||||
"requires": {
|
|
||||||
"remove-accents": "0.4.2"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"@tanstack/query-core": {
|
"@tanstack/query-core": {
|
||||||
"version": "4.36.1",
|
"version": "5.40.0",
|
||||||
"resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-4.36.1.tgz",
|
"resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.40.0.tgz",
|
||||||
"integrity": "sha512-DJSilV5+ytBP1FbFcEJovv4rnnm/CokuVvrBEtW/Va9DvuJ3HksbXUJEpI0aV1KtuL4ZoO9AVE6PyNLzF7tLeA=="
|
"integrity": "sha512-eD8K8jsOIq0Z5u/QbvOmfvKKE/XC39jA7yv4hgpl/1SRiU+J8QCIwgM/mEHuunQsL87dcvnHqSVLmf9pD4CiaA=="
|
||||||
|
},
|
||||||
|
"@tanstack/query-devtools": {
|
||||||
|
"version": "5.37.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/@tanstack/query-devtools/-/query-devtools-5.37.1.tgz",
|
||||||
|
"integrity": "sha512-XcG4IIHIv0YQKrexTqo2zogQWR1Sz672tX2KsfE9kzB+9zhx44vRKH5si4WDILE1PIWQpStFs/NnrDQrBAUQpg=="
|
||||||
},
|
},
|
||||||
"@tanstack/react-query": {
|
"@tanstack/react-query": {
|
||||||
"version": "4.36.1",
|
"version": "5.40.0",
|
||||||
"resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-4.36.1.tgz",
|
"resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.40.0.tgz",
|
||||||
"integrity": "sha512-y7ySVHFyyQblPl3J3eQBWpXZkliroki3ARnBKsdJchlgt7yJLRDUcf4B8soufgiYt3pEQIkBWBx1N9/ZPIeUWw==",
|
"integrity": "sha512-iv/W0Axc4aXhFzkrByToE1JQqayxTPNotCoSCnarR/A1vDIHaoKpg7FTIfP3Ev2mbKn1yrxq0ZKYUdLEJxs6Tg==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@tanstack/query-core": "4.36.1",
|
"@tanstack/query-core": "5.40.0"
|
||||||
"use-sync-external-store": "^1.2.0"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@tanstack/react-query-devtools": {
|
"@tanstack/react-query-devtools": {
|
||||||
"version": "4.36.1",
|
"version": "5.40.0",
|
||||||
"resolved": "https://registry.npmjs.org/@tanstack/react-query-devtools/-/react-query-devtools-4.36.1.tgz",
|
"resolved": "https://registry.npmjs.org/@tanstack/react-query-devtools/-/react-query-devtools-5.40.0.tgz",
|
||||||
"integrity": "sha512-WYku83CKP3OevnYSG8Y/QO9g0rT75v1om5IvcWUwiUZJ4LanYGLVCZ8TdFG5jfsq4Ej/lu2wwDAULEUnRIMBSw==",
|
"integrity": "sha512-JoQOQj/LKaHoHVMAh73R0pc4lIAHiZMV8L4DGHsTSvHcKi22LZmSC9aYBY9oMkqGpFtKmbspwrUIn55+czNSbA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@tanstack/match-sorter-utils": "^8.7.0",
|
"@tanstack/query-devtools": "5.37.1"
|
||||||
"superjson": "^1.10.0",
|
|
||||||
"use-sync-external-store": "^1.2.0"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@trysound/sax": {
|
"@trysound/sax": {
|
||||||
@ -29032,14 +28957,6 @@
|
|||||||
"integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=",
|
"integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"copy-anything": {
|
|
||||||
"version": "3.0.5",
|
|
||||||
"resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz",
|
|
||||||
"integrity": "sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==",
|
|
||||||
"requires": {
|
|
||||||
"is-what": "^4.1.8"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"copy-descriptor": {
|
"copy-descriptor": {
|
||||||
"version": "0.1.1",
|
"version": "0.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
|
||||||
@ -32872,11 +32789,6 @@
|
|||||||
"get-intrinsic": "^1.1.1"
|
"get-intrinsic": "^1.1.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"is-what": {
|
|
||||||
"version": "4.1.13",
|
|
||||||
"resolved": "https://registry.npmjs.org/is-what/-/is-what-4.1.13.tgz",
|
|
||||||
"integrity": "sha512-Aoe8pT24sWzyoO0S2PTDyutGp9l7qYHyFtzYlC8hMLshyqV/minljBANT4f2hiS5OxnWvcKMiA5io+VaLMJ1oA=="
|
|
||||||
},
|
|
||||||
"is-whitespace-character": {
|
"is-whitespace-character": {
|
||||||
"version": "1.0.4",
|
"version": "1.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz",
|
||||||
@ -36291,11 +36203,6 @@
|
|||||||
"mdast-util-to-markdown": "^0.6.0"
|
"mdast-util-to-markdown": "^0.6.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"remove-accents": {
|
|
||||||
"version": "0.4.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.2.tgz",
|
|
||||||
"integrity": "sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA=="
|
|
||||||
},
|
|
||||||
"renderkid": {
|
"renderkid": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz",
|
||||||
@ -39162,14 +39069,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"superjson": {
|
|
||||||
"version": "1.12.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/superjson/-/superjson-1.12.3.tgz",
|
|
||||||
"integrity": "sha512-0j+U70KUtP8+roVPbwfqkyQI7lBt7ETnuA7KXbTDX3mCKiD/4fXs2ldKSMdt0MCfpTwiMxo20yFU3vu6ewETpQ==",
|
|
||||||
"requires": {
|
|
||||||
"copy-anything": "^3.0.2"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"supports-color": {
|
"supports-color": {
|
||||||
"version": "5.5.0",
|
"version": "5.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
||||||
@ -40085,12 +39984,6 @@
|
|||||||
"integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
|
"integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"use-sync-external-store": {
|
|
||||||
"version": "1.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz",
|
|
||||||
"integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==",
|
|
||||||
"requires": {}
|
|
||||||
},
|
|
||||||
"usehooks-ts": {
|
"usehooks-ts": {
|
||||||
"version": "3.1.0",
|
"version": "3.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/usehooks-ts/-/usehooks-ts-3.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/usehooks-ts/-/usehooks-ts-3.1.0.tgz",
|
||||||
|
@ -85,8 +85,8 @@
|
|||||||
"@mui/material": "5.15.17",
|
"@mui/material": "5.15.17",
|
||||||
"@mui/x-data-grid": "6.19.11",
|
"@mui/x-data-grid": "6.19.11",
|
||||||
"@react-hook/resize-observer": "1.2.6",
|
"@react-hook/resize-observer": "1.2.6",
|
||||||
"@tanstack/react-query": "4.36.1",
|
"@tanstack/react-query": "5.40.0",
|
||||||
"@tanstack/react-query-devtools": "4.36.1",
|
"@tanstack/react-query-devtools": "5.40.0",
|
||||||
"@types/react-lazy-load-image-component": "1.6.4",
|
"@types/react-lazy-load-image-component": "1.6.4",
|
||||||
"abortcontroller-polyfill": "1.7.5",
|
"abortcontroller-polyfill": "1.7.5",
|
||||||
"blurhash": "2.0.5",
|
"blurhash": "2.0.5",
|
||||||
|
@ -72,7 +72,7 @@ const ItemsView: FC<ItemsViewProps> = ({
|
|||||||
const {
|
const {
|
||||||
isLoading,
|
isLoading,
|
||||||
data: itemsResult,
|
data: itemsResult,
|
||||||
isPreviousData,
|
isPlaceholderData,
|
||||||
refetch
|
refetch
|
||||||
} = useGetItemsViewByType(
|
} = useGetItemsViewByType(
|
||||||
viewType,
|
viewType,
|
||||||
@ -228,7 +228,7 @@ const ItemsView: FC<ItemsViewProps> = ({
|
|||||||
<Pagination
|
<Pagination
|
||||||
totalRecordCount={totalRecordCount}
|
totalRecordCount={totalRecordCount}
|
||||||
libraryViewSettings={libraryViewSettings}
|
libraryViewSettings={libraryViewSettings}
|
||||||
isPreviousData={isPreviousData}
|
isPlaceholderData={isPlaceholderData}
|
||||||
setLibraryViewSettings={setLibraryViewSettings}
|
setLibraryViewSettings={setLibraryViewSettings}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
@ -312,7 +312,7 @@ const ItemsView: FC<ItemsViewProps> = ({
|
|||||||
<Pagination
|
<Pagination
|
||||||
totalRecordCount={totalRecordCount}
|
totalRecordCount={totalRecordCount}
|
||||||
libraryViewSettings={libraryViewSettings}
|
libraryViewSettings={libraryViewSettings}
|
||||||
isPreviousData={isPreviousData}
|
isPlaceholderData={isPlaceholderData}
|
||||||
setLibraryViewSettings={setLibraryViewSettings}
|
setLibraryViewSettings={setLibraryViewSettings}
|
||||||
/>
|
/>
|
||||||
</Box>
|
</Box>
|
||||||
|
@ -13,14 +13,14 @@ interface PaginationProps {
|
|||||||
libraryViewSettings: LibraryViewSettings;
|
libraryViewSettings: LibraryViewSettings;
|
||||||
setLibraryViewSettings: React.Dispatch<React.SetStateAction<LibraryViewSettings>>;
|
setLibraryViewSettings: React.Dispatch<React.SetStateAction<LibraryViewSettings>>;
|
||||||
totalRecordCount: number;
|
totalRecordCount: number;
|
||||||
isPreviousData: boolean
|
isPlaceholderData: boolean
|
||||||
}
|
}
|
||||||
|
|
||||||
const Pagination: FC<PaginationProps> = ({
|
const Pagination: FC<PaginationProps> = ({
|
||||||
libraryViewSettings,
|
libraryViewSettings,
|
||||||
setLibraryViewSettings,
|
setLibraryViewSettings,
|
||||||
totalRecordCount,
|
totalRecordCount,
|
||||||
isPreviousData
|
isPlaceholderData
|
||||||
}) => {
|
}) => {
|
||||||
const limit = userSettings.libraryPageSize(undefined);
|
const limit = userSettings.libraryPageSize(undefined);
|
||||||
const startIndex = libraryViewSettings.StartIndex ?? 0;
|
const startIndex = libraryViewSettings.StartIndex ?? 0;
|
||||||
@ -65,7 +65,7 @@ const Pagination: FC<PaginationProps> = ({
|
|||||||
<IconButton
|
<IconButton
|
||||||
title={globalize.translate('Previous')}
|
title={globalize.translate('Previous')}
|
||||||
className='paper-icon-button-light btnPreviousPage autoSize'
|
className='paper-icon-button-light btnPreviousPage autoSize'
|
||||||
disabled={startIndex == 0 || isPreviousData}
|
disabled={startIndex == 0 || isPlaceholderData}
|
||||||
onClick={onPreviousPageClick}
|
onClick={onPreviousPageClick}
|
||||||
>
|
>
|
||||||
<ArrowBackIcon />
|
<ArrowBackIcon />
|
||||||
@ -74,7 +74,7 @@ const Pagination: FC<PaginationProps> = ({
|
|||||||
<IconButton
|
<IconButton
|
||||||
title={globalize.translate('Next')}
|
title={globalize.translate('Next')}
|
||||||
className='paper-icon-button-light btnNextPage autoSize'
|
className='paper-icon-button-light btnNextPage autoSize'
|
||||||
disabled={startIndex + limit >= totalRecordCount || isPreviousData }
|
disabled={startIndex + limit >= totalRecordCount || isPlaceholderData }
|
||||||
onClick={onNextPageClick}
|
onClick={onNextPageClick}
|
||||||
>
|
>
|
||||||
<ArrowForwardIcon />
|
<ArrowForwardIcon />
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
import { AxiosRequestConfig } from 'axios';
|
import type { AxiosRequestConfig } from 'axios';
|
||||||
import type { BaseItemDto, ItemsApiGetItemsRequest, PlaylistsApiMoveItemRequest, TimerInfoDto } from '@jellyfin/sdk/lib/generated-client';
|
import type { ItemsApiGetItemsRequest, PlaylistsApiMoveItemRequest } from '@jellyfin/sdk/lib/generated-client';
|
||||||
|
import type { BaseItemDto } from '@jellyfin/sdk/lib/generated-client/models/base-item-dto';
|
||||||
|
import type { TimerInfoDto } from '@jellyfin/sdk/lib/generated-client/models/timer-info-dto';
|
||||||
import type { BaseItemKind } from '@jellyfin/sdk/lib/generated-client/models/base-item-kind';
|
import type { BaseItemKind } from '@jellyfin/sdk/lib/generated-client/models/base-item-kind';
|
||||||
import { ImageType } from '@jellyfin/sdk/lib/generated-client/models/image-type';
|
import { ImageType } from '@jellyfin/sdk/lib/generated-client/models/image-type';
|
||||||
import { ItemFields } from '@jellyfin/sdk/lib/generated-client/models/item-fields';
|
import { ItemFields } from '@jellyfin/sdk/lib/generated-client/models/item-fields';
|
||||||
@ -17,16 +19,16 @@ import { getUserLibraryApi } from '@jellyfin/sdk/lib/utils/api/user-library-api'
|
|||||||
import { getPlaylistsApi } from '@jellyfin/sdk/lib/utils/api/playlists-api';
|
import { getPlaylistsApi } from '@jellyfin/sdk/lib/utils/api/playlists-api';
|
||||||
import { getLiveTvApi } from '@jellyfin/sdk/lib/utils/api/live-tv-api';
|
import { getLiveTvApi } from '@jellyfin/sdk/lib/utils/api/live-tv-api';
|
||||||
import { getPlaystateApi } from '@jellyfin/sdk/lib/utils/api/playstate-api';
|
import { getPlaystateApi } from '@jellyfin/sdk/lib/utils/api/playstate-api';
|
||||||
import { useMutation, useQuery } from '@tanstack/react-query';
|
import { keepPreviousData, useMutation, useQuery } from '@tanstack/react-query';
|
||||||
import datetime from 'scripts/datetime';
|
import datetime from 'scripts/datetime';
|
||||||
import globalize from 'scripts/globalize';
|
import globalize from 'scripts/globalize';
|
||||||
|
|
||||||
import { JellyfinApiContext, useApi } from './useApi';
|
import { type JellyfinApiContext, useApi } from './useApi';
|
||||||
import { getAlphaPickerQuery, getFieldsQuery, getFiltersQuery, getLimitQuery } from 'utils/items';
|
import { getAlphaPickerQuery, getFieldsQuery, getFiltersQuery, getLimitQuery } from 'utils/items';
|
||||||
import { getProgramSections, getSuggestionSections } from 'utils/sections';
|
import { getProgramSections, getSuggestionSections } from 'utils/sections';
|
||||||
import { LibraryViewSettings, ParentId } from 'types/library';
|
import type { LibraryViewSettings, ParentId } from 'types/library';
|
||||||
|
import { type Section, type SectionType, SectionApiMethod } from 'types/sections';
|
||||||
import { LibraryTab } from 'types/libraryTab';
|
import { LibraryTab } from 'types/libraryTab';
|
||||||
import { Section, SectionApiMethod, SectionType } from 'types/sections';
|
|
||||||
|
|
||||||
const fetchGetItems = async (
|
const fetchGetItems = async (
|
||||||
currentApi: JellyfinApiContext,
|
currentApi: JellyfinApiContext,
|
||||||
@ -59,7 +61,7 @@ export const useGetItems = (parametersOptions: ItemsApiGetItemsRequest) => {
|
|||||||
],
|
],
|
||||||
queryFn: ({ signal }) =>
|
queryFn: ({ signal }) =>
|
||||||
fetchGetItems(currentApi, parametersOptions, { signal }),
|
fetchGetItems(currentApi, parametersOptions, { signal }),
|
||||||
cacheTime: parametersOptions.sortBy?.includes(ItemSortBy.Random) ? 0 : undefined
|
gcTime: parametersOptions.sortBy?.includes(ItemSortBy.Random) ? 0 : undefined
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -363,7 +365,7 @@ export const useGetItemsViewByType = (
|
|||||||
{ signal }
|
{ signal }
|
||||||
),
|
),
|
||||||
refetchOnWindowFocus: false,
|
refetchOnWindowFocus: false,
|
||||||
keepPreviousData : true,
|
placeholderData : keepPreviousData,
|
||||||
enabled:
|
enabled:
|
||||||
[
|
[
|
||||||
LibraryTab.Movies,
|
LibraryTab.Movies,
|
||||||
|
@ -1,10 +1,8 @@
|
|||||||
import type { Api } from '@jellyfin/sdk/lib/api';
|
import type { Api } from '@jellyfin/sdk/lib/api';
|
||||||
import { getUserLibraryApi } from '@jellyfin/sdk/lib/utils/api/user-library-api';
|
import { getUserLibraryApi } from '@jellyfin/sdk/lib/utils/api/user-library-api';
|
||||||
import { useQuery } from '@tanstack/react-query';
|
import { queryOptions, useQuery } from '@tanstack/react-query';
|
||||||
import type { AxiosRequestConfig } from 'axios';
|
import type { AxiosRequestConfig } from 'axios';
|
||||||
|
|
||||||
import { queryOptions } from 'utils/query/queryOptions';
|
|
||||||
|
|
||||||
import { useApi } from './useApi';
|
import { useApi } from './useApi';
|
||||||
|
|
||||||
const fetchItem = async (
|
const fetchItem = async (
|
||||||
|
@ -1,10 +1,9 @@
|
|||||||
import { useQuery } from '@tanstack/react-query';
|
import { queryOptions, useQuery } from '@tanstack/react-query';
|
||||||
import type { Api } from '@jellyfin/sdk';
|
import type { Api } from '@jellyfin/sdk';
|
||||||
import { getSystemApi } from '@jellyfin/sdk/lib/utils/api/system-api';
|
import { getSystemApi } from '@jellyfin/sdk/lib/utils/api/system-api';
|
||||||
import type { AxiosRequestConfig } from 'axios';
|
import type { AxiosRequestConfig } from 'axios';
|
||||||
|
|
||||||
import { useApi } from './useApi';
|
import { useApi } from './useApi';
|
||||||
import { queryOptions } from 'utils/query/queryOptions';
|
|
||||||
|
|
||||||
const fetchSystemInfo = async (
|
const fetchSystemInfo = async (
|
||||||
api?: Api,
|
api?: Api,
|
||||||
|
@ -1,11 +1,9 @@
|
|||||||
import type { Api } from '@jellyfin/sdk/lib/api';
|
import type { Api } from '@jellyfin/sdk/lib/api';
|
||||||
import type { UserViewsApiGetUserViewsRequest } from '@jellyfin/sdk/lib/generated-client/api/user-views-api';
|
import type { UserViewsApiGetUserViewsRequest } from '@jellyfin/sdk/lib/generated-client/api/user-views-api';
|
||||||
import { getUserViewsApi } from '@jellyfin/sdk/lib/utils/api/user-views-api';
|
import { getUserViewsApi } from '@jellyfin/sdk/lib/utils/api/user-views-api';
|
||||||
import { useQuery } from '@tanstack/react-query';
|
import { queryOptions, useQuery } from '@tanstack/react-query';
|
||||||
import type { AxiosRequestConfig } from 'axios';
|
import type { AxiosRequestConfig } from 'axios';
|
||||||
|
|
||||||
import { queryOptions } from 'utils/query/queryOptions';
|
|
||||||
|
|
||||||
import { useApi } from './useApi';
|
import { useApi } from './useApi';
|
||||||
|
|
||||||
const fetchUserViews = async (
|
const fetchUserViews = async (
|
||||||
|
@ -1,59 +0,0 @@
|
|||||||
// Copyright (c) 2021-2024 Tanner Linsley
|
|
||||||
//
|
|
||||||
// This software is released under the MIT License.
|
|
||||||
// https://opensource.org/licenses/MIT
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Backport of the `queryOptions` utility function for react-query v4.
|
|
||||||
* Upgrading to v5 requires React 18.
|
|
||||||
*/
|
|
||||||
|
|
||||||
import type { QueryKey, UseQueryOptions } from '@tanstack/react-query';
|
|
||||||
|
|
||||||
export type UndefinedInitialDataOptions<
|
|
||||||
TQueryFnData = unknown,
|
|
||||||
TError = unknown,
|
|
||||||
TData = TQueryFnData,
|
|
||||||
TQueryKey extends QueryKey = QueryKey,
|
|
||||||
> = UseQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {
|
|
||||||
initialData?: undefined
|
|
||||||
};
|
|
||||||
|
|
||||||
type NonUndefinedGuard<T> = T extends undefined ? never : T;
|
|
||||||
|
|
||||||
export type DefinedInitialDataOptions<
|
|
||||||
TQueryFnData = unknown,
|
|
||||||
TError = unknown,
|
|
||||||
TData = TQueryFnData,
|
|
||||||
TQueryKey extends QueryKey = QueryKey,
|
|
||||||
> = UseQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {
|
|
||||||
initialData:
|
|
||||||
| NonUndefinedGuard<TQueryFnData>
|
|
||||||
| (() => NonUndefinedGuard<TQueryFnData>)
|
|
||||||
};
|
|
||||||
|
|
||||||
export function queryOptions<
|
|
||||||
TQueryFnData = unknown,
|
|
||||||
TError = unknown,
|
|
||||||
TData = TQueryFnData,
|
|
||||||
TQueryKey extends QueryKey = QueryKey,
|
|
||||||
>(
|
|
||||||
options: UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,
|
|
||||||
): UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey> & {
|
|
||||||
queryKey: TQueryKey
|
|
||||||
};
|
|
||||||
|
|
||||||
export function queryOptions<
|
|
||||||
TQueryFnData = unknown,
|
|
||||||
TError = unknown,
|
|
||||||
TData = TQueryFnData,
|
|
||||||
TQueryKey extends QueryKey = QueryKey,
|
|
||||||
>(
|
|
||||||
options: DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,
|
|
||||||
): DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey> & {
|
|
||||||
queryKey: TQueryKey
|
|
||||||
};
|
|
||||||
|
|
||||||
export function queryOptions(options: unknown) {
|
|
||||||
return options;
|
|
||||||
}
|
|
@ -180,19 +180,16 @@ const config = {
|
|||||||
path.resolve(__dirname, 'node_modules/@react-hook/passive-layout-effect'),
|
path.resolve(__dirname, 'node_modules/@react-hook/passive-layout-effect'),
|
||||||
path.resolve(__dirname, 'node_modules/@react-hook/resize-observer'),
|
path.resolve(__dirname, 'node_modules/@react-hook/resize-observer'),
|
||||||
path.resolve(__dirname, 'node_modules/@remix-run/router'),
|
path.resolve(__dirname, 'node_modules/@remix-run/router'),
|
||||||
path.resolve(__dirname, 'node_modules/@tanstack/match-sorter-utils'),
|
|
||||||
path.resolve(__dirname, 'node_modules/@tanstack/query-core'),
|
path.resolve(__dirname, 'node_modules/@tanstack/query-core'),
|
||||||
path.resolve(__dirname, 'node_modules/@tanstack/react-query'),
|
path.resolve(__dirname, 'node_modules/@tanstack/react-query'),
|
||||||
path.resolve(__dirname, 'node_modules/@uupaa/dynamic-import-polyfill'),
|
path.resolve(__dirname, 'node_modules/@uupaa/dynamic-import-polyfill'),
|
||||||
path.resolve(__dirname, 'node_modules/axios'),
|
path.resolve(__dirname, 'node_modules/axios'),
|
||||||
path.resolve(__dirname, 'node_modules/blurhash'),
|
path.resolve(__dirname, 'node_modules/blurhash'),
|
||||||
path.resolve(__dirname, 'node_modules/compare-versions'),
|
path.resolve(__dirname, 'node_modules/compare-versions'),
|
||||||
path.resolve(__dirname, 'node_modules/copy-anything'),
|
|
||||||
path.resolve(__dirname, 'node_modules/date-fns'),
|
path.resolve(__dirname, 'node_modules/date-fns'),
|
||||||
path.resolve(__dirname, 'node_modules/dom7'),
|
path.resolve(__dirname, 'node_modules/dom7'),
|
||||||
path.resolve(__dirname, 'node_modules/epubjs'),
|
path.resolve(__dirname, 'node_modules/epubjs'),
|
||||||
path.resolve(__dirname, 'node_modules/flv.js'),
|
path.resolve(__dirname, 'node_modules/flv.js'),
|
||||||
path.resolve(__dirname, 'node_modules/is-what'),
|
|
||||||
path.resolve(__dirname, 'node_modules/libarchive.js'),
|
path.resolve(__dirname, 'node_modules/libarchive.js'),
|
||||||
path.resolve(__dirname, 'node_modules/linkify-it'),
|
path.resolve(__dirname, 'node_modules/linkify-it'),
|
||||||
path.resolve(__dirname, 'node_modules/markdown-it'),
|
path.resolve(__dirname, 'node_modules/markdown-it'),
|
||||||
|
Loading…
Reference in New Issue
Block a user