dfx 0.7.1 → 0.8.0
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/dist/Interactions/definitions.d.ts +16 -16
- package/dist/Interactions/definitions.d.ts.map +1 -1
- package/dist/Interactions/definitions.js.map +1 -1
- package/dist/Interactions/gateway.d.ts.map +1 -1
- package/dist/Interactions/gateway.js +2 -1
- package/dist/Interactions/gateway.js.map +1 -1
- package/dist/Interactions/handlers.d.ts +2 -2
- package/dist/Interactions/handlers.d.ts.map +1 -1
- package/dist/Interactions/handlers.js +2 -2
- package/dist/Interactions/handlers.js.map +1 -1
- package/dist/Interactions/index.d.ts +1 -1
- package/dist/Interactions/webhook.d.ts +1 -1
- package/dist/Interactions/webhook.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/Interactions/definitions.ts +10 -10
- package/src/Interactions/gateway.ts +3 -1
- package/src/Interactions/handlers.ts +6 -6
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Discord, Effect } from "dfx/common";
|
|
1
|
+
import { Discord, Effect, Maybe } from "dfx/common";
|
|
2
2
|
export type InteractionResponse = {
|
|
3
3
|
type: Discord.InteractionCallbackType.CHANNEL_MESSAGE_WITH_SOURCE;
|
|
4
4
|
data: Discord.InteractionCallbackMessage;
|
|
@@ -24,38 +24,38 @@ type DescriptionMissing<A> = A extends {
|
|
|
24
24
|
export type InteractionDefinition<R, E> = GlobalApplicationCommand<R, E> | GuildApplicationCommand<R, E> | MessageComponent<R, E> | ModalSubmit<R, E> | Autocomplete<R, E>;
|
|
25
25
|
export declare class GlobalApplicationCommand<R, E> {
|
|
26
26
|
readonly command: Discord.CreateGlobalApplicationCommandParams;
|
|
27
|
-
readonly handle: Effect<R, E, InteractionResponse
|
|
27
|
+
readonly handle: Effect<R, E, Maybe<InteractionResponse>>;
|
|
28
28
|
readonly _tag = "GlobalApplicationCommand";
|
|
29
|
-
constructor(command: Discord.CreateGlobalApplicationCommandParams, handle: Effect<R, E, InteractionResponse
|
|
29
|
+
constructor(command: Discord.CreateGlobalApplicationCommandParams, handle: Effect<R, E, Maybe<InteractionResponse>>);
|
|
30
30
|
}
|
|
31
|
-
export declare const global: <R, E, A extends import("../types.js").CreateGlobalApplicationCommandParams>(command: A, handle: DescriptionMissing<A> extends true ? "command description is missing" : import("../common.js").Effect<R, E, InteractionResponse
|
|
31
|
+
export declare const global: <R, E, A extends import("../types.js").CreateGlobalApplicationCommandParams>(command: A, handle: DescriptionMissing<A> extends true ? "command description is missing" : import("../common.js").Effect<R, E, import("../common.js").Maybe<InteractionResponse>>) => GlobalApplicationCommand<Exclude<R, import("../types.js").ApplicationCommandDatum | import("../types.js").Interaction>, E>;
|
|
32
32
|
export declare class GuildApplicationCommand<R, E> {
|
|
33
33
|
readonly command: Discord.CreateGuildApplicationCommandParams;
|
|
34
|
-
readonly handle: Effect<R, E, InteractionResponse
|
|
34
|
+
readonly handle: Effect<R, E, Maybe<InteractionResponse>>;
|
|
35
35
|
readonly _tag = "GuildApplicationCommand";
|
|
36
|
-
constructor(command: Discord.CreateGuildApplicationCommandParams, handle: Effect<R, E, InteractionResponse
|
|
36
|
+
constructor(command: Discord.CreateGuildApplicationCommandParams, handle: Effect<R, E, Maybe<InteractionResponse>>);
|
|
37
37
|
}
|
|
38
|
-
export declare const guild: <R, E, A extends import("../types.js").CreateGuildApplicationCommandParams>(command: A, handle: DescriptionMissing<A> extends true ? "command description is missing" : import("../common.js").Effect<R, E, InteractionResponse
|
|
38
|
+
export declare const guild: <R, E, A extends import("../types.js").CreateGuildApplicationCommandParams>(command: A, handle: DescriptionMissing<A> extends true ? "command description is missing" : import("../common.js").Effect<R, E, import("../common.js").Maybe<InteractionResponse>>) => GuildApplicationCommand<Exclude<R, import("../types.js").ApplicationCommandDatum | import("../types.js").Interaction>, E>;
|
|
39
39
|
export declare class MessageComponent<R, E> {
|
|
40
40
|
readonly predicate: (customId: string) => Effect<R, E, boolean>;
|
|
41
|
-
readonly handle: Effect<R, E, InteractionResponse
|
|
41
|
+
readonly handle: Effect<R, E, Maybe<InteractionResponse>>;
|
|
42
42
|
readonly _tag = "MessageComponent";
|
|
43
|
-
constructor(predicate: (customId: string) => Effect<R, E, boolean>, handle: Effect<R, E, InteractionResponse
|
|
43
|
+
constructor(predicate: (customId: string) => Effect<R, E, boolean>, handle: Effect<R, E, Maybe<InteractionResponse>>);
|
|
44
44
|
}
|
|
45
|
-
export declare const messageComponent: <R1, R2, E1, E2>(pred: (customId: string) => import("../common.js").Effect<R1, E1, boolean>, handle: import("../common.js").Effect<R2, E2, InteractionResponse
|
|
45
|
+
export declare const messageComponent: <R1, R2, E1, E2>(pred: (customId: string) => import("../common.js").Effect<R1, E1, boolean>, handle: import("../common.js").Effect<R2, E2, import("../common.js").Maybe<InteractionResponse>>) => MessageComponent<Exclude<R1, import("../types.js").Interaction | import("../types.js").MessageComponentDatum> | Exclude<R2, import("../types.js").Interaction | import("../types.js").MessageComponentDatum>, E1 | E2>;
|
|
46
46
|
export declare class ModalSubmit<R, E> {
|
|
47
47
|
readonly predicate: (customId: string) => Effect<R, E, boolean>;
|
|
48
|
-
readonly handle: Effect<R, E, InteractionResponse
|
|
48
|
+
readonly handle: Effect<R, E, Maybe<InteractionResponse>>;
|
|
49
49
|
readonly _tag = "ModalSubmit";
|
|
50
|
-
constructor(predicate: (customId: string) => Effect<R, E, boolean>, handle: Effect<R, E, InteractionResponse
|
|
50
|
+
constructor(predicate: (customId: string) => Effect<R, E, boolean>, handle: Effect<R, E, Maybe<InteractionResponse>>);
|
|
51
51
|
}
|
|
52
|
-
export declare const modalSubmit: <R1, R2, E1, E2>(pred: (customId: string) => import("../common.js").Effect<R1, E1, boolean>, handle: import("../common.js").Effect<R2, E2, InteractionResponse
|
|
52
|
+
export declare const modalSubmit: <R1, R2, E1, E2>(pred: (customId: string) => import("../common.js").Effect<R1, E1, boolean>, handle: import("../common.js").Effect<R2, E2, import("../common.js").Maybe<InteractionResponse>>) => ModalSubmit<Exclude<R1, import("../types.js").Interaction | import("../types.js").ModalSubmitDatum> | Exclude<R2, import("../types.js").Interaction | import("../types.js").ModalSubmitDatum>, E1 | E2>;
|
|
53
53
|
export declare class Autocomplete<R, E> {
|
|
54
54
|
readonly predicate: (focusedOption: Discord.ApplicationCommandInteractionDataOption) => Effect<R, E, boolean>;
|
|
55
|
-
readonly handle: Effect<R, E, InteractionResponse
|
|
55
|
+
readonly handle: Effect<R, E, Maybe<InteractionResponse>>;
|
|
56
56
|
readonly _tag = "Autocomplete";
|
|
57
|
-
constructor(predicate: (focusedOption: Discord.ApplicationCommandInteractionDataOption) => Effect<R, E, boolean>, handle: Effect<R, E, InteractionResponse
|
|
57
|
+
constructor(predicate: (focusedOption: Discord.ApplicationCommandInteractionDataOption) => Effect<R, E, boolean>, handle: Effect<R, E, Maybe<InteractionResponse>>);
|
|
58
58
|
}
|
|
59
|
-
export declare const autocomplete: <R1, R2, E1, E2>(pred: (focusedOption: Discord.ApplicationCommandInteractionDataOption) => import("../common.js").Effect<R1, E1, boolean>, handle: import("../common.js").Effect<R2, E2, InteractionResponse
|
|
59
|
+
export declare const autocomplete: <R1, R2, E1, E2>(pred: (focusedOption: Discord.ApplicationCommandInteractionDataOption) => import("../common.js").Effect<R1, E1, boolean>, handle: import("../common.js").Effect<R2, E2, import("../common.js").Maybe<InteractionResponse>>) => Autocomplete<Exclude<R1, import("../types.js").ApplicationCommandDatum | import("../types.js").ApplicationCommandInteractionDataOption | import("../types.js").Interaction> | Exclude<R2, import("../types.js").ApplicationCommandDatum | import("../types.js").ApplicationCommandInteractionDataOption | import("../types.js").Interaction>, E1 | E2>;
|
|
60
60
|
export {};
|
|
61
61
|
//# sourceMappingURL=definitions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/Interactions/definitions.ts"],"names":[],"mappings":";AAAA,MAAM,MAAM,mBAAmB,GAC3B;IACE,IAAI,EAAE,OAAO,CAAC,uBAAuB,CAAC,2BAA2B,CAAA;IACjE,IAAI,EAAE,OAAO,CAAC,0BAA0B,CAAA;CACzC,GACD;IACE,IAAI,EAAE,OAAO,CAAC,uBAAuB,CAAC,cAAc,CAAA;IACpD,IAAI,EAAE,OAAO,CAAC,0BAA0B,CAAA;CACzC,GACD;IACE,IAAI,EAAE,OAAO,CAAC,uBAAuB,CAAC,KAAK,CAAA;IAC3C,IAAI,EAAE,OAAO,CAAC,wBAAwB,CAAA;CACvC,GACD;IACE,IAAI,EAAE,OAAO,CAAC,uBAAuB,CAAC,uBAAuB,CAAA;CAC9D,GACD;IACE,IAAI,EAAE,OAAO,CAAC,uBAAuB,CAAC,oCAAoC,CAAA;CAC3E,GACD;IACE,IAAI,EAAE,OAAO,CAAC,uBAAuB,CAAC,uCAAuC,CAAA;IAC7E,IAAI,EAAE,OAAO,CAAC,+BAA+B,CAAA;CAC9C,CAAA;AAEL,KAAK,kBAAkB,CAAC,CAAC,IAAI,CAAC,SAAS;IACrC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAA;CACjD,GACG,KAAK,GACL,CAAC,SAAS;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,GACjC,KAAK,GACL,IAAI,CAAA;AAER,MAAM,MAAM,qBAAqB,CAAC,CAAC,EAAE,CAAC,IAClC,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC9B,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,GACtB,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GACjB,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAEtB,qBAAa,wBAAwB,CAAC,CAAC,EAAE,CAAC;IAGtC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,oCAAoC;IAC9D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/Interactions/definitions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/Interactions/definitions.ts"],"names":[],"mappings":";AAuCA,MAAM,OAAO,wBAAwB;IAGxB;IACA;IAHF,IAAI,GAAG,0BAA0B,CAAA;IAC1C,YACW,OAAqD,EACrD,
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/Interactions/definitions.ts"],"names":[],"mappings":";AAuCA,MAAM,OAAO,wBAAwB;IAGxB;IACA;IAHF,IAAI,GAAG,0BAA0B,CAAA;IAC1C,YACW,OAAqD,EACrD,MAAgD;QADhD,YAAO,GAAP,OAAO,CAA8C;QACrD,WAAM,GAAN,MAAM,CAA0C;IACxD,CAAC;CACL;AAED,MAAM,CAAC,MAAM,MAAM,GAAG,CAKpB,OAAU,EACV,MAE4C,EAC5C,EAAE,CACF,IAAI,wBAAwB,CAG1B,OAAO,EAAE,MAAa,CAAC,CAAA;AAE3B,MAAM,OAAO,uBAAuB;IAGvB;IACA;IAHF,IAAI,GAAG,yBAAyB,CAAA;IACzC,YACW,OAAoD,EACpD,MAAgD;QADhD,YAAO,GAAP,OAAO,CAA6C;QACpD,WAAM,GAAN,MAAM,CAA0C;IACxD,CAAC;CACL;AAED,MAAM,CAAC,MAAM,KAAK,GAAG,CAKnB,OAAU,EACV,MAE4C,EAC5C,EAAE,CACF,IAAI,uBAAuB,CAGzB,OAAO,EAAE,MAAa,CAAC,CAAA;AAE3B,MAAM,OAAO,gBAAgB;IAGhB;IACA;IAHF,IAAI,GAAG,kBAAkB,CAAA;IAClC,YACW,SAAsD,EACtD,MAAgD;QADhD,cAAS,GAAT,SAAS,CAA6C;QACtD,WAAM,GAAN,MAAM,CAA0C;IACxD,CAAC;CACL;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,IAAmD,EACnD,MAAkD,EAClD,EAAE,CACF,IAAI,gBAAgB,CAGlB,IAAW,EAAE,MAAa,CAAC,CAAA;AAE/B,MAAM,OAAO,WAAW;IAGX;IACA;IAHF,IAAI,GAAG,aAAa,CAAA;IAC7B,YACW,SAAsD,EACtD,MAAgD;QADhD,cAAS,GAAT,SAAS,CAA6C;QACtD,WAAM,GAAN,MAAM,CAA0C;IACxD,CAAC;CACL;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,IAAmD,EACnD,MAAkD,EAClD,EAAE,CACF,IAAI,WAAW,CAGb,IAAW,EAAE,MAAa,CAAC,CAAA;AAE/B,MAAM,OAAO,YAAY;IAGZ;IAGA;IALF,IAAI,GAAG,cAAc,CAAA;IAC9B,YACW,SAEiB,EACjB,MAAgD;QAHhD,cAAS,GAAT,SAAS,CAEQ;QACjB,WAAM,GAAN,MAAM,CAA0C;IACxD,CAAC;CACL;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,IAE4B,EAC5B,MAAkD,EAClD,EAAE,CACF,IAAI,YAAY,CAQd,IAAW,EAAE,MAAa,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway.d.ts","sourceRoot":"","sources":["../../src/Interactions/gateway.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,kBAAkB,CAAA;AAIrC,MAAM,WAAW,OAAO;IACtB,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED,eAAO,MAAM,GAAG,kEAEG,OAAO,
|
|
1
|
+
{"version":3,"file":"gateway.d.ts","sourceRoot":"","sources":["../../src/Interactions/gateway.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,kBAAkB,CAAA;AAIrC,MAAM,WAAW,OAAO;IACtB,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED,eAAO,MAAM,GAAG,kEAEG,OAAO,yQAmCtB,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as tsplus_module_1 from "@effect/io/Effect";
|
|
2
2
|
import * as tsplus_module_2 from "dfx/common";
|
|
3
|
+
import * as tsplus_module_3 from "@fp-ts/data/Option";
|
|
3
4
|
import { handlers } from "./handlers.js";
|
|
4
5
|
import { splitDefinitions } from "./utils.js";
|
|
5
6
|
export const run = (definitions, { sync = true } = {}) => (() => {
|
|
@@ -10,7 +11,7 @@ export const run = (definitions, { sync = true } = {}) => (() => {
|
|
|
10
11
|
});
|
|
11
12
|
const guildSync = tsplus_module_2.Gateway.handleDispatch("GUILD_CREATE", (a) => tsplus_module_2.Rest.rest.bulkOverwriteGuildApplicationCommands(application.id, a.id, guildCommands.map((a) => a.command)));
|
|
12
13
|
const handle = handlers(definitions);
|
|
13
|
-
const run = tsplus_module_2.Gateway.handleDispatch("INTERACTION_CREATE", (i) => tsplus_module_1.tap((r) => tsplus_module_2.Rest.rest.createInteractionResponse(i.id, i.token, r))(handle[i.type](i)));
|
|
14
|
+
const run = tsplus_module_2.Gateway.handleDispatch("INTERACTION_CREATE", (i) => tsplus_module_1.tap((r) => tsplus_module_3.match(tsplus_module_1.unit, (r) => tsplus_module_2.Rest.rest.createInteractionResponse(i.id, i.token, r))(r))(handle[i.type](i)));
|
|
14
15
|
return tsplus_module_1.map(() => void 0)(sync ? tsplus_module_1.zipPar(guildSync)(tsplus_module_1.zipPar(globalSync)(run)) : run);
|
|
15
16
|
})(tsplus_module_1.flatMap((a) => a.json)(tsplus_module_2.Rest.rest.getCurrentBotApplicationInformation()));
|
|
16
17
|
})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../src/Interactions/gateway.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../src/Interactions/gateway.ts"],"names":[],"mappings":";;;AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAM7C,MAAM,CAAC,MAAM,GAAG,GAAG,CACjB,WAA4C,EAC5C,EAAE,IAAI,GAAG,IAAI,KAAc,EAAE,EAC7B,EAAE;IAEA,MAAM,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAA;mCAEjE,WAAW;QAIjB,MAAM,UAAU,GAAG,gBAAA,IAAI,CAAC,IAAI,CAAC,sCAAsC,CACjE,WAAW,CAAC,EAAE,EACd;YACE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;SAC3D,CACF,CAAA;QAED,MAAM,SAAS,GAAG,gBAAA,OAAO,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE,CAC7D,gBAAA,IAAI,CAAC,IAAI,CAAC,qCAAqC,CAC7C,WAAW,CAAC,EAAE,EACd,CAAC,CAAC,EAAE,EACJ,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAQ,CAC3C,CACF,CAAA;QAED,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAA;QAEpC,MAAM,GAAG,GAAG,gBAAA,OAAO,CAAC,cAAc,CAAC,oBAAoB,EAAE,CAAC,CAAC,EAAE,EAAE,CAC7D,oBAAsB,CAAC,CAAC,EAAE,EAAE,CAC1B,4CAAqB,CAAC,CAAC,EAAE,EAAE,CACzB,gBAAA,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,EADvD,CAAC,CAEA,EAHH,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAIhB,CACF,CAAA;iDAEC,IAAI,CAAC,CAAC,CAAC,uBAA8B,SAAS,EAAvC,uBAAW,UAAU,EAArB,GAAG,CAAmB,CAAkB,CAAC,CAAC,CAAC,GAAG;OA5BrD,wBAAwD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAArE,gBAAA,IAAI,CAAC,IAAI,CAAC,mCAAmC,EAAE,CAAuB;IA6BxE,CAAA"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { Discord, Effect } from "dfx/common";
|
|
1
|
+
import { Discord, Effect, Maybe } from "dfx/common";
|
|
2
2
|
import * as D from "./definitions.js";
|
|
3
3
|
export declare class InteractionNotFound {
|
|
4
4
|
readonly interaction: Discord.Interaction;
|
|
5
5
|
readonly _tag = "InteractionNotFound";
|
|
6
6
|
constructor(interaction: Discord.Interaction);
|
|
7
7
|
}
|
|
8
|
-
export declare const handlers: <R, E>(definitions: D.InteractionDefinition<R, E>[]) => Record<import("../types.js").InteractionType, (i: Discord.Interaction) => import("../common.js").Effect<R, E, import("../types.js").InteractionResponse
|
|
8
|
+
export declare const handlers: <R, E>(definitions: D.InteractionDefinition<R, E>[]) => Record<import("../types.js").InteractionType, (i: Discord.Interaction) => import("../common.js").Effect<R, E, import("../common.js").Maybe<import("../types.js").InteractionResponse>>>;
|
|
9
9
|
//# sourceMappingURL=handlers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/Interactions/handlers.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,CAAC,MAAM,kBAAkB,CAAA;AAIrC,qBAAa,mBAAmB;IAElB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,WAAW;IADrD,QAAQ,CAAC,IAAI,yBAAwB;gBAChB,WAAW,EAAE,OAAO,CAAC,WAAW;CACtD;AAED,eAAO,MAAM,QAAQ,4GAIf,QAAQ,WAAW,
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/Interactions/handlers.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,CAAC,MAAM,kBAAkB,CAAA;AAIrC,qBAAa,mBAAmB;IAElB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,WAAW;IADrD,QAAQ,CAAC,IAAI,yBAAwB;gBAChB,WAAW,EAAE,OAAO,CAAC,WAAW;CACtD;AAED,eAAO,MAAM,QAAQ,4GAIf,QAAQ,WAAW,kHA4HxB,CAAA"}
|
|
@@ -16,9 +16,9 @@ export class InteractionNotFound {
|
|
|
16
16
|
export const handlers = (definitions) => {
|
|
17
17
|
const { allCommands, autocompletes, messageComponents, modalSubmits } = splitDefinitions(definitions);
|
|
18
18
|
return {
|
|
19
|
-
[tsplus_module_1.Discord.InteractionType.PING]: () => tsplus_module_2.succeed({
|
|
19
|
+
[tsplus_module_1.Discord.InteractionType.PING]: () => tsplus_module_2.asSome(tsplus_module_2.succeed({
|
|
20
20
|
type: tsplus_module_1.Discord.InteractionCallbackType.PONG,
|
|
21
|
-
}),
|
|
21
|
+
})),
|
|
22
22
|
[tsplus_module_1.Discord.InteractionType.APPLICATION_COMMAND]: (i) => {
|
|
23
23
|
const data = i.data;
|
|
24
24
|
return tsplus_module_4.pipe(tsplus_module_3.match(() => tsplus_module_2.fail(new InteractionNotFound(i)), (command) => command.handle)(tsplus_module_3.fromNullable(allCommands[data.name])), tsplus_module_2.provideService(Ctx.InteractionContext)(i), tsplus_module_2.provideService(Ctx.ApplicationCommandContext)(data));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/Interactions/handlers.ts"],"names":[],"mappings":";;;;;AAAA,OAAO,KAAK,GAAG,MAAM,cAAc,CAAA;AAEnC,OAAO,KAAK,GAAG,MAAM,2BAA2B,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAE7C,MAAM,OAAO,mBAAmB;IAET;IADZ,IAAI,GAAG,qBAAqB,CAAA;IACrC,YAAqB,WAAgC;QAAhC,gBAAW,GAAX,WAAW,CAAqB;IAAG,CAAC;CAC1D;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,CACtB,WAA4C,EAI5C,EAAE;IACF,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,iBAAiB,EAAE,YAAY,EAAE,GACnE,gBAAgB,CAAC,WAAW,CAAC,CAAA;IAE/B,OAAO;QACL,CAAC,gBAAA,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/Interactions/handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ declare class InteractionBuilder<R, E> {
|
|
|
10
10
|
constructor(definitions: D.InteractionDefinition<R, E>[]);
|
|
11
11
|
add<R1, E1>(definition: D.InteractionDefinition<R1, E1>): InteractionBuilder<R | R1, E | E1>;
|
|
12
12
|
runGateway(opts?: Gateway.RunOpts): import("../common.js").Effect<import("../index.js").DiscordREST | import("../DiscordGateway/index.js").DiscordGateway | R, import("../Http/index.js").FetchError | import("../Http/index.js").StatusCodeError | import("../Http/index.js").JsonParseError | E, void>;
|
|
13
|
-
handleWebhook(headers: Record<string, string>, rawBody: string): import("../common.js").Effect<Webhook.WebhookConfig | R, Webhook.BadWebhookSignature | Webhook.WebhookParseError | E, import("../types.js").InteractionResponse
|
|
13
|
+
handleWebhook(headers: Record<string, string>, rawBody: string): import("../common.js").Effect<Webhook.WebhookConfig | R, Webhook.BadWebhookSignature | Webhook.WebhookParseError | E, import("../common.js").Maybe<import("../types.js").InteractionResponse>>;
|
|
14
14
|
}
|
|
15
15
|
export declare const builder: InteractionBuilder<never, never>;
|
|
16
16
|
export declare const id: (query: string) => (customId: string) => import("../common.js").Effect<never, never, boolean>;
|
|
@@ -14,5 +14,5 @@ export declare class WebhookParseError {
|
|
|
14
14
|
readonly _tag = "WebhookParseError";
|
|
15
15
|
constructor(reason: unknown);
|
|
16
16
|
}
|
|
17
|
-
export declare const run: <R, E>(definitions: D.InteractionDefinition<R, E>[], headers: Record<string, string>, body: string) => import("../common.js").Effect<WebhookConfig | R, BadWebhookSignature | WebhookParseError | E, import("../types.js").InteractionResponse
|
|
17
|
+
export declare const run: <R, E>(definitions: D.InteractionDefinition<R, E>[], headers: Record<string, string>, body: string) => import("../common.js").Effect<WebhookConfig | R, BadWebhookSignature | WebhookParseError | E, import("../common.js").Maybe<import("../types.js").InteractionResponse>>;
|
|
18
18
|
//# sourceMappingURL=webhook.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../src/Interactions/webhook.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,CAAC,MAAM,kBAAkB,CAAA;AAGrC,qBAAa,mBAAmB;IAC9B,QAAQ,CAAC,IAAI,yBAAwB;CACtC;AAoBD,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;CAClB;AACD,eAAO,MAAM,aAAa,2CAAuB,CAAA;AACjD,eAAO,MAAM,UAAU,MAAO,aAAa,8DAAoC,CAAA;AAE/E,qBAAa,iBAAiB;IAEhB,QAAQ,CAAC,MAAM,EAAE,OAAO;IADpC,QAAQ,CAAC,IAAI,uBAAsB;gBACd,MAAM,EAAE,OAAO;CACrC;AAcD,eAAO,MAAM,GAAG,gEAEL,OAAO,MAAM,EAAE,MAAM,CAAC,QACzB,MAAM,
|
|
1
|
+
{"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../src/Interactions/webhook.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,CAAC,MAAM,kBAAkB,CAAA;AAGrC,qBAAa,mBAAmB;IAC9B,QAAQ,CAAC,IAAI,yBAAwB;CACtC;AAoBD,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;CAClB;AACD,eAAO,MAAM,aAAa,2CAAuB,CAAA;AACjD,eAAO,MAAM,UAAU,MAAO,aAAa,8DAAoC,CAAA;AAE/E,qBAAa,iBAAiB;IAEhB,QAAQ,CAAC,MAAM,EAAE,OAAO;IADpC,QAAQ,CAAC,IAAI,uBAAsB;gBACd,MAAM,EAAE,OAAO;CACrC;AAcD,eAAO,MAAM,GAAG,gEAEL,OAAO,MAAM,EAAE,MAAM,CAAC,QACzB,MAAM,2KAKV,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dfx",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -46,5 +46,5 @@
|
|
|
46
46
|
"@fp-ts/data": "^0.0.19"
|
|
47
47
|
}
|
|
48
48
|
},
|
|
49
|
-
"gitHead": "
|
|
49
|
+
"gitHead": "984f9280a1075c64f2a32a3b4da4d89a16ae19ef"
|
|
50
50
|
}
|
|
@@ -41,7 +41,7 @@ export class GlobalApplicationCommand<R, E> {
|
|
|
41
41
|
readonly _tag = "GlobalApplicationCommand"
|
|
42
42
|
constructor(
|
|
43
43
|
readonly command: Discord.CreateGlobalApplicationCommandParams,
|
|
44
|
-
readonly handle: Effect<R, E, InteractionResponse
|
|
44
|
+
readonly handle: Effect<R, E, Maybe<InteractionResponse>>,
|
|
45
45
|
) {}
|
|
46
46
|
}
|
|
47
47
|
|
|
@@ -53,7 +53,7 @@ export const global = <
|
|
|
53
53
|
command: A,
|
|
54
54
|
handle: DescriptionMissing<A> extends true
|
|
55
55
|
? "command description is missing"
|
|
56
|
-
: Effect<R, E, InteractionResponse
|
|
56
|
+
: Effect<R, E, Maybe<InteractionResponse>>,
|
|
57
57
|
) =>
|
|
58
58
|
new GlobalApplicationCommand<
|
|
59
59
|
Exclude<R, Discord.Interaction | Discord.ApplicationCommandDatum>,
|
|
@@ -64,7 +64,7 @@ export class GuildApplicationCommand<R, E> {
|
|
|
64
64
|
readonly _tag = "GuildApplicationCommand"
|
|
65
65
|
constructor(
|
|
66
66
|
readonly command: Discord.CreateGuildApplicationCommandParams,
|
|
67
|
-
readonly handle: Effect<R, E, InteractionResponse
|
|
67
|
+
readonly handle: Effect<R, E, Maybe<InteractionResponse>>,
|
|
68
68
|
) {}
|
|
69
69
|
}
|
|
70
70
|
|
|
@@ -76,7 +76,7 @@ export const guild = <
|
|
|
76
76
|
command: A,
|
|
77
77
|
handle: DescriptionMissing<A> extends true
|
|
78
78
|
? "command description is missing"
|
|
79
|
-
: Effect<R, E, InteractionResponse
|
|
79
|
+
: Effect<R, E, Maybe<InteractionResponse>>,
|
|
80
80
|
) =>
|
|
81
81
|
new GuildApplicationCommand<
|
|
82
82
|
Exclude<R, Discord.Interaction | Discord.ApplicationCommandDatum>,
|
|
@@ -87,13 +87,13 @@ export class MessageComponent<R, E> {
|
|
|
87
87
|
readonly _tag = "MessageComponent"
|
|
88
88
|
constructor(
|
|
89
89
|
readonly predicate: (customId: string) => Effect<R, E, boolean>,
|
|
90
|
-
readonly handle: Effect<R, E, InteractionResponse
|
|
90
|
+
readonly handle: Effect<R, E, Maybe<InteractionResponse>>,
|
|
91
91
|
) {}
|
|
92
92
|
}
|
|
93
93
|
|
|
94
94
|
export const messageComponent = <R1, R2, E1, E2>(
|
|
95
95
|
pred: (customId: string) => Effect<R1, E1, boolean>,
|
|
96
|
-
handle: Effect<R2, E2, InteractionResponse
|
|
96
|
+
handle: Effect<R2, E2, Maybe<InteractionResponse>>,
|
|
97
97
|
) =>
|
|
98
98
|
new MessageComponent<
|
|
99
99
|
Exclude<R1 | R2, Discord.Interaction | Discord.MessageComponentDatum>,
|
|
@@ -104,13 +104,13 @@ export class ModalSubmit<R, E> {
|
|
|
104
104
|
readonly _tag = "ModalSubmit"
|
|
105
105
|
constructor(
|
|
106
106
|
readonly predicate: (customId: string) => Effect<R, E, boolean>,
|
|
107
|
-
readonly handle: Effect<R, E, InteractionResponse
|
|
107
|
+
readonly handle: Effect<R, E, Maybe<InteractionResponse>>,
|
|
108
108
|
) {}
|
|
109
109
|
}
|
|
110
110
|
|
|
111
111
|
export const modalSubmit = <R1, R2, E1, E2>(
|
|
112
112
|
pred: (customId: string) => Effect<R1, E1, boolean>,
|
|
113
|
-
handle: Effect<R2, E2, InteractionResponse
|
|
113
|
+
handle: Effect<R2, E2, Maybe<InteractionResponse>>,
|
|
114
114
|
) =>
|
|
115
115
|
new ModalSubmit<
|
|
116
116
|
Exclude<R1 | R2, Discord.Interaction | Discord.ModalSubmitDatum>,
|
|
@@ -123,7 +123,7 @@ export class Autocomplete<R, E> {
|
|
|
123
123
|
readonly predicate: (
|
|
124
124
|
focusedOption: Discord.ApplicationCommandInteractionDataOption,
|
|
125
125
|
) => Effect<R, E, boolean>,
|
|
126
|
-
readonly handle: Effect<R, E, InteractionResponse
|
|
126
|
+
readonly handle: Effect<R, E, Maybe<InteractionResponse>>,
|
|
127
127
|
) {}
|
|
128
128
|
}
|
|
129
129
|
|
|
@@ -131,7 +131,7 @@ export const autocomplete = <R1, R2, E1, E2>(
|
|
|
131
131
|
pred: (
|
|
132
132
|
focusedOption: Discord.ApplicationCommandInteractionDataOption,
|
|
133
133
|
) => Effect<R1, E1, boolean>,
|
|
134
|
-
handle: Effect<R2, E2, InteractionResponse
|
|
134
|
+
handle: Effect<R2, E2, Maybe<InteractionResponse>>,
|
|
135
135
|
) =>
|
|
136
136
|
new Autocomplete<
|
|
137
137
|
Exclude<
|
|
@@ -36,7 +36,9 @@ export const run = <R, E>(
|
|
|
36
36
|
|
|
37
37
|
const run = Gateway.handleDispatch("INTERACTION_CREATE", (i) =>
|
|
38
38
|
handle[i.type](i).tap((r) =>
|
|
39
|
-
|
|
39
|
+
r.match(Effect.unit, (r) =>
|
|
40
|
+
Rest.rest.createInteractionResponse(i.id, i.token, r),
|
|
41
|
+
),
|
|
40
42
|
),
|
|
41
43
|
)
|
|
42
44
|
|
|
@@ -12,7 +12,7 @@ export const handlers = <R, E>(
|
|
|
12
12
|
definitions: D.InteractionDefinition<R, E>[],
|
|
13
13
|
): Record<
|
|
14
14
|
Discord.InteractionType,
|
|
15
|
-
(i: Discord.Interaction) => Effect<R, E, Discord.InteractionResponse
|
|
15
|
+
(i: Discord.Interaction) => Effect<R, E, Maybe<Discord.InteractionResponse>>
|
|
16
16
|
> => {
|
|
17
17
|
const { allCommands, autocompletes, messageComponents, modalSubmits } =
|
|
18
18
|
splitDefinitions(definitions)
|
|
@@ -21,7 +21,7 @@ export const handlers = <R, E>(
|
|
|
21
21
|
[Discord.InteractionType.PING]: () =>
|
|
22
22
|
Effect.succeed({
|
|
23
23
|
type: Discord.InteractionCallbackType.PONG,
|
|
24
|
-
}),
|
|
24
|
+
}).asSome,
|
|
25
25
|
|
|
26
26
|
[Discord.InteractionType.APPLICATION_COMMAND]: (i) => {
|
|
27
27
|
const data = i.data as Discord.ApplicationCommandDatum
|
|
@@ -32,7 +32,7 @@ export const handlers = <R, E>(
|
|
|
32
32
|
Effect.fail(new InteractionNotFound(i)) as any as Effect<
|
|
33
33
|
R,
|
|
34
34
|
E,
|
|
35
|
-
Discord.InteractionResponse
|
|
35
|
+
Maybe<Discord.InteractionResponse>
|
|
36
36
|
>,
|
|
37
37
|
(command) => command.handle,
|
|
38
38
|
),
|
|
@@ -61,7 +61,7 @@ export const handlers = <R, E>(
|
|
|
61
61
|
Effect.fail(new InteractionNotFound(i)) as any as Effect<
|
|
62
62
|
R,
|
|
63
63
|
E,
|
|
64
|
-
Discord.InteractionResponse
|
|
64
|
+
Maybe<Discord.InteractionResponse>
|
|
65
65
|
>,
|
|
66
66
|
(a) => a.command.handle,
|
|
67
67
|
),
|
|
@@ -91,7 +91,7 @@ export const handlers = <R, E>(
|
|
|
91
91
|
Effect.fail(new InteractionNotFound(i)) as any as Effect<
|
|
92
92
|
R,
|
|
93
93
|
E,
|
|
94
|
-
Discord.InteractionResponse
|
|
94
|
+
Maybe<Discord.InteractionResponse>
|
|
95
95
|
>,
|
|
96
96
|
(a) => a.command.handle,
|
|
97
97
|
),
|
|
@@ -123,7 +123,7 @@ export const handlers = <R, E>(
|
|
|
123
123
|
Effect.fail(new InteractionNotFound(i)) as any as Effect<
|
|
124
124
|
R,
|
|
125
125
|
E,
|
|
126
|
-
Discord.InteractionResponse
|
|
126
|
+
Maybe<Discord.InteractionResponse>
|
|
127
127
|
>,
|
|
128
128
|
(a) => a.command.handle,
|
|
129
129
|
),
|