From f23f04e0b1d117be714bf91d5266dab219ed741e Mon Sep 17 00:00:00 2001 From: tobi <31960611+tsmethurst@users.noreply.github.com> Date: Sat, 24 Aug 2024 11:49:37 +0200 Subject: [feature] Interaction requests client api + settings panel (#3215) * [feature] Interaction requests client api + settings panel * test accept / reject * fmt * don't pin rejected interaction * use single db model for interaction accept, reject, and request * swaggor * env sharting * append errors * remove ErrNoEntries checks * change intReqID to reqID * rename "pend" to "request" * markIntsPending -> mark interactionsPending * use log instead of returning error when rejecting interaction * empty migration * jolly renaming * make interactionURI unique again * swag grr * remove unnecessary locks * invalidate as last step --- web/source/package.json | 2 + web/source/settings/components/status.tsx | 2 +- web/source/settings/lib/query/admin/index.ts | 2 +- .../settings/lib/query/admin/reports/index.ts | 4 +- web/source/settings/lib/query/gts-api.ts | 1 + web/source/settings/lib/query/user/interactions.ts | 97 ++++++++ web/source/settings/lib/types/interaction.ts | 82 +++++++ web/source/settings/style.css | 58 ++++- .../settings/views/user/interactions/detail.tsx | 117 ++++++++++ .../settings/views/user/interactions/index.tsx | 36 +++ .../settings/views/user/interactions/search.tsx | 251 +++++++++++++++++++++ .../settings/views/user/interactions/util.tsx | 98 ++++++++ web/source/settings/views/user/menu.tsx | 5 + web/source/settings/views/user/router.tsx | 28 +++ web/source/yarn.lock | 53 ++++- 15 files changed, 828 insertions(+), 8 deletions(-) create mode 100644 web/source/settings/lib/query/user/interactions.ts create mode 100644 web/source/settings/views/user/interactions/detail.tsx create mode 100644 web/source/settings/views/user/interactions/index.tsx create mode 100644 web/source/settings/views/user/interactions/search.tsx create mode 100644 web/source/settings/views/user/interactions/util.tsx (limited to 'web/source') diff --git a/web/source/package.json b/web/source/package.json index bce3546d2..3c239419e 100644 --- a/web/source/package.json +++ b/web/source/package.json @@ -14,6 +14,7 @@ "@reduxjs/toolkit": "^1.8.6", "ariakit": "^2.0.0-next.41", "get-by-dot": "^1.0.2", + "html-to-text": "^9.0.5", "is-valid-domain": "^0.1.6", "js-file-download": "^0.4.12", "langs": "^2.0.0", @@ -45,6 +46,7 @@ "@browserify/envify": "^6.0.0", "@browserify/uglifyify": "^6.0.0", "@joepie91/eslint-config": "^1.1.1", + "@types/html-to-text": "^9.0.4", "@types/is-valid-domain": "^0.0.2", "@types/papaparse": "^5.3.9", "@types/parse-link-header": "^2.0.3", diff --git a/web/source/settings/components/status.tsx b/web/source/settings/components/status.tsx index ba38e161c..d2116e60d 100644 --- a/web/source/settings/components/status.tsx +++ b/web/source/settings/components/status.tsx @@ -220,7 +220,7 @@ function StatusMediaEntry({ media }: { media: MediaAttachment }) { function StatusFooter({ status }: { status: StatusType }) { return ( -