@mostfeatured/dbi 0.0.56 → 0.0.58

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.
@@ -1 +1 @@
1
- {"version":3,"file":"hookInteractionListeners.d.ts","sourceRoot":"","sources":["../../src/methods/hookInteractionListeners.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAG7B,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,cAAc,CAAC,GAAG,MAAM,GAAG,CAsI5E"}
1
+ {"version":3,"file":"hookInteractionListeners.d.ts","sourceRoot":"","sources":["../../src/methods/hookInteractionListeners.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAG7B,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,cAAc,CAAC,GAAG,MAAM,GAAG,CA6I5E"}
@@ -85,6 +85,7 @@ function hookInteractionListeners(dbi) {
85
85
  await dbi.config.store.set(`RateLimit["${rateLimitKeyMap[type]}"]`, { at: Date.now(), duration });
86
86
  }
87
87
  let arg = {
88
+ // @ts-ignore
88
89
  dbi,
89
90
  // @ts-ignore
90
91
  interaction: inter,
@@ -92,22 +93,28 @@ function hookInteractionListeners(dbi) {
92
93
  dbiInteraction: dbiInter,
93
94
  // @ts-ignore
94
95
  locale,
96
+ // @ts-ignore
95
97
  setRateLimit,
96
98
  // @ts-ignore
97
99
  data,
100
+ // @ts-ignore
98
101
  other
99
102
  };
100
103
  if (dbi.config.strict) {
104
+ // @ts-ignore
101
105
  await dbiInter.onExecute(arg);
102
106
  }
103
107
  else {
104
108
  try {
109
+ // @ts-ignore
105
110
  await dbiInter.onExecute(arg);
106
111
  }
107
112
  catch (error) {
113
+ // @ts-ignore
108
114
  await dbi.events.trigger("interactionError", Object.assign(arg, { error }));
109
115
  }
110
116
  }
117
+ // @ts-ignore
111
118
  dbi.events.trigger("afterInteraction", { dbi, interaction: inter, dbiInteraction: dbiInter, locale, setRateLimit, data, other });
112
119
  }
113
120
  dbi.client.on("interactionCreate", handle);
@@ -1 +1 @@
1
- {"version":3,"file":"hookInteractionListeners.js","sourceRoot":"","sources":["../../src/methods/hookInteractionListeners.ts"],"names":[],"mappings":"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","sourcesContent":["import { DBI } from \"../DBI\";\r\nimport Discord from \"discord.js\";\r\nimport { parseCustomId } from \"../utils/customId\";\r\nimport { NamespaceEnums } from \"../../generated/namespaceData\";\r\n\r\nexport function hookInteractionListeners(dbi: DBI<NamespaceEnums>): () => any {\r\n async function handle(inter: Discord.Interaction<\"cached\">) {\r\n\r\n const dbiInter =\r\n dbi.data.interactions.find(i => {\r\n let isUsesCustomId = (inter.isButton() || inter.isSelectMenu() || inter.isModalSubmit());\r\n let parsedId = isUsesCustomId ? parseCustomId(dbi, (inter as any).customId) : null;\r\n return (\r\n (\r\n i.type == \"ChatInput\"\r\n && (inter.isChatInputCommand() || inter.isAutocomplete())\r\n && i.name == [inter.commandName, inter.options.getSubcommandGroup(false), inter.options.getSubcommand(false)].filter(i => !!i).join(\" \")\r\n )\r\n ||\r\n (\r\n (i.type == \"MessageContextMenu\" || i.type == \"UserContextMenu\")\r\n && (inter.isMessageContextMenuCommand() || inter.isUserContextMenuCommand())\r\n && inter.commandName == i.name\r\n )\r\n ||\r\n (\r\n (i.type == \"Button\" || i.type == \"SelectMenu\" || i.type == \"Modal\")\r\n && isUsesCustomId\r\n && parsedId?.name == i.name\r\n )\r\n )\r\n });\r\n \r\n if (!dbiInter) return;\r\n\r\n let userLocaleName = inter.locale.split(\"-\")[0];\r\n let userLocale = dbi.data.locales.has(userLocaleName) ? dbi.data.locales.get(userLocaleName) : dbi.data.locales.get(dbi.config.defaults.locale);\r\n\r\n let guildLocaleName = inter.guild ? inter.guild.preferredLocale.split(\"-\")[0] : null;\r\n let guildLocale = guildLocaleName ? (dbi.data.locales.has(guildLocaleName) ? dbi.data.locales.get(guildLocaleName) : dbi.data.locales.get(dbi.config.defaults.locale)) : null;\r\n\r\n let locale = {\r\n user: userLocale,\r\n guild: guildLocale\r\n };\r\n\r\n let data = (inter.isButton() || inter.isSelectMenu() || inter.isModalSubmit()) ? parseCustomId(dbi, inter.customId).data : undefined;\r\n\r\n let other = {};\r\n\r\n if (!(await dbi.events.trigger(\"beforeInteraction\", { dbi, interaction: inter, locale, setRateLimit, data, other }))) return;\r\n \r\n if (inter.isAutocomplete()) {\r\n let focussed = inter.options.getFocused(true);\r\n let option = (dbiInter.options as any[]).find(i => i.name == focussed.name);\r\n if (option?.onComplete) {\r\n let response = await option.onComplete({\r\n value: focussed.value,\r\n interaction: inter,\r\n dbiInteraction: dbiInter,\r\n dbi,\r\n data,\r\n other,\r\n locale\r\n });\r\n await inter.respond(response);\r\n }\r\n return;\r\n }\r\n\r\n let rateLimitKeyMap = {\r\n \"User\": `${dbiInter.name}_${inter.user.id}`,\r\n \"Channel\": `${dbiInter.name}_${inter.channelId || \"Channel\"}`,\r\n \"Guild\": `${dbiInter.name}_${inter.guildId || \"Guild\"}`,\r\n \"Member\": `${dbiInter.name}_${inter.user.id}_${inter.guildId || \"Guild\"}`,\r\n \"Message\": `${dbiInter.name}_${(inter as any)?.message?.id}`\r\n }\r\n\r\n for (const type in rateLimitKeyMap) {\r\n // @ts-ignore\r\n let key = `RateLimit[\"${rateLimitKeyMap[type]}\"]`;\r\n let val = await dbi.config.store.get(key);\r\n if (val && Date.now() > val.at + val.duration) {\r\n await dbi.config.store.delete(key);\r\n val = null;\r\n }\r\n if (val) {\r\n dbi.events.trigger(\"interactionRateLimit\", {\r\n dbi,\r\n interaction: inter,\r\n dbiInteraction: dbiInter,\r\n locale,\r\n data,\r\n rateLimit: {\r\n type: key,\r\n ...val\r\n }\r\n })\r\n return;\r\n }\r\n }\r\n\r\n async function setRateLimit(type: string, duration: number) {\r\n // @ts-ignore\r\n await dbi.config.store.set(`RateLimit[\"${rateLimitKeyMap[type]}\"]`, { at: Date.now(), duration });\r\n }\r\n\r\n let arg = {\r\n dbi,\r\n // @ts-ignore\r\n interaction: inter as any,\r\n // @ts-ignore\r\n dbiInteraction: dbiInter,\r\n // @ts-ignore\r\n locale,\r\n setRateLimit,\r\n // @ts-ignore\r\n data,\r\n other\r\n };\r\n\r\n if (dbi.config.strict) {\r\n await dbiInter.onExecute(arg);\r\n } else {\r\n try {\r\n await dbiInter.onExecute(arg);\r\n } catch (error) {\r\n await dbi.events.trigger(\"interactionError\", Object.assign(arg, { error }));\r\n }\r\n }\r\n \r\n dbi.events.trigger(\"afterInteraction\", { dbi, interaction: inter, dbiInteraction: dbiInter, locale, setRateLimit, data, other });\r\n }\r\n\r\n dbi.client.on(\"interactionCreate\", handle);\r\n\r\n return () => { \r\n dbi.client.off(\"interactionCreate\", handle);\r\n };\r\n}"]}
1
+ {"version":3,"file":"hookInteractionListeners.js","sourceRoot":"","sources":["../../src/methods/hookInteractionListeners.ts"],"names":[],"mappings":"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","sourcesContent":["import { DBI } from \"../DBI\";\r\nimport Discord from \"discord.js\";\r\nimport { parseCustomId } from \"../utils/customId\";\r\nimport { NamespaceEnums } from \"../../generated/namespaceData\";\r\n\r\nexport function hookInteractionListeners(dbi: DBI<NamespaceEnums>): () => any {\r\n async function handle(inter: Discord.Interaction<\"cached\">) {\r\n\r\n const dbiInter =\r\n dbi.data.interactions.find(i => {\r\n let isUsesCustomId = (inter.isButton() || inter.isSelectMenu() || inter.isModalSubmit());\r\n let parsedId = isUsesCustomId ? parseCustomId(dbi, (inter as any).customId) : null;\r\n return (\r\n (\r\n i.type == \"ChatInput\"\r\n && (inter.isChatInputCommand() || inter.isAutocomplete())\r\n && i.name == [inter.commandName, inter.options.getSubcommandGroup(false), inter.options.getSubcommand(false)].filter(i => !!i).join(\" \")\r\n )\r\n ||\r\n (\r\n (i.type == \"MessageContextMenu\" || i.type == \"UserContextMenu\")\r\n && (inter.isMessageContextMenuCommand() || inter.isUserContextMenuCommand())\r\n && inter.commandName == i.name\r\n )\r\n ||\r\n (\r\n (i.type == \"Button\" || i.type == \"SelectMenu\" || i.type == \"Modal\")\r\n && isUsesCustomId\r\n && parsedId?.name == i.name\r\n )\r\n )\r\n });\r\n \r\n if (!dbiInter) return;\r\n\r\n let userLocaleName = inter.locale.split(\"-\")[0];\r\n let userLocale = dbi.data.locales.has(userLocaleName) ? dbi.data.locales.get(userLocaleName) : dbi.data.locales.get(dbi.config.defaults.locale);\r\n\r\n let guildLocaleName = inter.guild ? inter.guild.preferredLocale.split(\"-\")[0] : null;\r\n let guildLocale = guildLocaleName ? (dbi.data.locales.has(guildLocaleName) ? dbi.data.locales.get(guildLocaleName) : dbi.data.locales.get(dbi.config.defaults.locale)) : null;\r\n\r\n let locale = {\r\n user: userLocale,\r\n guild: guildLocale\r\n };\r\n\r\n let data = (inter.isButton() || inter.isSelectMenu() || inter.isModalSubmit()) ? parseCustomId(dbi, inter.customId).data : undefined;\r\n\r\n let other = {};\r\n\r\n if (!(await dbi.events.trigger(\"beforeInteraction\", { dbi, interaction: inter, locale, setRateLimit, data, other }))) return;\r\n \r\n if (inter.isAutocomplete()) {\r\n let focussed = inter.options.getFocused(true);\r\n let option = (dbiInter.options as any[]).find(i => i.name == focussed.name);\r\n if (option?.onComplete) {\r\n let response = await option.onComplete({\r\n value: focussed.value,\r\n interaction: inter,\r\n dbiInteraction: dbiInter,\r\n dbi,\r\n data,\r\n other,\r\n locale\r\n });\r\n await inter.respond(response);\r\n }\r\n return;\r\n }\r\n\r\n let rateLimitKeyMap = {\r\n \"User\": `${dbiInter.name}_${inter.user.id}`,\r\n \"Channel\": `${dbiInter.name}_${inter.channelId || \"Channel\"}`,\r\n \"Guild\": `${dbiInter.name}_${inter.guildId || \"Guild\"}`,\r\n \"Member\": `${dbiInter.name}_${inter.user.id}_${inter.guildId || \"Guild\"}`,\r\n \"Message\": `${dbiInter.name}_${(inter as any)?.message?.id}`\r\n }\r\n\r\n for (const type in rateLimitKeyMap) {\r\n // @ts-ignore\r\n let key = `RateLimit[\"${rateLimitKeyMap[type]}\"]`;\r\n let val = await dbi.config.store.get(key);\r\n if (val && Date.now() > val.at + val.duration) {\r\n await dbi.config.store.delete(key);\r\n val = null;\r\n }\r\n if (val) {\r\n dbi.events.trigger(\"interactionRateLimit\", {\r\n dbi,\r\n interaction: inter,\r\n dbiInteraction: dbiInter,\r\n locale,\r\n data,\r\n rateLimit: {\r\n type: key,\r\n ...val\r\n }\r\n })\r\n return;\r\n }\r\n }\r\n\r\n async function setRateLimit(type: string, duration: number) {\r\n // @ts-ignore\r\n await dbi.config.store.set(`RateLimit[\"${rateLimitKeyMap[type]}\"]`, { at: Date.now(), duration });\r\n }\r\n\r\n let arg = {\r\n // @ts-ignore\r\n dbi,\r\n // @ts-ignore\r\n interaction: inter as any,\r\n // @ts-ignore\r\n dbiInteraction: dbiInter,\r\n // @ts-ignore\r\n locale,\r\n // @ts-ignore\r\n setRateLimit,\r\n // @ts-ignore\r\n data,\r\n // @ts-ignore\r\n other\r\n };\r\n\r\n if (dbi.config.strict) {\r\n // @ts-ignore\r\n await dbiInter.onExecute(arg);\r\n } else {\r\n try {\r\n // @ts-ignore\r\n await dbiInter.onExecute(arg);\r\n } catch (error) {\r\n // @ts-ignore\r\n await dbi.events.trigger(\"interactionError\", Object.assign(arg, { error }));\r\n }\r\n }\r\n \r\n // @ts-ignore\r\n dbi.events.trigger(\"afterInteraction\", { dbi, interaction: inter, dbiInteraction: dbiInter, locale, setRateLimit, data, other });\r\n }\r\n\r\n dbi.client.on(\"interactionCreate\", handle);\r\n\r\n return () => { \r\n dbi.client.off(\"interactionCreate\", handle);\r\n };\r\n}"]}
@@ -35,7 +35,9 @@ export declare class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
35
35
  onComplete: (ctx: IDBICompleteCtx<TNamespace, string>) => Promise<TDBIValueName<string>[]>;
36
36
  description: string;
37
37
  maxLength: number;
38
+ max_length: number;
38
39
  minLength: number;
40
+ min_length: number;
39
41
  required: boolean;
40
42
  };
41
43
  stringChoices(cfg: TDBIBaseOption & TDBIMinMaxLength & {
@@ -46,7 +48,9 @@ export declare class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
46
48
  choices: TDBIValueName<string>[];
47
49
  description: string;
48
50
  maxLength: number;
51
+ max_length: number;
49
52
  minLength: number;
53
+ min_length: number;
50
54
  required: boolean;
51
55
  };
52
56
  string(cfg: TDBIBaseOption & TDBIMinMaxLength): {
@@ -54,7 +58,9 @@ export declare class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
54
58
  name: string;
55
59
  description: string;
56
60
  maxLength: number;
61
+ max_length: number;
57
62
  minLength: number;
63
+ min_length: number;
58
64
  required: boolean;
59
65
  };
60
66
  numberAutocomplete(cfg: TDBIBaseOption & TDBIMinMaxValue & {
@@ -66,7 +72,9 @@ export declare class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
66
72
  onComplete: (ctx: IDBICompleteCtx<TNamespace, string>) => Promise<TDBIValueName<number>[]>;
67
73
  description: string;
68
74
  maxValue: number;
75
+ max_value: number;
69
76
  minValue: number;
77
+ min_value: number;
70
78
  required: boolean;
71
79
  };
72
80
  numberChoices(cfg: TDBIBaseOption & TDBIMinMaxValue & {
@@ -77,7 +85,9 @@ export declare class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
77
85
  choices: TDBIValueName<number>[];
78
86
  description: string;
79
87
  maxValue: number;
88
+ max_value: number;
80
89
  minValue: number;
90
+ min_value: number;
81
91
  required: boolean;
82
92
  };
83
93
  number(cfg: TDBIBaseOption & TDBIMinMaxValue): {
@@ -85,7 +95,9 @@ export declare class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
85
95
  name: string;
86
96
  description: string;
87
97
  maxValue: number;
98
+ max_value: number;
88
99
  minValue: number;
100
+ min_value: number;
89
101
  required: boolean;
90
102
  };
91
103
  integerAutocomplete(cfg: TDBIBaseOption & TDBIMinMaxValue & {
@@ -97,7 +109,9 @@ export declare class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
97
109
  onComplete: (ctx: IDBICompleteCtx<TNamespace, string>) => Promise<TDBIValueName<number>[]>;
98
110
  description: string;
99
111
  maxValue: number;
112
+ max_value: number;
100
113
  minValue: number;
114
+ min_value: number;
101
115
  required: boolean;
102
116
  };
103
117
  integerChoices(cfg: TDBIBaseOption & TDBIMinMaxValue & {
@@ -108,7 +122,9 @@ export declare class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
108
122
  choices: TDBIValueName<number>[];
109
123
  description: string;
110
124
  maxValue: number;
125
+ max_value: number;
111
126
  minValue: number;
127
+ min_value: number;
112
128
  required: boolean;
113
129
  };
114
130
  integer(cfg: TDBIBaseOption & TDBIMinMaxValue): {
@@ -116,7 +132,9 @@ export declare class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
116
132
  name: string;
117
133
  description: string;
118
134
  maxValue: number;
135
+ max_value: number;
119
136
  minValue: number;
137
+ min_value: number;
120
138
  required: boolean;
121
139
  };
122
140
  boolean(cfg: TDBIBaseOption): {
@@ -1 +1 @@
1
- {"version":3,"file":"ChatInputOptions.d.ts","sourceRoot":"","sources":["../../../src/types/ChatInput/ChatInputOptions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChatInputOptions.d.ts","sourceRoot":"","sources":["../../../src/types/ChatInput/ChatInputOptions.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,9 @@ class DBIChatInputOptions {
16
16
  onComplete: cfg.onComplete,
17
17
  description: cfg.description,
18
18
  maxLength: cfg.maxLength,
19
+ max_length: cfg.maxLength,
19
20
  minLength: cfg.minLength,
21
+ min_length: cfg.minLength,
20
22
  required: cfg.required
21
23
  };
22
24
  }
@@ -27,7 +29,9 @@ class DBIChatInputOptions {
27
29
  choices: cfg.choices,
28
30
  description: cfg.description,
29
31
  maxLength: cfg.maxLength,
32
+ max_length: cfg.maxLength,
30
33
  minLength: cfg.minLength,
34
+ min_length: cfg.minLength,
31
35
  required: cfg.required
32
36
  };
33
37
  }
@@ -37,7 +41,9 @@ class DBIChatInputOptions {
37
41
  name: cfg.name,
38
42
  description: cfg.description,
39
43
  maxLength: cfg.maxLength,
44
+ max_length: cfg.maxLength,
40
45
  minLength: cfg.minLength,
46
+ min_length: cfg.minLength,
41
47
  required: cfg.required
42
48
  };
43
49
  }
@@ -49,7 +55,9 @@ class DBIChatInputOptions {
49
55
  onComplete: cfg.onComplete,
50
56
  description: cfg.description,
51
57
  maxValue: cfg.maxValue,
58
+ max_value: cfg.maxValue,
52
59
  minValue: cfg.minValue,
60
+ min_value: cfg.minValue,
53
61
  required: cfg.required
54
62
  };
55
63
  }
@@ -60,7 +68,9 @@ class DBIChatInputOptions {
60
68
  choices: cfg.choices,
61
69
  description: cfg.description,
62
70
  maxValue: cfg.maxValue,
71
+ max_value: cfg.maxValue,
63
72
  minValue: cfg.minValue,
73
+ min_value: cfg.minValue,
64
74
  required: cfg.required
65
75
  };
66
76
  }
@@ -70,7 +80,9 @@ class DBIChatInputOptions {
70
80
  name: cfg.name,
71
81
  description: cfg.description,
72
82
  maxValue: cfg.maxValue,
83
+ max_value: cfg.maxValue,
73
84
  minValue: cfg.minValue,
85
+ min_value: cfg.minValue,
74
86
  required: cfg.required
75
87
  };
76
88
  }
@@ -82,7 +94,9 @@ class DBIChatInputOptions {
82
94
  onComplete: cfg.onComplete,
83
95
  description: cfg.description,
84
96
  maxValue: cfg.maxValue,
97
+ max_value: cfg.maxValue,
85
98
  minValue: cfg.minValue,
99
+ min_value: cfg.minValue,
86
100
  required: cfg.required
87
101
  };
88
102
  }
@@ -93,7 +107,9 @@ class DBIChatInputOptions {
93
107
  choices: cfg.choices,
94
108
  description: cfg.description,
95
109
  maxValue: cfg.maxValue,
110
+ max_value: cfg.maxValue,
96
111
  minValue: cfg.minValue,
112
+ min_value: cfg.minValue,
97
113
  required: cfg.required
98
114
  };
99
115
  }
@@ -103,7 +119,9 @@ class DBIChatInputOptions {
103
119
  name: cfg.name,
104
120
  description: cfg.description,
105
121
  maxValue: cfg.maxValue,
122
+ max_value: cfg.maxValue,
106
123
  minValue: cfg.minValue,
124
+ min_value: cfg.minValue,
107
125
  required: cfg.required
108
126
  };
109
127
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ChatInputOptions.js","sourceRoot":"","sources":["../../../src/types/ChatInput/ChatInputOptions.ts"],"names":[],"mappings":";;;;AAAA,oEAAiC;AAgBjC,MAAa,mBAAmB;IAC9B,GAAG,CAAkB;IACrB,YAAY,GAAoB;QAC9B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IACD,kBAAkB,CAAC,GAAmI;QACpJ,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,MAAM;YACjD,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IACD,aAAa,CAAC,GAA6E;QACzF,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,MAAM;YACjD,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,GAAsC;QAC3C,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,MAAM;YACjD,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,kBAAkB,CAAC,GAAkI;QACnJ,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,MAAM;YACjD,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,GAA4E;QACxF,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,MAAM;YACjD,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,GAAqC;QAC1C,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,MAAM;YACjD,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,mBAAmB,CAAC,GAAkI;QACpJ,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,OAAO;YAClD,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,GAA4E;QACzF,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,OAAO;YAClD,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,GAAqC;QAC3C,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,OAAO;YAClD,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,GAAmB;QACzB,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,OAAO;YAClD,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,UAAU,CAAC,GAAmB;QAC5B,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,UAAU;YACrD,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,GAA6D;QACnE,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,OAAO;YAClD,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,YAAY,EAAE,GAAG,CAAC,YAAY;YAC9B,aAAa,EAAE,GAAG,CAAC,YAAY;YAC/B,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,GAAmB;QACtB,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,IAAI;YAC/C,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAA;IACH,CAAC;IAED,WAAW,CAAC,GAAmB;QAC7B,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,WAAW;YACtD,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,GAAmB;QACtB,OAAO;YACL,IAAI,EAAE,oBAAO,CAAC,4BAA4B,CAAC,IAAI;YAC/C,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;CACF;AAvKD,kDAuKC","sourcesContent":["import Discord from \"discord.js\";\r\nimport { NamespaceEnums } from \"../../../generated/namespaceData\";\r\nimport { DBI } from \"../../DBI\";\r\nimport { IDBIBaseExecuteCtx } from \"../Interaction\";\r\n\r\nexport type TDBIValueName<T> = { value: T, name: string };\r\nexport type TDBIBaseOption = { name: string, description: string, required?: boolean };\r\n\r\nexport type TDBIMinMaxLength = { maxLength?: number, minLength?: number };\r\nexport type TDBIMinMaxValue = { maxValue?: number, minValue?: number };\r\n\r\nexport interface IDBICompleteCtx<TNamespace extends NamespaceEnums, TValueType = string | number> extends IDBIBaseExecuteCtx<TNamespace> { \r\n interaction: Discord.AutocompleteInteraction;\r\n value: TValueType;\r\n}\r\n\r\nexport class DBIChatInputOptions<TNamespace extends NamespaceEnums> {\r\n dbi: DBI<TNamespace>;\r\n constructor(dbi: DBI<TNamespace>) {\r\n this.dbi = dbi;\r\n }\r\n stringAutocomplete(cfg: TDBIBaseOption & TDBIMinMaxLength & { onComplete(ctx: IDBICompleteCtx<TNamespace, string>): Promise<TDBIValueName<string>[]> }) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.String,\r\n name: cfg.name,\r\n autocomplete: true,\r\n onComplete: cfg.onComplete,\r\n description: cfg.description,\r\n maxLength: cfg.maxLength,\r\n minLength: cfg.minLength,\r\n required: cfg.required\r\n };\r\n }\r\n stringChoices(cfg: TDBIBaseOption & TDBIMinMaxLength & { choices: TDBIValueName<string>[] }) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.String,\r\n name: cfg.name,\r\n choices: cfg.choices,\r\n description: cfg.description,\r\n maxLength: cfg.maxLength,\r\n minLength: cfg.minLength,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n string(cfg: TDBIBaseOption & TDBIMinMaxLength) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.String,\r\n name: cfg.name,\r\n description: cfg.description,\r\n maxLength: cfg.maxLength,\r\n minLength: cfg.minLength,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n numberAutocomplete(cfg: TDBIBaseOption & TDBIMinMaxValue & { onComplete(ctx: IDBICompleteCtx<TNamespace, string>): Promise<TDBIValueName<number>[]> }) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Number,\r\n name: cfg.name,\r\n autocomplete: true,\r\n onComplete: cfg.onComplete,\r\n description: cfg.description,\r\n maxValue: cfg.maxValue,\r\n minValue: cfg.minValue,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n numberChoices(cfg: TDBIBaseOption & TDBIMinMaxValue & { choices: TDBIValueName<number>[] }) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Number,\r\n name: cfg.name,\r\n choices: cfg.choices,\r\n description: cfg.description,\r\n maxValue: cfg.maxValue,\r\n minValue: cfg.minValue,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n number(cfg: TDBIBaseOption & TDBIMinMaxValue) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Number,\r\n name: cfg.name,\r\n description: cfg.description,\r\n maxValue: cfg.maxValue,\r\n minValue: cfg.minValue,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n integerAutocomplete(cfg: TDBIBaseOption & TDBIMinMaxValue & { onComplete(ctx: IDBICompleteCtx<TNamespace, string>): Promise<TDBIValueName<number>[]> }) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Integer,\r\n name: cfg.name,\r\n autocomplete: true,\r\n onComplete: cfg.onComplete,\r\n description: cfg.description,\r\n maxValue: cfg.maxValue,\r\n minValue: cfg.minValue,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n integerChoices(cfg: TDBIBaseOption & TDBIMinMaxValue & { choices: TDBIValueName<number>[] }) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Integer,\r\n name: cfg.name,\r\n choices: cfg.choices,\r\n description: cfg.description,\r\n maxValue: cfg.maxValue,\r\n minValue: cfg.minValue,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n integer(cfg: TDBIBaseOption & TDBIMinMaxValue) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Integer,\r\n name: cfg.name,\r\n description: cfg.description,\r\n maxValue: cfg.maxValue,\r\n minValue: cfg.minValue,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n boolean(cfg: TDBIBaseOption) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Boolean,\r\n name: cfg.name,\r\n description: cfg.description,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n attachment(cfg: TDBIBaseOption) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Attachment,\r\n name: cfg.name,\r\n description: cfg.description,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n channel(cfg: TDBIBaseOption & { channelTypes: Discord.ChannelType[] }) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Channel,\r\n name: cfg.name,\r\n description: cfg.description,\r\n channelTypes: cfg.channelTypes,\r\n channel_types: cfg.channelTypes,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n role(cfg: TDBIBaseOption) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Role,\r\n name: cfg.name,\r\n description: cfg.description,\r\n required: cfg.required\r\n }\r\n }\r\n\r\n mentionable(cfg: TDBIBaseOption) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Mentionable,\r\n name: cfg.name,\r\n description: cfg.description,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n user(cfg: TDBIBaseOption) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.User,\r\n name: cfg.name,\r\n description: cfg.description,\r\n required: cfg.required\r\n };\r\n }\r\n}"]}
1
+ {"version":3,"file":"ChatInputOptions.js","sourceRoot":"","sources":["../../../src/types/ChatInput/ChatInputOptions.ts"],"names":[],"mappings":"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","sourcesContent":["import Discord from \"discord.js\";\r\nimport { NamespaceEnums } from \"../../../generated/namespaceData\";\r\nimport { DBI } from \"../../DBI\";\r\nimport { IDBIBaseExecuteCtx } from \"../Interaction\";\r\n\r\nexport type TDBIValueName<T> = { value: T, name: string };\r\nexport type TDBIBaseOption = { name: string, description: string, required?: boolean };\r\n\r\nexport type TDBIMinMaxLength = { maxLength?: number, minLength?: number };\r\nexport type TDBIMinMaxValue = { maxValue?: number, minValue?: number };\r\n\r\nexport interface IDBICompleteCtx<TNamespace extends NamespaceEnums, TValueType = string | number> extends IDBIBaseExecuteCtx<TNamespace> { \r\n interaction: Discord.AutocompleteInteraction;\r\n value: TValueType;\r\n}\r\n\r\nexport class DBIChatInputOptions<TNamespace extends NamespaceEnums> {\r\n dbi: DBI<TNamespace>;\r\n constructor(dbi: DBI<TNamespace>) {\r\n this.dbi = dbi;\r\n }\r\n stringAutocomplete(cfg: TDBIBaseOption & TDBIMinMaxLength & { onComplete(ctx: IDBICompleteCtx<TNamespace, string>): Promise<TDBIValueName<string>[]> }) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.String,\r\n name: cfg.name,\r\n autocomplete: true,\r\n onComplete: cfg.onComplete,\r\n description: cfg.description,\r\n maxLength: cfg.maxLength,\r\n max_length: cfg.maxLength,\r\n minLength: cfg.minLength,\r\n min_length: cfg.minLength,\r\n required: cfg.required\r\n };\r\n }\r\n stringChoices(cfg: TDBIBaseOption & TDBIMinMaxLength & { choices: TDBIValueName<string>[] }) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.String,\r\n name: cfg.name,\r\n choices: cfg.choices,\r\n description: cfg.description,\r\n maxLength: cfg.maxLength,\r\n max_length: cfg.maxLength,\r\n minLength: cfg.minLength,\r\n min_length: cfg.minLength,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n string(cfg: TDBIBaseOption & TDBIMinMaxLength) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.String,\r\n name: cfg.name,\r\n description: cfg.description,\r\n maxLength: cfg.maxLength,\r\n max_length: cfg.maxLength,\r\n minLength: cfg.minLength,\r\n min_length: cfg.minLength,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n numberAutocomplete(cfg: TDBIBaseOption & TDBIMinMaxValue & { onComplete(ctx: IDBICompleteCtx<TNamespace, string>): Promise<TDBIValueName<number>[]> }) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Number,\r\n name: cfg.name,\r\n autocomplete: true,\r\n onComplete: cfg.onComplete,\r\n description: cfg.description,\r\n maxValue: cfg.maxValue,\r\n max_value: cfg.maxValue,\r\n minValue: cfg.minValue,\r\n min_value: cfg.minValue,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n numberChoices(cfg: TDBIBaseOption & TDBIMinMaxValue & { choices: TDBIValueName<number>[] }) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Number,\r\n name: cfg.name,\r\n choices: cfg.choices,\r\n description: cfg.description,\r\n maxValue: cfg.maxValue,\r\n max_value: cfg.maxValue,\r\n minValue: cfg.minValue,\r\n min_value: cfg.minValue,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n number(cfg: TDBIBaseOption & TDBIMinMaxValue) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Number,\r\n name: cfg.name,\r\n description: cfg.description,\r\n maxValue: cfg.maxValue,\r\n max_value: cfg.maxValue,\r\n minValue: cfg.minValue,\r\n min_value: cfg.minValue,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n integerAutocomplete(cfg: TDBIBaseOption & TDBIMinMaxValue & { onComplete(ctx: IDBICompleteCtx<TNamespace, string>): Promise<TDBIValueName<number>[]> }) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Integer,\r\n name: cfg.name,\r\n autocomplete: true,\r\n onComplete: cfg.onComplete,\r\n description: cfg.description,\r\n maxValue: cfg.maxValue,\r\n max_value: cfg.maxValue,\r\n minValue: cfg.minValue,\r\n min_value: cfg.minValue,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n integerChoices(cfg: TDBIBaseOption & TDBIMinMaxValue & { choices: TDBIValueName<number>[] }) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Integer,\r\n name: cfg.name,\r\n choices: cfg.choices,\r\n description: cfg.description,\r\n maxValue: cfg.maxValue,\r\n max_value: cfg.maxValue,\r\n minValue: cfg.minValue,\r\n min_value: cfg.minValue,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n integer(cfg: TDBIBaseOption & TDBIMinMaxValue) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Integer,\r\n name: cfg.name,\r\n description: cfg.description,\r\n maxValue: cfg.maxValue,\r\n max_value: cfg.maxValue,\r\n minValue: cfg.minValue,\r\n min_value: cfg.minValue,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n boolean(cfg: TDBIBaseOption) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Boolean,\r\n name: cfg.name,\r\n description: cfg.description,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n attachment(cfg: TDBIBaseOption) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Attachment,\r\n name: cfg.name,\r\n description: cfg.description,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n channel(cfg: TDBIBaseOption & { channelTypes: Discord.ChannelType[] }) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Channel,\r\n name: cfg.name,\r\n description: cfg.description,\r\n channelTypes: cfg.channelTypes,\r\n channel_types: cfg.channelTypes,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n role(cfg: TDBIBaseOption) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Role,\r\n name: cfg.name,\r\n description: cfg.description,\r\n required: cfg.required\r\n }\r\n }\r\n\r\n mentionable(cfg: TDBIBaseOption) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.Mentionable,\r\n name: cfg.name,\r\n description: cfg.description,\r\n required: cfg.required\r\n };\r\n }\r\n\r\n user(cfg: TDBIBaseOption) {\r\n return {\r\n type: Discord.ApplicationCommandOptionType.User,\r\n name: cfg.name,\r\n description: cfg.description,\r\n required: cfg.required\r\n };\r\n }\r\n}"]}
package/package.json CHANGED
@@ -9,7 +9,7 @@
9
9
  "stuffs": "^0.1.21"
10
10
  },
11
11
  "name": "@mostfeatured/dbi",
12
- "version": "0.0.56",
12
+ "version": "0.0.58",
13
13
  "main": "dist/index.js",
14
14
  "type": "commonjs",
15
15
  "private": false,
@@ -106,6 +106,7 @@ export function hookInteractionListeners(dbi: DBI<NamespaceEnums>): () => any {
106
106
  }
107
107
 
108
108
  let arg = {
109
+ // @ts-ignore
109
110
  dbi,
110
111
  // @ts-ignore
111
112
  interaction: inter as any,
@@ -113,22 +114,28 @@ export function hookInteractionListeners(dbi: DBI<NamespaceEnums>): () => any {
113
114
  dbiInteraction: dbiInter,
114
115
  // @ts-ignore
115
116
  locale,
117
+ // @ts-ignore
116
118
  setRateLimit,
117
119
  // @ts-ignore
118
120
  data,
121
+ // @ts-ignore
119
122
  other
120
123
  };
121
124
 
122
125
  if (dbi.config.strict) {
126
+ // @ts-ignore
123
127
  await dbiInter.onExecute(arg);
124
128
  } else {
125
129
  try {
130
+ // @ts-ignore
126
131
  await dbiInter.onExecute(arg);
127
132
  } catch (error) {
133
+ // @ts-ignore
128
134
  await dbi.events.trigger("interactionError", Object.assign(arg, { error }));
129
135
  }
130
136
  }
131
137
 
138
+ // @ts-ignore
132
139
  dbi.events.trigger("afterInteraction", { dbi, interaction: inter, dbiInteraction: dbiInter, locale, setRateLimit, data, other });
133
140
  }
134
141
 
@@ -27,7 +27,9 @@ export class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
27
27
  onComplete: cfg.onComplete,
28
28
  description: cfg.description,
29
29
  maxLength: cfg.maxLength,
30
+ max_length: cfg.maxLength,
30
31
  minLength: cfg.minLength,
32
+ min_length: cfg.minLength,
31
33
  required: cfg.required
32
34
  };
33
35
  }
@@ -38,7 +40,9 @@ export class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
38
40
  choices: cfg.choices,
39
41
  description: cfg.description,
40
42
  maxLength: cfg.maxLength,
43
+ max_length: cfg.maxLength,
41
44
  minLength: cfg.minLength,
45
+ min_length: cfg.minLength,
42
46
  required: cfg.required
43
47
  };
44
48
  }
@@ -49,7 +53,9 @@ export class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
49
53
  name: cfg.name,
50
54
  description: cfg.description,
51
55
  maxLength: cfg.maxLength,
56
+ max_length: cfg.maxLength,
52
57
  minLength: cfg.minLength,
58
+ min_length: cfg.minLength,
53
59
  required: cfg.required
54
60
  };
55
61
  }
@@ -62,7 +68,9 @@ export class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
62
68
  onComplete: cfg.onComplete,
63
69
  description: cfg.description,
64
70
  maxValue: cfg.maxValue,
71
+ max_value: cfg.maxValue,
65
72
  minValue: cfg.minValue,
73
+ min_value: cfg.minValue,
66
74
  required: cfg.required
67
75
  };
68
76
  }
@@ -74,7 +82,9 @@ export class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
74
82
  choices: cfg.choices,
75
83
  description: cfg.description,
76
84
  maxValue: cfg.maxValue,
85
+ max_value: cfg.maxValue,
77
86
  minValue: cfg.minValue,
87
+ min_value: cfg.minValue,
78
88
  required: cfg.required
79
89
  };
80
90
  }
@@ -85,7 +95,9 @@ export class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
85
95
  name: cfg.name,
86
96
  description: cfg.description,
87
97
  maxValue: cfg.maxValue,
98
+ max_value: cfg.maxValue,
88
99
  minValue: cfg.minValue,
100
+ min_value: cfg.minValue,
89
101
  required: cfg.required
90
102
  };
91
103
  }
@@ -98,7 +110,9 @@ export class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
98
110
  onComplete: cfg.onComplete,
99
111
  description: cfg.description,
100
112
  maxValue: cfg.maxValue,
113
+ max_value: cfg.maxValue,
101
114
  minValue: cfg.minValue,
115
+ min_value: cfg.minValue,
102
116
  required: cfg.required
103
117
  };
104
118
  }
@@ -110,7 +124,9 @@ export class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
110
124
  choices: cfg.choices,
111
125
  description: cfg.description,
112
126
  maxValue: cfg.maxValue,
127
+ max_value: cfg.maxValue,
113
128
  minValue: cfg.minValue,
129
+ min_value: cfg.minValue,
114
130
  required: cfg.required
115
131
  };
116
132
  }
@@ -121,7 +137,9 @@ export class DBIChatInputOptions<TNamespace extends NamespaceEnums> {
121
137
  name: cfg.name,
122
138
  description: cfg.description,
123
139
  maxValue: cfg.maxValue,
140
+ max_value: cfg.maxValue,
124
141
  minValue: cfg.minValue,
142
+ min_value: cfg.minValue,
125
143
  required: cfg.required
126
144
  };
127
145
  }