kozz-module-maker 0.1.0 → 0.1.2

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 (191) hide show
  1. package/dist/Instance/Basic/index.d.ts +40 -0
  2. package/dist/Instance/Basic/index.js +43 -0
  3. package/dist/Instance/Basic/index.js.map +1 -0
  4. package/dist/Instance/BasicController/index.d.ts +40 -0
  5. package/dist/Instance/BasicController/index.js +43 -0
  6. package/dist/Instance/BasicController/index.js.map +1 -0
  7. package/dist/Instance/CommandHandler/index.d.ts +20 -0
  8. package/dist/Instance/CommandHandler/index.js +26 -0
  9. package/dist/Instance/CommandHandler/index.js.map +1 -0
  10. package/dist/Instance/Common/ResourceMap/index.d.ts +12 -0
  11. package/dist/Instance/Common/ResourceMap/index.js +19 -0
  12. package/dist/Instance/Common/ResourceMap/index.js.map +1 -0
  13. package/dist/Instance/Common/UseFns/index.d.ts +10 -0
  14. package/dist/Instance/Common/UseFns/index.js +16 -0
  15. package/dist/Instance/Common/UseFns/index.js.map +1 -0
  16. package/dist/Instance/Common/index.js +10 -0
  17. package/dist/Instance/Common/index.js.map +1 -0
  18. package/dist/Instance/Common/onEvent/index.d.ts +8 -0
  19. package/dist/Instance/Common/onEvent/index.js +87 -0
  20. package/dist/Instance/Common/onEvent/index.js.map +1 -0
  21. package/dist/Instance/GeneralHandler/index.d.ts +19 -0
  22. package/dist/Instance/GeneralHandler/index.js +49 -0
  23. package/dist/Instance/GeneralHandler/index.js.map +1 -0
  24. package/dist/Instance/GeneralModule/index.d.ts +53 -0
  25. package/dist/Instance/GeneralModule/index.js +55 -0
  26. package/dist/Instance/GeneralModule/index.js.map +1 -0
  27. package/dist/Instance/Handler/index.d.ts +23 -0
  28. package/dist/Instance/Handler/index.js +26 -0
  29. package/dist/Instance/Handler/index.js.map +1 -0
  30. package/dist/Instance/Proxy/index.d.ts +22 -0
  31. package/dist/Instance/Proxy/index.js +36 -0
  32. package/dist/Instance/Proxy/index.js.map +1 -0
  33. package/dist/Instance/index.d.ts +14 -0
  34. package/dist/Instance/index.js +20 -0
  35. package/dist/Instance/index.js.map +1 -0
  36. package/dist/Message/FromTemplate/index.d.ts +33 -0
  37. package/dist/Message/FromTemplate/index.js +62 -0
  38. package/dist/Message/FromTemplate/index.js.map +1 -0
  39. package/dist/Message/PayloadCreation/Media.d.ts +7 -0
  40. package/dist/Message/PayloadCreation/Media.js +44 -0
  41. package/dist/Message/PayloadCreation/Media.js.map +1 -0
  42. package/dist/Message/PayloadCreation/React.d.ts +3 -0
  43. package/dist/Message/PayloadCreation/React.js +13 -0
  44. package/dist/Message/PayloadCreation/React.js.map +1 -0
  45. package/dist/Message/PayloadCreation/Reply.d.ts +5 -0
  46. package/dist/Message/PayloadCreation/Reply.js +47 -0
  47. package/dist/Message/PayloadCreation/Reply.js.map +1 -0
  48. package/dist/Message/PayloadCreation/ReplyWithSticker.d.ts +0 -0
  49. package/dist/Message/PayloadCreation/ReplyWithSticker.js +1 -0
  50. package/dist/Message/PayloadCreation/ReplyWithText.d.ts +2 -0
  51. package/dist/Message/PayloadCreation/ReplyWithText.js +15 -0
  52. package/dist/Message/PayloadCreation/index.js +18 -0
  53. package/dist/Message/PayloadCreation/index.js.map +1 -0
  54. package/dist/Message/PayloadCreation/sendMessage.d.ts +2 -0
  55. package/dist/Message/PayloadCreation/sendMessage.js +24 -0
  56. package/dist/Message/PayloadCreation/sendMessage.js.map +1 -0
  57. package/dist/Message/ProxiedMessage/index.d.ts +42 -0
  58. package/dist/Message/ProxiedMessage/index.js +15 -0
  59. package/dist/Message/ProxiedMessage/index.js.map +1 -0
  60. package/dist/Message/RoutineCreation/AskResource/AskResourceApi/index.d.ts +14 -0
  61. package/dist/Message/RoutineCreation/AskResource/AskResourceApi/index.js +28 -0
  62. package/dist/Message/RoutineCreation/AskResource/AskResourceApi/index.js.map +1 -0
  63. package/dist/Message/RoutineCreation/AskResource/index.d.ts +16 -0
  64. package/dist/Message/RoutineCreation/AskResource/index.js +60 -0
  65. package/dist/Message/RoutineCreation/AskResource/index.js.map +1 -0
  66. package/dist/Message/RoutineCreation/Reply/WithMedia.d.ts +11 -0
  67. package/dist/Message/RoutineCreation/Reply/WithMedia.js +34 -0
  68. package/dist/Message/RoutineCreation/Reply/WithMedia.js.map +1 -0
  69. package/dist/Message/RoutineCreation/Reply/WithSticke.d.ts +3 -0
  70. package/dist/Message/RoutineCreation/Reply/WithSticke.js +9 -0
  71. package/dist/Message/RoutineCreation/Reply/WithSticke.js.map +1 -0
  72. package/dist/Message/RoutineCreation/Reply/WithSticker.d.ts +3 -0
  73. package/dist/Message/RoutineCreation/Reply/WithSticker.js +9 -0
  74. package/dist/Message/RoutineCreation/Reply/WithSticker.js.map +1 -0
  75. package/dist/Message/RoutineCreation/Reply/WithTemplate.d.ts +3 -0
  76. package/dist/Message/RoutineCreation/Reply/WithTemplate.js +20 -0
  77. package/dist/Message/RoutineCreation/Reply/WithTemplate.js.map +1 -0
  78. package/dist/Message/RoutineCreation/Reply/index.js +10 -0
  79. package/dist/Message/RoutineCreation/Reply/index.js.map +1 -0
  80. package/dist/Message/RoutineCreation/SendMessage/index.d.ts +10 -0
  81. package/dist/Message/RoutineCreation/SendMessage/index.js +25 -0
  82. package/dist/Message/RoutineCreation/SendMessage/index.js.map +1 -0
  83. package/dist/Message/RoutineCreation/reply.d.ts +15 -0
  84. package/dist/Message/RoutineCreation/reply.js +18 -0
  85. package/dist/Message/RoutineCreation/reply.js.map +1 -0
  86. package/dist/Message/index.d.ts +42 -0
  87. package/dist/Message/index.js +46 -0
  88. package/dist/Message/index.js.map +1 -0
  89. package/dist/Message/kozz-md.parser/index.d.ts +41 -0
  90. package/dist/Message/kozz-md.parser/index.js +122 -0
  91. package/dist/Message/kozz-md.parser/index.js.map +1 -0
  92. package/dist/Message/zap-md.parser/index.d.ts +1 -0
  93. package/dist/Message/zap-md.parser/index.js +2 -0
  94. package/dist/Schema/index.d.ts +37 -0
  95. package/dist/Schema/index.js +21 -0
  96. package/dist/Schema/index.js.map +1 -0
  97. package/dist/Socket/Events/Command.d.ts +3 -0
  98. package/dist/Socket/Events/Command.js +19 -0
  99. package/dist/Socket/Events/Command.js.map +1 -0
  100. package/dist/Socket/Events/Emit/ForwardEvent.d.ts +6 -0
  101. package/dist/Socket/Events/Emit/ForwardEvent.js +21 -0
  102. package/dist/Socket/Events/Emit/ForwardEvent.js.map +1 -0
  103. package/dist/Socket/Events/Emit/Introduction.d.ts +10 -0
  104. package/dist/Socket/Events/Emit/Introduction.js +21 -0
  105. package/dist/Socket/Events/Emit/Introduction.js.map +1 -0
  106. package/dist/Socket/Events/Emit/ProxyRequest.d.ts +0 -0
  107. package/dist/Socket/Events/Emit/ProxyRequest.js +2 -0
  108. package/dist/Socket/Events/Emit/ProxyRequest.js.map +1 -0
  109. package/dist/Socket/Events/Emit/RequestProxy.d.ts +18 -0
  110. package/dist/Socket/Events/Emit/RequestProxy.js +22 -0
  111. package/dist/Socket/Events/Emit/RequestProxy.js.map +1 -0
  112. package/dist/Socket/Events/Emit/RevokeProxy.d.ts +8 -0
  113. package/dist/Socket/Events/Emit/RevokeProxy.js +16 -0
  114. package/dist/Socket/Events/Emit/RevokeProxy.js.map +1 -0
  115. package/dist/Socket/Events/Handle/AskResource.d.ts +8 -0
  116. package/dist/Socket/Events/Handle/AskResource.js +36 -0
  117. package/dist/Socket/Events/Handle/AskResource.js.map +1 -0
  118. package/dist/Socket/Events/Handle/Command.d.ts +14 -0
  119. package/dist/Socket/Events/Handle/Command.js +48 -0
  120. package/dist/Socket/Events/Handle/Command.js.map +1 -0
  121. package/dist/Socket/Events/Handle/ProxiedMessage.d.ts +10 -0
  122. package/dist/Socket/Events/Handle/ProxiedMessage.js +18 -0
  123. package/dist/Socket/Events/Handle/ProxiedMessage.js.map +1 -0
  124. package/dist/Socket/Events/Introduction.d.ts +3 -0
  125. package/dist/Socket/Events/Introduction.js +15 -0
  126. package/dist/Socket/Events/Introduction.js.map +1 -0
  127. package/dist/Socket/Events/ProxiedMessage.d.ts +2 -0
  128. package/dist/Socket/Events/ProxiedMessage.js +10 -0
  129. package/dist/Socket/Events/ProxiedMessage.js.map +1 -0
  130. package/dist/Socket/Messages/Command.d.ts +2 -0
  131. package/dist/Socket/Messages/Command.js +6 -0
  132. package/dist/Socket/Messages/Command.js.map +1 -0
  133. package/dist/Socket/Messages/Introduction.d.ts +3 -0
  134. package/dist/Socket/Messages/Introduction.js +15 -0
  135. package/dist/Socket/Messages/Introduction.js.map +1 -0
  136. package/dist/Socket/index.d.ts +6 -0
  137. package/dist/Socket/index.js +19 -0
  138. package/dist/Socket/index.js.map +1 -0
  139. package/dist/Validator/index.d.ts +16 -0
  140. package/dist/Validator/index.js +55 -0
  141. package/dist/Validator/index.js.map +1 -0
  142. package/dist/debugIndex.d.ts +1 -0
  143. package/dist/debugIndex.js +21 -0
  144. package/dist/debugIndex.js.map +1 -0
  145. package/dist/index.js +19 -0
  146. package/dist/index.js.map +1 -0
  147. package/dist/util/index.d.ts +25 -0
  148. package/dist/util/index.js +81 -0
  149. package/dist/util/index.js.map +1 -0
  150. package/dist/util.d.ts +8 -0
  151. package/dist/util.js +36 -0
  152. package/dist/util.js.map +1 -0
  153. package/package.json +1 -1
  154. package/scripts/boundary_signature.js +48 -0
  155. package/scripts/generate_key_pair.sh +10 -0
  156. package/scripts/handler_signature.js +42 -0
  157. package/src/Instance/Common/ResourceMap/index.ts +0 -26
  158. package/src/Instance/Common/UseFns/index.ts +0 -22
  159. package/src/Instance/Common/onEvent/index.ts +0 -105
  160. package/src/Instance/GeneralModule/index.ts +0 -98
  161. package/src/Message/FromTemplate/index.ts +0 -74
  162. package/src/Message/PayloadCreation/Media.ts +0 -62
  163. package/src/Message/PayloadCreation/React.ts +0 -16
  164. package/src/Message/PayloadCreation/Reply.ts +0 -63
  165. package/src/Message/PayloadCreation/sendMessage.ts +0 -27
  166. package/src/Message/ProxiedMessage/index.ts +0 -27
  167. package/src/Message/RoutineCreation/AskResource/AskResourceApi/index.ts +0 -43
  168. package/src/Message/RoutineCreation/AskResource/index.ts +0 -85
  169. package/src/Message/RoutineCreation/Reply/WithMedia.ts +0 -63
  170. package/src/Message/RoutineCreation/Reply/WithSticker.ts +0 -9
  171. package/src/Message/RoutineCreation/Reply/WithTemplate.ts +0 -28
  172. package/src/Message/RoutineCreation/SendMessage/index.ts +0 -64
  173. package/src/Message/RoutineCreation/reply.ts +0 -23
  174. package/src/Message/index.ts +0 -44
  175. package/src/Message/kozz-md.parser/index.ts +0 -138
  176. package/src/Schema/index.ts +0 -102
  177. package/src/Socket/Events/Emit/ForwardEvent.ts +0 -22
  178. package/src/Socket/Events/Emit/Introduction.ts +0 -28
  179. package/src/Socket/Events/Emit/RequestProxy.ts +0 -38
  180. package/src/Socket/Events/Emit/RevokeProxy.ts +0 -15
  181. package/src/Socket/Events/Handle/AskResource.ts +0 -37
  182. package/src/Socket/Events/Handle/Command.ts +0 -68
  183. package/src/Socket/Events/Handle/ProxiedMessage.ts +0 -28
  184. package/src/Socket/index.ts +0 -40
  185. package/src/Validator/index.ts +0 -81
  186. package/src/messages.kozz.md +0 -52
  187. package/src/util/index.ts +0 -89
  188. /package/{src/Instance/Common/index.ts → dist/Instance/Common/index.d.ts} +0 -0
  189. /package/{src/Message/PayloadCreation/index.ts → dist/Message/PayloadCreation/index.d.ts} +0 -0
  190. /package/{src/Message/RoutineCreation/Reply/index.ts → dist/Message/RoutineCreation/Reply/index.d.ts} +0 -0
  191. /package/{src/index.ts → dist/index.d.ts} +0 -0
@@ -0,0 +1,40 @@
1
+ type BasicControllerInitParams = {
2
+ name: string;
3
+ address: string;
4
+ templatePath?: string;
5
+ signature?: string;
6
+ };
7
+ /**
8
+ * Creates a basic Handler Controller
9
+ * @param param0
10
+ * @returns
11
+ */
12
+ export declare const createBasicController: ({ address, name, templatePath, signature, }: BasicControllerInitParams) => {
13
+ sendMessage: {
14
+ (contactId: string, boundaryId: string, body: string): void;
15
+ withMedia(contactId: string, boundaryId: string, caption: string, media: import("kozz-types").Media): void;
16
+ };
17
+ use: (useFn: UseFn) => any;
18
+ removeResource: (name: string) => void;
19
+ upsertResource: (name: string, getter: (args: Record<string, any>) => any) => void;
20
+ listenToBoundary: (boundaryId: string) => {
21
+ when: (eventName: string, callback: (payload: any) => any) => void;
22
+ };
23
+ ask: {
24
+ (askArgs: {
25
+ resource: Omit<{
26
+ id: `${string}/${number}`;
27
+ resource: string;
28
+ data: Record<string, any>;
29
+ }, "id">;
30
+ responder: {
31
+ id: string;
32
+ type: import("kozz-types").Entity;
33
+ };
34
+ }): Promise<import("kozz-types").ProvideResourcePayload>;
35
+ boundary(boundaryId: string, resourceName: string, requestArgs?: Record<string, any>): Promise<import("kozz-types").ProvideResourcePayload>;
36
+ handler(handlerId: string, resourceName: string, requestArgs?: Record<string, any>): Promise<import("kozz-types").ProvideResourcePayload>;
37
+ gateway(resourceName: string, requestArgs?: Record<string, any>): Promise<import("kozz-types").ProvideResourcePayload>;
38
+ };
39
+ };
40
+ export {};
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createBasicController = void 0;
4
+ const Socket_1 = require("../../Socket");
5
+ const AskResource_1 = require("../../Socket/Events/Handle/AskResource");
6
+ const Common_1 = require("../Common/");
7
+ const AskResource_2 = require("../../Message/RoutineCreation/AskResource");
8
+ const SendMessage_1 = require("../../Message/RoutineCreation/SendMessage");
9
+ const ForwardEvent_1 = require("src/Socket/Events/Emit/ForwardEvent");
10
+ /**
11
+ * Creates a basic Handler Controller
12
+ * @param param0
13
+ * @returns
14
+ */
15
+ const createBasicController = ({ address, name, templatePath, signature, }) => {
16
+ const { moduleUseFns, use } = (0, Common_1.createUseFns)(() => instance);
17
+ const { socket } = (0, Socket_1.connect)(address, moduleUseFns, templatePath || '', name, {}, [], signature);
18
+ // @ts-ignore
19
+ const { removeResource, resourceMap, upsertResource } = (0, Common_1.createResourceMap)();
20
+ (0, AskResource_1.onAskResource)(socket, resourceMap);
21
+ const ask = (0, AskResource_2.createAskResource)(socket, {
22
+ requester: {
23
+ id: name,
24
+ type: 'Handler',
25
+ },
26
+ });
27
+ /**
28
+ * Routine to send message to any given boundary
29
+ */
30
+ const sendMessage = (0, SendMessage_1.sendMessageToContact)(socket, name);
31
+ const listenToBoundary = (0, ForwardEvent_1.listenBoundary)(socket, name);
32
+ const instance = {
33
+ sendMessage,
34
+ use,
35
+ removeResource,
36
+ upsertResource,
37
+ listenToBoundary,
38
+ ask,
39
+ };
40
+ return instance;
41
+ };
42
+ exports.createBasicController = createBasicController;
43
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Instance/Basic/index.ts"],"names":[],"mappings":";;;AAAA,yCAAuC;AACvC,wEAAuE;AACvE,uCAA6D;AAC7D,2EAA8E;AAC9E,2EAAiF;AACjF,sEAAqE;AASrE;;;;GAIG;AACI,MAAM,qBAAqB,GAAG,CAAC,EACrC,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,SAAS,GACkB,EAAE,EAAE;IAC/B,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,IAAA,qBAAY,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;IAE3D,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,gBAAO,EACzB,OAAO,EACP,YAAY,EACZ,YAAY,IAAI,EAAE,EAClB,IAAI,EACJ,EAAE,EACF,EAAE,EACF,SAAS,CACT,CAAC;IACF,aAAa;IACb,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,IAAA,0BAAiB,GAAE,CAAC;IAC5E,IAAA,2BAAa,EAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAEnC,MAAM,GAAG,GAAG,IAAA,+BAAiB,EAAC,MAAM,EAAE;QACrC,SAAS,EAAE;YACV,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,SAAS;SACf;KACD,CAAC,CAAC;IAEH;;OAEG;IACH,MAAM,WAAW,GAAG,IAAA,kCAAoB,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEvD,MAAM,gBAAgB,GAAG,IAAA,6BAAc,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEtD,MAAM,QAAQ,GAAG;QAChB,WAAW;QACX,GAAG;QACH,cAAc;QACd,cAAc;QACd,gBAAgB;QAChB,GAAG;KACH,CAAC;IAEF,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AA7CW,QAAA,qBAAqB,yBA6ChC"}
@@ -0,0 +1,40 @@
1
+ type BasicControllerInitParams = {
2
+ name: string;
3
+ address: string;
4
+ templatePath?: string;
5
+ signature?: string;
6
+ };
7
+ /**
8
+ * Creates a basic Handler Controller
9
+ * @param param0
10
+ * @returns
11
+ */
12
+ export declare const createBasicController: ({ address, name, templatePath, signature, }: BasicControllerInitParams) => {
13
+ sendMessage: {
14
+ (contactId: string, boundaryId: string, body: string): void;
15
+ withMedia(contactId: string, boundaryId: string, caption: string, media: import("kozz-types").Media): void;
16
+ };
17
+ use: (useFn: import("../Common/UseFns").UseFn) => any;
18
+ removeResource: (name: string) => void;
19
+ upsertResource: (name: string, getter: (args: Record<string, any>) => any) => void;
20
+ listenToBoundary: (boundaryId: string) => {
21
+ when: (eventName: string, callback: (payload: any) => any) => void;
22
+ };
23
+ ask: {
24
+ (askArgs: {
25
+ resource: Omit<{
26
+ id: `${string}/${number}`;
27
+ resource: string;
28
+ data: Record<string, any>;
29
+ }, "id">;
30
+ responder: {
31
+ id: string;
32
+ type: import("kozz-types").Entity;
33
+ };
34
+ }): Promise<import("kozz-types").ProvideResourcePayload>;
35
+ boundary(boundaryId: string, resourceName: string, requestArgs?: Record<string, any>): Promise<import("kozz-types").ProvideResourcePayload>;
36
+ handler(handlerId: string, resourceName: string, requestArgs?: Record<string, any>): Promise<import("kozz-types").ProvideResourcePayload>;
37
+ gateway(resourceName: string, requestArgs?: Record<string, any>): Promise<import("kozz-types").ProvideResourcePayload>;
38
+ };
39
+ };
40
+ export {};
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createBasicController = void 0;
4
+ const Socket_1 = require("../../Socket");
5
+ const AskResource_1 = require("../../Socket/Events/Handle/AskResource");
6
+ const Common_1 = require("../Common/");
7
+ const AskResource_2 = require("../../Message/RoutineCreation/AskResource");
8
+ const SendMessage_1 = require("../../Message/RoutineCreation/SendMessage");
9
+ const ForwardEvent_1 = require("src/Socket/Events/Emit/ForwardEvent");
10
+ /**
11
+ * Creates a basic Handler Controller
12
+ * @param param0
13
+ * @returns
14
+ */
15
+ const createBasicController = ({ address, name, templatePath, signature, }) => {
16
+ const { moduleUseFns, use } = (0, Common_1.createUseFns)(() => instance);
17
+ const { socket } = (0, Socket_1.connect)(address, moduleUseFns, templatePath || '', name, {}, [], signature);
18
+ // @ts-ignore
19
+ const { removeResource, resourceMap, upsertResource } = (0, Common_1.createResourceMap)();
20
+ (0, AskResource_1.onAskResource)(socket, resourceMap);
21
+ const ask = (0, AskResource_2.createAskResource)(socket, {
22
+ requester: {
23
+ id: name,
24
+ type: 'Handler',
25
+ },
26
+ });
27
+ /**
28
+ * Routine to send message to any given boundary
29
+ */
30
+ const sendMessage = (0, SendMessage_1.sendMessageToContact)(socket, name);
31
+ const listenToBoundary = (0, ForwardEvent_1.listenBoundary)(socket, name);
32
+ const instance = {
33
+ sendMessage,
34
+ use,
35
+ removeResource,
36
+ upsertResource,
37
+ listenToBoundary,
38
+ ask,
39
+ };
40
+ return instance;
41
+ };
42
+ exports.createBasicController = createBasicController;
43
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Instance/BasicController/index.ts"],"names":[],"mappings":";;;AAAA,yCAAuC;AACvC,wEAAuE;AACvE,uCAA6D;AAC7D,2EAA8E;AAC9E,2EAAiF;AACjF,sEAAqE;AASrE;;;;GAIG;AACI,MAAM,qBAAqB,GAAG,CAAC,EACrC,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,SAAS,GACkB,EAAE,EAAE;IAC/B,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,IAAA,qBAAY,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;IAE3D,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,gBAAO,EACzB,OAAO,EACP,YAAY,EACZ,YAAY,IAAI,EAAE,EAClB,IAAI,EACJ,EAAE,EACF,EAAE,EACF,SAAS,CACT,CAAC;IACF,aAAa;IACb,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,IAAA,0BAAiB,GAAE,CAAC;IAC5E,IAAA,2BAAa,EAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAEnC,MAAM,GAAG,GAAG,IAAA,+BAAiB,EAAC,MAAM,EAAE;QACrC,SAAS,EAAE;YACV,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,SAAS;SACf;KACD,CAAC,CAAC;IAEH;;OAEG;IACH,MAAM,WAAW,GAAG,IAAA,kCAAoB,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEvD,MAAM,gBAAgB,GAAG,IAAA,6BAAc,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEtD,MAAM,QAAQ,GAAG;QAChB,WAAW;QACX,GAAG;QACH,cAAc;QACd,cAAc;QACd,gBAAgB;QAChB,GAAG;KACH,CAAC;IAEF,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AA7CW,QAAA,qBAAqB,yBA6ChC"}
@@ -0,0 +1,20 @@
1
+ import { Method, TypeString } from '../../Schema';
2
+ export type HandlerInitParams<Methods extends Record<string, TypeString>> = {
3
+ name: string;
4
+ address: string;
5
+ methods: Record<string, Method<Methods>>;
6
+ boundariesToHandle: string[];
7
+ templatePath?: string;
8
+ signature?: string;
9
+ };
10
+ export declare const createHandlerInstance: <Methods extends Record<string, TypeString>>({ address, methods, name, templatePath, signature, boundariesToHandle, }: HandlerInitParams<Methods>) => {
11
+ use: (useFn: import("../Common/UseFns").UseFn) => any;
12
+ sendMessage: {
13
+ (contactId: string, boundaryId: string, body: string): void;
14
+ withMedia(contactId: string, boundaryId: string, caption: string, media: import("kozz-types").Media): void;
15
+ };
16
+ resources: {
17
+ removeResource: (name: string) => void;
18
+ upsertResource: (name: string, getter: (args: Record<string, any>) => any) => void;
19
+ };
20
+ };
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createHandlerInstance = void 0;
4
+ const Socket_1 = require("../../Socket");
5
+ const AskResource_1 = require("../../Socket/Events/Handle/AskResource");
6
+ const Common_1 = require("../Common/");
7
+ const SendMessage_1 = require("../../Message/RoutineCreation/SendMessage");
8
+ const createHandlerInstance = ({ address, methods, name, templatePath, signature, boundariesToHandle, }) => {
9
+ const { moduleUseFns, use } = (0, Common_1.createUseFns)(() => instance);
10
+ const { socket, registerMethods } = (0, Socket_1.connect)(address, moduleUseFns, templatePath || '', name, methods, boundariesToHandle, signature);
11
+ registerMethods(methods);
12
+ const { removeResource, resourceMap, upsertResource } = (0, Common_1.createResourceMap)();
13
+ (0, AskResource_1.onAskResource)(socket, resourceMap);
14
+ const sendMessage = (0, SendMessage_1.sendMessageToContact)(socket, name);
15
+ const instance = {
16
+ use,
17
+ sendMessage,
18
+ resources: {
19
+ removeResource,
20
+ upsertResource,
21
+ },
22
+ };
23
+ return instance;
24
+ };
25
+ exports.createHandlerInstance = createHandlerInstance;
26
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Instance/CommandHandler/index.ts"],"names":[],"mappings":";;;AACA,yCAAuC;AACvC,wEAAuE;AACvE,uCAAsE;AACtE,2EAAiF;AAW1E,MAAM,qBAAqB,GAAG,CAEnC,EACD,OAAO,EACP,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,SAAS,EACT,kBAAkB,GACU,EAAE,EAAE;IAChC,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,IAAA,qBAAY,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;IAE3D,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,IAAA,gBAAO,EAC1C,OAAO,EACP,YAAY,EACZ,YAAY,IAAI,EAAE,EAClB,IAAI,EACJ,OAAO,EACP,kBAAkB,EAClB,SAAS,CACT,CAAC;IAEF,eAAe,CAAC,OAAO,CAAC,CAAC;IAEzB,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,IAAA,0BAAiB,GAAE,CAAC;IAE5E,IAAA,2BAAa,EAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAEnC,MAAM,WAAW,GAAG,IAAA,kCAAoB,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEvD,MAAM,QAAQ,GAAG;QAChB,GAAG;QACH,WAAW;QACX,SAAS,EAAE;YACV,cAAc;YACd,cAAc;SACd;KACD,CAAC;IAEF,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAxCW,QAAA,qBAAqB,yBAwChC"}
@@ -0,0 +1,12 @@
1
+ import { AskResourcePayload } from 'kozz-types/dist';
2
+ type ResourceName = string;
3
+ type ResourceGetter = (args: AskResourcePayload['request']['data']) => any;
4
+ export type ResourceMap = {
5
+ [key: ResourceName]: ResourceGetter;
6
+ };
7
+ export declare const createResourceMap: () => {
8
+ resourceMap: ResourceMap;
9
+ upsertResource: (name: ResourceName, getter: ResourceGetter) => void;
10
+ removeResource: (name: ResourceName) => void;
11
+ };
12
+ export {};
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createResourceMap = void 0;
4
+ const createResourceMap = () => {
5
+ const resourceMap = {};
6
+ const upsertResource = (name, getter) => {
7
+ resourceMap[name] = getter;
8
+ };
9
+ const removeResource = (name) => {
10
+ delete resourceMap[name];
11
+ };
12
+ return {
13
+ resourceMap,
14
+ upsertResource,
15
+ removeResource,
16
+ };
17
+ };
18
+ exports.createResourceMap = createResourceMap;
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Instance/Common/ResourceMap/index.ts"],"names":[],"mappings":";;;AASO,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACrC,MAAM,WAAW,GAAgB,EAAE,CAAC;IAEpC,MAAM,cAAc,GAAG,CAAC,IAAkB,EAAE,MAAsB,EAAE,EAAE;QACrE,WAAW,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;IAC5B,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,IAAkB,EAAE,EAAE;QAC7C,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC,CAAC;IAEF,OAAO;QACN,WAAW;QACX,cAAc;QACd,cAAc;KACd,CAAC;AACH,CAAC,CAAC;AAhBW,QAAA,iBAAiB,qBAgB5B"}
@@ -0,0 +1,10 @@
1
+ import { Command } from 'kozz-types';
2
+ type HandlerOrProxy = any;
3
+ type HandleOrProxyGetter = () => HandlerOrProxy;
4
+ export type UseFn = (args: Command) => Command;
5
+ export type OriginalFn = (args: Command) => any;
6
+ export declare const createUseFns: (instanceGetter: HandleOrProxyGetter) => {
7
+ moduleUseFns: UseFn[];
8
+ use: (useFn: UseFn) => any;
9
+ };
10
+ export {};
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createUseFns = void 0;
4
+ const createUseFns = (instanceGetter) => {
5
+ const moduleUseFns = [];
6
+ const use = (useFn) => {
7
+ moduleUseFns.push(useFn);
8
+ return instanceGetter();
9
+ };
10
+ return {
11
+ moduleUseFns,
12
+ use,
13
+ };
14
+ };
15
+ exports.createUseFns = createUseFns;
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Instance/Common/UseFns/index.ts"],"names":[],"mappings":";;;AASO,MAAM,YAAY,GAAG,CAAC,cAAmC,EAAE,EAAE;IACnE,MAAM,YAAY,GAAY,EAAE,CAAC;IAEjC,MAAM,GAAG,GAAG,CAAC,KAAY,EAAE,EAAE;QAC5B,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,OAAO,cAAc,EAAE,CAAC;IACzB,CAAC,CAAC;IAEF,OAAO;QACN,YAAY;QACZ,GAAG;KACH,CAAC;AACH,CAAC,CAAC;AAZW,QAAA,YAAY,gBAYvB"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.onEvent = exports.createUseFns = exports.createResourceMap = void 0;
4
+ var ResourceMap_1 = require("./ResourceMap");
5
+ Object.defineProperty(exports, "createResourceMap", { enumerable: true, get: function () { return ResourceMap_1.createResourceMap; } });
6
+ var UseFns_1 = require("./UseFns");
7
+ Object.defineProperty(exports, "createUseFns", { enumerable: true, get: function () { return UseFns_1.createUseFns; } });
8
+ var onEvent_1 = require("./onEvent");
9
+ Object.defineProperty(exports, "onEvent", { enumerable: true, get: function () { return onEvent_1.onEvent; } });
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Instance/Common/index.ts"],"names":[],"mappings":";;;AAAA,6CAAkD;AAAzC,gHAAA,iBAAiB,OAAA;AAC1B,mCAA+C;AAA/B,sGAAA,YAAY,OAAA;AAC5B,qCAAoC;AAA3B,kGAAA,OAAO,OAAA"}
@@ -0,0 +1,8 @@
1
+ import { Socket } from 'socket.io-client';
2
+ export declare const onEvent: (socket: Socket, handlerId: string) => {
3
+ on: (evName: string, eventSource: string, callback: (ev: any) => any) => {
4
+ eventId: `${string}-${string}-${string}-${string}-${string}`;
5
+ revoke: () => void;
6
+ };
7
+ tryRunEventListeners: (evName: string, eventPayload: any) => void;
8
+ };
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.onEvent = void 0;
7
+ const crypto_1 = __importDefault(require("crypto"));
8
+ const onEvent = (socket, handlerId) => {
9
+ const eventListeners = [];
10
+ const getListenersFromEvent = (evName) => {
11
+ return eventListeners.find(ev => ev.name === evName);
12
+ };
13
+ const on = (evName, eventSource, callback) => {
14
+ var _a;
15
+ if (!eventListeners.find(listener => listener.name === evName)) {
16
+ eventListeners.push({
17
+ name: evName,
18
+ source: eventSource,
19
+ listeners: [],
20
+ });
21
+ }
22
+ const id = crypto_1.default.randomUUID();
23
+ (_a = eventListeners
24
+ .find(listener => listener.name === evName)) === null || _a === void 0 ? void 0 : _a.listeners.push({
25
+ id,
26
+ cb: callback,
27
+ });
28
+ socket.emit('event_forward_request', {
29
+ sourceId: eventSource,
30
+ destination: {
31
+ id: handlerId,
32
+ type: 'Handler',
33
+ },
34
+ eventName: evName,
35
+ });
36
+ return {
37
+ eventId: id,
38
+ revoke: removeListener(evName, id),
39
+ };
40
+ };
41
+ const resendEvents = () => {
42
+ eventListeners.forEach(({ name, listeners, source }) => {
43
+ listeners.forEach(({ id, cb }) => {
44
+ socket.emit('event_forward_request', {
45
+ sourceId: source,
46
+ destination: {
47
+ id: handlerId,
48
+ type: 'Handler',
49
+ },
50
+ eventName: name,
51
+ });
52
+ });
53
+ });
54
+ };
55
+ const removeListener = (evName, evId) => () => {
56
+ const event = getListenersFromEvent(evName);
57
+ if (!(event === null || event === void 0 ? void 0 : event.listeners))
58
+ return;
59
+ event.listeners = event === null || event === void 0 ? void 0 : event.listeners.filter(listener => listener.id !== evId);
60
+ if (event.listeners.length === 0) {
61
+ socket.emit('event_forward_revoke', {
62
+ eventName: evName,
63
+ destination: {
64
+ id: handlerId,
65
+ type: 'Handler',
66
+ },
67
+ });
68
+ }
69
+ };
70
+ const tryRunEventListeners = (evName, eventPayload) => {
71
+ const event = getListenersFromEvent(evName);
72
+ if (!(event === null || event === void 0 ? void 0 : event.listeners))
73
+ return;
74
+ event.listeners.forEach(listener => listener.cb(eventPayload));
75
+ };
76
+ socket.on('forwarded_event', (event) => {
77
+ console.log('Received Event aaa');
78
+ tryRunEventListeners(event.eventName, event.payload);
79
+ });
80
+ socket.on('connect', resendEvents);
81
+ return {
82
+ on,
83
+ tryRunEventListeners,
84
+ };
85
+ };
86
+ exports.onEvent = onEvent;
87
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Instance/Common/onEvent/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { Method, TypeString } from '../../Schema';
2
+ import { ProxiedMessageObject } from '../../Message/ProxiedMessage';
3
+ import { Source } from 'kozz-types';
4
+ export type ControllerInitParams<Methods extends Record<string, TypeString>> = {
5
+ name: string;
6
+ address: string;
7
+ templatePath?: string;
8
+ signature?: string;
9
+ commands?: {
10
+ boundariesToHandle: string[];
11
+ methods?: Record<string, Method<Methods>>;
12
+ };
13
+ proxy?: {
14
+ source: Source;
15
+ destinationOverride?: string;
16
+ onMessage: (message: ProxiedMessageObject) => any;
17
+ };
18
+ };
19
+ export declare const createController: <Methods extends Record<string, TypeString>>({ name, address, commands, proxy, signature, templatePath, }: ControllerInitParams<Methods>) => void;
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createController = void 0;
4
+ const Common_1 = require("../Common");
5
+ const Socket_1 = require("../../Socket");
6
+ const RevokeProxy_1 = require("../../Socket/Events/Emit/RevokeProxy");
7
+ const RequestProxy_1 = require("../../Socket/Events/Emit/RequestProxy");
8
+ const AskResource_1 = require("../../Socket/Events/Handle/AskResource");
9
+ const SendMessage_1 = require("../../Message/RoutineCreation/SendMessage");
10
+ const AskResource_2 = require("../../Message/RoutineCreation/AskResource");
11
+ const createController = ({ name, address, commands, proxy, signature, templatePath, }) => {
12
+ const { moduleUseFns, use } = (0, Common_1.createUseFns)(() => instance);
13
+ const { socket } = (0, Socket_1.connect)(address, moduleUseFns, templatePath || '', name, (commands === null || commands === void 0 ? void 0 : commands.methods) || {}, (commands === null || commands === void 0 ? void 0 : commands.boundariesToHandle) || [], signature);
14
+ if (proxy) {
15
+ (0, RequestProxy_1.requestProxy)(socket, {
16
+ address,
17
+ name,
18
+ ...proxy,
19
+ });
20
+ }
21
+ const { removeResource, resourceMap, upsertResource } = (0, Common_1.createResourceMap)();
22
+ (0, AskResource_1.onAskResource)(socket, resourceMap);
23
+ const sendMessage = (0, SendMessage_1.sendMessageToContact)(socket, name);
24
+ let revoke = () => {
25
+ if (proxy) {
26
+ (0, RevokeProxy_1.revokeProxy)(socket, proxy.source);
27
+ }
28
+ };
29
+ const ask = (0, AskResource_2.createAskResource)(socket, {
30
+ requester: {
31
+ id: name,
32
+ type: 'Handler',
33
+ },
34
+ });
35
+ const instance = {
36
+ use,
37
+ sendMessage,
38
+ resources: {
39
+ removeResource,
40
+ upsertResource,
41
+ },
42
+ proxy: {
43
+ revoke,
44
+ },
45
+ ask,
46
+ };
47
+ };
48
+ exports.createController = createController;
49
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Instance/GeneralHandler/index.ts"],"names":[],"mappings":";;;AACA,sCAA4D;AAC5D,yCAAuC;AACvC,sEAAmE;AACnE,wEAAqE;AAGrE,wEAAuE;AACvE,2EAAiF;AACjF,2EAA8E;AAoBvE,MAAM,gBAAgB,GAAG,CAA6C,EAC5E,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,KAAK,EACL,SAAS,EACT,YAAY,GACmB,EAAE,EAAE;IACnC,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,IAAA,qBAAY,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;IAC3D,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,gBAAO,EACzB,OAAO,EACP,YAAY,EACZ,YAAY,IAAI,EAAE,EAClB,IAAI,EACJ,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,KAAI,EAAE,EACvB,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,kBAAkB,KAAI,EAAE,EAClC,SAAS,CACT,CAAC;IAEF,IAAI,KAAK,EAAE;QACV,IAAA,2BAAY,EAAC,MAAM,EAAE;YACpB,OAAO;YACP,IAAI;YACJ,GAAG,KAAK;SACR,CAAC,CAAC;KACH;IAED,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,IAAA,0BAAiB,GAAE,CAAC;IAC5E,IAAA,2BAAa,EAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAEnC,MAAM,WAAW,GAAG,IAAA,kCAAoB,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEvD,IAAI,MAAM,GAAG,GAAG,EAAE;QACjB,IAAI,KAAK,EAAE;YACV,IAAA,yBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;SAClC;IACF,CAAC,CAAC;IAEF,MAAM,GAAG,GAAG,IAAA,+BAAiB,EAAC,MAAM,EAAE;QACrC,SAAS,EAAE;YACV,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,SAAS;SACf;KACD,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG;QAChB,GAAG;QACH,WAAW;QACX,SAAS,EAAE;YACV,cAAc;YACd,cAAc;SACd;QACD,KAAK,EAAE;YACN,MAAM;SACN;QACD,GAAG;KACH,CAAC;AACH,CAAC,CAAC;AAzDW,QAAA,gBAAgB,oBAyD3B"}
@@ -0,0 +1,53 @@
1
+ import { Method, TypeString } from '../../Schema';
2
+ import { ProxiedMessageObject } from '../../Message/ProxiedMessage';
3
+ import { Source } from 'kozz-types';
4
+ export type ControllerInitParams<Methods extends Record<string, TypeString>> = {
5
+ name: string;
6
+ address: string;
7
+ templatePath?: string;
8
+ signature?: string;
9
+ commands?: {
10
+ boundariesToHandle: string[];
11
+ methods?: Record<string, Method<Methods>>;
12
+ };
13
+ proxy?: {
14
+ source: Source;
15
+ destinationOverride?: string;
16
+ onMessage: (message: ProxiedMessageObject) => any;
17
+ keepAliveProxy?: boolean;
18
+ };
19
+ };
20
+ export declare const createModule: <Methods extends Record<string, TypeString>>({ name, address, commands, proxy, signature, templatePath, }: ControllerInitParams<Methods>) => {
21
+ use: (useFn: import("../Common").UseFn) => any;
22
+ on: (evName: string, eventSource: string, callback: (ev: any) => any) => {
23
+ eventId: `${string}-${string}-${string}-${string}-${string}`;
24
+ revoke: () => void;
25
+ };
26
+ sendMessage: {
27
+ (contactId: string, boundaryId: string, body: string): void;
28
+ withMedia(contactId: string, boundaryId: string, caption: string, media: import("kozz-types").Media): void;
29
+ };
30
+ resources: {
31
+ removeResource: (name: string) => void;
32
+ upsertResource: (name: string, getter: (args: Record<string, any>) => any) => void;
33
+ };
34
+ proxy: {
35
+ revoke: () => void;
36
+ };
37
+ ask: {
38
+ (askArgs: {
39
+ resource: Omit<{
40
+ id: `${string}/${number}`;
41
+ resource: string;
42
+ data: Record<string, any>;
43
+ }, "id">;
44
+ responder: {
45
+ id: string;
46
+ type: import("kozz-types").Entity;
47
+ };
48
+ }): Promise<import("kozz-types").ProvideResourcePayload>;
49
+ boundary(boundaryId: string, resourceName: string, requestArgs?: Record<string, any>): Promise<import("kozz-types").ProvideResourcePayload>;
50
+ handler(handlerId: string, resourceName: string, requestArgs?: Record<string, any>): Promise<import("kozz-types").ProvideResourcePayload>;
51
+ gateway(resourceName: string, requestArgs?: Record<string, any>): Promise<import("kozz-types").ProvideResourcePayload>;
52
+ };
53
+ };
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createModule = void 0;
4
+ const Common_1 = require("../Common");
5
+ const Socket_1 = require("../../Socket");
6
+ const RevokeProxy_1 = require("../../Socket/Events/Emit/RevokeProxy");
7
+ const RequestProxy_1 = require("../../Socket/Events/Emit/RequestProxy");
8
+ const AskResource_1 = require("../../Socket/Events/Handle/AskResource");
9
+ const SendMessage_1 = require("../../Message/RoutineCreation/SendMessage");
10
+ const AskResource_2 = require("../../Message/RoutineCreation/AskResource");
11
+ const createModule = ({ name, address, commands, proxy, signature, templatePath, }) => {
12
+ const { moduleUseFns, use } = (0, Common_1.createUseFns)(() => instance);
13
+ const { socket, registerMethods } = (0, Socket_1.connect)(address, moduleUseFns, templatePath || '', name, (commands === null || commands === void 0 ? void 0 : commands.methods) || {}, (commands === null || commands === void 0 ? void 0 : commands.boundariesToHandle) || [], signature);
14
+ if (commands === null || commands === void 0 ? void 0 : commands.methods) {
15
+ registerMethods(commands === null || commands === void 0 ? void 0 : commands.methods);
16
+ }
17
+ if (proxy) {
18
+ (0, RequestProxy_1.requestProxy)(socket, {
19
+ address,
20
+ name,
21
+ ...proxy,
22
+ });
23
+ }
24
+ const { removeResource, resourceMap, upsertResource } = (0, Common_1.createResourceMap)();
25
+ (0, AskResource_1.onAskResource)(socket, resourceMap);
26
+ const sendMessage = (0, SendMessage_1.sendMessageToContact)(socket, name);
27
+ let revoke = () => {
28
+ if (proxy) {
29
+ (0, RevokeProxy_1.revokeProxy)(socket, proxy.source);
30
+ }
31
+ };
32
+ const { on } = (0, Common_1.onEvent)(socket, name);
33
+ const ask = (0, AskResource_2.createAskResource)(socket, {
34
+ requester: {
35
+ id: name,
36
+ type: 'Handler',
37
+ },
38
+ });
39
+ const instance = {
40
+ use,
41
+ on,
42
+ sendMessage,
43
+ resources: {
44
+ removeResource,
45
+ upsertResource,
46
+ },
47
+ proxy: {
48
+ revoke,
49
+ },
50
+ ask,
51
+ };
52
+ return instance;
53
+ };
54
+ exports.createModule = createModule;
55
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Instance/GeneralModule/index.ts"],"names":[],"mappings":";;;AACA,sCAAqE;AACrE,yCAAuC;AACvC,sEAAmE;AACnE,wEAAqE;AAGrE,wEAAuE;AACvE,2EAAiF;AACjF,2EAA8E;AAqBvE,MAAM,YAAY,GAAG,CAA6C,EACxE,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,KAAK,EACL,SAAS,EACT,YAAY,GACmB,EAAE,EAAE;IACnC,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,IAAA,qBAAY,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;IAE3D,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,IAAA,gBAAO,EAC1C,OAAO,EACP,YAAY,EACZ,YAAY,IAAI,EAAE,EAClB,IAAI,EACJ,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,KAAI,EAAE,EACvB,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,kBAAkB,KAAI,EAAE,EAClC,SAAS,CACT,CAAC;IAEF,IAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,EAAE;QACtB,eAAe,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAC,CAAC;KACnC;IAED,IAAI,KAAK,EAAE;QACV,IAAA,2BAAY,EAAC,MAAM,EAAE;YACpB,OAAO;YACP,IAAI;YACJ,GAAG,KAAK;SACR,CAAC,CAAC;KACH;IAED,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,IAAA,0BAAiB,GAAE,CAAC;IAC5E,IAAA,2BAAa,EAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAEnC,MAAM,WAAW,GAAG,IAAA,kCAAoB,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEvD,IAAI,MAAM,GAAG,GAAG,EAAE;QACjB,IAAI,KAAK,EAAE;YACV,IAAA,yBAAW,EAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;SAClC;IACF,CAAC,CAAC;IAEF,MAAM,EAAE,EAAE,EAAE,GAAG,IAAA,gBAAO,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAErC,MAAM,GAAG,GAAG,IAAA,+BAAiB,EAAC,MAAM,EAAE;QACrC,SAAS,EAAE;YACV,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,SAAS;SACf;KACD,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG;QAChB,GAAG;QACH,EAAE;QACF,WAAW;QACX,SAAS,EAAE;YACV,cAAc;YACd,cAAc;SACd;QACD,KAAK,EAAE;YACN,MAAM;SACN;QACD,GAAG;KACH,CAAC;IAEF,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAnEW,QAAA,YAAY,gBAmEvB"}
@@ -0,0 +1,23 @@
1
+ import { Command } from 'kozz-types/dist';
2
+ import { Method, TypeString } from '../../Schema';
3
+ export type HandlerInitParams<Methods extends Record<string, TypeString>> = {
4
+ name: string;
5
+ address: string;
6
+ methods: Record<string, Method<Methods>>;
7
+ boundariesToHandle: string[];
8
+ templatePath?: string;
9
+ signature?: string;
10
+ };
11
+ export type UseFn = (args: Command) => Command;
12
+ export type OriginalFn = (args: Command) => any;
13
+ export declare const createHandlerInstance: <Methods extends Record<string, TypeString>>({ address, methods, name, templatePath, signature, boundariesToHandle, }: HandlerInitParams<Methods>) => {
14
+ use: (useFn: UseFn) => any;
15
+ sendMessage: {
16
+ (contactId: string, boundaryId: string, body: string): void;
17
+ withMedia(contactId: string, boundaryId: string, caption: string, media: import("kozz-types/dist").Media): void;
18
+ };
19
+ resources: {
20
+ removeResource: (name: string) => void;
21
+ upsertResource: (name: string, getter: (args: Record<string, any>) => any) => void;
22
+ };
23
+ };