@aws-amplify/graphql-api-construct 1.18.3 → 1.18.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (971) hide show
  1. package/.jsii +162 -187
  2. package/CHANGELOG.md +4 -0
  3. package/jest.config.js +0 -7
  4. package/lib/amplify-dynamodb-table-wrapper.js +1 -1
  5. package/lib/amplify-graphql-api.js +1 -1
  6. package/lib/amplify-graphql-definition.js +1 -1
  7. package/lib/index.js +23 -1
  8. package/lib/sql-model-datasource-strategy.js +1 -1
  9. package/lib/types.js +11 -1
  10. package/node_modules/@aws-amplify/graphql-auth-transformer/CHANGELOG.md +4 -0
  11. package/node_modules/@aws-amplify/graphql-auth-transformer/package.json +10 -10
  12. package/node_modules/@aws-amplify/graphql-conversation-transformer/CHANGELOG.md +4 -0
  13. package/node_modules/@aws-amplify/graphql-conversation-transformer/package.json +7 -7
  14. package/node_modules/@aws-amplify/graphql-default-value-transformer/CHANGELOG.md +4 -0
  15. package/node_modules/@aws-amplify/graphql-default-value-transformer/package.json +5 -5
  16. package/node_modules/@aws-amplify/graphql-directives/package.json +1 -2
  17. package/node_modules/@aws-amplify/graphql-function-transformer/CHANGELOG.md +4 -0
  18. package/node_modules/@aws-amplify/graphql-function-transformer/package.json +4 -4
  19. package/node_modules/@aws-amplify/graphql-generation-transformer/CHANGELOG.md +4 -0
  20. package/node_modules/@aws-amplify/graphql-generation-transformer/package.json +4 -4
  21. package/node_modules/@aws-amplify/graphql-http-transformer/CHANGELOG.md +4 -0
  22. package/node_modules/@aws-amplify/graphql-http-transformer/package.json +4 -4
  23. package/node_modules/@aws-amplify/graphql-index-transformer/CHANGELOG.md +4 -0
  24. package/node_modules/@aws-amplify/graphql-index-transformer/package.json +5 -5
  25. package/node_modules/@aws-amplify/graphql-maps-to-transformer/CHANGELOG.md +4 -0
  26. package/node_modules/@aws-amplify/graphql-maps-to-transformer/lib/assets/mapping-lambda.zip +0 -0
  27. package/node_modules/@aws-amplify/graphql-maps-to-transformer/package.json +8 -8
  28. package/node_modules/@aws-amplify/graphql-model-transformer/CHANGELOG.md +4 -0
  29. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-lambda.zip +0 -0
  30. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-notification-lambda.zip +0 -0
  31. package/node_modules/@aws-amplify/graphql-model-transformer/lib/rds-patching-lambda.zip +0 -0
  32. package/node_modules/@aws-amplify/graphql-model-transformer/package.json +4 -4
  33. package/node_modules/@aws-amplify/graphql-predictions-transformer/CHANGELOG.md +4 -0
  34. package/node_modules/@aws-amplify/graphql-predictions-transformer/lib/predictionsLambdaFunction.zip +0 -0
  35. package/node_modules/@aws-amplify/graphql-predictions-transformer/package.json +4 -4
  36. package/node_modules/@aws-amplify/graphql-relational-transformer/CHANGELOG.md +4 -0
  37. package/node_modules/@aws-amplify/graphql-relational-transformer/package.json +6 -6
  38. package/node_modules/@aws-amplify/graphql-searchable-transformer/CHANGELOG.md +4 -0
  39. package/node_modules/@aws-amplify/graphql-searchable-transformer/lib/streaming-lambda.zip +0 -0
  40. package/node_modules/@aws-amplify/graphql-searchable-transformer/package.json +5 -5
  41. package/node_modules/@aws-amplify/graphql-sql-transformer/CHANGELOG.md +4 -0
  42. package/node_modules/@aws-amplify/graphql-sql-transformer/package.json +5 -5
  43. package/node_modules/@aws-amplify/graphql-transformer/CHANGELOG.md +4 -0
  44. package/node_modules/@aws-amplify/graphql-transformer/package.json +17 -17
  45. package/node_modules/@aws-amplify/graphql-transformer-core/CHANGELOG.md +4 -0
  46. package/node_modules/@aws-amplify/graphql-transformer-core/package.json +2 -3
  47. package/node_modules/@aws-amplify/graphql-transformer-interfaces/package.json +1 -2
  48. package/node_modules/graphql-mapping-template/package.json +1 -2
  49. package/node_modules/graphql-transformer-common/package.json +1 -2
  50. package/package.json +18 -68
  51. package/src/index.ts +33 -0
  52. package/src/types.ts +100 -0
  53. package/node_modules/@aws-amplify/graphql-directives/LICENSE +0 -201
  54. package/node_modules/@aws-amplify/graphql-transformer-interfaces/LICENSE +0 -201
  55. package/node_modules/@aws-cdk/assert/BUILD.md +0 -15
  56. package/node_modules/@aws-cdk/assert/LICENSE +0 -201
  57. package/node_modules/@aws-cdk/assert/NOTICE +0 -2
  58. package/node_modules/@aws-cdk/assert/README.md +0 -228
  59. package/node_modules/@aws-cdk/assert/clone.sh +0 -29
  60. package/node_modules/@aws-cdk/assert/jest.d.ts +0 -14
  61. package/node_modules/@aws-cdk/assert/jest.js +0 -57
  62. package/node_modules/@aws-cdk/assert/lib/assertion.d.ts +0 -17
  63. package/node_modules/@aws-cdk/assert/lib/assertion.js +0 -31
  64. package/node_modules/@aws-cdk/assert/lib/assertions/and-assertion.d.ts +0 -10
  65. package/node_modules/@aws-cdk/assert/lib/assertions/and-assertion.js +0 -21
  66. package/node_modules/@aws-cdk/assert/lib/assertions/count-resources.d.ts +0 -10
  67. package/node_modules/@aws-cdk/assert/lib/assertions/count-resources.js +0 -54
  68. package/node_modules/@aws-cdk/assert/lib/assertions/exist.d.ts +0 -3
  69. package/node_modules/@aws-cdk/assert/lib/assertions/exist.js +0 -18
  70. package/node_modules/@aws-cdk/assert/lib/assertions/have-output.d.ts +0 -29
  71. package/node_modules/@aws-cdk/assert/lib/assertions/have-output.js +0 -77
  72. package/node_modules/@aws-cdk/assert/lib/assertions/have-resource-matchers.d.ts +0 -123
  73. package/node_modules/@aws-cdk/assert/lib/assertions/have-resource-matchers.js +0 -404
  74. package/node_modules/@aws-cdk/assert/lib/assertions/have-resource.d.ts +0 -69
  75. package/node_modules/@aws-cdk/assert/lib/assertions/have-resource.js +0 -130
  76. package/node_modules/@aws-cdk/assert/lib/assertions/have-type.d.ts +0 -3
  77. package/node_modules/@aws-cdk/assert/lib/assertions/have-type.js +0 -22
  78. package/node_modules/@aws-cdk/assert/lib/assertions/match-template.d.ts +0 -19
  79. package/node_modules/@aws-cdk/assert/lib/assertions/match-template.js +0 -98
  80. package/node_modules/@aws-cdk/assert/lib/assertions/negated-assertion.d.ts +0 -8
  81. package/node_modules/@aws-cdk/assert/lib/assertions/negated-assertion.js +0 -18
  82. package/node_modules/@aws-cdk/assert/lib/canonicalize-assets.d.ts +0 -11
  83. package/node_modules/@aws-cdk/assert/lib/canonicalize-assets.js +0 -70
  84. package/node_modules/@aws-cdk/assert/lib/expect.d.ts +0 -4
  85. package/node_modules/@aws-cdk/assert/lib/expect.js +0 -16
  86. package/node_modules/@aws-cdk/assert/lib/index.d.ts +0 -14
  87. package/node_modules/@aws-cdk/assert/lib/index.js +0 -27
  88. package/node_modules/@aws-cdk/assert/lib/inspector.d.ts +0 -31
  89. package/node_modules/@aws-cdk/assert/lib/inspector.js +0 -69
  90. package/node_modules/@aws-cdk/assert/lib/synth-utils.d.ts +0 -30
  91. package/node_modules/@aws-cdk/assert/lib/synth-utils.js +0 -92
  92. package/node_modules/@aws-cdk/assert/package.json +0 -77
  93. package/node_modules/@aws-cdk/cfnspec/CHANGELOG.md +0 -16795
  94. package/node_modules/@aws-cdk/cfnspec/LICENSE +0 -201
  95. package/node_modules/@aws-cdk/cfnspec/NOTICE +0 -2
  96. package/node_modules/@aws-cdk/cfnspec/README.md +0 -14
  97. package/node_modules/@aws-cdk/cfnspec/build-tools/build.d.ts +0 -1
  98. package/node_modules/@aws-cdk/cfnspec/build-tools/build.js +0 -37
  99. package/node_modules/@aws-cdk/cfnspec/build-tools/create-missing-libraries.d.ts +0 -6
  100. package/node_modules/@aws-cdk/cfnspec/build-tools/create-missing-libraries.js +0 -311
  101. package/node_modules/@aws-cdk/cfnspec/build-tools/massage-spec.d.ts +0 -10
  102. package/node_modules/@aws-cdk/cfnspec/build-tools/massage-spec.js +0 -70
  103. package/node_modules/@aws-cdk/cfnspec/build-tools/patch-set.d.ts +0 -25
  104. package/node_modules/@aws-cdk/cfnspec/build-tools/patch-set.js +0 -241
  105. package/node_modules/@aws-cdk/cfnspec/build-tools/report-issues.d.ts +0 -9
  106. package/node_modules/@aws-cdk/cfnspec/build-tools/report-issues.js +0 -72
  107. package/node_modules/@aws-cdk/cfnspec/build-tools/scrutiny.d.ts +0 -12
  108. package/node_modules/@aws-cdk/cfnspec/build-tools/scrutiny.js +0 -85
  109. package/node_modules/@aws-cdk/cfnspec/build-tools/spec-diff.d.ts +0 -1
  110. package/node_modules/@aws-cdk/cfnspec/build-tools/spec-diff.js +0 -248
  111. package/node_modules/@aws-cdk/cfnspec/build-tools/split-spec-by-service.d.ts +0 -1
  112. package/node_modules/@aws-cdk/cfnspec/build-tools/split-spec-by-service.js +0 -120
  113. package/node_modules/@aws-cdk/cfnspec/build-tools/template/LICENSE +0 -201
  114. package/node_modules/@aws-cdk/cfnspec/build-tools/template/NOTICE +0 -2
  115. package/node_modules/@aws-cdk/cfnspec/build-tools/update-cfnlint.sh +0 -18
  116. package/node_modules/@aws-cdk/cfnspec/build-tools/update-metrics.sh +0 -15
  117. package/node_modules/@aws-cdk/cfnspec/build-tools/update.sh +0 -113
  118. package/node_modules/@aws-cdk/cfnspec/build-tools/validate-cfn.d.ts +0 -67
  119. package/node_modules/@aws-cdk/cfnspec/build-tools/validate-cfn.js +0 -285
  120. package/node_modules/@aws-cdk/cfnspec/cfn.version +0 -1
  121. package/node_modules/@aws-cdk/cfnspec/lib/_private_schema/cfn-lint.d.ts +0 -24
  122. package/node_modules/@aws-cdk/cfnspec/lib/_private_schema/cfn-lint.js +0 -3
  123. package/node_modules/@aws-cdk/cfnspec/lib/augmentations/AWS_EC2_VPNConnection.json +0 -27
  124. package/node_modules/@aws-cdk/cfnspec/lib/augmentations/AWS_Lambda_Function.json +0 -27
  125. package/node_modules/@aws-cdk/cfnspec/lib/augmentations/AWS_RDS_DBCluster.json +0 -70
  126. package/node_modules/@aws-cdk/cfnspec/lib/augmentations/AWS_RDS_DBInstance.json +0 -37
  127. package/node_modules/@aws-cdk/cfnspec/lib/augmentations/AWS_SNS_Topic.json +0 -52
  128. package/node_modules/@aws-cdk/cfnspec/lib/augmentations/AWS_SQS_Queue.json +0 -53
  129. package/node_modules/@aws-cdk/cfnspec/lib/canned-metrics/README.md +0 -168
  130. package/node_modules/@aws-cdk/cfnspec/lib/canned-metrics/canned-metrics-schema.d.ts +0 -60
  131. package/node_modules/@aws-cdk/cfnspec/lib/canned-metrics/canned-metrics-schema.js +0 -12
  132. package/node_modules/@aws-cdk/cfnspec/lib/canned-metrics/services.json +0 -31957
  133. package/node_modules/@aws-cdk/cfnspec/lib/canned-metrics.d.ts +0 -41
  134. package/node_modules/@aws-cdk/cfnspec/lib/canned-metrics.js +0 -75
  135. package/node_modules/@aws-cdk/cfnspec/lib/index.d.ts +0 -63
  136. package/node_modules/@aws-cdk/cfnspec/lib/index.js +0 -200
  137. package/node_modules/@aws-cdk/cfnspec/lib/schema/augmentation.d.ts +0 -87
  138. package/node_modules/@aws-cdk/cfnspec/lib/schema/augmentation.js +0 -28
  139. package/node_modules/@aws-cdk/cfnspec/lib/schema/base-types.d.ts +0 -14
  140. package/node_modules/@aws-cdk/cfnspec/lib/schema/base-types.js +0 -29
  141. package/node_modules/@aws-cdk/cfnspec/lib/schema/cfn-lint.d.ts +0 -13
  142. package/node_modules/@aws-cdk/cfnspec/lib/schema/cfn-lint.js +0 -3
  143. package/node_modules/@aws-cdk/cfnspec/lib/schema/docs.d.ts +0 -20
  144. package/node_modules/@aws-cdk/cfnspec/lib/schema/docs.js +0 -3
  145. package/node_modules/@aws-cdk/cfnspec/lib/schema/index.d.ts +0 -7
  146. package/node_modules/@aws-cdk/cfnspec/lib/schema/index.js +0 -20
  147. package/node_modules/@aws-cdk/cfnspec/lib/schema/property.d.ts +0 -179
  148. package/node_modules/@aws-cdk/cfnspec/lib/schema/property.js +0 -168
  149. package/node_modules/@aws-cdk/cfnspec/lib/schema/resource-type.d.ts +0 -118
  150. package/node_modules/@aws-cdk/cfnspec/lib/schema/resource-type.js +0 -99
  151. package/node_modules/@aws-cdk/cfnspec/lib/schema/specification.d.ts +0 -56
  152. package/node_modules/@aws-cdk/cfnspec/lib/schema/specification.js +0 -11
  153. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/CHANGELOG.md +0 -902
  154. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/LICENSE +0 -15
  155. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/README.md +0 -264
  156. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/copy/copy.js +0 -232
  157. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/copy/index.js +0 -6
  158. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/copy-sync/copy-sync.js +0 -166
  159. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/copy-sync/index.js +0 -5
  160. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/empty/index.js +0 -48
  161. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/ensure/file.js +0 -69
  162. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/ensure/index.js +0 -23
  163. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/ensure/link.js +0 -61
  164. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/ensure/symlink-paths.js +0 -99
  165. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/ensure/symlink-type.js +0 -31
  166. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/ensure/symlink.js +0 -63
  167. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/fs/index.js +0 -130
  168. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/index.js +0 -27
  169. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/json/index.js +0 -16
  170. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/json/jsonfile.js +0 -11
  171. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/json/output-json-sync.js +0 -12
  172. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/json/output-json.js +0 -12
  173. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/mkdirs/index.js +0 -14
  174. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/mkdirs/make-dir.js +0 -141
  175. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/move/index.js +0 -6
  176. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/move/move.js +0 -65
  177. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/move-sync/index.js +0 -5
  178. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/move-sync/move-sync.js +0 -47
  179. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/output/index.js +0 -40
  180. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/path-exists/index.js +0 -12
  181. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/remove/index.js +0 -9
  182. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/remove/rimraf.js +0 -302
  183. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/util/stat.js +0 -139
  184. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/lib/util/utimes.js +0 -26
  185. package/node_modules/@aws-cdk/cfnspec/node_modules/fs-extra/package.json +0 -70
  186. package/node_modules/@aws-cdk/cfnspec/node_modules/jsonfile/CHANGELOG.md +0 -171
  187. package/node_modules/@aws-cdk/cfnspec/node_modules/jsonfile/LICENSE +0 -15
  188. package/node_modules/@aws-cdk/cfnspec/node_modules/jsonfile/README.md +0 -230
  189. package/node_modules/@aws-cdk/cfnspec/node_modules/jsonfile/index.js +0 -88
  190. package/node_modules/@aws-cdk/cfnspec/node_modules/jsonfile/package.json +0 -40
  191. package/node_modules/@aws-cdk/cfnspec/node_modules/jsonfile/utils.js +0 -14
  192. package/node_modules/@aws-cdk/cfnspec/node_modules/universalify/LICENSE +0 -20
  193. package/node_modules/@aws-cdk/cfnspec/node_modules/universalify/README.md +0 -76
  194. package/node_modules/@aws-cdk/cfnspec/node_modules/universalify/index.js +0 -24
  195. package/node_modules/@aws-cdk/cfnspec/node_modules/universalify/package.json +0 -34
  196. package/node_modules/@aws-cdk/cfnspec/package.json +0 -63
  197. package/node_modules/@aws-cdk/cfnspec/spec/cfn-docs.json +0 -51044
  198. package/node_modules/@aws-cdk/cfnspec/spec/cfn-lint.json +0 -35
  199. package/node_modules/@aws-cdk/cfnspec/spec/specification.json +0 -148332
  200. package/node_modules/@aws-cdk/cloudformation-diff/LICENSE +0 -201
  201. package/node_modules/@aws-cdk/cloudformation-diff/NOTICE +0 -2
  202. package/node_modules/@aws-cdk/cloudformation-diff/README.md +0 -12
  203. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff/index.d.ts +0 -9
  204. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff/index.js +0 -94
  205. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff/types.d.ts +0 -326
  206. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff/types.js +0 -457
  207. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff/util.d.ts +0 -41
  208. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff/util.js +0 -165
  209. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff-template.d.ts +0 -21
  210. package/node_modules/@aws-cdk/cloudformation-diff/lib/diff-template.js +0 -166
  211. package/node_modules/@aws-cdk/cloudformation-diff/lib/diffable.d.ts +0 -22
  212. package/node_modules/@aws-cdk/cloudformation-diff/lib/diffable.js +0 -47
  213. package/node_modules/@aws-cdk/cloudformation-diff/lib/format-table.d.ts +0 -6
  214. package/node_modules/@aws-cdk/cloudformation-diff/lib/format-table.js +0 -109
  215. package/node_modules/@aws-cdk/cloudformation-diff/lib/format.d.ts +0 -23
  216. package/node_modules/@aws-cdk/cloudformation-diff/lib/format.js +0 -414
  217. package/node_modules/@aws-cdk/cloudformation-diff/lib/iam/iam-changes.d.ts +0 -62
  218. package/node_modules/@aws-cdk/cloudformation-diff/lib/iam/iam-changes.js +0 -246
  219. package/node_modules/@aws-cdk/cloudformation-diff/lib/iam/managed-policy.d.ts +0 -18
  220. package/node_modules/@aws-cdk/cloudformation-diff/lib/iam/managed-policy.js +0 -29
  221. package/node_modules/@aws-cdk/cloudformation-diff/lib/iam/statement.d.ts +0 -127
  222. package/node_modules/@aws-cdk/cloudformation-diff/lib/iam/statement.js +0 -268
  223. package/node_modules/@aws-cdk/cloudformation-diff/lib/index.d.ts +0 -4
  224. package/node_modules/@aws-cdk/cloudformation-diff/lib/index.js +0 -18
  225. package/node_modules/@aws-cdk/cloudformation-diff/lib/network/security-group-changes.d.ts +0 -32
  226. package/node_modules/@aws-cdk/cloudformation-diff/lib/network/security-group-changes.js +0 -95
  227. package/node_modules/@aws-cdk/cloudformation-diff/lib/network/security-group-rule.d.ts +0 -50
  228. package/node_modules/@aws-cdk/cloudformation-diff/lib/network/security-group-rule.js +0 -91
  229. package/node_modules/@aws-cdk/cloudformation-diff/lib/render-intrinsics.d.ts +0 -21
  230. package/node_modules/@aws-cdk/cloudformation-diff/lib/render-intrinsics.js +0 -79
  231. package/node_modules/@aws-cdk/cloudformation-diff/lib/util.d.ts +0 -7
  232. package/node_modules/@aws-cdk/cloudformation-diff/lib/util.js +0 -63
  233. package/node_modules/@aws-cdk/cloudformation-diff/package.json +0 -60
  234. package/node_modules/ajv/.runkit_example.js +0 -23
  235. package/node_modules/ajv/LICENSE +0 -22
  236. package/node_modules/ajv/README.md +0 -207
  237. package/node_modules/ajv/dist/2019.d.ts +0 -19
  238. package/node_modules/ajv/dist/2019.js +0 -61
  239. package/node_modules/ajv/dist/2019.js.map +0 -1
  240. package/node_modules/ajv/dist/2020.d.ts +0 -19
  241. package/node_modules/ajv/dist/2020.js +0 -55
  242. package/node_modules/ajv/dist/2020.js.map +0 -1
  243. package/node_modules/ajv/dist/ajv.d.ts +0 -18
  244. package/node_modules/ajv/dist/ajv.js +0 -50
  245. package/node_modules/ajv/dist/ajv.js.map +0 -1
  246. package/node_modules/ajv/dist/compile/codegen/code.d.ts +0 -40
  247. package/node_modules/ajv/dist/compile/codegen/code.js +0 -156
  248. package/node_modules/ajv/dist/compile/codegen/code.js.map +0 -1
  249. package/node_modules/ajv/dist/compile/codegen/index.d.ts +0 -79
  250. package/node_modules/ajv/dist/compile/codegen/index.js +0 -697
  251. package/node_modules/ajv/dist/compile/codegen/index.js.map +0 -1
  252. package/node_modules/ajv/dist/compile/codegen/scope.d.ts +0 -79
  253. package/node_modules/ajv/dist/compile/codegen/scope.js +0 -143
  254. package/node_modules/ajv/dist/compile/codegen/scope.js.map +0 -1
  255. package/node_modules/ajv/dist/compile/errors.d.ts +0 -13
  256. package/node_modules/ajv/dist/compile/errors.js +0 -123
  257. package/node_modules/ajv/dist/compile/errors.js.map +0 -1
  258. package/node_modules/ajv/dist/compile/index.d.ts +0 -80
  259. package/node_modules/ajv/dist/compile/index.js +0 -242
  260. package/node_modules/ajv/dist/compile/index.js.map +0 -1
  261. package/node_modules/ajv/dist/compile/jtd/parse.d.ts +0 -4
  262. package/node_modules/ajv/dist/compile/jtd/parse.js +0 -350
  263. package/node_modules/ajv/dist/compile/jtd/parse.js.map +0 -1
  264. package/node_modules/ajv/dist/compile/jtd/serialize.d.ts +0 -4
  265. package/node_modules/ajv/dist/compile/jtd/serialize.js +0 -229
  266. package/node_modules/ajv/dist/compile/jtd/serialize.js.map +0 -1
  267. package/node_modules/ajv/dist/compile/jtd/types.d.ts +0 -6
  268. package/node_modules/ajv/dist/compile/jtd/types.js +0 -14
  269. package/node_modules/ajv/dist/compile/jtd/types.js.map +0 -1
  270. package/node_modules/ajv/dist/compile/names.d.ts +0 -20
  271. package/node_modules/ajv/dist/compile/names.js +0 -28
  272. package/node_modules/ajv/dist/compile/names.js.map +0 -1
  273. package/node_modules/ajv/dist/compile/ref_error.d.ts +0 -6
  274. package/node_modules/ajv/dist/compile/ref_error.js +0 -12
  275. package/node_modules/ajv/dist/compile/ref_error.js.map +0 -1
  276. package/node_modules/ajv/dist/compile/resolve.d.ts +0 -12
  277. package/node_modules/ajv/dist/compile/resolve.js +0 -155
  278. package/node_modules/ajv/dist/compile/resolve.js.map +0 -1
  279. package/node_modules/ajv/dist/compile/rules.d.ts +0 -28
  280. package/node_modules/ajv/dist/compile/rules.js +0 -26
  281. package/node_modules/ajv/dist/compile/rules.js.map +0 -1
  282. package/node_modules/ajv/dist/compile/util.d.ts +0 -40
  283. package/node_modules/ajv/dist/compile/util.js +0 -178
  284. package/node_modules/ajv/dist/compile/util.js.map +0 -1
  285. package/node_modules/ajv/dist/compile/validate/applicability.d.ts +0 -6
  286. package/node_modules/ajv/dist/compile/validate/applicability.js +0 -19
  287. package/node_modules/ajv/dist/compile/validate/applicability.js.map +0 -1
  288. package/node_modules/ajv/dist/compile/validate/boolSchema.d.ts +0 -4
  289. package/node_modules/ajv/dist/compile/validate/boolSchema.js +0 -50
  290. package/node_modules/ajv/dist/compile/validate/boolSchema.js.map +0 -1
  291. package/node_modules/ajv/dist/compile/validate/dataType.d.ts +0 -17
  292. package/node_modules/ajv/dist/compile/validate/dataType.js +0 -203
  293. package/node_modules/ajv/dist/compile/validate/dataType.js.map +0 -1
  294. package/node_modules/ajv/dist/compile/validate/defaults.d.ts +0 -2
  295. package/node_modules/ajv/dist/compile/validate/defaults.js +0 -35
  296. package/node_modules/ajv/dist/compile/validate/defaults.js.map +0 -1
  297. package/node_modules/ajv/dist/compile/validate/index.d.ts +0 -42
  298. package/node_modules/ajv/dist/compile/validate/index.js +0 -520
  299. package/node_modules/ajv/dist/compile/validate/index.js.map +0 -1
  300. package/node_modules/ajv/dist/compile/validate/keyword.d.ts +0 -8
  301. package/node_modules/ajv/dist/compile/validate/keyword.js +0 -124
  302. package/node_modules/ajv/dist/compile/validate/keyword.js.map +0 -1
  303. package/node_modules/ajv/dist/compile/validate/subschema.d.ts +0 -47
  304. package/node_modules/ajv/dist/compile/validate/subschema.js +0 -81
  305. package/node_modules/ajv/dist/compile/validate/subschema.js.map +0 -1
  306. package/node_modules/ajv/dist/core.d.ts +0 -173
  307. package/node_modules/ajv/dist/core.js +0 -618
  308. package/node_modules/ajv/dist/core.js.map +0 -1
  309. package/node_modules/ajv/dist/jtd.d.ts +0 -47
  310. package/node_modules/ajv/dist/jtd.js +0 -72
  311. package/node_modules/ajv/dist/jtd.js.map +0 -1
  312. package/node_modules/ajv/dist/refs/data.json +0 -13
  313. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.d.ts +0 -2
  314. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.js +0 -28
  315. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.js.map +0 -1
  316. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/applicator.json +0 -53
  317. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/content.json +0 -17
  318. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/core.json +0 -57
  319. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/format.json +0 -14
  320. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/meta-data.json +0 -37
  321. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/validation.json +0 -90
  322. package/node_modules/ajv/dist/refs/json-schema-2019-09/schema.json +0 -39
  323. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.d.ts +0 -2
  324. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.js +0 -30
  325. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.js.map +0 -1
  326. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/applicator.json +0 -48
  327. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/content.json +0 -17
  328. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/core.json +0 -51
  329. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/format-annotation.json +0 -14
  330. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/meta-data.json +0 -37
  331. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/unevaluated.json +0 -15
  332. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/validation.json +0 -90
  333. package/node_modules/ajv/dist/refs/json-schema-2020-12/schema.json +0 -55
  334. package/node_modules/ajv/dist/refs/json-schema-draft-06.json +0 -137
  335. package/node_modules/ajv/dist/refs/json-schema-draft-07.json +0 -151
  336. package/node_modules/ajv/dist/refs/json-schema-secure.json +0 -88
  337. package/node_modules/ajv/dist/refs/jtd-schema.d.ts +0 -3
  338. package/node_modules/ajv/dist/refs/jtd-schema.js +0 -118
  339. package/node_modules/ajv/dist/refs/jtd-schema.js.map +0 -1
  340. package/node_modules/ajv/dist/runtime/equal.d.ts +0 -6
  341. package/node_modules/ajv/dist/runtime/equal.js +0 -7
  342. package/node_modules/ajv/dist/runtime/equal.js.map +0 -1
  343. package/node_modules/ajv/dist/runtime/parseJson.d.ts +0 -18
  344. package/node_modules/ajv/dist/runtime/parseJson.js +0 -185
  345. package/node_modules/ajv/dist/runtime/parseJson.js.map +0 -1
  346. package/node_modules/ajv/dist/runtime/quote.d.ts +0 -5
  347. package/node_modules/ajv/dist/runtime/quote.js +0 -30
  348. package/node_modules/ajv/dist/runtime/quote.js.map +0 -1
  349. package/node_modules/ajv/dist/runtime/re2.d.ts +0 -6
  350. package/node_modules/ajv/dist/runtime/re2.js +0 -6
  351. package/node_modules/ajv/dist/runtime/re2.js.map +0 -1
  352. package/node_modules/ajv/dist/runtime/timestamp.d.ts +0 -5
  353. package/node_modules/ajv/dist/runtime/timestamp.js +0 -42
  354. package/node_modules/ajv/dist/runtime/timestamp.js.map +0 -1
  355. package/node_modules/ajv/dist/runtime/ucs2length.d.ts +0 -5
  356. package/node_modules/ajv/dist/runtime/ucs2length.js +0 -24
  357. package/node_modules/ajv/dist/runtime/ucs2length.js.map +0 -1
  358. package/node_modules/ajv/dist/runtime/uri.d.ts +0 -6
  359. package/node_modules/ajv/dist/runtime/uri.js +0 -6
  360. package/node_modules/ajv/dist/runtime/uri.js.map +0 -1
  361. package/node_modules/ajv/dist/runtime/validation_error.d.ts +0 -7
  362. package/node_modules/ajv/dist/runtime/validation_error.js +0 -11
  363. package/node_modules/ajv/dist/runtime/validation_error.js.map +0 -1
  364. package/node_modules/ajv/dist/standalone/index.d.ts +0 -6
  365. package/node_modules/ajv/dist/standalone/index.js +0 -90
  366. package/node_modules/ajv/dist/standalone/index.js.map +0 -1
  367. package/node_modules/ajv/dist/standalone/instance.d.ts +0 -12
  368. package/node_modules/ajv/dist/standalone/instance.js +0 -35
  369. package/node_modules/ajv/dist/standalone/instance.js.map +0 -1
  370. package/node_modules/ajv/dist/types/index.d.ts +0 -183
  371. package/node_modules/ajv/dist/types/index.js +0 -3
  372. package/node_modules/ajv/dist/types/index.js.map +0 -1
  373. package/node_modules/ajv/dist/types/json-schema.d.ts +0 -125
  374. package/node_modules/ajv/dist/types/json-schema.js +0 -3
  375. package/node_modules/ajv/dist/types/json-schema.js.map +0 -1
  376. package/node_modules/ajv/dist/types/jtd-schema.d.ts +0 -174
  377. package/node_modules/ajv/dist/types/jtd-schema.js +0 -3
  378. package/node_modules/ajv/dist/types/jtd-schema.js.map +0 -1
  379. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.d.ts +0 -8
  380. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +0 -49
  381. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js.map +0 -1
  382. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.d.ts +0 -6
  383. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +0 -106
  384. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js.map +0 -1
  385. package/node_modules/ajv/dist/vocabularies/applicator/allOf.d.ts +0 -3
  386. package/node_modules/ajv/dist/vocabularies/applicator/allOf.js +0 -23
  387. package/node_modules/ajv/dist/vocabularies/applicator/allOf.js.map +0 -1
  388. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.d.ts +0 -4
  389. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +0 -12
  390. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.js.map +0 -1
  391. package/node_modules/ajv/dist/vocabularies/applicator/contains.d.ts +0 -7
  392. package/node_modules/ajv/dist/vocabularies/applicator/contains.js +0 -95
  393. package/node_modules/ajv/dist/vocabularies/applicator/contains.js.map +0 -1
  394. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts +0 -21
  395. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +0 -85
  396. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.js.map +0 -1
  397. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.d.ts +0 -3
  398. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js +0 -11
  399. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js.map +0 -1
  400. package/node_modules/ajv/dist/vocabularies/applicator/if.d.ts +0 -6
  401. package/node_modules/ajv/dist/vocabularies/applicator/if.js +0 -66
  402. package/node_modules/ajv/dist/vocabularies/applicator/if.js.map +0 -1
  403. package/node_modules/ajv/dist/vocabularies/applicator/index.d.ts +0 -13
  404. package/node_modules/ajv/dist/vocabularies/applicator/index.js +0 -44
  405. package/node_modules/ajv/dist/vocabularies/applicator/index.js.map +0 -1
  406. package/node_modules/ajv/dist/vocabularies/applicator/items.d.ts +0 -5
  407. package/node_modules/ajv/dist/vocabularies/applicator/items.js +0 -52
  408. package/node_modules/ajv/dist/vocabularies/applicator/items.js.map +0 -1
  409. package/node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts +0 -6
  410. package/node_modules/ajv/dist/vocabularies/applicator/items2020.js +0 -30
  411. package/node_modules/ajv/dist/vocabularies/applicator/items2020.js.map +0 -1
  412. package/node_modules/ajv/dist/vocabularies/applicator/not.d.ts +0 -4
  413. package/node_modules/ajv/dist/vocabularies/applicator/not.js +0 -26
  414. package/node_modules/ajv/dist/vocabularies/applicator/not.js.map +0 -1
  415. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.d.ts +0 -6
  416. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +0 -60
  417. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.js.map +0 -1
  418. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.d.ts +0 -3
  419. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +0 -75
  420. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js.map +0 -1
  421. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.d.ts +0 -3
  422. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +0 -12
  423. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js.map +0 -1
  424. package/node_modules/ajv/dist/vocabularies/applicator/properties.d.ts +0 -3
  425. package/node_modules/ajv/dist/vocabularies/applicator/properties.js +0 -54
  426. package/node_modules/ajv/dist/vocabularies/applicator/properties.js.map +0 -1
  427. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.d.ts +0 -6
  428. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +0 -38
  429. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js.map +0 -1
  430. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.d.ts +0 -3
  431. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +0 -13
  432. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.js.map +0 -1
  433. package/node_modules/ajv/dist/vocabularies/code.d.ts +0 -17
  434. package/node_modules/ajv/dist/vocabularies/code.js +0 -131
  435. package/node_modules/ajv/dist/vocabularies/code.js.map +0 -1
  436. package/node_modules/ajv/dist/vocabularies/core/id.d.ts +0 -3
  437. package/node_modules/ajv/dist/vocabularies/core/id.js +0 -10
  438. package/node_modules/ajv/dist/vocabularies/core/id.js.map +0 -1
  439. package/node_modules/ajv/dist/vocabularies/core/index.d.ts +0 -3
  440. package/node_modules/ajv/dist/vocabularies/core/index.js +0 -16
  441. package/node_modules/ajv/dist/vocabularies/core/index.js.map +0 -1
  442. package/node_modules/ajv/dist/vocabularies/core/ref.d.ts +0 -8
  443. package/node_modules/ajv/dist/vocabularies/core/ref.js +0 -122
  444. package/node_modules/ajv/dist/vocabularies/core/ref.js.map +0 -1
  445. package/node_modules/ajv/dist/vocabularies/discriminator/index.d.ts +0 -5
  446. package/node_modules/ajv/dist/vocabularies/discriminator/index.js +0 -104
  447. package/node_modules/ajv/dist/vocabularies/discriminator/index.js.map +0 -1
  448. package/node_modules/ajv/dist/vocabularies/discriminator/types.d.ts +0 -10
  449. package/node_modules/ajv/dist/vocabularies/discriminator/types.js +0 -9
  450. package/node_modules/ajv/dist/vocabularies/discriminator/types.js.map +0 -1
  451. package/node_modules/ajv/dist/vocabularies/draft2020.d.ts +0 -3
  452. package/node_modules/ajv/dist/vocabularies/draft2020.js +0 -23
  453. package/node_modules/ajv/dist/vocabularies/draft2020.js.map +0 -1
  454. package/node_modules/ajv/dist/vocabularies/draft7.d.ts +0 -3
  455. package/node_modules/ajv/dist/vocabularies/draft7.js +0 -17
  456. package/node_modules/ajv/dist/vocabularies/draft7.js.map +0 -1
  457. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.d.ts +0 -5
  458. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js +0 -30
  459. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js.map +0 -1
  460. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.d.ts +0 -5
  461. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js +0 -51
  462. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js.map +0 -1
  463. package/node_modules/ajv/dist/vocabularies/dynamic/index.d.ts +0 -3
  464. package/node_modules/ajv/dist/vocabularies/dynamic/index.js +0 -9
  465. package/node_modules/ajv/dist/vocabularies/dynamic/index.js.map +0 -1
  466. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.d.ts +0 -3
  467. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js +0 -16
  468. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js.map +0 -1
  469. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.d.ts +0 -3
  470. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js +0 -10
  471. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js.map +0 -1
  472. package/node_modules/ajv/dist/vocabularies/errors.d.ts +0 -9
  473. package/node_modules/ajv/dist/vocabularies/errors.js +0 -3
  474. package/node_modules/ajv/dist/vocabularies/errors.js.map +0 -1
  475. package/node_modules/ajv/dist/vocabularies/format/format.d.ts +0 -8
  476. package/node_modules/ajv/dist/vocabularies/format/format.js +0 -92
  477. package/node_modules/ajv/dist/vocabularies/format/format.js.map +0 -1
  478. package/node_modules/ajv/dist/vocabularies/format/index.d.ts +0 -3
  479. package/node_modules/ajv/dist/vocabularies/format/index.js +0 -6
  480. package/node_modules/ajv/dist/vocabularies/format/index.js.map +0 -1
  481. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.d.ts +0 -6
  482. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.js +0 -71
  483. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.js.map +0 -1
  484. package/node_modules/ajv/dist/vocabularies/jtd/elements.d.ts +0 -5
  485. package/node_modules/ajv/dist/vocabularies/jtd/elements.js +0 -24
  486. package/node_modules/ajv/dist/vocabularies/jtd/elements.js.map +0 -1
  487. package/node_modules/ajv/dist/vocabularies/jtd/enum.d.ts +0 -6
  488. package/node_modules/ajv/dist/vocabularies/jtd/enum.js +0 -43
  489. package/node_modules/ajv/dist/vocabularies/jtd/enum.js.map +0 -1
  490. package/node_modules/ajv/dist/vocabularies/jtd/error.d.ts +0 -9
  491. package/node_modules/ajv/dist/vocabularies/jtd/error.js +0 -20
  492. package/node_modules/ajv/dist/vocabularies/jtd/error.js.map +0 -1
  493. package/node_modules/ajv/dist/vocabularies/jtd/index.d.ts +0 -10
  494. package/node_modules/ajv/dist/vocabularies/jtd/index.js +0 -29
  495. package/node_modules/ajv/dist/vocabularies/jtd/index.js.map +0 -1
  496. package/node_modules/ajv/dist/vocabularies/jtd/metadata.d.ts +0 -5
  497. package/node_modules/ajv/dist/vocabularies/jtd/metadata.js +0 -25
  498. package/node_modules/ajv/dist/vocabularies/jtd/metadata.js.map +0 -1
  499. package/node_modules/ajv/dist/vocabularies/jtd/nullable.d.ts +0 -4
  500. package/node_modules/ajv/dist/vocabularies/jtd/nullable.js +0 -22
  501. package/node_modules/ajv/dist/vocabularies/jtd/nullable.js.map +0 -1
  502. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.d.ts +0 -3
  503. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js +0 -15
  504. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js.map +0 -1
  505. package/node_modules/ajv/dist/vocabularies/jtd/properties.d.ts +0 -22
  506. package/node_modules/ajv/dist/vocabularies/jtd/properties.js +0 -149
  507. package/node_modules/ajv/dist/vocabularies/jtd/properties.js.map +0 -1
  508. package/node_modules/ajv/dist/vocabularies/jtd/ref.d.ts +0 -4
  509. package/node_modules/ajv/dist/vocabularies/jtd/ref.js +0 -67
  510. package/node_modules/ajv/dist/vocabularies/jtd/ref.js.map +0 -1
  511. package/node_modules/ajv/dist/vocabularies/jtd/type.d.ts +0 -10
  512. package/node_modules/ajv/dist/vocabularies/jtd/type.js +0 -69
  513. package/node_modules/ajv/dist/vocabularies/jtd/type.js.map +0 -1
  514. package/node_modules/ajv/dist/vocabularies/jtd/union.d.ts +0 -3
  515. package/node_modules/ajv/dist/vocabularies/jtd/union.js +0 -12
  516. package/node_modules/ajv/dist/vocabularies/jtd/union.js.map +0 -1
  517. package/node_modules/ajv/dist/vocabularies/jtd/values.d.ts +0 -5
  518. package/node_modules/ajv/dist/vocabularies/jtd/values.js +0 -51
  519. package/node_modules/ajv/dist/vocabularies/jtd/values.js.map +0 -1
  520. package/node_modules/ajv/dist/vocabularies/metadata.d.ts +0 -3
  521. package/node_modules/ajv/dist/vocabularies/metadata.js +0 -18
  522. package/node_modules/ajv/dist/vocabularies/metadata.js.map +0 -1
  523. package/node_modules/ajv/dist/vocabularies/next.d.ts +0 -3
  524. package/node_modules/ajv/dist/vocabularies/next.js +0 -8
  525. package/node_modules/ajv/dist/vocabularies/next.js.map +0 -1
  526. package/node_modules/ajv/dist/vocabularies/unevaluated/index.d.ts +0 -3
  527. package/node_modules/ajv/dist/vocabularies/unevaluated/index.js +0 -7
  528. package/node_modules/ajv/dist/vocabularies/unevaluated/index.js.map +0 -1
  529. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.d.ts +0 -6
  530. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js +0 -40
  531. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js.map +0 -1
  532. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.d.ts +0 -6
  533. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js +0 -65
  534. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js.map +0 -1
  535. package/node_modules/ajv/dist/vocabularies/validation/const.d.ts +0 -6
  536. package/node_modules/ajv/dist/vocabularies/validation/const.js +0 -25
  537. package/node_modules/ajv/dist/vocabularies/validation/const.js.map +0 -1
  538. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.d.ts +0 -5
  539. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js +0 -12
  540. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js.map +0 -1
  541. package/node_modules/ajv/dist/vocabularies/validation/enum.d.ts +0 -8
  542. package/node_modules/ajv/dist/vocabularies/validation/enum.js +0 -48
  543. package/node_modules/ajv/dist/vocabularies/validation/enum.js.map +0 -1
  544. package/node_modules/ajv/dist/vocabularies/validation/index.d.ts +0 -16
  545. package/node_modules/ajv/dist/vocabularies/validation/index.js +0 -33
  546. package/node_modules/ajv/dist/vocabularies/validation/index.js.map +0 -1
  547. package/node_modules/ajv/dist/vocabularies/validation/limitContains.d.ts +0 -3
  548. package/node_modules/ajv/dist/vocabularies/validation/limitContains.js +0 -15
  549. package/node_modules/ajv/dist/vocabularies/validation/limitContains.js.map +0 -1
  550. package/node_modules/ajv/dist/vocabularies/validation/limitItems.d.ts +0 -3
  551. package/node_modules/ajv/dist/vocabularies/validation/limitItems.js +0 -24
  552. package/node_modules/ajv/dist/vocabularies/validation/limitItems.js.map +0 -1
  553. package/node_modules/ajv/dist/vocabularies/validation/limitLength.d.ts +0 -3
  554. package/node_modules/ajv/dist/vocabularies/validation/limitLength.js +0 -27
  555. package/node_modules/ajv/dist/vocabularies/validation/limitLength.js.map +0 -1
  556. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.d.ts +0 -11
  557. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +0 -27
  558. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.js.map +0 -1
  559. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.d.ts +0 -3
  560. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +0 -24
  561. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.js.map +0 -1
  562. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.d.ts +0 -8
  563. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +0 -26
  564. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.js.map +0 -1
  565. package/node_modules/ajv/dist/vocabularies/validation/pattern.d.ts +0 -8
  566. package/node_modules/ajv/dist/vocabularies/validation/pattern.js +0 -24
  567. package/node_modules/ajv/dist/vocabularies/validation/pattern.js.map +0 -1
  568. package/node_modules/ajv/dist/vocabularies/validation/required.d.ts +0 -8
  569. package/node_modules/ajv/dist/vocabularies/validation/required.js +0 -79
  570. package/node_modules/ajv/dist/vocabularies/validation/required.js.map +0 -1
  571. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.d.ts +0 -9
  572. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +0 -64
  573. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js.map +0 -1
  574. package/node_modules/ajv/lib/2019.ts +0 -81
  575. package/node_modules/ajv/lib/2020.ts +0 -75
  576. package/node_modules/ajv/lib/ajv.ts +0 -70
  577. package/node_modules/ajv/lib/compile/codegen/code.ts +0 -169
  578. package/node_modules/ajv/lib/compile/codegen/index.ts +0 -852
  579. package/node_modules/ajv/lib/compile/codegen/scope.ts +0 -215
  580. package/node_modules/ajv/lib/compile/errors.ts +0 -184
  581. package/node_modules/ajv/lib/compile/index.ts +0 -324
  582. package/node_modules/ajv/lib/compile/jtd/parse.ts +0 -411
  583. package/node_modules/ajv/lib/compile/jtd/serialize.ts +0 -266
  584. package/node_modules/ajv/lib/compile/jtd/types.ts +0 -16
  585. package/node_modules/ajv/lib/compile/names.ts +0 -27
  586. package/node_modules/ajv/lib/compile/ref_error.ts +0 -13
  587. package/node_modules/ajv/lib/compile/resolve.ts +0 -149
  588. package/node_modules/ajv/lib/compile/rules.ts +0 -50
  589. package/node_modules/ajv/lib/compile/util.ts +0 -213
  590. package/node_modules/ajv/lib/compile/validate/applicability.ts +0 -22
  591. package/node_modules/ajv/lib/compile/validate/boolSchema.ts +0 -47
  592. package/node_modules/ajv/lib/compile/validate/dataType.ts +0 -230
  593. package/node_modules/ajv/lib/compile/validate/defaults.ts +0 -32
  594. package/node_modules/ajv/lib/compile/validate/index.ts +0 -582
  595. package/node_modules/ajv/lib/compile/validate/keyword.ts +0 -171
  596. package/node_modules/ajv/lib/compile/validate/subschema.ts +0 -135
  597. package/node_modules/ajv/lib/core.ts +0 -891
  598. package/node_modules/ajv/lib/jtd.ts +0 -132
  599. package/node_modules/ajv/lib/refs/data.json +0 -13
  600. package/node_modules/ajv/lib/refs/json-schema-2019-09/index.ts +0 -28
  601. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/applicator.json +0 -53
  602. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/content.json +0 -17
  603. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/core.json +0 -57
  604. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/format.json +0 -14
  605. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/meta-data.json +0 -37
  606. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/validation.json +0 -90
  607. package/node_modules/ajv/lib/refs/json-schema-2019-09/schema.json +0 -39
  608. package/node_modules/ajv/lib/refs/json-schema-2020-12/index.ts +0 -30
  609. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/applicator.json +0 -48
  610. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/content.json +0 -17
  611. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/core.json +0 -51
  612. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/format-annotation.json +0 -14
  613. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/meta-data.json +0 -37
  614. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/unevaluated.json +0 -15
  615. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/validation.json +0 -90
  616. package/node_modules/ajv/lib/refs/json-schema-2020-12/schema.json +0 -55
  617. package/node_modules/ajv/lib/refs/json-schema-draft-06.json +0 -137
  618. package/node_modules/ajv/lib/refs/json-schema-draft-07.json +0 -151
  619. package/node_modules/ajv/lib/refs/json-schema-secure.json +0 -88
  620. package/node_modules/ajv/lib/refs/jtd-schema.ts +0 -130
  621. package/node_modules/ajv/lib/runtime/equal.ts +0 -7
  622. package/node_modules/ajv/lib/runtime/parseJson.ts +0 -177
  623. package/node_modules/ajv/lib/runtime/quote.ts +0 -31
  624. package/node_modules/ajv/lib/runtime/re2.ts +0 -6
  625. package/node_modules/ajv/lib/runtime/timestamp.ts +0 -46
  626. package/node_modules/ajv/lib/runtime/ucs2length.ts +0 -20
  627. package/node_modules/ajv/lib/runtime/uri.ts +0 -6
  628. package/node_modules/ajv/lib/runtime/validation_error.ts +0 -13
  629. package/node_modules/ajv/lib/standalone/index.ts +0 -100
  630. package/node_modules/ajv/lib/standalone/instance.ts +0 -36
  631. package/node_modules/ajv/lib/types/index.ts +0 -244
  632. package/node_modules/ajv/lib/types/json-schema.ts +0 -187
  633. package/node_modules/ajv/lib/types/jtd-schema.ts +0 -273
  634. package/node_modules/ajv/lib/vocabularies/applicator/additionalItems.ts +0 -56
  635. package/node_modules/ajv/lib/vocabularies/applicator/additionalProperties.ts +0 -118
  636. package/node_modules/ajv/lib/vocabularies/applicator/allOf.ts +0 -22
  637. package/node_modules/ajv/lib/vocabularies/applicator/anyOf.ts +0 -14
  638. package/node_modules/ajv/lib/vocabularies/applicator/contains.ts +0 -109
  639. package/node_modules/ajv/lib/vocabularies/applicator/dependencies.ts +0 -112
  640. package/node_modules/ajv/lib/vocabularies/applicator/dependentSchemas.ts +0 -11
  641. package/node_modules/ajv/lib/vocabularies/applicator/if.ts +0 -80
  642. package/node_modules/ajv/lib/vocabularies/applicator/index.ts +0 -53
  643. package/node_modules/ajv/lib/vocabularies/applicator/items.ts +0 -59
  644. package/node_modules/ajv/lib/vocabularies/applicator/items2020.ts +0 -36
  645. package/node_modules/ajv/lib/vocabularies/applicator/not.ts +0 -38
  646. package/node_modules/ajv/lib/vocabularies/applicator/oneOf.ts +0 -82
  647. package/node_modules/ajv/lib/vocabularies/applicator/patternProperties.ts +0 -91
  648. package/node_modules/ajv/lib/vocabularies/applicator/prefixItems.ts +0 -12
  649. package/node_modules/ajv/lib/vocabularies/applicator/properties.ts +0 -57
  650. package/node_modules/ajv/lib/vocabularies/applicator/propertyNames.ts +0 -50
  651. package/node_modules/ajv/lib/vocabularies/applicator/thenElse.ts +0 -13
  652. package/node_modules/ajv/lib/vocabularies/code.ts +0 -168
  653. package/node_modules/ajv/lib/vocabularies/core/id.ts +0 -10
  654. package/node_modules/ajv/lib/vocabularies/core/index.ts +0 -16
  655. package/node_modules/ajv/lib/vocabularies/core/ref.ts +0 -129
  656. package/node_modules/ajv/lib/vocabularies/discriminator/index.ts +0 -113
  657. package/node_modules/ajv/lib/vocabularies/discriminator/types.ts +0 -12
  658. package/node_modules/ajv/lib/vocabularies/draft2020.ts +0 -23
  659. package/node_modules/ajv/lib/vocabularies/draft7.ts +0 -17
  660. package/node_modules/ajv/lib/vocabularies/dynamic/dynamicAnchor.ts +0 -31
  661. package/node_modules/ajv/lib/vocabularies/dynamic/dynamicRef.ts +0 -51
  662. package/node_modules/ajv/lib/vocabularies/dynamic/index.ts +0 -9
  663. package/node_modules/ajv/lib/vocabularies/dynamic/recursiveAnchor.ts +0 -14
  664. package/node_modules/ajv/lib/vocabularies/dynamic/recursiveRef.ts +0 -10
  665. package/node_modules/ajv/lib/vocabularies/errors.ts +0 -18
  666. package/node_modules/ajv/lib/vocabularies/format/format.ts +0 -120
  667. package/node_modules/ajv/lib/vocabularies/format/index.ts +0 -6
  668. package/node_modules/ajv/lib/vocabularies/jtd/discriminator.ts +0 -89
  669. package/node_modules/ajv/lib/vocabularies/jtd/elements.ts +0 -32
  670. package/node_modules/ajv/lib/vocabularies/jtd/enum.ts +0 -45
  671. package/node_modules/ajv/lib/vocabularies/jtd/error.ts +0 -23
  672. package/node_modules/ajv/lib/vocabularies/jtd/index.ts +0 -37
  673. package/node_modules/ajv/lib/vocabularies/jtd/metadata.ts +0 -24
  674. package/node_modules/ajv/lib/vocabularies/jtd/nullable.ts +0 -21
  675. package/node_modules/ajv/lib/vocabularies/jtd/optionalProperties.ts +0 -15
  676. package/node_modules/ajv/lib/vocabularies/jtd/properties.ts +0 -184
  677. package/node_modules/ajv/lib/vocabularies/jtd/ref.ts +0 -76
  678. package/node_modules/ajv/lib/vocabularies/jtd/type.ts +0 -75
  679. package/node_modules/ajv/lib/vocabularies/jtd/union.ts +0 -12
  680. package/node_modules/ajv/lib/vocabularies/jtd/values.ts +0 -58
  681. package/node_modules/ajv/lib/vocabularies/metadata.ts +0 -17
  682. package/node_modules/ajv/lib/vocabularies/next.ts +0 -8
  683. package/node_modules/ajv/lib/vocabularies/unevaluated/index.ts +0 -7
  684. package/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedItems.ts +0 -47
  685. package/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedProperties.ts +0 -85
  686. package/node_modules/ajv/lib/vocabularies/validation/const.ts +0 -28
  687. package/node_modules/ajv/lib/vocabularies/validation/dependentRequired.ts +0 -23
  688. package/node_modules/ajv/lib/vocabularies/validation/enum.ts +0 -54
  689. package/node_modules/ajv/lib/vocabularies/validation/index.ts +0 -49
  690. package/node_modules/ajv/lib/vocabularies/validation/limitContains.ts +0 -16
  691. package/node_modules/ajv/lib/vocabularies/validation/limitItems.ts +0 -26
  692. package/node_modules/ajv/lib/vocabularies/validation/limitLength.ts +0 -30
  693. package/node_modules/ajv/lib/vocabularies/validation/limitNumber.ts +0 -42
  694. package/node_modules/ajv/lib/vocabularies/validation/limitProperties.ts +0 -26
  695. package/node_modules/ajv/lib/vocabularies/validation/multipleOf.ts +0 -34
  696. package/node_modules/ajv/lib/vocabularies/validation/pattern.ts +0 -28
  697. package/node_modules/ajv/lib/vocabularies/validation/required.ts +0 -98
  698. package/node_modules/ajv/lib/vocabularies/validation/uniqueItems.ts +0 -79
  699. package/node_modules/ajv/package.json +0 -126
  700. package/node_modules/ansi-regex/index.d.ts +0 -37
  701. package/node_modules/ansi-regex/index.js +0 -10
  702. package/node_modules/ansi-regex/license +0 -9
  703. package/node_modules/ansi-regex/package.json +0 -55
  704. package/node_modules/ansi-regex/readme.md +0 -78
  705. package/node_modules/ansi-styles/index.d.ts +0 -345
  706. package/node_modules/ansi-styles/index.js +0 -163
  707. package/node_modules/ansi-styles/license +0 -9
  708. package/node_modules/ansi-styles/package.json +0 -56
  709. package/node_modules/ansi-styles/readme.md +0 -152
  710. package/node_modules/astral-regex/index.d.ts +0 -28
  711. package/node_modules/astral-regex/index.js +0 -6
  712. package/node_modules/astral-regex/license +0 -9
  713. package/node_modules/astral-regex/package.json +0 -33
  714. package/node_modules/astral-regex/readme.md +0 -46
  715. package/node_modules/at-least-node/LICENSE +0 -6
  716. package/node_modules/at-least-node/README.md +0 -25
  717. package/node_modules/at-least-node/index.js +0 -5
  718. package/node_modules/at-least-node/package.json +0 -32
  719. package/node_modules/chalk/index.d.ts +0 -415
  720. package/node_modules/chalk/license +0 -9
  721. package/node_modules/chalk/package.json +0 -68
  722. package/node_modules/chalk/readme.md +0 -341
  723. package/node_modules/chalk/source/index.js +0 -229
  724. package/node_modules/chalk/source/templates.js +0 -134
  725. package/node_modules/chalk/source/util.js +0 -39
  726. package/node_modules/color-convert/CHANGELOG.md +0 -54
  727. package/node_modules/color-convert/LICENSE +0 -21
  728. package/node_modules/color-convert/README.md +0 -68
  729. package/node_modules/color-convert/conversions.js +0 -839
  730. package/node_modules/color-convert/index.js +0 -81
  731. package/node_modules/color-convert/package.json +0 -48
  732. package/node_modules/color-convert/route.js +0 -97
  733. package/node_modules/color-name/LICENSE +0 -8
  734. package/node_modules/color-name/README.md +0 -11
  735. package/node_modules/color-name/index.js +0 -152
  736. package/node_modules/color-name/package.json +0 -28
  737. package/node_modules/diff/CONTRIBUTING.md +0 -36
  738. package/node_modules/diff/LICENSE +0 -29
  739. package/node_modules/diff/README.md +0 -339
  740. package/node_modules/diff/dist/diff.js +0 -1730
  741. package/node_modules/diff/dist/diff.min.js +0 -1
  742. package/node_modules/diff/lib/convert/dmp.js +0 -32
  743. package/node_modules/diff/lib/convert/xml.js +0 -42
  744. package/node_modules/diff/lib/diff/array.js +0 -45
  745. package/node_modules/diff/lib/diff/base.js +0 -358
  746. package/node_modules/diff/lib/diff/character.js +0 -37
  747. package/node_modules/diff/lib/diff/css.js +0 -41
  748. package/node_modules/diff/lib/diff/json.js +0 -163
  749. package/node_modules/diff/lib/diff/line.js +0 -94
  750. package/node_modules/diff/lib/diff/sentence.js +0 -41
  751. package/node_modules/diff/lib/diff/word.js +0 -108
  752. package/node_modules/diff/lib/index.es6.js +0 -1699
  753. package/node_modules/diff/lib/index.js +0 -234
  754. package/node_modules/diff/lib/index.mjs +0 -1699
  755. package/node_modules/diff/lib/patch/apply.js +0 -238
  756. package/node_modules/diff/lib/patch/create.js +0 -276
  757. package/node_modules/diff/lib/patch/merge.js +0 -613
  758. package/node_modules/diff/lib/patch/parse.js +0 -167
  759. package/node_modules/diff/lib/patch/reverse.js +0 -63
  760. package/node_modules/diff/lib/util/array.js +0 -32
  761. package/node_modules/diff/lib/util/distance-iterator.js +0 -57
  762. package/node_modules/diff/lib/util/params.js +0 -24
  763. package/node_modules/diff/package.json +0 -89
  764. package/node_modules/diff/release-notes.md +0 -317
  765. package/node_modules/diff/runtime.js +0 -3
  766. package/node_modules/emoji-regex/LICENSE-MIT.txt +0 -20
  767. package/node_modules/emoji-regex/README.md +0 -73
  768. package/node_modules/emoji-regex/es2015/index.js +0 -6
  769. package/node_modules/emoji-regex/es2015/text.js +0 -6
  770. package/node_modules/emoji-regex/index.d.ts +0 -23
  771. package/node_modules/emoji-regex/index.js +0 -6
  772. package/node_modules/emoji-regex/package.json +0 -50
  773. package/node_modules/emoji-regex/text.js +0 -6
  774. package/node_modules/fast-deep-equal/LICENSE +0 -21
  775. package/node_modules/fast-deep-equal/README.md +0 -96
  776. package/node_modules/fast-deep-equal/es6/index.d.ts +0 -2
  777. package/node_modules/fast-deep-equal/es6/index.js +0 -72
  778. package/node_modules/fast-deep-equal/es6/react.d.ts +0 -2
  779. package/node_modules/fast-deep-equal/es6/react.js +0 -79
  780. package/node_modules/fast-deep-equal/index.d.ts +0 -4
  781. package/node_modules/fast-deep-equal/index.js +0 -46
  782. package/node_modules/fast-deep-equal/package.json +0 -61
  783. package/node_modules/fast-deep-equal/react.d.ts +0 -2
  784. package/node_modules/fast-deep-equal/react.js +0 -53
  785. package/node_modules/fast-uri/.gitattributes +0 -2
  786. package/node_modules/fast-uri/.github/.stale.yml +0 -21
  787. package/node_modules/fast-uri/.github/dependabot.yml +0 -13
  788. package/node_modules/fast-uri/.github/tests_checker.yml +0 -8
  789. package/node_modules/fast-uri/.github/workflows/ci.yml +0 -23
  790. package/node_modules/fast-uri/.github/workflows/package-manager-ci.yml +0 -20
  791. package/node_modules/fast-uri/LICENSE +0 -30
  792. package/node_modules/fast-uri/README.md +0 -125
  793. package/node_modules/fast-uri/benchmark.js +0 -105
  794. package/node_modules/fast-uri/index.js +0 -303
  795. package/node_modules/fast-uri/lib/schemes.js +0 -188
  796. package/node_modules/fast-uri/lib/scopedChars.js +0 -30
  797. package/node_modules/fast-uri/lib/utils.js +0 -242
  798. package/node_modules/fast-uri/package.json +0 -39
  799. package/node_modules/fast-uri/test/.gitkeep +0 -0
  800. package/node_modules/fast-uri/test/ajv.test.js +0 -39
  801. package/node_modules/fast-uri/test/compatibility.test.js +0 -131
  802. package/node_modules/fast-uri/test/equal.test.js +0 -103
  803. package/node_modules/fast-uri/test/parse.test.js +0 -318
  804. package/node_modules/fast-uri/test/resolve.test.js +0 -75
  805. package/node_modules/fast-uri/test/serialize.test.js +0 -143
  806. package/node_modules/fast-uri/test/uri-js.test.js +0 -912
  807. package/node_modules/fast-uri/test/util.test.js +0 -23
  808. package/node_modules/fast-uri/types/index.d.ts +0 -53
  809. package/node_modules/fast-uri/types/index.test-d.ts +0 -17
  810. package/node_modules/graphql-mapping-template/LICENSE +0 -201
  811. package/node_modules/graphql-transformer-common/LICENSE +0 -201
  812. package/node_modules/has-flag/index.d.ts +0 -39
  813. package/node_modules/has-flag/index.js +0 -8
  814. package/node_modules/has-flag/license +0 -9
  815. package/node_modules/has-flag/package.json +0 -46
  816. package/node_modules/has-flag/readme.md +0 -89
  817. package/node_modules/is-fullwidth-code-point/index.d.ts +0 -17
  818. package/node_modules/is-fullwidth-code-point/index.js +0 -50
  819. package/node_modules/is-fullwidth-code-point/license +0 -9
  820. package/node_modules/is-fullwidth-code-point/package.json +0 -42
  821. package/node_modules/is-fullwidth-code-point/readme.md +0 -39
  822. package/node_modules/json-schema-traverse/.eslintrc.yml +0 -27
  823. package/node_modules/json-schema-traverse/.github/FUNDING.yml +0 -2
  824. package/node_modules/json-schema-traverse/.github/workflows/build.yml +0 -28
  825. package/node_modules/json-schema-traverse/.github/workflows/publish.yml +0 -27
  826. package/node_modules/json-schema-traverse/LICENSE +0 -21
  827. package/node_modules/json-schema-traverse/README.md +0 -95
  828. package/node_modules/json-schema-traverse/index.d.ts +0 -40
  829. package/node_modules/json-schema-traverse/index.js +0 -93
  830. package/node_modules/json-schema-traverse/package.json +0 -43
  831. package/node_modules/json-schema-traverse/spec/.eslintrc.yml +0 -6
  832. package/node_modules/json-schema-traverse/spec/fixtures/schema.js +0 -125
  833. package/node_modules/json-schema-traverse/spec/index.spec.js +0 -171
  834. package/node_modules/lodash.truncate/LICENSE +0 -47
  835. package/node_modules/lodash.truncate/README.md +0 -18
  836. package/node_modules/lodash.truncate/index.js +0 -632
  837. package/node_modules/lodash.truncate/package.json +0 -17
  838. package/node_modules/require-from-string/index.js +0 -34
  839. package/node_modules/require-from-string/license +0 -21
  840. package/node_modules/require-from-string/package.json +0 -28
  841. package/node_modules/require-from-string/readme.md +0 -56
  842. package/node_modules/slice-ansi/index.js +0 -103
  843. package/node_modules/slice-ansi/license +0 -10
  844. package/node_modules/slice-ansi/package.json +0 -52
  845. package/node_modules/slice-ansi/readme.md +0 -66
  846. package/node_modules/string-width/index.d.ts +0 -29
  847. package/node_modules/string-width/index.js +0 -47
  848. package/node_modules/string-width/license +0 -9
  849. package/node_modules/string-width/package.json +0 -56
  850. package/node_modules/string-width/readme.md +0 -50
  851. package/node_modules/strip-ansi/index.d.ts +0 -17
  852. package/node_modules/strip-ansi/index.js +0 -4
  853. package/node_modules/strip-ansi/license +0 -9
  854. package/node_modules/strip-ansi/package.json +0 -54
  855. package/node_modules/strip-ansi/readme.md +0 -46
  856. package/node_modules/supports-color/browser.js +0 -5
  857. package/node_modules/supports-color/index.js +0 -135
  858. package/node_modules/supports-color/license +0 -9
  859. package/node_modules/supports-color/package.json +0 -53
  860. package/node_modules/supports-color/readme.md +0 -76
  861. package/node_modules/table/LICENSE +0 -24
  862. package/node_modules/table/README.md +0 -837
  863. package/node_modules/table/dist/src/alignSpanningCell.d.ts +0 -7
  864. package/node_modules/table/dist/src/alignSpanningCell.js +0 -48
  865. package/node_modules/table/dist/src/alignSpanningCell.js.map +0 -1
  866. package/node_modules/table/dist/src/alignString.d.ts +0 -6
  867. package/node_modules/table/dist/src/alignString.js +0 -60
  868. package/node_modules/table/dist/src/alignString.js.map +0 -1
  869. package/node_modules/table/dist/src/alignTableData.d.ts +0 -2
  870. package/node_modules/table/dist/src/alignTableData.js +0 -20
  871. package/node_modules/table/dist/src/alignTableData.js.map +0 -1
  872. package/node_modules/table/dist/src/calculateCellHeight.d.ts +0 -4
  873. package/node_modules/table/dist/src/calculateCellHeight.js +0 -12
  874. package/node_modules/table/dist/src/calculateCellHeight.js.map +0 -1
  875. package/node_modules/table/dist/src/calculateMaximumColumnWidths.d.ts +0 -7
  876. package/node_modules/table/dist/src/calculateMaximumColumnWidths.js +0 -36
  877. package/node_modules/table/dist/src/calculateMaximumColumnWidths.js.map +0 -1
  878. package/node_modules/table/dist/src/calculateOutputColumnWidths.d.ts +0 -2
  879. package/node_modules/table/dist/src/calculateOutputColumnWidths.js +0 -10
  880. package/node_modules/table/dist/src/calculateOutputColumnWidths.js.map +0 -1
  881. package/node_modules/table/dist/src/calculateRowHeights.d.ts +0 -5
  882. package/node_modules/table/dist/src/calculateRowHeights.js +0 -42
  883. package/node_modules/table/dist/src/calculateRowHeights.js.map +0 -1
  884. package/node_modules/table/dist/src/calculateSpanningCellWidth.d.ts +0 -3
  885. package/node_modules/table/dist/src/calculateSpanningCellWidth.js +0 -26
  886. package/node_modules/table/dist/src/calculateSpanningCellWidth.js.map +0 -1
  887. package/node_modules/table/dist/src/createStream.d.ts +0 -2
  888. package/node_modules/table/dist/src/createStream.js +0 -74
  889. package/node_modules/table/dist/src/createStream.js.map +0 -1
  890. package/node_modules/table/dist/src/drawBorder.d.ts +0 -34
  891. package/node_modules/table/dist/src/drawBorder.js +0 -202
  892. package/node_modules/table/dist/src/drawBorder.js.map +0 -1
  893. package/node_modules/table/dist/src/drawContent.d.ts +0 -14
  894. package/node_modules/table/dist/src/drawContent.js +0 -51
  895. package/node_modules/table/dist/src/drawContent.js.map +0 -1
  896. package/node_modules/table/dist/src/drawRow.d.ts +0 -10
  897. package/node_modules/table/dist/src/drawRow.js +0 -25
  898. package/node_modules/table/dist/src/drawRow.js.map +0 -1
  899. package/node_modules/table/dist/src/drawTable.d.ts +0 -2
  900. package/node_modules/table/dist/src/drawTable.js +0 -31
  901. package/node_modules/table/dist/src/drawTable.js.map +0 -1
  902. package/node_modules/table/dist/src/generated/validators.d.ts +0 -13
  903. package/node_modules/table/dist/src/generated/validators.js +0 -2694
  904. package/node_modules/table/dist/src/generated/validators.js.map +0 -1
  905. package/node_modules/table/dist/src/getBorderCharacters.d.ts +0 -2
  906. package/node_modules/table/dist/src/getBorderCharacters.js +0 -105
  907. package/node_modules/table/dist/src/getBorderCharacters.js.map +0 -1
  908. package/node_modules/table/dist/src/index.d.ts +0 -5
  909. package/node_modules/table/dist/src/index.js +0 -21
  910. package/node_modules/table/dist/src/index.js.map +0 -1
  911. package/node_modules/table/dist/src/injectHeaderConfig.d.ts +0 -3
  912. package/node_modules/table/dist/src/injectHeaderConfig.js +0 -29
  913. package/node_modules/table/dist/src/injectHeaderConfig.js.map +0 -1
  914. package/node_modules/table/dist/src/makeRangeConfig.d.ts +0 -3
  915. package/node_modules/table/dist/src/makeRangeConfig.js +0 -18
  916. package/node_modules/table/dist/src/makeRangeConfig.js.map +0 -1
  917. package/node_modules/table/dist/src/makeStreamConfig.d.ts +0 -7
  918. package/node_modules/table/dist/src/makeStreamConfig.js +0 -43
  919. package/node_modules/table/dist/src/makeStreamConfig.js.map +0 -1
  920. package/node_modules/table/dist/src/makeTableConfig.d.ts +0 -7
  921. package/node_modules/table/dist/src/makeTableConfig.js +0 -62
  922. package/node_modules/table/dist/src/makeTableConfig.js.map +0 -1
  923. package/node_modules/table/dist/src/mapDataUsingRowHeights.d.ts +0 -4
  924. package/node_modules/table/dist/src/mapDataUsingRowHeights.js +0 -52
  925. package/node_modules/table/dist/src/mapDataUsingRowHeights.js.map +0 -1
  926. package/node_modules/table/dist/src/padTableData.d.ts +0 -3
  927. package/node_modules/table/dist/src/padTableData.js +0 -23
  928. package/node_modules/table/dist/src/padTableData.js.map +0 -1
  929. package/node_modules/table/dist/src/schemas/config.json +0 -95
  930. package/node_modules/table/dist/src/schemas/shared.json +0 -139
  931. package/node_modules/table/dist/src/schemas/streamConfig.json +0 -25
  932. package/node_modules/table/dist/src/spanningCellManager.d.ts +0 -23
  933. package/node_modules/table/dist/src/spanningCellManager.js +0 -95
  934. package/node_modules/table/dist/src/spanningCellManager.js.map +0 -1
  935. package/node_modules/table/dist/src/stringifyTableData.d.ts +0 -2
  936. package/node_modules/table/dist/src/stringifyTableData.js +0 -13
  937. package/node_modules/table/dist/src/stringifyTableData.js.map +0 -1
  938. package/node_modules/table/dist/src/table.d.ts +0 -2
  939. package/node_modules/table/dist/src/table.js +0 -32
  940. package/node_modules/table/dist/src/table.js.map +0 -1
  941. package/node_modules/table/dist/src/truncateTableData.d.ts +0 -6
  942. package/node_modules/table/dist/src/truncateTableData.js +0 -24
  943. package/node_modules/table/dist/src/truncateTableData.js.map +0 -1
  944. package/node_modules/table/dist/src/types/api.d.ts +0 -130
  945. package/node_modules/table/dist/src/types/api.js +0 -3
  946. package/node_modules/table/dist/src/types/api.js.map +0 -1
  947. package/node_modules/table/dist/src/types/internal.d.ts +0 -1
  948. package/node_modules/table/dist/src/types/internal.js +0 -3
  949. package/node_modules/table/dist/src/types/internal.js.map +0 -1
  950. package/node_modules/table/dist/src/utils.d.ts +0 -9
  951. package/node_modules/table/dist/src/utils.js +0 -134
  952. package/node_modules/table/dist/src/utils.js.map +0 -1
  953. package/node_modules/table/dist/src/validateConfig.d.ts +0 -2
  954. package/node_modules/table/dist/src/validateConfig.js +0 -27
  955. package/node_modules/table/dist/src/validateConfig.js.map +0 -1
  956. package/node_modules/table/dist/src/validateSpanningCellConfig.d.ts +0 -3
  957. package/node_modules/table/dist/src/validateSpanningCellConfig.js +0 -46
  958. package/node_modules/table/dist/src/validateSpanningCellConfig.js.map +0 -1
  959. package/node_modules/table/dist/src/validateTableData.d.ts +0 -1
  960. package/node_modules/table/dist/src/validateTableData.js +0 -32
  961. package/node_modules/table/dist/src/validateTableData.js.map +0 -1
  962. package/node_modules/table/dist/src/wrapCell.d.ts +0 -8
  963. package/node_modules/table/dist/src/wrapCell.js +0 -33
  964. package/node_modules/table/dist/src/wrapCell.js.map +0 -1
  965. package/node_modules/table/dist/src/wrapString.d.ts +0 -9
  966. package/node_modules/table/dist/src/wrapString.js +0 -27
  967. package/node_modules/table/dist/src/wrapString.js.map +0 -1
  968. package/node_modules/table/dist/src/wrapWord.d.ts +0 -1
  969. package/node_modules/table/dist/src/wrapWord.js +0 -42
  970. package/node_modules/table/dist/src/wrapWord.js.map +0 -1
  971. package/node_modules/table/package.json +0 -77
@@ -1,123 +0,0 @@
1
- import { InspectionFailure, PropertyMatcher } from './have-resource';
2
- /**
3
- * A matcher for an object that contains at least the given fields with the given matchers (or literals)
4
- *
5
- * Only does lenient matching one level deep, at the next level all objects must declare the
6
- * exact expected keys again.
7
- */
8
- export declare function objectLike<A extends object>(pattern: A): PropertyMatcher;
9
- /**
10
- * A matcher for an object that contains at least the given fields with the given matchers (or literals)
11
- *
12
- * Switches to "deep" lenient matching. Nested objects also only need to contain declared keys.
13
- */
14
- export declare function deepObjectLike<A extends object>(pattern: A): PropertyMatcher;
15
- /**
16
- * Match exactly the given value
17
- *
18
- * This is the default, you only need this to escape from the deep lenient matching
19
- * of `deepObjectLike`.
20
- */
21
- export declare function exactValue(expected: any): PropertyMatcher;
22
- /**
23
- * A matcher for a list that contains all of the given elements in any order
24
- */
25
- export declare function arrayWith(...elements: any[]): PropertyMatcher;
26
- /**
27
- * Helper function to make matcher failure reporting a little easier
28
- *
29
- * Our protocol is weird (change a string on a passed-in object and return 'false'),
30
- * but I don't want to change that right now.
31
- */
32
- export declare function failMatcher(inspection: InspectionFailure, error: string): boolean;
33
- /**
34
- * Match a given literal value against a matcher
35
- *
36
- * If the matcher is a callable, use that to evaluate the value. Otherwise, the values
37
- * must be literally the same.
38
- */
39
- export declare function match(value: any, matcher: any, inspection: InspectionFailure): boolean;
40
- /**
41
- * Do a glob-like pattern match (which only supports *s). Supports multiline strings.
42
- */
43
- export declare function stringLike(pattern: string): PropertyMatcher;
44
- /**
45
- * Matches any value
46
- */
47
- export declare function anything(): PropertyMatcher;
48
- /**
49
- * Negate an inner matcher
50
- */
51
- export declare function notMatching(matcher: any): PropertyMatcher;
52
- export declare type TypeValidator<T> = (x: any) => x is T;
53
- /**
54
- * Captures a value onto an object if it matches a given inner matcher
55
- *
56
- * @example
57
- *
58
- * const someValue = Capture.aString();
59
- * expect(stack).toHaveResource({
60
- * // ...
61
- * Value: someValue.capture(stringMatching('*a*')),
62
- * });
63
- * console.log(someValue.capturedValue);
64
- */
65
- export declare class Capture<T = any> {
66
- private readonly typeValidator?;
67
- /**
68
- * A Capture object that captures any type
69
- */
70
- static anyType(): Capture<any>;
71
- /**
72
- * A Capture object that captures a string type
73
- */
74
- static aString(): Capture<string>;
75
- /**
76
- * A Capture object that captures a custom type
77
- */
78
- static a<T>(validator: TypeValidator<T>): Capture<T>;
79
- private _value?;
80
- private _didCapture;
81
- private _wasInvoked;
82
- protected constructor(typeValidator?: TypeValidator<T> | undefined);
83
- /**
84
- * Capture the value if the inner matcher successfully matches it
85
- *
86
- * If no matcher is given, `anything()` is assumed.
87
- *
88
- * And exception will be thrown if the inner matcher returns `true` and
89
- * the value turns out to be of a different type than the `Capture` object
90
- * is expecting.
91
- */
92
- capture(matcher?: any): PropertyMatcher;
93
- /**
94
- * Whether a value was successfully captured
95
- */
96
- get didCapture(): boolean;
97
- /**
98
- * Return the value that was captured
99
- *
100
- * Throws an exception if now value was captured
101
- */
102
- get capturedValue(): T;
103
- }
104
- /**
105
- * Match on the innards of a JSON string, instead of the complete string
106
- */
107
- export declare function encodedJson(matcher: any): PropertyMatcher;
108
- /**
109
- * Make a matcher out of the given argument if it's not a matcher already
110
- *
111
- * If it's not a matcher, it will be treated as a literal.
112
- */
113
- export declare function matcherFrom(matcher: any): PropertyMatcher;
114
- /**
115
- * Annotate a matcher with toJSON
116
- *
117
- * We will JSON.stringify() values if we have a match failure, but for matchers this
118
- * would show (in traditional JS fashion) something like '[function Function]', or more
119
- * accurately nothing at all since functions cannot be JSONified.
120
- *
121
- * We override to JSON() in order to produce a readable version of the matcher.
122
- */
123
- export declare function annotateMatcher<A extends object>(how: A, matcher: PropertyMatcher): PropertyMatcher;
@@ -1,404 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.annotateMatcher = exports.matcherFrom = exports.encodedJson = exports.Capture = exports.notMatching = exports.anything = exports.stringLike = exports.match = exports.failMatcher = exports.arrayWith = exports.exactValue = exports.deepObjectLike = exports.objectLike = void 0;
4
- const have_resource_1 = require("./have-resource");
5
- /**
6
- * A matcher for an object that contains at least the given fields with the given matchers (or literals)
7
- *
8
- * Only does lenient matching one level deep, at the next level all objects must declare the
9
- * exact expected keys again.
10
- */
11
- function objectLike(pattern) {
12
- return _objectContaining(pattern, false);
13
- }
14
- exports.objectLike = objectLike;
15
- /**
16
- * A matcher for an object that contains at least the given fields with the given matchers (or literals)
17
- *
18
- * Switches to "deep" lenient matching. Nested objects also only need to contain declared keys.
19
- */
20
- function deepObjectLike(pattern) {
21
- return _objectContaining(pattern, true);
22
- }
23
- exports.deepObjectLike = deepObjectLike;
24
- function _objectContaining(pattern, deep) {
25
- const anno = { [deep ? '$deepObjectLike' : '$objectLike']: pattern };
26
- return annotateMatcher(anno, (value, inspection) => {
27
- if (typeof value !== 'object' || !value) {
28
- return failMatcher(inspection, `Expect an object but got '${typeof value}'`);
29
- }
30
- const errors = new Array();
31
- for (const [patternKey, patternValue] of Object.entries(pattern)) {
32
- if (patternValue === have_resource_1.ABSENT) {
33
- if (value[patternKey] !== undefined) {
34
- errors.push(`Field ${patternKey} present, but shouldn't be`);
35
- }
36
- continue;
37
- }
38
- if (!(patternKey in value)) {
39
- errors.push(`Field ${patternKey} missing`);
40
- continue;
41
- }
42
- // If we are doing DEEP objectLike, translate object literals in the pattern into
43
- // more `deepObjectLike` matchers, even if they occur in lists.
44
- const matchValue = deep ? deepMatcherFromObjectLiteral(patternValue) : patternValue;
45
- const innerInspection = { ...inspection, failureReason: '' };
46
- const valueMatches = match(value[patternKey], matchValue, innerInspection);
47
- if (!valueMatches) {
48
- errors.push(`Field ${patternKey} mismatch: ${innerInspection.failureReason}`);
49
- }
50
- }
51
- /**
52
- * Transform nested object literals into more deep object matchers, if applicable
53
- *
54
- * Object literals in lists are also transformed.
55
- */
56
- function deepMatcherFromObjectLiteral(nestedPattern) {
57
- if (isObject(nestedPattern)) {
58
- return deepObjectLike(nestedPattern);
59
- }
60
- if (Array.isArray(nestedPattern)) {
61
- return nestedPattern.map(deepMatcherFromObjectLiteral);
62
- }
63
- return nestedPattern;
64
- }
65
- if (errors.length > 0) {
66
- return failMatcher(inspection, errors.join(', '));
67
- }
68
- return true;
69
- });
70
- }
71
- /**
72
- * Match exactly the given value
73
- *
74
- * This is the default, you only need this to escape from the deep lenient matching
75
- * of `deepObjectLike`.
76
- */
77
- function exactValue(expected) {
78
- const anno = { $exactValue: expected };
79
- return annotateMatcher(anno, (value, inspection) => {
80
- return matchLiteral(value, expected, inspection);
81
- });
82
- }
83
- exports.exactValue = exactValue;
84
- /**
85
- * A matcher for a list that contains all of the given elements in any order
86
- */
87
- function arrayWith(...elements) {
88
- if (elements.length === 0) {
89
- return anything();
90
- }
91
- const anno = { $arrayContaining: elements.length === 1 ? elements[0] : elements };
92
- return annotateMatcher(anno, (value, inspection) => {
93
- if (!Array.isArray(value)) {
94
- return failMatcher(inspection, `Expect an array but got '${typeof value}'`);
95
- }
96
- for (const element of elements) {
97
- const failure = longestFailure(value, element);
98
- if (failure) {
99
- return failMatcher(inspection, `Array did not contain expected element, closest match at index ${failure[0]}: ${failure[1]}`);
100
- }
101
- }
102
- return true;
103
- /**
104
- * Return 'null' if the matcher matches anywhere in the array, otherwise the longest error and its index
105
- */
106
- function longestFailure(array, matcher) {
107
- let fail = null;
108
- for (let i = 0; i < array.length; i++) {
109
- const innerInspection = { ...inspection, failureReason: '' };
110
- if (match(array[i], matcher, innerInspection)) {
111
- return null;
112
- }
113
- if (fail === null || innerInspection.failureReason.length > fail[1].length) {
114
- fail = [i, innerInspection.failureReason];
115
- }
116
- }
117
- return fail;
118
- }
119
- });
120
- }
121
- exports.arrayWith = arrayWith;
122
- /**
123
- * Whether a value is an object
124
- */
125
- function isObject(x) {
126
- // Because `typeof null === 'object'`.
127
- return x && typeof x === 'object';
128
- }
129
- /**
130
- * Helper function to make matcher failure reporting a little easier
131
- *
132
- * Our protocol is weird (change a string on a passed-in object and return 'false'),
133
- * but I don't want to change that right now.
134
- */
135
- function failMatcher(inspection, error) {
136
- inspection.failureReason = error;
137
- return false;
138
- }
139
- exports.failMatcher = failMatcher;
140
- /**
141
- * Match a given literal value against a matcher
142
- *
143
- * If the matcher is a callable, use that to evaluate the value. Otherwise, the values
144
- * must be literally the same.
145
- */
146
- function match(value, matcher, inspection) {
147
- if (isCallable(matcher)) {
148
- // Custom matcher (this mostly looks very weird because our `InspectionFailure` signature is weird)
149
- const innerInspection = { ...inspection, failureReason: '' };
150
- const result = matcher(value, innerInspection);
151
- if (typeof result !== 'boolean') {
152
- return failMatcher(inspection, `Predicate returned non-boolean return value: ${result}`);
153
- }
154
- if (!result && !innerInspection.failureReason) {
155
- // Custom matcher neglected to return an error
156
- return failMatcher(inspection, 'Predicate returned false');
157
- }
158
- // Propagate inner error in case of failure
159
- if (!result) {
160
- inspection.failureReason = innerInspection.failureReason;
161
- }
162
- return result;
163
- }
164
- return matchLiteral(value, matcher, inspection);
165
- }
166
- exports.match = match;
167
- /**
168
- * Match a literal value at the top level.
169
- *
170
- * When recursing into arrays or objects, the nested values can be either matchers
171
- * or literals.
172
- */
173
- function matchLiteral(value, pattern, inspection) {
174
- if (pattern == null) {
175
- return true;
176
- }
177
- const errors = new Array();
178
- if (Array.isArray(value) !== Array.isArray(pattern)) {
179
- return failMatcher(inspection, 'Array type mismatch');
180
- }
181
- if (Array.isArray(value)) {
182
- if (pattern.length !== value.length) {
183
- return failMatcher(inspection, 'Array length mismatch');
184
- }
185
- // Recurse comparison for individual objects
186
- for (let i = 0; i < pattern.length; i++) {
187
- if (!match(value[i], pattern[i], { ...inspection })) {
188
- errors.push(`Array element ${i} mismatch`);
189
- }
190
- }
191
- if (errors.length > 0) {
192
- return failMatcher(inspection, errors.join(', '));
193
- }
194
- return true;
195
- }
196
- if ((typeof value === 'object') !== (typeof pattern === 'object')) {
197
- return failMatcher(inspection, 'Object type mismatch');
198
- }
199
- if (typeof pattern === 'object') {
200
- // Check that all fields in the pattern have the right value
201
- const innerInspection = { ...inspection, failureReason: '' };
202
- const matcher = objectLike(pattern)(value, innerInspection);
203
- if (!matcher) {
204
- inspection.failureReason = innerInspection.failureReason;
205
- return false;
206
- }
207
- // Check no fields uncovered
208
- const realFields = new Set(Object.keys(value));
209
- for (const key of Object.keys(pattern)) {
210
- realFields.delete(key);
211
- }
212
- if (realFields.size > 0) {
213
- return failMatcher(inspection, `Unexpected keys present in object: ${Array.from(realFields).join(', ')}`);
214
- }
215
- return true;
216
- }
217
- if (value !== pattern) {
218
- return failMatcher(inspection, 'Different values');
219
- }
220
- return true;
221
- }
222
- /**
223
- * Whether a value is a callable
224
- */
225
- function isCallable(x) {
226
- return x && {}.toString.call(x) === '[object Function]';
227
- }
228
- /**
229
- * Do a glob-like pattern match (which only supports *s). Supports multiline strings.
230
- */
231
- function stringLike(pattern) {
232
- // Replace * with .* in the string, escape the rest and brace with ^...$
233
- const regex = new RegExp(`^${pattern.split('*').map(escapeRegex).join('.*')}$`, 'm');
234
- return annotateMatcher({ $stringContaining: pattern }, (value, failure) => {
235
- if (typeof value !== 'string') {
236
- failure.failureReason = `Expected a string, but got '${typeof value}'`;
237
- return false;
238
- }
239
- if (!regex.test(value)) {
240
- failure.failureReason = 'String did not match pattern';
241
- return false;
242
- }
243
- return true;
244
- });
245
- }
246
- exports.stringLike = stringLike;
247
- /**
248
- * Matches any value
249
- */
250
- function anything() {
251
- return annotateMatcher({ $anything: true }, () => true);
252
- }
253
- exports.anything = anything;
254
- /**
255
- * Negate an inner matcher
256
- */
257
- function notMatching(matcher) {
258
- return annotateMatcher({ $notMatching: matcher }, (value, failure) => {
259
- const result = matcherFrom(matcher)(value, failure);
260
- if (result) {
261
- failure.failureReason = 'Should not have matched, but did';
262
- return false;
263
- }
264
- return true;
265
- });
266
- }
267
- exports.notMatching = notMatching;
268
- /**
269
- * Captures a value onto an object if it matches a given inner matcher
270
- *
271
- * @example
272
- *
273
- * const someValue = Capture.aString();
274
- * expect(stack).toHaveResource({
275
- * // ...
276
- * Value: someValue.capture(stringMatching('*a*')),
277
- * });
278
- * console.log(someValue.capturedValue);
279
- */
280
- class Capture {
281
- constructor(typeValidator) {
282
- this.typeValidator = typeValidator;
283
- this._didCapture = false;
284
- this._wasInvoked = false;
285
- }
286
- /**
287
- * A Capture object that captures any type
288
- */
289
- static anyType() {
290
- return new Capture();
291
- }
292
- /**
293
- * A Capture object that captures a string type
294
- */
295
- static aString() {
296
- return new Capture((x) => {
297
- if (typeof x !== 'string') {
298
- throw new Error(`Expected to capture a string, got '${x}'`);
299
- }
300
- return true;
301
- });
302
- }
303
- /**
304
- * A Capture object that captures a custom type
305
- */
306
- // eslint-disable-next-line @typescript-eslint/no-shadow
307
- static a(validator) {
308
- return new Capture(validator);
309
- }
310
- /**
311
- * Capture the value if the inner matcher successfully matches it
312
- *
313
- * If no matcher is given, `anything()` is assumed.
314
- *
315
- * And exception will be thrown if the inner matcher returns `true` and
316
- * the value turns out to be of a different type than the `Capture` object
317
- * is expecting.
318
- */
319
- capture(matcher) {
320
- if (matcher === undefined) {
321
- matcher = anything();
322
- }
323
- return annotateMatcher({ $capture: matcher }, (value, failure) => {
324
- this._wasInvoked = true;
325
- const result = matcherFrom(matcher)(value, failure);
326
- if (result) {
327
- if (this.typeValidator && !this.typeValidator(value)) {
328
- throw new Error(`Value not of the expected type: ${value}`);
329
- }
330
- this._didCapture = true;
331
- this._value = value;
332
- }
333
- return result;
334
- });
335
- }
336
- /**
337
- * Whether a value was successfully captured
338
- */
339
- get didCapture() {
340
- return this._didCapture;
341
- }
342
- /**
343
- * Return the value that was captured
344
- *
345
- * Throws an exception if now value was captured
346
- */
347
- get capturedValue() {
348
- // When this module is ported to jsii, the type parameter will obviously
349
- // have to be dropped and this will have to turn into an `any`.
350
- if (!this.didCapture) {
351
- throw new Error(`Did not capture a value: ${this._wasInvoked ? 'inner matcher failed' : 'never invoked'}`);
352
- }
353
- return this._value;
354
- }
355
- }
356
- exports.Capture = Capture;
357
- /**
358
- * Match on the innards of a JSON string, instead of the complete string
359
- */
360
- function encodedJson(matcher) {
361
- return annotateMatcher({ $encodedJson: matcher }, (value, failure) => {
362
- if (typeof value !== 'string') {
363
- failure.failureReason = `Expected a string, but got '${typeof value}'`;
364
- return false;
365
- }
366
- let decoded;
367
- try {
368
- decoded = JSON.parse(value);
369
- }
370
- catch (e) {
371
- failure.failureReason = `String is not JSON: ${e}`;
372
- return false;
373
- }
374
- return matcherFrom(matcher)(decoded, failure);
375
- });
376
- }
377
- exports.encodedJson = encodedJson;
378
- function escapeRegex(s) {
379
- return s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
380
- }
381
- /**
382
- * Make a matcher out of the given argument if it's not a matcher already
383
- *
384
- * If it's not a matcher, it will be treated as a literal.
385
- */
386
- function matcherFrom(matcher) {
387
- return isCallable(matcher) ? matcher : exactValue(matcher);
388
- }
389
- exports.matcherFrom = matcherFrom;
390
- /**
391
- * Annotate a matcher with toJSON
392
- *
393
- * We will JSON.stringify() values if we have a match failure, but for matchers this
394
- * would show (in traditional JS fashion) something like '[function Function]', or more
395
- * accurately nothing at all since functions cannot be JSONified.
396
- *
397
- * We override to JSON() in order to produce a readable version of the matcher.
398
- */
399
- function annotateMatcher(how, matcher) {
400
- matcher.toJSON = () => how;
401
- return matcher;
402
- }
403
- exports.annotateMatcher = annotateMatcher;
404
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGF2ZS1yZXNvdXJjZS1tYXRjaGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImhhdmUtcmVzb3VyY2UtbWF0Y2hlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbURBQTZFO0FBRTdFOzs7OztHQUtHO0FBQ0gsU0FBZ0IsVUFBVSxDQUFtQixPQUFVO0lBQ3JELE9BQU8saUJBQWlCLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQzNDLENBQUM7QUFGRCxnQ0FFQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixjQUFjLENBQW1CLE9BQVU7SUFDekQsT0FBTyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDMUMsQ0FBQztBQUZELHdDQUVDO0FBRUQsU0FBUyxpQkFBaUIsQ0FBbUIsT0FBVSxFQUFFLElBQWE7SUFDcEUsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDO0lBRXJFLE9BQU8sZUFBZSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQVUsRUFBRSxVQUE2QixFQUFXLEVBQUU7UUFDbEYsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDdkMsT0FBTyxXQUFXLENBQUMsVUFBVSxFQUFFLDZCQUE2QixPQUFPLEtBQUssR0FBRyxDQUFDLENBQUM7U0FDOUU7UUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLEtBQUssRUFBVSxDQUFDO1FBRW5DLEtBQUssTUFBTSxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ2hFLElBQUksWUFBWSxLQUFLLHNCQUFNLEVBQUU7Z0JBQzNCLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLFNBQVMsRUFBRTtvQkFBRSxNQUFNLENB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Q2Q7UUFFRCxPQUFPLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDaEQsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBakJELGtDQWlCQztBQUVELFNBQVMsV0FBVyxDQUFDLENBQVM7SUFDNUIsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLHFCQUFxQixFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsb0NBQW9DO0FBQ3ZGLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsV0FBVyxDQUFDLE9BQVk7SUFDdEMsT0FBTyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQzdELENBQUM7QUFGRCxrQ0FFQztBQUVEOzs7Ozs7OztHQVFHO0FBQ0gsU0FBZ0IsZUFBZSxDQUFtQixHQUFNLEVBQUUsT0FBd0I7SUFDL0UsT0FBZSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUM7SUFDcEMsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQztBQUhELDBDQUdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQUJTRU5ULCBJbnNwZWN0aW9uRmFpbHVyZSwgUHJvcGVydHlNYXRjaGVyIH0gZnJvbSAnLi9oYXZlLXJlc291cmNlJztcblxuLyoqXG4gKiBBIG1hdGNoZXIgZm9yIGFuIG9iamVjdCB0aGF0IGNvbnRhaW5zIGF0IGxlYXN0IHRoZSBnaXZlbiBmaWVsZHMgd2l0aCB0aGUgZ2l2ZW4gbWF0Y2hlcnMgKG9yIGxpdGVyYWxzKVxuICpcbiAqIE9ubHkgZG9lcyBsZW5pZW50IG1hdGNoaW5nIG9uZSBsZXZlbCBkZWVwLCBhdCB0aGUgbmV4dCBsZXZlbCBhbGwgb2JqZWN0cyBtdXN0IGRlY2xhcmUgdGhlXG4gKiBleGFjdCBleHBlY3RlZCBrZXlzIGFnYWluLlxuICovXG5leHBvcnQgZnVuY3Rpb24gb2JqZWN0TGlrZTxBIGV4dGVuZHMgb2JqZWN0PihwYXR0ZXJuOiBBKTogUHJvcGVydHlNYXRjaGVyIHtcbiAgcmV0dXJuIF9vYmplY3RDb250YWluaW5nKHBhdHRlcm4sIGZhbHNlKTtcbn1cblxuLyoqXG4gKiBBIG1hdGNoZXIgZm9yIGFuIG9iamVjdCB0aGF0IGNvbnRhaW5zIGF0IGxlYXN0IHRoZSBnaXZlbiBmaWVsZHMgd2l0aCB0aGUgZ2l2ZW4gbWF0Y2hlcnMgKG9yIGxpdGVyYWxzKVxuICpcbiAqIFN3aXRjaGVzIHRvIFwiZGVlcFwiIGxlbmllbnQgbWF0Y2hpbmcuIE5lc3RlZCBvYmplY3RzIGFsc28gb25seSBuZWVkIHRvIGNvbnRhaW4gZGVjbGFyZWQga2V5cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlZXBPYmplY3RMaWtlPEEgZXh0ZW5kcyBvYmplY3Q+KHBhdHRlcm46IEEpOiBQcm9wZXJ0eU1hdGNoZXIge1xuICByZXR1cm4gX29iamVjdENvbnRhaW5pbmcocGF0dGVybiwgdHJ1ZSk7XG59XG5cbmZ1bmN0aW9uIF9vYmplY3RDb250YWluaW5nPEEgZXh0ZW5kcyBvYmplY3Q+KHBhdHRlcm46IEEsIGRlZXA6IGJvb2xlYW4pOiBQcm9wZXJ0eU1hdGNoZXIge1xuICBjb25zdCBhbm5vID0geyBbZGVlcCA/ICckZGVlcE9iamVjdExpa2UnIDogJyRvYmplY3RMaWtlJ106IHBhdHRlcm4gfTtcblxuICByZXR1cm4gYW5ub3RhdGVNYXRjaGVyKGFubm8sICh2YWx1ZTogYW55LCBpbnNwZWN0aW9uOiBJbnNwZWN0aW9uRmFpbHVyZSk6IGJvb2xlYW4gPT4ge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdvYmplY3QnIHx8ICF2YWx1ZSkge1xuICAgICAgcmV0dXJuIGZhaWxNYXRjaGVyKGluc3BlY3Rpb24sIGBFeHBlY3QgYW4gb2JqZWN0IGJ1dCBnb3QgJyR7dHlwZW9mIHZhbHVlfSdgKTtcbiAgICB9XG5cbiAgICBjb25zdCBlcnJvcnMgPSBuZXcgQXJyYXk8c3RyaW5nPigpO1xuXG4gICAgZm9yIChjb25zdCBbcGF0dGVybktleSwgcGF0dGVyblZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhwYXR0ZXJuKSkge1xuICAgICAgaWYgKHBhdHRlcm5WYWx1ZSA9PT0gQUJTRU5UKSB7XG4gICAgICAgIGlmICh2YWx1ZVtwYXR0ZXJuS2V5XSAhPT0gdW5kZWZpbmVkKSB7IGVycm9ycy5wdXNoKGBGaWVsZCAke3BhdHRlcm5LZXl9IHByZXNlbnQsIGJ1dCBzaG91bGRuJ3QgYmVgKTsgfVxuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKCEocGF0dGVybktleSBpbiB2YWx1ZSkpIHtcbiAgICAgICAgZXJyb3JzLnB1c2goYEZpZWxkICR7cGF0dGVybktleX0gbWlzc2luZ2ApO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgLy8gSWYgd2UgYXJlIGRvaW5nIERFRVAgb2JqZWN0TGlrZSwgdHJhbnNsYXRlIG9iamVjdCBsaXRlcmFscyBpbiB0aGUgcGF0dGVybiBpbnRvXG4gICAgICAvLyBtb3JlIGBkZWVwT2JqZWN0TGlrZWAgbWF0Y2hlcnMsIGV2ZW4gaWYgdGhleSBvY2N1ciBpbiBsaXN0cy5cbiAgICAgIGNvbnN0IG1hdGNoVmFsdWUgPSBkZWVwID8gZGVlcE1hdGNoZXJGcm9tT2JqZWN0TGl0ZXJhbChwYXR0ZXJuVmFsdWUpIDogcGF0dGVyblZhbHVlO1xuXG4gICAgICBjb25zdCBpbm5lckluc3BlY3Rpb24gPSB7IC4uLmluc3BlY3Rpb24sIGZhaWx1cmVSZWFzb246ICcnIH07XG4gICAgICBjb25zdCB2YWx1ZU1hdGNoZXMgPSBtYXRjaCh2YWx1ZVtwYXR0ZXJuS2V5XSwgbWF0Y2hWYWx1ZSwgaW5uZXJJbnNwZWN0aW9uKTtcbiAgICAgIGlmICghdmFsdWVNYXRjaGVzKSB7XG4gICAgICAgIGVycm9ycy5wdXNoKGBGaWVsZCAke3BhdHRlcm5LZXl9IG1pc21hdGNoOiAke2lubmVySW5zcGVjdGlvbi5mYWlsdXJlUmVhc29ufWApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRyYW5zZm9ybSBuZXN0ZWQgb2JqZWN0IGxpdGVyYWxzIGludG8gbW9yZSBkZWVwIG9iamVjdCBtYXRjaGVycywgaWYgYXBwbGljYWJsZVxuICAgICAqXG4gICAgICogT2JqZWN0IGxpdGVyYWxzIGluIGxpc3RzIGFyZSBhbHNvIHRyYW5zZm9ybWVkLlxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGRlZXBNYXRjaGVyRnJvbU9iamVjdExpdGVyYWwobmVzdGVkUGF0dGVybjogYW55KTogYW55IHtcbiAgICAgIGlmIChpc09iamVjdChuZXN0ZWRQYXR0ZXJuKSkge1xuICAgICAgICByZXR1cm4gZGVlcE9iamVjdExpa2UobmVzdGVkUGF0dGVybik7XG4gICAgICB9XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShuZXN0ZWRQYXR0ZXJuKSkge1xuICAgICAgICByZXR1cm4gbmVzdGVkUGF0dGVybi5tYXAoZGVlcE1hdGNoZXJGcm9tT2JqZWN0TGl0ZXJhbCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbmVzdGVkUGF0dGVybjtcbiAgICB9XG5cbiAgICBpZiAoZXJyb3JzLmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiBmYWlsTWF0Y2hlcihpbnNwZWN0aW9uLCBlcnJvcnMuam9pbignLCAnKSk7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9KTtcbn1cblxuLyoqXG4gKiBNYXRjaCBleGFjdGx5IHRoZSBnaXZlbiB2YWx1ZVxuICpcbiAqIFRoaXMgaXMgdGhlIGRlZmF1bHQsIHlvdSBvbmx5IG5lZWQgdGhpcyB0byBlc2NhcGUgZnJvbSB0aGUgZGVlcCBsZW5pZW50IG1hdGNoaW5nXG4gKiBvZiBgZGVlcE9iamVjdExpa2VgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXhhY3RWYWx1ZShleHBlY3RlZDogYW55KTogUHJvcGVydHlNYXRjaGVyIHtcbiAgY29uc3QgYW5ubyA9IHsgJGV4YWN0VmFsdWU6IGV4cGVjdGVkIH07XG4gIHJldHVybiBhbm5vdGF0ZU1hdGNoZXIoYW5ubywgKHZhbHVlOiBhbnksIGluc3BlY3Rpb246IEluc3BlY3Rpb25GYWlsdXJlKTogYm9vbGVhbiA9PiB7XG4gICAgcmV0dXJuIG1hdGNoTGl0ZXJhbCh2YWx1ZSwgZXhwZWN0ZWQsIGluc3BlY3Rpb24pO1xuICB9KTtcbn1cblxuLyoqXG4gKiBBIG1hdGNoZXIgZm9yIGEgbGlzdCB0aGF0IGNvbnRhaW5zIGFsbCBvZiB0aGUgZ2l2ZW4gZWxlbWVudHMgaW4gYW55IG9yZGVyXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhcnJheVdpdGgoLi4uZWxlbWVudHM6IGFueVtdKTogUHJvcGVydHlNYXRjaGVyIHtcbiAgaWYgKGVsZW1lbnRzLmxlbmd0aCA9PT0gMCkgeyByZXR1cm4gYW55dGhpbmcoKTsgfVxuXG4gIGNvbnN0IGFubm8gPSB7ICRhcnJheUNvbnRhaW5pbmc6IGVsZW1lbnRzLmxlbmd0aCA9PT0gMSA/IGVsZW1lbnRzWzBdIDogZWxlbWVudHMgfTtcbiAgcmV0dXJuIGFubm90YXRlTWF0Y2hlcihhbm5vLCAodmFsdWU6IGFueSwgaW5zcGVjdGlvbjogSW5zcGVjdGlvbkZhaWx1cmUpOiBib29sZWFuID0+IHtcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICByZXR1cm4gZmFpbE1hdGNoZXIoaW5zcGVjdGlvbiwgYEV4cGVjdCBhbiBhcnJheSBidXQgZ290ICcke3R5cGVvZiB2YWx1ZX0nYCk7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBlbGVtZW50IG9mIGVsZW1lbnRzKSB7XG4gICAgICBjb25zdCBmYWlsdXJlID0gbG9uZ2VzdEZhaWx1cmUodmFsdWUsIGVsZW1lbnQpO1xuICAgICAgaWYgKGZhaWx1cmUpIHtcbiAgICAgICAgcmV0dXJuIGZhaWxNYXRjaGVyKGluc3BlY3Rpb24sIGBBcnJheSBkaWQgbm90IGNvbnRhaW4gZXhwZWN0ZWQgZWxlbWVudCwgY2xvc2VzdCBtYXRjaCBhdCBpbmRleCAke2ZhaWx1cmVbMF19OiAke2ZhaWx1cmVbMV19YCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm4gJ251bGwnIGlmIHRoZSBtYXRjaGVyIG1hdGNoZXMgYW55d2hlcmUgaW4gdGhlIGFycmF5LCBvdGhlcndpc2UgdGhlIGxvbmdlc3QgZXJyb3IgYW5kIGl0cyBpbmRleFxuICAgICAqL1xuICAgIGZ1bmN0aW9uIGxvbmdlc3RGYWlsdXJlKGFycmF5OiBhbnlbXSwgbWF0Y2hlcjogYW55KTogW251bWJlciwgc3RyaW5nXSB8IG51bGwge1xuICAgICAgbGV0IGZhaWw6IFtudW1iZXIsIHN0cmluZ10gfCBudWxsID0gbnVsbDtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyYXkubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgaW5uZXJJbnNwZWN0aW9uID0geyAuLi5pbnNwZWN0aW9uLCBmYWlsdXJlUmVhc29uOiAnJyB9O1xuICAgICAgICBpZiAobWF0Y2goYXJyYXlbaV0sIG1hdGNoZXIsIGlubmVySW5zcGVjdGlvbikpIHtcbiAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChmYWlsID09PSBudWxsIHx8IGlubmVySW5zcGVjdGlvbi5mYWlsdXJlUmVhc29uLmxlbmd0aCA+IGZhaWxbMV0ubGVuZ3RoKSB7XG4gICAgICAgICAgZmFpbCA9IFtpLCBpbm5lckluc3BlY3Rpb24uZmFpbHVyZVJlYXNvbl07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBmYWlsO1xuICAgIH1cbiAgfSk7XG59XG5cbi8qKlxuICogV2hldGhlciBhIHZhbHVlIGlzIGFuIG9iamVjdFxuICovXG5mdW5jdGlvbiBpc09iamVjdCh4OiBhbnkpOiB4IGlzIG9iamVjdCB7XG4gIC8vIEJlY2F1c2UgYHR5cGVvZiBudWxsID09PSAnb2JqZWN0J2AuXG4gIHJldHVybiB4ICYmIHR5cGVvZiB4ID09PSAnb2JqZWN0Jztcbn1cblxuLyoqXG4gKiBIZWxwZXIgZnVuY3Rpb24gdG8gbWFrZSBtYXRjaGVyIGZhaWx1cmUgcmVwb3J0aW5nIGEgbGl0dGxlIGVhc2llclxuICpcbiAqIE91ciBwcm90b2NvbCBpcyB3ZWlyZCAoY2hhbmdlIGEgc3RyaW5nIG9uIGEgcGFzc2VkLWluIG9iamVjdCBhbmQgcmV0dXJuICdmYWxzZScpLFxuICogYnV0IEkgZG9uJ3Qgd2FudCB0byBjaGFuZ2UgdGhhdCByaWdodCBub3cuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmYWlsTWF0Y2hlcihpbnNwZWN0aW9uOiBJbnNwZWN0aW9uRmFpbHVyZSwgZXJyb3I6IHN0cmluZyk6IGJvb2xlYW4ge1xuICBpbnNwZWN0aW9uLmZhaWx1cmVSZWFzb24gPSBlcnJvcjtcbiAgcmV0dXJuIGZhbHNlO1xufVxuXG4vKipcbiAqIE1hdGNoIGEgZ2l2ZW4gbGl0ZXJhbCB2YWx1ZSBhZ2FpbnN0IGEgbWF0Y2hlclxuICpcbiAqIElmIHRoZSBtYXRjaGVyIGlzIGEgY2FsbGFibGUsIHVzZSB0aGF0IHRvIGV2YWx1YXRlIHRoZSB2YWx1ZS4gT3RoZXJ3aXNlLCB0aGUgdmFsdWVzXG4gKiBtdXN0IGJlIGxpdGVyYWxseSB0aGUgc2FtZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1hdGNoKHZhbHVlOiBhbnksIG1hdGNoZXI6IGFueSwgaW5zcGVjdGlvbjogSW5zcGVjdGlvbkZhaWx1cmUpIHtcbiAgaWYgKGlzQ2FsbGFibGUobWF0Y2hlcikpIHtcbiAgICAvLyBDdXN0b20gbWF0Y2hlciAodGhpcyBtb3N0bHkgbG9va3MgdmVyeSB3ZWlyZCBiZWNhdXNlIG91ciBgSW5zcGVjdGlvbkZhaWx1cmVgIHNpZ25hdHVyZSBpcyB3ZWlyZClcbiAgICBjb25zdCBpbm5lckluc3BlY3Rpb246IEluc3BlY3Rpb25GYWlsdXJlID0geyAuLi5pbnNwZWN0aW9uLCBmYWlsdXJlUmVhc29uOiAnJyB9O1xuICAgIGNvbnN0IHJlc3VsdCA9IG1hdGNoZXIodmFsdWUsIGlubmVySW5zcGVjdGlvbik7XG4gICAgaWYgKHR5cGVvZiByZXN1bHQgIT09ICdib29sZWFuJykge1xuICAgICAgcmV0dXJuIGZhaWxNYXRjaGVyKGluc3BlY3Rpb24sIGBQcmVkaWNhdGUgcmV0dXJuZWQgbm9uLWJvb2xlYW4gcmV0dXJuIHZhbHVlOiAke3Jlc3VsdH1gKTtcbiAgICB9XG4gICAgaWYgKCFyZXN1bHQgJiYgIWlubmVySW5zcGVjdGlvbi5mYWlsdXJlUmVhc29uKSB7XG4gICAgICAvLyBDdXN0b20gbWF0Y2hlciBuZWdsZWN0ZWQgdG8gcmV0dXJuIGFuIGVycm9yXG4gICAgICByZXR1cm4gZmFpbE1hdGNoZXIoaW5zcGVjdGlvbiwgJ1ByZWRpY2F0ZSByZXR1cm5lZCBmYWxzZScpO1xuICAgIH1cbiAgICAvLyBQcm9wYWdhdGUgaW5uZXIgZXJyb3IgaW4gY2FzZSBvZiBmYWlsdXJlXG4gICAgaWYgKCFyZXN1bHQpIHsgaW5zcGVjdGlvbi5mYWlsdXJlUmVhc29uID0gaW5uZXJJbnNwZWN0aW9uLmZhaWx1cmVSZWFzb247IH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcmV0dXJuIG1hdGNoTGl0ZXJhbCh2YWx1ZSwgbWF0Y2hlciwgaW5zcGVjdGlvbik7XG59XG5cbi8qKlxuICogTWF0Y2ggYSBsaXRlcmFsIHZhbHVlIGF0IHRoZSB0b3AgbGV2ZWwuXG4gKlxuICogV2hlbiByZWN1cnNpbmcgaW50byBhcnJheXMgb3Igb2JqZWN0cywgdGhlIG5lc3RlZCB2YWx1ZXMgY2FuIGJlIGVpdGhlciBtYXRjaGVyc1xuICogb3IgbGl0ZXJhbHMuXG4gKi9cbmZ1bmN0aW9uIG1hdGNoTGl0ZXJhbCh2YWx1ZTogYW55LCBwYXR0ZXJuOiBhbnksIGluc3BlY3Rpb246IEluc3BlY3Rpb25GYWlsdXJlKSB7XG4gIGlmIChwYXR0ZXJuID09IG51bGwpIHsgcmV0dXJuIHRydWU7IH1cblxuICBjb25zdCBlcnJvcnMgPSBuZXcgQXJyYXk8c3RyaW5nPigpO1xuXG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSAhPT0gQXJyYXkuaXNBcnJheShwYXR0ZXJuKSkge1xuICAgIHJldHVybiBmYWlsTWF0Y2hlcihpbnNwZWN0aW9uLCAnQXJyYXkgdHlwZSBtaXNtYXRjaCcpO1xuICB9XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIGlmIChwYXR0ZXJuLmxlbmd0aCAhPT0gdmFsdWUubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gZmFpbE1hdGNoZXIoaW5zcGVjdGlvbiwgJ0FycmF5IGxlbmd0aCBtaXNtYXRjaCcpO1xuICAgIH1cblxuICAgIC8vIFJlY3Vyc2UgY29tcGFyaXNvbiBmb3IgaW5kaXZpZHVhbCBvYmplY3RzXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXR0ZXJuLmxlbmd0aDsgaSsrKSB7XG4gICAgICBpZiAoIW1hdGNoKHZhbHVlW2ldLCBwYXR0ZXJuW2ldLCB7IC4uLmluc3BlY3Rpb24gfSkpIHtcbiAgICAgICAgZXJyb3JzLnB1c2goYEFycmF5IGVsZW1lbnQgJHtpfSBtaXNtYXRjaGApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChlcnJvcnMubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIGZhaWxNYXRjaGVyKGluc3BlY3Rpb24sIGVycm9ycy5qb2luKCcsICcpKTtcbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbiAgaWYgKCh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnKSAhPT0gKHR5cGVvZiBwYXR0ZXJuID09PSAnb2JqZWN0JykpIHtcbiAgICByZXR1cm4gZmFpbE1hdGNoZXIoaW5zcGVjdGlvbiwgJ09iamVjdCB0eXBlIG1pc21hdGNoJyk7XG4gIH1cbiAgaWYgKHR5cGVvZiBwYXR0ZXJuID09PSAnb2JqZWN0Jykge1xuICAgIC8vIENoZWNrIHRoYXQgYWxsIGZpZWxkcyBpbiB0aGUgcGF0dGVybiBoYXZlIHRoZSByaWdodCB2YWx1ZVxuICAgIGNvbnN0IGlubmVySW5zcGVjdGlvbiA9IHsgLi4uaW5zcGVjdGlvbiwgZmFpbHVyZVJlYXNvbjogJycgfTtcbiAgICBjb25zdCBtYXRjaGVyID0gb2JqZWN0TGlrZShwYXR0ZXJuKSh2YWx1ZSwgaW5uZXJJbnNwZWN0aW9uKTtcbiAgICBpZiAoIW1hdGNoZXIpIHtcbiAgICAgIGluc3BlY3Rpb24uZmFpbHVyZVJlYXNvbiA9IGlubmVySW5zcGVjdGlvbi5mYWlsdXJlUmVhc29uO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIC8vIENoZWNrIG5vIGZpZWxkcyB1bmNvdmVyZWRcbiAgICBjb25zdCByZWFsRmllbGRzID0gbmV3IFNldChPYmplY3Qua2V5cyh2YWx1ZSkpO1xuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHBhdHRlcm4pKSB7IHJlYWxGaWVsZHMuZGVsZXRlKGtleSk7IH1cbiAgICBpZiAocmVhbEZpZWxkcy5zaXplID4gMCkge1xuICAgICAgcmV0dXJuIGZhaWxNYXRjaGVyKGluc3BlY3Rpb24sIGBVbmV4cGVjdGVkIGtleXMgcHJlc2VudCBpbiBvYmplY3Q6ICR7QXJyYXkuZnJvbShyZWFsRmllbGRzKS5qb2luKCcsICcpfWApO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGlmICh2YWx1ZSAhPT0gcGF0dGVybikge1xuICAgIHJldHVybiBmYWlsTWF0Y2hlcihpbnNwZWN0aW9uLCAnRGlmZmVyZW50IHZhbHVlcycpO1xuICB9XG5cbiAgcmV0dXJuIHRydWU7XG59XG5cbi8qKlxuICogV2hldGhlciBhIHZhbHVlIGlzIGEgY2FsbGFibGVcbiAqL1xuZnVuY3Rpb24gaXNDYWxsYWJsZSh4OiBhbnkpOiB4IGlzICgoLi4uYXJnczogYW55W10pID0+IGFueSkge1xuICByZXR1cm4geCAmJiB7fS50b1N0cmluZy5jYWxsKHgpID09PSAnW29iamVjdCBGdW5jdGlvbl0nO1xufVxuXG4vKipcbiAqIERvIGEgZ2xvYi1saWtlIHBhdHRlcm4gbWF0Y2ggKHdoaWNoIG9ubHkgc3VwcG9ydHMgKnMpLiBTdXBwb3J0cyBtdWx0aWxpbmUgc3RyaW5ncy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHN0cmluZ0xpa2UocGF0dGVybjogc3RyaW5nKTogUHJvcGVydHlNYXRjaGVyIHtcbiAgLy8gUmVwbGFjZSAqIHdpdGggLiogaW4gdGhlIHN0cmluZywgZXNjYXBlIHRoZSByZXN0IGFuZCBicmFjZSB3aXRoIF4uLi4kXG4gIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cChgXiR7cGF0dGVybi5zcGxpdCgnKicpLm1hcChlc2NhcGVSZWdleCkuam9pbignLionKX0kYCwgJ20nKTtcblxuICByZXR1cm4gYW5ub3RhdGVNYXRjaGVyKHsgJHN0cmluZ0NvbnRhaW5pbmc6IHBhdHRlcm4gfSwgKHZhbHVlOiBhbnksIGZhaWx1cmU6IEluc3BlY3Rpb25GYWlsdXJlKSA9PiB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ3N0cmluZycpIHtcbiAgICAgIGZhaWx1cmUuZmFpbHVyZVJlYXNvbiA9IGBFeHBlY3RlZCBhIHN0cmluZywgYnV0IGdvdCAnJHt0eXBlb2YgdmFsdWV9J2A7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKCFyZWdleC50ZXN0KHZhbHVlKSkge1xuICAgICAgZmFpbHVyZS5mYWlsdXJlUmVhc29uID0gJ1N0cmluZyBkaWQgbm90IG1hdGNoIHBhdHRlcm4nO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xuICB9KTtcbn1cblxuLyoqXG4gKiBNYXRjaGVzIGFueSB2YWx1ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gYW55dGhpbmcoKTogUHJvcGVydHlNYXRjaGVyIHtcbiAgcmV0dXJuIGFubm90YXRlTWF0Y2hlcih7ICRhbnl0aGluZzogdHJ1ZSB9LCAoKSA9PiB0cnVlKTtcbn1cblxuLyoqXG4gKiBOZWdhdGUgYW4gaW5uZXIgbWF0Y2hlclxuICovXG5leHBvcnQgZnVuY3Rpb24gbm90TWF0Y2hpbmcobWF0Y2hlcjogYW55KTogUHJvcGVydHlNYXRjaGVyIHtcbiAgcmV0dXJuIGFubm90YXRlTWF0Y2hlcih7ICRub3RNYXRjaGluZzogbWF0Y2hlciB9LCAodmFsdWU6IGFueSwgZmFpbHVyZTogSW5zcGVjdGlvbkZhaWx1cmUpID0+IHtcbiAgICBjb25zdCByZXN1bHQgPSBtYXRjaGVyRnJvbShtYXRjaGVyKSh2YWx1ZSwgZmFpbHVyZSk7XG4gICAgaWYgKHJlc3VsdCkge1xuICAgICAgZmFpbHVyZS5mYWlsdXJlUmVhc29uID0gJ1Nob3VsZCBub3QgaGF2ZSBtYXRjaGVkLCBidXQgZGlkJztcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH0pO1xufVxuXG5leHBvcnQgdHlwZSBUeXBlVmFsaWRhdG9yPFQ+ID0gKHg6IGFueSkgPT4geCBpcyBUO1xuXG4vKipcbiAqIENhcHR1cmVzIGEgdmFsdWUgb250byBhbiBvYmplY3QgaWYgaXQgbWF0Y2hlcyBhIGdpdmVuIGlubmVyIG1hdGNoZXJcbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIGNvbnN0IHNvbWVWYWx1ZSA9IENhcHR1cmUuYVN0cmluZygpO1xuICogZXhwZWN0KHN0YWNrKS50b0hhdmVSZXNvdXJjZSh7XG4gKiAgICAvLyAuLi5cbiAqICAgIFZhbHVlOiBzb21lVmFsdWUuY2FwdHVyZShzdHJpbmdNYXRjaGluZygnKmEqJykpLFxuICogfSk7XG4gKiBjb25zb2xlLmxvZyhzb21lVmFsdWUuY2FwdHVyZWRWYWx1ZSk7XG4gKi9cbmV4cG9ydCBjbGFzcyBDYXB0dXJlPFQ9YW55PiB7XG4gIC8qKlxuICAgKiBBIENhcHR1cmUgb2JqZWN0IHRoYXQgY2FwdHVyZXMgYW55IHR5cGVcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgYW55VHlwZSgpOiBDYXB0dXJlPGFueT4ge1xuICAgIHJldHVybiBuZXcgQ2FwdHVyZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgQ2FwdHVyZSBvYmplY3QgdGhhdCBjYXB0dXJlcyBhIHN0cmluZyB0eXBlXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGFTdHJpbmcoKTogQ2FwdHVyZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gbmV3IENhcHR1cmUoKHg6IGFueSk6IHggaXMgc3RyaW5nID0+IHtcbiAgICAgIGlmICh0eXBlb2YgeCAhPT0gJ3N0cmluZycpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCB0byBjYXB0dXJlIGEgc3RyaW5nLCBnb3QgJyR7eH0nYCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIENhcHR1cmUgb2JqZWN0IHRoYXQgY2FwdHVyZXMgYSBjdXN0b20gdHlwZVxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1zaGFkb3dcbiAgcHVibGljIHN0YXRpYyBhPFQ+KHZhbGlkYXRvcjogVHlwZVZhbGlkYXRvcjxUPik6IENhcHR1cmU8VD4ge1xuICAgIHJldHVybiBuZXcgQ2FwdHVyZSh2YWxpZGF0b3IpO1xuICB9XG5cbiAgcHJpdmF0ZSBfdmFsdWU/OiBUO1xuICBwcml2YXRlIF9kaWRDYXB0dXJlID0gZmFsc2U7XG4gIHByaXZhdGUgX3dhc0ludm9rZWQgPSBmYWxzZTtcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB0eXBlVmFsaWRhdG9yPzogVHlwZVZhbGlkYXRvcjxUPikge1xuICB9XG5cbiAgLyoqXG4gICAqIENhcHR1cmUgdGhlIHZhbHVlIGlmIHRoZSBpbm5lciBtYXRjaGVyIHN1Y2Nlc3NmdWxseSBtYXRjaGVzIGl0XG4gICAqXG4gICAqIElmIG5vIG1hdGNoZXIgaXMgZ2l2ZW4sIGBhbnl0aGluZygpYCBpcyBhc3N1bWVkLlxuICAgKlxuICAgKiBBbmQgZXhjZXB0aW9uIHdpbGwgYmUgdGhyb3duIGlmIHRoZSBpbm5lciBtYXRjaGVyIHJldHVybnMgYHRydWVgIGFuZFxuICAgKiB0aGUgdmFsdWUgdHVybnMgb3V0IHRvIGJlIG9mIGEgZGlmZmVyZW50IHR5cGUgdGhhbiB0aGUgYENhcHR1cmVgIG9iamVjdFxuICAgKiBpcyBleHBlY3RpbmcuXG4gICAqL1xuICBwdWJsaWMgY2FwdHVyZShtYXRjaGVyPzogYW55KTogUHJvcGVydHlNYXRjaGVyIHtcbiAgICBpZiAobWF0Y2hlciA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBtYXRjaGVyID0gYW55dGhpbmcoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYW5ub3RhdGVNYXRjaGVyKHsgJGNhcHR1cmU6IG1hdGNoZXIgfSwgKHZhbHVlOiBhbnksIGZhaWx1cmU6IEluc3BlY3Rpb25GYWlsdXJlKSA9PiB7XG4gICAgICB0aGlzLl93YXNJbnZva2VkID0gdHJ1ZTtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IG1hdGNoZXJGcm9tKG1hdGNoZXIpKHZhbHVlLCBmYWlsdXJlKTtcbiAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgaWYgKHRoaXMudHlwZVZhbGlkYXRvciAmJiAhdGhpcy50eXBlVmFsaWRhdG9yKHZhbHVlKSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVmFsdWUgbm90IG9mIHRoZSBleHBlY3RlZCB0eXBlOiAke3ZhbHVlfWApO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2RpZENhcHR1cmUgPSB0cnVlO1xuICAgICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGEgdmFsdWUgd2FzIHN1Y2Nlc3NmdWxseSBjYXB0dXJlZFxuICAgKi9cbiAgcHVibGljIGdldCBkaWRDYXB0dXJlKCkge1xuICAgIHJldHVybiB0aGlzLl9kaWRDYXB0dXJlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgdmFsdWUgdGhhdCB3YXMgY2FwdHVyZWRcbiAgICpcbiAgICogVGhyb3dzIGFuIGV4Y2VwdGlvbiBpZiBub3cgdmFsdWUgd2FzIGNhcHR1cmVkXG4gICAqL1xuICBwdWJsaWMgZ2V0IGNhcHR1cmVkVmFsdWUoKTogVCB7XG4gICAgLy8gV2hlbiB0aGlzIG1vZHVsZSBpcyBwb3J0ZWQgdG8ganNpaSwgdGhlIHR5cGUgcGFyYW1ldGVyIHdpbGwgb2J2aW91c2x5XG4gICAgLy8gaGF2ZSB0byBiZSBkcm9wcGVkIGFuZCB0aGlzIHdpbGwgaGF2ZSB0byB0dXJuIGludG8gYW4gYGFueWAuXG4gICAgaWYgKCF0aGlzLmRpZENhcHR1cmUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRGlkIG5vdCBjYXB0dXJlIGEgdmFsdWU6ICR7dGhpcy5fd2FzSW52b2tlZCA/ICdpbm5lciBtYXRjaGVyIGZhaWxlZCcgOiAnbmV2ZXIgaW52b2tlZCd9YCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl92YWx1ZSE7XG4gIH1cbn1cblxuLyoqXG4gKiBNYXRjaCBvbiB0aGUgaW5uYXJkcyBvZiBhIEpTT04gc3RyaW5nLCBpbnN0ZWFkIG9mIHRoZSBjb21wbGV0ZSBzdHJpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVuY29kZWRKc29uKG1hdGNoZXI6IGFueSk6IFByb3BlcnR5TWF0Y2hlciB7XG4gIHJldHVybiBhbm5vdGF0ZU1hdGNoZXIoeyAkZW5jb2RlZEpzb246IG1hdGNoZXIgfSwgKHZhbHVlOiBhbnksIGZhaWx1cmU6IEluc3BlY3Rpb25GYWlsdXJlKSA9PiB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ3N0cmluZycpIHtcbiAgICAgIGZhaWx1cmUuZmFpbHVyZVJlYXNvbiA9IGBFeHBlY3RlZCBhIHN0cmluZywgYnV0IGdvdCAnJHt0eXBlb2YgdmFsdWV9J2A7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgbGV0IGRlY29kZWQ7XG4gICAgdHJ5IHtcbiAgICAgIGRlY29kZWQgPSBKU09OLnBhcnNlKHZhbHVlKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBmYWlsdXJlLmZhaWx1cmVSZWFzb24gPSBgU3RyaW5nIGlzIG5vdCBKU09OOiAke2V9YDtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gbWF0Y2hlckZyb20obWF0Y2hlcikoZGVjb2RlZCwgZmFpbHVyZSk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBlc2NhcGVSZWdleChzOiBzdHJpbmcpIHtcbiAgcmV0dXJuIHMucmVwbGFjZSgvWy4qKz9eJHt9KCl8W1xcXVxcXFxdL2csICdcXFxcJCYnKTsgLy8gJCYgbWVhbnMgdGhlIHdob2xlIG1hdGNoZWQgc3RyaW5nXG59XG5cbi8qKlxuICogTWFrZSBhIG1hdGNoZXIgb3V0IG9mIHRoZSBnaXZlbiBhcmd1bWVudCBpZiBpdCdzIG5vdCBhIG1hdGNoZXIgYWxyZWFkeVxuICpcbiAqIElmIGl0J3Mgbm90IGEgbWF0Y2hlciwgaXQgd2lsbCBiZSB0cmVhdGVkIGFzIGEgbGl0ZXJhbC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1hdGNoZXJGcm9tKG1hdGNoZXI6IGFueSk6IFByb3BlcnR5TWF0Y2hlciB7XG4gIHJldHVybiBpc0NhbGxhYmxlKG1hdGNoZXIpID8gbWF0Y2hlciA6IGV4YWN0VmFsdWUobWF0Y2hlcik7XG59XG5cbi8qKlxuICogQW5ub3RhdGUgYSBtYXRjaGVyIHdpdGggdG9KU09OXG4gKlxuICogV2Ugd2lsbCBKU09OLnN0cmluZ2lmeSgpIHZhbHVlcyBpZiB3ZSBoYXZlIGEgbWF0Y2ggZmFpbHVyZSwgYnV0IGZvciBtYXRjaGVycyB0aGlzXG4gKiB3b3VsZCBzaG93IChpbiB0cmFkaXRpb25hbCBKUyBmYXNoaW9uKSBzb21ldGhpbmcgbGlrZSAnW2Z1bmN0aW9uIEZ1bmN0aW9uXScsIG9yIG1vcmVcbiAqIGFjY3VyYXRlbHkgbm90aGluZyBhdCBhbGwgc2luY2UgZnVuY3Rpb25zIGNhbm5vdCBiZSBKU09OaWZpZWQuXG4gKlxuICogV2Ugb3ZlcnJpZGUgdG8gSlNPTigpIGluIG9yZGVyIHRvIHByb2R1Y2UgYSByZWFkYWJsZSB2ZXJzaW9uIG9mIHRoZSBtYXRjaGVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYW5ub3RhdGVNYXRjaGVyPEEgZXh0ZW5kcyBvYmplY3Q+KGhvdzogQSwgbWF0Y2hlcjogUHJvcGVydHlNYXRjaGVyKTogUHJvcGVydHlNYXRjaGVyIHtcbiAgKG1hdGNoZXIgYXMgYW55KS50b0pTT04gPSAoKSA9PiBob3c7XG4gIHJldHVybiBtYXRjaGVyO1xufVxuIl19
@@ -1,69 +0,0 @@
1
- import { Assertion, JestFriendlyAssertion } from '../assertion';
2
- import { StackInspector } from '../inspector';
3
- /**
4
- * Magic value to signify that a certain key should be absent from the property bag.
5
- *
6
- * The property is either not present or set to `undefined.
7
- *
8
- * NOTE: `ABSENT` only works with the `haveResource()` and `haveResourceLike()`
9
- * assertions.
10
- */
11
- export declare const ABSENT = "{{ABSENT}}";
12
- /**
13
- * An assertion to check whether a resource of a given type and with the given properties exists, disregarding properties
14
- *
15
- * @param resourceType the type of the resource that is expected to be present.
16
- * @param properties the properties that the resource is expected to have. A function may be provided, in which case
17
- * it will be called with the properties of candidate resources and an ``InspectionFailure``
18
- * instance on which errors should be appended, and should return a truthy value to denote a match.
19
- * @param comparison the entity that is being asserted against.
20
- * @param allowValueExtension if properties is an object, tells whether values must match exactly, or if they are
21
- * allowed to be supersets of the reference values. Meaningless if properties is a function.
22
- */
23
- export declare function haveResource(resourceType: string, properties?: any, comparison?: ResourcePart, allowValueExtension?: boolean): Assertion<StackInspector>;
24
- /**
25
- * Sugar for calling ``haveResource`` with ``allowValueExtension`` set to ``true``.
26
- */
27
- export declare function haveResourceLike(resourceType: string, properties?: any, comparison?: ResourcePart): Assertion<StackInspector>;
28
- export declare type PropertyMatcher = (props: any, inspection: InspectionFailure) => boolean;
29
- export declare class HaveResourceAssertion extends JestFriendlyAssertion<StackInspector> {
30
- private readonly resourceType;
31
- private readonly inspected;
32
- private readonly part;
33
- private readonly matcher;
34
- constructor(resourceType: string, properties?: any, part?: ResourcePart, allowValueExtension?: boolean);
35
- assertUsing(inspector: StackInspector): boolean;
36
- generateErrorMessage(): string;
37
- assertOrThrow(inspector: StackInspector): void;
38
- get description(): string;
39
- }
40
- export interface InspectionFailure {
41
- resource: any;
42
- failureReason: string;
43
- }
44
- /**
45
- * What part of the resource to compare
46
- */
47
- export declare enum ResourcePart {
48
- /**
49
- * Only compare the resource's properties
50
- */
51
- Properties = 0,
52
- /**
53
- * Check the entire CloudFormation config
54
- *
55
- * (including UpdateConfig, DependsOn, etc.)
56
- */
57
- CompleteDefinition = 1
58
- }
59
- /**
60
- * Return whether `superObj` is a super-object of `obj`.
61
- *
62
- * A super-object has the same or more property values, recursing into sub properties if ``allowValueExtension`` is true.
63
- *
64
- * At any point in the object, a value may be replaced with a function which will be used to check that particular field.
65
- * The type of a matcher function is expected to be of type PropertyMatcher.
66
- *
67
- * @deprecated - Use `objectLike` or a literal object instead.
68
- */
69
- export declare function isSuperObject(superObj: any, pattern: any, errors?: string[], allowValueExtension?: boolean): boolean;