dfx 1.0.3 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Cache/driver.d.ts +24 -0
- package/Cache/driver.d.ts.map +1 -0
- package/Cache/driver.js +11 -0
- package/Cache/driver.js.map +1 -0
- package/Cache/memory.d.ts +5 -0
- package/Cache/memory.d.ts.map +1 -0
- package/Cache/memory.js +57 -0
- package/Cache/memory.js.map +1 -0
- package/Cache/memoryTTL.d.ts +23 -0
- package/Cache/memoryTTL.d.ts.map +1 -0
- package/Cache/memoryTTL.js +128 -0
- package/Cache/memoryTTL.js.map +1 -0
- package/Cache/prelude.d.ts +32 -0
- package/Cache/prelude.d.ts.map +1 -0
- package/Cache/prelude.js +143 -0
- package/Cache/prelude.js.map +1 -0
- package/Cache.d.ts +81 -0
- package/Cache.d.ts.map +1 -0
- package/Cache.js +145 -0
- package/Cache.js.map +1 -0
- package/DiscordConfig.d.ts +35 -0
- package/DiscordConfig.d.ts.map +1 -0
- package/DiscordConfig.js +43 -0
- package/DiscordConfig.js.map +1 -0
- package/DiscordGateway/DiscordWS.d.ts +37 -0
- package/DiscordGateway/DiscordWS.d.ts.map +1 -0
- package/DiscordGateway/DiscordWS.js +86 -0
- package/DiscordGateway/DiscordWS.js.map +1 -0
- package/DiscordGateway/Messaging.d.ts +587 -0
- package/DiscordGateway/Messaging.d.ts.map +1 -0
- package/DiscordGateway/Messaging.js +43 -0
- package/DiscordGateway/Messaging.js.map +1 -0
- package/DiscordGateway/Shard/StateStore.d.ts +24 -0
- package/DiscordGateway/Shard/StateStore.d.ts.map +1 -0
- package/DiscordGateway/Shard/StateStore.js +49 -0
- package/DiscordGateway/Shard/StateStore.js.map +1 -0
- package/DiscordGateway/Shard/heartbeats.d.ts +8 -0
- package/DiscordGateway/Shard/heartbeats.d.ts.map +1 -0
- package/DiscordGateway/Shard/heartbeats.js +33 -0
- package/DiscordGateway/Shard/heartbeats.js.map +1 -0
- package/DiscordGateway/Shard/identify.d.ts +12 -0
- package/DiscordGateway/Shard/identify.d.ts.map +1 -0
- package/DiscordGateway/Shard/identify.js +37 -0
- package/DiscordGateway/Shard/identify.js.map +1 -0
- package/DiscordGateway/Shard/sendEvents.d.ts +8 -0
- package/DiscordGateway/Shard/sendEvents.d.ts.map +1 -0
- package/DiscordGateway/Shard/sendEvents.js +39 -0
- package/DiscordGateway/Shard/sendEvents.js.map +1 -0
- package/DiscordGateway/Shard/utils.d.ts +6 -0
- package/DiscordGateway/Shard/utils.d.ts.map +1 -0
- package/DiscordGateway/Shard/utils.js +11 -0
- package/DiscordGateway/Shard/utils.js.map +1 -0
- package/DiscordGateway/Shard.d.ts +29 -0
- package/DiscordGateway/Shard.d.ts.map +1 -0
- package/DiscordGateway/Shard.js +155 -0
- package/DiscordGateway/Shard.js.map +1 -0
- package/DiscordGateway/ShardStore.d.ts +19 -0
- package/DiscordGateway/ShardStore.d.ts.map +1 -0
- package/DiscordGateway/ShardStore.js +32 -0
- package/DiscordGateway/ShardStore.js.map +1 -0
- package/DiscordGateway/Sharder.d.ts +14 -0
- package/DiscordGateway/Sharder.d.ts.map +1 -0
- package/DiscordGateway/Sharder.js +75 -0
- package/DiscordGateway/Sharder.js.map +1 -0
- package/DiscordGateway.d.ts +33 -0
- package/DiscordGateway.d.ts.map +1 -0
- package/DiscordGateway.js +28 -0
- package/DiscordGateway.js.map +1 -0
- package/DiscordREST/Generated.d.ts +5577 -0
- package/DiscordREST/Generated.d.ts.map +1 -0
- package/DiscordREST/Generated.js +2480 -0
- package/DiscordREST/Generated.js.map +1 -0
- package/DiscordREST/utils.d.ts +14 -0
- package/DiscordREST/utils.d.ts.map +1 -0
- package/DiscordREST/utils.js +32 -0
- package/DiscordREST/utils.js.map +1 -0
- package/DiscordREST.d.ts +22 -0
- package/DiscordREST.d.ts.map +1 -0
- package/DiscordREST.js +128 -0
- package/DiscordREST.js.map +1 -0
- package/Helpers/flags.d.ts +28 -0
- package/Helpers/flags.d.ts.map +1 -0
- package/Helpers/flags.js +57 -0
- package/Helpers/flags.js.map +1 -0
- package/Helpers/intents.d.ts +25 -0
- package/Helpers/intents.d.ts.map +1 -0
- package/Helpers/intents.js +34 -0
- package/Helpers/intents.js.map +1 -0
- package/Helpers/interactions.d.ts +116 -0
- package/Helpers/interactions.d.ts.map +1 -0
- package/Helpers/interactions.js +143 -0
- package/Helpers/interactions.js.map +1 -0
- package/Helpers/members.d.ts +10 -0
- package/Helpers/members.d.ts.map +1 -0
- package/Helpers/members.js +17 -0
- package/Helpers/members.js.map +1 -0
- package/Helpers/permissions.d.ts +42 -0
- package/Helpers/permissions.d.ts.map +1 -0
- package/Helpers/permissions.js +97 -0
- package/Helpers/permissions.js.map +1 -0
- package/Helpers/ui.d.ts +105 -0
- package/Helpers/ui.d.ts.map +1 -0
- package/Helpers/ui.js +162 -0
- package/Helpers/ui.js.map +1 -0
- package/Interactions/builder.d.ts +48 -0
- package/Interactions/builder.d.ts.map +1 -0
- package/Interactions/builder.js +64 -0
- package/Interactions/builder.js.map +1 -0
- package/Interactions/commandHelper.d.ts +83 -0
- package/Interactions/commandHelper.d.ts.map +1 -0
- package/Interactions/commandHelper.js +57 -0
- package/Interactions/commandHelper.js.map +1 -0
- package/Interactions/context.d.ts +53 -0
- package/Interactions/context.d.ts.map +1 -0
- package/Interactions/context.js +47 -0
- package/Interactions/context.js.map +1 -0
- package/Interactions/definitions.d.ts +43 -0
- package/Interactions/definitions.d.ts.map +1 -0
- package/Interactions/definitions.js +67 -0
- package/Interactions/definitions.js.map +1 -0
- package/Interactions/error.d.ts +2 -0
- package/Interactions/error.d.ts.map +1 -0
- package/Interactions/error.js +8 -0
- package/Interactions/error.js.map +1 -0
- package/Interactions/gateway.d.ts +20 -0
- package/Interactions/gateway.d.ts.map +1 -0
- package/Interactions/gateway.js +92 -0
- package/Interactions/gateway.js.map +1 -0
- package/Interactions/handlers.d.ts +15 -0
- package/Interactions/handlers.d.ts.map +1 -0
- package/Interactions/handlers.js +73 -0
- package/Interactions/handlers.js.map +1 -0
- package/Interactions/index.d.ts +17 -0
- package/Interactions/index.d.ts.map +1 -0
- package/Interactions/index.js +94 -0
- package/Interactions/index.js.map +1 -0
- package/Interactions/utils.d.ts +61 -0
- package/Interactions/utils.d.ts.map +1 -0
- package/Interactions/utils.js +35 -0
- package/Interactions/utils.js.map +1 -0
- package/Interactions/webhook.d.ts +71 -0
- package/Interactions/webhook.d.ts.map +1 -0
- package/Interactions/webhook.js +89 -0
- package/Interactions/webhook.js.map +1 -0
- package/RateLimit/memory.d.ts +3 -0
- package/RateLimit/memory.d.ts.map +1 -0
- package/RateLimit/memory.js +47 -0
- package/RateLimit/memory.js.map +1 -0
- package/RateLimit/utils.d.ts +3 -0
- package/RateLimit/utils.d.ts.map +1 -0
- package/RateLimit/utils.js +25 -0
- package/RateLimit/utils.js.map +1 -0
- package/RateLimit.d.ts +30 -0
- package/RateLimit.d.ts.map +1 -0
- package/RateLimit.js +37 -0
- package/RateLimit.js.map +1 -0
- package/gateway.d.ts +19 -0
- package/gateway.d.ts.map +1 -0
- package/gateway.js +72 -0
- package/gateway.js.map +1 -0
- package/index.d.ts +18 -0
- package/index.d.ts.map +1 -0
- package/index.js +71 -0
- package/index.js.map +1 -0
- package/mjs/Cache/driver.mjs +3 -0
- package/mjs/Cache/driver.mjs.map +1 -0
- package/mjs/Cache/memory.mjs +48 -0
- package/mjs/Cache/memory.mjs.map +1 -0
- package/mjs/Cache/memoryTTL.mjs +119 -0
- package/mjs/Cache/memoryTTL.mjs.map +1 -0
- package/mjs/Cache/prelude.mjs +131 -0
- package/mjs/Cache/prelude.mjs.map +1 -0
- package/mjs/Cache.mjs +90 -0
- package/mjs/Cache.mjs.map +1 -0
- package/mjs/DiscordConfig.mjs +32 -0
- package/mjs/DiscordConfig.mjs.map +1 -0
- package/mjs/DiscordGateway/DiscordWS.mjs +77 -0
- package/mjs/DiscordGateway/DiscordWS.mjs.map +1 -0
- package/mjs/DiscordGateway/Messaging.mjs +35 -0
- package/mjs/DiscordGateway/Messaging.mjs.map +1 -0
- package/mjs/DiscordGateway/Shard/StateStore.mjs +41 -0
- package/mjs/DiscordGateway/Shard/StateStore.mjs.map +1 -0
- package/mjs/DiscordGateway/Shard/heartbeats.mjs +25 -0
- package/mjs/DiscordGateway/Shard/heartbeats.mjs.map +1 -0
- package/mjs/DiscordGateway/Shard/identify.mjs +29 -0
- package/mjs/DiscordGateway/Shard/identify.mjs.map +1 -0
- package/mjs/DiscordGateway/Shard/sendEvents.mjs +26 -0
- package/mjs/DiscordGateway/Shard/sendEvents.mjs.map +1 -0
- package/mjs/DiscordGateway/Shard/utils.mjs +3 -0
- package/mjs/DiscordGateway/Shard/utils.mjs.map +1 -0
- package/mjs/DiscordGateway/Shard.mjs +147 -0
- package/mjs/DiscordGateway/Shard.mjs.map +1 -0
- package/mjs/DiscordGateway/ShardStore.mjs +24 -0
- package/mjs/DiscordGateway/ShardStore.mjs.map +1 -0
- package/mjs/DiscordGateway/Sharder.mjs +67 -0
- package/mjs/DiscordGateway/Sharder.mjs.map +1 -0
- package/mjs/DiscordGateway.mjs +21 -0
- package/mjs/DiscordGateway.mjs.map +1 -0
- package/mjs/DiscordREST/Generated.mjs +2471 -0
- package/mjs/DiscordREST/Generated.mjs.map +1 -0
- package/mjs/DiscordREST/utils.mjs +21 -0
- package/mjs/DiscordREST/utils.mjs.map +1 -0
- package/mjs/DiscordREST.mjs +119 -0
- package/mjs/DiscordREST.mjs.map +1 -0
- package/mjs/Helpers/flags.mjs +45 -0
- package/mjs/Helpers/flags.mjs.map +1 -0
- package/mjs/Helpers/intents.mjs +27 -0
- package/mjs/Helpers/intents.mjs.map +1 -0
- package/mjs/Helpers/interactions.mjs +115 -0
- package/mjs/Helpers/interactions.mjs.map +1 -0
- package/mjs/Helpers/members.mjs +9 -0
- package/mjs/Helpers/members.mjs.map +1 -0
- package/mjs/Helpers/permissions.mjs +84 -0
- package/mjs/Helpers/permissions.mjs.map +1 -0
- package/mjs/Helpers/ui.mjs +137 -0
- package/mjs/Helpers/ui.mjs.map +1 -0
- package/mjs/Interactions/builder.mjs +56 -0
- package/mjs/Interactions/builder.mjs.map +1 -0
- package/mjs/Interactions/commandHelper.mjs +49 -0
- package/mjs/Interactions/commandHelper.mjs.map +1 -0
- package/mjs/Interactions/context.mjs +28 -0
- package/mjs/Interactions/context.mjs.map +1 -0
- package/mjs/Interactions/definitions.mjs +51 -0
- package/mjs/Interactions/definitions.mjs.map +1 -0
- package/mjs/Interactions/error.mjs +2 -0
- package/mjs/Interactions/error.mjs.map +1 -0
- package/mjs/Interactions/gateway.mjs +82 -0
- package/mjs/Interactions/gateway.mjs.map +1 -0
- package/mjs/Interactions/handlers.mjs +64 -0
- package/mjs/Interactions/handlers.mjs.map +1 -0
- package/mjs/Interactions/index.mjs +11 -0
- package/mjs/Interactions/index.mjs.map +1 -0
- package/mjs/Interactions/utils.mjs +26 -0
- package/mjs/Interactions/utils.mjs.map +1 -0
- package/mjs/Interactions/webhook.mjs +75 -0
- package/mjs/Interactions/webhook.mjs.map +1 -0
- package/mjs/RateLimit/memory.mjs +39 -0
- package/mjs/RateLimit/memory.mjs.map +1 -0
- package/mjs/RateLimit/utils.mjs +18 -0
- package/mjs/RateLimit/utils.mjs.map +1 -0
- package/mjs/RateLimit.mjs +28 -0
- package/mjs/RateLimit.mjs.map +1 -0
- package/mjs/gateway.mjs +19 -0
- package/mjs/gateway.mjs.map +1 -0
- package/mjs/index.mjs +18 -0
- package/mjs/index.mjs.map +1 -0
- package/mjs/types.mjs +356 -0
- package/mjs/types.mjs.map +1 -0
- package/mjs/utils/Effect.mjs +44 -0
- package/mjs/utils/Effect.mjs.map +1 -0
- package/mjs/version.mjs +2 -0
- package/mjs/version.mjs.map +1 -0
- package/mjs/webhooks.mjs +6 -0
- package/mjs/webhooks.mjs.map +1 -0
- package/package.json +33 -77
- package/src/version.ts +1 -0
- package/types.d.ts +2458 -0
- package/types.d.ts.map +1 -0
- package/types.js +408 -0
- package/types.js.map +1 -0
- package/utils/Effect.d.ts +5 -0
- package/utils/Effect.d.ts.map +1 -0
- package/utils/Effect.js +53 -0
- package/utils/Effect.js.map +1 -0
- package/version.d.ts +2 -0
- package/version.d.ts.map +1 -0
- package/version.js +8 -0
- package/version.js.map +1 -0
- package/webhooks.d.ts +8 -0
- package/webhooks.d.ts.map +1 -0
- package/webhooks.js +55 -0
- package/webhooks.js.map +1 -0
- package/.babel.cjs.json +0 -11
- package/.babel.mjs.json +0 -10
- package/.envrc +0 -1
- package/.gitmodules +0 -3
- package/.husky/pre-commit +0 -2
- package/.oxlintrc.json +0 -72
- package/.prettierignore +0 -0
- package/.prettierrc.json +0 -5
- package/.tool-versions +0 -1
- package/.vscode/debug.cjs +0 -8
- package/.vscode/launch.json +0 -23
- package/.vscode/settings.json +0 -29
- package/.vscode/tasks.json +0 -44
- package/AGENTS.md +0 -15
- package/CHANGELOG.md +0 -1566
- package/examples/.env.example +0 -5
- package/examples/interactions.ts +0 -79
- package/examples/readme.ts +0 -56
- package/examples/registry.ts +0 -66
- package/flake.lock +0 -27
- package/flake.nix +0 -21
- package/lerna.json +0 -12
- package/pnpm-workspace.yaml +0 -7
- package/scripts/generate-client.sh +0 -10
- package/scripts/worktree-setup.sh +0 -8
- package/test/index.test.ts +0 -5
- package/vitest.config.ts +0 -22
package/examples/.env.example
DELETED
package/examples/interactions.ts
DELETED
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import { NodeHttpClient, NodeSocket } from "@effect/platform-node"
|
|
2
|
-
import { Discord, DiscordConfig, Ix } from "dfx"
|
|
3
|
-
import { DiscordLive, runIx } from "dfx/gateway"
|
|
4
|
-
import Dotenv from "dotenv"
|
|
5
|
-
import { Config, Effect, Layer, pipe } from "effect"
|
|
6
|
-
|
|
7
|
-
Dotenv.config()
|
|
8
|
-
|
|
9
|
-
// Create the dependencies layer
|
|
10
|
-
const DiscordConfigLive = DiscordConfig.layerConfig({
|
|
11
|
-
token: Config.redacted("DISCORD_BOT_TOKEN"),
|
|
12
|
-
})
|
|
13
|
-
|
|
14
|
-
// Create your interaction definitions.
|
|
15
|
-
// Here we are creating a global application command.
|
|
16
|
-
const hello = Ix.global(
|
|
17
|
-
{
|
|
18
|
-
name: "hello",
|
|
19
|
-
description: "A basic command",
|
|
20
|
-
},
|
|
21
|
-
Effect.succeed({
|
|
22
|
-
type: 4,
|
|
23
|
-
data: {
|
|
24
|
-
content: "Hello!",
|
|
25
|
-
},
|
|
26
|
-
}),
|
|
27
|
-
)
|
|
28
|
-
|
|
29
|
-
// Optionally use the type safe helpers
|
|
30
|
-
const greeting = Ix.global(
|
|
31
|
-
{
|
|
32
|
-
name: "greeting",
|
|
33
|
-
description: "A basic command",
|
|
34
|
-
options: [
|
|
35
|
-
{
|
|
36
|
-
type: Discord.ApplicationCommandOptionType.STRING,
|
|
37
|
-
name: "who",
|
|
38
|
-
description: "who to greet",
|
|
39
|
-
required: true,
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
type: Discord.ApplicationCommandOptionType.STRING,
|
|
43
|
-
name: "greeting",
|
|
44
|
-
description: "What kind of greeting?",
|
|
45
|
-
},
|
|
46
|
-
],
|
|
47
|
-
},
|
|
48
|
-
ix =>
|
|
49
|
-
Effect.succeed({
|
|
50
|
-
type: 4,
|
|
51
|
-
data: {
|
|
52
|
-
content: `${ix.optionValueOrElse("greeting", () => "Hello")} ${ix.optionValue("who")}!`,
|
|
53
|
-
},
|
|
54
|
-
// fail: ix.optionValue("fail"), // <- this would be a type error
|
|
55
|
-
}),
|
|
56
|
-
)
|
|
57
|
-
|
|
58
|
-
// Build your program use `Ix.builder`
|
|
59
|
-
const program = Effect.gen(function* () {
|
|
60
|
-
const interactions = pipe(
|
|
61
|
-
Ix.builder.add(hello).add(greeting),
|
|
62
|
-
runIx(Effect.catch(e => Effect.logError("CAUGHT INTERACTION ERROR", e))),
|
|
63
|
-
)
|
|
64
|
-
|
|
65
|
-
yield* Effect.asVoid(interactions)
|
|
66
|
-
})
|
|
67
|
-
|
|
68
|
-
const EnvLive = DiscordLive.pipe(
|
|
69
|
-
Layer.provide(NodeHttpClient.layerUndici),
|
|
70
|
-
Layer.provide(NodeSocket.layerWebSocketConstructor),
|
|
71
|
-
Layer.provide(DiscordConfigLive),
|
|
72
|
-
)
|
|
73
|
-
|
|
74
|
-
// Run it
|
|
75
|
-
program.pipe(
|
|
76
|
-
Effect.provide(EnvLive),
|
|
77
|
-
Effect.tapCause(Effect.logError),
|
|
78
|
-
Effect.runFork,
|
|
79
|
-
)
|
package/examples/readme.ts
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { NodeHttpClient, NodeRuntime, NodeSocket } from "@effect/platform-node"
|
|
2
|
-
import { DiscordConfig, Ix } from "dfx"
|
|
3
|
-
import { DiscordIxLive, InteractionsRegistry } from "dfx/gateway"
|
|
4
|
-
import * as Dotenv from "dotenv"
|
|
5
|
-
import { Config, Effect, Layer } from "effect"
|
|
6
|
-
|
|
7
|
-
Dotenv.config()
|
|
8
|
-
|
|
9
|
-
// Create a layer for the discord services
|
|
10
|
-
const DiscordLayer = DiscordIxLive.pipe(
|
|
11
|
-
Layer.provide([
|
|
12
|
-
DiscordConfig.layerConfig({
|
|
13
|
-
token: Config.redacted("DISCORD_BOT_TOKEN"),
|
|
14
|
-
}),
|
|
15
|
-
NodeHttpClient.layerUndici,
|
|
16
|
-
NodeSocket.layerWebSocketConstructor,
|
|
17
|
-
]),
|
|
18
|
-
)
|
|
19
|
-
|
|
20
|
-
// Create hello service
|
|
21
|
-
const HelloLayer = Layer.effectDiscard(
|
|
22
|
-
Effect.gen(function* () {
|
|
23
|
-
const registry = yield* InteractionsRegistry
|
|
24
|
-
|
|
25
|
-
// Create hello command that responds with "Hello!"
|
|
26
|
-
const hello = Ix.global(
|
|
27
|
-
{
|
|
28
|
-
name: "hello",
|
|
29
|
-
description: "A basic command",
|
|
30
|
-
},
|
|
31
|
-
Effect.succeed({
|
|
32
|
-
type: 4,
|
|
33
|
-
data: {
|
|
34
|
-
content: "Hello!",
|
|
35
|
-
},
|
|
36
|
-
}),
|
|
37
|
-
)
|
|
38
|
-
|
|
39
|
-
// register the command(s) and handle errors
|
|
40
|
-
yield* registry.register(
|
|
41
|
-
Ix.builder.add(hello).catchAllCause(Effect.logError),
|
|
42
|
-
)
|
|
43
|
-
}),
|
|
44
|
-
).pipe(
|
|
45
|
-
// provide discord layer
|
|
46
|
-
Layer.provide(DiscordLayer),
|
|
47
|
-
)
|
|
48
|
-
|
|
49
|
-
// Construct the main layer
|
|
50
|
-
const MainLive = Layer.mergeAll(
|
|
51
|
-
// add your other services here
|
|
52
|
-
HelloLayer,
|
|
53
|
-
)
|
|
54
|
-
|
|
55
|
-
// run it
|
|
56
|
-
NodeRuntime.runMain(Layer.launch(MainLive))
|
package/examples/registry.ts
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { NodeHttpClient, NodeRuntime, NodeSocket } from "@effect/platform-node"
|
|
2
|
-
import { Discord, DiscordConfig, Ix, UI } from "dfx"
|
|
3
|
-
import { DiscordIxLive, InteractionsRegistry } from "dfx/gateway"
|
|
4
|
-
import Dotenv from "dotenv"
|
|
5
|
-
import { Config, Effect, Layer } from "effect"
|
|
6
|
-
|
|
7
|
-
Dotenv.config()
|
|
8
|
-
|
|
9
|
-
// Create your service and register your interactions
|
|
10
|
-
const makeGreetService = Effect.gen(function* () {
|
|
11
|
-
const registry = yield* InteractionsRegistry
|
|
12
|
-
|
|
13
|
-
const greet = Ix.global(
|
|
14
|
-
{
|
|
15
|
-
name: "greet",
|
|
16
|
-
description: "A basic command",
|
|
17
|
-
options: [
|
|
18
|
-
{
|
|
19
|
-
name: "name",
|
|
20
|
-
description: "who to greet",
|
|
21
|
-
type: Discord.ApplicationCommandOptionType.STRING,
|
|
22
|
-
required: true,
|
|
23
|
-
},
|
|
24
|
-
],
|
|
25
|
-
},
|
|
26
|
-
ix =>
|
|
27
|
-
Effect.succeed(
|
|
28
|
-
Ix.response({
|
|
29
|
-
type: Discord.InteractionCallbackTypes.CHANNEL_MESSAGE_WITH_SOURCE,
|
|
30
|
-
data: UI.components([
|
|
31
|
-
UI.textDisplay(`Hello ${ix.optionValue("name")}!`),
|
|
32
|
-
UI.row([
|
|
33
|
-
UI.button({ custom_id: "one", label: "Click me!" }),
|
|
34
|
-
UI.button({ custom_id: "two", label: "Click me 2!" }),
|
|
35
|
-
]),
|
|
36
|
-
]),
|
|
37
|
-
}),
|
|
38
|
-
),
|
|
39
|
-
)
|
|
40
|
-
|
|
41
|
-
// create a builder
|
|
42
|
-
const ix = Ix.builder.add(greet).catchAllCause(Effect.logError)
|
|
43
|
-
|
|
44
|
-
// register the interactions
|
|
45
|
-
yield* registry.register(ix)
|
|
46
|
-
})
|
|
47
|
-
|
|
48
|
-
// Greet service layer
|
|
49
|
-
const GreetLive = Layer.effectDiscard(makeGreetService)
|
|
50
|
-
|
|
51
|
-
// Main layer
|
|
52
|
-
const MainLive = GreetLive.pipe(
|
|
53
|
-
Layer.provide(DiscordIxLive),
|
|
54
|
-
Layer.provide(NodeHttpClient.layerUndici),
|
|
55
|
-
Layer.provide(NodeSocket.layerWebSocketConstructor),
|
|
56
|
-
Layer.provide(
|
|
57
|
-
DiscordConfig.layerConfig({
|
|
58
|
-
token: Config.redacted("DISCORD_BOT_TOKEN"),
|
|
59
|
-
}),
|
|
60
|
-
),
|
|
61
|
-
)
|
|
62
|
-
|
|
63
|
-
Layer.launch(MainLive).pipe(
|
|
64
|
-
Effect.catchCause(Effect.logError),
|
|
65
|
-
NodeRuntime.runMain,
|
|
66
|
-
)
|
package/flake.lock
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"nodes": {
|
|
3
|
-
"nixpkgs": {
|
|
4
|
-
"locked": {
|
|
5
|
-
"lastModified": 1747060738,
|
|
6
|
-
"narHash": "sha256-ByfPRQuqj+nhtVV0koinEpmJw0KLzNbgcgi9EF+NVow=",
|
|
7
|
-
"owner": "nixos",
|
|
8
|
-
"repo": "nixpkgs",
|
|
9
|
-
"rev": "eaeed9530c76ce5f1d2d8232e08bec5e26f18ec1",
|
|
10
|
-
"type": "github"
|
|
11
|
-
},
|
|
12
|
-
"original": {
|
|
13
|
-
"owner": "nixos",
|
|
14
|
-
"ref": "nixpkgs-unstable",
|
|
15
|
-
"repo": "nixpkgs",
|
|
16
|
-
"type": "github"
|
|
17
|
-
}
|
|
18
|
-
},
|
|
19
|
-
"root": {
|
|
20
|
-
"inputs": {
|
|
21
|
-
"nixpkgs": "nixpkgs"
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
},
|
|
25
|
-
"root": "root",
|
|
26
|
-
"version": 7
|
|
27
|
-
}
|
package/flake.nix
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
inputs = {
|
|
3
|
-
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
|
|
4
|
-
};
|
|
5
|
-
outputs = {nixpkgs, ...}: let
|
|
6
|
-
forAllSystems = function:
|
|
7
|
-
nixpkgs.lib.genAttrs nixpkgs.lib.systems.flakeExposed (
|
|
8
|
-
system: function nixpkgs.legacyPackages.${system}
|
|
9
|
-
);
|
|
10
|
-
in {
|
|
11
|
-
formatter = forAllSystems (pkgs: pkgs.alejandra);
|
|
12
|
-
devShells = forAllSystems (pkgs: {
|
|
13
|
-
default = pkgs.mkShell {
|
|
14
|
-
packages = with pkgs; [
|
|
15
|
-
corepack
|
|
16
|
-
nodejs
|
|
17
|
-
];
|
|
18
|
-
};
|
|
19
|
-
});
|
|
20
|
-
};
|
|
21
|
-
}
|
package/lerna.json
DELETED
package/pnpm-workspace.yaml
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
mkdir -p tmp
|
|
4
|
-
curl https://raw.githubusercontent.com/discord/discord-api-spec/refs/heads/main/specs/openapi.json -o tmp/openapi.json
|
|
5
|
-
pnpm openapi-gen -n DiscordRest -s tmp/openapi.json > src/DiscordREST/Generated.ts
|
|
6
|
-
|
|
7
|
-
echo "// oxlint-disable no-shadow
|
|
8
|
-
$(cat src/DiscordREST/Generated.ts)" > src/DiscordREST/Generated.ts
|
|
9
|
-
|
|
10
|
-
pnpm prettier -w src/DiscordREST/Generated.ts
|
package/test/index.test.ts
DELETED
package/vitest.config.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/// <reference types="vitest" />
|
|
2
|
-
|
|
3
|
-
import babel from "@vitejs/plugin-react"
|
|
4
|
-
import path from "path"
|
|
5
|
-
import { defineConfig } from "vite"
|
|
6
|
-
|
|
7
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
8
|
-
const babelConfig = require("./.babel.mjs.json")
|
|
9
|
-
|
|
10
|
-
export default defineConfig({
|
|
11
|
-
plugins: [babel({ babel: babelConfig })],
|
|
12
|
-
test: {
|
|
13
|
-
include: ["./test/**/*.test.ts"],
|
|
14
|
-
globals: true,
|
|
15
|
-
},
|
|
16
|
-
resolve: {
|
|
17
|
-
alias: {
|
|
18
|
-
"dfx/test": path.join(__dirname, "test"),
|
|
19
|
-
dfx: path.join(__dirname, "src"),
|
|
20
|
-
},
|
|
21
|
-
},
|
|
22
|
-
})
|