diff --git a/package.json b/package.json index 79ea906..98502ca 100644 --- a/package.json +++ b/package.json @@ -14,42 +14,42 @@ "format": "prettier --plugin-search-dir . --write ." }, "devDependencies": { - "@iconify-icons/material-symbols": "^1.2.25", + "@iconify-icons/material-symbols": "^1.2.27", "@iconify-icons/radix-icons": "^1.2.8", - "@iconify-icons/simple-icons": "^1.2.41", + "@iconify-icons/simple-icons": "^1.2.42", "@leveluptuts/svelte-side-menu": "^1.0.5", "@leveluptuts/svelte-toy": "^2.0.3", - "@playwright/test": "^1.28.1", + "@playwright/test": "^1.30.0", "@rgossiaux/svelte-headlessui": "^1.0.2", - "@sveltejs/adapter-auto": "^1.0.0", - "@sveltejs/adapter-static": "^2.0.0", - "@sveltejs/adapter-vercel": "^1.0.5", - "@sveltejs/kit": "^1.0.0", + "@sveltejs/adapter-auto": "^1.0.3", + "@sveltejs/adapter-static": "^2.0.1", + "@sveltejs/adapter-vercel": "^1.0.6", + "@sveltejs/kit": "^1.5.6", "@types/postcss-preset-env": "^8.0.0", - "@typescript-eslint/eslint-plugin": "^5.45.0", - "@typescript-eslint/parser": "^5.45.0", + "@typescript-eslint/eslint-plugin": "^5.51.0", + "@typescript-eslint/parser": "^5.51.0", "autoprefixer": "^10.4.7", - "eslint": "^8.28.0", + "eslint": "^8.34.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-svelte3": "^4.0.0", - "iconify-icon": "^1.0.3", + "iconify-icon": "^1.0.5", "just-intersect": "^4.3.0", "postcss": "^8.4.21", "postcss-import": "^15.1.0", "postcss-load-config": "^4.0.1", "postcss-nested": "^6.0.0", "postcss-preset-env": "^8.0.1", - "prettier": "^2.8.0", + "prettier": "^2.8.4", "prettier-plugin-svelte": "^2.8.1", - "sass": "^1.57.1", + "sass": "^1.58.0", "scrape-it": "^5.3.2", "svelte": "^3.54.0", - "svelte-check": "^3.0.1", + "svelte-check": "^3.0.3", "svelte-lazy-loader": "^1.0.0", "svelte-preprocess": "^4.10.7", - "tslib": "^2.4.1", - "typescript": "^4.9.3", - "vite": "^4.0.0", + "tslib": "^2.5.0", + "typescript": "^4.9.5", + "vite": "^4.1.1", "vite-imagetools": "^4.0.18", "vitest": "^0.25.3" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index cdc50fc..ed38893 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,84 +1,84 @@ lockfileVersion: 5.4 specifiers: - '@iconify-icons/material-symbols': ^1.2.25 + '@iconify-icons/material-symbols': ^1.2.27 '@iconify-icons/radix-icons': ^1.2.8 - '@iconify-icons/simple-icons': ^1.2.41 + '@iconify-icons/simple-icons': ^1.2.42 '@leveluptuts/svelte-side-menu': ^1.0.5 '@leveluptuts/svelte-toy': ^2.0.3 - '@playwright/test': ^1.28.1 + '@playwright/test': ^1.30.0 '@rgossiaux/svelte-headlessui': ^1.0.2 - '@sveltejs/adapter-auto': ^1.0.0 - '@sveltejs/adapter-static': ^2.0.0 - '@sveltejs/adapter-vercel': ^1.0.5 - '@sveltejs/kit': ^1.0.0 + '@sveltejs/adapter-auto': ^1.0.3 + '@sveltejs/adapter-static': ^2.0.1 + '@sveltejs/adapter-vercel': ^1.0.6 + '@sveltejs/kit': ^1.5.6 '@types/postcss-preset-env': ^8.0.0 - '@typescript-eslint/eslint-plugin': ^5.45.0 - '@typescript-eslint/parser': ^5.45.0 + '@typescript-eslint/eslint-plugin': ^5.51.0 + '@typescript-eslint/parser': ^5.51.0 autoprefixer: ^10.4.7 - eslint: ^8.28.0 + eslint: ^8.34.0 eslint-config-prettier: ^8.5.0 eslint-plugin-svelte3: ^4.0.0 - iconify-icon: ^1.0.3 + iconify-icon: ^1.0.5 just-intersect: ^4.3.0 postcss: ^8.4.21 postcss-import: ^15.1.0 postcss-load-config: ^4.0.1 postcss-nested: ^6.0.0 postcss-preset-env: ^8.0.1 - prettier: ^2.8.0 + prettier: ^2.8.4 prettier-plugin-svelte: ^2.8.1 - sass: ^1.57.1 + sass: ^1.58.0 scrape-it: ^5.3.2 svelte: ^3.54.0 - svelte-check: ^3.0.1 + svelte-check: ^3.0.3 svelte-lazy-loader: ^1.0.0 svelte-preprocess: ^4.10.7 - tslib: ^2.4.1 - typescript: ^4.9.3 - vite: ^4.0.0 + tslib: ^2.5.0 + typescript: ^4.9.5 + vite: ^4.1.1 vite-imagetools: ^4.0.18 vitest: ^0.25.3 devDependencies: - '@iconify-icons/material-symbols': 1.2.25 + '@iconify-icons/material-symbols': 1.2.27 '@iconify-icons/radix-icons': 1.2.8 - '@iconify-icons/simple-icons': 1.2.41 + '@iconify-icons/simple-icons': 1.2.42 '@leveluptuts/svelte-side-menu': 1.0.5 '@leveluptuts/svelte-toy': 2.0.3 - '@playwright/test': 1.29.2 + '@playwright/test': 1.30.0 '@rgossiaux/svelte-headlessui': 1.0.2_svelte@3.55.1 - '@sveltejs/adapter-auto': 1.0.2_@sveltejs+kit@1.2.2 - '@sveltejs/adapter-static': 2.0.0_@sveltejs+kit@1.2.2 - '@sveltejs/adapter-vercel': 1.0.5_@sveltejs+kit@1.2.2 - '@sveltejs/kit': 1.2.2_svelte@3.55.1+vite@4.0.4 + '@sveltejs/adapter-auto': 1.0.3_@sveltejs+kit@1.5.6 + '@sveltejs/adapter-static': 2.0.1_@sveltejs+kit@1.5.6 + '@sveltejs/adapter-vercel': 1.0.6_@sveltejs+kit@1.5.6 + '@sveltejs/kit': 1.5.6_svelte@3.55.1+vite@4.1.1 '@types/postcss-preset-env': 8.0.0_postcss@8.4.21 - '@typescript-eslint/eslint-plugin': 5.48.2_caon6io6stgpr7lz2rtbhekxqy - '@typescript-eslint/parser': 5.48.2_7uibuqfxkfaozanbtbziikiqje + '@typescript-eslint/eslint-plugin': 5.51.0_z4swst3wuuqk4hlme4ajzslgh4 + '@typescript-eslint/parser': 5.51.0_7kw3g6rralp5ps6mg3uyzz6azm autoprefixer: 10.4.13_postcss@8.4.21 - eslint: 8.32.0 - eslint-config-prettier: 8.6.0_eslint@8.32.0 - eslint-plugin-svelte3: 4.0.0_tmo5zkisvhu6htudosk5k7m6pu - iconify-icon: 1.0.3 + eslint: 8.34.0 + eslint-config-prettier: 8.6.0_eslint@8.34.0 + eslint-plugin-svelte3: 4.0.0_dbthnr4b2bdkhyiebwn7su3hnq + iconify-icon: 1.0.5 just-intersect: 4.3.0 postcss: 8.4.21 postcss-import: 15.1.0_postcss@8.4.21 postcss-load-config: 4.0.1_postcss@8.4.21 postcss-nested: 6.0.0_postcss@8.4.21 postcss-preset-env: 8.0.1_postcss@8.4.21 - prettier: 2.8.3 - prettier-plugin-svelte: 2.9.0_kdmmghgdi3ngrsq6otxkjilbry - sass: 1.57.1 + prettier: 2.8.4 + prettier-plugin-svelte: 2.9.0_jrsxveqmsx2uadbqiuq74wlc4u + sass: 1.58.0 scrape-it: 5.3.2 svelte: 3.55.1 - svelte-check: 3.0.2_mraflicfyjy3x4taxigiwsr23i + svelte-check: 3.0.3_2fhq4e3e5we74q3fjwcjkwqgle svelte-lazy-loader: 1.0.0 - svelte-preprocess: 4.10.7_kmnkm63hwcse26ffcjvrch7uda - tslib: 2.4.1 - typescript: 4.9.4 - vite: 4.0.4_sass@1.57.1 + svelte-preprocess: 4.10.7_3b5ianm2ugvkaapjtuwrpxqq7a + tslib: 2.5.0 + typescript: 4.9.5 + vite: 4.1.1_sass@1.58.0 vite-imagetools: 4.0.18 - vitest: 0.25.8_sass@1.57.1 + vitest: 0.25.8_sass@1.58.0 packages: @@ -559,8 +559,8 @@ packages: resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} dev: true - /@iconify-icons/material-symbols/1.2.25: - resolution: {integrity: sha512-2ayxyT1cU5d4o+aJ5aVyquFLt+fF/froscuHZgZjvmvJfNufAcW+TwB2yx+t6cgGjlm2i1s0JCnOLzUpfJKC8A==} + /@iconify-icons/material-symbols/1.2.27: + resolution: {integrity: sha512-hVbX3v9y/EFmbEHJ9TwqVwkmh1dz4aeKRabfAuYKHIdoxFHILrCpjm3pL6es2gR//A5+9F/dgiI/gOurY37LVQ==} dependencies: '@iconify/types': 2.0.0 dev: true @@ -571,8 +571,8 @@ packages: '@iconify/types': 2.0.0 dev: true - /@iconify-icons/simple-icons/1.2.41: - resolution: {integrity: sha512-3eunPmb3RkOuyaFmPOCPlD4ViW7S+tMPNPwDbri8UFTGk12hhJ4B0p8QAqXxfGcB/F8PcTNpn306raLFNdqdFg==} + /@iconify-icons/simple-icons/1.2.42: + resolution: {integrity: sha512-3A7qpwKPcJCLA4aalZ4SKswzId9QuDPnbWHmRKlKguMUM/tDp0KUkB4tycfiujhV03be6+lG7RMbToTusO82XQ==} dependencies: '@iconify/types': 2.0.0 dev: true @@ -646,13 +646,13 @@ packages: fastq: 1.15.0 dev: true - /@playwright/test/1.29.2: - resolution: {integrity: sha512-+3/GPwOgcoF0xLz/opTnahel1/y42PdcgZ4hs+BZGIUjtmEFSXGg+nFoaH3NSmuc7a6GSFwXDJ5L7VXpqzigNg==} + /@playwright/test/1.30.0: + resolution: {integrity: sha512-SVxkQw1xvn/Wk/EvBnqWIq6NLo1AppwbYOjNLmyU0R1RoQ3rLEBtmjTnElcnz8VEtn11fptj1ECxK0tgURhajw==} engines: {node: '>=14'} hasBin: true dependencies: '@types/node': 18.11.18 - playwright-core: 1.29.2 + playwright-core: 1.30.0 dev: true /@polka/url/1.0.0-next.21: @@ -689,29 +689,29 @@ packages: picomatch: 2.3.1 dev: true - /@sveltejs/adapter-auto/1.0.2_@sveltejs+kit@1.2.2: - resolution: {integrity: sha512-UXpEO/gutERZnD+Z5Vi4J/ifD3WSRuCI7xwtLJTcKNQvJ6t5Xsj1X3Mw2F8Vv/XTUuxf7xPLYUgThU331r0Y9w==} + /@sveltejs/adapter-auto/1.0.3_@sveltejs+kit@1.5.6: + resolution: {integrity: sha512-hc7O12YQqvZ1CD4fo1gMJuPzBZvuoG5kwxb2RRoz4fVoB8B2vuPO2cY751Ln0G6T/HMrAf8kCqw6Pg+wbxcstw==} peerDependencies: '@sveltejs/kit': ^1.0.0 dependencies: - '@sveltejs/kit': 1.2.2_svelte@3.55.1+vite@4.0.4 + '@sveltejs/kit': 1.5.6_svelte@3.55.1+vite@4.1.1 import-meta-resolve: 2.2.1 dev: true - /@sveltejs/adapter-static/2.0.0_@sveltejs+kit@1.2.2: - resolution: {integrity: sha512-M9F8EyCIdVcpZu0zvS7U7v+rc7elNNDUkMHLsOkJYlfQ9rDdif3fqteMqddcrq1lFPEGH1ErdTjpsXdb3k1e8w==} + /@sveltejs/adapter-static/2.0.1_@sveltejs+kit@1.5.6: + resolution: {integrity: sha512-o5/q3YwD/ErxYCFlK1v3ydvldyNKk1lh3oeyxn4mhz+Pkbx/uuxhzmbOpytTlp5aVqNHDVsb04xadUzOFCDDzw==} peerDependencies: '@sveltejs/kit': ^1.5.0 dependencies: - '@sveltejs/kit': 1.2.2_svelte@3.55.1+vite@4.0.4 + '@sveltejs/kit': 1.5.6_svelte@3.55.1+vite@4.1.1 dev: true - /@sveltejs/adapter-vercel/1.0.5_@sveltejs+kit@1.2.2: - resolution: {integrity: sha512-TnFw+2ZwUuzguIeh013h0eiFmHylBuL1aV3jcUWbJmBLRo6YA0Ti8X8VXgFP4izP7XGuLKdpUIMg7HaZe21LbA==} + /@sveltejs/adapter-vercel/1.0.6_@sveltejs+kit@1.5.6: + resolution: {integrity: sha512-fo6aaEygPd/6B5Jms4Ff7R4jbADnppuLvKOWBNTGe5MGB7ZRUkl+gxHWMQx2av2knyEZkA6V8y5M6R3ML5yN4g==} peerDependencies: '@sveltejs/kit': ^1.0.0 dependencies: - '@sveltejs/kit': 1.2.2_svelte@3.55.1+vite@4.0.4 + '@sveltejs/kit': 1.5.6_svelte@3.55.1+vite@4.1.1 '@vercel/nft': 0.22.6 esbuild: 0.16.17 transitivePeerDependencies: @@ -719,8 +719,8 @@ packages: - supports-color dev: true - /@sveltejs/kit/1.2.2_svelte@3.55.1+vite@4.0.4: - resolution: {integrity: sha512-aZUjAZ/6gWEYFQDrDNINuvOi6VxlG86kCcIDRWDIFJjI38Ueieo1fySb0j0d2VkQVrYXU7VqjTVMBZFix+hByA==} + /@sveltejs/kit/1.5.6_svelte@3.55.1+vite@4.1.1: + resolution: {integrity: sha512-CHVeQpbcwSIUekF6WwevmExKXyfHnzM5nlCEUv13lGgfJ0zKA0ny5YwIe40vccrm5w5Caec7jMTt9Ih3McJr5g==} engines: {node: ^16.14 || >=18} hasBin: true requiresBuild: true @@ -728,10 +728,10 @@ packages: svelte: ^3.54.0 vite: ^4.0.0 dependencies: - '@sveltejs/vite-plugin-svelte': 2.0.2_svelte@3.55.1+vite@4.0.4 + '@sveltejs/vite-plugin-svelte': 2.0.2_svelte@3.55.1+vite@4.1.1 '@types/cookie': 0.5.1 cookie: 0.5.0 - devalue: 4.2.2 + devalue: 4.3.0 esm-env: 1.0.0 kleur: 4.1.5 magic-string: 0.27.0 @@ -741,13 +741,13 @@ packages: sirv: 2.0.2 svelte: 3.55.1 tiny-glob: 0.2.9 - undici: 5.15.1 - vite: 4.0.4_sass@1.57.1 + undici: 5.18.0 + vite: 4.1.1_sass@1.58.0 transitivePeerDependencies: - supports-color dev: true - /@sveltejs/vite-plugin-svelte/2.0.2_svelte@3.55.1+vite@4.0.4: + /@sveltejs/vite-plugin-svelte/2.0.2_svelte@3.55.1+vite@4.1.1: resolution: {integrity: sha512-xCEan0/NNpQuL0l5aS42FjwQ6wwskdxC3pW1OeFtEKNZwRg7Evro9lac9HesGP6TdFsTv2xMes5ASQVKbCacxg==} engines: {node: ^14.18.0 || >= 16} peerDependencies: @@ -760,8 +760,8 @@ packages: magic-string: 0.27.0 svelte: 3.55.1 svelte-hmr: 0.15.1_svelte@3.55.1 - vite: 4.0.4_sass@1.57.1 - vitefu: 0.2.4_vite@4.0.4 + vite: 4.1.1_sass@1.58.0 + vitefu: 0.2.4_vite@4.1.1 transitivePeerDependencies: - supports-color dev: true @@ -821,8 +821,8 @@ packages: resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==} dev: true - /@typescript-eslint/eslint-plugin/5.48.2_caon6io6stgpr7lz2rtbhekxqy: - resolution: {integrity: sha512-sR0Gja9Ky1teIq4qJOl0nC+Tk64/uYdX+mi+5iB//MH8gwyx8e3SOyhEzeLZEFEEfCaLf8KJq+Bd/6je1t+CAg==} + /@typescript-eslint/eslint-plugin/5.51.0_z4swst3wuuqk4hlme4ajzslgh4: + resolution: {integrity: sha512-wcAwhEWm1RgNd7dxD/o+nnLW8oH+6RK1OGnmbmkj/GGoDPV1WWMVP0FXYQBivKHdwM1pwii3bt//RC62EriIUQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: '@typescript-eslint/parser': ^5.0.0 @@ -832,24 +832,25 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/parser': 5.48.2_7uibuqfxkfaozanbtbziikiqje - '@typescript-eslint/scope-manager': 5.48.2 - '@typescript-eslint/type-utils': 5.48.2_7uibuqfxkfaozanbtbziikiqje - '@typescript-eslint/utils': 5.48.2_7uibuqfxkfaozanbtbziikiqje + '@typescript-eslint/parser': 5.51.0_7kw3g6rralp5ps6mg3uyzz6azm + '@typescript-eslint/scope-manager': 5.51.0 + '@typescript-eslint/type-utils': 5.51.0_7kw3g6rralp5ps6mg3uyzz6azm + '@typescript-eslint/utils': 5.51.0_7kw3g6rralp5ps6mg3uyzz6azm debug: 4.3.4 - eslint: 8.32.0 + eslint: 8.34.0 + grapheme-splitter: 1.0.4 ignore: 5.2.4 natural-compare-lite: 1.4.0 regexpp: 3.2.0 semver: 7.3.8 - tsutils: 3.21.0_typescript@4.9.4 - typescript: 4.9.4 + tsutils: 3.21.0_typescript@4.9.5 + typescript: 4.9.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/parser/5.48.2_7uibuqfxkfaozanbtbziikiqje: - resolution: {integrity: sha512-38zMsKsG2sIuM5Oi/olurGwYJXzmtdsHhn5mI/pQogP+BjYVkK5iRazCQ8RGS0V+YLk282uWElN70zAAUmaYHw==} + /@typescript-eslint/parser/5.51.0_7kw3g6rralp5ps6mg3uyzz6azm: + resolution: {integrity: sha512-fEV0R9gGmfpDeRzJXn+fGQKcl0inIeYobmmUWijZh9zA7bxJ8clPhV9up2ZQzATxAiFAECqPQyMDB4o4B81AaA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -858,26 +859,26 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 5.48.2 - '@typescript-eslint/types': 5.48.2 - '@typescript-eslint/typescript-estree': 5.48.2_typescript@4.9.4 + '@typescript-eslint/scope-manager': 5.51.0 + '@typescript-eslint/types': 5.51.0 + '@typescript-eslint/typescript-estree': 5.51.0_typescript@4.9.5 debug: 4.3.4 - eslint: 8.32.0 - typescript: 4.9.4 + eslint: 8.34.0 + typescript: 4.9.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/scope-manager/5.48.2: - resolution: {integrity: sha512-zEUFfonQid5KRDKoI3O+uP1GnrFd4tIHlvs+sTJXiWuypUWMuDaottkJuR612wQfOkjYbsaskSIURV9xo4f+Fw==} + /@typescript-eslint/scope-manager/5.51.0: + resolution: {integrity: sha512-gNpxRdlx5qw3yaHA0SFuTjW4rxeYhpHxt491PEcKF8Z6zpq0kMhe0Tolxt0qjlojS+/wArSDlj/LtE69xUJphQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - '@typescript-eslint/types': 5.48.2 - '@typescript-eslint/visitor-keys': 5.48.2 + '@typescript-eslint/types': 5.51.0 + '@typescript-eslint/visitor-keys': 5.51.0 dev: true - /@typescript-eslint/type-utils/5.48.2_7uibuqfxkfaozanbtbziikiqje: - resolution: {integrity: sha512-QVWx7J5sPMRiOMJp5dYshPxABRoZV1xbRirqSk8yuIIsu0nvMTZesKErEA3Oix1k+uvsk8Cs8TGJ6kQ0ndAcew==} + /@typescript-eslint/type-utils/5.51.0_7kw3g6rralp5ps6mg3uyzz6azm: + resolution: {integrity: sha512-QHC5KKyfV8sNSyHqfNa0UbTbJ6caB8uhcx2hYcWVvJAZYJRBo5HyyZfzMdRx8nvS+GyMg56fugMzzWnojREuQQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: '*' @@ -886,23 +887,23 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 5.48.2_typescript@4.9.4 - '@typescript-eslint/utils': 5.48.2_7uibuqfxkfaozanbtbziikiqje + '@typescript-eslint/typescript-estree': 5.51.0_typescript@4.9.5 + '@typescript-eslint/utils': 5.51.0_7kw3g6rralp5ps6mg3uyzz6azm debug: 4.3.4 - eslint: 8.32.0 - tsutils: 3.21.0_typescript@4.9.4 - typescript: 4.9.4 + eslint: 8.34.0 + tsutils: 3.21.0_typescript@4.9.5 + typescript: 4.9.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/types/5.48.2: - resolution: {integrity: sha512-hE7dA77xxu7ByBc6KCzikgfRyBCTst6dZQpwaTy25iMYOnbNljDT4hjhrGEJJ0QoMjrfqrx+j1l1B9/LtKeuqA==} + /@typescript-eslint/types/5.51.0: + resolution: {integrity: sha512-SqOn0ANn/v6hFn0kjvLwiDi4AzR++CBZz0NV5AnusT2/3y32jdc0G4woXPWHCumWtUXZKPAS27/9vziSsC9jnw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/typescript-estree/5.48.2_typescript@4.9.4: - resolution: {integrity: sha512-bibvD3z6ilnoVxUBFEgkO0k0aFvUc4Cttt0dAreEr+nrAHhWzkO83PEVVuieK3DqcgL6VAK5dkzK8XUVja5Zcg==} + /@typescript-eslint/typescript-estree/5.51.0_typescript@4.9.5: + resolution: {integrity: sha512-TSkNupHvNRkoH9FMA3w7TazVFcBPveAAmb7Sz+kArY6sLT86PA5Vx80cKlYmd8m3Ha2SwofM1KwraF24lM9FvA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: typescript: '*' @@ -910,43 +911,43 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 5.48.2 - '@typescript-eslint/visitor-keys': 5.48.2 + '@typescript-eslint/types': 5.51.0 + '@typescript-eslint/visitor-keys': 5.51.0 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 semver: 7.3.8 - tsutils: 3.21.0_typescript@4.9.4 - typescript: 4.9.4 + tsutils: 3.21.0_typescript@4.9.5 + typescript: 4.9.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/utils/5.48.2_7uibuqfxkfaozanbtbziikiqje: - resolution: {integrity: sha512-2h18c0d7jgkw6tdKTlNaM7wyopbLRBiit8oAxoP89YnuBOzCZ8g8aBCaCqq7h208qUTroL7Whgzam7UY3HVLow==} + /@typescript-eslint/utils/5.51.0_7kw3g6rralp5ps6mg3uyzz6azm: + resolution: {integrity: sha512-76qs+5KWcaatmwtwsDJvBk4H76RJQBFe+Gext0EfJdC3Vd2kpY2Pf//OHHzHp84Ciw0/rYoGTDnIAr3uWhhJYw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: '@types/json-schema': 7.0.11 '@types/semver': 7.3.13 - '@typescript-eslint/scope-manager': 5.48.2 - '@typescript-eslint/types': 5.48.2 - '@typescript-eslint/typescript-estree': 5.48.2_typescript@4.9.4 - eslint: 8.32.0 + '@typescript-eslint/scope-manager': 5.51.0 + '@typescript-eslint/types': 5.51.0 + '@typescript-eslint/typescript-estree': 5.51.0_typescript@4.9.5 + eslint: 8.34.0 eslint-scope: 5.1.1 - eslint-utils: 3.0.0_eslint@8.32.0 + eslint-utils: 3.0.0_eslint@8.34.0 semver: 7.3.8 transitivePeerDependencies: - supports-color - typescript dev: true - /@typescript-eslint/visitor-keys/5.48.2: - resolution: {integrity: sha512-z9njZLSkwmjFWUelGEwEbdf4NwKvfHxvGC0OcGN1Hp/XNDIcJ7D5DpPNPv6x6/mFvc1tQHsaWmpD/a4gOvvCJQ==} + /@typescript-eslint/visitor-keys/5.51.0: + resolution: {integrity: sha512-Oh2+eTdjHjOFjKA27sxESlA87YPSOJafGCR0md5oeMdh1ZcCfAGCIOL216uTBAkAIptvLIfKQhl7lHxMJet4GQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - '@typescript-eslint/types': 5.48.2 + '@typescript-eslint/types': 5.51.0 eslint-visitor-keys: 3.3.0 dev: true @@ -1554,8 +1555,8 @@ packages: engines: {node: '>=8'} dev: true - /devalue/4.2.2: - resolution: {integrity: sha512-Pkwd8qrI9O20VJ14fBNHu+on99toTNZFbgWRpZbC0zbDXpnE2WHYcrC1fHhMsF/3Ee+2yaW7vEujAT7fCYgqrA==} + /devalue/4.3.0: + resolution: {integrity: sha512-n94yQo4LI3w7erwf84mhRUkUJfhLoCZiLyoOZ/QFsDbcWNZePrLwbQpvZBUG2TNxwV3VjCKPxkiiQA6pe3TrTA==} dev: true /dir-glob/3.0.1: @@ -1724,22 +1725,22 @@ packages: dev: true optional: true - /eslint-config-prettier/8.6.0_eslint@8.32.0: + /eslint-config-prettier/8.6.0_eslint@8.34.0: resolution: {integrity: sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==} hasBin: true peerDependencies: eslint: '>=7.0.0' dependencies: - eslint: 8.32.0 + eslint: 8.34.0 dev: true - /eslint-plugin-svelte3/4.0.0_tmo5zkisvhu6htudosk5k7m6pu: + /eslint-plugin-svelte3/4.0.0_dbthnr4b2bdkhyiebwn7su3hnq: resolution: {integrity: sha512-OIx9lgaNzD02+MDFNLw0GEUbuovNcglg+wnd/UY0fbZmlQSz7GlQiQ1f+yX0XvC07XPcDOnFcichqI3xCwp71g==} peerDependencies: eslint: '>=8.0.0' svelte: ^3.2.0 dependencies: - eslint: 8.32.0 + eslint: 8.34.0 svelte: 3.55.1 dev: true @@ -1759,13 +1760,13 @@ packages: estraverse: 5.3.0 dev: true - /eslint-utils/3.0.0_eslint@8.32.0: + /eslint-utils/3.0.0_eslint@8.34.0: resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} peerDependencies: eslint: '>=5' dependencies: - eslint: 8.32.0 + eslint: 8.34.0 eslint-visitor-keys: 2.1.0 dev: true @@ -1779,8 +1780,8 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /eslint/8.32.0: - resolution: {integrity: sha512-nETVXpnthqKPFyuY2FNjz/bEd6nbosRgKbkgS/y1C7LJop96gYHWpiguLecMHQ2XCPxn77DS0P+68WzG6vkZSQ==} + /eslint/8.34.0: + resolution: {integrity: sha512-1Z8iFsucw+7kSqXNZVslXS8Ioa4u2KM7GPwuKtkTFAqZ/cHMcEaR+1+Br0wLlot49cNxIiZk5wp8EAbPcYZxTg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} hasBin: true dependencies: @@ -1795,7 +1796,7 @@ packages: doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.1.1 - eslint-utils: 3.0.0_eslint@8.32.0 + eslint-utils: 3.0.0_eslint@8.34.0 eslint-visitor-keys: 3.3.0 espree: 9.4.1 esquery: 1.4.0 @@ -2186,8 +2187,8 @@ packages: - supports-color dev: true - /iconify-icon/1.0.3: - resolution: {integrity: sha512-pyWLbx8IBfD2G3M0hULuvUBwoowrZtXEKyeAXhD2AlbNYTSDPmWGhgPYaRAnVIuBjMAZ4dCyEHmaYgnlDZc0XQ==} + /iconify-icon/1.0.5: + resolution: {integrity: sha512-vr5IzIy30MQ2n/2M8Aw7jP/IaDmGUwMvDx64S77Zm5elSECYXIzNc3m8ktqbSFfp2XvyfNZk4jJhz1hN3+xKYg==} dependencies: '@iconify/types': 2.0.0 dev: true @@ -2806,8 +2807,8 @@ packages: engines: {node: '>=0.10.0'} dev: true - /playwright-core/1.29.2: - resolution: {integrity: sha512-94QXm4PMgFoHAhlCuoWyaBYKb92yOcGVHdQLoxQ7Wjlc7Flg4aC/jbFW7xMR52OfXMVkWicue4WXE7QEegbIRA==} + /playwright-core/1.30.0: + resolution: {integrity: sha512-7AnRmTCf+GVYhHbLJsGUtskWTE33SwMZkybJ0v6rqR1boxq2x36U7p1vDRV7HO2IwTZgmycracLxPEJI49wu4g==} engines: {node: '>=14'} hasBin: true dev: true @@ -3235,18 +3236,18 @@ packages: engines: {node: '>= 0.8.0'} dev: true - /prettier-plugin-svelte/2.9.0_kdmmghgdi3ngrsq6otxkjilbry: + /prettier-plugin-svelte/2.9.0_jrsxveqmsx2uadbqiuq74wlc4u: resolution: {integrity: sha512-3doBi5NO4IVgaNPtwewvrgPpqAcvNv0NwJNflr76PIGgi9nf1oguQV1Hpdm9TI2ALIQVn/9iIwLpBO5UcD2Jiw==} peerDependencies: prettier: ^1.16.4 || ^2.0.0 svelte: ^3.2.0 dependencies: - prettier: 2.8.3 + prettier: 2.8.4 svelte: 3.55.1 dev: true - /prettier/2.8.3: - resolution: {integrity: sha512-tJ/oJ4amDihPoufT5sM0Z1SKEuKay8LfVAMlbbhnnkvt6BUserZylqo2PN+p9KeljLr0OHa2rXHU1T8reeoTrw==} + /prettier/2.8.4: + resolution: {integrity: sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==} engines: {node: '>=10.13.0'} hasBin: true dev: true @@ -3433,8 +3434,8 @@ packages: rimraf: 2.7.1 dev: true - /sass/1.57.1: - resolution: {integrity: sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw==} + /sass/1.58.0: + resolution: {integrity: sha512-PiMJcP33DdKtZ/1jSjjqVIKihoDc6yWmYr9K/4r3fVVIEDAluD0q7XZiRKrNJcPK3qkLRF/79DND1H5q1LBjgg==} engines: {node: '>=12.0.0'} hasBin: true dependencies: @@ -3677,8 +3678,8 @@ packages: engines: {node: '>= 0.4'} dev: true - /svelte-check/3.0.2_mraflicfyjy3x4taxigiwsr23i: - resolution: {integrity: sha512-DkhKhV0Jt0gh7q9DBB26+J2Vfb9y4/4JWxnbkXBZha7542LOhwvj3edJFjyJ+xjdaXyInZ+YRRYc3V6wytP2ew==} + /svelte-check/3.0.3_2fhq4e3e5we74q3fjwcjkwqgle: + resolution: {integrity: sha512-ByBFXo3bfHRGIsYEasHkdMhLkNleVfszX/Ns1oip58tPJlKdo5Ssr8kgVIuo5oq00hss8AIcdesuy0Xt0BcTvg==} hasBin: true peerDependencies: svelte: ^3.55.0 @@ -3690,8 +3691,8 @@ packages: picocolors: 1.0.0 sade: 1.8.1 svelte: 3.55.1 - svelte-preprocess: 5.0.1_kmnkm63hwcse26ffcjvrch7uda - typescript: 4.9.4 + svelte-preprocess: 5.0.1_3b5ianm2ugvkaapjtuwrpxqq7a + typescript: 4.9.5 transitivePeerDependencies: - '@babel/core' - coffeescript @@ -3717,7 +3718,7 @@ packages: resolution: {integrity: sha512-AZD6R60vksyojn21FgXLglmBiBB9K5Dkdu0hdGrLbCaRCYT68IsWkZfRUqKhMx1IfzqWcZQ8X9y/f+Ih0oNQkQ==} dev: true - /svelte-preprocess/4.10.7_kmnkm63hwcse26ffcjvrch7uda: + /svelte-preprocess/4.10.7_3b5ianm2ugvkaapjtuwrpxqq7a: resolution: {integrity: sha512-sNPBnqYD6FnmdBrUmBCaqS00RyCsCpj2BG58A1JBswNF7b0OKviwxqVrOL/CKyJrLSClrSeqQv5BXNg2RUbPOw==} engines: {node: '>= 9.11.2'} requiresBuild: true @@ -3764,14 +3765,14 @@ packages: magic-string: 0.25.9 postcss: 8.4.21 postcss-load-config: 4.0.1_postcss@8.4.21 - sass: 1.57.1 + sass: 1.58.0 sorcery: 0.10.0 strip-indent: 3.0.0 svelte: 3.55.1 - typescript: 4.9.4 + typescript: 4.9.5 dev: true - /svelte-preprocess/5.0.1_kmnkm63hwcse26ffcjvrch7uda: + /svelte-preprocess/5.0.1_3b5ianm2ugvkaapjtuwrpxqq7a: resolution: {integrity: sha512-0HXyhCoc9rsW4zGOgtInylC6qj259E1hpFnJMJWTf+aIfeqh4O/QHT31KT2hvPEqQfdjmqBR/kO2JDkkciBLrQ==} engines: {node: '>= 14.10.0'} requiresBuild: true @@ -3815,11 +3816,11 @@ packages: magic-string: 0.27.0 postcss: 8.4.21 postcss-load-config: 4.0.1_postcss@8.4.21 - sass: 1.57.1 + sass: 1.58.0 sorcery: 0.11.0 strip-indent: 3.0.0 svelte: 3.55.1 - typescript: 4.9.4 + typescript: 4.9.5 dev: true /svelte/3.55.1: @@ -3929,18 +3930,18 @@ packages: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} dev: true - /tslib/2.4.1: - resolution: {integrity: sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==} + /tslib/2.5.0: + resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} dev: true - /tsutils/3.21.0_typescript@4.9.4: + /tsutils/3.21.0_typescript@4.9.5: resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: 1.14.1 - typescript: 4.9.4 + typescript: 4.9.5 dev: true /tunnel-agent/0.6.0: @@ -3979,8 +3980,8 @@ packages: engines: {node: '>=10'} dev: true - /typescript/4.9.4: - resolution: {integrity: sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==} + /typescript/4.9.5: + resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} engines: {node: '>=4.2.0'} hasBin: true dev: true @@ -3998,8 +3999,8 @@ packages: typpy: 2.3.13 dev: true - /undici/5.15.1: - resolution: {integrity: sha512-XLk8g0WAngdvFqTI+VKfBtM4YWXgdxkf1WezC771Es0Dd+Pm1KmNx8t93WTC+Hh9tnghmVxkclU1HN+j+CvIUA==} + /undici/5.18.0: + resolution: {integrity: sha512-1iVwbhonhFytNdg0P4PqyIAXbdlVZVebtPDvuM36m66mRw4OGrCm2MYynJv/UENFLdP13J1nPVQzVE2zTs1OeA==} engines: {node: '>=12.18'} dependencies: busboy: 1.6.0 @@ -4053,8 +4054,8 @@ packages: - rollup dev: true - /vite/4.0.4_ovmyjmuuyckt3r3gpaexj2onji: - resolution: {integrity: sha512-xevPU7M8FU0i/80DMR+YhgrzR5KS2ORy1B4xcX/cXLsvnUWvfHuqMmVU6N0YiJ4JWGRJJsLCgjEzKjG9/GKoSw==} + /vite/4.1.1_f5vcjb3akvjdur4ffzogu2hewu: + resolution: {integrity: sha512-LM9WWea8vsxhr782r9ntg+bhSFS06FJgCvvB0+8hf8UWtvaiDagKYWXndjfX6kGl74keHJUcpzrQliDXZlF5yg==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true peerDependencies: @@ -4083,13 +4084,13 @@ packages: postcss: 8.4.21 resolve: 1.22.1 rollup: 3.10.1 - sass: 1.57.1 + sass: 1.58.0 optionalDependencies: fsevents: 2.3.2 dev: true - /vite/4.0.4_sass@1.57.1: - resolution: {integrity: sha512-xevPU7M8FU0i/80DMR+YhgrzR5KS2ORy1B4xcX/cXLsvnUWvfHuqMmVU6N0YiJ4JWGRJJsLCgjEzKjG9/GKoSw==} + /vite/4.1.1_sass@1.58.0: + resolution: {integrity: sha512-LM9WWea8vsxhr782r9ntg+bhSFS06FJgCvvB0+8hf8UWtvaiDagKYWXndjfX6kGl74keHJUcpzrQliDXZlF5yg==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true peerDependencies: @@ -4117,12 +4118,12 @@ packages: postcss: 8.4.21 resolve: 1.22.1 rollup: 3.10.1 - sass: 1.57.1 + sass: 1.58.0 optionalDependencies: fsevents: 2.3.2 dev: true - /vitefu/0.2.4_vite@4.0.4: + /vitefu/0.2.4_vite@4.1.1: resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==} peerDependencies: vite: ^3.0.0 || ^4.0.0 @@ -4130,10 +4131,10 @@ packages: vite: optional: true dependencies: - vite: 4.0.4_sass@1.57.1 + vite: 4.1.1_sass@1.58.0 dev: true - /vitest/0.25.8_sass@1.57.1: + /vitest/0.25.8_sass@1.58.0: resolution: {integrity: sha512-X75TApG2wZTJn299E/TIYevr4E9/nBo1sUtZzn0Ci5oK8qnpZAZyhwg0qCeMSakGIWtc6oRwcQFyFfW14aOFWg==} engines: {node: '>=v14.16.0'} hasBin: true @@ -4168,7 +4169,7 @@ packages: tinybench: 2.3.1 tinypool: 0.3.0 tinyspy: 1.0.2 - vite: 4.0.4_ovmyjmuuyckt3r3gpaexj2onji + vite: 4.1.1_f5vcjb3akvjdur4ffzogu2hewu transitivePeerDependencies: - less - sass diff --git a/src/routes/api.ts b/src/routes/api.ts index 31b76a2..df9fa4a 100644 --- a/src/routes/api.ts +++ b/src/routes/api.ts @@ -68,6 +68,8 @@ export async function fetchArticlesApi( throw new Error(pageResponse.statusText); } + const cacheControl = pageResponse.headers.get('cache-control'); + const { _embedded, page, pages, total, limit } = await pageResponse.json(); const articles: Article[] = []; @@ -110,5 +112,12 @@ export async function fetchArticlesApi( // entries = await response.json(); // } while (entries._links.next); - return { articles, currentPage: page, totalPages: pages, limit, totalArticles: total }; + return { + articles, + currentPage: page, + totalPages: pages, + limit, + totalArticles: total, + cacheControl + }; } diff --git a/src/routes/api/articles/+server.ts b/src/routes/api/articles/+server.ts index b418a73..4b22943 100644 --- a/src/routes/api/articles/+server.ts +++ b/src/routes/api/articles/+server.ts @@ -9,9 +9,17 @@ export const GET: RequestHandler = async ({ url, setHeaders }: RequestEvent) => }); if (response?.articles) { - setHeaders({ - 'cache-control': 'max-age=60' - }); + if (response?.cacheControl) { + if (!response.cacheControl.includes('no-cache')) { + setHeaders({ + 'cache-control': response?.cacheControl + }); + } else { + setHeaders({ + 'cache-control': 'max-age=43200' + }); + } + } // const articlesResponse = response.articles; // console.log(`Found articles ${articlesResponse?.articles?.length}`); diff --git a/src/routes/articles/[page]/+page.svelte b/src/routes/articles/[page]/+page.svelte index 44052ad..2d6d014 100644 --- a/src/routes/articles/[page]/+page.svelte +++ b/src/routes/articles/[page]/+page.svelte @@ -55,7 +55,7 @@