telepact 1.0.0-alpha.120

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 (482) hide show
  1. package/README.md +71 -0
  2. package/dist/LICENSE +201 -0
  3. package/dist/NOTICE +15 -0
  4. package/dist/inc/auth.telepact.json +29 -0
  5. package/dist/inc/internal.telepact.json +258 -0
  6. package/dist/inc/json-schema.json +245 -0
  7. package/dist/inc/mock-internal.telepact.json +157 -0
  8. package/dist/index.cjs.js +5186 -0
  9. package/dist/index.esm.js +5167 -0
  10. package/dist/index.iife.js +5188 -0
  11. package/dist/src/Client.d.ts +20 -0
  12. package/dist/src/Client.js +59 -0
  13. package/dist/src/Client.js.map +1 -0
  14. package/dist/src/DefaultSerialization.d.ts +9 -0
  15. package/dist/src/DefaultSerialization.js +35 -0
  16. package/dist/src/DefaultSerialization.js.map +1 -0
  17. package/dist/src/Message.d.ts +7 -0
  18. package/dist/src/Message.js +32 -0
  19. package/dist/src/Message.js.map +1 -0
  20. package/dist/src/MockServer.d.ts +27 -0
  21. package/dist/src/MockServer.js +68 -0
  22. package/dist/src/MockServer.js.map +1 -0
  23. package/dist/src/MockTelepactSchema.d.ts +17 -0
  24. package/dist/src/MockTelepactSchema.js +45 -0
  25. package/dist/src/MockTelepactSchema.js.map +1 -0
  26. package/dist/src/RandomGenerator.d.ts +15 -0
  27. package/dist/src/RandomGenerator.js +107 -0
  28. package/dist/src/RandomGenerator.js.map +1 -0
  29. package/dist/src/Serialization.d.ts +13 -0
  30. package/dist/src/Serialization.js +17 -0
  31. package/dist/src/Serialization.js.map +1 -0
  32. package/dist/src/SerializationError.d.ts +3 -0
  33. package/dist/src/SerializationError.js +22 -0
  34. package/dist/src/SerializationError.js.map +1 -0
  35. package/dist/src/Serializer.d.ts +15 -0
  36. package/dist/src/Serializer.js +43 -0
  37. package/dist/src/Serializer.js.map +1 -0
  38. package/dist/src/Server.d.ts +22 -0
  39. package/dist/src/Server.js +61 -0
  40. package/dist/src/Server.js.map +1 -0
  41. package/dist/src/TelepactError.d.ts +4 -0
  42. package/dist/src/TelepactError.js +24 -0
  43. package/dist/src/TelepactError.js.map +1 -0
  44. package/dist/src/TelepactSchema.d.ts +21 -0
  45. package/dist/src/TelepactSchema.js +50 -0
  46. package/dist/src/TelepactSchema.js.map +1 -0
  47. package/dist/src/TelepactSchemaFiles.d.ts +5 -0
  48. package/dist/src/TelepactSchemaFiles.js +23 -0
  49. package/dist/src/TelepactSchemaFiles.js.map +1 -0
  50. package/dist/src/TelepactSchemaParseError.d.ts +9 -0
  51. package/dist/src/TelepactSchemaParseError.js +31 -0
  52. package/dist/src/TelepactSchemaParseError.js.map +1 -0
  53. package/dist/src/fileSystem.d.ts +18 -0
  54. package/dist/src/fileSystem.js +17 -0
  55. package/dist/src/fileSystem.js.map +1 -0
  56. package/dist/src/index.d.ts +19 -0
  57. package/dist/src/index.js +35 -0
  58. package/dist/src/index.js.map +1 -0
  59. package/dist/src/internal/ClientHandleMessage.d.ts +3 -0
  60. package/dist/src/internal/ClientHandleMessage.js +52 -0
  61. package/dist/src/internal/ClientHandleMessage.js.map +1 -0
  62. package/dist/src/internal/DeserializeInternal.d.ts +5 -0
  63. package/dist/src/internal/DeserializeInternal.js +65 -0
  64. package/dist/src/internal/DeserializeInternal.js.map +1 -0
  65. package/dist/src/internal/HandleMessage.d.ts +3 -0
  66. package/dist/src/internal/HandleMessage.js +168 -0
  67. package/dist/src/internal/HandleMessage.js.map +1 -0
  68. package/dist/src/internal/ObjectsAreEqual.d.ts +1 -0
  69. package/dist/src/internal/ObjectsAreEqual.js +40 -0
  70. package/dist/src/internal/ObjectsAreEqual.js.map +1 -0
  71. package/dist/src/internal/ParseRequestMessage.d.ts +4 -0
  72. package/dist/src/internal/ParseRequestMessage.js +46 -0
  73. package/dist/src/internal/ParseRequestMessage.js.map +1 -0
  74. package/dist/src/internal/ProcessBytes.d.ts +8 -0
  75. package/dist/src/internal/ProcessBytes.js +47 -0
  76. package/dist/src/internal/ProcessBytes.js.map +1 -0
  77. package/dist/src/internal/SelectStructFields.d.ts +4 -0
  78. package/dist/src/internal/SelectStructFields.js +87 -0
  79. package/dist/src/internal/SelectStructFields.js.map +1 -0
  80. package/dist/src/internal/SerializeInternal.d.ts +5 -0
  81. package/dist/src/internal/SerializeInternal.js +49 -0
  82. package/dist/src/internal/SerializeInternal.js.map +1 -0
  83. package/dist/src/internal/binary/Base64Encoder.d.ts +4 -0
  84. package/dist/src/internal/binary/Base64Encoder.js +18 -0
  85. package/dist/src/internal/binary/Base64Encoder.js.map +1 -0
  86. package/dist/src/internal/binary/Base64Util.d.ts +2 -0
  87. package/dist/src/internal/binary/Base64Util.js +36 -0
  88. package/dist/src/internal/binary/Base64Util.js.map +1 -0
  89. package/dist/src/internal/binary/BinaryEncoder.d.ts +4 -0
  90. package/dist/src/internal/binary/BinaryEncoder.js +18 -0
  91. package/dist/src/internal/binary/BinaryEncoder.js.map +1 -0
  92. package/dist/src/internal/binary/BinaryEncoderUnavailableError.d.ts +2 -0
  93. package/dist/src/internal/binary/BinaryEncoderUnavailableError.js +18 -0
  94. package/dist/src/internal/binary/BinaryEncoderUnavailableError.js.map +1 -0
  95. package/dist/src/internal/binary/BinaryEncoding.d.ts +6 -0
  96. package/dist/src/internal/binary/BinaryEncoding.js +30 -0
  97. package/dist/src/internal/binary/BinaryEncoding.js.map +1 -0
  98. package/dist/src/internal/binary/BinaryEncodingCache.d.ts +7 -0
  99. package/dist/src/internal/binary/BinaryEncodingCache.js +18 -0
  100. package/dist/src/internal/binary/BinaryEncodingCache.js.map +1 -0
  101. package/dist/src/internal/binary/BinaryEncodingMissing.d.ts +3 -0
  102. package/dist/src/internal/binary/BinaryEncodingMissing.js +21 -0
  103. package/dist/src/internal/binary/BinaryEncodingMissing.js.map +1 -0
  104. package/dist/src/internal/binary/BinaryPackNode.d.ts +5 -0
  105. package/dist/src/internal/binary/BinaryPackNode.js +24 -0
  106. package/dist/src/internal/binary/BinaryPackNode.js.map +1 -0
  107. package/dist/src/internal/binary/CannotPack.d.ts +3 -0
  108. package/dist/src/internal/binary/CannotPack.js +22 -0
  109. package/dist/src/internal/binary/CannotPack.js.map +1 -0
  110. package/dist/src/internal/binary/ClientBase64Decode.d.ts +1 -0
  111. package/dist/src/internal/binary/ClientBase64Decode.js +80 -0
  112. package/dist/src/internal/binary/ClientBase64Decode.js.map +1 -0
  113. package/dist/src/internal/binary/ClientBase64Encode.d.ts +1 -0
  114. package/dist/src/internal/binary/ClientBase64Encode.js +43 -0
  115. package/dist/src/internal/binary/ClientBase64Encode.js.map +1 -0
  116. package/dist/src/internal/binary/ClientBase64Encoder.d.ts +5 -0
  117. package/dist/src/internal/binary/ClientBase64Encoder.js +29 -0
  118. package/dist/src/internal/binary/ClientBase64Encoder.js.map +1 -0
  119. package/dist/src/internal/binary/ClientBinaryDecode.d.ts +3 -0
  120. package/dist/src/internal/binary/ClientBinaryDecode.js +42 -0
  121. package/dist/src/internal/binary/ClientBinaryDecode.js.map +1 -0
  122. package/dist/src/internal/binary/ClientBinaryEncode.d.ts +3 -0
  123. package/dist/src/internal/binary/ClientBinaryEncode.js +46 -0
  124. package/dist/src/internal/binary/ClientBinaryEncode.js.map +1 -0
  125. package/dist/src/internal/binary/ClientBinaryEncoder.d.ts +9 -0
  126. package/dist/src/internal/binary/ClientBinaryEncoder.js +33 -0
  127. package/dist/src/internal/binary/ClientBinaryEncoder.js.map +1 -0
  128. package/dist/src/internal/binary/ClientBinaryStrategy.d.ts +15 -0
  129. package/dist/src/internal/binary/ClientBinaryStrategy.js +84 -0
  130. package/dist/src/internal/binary/ClientBinaryStrategy.js.map +1 -0
  131. package/dist/src/internal/binary/ConstructBinaryEncoding.d.ts +3 -0
  132. package/dist/src/internal/binary/ConstructBinaryEncoding.js +85 -0
  133. package/dist/src/internal/binary/ConstructBinaryEncoding.js.map +1 -0
  134. package/dist/src/internal/binary/ConvertMapsToObjects.d.ts +1 -0
  135. package/dist/src/internal/binary/ConvertMapsToObjects.js +42 -0
  136. package/dist/src/internal/binary/ConvertMapsToObjects.js.map +1 -0
  137. package/dist/src/internal/binary/CreateChecksum.d.ts +1 -0
  138. package/dist/src/internal/binary/CreateChecksum.js +21 -0
  139. package/dist/src/internal/binary/CreateChecksum.js.map +1 -0
  140. package/dist/src/internal/binary/DecodeBody.d.ts +2 -0
  141. package/dist/src/internal/binary/DecodeBody.js +20 -0
  142. package/dist/src/internal/binary/DecodeBody.js.map +1 -0
  143. package/dist/src/internal/binary/DecodeKeys.d.ts +2 -0
  144. package/dist/src/internal/binary/DecodeKeys.js +37 -0
  145. package/dist/src/internal/binary/DecodeKeys.js.map +1 -0
  146. package/dist/src/internal/binary/DefaultBinaryEncodingCache.d.ts +10 -0
  147. package/dist/src/internal/binary/DefaultBinaryEncodingCache.js +38 -0
  148. package/dist/src/internal/binary/DefaultBinaryEncodingCache.js.map +1 -0
  149. package/dist/src/internal/binary/EncodeBody.d.ts +2 -0
  150. package/dist/src/internal/binary/EncodeBody.js +20 -0
  151. package/dist/src/internal/binary/EncodeBody.js.map +1 -0
  152. package/dist/src/internal/binary/EncodeKeys.d.ts +2 -0
  153. package/dist/src/internal/binary/EncodeKeys.js +36 -0
  154. package/dist/src/internal/binary/EncodeKeys.js.map +1 -0
  155. package/dist/src/internal/binary/LocalStorageBackedBinaryEncodingCache.d.ts +13 -0
  156. package/dist/src/internal/binary/LocalStorageBackedBinaryEncodingCache.js +65 -0
  157. package/dist/src/internal/binary/LocalStorageBackedBinaryEncodingCache.js.map +1 -0
  158. package/dist/src/internal/binary/Pack.d.ts +1 -0
  159. package/dist/src/internal/binary/Pack.js +32 -0
  160. package/dist/src/internal/binary/Pack.js.map +1 -0
  161. package/dist/src/internal/binary/PackBody.d.ts +1 -0
  162. package/dist/src/internal/binary/PackBody.js +25 -0
  163. package/dist/src/internal/binary/PackBody.js.map +1 -0
  164. package/dist/src/internal/binary/PackList.d.ts +4 -0
  165. package/dist/src/internal/binary/PackList.js +68 -0
  166. package/dist/src/internal/binary/PackList.js.map +1 -0
  167. package/dist/src/internal/binary/PackMap.d.ts +5 -0
  168. package/dist/src/internal/binary/PackMap.js +87 -0
  169. package/dist/src/internal/binary/PackMap.js.map +1 -0
  170. package/dist/src/internal/binary/ServerBase64Decode.d.ts +1 -0
  171. package/dist/src/internal/binary/ServerBase64Decode.js +76 -0
  172. package/dist/src/internal/binary/ServerBase64Decode.js.map +1 -0
  173. package/dist/src/internal/binary/ServerBase64Encode.d.ts +1 -0
  174. package/dist/src/internal/binary/ServerBase64Encode.js +76 -0
  175. package/dist/src/internal/binary/ServerBase64Encode.js.map +1 -0
  176. package/dist/src/internal/binary/ServerBase64Encoder.d.ts +5 -0
  177. package/dist/src/internal/binary/ServerBase64Encoder.js +28 -0
  178. package/dist/src/internal/binary/ServerBase64Encoder.js.map +1 -0
  179. package/dist/src/internal/binary/ServerBinaryDecode.d.ts +2 -0
  180. package/dist/src/internal/binary/ServerBinaryDecode.js +39 -0
  181. package/dist/src/internal/binary/ServerBinaryDecode.js.map +1 -0
  182. package/dist/src/internal/binary/ServerBinaryEncode.d.ts +2 -0
  183. package/dist/src/internal/binary/ServerBinaryEncode.js +42 -0
  184. package/dist/src/internal/binary/ServerBinaryEncode.js.map +1 -0
  185. package/dist/src/internal/binary/ServerBinaryEncoder.d.ts +8 -0
  186. package/dist/src/internal/binary/ServerBinaryEncoder.js +30 -0
  187. package/dist/src/internal/binary/ServerBinaryEncoder.js.map +1 -0
  188. package/dist/src/internal/binary/Unpack.d.ts +1 -0
  189. package/dist/src/internal/binary/Unpack.js +32 -0
  190. package/dist/src/internal/binary/Unpack.js.map +1 -0
  191. package/dist/src/internal/binary/UnpackBody.d.ts +1 -0
  192. package/dist/src/internal/binary/UnpackBody.js +25 -0
  193. package/dist/src/internal/binary/UnpackBody.js.map +1 -0
  194. package/dist/src/internal/binary/UnpackList.d.ts +1 -0
  195. package/dist/src/internal/binary/UnpackList.js +39 -0
  196. package/dist/src/internal/binary/UnpackList.js.map +1 -0
  197. package/dist/src/internal/binary/UnpackMap.d.ts +1 -0
  198. package/dist/src/internal/binary/UnpackMap.js +40 -0
  199. package/dist/src/internal/binary/UnpackMap.js.map +1 -0
  200. package/dist/src/internal/generation/GenerateContext.d.ts +16 -0
  201. package/dist/src/internal/generation/GenerateContext.js +33 -0
  202. package/dist/src/internal/generation/GenerateContext.js.map +1 -0
  203. package/dist/src/internal/generation/GenerateRandomAny.d.ts +2 -0
  204. package/dist/src/internal/generation/GenerateRandomAny.js +28 -0
  205. package/dist/src/internal/generation/GenerateRandomAny.js.map +1 -0
  206. package/dist/src/internal/generation/GenerateRandomArray.d.ts +3 -0
  207. package/dist/src/internal/generation/GenerateRandomArray.js +37 -0
  208. package/dist/src/internal/generation/GenerateRandomArray.js.map +1 -0
  209. package/dist/src/internal/generation/GenerateRandomBoolean.d.ts +2 -0
  210. package/dist/src/internal/generation/GenerateRandomBoolean.js +24 -0
  211. package/dist/src/internal/generation/GenerateRandomBoolean.js.map +1 -0
  212. package/dist/src/internal/generation/GenerateRandomBytes.d.ts +2 -0
  213. package/dist/src/internal/generation/GenerateRandomBytes.js +24 -0
  214. package/dist/src/internal/generation/GenerateRandomBytes.js.map +1 -0
  215. package/dist/src/internal/generation/GenerateRandomInteger.d.ts +2 -0
  216. package/dist/src/internal/generation/GenerateRandomInteger.js +24 -0
  217. package/dist/src/internal/generation/GenerateRandomInteger.js.map +1 -0
  218. package/dist/src/internal/generation/GenerateRandomMockCall.d.ts +5 -0
  219. package/dist/src/internal/generation/GenerateRandomMockCall.js +26 -0
  220. package/dist/src/internal/generation/GenerateRandomMockCall.js.map +1 -0
  221. package/dist/src/internal/generation/GenerateRandomMockStub.d.ts +5 -0
  222. package/dist/src/internal/generation/GenerateRandomMockStub.js +38 -0
  223. package/dist/src/internal/generation/GenerateRandomMockStub.js.map +1 -0
  224. package/dist/src/internal/generation/GenerateRandomNumber.d.ts +2 -0
  225. package/dist/src/internal/generation/GenerateRandomNumber.js +24 -0
  226. package/dist/src/internal/generation/GenerateRandomNumber.js.map +1 -0
  227. package/dist/src/internal/generation/GenerateRandomObject.d.ts +3 -0
  228. package/dist/src/internal/generation/GenerateRandomObject.js +38 -0
  229. package/dist/src/internal/generation/GenerateRandomObject.js.map +1 -0
  230. package/dist/src/internal/generation/GenerateRandomSelect.d.ts +2 -0
  231. package/dist/src/internal/generation/GenerateRandomSelect.js +49 -0
  232. package/dist/src/internal/generation/GenerateRandomSelect.js.map +1 -0
  233. package/dist/src/internal/generation/GenerateRandomString.d.ts +2 -0
  234. package/dist/src/internal/generation/GenerateRandomString.js +24 -0
  235. package/dist/src/internal/generation/GenerateRandomString.js.map +1 -0
  236. package/dist/src/internal/generation/GenerateRandomStruct.d.ts +5 -0
  237. package/dist/src/internal/generation/GenerateRandomStruct.js +60 -0
  238. package/dist/src/internal/generation/GenerateRandomStruct.js.map +1 -0
  239. package/dist/src/internal/generation/GenerateRandomUnion.d.ts +5 -0
  240. package/dist/src/internal/generation/GenerateRandomUnion.js +35 -0
  241. package/dist/src/internal/generation/GenerateRandomUnion.js.map +1 -0
  242. package/dist/src/internal/generation/GenerateRandomValueOfType.d.ts +4 -0
  243. package/dist/src/internal/generation/GenerateRandomValueOfType.js +24 -0
  244. package/dist/src/internal/generation/GenerateRandomValueOfType.js.map +1 -0
  245. package/dist/src/internal/mock/IsSubMap.d.ts +1 -0
  246. package/dist/src/internal/mock/IsSubMap.js +28 -0
  247. package/dist/src/internal/mock/IsSubMap.js.map +1 -0
  248. package/dist/src/internal/mock/IsSubMapEntryEqual.d.ts +1 -0
  249. package/dist/src/internal/mock/IsSubMapEntryEqual.js +37 -0
  250. package/dist/src/internal/mock/IsSubMapEntryEqual.js.map +1 -0
  251. package/dist/src/internal/mock/MockHandle.d.ts +6 -0
  252. package/dist/src/internal/mock/MockHandle.js +121 -0
  253. package/dist/src/internal/mock/MockHandle.js.map +1 -0
  254. package/dist/src/internal/mock/MockInvocation.d.ts +6 -0
  255. package/dist/src/internal/mock/MockInvocation.js +26 -0
  256. package/dist/src/internal/mock/MockInvocation.js.map +1 -0
  257. package/dist/src/internal/mock/MockStub.d.ts +8 -0
  258. package/dist/src/internal/mock/MockStub.js +30 -0
  259. package/dist/src/internal/mock/MockStub.js.map +1 -0
  260. package/dist/src/internal/mock/PartiallyMatches.d.ts +1 -0
  261. package/dist/src/internal/mock/PartiallyMatches.js +25 -0
  262. package/dist/src/internal/mock/PartiallyMatches.js.map +1 -0
  263. package/dist/src/internal/mock/Verify.d.ts +8 -0
  264. package/dist/src/internal/mock/Verify.js +94 -0
  265. package/dist/src/internal/mock/Verify.js.map +1 -0
  266. package/dist/src/internal/mock/VerifyNoMoreInteractions.d.ts +4 -0
  267. package/dist/src/internal/mock/VerifyNoMoreInteractions.js +30 -0
  268. package/dist/src/internal/mock/VerifyNoMoreInteractions.js.map +1 -0
  269. package/dist/src/internal/schema/ApplyErrorToParsedTypes.d.ts +13 -0
  270. package/dist/src/internal/schema/ApplyErrorToParsedTypes.js +61 -0
  271. package/dist/src/internal/schema/ApplyErrorToParsedTypes.js.map +1 -0
  272. package/dist/src/internal/schema/CatchErrorCollisions.d.ts +1 -0
  273. package/dist/src/internal/schema/CatchErrorCollisions.js +73 -0
  274. package/dist/src/internal/schema/CatchErrorCollisions.js.map +1 -0
  275. package/dist/src/internal/schema/CatchHeaderCollisions.d.ts +1 -0
  276. package/dist/src/internal/schema/CatchHeaderCollisions.js +74 -0
  277. package/dist/src/internal/schema/CatchHeaderCollisions.js.map +1 -0
  278. package/dist/src/internal/schema/CreateMockTelepactSchemaFromFileJsonMap.d.ts +2 -0
  279. package/dist/src/internal/schema/CreateMockTelepactSchemaFromFileJsonMap.js +25 -0
  280. package/dist/src/internal/schema/CreateMockTelepactSchemaFromFileJsonMap.js.map +1 -0
  281. package/dist/src/internal/schema/CreateTelepactSchemaFromFileJsonMap.d.ts +2 -0
  282. package/dist/src/internal/schema/CreateTelepactSchemaFromFileJsonMap.js +33 -0
  283. package/dist/src/internal/schema/CreateTelepactSchemaFromFileJsonMap.js.map +1 -0
  284. package/dist/src/internal/schema/DerivePossibleSelect.d.ts +2 -0
  285. package/dist/src/internal/schema/DerivePossibleSelect.js +87 -0
  286. package/dist/src/internal/schema/DerivePossibleSelect.js.map +1 -0
  287. package/dist/src/internal/schema/FindMatchingSchemaKey.d.ts +1 -0
  288. package/dist/src/internal/schema/FindMatchingSchemaKey.js +27 -0
  289. package/dist/src/internal/schema/FindMatchingSchemaKey.js.map +1 -0
  290. package/dist/src/internal/schema/FindSchemaKey.d.ts +1 -0
  291. package/dist/src/internal/schema/FindSchemaKey.js +40 -0
  292. package/dist/src/internal/schema/FindSchemaKey.js.map +1 -0
  293. package/dist/src/internal/schema/GetAuthTelepactJson.d.ts +1 -0
  294. package/dist/src/internal/schema/GetAuthTelepactJson.js +20 -0
  295. package/dist/src/internal/schema/GetAuthTelepactJson.js.map +1 -0
  296. package/dist/src/internal/schema/GetInternalTelepactJson.d.ts +1 -0
  297. package/dist/src/internal/schema/GetInternalTelepactJson.js +20 -0
  298. package/dist/src/internal/schema/GetInternalTelepactJson.js.map +1 -0
  299. package/dist/src/internal/schema/GetMockTelepactJson.d.ts +1 -0
  300. package/dist/src/internal/schema/GetMockTelepactJson.js +20 -0
  301. package/dist/src/internal/schema/GetMockTelepactJson.js.map +1 -0
  302. package/dist/src/internal/schema/GetOrParseType.d.ts +3 -0
  303. package/dist/src/internal/schema/GetOrParseType.js +108 -0
  304. package/dist/src/internal/schema/GetOrParseType.js.map +1 -0
  305. package/dist/src/internal/schema/GetPathDocumentCoordinatesPseudoJson.d.ts +7 -0
  306. package/dist/src/internal/schema/GetPathDocumentCoordinatesPseudoJson.js +218 -0
  307. package/dist/src/internal/schema/GetPathDocumentCoordinatesPseudoJson.js.map +1 -0
  308. package/dist/src/internal/schema/GetSchemaFileMap.d.ts +2 -0
  309. package/dist/src/internal/schema/GetSchemaFileMap.js +40 -0
  310. package/dist/src/internal/schema/GetSchemaFileMap.js.map +1 -0
  311. package/dist/src/internal/schema/GetTypeUnexpectedParseFailure.d.ts +2 -0
  312. package/dist/src/internal/schema/GetTypeUnexpectedParseFailure.js +26 -0
  313. package/dist/src/internal/schema/GetTypeUnexpectedParseFailure.js.map +1 -0
  314. package/dist/src/internal/schema/MapSchemaParseFailuresToPseudoJson.d.ts +2 -0
  315. package/dist/src/internal/schema/MapSchemaParseFailuresToPseudoJson.js +31 -0
  316. package/dist/src/internal/schema/MapSchemaParseFailuresToPseudoJson.js.map +1 -0
  317. package/dist/src/internal/schema/ParseContext.d.ts +41 -0
  318. package/dist/src/internal/schema/ParseContext.js +41 -0
  319. package/dist/src/internal/schema/ParseContext.js.map +1 -0
  320. package/dist/src/internal/schema/ParseErrorType.d.ts +5 -0
  321. package/dist/src/internal/schema/ParseErrorType.js +35 -0
  322. package/dist/src/internal/schema/ParseErrorType.js.map +1 -0
  323. package/dist/src/internal/schema/ParseField.d.ts +3 -0
  324. package/dist/src/internal/schema/ParseField.js +36 -0
  325. package/dist/src/internal/schema/ParseField.js.map +1 -0
  326. package/dist/src/internal/schema/ParseFunctionType.d.ts +8 -0
  327. package/dist/src/internal/schema/ParseFunctionType.js +75 -0
  328. package/dist/src/internal/schema/ParseFunctionType.js.map +1 -0
  329. package/dist/src/internal/schema/ParseHeadersType.d.ts +5 -0
  330. package/dist/src/internal/schema/ParseHeadersType.js +92 -0
  331. package/dist/src/internal/schema/ParseHeadersType.js.map +1 -0
  332. package/dist/src/internal/schema/ParseStructFields.d.ts +7 -0
  333. package/dist/src/internal/schema/ParseStructFields.js +58 -0
  334. package/dist/src/internal/schema/ParseStructFields.js.map +1 -0
  335. package/dist/src/internal/schema/ParseStructType.d.ts +5 -0
  336. package/dist/src/internal/schema/ParseStructType.js +53 -0
  337. package/dist/src/internal/schema/ParseStructType.js.map +1 -0
  338. package/dist/src/internal/schema/ParseTelepactSchema.d.ts +2 -0
  339. package/dist/src/internal/schema/ParseTelepactSchema.js +257 -0
  340. package/dist/src/internal/schema/ParseTelepactSchema.js.map +1 -0
  341. package/dist/src/internal/schema/ParseTypeDeclaration.d.ts +2 -0
  342. package/dist/src/internal/schema/ParseTypeDeclaration.js +84 -0
  343. package/dist/src/internal/schema/ParseTypeDeclaration.js.map +1 -0
  344. package/dist/src/internal/schema/ParseUnionType.d.ts +5 -0
  345. package/dist/src/internal/schema/ParseUnionType.js +138 -0
  346. package/dist/src/internal/schema/ParseUnionType.js.map +1 -0
  347. package/dist/src/internal/schema/SchemaParseFailure.d.ts +8 -0
  348. package/dist/src/internal/schema/SchemaParseFailure.js +29 -0
  349. package/dist/src/internal/schema/SchemaParseFailure.js.map +1 -0
  350. package/dist/src/internal/types/GetType.d.ts +1 -0
  351. package/dist/src/internal/types/GetType.js +39 -0
  352. package/dist/src/internal/types/GetType.js.map +1 -0
  353. package/dist/src/internal/types/TAny.d.ts +11 -0
  354. package/dist/src/internal/types/TAny.js +33 -0
  355. package/dist/src/internal/types/TAny.js.map +1 -0
  356. package/dist/src/internal/types/TArray.d.ts +12 -0
  357. package/dist/src/internal/types/TArray.js +34 -0
  358. package/dist/src/internal/types/TArray.js.map +1 -0
  359. package/dist/src/internal/types/TBoolean.d.ts +12 -0
  360. package/dist/src/internal/types/TBoolean.js +34 -0
  361. package/dist/src/internal/types/TBoolean.js.map +1 -0
  362. package/dist/src/internal/types/TBytes.d.ts +12 -0
  363. package/dist/src/internal/types/TBytes.js +34 -0
  364. package/dist/src/internal/types/TBytes.js.map +1 -0
  365. package/dist/src/internal/types/TError.d.ts +6 -0
  366. package/dist/src/internal/types/TError.js +24 -0
  367. package/dist/src/internal/types/TError.js.map +1 -0
  368. package/dist/src/internal/types/TFieldDeclaration.d.ts +7 -0
  369. package/dist/src/internal/types/TFieldDeclaration.js +26 -0
  370. package/dist/src/internal/types/TFieldDeclaration.js.map +1 -0
  371. package/dist/src/internal/types/THeaders.d.ts +15 -0
  372. package/dist/src/internal/types/THeaders.js +26 -0
  373. package/dist/src/internal/types/THeaders.js.map +1 -0
  374. package/dist/src/internal/types/TInteger.d.ts +12 -0
  375. package/dist/src/internal/types/TInteger.js +34 -0
  376. package/dist/src/internal/types/TInteger.js.map +1 -0
  377. package/dist/src/internal/types/TMockCall.d.ts +16 -0
  378. package/dist/src/internal/types/TMockCall.js +39 -0
  379. package/dist/src/internal/types/TMockCall.js.map +1 -0
  380. package/dist/src/internal/types/TMockStub.d.ts +18 -0
  381. package/dist/src/internal/types/TMockStub.js +39 -0
  382. package/dist/src/internal/types/TMockStub.js.map +1 -0
  383. package/dist/src/internal/types/TNumber.d.ts +12 -0
  384. package/dist/src/internal/types/TNumber.js +34 -0
  385. package/dist/src/internal/types/TNumber.js.map +1 -0
  386. package/dist/src/internal/types/TObject.d.ts +12 -0
  387. package/dist/src/internal/types/TObject.js +33 -0
  388. package/dist/src/internal/types/TObject.js.map +1 -0
  389. package/dist/src/internal/types/TSelect.d.ts +13 -0
  390. package/dist/src/internal/types/TSelect.js +34 -0
  391. package/dist/src/internal/types/TSelect.js.map +1 -0
  392. package/dist/src/internal/types/TString.d.ts +12 -0
  393. package/dist/src/internal/types/TString.js +34 -0
  394. package/dist/src/internal/types/TString.js.map +1 -0
  395. package/dist/src/internal/types/TStruct.d.ts +20 -0
  396. package/dist/src/internal/types/TStruct.js +39 -0
  397. package/dist/src/internal/types/TStruct.js.map +1 -0
  398. package/dist/src/internal/types/TType.d.ts +10 -0
  399. package/dist/src/internal/types/TType.js +18 -0
  400. package/dist/src/internal/types/TType.js.map +1 -0
  401. package/dist/src/internal/types/TTypeDeclaration.d.ts +12 -0
  402. package/dist/src/internal/types/TTypeDeclaration.js +34 -0
  403. package/dist/src/internal/types/TTypeDeclaration.js.map +1 -0
  404. package/dist/src/internal/types/TUnion.d.ts +25 -0
  405. package/dist/src/internal/types/TUnion.js +41 -0
  406. package/dist/src/internal/types/TUnion.js.map +1 -0
  407. package/dist/src/internal/validation/GetInvalidErrorMessage.d.ts +6 -0
  408. package/dist/src/internal/validation/GetInvalidErrorMessage.js +29 -0
  409. package/dist/src/internal/validation/GetInvalidErrorMessage.js.map +1 -0
  410. package/dist/src/internal/validation/GetTypeUnexpectedValidationFailure.d.ts +2 -0
  411. package/dist/src/internal/validation/GetTypeUnexpectedValidationFailure.js +26 -0
  412. package/dist/src/internal/validation/GetTypeUnexpectedValidationFailure.js.map +1 -0
  413. package/dist/src/internal/validation/InvalidMessage.d.ts +3 -0
  414. package/dist/src/internal/validation/InvalidMessage.js +21 -0
  415. package/dist/src/internal/validation/InvalidMessage.js.map +1 -0
  416. package/dist/src/internal/validation/InvalidMessageBody.d.ts +2 -0
  417. package/dist/src/internal/validation/InvalidMessageBody.js +18 -0
  418. package/dist/src/internal/validation/InvalidMessageBody.js.map +1 -0
  419. package/dist/src/internal/validation/MapValidationFailuresToInvalidFieldCases.d.ts +2 -0
  420. package/dist/src/internal/validation/MapValidationFailuresToInvalidFieldCases.js +27 -0
  421. package/dist/src/internal/validation/MapValidationFailuresToInvalidFieldCases.js.map +1 -0
  422. package/dist/src/internal/validation/ValidateArray.d.ts +4 -0
  423. package/dist/src/internal/validation/ValidateArray.js +42 -0
  424. package/dist/src/internal/validation/ValidateArray.js.map +1 -0
  425. package/dist/src/internal/validation/ValidateBoolean.d.ts +2 -0
  426. package/dist/src/internal/validation/ValidateBoolean.js +26 -0
  427. package/dist/src/internal/validation/ValidateBoolean.js.map +1 -0
  428. package/dist/src/internal/validation/ValidateBytes.d.ts +3 -0
  429. package/dist/src/internal/validation/ValidateBytes.js +56 -0
  430. package/dist/src/internal/validation/ValidateBytes.js.map +1 -0
  431. package/dist/src/internal/validation/ValidateContext.d.ts +13 -0
  432. package/dist/src/internal/validation/ValidateContext.js +32 -0
  433. package/dist/src/internal/validation/ValidateContext.js.map +1 -0
  434. package/dist/src/internal/validation/ValidateHeaders.d.ts +3 -0
  435. package/dist/src/internal/validation/ValidateHeaders.js +34 -0
  436. package/dist/src/internal/validation/ValidateHeaders.js.map +1 -0
  437. package/dist/src/internal/validation/ValidateInteger.d.ts +2 -0
  438. package/dist/src/internal/validation/ValidateInteger.js +33 -0
  439. package/dist/src/internal/validation/ValidateInteger.js.map +1 -0
  440. package/dist/src/internal/validation/ValidateMockCall.d.ts +4 -0
  441. package/dist/src/internal/validation/ValidateMockCall.js +50 -0
  442. package/dist/src/internal/validation/ValidateMockCall.js.map +1 -0
  443. package/dist/src/internal/validation/ValidateMockStub.d.ts +6 -0
  444. package/dist/src/internal/validation/ValidateMockStub.js +73 -0
  445. package/dist/src/internal/validation/ValidateMockStub.js.map +1 -0
  446. package/dist/src/internal/validation/ValidateNumber.d.ts +2 -0
  447. package/dist/src/internal/validation/ValidateNumber.js +33 -0
  448. package/dist/src/internal/validation/ValidateNumber.js.map +1 -0
  449. package/dist/src/internal/validation/ValidateObject.d.ts +4 -0
  450. package/dist/src/internal/validation/ValidateObject.js +40 -0
  451. package/dist/src/internal/validation/ValidateObject.js.map +1 -0
  452. package/dist/src/internal/validation/ValidateResult.d.ts +2 -0
  453. package/dist/src/internal/validation/ValidateResult.js +25 -0
  454. package/dist/src/internal/validation/ValidateResult.js.map +1 -0
  455. package/dist/src/internal/validation/ValidateSelect.d.ts +3 -0
  456. package/dist/src/internal/validation/ValidateSelect.js +56 -0
  457. package/dist/src/internal/validation/ValidateSelect.js.map +1 -0
  458. package/dist/src/internal/validation/ValidateString.d.ts +2 -0
  459. package/dist/src/internal/validation/ValidateString.js +26 -0
  460. package/dist/src/internal/validation/ValidateString.js.map +1 -0
  461. package/dist/src/internal/validation/ValidateStruct.d.ts +4 -0
  462. package/dist/src/internal/validation/ValidateStruct.js +28 -0
  463. package/dist/src/internal/validation/ValidateStruct.js.map +1 -0
  464. package/dist/src/internal/validation/ValidateStructFields.d.ts +4 -0
  465. package/dist/src/internal/validation/ValidateStructFields.js +53 -0
  466. package/dist/src/internal/validation/ValidateStructFields.js.map +1 -0
  467. package/dist/src/internal/validation/ValidateUnion.d.ts +4 -0
  468. package/dist/src/internal/validation/ValidateUnion.js +34 -0
  469. package/dist/src/internal/validation/ValidateUnion.js.map +1 -0
  470. package/dist/src/internal/validation/ValidateUnionStruct.d.ts +4 -0
  471. package/dist/src/internal/validation/ValidateUnionStruct.js +24 -0
  472. package/dist/src/internal/validation/ValidateUnionStruct.js.map +1 -0
  473. package/dist/src/internal/validation/ValidateUnionTags.d.ts +4 -0
  474. package/dist/src/internal/validation/ValidateUnionTags.js +46 -0
  475. package/dist/src/internal/validation/ValidateUnionTags.js.map +1 -0
  476. package/dist/src/internal/validation/ValidateValueOfType.d.ts +5 -0
  477. package/dist/src/internal/validation/ValidateValueOfType.js +28 -0
  478. package/dist/src/internal/validation/ValidateValueOfType.js.map +1 -0
  479. package/dist/src/internal/validation/ValidationFailure.d.ts +6 -0
  480. package/dist/src/internal/validation/ValidationFailure.js +26 -0
  481. package/dist/src/internal/validation/ValidationFailure.js.map +1 -0
  482. package/package.json +57 -0
@@ -0,0 +1,61 @@
1
+ //|
2
+ //| Copyright The Telepact Authors
3
+ //|
4
+ //| Licensed under the Apache License, Version 2.0 (the "License");
5
+ //| you may not use this file except in compliance with the License.
6
+ //| You may obtain a copy of the License at
7
+ //|
8
+ //| https://www.apache.org/licenses/LICENSE-2.0
9
+ //|
10
+ //| Unless required by applicable law or agreed to in writing, software
11
+ //| distributed under the License is distributed on an "AS IS" BASIS,
12
+ //| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ //| See the License for the specific language governing permissions and
14
+ //| limitations under the License.
15
+ //|
16
+ import { DefaultSerialization } from './DefaultSerialization';
17
+ import { Serializer } from './Serializer';
18
+ import { ServerBinaryEncoder } from './internal/binary/ServerBinaryEncoder';
19
+ import { constructBinaryEncoding } from './internal/binary/ConstructBinaryEncoding';
20
+ import { processBytes } from './internal/ProcessBytes';
21
+ import { ServerBase64Encoder } from './internal/binary/ServerBase64Encoder';
22
+ export class Server {
23
+ handler;
24
+ onError;
25
+ onRequest;
26
+ onResponse;
27
+ telepactSchema;
28
+ serializer;
29
+ constructor(telepactSchema, handler, options) {
30
+ this.handler = handler;
31
+ this.onError = options.onError;
32
+ this.onRequest = options.onRequest;
33
+ this.onResponse = options.onResponse;
34
+ this.telepactSchema = telepactSchema;
35
+ const binaryEncoding = constructBinaryEncoding(this.telepactSchema);
36
+ const binaryEncoder = new ServerBinaryEncoder(binaryEncoding);
37
+ const base64Encoder = new ServerBase64Encoder();
38
+ this.serializer = new Serializer(options.serialization, binaryEncoder, base64Encoder);
39
+ if (!('struct.Auth_' in this.telepactSchema.parsed) && options.authRequired) {
40
+ throw new Error('Unauthenticated server. Either define a non-empty `struct._Auth` in your schema or set `options.authRequired` to `false`.');
41
+ }
42
+ }
43
+ async process(requestMessageBytes) {
44
+ return await processBytes(requestMessageBytes, this.serializer, this.telepactSchema, this.onError, this.onRequest, this.onResponse, this.handler);
45
+ }
46
+ }
47
+ export class ServerOptions {
48
+ onError;
49
+ onRequest;
50
+ onResponse;
51
+ authRequired;
52
+ serialization;
53
+ constructor() {
54
+ this.onError = (e) => { };
55
+ this.onRequest = (m) => { };
56
+ this.onResponse = (m) => { };
57
+ this.authRequired = true;
58
+ this.serialization = new DefaultSerialization();
59
+ }
60
+ }
61
+ //# sourceMappingURL=Server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Server.js","sourceRoot":"","sources":["../../src/Server.ts"],"names":[],"mappings":"AAAA,GAAG;AACH,mCAAmC;AACnC,GAAG;AACH,oEAAoE;AACpE,qEAAqE;AACrE,4CAA4C;AAC5C,GAAG;AACH,gDAAgD;AAChD,GAAG;AACH,wEAAwE;AACxE,sEAAsE;AACtE,6EAA6E;AAC7E,wEAAwE;AACxE,mCAAmC;AACnC,GAAG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAG5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAE5E,MAAM,OAAO,MAAM;IACf,OAAO,CAAyC;IAChD,OAAO,CAAuB;IAC9B,SAAS,CAA6B;IACtC,UAAU,CAA6B;IACvC,cAAc,CAAiB;IAC/B,UAAU,CAAa;IAEvB,YAAY,cAA8B,EAAE,OAA+C,EAAE,OAAsB;QAC/G,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QAErC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QAErC,MAAM,cAAc,GAAG,uBAAuB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACpE,MAAM,aAAa,GAAG,IAAI,mBAAmB,CAAC,cAAc,CAAC,CAAC;QAC9D,MAAM,aAAa,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAEhD,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,aAAa,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;QAEtF,IAAI,CAAC,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YAC1E,MAAM,IAAI,KAAK,CACX,2HAA2H,CAC9H,CAAC;QACN,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,mBAA+B;QACzC,OAAO,MAAM,YAAY,CACrB,mBAAmB,EACnB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,OAAO,CACf,CAAC;IACN,CAAC;CACJ;AAED,MAAM,OAAO,aAAa;IACtB,OAAO,CAAuB;IAC9B,SAAS,CAA6B;IACtC,UAAU,CAA6B;IACvC,YAAY,CAAU;IACtB,aAAa,CAAgB;IAE7B;QACI,IAAI,CAAC,OAAO,GAAG,CAAC,CAAM,EAAE,EAAE,GAAE,CAAC,CAAC;QAC9B,IAAI,CAAC,SAAS,GAAG,CAAC,CAAU,EAAE,EAAE,GAAE,CAAC,CAAC;QACpC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAU,EAAE,EAAE,GAAE,CAAC,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,IAAI,oBAAoB,EAAE,CAAC;IACpD,CAAC;CACJ"}
@@ -0,0 +1,4 @@
1
+ export declare class TelepactError extends Error {
2
+ constructor(message: string);
3
+ constructor(cause: Error);
4
+ }
@@ -0,0 +1,24 @@
1
+ //|
2
+ //| Copyright The Telepact Authors
3
+ //|
4
+ //| Licensed under the Apache License, Version 2.0 (the "License");
5
+ //| you may not use this file except in compliance with the License.
6
+ //| You may obtain a copy of the License at
7
+ //|
8
+ //| https://www.apache.org/licenses/LICENSE-2.0
9
+ //|
10
+ //| Unless required by applicable law or agreed to in writing, software
11
+ //| distributed under the License is distributed on an "AS IS" BASIS,
12
+ //| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ //| See the License for the specific language governing permissions and
14
+ //| limitations under the License.
15
+ //|
16
+ export class TelepactError extends Error {
17
+ constructor(arg) {
18
+ super(typeof arg === 'string' ? arg : arg.message);
19
+ if (typeof arg !== 'string') {
20
+ this.stack = arg.stack;
21
+ }
22
+ }
23
+ }
24
+ //# sourceMappingURL=TelepactError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TelepactError.js","sourceRoot":"","sources":["../../src/TelepactError.ts"],"names":[],"mappings":"AAAA,GAAG;AACH,mCAAmC;AACnC,GAAG;AACH,oEAAoE;AACpE,qEAAqE;AACrE,4CAA4C;AAC5C,GAAG;AACH,gDAAgD;AAChD,GAAG;AACH,wEAAwE;AACxE,sEAAsE;AACtE,6EAA6E;AAC7E,wEAAwE;AACxE,mCAAmC;AACnC,GAAG;AAEH,MAAM,OAAO,aAAc,SAAQ,KAAK;IAGpC,YAAY,GAAmB;QAC3B,KAAK,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEnD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC1B,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;QAC3B,CAAC;IACL,CAAC;CACJ"}
@@ -0,0 +1,21 @@
1
+ import { TFieldDeclaration } from './internal/types/TFieldDeclaration';
2
+ import { TType } from './internal/types/TType';
3
+ import { FsModule, PathModule } from './fileSystem';
4
+ export declare class TelepactSchema {
5
+ /**
6
+ * A parsed telepact schema.
7
+ */
8
+ original: any[];
9
+ full: any[];
10
+ parsed: Record<string, TType>;
11
+ parsedRequestHeaders: Record<string, TFieldDeclaration>;
12
+ parsedResponseHeaders: Record<string, TFieldDeclaration>;
13
+ constructor(original: any[], full: any[], parsed: Record<string, TType>, parsedRequestHeaders: Record<string, TFieldDeclaration>, parsedResponseHeaders: Record<string, TFieldDeclaration>);
14
+ static fromJson(json: string): TelepactSchema;
15
+ static fromFileJsonMap(fileJsonMap: Record<string, string>): TelepactSchema;
16
+ /**
17
+ * @param fs - node fs
18
+ * @param path - node path
19
+ */
20
+ static fromDirectory(directory: string, fs: FsModule, path: PathModule): TelepactSchema;
21
+ }
@@ -0,0 +1,50 @@
1
+ //|
2
+ //| Copyright The Telepact Authors
3
+ //|
4
+ //| Licensed under the Apache License, Version 2.0 (the "License");
5
+ //| you may not use this file except in compliance with the License.
6
+ //| You may obtain a copy of the License at
7
+ //|
8
+ //| https://www.apache.org/licenses/LICENSE-2.0
9
+ //|
10
+ //| Unless required by applicable law or agreed to in writing, software
11
+ //| distributed under the License is distributed on an "AS IS" BASIS,
12
+ //| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ //| See the License for the specific language governing permissions and
14
+ //| limitations under the License.
15
+ //|
16
+ import { createTelepactSchemaFromFileJsonMap } from './internal/schema/CreateTelepactSchemaFromFileJsonMap';
17
+ import { getSchemaFileMap } from './internal/schema/GetSchemaFileMap';
18
+ export class TelepactSchema {
19
+ /**
20
+ * A parsed telepact schema.
21
+ */
22
+ original;
23
+ full;
24
+ parsed;
25
+ parsedRequestHeaders;
26
+ parsedResponseHeaders;
27
+ constructor(original, full, parsed, parsedRequestHeaders, parsedResponseHeaders) {
28
+ this.original = original;
29
+ this.full = full;
30
+ this.parsed = parsed;
31
+ this.parsedRequestHeaders = parsedRequestHeaders;
32
+ this.parsedResponseHeaders = parsedResponseHeaders;
33
+ }
34
+ static fromJson(json) {
35
+ return createTelepactSchemaFromFileJsonMap({ auto_: json });
36
+ }
37
+ static fromFileJsonMap(fileJsonMap) {
38
+ return createTelepactSchemaFromFileJsonMap(fileJsonMap);
39
+ }
40
+ /**
41
+ * @param fs - node fs
42
+ * @param path - node path
43
+ */
44
+ static fromDirectory(directory, fs, path) {
45
+ // TODO
46
+ const m = getSchemaFileMap(directory, fs, path);
47
+ return createTelepactSchemaFromFileJsonMap(m);
48
+ }
49
+ }
50
+ //# sourceMappingURL=TelepactSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TelepactSchema.js","sourceRoot":"","sources":["../../src/TelepactSchema.ts"],"names":[],"mappings":"AAAA,GAAG;AACH,mCAAmC;AACnC,GAAG;AACH,oEAAoE;AACpE,qEAAqE;AACrE,4CAA4C;AAC5C,GAAG;AACH,gDAAgD;AAChD,GAAG;AACH,wEAAwE;AACxE,sEAAsE;AACtE,6EAA6E;AAC7E,wEAAwE;AACxE,mCAAmC;AACnC,GAAG;AAEH,OAAO,EAAE,mCAAmC,EAAE,MAAM,uDAAuD,CAAC;AAC5G,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAKtE,MAAM,OAAO,cAAc;IACvB;;OAEG;IAEH,QAAQ,CAAQ;IAChB,IAAI,CAAQ;IACZ,MAAM,CAAwB;IAC9B,oBAAoB,CAAoC;IACxD,qBAAqB,CAAoC;IAEzD,YACI,QAAe,EACf,IAAW,EACX,MAA6B,EAC7B,oBAAuD,EACvD,qBAAwD;QAExD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,IAAY;QACxB,OAAO,mCAAmC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,WAAmC;QACtD,OAAO,mCAAmC,CAAC,WAAW,CAAC,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,aAAa,CAAC,SAAiB,EAAE,EAAY,EAAE,IAAgB;QAClE,OAAO;QACP,MAAM,CAAC,GAAG,gBAAgB,CAAC,SAAS,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAChD,OAAO,mCAAmC,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC;CACJ"}
@@ -0,0 +1,5 @@
1
+ import { FsModule, PathModule } from './fileSystem';
2
+ export declare class TelepactSchemaFiles {
3
+ filenamesToJson: Record<string, string>;
4
+ constructor(directory: string, fs: FsModule, path: PathModule);
5
+ }
@@ -0,0 +1,23 @@
1
+ //|
2
+ //| Copyright The Telepact Authors
3
+ //|
4
+ //| Licensed under the Apache License, Version 2.0 (the "License");
5
+ //| you may not use this file except in compliance with the License.
6
+ //| You may obtain a copy of the License at
7
+ //|
8
+ //| https://www.apache.org/licenses/LICENSE-2.0
9
+ //|
10
+ //| Unless required by applicable law or agreed to in writing, software
11
+ //| distributed under the License is distributed on an "AS IS" BASIS,
12
+ //| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ //| See the License for the specific language governing permissions and
14
+ //| limitations under the License.
15
+ //|
16
+ import { getSchemaFileMap } from './internal/schema/GetSchemaFileMap';
17
+ export class TelepactSchemaFiles {
18
+ filenamesToJson;
19
+ constructor(directory, fs, path) {
20
+ this.filenamesToJson = getSchemaFileMap(directory, fs, path);
21
+ }
22
+ }
23
+ //# sourceMappingURL=TelepactSchemaFiles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TelepactSchemaFiles.js","sourceRoot":"","sources":["../../src/TelepactSchemaFiles.ts"],"names":[],"mappings":"AAAA,GAAG;AACH,mCAAmC;AACnC,GAAG;AACH,oEAAoE;AACpE,qEAAqE;AACrE,4CAA4C;AAC5C,GAAG;AACH,gDAAgD;AAChD,GAAG;AACH,wEAAwE;AACxE,sEAAsE;AACtE,6EAA6E;AAC7E,wEAAwE;AACxE,mCAAmC;AACnC,GAAG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEtE,MAAM,OAAO,mBAAmB;IAC5B,eAAe,CAAyB;IAExC,YAAY,SAAiB,EAAE,EAAY,EAAE,IAAgB;QACzD,IAAI,CAAC,eAAe,GAAG,gBAAgB,CAAC,SAAS,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;CACJ"}
@@ -0,0 +1,9 @@
1
+ import { SchemaParseFailure } from './internal/schema/SchemaParseFailure';
2
+ export declare class TelepactSchemaParseError extends Error {
3
+ /**
4
+ * Indicates failure to parse a telepact Schema.
5
+ */
6
+ schemaParseFailures: SchemaParseFailure[];
7
+ schemaParseFailuresPseudoJson: any;
8
+ constructor(schemaParseFailures: SchemaParseFailure[], documentNamesToJson: Record<string, string>, cause?: Error);
9
+ }
@@ -0,0 +1,31 @@
1
+ //|
2
+ //| Copyright The Telepact Authors
3
+ //|
4
+ //| Licensed under the Apache License, Version 2.0 (the "License");
5
+ //| you may not use this file except in compliance with the License.
6
+ //| You may obtain a copy of the License at
7
+ //|
8
+ //| https://www.apache.org/licenses/LICENSE-2.0
9
+ //|
10
+ //| Unless required by applicable law or agreed to in writing, software
11
+ //| distributed under the License is distributed on an "AS IS" BASIS,
12
+ //| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ //| See the License for the specific language governing permissions and
14
+ //| limitations under the License.
15
+ //|
16
+ import { mapSchemaParseFailuresToPseudoJson } from './internal/schema/MapSchemaParseFailuresToPseudoJson';
17
+ export class TelepactSchemaParseError extends Error {
18
+ /**
19
+ * Indicates failure to parse a telepact Schema.
20
+ */
21
+ schemaParseFailures;
22
+ schemaParseFailuresPseudoJson;
23
+ constructor(schemaParseFailures, documentNamesToJson, cause) {
24
+ super(JSON.stringify(mapSchemaParseFailuresToPseudoJson(schemaParseFailures, documentNamesToJson), null, 2), {
25
+ cause: cause,
26
+ });
27
+ this.schemaParseFailures = schemaParseFailures;
28
+ this.schemaParseFailuresPseudoJson = mapSchemaParseFailuresToPseudoJson(schemaParseFailures, documentNamesToJson);
29
+ }
30
+ }
31
+ //# sourceMappingURL=TelepactSchemaParseError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TelepactSchemaParseError.js","sourceRoot":"","sources":["../../src/TelepactSchemaParseError.ts"],"names":[],"mappings":"AAAA,GAAG;AACH,mCAAmC;AACnC,GAAG;AACH,oEAAoE;AACpE,qEAAqE;AACrE,4CAA4C;AAC5C,GAAG;AACH,gDAAgD;AAChD,GAAG;AACH,wEAAwE;AACxE,sEAAsE;AACtE,6EAA6E;AAC7E,wEAAwE;AACxE,mCAAmC;AACnC,GAAG;AAGH,OAAO,EAAE,kCAAkC,EAAE,MAAM,sDAAsD,CAAC;AAE1G,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IAC/C;;OAEG;IAEI,mBAAmB,CAAuB;IAC1C,6BAA6B,CAAM;IAE1C,YAAY,mBAAyC,EAAE,mBAA2C,EAAE,KAAa;QAC7G,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,kCAAkC,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;YACzG,KAAK,EAAE,KAAK;SACf,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QAC/C,IAAI,CAAC,6BAA6B,GAAG,kCAAkC,CACnE,mBAAmB,EACnB,mBAAmB,CACtB,CAAC;IACN,CAAC;CACJ"}
@@ -0,0 +1,18 @@
1
+ export interface FsModule {
2
+ readdirSync: (path: string | Buffer | URL, options?: {
3
+ encoding: BufferEncoding | null;
4
+ withFileTypes?: false | undefined;
5
+ recursive?: boolean | undefined;
6
+ } | BufferEncoding | null) => string[];
7
+ readFileSync: (path: string | Buffer | URL | number, options: {
8
+ encoding: BufferEncoding;
9
+ flag?: string | undefined;
10
+ } | BufferEncoding) => string;
11
+ statSync: (path: string | Buffer | URL) => {
12
+ isDirectory: () => boolean;
13
+ };
14
+ }
15
+ export interface PathModule {
16
+ join: (...paths: string[]) => string;
17
+ relative: (from: string, to: string) => string;
18
+ }
@@ -0,0 +1,17 @@
1
+ //|
2
+ //| Copyright The Telepact Authors
3
+ //|
4
+ //| Licensed under the Apache License, Version 2.0 (the "License");
5
+ //| you may not use this file except in compliance with the License.
6
+ //| You may obtain a copy of the License at
7
+ //|
8
+ //| https://www.apache.org/licenses/LICENSE-2.0
9
+ //|
10
+ //| Unless required by applicable law or agreed to in writing, software
11
+ //| distributed under the License is distributed on an "AS IS" BASIS,
12
+ //| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ //| See the License for the specific language governing permissions and
14
+ //| limitations under the License.
15
+ //|
16
+ export {};
17
+ //# sourceMappingURL=fileSystem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fileSystem.js","sourceRoot":"","sources":["../../src/fileSystem.ts"],"names":[],"mappings":"AAAA,GAAG;AACH,mCAAmC;AACnC,GAAG;AACH,oEAAoE;AACpE,qEAAqE;AACrE,4CAA4C;AAC5C,GAAG;AACH,gDAAgD;AAChD,GAAG;AACH,wEAAwE;AACxE,sEAAsE;AACtE,6EAA6E;AAC7E,wEAAwE;AACxE,mCAAmC;AACnC,GAAG"}
@@ -0,0 +1,19 @@
1
+ export * from './RandomGenerator';
2
+ export * from './Client';
3
+ export * from './Server';
4
+ export * from './MockServer';
5
+ export * from './Message';
6
+ export * from './Serializer';
7
+ export * from './internal/binary/ClientBinaryStrategy';
8
+ export * from './SerializationError';
9
+ export * from './Serialization';
10
+ export * from './TelepactSchema';
11
+ export * from './MockTelepactSchema';
12
+ export * from './TelepactSchemaParseError';
13
+ export * from './TelepactSchemaFiles';
14
+ export * from './fileSystem';
15
+ export { default as jsonSchema } from '../inc/json-schema.json';
16
+ import { GenerateContext } from './internal/generation/GenerateContext';
17
+ export declare const _internal: {
18
+ GenerateContext: typeof GenerateContext;
19
+ };
@@ -0,0 +1,35 @@
1
+ //|
2
+ //| Copyright The Telepact Authors
3
+ //|
4
+ //| Licensed under the Apache License, Version 2.0 (the "License");
5
+ //| you may not use this file except in compliance with the License.
6
+ //| You may obtain a copy of the License at
7
+ //|
8
+ //| https://www.apache.org/licenses/LICENSE-2.0
9
+ //|
10
+ //| Unless required by applicable law or agreed to in writing, software
11
+ //| distributed under the License is distributed on an "AS IS" BASIS,
12
+ //| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ //| See the License for the specific language governing permissions and
14
+ //| limitations under the License.
15
+ //|
16
+ export * from './RandomGenerator';
17
+ export * from './Client';
18
+ export * from './Server';
19
+ export * from './MockServer';
20
+ export * from './Message';
21
+ export * from './Serializer';
22
+ export * from './internal/binary/ClientBinaryStrategy';
23
+ export * from './SerializationError';
24
+ export * from './Serialization';
25
+ export * from './TelepactSchema';
26
+ export * from './MockTelepactSchema';
27
+ export * from './TelepactSchemaParseError';
28
+ export * from './TelepactSchemaFiles';
29
+ export * from './fileSystem';
30
+ export { default as jsonSchema } from '../inc/json-schema.json';
31
+ import { GenerateContext } from './internal/generation/GenerateContext';
32
+ export const _internal = {
33
+ GenerateContext
34
+ };
35
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,GAAG;AACH,mCAAmC;AACnC,GAAG;AACH,oEAAoE;AACpE,qEAAqE;AACrE,4CAA4C;AAC5C,GAAG;AACH,gDAAgD;AAChD,GAAG;AACH,wEAAwE;AACxE,sEAAsE;AACtE,6EAA6E;AAC7E,wEAAwE;AACxE,mCAAmC;AACnC,GAAG;AAEH,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,wCAAwC,CAAC;AACvD,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAExE,MAAM,CAAC,MAAM,SAAS,GAAG;IACrB,eAAe;CAClB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Message } from '../Message';
2
+ import { Serializer } from '../Serializer';
3
+ export declare function clientHandleMessage(requestMessage: Message, adapter: (message: Message, serializer: Serializer) => Promise<Message>, serializer: Serializer, timeoutMsDefault: number, useBinaryDefault: boolean, alwaysSendJson: boolean): Promise<Message>;
@@ -0,0 +1,52 @@
1
+ //|
2
+ //| Copyright The Telepact Authors
3
+ //|
4
+ //| Licensed under the Apache License, Version 2.0 (the "License");
5
+ //| you may not use this file except in compliance with the License.
6
+ //| You may obtain a copy of the License at
7
+ //|
8
+ //| https://www.apache.org/licenses/LICENSE-2.0
9
+ //|
10
+ //| Unless required by applicable law or agreed to in writing, software
11
+ //| distributed under the License is distributed on an "AS IS" BASIS,
12
+ //| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ //| See the License for the specific language governing permissions and
14
+ //| limitations under the License.
15
+ //|
16
+ import { TelepactError } from '../TelepactError';
17
+ import { objectsAreEqual } from './ObjectsAreEqual';
18
+ function timeoutPromise(timeoutMs) {
19
+ return new Promise((_resolve, reject) => {
20
+ setTimeout(() => {
21
+ reject(new Error('Promise timed out'));
22
+ }, timeoutMs);
23
+ });
24
+ }
25
+ export async function clientHandleMessage(requestMessage, adapter, serializer, timeoutMsDefault, useBinaryDefault, alwaysSendJson) {
26
+ const header = requestMessage.headers;
27
+ try {
28
+ if (!header.hasOwnProperty('@time_')) {
29
+ header['@time_'] = timeoutMsDefault;
30
+ }
31
+ if (useBinaryDefault) {
32
+ header['@binary_'] = true;
33
+ }
34
+ if (header['@binary_'] && alwaysSendJson) {
35
+ header['_forceSendJson'] = true;
36
+ }
37
+ const timeoutMs = header['@time_'];
38
+ const responseMessage = await Promise.race([adapter(requestMessage, serializer), timeoutPromise(timeoutMs)]);
39
+ if (objectsAreEqual(responseMessage.body, {
40
+ ErrorParseFailure_: { reasons: [{ IncompatibleBinaryEncoding: {} }] },
41
+ })) {
42
+ header['@binary_'] = true;
43
+ header['_forceSendJson'] = true;
44
+ return await Promise.race([adapter(requestMessage, serializer), timeoutPromise(timeoutMs)]);
45
+ }
46
+ return responseMessage;
47
+ }
48
+ catch (e) {
49
+ throw new TelepactError(e);
50
+ }
51
+ }
52
+ //# sourceMappingURL=ClientHandleMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ClientHandleMessage.js","sourceRoot":"","sources":["../../../src/internal/ClientHandleMessage.ts"],"names":[],"mappings":"AAAA,GAAG;AACH,mCAAmC;AACnC,GAAG;AACH,oEAAoE;AACpE,qEAAqE;AACrE,4CAA4C;AAC5C,GAAG;AACH,gDAAgD;AAChD,GAAG;AACH,wEAAwE;AACxE,sEAAsE;AACtE,6EAA6E;AAC7E,wEAAwE;AACxE,mCAAmC;AACnC,GAAG;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,SAAS,cAAc,CAAC,SAAiB;IACrC,OAAO,IAAI,OAAO,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;QACpC,UAAU,CAAC,GAAG,EAAE;YACZ,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC3C,CAAC,EAAE,SAAS,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACrC,cAAuB,EACvB,OAAuE,EACvE,UAAsB,EACtB,gBAAwB,EACxB,gBAAyB,EACzB,cAAuB;IAEvB,MAAM,MAAM,GAAwB,cAAc,CAAC,OAAO,CAAC;IAE3D,IAAI,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnC,MAAM,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC;QACxC,CAAC;QAED,IAAI,gBAAgB,EAAE,CAAC;YACnB,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;QAC9B,CAAC;QAED,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,cAAc,EAAE,CAAC;YACvC,MAAM,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;QACpC,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAW,CAAC;QAE7C,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,UAAU,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAE7G,IACI,eAAe,CAAC,eAAe,CAAC,IAAI,EAAE;YAClC,kBAAkB,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,0BAA0B,EAAE,EAAE,EAAE,CAAC,EAAE;SACxE,CAAC,EACJ,CAAC;YACC,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;YAC1B,MAAM,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;YAEhC,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,UAAU,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAChG,CAAC;QAED,OAAO,eAAe,CAAC;IAC3B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,MAAM,IAAI,aAAa,CAAC,CAAU,CAAC,CAAC;IACxC,CAAC;AACL,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Serialization } from '../Serialization';
2
+ import { BinaryEncoder } from '../internal/binary/BinaryEncoder';
3
+ import { Message } from '../Message';
4
+ import { Base64Encoder } from './binary/Base64Encoder';
5
+ export declare function deserializeInternal(messageBytes: Uint8Array, serializer: Serialization, binaryEncoder: BinaryEncoder, base64Encoder: Base64Encoder): Message;
@@ -0,0 +1,65 @@
1
+ //|
2
+ //| Copyright The Telepact Authors
3
+ //|
4
+ //| Licensed under the Apache License, Version 2.0 (the "License");
5
+ //| you may not use this file except in compliance with the License.
6
+ //| You may obtain a copy of the License at
7
+ //|
8
+ //| https://www.apache.org/licenses/LICENSE-2.0
9
+ //|
10
+ //| Unless required by applicable law or agreed to in writing, software
11
+ //| distributed under the License is distributed on an "AS IS" BASIS,
12
+ //| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ //| See the License for the specific language governing permissions and
14
+ //| limitations under the License.
15
+ //|
16
+ import { Message } from '../Message';
17
+ import { InvalidMessage } from '../internal/validation/InvalidMessage';
18
+ import { InvalidMessageBody } from '../internal/validation/InvalidMessageBody';
19
+ export function deserializeInternal(messageBytes, serializer, binaryEncoder, base64Encoder) {
20
+ let messageAsPseudoJson;
21
+ let isMsgPack;
22
+ try {
23
+ if (messageBytes[0] === 0x92) {
24
+ isMsgPack = true;
25
+ messageAsPseudoJson = serializer.fromMsgpack(messageBytes);
26
+ }
27
+ else {
28
+ isMsgPack = false;
29
+ messageAsPseudoJson = serializer.fromJson(messageBytes);
30
+ }
31
+ }
32
+ catch (e) {
33
+ throw new InvalidMessage();
34
+ }
35
+ if (!Array.isArray(messageAsPseudoJson)) {
36
+ throw new InvalidMessage();
37
+ }
38
+ const messageAsPseudoJsonList = messageAsPseudoJson;
39
+ if (messageAsPseudoJsonList.length !== 2) {
40
+ throw new InvalidMessage();
41
+ }
42
+ let finalMessageAsPseudoJsonList;
43
+ if (isMsgPack) {
44
+ finalMessageAsPseudoJsonList = binaryEncoder.decode(messageAsPseudoJsonList);
45
+ }
46
+ else {
47
+ finalMessageAsPseudoJsonList = base64Encoder.decode(messageAsPseudoJsonList);
48
+ }
49
+ if (typeof finalMessageAsPseudoJsonList[0] !== 'object' || Array.isArray(finalMessageAsPseudoJsonList[0])) {
50
+ throw new InvalidMessage();
51
+ }
52
+ const headers = finalMessageAsPseudoJsonList[0];
53
+ if (typeof finalMessageAsPseudoJsonList[1] !== 'object' || Array.isArray(finalMessageAsPseudoJsonList[1])) {
54
+ throw new InvalidMessage();
55
+ }
56
+ const body = finalMessageAsPseudoJsonList[1];
57
+ if (Object.keys(body).length !== 1) {
58
+ throw new InvalidMessageBody();
59
+ }
60
+ if (typeof Object.values(body)[0] !== 'object' || Array.isArray(Object.values(body)[0])) {
61
+ throw new InvalidMessageBody();
62
+ }
63
+ return new Message(headers, body);
64
+ }
65
+ //# sourceMappingURL=DeserializeInternal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeserializeInternal.js","sourceRoot":"","sources":["../../../src/internal/DeserializeInternal.ts"],"names":[],"mappings":"AAAA,GAAG;AACH,mCAAmC;AACnC,GAAG;AACH,oEAAoE;AACpE,qEAAqE;AACrE,4CAA4C;AAC5C,GAAG;AACH,gDAAgD;AAChD,GAAG;AACH,wEAAwE;AACxE,sEAAsE;AACtE,6EAA6E;AAC7E,wEAAwE;AACxE,mCAAmC;AACnC,GAAG;AAIH,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAG/E,MAAM,UAAU,mBAAmB,CAC/B,YAAwB,EACxB,UAAyB,EACzB,aAA4B,EAC5B,aAA4B;IAE5B,IAAI,mBAAwB,CAAC;IAC7B,IAAI,SAAkB,CAAC;IAEvB,IAAI,CAAC;QACD,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC3B,SAAS,GAAG,IAAI,CAAC;YACjB,mBAAmB,GAAG,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAC/D,CAAC;aAAM,CAAC;YACJ,SAAS,GAAG,KAAK,CAAC;YAClB,mBAAmB,GAAG,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAC5D,CAAC;IACL,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,MAAM,IAAI,cAAc,EAAE,CAAC;IAC/B,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,cAAc,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,uBAAuB,GAAU,mBAAmB,CAAC;IAE3D,IAAI,uBAAuB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,cAAc,EAAE,CAAC;IAC/B,CAAC;IAED,IAAI,4BAAmC,CAAC;IACxC,IAAI,SAAS,EAAE,CAAC;QACZ,4BAA4B,GAAG,aAAa,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;IACjF,CAAC;SAAM,CAAC;QACJ,4BAA4B,GAAG,aAAa,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;IACjF,CAAC;IAED,IAAI,OAAO,4BAA4B,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACxG,MAAM,IAAI,cAAc,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,OAAO,GAA2B,4BAA4B,CAAC,CAAC,CAAC,CAAC;IAExE,IAAI,OAAO,4BAA4B,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACxG,MAAM,IAAI,cAAc,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,IAAI,GAA2B,4BAA4B,CAAC,CAAC,CAAC,CAAC;IAErE,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,kBAAkB,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,MAAM,IAAI,kBAAkB,EAAE,CAAC;IACnC,CAAC;IAED,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACtC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Message } from '../Message';
2
+ import { TelepactSchema } from '../TelepactSchema';
3
+ export declare function handleMessage(requestMessage: Message, telepactSchema: TelepactSchema, handler: (message: Message) => Promise<Message>, onError: (error: Error) => void): Promise<Message>;