@nikovirtala/projen-constructs 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (581) hide show
  1. package/.jsii +3 -2
  2. package/lib/components/typedoc.js +1 -1
  3. package/lib/components/vitest.js +1 -1
  4. package/lib/project-generator.js +1 -1
  5. package/lib/projects/awscdk-construct-library.generated.js +1 -1
  6. package/lib/projects/awscdk-typescript-app.generated.js +1 -1
  7. package/lib/projects/jsii.generated.js +1 -1
  8. package/lib/projects/typescript.generated.js +1 -1
  9. package/node_modules/@jsii/spec/LICENSE +202 -0
  10. package/node_modules/@jsii/spec/NOTICE +2 -0
  11. package/node_modules/@jsii/spec/README.md +13 -0
  12. package/node_modules/@jsii/spec/jest.config.mjs +9 -0
  13. package/node_modules/@jsii/spec/lib/assembly-utils.d.ts +59 -0
  14. package/node_modules/@jsii/spec/lib/assembly-utils.js +158 -0
  15. package/node_modules/@jsii/spec/lib/assembly.d.ts +920 -0
  16. package/node_modules/@jsii/spec/lib/assembly.js +203 -0
  17. package/node_modules/@jsii/spec/lib/configuration.d.ts +147 -0
  18. package/node_modules/@jsii/spec/lib/configuration.js +3 -0
  19. package/node_modules/@jsii/spec/lib/index.d.ts +7 -0
  20. package/node_modules/@jsii/spec/lib/index.js +23 -0
  21. package/node_modules/@jsii/spec/lib/name-tree.d.ts +60 -0
  22. package/node_modules/@jsii/spec/lib/name-tree.js +84 -0
  23. package/node_modules/@jsii/spec/lib/redirect.d.ts +33 -0
  24. package/node_modules/@jsii/spec/lib/redirect.js +46 -0
  25. package/node_modules/@jsii/spec/lib/validate-assembly.d.ts +4 -0
  26. package/node_modules/@jsii/spec/lib/validate-assembly.js +29 -0
  27. package/node_modules/@jsii/spec/package.json +41 -0
  28. package/node_modules/@jsii/spec/schema/assembly-redirect.schema.json +29 -0
  29. package/node_modules/@jsii/spec/schema/jsii-spec.schema.json +1110 -0
  30. package/node_modules/@mrgrain/jsii-struct-builder/LICENSE +202 -0
  31. package/node_modules/@mrgrain/jsii-struct-builder/README.md +387 -0
  32. package/node_modules/@mrgrain/jsii-struct-builder/lib/builder/index.d.ts +1 -0
  33. package/node_modules/@mrgrain/jsii-struct-builder/lib/builder/index.js +18 -0
  34. package/node_modules/@mrgrain/jsii-struct-builder/lib/builder/struct.d.ts +144 -0
  35. package/node_modules/@mrgrain/jsii-struct-builder/lib/builder/struct.js +163 -0
  36. package/node_modules/@mrgrain/jsii-struct-builder/lib/index.d.ts +3 -0
  37. package/node_modules/@mrgrain/jsii-struct-builder/lib/index.js +20 -0
  38. package/node_modules/@mrgrain/jsii-struct-builder/lib/private/assembly.d.ts +2 -0
  39. package/node_modules/@mrgrain/jsii-struct-builder/lib/private/assembly.js +76 -0
  40. package/node_modules/@mrgrain/jsii-struct-builder/lib/private/index.d.ts +2 -0
  41. package/node_modules/@mrgrain/jsii-struct-builder/lib/private/index.js +19 -0
  42. package/node_modules/@mrgrain/jsii-struct-builder/lib/private/utils.d.ts +2 -0
  43. package/node_modules/@mrgrain/jsii-struct-builder/lib/private/utils.js +14 -0
  44. package/node_modules/@mrgrain/jsii-struct-builder/lib/projen/index.d.ts +2 -0
  45. package/node_modules/@mrgrain/jsii-struct-builder/lib/projen/index.js +19 -0
  46. package/node_modules/@mrgrain/jsii-struct-builder/lib/projen/projen-struct.d.ts +90 -0
  47. package/node_modules/@mrgrain/jsii-struct-builder/lib/projen/projen-struct.js +112 -0
  48. package/node_modules/@mrgrain/jsii-struct-builder/lib/projen/ts-interface.d.ts +15 -0
  49. package/node_modules/@mrgrain/jsii-struct-builder/lib/projen/ts-interface.js +18 -0
  50. package/node_modules/@mrgrain/jsii-struct-builder/lib/renderer/index.d.ts +1 -0
  51. package/node_modules/@mrgrain/jsii-struct-builder/lib/renderer/index.js +18 -0
  52. package/node_modules/@mrgrain/jsii-struct-builder/lib/renderer/typescript.d.ts +53 -0
  53. package/node_modules/@mrgrain/jsii-struct-builder/lib/renderer/typescript.js +194 -0
  54. package/node_modules/@mrgrain/jsii-struct-builder/package.json +116 -0
  55. package/node_modules/ajv/.runkit_example.js +23 -0
  56. package/node_modules/ajv/LICENSE +22 -0
  57. package/node_modules/ajv/README.md +207 -0
  58. package/node_modules/ajv/dist/2019.d.ts +19 -0
  59. package/node_modules/ajv/dist/2019.js +61 -0
  60. package/node_modules/ajv/dist/2019.js.map +1 -0
  61. package/node_modules/ajv/dist/2020.d.ts +19 -0
  62. package/node_modules/ajv/dist/2020.js +55 -0
  63. package/node_modules/ajv/dist/2020.js.map +1 -0
  64. package/node_modules/ajv/dist/ajv.d.ts +18 -0
  65. package/node_modules/ajv/dist/ajv.js +50 -0
  66. package/node_modules/ajv/dist/ajv.js.map +1 -0
  67. package/node_modules/ajv/dist/compile/codegen/code.d.ts +40 -0
  68. package/node_modules/ajv/dist/compile/codegen/code.js +156 -0
  69. package/node_modules/ajv/dist/compile/codegen/code.js.map +1 -0
  70. package/node_modules/ajv/dist/compile/codegen/index.d.ts +79 -0
  71. package/node_modules/ajv/dist/compile/codegen/index.js +697 -0
  72. package/node_modules/ajv/dist/compile/codegen/index.js.map +1 -0
  73. package/node_modules/ajv/dist/compile/codegen/scope.d.ts +79 -0
  74. package/node_modules/ajv/dist/compile/codegen/scope.js +143 -0
  75. package/node_modules/ajv/dist/compile/codegen/scope.js.map +1 -0
  76. package/node_modules/ajv/dist/compile/errors.d.ts +13 -0
  77. package/node_modules/ajv/dist/compile/errors.js +123 -0
  78. package/node_modules/ajv/dist/compile/errors.js.map +1 -0
  79. package/node_modules/ajv/dist/compile/index.d.ts +80 -0
  80. package/node_modules/ajv/dist/compile/index.js +242 -0
  81. package/node_modules/ajv/dist/compile/index.js.map +1 -0
  82. package/node_modules/ajv/dist/compile/jtd/parse.d.ts +4 -0
  83. package/node_modules/ajv/dist/compile/jtd/parse.js +350 -0
  84. package/node_modules/ajv/dist/compile/jtd/parse.js.map +1 -0
  85. package/node_modules/ajv/dist/compile/jtd/serialize.d.ts +4 -0
  86. package/node_modules/ajv/dist/compile/jtd/serialize.js +229 -0
  87. package/node_modules/ajv/dist/compile/jtd/serialize.js.map +1 -0
  88. package/node_modules/ajv/dist/compile/jtd/types.d.ts +6 -0
  89. package/node_modules/ajv/dist/compile/jtd/types.js +14 -0
  90. package/node_modules/ajv/dist/compile/jtd/types.js.map +1 -0
  91. package/node_modules/ajv/dist/compile/names.d.ts +20 -0
  92. package/node_modules/ajv/dist/compile/names.js +28 -0
  93. package/node_modules/ajv/dist/compile/names.js.map +1 -0
  94. package/node_modules/ajv/dist/compile/ref_error.d.ts +6 -0
  95. package/node_modules/ajv/dist/compile/ref_error.js +12 -0
  96. package/node_modules/ajv/dist/compile/ref_error.js.map +1 -0
  97. package/node_modules/ajv/dist/compile/resolve.d.ts +12 -0
  98. package/node_modules/ajv/dist/compile/resolve.js +155 -0
  99. package/node_modules/ajv/dist/compile/resolve.js.map +1 -0
  100. package/node_modules/ajv/dist/compile/rules.d.ts +28 -0
  101. package/node_modules/ajv/dist/compile/rules.js +26 -0
  102. package/node_modules/ajv/dist/compile/rules.js.map +1 -0
  103. package/node_modules/ajv/dist/compile/util.d.ts +40 -0
  104. package/node_modules/ajv/dist/compile/util.js +178 -0
  105. package/node_modules/ajv/dist/compile/util.js.map +1 -0
  106. package/node_modules/ajv/dist/compile/validate/applicability.d.ts +6 -0
  107. package/node_modules/ajv/dist/compile/validate/applicability.js +19 -0
  108. package/node_modules/ajv/dist/compile/validate/applicability.js.map +1 -0
  109. package/node_modules/ajv/dist/compile/validate/boolSchema.d.ts +4 -0
  110. package/node_modules/ajv/dist/compile/validate/boolSchema.js +50 -0
  111. package/node_modules/ajv/dist/compile/validate/boolSchema.js.map +1 -0
  112. package/node_modules/ajv/dist/compile/validate/dataType.d.ts +17 -0
  113. package/node_modules/ajv/dist/compile/validate/dataType.js +203 -0
  114. package/node_modules/ajv/dist/compile/validate/dataType.js.map +1 -0
  115. package/node_modules/ajv/dist/compile/validate/defaults.d.ts +2 -0
  116. package/node_modules/ajv/dist/compile/validate/defaults.js +35 -0
  117. package/node_modules/ajv/dist/compile/validate/defaults.js.map +1 -0
  118. package/node_modules/ajv/dist/compile/validate/index.d.ts +42 -0
  119. package/node_modules/ajv/dist/compile/validate/index.js +520 -0
  120. package/node_modules/ajv/dist/compile/validate/index.js.map +1 -0
  121. package/node_modules/ajv/dist/compile/validate/keyword.d.ts +8 -0
  122. package/node_modules/ajv/dist/compile/validate/keyword.js +124 -0
  123. package/node_modules/ajv/dist/compile/validate/keyword.js.map +1 -0
  124. package/node_modules/ajv/dist/compile/validate/subschema.d.ts +47 -0
  125. package/node_modules/ajv/dist/compile/validate/subschema.js +81 -0
  126. package/node_modules/ajv/dist/compile/validate/subschema.js.map +1 -0
  127. package/node_modules/ajv/dist/core.d.ts +173 -0
  128. package/node_modules/ajv/dist/core.js +618 -0
  129. package/node_modules/ajv/dist/core.js.map +1 -0
  130. package/node_modules/ajv/dist/jtd.d.ts +47 -0
  131. package/node_modules/ajv/dist/jtd.js +72 -0
  132. package/node_modules/ajv/dist/jtd.js.map +1 -0
  133. package/node_modules/ajv/dist/refs/data.json +13 -0
  134. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.d.ts +2 -0
  135. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.js +28 -0
  136. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.js.map +1 -0
  137. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/applicator.json +53 -0
  138. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/content.json +17 -0
  139. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/core.json +57 -0
  140. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/format.json +14 -0
  141. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/meta-data.json +37 -0
  142. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/validation.json +90 -0
  143. package/node_modules/ajv/dist/refs/json-schema-2019-09/schema.json +39 -0
  144. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.d.ts +2 -0
  145. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.js +30 -0
  146. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.js.map +1 -0
  147. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/applicator.json +48 -0
  148. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/content.json +17 -0
  149. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/core.json +51 -0
  150. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/format-annotation.json +14 -0
  151. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/meta-data.json +37 -0
  152. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/unevaluated.json +15 -0
  153. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/validation.json +90 -0
  154. package/node_modules/ajv/dist/refs/json-schema-2020-12/schema.json +55 -0
  155. package/node_modules/ajv/dist/refs/json-schema-draft-06.json +137 -0
  156. package/node_modules/ajv/dist/refs/json-schema-draft-07.json +151 -0
  157. package/node_modules/ajv/dist/refs/json-schema-secure.json +88 -0
  158. package/node_modules/ajv/dist/refs/jtd-schema.d.ts +3 -0
  159. package/node_modules/ajv/dist/refs/jtd-schema.js +118 -0
  160. package/node_modules/ajv/dist/refs/jtd-schema.js.map +1 -0
  161. package/node_modules/ajv/dist/runtime/equal.d.ts +6 -0
  162. package/node_modules/ajv/dist/runtime/equal.js +7 -0
  163. package/node_modules/ajv/dist/runtime/equal.js.map +1 -0
  164. package/node_modules/ajv/dist/runtime/parseJson.d.ts +18 -0
  165. package/node_modules/ajv/dist/runtime/parseJson.js +185 -0
  166. package/node_modules/ajv/dist/runtime/parseJson.js.map +1 -0
  167. package/node_modules/ajv/dist/runtime/quote.d.ts +5 -0
  168. package/node_modules/ajv/dist/runtime/quote.js +30 -0
  169. package/node_modules/ajv/dist/runtime/quote.js.map +1 -0
  170. package/node_modules/ajv/dist/runtime/re2.d.ts +6 -0
  171. package/node_modules/ajv/dist/runtime/re2.js +6 -0
  172. package/node_modules/ajv/dist/runtime/re2.js.map +1 -0
  173. package/node_modules/ajv/dist/runtime/timestamp.d.ts +5 -0
  174. package/node_modules/ajv/dist/runtime/timestamp.js +42 -0
  175. package/node_modules/ajv/dist/runtime/timestamp.js.map +1 -0
  176. package/node_modules/ajv/dist/runtime/ucs2length.d.ts +5 -0
  177. package/node_modules/ajv/dist/runtime/ucs2length.js +24 -0
  178. package/node_modules/ajv/dist/runtime/ucs2length.js.map +1 -0
  179. package/node_modules/ajv/dist/runtime/uri.d.ts +6 -0
  180. package/node_modules/ajv/dist/runtime/uri.js +6 -0
  181. package/node_modules/ajv/dist/runtime/uri.js.map +1 -0
  182. package/node_modules/ajv/dist/runtime/validation_error.d.ts +7 -0
  183. package/node_modules/ajv/dist/runtime/validation_error.js +11 -0
  184. package/node_modules/ajv/dist/runtime/validation_error.js.map +1 -0
  185. package/node_modules/ajv/dist/standalone/index.d.ts +6 -0
  186. package/node_modules/ajv/dist/standalone/index.js +90 -0
  187. package/node_modules/ajv/dist/standalone/index.js.map +1 -0
  188. package/node_modules/ajv/dist/standalone/instance.d.ts +12 -0
  189. package/node_modules/ajv/dist/standalone/instance.js +35 -0
  190. package/node_modules/ajv/dist/standalone/instance.js.map +1 -0
  191. package/node_modules/ajv/dist/types/index.d.ts +183 -0
  192. package/node_modules/ajv/dist/types/index.js +3 -0
  193. package/node_modules/ajv/dist/types/index.js.map +1 -0
  194. package/node_modules/ajv/dist/types/json-schema.d.ts +125 -0
  195. package/node_modules/ajv/dist/types/json-schema.js +3 -0
  196. package/node_modules/ajv/dist/types/json-schema.js.map +1 -0
  197. package/node_modules/ajv/dist/types/jtd-schema.d.ts +174 -0
  198. package/node_modules/ajv/dist/types/jtd-schema.js +3 -0
  199. package/node_modules/ajv/dist/types/jtd-schema.js.map +1 -0
  200. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.d.ts +8 -0
  201. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +49 -0
  202. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js.map +1 -0
  203. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.d.ts +6 -0
  204. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +106 -0
  205. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js.map +1 -0
  206. package/node_modules/ajv/dist/vocabularies/applicator/allOf.d.ts +3 -0
  207. package/node_modules/ajv/dist/vocabularies/applicator/allOf.js +23 -0
  208. package/node_modules/ajv/dist/vocabularies/applicator/allOf.js.map +1 -0
  209. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.d.ts +4 -0
  210. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +12 -0
  211. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.js.map +1 -0
  212. package/node_modules/ajv/dist/vocabularies/applicator/contains.d.ts +7 -0
  213. package/node_modules/ajv/dist/vocabularies/applicator/contains.js +95 -0
  214. package/node_modules/ajv/dist/vocabularies/applicator/contains.js.map +1 -0
  215. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts +21 -0
  216. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +85 -0
  217. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.js.map +1 -0
  218. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.d.ts +3 -0
  219. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js +11 -0
  220. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js.map +1 -0
  221. package/node_modules/ajv/dist/vocabularies/applicator/if.d.ts +6 -0
  222. package/node_modules/ajv/dist/vocabularies/applicator/if.js +66 -0
  223. package/node_modules/ajv/dist/vocabularies/applicator/if.js.map +1 -0
  224. package/node_modules/ajv/dist/vocabularies/applicator/index.d.ts +13 -0
  225. package/node_modules/ajv/dist/vocabularies/applicator/index.js +44 -0
  226. package/node_modules/ajv/dist/vocabularies/applicator/index.js.map +1 -0
  227. package/node_modules/ajv/dist/vocabularies/applicator/items.d.ts +5 -0
  228. package/node_modules/ajv/dist/vocabularies/applicator/items.js +52 -0
  229. package/node_modules/ajv/dist/vocabularies/applicator/items.js.map +1 -0
  230. package/node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts +6 -0
  231. package/node_modules/ajv/dist/vocabularies/applicator/items2020.js +30 -0
  232. package/node_modules/ajv/dist/vocabularies/applicator/items2020.js.map +1 -0
  233. package/node_modules/ajv/dist/vocabularies/applicator/not.d.ts +4 -0
  234. package/node_modules/ajv/dist/vocabularies/applicator/not.js +26 -0
  235. package/node_modules/ajv/dist/vocabularies/applicator/not.js.map +1 -0
  236. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.d.ts +6 -0
  237. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +60 -0
  238. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.js.map +1 -0
  239. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.d.ts +3 -0
  240. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +75 -0
  241. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js.map +1 -0
  242. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.d.ts +3 -0
  243. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +12 -0
  244. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js.map +1 -0
  245. package/node_modules/ajv/dist/vocabularies/applicator/properties.d.ts +3 -0
  246. package/node_modules/ajv/dist/vocabularies/applicator/properties.js +54 -0
  247. package/node_modules/ajv/dist/vocabularies/applicator/properties.js.map +1 -0
  248. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.d.ts +6 -0
  249. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +38 -0
  250. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js.map +1 -0
  251. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.d.ts +3 -0
  252. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +13 -0
  253. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.js.map +1 -0
  254. package/node_modules/ajv/dist/vocabularies/code.d.ts +17 -0
  255. package/node_modules/ajv/dist/vocabularies/code.js +131 -0
  256. package/node_modules/ajv/dist/vocabularies/code.js.map +1 -0
  257. package/node_modules/ajv/dist/vocabularies/core/id.d.ts +3 -0
  258. package/node_modules/ajv/dist/vocabularies/core/id.js +10 -0
  259. package/node_modules/ajv/dist/vocabularies/core/id.js.map +1 -0
  260. package/node_modules/ajv/dist/vocabularies/core/index.d.ts +3 -0
  261. package/node_modules/ajv/dist/vocabularies/core/index.js +16 -0
  262. package/node_modules/ajv/dist/vocabularies/core/index.js.map +1 -0
  263. package/node_modules/ajv/dist/vocabularies/core/ref.d.ts +8 -0
  264. package/node_modules/ajv/dist/vocabularies/core/ref.js +122 -0
  265. package/node_modules/ajv/dist/vocabularies/core/ref.js.map +1 -0
  266. package/node_modules/ajv/dist/vocabularies/discriminator/index.d.ts +5 -0
  267. package/node_modules/ajv/dist/vocabularies/discriminator/index.js +104 -0
  268. package/node_modules/ajv/dist/vocabularies/discriminator/index.js.map +1 -0
  269. package/node_modules/ajv/dist/vocabularies/discriminator/types.d.ts +10 -0
  270. package/node_modules/ajv/dist/vocabularies/discriminator/types.js +9 -0
  271. package/node_modules/ajv/dist/vocabularies/discriminator/types.js.map +1 -0
  272. package/node_modules/ajv/dist/vocabularies/draft2020.d.ts +3 -0
  273. package/node_modules/ajv/dist/vocabularies/draft2020.js +23 -0
  274. package/node_modules/ajv/dist/vocabularies/draft2020.js.map +1 -0
  275. package/node_modules/ajv/dist/vocabularies/draft7.d.ts +3 -0
  276. package/node_modules/ajv/dist/vocabularies/draft7.js +17 -0
  277. package/node_modules/ajv/dist/vocabularies/draft7.js.map +1 -0
  278. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.d.ts +5 -0
  279. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js +30 -0
  280. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js.map +1 -0
  281. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.d.ts +5 -0
  282. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js +51 -0
  283. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js.map +1 -0
  284. package/node_modules/ajv/dist/vocabularies/dynamic/index.d.ts +3 -0
  285. package/node_modules/ajv/dist/vocabularies/dynamic/index.js +9 -0
  286. package/node_modules/ajv/dist/vocabularies/dynamic/index.js.map +1 -0
  287. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.d.ts +3 -0
  288. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js +16 -0
  289. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js.map +1 -0
  290. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.d.ts +3 -0
  291. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js +10 -0
  292. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js.map +1 -0
  293. package/node_modules/ajv/dist/vocabularies/errors.d.ts +9 -0
  294. package/node_modules/ajv/dist/vocabularies/errors.js +3 -0
  295. package/node_modules/ajv/dist/vocabularies/errors.js.map +1 -0
  296. package/node_modules/ajv/dist/vocabularies/format/format.d.ts +8 -0
  297. package/node_modules/ajv/dist/vocabularies/format/format.js +92 -0
  298. package/node_modules/ajv/dist/vocabularies/format/format.js.map +1 -0
  299. package/node_modules/ajv/dist/vocabularies/format/index.d.ts +3 -0
  300. package/node_modules/ajv/dist/vocabularies/format/index.js +6 -0
  301. package/node_modules/ajv/dist/vocabularies/format/index.js.map +1 -0
  302. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.d.ts +6 -0
  303. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.js +71 -0
  304. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.js.map +1 -0
  305. package/node_modules/ajv/dist/vocabularies/jtd/elements.d.ts +5 -0
  306. package/node_modules/ajv/dist/vocabularies/jtd/elements.js +24 -0
  307. package/node_modules/ajv/dist/vocabularies/jtd/elements.js.map +1 -0
  308. package/node_modules/ajv/dist/vocabularies/jtd/enum.d.ts +6 -0
  309. package/node_modules/ajv/dist/vocabularies/jtd/enum.js +43 -0
  310. package/node_modules/ajv/dist/vocabularies/jtd/enum.js.map +1 -0
  311. package/node_modules/ajv/dist/vocabularies/jtd/error.d.ts +9 -0
  312. package/node_modules/ajv/dist/vocabularies/jtd/error.js +20 -0
  313. package/node_modules/ajv/dist/vocabularies/jtd/error.js.map +1 -0
  314. package/node_modules/ajv/dist/vocabularies/jtd/index.d.ts +10 -0
  315. package/node_modules/ajv/dist/vocabularies/jtd/index.js +29 -0
  316. package/node_modules/ajv/dist/vocabularies/jtd/index.js.map +1 -0
  317. package/node_modules/ajv/dist/vocabularies/jtd/metadata.d.ts +5 -0
  318. package/node_modules/ajv/dist/vocabularies/jtd/metadata.js +25 -0
  319. package/node_modules/ajv/dist/vocabularies/jtd/metadata.js.map +1 -0
  320. package/node_modules/ajv/dist/vocabularies/jtd/nullable.d.ts +4 -0
  321. package/node_modules/ajv/dist/vocabularies/jtd/nullable.js +22 -0
  322. package/node_modules/ajv/dist/vocabularies/jtd/nullable.js.map +1 -0
  323. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.d.ts +3 -0
  324. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js +15 -0
  325. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js.map +1 -0
  326. package/node_modules/ajv/dist/vocabularies/jtd/properties.d.ts +22 -0
  327. package/node_modules/ajv/dist/vocabularies/jtd/properties.js +149 -0
  328. package/node_modules/ajv/dist/vocabularies/jtd/properties.js.map +1 -0
  329. package/node_modules/ajv/dist/vocabularies/jtd/ref.d.ts +4 -0
  330. package/node_modules/ajv/dist/vocabularies/jtd/ref.js +67 -0
  331. package/node_modules/ajv/dist/vocabularies/jtd/ref.js.map +1 -0
  332. package/node_modules/ajv/dist/vocabularies/jtd/type.d.ts +10 -0
  333. package/node_modules/ajv/dist/vocabularies/jtd/type.js +69 -0
  334. package/node_modules/ajv/dist/vocabularies/jtd/type.js.map +1 -0
  335. package/node_modules/ajv/dist/vocabularies/jtd/union.d.ts +3 -0
  336. package/node_modules/ajv/dist/vocabularies/jtd/union.js +12 -0
  337. package/node_modules/ajv/dist/vocabularies/jtd/union.js.map +1 -0
  338. package/node_modules/ajv/dist/vocabularies/jtd/values.d.ts +5 -0
  339. package/node_modules/ajv/dist/vocabularies/jtd/values.js +51 -0
  340. package/node_modules/ajv/dist/vocabularies/jtd/values.js.map +1 -0
  341. package/node_modules/ajv/dist/vocabularies/metadata.d.ts +3 -0
  342. package/node_modules/ajv/dist/vocabularies/metadata.js +18 -0
  343. package/node_modules/ajv/dist/vocabularies/metadata.js.map +1 -0
  344. package/node_modules/ajv/dist/vocabularies/next.d.ts +3 -0
  345. package/node_modules/ajv/dist/vocabularies/next.js +8 -0
  346. package/node_modules/ajv/dist/vocabularies/next.js.map +1 -0
  347. package/node_modules/ajv/dist/vocabularies/unevaluated/index.d.ts +3 -0
  348. package/node_modules/ajv/dist/vocabularies/unevaluated/index.js +7 -0
  349. package/node_modules/ajv/dist/vocabularies/unevaluated/index.js.map +1 -0
  350. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.d.ts +6 -0
  351. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js +40 -0
  352. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js.map +1 -0
  353. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.d.ts +6 -0
  354. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js +65 -0
  355. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js.map +1 -0
  356. package/node_modules/ajv/dist/vocabularies/validation/const.d.ts +6 -0
  357. package/node_modules/ajv/dist/vocabularies/validation/const.js +25 -0
  358. package/node_modules/ajv/dist/vocabularies/validation/const.js.map +1 -0
  359. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.d.ts +5 -0
  360. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js +12 -0
  361. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js.map +1 -0
  362. package/node_modules/ajv/dist/vocabularies/validation/enum.d.ts +8 -0
  363. package/node_modules/ajv/dist/vocabularies/validation/enum.js +48 -0
  364. package/node_modules/ajv/dist/vocabularies/validation/enum.js.map +1 -0
  365. package/node_modules/ajv/dist/vocabularies/validation/index.d.ts +16 -0
  366. package/node_modules/ajv/dist/vocabularies/validation/index.js +33 -0
  367. package/node_modules/ajv/dist/vocabularies/validation/index.js.map +1 -0
  368. package/node_modules/ajv/dist/vocabularies/validation/limitContains.d.ts +3 -0
  369. package/node_modules/ajv/dist/vocabularies/validation/limitContains.js +15 -0
  370. package/node_modules/ajv/dist/vocabularies/validation/limitContains.js.map +1 -0
  371. package/node_modules/ajv/dist/vocabularies/validation/limitItems.d.ts +3 -0
  372. package/node_modules/ajv/dist/vocabularies/validation/limitItems.js +24 -0
  373. package/node_modules/ajv/dist/vocabularies/validation/limitItems.js.map +1 -0
  374. package/node_modules/ajv/dist/vocabularies/validation/limitLength.d.ts +3 -0
  375. package/node_modules/ajv/dist/vocabularies/validation/limitLength.js +27 -0
  376. package/node_modules/ajv/dist/vocabularies/validation/limitLength.js.map +1 -0
  377. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.d.ts +11 -0
  378. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +27 -0
  379. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.js.map +1 -0
  380. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.d.ts +3 -0
  381. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +24 -0
  382. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.js.map +1 -0
  383. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.d.ts +8 -0
  384. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +26 -0
  385. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.js.map +1 -0
  386. package/node_modules/ajv/dist/vocabularies/validation/pattern.d.ts +8 -0
  387. package/node_modules/ajv/dist/vocabularies/validation/pattern.js +24 -0
  388. package/node_modules/ajv/dist/vocabularies/validation/pattern.js.map +1 -0
  389. package/node_modules/ajv/dist/vocabularies/validation/required.d.ts +8 -0
  390. package/node_modules/ajv/dist/vocabularies/validation/required.js +79 -0
  391. package/node_modules/ajv/dist/vocabularies/validation/required.js.map +1 -0
  392. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.d.ts +9 -0
  393. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +64 -0
  394. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js.map +1 -0
  395. package/node_modules/ajv/lib/2019.ts +81 -0
  396. package/node_modules/ajv/lib/2020.ts +75 -0
  397. package/node_modules/ajv/lib/ajv.ts +70 -0
  398. package/node_modules/ajv/lib/compile/codegen/code.ts +169 -0
  399. package/node_modules/ajv/lib/compile/codegen/index.ts +852 -0
  400. package/node_modules/ajv/lib/compile/codegen/scope.ts +215 -0
  401. package/node_modules/ajv/lib/compile/errors.ts +184 -0
  402. package/node_modules/ajv/lib/compile/index.ts +324 -0
  403. package/node_modules/ajv/lib/compile/jtd/parse.ts +411 -0
  404. package/node_modules/ajv/lib/compile/jtd/serialize.ts +266 -0
  405. package/node_modules/ajv/lib/compile/jtd/types.ts +16 -0
  406. package/node_modules/ajv/lib/compile/names.ts +27 -0
  407. package/node_modules/ajv/lib/compile/ref_error.ts +13 -0
  408. package/node_modules/ajv/lib/compile/resolve.ts +149 -0
  409. package/node_modules/ajv/lib/compile/rules.ts +50 -0
  410. package/node_modules/ajv/lib/compile/util.ts +213 -0
  411. package/node_modules/ajv/lib/compile/validate/applicability.ts +22 -0
  412. package/node_modules/ajv/lib/compile/validate/boolSchema.ts +47 -0
  413. package/node_modules/ajv/lib/compile/validate/dataType.ts +230 -0
  414. package/node_modules/ajv/lib/compile/validate/defaults.ts +32 -0
  415. package/node_modules/ajv/lib/compile/validate/index.ts +582 -0
  416. package/node_modules/ajv/lib/compile/validate/keyword.ts +171 -0
  417. package/node_modules/ajv/lib/compile/validate/subschema.ts +135 -0
  418. package/node_modules/ajv/lib/core.ts +891 -0
  419. package/node_modules/ajv/lib/jtd.ts +132 -0
  420. package/node_modules/ajv/lib/refs/data.json +13 -0
  421. package/node_modules/ajv/lib/refs/json-schema-2019-09/index.ts +28 -0
  422. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/applicator.json +53 -0
  423. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/content.json +17 -0
  424. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/core.json +57 -0
  425. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/format.json +14 -0
  426. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/meta-data.json +37 -0
  427. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/validation.json +90 -0
  428. package/node_modules/ajv/lib/refs/json-schema-2019-09/schema.json +39 -0
  429. package/node_modules/ajv/lib/refs/json-schema-2020-12/index.ts +30 -0
  430. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/applicator.json +48 -0
  431. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/content.json +17 -0
  432. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/core.json +51 -0
  433. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/format-annotation.json +14 -0
  434. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/meta-data.json +37 -0
  435. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/unevaluated.json +15 -0
  436. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/validation.json +90 -0
  437. package/node_modules/ajv/lib/refs/json-schema-2020-12/schema.json +55 -0
  438. package/node_modules/ajv/lib/refs/json-schema-draft-06.json +137 -0
  439. package/node_modules/ajv/lib/refs/json-schema-draft-07.json +151 -0
  440. package/node_modules/ajv/lib/refs/json-schema-secure.json +88 -0
  441. package/node_modules/ajv/lib/refs/jtd-schema.ts +130 -0
  442. package/node_modules/ajv/lib/runtime/equal.ts +7 -0
  443. package/node_modules/ajv/lib/runtime/parseJson.ts +177 -0
  444. package/node_modules/ajv/lib/runtime/quote.ts +31 -0
  445. package/node_modules/ajv/lib/runtime/re2.ts +6 -0
  446. package/node_modules/ajv/lib/runtime/timestamp.ts +46 -0
  447. package/node_modules/ajv/lib/runtime/ucs2length.ts +20 -0
  448. package/node_modules/ajv/lib/runtime/uri.ts +6 -0
  449. package/node_modules/ajv/lib/runtime/validation_error.ts +13 -0
  450. package/node_modules/ajv/lib/standalone/index.ts +100 -0
  451. package/node_modules/ajv/lib/standalone/instance.ts +36 -0
  452. package/node_modules/ajv/lib/types/index.ts +244 -0
  453. package/node_modules/ajv/lib/types/json-schema.ts +187 -0
  454. package/node_modules/ajv/lib/types/jtd-schema.ts +273 -0
  455. package/node_modules/ajv/lib/vocabularies/applicator/additionalItems.ts +56 -0
  456. package/node_modules/ajv/lib/vocabularies/applicator/additionalProperties.ts +118 -0
  457. package/node_modules/ajv/lib/vocabularies/applicator/allOf.ts +22 -0
  458. package/node_modules/ajv/lib/vocabularies/applicator/anyOf.ts +14 -0
  459. package/node_modules/ajv/lib/vocabularies/applicator/contains.ts +109 -0
  460. package/node_modules/ajv/lib/vocabularies/applicator/dependencies.ts +112 -0
  461. package/node_modules/ajv/lib/vocabularies/applicator/dependentSchemas.ts +11 -0
  462. package/node_modules/ajv/lib/vocabularies/applicator/if.ts +80 -0
  463. package/node_modules/ajv/lib/vocabularies/applicator/index.ts +53 -0
  464. package/node_modules/ajv/lib/vocabularies/applicator/items.ts +59 -0
  465. package/node_modules/ajv/lib/vocabularies/applicator/items2020.ts +36 -0
  466. package/node_modules/ajv/lib/vocabularies/applicator/not.ts +38 -0
  467. package/node_modules/ajv/lib/vocabularies/applicator/oneOf.ts +82 -0
  468. package/node_modules/ajv/lib/vocabularies/applicator/patternProperties.ts +91 -0
  469. package/node_modules/ajv/lib/vocabularies/applicator/prefixItems.ts +12 -0
  470. package/node_modules/ajv/lib/vocabularies/applicator/properties.ts +57 -0
  471. package/node_modules/ajv/lib/vocabularies/applicator/propertyNames.ts +50 -0
  472. package/node_modules/ajv/lib/vocabularies/applicator/thenElse.ts +13 -0
  473. package/node_modules/ajv/lib/vocabularies/code.ts +168 -0
  474. package/node_modules/ajv/lib/vocabularies/core/id.ts +10 -0
  475. package/node_modules/ajv/lib/vocabularies/core/index.ts +16 -0
  476. package/node_modules/ajv/lib/vocabularies/core/ref.ts +129 -0
  477. package/node_modules/ajv/lib/vocabularies/discriminator/index.ts +113 -0
  478. package/node_modules/ajv/lib/vocabularies/discriminator/types.ts +12 -0
  479. package/node_modules/ajv/lib/vocabularies/draft2020.ts +23 -0
  480. package/node_modules/ajv/lib/vocabularies/draft7.ts +17 -0
  481. package/node_modules/ajv/lib/vocabularies/dynamic/dynamicAnchor.ts +31 -0
  482. package/node_modules/ajv/lib/vocabularies/dynamic/dynamicRef.ts +51 -0
  483. package/node_modules/ajv/lib/vocabularies/dynamic/index.ts +9 -0
  484. package/node_modules/ajv/lib/vocabularies/dynamic/recursiveAnchor.ts +14 -0
  485. package/node_modules/ajv/lib/vocabularies/dynamic/recursiveRef.ts +10 -0
  486. package/node_modules/ajv/lib/vocabularies/errors.ts +18 -0
  487. package/node_modules/ajv/lib/vocabularies/format/format.ts +120 -0
  488. package/node_modules/ajv/lib/vocabularies/format/index.ts +6 -0
  489. package/node_modules/ajv/lib/vocabularies/jtd/discriminator.ts +89 -0
  490. package/node_modules/ajv/lib/vocabularies/jtd/elements.ts +32 -0
  491. package/node_modules/ajv/lib/vocabularies/jtd/enum.ts +45 -0
  492. package/node_modules/ajv/lib/vocabularies/jtd/error.ts +23 -0
  493. package/node_modules/ajv/lib/vocabularies/jtd/index.ts +37 -0
  494. package/node_modules/ajv/lib/vocabularies/jtd/metadata.ts +24 -0
  495. package/node_modules/ajv/lib/vocabularies/jtd/nullable.ts +21 -0
  496. package/node_modules/ajv/lib/vocabularies/jtd/optionalProperties.ts +15 -0
  497. package/node_modules/ajv/lib/vocabularies/jtd/properties.ts +184 -0
  498. package/node_modules/ajv/lib/vocabularies/jtd/ref.ts +76 -0
  499. package/node_modules/ajv/lib/vocabularies/jtd/type.ts +75 -0
  500. package/node_modules/ajv/lib/vocabularies/jtd/union.ts +12 -0
  501. package/node_modules/ajv/lib/vocabularies/jtd/values.ts +58 -0
  502. package/node_modules/ajv/lib/vocabularies/metadata.ts +17 -0
  503. package/node_modules/ajv/lib/vocabularies/next.ts +8 -0
  504. package/node_modules/ajv/lib/vocabularies/unevaluated/index.ts +7 -0
  505. package/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedItems.ts +47 -0
  506. package/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedProperties.ts +85 -0
  507. package/node_modules/ajv/lib/vocabularies/validation/const.ts +28 -0
  508. package/node_modules/ajv/lib/vocabularies/validation/dependentRequired.ts +23 -0
  509. package/node_modules/ajv/lib/vocabularies/validation/enum.ts +54 -0
  510. package/node_modules/ajv/lib/vocabularies/validation/index.ts +49 -0
  511. package/node_modules/ajv/lib/vocabularies/validation/limitContains.ts +16 -0
  512. package/node_modules/ajv/lib/vocabularies/validation/limitItems.ts +26 -0
  513. package/node_modules/ajv/lib/vocabularies/validation/limitLength.ts +30 -0
  514. package/node_modules/ajv/lib/vocabularies/validation/limitNumber.ts +42 -0
  515. package/node_modules/ajv/lib/vocabularies/validation/limitProperties.ts +26 -0
  516. package/node_modules/ajv/lib/vocabularies/validation/multipleOf.ts +34 -0
  517. package/node_modules/ajv/lib/vocabularies/validation/pattern.ts +28 -0
  518. package/node_modules/ajv/lib/vocabularies/validation/required.ts +98 -0
  519. package/node_modules/ajv/lib/vocabularies/validation/uniqueItems.ts +79 -0
  520. package/node_modules/ajv/package.json +126 -0
  521. package/node_modules/fast-deep-equal/LICENSE +21 -0
  522. package/node_modules/fast-deep-equal/README.md +96 -0
  523. package/node_modules/fast-deep-equal/es6/index.d.ts +2 -0
  524. package/node_modules/fast-deep-equal/es6/index.js +72 -0
  525. package/node_modules/fast-deep-equal/es6/react.d.ts +2 -0
  526. package/node_modules/fast-deep-equal/es6/react.js +79 -0
  527. package/node_modules/fast-deep-equal/index.d.ts +4 -0
  528. package/node_modules/fast-deep-equal/index.js +46 -0
  529. package/node_modules/fast-deep-equal/package.json +61 -0
  530. package/node_modules/fast-deep-equal/react.d.ts +2 -0
  531. package/node_modules/fast-deep-equal/react.js +53 -0
  532. package/node_modules/fast-uri/.gitattributes +2 -0
  533. package/node_modules/fast-uri/.github/.stale.yml +21 -0
  534. package/node_modules/fast-uri/.github/dependabot.yml +13 -0
  535. package/node_modules/fast-uri/.github/tests_checker.yml +8 -0
  536. package/node_modules/fast-uri/.github/workflows/ci.yml +101 -0
  537. package/node_modules/fast-uri/.github/workflows/package-manager-ci.yml +24 -0
  538. package/node_modules/fast-uri/LICENSE +32 -0
  539. package/node_modules/fast-uri/README.md +143 -0
  540. package/node_modules/fast-uri/benchmark/benchmark.mjs +159 -0
  541. package/node_modules/fast-uri/benchmark/equal.mjs +51 -0
  542. package/node_modules/fast-uri/benchmark/non-simple-domain.mjs +22 -0
  543. package/node_modules/fast-uri/benchmark/package.json +17 -0
  544. package/node_modules/fast-uri/benchmark/string-array-to-hex-stripped.mjs +24 -0
  545. package/node_modules/fast-uri/benchmark/ws-is-secure.mjs +65 -0
  546. package/node_modules/fast-uri/eslint.config.js +6 -0
  547. package/node_modules/fast-uri/index.js +340 -0
  548. package/node_modules/fast-uri/lib/schemes.js +267 -0
  549. package/node_modules/fast-uri/lib/utils.js +336 -0
  550. package/node_modules/fast-uri/package.json +69 -0
  551. package/node_modules/fast-uri/test/ajv.test.js +43 -0
  552. package/node_modules/fast-uri/test/equal.test.js +108 -0
  553. package/node_modules/fast-uri/test/fixtures/uri-js-parse.json +501 -0
  554. package/node_modules/fast-uri/test/fixtures/uri-js-serialize.json +120 -0
  555. package/node_modules/fast-uri/test/parse.test.js +318 -0
  556. package/node_modules/fast-uri/test/resolve.test.js +78 -0
  557. package/node_modules/fast-uri/test/rfc-3986.test.js +90 -0
  558. package/node_modules/fast-uri/test/serialize.test.js +151 -0
  559. package/node_modules/fast-uri/test/uri-js-compatibility.test.js +33 -0
  560. package/node_modules/fast-uri/test/uri-js.test.js +912 -0
  561. package/node_modules/fast-uri/test/util.test.js +38 -0
  562. package/node_modules/fast-uri/tsconfig.json +9 -0
  563. package/node_modules/fast-uri/types/index.d.ts +60 -0
  564. package/node_modules/fast-uri/types/index.test-d.ts +17 -0
  565. package/node_modules/json-schema-traverse/.eslintrc.yml +27 -0
  566. package/node_modules/json-schema-traverse/.github/FUNDING.yml +2 -0
  567. package/node_modules/json-schema-traverse/.github/workflows/build.yml +28 -0
  568. package/node_modules/json-schema-traverse/.github/workflows/publish.yml +27 -0
  569. package/node_modules/json-schema-traverse/LICENSE +21 -0
  570. package/node_modules/json-schema-traverse/README.md +95 -0
  571. package/node_modules/json-schema-traverse/index.d.ts +40 -0
  572. package/node_modules/json-schema-traverse/index.js +93 -0
  573. package/node_modules/json-schema-traverse/package.json +43 -0
  574. package/node_modules/json-schema-traverse/spec/.eslintrc.yml +6 -0
  575. package/node_modules/json-schema-traverse/spec/fixtures/schema.js +125 -0
  576. package/node_modules/json-schema-traverse/spec/index.spec.js +171 -0
  577. package/node_modules/require-from-string/index.js +34 -0
  578. package/node_modules/require-from-string/license +21 -0
  579. package/node_modules/require-from-string/package.json +28 -0
  580. package/node_modules/require-from-string/readme.md +56 -0
  581. package/package.json +3 -2
@@ -0,0 +1,144 @@
1
+ import type { InterfaceType, Property } from '@jsii/spec';
2
+ /**
3
+ * Something that has jsii properties.
4
+ */
5
+ export interface HasProperties {
6
+ /**
7
+ * The list of properties of the thing.
8
+ */
9
+ readonly properties?: Property[];
10
+ }
11
+ /**
12
+ * Something that has a fully-qualified-name.
13
+ */
14
+ export interface HasFullyQualifiedName {
15
+ /**
16
+ * The fully-qualified-name of the thing.
17
+ */
18
+ readonly fqn: string;
19
+ }
20
+ /**
21
+ * Something that has a fully-qualified-name.
22
+ */
23
+ export interface HasStructSpec {
24
+ /**
25
+ * Get the current spec of the builder.
26
+ */
27
+ readonly spec: InterfaceType;
28
+ }
29
+ export interface IStructBuilder {
30
+ /**
31
+ * Add properties.
32
+ *
33
+ * In the same call, the first defined properties take priority.
34
+ * However later calls will overwrite existing properties.
35
+ */
36
+ add(...props: Property[]): IStructBuilder;
37
+ /**
38
+ * Mix the properties of these sources into the struct.
39
+ *
40
+ * In the same call, the first defined sources and properties take priority.
41
+ * However later calls will overwrite existing properties.
42
+ */
43
+ mixin(...sources: HasProperties[]): IStructBuilder;
44
+ /**
45
+ * Replaces an existing property with a new spec.
46
+ */
47
+ replace(name: string, replacement: Property): IStructBuilder;
48
+ /**
49
+ * Calls a defined callback function on each property, and replaces the property with the returned property.
50
+ *
51
+ * @param callbackfn — A function that accepts a property spec as an argument. The map method calls the callbackfn function one time for each property.
52
+ */
53
+ map(callbackfn: (prop: Property) => Property): IStructBuilder;
54
+ /**
55
+ * Update an existing property.
56
+ */
57
+ update(name: string, update: Partial<Property>): IStructBuilder;
58
+ /**
59
+ * Calls a defined callback function on each property, and merges the property with the returned property partial.
60
+ *
61
+ * @param callbackfn — A function that accepts a property spec as an argument. The map method calls the callbackfn function one time for each property.
62
+ */
63
+ updateEvery(callbackfn: (prop: Property) => Partial<Property>): IStructBuilder;
64
+ /**
65
+ * Update all existing properties.
66
+ */
67
+ updateAll(update: Partial<Property>): IStructBuilder;
68
+ /**
69
+ * Rename a property.
70
+ *
71
+ * If another property with the new name exists, it will be overridden.
72
+ */
73
+ rename(from: string, to: string): IStructBuilder;
74
+ /**
75
+ * Mark all properties as optional.
76
+ */
77
+ allOptional(): IStructBuilder;
78
+ /**
79
+ * Keep only the properties that meet the condition specified in the callback function.
80
+ */
81
+ filter(predicate: (prop: Property) => boolean): IStructBuilder;
82
+ /**
83
+ * Only keep these properties.
84
+ */
85
+ only(...keep: string[]): IStructBuilder;
86
+ /**
87
+ * Omit these properties.
88
+ */
89
+ omit(...remove: string[]): IStructBuilder;
90
+ /**
91
+ * Remove all deprecated properties.
92
+ */
93
+ withoutDeprecated(): IStructBuilder;
94
+ }
95
+ /**
96
+ * Build a jsii struct
97
+ */
98
+ export declare class Struct implements IStructBuilder, HasProperties, HasFullyQualifiedName, HasStructSpec {
99
+ /**
100
+ * Create a builder from an jsii spec
101
+ */
102
+ static fromSpec(spec: InterfaceType): Struct;
103
+ /**
104
+ * Create a builder from a jsii FQN
105
+ *
106
+ * @param fqn The jsii fqn of the source spec.
107
+ * @param mergeParents Merge parent interfaces into the spec. Defaults to `true`.
108
+ */
109
+ static fromFqn(fqn: string, mergeParents?: boolean): Struct;
110
+ /**
111
+ * Create an empty builder
112
+ *
113
+ * Note that the behavior of `builder.spec` is undefined when using this method.
114
+ */
115
+ static empty(fqn?: string): Struct;
116
+ private _base;
117
+ private _properties;
118
+ private constructor();
119
+ add(...props: Property[]): this;
120
+ mixin(...sources: HasProperties[]): this;
121
+ replace(name: string, replacement: Property): this;
122
+ map(callbackfn: (prop: Property) => Property): this;
123
+ update(name: string, update: Partial<Property>): this;
124
+ updateEvery(callbackfn: (prop: Property) => Partial<Property>): this;
125
+ updateAll(update: Partial<Property>): this;
126
+ rename(from: string, to: string): this;
127
+ allOptional(): this;
128
+ filter(predicate: (prop: Property) => boolean): this;
129
+ only(...keep: string[]): this;
130
+ omit(...remove: string[]): this;
131
+ withoutDeprecated(): this;
132
+ /**
133
+ * Get the current state of the builder
134
+ */
135
+ get spec(): InterfaceType;
136
+ /**
137
+ * Get the current properties of the builder
138
+ */
139
+ get properties(): Property[];
140
+ /**
141
+ * Get the FQN for the builder
142
+ */
143
+ get fqn(): string;
144
+ }
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Struct = void 0;
4
+ const spec_1 = require("@jsii/spec");
5
+ const private_1 = require("../private");
6
+ /**
7
+ * Build a jsii struct
8
+ */
9
+ class Struct {
10
+ /**
11
+ * Create a builder from an jsii spec
12
+ */
13
+ static fromSpec(spec) {
14
+ return new Struct(spec);
15
+ }
16
+ /**
17
+ * Create a builder from a jsii FQN
18
+ *
19
+ * @param fqn The jsii fqn of the source spec.
20
+ * @param mergeParents Merge parent interfaces into the spec. Defaults to `true`.
21
+ */
22
+ static fromFqn(fqn, mergeParents = true) {
23
+ const source = (0, private_1.findInterface)(fqn, mergeParents);
24
+ return new Struct(source);
25
+ }
26
+ /**
27
+ * Create an empty builder
28
+ *
29
+ * Note that the behavior of `builder.spec` is undefined when using this method.
30
+ */
31
+ static empty(fqn = '<<empty>>.<<empty>>') {
32
+ return new Struct({
33
+ assembly: fqn.split('.').at(0) ?? '<<empty>>',
34
+ fqn,
35
+ name: fqn.split('.').at(-1) ?? '<<empty>>',
36
+ kind: spec_1.TypeKind.Interface,
37
+ });
38
+ }
39
+ constructor(base) {
40
+ this._base = structuredClone(base);
41
+ this._properties = new Map(base.properties?.map((p) => [p.name, structuredClone(p)]));
42
+ }
43
+ add(...props) {
44
+ for (const prop of props.reverse()) {
45
+ this._properties.set(prop.name, prop);
46
+ }
47
+ return this;
48
+ }
49
+ mixin(...sources) {
50
+ for (const source of sources.reverse()) {
51
+ this.add(...(source.properties || []));
52
+ }
53
+ return this;
54
+ }
55
+ replace(name, replacement) {
56
+ const current = this._properties.get(name);
57
+ if (!current) {
58
+ throw `Unable to replace property '${name}' in '${this._base.fqn}: Property does not exists, please use \`add\`.'`;
59
+ }
60
+ if (replacement.name !== name) {
61
+ this.omit(name);
62
+ }
63
+ return this.add(replacement);
64
+ }
65
+ map(callbackfn) {
66
+ const keys = this._properties.keys();
67
+ for (const propertyKey of keys) {
68
+ const current = structuredClone(this._properties.get(propertyKey));
69
+ this.replace(propertyKey, callbackfn(current));
70
+ }
71
+ return this;
72
+ }
73
+ update(name, update) {
74
+ const old = this._properties.get(name);
75
+ if (!old) {
76
+ throw `Unable to update property '${name}' in '${this._base.fqn}: Property does not exists, please use \`add\`.'`;
77
+ }
78
+ const updatedProp = {
79
+ ...old,
80
+ ...update,
81
+ docs: {
82
+ ...old?.docs,
83
+ ...update?.docs,
84
+ custom: {
85
+ ...old?.docs?.custom,
86
+ ...update?.docs?.custom,
87
+ },
88
+ },
89
+ };
90
+ if (updatedProp.name !== name) {
91
+ this.omit(name);
92
+ }
93
+ return this.add(updatedProp);
94
+ }
95
+ updateEvery(callbackfn) {
96
+ const keys = this._properties.keys();
97
+ for (const propertyKey of keys) {
98
+ const current = structuredClone(this._properties.get(propertyKey));
99
+ this.update(current.name, callbackfn(current) ?? {});
100
+ }
101
+ return this;
102
+ }
103
+ updateAll(update) {
104
+ for (const propertyKey of this._properties.keys()) {
105
+ this.update(propertyKey, update);
106
+ }
107
+ return this;
108
+ }
109
+ rename(from, to) {
110
+ return this.update(from, { name: to });
111
+ }
112
+ allOptional() {
113
+ this.map((property) => {
114
+ property.optional = true;
115
+ return property;
116
+ });
117
+ return this;
118
+ }
119
+ filter(predicate) {
120
+ for (const propertyKey of this._properties.keys()) {
121
+ if (!predicate(this._properties.get(propertyKey))) {
122
+ this._properties.delete(propertyKey);
123
+ }
124
+ }
125
+ return this;
126
+ }
127
+ only(...keep) {
128
+ return this.filter((prop) => keep.includes(prop.name));
129
+ }
130
+ omit(...remove) {
131
+ for (const prop of remove) {
132
+ this._properties.delete(prop);
133
+ }
134
+ return this;
135
+ }
136
+ withoutDeprecated() {
137
+ return this.filter((prop) => null == prop.docs?.deprecated);
138
+ }
139
+ /**
140
+ * Get the current state of the builder
141
+ */
142
+ get spec() {
143
+ const properties = Array.from(this._properties.values());
144
+ return {
145
+ ...structuredClone(this._base),
146
+ properties,
147
+ };
148
+ }
149
+ /**
150
+ * Get the current properties of the builder
151
+ */
152
+ get properties() {
153
+ return this.spec.properties ?? [];
154
+ }
155
+ /**
156
+ * Get the FQN for the builder
157
+ */
158
+ get fqn() {
159
+ return this._base.fqn;
160
+ }
161
+ }
162
+ exports.Struct = Struct;
163
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RydWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2J1aWxkZXIvc3RydWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHFDQUFzQztBQUN0Qyx3Q0FBMkM7QUErRzNDOztHQUVHO0FBQ0gsTUFBYSxNQUFNO0lBQ2pCOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFtQjtRQUN4QyxPQUFPLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBVyxFQUFFLGVBQXdCLElBQUk7UUFDN0QsTUFBTSxNQUFNLEdBQUcsSUFBQSx1QkFBYSxFQUFDLEdBQUcsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNoRCxPQUFPLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcscUJBQXFCO1FBQzdDLE9BQU8sSUFBSSxNQUFNLENBQUM7WUFDaEIsUUFBUSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLFdBQVc7WUFDN0MsR0FBRztZQUNILElBQUksRUFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLFdBQVc7WUFDMUMsSUFBSSxFQUFFLGVBQVEsQ0FBQyxTQUFTO1NBQ3pCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFLRCxZQUFvQixJQUFtQjtRQUNyQyxJQUFJLENBQUMsS0FBSyxHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksR0FBRyxDQUN4QixJQUFJLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENB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ZW50IjpbImltcG9ydCB0eXBlIHsgSW50ZXJmYWNlVHlwZSwgUHJvcGVydHkgfSBmcm9tICdAanNpaS9zcGVjJztcbmltcG9ydCB7IFR5cGVLaW5kIH0gZnJvbSAnQGpzaWkvc3BlYyc7XG5pbXBvcnQgeyBmaW5kSW50ZXJmYWNlIH0gZnJvbSAnLi4vcHJpdmF0ZSc7XG5cbi8qKlxuICogU29tZXRoaW5nIHRoYXQgaGFzIGpzaWkgcHJvcGVydGllcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIYXNQcm9wZXJ0aWVzIHtcbiAgLyoqXG4gICAqIFRoZSBsaXN0IG9mIHByb3BlcnRpZXMgb2YgdGhlIHRoaW5nLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvcGVydGllcz86IFByb3BlcnR5W107XG59XG5cbi8qKlxuICogU29tZXRoaW5nIHRoYXQgaGFzIGEgZnVsbHktcXVhbGlmaWVkLW5hbWUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSGFzRnVsbHlRdWFsaWZpZWROYW1lIHtcbiAgLyoqXG4gICAqIFRoZSBmdWxseS1xdWFsaWZpZWQtbmFtZSBvZiB0aGUgdGhpbmcuXG4gICAqL1xuICByZWFkb25seSBmcW46IHN0cmluZztcbn1cblxuLyoqXG4gKiBTb21ldGhpbmcgdGhhdCBoYXMgYSBmdWxseS1xdWFsaWZpZWQtbmFtZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIYXNTdHJ1Y3RTcGVjIHtcbiAgLyoqXG4gICAqIEdldCB0aGUgY3VycmVudCBzcGVjIG9mIHRoZSBidWlsZGVyLlxuICAgKi9cbiAgcmVhZG9ubHkgc3BlYzogSW50ZXJmYWNlVHlwZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU3RydWN0QnVpbGRlciB7XG4gIC8qKlxuICAgKiBBZGQgcHJvcGVydGllcy5cbiAgICpcbiAgICogSW4gdGhlIHNhbWUgY2FsbCwgdGhlIGZpcnN0IGRlZmluZWQgcHJvcGVydGllcyB0YWtlIHByaW9yaXR5LlxuICAgKiBIb3dldmVyIGxhdGVyIGNhbGxzIHdpbGwgb3ZlcndyaXRlIGV4aXN0aW5nIHByb3BlcnRpZXMuXG4gICAqL1xuICBhZGQoLi4ucHJvcHM6IFByb3BlcnR5W10pOiBJU3RydWN0QnVpbGRlcjtcblxuICAvKipcbiAgICogTWl4IHRoZSBwcm9wZXJ0aWVzIG9mIHRoZXNlIHNvdXJjZXMgaW50byB0aGUgc3RydWN0LlxuICAgKlxuICAgKiBJbiB0aGUgc2FtZSBjYWxsLCB0aGUgZmlyc3QgZGVmaW5lZCBzb3VyY2VzIGFuZCBwcm9wZXJ0aWVzIHRha2UgcHJpb3JpdHkuXG4gICAqIEhvd2V2ZXIgbGF0ZXIgY2FsbHMgd2lsbCBvdmVyd3JpdGUgZXhpc3RpbmcgcHJvcGVydGllcy5cbiAgICovXG4gIG1peGluKC4uLnNvdXJjZXM6IEhhc1Byb3BlcnRpZXNbXSk6IElTdHJ1Y3RCdWlsZGVyO1xuXG4gIC8qKlxuICAgKiBSZXBsYWNlcyBhbiBleGlzdGluZyBwcm9wZXJ0eSB3aXRoIGEgbmV3IHNwZWMuXG4gICAqL1xuICByZXBsYWNlKG5hbWU6IHN0cmluZywgcmVwbGFjZW1lbnQ6IFByb3BlcnR5KTogSVN0cnVjdEJ1aWxkZXI7XG5cbiAgLyoqXG4gICAqIENhbGxzIGEgZGVmaW5lZCBjYWxsYmFjayBmdW5jdGlvbiBvbiBlYWNoIHByb3BlcnR5LCBhbmQgcmVwbGFjZXMgdGhlIHByb3BlcnR5IHdpdGggdGhlIHJldHVybmVkIHByb3BlcnR5LlxuICAgKlxuICAgKiBAcGFyYW0gY2FsbGJhY2tmbiDigJQgQSBmdW5jdGlvbiB0aGF0IGFjY2VwdHMgYSBwcm9wZXJ0eSBzcGVjIGFzIGFuIGFyZ3VtZW50LiBUaGUgbWFwIG1ldGhvZCBjYWxscyB0aGUgY2FsbGJhY2tmbiBmdW5jdGlvbiBvbmUgdGltZSBmb3IgZWFjaCBwcm9wZXJ0eS5cbiAgICovXG4gIG1hcChjYWxsYmFja2ZuOiAocHJvcDogUHJvcGVydHkpID0+IFByb3BlcnR5KTogSVN0cnVjdEJ1aWxkZXI7XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBhbiBleGlzdGluZyBwcm9wZXJ0eS5cbiAgICovXG4gIHVwZGF0ZShuYW1lOiBzdHJpbmcsIHVwZGF0ZTogUGFydGlhbDxQcm9wZXJ0eT4pOiBJU3RydWN0QnVpbGRlcjtcblxuICAvKipcbiAgICogQ2FsbHMgYSBkZWZpbmVkIGNhbGxiYWNrIGZ1bmN0aW9uIG9uIGVhY2ggcHJvcGVydHksIGFuZCBtZXJnZXMgdGhlIHByb3BlcnR5IHdpdGggdGhlIHJldHVybmVkIHByb3BlcnR5IHBhcnRpYWwuXG4gICAqXG4gICAqIEBwYXJhbSBjYWxsYmFja2ZuIOKAlCBBIGZ1bmN0aW9uIHRoYXQgYWNjZXB0cyBhIHByb3BlcnR5IHNwZWMgYXMgYW4gYXJndW1lbnQuIFRoZSBtYXAgbWV0aG9kIGNhbGxzIHRoZSBjYWxsYmFja2ZuIGZ1bmN0aW9uIG9uZSB0aW1lIGZvciBlYWNoIHByb3BlcnR5LlxuICAgKi9cbiAgdXBkYXRlRXZlcnkoY2FsbGJhY2tmbjogKHByb3A6IFByb3BlcnR5KSA9PiBQYXJ0aWFsPFByb3BlcnR5Pik6IElTdHJ1Y3RCdWlsZGVyO1xuXG4gIC8qKlxuICAgKiBVcGRhdGUgYWxsIGV4aXN0aW5nIHByb3BlcnRpZXMuXG4gICAqL1xuICB1cGRhdGVBbGwodXBkYXRlOiBQYXJ0aWFsPFByb3BlcnR5Pik6IElTdHJ1Y3RCdWlsZGVyO1xuXG4gIC8qKlxuICAgKiBSZW5hbWUgYSBwcm9wZXJ0eS5cbiAgICpcbiAgICogSWYgYW5vdGhlciBwcm9wZXJ0eSB3aXRoIHRoZSBuZXcgbmFtZSBleGlzdHMsIGl0IHdpbGwgYmUgb3ZlcnJpZGRlbi5cbiAgICovXG4gIHJlbmFtZShmcm9tOiBzdHJpbmcsIHRvOiBzdHJpbmcpOiBJU3RydWN0QnVpbGRlcjtcblxuICAvKipcbiAgICogTWFyayBhbGwgcHJvcGVydGllcyBhcyBvcHRpb25hbC5cbiAgICovXG4gIGFsbE9wdGlvbmFsKCk6IElTdHJ1Y3RCdWlsZGVyO1xuXG4gIC8qKlxuICAgKiBLZWVwIG9ubHkgdGhlIHByb3BlcnRpZXMgdGhhdCBtZWV0IHRoZSBjb25kaXRpb24gc3BlY2lmaWVkIGluIHRoZSBjYWxsYmFjayBmdW5jdGlvbi5cbiAgICovXG4gIGZpbHRlcihwcmVkaWNhdGU6IChwcm9wOiBQcm9wZXJ0eSkgPT4gYm9vbGVhbik6IElTdHJ1Y3RCdWlsZGVyO1xuXG4gIC8qKlxuICAgKiBPbmx5IGtlZXAgdGhlc2UgcHJvcGVydGllcy5cbiAgICovXG4gIG9ubHkoLi4ua2VlcDogc3RyaW5nW10pOiBJU3RydWN0QnVpbGRlcjtcblxuICAvKipcbiAgICogT21pdCB0aGVzZSBwcm9wZXJ0aWVzLlxuICAgKi9cbiAgb21pdCguLi5yZW1vdmU6IHN0cmluZ1tdKTogSVN0cnVjdEJ1aWxkZXI7XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBhbGwgZGVwcmVjYXRlZCBwcm9wZXJ0aWVzLlxuICAgKi9cbiAgd2l0aG91dERlcHJlY2F0ZWQoKTogSVN0cnVjdEJ1aWxkZXI7XG59XG5cbi8qKlxuICogQnVpbGQgYSBqc2lpIHN0cnVjdFxuICovXG5leHBvcnQgY2xhc3MgU3RydWN0IGltcGxlbWVudHMgSVN0cnVjdEJ1aWxkZXIsIEhhc1Byb3BlcnRpZXMsIEhhc0Z1bGx5UXVhbGlmaWVkTmFtZSwgSGFzU3RydWN0U3BlYyB7XG4gIC8qKlxuICAgKiBDcmVhdGUgYSBidWlsZGVyIGZyb20gYW4ganNpaSBzcGVjXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21TcGVjKHNwZWM6IEludGVyZmFjZVR5cGUpIHtcbiAgICByZXR1cm4gbmV3IFN0cnVjdChzcGVjKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBidWlsZGVyIGZyb20gYSBqc2lpIEZRTlxuICAgKlxuICAgKiBAcGFyYW0gZnFuIFRoZSBqc2lpIGZxbiBvZiB0aGUgc291cmNlIHNwZWMuXG4gICAqIEBwYXJhbSBtZXJnZVBhcmVudHMgTWVyZ2UgcGFyZW50IGludGVyZmFjZXMgaW50byB0aGUgc3BlYy4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tRnFuKGZxbjogc3RyaW5nLCBtZXJnZVBhcmVudHM6IGJvb2xlYW4gPSB0cnVlKSB7XG4gICAgY29uc3Qgc291cmNlID0gZmluZEludGVyZmFjZShmcW4sIG1lcmdlUGFyZW50cyk7XG4gICAgcmV0dXJuIG5ldyBTdHJ1Y3Qoc291cmNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYW4gZW1wdHkgYnVpbGRlclxuICAgKlxuICAgKiBOb3RlIHRoYXQgdGhlIGJlaGF2aW9yIG9mIGBidWlsZGVyLnNwZWNgIGlzIHVuZGVmaW5lZCB3aGVuIHVzaW5nIHRoaXMgbWV0aG9kLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBlbXB0eShmcW4gPSAnPDxlbXB0eT4+Ljw8ZW1wdHk+PicpIHtcbiAgICByZXR1cm4gbmV3IFN0cnVjdCh7XG4gICAgICBhc3NlbWJseTogZnFuLnNwbGl0KCcuJykuYXQoMCkgPz8gJzw8ZW1wdHk+PicsXG4gICAgICBmcW4sXG4gICAgICBuYW1lOiBmcW4uc3BsaXQoJy4nKS5hdCgtMSkgPz8gJzw8ZW1wdHk+PicsXG4gICAgICBraW5kOiBUeXBlS2luZC5JbnRlcmZhY2UsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9iYXNlOiBJbnRlcmZhY2VUeXBlO1xuICBwcml2YXRlIF9wcm9wZXJ0aWVzOiBNYXA8c3RyaW5nLCBQcm9wZXJ0eT47XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihiYXNlOiBJbnRlcmZhY2VUeXBlKSB7XG4gICAgdGhpcy5fYmFzZSA9IHN0cnVjdHVyZWRDbG9uZShiYXNlKTtcbiAgICB0aGlzLl9wcm9wZXJ0aWVzID0gbmV3IE1hcChcbiAgICAgIGJhc2UucHJvcGVydGllcz8ubWFwKChwKSA9PiBbcC5uYW1lLCBzdHJ1Y3R1cmVkQ2xvbmUocCldKSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGFkZCguLi5wcm9wczogUHJvcGVydHlbXSk6IHRoaXMge1xuICAgIGZvciAoY29uc3QgcHJvcCBvZiBwcm9wcy5yZXZlcnNlKCkpIHtcbiAgICAgIHRoaXMuX3Byb3BlcnRpZXMuc2V0KHByb3AubmFtZSwgcHJvcCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgbWl4aW4oLi4uc291cmNlczogSGFzUHJvcGVydGllc1tdKTogdGhpcyB7XG4gICAgZm9yIChjb25zdCBzb3VyY2Ugb2Ygc291cmNlcy5yZXZlcnNlKCkpIHtcbiAgICAgIHRoaXMuYWRkKC4uLihzb3VyY2UucHJvcGVydGllcyB8fCBbXSkpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIHJlcGxhY2UobmFtZTogc3RyaW5nLCByZXBsYWNlbWVudDogUHJvcGVydHkpOiB0aGlzIHtcbiAgICBjb25zdCBjdXJyZW50ID0gdGhpcy5fcHJvcGVydGllcy5nZXQobmFtZSk7XG5cbiAgICBpZiAoIWN1cnJlbnQpIHtcbiAgICAgIHRocm93IGBVbmFibGUgdG8gcmVwbGFjZSBwcm9wZXJ0eSAnJHtuYW1lfScgaW4gJyR7dGhpcy5fYmFzZS5mcW59OiBQcm9wZXJ0eSBkb2VzIG5vdCBleGlzdHMsIHBsZWFzZSB1c2UgXFxgYWRkXFxgLidgO1xuICAgIH1cblxuICAgIGlmIChyZXBsYWNlbWVudC5uYW1lICE9PSBuYW1lKSB7XG4gICAgICB0aGlzLm9taXQobmFtZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuYWRkKHJlcGxhY2VtZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBtYXAoY2FsbGJhY2tmbjogKHByb3A6IFByb3BlcnR5KSA9PiBQcm9wZXJ0eSk6IHRoaXMge1xuICAgIGNvbnN0IGtleXMgPSB0aGlzLl9wcm9wZXJ0aWVzLmtleXMoKTtcbiAgICBmb3IgKGNvbnN0IHByb3BlcnR5S2V5IG9mIGtleXMpIHtcbiAgICAgIGNvbnN0IGN1cnJlbnQgPSBzdHJ1Y3R1cmVkQ2xvbmUodGhpcy5fcHJvcGVydGllcy5nZXQocHJvcGVydHlLZXkpISk7XG4gICAgICB0aGlzLnJlcGxhY2UocHJvcGVydHlLZXksIGNhbGxiYWNrZm4oY3VycmVudCkpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZShuYW1lOiBzdHJpbmcsIHVwZGF0ZTogUGFydGlhbDxQcm9wZXJ0eT4pOiB0aGlzIHtcbiAgICBjb25zdCBvbGQgPSB0aGlzLl9wcm9wZXJ0aWVzLmdldChuYW1lKTtcblxuICAgIGlmICghb2xkKSB7XG4gICAgICB0aHJvdyBgVW5hYmxlIHRvIHVwZGF0ZSBwcm9wZXJ0eSAnJHtuYW1lfScgaW4gJyR7dGhpcy5fYmFzZS5mcW59OiBQcm9wZXJ0eSBkb2VzIG5vdCBleGlzdHMsIHBsZWFzZSB1c2UgXFxgYWRkXFxgLidgO1xuICAgIH1cblxuICAgIGNvbnN0IHVwZGF0ZWRQcm9wID0ge1xuICAgICAgLi4ub2xkLFxuICAgICAgLi4udXBkYXRlLFxuICAgICAgZG9jczoge1xuICAgICAgICAuLi5vbGQ/LmRvY3MsXG4gICAgICAgIC4uLnVwZGF0ZT8uZG9jcyxcbiAgICAgICAgY3VzdG9tOiB7XG4gICAgICAgICAgLi4ub2xkPy5kb2NzPy5jdXN0b20sXG4gICAgICAgICAgLi4udXBkYXRlPy5kb2NzPy5jdXN0b20sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgICBpZiAodXBkYXRlZFByb3AubmFtZSAhPT0gbmFtZSkge1xuICAgICAgdGhpcy5vbWl0KG5hbWUpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmFkZCh1cGRhdGVkUHJvcCk7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlRXZlcnkoY2FsbGJhY2tmbjogKHByb3A6IFByb3BlcnR5KSA9PiBQYXJ0aWFsPFByb3BlcnR5Pik6IHRoaXMge1xuICAgIGNvbnN0IGtleXMgPSB0aGlzLl9wcm9wZXJ0aWVzLmtleXMoKTtcbiAgICBmb3IgKGNvbnN0IHByb3BlcnR5S2V5IG9mIGtleXMpIHtcbiAgICAgIGNvbnN0IGN1cnJlbnQgPSBzdHJ1Y3R1cmVkQ2xvbmUodGhpcy5fcHJvcGVydGllcy5nZXQocHJvcGVydHlLZXkpISk7XG4gICAgICB0aGlzLnVwZGF0ZShjdXJyZW50Lm5hbWUsIGNhbGxiYWNrZm4oY3VycmVudCkgPz8ge30pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZUFsbCh1cGRhdGU6IFBhcnRpYWw8UHJvcGVydHk+KTogdGhpcyB7XG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eUtleSBvZiB0aGlzLl9wcm9wZXJ0aWVzLmtleXMoKSkge1xuICAgICAgdGhpcy51cGRhdGUocHJvcGVydHlLZXksIHVwZGF0ZSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIHJlbmFtZShmcm9tOiBzdHJpbmcsIHRvOiBzdHJpbmcpOiB0aGlzIHtcbiAgICByZXR1cm4gdGhpcy51cGRhdGUoZnJvbSwgeyBuYW1lOiB0byB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhbGxPcHRpb25hbCgpOiB0aGlzIHtcbiAgICB0aGlzLm1hcCgocHJvcGVydHkpID0+IHtcbiAgICAgIHByb3BlcnR5Lm9wdGlvbmFsID0gdHJ1ZTtcbiAgICAgIHJldHVybiBwcm9wZXJ0eTtcbiAgICB9KTtcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIGZpbHRlcihwcmVkaWNhdGU6IChwcm9wOiBQcm9wZXJ0eSkgPT4gYm9vbGVhbik6IHRoaXMge1xuICAgIGZvciAoY29uc3QgcHJvcGVydHlLZXkgb2YgdGhpcy5fcHJvcGVydGllcy5rZXlzKCkpIHtcbiAgICAgIGlmICghcHJlZGljYXRlKHRoaXMuX3Byb3BlcnRpZXMuZ2V0KHByb3BlcnR5S2V5KSEpKSB7XG4gICAgICAgIHRoaXMuX3Byb3BlcnRpZXMuZGVsZXRlKHByb3BlcnR5S2V5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBvbmx5KC4uLmtlZXA6IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyKChwcm9wKSA9PiBrZWVwLmluY2x1ZGVzKHByb3AubmFtZSkpO1xuICB9XG5cbiAgcHVibGljIG9taXQoLi4ucmVtb3ZlOiBzdHJpbmdbXSk6IHRoaXMge1xuICAgIGZvciAoY29uc3QgcHJvcCBvZiByZW1vdmUpIHtcbiAgICAgIHRoaXMuX3Byb3BlcnRpZXMuZGVsZXRlKHByb3ApO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIHdpdGhvdXREZXByZWNhdGVkKCk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmZpbHRlcigocHJvcCkgPT4gbnVsbCA9PSBwcm9wLmRvY3M/LmRlcHJlY2F0ZWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUgYnVpbGRlclxuICAgKi9cbiAgcHVibGljIGdldCBzcGVjKCk6IEludGVyZmFjZVR5cGUge1xuICAgIGNvbnN0IHByb3BlcnRpZXMgPSBBcnJheS5mcm9tKHRoaXMuX3Byb3BlcnRpZXMudmFsdWVzKCkpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnN0cnVjdHVyZWRDbG9uZSh0aGlzLl9iYXNlKSxcbiAgICAgIHByb3BlcnRpZXMsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGN1cnJlbnQgcHJvcGVydGllcyBvZiB0aGUgYnVpbGRlclxuICAgKi9cbiAgcHVibGljIGdldCBwcm9wZXJ0aWVzKCk6IFByb3BlcnR5W10ge1xuICAgIHJldHVybiB0aGlzLnNwZWMucHJvcGVydGllcyA/PyBbXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIEZRTiBmb3IgdGhlIGJ1aWxkZXJcbiAgICovXG4gIHB1YmxpYyBnZXQgZnFuKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2Jhc2UuZnFuO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './builder';
2
+ export * from './projen';
3
+ export * from './renderer';
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./builder"), exports);
18
+ __exportStar(require("./projen"), exports);
19
+ __exportStar(require("./renderer"), exports);
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDRDQUEwQjtBQUMxQiwyQ0FBeUI7QUFDekIsNkNBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9idWlsZGVyJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvamVuJztcbmV4cG9ydCAqIGZyb20gJy4vcmVuZGVyZXInO1xuIl19
@@ -0,0 +1,2 @@
1
+ import type { InterfaceType } from '@jsii/spec';
2
+ export declare function findInterface(fqn: string, mergeInherited?: boolean): InterfaceType;
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.findInterface = findInterface;
4
+ const node_path_1 = require("node:path");
5
+ const spec_1 = require("@jsii/spec");
6
+ const DOT_JSII = '.jsii';
7
+ const assemblies = {};
8
+ function assemblyPath(asm) {
9
+ return (0, node_path_1.dirname)(require.resolve((0, node_path_1.join)(asm, DOT_JSII)));
10
+ }
11
+ function loadAssemblyByName(asm) {
12
+ return loadAssemblyFromDirectory(asm, assemblyPath(asm));
13
+ }
14
+ function loadAssemblyFromDirectory(asm, dir) {
15
+ const assembly = (0, spec_1.loadAssemblyFromPath)(dir, false, ['intersection-types', 'class-covariant-overrides']);
16
+ if (assembly.name !== asm) {
17
+ throw `jsii assembly ${asm} not found in ${(0, node_path_1.join)(dir, DOT_JSII)}, got: ${assembly.name}`;
18
+ }
19
+ return assembly;
20
+ }
21
+ function loadAssembly(asm) {
22
+ if (!assemblies[asm]) {
23
+ try {
24
+ assemblies[asm] = loadAssemblyByName(asm);
25
+ }
26
+ catch (error) {
27
+ try {
28
+ assemblies[asm] = loadAssemblyFromDirectory(asm, process.cwd());
29
+ }
30
+ catch (errorLocal) {
31
+ throw new AggregateError([error, errorLocal], `jsii assembly ${asm} not found`);
32
+ }
33
+ }
34
+ }
35
+ return assemblies[asm];
36
+ }
37
+ function loadInterface(fqn) {
38
+ const asm = loadAssembly(fqn.split('.').at(0));
39
+ const candidate = asm.types?.[fqn];
40
+ if (!candidate) {
41
+ throw `Type ${fqn} not found in jsii assembly ${asm}`;
42
+ }
43
+ if (candidate?.kind !== spec_1.TypeKind.Interface) {
44
+ throw `Expected ${fqn} to be an interface, but got: ${candidate?.kind}`;
45
+ }
46
+ return structuredClone(candidate);
47
+ }
48
+ function findInterface(fqn, mergeInherited = true) {
49
+ const spec = loadInterface(fqn);
50
+ if (!mergeInherited || !spec.interfaces) {
51
+ return spec;
52
+ }
53
+ const props = new Map();
54
+ const methods = new Map();
55
+ for (const parent of spec.interfaces) {
56
+ const parentSpec = findInterface(parent, true);
57
+ parentSpec.properties?.forEach((p) => {
58
+ props.set(p.name, p);
59
+ });
60
+ parentSpec.methods?.forEach((m) => {
61
+ methods.set(m.name, m);
62
+ });
63
+ }
64
+ spec.properties?.forEach((p) => {
65
+ props.set(p.name, p);
66
+ });
67
+ spec.methods?.forEach((m) => {
68
+ methods.set(m.name, m);
69
+ });
70
+ return {
71
+ ...spec,
72
+ methods: Array.from(methods.values()),
73
+ properties: Array.from(props.values()),
74
+ };
75
+ }
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZW1ibHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJpdmF0ZS9hc3NlbWJseS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWlFQSxzQ0FtQ0M7QUFwR0QseUNBQTBDO0FBTzFDLHFDQUdvQjtBQUVwQixNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUM7QUFFekIsTUFBTSxVQUFVLEdBQTZCLEVBQUUsQ0FBQztBQUVoRCxTQUFTLFlBQVksQ0FBQyxHQUFXO0lBQy9CLE9BQU8sSUFBQSxtQkFBTyxFQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBQSxnQkFBSSxFQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDdkQsQ0FBQztBQUVELFNBQVMsa0JBQWtCLENBQUMsR0FBVztJQUNyQyxPQUFPLHlCQUF5QixDQUFDLEdBQUcsRUFBRSxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUMzRCxDQUFDO0FBRUQsU0FBUyx5QkFBeUIsQ0FBQyxHQUFXLEVBQUUsR0FBVztJQUN6RCxNQUFNLFFBQVEsR0FBRyxJQUFBLDJCQUFvQixFQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxvQkFBb0IsRUFBRSwyQkFBMkIsQ0FBQyxDQUFDLENBQUM7SUFDdkcsSUFBSSxRQUFRLENBQUMsSUFBSSxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQzFCLE1BQU0saUJBQWlCLEdBQUcsaUJBQWlCLElBQUEsZ0JBQUksRUFBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLFVBQVUsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzFGLENBQUM7SUFFRCxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBRUQsU0FBUyxZQUFZLENBQUMsR0FBVztJQUMvQixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDO1lBQ0gsVUFBVSxDQUFDLEdBQUcsQ0FBQyxHQUFHLGtCQUFrQixD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QVUsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztLQUN2QyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRpcm5hbWUsIGpvaW4gfSBmcm9tICdub2RlOnBhdGgnO1xuaW1wb3J0IHR5cGUge1xuICBBc3NlbWJseSxcbiAgSW50ZXJmYWNlVHlwZSxcbiAgTWV0aG9kLFxuICBQcm9wZXJ0eSxcbn0gZnJvbSAnQGpzaWkvc3BlYyc7XG5pbXBvcnQge1xuICBsb2FkQXNzZW1ibHlGcm9tUGF0aCxcbiAgVHlwZUtpbmQsXG59IGZyb20gJ0Bqc2lpL3NwZWMnO1xuXG5jb25zdCBET1RfSlNJSSA9ICcuanNpaSc7XG5cbmNvbnN0IGFzc2VtYmxpZXM6IFJlY29yZDxzdHJpbmcsIEFzc2VtYmx5PiA9IHt9O1xuXG5mdW5jdGlvbiBhc3NlbWJseVBhdGgoYXNtOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gZGlybmFtZShyZXF1aXJlLnJlc29sdmUoam9pbihhc20sIERPVF9KU0lJKSkpO1xufVxuXG5mdW5jdGlvbiBsb2FkQXNzZW1ibHlCeU5hbWUoYXNtOiBzdHJpbmcpOiBBc3NlbWJseSB7XG4gIHJldHVybiBsb2FkQXNzZW1ibHlGcm9tRGlyZWN0b3J5KGFzbSwgYXNzZW1ibHlQYXRoKGFzbSkpO1xufVxuXG5mdW5jdGlvbiBsb2FkQXNzZW1ibHlGcm9tRGlyZWN0b3J5KGFzbTogc3RyaW5nLCBkaXI6IHN0cmluZyk6IEFzc2VtYmx5IHtcbiAgY29uc3QgYXNzZW1ibHkgPSBsb2FkQXNzZW1ibHlGcm9tUGF0aChkaXIsIGZhbHNlLCBbJ2ludGVyc2VjdGlvbi10eXBlcycsICdjbGFzcy1jb3ZhcmlhbnQtb3ZlcnJpZGVzJ10pO1xuICBpZiAoYXNzZW1ibHkubmFtZSAhPT0gYXNtKSB7XG4gICAgdGhyb3cgYGpzaWkgYXNzZW1ibHkgJHthc219IG5vdCBmb3VuZCBpbiAke2pvaW4oZGlyLCBET1RfSlNJSSl9LCBnb3Q6ICR7YXNzZW1ibHkubmFtZX1gO1xuICB9XG5cbiAgcmV0dXJuIGFzc2VtYmx5O1xufVxuXG5mdW5jdGlvbiBsb2FkQXNzZW1ibHkoYXNtOiBzdHJpbmcpOiBBc3NlbWJseSB7XG4gIGlmICghYXNzZW1ibGllc1thc21dKSB7XG4gICAgdHJ5IHtcbiAgICAgIGFzc2VtYmxpZXNbYXNtXSA9IGxvYWRBc3NlbWJseUJ5TmFtZShhc20pO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0cnkge1xuICAgICAgICBhc3NlbWJsaWVzW2FzbV0gPSBsb2FkQXNzZW1ibHlGcm9tRGlyZWN0b3J5KGFzbSwgcHJvY2Vzcy5jd2QoKSk7XG4gICAgICB9IGNhdGNoIChlcnJvckxvY2FsKSB7XG4gICAgICAgIHRocm93IG5ldyBBZ2dyZWdhdGVFcnJvcihbZXJyb3IsIGVycm9yTG9jYWxdLCBganNpaSBhc3NlbWJseSAke2FzbX0gbm90IGZvdW5kYCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGFzc2VtYmxpZXNbYXNtXTtcbn1cblxuZnVuY3Rpb24gbG9hZEludGVyZmFjZShmcW46IHN0cmluZykge1xuICBjb25zdCBhc20gPSBsb2FkQXNzZW1ibHkoZnFuLnNwbGl0KCcuJykuYXQoMCkhKTtcblxuICBjb25zdCBjYW5kaWRhdGUgPSBhc20udHlwZXM/LltmcW5dO1xuXG4gIGlmICghY2FuZGlkYXRlKSB7XG4gICAgdGhyb3cgYFR5cGUgJHtmcW59IG5vdCBmb3VuZCBpbiBqc2lpIGFzc2VtYmx5ICR7YXNtfWA7XG4gIH1cblxuICBpZiAoY2FuZGlkYXRlPy5raW5kICE9PSBUeXBlS2luZC5JbnRlcmZhY2UpIHtcbiAgICB0aHJvdyBgRXhwZWN0ZWQgJHtmcW59IHRvIGJlIGFuIGludGVyZmFjZSwgYnV0IGdvdDogJHtjYW5kaWRhdGU/LmtpbmR9YDtcbiAgfVxuXG4gIHJldHVybiBzdHJ1Y3R1cmVkQ2xvbmUoY2FuZGlkYXRlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbmRJbnRlcmZhY2UoXG4gIGZxbjogc3RyaW5nLFxuICBtZXJnZUluaGVyaXRlZDogYm9vbGVhbiA9IHRydWUsXG4pOiBJbnRlcmZhY2VUeXBlIHtcbiAgY29uc3Qgc3BlYyA9IGxvYWRJbnRlcmZhY2UoZnFuKTtcblxuICBpZiAoIW1lcmdlSW5oZXJpdGVkIHx8ICFzcGVjLmludGVyZmFjZXMpIHtcbiAgICByZXR1cm4gc3BlYztcbiAgfVxuXG4gIGNvbnN0IHByb3BzID0gbmV3IE1hcDxzdHJpbmcsIFByb3BlcnR5PigpO1xuICBjb25zdCBtZXRob2RzID0gbmV3IE1hcDxzdHJpbmcsIE1ldGhvZD4oKTtcblxuICBmb3IgKGNvbnN0IHBhcmVudCBvZiBzcGVjLmludGVyZmFjZXMpIHtcbiAgICBjb25zdCBwYXJlbnRTcGVjID0gZmluZEludGVyZmFjZShwYXJlbnQsIHRydWUpO1xuICAgIHBhcmVudFNwZWMucHJvcGVydGllcz8uZm9yRWFjaCgocCkgPT4ge1xuICAgICAgcHJvcHMuc2V0KHAubmFtZSwgcCk7XG4gICAgfSk7XG4gICAgcGFyZW50U3BlYy5tZXRob2RzPy5mb3JFYWNoKChtKSA9PiB7XG4gICAgICBtZXRob2RzLnNldChtLm5hbWUsIG0pO1xuICAgIH0pO1xuICB9XG5cbiAgc3BlYy5wcm9wZXJ0aWVzPy5mb3JFYWNoKChwKSA9PiB7XG4gICAgcHJvcHMuc2V0KHAubmFtZSwgcCk7XG4gIH0pO1xuICBzcGVjLm1ldGhvZHM/LmZvckVhY2goKG0pID0+IHtcbiAgICBtZXRob2RzLnNldChtLm5hbWUsIG0pO1xuICB9KTtcblxuICByZXR1cm4ge1xuICAgIC4uLnNwZWMsXG4gICAgbWV0aG9kczogQXJyYXkuZnJvbShtZXRob2RzLnZhbHVlcygpKSxcbiAgICBwcm9wZXJ0aWVzOiBBcnJheS5mcm9tKHByb3BzLnZhbHVlcygpKSxcbiAgfTtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './assembly';
2
+ export * from './utils';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./assembly"), exports);
18
+ __exportStar(require("./utils"), exports);
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJpdmF0ZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQTJCO0FBQzNCLDBDQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXNzZW1ibHknO1xuZXhwb3J0ICogZnJvbSAnLi91dGlscyc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export declare function compareLowerCase(a: string, b: string): number;
2
+ export declare function comparePath(a: string, b: string): number;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.compareLowerCase = compareLowerCase;
4
+ exports.comparePath = comparePath;
5
+ function compareLowerCase(a, b) {
6
+ return a.localeCompare(b, undefined, { sensitivity: 'base' });
7
+ }
8
+ function comparePath(a, b) {
9
+ if (a[0] < b[0]) {
10
+ return 1;
11
+ }
12
+ return compareLowerCase(a, b);
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJpdmF0ZS91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDRDQUVDO0FBRUQsa0NBS0M7QUFURCxTQUFnQixnQkFBZ0IsQ0FBQyxDQUFTLEVBQUUsQ0FBUztJQUNuRCxPQUFPLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0FBQ2hFLENBQUM7QUFFRCxTQUFnQixXQUFXLENBQUMsQ0FBUyxFQUFFLENBQVM7SUFDOUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDaEIsT0FBTyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBQ0QsT0FBTyxnQkFBZ0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDaEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBjb21wYXJlTG93ZXJDYXNlKGE6IHN0cmluZywgYjogc3RyaW5nKSB7XG4gIHJldHVybiBhLmxvY2FsZUNvbXBhcmUoYiwgdW5kZWZpbmVkLCB7IHNlbnNpdGl2aXR5OiAnYmFzZScgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb21wYXJlUGF0aChhOiBzdHJpbmcsIGI6IHN0cmluZykge1xuICBpZiAoYVswXSA8IGJbMF0pIHtcbiAgICByZXR1cm4gMTtcbiAgfVxuICByZXR1cm4gY29tcGFyZUxvd2VyQ2FzZShhLCBiKTtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './projen-struct';
2
+ export * from './ts-interface';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./projen-struct"), exports);
18
+ __exportStar(require("./ts-interface"), exports);
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvamVuL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxrREFBZ0M7QUFDaEMsaURBQStCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wcm9qZW4tc3RydWN0JztcbmV4cG9ydCAqIGZyb20gJy4vdHMtaW50ZXJmYWNlJztcbiJdfQ==
@@ -0,0 +1,90 @@
1
+ import type { Docs, Property } from '@jsii/spec';
2
+ import type { typescript } from 'projen';
3
+ import { Component } from 'projen';
4
+ import type { TypeScriptInterfaceFileOptions } from './ts-interface';
5
+ import type { HasProperties, IStructBuilder, HasFullyQualifiedName, HasStructSpec } from '../builder';
6
+ export interface ProjenStructOptions {
7
+ /**
8
+ * The name of the new struct
9
+ */
10
+ readonly name: string;
11
+ /**
12
+ * Doc string for the struct
13
+ *
14
+ * Just does the summary
15
+ * If you want to add a full description, use `docs` instead.
16
+ * This will not be used if `docs` is provided.
17
+ *
18
+ * @default - struct name
19
+ */
20
+ readonly description?: string;
21
+ /**
22
+ * Docs for the struct
23
+ *
24
+ * Use this to add a full description.
25
+ * If you only want to add a summary, use `description` instead.
26
+ *
27
+ * @default - none, use `description` if provided
28
+ */
29
+ readonly docs?: Docs;
30
+ /**
31
+ * The fqn of the struct
32
+ *
33
+ * Used to auto-add imports.
34
+ * All referenced types are loaded based on the fqn hierarchy.
35
+ *
36
+ * See `importLocations` for customization options.
37
+ *
38
+ * @default `${project.name}.${options.name}`
39
+ */
40
+ readonly fqn?: string;
41
+ /**
42
+ * Output file path
43
+ * @default - inside `srcdir` or `outdir` with the fqn turned into a path
44
+ */
45
+ readonly filePath?: string;
46
+ /**
47
+ * The module locations assemblies should be imported from
48
+ *
49
+ * All types are imported from the top-level of the module.
50
+ * This map can be used to overwrite the default import locations.
51
+ *
52
+ * For local imports, the import traverse up a number of levels equivalent to the number of fqn parts of the rendered type.
53
+ * E.g. if the the rendered type is `pkg.interface`, it is assumed to be at the top-level and imports from the same assembly would be from `./`.
54
+ * If the rendered type is `pkg.nested.sub.interface` a local import will be from `../../`.
55
+ *
56
+ * @default - uses the assembly name for external packages
57
+ * local imports traverse up a number of levels equivalent to the number of fqn parts
58
+ */
59
+ readonly importLocations?: Record<string, string>;
60
+ /**
61
+ * Options for the created output `TypeScriptInterfaceFile`
62
+ */
63
+ readonly outputFileOptions?: Omit<TypeScriptInterfaceFileOptions, 'importLocations'>;
64
+ }
65
+ /**
66
+ * A component generating a jsii-compatible struct
67
+ */
68
+ export declare class ProjenStruct extends Component implements IStructBuilder, HasProperties, HasFullyQualifiedName, HasStructSpec {
69
+ private tsProject;
70
+ private options;
71
+ private builder;
72
+ constructor(tsProject: typescript.TypeScriptProject, options: ProjenStructOptions);
73
+ preSynthesize(): void;
74
+ get spec(): import("@jsii/spec").InterfaceType;
75
+ add(...props: Property[]): this;
76
+ mixin(...sources: HasProperties[]): this;
77
+ replace(name: string, replacement: Property): IStructBuilder;
78
+ map(callbackfn: (prop: Property) => Property): this;
79
+ update(name: string, update: Partial<Property>): this;
80
+ updateEvery(callbackfn: (prop: Property) => Partial<Property>): this;
81
+ updateAll(update: Partial<Property>): this;
82
+ rename(from: string, to: string): this;
83
+ allOptional(): this;
84
+ filter(predicate: (prop: Property) => boolean): this;
85
+ only(...keep: string[]): this;
86
+ omit(...remove: string[]): this;
87
+ withoutDeprecated(): this;
88
+ get properties(): Property[];
89
+ get fqn(): string;
90
+ }