From 390da4cab6e6dd6a00bcbaef09f16d0997550e21 Mon Sep 17 00:00:00 2001
From: Domin-MND <69919939+domin-mnd@users.noreply.github.com>
Date: Tue, 24 Oct 2023 19:58:48 +0300
Subject: [PATCH] remove initial content for create methods
---
packages/reacord/library/core/instance.ts | 2 +-
.../library/core/reacord-discord-js.ts | 9 ------
packages/reacord/library/core/reacord.tsx | 1 +
.../reacord/scripts/discordjs-manual-test.tsx | 22 +++++--------
packages/reacord/test/reacord.test.tsx | 8 ++---
packages/reacord/test/select.test.tsx | 8 ++---
packages/reacord/test/test-adapter.ts | 18 +++++------
packages/reacord/test/use-instance.test.tsx | 6 ++--
.../src/content/guides/1-sending-messages.md | 31 +++++++++----------
.../website/src/content/guides/2-embeds.md | 4 +--
10 files changed, 42 insertions(+), 67 deletions(-)
diff --git a/packages/reacord/library/core/instance.ts b/packages/reacord/library/core/instance.ts
index 4c6eca3..bea8ba7 100644
--- a/packages/reacord/library/core/instance.ts
+++ b/packages/reacord/library/core/instance.ts
@@ -7,7 +7,7 @@ import type { ReactNode } from "react"
*/
export interface ReacordInstance {
/** Render some JSX to this instance (edits the message) */
- render: (content: ReactNode) => void
+ render: (content: ReactNode) => ReacordInstance
/** Remove this message */
destroy: () => void
diff --git a/packages/reacord/library/core/reacord-discord-js.ts b/packages/reacord/library/core/reacord-discord-js.ts
index f5116bd..3f6dadc 100644
--- a/packages/reacord/library/core/reacord-discord-js.ts
+++ b/packages/reacord/library/core/reacord-discord-js.ts
@@ -88,17 +88,14 @@ export class ReacordDiscordJs extends Reacord {
*
* @param target - Discord channel object.
* @param [options] - Options for the channel message
- * @param [content] - Initial React node content to render.
* @see https://reacord.mapleleaf.dev/guides/sending-messages
*/
public createChannelMessage(
target: Discord.Channel,
options: CreateChannelMessageOptions = {},
- content?: React.ReactNode,
): ReacordInstance {
return this.createInstance(
this.createChannelMessageRenderer(target, options),
- content,
)
}
@@ -107,17 +104,14 @@ export class ReacordDiscordJs extends Reacord {
*
* @param message - Discord message event object.
* @param [options] - Options for the message reply method.
- * @param [content] - Initial React node content to render.
* @see https://reacord.mapleleaf.dev/guides/sending-messages
*/
public createMessageReply(
message: Discord.Message,
options: CreateMessageReplyOptions = {},
- content?: React.ReactNode,
): ReacordInstance {
return this.createInstance(
this.createMessageReplyRenderer(message, options),
- content,
)
}
@@ -126,17 +120,14 @@ export class ReacordDiscordJs extends Reacord {
*
* @param interaction - Discord command interaction object.
* @param [options] - Custom options for the interaction reply method.
- * @param [content] - Initial React node content to render.
* @see https://reacord.mapleleaf.dev/guides/sending-messages
*/
public createInteractionReply(
interaction: Discord.CommandInteraction,
options: CreateInteractionReplyOptions = {},
- content?: React.ReactNode,
): ReacordInstance {
return this.createInstance(
this.createInteractionReplyRenderer(interaction, options),
- content,
)
}
diff --git a/packages/reacord/library/core/reacord.tsx b/packages/reacord/library/core/reacord.tsx
index 8d63c23..9ff5a52 100644
--- a/packages/reacord/library/core/reacord.tsx
+++ b/packages/reacord/library/core/reacord.tsx
@@ -57,6 +57,7 @@ export abstract class Reacord {
{content},
container,
)
+ return instance
},
deactivate: () => {
this.deactivate(renderer)
diff --git a/packages/reacord/scripts/discordjs-manual-test.tsx b/packages/reacord/scripts/discordjs-manual-test.tsx
index 89518ef..5bfc1b1 100644
--- a/packages/reacord/scripts/discordjs-manual-test.tsx
+++ b/packages/reacord/scripts/discordjs-manual-test.tsx
@@ -50,7 +50,7 @@ const createTest = async (
}
await createTest("basic", (channel) => {
- reacord.createChannelMessage(channel, {}, "Hello, world!")
+ reacord.createChannelMessage(channel).render("Hello, world!")
})
await createTest("counter", (channel) => {
@@ -73,7 +73,7 @@ await createTest("counter", (channel) => {
>
)
}
- reacord.createChannelMessage(channel, {}, )
+ reacord.createChannelMessage(channel).render()
})
await createTest("select", (channel) => {
@@ -102,9 +102,7 @@ await createTest("select", (channel) => {
)
}
- const instance = reacord.createChannelMessage(
- channel,
- {},
+ const instance = reacord.createChannelMessage(channel).render(
{
instance.render(`you chose ${value}`)
@@ -115,9 +113,7 @@ await createTest("select", (channel) => {
})
await createTest("ephemeral button", (channel) => {
- reacord.createChannelMessage(
- channel,
- {},
+ reacord.createChannelMessage(channel).render(
<>