X-Git-Url: http://these/git/?a=blobdiff_plain;f=src%2Fshared%2Fcomponents%2Fhome%2Femojis-form.tsx;h=171b7c99b2d8f4e71543e14612377d7cb1be1888;hb=2b1af707c3df6126b3e6890106c03c60ad49b1be;hp=044964da724f03ee25e6b67c9226c656d8922377;hpb=f61037f5d89f12818c8100f907a98b74e980112a;p=lemmy-ui.git diff --git a/src/shared/components/home/emojis-form.tsx b/src/shared/components/home/emojis-form.tsx index 044964d..171b7c9 100644 --- a/src/shared/components/home/emojis-form.tsx +++ b/src/shared/components/home/emojis-form.tsx @@ -1,36 +1,30 @@ import { Component, linkEvent } from "inferno"; import { CreateCustomEmoji, - CustomEmojiResponse, DeleteCustomEmoji, - DeleteCustomEmojiResponse, EditCustomEmoji, GetSiteResponse, - UserOperation, - wsJsonToRes, - wsUserOp, } from "lemmy-js-client"; -import { Subscription } from "rxjs"; import { i18n } from "../../i18next"; -import { WebSocketService } from "../../services"; +import { HttpService } from "../../services/HttpService"; import { customEmojisLookup, - isBrowser, - myAuth, + myAuthRequired, pictrsDeleteToast, - removeFromEmojiDataModel, setIsoData, toast, - updateEmojiDataModel, - uploadImage, - wsClient, - wsSubscribe, } from "../../utils"; import { EmojiMart } from "../common/emoji-mart"; import { HtmlTags } from "../common/html-tags"; import { Icon } from "../common/icon"; import { Paginator } from "../common/paginator"; +interface EmojiFormProps { + onEdit(form: EditCustomEmoji): void; + onCreate(form: CreateCustomEmoji): void; + onDelete(form: DeleteCustomEmoji): void; +} + interface EmojiFormState { siteRes: GetSiteResponse; customEmojis: CustomEmojiViewForm[]; @@ -49,9 +43,8 @@ interface CustomEmojiViewForm { page: number; } -export class EmojiForm extends Component { +export class EmojiForm extends Component { private isoData = setIsoData(this.context); - private subscription: Subscription | undefined; private itemsPerPage = 15; private emptyState: EmojiFormState = { loading: false, @@ -75,20 +68,12 @@ export class EmojiForm extends Component { this.state = this.emptyState; this.handlePageChange = this.handlePageChange.bind(this); - this.parseMessage = this.parseMessage.bind(this); this.handleEmojiClick = this.handleEmojiClick.bind(this); - this.subscription = wsSubscribe(this.parseMessage); } get documentTitle(): string { return i18n.t("custom_emojis"); } - componentWillUnmount() { - if (isBrowser()) { - this.subscription?.unsubscribe(); - } - } - render() { return (
@@ -232,7 +217,7 @@ export class EmojiForm extends Component { "btn btn-link btn-animate" } onClick={linkEvent( - { form: this, cv: cv }, + { i: this, cv: cv }, this.handleEditEmojiClick )} data-tippy-content={i18n.t("save")} @@ -253,7 +238,7 @@ export class EmojiForm extends Component {