@goast/core 0.4.0-beta4 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (899) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +4 -0
  3. package/esm/_dnt.shims.d.ts +1 -1
  4. package/esm/_dnt.test_polyfills.d.ts +18 -0
  5. package/esm/_dnt.test_polyfills.d.ts.map +1 -0
  6. package/esm/_dnt.test_polyfills.js +17 -0
  7. package/esm/_dnt.test_shims.d.ts +14 -0
  8. package/esm/_dnt.test_shims.d.ts.map +1 -0
  9. package/esm/_dnt.test_shims.js +69 -0
  10. package/esm/deps/jsr.io/@std/assert/1.0.6/assertion_error.d.ts +26 -0
  11. package/esm/deps/jsr.io/@std/assert/1.0.6/assertion_error.d.ts.map +1 -0
  12. package/esm/deps/jsr.io/@std/assert/1.0.6/assertion_error.js +30 -0
  13. package/esm/deps/jsr.io/@std/assert/1.0.6/equal.d.ts +17 -0
  14. package/esm/deps/jsr.io/@std/assert/1.0.6/equal.d.ts.map +1 -0
  15. package/esm/deps/jsr.io/@std/assert/1.0.6/equal.js +136 -0
  16. package/esm/deps/jsr.io/@std/assert/1.0.6/equals.d.ts +22 -0
  17. package/esm/deps/jsr.io/@std/assert/1.0.6/equals.d.ts.map +1 -0
  18. package/esm/deps/jsr.io/@std/assert/1.0.6/equals.js +45 -0
  19. package/esm/deps/jsr.io/@std/assert/1.0.6/false.d.ts +18 -0
  20. package/esm/deps/jsr.io/@std/assert/1.0.6/false.d.ts.map +1 -0
  21. package/esm/deps/jsr.io/@std/assert/1.0.6/false.js +22 -0
  22. package/esm/deps/jsr.io/@std/assert/1.0.6/instance_of.d.ts +23 -0
  23. package/esm/deps/jsr.io/@std/assert/1.0.6/instance_of.d.ts.map +1 -0
  24. package/esm/deps/jsr.io/@std/assert/1.0.6/instance_of.js +53 -0
  25. package/esm/deps/jsr.io/@std/assert/1.0.6/is_error.d.ts +25 -0
  26. package/esm/deps/jsr.io/@std/assert/1.0.6/is_error.d.ts.map +1 -0
  27. package/esm/deps/jsr.io/@std/assert/1.0.6/is_error.js +54 -0
  28. package/esm/deps/jsr.io/@std/assert/1.0.6/match.d.ts +18 -0
  29. package/esm/deps/jsr.io/@std/assert/1.0.6/match.d.ts.map +1 -0
  30. package/esm/deps/jsr.io/@std/assert/1.0.6/match.js +26 -0
  31. package/esm/deps/jsr.io/@std/assert/1.0.6/not_instance_of.d.ts +20 -0
  32. package/esm/deps/jsr.io/@std/assert/1.0.6/not_instance_of.d.ts.map +1 -0
  33. package/esm/deps/jsr.io/@std/assert/1.0.6/not_instance_of.js +29 -0
  34. package/esm/deps/jsr.io/@std/assert/1.0.6/not_match.d.ts +18 -0
  35. package/esm/deps/jsr.io/@std/assert/1.0.6/not_match.d.ts.map +1 -0
  36. package/esm/deps/jsr.io/@std/assert/1.0.6/not_match.js +26 -0
  37. package/esm/deps/jsr.io/@std/assert/1.0.6/not_strict_equals.d.ts +23 -0
  38. package/esm/deps/jsr.io/@std/assert/1.0.6/not_strict_equals.d.ts.map +1 -0
  39. package/esm/deps/jsr.io/@std/assert/1.0.6/not_strict_equals.js +32 -0
  40. package/esm/deps/jsr.io/@std/assert/1.0.6/object_match.d.ts +28 -0
  41. package/esm/deps/jsr.io/@std/assert/1.0.6/object_match.d.ts.map +1 -0
  42. package/esm/deps/jsr.io/@std/assert/1.0.6/object_match.js +159 -0
  43. package/esm/deps/jsr.io/@std/assert/1.0.6/strict_equals.d.ts +24 -0
  44. package/esm/deps/jsr.io/@std/assert/1.0.6/strict_equals.d.ts.map +1 -0
  45. package/esm/deps/jsr.io/@std/assert/1.0.6/strict_equals.js +57 -0
  46. package/esm/deps/jsr.io/@std/expect/1.0.5/_assert_equals.d.ts +20 -0
  47. package/esm/deps/jsr.io/@std/expect/1.0.5/_assert_equals.d.ts.map +1 -0
  48. package/esm/deps/jsr.io/@std/expect/1.0.5/_assert_equals.js +29 -0
  49. package/esm/deps/jsr.io/@std/expect/1.0.5/_assert_not_equals.d.ts +17 -0
  50. package/esm/deps/jsr.io/@std/expect/1.0.5/_assert_not_equals.d.ts.map +1 -0
  51. package/esm/deps/jsr.io/@std/expect/1.0.5/_assert_not_equals.js +26 -0
  52. package/esm/deps/jsr.io/@std/expect/1.0.5/_assertion.d.ts +3 -0
  53. package/esm/deps/jsr.io/@std/expect/1.0.5/_assertion.d.ts.map +1 -0
  54. package/esm/deps/jsr.io/@std/expect/1.0.5/_assertion.js +9 -0
  55. package/esm/deps/jsr.io/@std/expect/1.0.5/_asymmetric_matchers.d.ts +36 -0
  56. package/esm/deps/jsr.io/@std/expect/1.0.5/_asymmetric_matchers.d.ts.map +1 -0
  57. package/esm/deps/jsr.io/@std/expect/1.0.5/_asymmetric_matchers.js +124 -0
  58. package/esm/deps/jsr.io/@std/expect/1.0.5/_build_message.d.ts +6 -0
  59. package/esm/deps/jsr.io/@std/expect/1.0.5/_build_message.d.ts.map +1 -0
  60. package/esm/deps/jsr.io/@std/expect/1.0.5/_build_message.js +29 -0
  61. package/esm/deps/jsr.io/@std/expect/1.0.5/_custom_equality_tester.d.ts +4 -0
  62. package/esm/deps/jsr.io/@std/expect/1.0.5/_custom_equality_tester.d.ts.map +1 -0
  63. package/esm/deps/jsr.io/@std/expect/1.0.5/_custom_equality_tester.js +11 -0
  64. package/esm/deps/jsr.io/@std/expect/1.0.5/_equal.d.ts +9 -0
  65. package/esm/deps/jsr.io/@std/expect/1.0.5/_equal.d.ts.map +1 -0
  66. package/esm/deps/jsr.io/@std/expect/1.0.5/_equal.js +191 -0
  67. package/esm/deps/jsr.io/@std/expect/1.0.5/_extend.d.ts +4 -0
  68. package/esm/deps/jsr.io/@std/expect/1.0.5/_extend.d.ts.map +1 -0
  69. package/esm/deps/jsr.io/@std/expect/1.0.5/_extend.js +11 -0
  70. package/esm/deps/jsr.io/@std/expect/1.0.5/_inspect_args.d.ts +3 -0
  71. package/esm/deps/jsr.io/@std/expect/1.0.5/_inspect_args.d.ts.map +1 -0
  72. package/esm/deps/jsr.io/@std/expect/1.0.5/_inspect_args.js +12 -0
  73. package/esm/deps/jsr.io/@std/expect/1.0.5/_matchers.d.ts +34 -0
  74. package/esm/deps/jsr.io/@std/expect/1.0.5/_matchers.d.ts.map +1 -0
  75. package/esm/deps/jsr.io/@std/expect/1.0.5/_matchers.js +564 -0
  76. package/esm/deps/jsr.io/@std/expect/1.0.5/_mock_util.d.ts +11 -0
  77. package/esm/deps/jsr.io/@std/expect/1.0.5/_mock_util.d.ts.map +1 -0
  78. package/esm/deps/jsr.io/@std/expect/1.0.5/_mock_util.js +10 -0
  79. package/esm/deps/jsr.io/@std/expect/1.0.5/_types.d.ts +838 -0
  80. package/esm/deps/jsr.io/@std/expect/1.0.5/_types.d.ts.map +1 -0
  81. package/esm/deps/jsr.io/@std/expect/1.0.5/_types.js +3 -0
  82. package/esm/deps/jsr.io/@std/expect/1.0.5/_utils.d.ts +8 -0
  83. package/esm/deps/jsr.io/@std/expect/1.0.5/_utils.d.ts.map +1 -0
  84. package/esm/deps/jsr.io/@std/expect/1.0.5/_utils.js +159 -0
  85. package/esm/deps/jsr.io/@std/expect/1.0.5/expect.d.ts +51 -0
  86. package/esm/deps/jsr.io/@std/expect/1.0.5/expect.d.ts.map +1 -0
  87. package/esm/deps/jsr.io/@std/expect/1.0.5/expect.js +425 -0
  88. package/esm/deps/jsr.io/@std/expect/1.0.5/fn.d.ts +29 -0
  89. package/esm/deps/jsr.io/@std/expect/1.0.5/fn.d.ts.map +1 -0
  90. package/esm/deps/jsr.io/@std/expect/1.0.5/fn.js +85 -0
  91. package/esm/deps/jsr.io/@std/expect/1.0.5/mod.d.ts +85 -0
  92. package/esm/deps/jsr.io/@std/expect/1.0.5/mod.d.ts.map +1 -0
  93. package/esm/deps/jsr.io/@std/expect/1.0.5/mod.js +87 -0
  94. package/esm/deps/jsr.io/@std/internal/1.0.4/assertion_state.d.ts +75 -0
  95. package/esm/deps/jsr.io/@std/internal/1.0.4/assertion_state.d.ts.map +1 -0
  96. package/esm/deps/jsr.io/@std/internal/1.0.4/assertion_state.js +101 -0
  97. package/esm/deps/jsr.io/@std/internal/1.0.4/build_message.d.ts +82 -0
  98. package/esm/deps/jsr.io/@std/internal/1.0.4/build_message.d.ts.map +1 -0
  99. package/esm/deps/jsr.io/@std/internal/1.0.4/build_message.js +111 -0
  100. package/esm/deps/jsr.io/@std/internal/1.0.4/diff.d.ts +140 -0
  101. package/esm/deps/jsr.io/@std/internal/1.0.4/diff.d.ts.map +1 -0
  102. package/esm/deps/jsr.io/@std/internal/1.0.4/diff.js +277 -0
  103. package/esm/deps/jsr.io/@std/internal/1.0.4/diff_str.d.ts +99 -0
  104. package/esm/deps/jsr.io/@std/internal/1.0.4/diff_str.d.ts.map +1 -0
  105. package/esm/deps/jsr.io/@std/internal/1.0.4/diff_str.js +180 -0
  106. package/esm/deps/jsr.io/@std/internal/1.0.4/format.d.ts +2 -0
  107. package/esm/deps/jsr.io/@std/internal/1.0.4/format.d.ts.map +1 -0
  108. package/esm/deps/jsr.io/@std/internal/1.0.4/format.js +37 -0
  109. package/esm/deps/jsr.io/@std/internal/1.0.4/styles.d.ts +159 -0
  110. package/esm/deps/jsr.io/@std/internal/1.0.4/styles.d.ts.map +1 -0
  111. package/esm/deps/jsr.io/@std/internal/1.0.4/styles.js +207 -0
  112. package/esm/deps/jsr.io/@std/internal/1.0.4/types.d.ts +16 -0
  113. package/esm/deps/jsr.io/@std/internal/1.0.4/types.d.ts.map +1 -0
  114. package/esm/deps/jsr.io/@std/internal/1.0.4/types.js +2 -0
  115. package/esm/deps/jsr.io/@std/testing/1.0.3/_test_suite.d.ts +74 -0
  116. package/esm/deps/jsr.io/@std/testing/1.0.3/_test_suite.d.ts.map +1 -0
  117. package/esm/deps/jsr.io/@std/testing/1.0.3/_test_suite.js +340 -0
  118. package/esm/deps/jsr.io/@std/testing/1.0.3/bdd.d.ts +731 -0
  119. package/esm/deps/jsr.io/@std/testing/1.0.3/bdd.d.ts.map +1 -0
  120. package/esm/deps/jsr.io/@std/testing/1.0.3/bdd.js +576 -0
  121. package/esm/mod.d.ts +30 -0
  122. package/esm/mod.d.ts.map +1 -0
  123. package/esm/mod.js +29 -0
  124. package/esm/src/ast/node.d.ts +17 -0
  125. package/esm/src/ast/node.d.ts.map +1 -0
  126. package/esm/src/codegen/config.d.ts +16 -0
  127. package/esm/src/codegen/config.d.ts.map +1 -0
  128. package/esm/src/codegen/endpoints-generator.d.ts +18 -0
  129. package/esm/src/codegen/endpoints-generator.d.ts.map +1 -0
  130. package/esm/src/codegen/generator.d.ts +39 -0
  131. package/esm/src/codegen/generator.d.ts.map +1 -0
  132. package/esm/src/codegen/generator.js +117 -0
  133. package/esm/src/codegen/internal-utils.d.ts.map +1 -0
  134. package/esm/src/codegen/internal-utils.js +6 -0
  135. package/esm/src/codegen/schemas-generator.d.ts +19 -0
  136. package/esm/src/codegen/schemas-generator.d.ts.map +1 -0
  137. package/esm/src/codegen/schemas-generator.js +45 -0
  138. package/esm/src/codegen/services-generator.d.ts +18 -0
  139. package/esm/src/codegen/services-generator.d.ts.map +1 -0
  140. package/esm/src/codegen/types.d.ts +19 -0
  141. package/esm/src/codegen/types.d.ts.map +1 -0
  142. package/esm/src/collect/collector.d.ts +5 -0
  143. package/esm/src/collect/collector.d.ts.map +1 -0
  144. package/esm/src/collect/helpers.d.ts +5 -0
  145. package/esm/src/collect/helpers.d.ts.map +1 -0
  146. package/esm/src/collect/helpers.test.d.ts +2 -0
  147. package/esm/src/collect/helpers.test.d.ts.map +1 -0
  148. package/esm/src/collect/helpers.test.js +77 -0
  149. package/esm/src/collect/types.d.ts +14 -0
  150. package/esm/src/collect/types.d.ts.map +1 -0
  151. package/esm/src/internal-utils.d.ts.map +1 -0
  152. package/esm/src/parse/deref-proxy.d.ts.map +1 -0
  153. package/esm/src/parse/deref-proxy.js +62 -0
  154. package/esm/src/parse/openapi-types.d.ts.map +1 -0
  155. package/esm/src/parse/parser.d.ts +19 -0
  156. package/esm/src/parse/parser.d.ts.map +1 -0
  157. package/esm/src/parse/parser.js +195 -0
  158. package/esm/src/parse/types.d.ts.map +1 -0
  159. package/esm/src/transform/api-types.d.ts +196 -0
  160. package/esm/src/transform/api-types.d.ts.map +1 -0
  161. package/esm/src/transform/helpers.d.ts +52 -0
  162. package/esm/src/transform/helpers.d.ts.map +1 -0
  163. package/esm/src/transform/helpers.js +160 -0
  164. package/esm/src/transform/helpers.test.d.ts +2 -0
  165. package/esm/src/transform/helpers.test.d.ts.map +1 -0
  166. package/esm/src/transform/helpers.test.js +265 -0
  167. package/esm/src/transform/transform-document.d.ts +5 -0
  168. package/esm/src/transform/transform-document.d.ts.map +1 -0
  169. package/esm/src/transform/transform-endpoint.d.ts +5 -0
  170. package/esm/src/transform/transform-endpoint.d.ts.map +1 -0
  171. package/esm/src/transform/transform-endpoint.js +269 -0
  172. package/esm/src/transform/transform-schema.d.ts +6 -0
  173. package/esm/src/transform/transform-schema.d.ts.map +1 -0
  174. package/esm/src/transform/transform-schema.js +182 -0
  175. package/esm/src/transform/transformer.d.ts +5 -0
  176. package/esm/src/transform/transformer.d.ts.map +1 -0
  177. package/esm/src/transform/types.d.ts.map +1 -0
  178. package/esm/src/utils/action-provider.d.ts.map +1 -0
  179. package/esm/src/utils/action-provider.js +29 -0
  180. package/esm/src/utils/action-provider.test.d.ts +2 -0
  181. package/esm/src/utils/action-provider.test.d.ts.map +1 -0
  182. package/esm/src/utils/action-provider.test.js +28 -0
  183. package/esm/src/utils/array.utils.d.ts.map +1 -0
  184. package/esm/src/utils/asset-manager.d.ts.map +1 -0
  185. package/esm/src/utils/asset-manager.js +50 -0
  186. package/esm/src/utils/class.utils.d.ts.map +1 -0
  187. package/esm/src/utils/class.utils.js +28 -0
  188. package/esm/src/utils/common.utils.d.ts.map +1 -0
  189. package/esm/src/utils/common.utils.test.d.ts +2 -0
  190. package/esm/src/utils/common.utils.test.d.ts.map +1 -0
  191. package/esm/src/utils/common.utils.test.js +18 -0
  192. package/esm/src/utils/condition.d.ts.map +1 -0
  193. package/esm/src/utils/condition.test.d.ts +2 -0
  194. package/esm/src/utils/condition.test.d.ts.map +1 -0
  195. package/esm/src/utils/condition.test.js +31 -0
  196. package/esm/src/utils/endpoint.utils.d.ts +3 -0
  197. package/esm/src/utils/endpoint.utils.d.ts.map +1 -0
  198. package/esm/src/utils/endpoint.utils.test.d.ts +2 -0
  199. package/esm/src/utils/endpoint.utils.test.d.ts.map +1 -0
  200. package/esm/src/utils/endpoint.utils.test.js +31 -0
  201. package/esm/src/utils/error.utils.d.ts.map +1 -0
  202. package/esm/src/utils/factory.d.ts +21 -0
  203. package/esm/src/utils/factory.d.ts.map +1 -0
  204. package/esm/src/utils/factory.test.d.ts +2 -0
  205. package/esm/src/utils/factory.test.d.ts.map +1 -0
  206. package/esm/src/utils/factory.test.js +34 -0
  207. package/esm/src/utils/file-system.utils.d.ts.map +1 -0
  208. package/esm/src/utils/generator.utils.d.ts.map +1 -0
  209. package/esm/src/utils/generator.utils.test.d.ts +2 -0
  210. package/esm/src/utils/generator.utils.test.d.ts.map +1 -0
  211. package/esm/src/utils/generator.utils.test.js +13 -0
  212. package/esm/src/utils/object.utils.d.ts.map +1 -0
  213. package/esm/src/utils/object.utils.js +36 -0
  214. package/esm/src/utils/object.utils.test.d.ts +2 -0
  215. package/esm/src/utils/object.utils.test.d.ts.map +1 -0
  216. package/esm/src/utils/object.utils.test.js +29 -0
  217. package/esm/src/utils/schema.utils.d.ts +11 -0
  218. package/esm/src/utils/schema.utils.d.ts.map +1 -0
  219. package/esm/src/utils/schema.utils.test.d.ts +2 -0
  220. package/esm/src/utils/schema.utils.test.d.ts.map +1 -0
  221. package/esm/src/utils/schema.utils.test.js +78 -0
  222. package/esm/src/utils/source-builder.d.ts +234 -0
  223. package/esm/src/utils/source-builder.d.ts.map +1 -0
  224. package/esm/src/utils/source-builder.js +447 -0
  225. package/esm/src/utils/source-builder.test.d.ts +2 -0
  226. package/esm/src/utils/source-builder.test.d.ts.map +1 -0
  227. package/esm/src/utils/source-builder.test.js +506 -0
  228. package/esm/src/utils/string-builder/options.d.ts.map +1 -0
  229. package/esm/src/utils/string-builder/string-builder.d.ts +73 -0
  230. package/esm/src/utils/string-builder/string-builder.d.ts.map +1 -0
  231. package/esm/src/utils/string-builder/string-builder.js +149 -0
  232. package/esm/src/utils/string-builder/string-builder.test.d.ts +2 -0
  233. package/esm/src/utils/string-builder/string-builder.test.d.ts.map +1 -0
  234. package/esm/src/utils/string-builder/string-builder.test.js +164 -0
  235. package/esm/src/utils/string-builder/utils.d.ts.map +1 -0
  236. package/esm/src/utils/string.utils.d.ts.map +1 -0
  237. package/esm/src/utils/string.utils.test.d.ts +2 -0
  238. package/esm/src/utils/string.utils.test.d.ts.map +1 -0
  239. package/esm/src/utils/string.utils.test.js +528 -0
  240. package/esm/src/utils/string.utils.types.d.ts.map +1 -0
  241. package/esm/src/utils/type.utils.d.ts.map +1 -0
  242. package/esm/tests/openapi.test.d.ts +2 -0
  243. package/esm/tests/openapi.test.d.ts.map +1 -0
  244. package/esm/tests/openapi.test.js +33 -0
  245. package/esm/tests/schema-factory.d.ts +42 -0
  246. package/esm/tests/schema-factory.d.ts.map +1 -0
  247. package/esm/tests/schema-factory.js +138 -0
  248. package/package.json +5 -5
  249. package/script/_dnt.shims.d.ts +1 -1
  250. package/script/_dnt.test_polyfills.d.ts +18 -0
  251. package/script/_dnt.test_polyfills.d.ts.map +1 -0
  252. package/script/_dnt.test_polyfills.js +18 -0
  253. package/script/_dnt.test_shims.d.ts +14 -0
  254. package/script/_dnt.test_shims.d.ts.map +1 -0
  255. package/script/_dnt.test_shims.js +79 -0
  256. package/script/deps/jsr.io/@std/assert/1.0.6/assertion_error.d.ts +26 -0
  257. package/script/deps/jsr.io/@std/assert/1.0.6/assertion_error.d.ts.map +1 -0
  258. package/script/deps/jsr.io/@std/assert/1.0.6/assertion_error.js +34 -0
  259. package/script/deps/jsr.io/@std/assert/1.0.6/equal.d.ts +17 -0
  260. package/script/deps/jsr.io/@std/assert/1.0.6/equal.d.ts.map +1 -0
  261. package/script/deps/jsr.io/@std/assert/1.0.6/equal.js +139 -0
  262. package/script/deps/jsr.io/@std/assert/1.0.6/equals.d.ts +22 -0
  263. package/script/deps/jsr.io/@std/assert/1.0.6/equals.d.ts.map +1 -0
  264. package/script/deps/jsr.io/@std/assert/1.0.6/equals.js +48 -0
  265. package/script/deps/jsr.io/@std/assert/1.0.6/false.d.ts +18 -0
  266. package/script/deps/jsr.io/@std/assert/1.0.6/false.d.ts.map +1 -0
  267. package/script/deps/jsr.io/@std/assert/1.0.6/false.js +25 -0
  268. package/script/deps/jsr.io/@std/assert/1.0.6/instance_of.d.ts +23 -0
  269. package/script/deps/jsr.io/@std/assert/1.0.6/instance_of.d.ts.map +1 -0
  270. package/script/deps/jsr.io/@std/assert/1.0.6/instance_of.js +56 -0
  271. package/script/deps/jsr.io/@std/assert/1.0.6/is_error.d.ts +25 -0
  272. package/script/deps/jsr.io/@std/assert/1.0.6/is_error.d.ts.map +1 -0
  273. package/script/deps/jsr.io/@std/assert/1.0.6/is_error.js +57 -0
  274. package/script/deps/jsr.io/@std/assert/1.0.6/match.d.ts +18 -0
  275. package/script/deps/jsr.io/@std/assert/1.0.6/match.d.ts.map +1 -0
  276. package/script/deps/jsr.io/@std/assert/1.0.6/match.js +29 -0
  277. package/script/deps/jsr.io/@std/assert/1.0.6/not_instance_of.d.ts +20 -0
  278. package/script/deps/jsr.io/@std/assert/1.0.6/not_instance_of.d.ts.map +1 -0
  279. package/script/deps/jsr.io/@std/assert/1.0.6/not_instance_of.js +32 -0
  280. package/script/deps/jsr.io/@std/assert/1.0.6/not_match.d.ts +18 -0
  281. package/script/deps/jsr.io/@std/assert/1.0.6/not_match.d.ts.map +1 -0
  282. package/script/deps/jsr.io/@std/assert/1.0.6/not_match.js +29 -0
  283. package/script/deps/jsr.io/@std/assert/1.0.6/not_strict_equals.d.ts +23 -0
  284. package/script/deps/jsr.io/@std/assert/1.0.6/not_strict_equals.d.ts.map +1 -0
  285. package/script/deps/jsr.io/@std/assert/1.0.6/not_strict_equals.js +35 -0
  286. package/script/deps/jsr.io/@std/assert/1.0.6/object_match.d.ts +28 -0
  287. package/script/deps/jsr.io/@std/assert/1.0.6/object_match.d.ts.map +1 -0
  288. package/script/deps/jsr.io/@std/assert/1.0.6/object_match.js +162 -0
  289. package/script/deps/jsr.io/@std/assert/1.0.6/strict_equals.d.ts +24 -0
  290. package/script/deps/jsr.io/@std/assert/1.0.6/strict_equals.d.ts.map +1 -0
  291. package/script/deps/jsr.io/@std/assert/1.0.6/strict_equals.js +60 -0
  292. package/script/deps/jsr.io/@std/expect/1.0.5/_assert_equals.d.ts +20 -0
  293. package/script/deps/jsr.io/@std/expect/1.0.5/_assert_equals.d.ts.map +1 -0
  294. package/script/deps/jsr.io/@std/expect/1.0.5/_assert_equals.js +32 -0
  295. package/script/deps/jsr.io/@std/expect/1.0.5/_assert_not_equals.d.ts +17 -0
  296. package/script/deps/jsr.io/@std/expect/1.0.5/_assert_not_equals.d.ts.map +1 -0
  297. package/script/deps/jsr.io/@std/expect/1.0.5/_assert_not_equals.js +29 -0
  298. package/script/deps/jsr.io/@std/expect/1.0.5/_assertion.d.ts +3 -0
  299. package/script/deps/jsr.io/@std/expect/1.0.5/_assertion.d.ts.map +1 -0
  300. package/script/deps/jsr.io/@std/expect/1.0.5/_assertion.js +13 -0
  301. package/script/deps/jsr.io/@std/expect/1.0.5/_asymmetric_matchers.d.ts +36 -0
  302. package/script/deps/jsr.io/@std/expect/1.0.5/_asymmetric_matchers.d.ts.map +1 -0
  303. package/script/deps/jsr.io/@std/expect/1.0.5/_asymmetric_matchers.js +140 -0
  304. package/script/deps/jsr.io/@std/expect/1.0.5/_build_message.d.ts +6 -0
  305. package/script/deps/jsr.io/@std/expect/1.0.5/_build_message.d.ts.map +1 -0
  306. package/script/deps/jsr.io/@std/expect/1.0.5/_build_message.js +33 -0
  307. package/script/deps/jsr.io/@std/expect/1.0.5/_custom_equality_tester.d.ts +4 -0
  308. package/script/deps/jsr.io/@std/expect/1.0.5/_custom_equality_tester.d.ts.map +1 -0
  309. package/script/deps/jsr.io/@std/expect/1.0.5/_custom_equality_tester.js +15 -0
  310. package/script/deps/jsr.io/@std/expect/1.0.5/_equal.d.ts +9 -0
  311. package/script/deps/jsr.io/@std/expect/1.0.5/_equal.d.ts.map +1 -0
  312. package/script/deps/jsr.io/@std/expect/1.0.5/_equal.js +194 -0
  313. package/script/deps/jsr.io/@std/expect/1.0.5/_extend.d.ts +4 -0
  314. package/script/deps/jsr.io/@std/expect/1.0.5/_extend.d.ts.map +1 -0
  315. package/script/deps/jsr.io/@std/expect/1.0.5/_extend.js +15 -0
  316. package/script/deps/jsr.io/@std/expect/1.0.5/_inspect_args.d.ts +3 -0
  317. package/script/deps/jsr.io/@std/expect/1.0.5/_inspect_args.d.ts.map +1 -0
  318. package/script/deps/jsr.io/@std/expect/1.0.5/_inspect_args.js +17 -0
  319. package/script/deps/jsr.io/@std/expect/1.0.5/_matchers.d.ts +34 -0
  320. package/script/deps/jsr.io/@std/expect/1.0.5/_matchers.d.ts.map +1 -0
  321. package/script/deps/jsr.io/@std/expect/1.0.5/_matchers.js +598 -0
  322. package/script/deps/jsr.io/@std/expect/1.0.5/_mock_util.d.ts +11 -0
  323. package/script/deps/jsr.io/@std/expect/1.0.5/_mock_util.d.ts.map +1 -0
  324. package/script/deps/jsr.io/@std/expect/1.0.5/_mock_util.js +14 -0
  325. package/script/deps/jsr.io/@std/expect/1.0.5/_types.d.ts +838 -0
  326. package/script/deps/jsr.io/@std/expect/1.0.5/_types.d.ts.map +1 -0
  327. package/script/deps/jsr.io/@std/expect/1.0.5/_types.js +4 -0
  328. package/script/deps/jsr.io/@std/expect/1.0.5/_utils.d.ts +8 -0
  329. package/script/deps/jsr.io/@std/expect/1.0.5/_utils.d.ts.map +1 -0
  330. package/script/deps/jsr.io/@std/expect/1.0.5/_utils.js +166 -0
  331. package/script/deps/jsr.io/@std/expect/1.0.5/expect.d.ts +51 -0
  332. package/script/deps/jsr.io/@std/expect/1.0.5/expect.d.ts.map +1 -0
  333. package/script/deps/jsr.io/@std/expect/1.0.5/expect.js +429 -0
  334. package/script/deps/jsr.io/@std/expect/1.0.5/fn.d.ts +29 -0
  335. package/script/deps/jsr.io/@std/expect/1.0.5/fn.d.ts.map +1 -0
  336. package/script/deps/jsr.io/@std/expect/1.0.5/fn.js +88 -0
  337. package/script/deps/jsr.io/@std/expect/1.0.5/mod.d.ts +85 -0
  338. package/script/deps/jsr.io/@std/expect/1.0.5/mod.d.ts.map +1 -0
  339. package/script/deps/jsr.io/@std/expect/1.0.5/mod.js +90 -0
  340. package/script/deps/jsr.io/@std/internal/1.0.4/assertion_state.d.ts +75 -0
  341. package/script/deps/jsr.io/@std/internal/1.0.4/assertion_state.d.ts.map +1 -0
  342. package/script/deps/jsr.io/@std/internal/1.0.4/assertion_state.js +106 -0
  343. package/script/deps/jsr.io/@std/internal/1.0.4/build_message.d.ts +82 -0
  344. package/script/deps/jsr.io/@std/internal/1.0.4/build_message.d.ts.map +1 -0
  345. package/script/deps/jsr.io/@std/internal/1.0.4/build_message.js +116 -0
  346. package/script/deps/jsr.io/@std/internal/1.0.4/diff.d.ts +140 -0
  347. package/script/deps/jsr.io/@std/internal/1.0.4/diff.d.ts.map +1 -0
  348. package/script/deps/jsr.io/@std/internal/1.0.4/diff.js +284 -0
  349. package/script/deps/jsr.io/@std/internal/1.0.4/diff_str.d.ts +99 -0
  350. package/script/deps/jsr.io/@std/internal/1.0.4/diff_str.d.ts.map +1 -0
  351. package/script/deps/jsr.io/@std/internal/1.0.4/diff_str.js +186 -0
  352. package/script/deps/jsr.io/@std/internal/1.0.4/format.d.ts +2 -0
  353. package/script/deps/jsr.io/@std/internal/1.0.4/format.d.ts.map +1 -0
  354. package/script/deps/jsr.io/@std/internal/1.0.4/format.js +41 -0
  355. package/script/deps/jsr.io/@std/internal/1.0.4/styles.d.ts +159 -0
  356. package/script/deps/jsr.io/@std/internal/1.0.4/styles.d.ts.map +1 -0
  357. package/script/deps/jsr.io/@std/internal/1.0.4/styles.js +220 -0
  358. package/script/deps/jsr.io/@std/internal/1.0.4/types.d.ts +16 -0
  359. package/script/deps/jsr.io/@std/internal/1.0.4/types.d.ts.map +1 -0
  360. package/script/deps/jsr.io/@std/internal/1.0.4/types.js +3 -0
  361. package/script/deps/jsr.io/@std/testing/1.0.3/_test_suite.d.ts +74 -0
  362. package/script/deps/jsr.io/@std/testing/1.0.3/_test_suite.d.ts.map +1 -0
  363. package/script/deps/jsr.io/@std/testing/1.0.3/_test_suite.js +345 -0
  364. package/script/deps/jsr.io/@std/testing/1.0.3/bdd.d.ts +731 -0
  365. package/script/deps/jsr.io/@std/testing/1.0.3/bdd.d.ts.map +1 -0
  366. package/script/deps/jsr.io/@std/testing/1.0.3/bdd.js +587 -0
  367. package/script/mod.d.ts +30 -0
  368. package/script/mod.d.ts.map +1 -0
  369. package/script/mod.js +34 -0
  370. package/script/src/ast/node.d.ts +17 -0
  371. package/script/src/ast/node.d.ts.map +1 -0
  372. package/script/src/codegen/config.d.ts +16 -0
  373. package/script/src/codegen/config.d.ts.map +1 -0
  374. package/script/src/codegen/endpoints-generator.d.ts +18 -0
  375. package/script/src/codegen/endpoints-generator.d.ts.map +1 -0
  376. package/script/src/codegen/generator.d.ts +39 -0
  377. package/script/src/codegen/generator.d.ts.map +1 -0
  378. package/script/src/codegen/generator.js +123 -0
  379. package/script/src/codegen/internal-utils.d.ts.map +1 -0
  380. package/script/src/codegen/internal-utils.js +9 -0
  381. package/script/src/codegen/schemas-generator.d.ts +19 -0
  382. package/script/src/codegen/schemas-generator.d.ts.map +1 -0
  383. package/script/src/codegen/schemas-generator.js +49 -0
  384. package/script/src/codegen/services-generator.d.ts +18 -0
  385. package/script/src/codegen/services-generator.d.ts.map +1 -0
  386. package/script/src/codegen/types.d.ts +19 -0
  387. package/script/src/codegen/types.d.ts.map +1 -0
  388. package/script/src/collect/collector.d.ts +5 -0
  389. package/script/src/collect/collector.d.ts.map +1 -0
  390. package/script/src/collect/helpers.d.ts +5 -0
  391. package/script/src/collect/helpers.d.ts.map +1 -0
  392. package/script/src/collect/helpers.test.d.ts +2 -0
  393. package/script/src/collect/helpers.test.d.ts.map +1 -0
  394. package/script/src/collect/helpers.test.js +79 -0
  395. package/script/src/collect/types.d.ts +14 -0
  396. package/script/src/collect/types.d.ts.map +1 -0
  397. package/script/src/internal-utils.d.ts.map +1 -0
  398. package/script/src/parse/deref-proxy.d.ts.map +1 -0
  399. package/script/src/parse/deref-proxy.js +65 -0
  400. package/script/src/parse/openapi-types.d.ts.map +1 -0
  401. package/script/src/parse/parser.d.ts +19 -0
  402. package/script/src/parse/parser.d.ts.map +1 -0
  403. package/script/src/parse/parser.js +200 -0
  404. package/script/src/parse/types.d.ts.map +1 -0
  405. package/script/src/transform/api-types.d.ts +196 -0
  406. package/script/src/transform/api-types.d.ts.map +1 -0
  407. package/script/src/transform/helpers.d.ts +52 -0
  408. package/script/src/transform/helpers.d.ts.map +1 -0
  409. package/script/src/transform/helpers.js +173 -0
  410. package/script/src/transform/helpers.test.d.ts +2 -0
  411. package/script/src/transform/helpers.test.d.ts.map +1 -0
  412. package/script/src/transform/helpers.test.js +267 -0
  413. package/script/src/transform/transform-document.d.ts +5 -0
  414. package/script/src/transform/transform-document.d.ts.map +1 -0
  415. package/script/src/transform/transform-endpoint.d.ts +5 -0
  416. package/script/src/transform/transform-endpoint.d.ts.map +1 -0
  417. package/script/src/transform/transform-endpoint.js +272 -0
  418. package/script/src/transform/transform-schema.d.ts +6 -0
  419. package/script/src/transform/transform-schema.d.ts.map +1 -0
  420. package/script/src/transform/transform-schema.js +185 -0
  421. package/script/src/transform/transformer.d.ts +5 -0
  422. package/script/src/transform/transformer.d.ts.map +1 -0
  423. package/script/src/transform/types.d.ts.map +1 -0
  424. package/script/src/utils/action-provider.d.ts.map +1 -0
  425. package/script/src/utils/action-provider.js +33 -0
  426. package/script/src/utils/action-provider.test.d.ts +2 -0
  427. package/script/src/utils/action-provider.test.d.ts.map +1 -0
  428. package/script/src/utils/action-provider.test.js +30 -0
  429. package/script/src/utils/array.utils.d.ts.map +1 -0
  430. package/script/src/utils/asset-manager.d.ts.map +1 -0
  431. package/script/src/utils/asset-manager.js +55 -0
  432. package/script/src/utils/class.utils.d.ts.map +1 -0
  433. package/script/src/utils/class.utils.js +33 -0
  434. package/script/src/utils/common.utils.d.ts.map +1 -0
  435. package/script/src/utils/common.utils.test.d.ts +2 -0
  436. package/script/src/utils/common.utils.test.d.ts.map +1 -0
  437. package/script/src/utils/common.utils.test.js +20 -0
  438. package/script/src/utils/condition.d.ts.map +1 -0
  439. package/script/src/utils/condition.test.d.ts +2 -0
  440. package/script/src/utils/condition.test.d.ts.map +1 -0
  441. package/script/src/utils/condition.test.js +33 -0
  442. package/script/src/utils/endpoint.utils.d.ts +3 -0
  443. package/script/src/utils/endpoint.utils.d.ts.map +1 -0
  444. package/script/src/utils/endpoint.utils.test.d.ts +2 -0
  445. package/script/src/utils/endpoint.utils.test.d.ts.map +1 -0
  446. package/script/src/utils/endpoint.utils.test.js +33 -0
  447. package/script/src/utils/error.utils.d.ts.map +1 -0
  448. package/script/src/utils/factory.d.ts +21 -0
  449. package/script/src/utils/factory.d.ts.map +1 -0
  450. package/script/src/utils/factory.test.d.ts +2 -0
  451. package/script/src/utils/factory.test.d.ts.map +1 -0
  452. package/script/src/utils/factory.test.js +36 -0
  453. package/script/src/utils/file-system.utils.d.ts.map +1 -0
  454. package/script/src/utils/generator.utils.d.ts.map +1 -0
  455. package/script/src/utils/generator.utils.test.d.ts +2 -0
  456. package/script/src/utils/generator.utils.test.d.ts.map +1 -0
  457. package/script/src/utils/generator.utils.test.js +15 -0
  458. package/script/src/utils/object.utils.d.ts.map +1 -0
  459. package/script/src/utils/object.utils.js +40 -0
  460. package/script/src/utils/object.utils.test.d.ts +2 -0
  461. package/script/src/utils/object.utils.test.d.ts.map +1 -0
  462. package/script/src/utils/object.utils.test.js +31 -0
  463. package/script/src/utils/schema.utils.d.ts +11 -0
  464. package/script/src/utils/schema.utils.d.ts.map +1 -0
  465. package/script/src/utils/schema.utils.test.d.ts +2 -0
  466. package/script/src/utils/schema.utils.test.d.ts.map +1 -0
  467. package/script/src/utils/schema.utils.test.js +80 -0
  468. package/script/src/utils/source-builder.d.ts +234 -0
  469. package/script/src/utils/source-builder.d.ts.map +1 -0
  470. package/script/src/utils/source-builder.js +451 -0
  471. package/script/src/utils/source-builder.test.d.ts +2 -0
  472. package/script/src/utils/source-builder.test.d.ts.map +1 -0
  473. package/script/src/utils/source-builder.test.js +508 -0
  474. package/script/src/utils/string-builder/options.d.ts.map +1 -0
  475. package/script/src/utils/string-builder/string-builder.d.ts +73 -0
  476. package/script/src/utils/string-builder/string-builder.d.ts.map +1 -0
  477. package/script/src/utils/string-builder/string-builder.js +153 -0
  478. package/script/src/utils/string-builder/string-builder.test.d.ts +2 -0
  479. package/script/src/utils/string-builder/string-builder.test.d.ts.map +1 -0
  480. package/script/src/utils/string-builder/string-builder.test.js +166 -0
  481. package/script/src/utils/string-builder/utils.d.ts.map +1 -0
  482. package/script/src/utils/string.utils.d.ts.map +1 -0
  483. package/script/src/utils/string.utils.test.d.ts +2 -0
  484. package/script/src/utils/string.utils.test.d.ts.map +1 -0
  485. package/script/src/utils/string.utils.test.js +530 -0
  486. package/script/src/utils/string.utils.types.d.ts.map +1 -0
  487. package/script/src/utils/type.utils.d.ts.map +1 -0
  488. package/script/tests/openapi.test.d.ts +2 -0
  489. package/script/tests/openapi.test.d.ts.map +1 -0
  490. package/script/tests/openapi.test.js +35 -0
  491. package/script/tests/schema-factory.d.ts +42 -0
  492. package/script/tests/schema-factory.d.ts.map +1 -0
  493. package/script/tests/schema-factory.js +162 -0
  494. package/src/_dnt.shims.ts +69 -0
  495. package/src/_dnt.test_polyfills.ts +43 -0
  496. package/src/_dnt.test_shims.ts +72 -0
  497. package/src/deps/jsr.io/@std/assert/1.0.6/assertion_error.ts +31 -0
  498. package/src/deps/jsr.io/@std/assert/1.0.6/equal.ts +152 -0
  499. package/src/deps/jsr.io/@std/assert/1.0.6/equals.ts +52 -0
  500. package/src/deps/jsr.io/@std/assert/1.0.6/false.ts +26 -0
  501. package/src/deps/jsr.io/@std/assert/1.0.6/instance_of.ts +64 -0
  502. package/src/deps/jsr.io/@std/assert/1.0.6/is_error.ts +65 -0
  503. package/src/deps/jsr.io/@std/assert/1.0.6/match.ts +30 -0
  504. package/src/deps/jsr.io/@std/assert/1.0.6/not_instance_of.ts +33 -0
  505. package/src/deps/jsr.io/@std/assert/1.0.6/not_match.ts +30 -0
  506. package/src/deps/jsr.io/@std/assert/1.0.6/not_strict_equals.ts +42 -0
  507. package/src/deps/jsr.io/@std/assert/1.0.6/object_match.ts +202 -0
  508. package/src/deps/jsr.io/@std/assert/1.0.6/strict_equals.ts +67 -0
  509. package/src/deps/jsr.io/@std/expect/1.0.5/_assert_equals.ts +38 -0
  510. package/src/deps/jsr.io/@std/expect/1.0.5/_assert_not_equals.ts +35 -0
  511. package/src/deps/jsr.io/@std/expect/1.0.5/_assertion.ts +13 -0
  512. package/src/deps/jsr.io/@std/expect/1.0.5/_asymmetric_matchers.ts +147 -0
  513. package/src/deps/jsr.io/@std/expect/1.0.5/_build_message.ts +51 -0
  514. package/src/deps/jsr.io/@std/expect/1.0.5/_custom_equality_tester.ts +19 -0
  515. package/src/deps/jsr.io/@std/expect/1.0.5/_equal.ts +229 -0
  516. package/src/deps/jsr.io/@std/expect/1.0.5/_extend.ts +16 -0
  517. package/src/deps/jsr.io/@std/expect/1.0.5/_inspect_args.ts +15 -0
  518. package/src/deps/jsr.io/@std/expect/1.0.5/_matchers.ts +828 -0
  519. package/src/deps/jsr.io/@std/expect/1.0.5/_mock_util.ts +22 -0
  520. package/src/deps/jsr.io/@std/expect/1.0.5/_types.ts +917 -0
  521. package/src/deps/jsr.io/@std/expect/1.0.5/_utils.ts +201 -0
  522. package/src/deps/jsr.io/@std/expect/1.0.5/expect.ts +511 -0
  523. package/src/deps/jsr.io/@std/expect/1.0.5/fn.ts +91 -0
  524. package/src/deps/jsr.io/@std/expect/1.0.5/mod.ts +88 -0
  525. package/src/deps/jsr.io/@std/internal/1.0.4/assertion_state.ts +111 -0
  526. package/src/deps/jsr.io/@std/internal/1.0.4/build_message.ts +134 -0
  527. package/src/deps/jsr.io/@std/internal/1.0.4/diff.ts +317 -0
  528. package/src/deps/jsr.io/@std/internal/1.0.4/diff_str.ts +204 -0
  529. package/src/deps/jsr.io/@std/internal/1.0.4/format.ts +39 -0
  530. package/src/deps/jsr.io/@std/internal/1.0.4/styles.ts +233 -0
  531. package/src/deps/jsr.io/@std/internal/1.0.4/types.ts +18 -0
  532. package/src/deps/jsr.io/@std/testing/1.0.3/_test_suite.ts +389 -0
  533. package/src/deps/jsr.io/@std/testing/1.0.3/bdd.ts +1202 -0
  534. package/src/mod.ts +33 -0
  535. package/src/src/ast/node.ts +46 -0
  536. package/src/src/codegen/config.ts +28 -0
  537. package/src/src/codegen/endpoints-generator.ts +72 -0
  538. package/src/src/codegen/generator.ts +181 -0
  539. package/src/src/codegen/internal-utils.ts +6 -0
  540. package/src/src/codegen/schemas-generator.ts +87 -0
  541. package/src/src/codegen/services-generator.ts +77 -0
  542. package/src/src/codegen/types.ts +37 -0
  543. package/src/src/collect/collector.ts +142 -0
  544. package/src/src/collect/helpers.test.ts +91 -0
  545. package/src/src/collect/helpers.ts +36 -0
  546. package/src/src/collect/types.ts +21 -0
  547. package/src/src/internal-utils.ts +5 -0
  548. package/src/src/parse/deref-proxy.ts +64 -0
  549. package/src/src/parse/openapi-types.ts +949 -0
  550. package/src/src/parse/parser.ts +220 -0
  551. package/src/src/parse/types.ts +27 -0
  552. package/src/src/transform/api-types.ts +243 -0
  553. package/src/src/transform/helpers.test.ts +316 -0
  554. package/src/src/transform/helpers.ts +211 -0
  555. package/src/src/transform/transform-document.ts +35 -0
  556. package/src/src/transform/transform-endpoint.ts +331 -0
  557. package/src/src/transform/transform-schema.ts +217 -0
  558. package/src/src/transform/transformer.ts +52 -0
  559. package/src/src/transform/types.ts +52 -0
  560. package/src/src/utils/action-provider.test.ts +32 -0
  561. package/src/src/utils/action-provider.ts +58 -0
  562. package/src/src/utils/array.utils.ts +7 -0
  563. package/src/src/utils/asset-manager.ts +51 -0
  564. package/src/src/utils/class.utils.ts +40 -0
  565. package/src/src/utils/common.utils.test.ts +22 -0
  566. package/src/src/utils/common.utils.ts +86 -0
  567. package/src/src/utils/condition.test.ts +36 -0
  568. package/src/src/utils/condition.ts +7 -0
  569. package/src/src/utils/endpoint.utils.test.ts +36 -0
  570. package/src/src/utils/endpoint.utils.ts +10 -0
  571. package/src/src/utils/error.utils.ts +3 -0
  572. package/src/src/utils/factory.test.ts +31 -0
  573. package/src/src/utils/factory.ts +42 -0
  574. package/src/src/utils/file-system.utils.ts +48 -0
  575. package/src/src/utils/generator.utils.test.ts +16 -0
  576. package/src/src/utils/generator.utils.ts +6 -0
  577. package/src/src/utils/object.utils.test.ts +33 -0
  578. package/src/src/utils/object.utils.ts +32 -0
  579. package/src/src/utils/schema.utils.test.ts +87 -0
  580. package/src/src/utils/schema.utils.ts +142 -0
  581. package/src/src/utils/source-builder.test.ts +658 -0
  582. package/src/src/utils/source-builder.ts +589 -0
  583. package/src/src/utils/string-builder/options.ts +19 -0
  584. package/src/src/utils/string-builder/string-builder.test.ts +189 -0
  585. package/src/src/utils/string-builder/string-builder.ts +165 -0
  586. package/src/src/utils/string-builder/utils.ts +69 -0
  587. package/src/src/utils/string.utils.test.ts +691 -0
  588. package/src/src/utils/string.utils.ts +369 -0
  589. package/src/src/utils/string.utils.types.ts +179 -0
  590. package/src/src/utils/type.utils.ts +93 -0
  591. package/src/tests/openapi.test.ts +50 -0
  592. package/src/tests/schema-factory.ts +185 -0
  593. package/test_runner.js +221 -0
  594. package/esm/index.d.ts +0 -6
  595. package/esm/index.d.ts.map +0 -1
  596. package/esm/index.js +0 -5
  597. package/esm/lib/ast/index.d.ts +0 -2
  598. package/esm/lib/ast/index.d.ts.map +0 -1
  599. package/esm/lib/ast/index.js +0 -1
  600. package/esm/lib/ast/node.d.ts +0 -15
  601. package/esm/lib/ast/node.d.ts.map +0 -1
  602. package/esm/lib/codegen/config.d.ts +0 -16
  603. package/esm/lib/codegen/config.d.ts.map +0 -1
  604. package/esm/lib/codegen/endpoints-generator.d.ts +0 -18
  605. package/esm/lib/codegen/endpoints-generator.d.ts.map +0 -1
  606. package/esm/lib/codegen/generator.d.ts +0 -39
  607. package/esm/lib/codegen/generator.d.ts.map +0 -1
  608. package/esm/lib/codegen/generator.js +0 -115
  609. package/esm/lib/codegen/index.d.ts +0 -7
  610. package/esm/lib/codegen/index.d.ts.map +0 -1
  611. package/esm/lib/codegen/index.js +0 -6
  612. package/esm/lib/codegen/internal-utils.d.ts.map +0 -1
  613. package/esm/lib/codegen/internal-utils.js +0 -5
  614. package/esm/lib/codegen/schemas-generator.d.ts +0 -19
  615. package/esm/lib/codegen/schemas-generator.d.ts.map +0 -1
  616. package/esm/lib/codegen/schemas-generator.js +0 -45
  617. package/esm/lib/codegen/services-generator.d.ts +0 -18
  618. package/esm/lib/codegen/services-generator.d.ts.map +0 -1
  619. package/esm/lib/codegen/types.d.ts +0 -19
  620. package/esm/lib/codegen/types.d.ts.map +0 -1
  621. package/esm/lib/collect/collector.d.ts +0 -4
  622. package/esm/lib/collect/collector.d.ts.map +0 -1
  623. package/esm/lib/collect/helpers.d.ts +0 -5
  624. package/esm/lib/collect/helpers.d.ts.map +0 -1
  625. package/esm/lib/collect/index.d.ts +0 -4
  626. package/esm/lib/collect/index.d.ts.map +0 -1
  627. package/esm/lib/collect/index.js +0 -3
  628. package/esm/lib/collect/types.d.ts +0 -13
  629. package/esm/lib/collect/types.d.ts.map +0 -1
  630. package/esm/lib/internal-utils.d.ts.map +0 -1
  631. package/esm/lib/parse/deref-proxy.d.ts.map +0 -1
  632. package/esm/lib/parse/deref-proxy.js +0 -62
  633. package/esm/lib/parse/index.d.ts +0 -4
  634. package/esm/lib/parse/index.d.ts.map +0 -1
  635. package/esm/lib/parse/index.js +0 -3
  636. package/esm/lib/parse/openapi-types.d.ts.map +0 -1
  637. package/esm/lib/parse/parser.d.ts +0 -19
  638. package/esm/lib/parse/parser.d.ts.map +0 -1
  639. package/esm/lib/parse/parser.js +0 -190
  640. package/esm/lib/parse/types.d.ts.map +0 -1
  641. package/esm/lib/transform/api-types.d.ts +0 -195
  642. package/esm/lib/transform/api-types.d.ts.map +0 -1
  643. package/esm/lib/transform/helpers.d.ts +0 -51
  644. package/esm/lib/transform/helpers.d.ts.map +0 -1
  645. package/esm/lib/transform/helpers.js +0 -158
  646. package/esm/lib/transform/index.d.ts +0 -3
  647. package/esm/lib/transform/index.d.ts.map +0 -1
  648. package/esm/lib/transform/index.js +0 -2
  649. package/esm/lib/transform/transform-document.d.ts +0 -4
  650. package/esm/lib/transform/transform-document.d.ts.map +0 -1
  651. package/esm/lib/transform/transform-endpoint.d.ts +0 -5
  652. package/esm/lib/transform/transform-endpoint.d.ts.map +0 -1
  653. package/esm/lib/transform/transform-endpoint.js +0 -275
  654. package/esm/lib/transform/transform-schema.d.ts +0 -5
  655. package/esm/lib/transform/transform-schema.d.ts.map +0 -1
  656. package/esm/lib/transform/transform-schema.js +0 -182
  657. package/esm/lib/transform/transformer.d.ts +0 -5
  658. package/esm/lib/transform/transformer.d.ts.map +0 -1
  659. package/esm/lib/transform/types.d.ts.map +0 -1
  660. package/esm/lib/utils/action-provider.d.ts.map +0 -1
  661. package/esm/lib/utils/action-provider.js +0 -35
  662. package/esm/lib/utils/array.utils.d.ts.map +0 -1
  663. package/esm/lib/utils/asset-manager.d.ts.map +0 -1
  664. package/esm/lib/utils/asset-manager.js +0 -49
  665. package/esm/lib/utils/class.utils.d.ts.map +0 -1
  666. package/esm/lib/utils/class.utils.js +0 -27
  667. package/esm/lib/utils/common.utils.d.ts.map +0 -1
  668. package/esm/lib/utils/condition.d.ts.map +0 -1
  669. package/esm/lib/utils/endpoint.utils.d.ts +0 -3
  670. package/esm/lib/utils/endpoint.utils.d.ts.map +0 -1
  671. package/esm/lib/utils/error.utils.d.ts.map +0 -1
  672. package/esm/lib/utils/factory.d.ts +0 -21
  673. package/esm/lib/utils/factory.d.ts.map +0 -1
  674. package/esm/lib/utils/file-system.utils.d.ts.map +0 -1
  675. package/esm/lib/utils/generator.utils.d.ts.map +0 -1
  676. package/esm/lib/utils/index.d.ts +0 -16
  677. package/esm/lib/utils/index.d.ts.map +0 -1
  678. package/esm/lib/utils/index.js +0 -15
  679. package/esm/lib/utils/object.utils.d.ts.map +0 -1
  680. package/esm/lib/utils/object.utils.js +0 -35
  681. package/esm/lib/utils/schema.utils.d.ts +0 -11
  682. package/esm/lib/utils/schema.utils.d.ts.map +0 -1
  683. package/esm/lib/utils/source-builder.d.ts +0 -233
  684. package/esm/lib/utils/source-builder.d.ts.map +0 -1
  685. package/esm/lib/utils/source-builder.js +0 -446
  686. package/esm/lib/utils/string-builder/index.d.ts +0 -4
  687. package/esm/lib/utils/string-builder/index.d.ts.map +0 -1
  688. package/esm/lib/utils/string-builder/index.js +0 -3
  689. package/esm/lib/utils/string-builder/options.d.ts.map +0 -1
  690. package/esm/lib/utils/string-builder/string-builder.d.ts +0 -73
  691. package/esm/lib/utils/string-builder/string-builder.d.ts.map +0 -1
  692. package/esm/lib/utils/string-builder/string-builder.js +0 -149
  693. package/esm/lib/utils/string-builder/utils.d.ts.map +0 -1
  694. package/esm/lib/utils/string.utils.d.ts.map +0 -1
  695. package/esm/lib/utils/string.utils.types.d.ts.map +0 -1
  696. package/esm/lib/utils/type.utils.d.ts.map +0 -1
  697. package/script/index.d.ts +0 -6
  698. package/script/index.d.ts.map +0 -1
  699. package/script/index.js +0 -8
  700. package/script/lib/ast/index.d.ts +0 -2
  701. package/script/lib/ast/index.d.ts.map +0 -1
  702. package/script/lib/ast/index.js +0 -4
  703. package/script/lib/ast/node.d.ts +0 -15
  704. package/script/lib/ast/node.d.ts.map +0 -1
  705. package/script/lib/codegen/config.d.ts +0 -16
  706. package/script/lib/codegen/config.d.ts.map +0 -1
  707. package/script/lib/codegen/endpoints-generator.d.ts +0 -18
  708. package/script/lib/codegen/endpoints-generator.d.ts.map +0 -1
  709. package/script/lib/codegen/generator.d.ts +0 -39
  710. package/script/lib/codegen/generator.d.ts.map +0 -1
  711. package/script/lib/codegen/generator.js +0 -121
  712. package/script/lib/codegen/index.d.ts +0 -7
  713. package/script/lib/codegen/index.d.ts.map +0 -1
  714. package/script/lib/codegen/index.js +0 -9
  715. package/script/lib/codegen/internal-utils.d.ts.map +0 -1
  716. package/script/lib/codegen/internal-utils.js +0 -8
  717. package/script/lib/codegen/schemas-generator.d.ts +0 -19
  718. package/script/lib/codegen/schemas-generator.d.ts.map +0 -1
  719. package/script/lib/codegen/schemas-generator.js +0 -49
  720. package/script/lib/codegen/services-generator.d.ts +0 -18
  721. package/script/lib/codegen/services-generator.d.ts.map +0 -1
  722. package/script/lib/codegen/types.d.ts +0 -19
  723. package/script/lib/codegen/types.d.ts.map +0 -1
  724. package/script/lib/collect/collector.d.ts +0 -4
  725. package/script/lib/collect/collector.d.ts.map +0 -1
  726. package/script/lib/collect/helpers.d.ts +0 -5
  727. package/script/lib/collect/helpers.d.ts.map +0 -1
  728. package/script/lib/collect/index.d.ts +0 -4
  729. package/script/lib/collect/index.d.ts.map +0 -1
  730. package/script/lib/collect/index.js +0 -6
  731. package/script/lib/collect/types.d.ts +0 -13
  732. package/script/lib/collect/types.d.ts.map +0 -1
  733. package/script/lib/internal-utils.d.ts.map +0 -1
  734. package/script/lib/parse/deref-proxy.d.ts.map +0 -1
  735. package/script/lib/parse/deref-proxy.js +0 -65
  736. package/script/lib/parse/index.d.ts +0 -4
  737. package/script/lib/parse/index.d.ts.map +0 -1
  738. package/script/lib/parse/index.js +0 -6
  739. package/script/lib/parse/openapi-types.d.ts.map +0 -1
  740. package/script/lib/parse/parser.d.ts +0 -19
  741. package/script/lib/parse/parser.d.ts.map +0 -1
  742. package/script/lib/parse/parser.js +0 -195
  743. package/script/lib/parse/types.d.ts.map +0 -1
  744. package/script/lib/transform/api-types.d.ts +0 -195
  745. package/script/lib/transform/api-types.d.ts.map +0 -1
  746. package/script/lib/transform/helpers.d.ts +0 -51
  747. package/script/lib/transform/helpers.d.ts.map +0 -1
  748. package/script/lib/transform/helpers.js +0 -171
  749. package/script/lib/transform/index.d.ts +0 -3
  750. package/script/lib/transform/index.d.ts.map +0 -1
  751. package/script/lib/transform/index.js +0 -5
  752. package/script/lib/transform/transform-document.d.ts +0 -4
  753. package/script/lib/transform/transform-document.d.ts.map +0 -1
  754. package/script/lib/transform/transform-endpoint.d.ts +0 -5
  755. package/script/lib/transform/transform-endpoint.d.ts.map +0 -1
  756. package/script/lib/transform/transform-endpoint.js +0 -278
  757. package/script/lib/transform/transform-schema.d.ts +0 -5
  758. package/script/lib/transform/transform-schema.d.ts.map +0 -1
  759. package/script/lib/transform/transform-schema.js +0 -185
  760. package/script/lib/transform/transformer.d.ts +0 -5
  761. package/script/lib/transform/transformer.d.ts.map +0 -1
  762. package/script/lib/transform/types.d.ts.map +0 -1
  763. package/script/lib/utils/action-provider.d.ts.map +0 -1
  764. package/script/lib/utils/action-provider.js +0 -39
  765. package/script/lib/utils/array.utils.d.ts.map +0 -1
  766. package/script/lib/utils/asset-manager.d.ts.map +0 -1
  767. package/script/lib/utils/asset-manager.js +0 -54
  768. package/script/lib/utils/class.utils.d.ts.map +0 -1
  769. package/script/lib/utils/class.utils.js +0 -32
  770. package/script/lib/utils/common.utils.d.ts.map +0 -1
  771. package/script/lib/utils/condition.d.ts.map +0 -1
  772. package/script/lib/utils/endpoint.utils.d.ts +0 -3
  773. package/script/lib/utils/endpoint.utils.d.ts.map +0 -1
  774. package/script/lib/utils/error.utils.d.ts.map +0 -1
  775. package/script/lib/utils/factory.d.ts +0 -21
  776. package/script/lib/utils/factory.d.ts.map +0 -1
  777. package/script/lib/utils/file-system.utils.d.ts.map +0 -1
  778. package/script/lib/utils/generator.utils.d.ts.map +0 -1
  779. package/script/lib/utils/index.d.ts +0 -16
  780. package/script/lib/utils/index.d.ts.map +0 -1
  781. package/script/lib/utils/index.js +0 -18
  782. package/script/lib/utils/object.utils.d.ts.map +0 -1
  783. package/script/lib/utils/object.utils.js +0 -39
  784. package/script/lib/utils/schema.utils.d.ts +0 -11
  785. package/script/lib/utils/schema.utils.d.ts.map +0 -1
  786. package/script/lib/utils/source-builder.d.ts +0 -233
  787. package/script/lib/utils/source-builder.d.ts.map +0 -1
  788. package/script/lib/utils/source-builder.js +0 -450
  789. package/script/lib/utils/string-builder/index.d.ts +0 -4
  790. package/script/lib/utils/string-builder/index.d.ts.map +0 -1
  791. package/script/lib/utils/string-builder/index.js +0 -8
  792. package/script/lib/utils/string-builder/options.d.ts.map +0 -1
  793. package/script/lib/utils/string-builder/string-builder.d.ts +0 -73
  794. package/script/lib/utils/string-builder/string-builder.d.ts.map +0 -1
  795. package/script/lib/utils/string-builder/string-builder.js +0 -153
  796. package/script/lib/utils/string-builder/utils.d.ts.map +0 -1
  797. package/script/lib/utils/string.utils.d.ts.map +0 -1
  798. package/script/lib/utils/string.utils.types.d.ts.map +0 -1
  799. package/script/lib/utils/type.utils.d.ts.map +0 -1
  800. /package/esm/{lib → src}/ast/node.js +0 -0
  801. /package/esm/{lib → src}/codegen/config.js +0 -0
  802. /package/esm/{lib → src}/codegen/endpoints-generator.js +0 -0
  803. /package/esm/{lib → src}/codegen/internal-utils.d.ts +0 -0
  804. /package/esm/{lib → src}/codegen/services-generator.js +0 -0
  805. /package/esm/{lib → src}/codegen/types.js +0 -0
  806. /package/esm/{lib → src}/collect/collector.js +0 -0
  807. /package/esm/{lib → src}/collect/helpers.js +0 -0
  808. /package/esm/{lib → src}/collect/types.js +0 -0
  809. /package/esm/{lib → src}/internal-utils.d.ts +0 -0
  810. /package/esm/{lib → src}/internal-utils.js +0 -0
  811. /package/esm/{lib → src}/parse/deref-proxy.d.ts +0 -0
  812. /package/esm/{lib → src}/parse/openapi-types.d.ts +0 -0
  813. /package/esm/{lib → src}/parse/openapi-types.js +0 -0
  814. /package/esm/{lib → src}/parse/types.d.ts +0 -0
  815. /package/esm/{lib → src}/parse/types.js +0 -0
  816. /package/esm/{lib → src}/transform/api-types.js +0 -0
  817. /package/esm/{lib → src}/transform/transform-document.js +0 -0
  818. /package/esm/{lib → src}/transform/transformer.js +0 -0
  819. /package/esm/{lib → src}/transform/types.d.ts +0 -0
  820. /package/esm/{lib → src}/transform/types.js +0 -0
  821. /package/esm/{lib → src}/utils/action-provider.d.ts +0 -0
  822. /package/esm/{lib → src}/utils/array.utils.d.ts +0 -0
  823. /package/esm/{lib → src}/utils/array.utils.js +0 -0
  824. /package/esm/{lib → src}/utils/asset-manager.d.ts +0 -0
  825. /package/esm/{lib → src}/utils/class.utils.d.ts +0 -0
  826. /package/esm/{lib → src}/utils/common.utils.d.ts +0 -0
  827. /package/esm/{lib → src}/utils/common.utils.js +0 -0
  828. /package/esm/{lib → src}/utils/condition.d.ts +0 -0
  829. /package/esm/{lib → src}/utils/condition.js +0 -0
  830. /package/esm/{lib → src}/utils/endpoint.utils.js +0 -0
  831. /package/esm/{lib → src}/utils/error.utils.d.ts +0 -0
  832. /package/esm/{lib → src}/utils/error.utils.js +0 -0
  833. /package/esm/{lib → src}/utils/factory.js +0 -0
  834. /package/esm/{lib → src}/utils/file-system.utils.d.ts +0 -0
  835. /package/esm/{lib → src}/utils/file-system.utils.js +0 -0
  836. /package/esm/{lib → src}/utils/generator.utils.d.ts +0 -0
  837. /package/esm/{lib → src}/utils/generator.utils.js +0 -0
  838. /package/esm/{lib → src}/utils/object.utils.d.ts +0 -0
  839. /package/esm/{lib → src}/utils/schema.utils.js +0 -0
  840. /package/esm/{lib → src}/utils/string-builder/options.d.ts +0 -0
  841. /package/esm/{lib → src}/utils/string-builder/options.js +0 -0
  842. /package/esm/{lib → src}/utils/string-builder/utils.d.ts +0 -0
  843. /package/esm/{lib → src}/utils/string-builder/utils.js +0 -0
  844. /package/esm/{lib → src}/utils/string.utils.d.ts +0 -0
  845. /package/esm/{lib → src}/utils/string.utils.js +0 -0
  846. /package/esm/{lib → src}/utils/string.utils.types.d.ts +0 -0
  847. /package/esm/{lib → src}/utils/string.utils.types.js +0 -0
  848. /package/esm/{lib → src}/utils/type.utils.d.ts +0 -0
  849. /package/esm/{lib → src}/utils/type.utils.js +0 -0
  850. /package/script/{lib → src}/ast/node.js +0 -0
  851. /package/script/{lib → src}/codegen/config.js +0 -0
  852. /package/script/{lib → src}/codegen/endpoints-generator.js +0 -0
  853. /package/script/{lib → src}/codegen/internal-utils.d.ts +0 -0
  854. /package/script/{lib → src}/codegen/services-generator.js +0 -0
  855. /package/script/{lib → src}/codegen/types.js +0 -0
  856. /package/script/{lib → src}/collect/collector.js +0 -0
  857. /package/script/{lib → src}/collect/helpers.js +0 -0
  858. /package/script/{lib → src}/collect/types.js +0 -0
  859. /package/script/{lib → src}/internal-utils.d.ts +0 -0
  860. /package/script/{lib → src}/internal-utils.js +0 -0
  861. /package/script/{lib → src}/parse/deref-proxy.d.ts +0 -0
  862. /package/script/{lib → src}/parse/openapi-types.d.ts +0 -0
  863. /package/script/{lib → src}/parse/openapi-types.js +0 -0
  864. /package/script/{lib → src}/parse/types.d.ts +0 -0
  865. /package/script/{lib → src}/parse/types.js +0 -0
  866. /package/script/{lib → src}/transform/api-types.js +0 -0
  867. /package/script/{lib → src}/transform/transform-document.js +0 -0
  868. /package/script/{lib → src}/transform/transformer.js +0 -0
  869. /package/script/{lib → src}/transform/types.d.ts +0 -0
  870. /package/script/{lib → src}/transform/types.js +0 -0
  871. /package/script/{lib → src}/utils/action-provider.d.ts +0 -0
  872. /package/script/{lib → src}/utils/array.utils.d.ts +0 -0
  873. /package/script/{lib → src}/utils/array.utils.js +0 -0
  874. /package/script/{lib → src}/utils/asset-manager.d.ts +0 -0
  875. /package/script/{lib → src}/utils/class.utils.d.ts +0 -0
  876. /package/script/{lib → src}/utils/common.utils.d.ts +0 -0
  877. /package/script/{lib → src}/utils/common.utils.js +0 -0
  878. /package/script/{lib → src}/utils/condition.d.ts +0 -0
  879. /package/script/{lib → src}/utils/condition.js +0 -0
  880. /package/script/{lib → src}/utils/endpoint.utils.js +0 -0
  881. /package/script/{lib → src}/utils/error.utils.d.ts +0 -0
  882. /package/script/{lib → src}/utils/error.utils.js +0 -0
  883. /package/script/{lib → src}/utils/factory.js +0 -0
  884. /package/script/{lib → src}/utils/file-system.utils.d.ts +0 -0
  885. /package/script/{lib → src}/utils/file-system.utils.js +0 -0
  886. /package/script/{lib → src}/utils/generator.utils.d.ts +0 -0
  887. /package/script/{lib → src}/utils/generator.utils.js +0 -0
  888. /package/script/{lib → src}/utils/object.utils.d.ts +0 -0
  889. /package/script/{lib → src}/utils/schema.utils.js +0 -0
  890. /package/script/{lib → src}/utils/string-builder/options.d.ts +0 -0
  891. /package/script/{lib → src}/utils/string-builder/options.js +0 -0
  892. /package/script/{lib → src}/utils/string-builder/utils.d.ts +0 -0
  893. /package/script/{lib → src}/utils/string-builder/utils.js +0 -0
  894. /package/script/{lib → src}/utils/string.utils.d.ts +0 -0
  895. /package/script/{lib → src}/utils/string.utils.js +0 -0
  896. /package/script/{lib → src}/utils/string.utils.types.d.ts +0 -0
  897. /package/script/{lib → src}/utils/string.utils.types.js +0 -0
  898. /package/script/{lib → src}/utils/type.utils.d.ts +0 -0
  899. /package/script/{lib → src}/utils/type.utils.js +0 -0
@@ -0,0 +1,508 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ require("../../_dnt.test_polyfills.js");
4
+ const node_os_1 = require("node:os");
5
+ const mod_js_1 = require("../../deps/jsr.io/@std/expect/1.0.5/mod.js");
6
+ const bdd_js_1 = require("../../deps/jsr.io/@std/testing/1.0.3/bdd.js");
7
+ const source_builder_js_1 = require("./source-builder.js");
8
+ const utils_js_1 = require("./string-builder/utils.js");
9
+ (0, bdd_js_1.describe)('SourceBuilder', () => {
10
+ let sb;
11
+ (0, bdd_js_1.beforeEach)(() => {
12
+ sb = new source_builder_js_1.SourceBuilder();
13
+ });
14
+ (0, bdd_js_1.describe)('constructor', () => {
15
+ (0, bdd_js_1.it)('should initialize with default options', () => {
16
+ const options = sb.options;
17
+ (0, mod_js_1.expect)(options.indent).toEqual({ type: 'spaces', count: 2 });
18
+ (0, mod_js_1.expect)(options.newLine).toBe(node_os_1.EOL);
19
+ });
20
+ });
21
+ (0, bdd_js_1.describe)('fromString', () => {
22
+ (0, bdd_js_1.it)('should create a new instance of SourceBuilder with the given string', () => {
23
+ const str = 'test string';
24
+ const sb = source_builder_js_1.SourceBuilder.fromString(str);
25
+ (0, mod_js_1.expect)(sb.toString()).toEqual(str);
26
+ });
27
+ (0, bdd_js_1.it)('should create a new instance of SourceBuilder with the given string and options', () => {
28
+ const str = 'test string';
29
+ const options = {
30
+ indent: { type: 'tabs' },
31
+ newLine: '\n-',
32
+ };
33
+ const sb = source_builder_js_1.SourceBuilder.fromString(str, options);
34
+ (0, mod_js_1.expect)(sb.toString()).toEqual(str);
35
+ // TODO: Uncomment as soon as @std/expect has new version (https://github.com/denoland/std/pull/6065)
36
+ // expect(sb.options).toEqual(expect.objectContaining(options));
37
+ });
38
+ });
39
+ (0, bdd_js_1.describe)('build', () => {
40
+ (0, bdd_js_1.it)('should build a string using a callback function that receives a `SourceBuilder` instance', () => {
41
+ const buildAction = (builder) => {
42
+ builder.append('hello');
43
+ builder.append('world');
44
+ };
45
+ const result = source_builder_js_1.SourceBuilder.build(buildAction);
46
+ (0, mod_js_1.expect)(result).toEqual('helloworld');
47
+ });
48
+ (0, bdd_js_1.it)('should build a string using a callback function that receives a `SourceBuilder` instance and options', () => {
49
+ const buildAction = (builder) => {
50
+ builder.appendLine('hello');
51
+ builder.indent((b) => b.append('world'));
52
+ };
53
+ const options = {
54
+ indent: { type: 'spaces', count: 4 },
55
+ newLine: '\r\n\t',
56
+ };
57
+ const result = source_builder_js_1.SourceBuilder.build(buildAction, options);
58
+ (0, mod_js_1.expect)(result).toEqual(`hello${options.newLine} world`);
59
+ });
60
+ });
61
+ (0, bdd_js_1.describe)('append', () => {
62
+ (0, bdd_js_1.it)('should handle consecutive line breaks', () => {
63
+ sb.append('line1', node_os_1.EOL, node_os_1.EOL, node_os_1.EOL, 'line2');
64
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL}${node_os_1.EOL}${node_os_1.EOL}line2`);
65
+ });
66
+ (0, bdd_js_1.it)('should handle mixed line breaks', () => {
67
+ sb.append('line1\r\n', '\n', 'line2\r', '\r', 'line3\n', 'line4');
68
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL}${node_os_1.EOL}line2line3${node_os_1.EOL}line4`);
69
+ });
70
+ (0, bdd_js_1.it)('should handle strings with special chars', () => {
71
+ sb.append('line1 {', node_os_1.EOL, 'line2}');
72
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1 {${node_os_1.EOL}line2}`);
73
+ });
74
+ (0, bdd_js_1.it)('should handle long strings without line breaks', () => {
75
+ sb.append('This is a long string without any line breaks.');
76
+ (0, mod_js_1.expect)(sb.toString()).toBe('This is a long string without any line breaks.');
77
+ });
78
+ (0, bdd_js_1.it)('should handle multiple calls', () => {
79
+ sb.append('line1', node_os_1.EOL);
80
+ sb.append('line2', node_os_1.EOL);
81
+ sb.append('line3', node_os_1.EOL);
82
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL}line2${node_os_1.EOL}line3${node_os_1.EOL}`);
83
+ });
84
+ (0, bdd_js_1.it)('should handle empty input', () => {
85
+ sb.append('', '', '', node_os_1.EOL, '', '');
86
+ (0, mod_js_1.expect)(sb.toString()).toBe(node_os_1.EOL);
87
+ });
88
+ (0, bdd_js_1.it)('should apply the provided builder function to the source builder', () => {
89
+ const builder = new source_builder_js_1.SourceBuilder().append((b) => b.append('foo'));
90
+ (0, mod_js_1.expect)(builder.toString()).toBe('foo');
91
+ });
92
+ });
93
+ (0, bdd_js_1.describe)('appendIf', () => {
94
+ (0, bdd_js_1.it)('should append the string when condition is true', () => {
95
+ sb.appendIf(true, 'line1', node_os_1.EOL);
96
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL}`);
97
+ });
98
+ (0, bdd_js_1.it)('should not append the string when condition is false', () => {
99
+ sb.appendIf(false, 'line1', node_os_1.EOL);
100
+ (0, mod_js_1.expect)(sb.toString()).toBe('');
101
+ });
102
+ (0, bdd_js_1.it)('should append the string when condition is a function returning true', () => {
103
+ sb.appendIf(() => true, 'line1', node_os_1.EOL);
104
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL}`);
105
+ });
106
+ (0, bdd_js_1.it)('should not append the string when condition is a function returning false', () => {
107
+ sb.appendIf(() => false, 'line1', node_os_1.EOL);
108
+ (0, mod_js_1.expect)(sb.toString()).toBe('');
109
+ });
110
+ });
111
+ (0, bdd_js_1.describe)('appendLineIf', () => {
112
+ (0, bdd_js_1.it)('should append the string when condition is true', () => {
113
+ sb.appendLineIf(true, 'line1');
114
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL}`);
115
+ });
116
+ (0, bdd_js_1.it)('should not append the string when condition is false', () => {
117
+ sb.appendLineIf(false, 'line1');
118
+ (0, mod_js_1.expect)(sb.toString()).toBe('');
119
+ });
120
+ (0, bdd_js_1.it)('should append the string when condition is a function returning true', () => {
121
+ sb.appendLineIf(() => true, 'line1');
122
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL}`);
123
+ });
124
+ (0, bdd_js_1.it)('should not append the string when condition is a function returning false', () => {
125
+ sb.appendLineIf(() => false, 'line1');
126
+ (0, mod_js_1.expect)(sb.toString()).toBe('');
127
+ });
128
+ });
129
+ (0, bdd_js_1.describe)('prependIf', () => {
130
+ (0, bdd_js_1.it)('should prepend the specified value if the condition is true', () => {
131
+ const builder = new source_builder_js_1.SourceBuilder().append('bar').prependIf(true, 'foo');
132
+ (0, mod_js_1.expect)(builder.toString()).toBe('foobar');
133
+ });
134
+ (0, bdd_js_1.it)('should not prepend the specified value if the condition is false', () => {
135
+ const builder = new source_builder_js_1.SourceBuilder().append('bar').prependIf(false, 'foo');
136
+ (0, mod_js_1.expect)(builder.toString()).toBe('bar');
137
+ });
138
+ });
139
+ (0, bdd_js_1.describe)('prependLineIf', () => {
140
+ (0, bdd_js_1.it)('should prepend the specified value with a line terminator if the condition is true', () => {
141
+ const builder = new source_builder_js_1.SourceBuilder().append('bar').prependLineIf(true, 'foo');
142
+ (0, mod_js_1.expect)(builder.toString()).toBe(`foo${node_os_1.EOL}bar`);
143
+ });
144
+ (0, bdd_js_1.it)('should not prepend the specified value if the condition is false', () => {
145
+ const builder = new source_builder_js_1.SourceBuilder().append('bar').prependLineIf(false, 'foo');
146
+ (0, mod_js_1.expect)(builder.toString()).toBe('bar');
147
+ });
148
+ });
149
+ (0, bdd_js_1.describe)('appendWithLinePrefix', () => {
150
+ (0, bdd_js_1.it)('should append the specified values with the specified line prefix', () => {
151
+ const builder = new source_builder_js_1.SourceBuilder().appendWithLinePrefix('// ', 'foo', 'bar');
152
+ (0, mod_js_1.expect)(builder.toString()).toBe('// foobar');
153
+ });
154
+ (0, bdd_js_1.it)('should handle null and undefined values', () => {
155
+ const builder = new source_builder_js_1.SourceBuilder().appendWithLinePrefix('// ', 'foo', null, undefined, 'bar');
156
+ (0, mod_js_1.expect)(builder.toString()).toBe('// foobar');
157
+ });
158
+ (0, bdd_js_1.it)('should apply the provided builder function with the specified line prefix', () => {
159
+ const builder = new source_builder_js_1.SourceBuilder().appendWithLinePrefix('// ', (b) => {
160
+ b.appendLine('foo');
161
+ b.appendLine('bar');
162
+ });
163
+ (0, mod_js_1.expect)(builder.toString()).toBe(`// foo${node_os_1.EOL}// bar${node_os_1.EOL}`);
164
+ });
165
+ (0, bdd_js_1.it)('should apply the provided builder function with the specified line prefix and indentation', () => {
166
+ const builder = new source_builder_js_1.SourceBuilder().indent((b) => b.appendWithLinePrefix('// ', (b) => {
167
+ b.appendLine('foo');
168
+ b.appendLine('bar');
169
+ }));
170
+ (0, mod_js_1.expect)(builder.toString()).toBe(` // foo${node_os_1.EOL} // bar${node_os_1.EOL}`);
171
+ });
172
+ (0, bdd_js_1.it)('should write indents after the prefix', () => {
173
+ const builder = new source_builder_js_1.SourceBuilder().indent((b) => b.appendWithLinePrefix('// ', (b) => {
174
+ b.indent((b) => b.appendLine('foo'));
175
+ }));
176
+ (0, mod_js_1.expect)(builder.toString()).toBe(` // foo${node_os_1.EOL}`);
177
+ });
178
+ });
179
+ (0, bdd_js_1.describe)('appendLineWithLinePrefix', () => {
180
+ (0, bdd_js_1.it)('should append the specified values as a new line with the specified line prefix', () => {
181
+ const builder = new source_builder_js_1.SourceBuilder().appendLineWithLinePrefix('// ', 'foo', 'bar');
182
+ (0, mod_js_1.expect)(builder.toString()).toBe('// foobar' + node_os_1.EOL);
183
+ });
184
+ (0, bdd_js_1.it)('should handle null and undefined values', () => {
185
+ const builder = new source_builder_js_1.SourceBuilder().appendLineWithLinePrefix('// ', 'foo', null, undefined, 'bar');
186
+ (0, mod_js_1.expect)(builder.toString()).toBe('// foobar' + node_os_1.EOL);
187
+ });
188
+ });
189
+ (0, bdd_js_1.describe)('ensurePreviousLineEmpty', () => {
190
+ (0, bdd_js_1.it)('should insert one empty line when current line is empty', () => {
191
+ sb.append('line1', node_os_1.EOL, 'line2', node_os_1.EOL);
192
+ sb.ensurePreviousLineEmpty();
193
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL}line2${node_os_1.EOL}${node_os_1.EOL}`);
194
+ });
195
+ (0, bdd_js_1.it)('should insert two empty lines when current line is not empty', () => {
196
+ sb.append('line1', node_os_1.EOL, 'line2');
197
+ sb.ensurePreviousLineEmpty();
198
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL}line2${node_os_1.EOL}${node_os_1.EOL}`);
199
+ });
200
+ (0, bdd_js_1.it)('should not insert an empty line when already empty', () => {
201
+ sb.append('line1', node_os_1.EOL, 'line2', node_os_1.EOL, node_os_1.EOL);
202
+ sb.ensurePreviousLineEmpty();
203
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL}line2${node_os_1.EOL}${node_os_1.EOL}`);
204
+ });
205
+ });
206
+ (0, bdd_js_1.describe)('ensureCurrentLineEmpty', () => {
207
+ (0, bdd_js_1.it)('should insert an empty line', () => {
208
+ sb.append('line1', node_os_1.EOL, 'line2');
209
+ sb.ensureCurrentLineEmpty();
210
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL}line2${node_os_1.EOL}`);
211
+ });
212
+ (0, bdd_js_1.it)('should not insert an empty line when already empty', () => {
213
+ sb.append('line1', node_os_1.EOL, 'line2', node_os_1.EOL);
214
+ sb.ensureCurrentLineEmpty();
215
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL}line2${node_os_1.EOL}`);
216
+ });
217
+ });
218
+ (0, bdd_js_1.describe)('pretendPreviousLineEmpty', () => {
219
+ (0, bdd_js_1.it)('should pretend the previous line is empty', () => {
220
+ sb.appendLine('line1').append('a').pretendPreviousLineEmpty().ensurePreviousLineEmpty().append('b');
221
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL}ab`);
222
+ });
223
+ });
224
+ (0, bdd_js_1.describe)('pretendCurrentLineEmpty', () => {
225
+ (0, bdd_js_1.it)('should pretend the previous line is empty', () => {
226
+ sb.append('a').pretendCurrentLineEmpty().ensureCurrentLineEmpty().append('b');
227
+ (0, mod_js_1.expect)(sb.toString()).toBe(`ab`);
228
+ });
229
+ });
230
+ (0, bdd_js_1.describe)('if', () => {
231
+ (0, bdd_js_1.it)('should append the content when condition is true', () => {
232
+ sb.if(true, (x) => x.append('stuff'));
233
+ (0, mod_js_1.expect)(sb.toString()).toBe(`stuff`);
234
+ });
235
+ (0, bdd_js_1.it)('should not append the content when condition is false', () => {
236
+ sb.if(false, (x) => x.append('stuff'));
237
+ (0, mod_js_1.expect)(sb.toString()).toBe(``);
238
+ });
239
+ (0, bdd_js_1.it)('should append the content when condition function returns true', () => {
240
+ sb.if(() => true, (x) => x.append('stuff'));
241
+ (0, mod_js_1.expect)(sb.toString()).toBe(`stuff`);
242
+ });
243
+ (0, bdd_js_1.it)('should not append the content when condition function returns false', () => {
244
+ sb.if(() => false, (x) => x.append('stuff'));
245
+ (0, mod_js_1.expect)(sb.toString()).toBe(``);
246
+ });
247
+ (0, bdd_js_1.it)('should append the correct content when condition is true', () => {
248
+ sb.if(true, (x) => x.append('stuff'), (x) => x.append('other stuff'));
249
+ (0, mod_js_1.expect)(sb.toString()).toBe(`stuff`);
250
+ });
251
+ (0, bdd_js_1.it)('should append the correct content when condition is false', () => {
252
+ sb.if(false, (x) => x.append('stuff'), (x) => x.append('other stuff'));
253
+ (0, mod_js_1.expect)(sb.toString()).toBe(`other stuff`);
254
+ });
255
+ (0, bdd_js_1.it)('should append the correct content when condition function returns true', () => {
256
+ sb.if(() => true, (x) => x.append('stuff'), (x) => x.append('other stuff'));
257
+ (0, mod_js_1.expect)(sb.toString()).toBe(`stuff`);
258
+ });
259
+ (0, bdd_js_1.it)('should append the correct content when condition function returns false', () => {
260
+ sb.if(() => false, (x) => x.append('stuff'), (x) => x.append('other stuff'));
261
+ (0, mod_js_1.expect)(sb.toString()).toBe(`other stuff`);
262
+ });
263
+ });
264
+ (0, bdd_js_1.describe)('indent', () => {
265
+ (0, bdd_js_1.it)('should correctly indent the content (fn)', () => {
266
+ sb.append('line1', node_os_1.EOL);
267
+ sb.indent((innerSb) => {
268
+ innerSb.append('line2', node_os_1.EOL);
269
+ });
270
+ sb.append('line3', node_os_1.EOL);
271
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL} line2${node_os_1.EOL}line3${node_os_1.EOL}`);
272
+ });
273
+ (0, bdd_js_1.it)('should correctly indent the content (string)', () => {
274
+ sb.append('line1', node_os_1.EOL);
275
+ sb.indent('line2\n');
276
+ sb.append('line3', node_os_1.EOL);
277
+ (0, mod_js_1.expect)(sb.toString()).toBe(`line1${node_os_1.EOL} line2${node_os_1.EOL}line3${node_os_1.EOL}`);
278
+ });
279
+ (0, bdd_js_1.it)('should correctly handle nested indentation', () => {
280
+ sb.indent((innerSb1) => {
281
+ innerSb1.append('line1', node_os_1.EOL);
282
+ innerSb1.indent((innerSb2) => {
283
+ innerSb2.append('line2', node_os_1.EOL);
284
+ });
285
+ innerSb1.append('line3', node_os_1.EOL);
286
+ });
287
+ (0, mod_js_1.expect)(sb.toString()).toBe(` line1${node_os_1.EOL} line2${node_os_1.EOL} line3${node_os_1.EOL}`);
288
+ });
289
+ (0, bdd_js_1.it)('should correctly handle multiline strings (fn)', () => {
290
+ sb.indent((innerSb) => {
291
+ innerSb.append(`line1${node_os_1.EOL}line2`, node_os_1.EOL);
292
+ });
293
+ (0, mod_js_1.expect)(sb.toString()).toBe(` line1${node_os_1.EOL} line2${node_os_1.EOL}`);
294
+ });
295
+ (0, bdd_js_1.it)('should correctly handle multiline strings (string)', () => {
296
+ sb.indent('line1\nline2\n');
297
+ (0, mod_js_1.expect)(sb.toString()).toBe(` line1${node_os_1.EOL} line2${node_os_1.EOL}`);
298
+ });
299
+ (0, bdd_js_1.it)('should nest indentations', () => {
300
+ sb.appendLine('(')
301
+ .indent((b1) => {
302
+ b1.appendLine('(')
303
+ .indent((b2) => {
304
+ b2.appendLine('line1');
305
+ })
306
+ .appendLine(')');
307
+ })
308
+ .appendLine(')');
309
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(${node_os_1.EOL} (${node_os_1.EOL} line1${node_os_1.EOL} )${node_os_1.EOL})${node_os_1.EOL}`);
310
+ });
311
+ });
312
+ (0, bdd_js_1.describe)('indentIf', () => {
313
+ (0, bdd_js_1.it)('should indent when condition is true', () => {
314
+ sb.indentIf(true, (x) => x.append('stuff'));
315
+ (0, mod_js_1.expect)(sb.toString()).toBe(` stuff`);
316
+ });
317
+ (0, bdd_js_1.it)('should not indent when condition is false', () => {
318
+ sb.indentIf(false, (x) => x.append('stuff'));
319
+ (0, mod_js_1.expect)(sb.toString()).toBe(`stuff`);
320
+ });
321
+ (0, bdd_js_1.it)('should indent when condition function returns true', () => {
322
+ sb.indentIf(() => true, (x) => x.append('stuff'));
323
+ (0, mod_js_1.expect)(sb.toString()).toBe(` stuff`);
324
+ });
325
+ (0, bdd_js_1.it)('should not indent when condition function returns false', () => {
326
+ sb.indentIf(() => false, (x) => x.append('stuff'));
327
+ (0, mod_js_1.expect)(sb.toString()).toBe(`stuff`);
328
+ });
329
+ });
330
+ (0, bdd_js_1.describe)('parenthesize', () => {
331
+ (0, bdd_js_1.it)('should parenthesize the content with the given brackets string', () => {
332
+ sb.parenthesize('{}', (x) => x.append('stuff'));
333
+ (0, mod_js_1.expect)(sb.toString()).toBe(`{stuff}`);
334
+ });
335
+ (0, bdd_js_1.it)('should parenthesize the content with the given brackets array', () => {
336
+ sb.parenthesize(['{', '}'], (x) => x.append('stuff'));
337
+ (0, mod_js_1.expect)(sb.toString()).toBe(`{stuff}`);
338
+ });
339
+ (0, bdd_js_1.it)('should parenthesize and indent the content (fn)', () => {
340
+ sb.parenthesize('()', (x) => x.append(`${node_os_1.EOL}stuff${node_os_1.EOL}`));
341
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(${node_os_1.EOL} stuff${node_os_1.EOL})`);
342
+ });
343
+ (0, bdd_js_1.it)('should parenthesize and indent the content (string)', () => {
344
+ sb.parenthesize('()', `${node_os_1.EOL}stuff${node_os_1.EOL}`);
345
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(${node_os_1.EOL} stuff${node_os_1.EOL})`);
346
+ });
347
+ (0, bdd_js_1.it)('should parenthesize but not indent the content when indent is false', () => {
348
+ sb.parenthesize('()', (x) => x.append(`${node_os_1.EOL}stuff${node_os_1.EOL}`), { indent: false });
349
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(${node_os_1.EOL}stuff${node_os_1.EOL})`);
350
+ });
351
+ (0, bdd_js_1.it)('should parenthesize the content with the given brackets string (multiline)', () => {
352
+ sb.parenthesize('{}', (x) => x.append('stuff'), { multiline: true });
353
+ (0, mod_js_1.expect)(sb.toString()).toBe(`{${node_os_1.EOL} stuff${node_os_1.EOL}}`);
354
+ });
355
+ (0, bdd_js_1.it)('should parenthesize the content with the given brackets array (multiline)', () => {
356
+ sb.parenthesize(['{', '}'], (x) => x.append('stuff'), { multiline: true });
357
+ (0, mod_js_1.expect)(sb.toString()).toBe(`{${node_os_1.EOL} stuff${node_os_1.EOL}}`);
358
+ });
359
+ (0, bdd_js_1.it)('should parenthesize and indent the content (fn) (multiline)', () => {
360
+ sb.parenthesize('()', (x) => x.append(`${node_os_1.EOL}stuff${node_os_1.EOL}`), { multiline: true });
361
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(${node_os_1.EOL}${node_os_1.EOL} stuff${node_os_1.EOL})`);
362
+ });
363
+ (0, bdd_js_1.it)('should parenthesize and indent the content (string) (multiline)', () => {
364
+ sb.parenthesize('()', `${node_os_1.EOL}stuff${node_os_1.EOL}`, { multiline: true });
365
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(${node_os_1.EOL}${node_os_1.EOL} stuff${node_os_1.EOL})`);
366
+ });
367
+ (0, bdd_js_1.it)('should parenthesize but not indent the content when indent is false (multiline)', () => {
368
+ sb.parenthesize('()', (x) => x.append(`${node_os_1.EOL}stuff${node_os_1.EOL}`), { multiline: true, indent: false });
369
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(${node_os_1.EOL}${node_os_1.EOL}stuff${node_os_1.EOL})`);
370
+ });
371
+ (0, bdd_js_1.it)('should ignore first ensurePreviousLineEmpty', () => {
372
+ sb.parenthesize('()', (x) => x.ensurePreviousLineEmpty().append('stuff'), { multiline: true });
373
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(${node_os_1.EOL} stuff${node_os_1.EOL})`);
374
+ });
375
+ (0, bdd_js_1.it)('should not ignore first ensurePreviousLineEmpty if disabled', () => {
376
+ sb.parenthesize('()', (x) => x.ensurePreviousLineEmpty().append('stuff'), {
377
+ multiline: true,
378
+ pretendEmpty: false,
379
+ });
380
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(${node_os_1.EOL}${node_os_1.EOL} stuff${node_os_1.EOL})`);
381
+ });
382
+ });
383
+ (0, bdd_js_1.describe)('parenthesizeIf', () => {
384
+ (0, bdd_js_1.it)('should parenthesize when condition is true (fn)', () => {
385
+ sb.parenthesizeIf(true, '()', (x) => x.append('stuff'));
386
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(stuff)`);
387
+ });
388
+ (0, bdd_js_1.it)('should parenthesize when condition is true (string)', () => {
389
+ sb.parenthesizeIf(true, '()', 'stuff');
390
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(stuff)`);
391
+ });
392
+ (0, bdd_js_1.it)('should not parenthesize when condition is false', () => {
393
+ sb.parenthesizeIf(false, '()', (x) => x.append('stuff'));
394
+ (0, mod_js_1.expect)(sb.toString()).toBe(`stuff`);
395
+ });
396
+ (0, bdd_js_1.it)('should parenthesize when condition function returns true', () => {
397
+ sb.parenthesizeIf(() => true, '()', (x) => x.append('stuff'));
398
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(stuff)`);
399
+ });
400
+ (0, bdd_js_1.it)('should not parenthesize when condition function returns false', () => {
401
+ sb.parenthesizeIf(() => false, '()', (x) => x.append('stuff'));
402
+ (0, mod_js_1.expect)(sb.toString()).toBe(`stuff`);
403
+ });
404
+ (0, bdd_js_1.it)('should parenthesize when condition is true (fn) (multiline)', () => {
405
+ sb.parenthesizeIf(true, '()', (x) => x.append('stuff'), { multiline: true });
406
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(${node_os_1.EOL} stuff${node_os_1.EOL})`);
407
+ });
408
+ (0, bdd_js_1.it)('should parenthesize when condition is true (string) (multiline)', () => {
409
+ sb.parenthesizeIf(true, '()', 'stuff', { multiline: true });
410
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(${node_os_1.EOL} stuff${node_os_1.EOL})`);
411
+ });
412
+ (0, bdd_js_1.it)('should not parenthesize when condition is false (multiline)', () => {
413
+ sb.parenthesizeIf(false, '()', (x) => x.append('stuff'), { multiline: true });
414
+ (0, mod_js_1.expect)(sb.toString()).toBe(`stuff`);
415
+ });
416
+ (0, bdd_js_1.it)('should parenthesize when condition function returns true (multiline)', () => {
417
+ sb.parenthesizeIf(() => true, '()', (x) => x.append('stuff'), { multiline: true });
418
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(${node_os_1.EOL} stuff${node_os_1.EOL})`);
419
+ });
420
+ (0, bdd_js_1.it)('should not parenthesize when condition function returns false (multiline)', () => {
421
+ sb.parenthesizeIf(() => false, '()', (x) => x.append('stuff'), { multiline: true });
422
+ (0, mod_js_1.expect)(sb.toString()).toBe(`stuff`);
423
+ });
424
+ });
425
+ (0, bdd_js_1.describe)('forEach', () => {
426
+ (0, bdd_js_1.it)('should add the content for each item', () => {
427
+ sb.forEach(['a', 'b', 'c'], (x, item) => x.append(`(${item})`));
428
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(a)(b)(c)`);
429
+ });
430
+ (0, bdd_js_1.it)('should add the content for items that match the condition', () => {
431
+ sb.forEach(['a', 'b', 'c'], (x, item) => x.append(`(${item})`), { condition: (item) => item === 'b' });
432
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(b)`);
433
+ });
434
+ (0, bdd_js_1.it)('should add the content for each item with the given string separator', () => {
435
+ sb.forEach(['a', 'b', 'c'], (x, item) => x.append(`item: ${item}`), { separator: ', ' });
436
+ (0, mod_js_1.expect)(sb.toString()).toBe(`item: a, item: b, item: c`);
437
+ });
438
+ (0, bdd_js_1.it)('should add the content for each item with the given separator builder', () => {
439
+ sb.forEach(['a', 'b', 'c'], (x, item) => x.append(`item: ${item}`), {
440
+ separator: (x, p, n, pi, ni) => x.append(`(${p}:${pi}), (${n}:${ni})`),
441
+ });
442
+ (0, mod_js_1.expect)(sb.toString()).toBe(`item: a(a:0), (b:1)item: b(b:1), (c:2)item: c`);
443
+ });
444
+ (0, bdd_js_1.it)('should add the content for items that match the condition with the given string separator', () => {
445
+ sb.forEach(['a', 'b', 'c'], (x, item) => x.append(`item: ${item}`), {
446
+ condition: (item) => item === 'a' || item === 'c',
447
+ separator: ', ',
448
+ });
449
+ (0, mod_js_1.expect)(sb.toString()).toBe(`item: a, item: c`);
450
+ });
451
+ (0, bdd_js_1.it)('should add the content for items that match the condition with the given separator builder', () => {
452
+ sb.forEach(['a', 'b', 'c'], (x, item) => x.append(`item: ${item}`), {
453
+ condition: (item) => item === 'a' || item === 'c',
454
+ separator: (x, p, n, pi, ni) => x.append(`(${p}:${pi}), (${n}:${ni})`),
455
+ });
456
+ (0, mod_js_1.expect)(sb.toString()).toBe(`item: a(a:0), (c:2)item: c`);
457
+ });
458
+ });
459
+ (0, bdd_js_1.describe)('forEachIf', () => {
460
+ (0, bdd_js_1.it)('should add the content for each item when condition is true', () => {
461
+ sb.forEachIf(true, ['a', 'b', 'c'], (x, item) => x.append(`(${item})`));
462
+ (0, mod_js_1.expect)(sb.toString()).toBe(`(a)(b)(c)`);
463
+ });
464
+ (0, bdd_js_1.it)('should not add the content for each item when condition is false', () => {
465
+ sb.forEachIf(false, ['a', 'b', 'c'], (x, item) => x.append(`(${item})`));
466
+ (0, mod_js_1.expect)(sb.toString()).toBe(``);
467
+ });
468
+ });
469
+ (0, bdd_js_1.describe)('appendSeparated', () => {
470
+ (0, bdd_js_1.it)('should add the content for each item with the given string separator', () => {
471
+ sb.appendSeparated(['a', 'b', 'c'], ', ');
472
+ (0, mod_js_1.expect)(sb.toString()).toBe(`a, b, c`);
473
+ });
474
+ });
475
+ (0, bdd_js_1.describe)('appendSeparatedIf', () => {
476
+ (0, bdd_js_1.it)('should add the content for each item with the given string separator when condition is true', () => {
477
+ sb.appendSeparatedIf(true, ['a', 'b', 'c'], ', ');
478
+ (0, mod_js_1.expect)(sb.toString()).toBe(`a, b, c`);
479
+ });
480
+ (0, bdd_js_1.it)('should not add the content for each item with the given string separator when condition is false', () => {
481
+ sb.appendSeparatedIf(false, ['a', 'b', 'c'], ', ');
482
+ (0, mod_js_1.expect)(sb.toString()).toBe(``);
483
+ });
484
+ });
485
+ });
486
+ (0, bdd_js_1.describe)('builderTemplate', () => {
487
+ (0, bdd_js_1.it)('should resolve append values in a template string', () => {
488
+ const sb = new source_builder_js_1.SourceBuilder();
489
+ sb.append((0, source_builder_js_1.builderTemplate) `abc${'def'}ghi${123}jkl${(b) => b.append('mno')}pqr${(0, utils_js_1.appendValueGroup)(['stu', 'vxw'])}yz`);
490
+ (0, mod_js_1.expect)(sb.toString()).toEqual('abcdefghi123jklmnopqrstuvxwyz');
491
+ });
492
+ (0, bdd_js_1.it)('should remove indentation based on last line', () => {
493
+ const sb = new source_builder_js_1.SourceBuilder();
494
+ sb.append((0, source_builder_js_1.builderTemplate) `${'abc'}
495
+ ${123}
496
+ ghi`);
497
+ (0, mod_js_1.expect)(sb.toString()).toEqual(`abc${node_os_1.EOL}123${node_os_1.EOL}ghi`);
498
+ });
499
+ (0, bdd_js_1.describe)('indent', () => {
500
+ (0, bdd_js_1.it)('should indent the content', () => {
501
+ const sb = new source_builder_js_1.SourceBuilder();
502
+ sb.append(source_builder_js_1.builderTemplate.indent `${'abc'}
503
+ ${123}
504
+ ghi`);
505
+ (0, mod_js_1.expect)(sb.toString()).toEqual(` abc${node_os_1.EOL} 123${node_os_1.EOL} ghi`);
506
+ });
507
+ });
508
+ });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../../src/src/utils/string-builder/options.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,oBAEzC,CAAC"}
@@ -0,0 +1,73 @@
1
+ import type { Nullable, SingleOrMultiple } from '../type.utils.js';
2
+ import { type StringBuilderOptions } from './options.js';
3
+ export type BuilderFn<TBuilder extends StringBuilder> = (builder: TBuilder) => void;
4
+ export type Primitive = string | number | boolean;
5
+ export type AppendParam<TBuilder extends StringBuilder, TAdditionalAppends> = SingleOrMultiple<Primitive | null | undefined | BuilderFn<TBuilder> | TAdditionalAppends | {
6
+ __type: 'append-value-group';
7
+ values: AppendParam<TBuilder, TAdditionalAppends>[];
8
+ separator: string | null;
9
+ }>;
10
+ export declare const AdditionalAppendsSymbol: unique symbol;
11
+ /**
12
+ * Represents a mutable string of characters.
13
+ */
14
+ export declare class StringBuilder<TAdditionalAppends = never> {
15
+ private readonly _options;
16
+ protected str: string;
17
+ [AdditionalAppendsSymbol](_: TAdditionalAppends): void;
18
+ get options(): StringBuilderOptions;
19
+ /**
20
+ * Initializes a new instance of the StringBuilder class.
21
+ * @param options The options.
22
+ */
23
+ constructor(options?: Partial<StringBuilderOptions>);
24
+ /**
25
+ * Creates a new StringBuilder instance and appends the specified string to it.
26
+ * @param str The string to append.
27
+ * @param options The options.
28
+ * @returns A new StringBuilder instance.
29
+ */
30
+ static fromString(str: string, options?: Partial<StringBuilderOptions>): StringBuilder;
31
+ /**
32
+ * Builds a string using a StringBuilder build action.
33
+ * @param buildAction The build action to perform on the StringBuilder instance.
34
+ * @param options The options for the StringBuilder instance.
35
+ * @returns The built string.
36
+ */
37
+ static build(buildAction: AppendParam<StringBuilder, never>, options?: Partial<StringBuilderOptions>): string;
38
+ protected appendSingle(value: AppendParam<this, TAdditionalAppends>): void;
39
+ /**
40
+ * Appends one or more strings to the end of the current StringBuilder.
41
+ * @param value The string(s) to append.
42
+ * @returns The current StringBuilder.
43
+ */
44
+ append(...value: AppendParam<this, TAdditionalAppends>[]): this;
45
+ /**
46
+ * Appends one or more strings to the end of the current StringBuilder, followed by a line terminator.
47
+ * @param value
48
+ * @returns
49
+ */
50
+ appendLine(...value: Nullable<AppendParam<this, TAdditionalAppends>>[]): this;
51
+ /**
52
+ * Prepends one or more strings to the beginning of the current StringBuilder.
53
+ * @param value The string(s) to prepend.
54
+ * @returns The current StringBuilder.
55
+ */
56
+ prepend(...value: AppendParam<StringBuilder, never>[]): this;
57
+ /**
58
+ * Prepends one or more strings to the beginning of the current StringBuilder, followed by a line terminator.
59
+ * @param value The string(s) to prepend.
60
+ * @returns The current StringBuilder.
61
+ */
62
+ prependLine(...value: AppendParam<StringBuilder, never>[]): this;
63
+ /**
64
+ * Converts the value of this instance to a string.
65
+ * @returns A string whose value is the same as this instance.
66
+ */
67
+ toString(): string;
68
+ /**
69
+ * Removes all characters from the current StringBuilder.
70
+ */
71
+ clear(): void;
72
+ }
73
+ //# sourceMappingURL=string-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"string-builder.d.ts","sourceRoot":"","sources":["../../../../src/src/utils/string-builder/string-builder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAA+B,KAAK,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEtF,MAAM,MAAM,SAAS,CAAC,QAAQ,SAAS,aAAa,IAAI,CAAC,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAC;AACpF,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAElD,MAAM,MAAM,WAAW,CAAC,QAAQ,SAAS,aAAa,EAAE,kBAAkB,IAAI,gBAAgB,CAC1F,SAAS,GACT,IAAI,GACJ,SAAS,GACT,SAAS,CAAC,QAAQ,CAAC,GAEnB,kBAAkB,GAClB;IACA,MAAM,EAAE,oBAAoB,CAAC;IAC7B,MAAM,EAAE,WAAW,CAAC,QAAQ,EAAE,kBAAkB,CAAC,EAAE,CAAC;IACpD,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CACF,CAAC;AAEF,eAAO,MAAM,uBAAuB,eAA8B,CAAC;AAEnE;;GAEG;AACH,qBAAa,aAAa,CAAC,kBAAkB,GAAG,KAAK;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAChD,SAAS,CAAC,GAAG,EAAE,MAAM,CAAM;IAE3B,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,kBAAkB,GAAG,IAAI;IAItD,IAAW,OAAO,IAAI,oBAAoB,CAEzC;IAED;;;OAGG;gBACS,OAAO,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC;IAInD;;;;;OAKG;WACW,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG,aAAa;IAM7F;;;;;OAKG;WACW,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG,MAAM;IAMpH,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,IAAI,EAAE,kBAAkB,CAAC;IA6BnE;;;;OAIG;IACI,MAAM,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC,IAAI,EAAE,kBAAkB,CAAC,EAAE,GAAG,IAAI;IAOtE;;;;OAIG;IACI,UAAU,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC,EAAE,GAAG,IAAI;IAIpF;;;;OAIG;IACI,OAAO,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI;IAgBnE;;;;OAIG;IACI,WAAW,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI;IAIvE;;;OAGG;IACI,QAAQ,IAAI,MAAM;IAIzB;;OAEG;IACI,KAAK,IAAI,IAAI;CAGrB"}