From 07e9ff9d10315de085af8ca68d4d92d3538baf19 Mon Sep 17 00:00:00 2001 From: sheodox <imagamer27@msn.com> Date: Sat, 16 Dec 2023 21:32:21 -0600 Subject: [PATCH 1/2] Support 0.19 auth changes, nsfw edit fix The main part of this is updating to the way 0.19 does auth. Additionally, if you edit a post that was marked NSFW, the NSFW setting defaults to the current value. Previously you'd need to check it again, fixes #87. --- package-lock.json | 529 +++++++++--------- package.json | 46 +- src/lib/CommunityJoin.svelte | 1 - src/lib/CommunitySelector.svelte | 2 - src/lib/InboxReadButton.svelte | 3 - src/lib/MarkdownEditor.svelte | 1 - src/lib/PostPage.svelte | 5 +- src/lib/PrivateMessage.svelte | 2 - src/lib/PrivateMessageCompose.svelte | 2 - src/lib/UserCounts.svelte | 6 +- src/lib/comments/Comment.svelte | 12 +- .../community-context/community-context.ts | 1 - src/lib/feed-query.ts | 3 - src/lib/feeds/posts/CommunityHeader.svelte | 1 - src/lib/feeds/posts/PostLayout.svelte | 12 +- src/lib/feeds/posts/UserBadges.svelte | 5 +- src/lib/instance/InstanceSidebar.svelte | 9 +- src/lib/lemmy-client.ts | 46 +- src/lib/mod/ModContext.svelte | 12 +- src/lib/profiles/profiles.ts | 2 +- src/routes/(app)/[instance]/+layout.svelte | 8 +- src/routes/(app)/[instance]/+layout.ts | 4 +- .../[instance]/c/[communityName]/+page.ts | 5 +- .../[communityName]/post/[postId]/+layout.ts | 5 +- .../post/[postId]/delete/+page.svelte | 1 - .../post/[postId]/delete/+page.ts | 4 +- .../post/[postId]/edit/+page.svelte | 2 +- .../post/[postId]/edit/+page.ts | 2 +- .../[instance]/comment/[commentId]/+page.ts | 5 +- .../(app)/[instance]/communities/+page.svelte | 1 - .../(app)/[instance]/create/post/+layout.ts | 3 +- .../(app)/[instance]/create/post/+page.svelte | 1 - .../(app)/[instance]/create/post/+page.ts | 1 - .../(app)/[instance]/inbox/+page.svelte | 5 +- .../[instance]/message/[recipientId]/+page.ts | 3 +- src/routes/(app)/[instance]/modlog/+layout.ts | 3 +- .../(app)/[instance]/modlog/view/+page.svelte | 5 +- .../(app)/[instance]/modlog/view/+page.ts | 1 - .../(app)/[instance]/post/[postId]/+page.ts | 2 +- .../(app)/[instance]/reports/+page.svelte | 1 - .../[instance]/reports/ReportedComment.svelte | 1 - .../[instance]/reports/ReportedPost.svelte | 1 - .../(app)/[instance]/search/+page.svelte | 1 - src/routes/(app)/[instance]/search/+page.ts | 2 - .../(app)/[instance]/settings/blocks/+page.ts | 4 +- .../settings/blocks/CommunityBlock.svelte | 1 - .../settings/blocks/PersonBlock.svelte | 1 - .../[instance]/settings/lemmy/+page.svelte | 9 +- .../(app)/[instance]/settings/lemmy/+page.ts | 4 +- .../(app)/[instance]/u/[username]/+page.ts | 3 +- src/routes/(meta)/about/+page.svelte | 8 + src/routes/(meta)/instance/+page.svelte | 14 +- .../instance/signup/[instance]/+page.ts | 2 +- static/buy_me_a_coffee.png | Bin 0 -> 4691 bytes 54 files changed, 393 insertions(+), 420 deletions(-) create mode 100644 static/buy_me_a_coffee.png diff --git a/package-lock.json b/package-lock.json index cbe792a..c8ffc83 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,17 +1,17 @@ { "name": "Alexandrite", - "version": "0.8.11", + "version": "0.8.12", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "Alexandrite", - "version": "0.8.11", + "version": "0.8.12", "dependencies": { - "@fortawesome/fontawesome-free": "^6.4.0", + "@fortawesome/fontawesome-free": "^6.4.2", "date-fns": "^2.30.0", - "lemmy-js-client": "^0.18.3-rc.3", - "markdown-it": "^13.0.1", + "lemmy-js-client": "^0.19.0-rc.19", + "markdown-it": "^13.0.2", "markdown-it-container": "^3.0.0", "markdown-it-footnote": "^3.0.3", "markdown-it-ruby": "^0.1.1", @@ -21,25 +21,25 @@ "devDependencies": { "@sveltejs/adapter-auto": "^2.0.0", "@sveltejs/adapter-node": "^1.3.1", - "@sveltejs/kit": "^1.22.3", - "@types/markdown-it": "^12.2.3", - "@types/markdown-it-container": "^2.0.6", - "@types/markdown-it-footnote": "^3.0.0", - "@typescript-eslint/eslint-plugin": "^6.2.0", - "@typescript-eslint/parser": "^6.2.0", - "eslint": "^8.45.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-svelte": "^2.32.4", - "prettier": "^3.0.0", - "prettier-plugin-svelte": "^3.0.0", - "sass": "^1.64.1", + "@sveltejs/kit": "^1.27.1", + "@types/markdown-it": "^13.0.5", + "@types/markdown-it-container": "^2.0.8", + "@types/markdown-it-footnote": "^3.0.2", + "@typescript-eslint/eslint-plugin": "^6.9.0", + "@typescript-eslint/parser": "^6.9.0", + "eslint": "^8.52.0", + "eslint-config-prettier": "^9.0.0", + "eslint-plugin-svelte": "^2.34.0", + "prettier": "^3.0.3", + "prettier-plugin-svelte": "^3.0.3", + "sass": "^1.69.4", "sheodox-ui": "^0.20.3", - "svelte": "^4.1.1", - "svelte-check": "^3.4.6", - "tslib": "^2.6.1", - "typescript": "^5.1.6", - "vite": "^4.4.7", - "vitest": "^0.33.0" + "svelte": "^4.2.2", + "svelte-check": "^3.5.2", + "tslib": "^2.6.2", + "typescript": "^5.2.2", + "vite": "^4.5.0", + "vitest": "^0.34.6" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -443,18 +443,18 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz", - "integrity": "sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==", + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz", - "integrity": "sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -475,9 +475,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz", - "integrity": "sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==", + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.52.0.tgz", + "integrity": "sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -508,21 +508,21 @@ } }, "node_modules/@fortawesome/fontawesome-free": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.4.0.tgz", - "integrity": "sha512-0NyytTlPJwB/BF5LtRV8rrABDbe3TdTXqNB3PdZ+UUUZAEIrdOJdmABqKjt4AXwIoJNaRVVZEXxpNrqvE1GAYQ==", + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.4.2.tgz", + "integrity": "sha512-m5cPn3e2+FDCOgi1mz0RexTUvvQibBebOUlUlW0+YrMjDTPkiJ6VTKukA1GRsvRw+12KyJndNjj0O4AgTxm2Pg==", "hasInstallScript": true, "engines": { "node": ">=6" } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", - "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==", + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", + "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", + "@humanwhocodes/object-schema": "^2.0.1", "debug": "^4.1.1", "minimatch": "^3.0.5" }, @@ -544,15 +544,15 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", + "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", "dev": true }, "node_modules/@jest/schemas": { - "version": "29.6.0", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.0.tgz", - "integrity": "sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", "dev": true, "dependencies": { "@sinclair/typebox": "^0.27.8" @@ -855,9 +855,9 @@ } }, "node_modules/@sveltejs/kit": { - "version": "1.26.0", - "resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-1.26.0.tgz", - "integrity": "sha512-CV/AlTziC05yrz7UjVqEd0pH6+2dnrbmcnHGr2d3jXtmOgzNnlDkXtX8g3BfJ6nntsPD+0jtS2PzhvRHblRz4A==", + "version": "1.27.1", + "resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-1.27.1.tgz", + "integrity": "sha512-nYkOUJKbeI8fcwvt/cyhTdz6VG4kT6XVprNnzfIwif+IZ8RvxvJuPhPhYjz14ASIcMLpq8xC6D3X4xH3bvWi+Q==", "dev": true, "hasInstallScript": true, "dependencies": { @@ -953,9 +953,9 @@ "dev": true }, "node_modules/@types/json-schema": { - "version": "7.0.12", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz", - "integrity": "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==", + "version": "7.0.14", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.14.tgz", + "integrity": "sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw==", "dev": true }, "node_modules/@types/linkify-it": { @@ -965,9 +965,9 @@ "dev": true }, "node_modules/@types/markdown-it": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-12.2.3.tgz", - "integrity": "sha512-GKMHFfv3458yYy+v/N8gjufHO6MSZKCOXpZc5GXIWWy8uldwfmPn98vp81gZ5f9SVw8YYBctgfJ22a2d7AOMeQ==", + "version": "13.0.5", + "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-13.0.5.tgz", + "integrity": "sha512-QhJP7hkq3FCrFNx0szMNCT/79CXfcEgUIA3jc5GBfeXqoKsk3R8JZm2wRXJ2DiyjbPE4VMFOSDemLFcUTZmHEQ==", "dev": true, "dependencies": { "@types/linkify-it": "*", @@ -975,18 +975,18 @@ } }, "node_modules/@types/markdown-it-container": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/markdown-it-container/-/markdown-it-container-2.0.6.tgz", - "integrity": "sha512-euUVSCx2+tGV8BlI7yA7AXmNsLzYCoUbg/O2jJ0wzV/0oxKbmd5RJZI2map8cuEKgmjNy13ndFWRZZO+6rl0GA==", + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/@types/markdown-it-container/-/markdown-it-container-2.0.8.tgz", + "integrity": "sha512-epl+pYkAXmMOncHnp0uWsGkM00r/+5ClRAiQJz7iX3NX5cydJcBkIJEPkORpL9DSgunXpXkZt9spYHbJPuSJZw==", "dev": true, "dependencies": { "@types/markdown-it": "*" } }, "node_modules/@types/markdown-it-footnote": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/markdown-it-footnote/-/markdown-it-footnote-3.0.0.tgz", - "integrity": "sha512-d6KGv1ZhzDdjMB0F+PmuCFuc4QPIsiyWbzldwxAqWz0TZHvSiHwTp5cj5D/6Qfqfv8mJ0HScaMgLt1zlcKjpyw==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/markdown-it-footnote/-/markdown-it-footnote-3.0.2.tgz", + "integrity": "sha512-9rr8j0a0TpTDTysTnMzdvbIV96X2p3XHWOOnlF+gwY8HOFCHxqN/93+1ZZlCrU7gpA4deiL63oKkdRrzRHzHxA==", "dev": true, "dependencies": { "@types/markdown-it": "*" @@ -1017,27 +1017,26 @@ "dev": true }, "node_modules/@types/semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-MMzuxN3GdFwskAnb6fz0orFvhfqi752yjaXylr0Rp4oDg5H0Zn1IuyRhDVvYOwAXoJirx2xuS16I3WjxnAIHiQ==", "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.2.0.tgz", - "integrity": "sha512-rClGrMuyS/3j0ETa1Ui7s6GkLhfZGKZL3ZrChLeAiACBE/tRc1wq8SNZESUuluxhLj9FkUefRs2l6bCIArWBiQ==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.9.0.tgz", + "integrity": "sha512-lgX7F0azQwRPB7t7WAyeHWVfW1YJ9NIgd9mvGhfQpRY56X6AVf8mwM8Wol+0z4liE7XX3QOt8MN1rUKCfSjRIA==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.2.0", - "@typescript-eslint/type-utils": "6.2.0", - "@typescript-eslint/utils": "6.2.0", - "@typescript-eslint/visitor-keys": "6.2.0", + "@typescript-eslint/scope-manager": "6.9.0", + "@typescript-eslint/type-utils": "6.9.0", + "@typescript-eslint/utils": "6.9.0", + "@typescript-eslint/visitor-keys": "6.9.0", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", "natural-compare": "^1.4.0", - "natural-compare-lite": "^1.4.0", "semver": "^7.5.4", "ts-api-utils": "^1.0.1" }, @@ -1059,15 +1058,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.2.0.tgz", - "integrity": "sha512-igVYOqtiK/UsvKAmmloQAruAdUHihsOCvplJpplPZ+3h4aDkC/UKZZNKgB6h93ayuYLuEymU3h8nF1xMRbh37g==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.9.0.tgz", + "integrity": "sha512-GZmjMh4AJ/5gaH4XF2eXA8tMnHWP+Pm1mjQR2QN4Iz+j/zO04b9TOvJYOX2sCNIQHtRStKTxRY1FX7LhpJT4Gw==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.2.0", - "@typescript-eslint/types": "6.2.0", - "@typescript-eslint/typescript-estree": "6.2.0", - "@typescript-eslint/visitor-keys": "6.2.0", + "@typescript-eslint/scope-manager": "6.9.0", + "@typescript-eslint/types": "6.9.0", + "@typescript-eslint/typescript-estree": "6.9.0", + "@typescript-eslint/visitor-keys": "6.9.0", "debug": "^4.3.4" }, "engines": { @@ -1087,13 +1086,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.2.0.tgz", - "integrity": "sha512-1ZMNVgm5nnHURU8ZSJ3snsHzpFeNK84rdZjluEVBGNu7jDymfqceB3kdIZ6A4xCfEFFhRIB6rF8q/JIqJd2R0Q==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.9.0.tgz", + "integrity": "sha512-1R8A9Mc39n4pCCz9o79qRO31HGNDvC7UhPhv26TovDsWPBDx+Sg3rOZdCELIA3ZmNoWAuxaMOT7aWtGRSYkQxw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.2.0", - "@typescript-eslint/visitor-keys": "6.2.0" + "@typescript-eslint/types": "6.9.0", + "@typescript-eslint/visitor-keys": "6.9.0" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -1104,13 +1103,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.2.0.tgz", - "integrity": "sha512-DnGZuNU2JN3AYwddYIqrVkYW0uUQdv0AY+kz2M25euVNlujcN2u+rJgfJsBFlUEzBB6OQkUqSZPyuTLf2bP5mw==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.9.0.tgz", + "integrity": "sha512-XXeahmfbpuhVbhSOROIzJ+b13krFmgtc4GlEuu1WBT+RpyGPIA4Y/eGnXzjbDj5gZLzpAXO/sj+IF/x2GtTMjQ==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.2.0", - "@typescript-eslint/utils": "6.2.0", + "@typescript-eslint/typescript-estree": "6.9.0", + "@typescript-eslint/utils": "6.9.0", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -1131,9 +1130,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.2.0.tgz", - "integrity": "sha512-1nRRaDlp/XYJQLvkQJG5F3uBTno5SHPT7XVcJ5n1/k2WfNI28nJsvLakxwZRNY5spuatEKO7d5nZWsQpkqXwBA==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.9.0.tgz", + "integrity": "sha512-+KB0lbkpxBkBSiVCuQvduqMJy+I1FyDbdwSpM3IoBS7APl4Bu15lStPjgBIdykdRqQNYqYNMa8Kuidax6phaEw==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -1144,13 +1143,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.2.0.tgz", - "integrity": "sha512-Mts6+3HQMSM+LZCglsc2yMIny37IhUgp1Qe8yJUYVyO6rHP7/vN0vajKu3JvHCBIy8TSiKddJ/Zwu80jhnGj1w==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.9.0.tgz", + "integrity": "sha512-NJM2BnJFZBEAbCfBP00zONKXvMqihZCrmwCaik0UhLr0vAgb6oguXxLX1k00oQyD+vZZ+CJn3kocvv2yxm4awQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.2.0", - "@typescript-eslint/visitor-keys": "6.2.0", + "@typescript-eslint/types": "6.9.0", + "@typescript-eslint/visitor-keys": "6.9.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -1171,17 +1170,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.2.0.tgz", - "integrity": "sha512-RCFrC1lXiX1qEZN8LmLrxYRhOkElEsPKTVSNout8DMzf8PeWoQG7Rxz2SadpJa3VSh5oYKGwt7j7X/VRg+Y3OQ==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.9.0.tgz", + "integrity": "sha512-5Wf+Jsqya7WcCO8me504FBigeQKVLAMPmUzYgDbWchINNh1KJbxCgVya3EQ2MjvJMVeXl3pofRmprqX6mfQkjQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.2.0", - "@typescript-eslint/types": "6.2.0", - "@typescript-eslint/typescript-estree": "6.2.0", + "@typescript-eslint/scope-manager": "6.9.0", + "@typescript-eslint/types": "6.9.0", + "@typescript-eslint/typescript-estree": "6.9.0", "semver": "^7.5.4" }, "engines": { @@ -1196,12 +1195,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.2.0.tgz", - "integrity": "sha512-QbaYUQVKKo9bgCzpjz45llCfwakyoxHetIy8CAvYCtd16Zu1KrpzNHofwF8kGkpPOxZB2o6kz+0nqH8ZkIzuoQ==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.9.0.tgz", + "integrity": "sha512-dGtAfqjV6RFOtIP8I0B4ZTBRrlTT8NHHlZZSchQx3qReaoDeXhYM++M4So2AgFK9ZB0emRPA6JI1HkafzA2Ibg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.2.0", + "@typescript-eslint/types": "6.9.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -1212,27 +1211,33 @@ "url": "https://opencollective.com/typescript-eslint" } }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, "node_modules/@vitest/expect": { - "version": "0.33.0", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-0.33.0.tgz", - "integrity": "sha512-sVNf+Gla3mhTCxNJx+wJLDPp/WcstOe0Ksqz4Vec51MmgMth/ia0MGFEkIZmVGeTL5HtjYR4Wl/ZxBxBXZJTzQ==", + "version": "0.34.6", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-0.34.6.tgz", + "integrity": "sha512-QUzKpUQRc1qC7qdGo7rMK3AkETI7w18gTCUrsNnyjjJKYiuUB9+TQK3QnR1unhCnWRC0AbKv2omLGQDF/mIjOw==", "dev": true, "dependencies": { - "@vitest/spy": "0.33.0", - "@vitest/utils": "0.33.0", - "chai": "^4.3.7" + "@vitest/spy": "0.34.6", + "@vitest/utils": "0.34.6", + "chai": "^4.3.10" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/@vitest/runner": { - "version": "0.33.0", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-0.33.0.tgz", - "integrity": "sha512-UPfACnmCB6HKRHTlcgCoBh6ppl6fDn+J/xR8dTufWiKt/74Y9bHci5CKB8tESSV82zKYtkBJo9whU3mNvfaisg==", + "version": "0.34.6", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-0.34.6.tgz", + "integrity": "sha512-1CUQgtJSLF47NnhN+F9X2ycxUP0kLHQ/JWvNHbeBfwW8CzEGgeskzNnHDyv1ieKTltuR6sdIHV+nmR6kPxQqzQ==", "dev": true, "dependencies": { - "@vitest/utils": "0.33.0", + "@vitest/utils": "0.34.6", "p-limit": "^4.0.0", "pathe": "^1.1.1" }, @@ -1268,9 +1273,9 @@ } }, "node_modules/@vitest/snapshot": { - "version": "0.33.0", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-0.33.0.tgz", - "integrity": "sha512-tJjrl//qAHbyHajpFvr8Wsk8DIOODEebTu7pgBrP07iOepR5jYkLFiqLq2Ltxv+r0uptUb4izv1J8XBOwKkVYA==", + "version": "0.34.6", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-0.34.6.tgz", + "integrity": "sha512-B3OZqYn6k4VaN011D+ve+AA4whM4QkcwcrwaKwAbyyvS/NB1hCWjFIBQxAQQSQir9/RtyAAGuq+4RJmbn2dH4w==", "dev": true, "dependencies": { "magic-string": "^0.30.1", @@ -1282,9 +1287,9 @@ } }, "node_modules/@vitest/spy": { - "version": "0.33.0", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-0.33.0.tgz", - "integrity": "sha512-Kv+yZ4hnH1WdiAkPUQTpRxW8kGtH8VRTnus7ZTGovFYM1ZezJpvGtb9nPIjPnptHbsyIAxYZsEpVPYgtpjGnrg==", + "version": "0.34.6", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-0.34.6.tgz", + "integrity": "sha512-xaCvneSaeBw/cz8ySmF7ZwGvL0lBjfvqc1LpQ/vcdHEvpLn3Ff1vAvjw+CoGn0802l++5L/pxb7whwcWAw+DUQ==", "dev": true, "dependencies": { "tinyspy": "^2.1.1" @@ -1294,9 +1299,9 @@ } }, "node_modules/@vitest/utils": { - "version": "0.33.0", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-0.33.0.tgz", - "integrity": "sha512-pF1w22ic965sv+EN6uoePkAOTkAPWM03Ri/jXNyMIKBb/XHLDPfhLvf/Fa9g0YECevAIz56oVYXhodLvLQ/awA==", + "version": "0.34.6", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-0.34.6.tgz", + "integrity": "sha512-IG5aDD8S6zlvloDsnzHw0Ut5xczlF+kv2BOTo+iXfPr54Yhi5qbVOgGB1hZaVq4iJ4C/MZ2J0y15IlsV/ZcI0A==", "dev": true, "dependencies": { "diff-sequences": "^29.4.3", @@ -1308,9 +1313,9 @@ } }, "node_modules/acorn": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.9.0.tgz", - "integrity": "sha512-jaVNAFBHNLXspO543WnNNPZFRtavh3skAkITqD0/2aeMkKZTN+254PyhwxFYrk3vQ1xfY+2wbesJMs/JC8/PwQ==", + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -1513,18 +1518,18 @@ } }, "node_modules/chai": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.7.tgz", - "integrity": "sha512-HLnAzZ2iupm25PlN0xFreAlBA5zaBSv3og0DdeGA4Ar6h6rJ3A0rolRUKJhSF2V10GZKDgWF/VmAEsNWjCRB+A==", + "version": "4.3.10", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.10.tgz", + "integrity": "sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==", "dev": true, "dependencies": { "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^4.1.2", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", "pathval": "^1.1.1", - "type-detect": "^4.0.5" + "type-detect": "^4.0.8" }, "engines": { "node": ">=4" @@ -1547,10 +1552,13 @@ } }, "node_modules/check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", "dev": true, + "dependencies": { + "get-func-name": "^2.0.2" + }, "engines": { "node": "*" } @@ -1802,9 +1810,9 @@ "dev": true }, "node_modules/diff-sequences": { - "version": "29.4.3", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", - "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", "dev": true, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" @@ -1901,27 +1909,28 @@ } }, "node_modules/eslint": { - "version": "8.45.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.45.0.tgz", - "integrity": "sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==", + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.52.0.tgz", + "integrity": "sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", - "@humanwhocodes/config-array": "^0.11.10", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "8.52.0", + "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -1955,9 +1964,9 @@ } }, "node_modules/eslint-config-prettier": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.8.0.tgz", - "integrity": "sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz", + "integrity": "sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==", "dev": true, "bin": { "eslint-config-prettier": "bin/cli.js" @@ -1967,9 +1976,9 @@ } }, "node_modules/eslint-plugin-svelte": { - "version": "2.32.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-svelte/-/eslint-plugin-svelte-2.32.4.tgz", - "integrity": "sha512-VJ12i2Iogug1jvhwxSlognnfGj76P5gks/V4pUD4SCSVQOp14u47MNP0zAG8AQR3LT0Fi1iUvIFnY4l9z5Rwbg==", + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-svelte/-/eslint-plugin-svelte-2.34.0.tgz", + "integrity": "sha512-4RYUgNai7wr0v+T/kljMiYSjC/oqwgq5i+cPppawryAayj4C7WK1ixFlWCGmNmBppnoKCl4iA4ZPzPtlHcb4CA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", @@ -1982,7 +1991,7 @@ "postcss-safe-parser": "^6.0.0", "postcss-selector-parser": "^6.0.11", "semver": "^7.5.3", - "svelte-eslint-parser": "^0.32.2" + "svelte-eslint-parser": ">=0.33.0 <1.0.0" }, "engines": { "node": "^14.17.0 || >=16.0.0" @@ -2001,9 +2010,9 @@ } }, "node_modules/eslint-scope": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.1.tgz", - "integrity": "sha512-CvefSOsDdaYYvxChovdrPo/ZGt8d5lrJWleAc1diXRKhHGiTYEI26cvo8Kle/wGnsizoCJjK73FMg1/IkIwiNA==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -2017,9 +2026,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", - "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2297,9 +2306,9 @@ } }, "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -2587,9 +2596,9 @@ "dev": true }, "node_modules/lemmy-js-client": { - "version": "0.18.3-rc.3", - "resolved": "https://registry.npmjs.org/lemmy-js-client/-/lemmy-js-client-0.18.3-rc.3.tgz", - "integrity": "sha512-njixgXk4uMU4gGifnljwhSe9Kf445C4wAXcXhtpTtwPPLXpHQgxA1RASMb9Uq4zblfE6nC2JbrAka8y8N2N/Bw==", + "version": "0.19.0-rc.19", + "resolved": "https://registry.npmjs.org/lemmy-js-client/-/lemmy-js-client-0.19.0-rc.19.tgz", + "integrity": "sha512-kae8V33QixbyYIA+pn7+sCeOOWL3eRgnFaNkZU8Y8vxhwZExIhkZus9jzVt/BoyPddVlafyBHxgAUsWXLA4tRA==", "dependencies": { "cross-fetch": "^3.1.5", "form-data": "^4.0.0" @@ -2665,12 +2674,12 @@ "dev": true }, "node_modules/loupe": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", - "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", + "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", "dev": true, "dependencies": { - "get-func-name": "^2.0.0" + "get-func-name": "^2.0.1" } }, "node_modules/lower-case": { @@ -2695,9 +2704,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.1", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.1.tgz", - "integrity": "sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==", + "version": "0.30.5", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz", + "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" @@ -2707,9 +2716,9 @@ } }, "node_modules/markdown-it": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-13.0.1.tgz", - "integrity": "sha512-lTlxriVoy2criHP0JKRhO2VDG9c2ypWCsT237eDiLqi09rmbKoUetyGHq2uOIRoRS//kfoJckS0eUzzkDR+k2Q==", + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-13.0.2.tgz", + "integrity": "sha512-FtwnEuuK+2yVU7goGn/MJ0WBZMM9ZPgU9spqlFs7/A/pDIUNSOQZhUgOqYCficIuR2QaFnrt8LHqBWsbTAoI5w==", "dependencies": { "argparse": "^2.0.1", "entities": "~3.0.1", @@ -2841,15 +2850,15 @@ } }, "node_modules/mlly": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.4.0.tgz", - "integrity": "sha512-ua8PAThnTwpprIaU47EPeZ/bPUVp2QYBbWMphUQpVdBI3Lgqzm5KZQ45Agm3YJedHXaIHl6pBGabaLSUPPSptg==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.4.2.tgz", + "integrity": "sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==", "dev": true, "dependencies": { - "acorn": "^8.9.0", + "acorn": "^8.10.0", "pathe": "^1.1.1", "pkg-types": "^1.0.3", - "ufo": "^1.1.2" + "ufo": "^1.3.0" } }, "node_modules/mri": { @@ -2900,12 +2909,6 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, - "node_modules/natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", - "dev": true - }, "node_modules/no-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", @@ -3199,9 +3202,9 @@ } }, "node_modules/postcss-scss": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.6.tgz", - "integrity": "sha512-rLDPhJY4z/i4nVFZ27j9GqLxj1pwxE80eAzUNRMXtcpipFYIeowerzBgG3yJhMtObGEXidtIgbUpQ3eLDsf5OQ==", + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.9.tgz", + "integrity": "sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==", "dev": true, "funding": [ { @@ -3211,13 +3214,17 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/postcss-scss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "engines": { "node": ">=12.0" }, "peerDependencies": { - "postcss": "^8.4.19" + "postcss": "^8.4.29" } }, "node_modules/postcss-selector-parser": { @@ -3243,9 +3250,9 @@ } }, "node_modules/prettier": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.0.tgz", - "integrity": "sha512-zBf5eHpwHOGPC47h0zrPyNn+eAEIdEzfywMoYn2XPi0P44Zp0tSq64rq0xAREh4auw2cJZHo9QUob+NqCQky4g==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.3.tgz", + "integrity": "sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -3258,9 +3265,9 @@ } }, "node_modules/prettier-plugin-svelte": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/prettier-plugin-svelte/-/prettier-plugin-svelte-3.0.0.tgz", - "integrity": "sha512-l3RQcPty2UBCoRh3yb9c5XCAmxkrc4BptAnbd5acO1gmSJtChOWkiEjnOvh7hvmtT4V80S8gXCOKAq8RNeIzSw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/prettier-plugin-svelte/-/prettier-plugin-svelte-3.0.3.tgz", + "integrity": "sha512-dLhieh4obJEK1hnZ6koxF+tMUrZbV5YGvRpf2+OADyanjya5j0z1Llo8iGwiHmFWZVG/hLEw/AJD5chXd9r3XA==", "dev": true, "peerDependencies": { "prettier": "^3.0.0", @@ -3268,12 +3275,12 @@ } }, "node_modules/pretty-format": { - "version": "29.6.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.1.tgz", - "integrity": "sha512-7jRj+yXO0W7e4/tSJKoR7HRIHLPPjtNaUGG2xxKQnGvPNRkgWcQ0AZX6P4KBRJN4FcTBWb3sa7DVUJmocYuoog==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", "dev": true, "dependencies": { - "@jest/schemas": "^29.6.0", + "@jest/schemas": "^29.6.3", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -3397,9 +3404,9 @@ } }, "node_modules/rollup": { - "version": "3.26.3", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.26.3.tgz", - "integrity": "sha512-7Tin0C8l86TkpcMtXvQu6saWH93nhG3dGQ1/+l5V2TDMceTxO7kDiK6GzbfLWNNxqJXm591PcEZUozZm51ogwQ==", + "version": "3.29.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", + "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==", "dev": true, "bin": { "rollup": "dist/bin/rollup" @@ -3472,9 +3479,9 @@ } }, "node_modules/sass": { - "version": "1.64.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.1.tgz", - "integrity": "sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==", + "version": "1.69.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.69.4.tgz", + "integrity": "sha512-+qEreVhqAy8o++aQfCJwp0sklr2xyEzkm9Pp/Igu9wNPoe7EZEQ8X/MBvvXggI2ql607cxKg/RKOwDj6pp2XDA==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -3710,9 +3717,9 @@ } }, "node_modules/svelte": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/svelte/-/svelte-4.1.1.tgz", - "integrity": "sha512-Enick5fPFISLoVy0MFK45cG+YlQt6upw8skEK9zzTpJnH1DqEv8xOZwizCGSo3Q6HZ7KrZTM0J18poF7aQg5zw==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/svelte/-/svelte-4.2.2.tgz", + "integrity": "sha512-My2tytF2e2NnHSpn2M7/3VdXT4JdTglYVUuSuK/mXL2XtulPYbeBfl8Dm1QiaKRn0zoULRnL+EtfZHHP0k4H3A==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.1", @@ -3726,7 +3733,7 @@ "estree-walker": "^3.0.3", "is-reference": "^3.0.1", "locate-character": "^3.0.0", - "magic-string": "^0.30.0", + "magic-string": "^0.30.4", "periscopic": "^3.1.0" }, "engines": { @@ -3734,9 +3741,9 @@ } }, "node_modules/svelte-check": { - "version": "3.4.6", - "resolved": "https://registry.npmjs.org/svelte-check/-/svelte-check-3.4.6.tgz", - "integrity": "sha512-OBlY8866Zh1zHQTkBMPS6psPi7o2umTUyj6JWm4SacnIHXpWFm658pG32m3dKvKFL49V4ntAkfFHKo4ztH07og==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/svelte-check/-/svelte-check-3.5.2.tgz", + "integrity": "sha512-5a/YWbiH4c+AqAUP+0VneiV5bP8YOk9JL3jwvN+k2PEPLgpu85bjQc5eE67+eIZBBwUEJzmO3I92OqKcqbp3fw==", "dev": true, "dependencies": { "@jridgewell/trace-mapping": "^0.3.17", @@ -3756,16 +3763,16 @@ } }, "node_modules/svelte-eslint-parser": { - "version": "0.32.2", - "resolved": "https://registry.npmjs.org/svelte-eslint-parser/-/svelte-eslint-parser-0.32.2.tgz", - "integrity": "sha512-Ok9D3A4b23iLQsONrjqtXtYDu5ZZ/826Blaw2LeFZVTg1pwofKDG4mz3/GYTax8fQ0plRGHI6j+d9VQYy5Lo/A==", + "version": "0.33.1", + "resolved": "https://registry.npmjs.org/svelte-eslint-parser/-/svelte-eslint-parser-0.33.1.tgz", + "integrity": "sha512-vo7xPGTlKBGdLH8T5L64FipvTrqv3OQRx9d2z5X05KKZDlF4rQk8KViZO4flKERY+5BiVdOh7zZ7JGJWo5P0uA==", "dev": true, "dependencies": { "eslint-scope": "^7.0.0", "eslint-visitor-keys": "^3.0.0", "espree": "^9.0.0", - "postcss": "^8.4.25", - "postcss-scss": "^4.0.6" + "postcss": "^8.4.29", + "postcss-scss": "^4.0.8" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -3905,18 +3912,18 @@ "dev": true }, "node_modules/tinypool": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.6.0.tgz", - "integrity": "sha512-FdswUUo5SxRizcBc6b1GSuLpLjisa8N8qMyYoP3rl+bym+QauhtJP5bvZY1ytt8krKGmMLYIRl36HBZfeAoqhQ==", + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.7.0.tgz", + "integrity": "sha512-zSYNUlYSMhJ6Zdou4cJwo/p7w5nmAH17GRfU/ui3ctvjXFErXXkruT4MWW6poDeXgCaIBlGLrfU6TbTXxyGMww==", "dev": true, "engines": { "node": ">=14.0.0" } }, "node_modules/tinyspy": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-2.1.1.tgz", - "integrity": "sha512-XPJL2uSzcOyBMky6OFrusqWlzfFrXtE0hPuMgW8A2HmaqrPo4ZQHRN/V0QXN3FSjKxpsbRrFc5LI7KOwBsT1/w==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-2.2.0.tgz", + "integrity": "sha512-d2eda04AN/cPOR89F7Xv5bK/jrQEhmcLFe6HFldoeO9AJtps+fqEnh486vnT/8y4bw38pSyxDcTCAq+Ks2aJTg==", "dev": true, "engines": { "node": ">=14.0.0" @@ -3961,9 +3968,9 @@ } }, "node_modules/tslib": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz", - "integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==", + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", "dev": true }, "node_modules/type-check": { @@ -4000,9 +4007,9 @@ } }, "node_modules/typescript": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", - "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -4018,9 +4025,9 @@ "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==" }, "node_modules/ufo": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.1.2.tgz", - "integrity": "sha512-TrY6DsjTQQgyS3E3dBaOXf0TpPD8u9FVrVYmKVegJuFw51n/YB9XPt+U6ydzFG5ZIN7+DIjPbNmXoBj9esYhgQ==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.3.1.tgz", + "integrity": "sha512-uY/99gMLIOlJPwATcMVYfqDSxUR9//AUcgZMzwfSTJPDKzA1S8mX4VLqa+fiAtveraQUBCz4FFcwVZBGbwBXIw==", "dev": true }, "node_modules/undici": { @@ -4051,14 +4058,14 @@ "dev": true }, "node_modules/vite": { - "version": "4.4.7", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.4.7.tgz", - "integrity": "sha512-6pYf9QJ1mHylfVh39HpuSfMPojPSKVxZvnclX1K1FyZ1PXDOcLBibdq5t1qxJSnL63ca8Wf4zts6mD8u8oc9Fw==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.0.tgz", + "integrity": "sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==", "dev": true, "dependencies": { "esbuild": "^0.18.10", - "postcss": "^8.4.26", - "rollup": "^3.25.2" + "postcss": "^8.4.27", + "rollup": "^3.27.1" }, "bin": { "vite": "bin/vite.js" @@ -4106,9 +4113,9 @@ } }, "node_modules/vite-node": { - "version": "0.33.0", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-0.33.0.tgz", - "integrity": "sha512-19FpHYbwWWxDr73ruNahC+vtEdza52kA90Qb3La98yZ0xULqV8A5JLNPUff0f5zID4984tW7l3DH2przTJUZSw==", + "version": "0.34.6", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-0.34.6.tgz", + "integrity": "sha512-nlBMJ9x6n7/Amaz6F3zJ97EBwR2FkzhBRxF5e+jE6LA3yi6Wtc2lyTij1OnDMIr34v5g/tVQtsVAzhT0jc5ygA==", "dev": true, "dependencies": { "cac": "^6.7.14", @@ -4116,7 +4123,7 @@ "mlly": "^1.4.0", "pathe": "^1.1.1", "picocolors": "^1.0.0", - "vite": "^3.0.0 || ^4.0.0" + "vite": "^3.0.0 || ^4.0.0 || ^5.0.0-0" }, "bin": { "vite-node": "vite-node.mjs" @@ -4143,23 +4150,23 @@ } }, "node_modules/vitest": { - "version": "0.33.0", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-0.33.0.tgz", - "integrity": "sha512-1CxaugJ50xskkQ0e969R/hW47za4YXDUfWJDxip1hwbnhUjYolpfUn2AMOulqG/Dtd9WYAtkHmM/m3yKVrEejQ==", + "version": "0.34.6", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-0.34.6.tgz", + "integrity": "sha512-+5CALsOvbNKnS+ZHMXtuUC7nL8/7F1F2DnHGjSsszX8zCjWSSviphCb/NuS9Nzf4Q03KyyDRBAXhF/8lffME4Q==", "dev": true, "dependencies": { "@types/chai": "^4.3.5", "@types/chai-subset": "^1.3.3", "@types/node": "*", - "@vitest/expect": "0.33.0", - "@vitest/runner": "0.33.0", - "@vitest/snapshot": "0.33.0", - "@vitest/spy": "0.33.0", - "@vitest/utils": "0.33.0", + "@vitest/expect": "0.34.6", + "@vitest/runner": "0.34.6", + "@vitest/snapshot": "0.34.6", + "@vitest/spy": "0.34.6", + "@vitest/utils": "0.34.6", "acorn": "^8.9.0", "acorn-walk": "^8.2.0", "cac": "^6.7.14", - "chai": "^4.3.7", + "chai": "^4.3.10", "debug": "^4.3.4", "local-pkg": "^0.4.3", "magic-string": "^0.30.1", @@ -4168,9 +4175,9 @@ "std-env": "^3.3.3", "strip-literal": "^1.0.1", "tinybench": "^2.5.0", - "tinypool": "^0.6.0", - "vite": "^3.0.0 || ^4.0.0", - "vite-node": "0.33.0", + "tinypool": "^0.7.0", + "vite": "^3.1.0 || ^4.0.0 || ^5.0.0-0", + "vite-node": "0.34.6", "why-is-node-running": "^2.2.2" }, "bin": { diff --git a/package.json b/package.json index c2545c4..38a9af8 100644 --- a/package.json +++ b/package.json @@ -1,9 +1,9 @@ { "name": "Alexandrite", - "version": "0.8.11", + "version": "0.8.12", "private": true, "scripts": { - "dev": "vite dev", + "dev": "vite dev --host 0.0.0.0", "build": "vite build", "preview": "vite preview", "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", @@ -17,32 +17,32 @@ "devDependencies": { "@sveltejs/adapter-auto": "^2.0.0", "@sveltejs/adapter-node": "^1.3.1", - "@sveltejs/kit": "^1.22.3", - "@types/markdown-it": "^12.2.3", - "@types/markdown-it-container": "^2.0.6", - "@types/markdown-it-footnote": "^3.0.0", - "@typescript-eslint/eslint-plugin": "^6.2.0", - "@typescript-eslint/parser": "^6.2.0", - "eslint": "^8.45.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-svelte": "^2.32.4", - "prettier": "^3.0.0", - "prettier-plugin-svelte": "^3.0.0", - "sass": "^1.64.1", + "@sveltejs/kit": "^1.27.1", + "@types/markdown-it": "^13.0.5", + "@types/markdown-it-container": "^2.0.8", + "@types/markdown-it-footnote": "^3.0.2", + "@typescript-eslint/eslint-plugin": "^6.9.0", + "@typescript-eslint/parser": "^6.9.0", + "eslint": "^8.52.0", + "eslint-config-prettier": "^9.0.0", + "eslint-plugin-svelte": "^2.34.0", + "prettier": "^3.0.3", + "prettier-plugin-svelte": "^3.0.3", + "sass": "^1.69.4", "sheodox-ui": "^0.20.3", - "svelte": "^4.1.1", - "svelte-check": "^3.4.6", - "tslib": "^2.6.1", - "typescript": "^5.1.6", - "vite": "^4.4.7", - "vitest": "^0.33.0" + "svelte": "^4.2.2", + "svelte-check": "^3.5.2", + "tslib": "^2.6.2", + "typescript": "^5.2.2", + "vite": "^4.5.0", + "vitest": "^0.34.6" }, "type": "module", "dependencies": { - "@fortawesome/fontawesome-free": "^6.4.0", + "@fortawesome/fontawesome-free": "^6.4.2", "date-fns": "^2.30.0", - "lemmy-js-client": "^0.18.3-rc.3", - "markdown-it": "^13.0.1", + "lemmy-js-client": "^0.19.0-rc.19", + "markdown-it": "^13.0.2", "markdown-it-container": "^3.0.0", "markdown-it-footnote": "^3.0.3", "markdown-it-ruby": "^0.1.1", diff --git a/src/lib/CommunityJoin.svelte b/src/lib/CommunityJoin.svelte index a713063..23ee06c 100644 --- a/src/lib/CommunityJoin.svelte +++ b/src/lib/CommunityJoin.svelte @@ -31,7 +31,6 @@ } const res = await client.followCommunity({ - auth: jwt, follow: communityView.subscribed === 'NotSubscribed', community_id: communityView.community.id }); diff --git a/src/lib/CommunitySelector.svelte b/src/lib/CommunitySelector.svelte index ff0d683..72d4da3 100644 --- a/src/lib/CommunitySelector.svelte +++ b/src/lib/CommunitySelector.svelte @@ -90,7 +90,6 @@ } const res = await client.getCommunity({ - auth: jwt, name: communityName }); @@ -102,7 +101,6 @@ } } else { const comms = await client.search({ - auth: jwt, type_: 'Communities', q: searchText, limit: 50 diff --git a/src/lib/InboxReadButton.svelte b/src/lib/InboxReadButton.svelte index 98e7a25..83f8ccc 100644 --- a/src/lib/InboxReadButton.svelte +++ b/src/lib/InboxReadButton.svelte @@ -37,7 +37,6 @@ if (content.type === 'reply') { const res = await client.markCommentReplyAsRead({ - auth: jwt, comment_reply_id: id, read }); @@ -45,14 +44,12 @@ cvStore.updateView(replyViewToContentView(res.comment_reply_view)); } else if (content.type === 'mention') { const res = await client.markPersonMentionAsRead({ - auth: jwt, person_mention_id: id, read }); cvStore.updateView(mentionViewToContentView(res.person_mention_view)); } else if (content.type === 'message') { const res = await client.markPrivateMessageAsRead({ - auth: jwt, private_message_id: id, read }); diff --git a/src/lib/MarkdownEditor.svelte b/src/lib/MarkdownEditor.svelte index 3d42871..b0f2cbc 100644 --- a/src/lib/MarkdownEditor.svelte +++ b/src/lib/MarkdownEditor.svelte @@ -194,7 +194,6 @@ // busy = true; // const { selectionStart } = textarea, // res = await client.uploadImage({ - // auth: jwt, // image: file // }); // console.log(res); diff --git a/src/lib/PostPage.svelte b/src/lib/PostPage.svelte index 0729a20..3ac9452 100644 --- a/src/lib/PostPage.svelte +++ b/src/lib/PostPage.svelte @@ -452,7 +452,6 @@ } const res = await client.createComment({ content: body.content as string, - auth: jwt, post_id: postView.post.id, language_id: body.languageId ? Number(body.languageId) : undefined }); @@ -514,7 +513,6 @@ const { comments, busy, error } = await loadComments(async () => { const { comments } = await client.getComments({ - auth: jwt, post_id: postView.post.id, limit: 100, page: commentsPageNum++, @@ -541,7 +539,6 @@ commentExpandLoadingIds = commentExpandLoadingIds; await loadComments(async () => { const { comments } = await client.getComments({ - auth: jwt, post_id: postView.post.id, limit: 100, parent_id: e.detail, @@ -570,7 +567,7 @@ onMount(async () => { if (jwt) { // getting the post has a side effect of marking it and its comments as read - const res = await client.getPost({ id: postView.post.id, auth: jwt }).then((res) => { + const res = await client.getPost({ id: postView.post.id }).then((res) => { res.post_view.read = true; res.post_view.unread_comments = 0; return res; diff --git a/src/lib/PrivateMessage.svelte b/src/lib/PrivateMessage.svelte index 2dece71..ceceacd 100644 --- a/src/lib/PrivateMessage.svelte +++ b/src/lib/PrivateMessage.svelte @@ -122,7 +122,6 @@ return; } await client.createPrivateMessageReport({ - auth: jwt, reason: e.detail, private_message_id: privateMessageView.private_message.id }); @@ -154,7 +153,6 @@ } if (confirm('Are you sure you want to delete this message?')) { await client.deletePrivateMessage({ - auth: jwt, deleted: true, private_message_id: privateMessageView.private_message.id }); diff --git a/src/lib/PrivateMessageCompose.svelte b/src/lib/PrivateMessageCompose.svelte index 14eba88..9697cc6 100644 --- a/src/lib/PrivateMessageCompose.svelte +++ b/src/lib/PrivateMessageCompose.svelte @@ -61,7 +61,6 @@ // if they're editing a message, save the changes, don't send a new one if (privateMessageView) { res = await client.editPrivateMessage({ - auth: jwt, content: body.content as string, private_message_id: privateMessageView.private_message.id }); @@ -70,7 +69,6 @@ } else { //else just create a new message res = await client.createPrivateMessage({ - auth: jwt, content: body.content as string, recipient_id: to.id }); diff --git a/src/lib/UserCounts.svelte b/src/lib/UserCounts.svelte index 9729baa..c328fc4 100644 --- a/src/lib/UserCounts.svelte +++ b/src/lib/UserCounts.svelte @@ -3,14 +3,12 @@ <Stack dir="r" gap={2} align="center"> <strong>{count.count.toLocaleString()}</strong> <span class="muted">{count.label}</span> - <strong>{count.score.toLocaleString()}</strong> - <Icon icon="trophy" /> </Stack> {/each} </Stack> <script lang="ts"> - import { Stack, Icon } from 'sheodox-ui'; + import { Stack } from 'sheodox-ui'; import type { PersonView } from 'lemmy-js-client'; export let personView: PersonView; @@ -18,13 +16,11 @@ $: counts = [ { label: personView.counts.post_count === 1 ? 'Post' : 'Posts', - score: personView.counts.post_score, count: personView.counts.post_count, icon: 'file-lines' }, { label: personView.counts.comment_count === 1 ? 'Comment' : 'Comments', - score: personView.counts.comment_score, count: personView.counts.comment_count, icon: 'comments' } diff --git a/src/lib/comments/Comment.svelte b/src/lib/comments/Comment.svelte index 191dd4f..6807cd2 100644 --- a/src/lib/comments/Comment.svelte +++ b/src/lib/comments/Comment.svelte @@ -310,6 +310,9 @@ let showReportModal = false; let replyForm: HTMLFormElement; let editForm: HTMLFormElement; + $: isAdmin = $siteMeta.admins.some( + (admin) => admin.person.actor_id === $siteMeta.my_user?.local_user_view.person.actor_id + ); $: replyState = createStatefulForm(replyForm, replySubmit); $: editState = createStatefulForm(editForm, editSubmit); $: voteState = createStatefulAction<number>(async (score) => { @@ -318,7 +321,6 @@ } const res = await client.likeComment({ - auth: jwt, comment_id: comment.id, score }); @@ -378,7 +380,6 @@ const res = await client.createComment({ content: body.content as string, - auth: jwt, post_id: contentView.view.post.id, parent_id, language_id: body.languageId ? Number(body.languageId) : undefined @@ -400,7 +401,6 @@ const res = await client.editComment({ content: body.content as string, - auth: jwt, comment_id: Number(body.commentId), language_id: body.languageId ? Number(body.languageId) : undefined }); @@ -415,7 +415,6 @@ } const res = await client.deleteComment({ - auth: jwt, comment_id: comment.id, deleted }); @@ -429,7 +428,6 @@ return; } const res = await client.saveComment({ - auth: jwt, comment_id: contentView.view.comment.id, save: !contentView.view.saved }); @@ -441,7 +439,6 @@ return; } await client.createCommentReport({ - auth: jwt, reason: e.detail, comment_id: contentView.view.comment.id }); @@ -458,7 +455,6 @@ return; } await client.blockPerson({ - auth: jwt, person_id: contentView.view.creator.id, block }); @@ -597,8 +593,6 @@ }); } - const isAdmin = $siteMeta.my_user?.local_user_view.person.admin ?? false; - if (isCommunityModerator || isAdmin) { const warn = isCommunityModerator ? $showModlogWarningModerated : $showModlogWarning, modlogBase = `/${$profile.instance}/modlog${warn ? '' : '/view'}`; diff --git a/src/lib/community-context/community-context.ts b/src/lib/community-context/community-context.ts index 0345dc3..7e0fc68 100644 --- a/src/lib/community-context/community-context.ts +++ b/src/lib/community-context/community-context.ts @@ -37,7 +37,6 @@ export const createCommunityContext = () => { const { client, jwt } = get(profile); const res = await client.getCommunity({ - auth: jwt, name }); diff --git a/src/lib/feed-query.ts b/src/lib/feed-query.ts index 4576453..5cb3048 100644 --- a/src/lib/feed-query.ts +++ b/src/lib/feed-query.ts @@ -55,7 +55,6 @@ export const loadFeedData = async (filters: FeedDataQuery): Promise<ApiFeedLoad> if (filters.username) { const userDetails = await client.getPersonDetails({ sort: postQuery.sort, - auth: jwt, username: filters.username, limit: 50, page, @@ -72,7 +71,6 @@ export const loadFeedData = async (filters: FeedDataQuery): Promise<ApiFeedLoad> if (typePosts || typeSaved) { const postViews = await client .getPosts({ - auth: jwt, limit: 50, page, community_name: filters.communityName ?? undefined, @@ -98,7 +96,6 @@ export const loadFeedData = async (filters: FeedDataQuery): Promise<ApiFeedLoad> query, commentViews: await client .getComments({ - auth: jwt, page, sort: query.sort, type_: query.listing, diff --git a/src/lib/feeds/posts/CommunityHeader.svelte b/src/lib/feeds/posts/CommunityHeader.svelte index 8d452d5..7ea227f 100644 --- a/src/lib/feeds/posts/CommunityHeader.svelte +++ b/src/lib/feeds/posts/CommunityHeader.svelte @@ -38,7 +38,6 @@ return; } const res = await client.blockCommunity({ - auth: jwt, community_id: community.id, block }); diff --git a/src/lib/feeds/posts/PostLayout.svelte b/src/lib/feeds/posts/PostLayout.svelte index b9be03b..2705d10 100644 --- a/src/lib/feeds/posts/PostLayout.svelte +++ b/src/lib/feeds/posts/PostLayout.svelte @@ -186,7 +186,10 @@ $: isMyPost = postView.creator.local && postView.creator.name === username; $: isCommunityModerator = $siteMeta.my_user?.moderates?.some((m) => m.community.id === postView.community.id) ?? false; - $: isAdminOfCommunity = $siteMeta.my_user?.local_user_view.person.admin && postView.community.local; + $: isAdmin = $siteMeta.admins.some( + (admin) => admin.person.actor_id === $siteMeta.my_user?.local_user_view.person.actor_id + ); + $: isAdminOfCommunity = isAdmin && postView.community.local; $: communityName = nameAtInstance(postView.community); $: community = weaklyGetCommunity(communityName); $: postMadeByModerator = $community?.moderators.some((m) => m.moderator.id === postView.creator.id); @@ -228,7 +231,6 @@ const pv = await client .likePost({ - auth: jwt, post_id: postView.post.id, score: score }) @@ -248,7 +250,6 @@ const pv = await client .savePost({ post_id: postView.post.id, - auth: jwt, save: !postView.saved }) .then(({ post_view }) => post_view); @@ -262,7 +263,6 @@ return; } await client.createPostReport({ - auth: jwt, reason: e.detail, post_id: postView.post.id }); @@ -450,8 +450,6 @@ }); } - const isAdmin = $siteMeta.my_user?.local_user_view.person.admin ?? false; - if (isCommunityModerator || isAdmin) { const warn = isCommunityModerator ? $showModlogWarningModerated : $showModlogWarning, modlogBase = `/${$profile.instance}/modlog${warn ? '' : '/view'}`; @@ -482,7 +480,6 @@ return; } await client.blockPerson({ - auth: jwt, person_id: postView.creator.id, block: true }); @@ -500,7 +497,6 @@ return; } await client.blockCommunity({ - auth: jwt, community_id: postView.community.id, block: true }); diff --git a/src/lib/feeds/posts/UserBadges.svelte b/src/lib/feeds/posts/UserBadges.svelte index 00e302b..9d090a7 100644 --- a/src/lib/feeds/posts/UserBadges.svelte +++ b/src/lib/feeds/posts/UserBadges.svelte @@ -17,8 +17,10 @@ import { profile } from '$lib/profiles/profiles'; import { getCommunityContext } from '$lib/community-context/community-context'; import { nameAtInstance } from '$lib/nav-utils'; + import { getAppContext } from '$lib/app-context'; $: username = $profile.username; + const { siteMeta } = getAppContext(); export let user: Person; export let postOP: string | boolean | undefined = ''; // actor_id of someone who made a post @@ -29,6 +31,7 @@ const communityContext = getCommunityContext(); $: com = community ? communityContext.weaklyGetCommunity(nameAtInstance(community)) : null; $: isMod = $com?.moderators.some((mod) => mod.moderator.actor_id === user.actor_id); + $: isAdmin = $siteMeta.admins.some((admin) => admin.person.actor_id === user.actor_id); $: badges = (function () { const badges = []; @@ -49,7 +52,7 @@ if (user.bot_account) { badges.push({ color: 'cyan', text: 'Bot' }); } - if (user.admin) { + if (isAdmin) { badges.push({ color: 'orange', text: 'Admin' }); } if (isMod) { diff --git a/src/lib/instance/InstanceSidebar.svelte b/src/lib/instance/InstanceSidebar.svelte index 6e12e40..da1f812 100644 --- a/src/lib/instance/InstanceSidebar.svelte +++ b/src/lib/instance/InstanceSidebar.svelte @@ -13,11 +13,7 @@ {/if} </Stack> <div slot="end"> - <ModlogLink - highlight={$siteMeta.my_user?.local_user_view.person.admin ?? false} - highlightColor="orange" - warn={$showModlogWarning} - /> + <ModlogLink highlight={isAdmin ?? false} highlightColor="orange" warn={$showModlogWarning} /> </div> </Sidebar> @@ -35,6 +31,9 @@ const { siteMeta } = getAppContext(); const { showModlogWarning } = getSettingsContext(); $: siteView = $siteMeta.site_view; + $: isAdmin = $siteMeta.admins.some( + (admin) => admin.person.actor_id === $siteMeta.my_user?.local_user_view.person.actor_id + ); $: siteCounts = [ { diff --git a/src/lib/lemmy-client.ts b/src/lib/lemmy-client.ts index d21b70d..0b85b7e 100644 --- a/src/lib/lemmy-client.ts +++ b/src/lib/lemmy-client.ts @@ -2,8 +2,8 @@ import { error } from '@sveltejs/kit'; import { LemmyHttp } from 'lemmy-js-client'; import { createAutoExpireToast } from 'sheodox-ui'; import { getMessageFromError } from './error-messages'; - -const APP_USER_AGENT = 'Alexandrite https://alexandrite.app'; +import { profile } from './profiles/profiles'; +import { get } from 'svelte/store'; function tryParse(str: string) { try { @@ -13,17 +13,49 @@ function tryParse(str: string) { } } -export const createLemmyClient = (instanceUrl: string, onExpire?: () => unknown) => { +export const createLemmyClient = ( + instanceUrl: string, + { onExpire, useProfile = true, jwt }: { onExpire?: () => unknown; useProfile?: boolean; jwt?: string } +) => { return new LemmyHttp(instanceUrl, { fetchFunction: async (input: URL | RequestInfo, init?: RequestInit | undefined) => { if (!init) { init = {}; } - init.headers = { - 'user-agent': APP_USER_AGENT, - ...(init.headers || {}) - }; + if (useProfile) { + // use the passed jwt if given (used on login page) + jwt ??= get(profile).jwt; + + init.headers = { + ...(init.headers || {}), + ...(jwt + ? { + Authorization: `Bearer ${jwt}` + } + : {}) + }; + + // 0.18.x compatibility for auth + if (input instanceof URL && jwt) { + input.searchParams.set('auth', jwt); + } else if (typeof input === 'string' && jwt) { + const u = new URL(input); + u.searchParams.set('auth', jwt); + input = u.toString(); + } + + // taken from Photon, thanks Xylight! + if (init?.body && jwt) { + try { + const json = JSON.parse(init.body.toString()); + json.auth = jwt; + init.body = JSON.stringify(json); + } catch (e) { + // It seems this isn't a JSON request. Ignore adding an auth parameter. + } + } + } let res; try { diff --git a/src/lib/mod/ModContext.svelte b/src/lib/mod/ModContext.svelte index e78660b..c4fecee 100644 --- a/src/lib/mod/ModContext.svelte +++ b/src/lib/mod/ModContext.svelte @@ -106,7 +106,6 @@ try { if (!opt.ban) { const res = await client.banFromCommunity({ - auth: jwt, person_id: opt.personId, community_id: opt.communityId, ban: false @@ -143,7 +142,6 @@ : // expires is the number of *seconds* since epoch Math.floor(calculateBanExpiration(banOpts.expireDays).getTime() / 1000), res = await client.banFromCommunity({ - auth: jwt, person_id: opt.personId, community_id: opt.communityId, ban: true, @@ -171,7 +169,6 @@ try { if (!opt.removed) { const res = await client.removePost({ - auth: jwt, post_id: opt.postId, removed: false }); @@ -183,7 +180,6 @@ if (reason !== null) { const res = await client.removePost({ - auth: jwt, post_id: opt.postId, reason, removed: true @@ -207,7 +203,6 @@ try { if (!opt.removed) { const res = await client.removeComment({ - auth: jwt, comment_id: opt.commentId, removed: false }); @@ -218,7 +213,6 @@ if (reason !== null) { const res = await client.removeComment({ - auth: jwt, comment_id: opt.commentId, reason, removed: true @@ -242,7 +236,6 @@ setPending(pendingType, opt.postId, true); try { const res = await client.featurePost({ - auth: jwt, post_id: opt.postId, featured: opt.featured, feature_type: opt.featureType @@ -266,7 +259,6 @@ setPending('lock-post', opt.postId, true); try { const res = await client.lockPost({ - auth: jwt, post_id: opt.postId, locked: opt.locked }); @@ -286,7 +278,6 @@ setPending('distinguish-comment', opt.commentId, true); try { const res = await client.distinguishComment({ - auth: jwt, comment_id: opt.commentId, distinguished: opt.distinguished }); @@ -309,7 +300,6 @@ try { const res = await client.addModToCommunity({ - auth: jwt, added: opt.added, community_id: opt.communityId, person_id: opt.personId @@ -317,7 +307,7 @@ successToast(opt.added ? `Added ${opt.personName} to mods` : `Removed ${opt.personName} from mods`); - communityContext.updateCommunity(await client.getCommunity({ auth: jwt, id: opt.communityId })); + communityContext.updateCommunity(await client.getCommunity({ id: opt.communityId })); if (opt.personId === $siteMeta.my_user?.local_user_view.person.id && !opt.added) { // user resigned, remove this community from siteMeta to hide mod actions diff --git a/src/lib/profiles/profiles.ts b/src/lib/profiles/profiles.ts index 883e082..01884b6 100644 --- a/src/lib/profiles/profiles.ts +++ b/src/lib/profiles/profiles.ts @@ -144,7 +144,7 @@ export function setDefaultProfile(id: string) { function profileToStoreValue(profile: Profile) { return { ...profile, - client: createLemmyClient(`https://${profile.instance}`, handleExpiredProfile), + client: createLemmyClient(`https://${profile.instance}`, { onExpire: handleExpiredProfile }), loggedIn: !!profile.jwt }; } diff --git a/src/routes/(app)/[instance]/+layout.svelte b/src/routes/(app)/[instance]/+layout.svelte index 561b635..90bafdd 100644 --- a/src/routes/(app)/[instance]/+layout.svelte +++ b/src/routes/(app)/[instance]/+layout.svelte @@ -199,9 +199,7 @@ return; } - const unread = await client.getUnreadCount({ - auth: jwt - }); + const unread = await client.getUnreadCount(); $unreadCount = unread.replies + unread.mentions + unread.private_messages; } @@ -211,9 +209,7 @@ return; } - const unread = await client.getReportCount({ - auth: jwt - }); + const unread = await client.getReportCount({}); $unreadReportCount = unread.post_reports + unread.comment_reports; } diff --git a/src/routes/(app)/[instance]/+layout.ts b/src/routes/(app)/[instance]/+layout.ts index a0926f5..be30831 100644 --- a/src/routes/(app)/[instance]/+layout.ts +++ b/src/routes/(app)/[instance]/+layout.ts @@ -9,9 +9,7 @@ export const load = (async () => { throw redirect(303, '/instance'); } - const site = await client.getSite({ - auth: jwt - }); + const site = await client.getSite(); const localUser = site.my_user?.local_user_view.local_user; if (localUser) { diff --git a/src/routes/(app)/[instance]/c/[communityName]/+page.ts b/src/routes/(app)/[instance]/c/[communityName]/+page.ts index 56b61e1..bcbb771 100644 --- a/src/routes/(app)/[instance]/c/[communityName]/+page.ts +++ b/src/routes/(app)/[instance]/c/[communityName]/+page.ts @@ -3,10 +3,9 @@ import { profile } from '$lib/profiles/profiles'; import { get } from 'svelte/store'; export const load = (async ({ url, params }) => { - const { client, jwt, settings } = get(profile); + const { client, settings } = get(profile); const cv = await client.getCommunity({ - name: params.communityName, - auth: jwt + name: params.communityName }); return { diff --git a/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/+layout.ts b/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/+layout.ts index e478d80..5caa836 100644 --- a/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/+layout.ts +++ b/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/+layout.ts @@ -3,11 +3,10 @@ import { get } from 'svelte/store'; import type { LayoutLoad } from './$types'; export const load = (async ({ params }) => { - const { client, jwt } = get(profile); + const { client } = get(profile); const cv = await client.getCommunity({ - name: params.communityName, - auth: jwt + name: params.communityName }); return { diff --git a/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/delete/+page.svelte b/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/delete/+page.svelte index 6516034..1d99441 100644 --- a/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/delete/+page.svelte +++ b/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/delete/+page.svelte @@ -55,7 +55,6 @@ try { await client.deletePost({ - auth: jwt, post_id: data.postView.post.id, // todo support un-deleting? comments can be undeleted, but // it seems you can't view a deleted post so not sure how you'd undelete a post diff --git a/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/delete/+page.ts b/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/delete/+page.ts index 3b967ad..cb82eea 100644 --- a/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/delete/+page.ts +++ b/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/delete/+page.ts @@ -4,13 +4,13 @@ import { get } from 'svelte/store'; import { profile } from '$lib/profiles/profiles'; export const load = (async ({ params }) => { - const { client, jwt } = get(profile); + const { client } = get(profile); if (!params.postId) { throw error(400, 'Missing Post ID'); } - const postView = client.getPost({ id: +params.postId, auth: jwt }).then(({ post_view }) => post_view); + const postView = client.getPost({ id: +params.postId }).then(({ post_view }) => post_view); // TODO redirect if it's not your post diff --git a/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/edit/+page.svelte b/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/edit/+page.svelte index a879a82..ec9b30d 100644 --- a/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/edit/+page.svelte +++ b/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/edit/+page.svelte @@ -11,6 +11,7 @@ content={data.postView.post.body} url={data.postView.post.url} postButtonText="Update" + nsfw={data.postView.post.nsfw} /> </form> @@ -54,7 +55,6 @@ try { // treat both Subscribed and Pending as the same await client.editPost({ - auth: jwt, post_id: Number(data.postView.post.id), ...formFields }); diff --git a/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/edit/+page.ts b/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/edit/+page.ts index 6b26a7d..8666b24 100644 --- a/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/edit/+page.ts +++ b/src/routes/(app)/[instance]/c/[communityName]/post/[postId]/edit/+page.ts @@ -14,7 +14,7 @@ export const load = (async ({ params }) => { throw error(400, 'Not Logged In'); } - const postView = client.getPost({ id: +params.postId, auth: jwt }).then(({ post_view }) => post_view); + const postView = client.getPost({ id: +params.postId }).then(({ post_view }) => post_view); // TODO redirect if it's not your post diff --git a/src/routes/(app)/[instance]/comment/[commentId]/+page.ts b/src/routes/(app)/[instance]/comment/[commentId]/+page.ts index 76eb152..aeb5ada 100644 --- a/src/routes/(app)/[instance]/comment/[commentId]/+page.ts +++ b/src/routes/(app)/[instance]/comment/[commentId]/+page.ts @@ -4,11 +4,10 @@ import { profile } from '$lib/profiles/profiles'; import { get } from 'svelte/store'; export const load = (async ({ params }) => { - const { client, jwt } = get(profile); + const { client } = get(profile); const { comments } = await client.getComments({ parent_id: +params.commentId, - auth: jwt, max_depth: 8, type_: 'All', sort: 'Hot' @@ -22,6 +21,6 @@ export const load = (async ({ params }) => { return { commentViews: comments, commentId: +params.commentId, - postView: client.getPost({ id: postId, auth: jwt }).then(({ post_view }) => post_view) + postView: client.getPost({ id: postId }).then(({ post_view }) => post_view) }; }) satisfies PageLoad; diff --git a/src/routes/(app)/[instance]/communities/+page.svelte b/src/routes/(app)/[instance]/communities/+page.svelte index 3afa022..c92a978 100644 --- a/src/routes/(app)/[instance]/communities/+page.svelte +++ b/src/routes/(app)/[instance]/communities/+page.svelte @@ -80,7 +80,6 @@ async (page) => { return await client .listCommunities({ - auth: jwt, page, limit: 50, type_: data.query.listing, diff --git a/src/routes/(app)/[instance]/create/post/+layout.ts b/src/routes/(app)/[instance]/create/post/+layout.ts index 2793fa0..b623b44 100644 --- a/src/routes/(app)/[instance]/create/post/+layout.ts +++ b/src/routes/(app)/[instance]/create/post/+layout.ts @@ -9,8 +9,7 @@ export const load = (async ({ url }) => { const cv = communityName ? await client.getCommunity({ - name: communityName, - auth: jwt + name: communityName }) : null; diff --git a/src/routes/(app)/[instance]/create/post/+page.svelte b/src/routes/(app)/[instance]/create/post/+page.svelte index ca483a2..fc4af6a 100644 --- a/src/routes/(app)/[instance]/create/post/+page.svelte +++ b/src/routes/(app)/[instance]/create/post/+page.svelte @@ -50,7 +50,6 @@ // treat both Subscribed and Pending as the same const postRes = await client.createPost({ - auth: jwt, // tricks bots by submitting an empty string, just doing what lemmy-ui is doing honeypot, community_id: Number(body.communityId), diff --git a/src/routes/(app)/[instance]/create/post/+page.ts b/src/routes/(app)/[instance]/create/post/+page.ts index 32ba1f7..a8d65c1 100644 --- a/src/routes/(app)/[instance]/create/post/+page.ts +++ b/src/routes/(app)/[instance]/create/post/+page.ts @@ -9,7 +9,6 @@ export const load = (async ({ url }) => { return { crossPost: crossPostId ? client.getPost({ - auth: jwt, id: +crossPostId }) : null diff --git a/src/routes/(app)/[instance]/inbox/+page.svelte b/src/routes/(app)/[instance]/inbox/+page.svelte index aecdacb..c8f768c 100644 --- a/src/routes/(app)/[instance]/inbox/+page.svelte +++ b/src/routes/(app)/[instance]/inbox/+page.svelte @@ -110,9 +110,7 @@ return; } - await client.markAllAsRead({ - auth: jwt - }); + await client.markAllAsRead(); invalidateAll(); checkUnread(); }); @@ -148,7 +146,6 @@ } const form = { - auth: jwt, sort: data.query.sort as CommentSortType, unread_only: data.query.type === 'Unread', page, diff --git a/src/routes/(app)/[instance]/message/[recipientId]/+page.ts b/src/routes/(app)/[instance]/message/[recipientId]/+page.ts index 0eb07e0..7927fde 100644 --- a/src/routes/(app)/[instance]/message/[recipientId]/+page.ts +++ b/src/routes/(app)/[instance]/message/[recipientId]/+page.ts @@ -8,8 +8,7 @@ export const load = (async ({ params }) => { return { personView: await client .getPersonDetails({ - person_id: Number(params.recipientId), - auth: jwt + person_id: Number(params.recipientId) }) .then((d) => d.person_view) }; diff --git a/src/routes/(app)/[instance]/modlog/+layout.ts b/src/routes/(app)/[instance]/modlog/+layout.ts index 1338d5a..376ac94 100644 --- a/src/routes/(app)/[instance]/modlog/+layout.ts +++ b/src/routes/(app)/[instance]/modlog/+layout.ts @@ -12,8 +12,7 @@ export const load = (async ({ url }) => { if (communityId) { cv = await client.getCommunity({ - id: +communityId, - auth: jwt + id: +communityId }); } diff --git a/src/routes/(app)/[instance]/modlog/view/+page.svelte b/src/routes/(app)/[instance]/modlog/view/+page.svelte index c766956..cacfa3a 100644 --- a/src/routes/(app)/[instance]/modlog/view/+page.svelte +++ b/src/routes/(app)/[instance]/modlog/view/+page.svelte @@ -104,7 +104,10 @@ $: isCommunityModerator = data.communityModerators?.some((mod) => mod.id === $siteMeta.my_user?.local_user_view.local_user.person_id) ?? false; - $: censorMods = !$siteMeta.my_user?.local_user_view.person.admin && !isCommunityModerator; + $: isAdmin = $siteMeta.admins.some( + (admin) => admin.person.actor_id === $siteMeta.my_user?.local_user_view.person.actor_id + ); + $: censorMods = !isAdmin && !isCommunityModerator; $: showCommunity = data.communityName === null; $: showSecondaryHeader = showCommunity || data.targetUser; diff --git a/src/routes/(app)/[instance]/modlog/view/+page.ts b/src/routes/(app)/[instance]/modlog/view/+page.ts index 4b77915..7ed2246 100644 --- a/src/routes/(app)/[instance]/modlog/view/+page.ts +++ b/src/routes/(app)/[instance]/modlog/view/+page.ts @@ -34,7 +34,6 @@ export const load = (async ({ url }) => { : null, modlogs: client .getModlog({ - auth: jwt, community_id: communityId, mod_person_id: moderatorId, other_person_id: targetId, diff --git a/src/routes/(app)/[instance]/post/[postId]/+page.ts b/src/routes/(app)/[instance]/post/[postId]/+page.ts index d080e66..54d9667 100644 --- a/src/routes/(app)/[instance]/post/[postId]/+page.ts +++ b/src/routes/(app)/[instance]/post/[postId]/+page.ts @@ -5,7 +5,7 @@ import type { PageLoad } from './$types'; export const load = (async ({ params }) => { const { client, jwt } = get(profile); - const res = await client.getPost({ id: +params.postId, auth: jwt }); + const res = await client.getPost({ id: +params.postId }); return { postView: res.post_view, diff --git a/src/routes/(app)/[instance]/reports/+page.svelte b/src/routes/(app)/[instance]/reports/+page.svelte index 89a7b50..8abb25f 100644 --- a/src/routes/(app)/[instance]/reports/+page.svelte +++ b/src/routes/(app)/[instance]/reports/+page.svelte @@ -121,7 +121,6 @@ } const form = { - auth: jwt, unresolved_only: data.query.state === 'Unread', page, limit: 20 diff --git a/src/routes/(app)/[instance]/reports/ReportedComment.svelte b/src/routes/(app)/[instance]/reports/ReportedComment.svelte index f2ee891..b8e6fb5 100644 --- a/src/routes/(app)/[instance]/reports/ReportedComment.svelte +++ b/src/routes/(app)/[instance]/reports/ReportedComment.svelte @@ -116,7 +116,6 @@ } const res = await client.resolveCommentReport({ - auth: jwt, report_id: view.comment_report.id, resolved: !view.comment_report.resolved }); diff --git a/src/routes/(app)/[instance]/reports/ReportedPost.svelte b/src/routes/(app)/[instance]/reports/ReportedPost.svelte index f4f9764..66461c2 100644 --- a/src/routes/(app)/[instance]/reports/ReportedPost.svelte +++ b/src/routes/(app)/[instance]/reports/ReportedPost.svelte @@ -139,7 +139,6 @@ } const res = await client.resolvePostReport({ - auth: jwt, report_id: view.post_report.id, resolved }); diff --git a/src/routes/(app)/[instance]/search/+page.svelte b/src/routes/(app)/[instance]/search/+page.svelte index 670beea..6814a52 100644 --- a/src/routes/(app)/[instance]/search/+page.svelte +++ b/src/routes/(app)/[instance]/search/+page.svelte @@ -176,7 +176,6 @@ } const searchRes = await client.search({ - auth: jwt, limit: 50, page: query.page, sort: query.sort as SortType, diff --git a/src/routes/(app)/[instance]/search/+page.ts b/src/routes/(app)/[instance]/search/+page.ts index 9e2096a..451bfed 100644 --- a/src/routes/(app)/[instance]/search/+page.ts +++ b/src/routes/(app)/[instance]/search/+page.ts @@ -20,7 +20,6 @@ export const load = (async ({ url }) => { communityView: searchArgs.community ? client .getCommunity({ - auth: jwt, name: searchArgs.community }) .then(({ community_view }) => community_view) @@ -28,7 +27,6 @@ export const load = (async ({ url }) => { personView: searchArgs.creator ? client .getPersonDetails({ - auth: jwt, person_id: Number(searchArgs.creator) }) .then(({ person_view }) => person_view) diff --git a/src/routes/(app)/[instance]/settings/blocks/+page.ts b/src/routes/(app)/[instance]/settings/blocks/+page.ts index 390d0d2..65e942b 100644 --- a/src/routes/(app)/[instance]/settings/blocks/+page.ts +++ b/src/routes/(app)/[instance]/settings/blocks/+page.ts @@ -7,8 +7,6 @@ export const load = (async () => { // reload siteMeta instead of using context so it updates with new blocks return { - siteMeta: client.getSite({ - auth: jwt - }) + siteMeta: client.getSite() }; }) satisfies PageLoad; diff --git a/src/routes/(app)/[instance]/settings/blocks/CommunityBlock.svelte b/src/routes/(app)/[instance]/settings/blocks/CommunityBlock.svelte index 6fe5fd8..5838a90 100644 --- a/src/routes/(app)/[instance]/settings/blocks/CommunityBlock.svelte +++ b/src/routes/(app)/[instance]/settings/blocks/CommunityBlock.svelte @@ -21,7 +21,6 @@ } await client.blockCommunity({ - auth: jwt, community_id: community.id, block: false }); diff --git a/src/routes/(app)/[instance]/settings/blocks/PersonBlock.svelte b/src/routes/(app)/[instance]/settings/blocks/PersonBlock.svelte index 8ba9169..977f91c 100644 --- a/src/routes/(app)/[instance]/settings/blocks/PersonBlock.svelte +++ b/src/routes/(app)/[instance]/settings/blocks/PersonBlock.svelte @@ -21,7 +21,6 @@ } await client.blockPerson({ - auth: jwt, person_id: person.id, block: false }); diff --git a/src/routes/(app)/[instance]/settings/lemmy/+page.svelte b/src/routes/(app)/[instance]/settings/lemmy/+page.svelte index 8c32dc8..8f77d08 100644 --- a/src/routes/(app)/[instance]/settings/lemmy/+page.svelte +++ b/src/routes/(app)/[instance]/settings/lemmy/+page.svelte @@ -39,9 +39,6 @@ <Checkbox name="bot_account" checked={data.person.bot_account}>Bot account</Checkbox> <Checkbox name="show_bot_accounts" checked={data.localUser.show_bot_accounts}>Show bot accounts</Checkbox> <Checkbox name="show_read_posts" checked={data.localUser.show_read_posts}>Show read posts</Checkbox> - <Checkbox name="show_new_post_notifs" checked={data.localUser.show_new_post_notifs} - >Show notifications for new posts</Checkbox - > <Checkbox name="send_notifications_to_email" checked={data.localUser.send_notifications_to_email} >Send notifications to email</Checkbox > @@ -57,7 +54,7 @@ import { createStatefulForm } from '$lib/utils'; import { TextInput, Checkbox, Fieldset, Stack, createAutoExpireToast } from 'sheodox-ui'; import ToggleGroup from '$lib/ToggleGroup.svelte'; - import type { ListingType, SortType } from 'lemmy-js-client'; + import type { ListingType, SaveUserSettings, SortType } from 'lemmy-js-client'; import MarkdownEditor from '$lib/MarkdownEditor.svelte'; import { profile, updateProfileSettings } from '$lib/profiles/profiles'; import LanguageSettings from './LanguageSettings.svelte'; @@ -75,8 +72,7 @@ return; } - const settings = { - auth: jwt, + const settings: SaveUserSettings = { display_name: body.display_name as string, email: body.email as string, bio: body.bio as string, @@ -90,7 +86,6 @@ bot_account: body.bot_account === 'on', show_bot_accounts: body.show_bot_accounts === 'on', show_read_posts: body.show_read_posts === 'on', - show_new_post_notifs: body.show_new_post_notifs === 'on', send_notifications_to_email: body.send_notifications_to_email === 'on' }; diff --git a/src/routes/(app)/[instance]/settings/lemmy/+page.ts b/src/routes/(app)/[instance]/settings/lemmy/+page.ts index 5c76865..3def85d 100644 --- a/src/routes/(app)/[instance]/settings/lemmy/+page.ts +++ b/src/routes/(app)/[instance]/settings/lemmy/+page.ts @@ -6,9 +6,7 @@ import { profile, updateProfileSettings } from '$lib/profiles/profiles'; export const load = (async () => { const { client, jwt, id } = get(profile); - const site = await client.getSite({ - auth: jwt - }); + const site = await client.getSite(); if (!site.my_user) { throw error(403, "Couldn't get user settings"); diff --git a/src/routes/(app)/[instance]/u/[username]/+page.ts b/src/routes/(app)/[instance]/u/[username]/+page.ts index e6f66ab..fcf98cb 100644 --- a/src/routes/(app)/[instance]/u/[username]/+page.ts +++ b/src/routes/(app)/[instance]/u/[username]/+page.ts @@ -7,8 +7,7 @@ export const load = (async ({ params, url }) => { const { client, jwt } = get(profile); const details = await client.getPersonDetails({ - username, - auth: jwt + username }); return { personView: details.person_view, diff --git a/src/routes/(meta)/about/+page.svelte b/src/routes/(meta)/about/+page.svelte index 243cf16..bb932ac 100644 --- a/src/routes/(meta)/about/+page.svelte +++ b/src/routes/(meta)/about/+page.svelte @@ -35,6 +35,14 @@ >. Any support is appreciated, either financially or by sharing the site with your friends! </p> + <ExternalLink href="https://www.buymeacoffee.com/sheodox"> + <img + src="/buy_me_a_coffee.png" + alt="Buy Me A Coffee" + style="height: 40px !important;width: 144.6px !important;" + /> + </ExternalLink> + <p>Alexandrite is nothing without Lemmy and the various instances. Remember to support them too!</p> <h2>Other Project By Me</h2> diff --git a/src/routes/(meta)/instance/+page.svelte b/src/routes/(meta)/instance/+page.svelte index 32de6af..4466a3d 100644 --- a/src/routes/(meta)/instance/+page.svelte +++ b/src/routes/(meta)/instance/+page.svelte @@ -143,11 +143,13 @@ const baseUrl = 'https://' + instance; - const client = createLemmyClient(baseUrl); + // temporary client to test connection and server details first, then login. + // a new client is used after that once a jwt is obtained + const probeClient = createLemmyClient(baseUrl, { useProfile: false }); let site: GetSiteResponse; try { - site = await client.getSite({}); + site = await probeClient.getSite(); } catch (e) { errMsg = `Error connecting to "${instance}", check to make sure your instance is spelled correctly.`; return; @@ -167,15 +169,15 @@ let jwt = ''; try { - jwt = (await client.login(loginForm)).jwt ?? ''; + jwt = (await probeClient.login(loginForm)).jwt ?? ''; } catch (e) { errMsg = 'Login failed: ' + getMessageFromError(e); return; } - const site = await client.getSite({ - auth: jwt - }); + const client = createLemmyClient(baseUrl, { jwt }); + + const site = await client.getSite(); const user = site.my_user?.local_user_view; diff --git a/src/routes/(meta)/instance/signup/[instance]/+page.ts b/src/routes/(meta)/instance/signup/[instance]/+page.ts index 2e5a856..ca1d844 100644 --- a/src/routes/(meta)/instance/signup/[instance]/+page.ts +++ b/src/routes/(meta)/instance/signup/[instance]/+page.ts @@ -6,7 +6,7 @@ import type { PageLoad } from './$types'; export const load = (async ({ params }) => { const instance = config.forcedInstance || params.instance, instanceUrl = 'https://' + instance, - client = createLemmyClient(instanceUrl); + client = createLemmyClient(instanceUrl, {}); if (config.forcedInstance && params.instance !== config.forcedInstance) { throw redirect(303, `/instance/signup/${config.forcedInstance}`); diff --git a/static/buy_me_a_coffee.png b/static/buy_me_a_coffee.png new file mode 100644 index 0000000000000000000000000000000000000000..94ea90df3f5373afe286ca86b86bf8d8a87e0d09 GIT binary patch literal 4691 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 VqP2P9PdNYp002ovPDHLkV1i9Mz`_6k literal 0 HcmV?d00001 From aae40befc19cd61badb7e9c92a96324ee4b4fcba Mon Sep 17 00:00:00 2001 From: sheodox <imagamer27@msn.com> Date: Sat, 16 Dec 2023 21:49:19 -0600 Subject: [PATCH 2/2] Remove unused jwt variables --- src/lib/CommunitySelector.svelte | 1 - src/lib/community-context/community-context.ts | 2 +- src/lib/feed-query.ts | 2 +- src/routes/(app)/[instance]/communities/+page.svelte | 1 - src/routes/(app)/[instance]/create/post/+layout.ts | 2 +- src/routes/(app)/[instance]/create/post/+page.ts | 2 +- src/routes/(app)/[instance]/message/[recipientId]/+page.ts | 2 +- src/routes/(app)/[instance]/modlog/+layout.ts | 2 +- src/routes/(app)/[instance]/modlog/view/+page.ts | 2 +- src/routes/(app)/[instance]/post/[postId]/+page.ts | 2 +- src/routes/(app)/[instance]/search/+page.svelte | 1 - src/routes/(app)/[instance]/search/+page.ts | 2 +- src/routes/(app)/[instance]/settings/blocks/+page.ts | 2 +- src/routes/(app)/[instance]/settings/lemmy/+page.ts | 2 +- src/routes/(app)/[instance]/u/[username]/+page.ts | 2 +- 15 files changed, 12 insertions(+), 15 deletions(-) diff --git a/src/lib/CommunitySelector.svelte b/src/lib/CommunitySelector.svelte index 72d4da3..7959e02 100644 --- a/src/lib/CommunitySelector.svelte +++ b/src/lib/CommunitySelector.svelte @@ -39,7 +39,6 @@ const { siteMeta } = getAppContext(); $: client = $profile.client; - $: jwt = $profile.jwt; let searchText = ''; diff --git a/src/lib/community-context/community-context.ts b/src/lib/community-context/community-context.ts index 7e0fc68..7df0f35 100644 --- a/src/lib/community-context/community-context.ts +++ b/src/lib/community-context/community-context.ts @@ -34,7 +34,7 @@ export const createCommunityContext = () => { async function loadCommunity(name: string) { loading.add(name); - const { client, jwt } = get(profile); + const { client } = get(profile); const res = await client.getCommunity({ name diff --git a/src/lib/feed-query.ts b/src/lib/feed-query.ts index 5cb3048..7aaf6b0 100644 --- a/src/lib/feed-query.ts +++ b/src/lib/feed-query.ts @@ -33,7 +33,7 @@ interface FeedDataQuery { } export const loadFeedData = async (filters: FeedDataQuery): Promise<ApiFeedLoad> => { - const { client, jwt, settings } = get(profile), + const { client, settings } = get(profile), page = Number(filters.page ?? '1'), selectedType = filters.type ?? (filters.username ? 'Overview' : 'Posts'), selectedListing = filters.listing, diff --git a/src/routes/(app)/[instance]/communities/+page.svelte b/src/routes/(app)/[instance]/communities/+page.svelte index c92a978..50a5251 100644 --- a/src/routes/(app)/[instance]/communities/+page.svelte +++ b/src/routes/(app)/[instance]/communities/+page.svelte @@ -56,7 +56,6 @@ import { profile } from '$lib/profiles/profiles'; $: client = $profile.client; - $: jwt = $profile.jwt; $: loggedIn = $profile.loggedIn; export let data; diff --git a/src/routes/(app)/[instance]/create/post/+layout.ts b/src/routes/(app)/[instance]/create/post/+layout.ts index b623b44..8000915 100644 --- a/src/routes/(app)/[instance]/create/post/+layout.ts +++ b/src/routes/(app)/[instance]/create/post/+layout.ts @@ -3,7 +3,7 @@ import { get } from 'svelte/store'; import type { LayoutLoad } from './$types'; export const load = (async ({ url }) => { - const { client, jwt } = get(profile); + const { client } = get(profile); const communityName = url.searchParams.get('community'); diff --git a/src/routes/(app)/[instance]/create/post/+page.ts b/src/routes/(app)/[instance]/create/post/+page.ts index a8d65c1..2dcffdd 100644 --- a/src/routes/(app)/[instance]/create/post/+page.ts +++ b/src/routes/(app)/[instance]/create/post/+page.ts @@ -3,7 +3,7 @@ import { get } from 'svelte/store'; import type { PageLoad } from './$types'; export const load = (async ({ url }) => { - const { client, jwt } = get(profile); + const { client } = get(profile); const crossPostId = url.searchParams.get('crosspost'); return { diff --git a/src/routes/(app)/[instance]/message/[recipientId]/+page.ts b/src/routes/(app)/[instance]/message/[recipientId]/+page.ts index 7927fde..19012c2 100644 --- a/src/routes/(app)/[instance]/message/[recipientId]/+page.ts +++ b/src/routes/(app)/[instance]/message/[recipientId]/+page.ts @@ -3,7 +3,7 @@ import type { PageLoad } from './$types'; import { profile } from '$lib/profiles/profiles'; export const load = (async ({ params }) => { - const { client, jwt } = get(profile); + const { client } = get(profile); return { personView: await client diff --git a/src/routes/(app)/[instance]/modlog/+layout.ts b/src/routes/(app)/[instance]/modlog/+layout.ts index 376ac94..bad3732 100644 --- a/src/routes/(app)/[instance]/modlog/+layout.ts +++ b/src/routes/(app)/[instance]/modlog/+layout.ts @@ -5,7 +5,7 @@ import type { GetCommunityResponse } from 'lemmy-js-client'; import { nameAtInstance } from '$lib/nav-utils'; export const load = (async ({ url }) => { - const { client, jwt } = get(profile), + const { client } = get(profile), communityId = url.searchParams.get('community'); let cv: GetCommunityResponse | null = null; diff --git a/src/routes/(app)/[instance]/modlog/view/+page.ts b/src/routes/(app)/[instance]/modlog/view/+page.ts index 7ed2246..c9fb88c 100644 --- a/src/routes/(app)/[instance]/modlog/view/+page.ts +++ b/src/routes/(app)/[instance]/modlog/view/+page.ts @@ -7,7 +7,7 @@ import type { ModlogActionType } from 'lemmy-js-client'; const id = (idStr: string | null) => (idStr ? +idStr : undefined); export const load = (async ({ url }) => { - const { client, jwt } = get(profile), + const { client } = get(profile), communityId = id(url.searchParams.get('community')), moderatorId = id(url.searchParams.get('moderator')), targetId = id(url.searchParams.get('target')), diff --git a/src/routes/(app)/[instance]/post/[postId]/+page.ts b/src/routes/(app)/[instance]/post/[postId]/+page.ts index 54d9667..0fe0c5d 100644 --- a/src/routes/(app)/[instance]/post/[postId]/+page.ts +++ b/src/routes/(app)/[instance]/post/[postId]/+page.ts @@ -3,7 +3,7 @@ import { get } from 'svelte/store'; import type { PageLoad } from './$types'; export const load = (async ({ params }) => { - const { client, jwt } = get(profile); + const { client } = get(profile); const res = await client.getPost({ id: +params.postId }); diff --git a/src/routes/(app)/[instance]/search/+page.svelte b/src/routes/(app)/[instance]/search/+page.svelte index 6814a52..178b32b 100644 --- a/src/routes/(app)/[instance]/search/+page.svelte +++ b/src/routes/(app)/[instance]/search/+page.svelte @@ -117,7 +117,6 @@ export let data; $: client = $profile.client; - $: jwt = $profile.jwt; $: loggedIn = $profile.loggedIn; const cvStore = createContentViewStore(); diff --git a/src/routes/(app)/[instance]/search/+page.ts b/src/routes/(app)/[instance]/search/+page.ts index 451bfed..c59086a 100644 --- a/src/routes/(app)/[instance]/search/+page.ts +++ b/src/routes/(app)/[instance]/search/+page.ts @@ -3,7 +3,7 @@ import { get } from 'svelte/store'; import { profile } from '$lib/profiles/profiles'; export const load = (async ({ url }) => { - const { client, jwt, settings } = get(profile); + const { client, settings } = get(profile); const searchArgs = { q: url.searchParams.get('q') ?? '', diff --git a/src/routes/(app)/[instance]/settings/blocks/+page.ts b/src/routes/(app)/[instance]/settings/blocks/+page.ts index 65e942b..856fb24 100644 --- a/src/routes/(app)/[instance]/settings/blocks/+page.ts +++ b/src/routes/(app)/[instance]/settings/blocks/+page.ts @@ -3,7 +3,7 @@ import type { PageLoad } from './$types'; import { profile } from '$lib/profiles/profiles'; export const load = (async () => { - const { client, jwt } = get(profile); + const { client } = get(profile); // reload siteMeta instead of using context so it updates with new blocks return { diff --git a/src/routes/(app)/[instance]/settings/lemmy/+page.ts b/src/routes/(app)/[instance]/settings/lemmy/+page.ts index 3def85d..958f96b 100644 --- a/src/routes/(app)/[instance]/settings/lemmy/+page.ts +++ b/src/routes/(app)/[instance]/settings/lemmy/+page.ts @@ -4,7 +4,7 @@ import { get } from 'svelte/store'; import { profile, updateProfileSettings } from '$lib/profiles/profiles'; export const load = (async () => { - const { client, jwt, id } = get(profile); + const { client, id } = get(profile); const site = await client.getSite(); diff --git a/src/routes/(app)/[instance]/u/[username]/+page.ts b/src/routes/(app)/[instance]/u/[username]/+page.ts index fcf98cb..6950f09 100644 --- a/src/routes/(app)/[instance]/u/[username]/+page.ts +++ b/src/routes/(app)/[instance]/u/[username]/+page.ts @@ -4,7 +4,7 @@ import { profile } from '$lib/profiles/profiles'; export const load = (async ({ params, url }) => { const username = params.username; - const { client, jwt } = get(profile); + const { client } = get(profile); const details = await client.getPersonDetails({ username