@wabot-dev/framework 0.1.0-beta.3 → 0.1.0-beta.5

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.
@@ -0,0 +1,49 @@
1
+ import { __decorate, __metadata } from 'tslib';
2
+ import { singleton } from '../../injection/index.js';
3
+ import { WhatsApp } from './WhatsApp.js';
4
+ import { WabotEnv } from '../../env/WabotEnv.js';
5
+
6
+ let EnvWhatsAppRepository = class EnvWhatsAppRepository {
7
+ env;
8
+ constructor(env) {
9
+ this.env = env;
10
+ }
11
+ async findBySlug(slug) {
12
+ const whatsApp = this.getFromEnvVars();
13
+ if (whatsApp.getSlug() !== slug) {
14
+ throw new Error(`Not found WhatsApp configuration in env variables for the required slug '${slug}'`);
15
+ }
16
+ return whatsApp;
17
+ }
18
+ async findByBusinessNumber(number) {
19
+ const whatsApp = this.getFromEnvVars();
20
+ if (!whatsApp.getBussinessNumber(number)) {
21
+ throw new Error(`Not found WhatsApp configuration in env variables for the required number '${number}'`);
22
+ }
23
+ return whatsApp;
24
+ }
25
+ getFromEnvVars() {
26
+ const whatsApp = new WhatsApp({
27
+ verifyToken: this.env.requireString('WHATSAPP_HOOK_TOKEN'),
28
+ slug: this.env.requireString('WHATSAPP_HOOK_SLUG'),
29
+ appSecret: this.env.requireString('WHATSAPP_APP_SECRET'),
30
+ businessAccount: {
31
+ id: this.env.requireString('WHATSAPP_ACCOUNT_ID'),
32
+ },
33
+ accessToken: this.env.requireString('WHATSAPP_ACCESS_TOKEN'),
34
+ businessNumbers: [
35
+ {
36
+ id: this.env.requireString('WHATSAPP_BUSINESS_NUMBER_ID'),
37
+ number: this.env.requireString('WHATSAPP_BUSINESS_NUMBER'),
38
+ },
39
+ ],
40
+ });
41
+ return whatsApp;
42
+ }
43
+ };
44
+ EnvWhatsAppRepository = __decorate([
45
+ singleton(),
46
+ __metadata("design:paramtypes", [WabotEnv])
47
+ ], EnvWhatsAppRepository);
48
+
49
+ export { EnvWhatsAppRepository };
@@ -0,0 +1,41 @@
1
+ import { __decorate, __metadata } from 'tslib';
2
+ import { Pool } from 'pg';
3
+ import { WhatsApp } from './WhatsApp.js';
4
+ import { singleton } from '../../injection/index.js';
5
+ import { PgCrudRepository } from '../../repository/pg/PgCrudRepository.js';
6
+
7
+ let PgWhatsAppRepository = class PgWhatsAppRepository extends PgCrudRepository {
8
+ constructor(pool) {
9
+ super(pool, {
10
+ table: 'whatsapp',
11
+ constructor: WhatsApp,
12
+ schema: 'wabot',
13
+ });
14
+ }
15
+ async findBySlug(slug) {
16
+ const sql = `
17
+ SELECT ${this.columns}
18
+ FROM ${this.table}
19
+ WHERE data @> $1
20
+ LIMIT 1
21
+ `;
22
+ const items = await this.query(sql, [JSON.stringify({ slug })]);
23
+ return items.at(0) ?? null;
24
+ }
25
+ async findByBusinessNumber(number) {
26
+ const sql = `
27
+ SELECT ${this.columns}
28
+ FROM ${this.table}
29
+ WHERE data->'businessNumbers' @> $1
30
+ LIMIT 1
31
+ `;
32
+ const items = await this.query(sql, [JSON.stringify([{ number }])]);
33
+ return items.at(0) ?? null;
34
+ }
35
+ };
36
+ PgWhatsAppRepository = __decorate([
37
+ singleton(),
38
+ __metadata("design:paramtypes", [Pool])
39
+ ], PgWhatsAppRepository);
40
+
41
+ export { PgWhatsAppRepository };
@@ -6,6 +6,9 @@ class WhatsApp extends Persistent {
6
6
  getVerifyToken() {
7
7
  return this.data.verifyToken;
8
8
  }
9
+ getSlug() {
10
+ return this.data.slug;
11
+ }
9
12
  getBusinessAccount() {
10
13
  return this.data.businessAccount;
11
14
  }
@@ -1,41 +1,10 @@
1
- import { __decorate, __metadata } from 'tslib';
2
- import { Pool } from 'pg';
3
- import { WhatsApp } from './WhatsApp.js';
4
- import { singleton } from '../../injection/index.js';
5
- import { PgCrudRepository } from '../../repository/pg/PgCrudRepository.js';
6
-
7
- let WhatsAppRepository = class WhatsAppRepository extends PgCrudRepository {
8
- constructor(pool) {
9
- super(pool, {
10
- table: 'whatsapp',
11
- constructor: WhatsApp,
12
- schema: 'wabot',
13
- });
14
- }
15
- async findBySlug(slug) {
16
- const sql = `
17
- SELECT ${this.columns}
18
- FROM ${this.table}
19
- WHERE data @> $1
20
- LIMIT 1
21
- `;
22
- const items = await this.query(sql, [JSON.stringify({ slug })]);
23
- return items.at(0) ?? null;
1
+ class WhatsAppRepository {
2
+ findBySlug(slug) {
3
+ throw new Error('Method not implemented.');
24
4
  }
25
- async findByBusinessNumber(number) {
26
- const sql = `
27
- SELECT ${this.columns}
28
- FROM ${this.table}
29
- WHERE data->'businessNumbers' @> $1
30
- LIMIT 1
31
- `;
32
- const items = await this.query(sql, [JSON.stringify([{ number }])]);
33
- return items.at(0) ?? null;
5
+ findByBusinessNumber(number) {
6
+ throw new Error('Method not implemented.');
34
7
  }
35
- };
36
- WhatsAppRepository = __decorate([
37
- singleton(),
38
- __metadata("design:paramtypes", [Pool])
39
- ], WhatsAppRepository);
8
+ }
40
9
 
41
10
  export { WhatsAppRepository };
@@ -55,11 +55,9 @@ class WhatsAppSender {
55
55
  if (!template) {
56
56
  throw new Error(`WhatsAppTemplate with name ${request.templateMessage.templateName} and language ${request.templateMessage.languageCode} not found`);
57
57
  }
58
+ const components = template.components.filter((x) => x.text != null).map((x) => x.text).join('\n');
58
59
  return {
59
- text: template.components
60
- .filter((x) => x.text != null)
61
- .map((x) => x.text)
62
- .join('\n'),
60
+ text: this.replaceTemplateParameters(components, request.templateMessage.parameters),
63
61
  senderName: request.senderName,
64
62
  };
65
63
  }
@@ -77,6 +75,22 @@ class WhatsAppSender {
77
75
  });
78
76
  await chatMemory.create(chatItem);
79
77
  }
78
+ replaceTemplateParameters(template, data) {
79
+ let result = template;
80
+ data.forEach(param => {
81
+ if (param.type === 'text' && param.parameter_name) {
82
+ const tag = `{{${param.parameter_name}}}`;
83
+ result = result.split(tag).join(param.text);
84
+ }
85
+ });
86
+ data.forEach((param, index) => {
87
+ if (param.type === 'text') {
88
+ const tag = `{{${index + 1}}}`;
89
+ result = result.split(tag).join(param.text);
90
+ }
91
+ });
92
+ return result;
93
+ }
80
94
  }
81
95
 
82
96
  export { WhatsAppSender };
@@ -12,6 +12,12 @@ let WabotEnv = class WabotEnv {
12
12
  isProduction() {
13
13
  return this.envType === 'production';
14
14
  }
15
+ requireString(varName) {
16
+ const value = process.env[varName];
17
+ if (!value)
18
+ throw new Error(`Env Variable ${varName} is required`);
19
+ return value;
20
+ }
15
21
  };
16
22
  WabotEnv = __decorate([
17
23
  singleton(),
@@ -4,8 +4,8 @@ import InterceptionOptions from 'tsyringe/dist/typings/types/interceptor-options
4
4
  import { Server } from 'http';
5
5
  import { Express } from 'express';
6
6
  import { Server as Server$1 } from 'socket.io';
7
- import { Pool } from 'pg';
8
7
  import { Socket } from 'socket.io-client';
8
+ import { Pool } from 'pg';
9
9
  import * as tsyringe from 'tsyringe';
10
10
  import { DependencyContainer as DependencyContainer$1 } from 'tsyringe';
11
11
  export { DependencyContainer } from 'tsyringe';
@@ -536,6 +536,7 @@ declare function whatsapp(config: IWhatsappChannelConfig): (target: object, prop
536
536
  type IWhatsAppTemplateParameter = {
537
537
  type: 'text';
538
538
  text: string;
539
+ parameter_name?: string;
539
540
  } | {
540
541
  type: 'currency';
541
542
  currency: {
@@ -624,6 +625,7 @@ interface IWhatsAppData extends IPersistentData {
624
625
  }
625
626
  declare class WhatsApp extends Persistent<IWhatsAppData> {
626
627
  getVerifyToken(): string;
628
+ getSlug(): string;
627
629
  getBusinessAccount(): IWhatsAppBusinessAccount;
628
630
  getAppSecret(): string;
629
631
  getBusinessNumbers(): IWhatsAppBusinessNumber[];
@@ -659,66 +661,12 @@ declare abstract class WhatsAppReceiver {
659
661
  private emmitMessage;
660
662
  }
661
663
 
662
- interface ICrudRepository<T> {
663
- find(id: string): Promise<T | null>;
664
- findAll(id: string): Promise<T[]>;
665
- create(item: T): Promise<void>;
666
- update(item: T): Promise<void>;
667
- discard(item: T): Promise<void>;
668
- }
669
-
670
- type IPgRepositoryConfig<P extends Persistent> = {
671
- schema?: string;
672
- table: string;
673
- constructor: IConstructor<P>;
674
- add?: {
675
- columns: {
676
- [column: string]: {
677
- type: string;
678
- value: (item: P) => boolean | number | string | null | Date;
679
- };
680
- };
681
- };
682
- };
683
-
684
- declare class PgRepositoryBase<P extends Persistent> {
685
- protected pool: Pool;
686
- protected config: IPgRepositoryConfig<any>;
687
- private tableIsCreated;
688
- schema: string;
689
- table: string;
690
- columnsList: string[];
691
- columnsAndTypes: string;
692
- columns: string;
693
- vars: string;
694
- updates: string;
695
- addColumns: {
696
- [columns: string]: {
697
- type: string;
698
- value: (item: P) => number | boolean | string | null | Date;
699
- };
700
- };
701
- constructor(pool: Pool, config: IPgRepositoryConfig<any>);
702
- values(item: P): (string | number | boolean | Date | null)[];
703
- protected exec(sql: string, values: any[]): Promise<void>;
704
- protected query(sql: string, values: any[]): Promise<any[]>;
705
- protected connect(): Promise<Pool>;
706
- protected ensureTable(): Promise<void>;
707
- protected ensureColumns(): Promise<void>;
708
- }
709
-
710
- declare class PgCrudRepository<P extends Persistent> extends PgRepositoryBase<P> implements ICrudRepository<P> {
711
- protected readonly config: IPgRepositoryConfig<P>;
712
- constructor(pool: Pool, config: IPgRepositoryConfig<P>);
713
- find(id: string): Promise<P | null>;
714
- findAll(): Promise<P[]>;
715
- create(item: P): Promise<void>;
716
- update(item: P): Promise<void>;
717
- discard(item: P): Promise<void>;
664
+ interface IWhatsAppRepository {
665
+ findBySlug(slug: string): Promise<WhatsApp | null>;
666
+ findByBusinessNumber(number: string): Promise<WhatsApp | null>;
718
667
  }
719
668
 
720
- declare class WhatsAppRepository extends PgCrudRepository<WhatsApp> {
721
- constructor(pool: Pool);
669
+ declare class WhatsAppRepository implements IWhatsAppRepository {
722
670
  findBySlug(slug: string): Promise<WhatsApp | null>;
723
671
  findByBusinessNumber(number: string): Promise<WhatsApp | null>;
724
672
  }
@@ -771,6 +719,7 @@ declare abstract class WhatsAppSender {
771
719
  getWhatsAppTemplate(request: IGetWhatsAppTemplateRequest): Promise<IWhatsAppTemplate | null>;
772
720
  protected resolveTemplateToChatMessage(request: ISendWhatsAppTemplateRequest): Promise<IChatMessage>;
773
721
  protected writePrivateChatMemory(message: IChatMessage, to: string): Promise<void>;
722
+ private replaceTemplateParameters;
774
723
  }
775
724
 
776
725
  declare class WhatsAppChannel implements IChatChannel {
@@ -825,6 +774,87 @@ declare class WhatsAppSenderByCloudApi extends WhatsAppSender {
825
774
  handleGetWhatsAppTemplate(request: IGetWhatsAppTemplateRequest): Promise<IWhatsAppTemplate | null>;
826
775
  }
827
776
 
777
+ interface ICrudRepository<T> {
778
+ find(id: string): Promise<T | null>;
779
+ findAll(id: string): Promise<T[]>;
780
+ create(item: T): Promise<void>;
781
+ update(item: T): Promise<void>;
782
+ discard(item: T): Promise<void>;
783
+ }
784
+
785
+ type IPgRepositoryConfig<P extends Persistent> = {
786
+ schema?: string;
787
+ table: string;
788
+ constructor: IConstructor<P>;
789
+ add?: {
790
+ columns: {
791
+ [column: string]: {
792
+ type: string;
793
+ value: (item: P) => boolean | number | string | null | Date;
794
+ };
795
+ };
796
+ };
797
+ };
798
+
799
+ declare class PgRepositoryBase<P extends Persistent> {
800
+ protected pool: Pool;
801
+ protected config: IPgRepositoryConfig<any>;
802
+ private tableIsCreated;
803
+ schema: string;
804
+ table: string;
805
+ columnsList: string[];
806
+ columnsAndTypes: string;
807
+ columns: string;
808
+ vars: string;
809
+ updates: string;
810
+ addColumns: {
811
+ [columns: string]: {
812
+ type: string;
813
+ value: (item: P) => number | boolean | string | null | Date;
814
+ };
815
+ };
816
+ constructor(pool: Pool, config: IPgRepositoryConfig<any>);
817
+ values(item: P): (string | number | boolean | Date | null)[];
818
+ protected exec(sql: string, values: any[]): Promise<void>;
819
+ protected query(sql: string, values: any[]): Promise<any[]>;
820
+ protected connect(): Promise<Pool>;
821
+ protected ensureTable(): Promise<void>;
822
+ protected ensureColumns(): Promise<void>;
823
+ }
824
+
825
+ declare class PgCrudRepository<P extends Persistent> extends PgRepositoryBase<P> implements ICrudRepository<P> {
826
+ protected readonly config: IPgRepositoryConfig<P>;
827
+ constructor(pool: Pool, config: IPgRepositoryConfig<P>);
828
+ find(id: string): Promise<P | null>;
829
+ findAll(): Promise<P[]>;
830
+ create(item: P): Promise<void>;
831
+ update(item: P): Promise<void>;
832
+ discard(item: P): Promise<void>;
833
+ }
834
+
835
+ declare class PgWhatsAppRepository extends PgCrudRepository<WhatsApp> implements IWhatsAppRepository {
836
+ constructor(pool: Pool);
837
+ findBySlug(slug: string): Promise<WhatsApp | null>;
838
+ findByBusinessNumber(number: string): Promise<WhatsApp | null>;
839
+ }
840
+
841
+ type IWabotEnvType = 'development' | 'staging' | 'testing' | 'production';
842
+ declare class WabotEnv {
843
+ private envType;
844
+ constructor();
845
+ isDevelopment(): boolean;
846
+ isProduction(): boolean;
847
+ requireString(varName: string): string;
848
+ }
849
+
850
+ declare class EnvWhatsAppRepository implements IWhatsAppRepository {
851
+ private env;
852
+ constructor(env: WabotEnv);
853
+ findBySlug(slug: string): Promise<WhatsApp | null>;
854
+ findByBusinessNumber(number: string): Promise<WhatsApp | null>;
855
+ private getFromEnvVars;
856
+ }
857
+
828
858
  declare function prepareChatContainer(container: DependencyContainer$1, context: IMessageContext, mindsetCtor?: IConstructor<IMindset>): Promise<DependencyContainer$1>;
829
859
 
830
860
  interface IrunChannelProps {
@@ -941,12 +971,4 @@ declare class RamChatRepository implements IChatRepository {
941
971
  private getMemory;
942
972
  }
943
973
 
944
- type IWabotEnvType = 'development' | 'staging' | 'testing' | 'production';
945
- declare class WabotEnv {
946
- private envType;
947
- constructor();
948
- isDevelopment(): boolean;
949
- isProduction(): boolean;
950
- }
951
-
952
- export { AuthenticationModule, Chat, ChatBot, ChatBotAdapter, ChatBotMetadataStore, ChatItem, ChatMemory, ChatRepository, ChatResolver, CmdChannel, Container, ControllerMetadataStore, DeepSeekChatBotAdapter, EmailService, ExpressProvider, HttpServerProvider, type IChannelMetadata, type IChatBot, type IChatBotAdapter, type IChatBotMetadata, type IChatChannel, type IChatConnection, type IChatControllerMetadata, type IChatData, type IChatFunctionCall, type IChatItemData, type IChatItemType, type IChatMemory, type IChatMessage, type IChatRepository, type IChatType, type IConnectionChatMessage, type IConstructor, type ICrudRepository, type IEmailService, type IGetWhatsAppTemplateRequest, type IListenWhatsAppMessageRequest, type IMessageContext, type IMessageMetadata, type IMindset, type IMindsetDecoration, type IMindsetFunctionConfig, type IMindsetFunctionDecoration, type IMindsetFunctionMetadata, type IMindsetFunctionParamMetadata, type IMindsetIdentity, type IMindsetMetadata, type IMindsetModuleConfig, type IMindsetModuleDecoration, type IMindsetModuleMetadata, type IOtpService, type IParamConfig, type IParamDecoration, type IPersistentData, type IPgRepositoryConfig, type IReceivedMessage, type IReceivedMessageItem, type IReversibleMapper, type ISendEmailRequest, type ISendWhatsAppRequest, type ISendWhatsAppTemplateRequest, type IServerConfig, type IServerProvider, type ISocketChannelConfig, type ISocketChannelReceivedMessage, type ISystemFunctionCallItem, type ISystemMessageItem, type ITelegramChannelConfig, type IUserConnection, type IUserData, type IUserRepository, type IWabotEnvType, type IWhatsAppBusinessAccount, type IWhatsAppBusinessNumber, type IWhatsAppContact, type IWhatsAppData, type IWhatsAppMessage, type IWhatsAppMessageListener, type IWhatsAppSenderOptions, type IWhatsAppTemplateMessage, type IWhatsAppTemplateParameter, type IWhatsAppWebhookPayload, type IWhatsappChannelConfig, type IchatControllerConfig, type IrunChannelProps, Logger, MINDSET_DECORATION_MINDSET, MINDSET_FUNCTION_DECORATION_FUNCTION, MINDSET_MODULE_DECORATION_MODULE, MessageContext, Mindset, MindsetMetadataStore, MindsetOperator, OpenaiChatBotAdapter, OtpService, PARAM_DECORATION_IS_OPTIONAL, PARAM_DECORATION_PARAM, Persistent, PgChatMemory, PgChatRepository, PgCrudRepository, PgRepositoryBase, PgUserRepository, RamChatMemory, RamChatRepository, RamUserRepository, RegisterUserModule, RegisterUserWithEmailRequest, SendOneTimePasswordRequest, SocketChannel, SocketChannelConfig, SocketServerProvider, TelegramChannel, TelegramChannelConfig, User, UserRepository, UserResolver, ValidateOneTimePasswordRequest, WabotEnv, WhatsApp, WhatsAppChannel, WhatsAppReceiver, WhatsAppReceiverByDevConnection, WhatsAppReceiverByWebHook, WhatsAppRepository, WhatsAppSender, WhatsAppSenderByCloudApi, WhatsAppSenderByDevConnection, WhatsappChannelConfig, chatBot, chatController, cmd, container, inject, injectable, isOptional, mindset, mindsetFunction, mindsetModule, param, prepareChatContainer, runChannel, runServer, singleton, socket, telegram, whatsapp };
974
+ export { AuthenticationModule, Chat, ChatBot, ChatBotAdapter, ChatBotMetadataStore, ChatItem, ChatMemory, ChatRepository, ChatResolver, CmdChannel, Container, ControllerMetadataStore, DeepSeekChatBotAdapter, EmailService, EnvWhatsAppRepository, ExpressProvider, HttpServerProvider, type IChannelMetadata, type IChatBot, type IChatBotAdapter, type IChatBotMetadata, type IChatChannel, type IChatConnection, type IChatControllerMetadata, type IChatData, type IChatFunctionCall, type IChatItemData, type IChatItemType, type IChatMemory, type IChatMessage, type IChatRepository, type IChatType, type IConnectionChatMessage, type IConstructor, type ICrudRepository, type IEmailService, type IGetWhatsAppTemplateRequest, type IListenWhatsAppMessageRequest, type IMessageContext, type IMessageMetadata, type IMindset, type IMindsetDecoration, type IMindsetFunctionConfig, type IMindsetFunctionDecoration, type IMindsetFunctionMetadata, type IMindsetFunctionParamMetadata, type IMindsetIdentity, type IMindsetMetadata, type IMindsetModuleConfig, type IMindsetModuleDecoration, type IMindsetModuleMetadata, type IOtpService, type IParamConfig, type IParamDecoration, type IPersistentData, type IPgRepositoryConfig, type IReceivedMessage, type IReceivedMessageItem, type IReversibleMapper, type ISendEmailRequest, type ISendWhatsAppRequest, type ISendWhatsAppTemplateRequest, type IServerConfig, type IServerProvider, type ISocketChannelConfig, type ISocketChannelReceivedMessage, type ISystemFunctionCallItem, type ISystemMessageItem, type ITelegramChannelConfig, type IUserConnection, type IUserData, type IUserRepository, type IWabotEnvType, type IWhatsAppBusinessAccount, type IWhatsAppBusinessNumber, type IWhatsAppContact, type IWhatsAppData, type IWhatsAppMessage, type IWhatsAppMessageListener, type IWhatsAppRepository, type IWhatsAppSenderOptions, type IWhatsAppTemplateMessage, type IWhatsAppTemplateParameter, type IWhatsAppWebhookPayload, type IWhatsappChannelConfig, type IchatControllerConfig, type IrunChannelProps, Logger, MINDSET_DECORATION_MINDSET, MINDSET_FUNCTION_DECORATION_FUNCTION, MINDSET_MODULE_DECORATION_MODULE, MessageContext, Mindset, MindsetMetadataStore, MindsetOperator, OpenaiChatBotAdapter, OtpService, PARAM_DECORATION_IS_OPTIONAL, PARAM_DECORATION_PARAM, Persistent, PgChatMemory, PgChatRepository, PgCrudRepository, PgRepositoryBase, PgUserRepository, PgWhatsAppRepository, RamChatMemory, RamChatRepository, RamUserRepository, RegisterUserModule, RegisterUserWithEmailRequest, SendOneTimePasswordRequest, SocketChannel, SocketChannelConfig, SocketServerProvider, TelegramChannel, TelegramChannelConfig, User, UserRepository, UserResolver, ValidateOneTimePasswordRequest, WabotEnv, WhatsApp, WhatsAppChannel, WhatsAppReceiver, WhatsAppReceiverByDevConnection, WhatsAppReceiverByWebHook, WhatsAppRepository, WhatsAppSender, WhatsAppSenderByCloudApi, WhatsAppSenderByDevConnection, WhatsappChannelConfig, chatBot, chatController, cmd, container, inject, injectable, isOptional, mindset, mindsetFunction, mindsetModule, param, prepareChatContainer, runChannel, runServer, singleton, socket, telegram, whatsapp };
package/dist/src/index.js CHANGED
@@ -22,6 +22,8 @@ export { WhatsAppRepository } from './channels/whatsapp/WhatsAppRepository.js';
22
22
  export { WhatsAppSender } from './channels/whatsapp/WhatsAppSender.js';
23
23
  export { WhatsAppSenderByDevConnection } from './channels/whatsapp/WhatsAppSenderByDevConnection.js';
24
24
  export { WhatsAppSenderByCloudApi } from './channels/whatsapp/WhatsAppSenderByCloudApi.js';
25
+ export { PgWhatsAppRepository } from './channels/whatsapp/PgWhatsAppRepository.js';
26
+ export { EnvWhatsAppRepository } from './channels/whatsapp/EnvWhatsAppRepository.js';
25
27
  export { chatBot } from './chatbot/metadata/@chatBot.js';
26
28
  export { ChatBotMetadataStore } from './chatbot/metadata/ChatBotMetadataStore.js';
27
29
  export { ChatBot } from './chatbot/ChatBot.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wabot-dev/framework",
3
- "version": "0.1.0-beta.3",
3
+ "version": "0.1.0-beta.5",
4
4
  "description": "Framework for IA Chat Bots",
5
5
  "type": "module",
6
6
  "main": "dist/src/index.js",