@contract-case/case-connector 0.21.0 → 0.23.0

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 (410) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/README.md +2 -0
  3. package/{dist/bin/case-connector.js → bin/case-connector.mts} +4 -2
  4. package/dist/bin/{case-connector.d.ts → case-connector.d.mts} +1 -1
  5. package/dist/bin/case-connector.d.mts.map +1 -0
  6. package/dist/bin/case-connector.mjs +9 -0
  7. package/dist/bin/case-connector.mjs.map +1 -0
  8. package/dist/cjs/bin/case-connector.d.mts +8 -0
  9. package/dist/cjs/bin/case-connector.d.mts.map +1 -0
  10. package/dist/cjs/bin/case-connector.mjs +9 -0
  11. package/dist/cjs/bin/case-connector.mjs.map +1 -0
  12. package/dist/cjs/src/connectors/case-boundary/definer.cjs +36 -0
  13. package/dist/cjs/src/connectors/case-boundary/definer.d.cts +10 -0
  14. package/dist/cjs/src/connectors/case-boundary/definer.d.ts.map +1 -0
  15. package/dist/cjs/src/connectors/case-boundary/definer.js.map +1 -0
  16. package/dist/cjs/src/connectors/case-boundary/internals/BoundaryContractDefiner.cjs +141 -0
  17. package/dist/cjs/src/connectors/case-boundary/internals/BoundaryContractDefiner.d.cts +34 -0
  18. package/dist/cjs/src/connectors/case-boundary/internals/BoundaryContractDefiner.d.ts.map +1 -0
  19. package/dist/cjs/src/connectors/case-boundary/internals/BoundaryContractDefiner.js.map +1 -0
  20. package/dist/cjs/src/connectors/case-boundary/internals/BoundaryContractVerifier.cjs +136 -0
  21. package/dist/cjs/src/connectors/case-boundary/internals/BoundaryContractVerifier.d.cts +51 -0
  22. package/dist/cjs/src/connectors/case-boundary/internals/BoundaryContractVerifier.d.ts.map +1 -0
  23. package/dist/cjs/src/connectors/case-boundary/internals/BoundaryContractVerifier.js.map +1 -0
  24. package/dist/cjs/src/connectors/case-boundary/internals/BoundaryPluginLoader.cjs +68 -0
  25. package/dist/cjs/src/connectors/case-boundary/internals/BoundaryPluginLoader.d.cts +28 -0
  26. package/dist/cjs/src/connectors/case-boundary/internals/BoundaryPluginLoader.d.ts.map +1 -0
  27. package/dist/cjs/src/connectors/case-boundary/internals/BoundaryPluginLoader.js.map +1 -0
  28. package/dist/cjs/src/connectors/case-boundary/internals/boundary/BoundaryCrashMessage.cjs +41 -0
  29. package/dist/cjs/src/connectors/case-boundary/internals/boundary/BoundaryCrashMessage.d.cts +10 -0
  30. package/dist/cjs/src/connectors/case-boundary/internals/boundary/BoundaryCrashMessage.d.ts.map +1 -0
  31. package/dist/cjs/src/connectors/case-boundary/internals/boundary/BoundaryCrashMessage.js.map +1 -0
  32. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ConfigLogLevelConstants.cjs +36 -0
  33. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ConfigLogLevelConstants.d.cts +32 -0
  34. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ConfigLogLevelConstants.d.ts.map +1 -0
  35. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ConfigLogLevelConstants.js.map +1 -0
  36. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ConfigPublishConstants.cjs +24 -0
  37. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ConfigPublishConstants.d.cts +20 -0
  38. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ConfigPublishConstants.d.ts.map +1 -0
  39. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ConfigPublishConstants.js.map +1 -0
  40. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ILogPrinter.cjs +3 -0
  41. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ILogPrinter.d.cts +145 -0
  42. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ILogPrinter.d.ts.map +1 -0
  43. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ILogPrinter.js.map +1 -0
  44. package/dist/cjs/src/connectors/case-boundary/internals/boundary/IRunTestCallback.cjs +3 -0
  45. package/dist/cjs/src/connectors/case-boundary/internals/boundary/IRunTestCallback.d.cts +41 -0
  46. package/dist/cjs/src/connectors/case-boundary/internals/boundary/IRunTestCallback.d.ts.map +1 -0
  47. package/dist/cjs/src/connectors/case-boundary/internals/boundary/IRunTestCallback.js.map +1 -0
  48. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ITriggerFunction.cjs +3 -0
  49. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ITriggerFunction.d.cts +32 -0
  50. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ITriggerFunction.d.ts.map +1 -0
  51. package/dist/cjs/src/connectors/case-boundary/internals/boundary/ITriggerFunction.js.map +1 -0
  52. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryFailure.cjs +29 -0
  53. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryFailure.d.cts +17 -0
  54. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryFailure.d.ts.map +1 -0
  55. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryFailure.js.map +1 -0
  56. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryFailureKindConstants.cjs +57 -0
  57. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryFailureKindConstants.d.cts +45 -0
  58. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryFailureKindConstants.d.ts.map +1 -0
  59. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryFailureKindConstants.js.map +1 -0
  60. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryResult.cjs +20 -0
  61. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryResult.d.cts +15 -0
  62. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryResult.d.ts.map +1 -0
  63. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryResult.js.map +1 -0
  64. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryResultTypeConstants.cjs +39 -0
  65. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryResultTypeConstants.d.cts +35 -0
  66. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryResultTypeConstants.d.ts.map +1 -0
  67. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundaryResultTypeConstants.js.map +1 -0
  68. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundarySuccess.cjs +19 -0
  69. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundarySuccess.d.cts +12 -0
  70. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundarySuccess.d.ts.map +1 -0
  71. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundarySuccess.js.map +1 -0
  72. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundarySuccessWithAny.cjs +23 -0
  73. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundarySuccessWithAny.d.cts +15 -0
  74. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundarySuccessWithAny.d.ts.map +1 -0
  75. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundarySuccessWithAny.js.map +1 -0
  76. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundarySuccessWithMap.cjs +21 -0
  77. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundarySuccessWithMap.d.cts +13 -0
  78. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundarySuccessWithMap.d.ts.map +1 -0
  79. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/BoundarySuccessWithMap.js.map +1 -0
  80. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/index.cjs +24 -0
  81. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/index.d.cts +8 -0
  82. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/index.d.ts.map +1 -0
  83. package/dist/cjs/src/connectors/case-boundary/internals/boundary/Result/index.js.map +1 -0
  84. package/dist/cjs/src/connectors/case-boundary/internals/boundary/StateHandler.cjs +36 -0
  85. package/dist/cjs/src/connectors/case-boundary/internals/boundary/StateHandler.d.cts +28 -0
  86. package/dist/cjs/src/connectors/case-boundary/internals/boundary/StateHandler.d.ts.map +1 -0
  87. package/dist/cjs/src/connectors/case-boundary/internals/boundary/StateHandler.js.map +1 -0
  88. package/dist/cjs/src/connectors/case-boundary/internals/boundary/config.types.cjs +3 -0
  89. package/dist/cjs/src/connectors/case-boundary/internals/boundary/config.types.d.cts +180 -0
  90. package/dist/cjs/src/connectors/case-boundary/internals/boundary/config.types.d.ts.map +1 -0
  91. package/dist/cjs/src/connectors/case-boundary/internals/boundary/config.types.js.map +1 -0
  92. package/dist/cjs/src/connectors/case-boundary/internals/boundary/index.cjs +26 -0
  93. package/dist/cjs/src/connectors/case-boundary/internals/boundary/index.d.cts +10 -0
  94. package/dist/cjs/src/connectors/case-boundary/internals/boundary/index.d.ts.map +1 -0
  95. package/dist/cjs/src/connectors/case-boundary/internals/boundary/index.js.map +1 -0
  96. package/dist/cjs/src/connectors/case-boundary/internals/index.cjs +28 -0
  97. package/dist/cjs/src/connectors/case-boundary/internals/index.d.cts +12 -0
  98. package/dist/cjs/src/connectors/case-boundary/internals/index.d.ts.map +1 -0
  99. package/dist/cjs/src/connectors/case-boundary/internals/index.js.map +1 -0
  100. package/dist/cjs/src/connectors/case-boundary/internals/mappers/LogPrinter.cjs +23 -0
  101. package/dist/cjs/src/connectors/case-boundary/internals/mappers/LogPrinter.d.cts +4 -0
  102. package/dist/cjs/src/connectors/case-boundary/internals/mappers/LogPrinter.d.ts.map +1 -0
  103. package/dist/cjs/src/connectors/case-boundary/internals/mappers/LogPrinter.js.map +1 -0
  104. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/failureToJsError.cjs +53 -0
  105. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/failureToJsError.d.cts +4 -0
  106. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/failureToJsError.d.ts.map +1 -0
  107. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/failureToJsError.js.map +1 -0
  108. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/handleResult.cjs +29 -0
  109. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/handleResult.d.cts +5 -0
  110. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/handleResult.d.ts.map +1 -0
  111. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/handleResult.js.map +1 -0
  112. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/index.cjs +20 -0
  113. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/index.d.cts +4 -0
  114. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/index.d.ts.map +1 -0
  115. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/index.js.map +1 -0
  116. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/jsErrorToFailure.cjs +17 -0
  117. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/jsErrorToFailure.d.cts +3 -0
  118. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/jsErrorToFailure.d.ts.map +1 -0
  119. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/jsErrorToFailure.js.map +1 -0
  120. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/types.cjs +3 -0
  121. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/types.d.cts +2 -0
  122. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/types.d.ts.map +1 -0
  123. package/dist/cjs/src/connectors/case-boundary/internals/mappers/Result/types.js.map +1 -0
  124. package/dist/cjs/src/connectors/case-boundary/internals/mappers/config.cjs +100 -0
  125. package/dist/cjs/src/connectors/case-boundary/internals/mappers/config.d.cts +28 -0
  126. package/dist/cjs/src/connectors/case-boundary/internals/mappers/config.d.ts.map +1 -0
  127. package/dist/cjs/src/connectors/case-boundary/internals/mappers/config.js.map +1 -0
  128. package/dist/cjs/src/connectors/case-boundary/internals/mappers/index.cjs +22 -0
  129. package/dist/cjs/src/connectors/case-boundary/internals/mappers/index.d.cts +6 -0
  130. package/dist/cjs/src/connectors/case-boundary/internals/mappers/index.d.ts.map +1 -0
  131. package/dist/cjs/src/connectors/case-boundary/internals/mappers/index.js.map +1 -0
  132. package/dist/cjs/src/connectors/case-boundary/internals/mappers/invokeableFunction.cjs +29 -0
  133. package/dist/cjs/src/connectors/case-boundary/internals/mappers/invokeableFunction.d.cts +6 -0
  134. package/dist/cjs/src/connectors/case-boundary/internals/mappers/invokeableFunction.d.ts.map +1 -0
  135. package/dist/cjs/src/connectors/case-boundary/internals/mappers/invokeableFunction.js.map +1 -0
  136. package/dist/cjs/src/connectors/case-boundary/internals/mappers/stateHandlers.cjs +46 -0
  137. package/dist/cjs/src/connectors/case-boundary/internals/mappers/stateHandlers.d.cts +9 -0
  138. package/dist/cjs/src/connectors/case-boundary/internals/mappers/stateHandlers.d.ts.map +1 -0
  139. package/dist/cjs/src/connectors/case-boundary/internals/mappers/stateHandlers.js.map +1 -0
  140. package/dist/cjs/src/connectors/case-boundary/internals/mappers/triggers.cjs +40 -0
  141. package/dist/cjs/src/connectors/case-boundary/internals/mappers/triggers.d.cts +5 -0
  142. package/dist/cjs/src/connectors/case-boundary/internals/mappers/triggers.d.ts.map +1 -0
  143. package/dist/cjs/src/connectors/case-boundary/internals/mappers/triggers.js.map +1 -0
  144. package/dist/cjs/src/connectors/case-boundary/internals/types.cjs +19 -0
  145. package/dist/cjs/src/connectors/case-boundary/internals/types.d.cts +22 -0
  146. package/dist/cjs/src/connectors/case-boundary/internals/types.d.ts.map +1 -0
  147. package/dist/cjs/src/connectors/case-boundary/internals/types.js.map +1 -0
  148. package/dist/cjs/src/connectors/case-boundary/internals/types.jsii-boundary.cjs +4 -0
  149. package/dist/cjs/src/connectors/case-boundary/internals/types.jsii-boundary.d.cts +24 -0
  150. package/dist/cjs/src/connectors/case-boundary/internals/types.jsii-boundary.d.ts.map +1 -0
  151. package/dist/cjs/src/connectors/case-boundary/internals/types.jsii-boundary.js.map +1 -0
  152. package/dist/cjs/src/connectors/case-boundary/internals/types.ts-boundary.cjs +3 -0
  153. package/dist/cjs/src/connectors/case-boundary/internals/types.ts-boundary.d.cts +25 -0
  154. package/dist/cjs/src/connectors/case-boundary/internals/types.ts-boundary.d.ts.map +1 -0
  155. package/dist/cjs/src/connectors/case-boundary/internals/types.ts-boundary.js.map +1 -0
  156. package/dist/cjs/src/connectors/case-boundary/plugins.cjs +7 -0
  157. package/dist/cjs/src/connectors/case-boundary/plugins.d.cts +3 -0
  158. package/dist/cjs/src/connectors/case-boundary/plugins.d.ts.map +1 -0
  159. package/dist/cjs/src/connectors/case-boundary/plugins.js.map +1 -0
  160. package/dist/cjs/src/connectors/case-boundary/verifier.cjs +35 -0
  161. package/dist/cjs/src/connectors/case-boundary/verifier.d.cts +12 -0
  162. package/dist/cjs/src/connectors/case-boundary/verifier.d.ts.map +1 -0
  163. package/dist/cjs/src/connectors/case-boundary/verifier.js.map +1 -0
  164. package/dist/cjs/src/connectors/grpc/UnreachableError.cjs +10 -0
  165. package/dist/cjs/src/connectors/grpc/UnreachableError.d.cts +4 -0
  166. package/dist/cjs/src/connectors/grpc/UnreachableError.d.ts.map +1 -0
  167. package/dist/cjs/src/connectors/grpc/UnreachableError.js.map +1 -0
  168. package/dist/{src/connectors/grpc/contract-case-stream.d.ts → cjs/src/connectors/grpc/contract-case-stream.d.mts} +1 -1
  169. package/dist/cjs/src/connectors/grpc/contract-case-stream.d.mts.map +1 -0
  170. package/dist/{src/connectors/grpc/contract-case-stream.js → cjs/src/connectors/grpc/contract-case-stream.mjs} +3 -3
  171. package/dist/cjs/src/connectors/grpc/contract-case-stream.mjs.map +1 -0
  172. package/dist/cjs/src/connectors/grpc/contractDefinition.cjs +176 -0
  173. package/dist/cjs/src/connectors/grpc/contractDefinition.d.cts +4 -0
  174. package/dist/cjs/src/connectors/grpc/contractDefinition.d.ts.map +1 -0
  175. package/dist/cjs/src/connectors/grpc/contractDefinition.js.map +1 -0
  176. package/dist/cjs/src/connectors/grpc/contractVerification.cjs +199 -0
  177. package/dist/cjs/src/connectors/grpc/contractVerification.d.cts +4 -0
  178. package/dist/cjs/src/connectors/grpc/contractVerification.d.ts.map +1 -0
  179. package/dist/cjs/src/connectors/grpc/contractVerification.js.map +1 -0
  180. package/dist/cjs/src/connectors/grpc/functionRegistry/functionRegistry.cjs +21 -0
  181. package/dist/cjs/src/connectors/grpc/functionRegistry/functionRegistry.d.cts +3 -0
  182. package/dist/cjs/src/connectors/grpc/functionRegistry/functionRegistry.d.ts.map +1 -0
  183. package/dist/cjs/src/connectors/grpc/functionRegistry/functionRegistry.js.map +1 -0
  184. package/dist/cjs/src/connectors/grpc/functionRegistry/index.cjs +18 -0
  185. package/dist/cjs/src/connectors/grpc/functionRegistry/index.d.cts +2 -0
  186. package/dist/cjs/src/connectors/grpc/functionRegistry/index.d.ts.map +1 -0
  187. package/dist/cjs/src/connectors/grpc/functionRegistry/index.js.map +1 -0
  188. package/dist/cjs/src/connectors/grpc/functionRegistry/types.cjs +3 -0
  189. package/dist/cjs/src/connectors/grpc/functionRegistry/types.d.cts +22 -0
  190. package/dist/cjs/src/connectors/grpc/functionRegistry/types.d.ts.map +1 -0
  191. package/dist/cjs/src/connectors/grpc/functionRegistry/types.js.map +1 -0
  192. package/dist/cjs/src/connectors/grpc/printers.cjs +24 -0
  193. package/dist/cjs/src/connectors/grpc/printers.d.cts +5 -0
  194. package/dist/cjs/src/connectors/grpc/printers.d.ts.map +1 -0
  195. package/dist/cjs/src/connectors/grpc/printers.js.map +1 -0
  196. package/dist/cjs/src/connectors/grpc/promiseHandler/promiseHandler.cjs +71 -0
  197. package/dist/cjs/src/connectors/grpc/promiseHandler/promiseHandler.d.cts +27 -0
  198. package/dist/cjs/src/connectors/grpc/promiseHandler/promiseHandler.d.ts.map +1 -0
  199. package/dist/cjs/src/connectors/grpc/promiseHandler/promiseHandler.js.map +1 -0
  200. package/dist/cjs/src/connectors/grpc/requestMappers/config/config.cjs +95 -0
  201. package/dist/cjs/src/connectors/grpc/requestMappers/config/config.d.cts +6 -0
  202. package/dist/cjs/src/connectors/grpc/requestMappers/config/config.d.ts.map +1 -0
  203. package/dist/cjs/src/connectors/grpc/requestMappers/config/config.js.map +1 -0
  204. package/dist/cjs/src/connectors/grpc/requestMappers/config/index.cjs +18 -0
  205. package/dist/cjs/src/connectors/grpc/requestMappers/config/index.d.cts +2 -0
  206. package/dist/cjs/src/connectors/grpc/requestMappers/config/index.d.ts.map +1 -0
  207. package/dist/cjs/src/connectors/grpc/requestMappers/config/index.js.map +1 -0
  208. package/dist/cjs/src/connectors/grpc/requestMappers/config/stateHandlers.cjs +25 -0
  209. package/dist/cjs/src/connectors/grpc/requestMappers/config/stateHandlers.d.cts +5 -0
  210. package/dist/cjs/src/connectors/grpc/requestMappers/config/stateHandlers.d.ts.map +1 -0
  211. package/dist/cjs/src/connectors/grpc/requestMappers/config/stateHandlers.js.map +1 -0
  212. package/dist/cjs/src/connectors/grpc/requestMappers/index.cjs +21 -0
  213. package/dist/cjs/src/connectors/grpc/requestMappers/index.d.cts +5 -0
  214. package/dist/cjs/src/connectors/grpc/requestMappers/index.d.ts.map +1 -0
  215. package/dist/cjs/src/connectors/grpc/requestMappers/index.js.map +1 -0
  216. package/dist/cjs/src/connectors/grpc/requestMappers/invokeableFunctions.cjs +12 -0
  217. package/dist/cjs/src/connectors/grpc/requestMappers/invokeableFunctions.d.cts +4 -0
  218. package/dist/cjs/src/connectors/grpc/requestMappers/invokeableFunctions.d.ts.map +1 -0
  219. package/dist/cjs/src/connectors/grpc/requestMappers/invokeableFunctions.js.map +1 -0
  220. package/dist/cjs/src/connectors/grpc/requestMappers/json.cjs +20 -0
  221. package/dist/cjs/src/connectors/grpc/requestMappers/json.d.cts +4 -0
  222. package/dist/cjs/src/connectors/grpc/requestMappers/json.d.ts.map +1 -0
  223. package/dist/cjs/src/connectors/grpc/requestMappers/json.js.map +1 -0
  224. package/dist/cjs/src/connectors/grpc/requestMappers/result.cjs +48 -0
  225. package/dist/cjs/src/connectors/grpc/requestMappers/result.d.cts +4 -0
  226. package/dist/cjs/src/connectors/grpc/requestMappers/result.d.ts.map +1 -0
  227. package/dist/cjs/src/connectors/grpc/requestMappers/result.js.map +1 -0
  228. package/dist/cjs/src/connectors/grpc/requestMappers/values.cjs +26 -0
  229. package/dist/cjs/src/connectors/grpc/requestMappers/values.d.cts +5 -0
  230. package/dist/cjs/src/connectors/grpc/requestMappers/values.d.ts.map +1 -0
  231. package/dist/cjs/src/connectors/grpc/requestMappers/values.js.map +1 -0
  232. package/dist/cjs/src/connectors/grpc/responseMappers/index.cjs +20 -0
  233. package/dist/cjs/src/connectors/grpc/responseMappers/index.d.cts +4 -0
  234. package/dist/cjs/src/connectors/grpc/responseMappers/index.d.ts.map +1 -0
  235. package/dist/cjs/src/connectors/grpc/responseMappers/index.js.map +1 -0
  236. package/dist/cjs/src/connectors/grpc/responseMappers/json.cjs +21 -0
  237. package/dist/cjs/src/connectors/grpc/responseMappers/json.d.cts +6 -0
  238. package/dist/cjs/src/connectors/grpc/responseMappers/json.d.ts.map +1 -0
  239. package/dist/cjs/src/connectors/grpc/responseMappers/json.js.map +1 -0
  240. package/dist/cjs/src/connectors/grpc/responseMappers/logMessages.cjs +37 -0
  241. package/dist/cjs/src/connectors/grpc/responseMappers/logMessages.d.cts +15 -0
  242. package/dist/cjs/src/connectors/grpc/responseMappers/logMessages.d.ts.map +1 -0
  243. package/dist/cjs/src/connectors/grpc/responseMappers/logMessages.js.map +1 -0
  244. package/dist/cjs/src/connectors/grpc/responseMappers/result.cjs +33 -0
  245. package/dist/cjs/src/connectors/grpc/responseMappers/result.d.cts +4 -0
  246. package/dist/cjs/src/connectors/grpc/responseMappers/result.d.ts.map +1 -0
  247. package/dist/cjs/src/connectors/grpc/responseMappers/result.js.map +1 -0
  248. package/dist/cjs/src/connectors/grpc/sendContractResponse.cjs +16 -0
  249. package/dist/cjs/src/connectors/grpc/sendContractResponse.d.cts +6 -0
  250. package/dist/cjs/src/connectors/grpc/sendContractResponse.d.ts.map +1 -0
  251. package/dist/cjs/src/connectors/grpc/sendContractResponse.js.map +1 -0
  252. package/dist/cjs/src/domain/config.cjs +19 -0
  253. package/dist/cjs/src/domain/config.d.cts +5 -0
  254. package/dist/cjs/src/domain/config.d.ts.map +1 -0
  255. package/dist/cjs/src/domain/config.js.map +1 -0
  256. package/dist/cjs/src/domain/define.cjs +64 -0
  257. package/dist/cjs/src/domain/define.d.cts +18 -0
  258. package/dist/cjs/src/domain/define.d.ts.map +1 -0
  259. package/dist/cjs/src/domain/define.js.map +1 -0
  260. package/dist/cjs/src/domain/errors/ConnectorError.cjs +15 -0
  261. package/dist/cjs/src/domain/errors/ConnectorError.d.cts +9 -0
  262. package/dist/cjs/src/domain/errors/ConnectorError.d.ts.map +1 -0
  263. package/dist/cjs/src/domain/errors/ConnectorError.js.map +1 -0
  264. package/dist/cjs/src/domain/errors/errors.cjs +13 -0
  265. package/dist/cjs/src/domain/errors/errors.d.cts +4 -0
  266. package/dist/cjs/src/domain/errors/errors.d.ts.map +1 -0
  267. package/dist/cjs/src/domain/errors/errors.js.map +1 -0
  268. package/dist/cjs/src/domain/errors/index.cjs +19 -0
  269. package/dist/cjs/src/domain/errors/index.d.cts +3 -0
  270. package/dist/cjs/src/domain/errors/index.d.ts.map +1 -0
  271. package/dist/cjs/src/domain/errors/index.js.map +1 -0
  272. package/dist/cjs/src/domain/loadPlugin.cjs +8 -0
  273. package/dist/cjs/src/domain/loadPlugin.d.cts +4 -0
  274. package/dist/cjs/src/domain/loadPlugin.d.ts.map +1 -0
  275. package/dist/cjs/src/domain/loadPlugin.js.map +1 -0
  276. package/dist/cjs/src/domain/maintainerLog.cjs +28 -0
  277. package/dist/cjs/src/domain/maintainerLog.d.cts +4 -0
  278. package/dist/cjs/src/domain/maintainerLog.d.ts.map +1 -0
  279. package/dist/cjs/src/domain/maintainerLog.js.map +1 -0
  280. package/dist/cjs/src/domain/types.cjs +3 -0
  281. package/dist/cjs/src/domain/types.d.cts +35 -0
  282. package/dist/cjs/src/domain/types.d.ts.map +1 -0
  283. package/dist/cjs/src/domain/types.js.map +1 -0
  284. package/dist/cjs/src/domain/verify.cjs +49 -0
  285. package/dist/cjs/src/domain/verify.d.cts +20 -0
  286. package/dist/cjs/src/domain/verify.d.ts.map +1 -0
  287. package/dist/cjs/src/domain/verify.js.map +1 -0
  288. package/dist/cjs/src/entities/types.cjs +15 -0
  289. package/dist/cjs/src/entities/types.d.cts +2 -0
  290. package/dist/cjs/src/entities/types.d.ts.map +1 -0
  291. package/dist/cjs/src/entities/types.js.map +1 -0
  292. package/dist/cjs/src/entities/versionString.cjs +7 -0
  293. package/dist/cjs/src/entities/versionString.d.cts +2 -0
  294. package/dist/cjs/src/entities/versionString.d.ts.map +1 -0
  295. package/dist/cjs/src/entities/versionString.js.map +1 -0
  296. package/dist/cjs/src/index.cjs +18 -0
  297. package/dist/cjs/src/index.d.cts +2 -0
  298. package/dist/cjs/src/index.d.ts.map +1 -0
  299. package/dist/cjs/src/index.js.map +1 -0
  300. package/dist/cjs/tsconfig.dfd178aa.tsbuildinfo +1 -0
  301. package/dist/src/connectors/case-boundary/definer.d.ts.map +1 -1
  302. package/dist/src/connectors/case-boundary/definer.js +1 -1
  303. package/dist/src/connectors/case-boundary/definer.js.map +1 -1
  304. package/dist/src/connectors/case-boundary/internals/BoundaryContractDefiner.d.ts.map +1 -1
  305. package/dist/src/connectors/case-boundary/internals/BoundaryContractDefiner.js +3 -3
  306. package/dist/src/connectors/case-boundary/internals/BoundaryContractDefiner.js.map +1 -1
  307. package/dist/src/connectors/case-boundary/internals/BoundaryContractVerifier.d.ts.map +1 -1
  308. package/dist/src/connectors/case-boundary/internals/BoundaryContractVerifier.js +2 -2
  309. package/dist/src/connectors/case-boundary/internals/BoundaryContractVerifier.js.map +1 -1
  310. package/dist/src/connectors/case-boundary/internals/BoundaryPluginLoader.d.ts.map +1 -1
  311. package/dist/src/connectors/case-boundary/internals/BoundaryPluginLoader.js +2 -2
  312. package/dist/src/connectors/case-boundary/internals/BoundaryPluginLoader.js.map +1 -1
  313. package/dist/src/connectors/case-boundary/internals/boundary/Result/BoundaryFailure.d.ts +3 -1
  314. package/dist/src/connectors/case-boundary/internals/boundary/Result/BoundaryFailure.d.ts.map +1 -1
  315. package/dist/src/connectors/case-boundary/internals/boundary/Result/BoundaryFailure.js +5 -1
  316. package/dist/src/connectors/case-boundary/internals/boundary/Result/BoundaryFailure.js.map +1 -1
  317. package/dist/src/connectors/case-boundary/internals/boundary/StateHandler.d.ts.map +1 -1
  318. package/dist/src/connectors/case-boundary/internals/boundary/StateHandler.js +2 -2
  319. package/dist/src/connectors/case-boundary/internals/boundary/StateHandler.js.map +1 -1
  320. package/dist/src/connectors/case-boundary/internals/boundary/config.types.d.ts +11 -1
  321. package/dist/src/connectors/case-boundary/internals/boundary/config.types.d.ts.map +1 -1
  322. package/dist/src/connectors/case-boundary/internals/mappers/LogPrinter.d.ts.map +1 -1
  323. package/dist/src/connectors/case-boundary/internals/mappers/Result/failureToJsError.d.ts.map +1 -1
  324. package/dist/src/connectors/case-boundary/internals/mappers/Result/failureToJsError.js +20 -9
  325. package/dist/src/connectors/case-boundary/internals/mappers/Result/failureToJsError.js.map +1 -1
  326. package/dist/src/connectors/case-boundary/internals/mappers/Result/handleResult.d.ts.map +1 -1
  327. package/dist/src/connectors/case-boundary/internals/mappers/Result/jsErrorToFailure.d.ts.map +1 -1
  328. package/dist/src/connectors/case-boundary/internals/mappers/Result/jsErrorToFailure.js +2 -2
  329. package/dist/src/connectors/case-boundary/internals/mappers/Result/jsErrorToFailure.js.map +1 -1
  330. package/dist/src/connectors/case-boundary/internals/mappers/config.d.ts +14 -1
  331. package/dist/src/connectors/case-boundary/internals/mappers/config.d.ts.map +1 -1
  332. package/dist/src/connectors/case-boundary/internals/mappers/config.js +31 -4
  333. package/dist/src/connectors/case-boundary/internals/mappers/config.js.map +1 -1
  334. package/dist/src/connectors/case-boundary/internals/mappers/invokeableFunction.d.ts.map +1 -1
  335. package/dist/src/connectors/case-boundary/internals/mappers/stateHandlers.d.ts.map +1 -1
  336. package/dist/src/connectors/case-boundary/internals/mappers/triggers.d.ts.map +1 -1
  337. package/dist/src/connectors/case-boundary/internals/mappers/triggers.js +1 -3
  338. package/dist/src/connectors/case-boundary/internals/mappers/triggers.js.map +1 -1
  339. package/dist/src/connectors/case-boundary/plugins.d.ts.map +1 -1
  340. package/dist/src/connectors/case-boundary/verifier.d.ts.map +1 -1
  341. package/dist/src/connectors/case-boundary/verifier.js +1 -1
  342. package/dist/src/connectors/case-boundary/verifier.js.map +1 -1
  343. package/dist/src/connectors/grpc/contract-case-stream.d.mts +5 -0
  344. package/dist/src/connectors/grpc/contract-case-stream.d.mts.map +1 -0
  345. package/dist/src/connectors/grpc/contract-case-stream.mjs +50 -0
  346. package/dist/src/connectors/grpc/contract-case-stream.mjs.map +1 -0
  347. package/dist/src/connectors/grpc/contractDefinition.d.ts.map +1 -1
  348. package/dist/src/connectors/grpc/contractDefinition.js +2 -2
  349. package/dist/src/connectors/grpc/contractDefinition.js.map +1 -1
  350. package/dist/src/connectors/grpc/contractVerification.d.ts.map +1 -1
  351. package/dist/src/connectors/grpc/contractVerification.js +2 -2
  352. package/dist/src/connectors/grpc/contractVerification.js.map +1 -1
  353. package/dist/src/connectors/grpc/functionRegistry/functionRegistry.d.ts.map +1 -1
  354. package/dist/src/connectors/grpc/functionRegistry/functionRegistry.js +3 -1
  355. package/dist/src/connectors/grpc/functionRegistry/functionRegistry.js.map +1 -1
  356. package/dist/src/connectors/grpc/printers.d.ts.map +1 -1
  357. package/dist/src/connectors/grpc/promiseHandler/promiseHandler.d.ts.map +1 -1
  358. package/dist/src/connectors/grpc/requestMappers/config/config.d.ts.map +1 -1
  359. package/dist/src/connectors/grpc/requestMappers/config/config.js +1 -0
  360. package/dist/src/connectors/grpc/requestMappers/config/config.js.map +1 -1
  361. package/dist/src/connectors/grpc/requestMappers/config/stateHandlers.d.ts.map +1 -1
  362. package/dist/src/connectors/grpc/requestMappers/invokeableFunctions.d.ts.map +1 -1
  363. package/dist/src/connectors/grpc/requestMappers/json.d.ts.map +1 -1
  364. package/dist/src/connectors/grpc/requestMappers/result.d.ts.map +1 -1
  365. package/dist/src/connectors/grpc/requestMappers/result.js +3 -1
  366. package/dist/src/connectors/grpc/requestMappers/result.js.map +1 -1
  367. package/dist/src/connectors/grpc/requestMappers/values.d.ts.map +1 -1
  368. package/dist/src/connectors/grpc/responseMappers/json.d.ts.map +1 -1
  369. package/dist/src/connectors/grpc/responseMappers/logMessages.d.ts.map +1 -1
  370. package/dist/src/connectors/grpc/responseMappers/result.d.ts.map +1 -1
  371. package/dist/src/connectors/grpc/responseMappers/result.js +2 -1
  372. package/dist/src/connectors/grpc/responseMappers/result.js.map +1 -1
  373. package/dist/src/connectors/grpc/sendContractResponse.d.ts.map +1 -1
  374. package/dist/src/domain/config.d.ts.map +1 -1
  375. package/dist/src/domain/define.d.ts.map +1 -1
  376. package/dist/src/domain/define.js +1 -1
  377. package/dist/src/domain/define.js.map +1 -1
  378. package/dist/src/domain/errors/errors.d.ts +1 -1
  379. package/dist/src/domain/errors/errors.d.ts.map +1 -1
  380. package/dist/src/domain/errors/errors.js +6 -2
  381. package/dist/src/domain/errors/errors.js.map +1 -1
  382. package/dist/src/domain/loadPlugin.d.ts.map +1 -1
  383. package/dist/src/domain/maintainerLog.d.ts.map +1 -1
  384. package/dist/src/domain/maintainerLog.js +1 -1
  385. package/dist/src/domain/maintainerLog.js.map +1 -1
  386. package/dist/src/domain/types.d.ts +1 -0
  387. package/dist/src/domain/types.d.ts.map +1 -1
  388. package/dist/src/domain/verify.d.ts.map +1 -1
  389. package/dist/src/domain/verify.js +1 -1
  390. package/dist/src/domain/verify.js.map +1 -1
  391. package/dist/src/entities/versionString.d.ts +2 -0
  392. package/dist/src/entities/versionString.d.ts.map +1 -0
  393. package/dist/src/entities/versionString.js +4 -0
  394. package/dist/src/entities/versionString.js.map +1 -0
  395. package/dist/tsconfig.build.tsbuildinfo +1 -1
  396. package/package/case-connector.js +2 -2
  397. package/package/case-connector.js.map +1 -1
  398. package/package.json +20 -15
  399. package/src/connectors/grpc/contract-case-stream.mts +70 -0
  400. package/tsconfig.build.json +6 -1
  401. package/webpack.config.cjs +1 -1
  402. package/dist/bin/case-connector.d.ts.map +0 -1
  403. package/dist/bin/case-connector.js.map +0 -1
  404. package/dist/package.json +0 -101
  405. package/dist/src/connectors/grpc/contract-case-stream.d.ts.map +0 -1
  406. package/dist/src/connectors/grpc/contract-case-stream.js.map +0 -1
  407. package/dist/src/versionString.d.ts +0 -2
  408. package/dist/src/versionString.d.ts.map +0 -1
  409. package/dist/src/versionString.js +0 -5
  410. package/dist/src/versionString.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,59 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.23.0](https://github.com/case-contract-testing/contract-case/compare/@contract-case/case-connector-v0.22.0...@contract-case/case-connector-v0.23.0) (2025-04-28)
4
+
5
+
6
+ ### Features
7
+
8
+ * CaseConnectorErrors now come with an error code that can be used to programatically react to them. See the reference documentation for details. ([dee6d4d](https://github.com/case-contract-testing/contract-case/commit/dee6d4d36219edfad5dfa9f913b1f852666db289))
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * **core:** Improve the logging of location context ([500cbb7](https://github.com/case-contract-testing/contract-case/commit/500cbb7a1d3f14ee810bde2f3e3b2627acb29e96))
14
+
15
+
16
+ ### Dependencies
17
+
18
+ * The following workspace dependencies were updated
19
+ * dependencies
20
+ * @contract-case/case-connector-proto bumped from 0.22.0 to 0.23.0
21
+ * @contract-case/case-core bumped from 0.22.0 to 0.23.0
22
+ * @contract-case/case-entities-internal bumped from 0.22.0 to 0.23.0
23
+ * devDependencies
24
+ * @contract-case/case-maintainer-config bumped from 0.22.0 to 0.23.0
25
+ * @contract-case/eslint-config-case-maintainer bumped from 0.22.0 to 0.23.0
26
+
27
+ ## [0.22.0](https://github.com/case-contract-testing/contract-case/compare/@contract-case/case-connector-v0.21.0...@contract-case/case-connector-v0.22.0) (2025-04-14)
28
+
29
+
30
+ ### ⚠ BREAKING CHANGES
31
+
32
+ * **core:** New behaviour of using contacts like snapshots - the new setting changedContracts changes the behaviour when contracts are changed. Either 'FAIL' for fail when a contract is changed, or 'OVERWRITE' for overwriting when a contract is changed. Default is to FAIL, so this is a breaking change.
33
+
34
+ ### Features
35
+
36
+ * **cli:** Add ability to invoke can-i-deploy from the CLI ([b2351ca](https://github.com/case-contract-testing/contract-case/commit/b2351cabd548d6b62b631fd45966cc2263325276))
37
+ * **connector:** Expose a CJS version as `@contract-case/case-connector/cjs` ([bbc490d](https://github.com/case-contract-testing/contract-case/commit/bbc490d0f92afb9a936be615e9663a8c27478cc7))
38
+ * **core:** New behaviour of using contacts like snapshots - the new setting changedContracts changes the behaviour when contracts are changed. Either 'FAIL' for fail when a contract is changed, or 'OVERWRITE' for overwriting when a contract is changed. Default is to FAIL, so this is a breaking change. ([b8dcd1f](https://github.com/case-contract-testing/contract-case/commit/b8dcd1f7ed16cfdeda22728da794a66e95f2870c))
39
+
40
+
41
+ ### Bug Fixes
42
+
43
+ * Improve reporting of stack traces when triggers fail ([deedb53](https://github.com/case-contract-testing/contract-case/commit/deedb532cbd8e62926cb58da3392ce41135a6dd5))
44
+
45
+
46
+ ### Dependencies
47
+
48
+ * The following workspace dependencies were updated
49
+ * dependencies
50
+ * @contract-case/case-connector-proto bumped from 0.21.0 to 0.22.0
51
+ * @contract-case/case-core bumped from 0.21.0 to 0.22.0
52
+ * @contract-case/case-entities-internal bumped from 0.21.0 to 0.22.0
53
+ * devDependencies
54
+ * @contract-case/case-maintainer-config bumped from 0.21.0 to 0.22.0
55
+ * @contract-case/eslint-config-case-maintainer bumped from 0.21.0 to 0.22.0
56
+
3
57
  ## [0.21.0](https://github.com/case-contract-testing/contract-case/compare/@contract-case/case-connector-v0.20.1...@contract-case/case-connector-v0.21.0) (2025-03-25)
4
58
 
5
59
 
package/README.md CHANGED
@@ -12,4 +12,6 @@ Don't depend on this directly unless you are writing a custom wrapper for Contra
12
12
  This package exists to work around [this JSii](https://github.com/aws/jsii/issues/4133)
13
13
  bug, by exposing the communication layer as a gRPC service.
14
14
 
15
+ Additionally, it exposes the boundary layer as `@contract-case/case-connector` for ESM imports, and `@contract-case/case-connector/cjs` for CJS imports.
16
+
15
17
  For details of the protocol schema, see the case-connector-proto package.
@@ -1,9 +1,11 @@
1
1
  #!/usr/bin/env node
2
+
2
3
  /*!
3
4
  * ContractCase Connector
4
5
  * Copyright(c) 2022-2024 Timothy Jones (TLJ)
5
6
  * BSD-3-Clause license
6
7
  */
7
- import { main } from '../src/connectors/grpc/contract-case-stream.js';
8
+
9
+ import { main } from '../src/connectors/grpc/contract-case-stream.mjs';
10
+
8
11
  main();
9
- //# sourceMappingURL=case-connector.js.map
@@ -5,4 +5,4 @@
5
5
  * BSD-3-Clause license
6
6
  */
7
7
  export {};
8
- //# sourceMappingURL=case-connector.d.ts.map
8
+ //# sourceMappingURL=case-connector.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"case-connector.d.mts","sourceRoot":"","sources":["../../bin/case-connector.mts"],"names":[],"mappings":";AAEA;;;;GAIG"}
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env node
2
+ /*!
3
+ * ContractCase Connector
4
+ * Copyright(c) 2022-2024 Timothy Jones (TLJ)
5
+ * BSD-3-Clause license
6
+ */
7
+ import { main } from '../src/connectors/grpc/contract-case-stream.mjs';
8
+ main();
9
+ //# sourceMappingURL=case-connector.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"case-connector.mjs","sourceRoot":"","sources":["../../bin/case-connector.mts"],"names":[],"mappings":";AAEA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,iDAAiD,CAAC;AAEvE,IAAI,EAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env node
2
+ /*!
3
+ * ContractCase Connector
4
+ * Copyright(c) 2022-2024 Timothy Jones (TLJ)
5
+ * BSD-3-Clause license
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=case-connector.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"case-connector.d.mts","sourceRoot":"","sources":["../../../bin/case-connector.mts"],"names":[],"mappings":";AAEA;;;;GAIG"}
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env node
2
+ /*!
3
+ * ContractCase Connector
4
+ * Copyright(c) 2022-2024 Timothy Jones (TLJ)
5
+ * BSD-3-Clause license
6
+ */
7
+ import { main } from '../src/connectors/grpc/contract-case-stream.mjs';
8
+ main();
9
+ //# sourceMappingURL=case-connector.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"case-connector.mjs","sourceRoot":"","sources":["../../../bin/case-connector.mts"],"names":[],"mappings":";AAEA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,iDAAiD,CAAC;AAEvE,IAAI,EAAE,CAAC"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.closeDefiner = exports.getDefiner = exports.createDefiner = void 0;
4
+ const uuid_1 = require("uuid");
5
+ const index_js_1 = require("./internals/index.cjs");
6
+ const errors_js_1 = require("../../domain/errors/errors.cjs");
7
+ const maintainerLog_js_1 = require("../../domain/maintainerLog.cjs");
8
+ const ENDED_DEFINER = 'CLOSED';
9
+ const DEFINING_CONTRACTS = {};
10
+ const createDefiner = (config, callbackPrinter, resultPrinter, callerVersions) => {
11
+ const id = (0, uuid_1.v4)();
12
+ const definer = {
13
+ id,
14
+ definer: new index_js_1.BoundaryContractDefiner({ ...config, testRunId: id }, callbackPrinter, resultPrinter, callerVersions),
15
+ };
16
+ DEFINING_CONTRACTS[id] = definer;
17
+ (0, maintainerLog_js_1.maintainerLog)(' --- storage', `Storing a definer (${id})`);
18
+ return id;
19
+ };
20
+ exports.createDefiner = createDefiner;
21
+ const getDefiner = (defineId, methodName) => {
22
+ const definerHandle = DEFINING_CONTRACTS[defineId];
23
+ if (definerHandle === undefined) {
24
+ return (0, errors_js_1.makeCoreError)(`The defineId '${defineId}' doesn't have an associated handle.\n\nThis might happen if the case-connector methods are called out of order, or the wrong connector is contacted`, `case-connector::${methodName}`);
25
+ }
26
+ if (definerHandle === ENDED_DEFINER) {
27
+ return (0, errors_js_1.makeConfigurationError)(`${methodName} was called after the definer was closed, presumably by endRecord`, `case-connector::${methodName}`, 'INVALID_LIFECYCLE');
28
+ }
29
+ return definerHandle;
30
+ };
31
+ exports.getDefiner = getDefiner;
32
+ const closeDefiner = (defineId) => {
33
+ DEFINING_CONTRACTS[defineId] = ENDED_DEFINER;
34
+ };
35
+ exports.closeDefiner = closeDefiner;
36
+ //# sourceMappingURL=definer.js.map
@@ -0,0 +1,10 @@
1
+ import { ContractCaseBoundaryConfig, ILogPrinter, IResultPrinter, BoundaryContractDefiner, BoundaryFailure } from './internals/index.cjs';
2
+ import { DefinitionId } from '../../domain/types.cjs';
3
+ export type DefinitionHandle = {
4
+ id: string;
5
+ definer: BoundaryContractDefiner;
6
+ };
7
+ export declare const createDefiner: (config: Omit<ContractCaseBoundaryConfig, "testRunId">, callbackPrinter: ILogPrinter, resultPrinter: IResultPrinter, callerVersions: string[]) => DefinitionId;
8
+ export declare const getDefiner: (defineId: DefinitionId, methodName: string) => DefinitionHandle | BoundaryFailure;
9
+ export declare const closeDefiner: (defineId: DefinitionId) => void;
10
+ //# sourceMappingURL=definer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definer.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/case-boundary/definer.ts"],"names":[],"mappings":"AACA,OAAO,EACL,0BAA0B,EAC1B,WAAW,EACX,cAAc,EACd,uBAAuB,EACvB,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAK9B,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAKrD,MAAM,MAAM,gBAAgB,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,uBAAuB,CAAA;CAAE,CAAC;AAMhF,eAAO,MAAM,aAAa,GACxB,QAAQ,IAAI,CAAC,0BAA0B,EAAE,WAAW,CAAC,EACrD,iBAAiB,WAAW,EAC5B,eAAe,cAAc,EAC7B,gBAAgB,MAAM,EAAE,KACvB,YAeF,CAAC;AAEF,eAAO,MAAM,UAAU,GACrB,UAAU,YAAY,EACtB,YAAY,MAAM,KACjB,gBAAgB,GAAG,eAgBrB,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,UAAU,YAAY,KAAG,IAErD,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definer.js","sourceRoot":"","sources":["../../../../../src/connectors/case-boundary/definer.ts"],"names":[],"mappings":";;;AAAA,+BAAmC;AACnC,mDAM8B;AAC9B,6DAGuC;AAEvC,oEAA8D;AAE9D,MAAM,aAAa,GAAG,QAAiB,CAAC;AAMxC,MAAM,kBAAkB,GAAwC,EAAE,CAAC;AAE5D,MAAM,aAAa,GAAG,CAC3B,MAAqD,EACrD,eAA4B,EAC5B,aAA6B,EAC7B,cAAwB,EACV,EAAE;IAChB,MAAM,EAAE,GAAG,IAAA,SAAK,GAAE,CAAC;IACnB,MAAM,OAAO,GAAG;QACd,EAAE;QACF,OAAO,EAAE,IAAI,kCAAuB,CAClC,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,EAC5B,eAAe,EACf,aAAa,EACb,cAAc,CACf;KACF,CAAC;IACF,kBAAkB,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;IAEjC,IAAA,gCAAa,EAAC,gBAAgB,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAC;IAC7D,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AApBW,QAAA,aAAa,iBAoBxB;AAEK,MAAM,UAAU,GAAG,CACxB,QAAsB,EACtB,UAAkB,EACkB,EAAE;IACtC,MAAM,aAAa,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACnD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,IAAA,yBAAa,EAClB,iBAAiB,QAAQ,sJAAsJ,EAC/K,mBAAmB,UAAU,EAAE,CAChC,CAAC;IACJ,CAAC;IACD,IAAI,aAAa,KAAK,aAAa,EAAE,CAAC;QACpC,OAAO,IAAA,kCAAsB,EAC3B,GAAG,UAAU,mEAAmE,EAChF,mBAAmB,UAAU,EAAE,EAC/B,mBAAmB,CACpB,CAAC;IACJ,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC;AAnBW,QAAA,UAAU,cAmBrB;AAEK,MAAM,YAAY,GAAG,CAAC,QAAsB,EAAQ,EAAE;IAC3D,kBAAkB,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC;AAC/C,CAAC,CAAC;AAFW,QAAA,YAAY,gBAEvB"}
@@ -0,0 +1,141 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BoundaryContractDefiner = void 0;
4
+ const case_core_1 = require("@contract-case/case-core");
5
+ const index_js_1 = require("./mappers/index.cjs");
6
+ const index_js_2 = require("./boundary/index.cjs");
7
+ const versionString_js_1 = require("../../../entities/versionString.cjs");
8
+ const mapDefinitionPart = (matcherOrData) => JSON.parse(JSON.stringify(matcherOrData));
9
+ const mapDefinition = (definition, { stateHandlers, triggerAndTests, triggerAndTest, }, config) => ({
10
+ ...mapDefinitionPart(definition),
11
+ ...(stateHandlers
12
+ ? {
13
+ stateHandlers,
14
+ }
15
+ : {}),
16
+ ...(triggerAndTests
17
+ ? {
18
+ triggerAndTests,
19
+ }
20
+ : {}),
21
+ ...(triggerAndTest ? { triggerAndTest } : {}),
22
+ config,
23
+ });
24
+ /**
25
+ * A BoundaryContractDefiner allows defining contracts
26
+ *
27
+ * @public
28
+ */
29
+ class BoundaryContractDefiner {
30
+ definer;
31
+ constructorConfig;
32
+ logPrinter;
33
+ resultPrinter;
34
+ parentVersions;
35
+ /**
36
+ * @public
37
+ * Construct a BoundaryContractDefiner to allow defining contracts.
38
+ *
39
+ * @param config - A ContractCaseBoundaryConfig object for the configuration
40
+ * @param logPrinter - An ILogPrinter to enable printing logs
41
+ * @param resultPrinter - An IResultPrinter to enable printing results
42
+ * @param parentVersions - The names version(s) of the package(s) calling
43
+ * this, where each entry in the array contains a name and version, with the
44
+ * first entry in the array being the furthest package up the call stack.
45
+ */
46
+ constructor(config, logPrinter, resultPrinter, parentVersions) {
47
+ this.constructorConfig = config;
48
+ this.definer = undefined;
49
+ this.logPrinter = logPrinter;
50
+ this.resultPrinter = resultPrinter;
51
+ // If invoked directly, we need to include our version
52
+ if (!parentVersions.includes(versionString_js_1.versionString)) {
53
+ this.parentVersions = [...parentVersions, versionString_js_1.versionString];
54
+ }
55
+ else {
56
+ this.parentVersions = parentVersions;
57
+ }
58
+ }
59
+ initialiseDefiner() {
60
+ if (this.definer === undefined) {
61
+ const { config, partialInvoker } = (0, index_js_1.convertConfig)(this.constructorConfig);
62
+ if (config.consumerName === undefined || config.consumerName === '') {
63
+ throw new case_core_1.CaseConfigurationError('Must provide a non-empty consumerName', 'DONT_ADD_LOCATION', 'INVALID_CONFIG');
64
+ }
65
+ if (config.providerName === undefined || config.providerName === '') {
66
+ throw new case_core_1.CaseConfigurationError('Must provide a non-empty providerName', 'DONT_ADD_LOCATION', 'INVALID_CONFIG');
67
+ }
68
+ this.definer = new case_core_1.ContractDefinerConnector({
69
+ consumerName: config.consumerName,
70
+ providerName: config.providerName,
71
+ }, config, partialInvoker, (0, index_js_1.wrapLogPrinter)(this.logPrinter, this.resultPrinter), [...this.parentVersions]);
72
+ }
73
+ }
74
+ async runInteraction(definition, runConfig) {
75
+ try {
76
+ this.initialiseDefiner();
77
+ if (this.definer === undefined) {
78
+ throw new case_core_1.CaseCoreError('Definer was undefined after it was initialised (runInteraction)');
79
+ }
80
+ const { config, partialInvoker } = (0, index_js_1.convertConfig)(runConfig);
81
+ await this.definer.runInteraction(mapDefinition(definition, partialInvoker, config), config);
82
+ return new index_js_2.BoundarySuccess();
83
+ }
84
+ catch (e) {
85
+ return (0, index_js_1.jsErrorToFailure)(e);
86
+ }
87
+ }
88
+ async runRejectingInteraction(definition, runConfig) {
89
+ try {
90
+ this.initialiseDefiner();
91
+ if (this.definer === undefined) {
92
+ throw new case_core_1.CaseCoreError('Definer was undefined after it was initialised (runRejectingInteraction)');
93
+ }
94
+ const { config, partialInvoker } = (0, index_js_1.convertConfig)(runConfig);
95
+ await this.definer.runRejectingInteraction({ ...mapDefinition(definition, partialInvoker, config) }, config);
96
+ return new index_js_2.BoundarySuccess();
97
+ }
98
+ catch (e) {
99
+ return (0, index_js_1.jsErrorToFailure)(e);
100
+ }
101
+ }
102
+ registerFunction(handle, invokeableFn) {
103
+ try {
104
+ this.initialiseDefiner();
105
+ if (this.definer === undefined) {
106
+ throw new case_core_1.CaseCoreError('Definer was undefined after it was initialised (stripMatchers)');
107
+ }
108
+ this.definer.registerFunction(handle, (0, index_js_1.mapInvokableFunction)(invokeableFn));
109
+ return new index_js_2.BoundarySuccess();
110
+ }
111
+ catch (e) {
112
+ return (0, index_js_1.jsErrorToFailure)(e);
113
+ }
114
+ }
115
+ stripMatchers(matcherOrData) {
116
+ try {
117
+ this.initialiseDefiner();
118
+ if (this.definer === undefined) {
119
+ throw new case_core_1.CaseCoreError('Definer was undefined after it was initialised (stripMatchers)');
120
+ }
121
+ return new index_js_2.BoundarySuccessWithAny(JSON.stringify(this.definer.stripMatchers(JSON.parse(JSON.stringify(matcherOrData)))));
122
+ }
123
+ catch (e) {
124
+ return (0, index_js_1.jsErrorToFailure)(e);
125
+ }
126
+ }
127
+ endRecord() {
128
+ return Promise.resolve()
129
+ .then(() => {
130
+ this.initialiseDefiner();
131
+ if (this.definer === undefined) {
132
+ throw new case_core_1.CaseCoreError('Definer was undefined after it was initialised (endRecord)');
133
+ }
134
+ return this.definer.endRecord();
135
+ })
136
+ .then(() => new index_js_2.BoundarySuccess())
137
+ .catch((e) => (0, index_js_1.jsErrorToFailure)(e));
138
+ }
139
+ }
140
+ exports.BoundaryContractDefiner = BoundaryContractDefiner;
141
+ //# sourceMappingURL=BoundaryContractDefiner.js.map
@@ -0,0 +1,34 @@
1
+ import { BoundaryAnyMatcher, BoundaryMockDefinition } from './types.jsii-boundary.cjs';
2
+ import { ContractCaseBoundaryConfig, ILogPrinter, IResultPrinter, BoundaryResult } from './boundary/index.cjs';
3
+ import { BoundaryInvokableFunction } from './types.cjs';
4
+ /**
5
+ * A BoundaryContractDefiner allows defining contracts
6
+ *
7
+ * @public
8
+ */
9
+ export declare class BoundaryContractDefiner {
10
+ private definer;
11
+ private readonly constructorConfig;
12
+ private readonly logPrinter;
13
+ private readonly resultPrinter;
14
+ private readonly parentVersions;
15
+ /**
16
+ * @public
17
+ * Construct a BoundaryContractDefiner to allow defining contracts.
18
+ *
19
+ * @param config - A ContractCaseBoundaryConfig object for the configuration
20
+ * @param logPrinter - An ILogPrinter to enable printing logs
21
+ * @param resultPrinter - An IResultPrinter to enable printing results
22
+ * @param parentVersions - The names version(s) of the package(s) calling
23
+ * this, where each entry in the array contains a name and version, with the
24
+ * first entry in the array being the furthest package up the call stack.
25
+ */
26
+ constructor(config: ContractCaseBoundaryConfig, logPrinter: ILogPrinter, resultPrinter: IResultPrinter, parentVersions: string[]);
27
+ private initialiseDefiner;
28
+ runInteraction(definition: BoundaryMockDefinition, runConfig: ContractCaseBoundaryConfig): Promise<BoundaryResult>;
29
+ runRejectingInteraction(definition: BoundaryMockDefinition, runConfig: ContractCaseBoundaryConfig): Promise<BoundaryResult>;
30
+ registerFunction(handle: string, invokeableFn: BoundaryInvokableFunction): BoundaryResult;
31
+ stripMatchers(matcherOrData: BoundaryAnyMatcher): BoundaryResult;
32
+ endRecord(): Promise<BoundaryResult>;
33
+ }
34
+ //# sourceMappingURL=BoundaryContractDefiner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundaryContractDefiner.d.ts","sourceRoot":"","sources":["../../../../../../src/connectors/case-boundary/internals/BoundaryContractDefiner.ts"],"names":[],"mappings":"AAiBA,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,0BAA0B,EAC1B,WAAW,EACX,cAAc,EACd,cAAc,EAGf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAkCvD;;;;GAIG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,OAAO,CAA8D;IAE7E,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA6B;IAE/D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAc;IAEzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiB;IAE/C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAW;IAE1C;;;;;;;;;;OAUG;gBAED,MAAM,EAAE,0BAA0B,EAClC,UAAU,EAAE,WAAW,EACvB,aAAa,EAAE,cAAc,EAC7B,cAAc,EAAE,MAAM,EAAE;IAc1B,OAAO,CAAC,iBAAiB;IAiCnB,cAAc,CAClB,UAAU,EAAE,sBAAsB,EAClC,SAAS,EAAE,0BAA0B,GACpC,OAAO,CAAC,cAAc,CAAC;IAoBpB,uBAAuB,CAC3B,UAAU,EAAE,sBAAsB,EAClC,SAAS,EAAE,0BAA0B,GACpC,OAAO,CAAC,cAAc,CAAC;IAmB1B,gBAAgB,CACd,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,yBAAyB,GACtC,cAAc;IAejB,aAAa,CAAC,aAAa,EAAE,kBAAkB,GAAG,cAAc;IAmBhE,SAAS,IAAI,OAAO,CAAC,cAAc,CAAC;CAcrC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundaryContractDefiner.js","sourceRoot":"","sources":["../../../../../../src/connectors/case-boundary/internals/BoundaryContractDefiner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BoundaryContractVerifier = void 0;
4
+ const case_core_1 = require("@contract-case/case-core");
5
+ const index_js_1 = require("./mappers/index.cjs");
6
+ const index_js_2 = require("./boundary/index.cjs");
7
+ const versionString_js_1 = require("../../../entities/versionString.cjs");
8
+ class CoreInvoker {
9
+ coreVerify;
10
+ constructor(coreVerify) {
11
+ this.coreVerify = coreVerify;
12
+ }
13
+ async verify() {
14
+ let verification;
15
+ try {
16
+ verification = Promise.resolve(this.coreVerify());
17
+ }
18
+ catch (e) {
19
+ verification = Promise.reject(e);
20
+ }
21
+ return verification
22
+ .then(() => new index_js_2.BoundarySuccess())
23
+ .catch(index_js_1.jsErrorToFailure);
24
+ }
25
+ }
26
+ const wrapCallback = (callback) => (testName, verify) => {
27
+ let verification;
28
+ try {
29
+ verification = Promise.resolve(callback.runTest(testName, new CoreInvoker(verify)));
30
+ }
31
+ catch (e) {
32
+ verification = Promise.reject(e);
33
+ }
34
+ return verification
35
+ .then((result) => (0, index_js_1.handleVoidResult)(result, 'CaseCoreError'))
36
+ .catch(index_js_1.jsErrorToFailure);
37
+ };
38
+ /**
39
+ * A BoundaryContractDefiner allows verifying contracts
40
+ *
41
+ * @public
42
+ */
43
+ class BoundaryContractVerifier {
44
+ verifier;
45
+ constructorConfig;
46
+ callback;
47
+ logPrinter;
48
+ resultPrinter;
49
+ parentVersions;
50
+ /**
51
+ * Construct a BoundaryContractVerifier to allow verifying pre-written contracts.
52
+ *
53
+ * @param config - A ContractCaseBoundaryConfig object for the configuration
54
+ * @param IRunTestCallback - The callback to tell the test runner that it is running a test
55
+ * @param logPrinter - An ILogPrinter to enable printing logs
56
+ * @param resultPrinter - An IResultPrinter to enable printing results
57
+ * @param parentVersions - The names version(s) of the package(s) calling
58
+ * this, where each entry in the array contains a name and version, with the
59
+ * first entry in the array being the furthest package up the call stack.
60
+ */
61
+ constructor(config, callback, logPrinter, resultPrinter, parentVersions) {
62
+ this.constructorConfig = config;
63
+ this.callback = callback;
64
+ this.logPrinter = logPrinter;
65
+ this.resultPrinter = resultPrinter;
66
+ this.parentVersions = parentVersions;
67
+ // If invoked directly, we need to include our version
68
+ if (!parentVersions.includes(versionString_js_1.versionString)) {
69
+ this.parentVersions = [...parentVersions, versionString_js_1.versionString];
70
+ }
71
+ else {
72
+ this.parentVersions = parentVersions;
73
+ }
74
+ }
75
+ initialiseVerifier() {
76
+ const { config } = (0, index_js_1.convertConfig)(this.constructorConfig);
77
+ if (config.providerName === undefined || config.providerName === '') {
78
+ throw new case_core_1.CaseConfigurationError('Must provide a non-empty providerName', 'DONT_ADD_LOCATION', 'INVALID_CONFIG');
79
+ }
80
+ this.verifier = new case_core_1.ContractVerifierConnector(config, wrapCallback(this.callback), (0, index_js_1.wrapLogPrinter)(this.logPrinter, this.resultPrinter), [...this.parentVersions]);
81
+ }
82
+ /**
83
+ * Returns a description of all of the contracts that can be found by the configuration.
84
+ *
85
+ * @returns either a `BoundaryFailure`, or a `BoundarySuccessWithAny` which contains an array of:
86
+ * ```
87
+ * CaseContractDescription {
88
+ * consumerName: string;
89
+ * providerName: string;
90
+ * }
91
+ * ```
92
+ */
93
+ availableContractDescriptions() {
94
+ try {
95
+ this.initialiseVerifier();
96
+ if (this.verifier === undefined) {
97
+ throw new case_core_1.CaseCoreError('Definer was undefined after it was initialised (getAvailableContractDescriptions)');
98
+ }
99
+ return new index_js_2.BoundarySuccessWithAny(JSON.stringify(this.verifier.getAvailableContractDescriptions()));
100
+ }
101
+ catch (e) {
102
+ return (0, index_js_1.jsErrorToFailure)(e);
103
+ }
104
+ }
105
+ /**
106
+ * Run the verification of the contract(s) that can be found using the configuration provided.
107
+ * If you want to filter the contract(s), use the configOverrides to specify a Consumer or Provider name.
108
+ *
109
+ * @param configOverrides - A `ContractCaseBoundaryConfig` that defines any config options to override (after the ones provided in the constructor are applied)
110
+ *
111
+ * @returns `BoundarySuccess` if verification was successful, otherwise a `BoundaryFailure`
112
+ */
113
+ runVerification(configOverrides, invokeableFns) {
114
+ try {
115
+ this.initialiseVerifier();
116
+ if (this.verifier === undefined) {
117
+ throw new case_core_1.CaseCoreError('Definer was undefined after it was initialised (getAvailableContractDescriptions)');
118
+ }
119
+ const { config, partialInvoker } = (0, index_js_1.convertConfig)(configOverrides);
120
+ const { config: initialConfig, partialInvoker: initialInvoker } = (0, index_js_1.convertConfig)(this.constructorConfig);
121
+ const result = this.verifier.verifyContract({ ...initialInvoker, ...partialInvoker }, { ...initialConfig, ...config }, (0, index_js_1.mapInvokableFunctions)(invokeableFns));
122
+ if (configOverrides.internals.asyncVerification) {
123
+ return Promise.resolve(result).then(() => new index_js_2.BoundarySuccess(), (e) => (0, index_js_1.jsErrorToFailure)(e));
124
+ }
125
+ return new index_js_2.BoundarySuccess();
126
+ }
127
+ catch (e) {
128
+ if (configOverrides.internals.asyncVerification) {
129
+ return Promise.resolve((0, index_js_1.jsErrorToFailure)(e));
130
+ }
131
+ throw e;
132
+ }
133
+ }
134
+ }
135
+ exports.BoundaryContractVerifier = BoundaryContractVerifier;
136
+ //# sourceMappingURL=BoundaryContractVerifier.js.map
@@ -0,0 +1,51 @@
1
+ import { IRunTestCallback } from './boundary/IRunTestCallback.cjs';
2
+ import { ILogPrinter, IResultPrinter, ContractCaseBoundaryConfig, BoundaryResult } from './boundary/index.cjs';
3
+ import { BoundaryInvokableFunction } from './types.cjs';
4
+ /**
5
+ * A BoundaryContractDefiner allows verifying contracts
6
+ *
7
+ * @public
8
+ */
9
+ export declare class BoundaryContractVerifier {
10
+ private verifier;
11
+ private readonly constructorConfig;
12
+ private readonly callback;
13
+ private readonly logPrinter;
14
+ private readonly resultPrinter;
15
+ private readonly parentVersions;
16
+ /**
17
+ * Construct a BoundaryContractVerifier to allow verifying pre-written contracts.
18
+ *
19
+ * @param config - A ContractCaseBoundaryConfig object for the configuration
20
+ * @param IRunTestCallback - The callback to tell the test runner that it is running a test
21
+ * @param logPrinter - An ILogPrinter to enable printing logs
22
+ * @param resultPrinter - An IResultPrinter to enable printing results
23
+ * @param parentVersions - The names version(s) of the package(s) calling
24
+ * this, where each entry in the array contains a name and version, with the
25
+ * first entry in the array being the furthest package up the call stack.
26
+ */
27
+ constructor(config: ContractCaseBoundaryConfig, callback: IRunTestCallback, logPrinter: ILogPrinter, resultPrinter: IResultPrinter, parentVersions: string[]);
28
+ private initialiseVerifier;
29
+ /**
30
+ * Returns a description of all of the contracts that can be found by the configuration.
31
+ *
32
+ * @returns either a `BoundaryFailure`, or a `BoundarySuccessWithAny` which contains an array of:
33
+ * ```
34
+ * CaseContractDescription {
35
+ * consumerName: string;
36
+ * providerName: string;
37
+ * }
38
+ * ```
39
+ */
40
+ availableContractDescriptions(): BoundaryResult;
41
+ /**
42
+ * Run the verification of the contract(s) that can be found using the configuration provided.
43
+ * If you want to filter the contract(s), use the configOverrides to specify a Consumer or Provider name.
44
+ *
45
+ * @param configOverrides - A `ContractCaseBoundaryConfig` that defines any config options to override (after the ones provided in the constructor are applied)
46
+ *
47
+ * @returns `BoundarySuccess` if verification was successful, otherwise a `BoundaryFailure`
48
+ */
49
+ runVerification(configOverrides: ContractCaseBoundaryConfig, invokeableFns: Record<string, BoundaryInvokableFunction>): Promise<BoundaryResult> | BoundaryResult;
50
+ }
51
+ //# sourceMappingURL=BoundaryContractVerifier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundaryContractVerifier.d.ts","sourceRoot":"","sources":["../../../../../../src/connectors/case-boundary/internals/BoundaryContractVerifier.ts"],"names":[],"mappings":"AAcA,OAAO,EAEL,gBAAgB,EACjB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,WAAW,EACX,cAAc,EACd,0BAA0B,EAC1B,cAAc,EAGf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAsCvD;;;;GAIG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAwC;IAExD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA6B;IAE/D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAE5C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAc;IAEzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiB;IAE/C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAW;IAE1C;;;;;;;;;;OAUG;gBAED,MAAM,EAAE,0BAA0B,EAClC,QAAQ,EAAE,gBAAgB,EAC1B,UAAU,EAAE,WAAW,EACvB,aAAa,EAAE,cAAc,EAC7B,cAAc,EAAE,MAAM,EAAE;IAe1B,OAAO,CAAC,kBAAkB;IAmB1B;;;;;;;;;;OAUG;IACH,6BAA6B,IAAI,cAAc;IAiB/C;;;;;;;OAOG;IACH,eAAe,CACb,eAAe,EAAE,0BAA0B,EAC3C,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,GACvD,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc;CAgC5C"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundaryContractVerifier.js","sourceRoot":"","sources":["../../../../../../src/connectors/case-boundary/internals/BoundaryContractVerifier.ts"],"names":[],"mappings":";;;AAAA,wDAKkC;AAElC,iDAM4B;AAK5B,kDAO6B;AAC7B,yEAAmE;AAGnE,MAAM,WAAW;IACP,UAAU,CAAyB;IAE3C,YAAY,UAAkC;QAC5C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,YAAY,CAAC;QACjB,IAAI,CAAC;YACH,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QACpD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,YAAY;aAChB,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,0BAAe,EAAE,CAAC;aACjC,KAAK,CAAC,2BAAgB,CAAC,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,YAAY,GAChB,CAAC,QAA0B,EAAmB,EAAE,CAChD,CAAC,QAAgB,EAAE,MAA8B,EAAE,EAAE;IACnD,IAAI,YAAY,CAAC;IACjB,IAAI,CAAC;QACH,YAAY,GAAG,OAAO,CAAC,OAAO,CAC5B,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC,CACpD,CAAC;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,YAAY;SAChB,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAA,2BAAgB,EAAC,MAAM,EAAE,eAAe,CAAC,CAAC;SAC3D,KAAK,CAAC,2BAAgB,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEJ;;;;GAIG;AACH,MAAa,wBAAwB;IAC3B,QAAQ,CAAwC;IAEvC,iBAAiB,CAA6B;IAE9C,QAAQ,CAAmB;IAE3B,UAAU,CAAc;IAExB,aAAa,CAAiB;IAE9B,cAAc,CAAW;IAE1C;;;;;;;;;;OAUG;IACH,YACE,MAAkC,EAClC,QAA0B,EAC1B,UAAuB,EACvB,aAA6B,EAC7B,cAAwB;QAExB,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,sDAAsD;QACtD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,gCAAa,CAAC,EAAE,CAAC;YAC5C,IAAI,CAAC,cAAc,GAAG,CAAC,GAAG,cAAc,EAAE,gCAAa,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACvC,CAAC;IACH,CAAC;IAEO,kBAAkB;QACxB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,wBAAa,EAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAEzD,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,IAAI,MAAM,CAAC,YAAY,KAAK,EAAE,EAAE,CAAC;YACpE,MAAM,IAAI,kCAAsB,CAC9B,uCAAuC,EACvC,mBAAmB,EACnB,gBAAgB,CACjB,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,IAAI,qCAAyB,CAC3C,MAAM,EACN,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAC3B,IAAA,yBAAc,EAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,EACnD,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CACzB,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACH,6BAA6B;QAC3B,IAAI,CAAC;YACH,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,IAAI,yBAAa,CACrB,mFAAmF,CACpF,CAAC;YACJ,CAAC;YAED,OAAO,IAAI,iCAAsB,CAC/B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,gCAAgC,EAAE,CAAC,CACjE,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,IAAA,2BAAgB,EAAC,CAAC,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,eAAe,CACb,eAA2C,EAC3C,aAAwD;QAExD,IAAI,CAAC;YACH,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,IAAI,yBAAa,CACrB,mFAAmF,CACpF,CAAC;YACJ,CAAC;YAED,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,IAAA,wBAAa,EAAC,eAAe,CAAC,CAAC;YAClE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,GAC7D,IAAA,wBAAa,EAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAExC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CACzC,EAAE,GAAG,cAAc,EAAE,GAAG,cAAc,EAAE,EACxC,EAAE,GAAG,aAAa,EAAE,GAAG,MAAM,EAAE,EAC/B,IAAA,gCAAqB,EAAC,aAAa,CAAC,CACrC,CAAC;YACF,IAAI,eAAe,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC;gBAChD,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CACjC,GAAG,EAAE,CAAC,IAAI,0BAAe,EAAE,EAC3B,CAAC,CAAQ,EAAE,EAAE,CAAC,IAAA,2BAAgB,EAAC,CAAC,CAAC,CAClC,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,0BAAe,EAAE,CAAC;QAC/B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,eAAe,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC;gBAChD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAA,2BAAgB,EAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;CACF;AAtID,4DAsIC"}