kozz-module-maker 0.1.1 → 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 (188) 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/src/Instance/Common/ResourceMap/index.ts +0 -26
  155. package/src/Instance/Common/UseFns/index.ts +0 -22
  156. package/src/Instance/Common/onEvent/index.ts +0 -105
  157. package/src/Instance/GeneralModule/index.ts +0 -98
  158. package/src/Message/FromTemplate/index.ts +0 -74
  159. package/src/Message/PayloadCreation/Media.ts +0 -62
  160. package/src/Message/PayloadCreation/React.ts +0 -16
  161. package/src/Message/PayloadCreation/Reply.ts +0 -63
  162. package/src/Message/PayloadCreation/sendMessage.ts +0 -27
  163. package/src/Message/ProxiedMessage/index.ts +0 -27
  164. package/src/Message/RoutineCreation/AskResource/AskResourceApi/index.ts +0 -43
  165. package/src/Message/RoutineCreation/AskResource/index.ts +0 -85
  166. package/src/Message/RoutineCreation/Reply/WithMedia.ts +0 -63
  167. package/src/Message/RoutineCreation/Reply/WithSticker.ts +0 -9
  168. package/src/Message/RoutineCreation/Reply/WithTemplate.ts +0 -28
  169. package/src/Message/RoutineCreation/SendMessage/index.ts +0 -64
  170. package/src/Message/RoutineCreation/reply.ts +0 -23
  171. package/src/Message/index.ts +0 -44
  172. package/src/Message/kozz-md.parser/index.ts +0 -138
  173. package/src/Schema/index.ts +0 -102
  174. package/src/Socket/Events/Emit/ForwardEvent.ts +0 -22
  175. package/src/Socket/Events/Emit/Introduction.ts +0 -28
  176. package/src/Socket/Events/Emit/RequestProxy.ts +0 -38
  177. package/src/Socket/Events/Emit/RevokeProxy.ts +0 -15
  178. package/src/Socket/Events/Handle/AskResource.ts +0 -37
  179. package/src/Socket/Events/Handle/Command.ts +0 -68
  180. package/src/Socket/Events/Handle/ProxiedMessage.ts +0 -28
  181. package/src/Socket/index.ts +0 -40
  182. package/src/Validator/index.ts +0 -81
  183. package/src/messages.kozz.md +0 -52
  184. package/src/util/index.ts +0 -89
  185. /package/{src/Instance/Common/index.ts → dist/Instance/Common/index.d.ts} +0 -0
  186. /package/{src/Message/PayloadCreation/index.ts → dist/Message/PayloadCreation/index.d.ts} +0 -0
  187. /package/{src/Message/RoutineCreation/Reply/index.ts → dist/Message/RoutineCreation/Reply/index.d.ts} +0 -0
  188. /package/{src/index.ts → dist/index.d.ts} +0 -0
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.onCommand = void 0;
4
+ const Message_1 = require("../../Message");
5
+ const Validator_1 = require("../../Validator");
6
+ const util_1 = require("../../util");
7
+ const onCommand = (socket, methods, moduleUseFns, templatePath) => {
8
+ socket.on('command', (command) => {
9
+ if (Object.keys(methods).includes(command.method)) {
10
+ const actualMethod = methods[command.method];
11
+ if ((0, Validator_1.isArgsObjectValid)(command.namedArgs, actualMethod.args)) {
12
+ const message = (0, Message_1.createMessageObject)(socket, (0, util_1.runUse)(moduleUseFns, command), templatePath);
13
+ actualMethod.func(message, command.namedArgs);
14
+ }
15
+ }
16
+ });
17
+ };
18
+ exports.onCommand = onCommand;
19
+ //# sourceMappingURL=Command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Command.js","sourceRoot":"","sources":["../../../src/Socket/Events/Command.ts"],"names":[],"mappings":";;;AAGA,2CAAoD;AACpD,+CAAoD;AACpD,qCAAoC;AAE7B,MAAM,SAAS,GAAG,CAGxB,MAAc,EACd,OAAU,EACV,YAAqB,EACrB,YAAoB,EACnB,EAAE;IACH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAgB,EAAE,EAAE;QACzC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAClD,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC7C,IAAI,IAAA,6BAAiB,EAAC,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE;gBAC5D,MAAM,OAAO,GAAG,IAAA,6BAAmB,EAClC,MAAM,EACN,IAAA,aAAM,EAAC,YAAY,EAAE,OAAO,CAAC,EAC7B,YAAY,CACZ,CAAC;gBACF,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;aAC9C;SACD;IACF,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AArBW,QAAA,SAAS,aAqBpB"}
@@ -0,0 +1,6 @@
1
+ import { Socket } from 'socket.io-client';
2
+ type EventCallback = (payload: any) => any;
3
+ export declare const listenBoundary: (gatewaySocket: Socket, instanceName: string) => (boundaryId: string) => {
4
+ when: (eventName: string, callback: EventCallback) => void;
5
+ };
6
+ export {};
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.listenBoundary = void 0;
4
+ const listenBoundary = (gatewaySocket, instanceName) => (boundaryId) => {
5
+ return {
6
+ when: (eventName, callback) => {
7
+ const payload = {
8
+ destination: {
9
+ id: instanceName,
10
+ type: 'Handler',
11
+ },
12
+ eventName,
13
+ sourceId: boundaryId,
14
+ };
15
+ gatewaySocket.emit('event_forward_request', payload);
16
+ gatewaySocket.on(eventName, callback);
17
+ },
18
+ };
19
+ };
20
+ exports.listenBoundary = listenBoundary;
21
+ //# sourceMappingURL=ForwardEvent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ForwardEvent.js","sourceRoot":"","sources":["../../../../src/Socket/Events/Emit/ForwardEvent.ts"],"names":[],"mappings":";;;AAKO,MAAM,cAAc,GAC1B,CAAC,aAAqB,EAAE,YAAoB,EAAE,EAAE,CAAC,CAAC,UAAkB,EAAE,EAAE;IACvE,OAAO;QACN,IAAI,EAAE,CAAC,SAAiB,EAAE,QAAuB,EAAE,EAAE;YACpD,MAAM,OAAO,GAAwB;gBACpC,WAAW,EAAE;oBACZ,EAAE,EAAE,YAAY;oBAChB,IAAI,EAAE,SAAS;iBACf;gBACD,SAAS;gBACT,QAAQ,EAAE,UAAU;aACpB,CAAC;YACF,aAAa,CAAC,IAAI,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;YACrD,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACvC,CAAC;KACD,CAAC;AACH,CAAC,CAAC;AAhBU,QAAA,cAAc,kBAgBxB"}
@@ -0,0 +1,10 @@
1
+ import { Socket } from 'socket.io-client';
2
+ import { Method, TypeString } from '../../../Schema';
3
+ /**
4
+ * Emits the introduction payload to the gateway
5
+ * @param socket
6
+ * @param handlerName
7
+ * @param methods
8
+ * @param signature
9
+ */
10
+ export declare const introduce: <T extends Record<string, Method<Record<string, TypeString>>>>(socket: Socket, handlerName: string, methods: T, signature?: string) => void;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.introduce = void 0;
4
+ const util_1 = require("src/util");
5
+ /**
6
+ * Emits the introduction payload to the gateway
7
+ * @param socket
8
+ * @param handlerName
9
+ * @param methods
10
+ * @param signature
11
+ */
12
+ const introduce = (socket, handlerName, methods, signature) => {
13
+ const payload = {
14
+ methods: Object.keys(methods),
15
+ name: handlerName,
16
+ role: 'handler',
17
+ };
18
+ socket.emit('introduction', (0, util_1.signPayload)(payload, signature));
19
+ };
20
+ exports.introduce = introduce;
21
+ //# sourceMappingURL=Introduction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Introduction.js","sourceRoot":"","sources":["../../../../src/Socket/Events/Emit/Introduction.ts"],"names":[],"mappings":";;;AAGA,mCAAuC;AAEvC;;;;;;GAMG;AACI,MAAM,SAAS,GAAG,CAGxB,MAAc,EACd,WAAmB,EACnB,OAAU,EACV,SAAkB,EACjB,EAAE;IACH,MAAM,OAAO,GAA8C;QAC1D,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,SAAS;KACf,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,IAAA,kBAAW,EAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;AAC9D,CAAC,CAAC;AAfW,QAAA,SAAS,aAepB"}
File without changes
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=ProxyRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProxyRequest.js","sourceRoot":"","sources":["../../../../src/Socket/Events/Emit/ProxyRequest.ts"],"names":[],"mappings":""}
@@ -0,0 +1,18 @@
1
+ import { Source } from 'kozz-types';
2
+ import { Socket } from 'socket.io-client';
3
+ import { ProxiedMessageObject } from 'src/Message/ProxiedMessage';
4
+ export type ProxyInitParams = {
5
+ address: string;
6
+ source: Source;
7
+ name: string;
8
+ destinationOverride?: string;
9
+ signature?: string;
10
+ onMessage: (message: ProxiedMessageObject) => any;
11
+ keepProxyAlive?: boolean;
12
+ };
13
+ /**
14
+ * Request proxy for a given
15
+ * @param socket
16
+ * @param proxyInitParams
17
+ */
18
+ export declare const requestProxy: (socket: Socket, proxyInitParams: ProxyInitParams) => void;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.requestProxy = void 0;
4
+ const ProxiedMessage_1 = require("../Handle/ProxiedMessage");
5
+ const createProxyRequestPayload = (proxyInitParams) => {
6
+ return {
7
+ source: proxyInitParams.source,
8
+ keepAlive: proxyInitParams.keepProxyAlive,
9
+ destination: proxyInitParams.destinationOverride || proxyInitParams.name,
10
+ };
11
+ };
12
+ /**
13
+ * Request proxy for a given
14
+ * @param socket
15
+ * @param proxyInitParams
16
+ */
17
+ const requestProxy = (socket, proxyInitParams) => {
18
+ (0, ProxiedMessage_1.onProxiedMessage)(socket, proxyInitParams.source, proxyInitParams.onMessage);
19
+ socket.emit('request_proxy', createProxyRequestPayload(proxyInitParams));
20
+ };
21
+ exports.requestProxy = requestProxy;
22
+ //# sourceMappingURL=RequestProxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestProxy.js","sourceRoot":"","sources":["../../../../src/Socket/Events/Emit/RequestProxy.ts"],"names":[],"mappings":";;;AAEA,6DAA4D;AAa5D,MAAM,yBAAyB,GAAG,CACjC,eAAgC,EACV,EAAE;IACxB,OAAO;QACN,MAAM,EAAE,eAAe,CAAC,MAAM;QAC9B,SAAS,EAAE,eAAe,CAAC,cAAc;QACzC,WAAW,EAAE,eAAe,CAAC,mBAAmB,IAAI,eAAe,CAAC,IAAI;KACxE,CAAC;AACH,CAAC,CAAC;AAEF;;;;GAIG;AACI,MAAM,YAAY,GAAG,CAC3B,MAAc,EACd,eAAgC,EAC/B,EAAE;IACH,IAAA,iCAAgB,EAAC,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IAE5E,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,yBAAyB,CAAC,eAAe,CAAC,CAAC,CAAC;AAC1E,CAAC,CAAC;AAPW,QAAA,YAAY,gBAOvB"}
@@ -0,0 +1,8 @@
1
+ import { Source } from 'kozz-types';
2
+ import { Socket } from 'socket.io-client';
3
+ /**
4
+ * Request the revoking of a proxy
5
+ * @param socket
6
+ * @param source
7
+ */
8
+ export declare const revokeProxy: (socket: Socket, source: Source) => void;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.revokeProxy = void 0;
4
+ /**
5
+ * Request the revoking of a proxy
6
+ * @param socket
7
+ * @param source
8
+ */
9
+ const revokeProxy = (socket, source) => {
10
+ const payload = {
11
+ source: source,
12
+ };
13
+ socket.emit('revoke_proxy', payload);
14
+ };
15
+ exports.revokeProxy = revokeProxy;
16
+ //# sourceMappingURL=RevokeProxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RevokeProxy.js","sourceRoot":"","sources":["../../../../src/Socket/Events/Emit/RevokeProxy.ts"],"names":[],"mappings":";;;AAGA;;;;GAIG;AACI,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,MAAc,EAAE,EAAE;IAC7D,MAAM,OAAO,GAAuB;QACnC,MAAM,EAAE,MAAM;KACd,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;AACtC,CAAC,CAAC;AANW,QAAA,WAAW,eAMtB"}
@@ -0,0 +1,8 @@
1
+ import { Socket } from 'socket.io-client';
2
+ import { ResourceMap } from '../../../Instance/Common/ResourceMap';
3
+ /**
4
+ * Provide the resource asked
5
+ * @param socket
6
+ * @param resourceMap
7
+ */
8
+ export declare const onAskResource: (socket: Socket, resourceMap: ResourceMap) => void;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.onAskResource = void 0;
4
+ /**
5
+ * Provide the resource asked
6
+ * @param socket
7
+ * @param resourceMap
8
+ */
9
+ const onAskResource = (socket, resourceMap) => {
10
+ socket.on('ask_resource', (payload) => {
11
+ const resourceGetter = resourceMap[payload.request.resource];
12
+ if (!resourceGetter)
13
+ return socket.emit('reply_resource', {
14
+ ...payload,
15
+ });
16
+ promisify(resourceGetter(payload.request.data)).then(resource => {
17
+ const responsePayload = {
18
+ ...payload,
19
+ response: resource,
20
+ };
21
+ socket.emit('reply_resource', responsePayload);
22
+ });
23
+ });
24
+ };
25
+ exports.onAskResource = onAskResource;
26
+ const promisify = (resource) => {
27
+ return new Promise(resolve => {
28
+ if (resource instanceof Promise) {
29
+ resource.then(resp => resolve(resp));
30
+ }
31
+ else {
32
+ resolve(resource);
33
+ }
34
+ });
35
+ };
36
+ //# sourceMappingURL=AskResource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AskResource.js","sourceRoot":"","sources":["../../../../src/Socket/Events/Handle/AskResource.ts"],"names":[],"mappings":";;;AAIA;;;;GAIG;AACI,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,WAAwB,EAAE,EAAE;IACzE,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,OAA2B,EAAE,EAAE;QACzD,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC7D,IAAI,CAAC,cAAc;YAClB,OAAO,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE;gBACpC,GAAG,OAAO;aACV,CAAC,CAAC;QAEJ,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC/D,MAAM,eAAe,GAA2B;gBAC/C,GAAG,OAAO;gBACV,QAAQ,EAAE,QAAQ;aAClB,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAjBW,QAAA,aAAa,iBAiBxB;AAEF,MAAM,SAAS,GAAG,CAAC,QAAiB,EAAE,EAAE;IACvC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,QAAQ,YAAY,OAAO,EAAE;YAChC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;SACrC;aAAM;YACN,OAAO,CAAC,QAAQ,CAAC,CAAC;SAClB;IACF,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { Socket } from 'socket.io-client';
2
+ import { Method } from '../../..';
3
+ import { UseFn } from 'src/Instance/Common';
4
+ /**
5
+ * Handles the command received. It will check if the boundary should have it's command handled,
6
+ * find the correct method, parse, typecheck the args, run the middlewares and try to run the method
7
+ * @param socket
8
+ * @param methods
9
+ * @param moduleUseFns
10
+ * @param handlerName
11
+ * @param templatePath
12
+ * @param boundariesToHandle
13
+ */
14
+ export declare const onCommand: <T extends Record<string, Method<Record<string, any>>>>(socket: Socket, methods: T, moduleUseFns: UseFn[], handlerName: string, templatePath: string, boundariesToHandle: string[]) => void;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.onCommand = void 0;
4
+ const Message_1 = require("../../../Message");
5
+ const Validator_1 = require("../../../Validator");
6
+ const util_1 = require("../../../util");
7
+ /**
8
+ * Handles the command received. It will check if the boundary should have it's command handled,
9
+ * find the correct method, parse, typecheck the args, run the middlewares and try to run the method
10
+ * @param socket
11
+ * @param methods
12
+ * @param moduleUseFns
13
+ * @param handlerName
14
+ * @param templatePath
15
+ * @param boundariesToHandle
16
+ */
17
+ const onCommand = (socket, methods, moduleUseFns, handlerName, templatePath, boundariesToHandle) => {
18
+ socket.on('command', (command) => {
19
+ // If the handler doesnt want to handle commands for the provided boundary
20
+ if (!boundariesToHandle.includes(command.boundaryName) &&
21
+ !boundariesToHandle.includes('*')) {
22
+ return;
23
+ }
24
+ const actualMethod = methods[(0, util_1.normalizeString)((0, util_1.normalizeString)(command.method))] ||
25
+ methods['fallback'];
26
+ if (!actualMethod)
27
+ return;
28
+ if ((0, Validator_1.isArgsObjectValid)(command.namedArgs || {}, actualMethod.args)) {
29
+ const updatedCommand = (0, util_1.runUse)(moduleUseFns, command);
30
+ const message = (0, Message_1.createMessageObject)(socket, command.message, handlerName, templatePath);
31
+ socket.emit('react_message', {
32
+ messageId: command.message.id,
33
+ boundaryId: command.boundaryId,
34
+ emote: '✔',
35
+ });
36
+ actualMethod.func(message, updatedCommand.namedArgs || {});
37
+ }
38
+ else {
39
+ socket.emit('react_message', {
40
+ messageId: command.message.id,
41
+ boundaryId: command.boundaryId,
42
+ emote: '❌',
43
+ });
44
+ }
45
+ });
46
+ };
47
+ exports.onCommand = onCommand;
48
+ //# sourceMappingURL=Command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Command.js","sourceRoot":"","sources":["../../../../src/Socket/Events/Handle/Command.ts"],"names":[],"mappings":";;;AAGA,8CAAuD;AACvD,kDAAuD;AACvD,wCAAwD;AAGxD;;;;;;;;;GASG;AACI,MAAM,SAAS,GAAG,CAGxB,MAAc,EACd,OAAU,EACV,YAAqB,EACrB,WAAmB,EACnB,YAAoB,EACpB,kBAA4B,EAC3B,EAAE;IACH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAgB,EAAE,EAAE;QACzC,0EAA0E;QAC1E,IACC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC;YAClD,CAAC,kBAAkB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAChC;YACD,OAAO;SACP;QAED,MAAM,YAAY,GACjB,OAAO,CAAC,IAAA,sBAAe,EAAC,IAAA,sBAAe,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;YACzD,OAAO,CAAC,UAAU,CAAC,CAAC;QACrB,IAAI,CAAC,YAAY;YAAE,OAAO;QAE1B,IAAI,IAAA,6BAAiB,EAAC,OAAO,CAAC,SAAS,IAAI,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE;YAClE,MAAM,cAAc,GAAG,IAAA,aAAM,EAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YAErD,MAAM,OAAO,GAAG,IAAA,6BAAmB,EAClC,MAAM,EACN,OAAO,CAAC,OAAO,EACf,WAAW,EACX,YAAY,CACZ,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE;gBAC5B,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE;gBAC7B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,KAAK,EAAE,GAAG;aACV,CAAC,CAAC;YAEH,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;SAC3D;aAAM;YACN,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE;gBAC5B,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE;gBAC7B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,KAAK,EAAE,GAAG;aACV,CAAC,CAAC;SACH;IACF,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAjDW,QAAA,SAAS,aAiDpB"}
@@ -0,0 +1,10 @@
1
+ import { Source } from 'kozz-types';
2
+ import { Socket } from 'socket.io-client';
3
+ import { ProxiedMessageObject } from 'src/Message/ProxiedMessage';
4
+ /**
5
+ * Handles the message proxied to the handler
6
+ * @param socket
7
+ * @param source
8
+ * @param cb
9
+ */
10
+ export declare const onProxiedMessage: (socket: Socket, source: Source, cb: (message: ProxiedMessageObject) => any) => void;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.onProxiedMessage = void 0;
4
+ const ProxiedMessage_1 = require("src/Message/ProxiedMessage");
5
+ /**
6
+ * Handles the message proxied to the handler
7
+ * @param socket
8
+ * @param source
9
+ * @param cb
10
+ */
11
+ const onProxiedMessage = (socket, source, cb) => {
12
+ socket.on('proxied_message', payload => {
13
+ const proxiedMessageObject = (0, ProxiedMessage_1.createProxiedMessageOject)(socket, source, payload, source.split('/')[0]);
14
+ cb(proxiedMessageObject);
15
+ });
16
+ };
17
+ exports.onProxiedMessage = onProxiedMessage;
18
+ //# sourceMappingURL=ProxiedMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProxiedMessage.js","sourceRoot":"","sources":["../../../../src/Socket/Events/Handle/ProxiedMessage.ts"],"names":[],"mappings":";;;AAEA,+DAGoC;AAEpC;;;;;GAKG;AACI,MAAM,gBAAgB,GAAG,CAC/B,MAAc,EACd,MAAc,EACd,EAA0C,EACzC,EAAE;IACH,MAAM,CAAC,EAAE,CAAC,iBAAiB,EAAE,OAAO,CAAC,EAAE;QACtC,MAAM,oBAAoB,GAAG,IAAA,0CAAyB,EACrD,MAAM,EACN,MAAM,EACN,OAAO,EACP,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CACpB,CAAC;QACF,EAAE,CAAC,oBAAoB,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAdW,QAAA,gBAAgB,oBAc3B"}
@@ -0,0 +1,3 @@
1
+ import { Socket } from 'socket.io-client';
2
+ import { Method, TypeString } from '../../Schema';
3
+ export declare const introduce: <T extends Record<string, Method<Record<string, TypeString>>>>(socket: Socket, handlerName: string, methods: T) => void;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.introduce = void 0;
4
+ const util_1 = require("src/util");
5
+ const introduce = (socket, handlerName, methods) => {
6
+ const payload = {
7
+ methods: Object.keys(methods),
8
+ name: handlerName,
9
+ role: 'handler',
10
+ timestamp: new Date().getTime(),
11
+ };
12
+ socket.emit('introduction', (0, util_1.signPayload)(payload));
13
+ };
14
+ exports.introduce = introduce;
15
+ //# sourceMappingURL=Introduction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Introduction.js","sourceRoot":"","sources":["../../../src/Socket/Events/Introduction.ts"],"names":[],"mappings":";;;AAGA,mCAAuC;AAEhC,MAAM,SAAS,GAAG,CAGxB,MAAc,EACd,WAAmB,EACnB,OAAU,EACT,EAAE;IACH,MAAM,OAAO,GAA8C;QAC1D,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE;KAC/B,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,IAAA,kBAAW,EAAC,OAAO,CAAC,CAAC,CAAC;AACnD,CAAC,CAAC;AAfW,QAAA,SAAS,aAepB"}
@@ -0,0 +1,2 @@
1
+ import { Socket } from 'socket.io-client';
2
+ export declare const onProxiedMessage: (socket: Socket) => void;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.onProxiedMessage = void 0;
4
+ const onProxiedMessage = (socket) => {
5
+ socket.on('proxied_message', payload => {
6
+ console.log(payload.body);
7
+ });
8
+ };
9
+ exports.onProxiedMessage = onProxiedMessage;
10
+ //# sourceMappingURL=ProxiedMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProxiedMessage.js","sourceRoot":"","sources":["../../../src/Socket/Events/ProxiedMessage.ts"],"names":[],"mappings":";;;AAEO,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAAE,EAAE;IAClD,MAAM,CAAC,EAAE,CAAC,iBAAiB,EAAE,OAAO,CAAC,EAAE;QACtC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAJW,QAAA,gBAAgB,oBAI3B"}
@@ -0,0 +1,2 @@
1
+ import { Socket } from 'socket.io-client';
2
+ export declare const onCommand: (socket: Socket, callback: Function) => void;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.onCommand = void 0;
4
+ const onCommand = (socket, callback) => { };
5
+ exports.onCommand = onCommand;
6
+ //# sourceMappingURL=Command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Command.js","sourceRoot":"","sources":["../../../src/Socket/Messages/Command.ts"],"names":[],"mappings":";;;AAEO,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,QAAkB,EAAE,EAAE,GAAE,CAAC,CAAC;AAAvD,QAAA,SAAS,aAA8C"}
@@ -0,0 +1,3 @@
1
+ import { Socket } from 'socket.io-client';
2
+ import { Method, TypeString } from '../../Schema';
3
+ export declare const introduce: <T extends Record<string, Method<Record<string, TypeString>>>>(socket: Socket, handlerName: string, methods: T) => void;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.introduce = void 0;
4
+ const util_1 = require("src/util");
5
+ const introduce = (socket, handlerName, methods) => {
6
+ const payload = {
7
+ methods: Object.keys(methods),
8
+ name: handlerName,
9
+ role: 'handler',
10
+ timestamp: new Date().getTime(),
11
+ };
12
+ socket.emit('introduction', (0, util_1.signPayload)(payload));
13
+ };
14
+ exports.introduce = introduce;
15
+ //# sourceMappingURL=Introduction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Introduction.js","sourceRoot":"","sources":["../../../src/Socket/Messages/Introduction.ts"],"names":[],"mappings":";;;AAKA,mCAAuC;AAEhC,MAAM,SAAS,GAAG,CAGxB,MAAc,EACd,WAAmB,EACnB,OAAU,EACT,EAAE;IACH,MAAM,OAAO,GAA8C;QAC1D,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE;KAC/B,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,IAAA,kBAAW,EAAC,OAAO,CAAC,CAAC,CAAC;AACnD,CAAC,CAAC;AAfW,QAAA,SAAS,aAepB"}
@@ -0,0 +1,6 @@
1
+ import { Method } from '../Schema';
2
+ import { UseFn } from '../Instance/Common';
3
+ export declare const connect: <T extends Record<string, any>>(address: string, moduleUseFns: UseFn[], templatePath: string, handlerName: string, methods: T, boundariesToHandle: string[], signature?: string) => {
4
+ socket: import("socket.io-client").Socket<import("@socket.io/component-emitter").DefaultEventsMap, import("@socket.io/component-emitter").DefaultEventsMap>;
5
+ registerMethods: <T_1 extends Record<string, Method<Record<string, any>>>>(methods: T_1) => void;
6
+ };
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.connect = void 0;
4
+ const socket_io_client_1 = require("socket.io-client");
5
+ const Introduction_1 = require("./Events/Emit/Introduction");
6
+ const Command_1 = require("./Events/Handle/Command");
7
+ const connect = (address, moduleUseFns, templatePath, handlerName, methods, boundariesToHandle, signature) => {
8
+ const socket = (0, socket_io_client_1.io)(address);
9
+ socket.on('connect', () => {
10
+ (0, Introduction_1.introduce)(socket, handlerName, methods, signature);
11
+ });
12
+ const registerMethods = (methods) => (0, Command_1.onCommand)(socket, methods, moduleUseFns, handlerName, templatePath, boundariesToHandle);
13
+ return {
14
+ socket,
15
+ registerMethods,
16
+ };
17
+ };
18
+ exports.connect = connect;
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Socket/index.ts"],"names":[],"mappings":";;;AAAA,uDAAsC;AACtC,6DAAuD;AAGvD,qDAAoD;AAE7C,MAAM,OAAO,GAAG,CACtB,OAAe,EACf,YAAqB,EACrB,YAAoB,EACpB,WAAmB,EACnB,OAAU,EACV,kBAA4B,EAC5B,SAAkB,EACjB,EAAE;IACH,MAAM,MAAM,GAAG,IAAA,qBAAE,EAAC,OAAO,CAAC,CAAC;IAE3B,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;QACzB,IAAA,wBAAS,EAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,CAGvB,OAAU,EACT,EAAE,CACH,IAAA,mBAAS,EACR,MAAM,EACN,OAAO,EACP,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,kBAAkB,CAClB,CAAC;IAEH,OAAO;QACN,MAAM;QACN,eAAe;KACf,CAAC;AACH,CAAC,CAAC;AAjCW,QAAA,OAAO,WAiClB"}
@@ -0,0 +1,16 @@
1
+ import { ArrayTypeString, OptionalTypeString, PrimaryTypeString, TypeString } from '../Schema';
2
+ type TypeDescriptor<T extends TypeString> = {
3
+ array: T extends ArrayTypeString ? true : false;
4
+ optional: T extends OptionalTypeString ? true : false;
5
+ type: T extends PrimaryTypeString ? T : T extends `${infer Type}[]?` ? Type : T extends `${infer Type}?` ? Type : T extends `${infer Type}[]` ? Type : never;
6
+ };
7
+ export declare const describeType: <Type extends TypeString>(type: Type) => TypeDescriptor<Type>;
8
+ export declare const isArgValid: <Type extends TypeString>(arg: unknown, typeDescriptor: TypeDescriptor<Type>) => any;
9
+ /**
10
+ * Check ifm the arguments of a provided command are valid
11
+ * @param args
12
+ * @param descriptionMap
13
+ * @returns
14
+ */
15
+ export declare const isArgsObjectValid: <Type extends TypeString>(args: Record<string, unknown>, descriptionMap?: Record<string, Type>) => boolean;
16
+ export {};
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isArgsObjectValid = exports.isArgValid = exports.describeType = void 0;
4
+ const typeIsArray = (type) => {
5
+ return type.includes('[]');
6
+ };
7
+ const typeIsOptional = (type) => {
8
+ return type.includes('?');
9
+ };
10
+ const toPrimitiveType = (type) => {
11
+ if (type.includes('boolean')) {
12
+ return 'boolean';
13
+ }
14
+ if (type.includes('number')) {
15
+ return 'number';
16
+ }
17
+ return 'string';
18
+ };
19
+ const describeType = (type) => ({
20
+ array: typeIsArray(type),
21
+ optional: typeIsOptional(type),
22
+ type: toPrimitiveType(type),
23
+ });
24
+ exports.describeType = describeType;
25
+ const isArgValid = (arg, typeDescriptor) => {
26
+ if (arg === undefined && typeDescriptor.optional) {
27
+ return true;
28
+ }
29
+ if (Array.isArray(arg) !== typeDescriptor.array) {
30
+ return false;
31
+ }
32
+ if (Array.isArray(arg) && typeDescriptor.array && arg.length === 0) {
33
+ return true;
34
+ }
35
+ if (Array.isArray(arg) && typeDescriptor.array && arg.length > 0) {
36
+ return arg.reduce((valid, arg) => {
37
+ return valid && typeof arg === typeDescriptor.type;
38
+ }, true);
39
+ }
40
+ return typeof arg === typeDescriptor.type;
41
+ };
42
+ exports.isArgValid = isArgValid;
43
+ /**
44
+ * Check ifm the arguments of a provided command are valid
45
+ * @param args
46
+ * @param descriptionMap
47
+ * @returns
48
+ */
49
+ const isArgsObjectValid = (args, descriptionMap = {}) => {
50
+ return Object.entries(descriptionMap).reduce((valid, [argName, argType]) => {
51
+ return valid && (0, exports.isArgValid)(args[argName], (0, exports.describeType)(argType));
52
+ }, true);
53
+ };
54
+ exports.isArgsObjectValid = isArgsObjectValid;
55
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Validator/index.ts"],"names":[],"mappings":";;;AAqBA,MAAM,WAAW,GAAG,CAAC,IAAgB,EAA2B,EAAE;IACjE,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,IAAgB,EAA8B,EAAE;IACvE,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,IAAgB,EAAqB,EAAE;IAC/D,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;QAC7B,OAAO,SAAS,CAAC;KACjB;IACD,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAC5B,OAAO,QAAQ,CAAC;KAChB;IACD,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEK,MAAM,YAAY,GAAG,CAA0B,IAAU,EAAE,EAAE,CACnE,CAAC;IACA,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC;IACxB,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC;IAC9B,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC;CACF,CAAA,CAAC;AALf,QAAA,YAAY,gBAKG;AAErB,MAAM,UAAU,GAAG,CACzB,GAAY,EACZ,cAAoC,EACnC,EAAE;IACH,IAAI,GAAG,KAAK,SAAS,IAAI,cAAc,CAAC,QAAQ,EAAE;QACjD,OAAO,IAAI,CAAC;KACZ;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,cAAc,CAAC,KAAK,EAAE;QAChD,OAAO,KAAK,CAAC;KACb;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;QACnE,OAAO,IAAI,CAAC;KACZ;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;QACjE,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAChC,OAAO,KAAK,IAAI,OAAO,GAAG,KAAK,cAAc,CAAC,IAAI,CAAC;QACpD,CAAC,EAAE,IAAI,CAAC,CAAC;KACT;IACD,OAAO,OAAO,GAAG,KAAK,cAAc,CAAC,IAAI,CAAC;AAC3C,CAAC,CAAC;AAnBW,QAAA,UAAU,cAmBrB;AAEF;;;;;GAKG;AACI,MAAM,iBAAiB,GAAG,CAChC,IAA6B,EAC7B,iBAAuC,EAAE,EACxC,EAAE;IACH,OAAO,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE;QAC1E,OAAO,KAAK,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,OAAO,CAAC,EAAE,IAAA,oBAAY,EAAC,OAAO,CAAC,CAAC,CAAC;IAClE,CAAC,EAAE,IAAI,CAAC,CAAC;AACV,CAAC,CAAC;AAPW,QAAA,iBAAiB,qBAO5B"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const _1 = require(".");
4
+ const defaultGatewayUrl = 'http://127.0.0.1:4521';
5
+ const defaultMethod = (0, _1.createMethod)('default', (requester, { bool }) => {
6
+ console.log(bool);
7
+ requester.reply('hello from kozz-bot');
8
+ }, {
9
+ bool: 'boolean?',
10
+ });
11
+ const myModule = (0, _1.createModule)({
12
+ name: 'hello',
13
+ address: defaultGatewayUrl,
14
+ commands: {
15
+ boundariesToHandle: ['*'],
16
+ methods: {
17
+ ...defaultMethod,
18
+ },
19
+ },
20
+ });
21
+ //# sourceMappingURL=debugIndex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debugIndex.js","sourceRoot":"","sources":["../src/debugIndex.ts"],"names":[],"mappings":";;AAAA,wBAA+C;AAE/C,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AAElD,MAAM,aAAa,GAAG,IAAA,eAAY,EACjC,SAAS,EACT,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;IACvB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClB,SAAS,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;AACxC,CAAC,EAED;IACC,IAAI,EAAE,UAAU;CAChB,CACD,CAAC;AAEF,MAAM,QAAQ,GAAG,IAAA,eAAY,EAAC;IAC7B,IAAI,EAAE,OAAO;IACb,OAAO,EAAE,iBAAiB;IAC1B,QAAQ,EAAE;QACT,kBAAkB,EAAE,CAAC,GAAG,CAAC;QACzB,OAAO,EAAE;YACR,GAAG,aAAa;SAChB;KACD;CACD,CAAC,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./Instance/GeneralModule"), exports);
18
+ __exportStar(require("./Schema"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAyC;AACzC,2CAAyB"}
@@ -0,0 +1,25 @@
1
+ /// <reference types="node" />
2
+ import { Command } from 'kozz-types';
3
+ import { UseFn } from '../Instance/Common';
4
+ export declare const runUse: (useArr: UseFn[], args: Command) => Command;
5
+ export declare function normalizeString(string: string): string;
6
+ export declare const randomId: () => `${string}-${string}-${string}-${string}-${string}`;
7
+ export declare const signPayload: <T extends Record<string, any>>(payload: T, signature?: string) => Promise<T & {
8
+ signature: Buffer;
9
+ }> | (T & {
10
+ signature: string;
11
+ });
12
+ /**
13
+ * Useful for when you need to authenticate in the web. Still didn't managed to make it work
14
+ * @param payload
15
+ * @returns
16
+ */
17
+ export declare const signInBrowser: <T extends Record<string, any>>(payload: T) => any;
18
+ /**
19
+ * Sign any payload using fs to retrieve the key
20
+ * @param payload
21
+ * @returns
22
+ */
23
+ export declare const signInNodeEnvironment: <T extends Record<string, any>>(payload: T) => Promise<T & {
24
+ signature: Buffer;
25
+ }>;