@grom.js/effect-tg 0.9.0 → 0.11.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.
Files changed (48) hide show
  1. package/README.md +387 -22
  2. package/dist/BotApi.d.ts +32 -0
  3. package/dist/BotApi.d.ts.map +1 -1
  4. package/dist/BotApi.js +16 -0
  5. package/dist/BotApi.js.map +1 -1
  6. package/dist/BotApiError.js +1 -1
  7. package/dist/BotApiError.js.map +1 -1
  8. package/dist/Dialog.d.ts +24 -23
  9. package/dist/Dialog.d.ts.map +1 -1
  10. package/dist/Dialog.js +15 -17
  11. package/dist/Dialog.js.map +1 -1
  12. package/dist/Markup.d.ts +200 -11
  13. package/dist/Markup.d.ts.map +1 -1
  14. package/dist/Markup.js +39 -0
  15. package/dist/Markup.js.map +1 -1
  16. package/dist/Reply.d.ts +22 -0
  17. package/dist/Reply.d.ts.map +1 -0
  18. package/dist/Reply.js +18 -0
  19. package/dist/Reply.js.map +1 -0
  20. package/dist/Send.d.ts +16 -1
  21. package/dist/Send.d.ts.map +1 -1
  22. package/dist/Send.js +28 -5
  23. package/dist/Send.js.map +1 -1
  24. package/dist/index.d.ts +1 -0
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +1 -0
  27. package/dist/index.js.map +1 -1
  28. package/dist/internal/botApi.gen.d.ts +263 -191
  29. package/dist/internal/botApi.gen.d.ts.map +1 -1
  30. package/dist/internal/dialog.d.ts +4 -4
  31. package/dist/internal/dialog.d.ts.map +1 -1
  32. package/dist/internal/dialog.js +12 -13
  33. package/dist/internal/dialog.js.map +1 -1
  34. package/dist/internal/send.d.ts +4 -1
  35. package/dist/internal/send.d.ts.map +1 -1
  36. package/dist/internal/send.js +150 -6
  37. package/dist/internal/send.js.map +1 -1
  38. package/package.json +11 -10
  39. package/src/BotApi.ts +62 -0
  40. package/src/BotApiError.ts +1 -1
  41. package/src/Dialog.ts +31 -30
  42. package/src/Markup.ts +251 -11
  43. package/src/Reply.ts +36 -0
  44. package/src/Send.ts +51 -17
  45. package/src/index.ts +1 -0
  46. package/src/internal/botApi.gen.ts +267 -191
  47. package/src/internal/dialog.ts +16 -17
  48. package/src/internal/send.ts +170 -6
package/dist/Dialog.d.ts CHANGED
@@ -26,7 +26,7 @@ export declare class ChannelDm extends ChannelDm_base<{
26
26
  topicId: number;
27
27
  }> {
28
28
  }
29
- export type Peer = User | Group | Supergroup | Channel;
29
+ export type Peer = User | Group | Channel | Supergroup;
30
30
  declare const User_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => Readonly<A> & {
31
31
  readonly _tag: "User";
32
32
  };
@@ -44,15 +44,6 @@ export declare class Group extends Group_base<{
44
44
  }> {
45
45
  dialogId(): DialogId;
46
46
  }
47
- declare const Supergroup_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => Readonly<A> & {
48
- readonly _tag: "Supergroup";
49
- };
50
- export declare class Supergroup extends Supergroup_base<{
51
- id: SupergroupId;
52
- }> {
53
- dialogId(): DialogId;
54
- topic(topicId: number): ForumTopic;
55
- }
56
47
  declare const Channel_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => Readonly<A> & {
57
48
  readonly _tag: "Channel";
58
49
  };
@@ -62,6 +53,15 @@ export declare class Channel extends Channel_base<{
62
53
  dialogId(): DialogId;
63
54
  directMessages(topicId: number): ChannelDm;
64
55
  }
56
+ declare const Supergroup_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => Readonly<A> & {
57
+ readonly _tag: "Supergroup";
58
+ };
59
+ export declare class Supergroup extends Supergroup_base<{
60
+ id: SupergroupId;
61
+ }> {
62
+ dialogId(): DialogId;
63
+ topic(topicId: number): ForumTopic;
64
+ }
65
65
  /**
66
66
  * Dialog ID is a single integer encoding peer type and its ID.
67
67
  *
@@ -73,16 +73,17 @@ export type UserId = number & Brand.Brand<'@grom.js/effect-tg/UserId'>;
73
73
  export declare const UserId: Brand.Brand.Constructor<UserId>;
74
74
  export type GroupId = number & Brand.Brand<'@grom.js/effect-tg/GroupId'>;
75
75
  export declare const GroupId: Brand.Brand.Constructor<GroupId>;
76
- export type SupergroupId = number & Brand.Brand<'@grom.js/effect-tg/SupergroupId'>;
77
- export declare const SupergroupId: Brand.Brand.Constructor<SupergroupId>;
78
- /**
79
- * @alias SupergroupId
80
- */
81
- export type ChannelId = SupergroupId;
82
76
  /**
83
- * @alias SupergroupId
77
+ * ID for channels (including supergroups).
78
+ *
79
+ * @see {@link https://core.telegram.org/api/bots/ids Telegram API • Bot API dialog IDs}
84
80
  */
85
- export declare const ChannelId: Brand.Brand.Constructor<SupergroupId>;
81
+ export type ChannelId = number & Brand.Brand<'@grom.js/effect-tg/ChannelId'>;
82
+ export declare const ChannelId: Brand.Brand.Constructor<ChannelId>;
83
+ /** @alias ChannelId */
84
+ export type SupergroupId = ChannelId;
85
+ /** @alias ChannelId */
86
+ export declare const SupergroupId: Brand.Brand.Constructor<ChannelId>;
86
87
  export declare const decodeDialogId: (dialogId: number) => Option.Option<{
87
88
  peer: 'user';
88
89
  id: UserId;
@@ -90,8 +91,8 @@ export declare const decodeDialogId: (dialogId: number) => Option.Option<{
90
91
  peer: 'group';
91
92
  id: GroupId;
92
93
  } | {
93
- peer: 'supergroup';
94
- id: SupergroupId;
94
+ peer: 'channel';
95
+ id: ChannelId;
95
96
  } | {
96
97
  peer: 'monoforum';
97
98
  id: number;
@@ -102,15 +103,15 @@ export declare const decodeDialogId: (dialogId: number) => Option.Option<{
102
103
  export declare const decodePeerId: {
103
104
  (peer: 'user', dialogId: number): Option.Option<UserId>;
104
105
  (peer: 'group', dialogId: number): Option.Option<GroupId>;
105
- (peer: 'supergroup', dialogId: number): Option.Option<SupergroupId>;
106
+ (peer: 'channel', dialogId: number): Option.Option<ChannelId>;
106
107
  (peer: 'monoforum', dialogId: number): Option.Option<number>;
107
108
  (peer: 'secret-chat', dialogId: number): Option.Option<number>;
108
109
  };
109
- export declare const encodePeerId: (peer: 'user' | 'group' | 'supergroup' | 'monoforum' | 'secret-chat', id: number) => Option.Option<DialogId>;
110
+ export declare const encodePeerId: (peer: 'user' | 'group' | 'channel' | 'monoforum' | 'secret-chat', id: number) => Option.Option<DialogId>;
110
111
  export declare const user: (id: number) => User;
111
112
  export declare const group: (id: number) => Group;
112
- export declare const supergroup: (id: number) => Supergroup;
113
113
  export declare const channel: (id: number) => Channel;
114
+ export declare const supergroup: (id: number) => Supergroup;
114
115
  export declare const ofMessage: (message: BotApi.Types.Message) => Dialog;
115
116
  export {};
116
117
  //# sourceMappingURL=Dialog.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../src/Dialog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../src/Dialog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAOvC,MAAM,MAAM,MAAM,GACd,IAAI,GACJ,YAAY,GACZ,UAAU,GACV,SAAS,CAAA;;;;AAEb,qBAAa,YAAa,SAAQ,kBAAiC;IACjE,IAAI,EAAE,IAAI,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;CAChB,CAAC;CAAG;;;;AAEL,qBAAa,UAAW,SAAQ,gBAA+B;IAC7D,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAC;CAAG;;;;AAEL,qBAAa,SAAU,SAAQ,eAA8B;IAC3D,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAC;CAAG;AAML,MAAM,MAAM,IAAI,GACZ,IAAI,GACJ,KAAK,GACL,OAAO,GACP,UAAU,CAAA;;;;AAEd,qBAAa,IAAK,SAAQ,UAAyB;IACjD,EAAE,EAAE,MAAM,CAAA;CACX,CAAC;IACO,QAAQ,IAAI,QAAQ;IAIpB,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY;CAG5C;;;;AAED,qBAAa,KAAM,SAAQ,WAA0B;IACnD,EAAE,EAAE,OAAO,CAAA;CACZ,CAAC;IACO,QAAQ,IAAI,QAAQ;CAG5B;;;;AAED,qBAAa,OAAQ,SAAQ,aAA4B;IACvD,EAAE,EAAE,SAAS,CAAA;CACd,CAAC;IACO,QAAQ,IAAI,QAAQ;IAIpB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS;CAGlD;;;;AAED,qBAAa,UAAW,SAAQ,gBAA+B;IAC7D,EAAE,EAAE,YAAY,CAAA;CACjB,CAAC;IACO,QAAQ,IAAI,QAAQ;IAIpB,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU;CAG1C;AAMD;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAA;AAC1E,eAAO,MAAM,QAAQ,mCAGpB,CAAA;AAED,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAA;AACtE,eAAO,MAAM,MAAM,iCAGlB,CAAA;AAED,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAA;AACxE,eAAO,MAAM,OAAO,kCAGnB,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAA;AAC5E,eAAO,MAAM,SAAS,oCAGrB,CAAA;AAED,uBAAuB;AACvB,MAAM,MAAM,YAAY,GAAG,SAAS,CAAA;AAEpC,uBAAuB;AACvB,eAAO,MAAM,YAAY,oCAAY,CAAA;AAMrC,eAAO,MAAM,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAC5D;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC5B;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,EAAE,EAAE,OAAO,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,EAAE,EAAE,SAAS,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CACZ,CAAA;AAE3B,eAAO,MAAM,YAAY,EAAE;IACzB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACvD,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACzD,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAC7D,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC5D,CAAC,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;CACvC,CAAA;AAEzB,eAAO,MAAM,YAAY,EAAE,CACzB,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,EAChE,EAAE,EAAE,MAAM,KACP,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAyB,CAAA;AAMpD,eAAO,MAAM,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAElC,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,KAEnC,CAAA;AAED,eAAO,MAAM,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAErC,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,UAExC,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,CACtB,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,KAC1B,MAA2B,CAAA"}
package/dist/Dialog.js CHANGED
@@ -21,30 +21,28 @@ export class Group extends Data.TaggedClass('Group') {
21
21
  return Option.getOrThrow(internal.encodePeerId('group', this.id));
22
22
  }
23
23
  }
24
- export class Supergroup extends Data.TaggedClass('Supergroup') {
24
+ export class Channel extends Data.TaggedClass('Channel') {
25
25
  dialogId() {
26
- return Option.getOrThrow(internal.encodePeerId('supergroup', this.id));
26
+ return Option.getOrThrow(internal.encodePeerId('channel', this.id));
27
27
  }
28
- topic(topicId) {
29
- return new ForumTopic({ supergroup: this, topicId });
28
+ directMessages(topicId) {
29
+ return new ChannelDm({ channel: this, topicId });
30
30
  }
31
31
  }
32
- export class Channel extends Data.TaggedClass('Channel') {
32
+ export class Supergroup extends Data.TaggedClass('Supergroup') {
33
33
  dialogId() {
34
- return Option.getOrThrow(internal.encodePeerId('supergroup', this.id));
34
+ return Option.getOrThrow(internal.encodePeerId('channel', this.id));
35
35
  }
36
- directMessages(topicId) {
37
- return new ChannelDm({ channel: this, topicId });
36
+ topic(topicId) {
37
+ return new ForumTopic({ supergroup: this, topicId });
38
38
  }
39
39
  }
40
40
  export const DialogId = Brand.refined(n => Option.isSome(internal.decodeDialogId(n)), n => Brand.error(`Invalid dialog ID: ${n}`));
41
41
  export const UserId = Brand.refined(n => Option.isSome(internal.encodePeerId('user', n)), n => Brand.error(`Invalid user ID: ${n}`));
42
42
  export const GroupId = Brand.refined(n => Option.isSome(internal.encodePeerId('group', n)), n => Brand.error(`Invalid group ID: ${n}`));
43
- export const SupergroupId = Brand.refined(n => Option.isSome(internal.encodePeerId('supergroup', n)), n => Brand.error(`Invalid supergroup or channel ID: ${n}`));
44
- /**
45
- * @alias SupergroupId
46
- */
47
- export const ChannelId = SupergroupId;
43
+ export const ChannelId = Brand.refined(n => Option.isSome(internal.encodePeerId('channel', n)), n => Brand.error(`Invalid channel or supergroup ID: ${n}`));
44
+ /** @alias ChannelId */
45
+ export const SupergroupId = ChannelId;
48
46
  // =============================================================================
49
47
  // Dialog ID <-> Peer ID
50
48
  // =============================================================================
@@ -60,11 +58,11 @@ export const user = (id) => {
60
58
  export const group = (id) => {
61
59
  return new Group({ id: GroupId(id) });
62
60
  };
63
- export const supergroup = (id) => {
64
- return new Supergroup({ id: SupergroupId(id) });
65
- };
66
61
  export const channel = (id) => {
67
- return new Channel({ id: SupergroupId(id) });
62
+ return new Channel({ id: ChannelId(id) });
63
+ };
64
+ export const supergroup = (id) => {
65
+ return new Supergroup({ id: ChannelId(id) });
68
66
  };
69
67
  export const ofMessage = internal.ofMessage;
70
68
  //# sourceMappingURL=Dialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../src/Dialog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../src/Dialog.ts"],"names":[],"mappings":"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"}
package/dist/Markup.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type * as Option from 'effect/Option';
1
+ import * as Option from 'effect/Option';
2
2
  /**
3
3
  * Reply markup for the message.
4
4
  */
@@ -7,35 +7,224 @@ declare const InlineKeyboard_base: new <A extends Record<string, any> = {}>(args
7
7
  readonly _tag: "InlineKeyboard";
8
8
  };
9
9
  export declare class InlineKeyboard extends InlineKeyboard_base<{
10
- rows: [];
10
+ readonly rows: ReadonlyArray<ReadonlyArray<InlineButton>>;
11
11
  }> {
12
12
  }
13
13
  declare const ReplyKeyboard_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => Readonly<A> & {
14
14
  readonly _tag: "ReplyKeyboard";
15
15
  };
16
16
  export declare class ReplyKeyboard extends ReplyKeyboard_base<{
17
- rows: [];
18
- persistent: boolean;
19
- resizable: boolean;
20
- oneTime: boolean;
21
- selective: boolean;
22
- inputPlaceholder: Option.Option<string>;
17
+ readonly rows: ReadonlyArray<ReadonlyArray<ReplyButton>>;
18
+ readonly persistent: boolean;
19
+ readonly resizable: boolean;
20
+ readonly oneTime: boolean;
21
+ readonly selective: boolean;
22
+ readonly inputPlaceholder: Option.Option<string>;
23
23
  }> {
24
24
  }
25
25
  declare const ReplyKeyboardRemove_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => Readonly<A> & {
26
26
  readonly _tag: "ReplyKeyboardRemove";
27
27
  };
28
28
  export declare class ReplyKeyboardRemove extends ReplyKeyboardRemove_base<{
29
- selective: boolean;
29
+ readonly selective: boolean;
30
30
  }> {
31
31
  }
32
32
  declare const ForceReply_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => Readonly<A> & {
33
33
  readonly _tag: "ForceReply";
34
34
  };
35
35
  export declare class ForceReply extends ForceReply_base<{
36
- selective: boolean;
37
- inputPlaceholder: Option.Option<string>;
36
+ readonly selective: boolean;
37
+ readonly inputPlaceholder: Option.Option<string>;
38
38
  }> {
39
39
  }
40
+ export declare const inlineKeyboard: (rows: ReadonlyArray<ReadonlyArray<InlineButton>>) => InlineKeyboard;
41
+ export declare const replyKeyboard: (rows: ReadonlyArray<ReadonlyArray<ReplyButton>>, options?: {
42
+ readonly persistent?: boolean;
43
+ readonly resizable?: boolean;
44
+ readonly oneTime?: boolean;
45
+ readonly selective?: boolean;
46
+ readonly inputPlaceholder?: string;
47
+ }) => ReplyKeyboard;
48
+ export declare const replyKeyboardRemove: (options?: {
49
+ readonly selective?: boolean;
50
+ }) => ReplyKeyboardRemove;
51
+ export declare const forceReply: (options?: {
52
+ readonly selective?: boolean;
53
+ readonly inputPlaceholder?: string;
54
+ }) => ForceReply;
55
+ /**
56
+ * Button of an inline keyboard.
57
+ *
58
+ * Exactly one action field must be specified per button.
59
+ */
60
+ export type InlineButton = {
61
+ readonly text: string;
62
+ readonly url: string;
63
+ } & ButtonAppearance | {
64
+ readonly text: string;
65
+ readonly callbackData: string;
66
+ } & ButtonAppearance | {
67
+ readonly text: string;
68
+ readonly webApp: WebAppInfo;
69
+ } & ButtonAppearance | {
70
+ readonly text: string;
71
+ readonly loginUrl: LoginUrl;
72
+ } & ButtonAppearance | {
73
+ readonly text: string;
74
+ readonly switchInlineQuery: string;
75
+ } & ButtonAppearance | {
76
+ readonly text: string;
77
+ readonly switchInlineQueryCurrentChat: string;
78
+ } & ButtonAppearance | {
79
+ readonly text: string;
80
+ readonly switchInlineQueryChosenChat: SwitchInlineQueryChosenChat;
81
+ } & ButtonAppearance | {
82
+ readonly text: string;
83
+ readonly copyText: string;
84
+ } & ButtonAppearance | {
85
+ readonly text: string;
86
+ readonly callbackGame: CallbackGame;
87
+ } & ButtonAppearance | {
88
+ readonly text: string;
89
+ readonly pay: true;
90
+ } & ButtonAppearance;
91
+ export declare const InlineButton: {
92
+ url: (text: string, url: string, options?: ButtonAppearance) => InlineButton;
93
+ callback: (text: string, callbackData: string, options?: ButtonAppearance) => InlineButton;
94
+ webApp: (text: string, url: string, options?: ButtonAppearance) => InlineButton;
95
+ loginUrl: (text: string, loginUrl: LoginUrl, options?: ButtonAppearance) => InlineButton;
96
+ switchInline: (text: string, query?: string, options?: ButtonAppearance) => InlineButton;
97
+ switchInlineCurrentChat: (text: string, query?: string, options?: ButtonAppearance) => InlineButton;
98
+ switchInlineChosenChat: (text: string, chosenChat?: SwitchInlineQueryChosenChat, options?: ButtonAppearance) => InlineButton;
99
+ copyText: (text: string, copyText: string, options?: ButtonAppearance) => InlineButton;
100
+ callbackGame: (text: string, options?: ButtonAppearance) => InlineButton;
101
+ pay: (text: string) => InlineButton;
102
+ };
103
+ /**
104
+ * Button of a custom reply keyboard.
105
+ *
106
+ * - For simple text buttons, the string can be used instead of an object.
107
+ * - At most one action field may be specified per button.
108
+ */
109
+ export type ReplyButton = string | {
110
+ readonly text: string;
111
+ } & ButtonAppearance | {
112
+ readonly text: string;
113
+ readonly requestUsers: RequestUsers;
114
+ } & ButtonAppearance | {
115
+ readonly text: string;
116
+ readonly requestChat: RequestChat;
117
+ } & ButtonAppearance | {
118
+ readonly text: string;
119
+ readonly requestContact: true;
120
+ } & ButtonAppearance | {
121
+ readonly text: string;
122
+ readonly requestLocation: true;
123
+ } & ButtonAppearance | {
124
+ readonly text: string;
125
+ readonly requestPoll: true | 'quiz' | 'regular';
126
+ } & ButtonAppearance | {
127
+ readonly text: string;
128
+ readonly webApp: WebAppInfo;
129
+ } & ButtonAppearance;
130
+ export declare const ReplyButton: {
131
+ text: (text: string, options?: ButtonAppearance) => ReplyButton;
132
+ requestUsers: (text: string, requestUsers: RequestUsers, options?: ButtonAppearance) => ReplyButton;
133
+ requestChat: (text: string, requestChat: RequestChat, options?: ButtonAppearance) => ReplyButton;
134
+ requestContact: (text: string, options?: ButtonAppearance) => ReplyButton;
135
+ requestLocation: (text: string, options?: ButtonAppearance) => ReplyButton;
136
+ requestPoll: (text: string, type?: "quiz" | "regular", options?: ButtonAppearance) => ReplyButton;
137
+ webApp: (text: string, url: string, options?: ButtonAppearance) => ReplyButton;
138
+ };
139
+ /**
140
+ * Button style for inline and reply keyboards.
141
+ */
142
+ export type ButtonStyle = 'danger' | 'success' | 'primary';
143
+ /**
144
+ * Appearance options for inline and reply keyboard buttons.
145
+ */
146
+ export interface ButtonAppearance {
147
+ readonly style?: ButtonStyle;
148
+ readonly iconEmojiId?: string;
149
+ }
150
+ /**
151
+ * Information about a Web App (a.k.a. Mini App).
152
+ */
153
+ export interface WebAppInfo {
154
+ readonly url: string;
155
+ }
156
+ /**
157
+ * Login URL for inline keyboard buttons.
158
+ */
159
+ export interface LoginUrl {
160
+ readonly url: string;
161
+ readonly forwardText?: string;
162
+ readonly botUsername?: string;
163
+ readonly requestWriteAccess?: boolean;
164
+ }
165
+ /**
166
+ * Switch inline query chosen chat options.
167
+ */
168
+ export interface SwitchInlineQueryChosenChat {
169
+ readonly query?: string;
170
+ readonly allowUserChats?: boolean;
171
+ readonly allowBotChats?: boolean;
172
+ readonly allowGroupChats?: boolean;
173
+ readonly allowChannelChats?: boolean;
174
+ }
175
+ /**
176
+ * Placeholder for a game button. Use [BotFather](https://t.me/botfather) to set up your game.
177
+ */
178
+ export interface CallbackGame {
179
+ }
180
+ /**
181
+ * Criteria for requesting suitable users. Used with request_users.
182
+ */
183
+ export interface RequestUsers {
184
+ readonly requestId: number;
185
+ readonly userIsBot?: boolean;
186
+ readonly userIsPremium?: boolean;
187
+ readonly maxQuantity?: number;
188
+ readonly requestName?: boolean;
189
+ readonly requestUsername?: boolean;
190
+ readonly requestPhoto?: boolean;
191
+ }
192
+ /**
193
+ * Rights of an administrator in a chat.
194
+ */
195
+ export interface ChatAdminRights {
196
+ readonly isAnonymous: boolean;
197
+ readonly canManageChat: boolean;
198
+ readonly canDeleteMessages: boolean;
199
+ readonly canManageVideoChats: boolean;
200
+ readonly canRestrictMembers: boolean;
201
+ readonly canPromoteMembers: boolean;
202
+ readonly canChangeInfo: boolean;
203
+ readonly canInviteUsers: boolean;
204
+ readonly canPostStories: boolean;
205
+ readonly canEditStories: boolean;
206
+ readonly canDeleteStories: boolean;
207
+ readonly canPostMessages?: boolean;
208
+ readonly canEditMessages?: boolean;
209
+ readonly canPinMessages?: boolean;
210
+ readonly canManageTopics?: boolean;
211
+ readonly canManageDirectMessages?: boolean;
212
+ }
213
+ /**
214
+ * Criteria for requesting a suitable chat. Used with request_chat.
215
+ */
216
+ export interface RequestChat {
217
+ readonly requestId: number;
218
+ readonly chatIsChannel: boolean;
219
+ readonly chatIsForum?: boolean;
220
+ readonly chatHasUsername?: boolean;
221
+ readonly chatIsCreated?: boolean;
222
+ readonly userAdministratorRights?: ChatAdminRights;
223
+ readonly botAdministratorRights?: ChatAdminRights;
224
+ readonly botIsMember?: boolean;
225
+ readonly requestTitle?: boolean;
226
+ readonly requestUsername?: boolean;
227
+ readonly requestPhoto?: boolean;
228
+ }
40
229
  export {};
41
230
  //# sourceMappingURL=Markup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Markup.d.ts","sourceRoot":"","sources":["../src/Markup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAG5C;;GAEG;AACH,MAAM,MAAM,MAAM,GACd,cAAc,GACd,aAAa,GACb,mBAAmB,GACnB,UAAU,CAAA;;;;AAEd,qBAAa,cAAe,SAAQ,oBAAmC;IACrE,IAAI,EAAE,EAAE,CAAA;CACT,CAAC;CAAG;;;;AAEL,qBAAa,aAAc,SAAQ,mBAAkC;IACnE,IAAI,EAAE,EAAE,CAAA;IACR,UAAU,EAAE,OAAO,CAAA;IACnB,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,OAAO,CAAA;IAClB,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;CACxC,CAAC;CAAG;;;;AAEL,qBAAa,mBAAoB,SAAQ,yBAAwC;IAC/E,SAAS,EAAE,OAAO,CAAA;CACnB,CAAC;CAAG;;;;AAEL,qBAAa,UAAW,SAAQ,gBAA+B;IAC7D,SAAS,EAAE,OAAO,CAAA;IAClB,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;CACxC,CAAC;CAAG"}
1
+ {"version":3,"file":"Markup.d.ts","sourceRoot":"","sources":["../src/Markup.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAMvC;;GAEG;AACH,MAAM,MAAM,MAAM,GACd,cAAc,GACd,aAAa,GACb,mBAAmB,GACnB,UAAU,CAAA;;;;AAEd,qBAAa,cAAe,SAAQ,oBAAmC;IACrE,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAA;CAC1D,CAAC;CAAG;;;;AAEL,qBAAa,aAAc,SAAQ,mBAAkC;IACnE,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAA;IACxD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;CACjD,CAAC;CAAG;;;;AAEL,qBAAa,mBAAoB,SAAQ,yBAAwC;IAC/E,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;CAC5B,CAAC;CAAG;;;;AAEL,qBAAa,UAAW,SAAQ,gBAA+B;IAC7D,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;CACjD,CAAC;CAAG;AAML,eAAO,MAAM,cAAc,GACzB,MAAM,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,KAC/C,cAA8C,CAAA;AAEjD,eAAO,MAAM,aAAa,GACxB,MAAM,aAAa,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,EAC/C,UAAU;IACR,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CACnC,KACA,aAQC,CAAA;AAEJ,eAAO,MAAM,mBAAmB,GAAI,UAAU;IAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,KAAG,mBACZ,CAAA;AAErE,eAAO,MAAM,UAAU,GAAI,UAAU;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CACnC,KAAG,UAIA,CAAA;AAMJ;;;;GAIG;AACH,MAAM,MAAM,YAAY,GACpB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,gBAAgB,GAClE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAAG,gBAAgB,GAC3E;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;CAAE,GAAG,gBAAgB,GACzE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;CAAE,GAAG,gBAAgB,GACzE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,GAAG,gBAAgB,GAChF;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,4BAA4B,EAAE,MAAM,CAAA;CAAE,GAAG,gBAAgB,GAC3F;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,2BAA2B,EAAE,2BAA2B,CAAA;CAAE,GAAG,gBAAgB,GAC/G;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,gBAAgB,GACvE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAA;CAAE,GAAG,gBAAgB,GACjF;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAA;CAAE,GAAG,gBAAgB,CAAA;AAEpE,eAAO,MAAM,YAAY;gBACX,MAAM,OAAO,MAAM,YAAY,gBAAgB,KAAG,YAAY;qBAGzD,MAAM,gBAAgB,MAAM,YAAY,gBAAgB,KAAG,YAAY;mBAGzE,MAAM,OAAO,MAAM,YAAY,gBAAgB,KAAG,YAAY;qBAG5D,MAAM,YAAY,QAAQ,YAAY,gBAAgB,KAAG,YAAY;yBAGjE,MAAM,UAAU,MAAM,YAAY,gBAAgB,KAAG,YAAY;oCAGtD,MAAM,UAAU,MAAM,YAAY,gBAAgB,KAAG,YAAY;mCAGlE,MAAM,eAAe,2BAA2B,YAAY,gBAAgB,KAAG,YAAY;qBAGzG,MAAM,YAAY,MAAM,YAAY,gBAAgB,KAAG,YAAY;yBAG/D,MAAM,YAAY,gBAAgB,KAAG,YAAY;gBAG1D,MAAM,KAAG,YAAY;CAElC,CAAA;AAMD;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GACnB,MAAM,GACN;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,gBAAgB,GAC5C;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAA;CAAE,GAAG,gBAAgB,GACjF;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;CAAE,GAAG,gBAAgB,GAC/E;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAA;CAAE,GAAG,gBAAgB,GAC3E;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAA;CAAE,GAAG,gBAAgB,GAC5E;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAA;CAAE,GAAG,gBAAgB,GAC7F;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;CAAE,GAAG,gBAAgB,CAAA;AAE7E,eAAO,MAAM,WAAW;iBACT,MAAM,YAAY,gBAAgB,KAAG,WAAW;yBAExC,MAAM,gBAAgB,YAAY,YAAY,gBAAgB,KAAG,WAAW;wBAG7E,MAAM,eAAe,WAAW,YAAY,gBAAgB,KAAG,WAAW;2BAGvE,MAAM,YAAY,gBAAgB,KAAG,WAAW;4BAG/C,MAAM,YAAY,gBAAgB,KAAG,WAAW;wBAGpD,MAAM,SAAS,MAAM,GAAG,SAAS,YAAY,gBAAgB,KAAG,WAAW;mBAGhF,MAAM,OAAO,MAAM,YAAY,gBAAgB,KAAG,WAAW;CAE7E,CAAA;AAMD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAA;AAE1D;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAA;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAA;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAA;IACjC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;CAAG;AAEhC;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAA;IAC/B,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAA;IACnC,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAA;IACrC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAA;IACpC,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAA;IACnC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAA;IAC/B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAA;IACjC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAA;IAC/B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,eAAe,CAAA;IAClD,QAAQ,CAAC,sBAAsB,CAAC,EAAE,eAAe,CAAA;IACjD,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;IAC/B,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAChC"}
package/dist/Markup.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import * as Data from 'effect/Data';
2
+ import * as Option from 'effect/Option';
2
3
  export class InlineKeyboard extends Data.TaggedClass('InlineKeyboard') {
3
4
  }
4
5
  export class ReplyKeyboard extends Data.TaggedClass('ReplyKeyboard') {
@@ -7,4 +8,42 @@ export class ReplyKeyboardRemove extends Data.TaggedClass('ReplyKeyboardRemove')
7
8
  }
8
9
  export class ForceReply extends Data.TaggedClass('ForceReply') {
9
10
  }
11
+ // =============================================================================
12
+ // Constructors
13
+ // =============================================================================
14
+ export const inlineKeyboard = (rows) => new InlineKeyboard({ rows });
15
+ export const replyKeyboard = (rows, options) => new ReplyKeyboard({
16
+ rows,
17
+ persistent: options?.persistent ?? false,
18
+ resizable: options?.resizable ?? false,
19
+ oneTime: options?.oneTime ?? false,
20
+ selective: options?.selective ?? false,
21
+ inputPlaceholder: Option.fromNullable(options?.inputPlaceholder),
22
+ });
23
+ export const replyKeyboardRemove = (options) => new ReplyKeyboardRemove({ selective: options?.selective ?? false });
24
+ export const forceReply = (options) => new ForceReply({
25
+ selective: options?.selective ?? false,
26
+ inputPlaceholder: Option.fromNullable(options?.inputPlaceholder),
27
+ });
28
+ export const InlineButton = {
29
+ url: (text, url, options) => ({ text, url, ...options }),
30
+ callback: (text, callbackData, options) => ({ text, callbackData, ...options }),
31
+ webApp: (text, url, options) => ({ text, webApp: { url }, ...options }),
32
+ loginUrl: (text, loginUrl, options) => ({ text, loginUrl, ...options }),
33
+ switchInline: (text, query, options) => ({ text, switchInlineQuery: query ?? '', ...options }),
34
+ switchInlineCurrentChat: (text, query, options) => ({ text, switchInlineQueryCurrentChat: query ?? '', ...options }),
35
+ switchInlineChosenChat: (text, chosenChat, options) => ({ text, switchInlineQueryChosenChat: chosenChat ?? {}, ...options }),
36
+ copyText: (text, copyText, options) => ({ text, copyText, ...options }),
37
+ callbackGame: (text, options) => ({ text, callbackGame: {}, ...options }),
38
+ pay: (text) => ({ text, pay: true }),
39
+ };
40
+ export const ReplyButton = {
41
+ text: (text, options) => ({ text, ...options }),
42
+ requestUsers: (text, requestUsers, options) => ({ text, requestUsers, ...options }),
43
+ requestChat: (text, requestChat, options) => ({ text, requestChat, ...options }),
44
+ requestContact: (text, options) => ({ text, requestContact: true, ...options }),
45
+ requestLocation: (text, options) => ({ text, requestLocation: true, ...options }),
46
+ requestPoll: (text, type, options) => ({ text, requestPoll: type ?? true, ...options }),
47
+ webApp: (text, url, options) => ({ text, webApp: { url }, ...options }),
48
+ };
10
49
  //# sourceMappingURL=Markup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Markup.js","sourceRoot":"","sources":["../src/Markup.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,aAAa,CAAA;AAWnC,MAAM,OAAO,cAAe,SAAQ,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAEnE;CAAG;AAEL,MAAM,OAAO,aAAc,SAAQ,IAAI,CAAC,WAAW,CAAC,eAAe,CAOjE;CAAG;AAEL,MAAM,OAAO,mBAAoB,SAAQ,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAE7E;CAAG;AAEL,MAAM,OAAO,UAAW,SAAQ,IAAI,CAAC,WAAW,CAAC,YAAY,CAG3D;CAAG"}
1
+ {"version":3,"file":"Markup.js","sourceRoot":"","sources":["../src/Markup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import type * as BotApi from './BotApi.ts';
2
+ import * as Data from 'effect/Data';
3
+ import * as Option from 'effect/Option';
4
+ import * as Dialog from './Dialog.ts';
5
+ export declare class Reply extends Data.Class<{
6
+ dialog: Dialog.Peer | Dialog.DialogId;
7
+ messageId: number;
8
+ optional: boolean;
9
+ taskId: Option.Option<number>;
10
+ }> {
11
+ }
12
+ export declare const make: (args: {
13
+ dialog: Dialog.Peer | Dialog.DialogId;
14
+ messageId: number;
15
+ optional?: boolean;
16
+ taskId?: number;
17
+ }) => Reply;
18
+ export declare const toMessage: (message: BotApi.Types.Message, options?: {
19
+ optional?: boolean;
20
+ taskId?: number;
21
+ }) => Reply;
22
+ //# sourceMappingURL=Reply.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Reply.d.ts","sourceRoot":"","sources":["../src/Reply.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,IAAI,MAAM,aAAa,CAAA;AACnC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,qBAAa,KAAM,SAAQ,IAAI,CAAC,KAAK,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAA;IACrC,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,OAAO,CAAA;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;CAC9B,CAAC;CAAG;AAEL,eAAO,MAAM,IAAI,GAAI,MAAM;IACzB,MAAM,EAAE,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAA;IACrC,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,KAAG,KAKF,CAAA;AAEF,eAAO,MAAM,SAAS,GACpB,SAAS,MAAM,CAAC,KAAK,CAAC,OAAO,EAC7B,UAAU;IACR,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,KACA,KAKD,CAAA"}
package/dist/Reply.js ADDED
@@ -0,0 +1,18 @@
1
+ import * as Data from 'effect/Data';
2
+ import * as Option from 'effect/Option';
3
+ import * as Dialog from "./Dialog.js";
4
+ export class Reply extends Data.Class {
5
+ }
6
+ export const make = (args) => new Reply({
7
+ dialog: args.dialog,
8
+ messageId: args.messageId,
9
+ optional: args.optional ?? false,
10
+ taskId: Option.fromNullable(args.taskId),
11
+ });
12
+ export const toMessage = (message, options) => new Reply({
13
+ dialog: Dialog.DialogId(message.chat.id),
14
+ messageId: message.message_id,
15
+ optional: options?.optional ?? false,
16
+ taskId: Option.fromNullable(options?.taskId),
17
+ });
18
+ //# sourceMappingURL=Reply.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Reply.js","sourceRoot":"","sources":["../src/Reply.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,aAAa,CAAA;AACnC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,MAAM,OAAO,KAAM,SAAQ,IAAI,CAAC,KAK9B;CAAG;AAEL,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,IAKpB,EAAS,EAAE,CAAC,IAAI,KAAK,CAAC;IACrB,MAAM,EAAE,IAAI,CAAC,MAAM;IACnB,SAAS,EAAE,IAAI,CAAC,SAAS;IACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,KAAK;IAChC,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC;CACzC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,OAA6B,EAC7B,OAGC,EACM,EAAE,CAAC,IAAI,KAAK,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;IACxC,SAAS,EAAE,OAAO,CAAC,UAAU;IAC7B,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,KAAK;IACpC,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC;CAC7C,CAAC,CAAA"}
package/dist/Send.d.ts CHANGED
@@ -6,6 +6,7 @@ import type * as BotApiError from './BotApiError.ts';
6
6
  import type * as Content from './Content.ts';
7
7
  import type * as Dialog from './Dialog.ts';
8
8
  import type * as Markup from './Markup.ts';
9
+ import type * as Reply from './Reply.ts';
9
10
  import * as Context from 'effect/Context';
10
11
  import * as Data from 'effect/Data';
11
12
  import * as Effect from 'effect/Effect';
@@ -17,8 +18,9 @@ import * as Inspectable from 'effect/Inspectable';
17
18
  export declare const sendMessage: (params: {
18
19
  content: Content.Content;
19
20
  dialog: Dialog.Dialog | Dialog.DialogId;
20
- options?: Options;
21
21
  markup?: Markup.Markup;
22
+ reply?: Reply.Reply;
23
+ options?: Options;
22
24
  }) => Effect.Effect<BotApi.Types.Message, BotApiError.BotApiError, BotApi.BotApi>;
23
25
  export declare const MessageToSendTypeId: unique symbol;
24
26
  export type MessageToSendTypeId = typeof MessageToSendTypeId;
@@ -29,6 +31,7 @@ export interface MessageToSend extends Inspectable.Inspectable, Effect.Effect<Bo
29
31
  readonly [MessageToSendTypeId]: typeof MessageToSendTypeId;
30
32
  readonly content: Content.Content;
31
33
  readonly markup?: Markup.Markup;
34
+ readonly reply?: Reply.Reply;
32
35
  readonly options?: Options;
33
36
  }
34
37
  /**
@@ -37,6 +40,7 @@ export interface MessageToSend extends Inspectable.Inspectable, Effect.Effect<Bo
37
40
  */
38
41
  export declare const message: (content: Content.Content, params?: {
39
42
  markup?: Markup.Markup;
43
+ reply?: Reply.Reply;
40
44
  options?: Options;
41
45
  }) => MessageToSend;
42
46
  declare const TargetDialog_base: Context.TagClass<TargetDialog, "@grom.js/effect-tg/Send/TargetDialog", Dialog.DialogId | Dialog.Dialog>;
@@ -63,6 +67,17 @@ export declare const withMarkup: {
63
67
  * Removes the reply markup from the message.
64
68
  */
65
69
  export declare const withoutMarkup: (self: MessageToSend) => MessageToSend;
70
+ /**
71
+ * Sets the information about the message to reply to.
72
+ */
73
+ export declare const withReply: {
74
+ (reply: Reply.Reply): (self: MessageToSend) => MessageToSend;
75
+ (self: MessageToSend, reply: Reply.Reply): MessageToSend;
76
+ };
77
+ /**
78
+ * Removes the reply options from the message.
79
+ */
80
+ export declare const withoutReply: (self: MessageToSend) => MessageToSend;
66
81
  /**
67
82
  * Options for sending a message.
68
83
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Send.d.ts","sourceRoot":"","sources":["../src/Send.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Send.d.ts","sourceRoot":"","sources":["../src/Send.ts"],"names":[],"mappings":"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"}