@seamapi/nextlove-sdk-generator 1.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 (287) hide show
  1. package/LICENSE.txt +20 -0
  2. package/README.md +16 -0
  3. package/index.d.ts +6 -0
  4. package/index.js +7 -0
  5. package/index.js.map +1 -0
  6. package/lib/cli.d.ts +2 -0
  7. package/lib/cli.js +53 -0
  8. package/lib/cli.js.map +1 -0
  9. package/lib/fs-util/index.d.ts +2 -0
  10. package/lib/fs-util/index.js +3 -0
  11. package/lib/fs-util/index.js.map +1 -0
  12. package/lib/fs-util/populate-fs.d.ts +1 -0
  13. package/lib/fs-util/populate-fs.js +11 -0
  14. package/lib/fs-util/populate-fs.js.map +1 -0
  15. package/lib/fs-util/write-fs.d.ts +1 -0
  16. package/lib/fs-util/write-fs.js +10 -0
  17. package/lib/fs-util/write-fs.js.map +1 -0
  18. package/lib/generate-csharp-sdk/codegen.d.ts +235 -0
  19. package/lib/generate-csharp-sdk/codegen.js +432 -0
  20. package/lib/generate-csharp-sdk/codegen.js.map +1 -0
  21. package/lib/generate-csharp-sdk/constants.d.ts +1 -0
  22. package/lib/generate-csharp-sdk/constants.js +2 -0
  23. package/lib/generate-csharp-sdk/constants.js.map +1 -0
  24. package/lib/generate-csharp-sdk/generate-csharp-sdk.d.ts +1 -0
  25. package/lib/generate-csharp-sdk/generate-csharp-sdk.js +81 -0
  26. package/lib/generate-csharp-sdk/generate-csharp-sdk.js.map +1 -0
  27. package/lib/generate-csharp-sdk/generate-csproj.d.ts +1 -0
  28. package/lib/generate-csharp-sdk/generate-csproj.js +45 -0
  29. package/lib/generate-csharp-sdk/generate-csproj.js.map +1 -0
  30. package/lib/generate-csharp-sdk/templates/dataclass.d.ts +24 -0
  31. package/lib/generate-csharp-sdk/templates/dataclass.js +468 -0
  32. package/lib/generate-csharp-sdk/templates/dataclass.js.map +1 -0
  33. package/lib/generate-csharp-sdk/templates/fs/csharp-testing.sln +34 -0
  34. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/ApiResponse.cs +159 -0
  35. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/ClientUtils.cs +280 -0
  36. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/ExceptionFactory.cs +12 -0
  37. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/GlobalSeamRequestConfiguration.cs +60 -0
  38. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/HttpMethod.cs +29 -0
  39. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/IAsynchronousSeam.cs +142 -0
  40. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/IReadableSeamRequestConfiguration.cs +68 -0
  41. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/ISynchronousSeam.cs +103 -0
  42. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/Multimap.cs +286 -0
  43. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/RequestOptions.cs +74 -0
  44. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/RetryConfiguration.cs +21 -0
  45. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/Seam.cs +1070 -0
  46. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/SeamException.cs +64 -0
  47. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/SeamRequestConfiguration.cs +662 -0
  48. package/lib/generate-csharp-sdk/templates/fs/src/Seam/Model/AsbtractModelSchema.cs +62 -0
  49. package/lib/generate-php-sdk/generate-php-sdk.d.ts +1 -0
  50. package/lib/generate-php-sdk/generate-php-sdk.js +127 -0
  51. package/lib/generate-php-sdk/generate-php-sdk.js.map +1 -0
  52. package/lib/generate-php-sdk/index.d.ts +1 -0
  53. package/lib/generate-php-sdk/index.js +2 -0
  54. package/lib/generate-php-sdk/index.js.map +1 -0
  55. package/lib/generate-php-sdk/templates/composer.json.template.d.ts +2 -0
  56. package/lib/generate-php-sdk/templates/composer.json.template.js +25 -0
  57. package/lib/generate-php-sdk/templates/composer.json.template.js.map +1 -0
  58. package/lib/generate-php-sdk/templates/env.example.template.d.ts +2 -0
  59. package/lib/generate-php-sdk/templates/env.example.template.js +4 -0
  60. package/lib/generate-php-sdk/templates/env.example.template.js.map +1 -0
  61. package/lib/generate-php-sdk/templates/gitignore.template.d.ts +2 -0
  62. package/lib/generate-php-sdk/templates/gitignore.template.js +6 -0
  63. package/lib/generate-php-sdk/templates/gitignore.template.js.map +1 -0
  64. package/lib/generate-php-sdk/templates/package.json.template.d.ts +2 -0
  65. package/lib/generate-php-sdk/templates/package.json.template.js +12 -0
  66. package/lib/generate-php-sdk/templates/package.json.template.js.map +1 -0
  67. package/lib/generate-php-sdk/templates/readme.md.template.d.ts +2 -0
  68. package/lib/generate-php-sdk/templates/readme.md.template.js +86 -0
  69. package/lib/generate-php-sdk/templates/readme.md.template.js.map +1 -0
  70. package/lib/generate-php-sdk/templates/smoke-test.template.d.ts +2 -0
  71. package/lib/generate-php-sdk/templates/smoke-test.template.js +30 -0
  72. package/lib/generate-php-sdk/templates/smoke-test.template.js.map +1 -0
  73. package/lib/generate-php-sdk/templates/test-fixture.template.d.ts +2 -0
  74. package/lib/generate-php-sdk/templates/test-fixture.template.js +21 -0
  75. package/lib/generate-php-sdk/templates/test-fixture.template.js.map +1 -0
  76. package/lib/generate-php-sdk/utils/deep-extract-resource-object-schemas.d.ts +16 -0
  77. package/lib/generate-php-sdk/utils/deep-extract-resource-object-schemas.js +97 -0
  78. package/lib/generate-php-sdk/utils/deep-extract-resource-object-schemas.js.map +1 -0
  79. package/lib/generate-php-sdk/utils/deep-flatten-one-of-and-all-of-schema.d.ts +2 -0
  80. package/lib/generate-php-sdk/utils/deep-flatten-one-of-and-all-of-schema.js +95 -0
  81. package/lib/generate-php-sdk/utils/deep-flatten-one-of-and-all-of-schema.js.map +1 -0
  82. package/lib/generate-php-sdk/utils/generate-resource-object-class.d.ts +8 -0
  83. package/lib/generate-php-sdk/utils/generate-resource-object-class.js +73 -0
  84. package/lib/generate-php-sdk/utils/generate-resource-object-class.js.map +1 -0
  85. package/lib/generate-php-sdk/utils/generate-seam-client.d.ts +7 -0
  86. package/lib/generate-php-sdk/utils/generate-seam-client.js +103 -0
  87. package/lib/generate-php-sdk/utils/generate-seam-client.js.map +1 -0
  88. package/lib/generate-php-sdk/utils/get-php-type.d.ts +1 -0
  89. package/lib/generate-php-sdk/utils/get-php-type.js +17 -0
  90. package/lib/generate-php-sdk/utils/get-php-type.js.map +1 -0
  91. package/lib/generate-php-sdk/utils/php-client.d.ts +31 -0
  92. package/lib/generate-php-sdk/utils/php-client.js +130 -0
  93. package/lib/generate-php-sdk/utils/php-client.js.map +1 -0
  94. package/lib/generate-python-sdk/class-file.d.ts +20 -0
  95. package/lib/generate-python-sdk/class-file.js +75 -0
  96. package/lib/generate-python-sdk/class-file.js.map +1 -0
  97. package/lib/generate-python-sdk/generate-python-sdk.d.ts +1 -0
  98. package/lib/generate-python-sdk/generate-python-sdk.js +117 -0
  99. package/lib/generate-python-sdk/generate-python-sdk.js.map +1 -0
  100. package/lib/generate-python-sdk/index.d.ts +1 -0
  101. package/lib/generate-python-sdk/index.js +2 -0
  102. package/lib/generate-python-sdk/index.js.map +1 -0
  103. package/lib/generate-python-sdk/map-python-type.d.ts +2 -0
  104. package/lib/generate-python-sdk/map-python-type.js +26 -0
  105. package/lib/generate-python-sdk/map-python-type.js.map +1 -0
  106. package/lib/generate-python-sdk/templates/conftest.py.template.d.ts +2 -0
  107. package/lib/generate-python-sdk/templates/conftest.py.template.js +12 -0
  108. package/lib/generate-python-sdk/templates/conftest.py.template.js.map +1 -0
  109. package/lib/generate-python-sdk/templates/pyproject.toml.template.d.ts +2 -0
  110. package/lib/generate-python-sdk/templates/pyproject.toml.template.js +21 -0
  111. package/lib/generate-python-sdk/templates/pyproject.toml.template.js.map +1 -0
  112. package/lib/generate-python-sdk/templates/readme.md.template.d.ts +2 -0
  113. package/lib/generate-python-sdk/templates/readme.md.template.js +48 -0
  114. package/lib/generate-python-sdk/templates/readme.md.template.js.map +1 -0
  115. package/lib/generate-python-sdk/templates/routes.py.template.d.ts +2 -0
  116. package/lib/generate-python-sdk/templates/routes.py.template.js +13 -0
  117. package/lib/generate-python-sdk/templates/routes.py.template.js.map +1 -0
  118. package/lib/generate-python-sdk/templates/seam.py.template.d.ts +2 -0
  119. package/lib/generate-python-sdk/templates/seam.py.template.js +74 -0
  120. package/lib/generate-python-sdk/templates/seam.py.template.js.map +1 -0
  121. package/lib/generate-python-sdk/templates/snippets/abstract-routes.template.d.ts +2 -0
  122. package/lib/generate-python-sdk/templates/snippets/abstract-routes.template.js +9 -0
  123. package/lib/generate-python-sdk/templates/snippets/abstract-routes.template.js.map +1 -0
  124. package/lib/generate-python-sdk/templates/snippets/abstract-seam.template.d.ts +2 -0
  125. package/lib/generate-python-sdk/templates/snippets/abstract-seam.template.js +9 -0
  126. package/lib/generate-python-sdk/templates/snippets/abstract-seam.template.js.map +1 -0
  127. package/lib/generate-python-sdk/templates/snippets/resource-dataclass.template.d.ts +5 -0
  128. package/lib/generate-python-sdk/templates/snippets/resource-dataclass.template.js +10 -0
  129. package/lib/generate-python-sdk/templates/snippets/resource-dataclass.template.js.map +1 -0
  130. package/lib/generate-python-sdk/templates/test_smoke.py.template.d.ts +2 -0
  131. package/lib/generate-python-sdk/templates/test_smoke.py.template.js +13 -0
  132. package/lib/generate-python-sdk/templates/test_smoke.py.template.js.map +1 -0
  133. package/lib/generate-python-sdk/templates/utils/deep_attr_dict.py.template.d.ts +2 -0
  134. package/lib/generate-python-sdk/templates/utils/deep_attr_dict.py.template.js +28 -0
  135. package/lib/generate-python-sdk/templates/utils/deep_attr_dict.py.template.js.map +1 -0
  136. package/lib/generate-ruby-sdk/generate-ruby-sdk.d.ts +1 -0
  137. package/lib/generate-ruby-sdk/generate-ruby-sdk.js +132 -0
  138. package/lib/generate-ruby-sdk/generate-ruby-sdk.js.map +1 -0
  139. package/lib/generate-ruby-sdk/index.d.ts +1 -0
  140. package/lib/generate-ruby-sdk/index.js +2 -0
  141. package/lib/generate-ruby-sdk/index.js.map +1 -0
  142. package/lib/generate-ruby-sdk/request.rb.template.d.ts +1 -0
  143. package/lib/generate-ruby-sdk/request.rb.template.js +2 -0
  144. package/lib/generate-ruby-sdk/request.rb.template.js.map +1 -0
  145. package/lib/generate-ruby-sdk/ruby-client.d.ts +35 -0
  146. package/lib/generate-ruby-sdk/ruby-client.js +59 -0
  147. package/lib/generate-ruby-sdk/ruby-client.js.map +1 -0
  148. package/lib/generate-ruby-sdk/templates/base_client.rb.template.d.ts +2 -0
  149. package/lib/generate-ruby-sdk/templates/base_client.rb.template.js +22 -0
  150. package/lib/generate-ruby-sdk/templates/base_client.rb.template.js.map +1 -0
  151. package/lib/generate-ruby-sdk/templates/base_resource.rb.template.d.ts +2 -0
  152. package/lib/generate-ruby-sdk/templates/base_resource.rb.template.js +59 -0
  153. package/lib/generate-ruby-sdk/templates/base_resource.rb.template.js.map +1 -0
  154. package/lib/generate-ruby-sdk/templates/client.rb.template.d.ts +2 -0
  155. package/lib/generate-ruby-sdk/templates/client.rb.template.js +74 -0
  156. package/lib/generate-ruby-sdk/templates/client.rb.template.js.map +1 -0
  157. package/lib/generate-ruby-sdk/templates/gemfile.template.d.ts +2 -0
  158. package/lib/generate-ruby-sdk/templates/gemfile.template.js +7 -0
  159. package/lib/generate-ruby-sdk/templates/gemfile.template.js.map +1 -0
  160. package/lib/generate-ruby-sdk/templates/logger.rb.template.d.ts +2 -0
  161. package/lib/generate-ruby-sdk/templates/logger.rb.template.js +13 -0
  162. package/lib/generate-ruby-sdk/templates/logger.rb.template.js.map +1 -0
  163. package/lib/generate-ruby-sdk/templates/rakefile.template.d.ts +2 -0
  164. package/lib/generate-ruby-sdk/templates/rakefile.template.js +23 -0
  165. package/lib/generate-ruby-sdk/templates/rakefile.template.js.map +1 -0
  166. package/lib/generate-ruby-sdk/templates/readme.md.template.d.ts +2 -0
  167. package/lib/generate-ruby-sdk/templates/readme.md.template.js +184 -0
  168. package/lib/generate-ruby-sdk/templates/readme.md.template.js.map +1 -0
  169. package/lib/generate-ruby-sdk/templates/request.rb.template.d.ts +2 -0
  170. package/lib/generate-ruby-sdk/templates/request.rb.template.js +71 -0
  171. package/lib/generate-ruby-sdk/templates/request.rb.template.js.map +1 -0
  172. package/lib/generate-ruby-sdk/templates/resource_error.rb.template.d.ts +2 -0
  173. package/lib/generate-ruby-sdk/templates/resource_error.rb.template.js +8 -0
  174. package/lib/generate-ruby-sdk/templates/resource_error.rb.template.js.map +1 -0
  175. package/lib/generate-ruby-sdk/templates/resource_errors_support.rb.template.d.ts +2 -0
  176. package/lib/generate-ruby-sdk/templates/resource_errors_support.rb.template.js +10 -0
  177. package/lib/generate-ruby-sdk/templates/resource_errors_support.rb.template.js.map +1 -0
  178. package/lib/generate-ruby-sdk/templates/resource_warning.rb.template.d.ts +2 -0
  179. package/lib/generate-ruby-sdk/templates/resource_warning.rb.template.js +8 -0
  180. package/lib/generate-ruby-sdk/templates/resource_warning.rb.template.js.map +1 -0
  181. package/lib/generate-ruby-sdk/templates/resource_warnings_support.rb.template.d.ts +2 -0
  182. package/lib/generate-ruby-sdk/templates/resource_warnings_support.rb.template.js +10 -0
  183. package/lib/generate-ruby-sdk/templates/resource_warnings_support.rb.template.js.map +1 -0
  184. package/lib/generate-ruby-sdk/templates/seamapi.gemspec.template.d.ts +2 -0
  185. package/lib/generate-ruby-sdk/templates/seamapi.gemspec.template.js +41 -0
  186. package/lib/generate-ruby-sdk/templates/seamapi.gemspec.template.js.map +1 -0
  187. package/lib/generate-ruby-sdk/templates/snippets/resource.rb.template.d.ts +6 -0
  188. package/lib/generate-ruby-sdk/templates/snippets/resource.rb.template.js +15 -0
  189. package/lib/generate-ruby-sdk/templates/snippets/resource.rb.template.js.map +1 -0
  190. package/lib/generate-ruby-sdk/templates/version.rb.template.d.ts +2 -0
  191. package/lib/generate-ruby-sdk/templates/version.rb.template.js +6 -0
  192. package/lib/generate-ruby-sdk/templates/version.rb.template.js.map +1 -0
  193. package/lib/index.d.ts +2 -0
  194. package/lib/index.js +3 -0
  195. package/lib/index.js.map +1 -0
  196. package/lib/openapi/flatten-obj-schema.d.ts +5 -0
  197. package/lib/openapi/flatten-obj-schema.js +86 -0
  198. package/lib/openapi/flatten-obj-schema.js.map +1 -0
  199. package/lib/openapi/get-parameter-and-response-schema.d.ts +20 -0
  200. package/lib/openapi/get-parameter-and-response-schema.js +42 -0
  201. package/lib/openapi/get-parameter-and-response-schema.js.map +1 -0
  202. package/lib/openapi/index.d.ts +2 -0
  203. package/lib/openapi/index.js +3 -0
  204. package/lib/openapi/index.js.map +1 -0
  205. package/lib/types.d.ts +91 -0
  206. package/lib/types.js +2 -0
  207. package/lib/types.js.map +1 -0
  208. package/package.json +95 -0
  209. package/src/index.ts +6 -0
  210. package/src/lib/cli.ts +71 -0
  211. package/src/lib/fs-util/index.ts +2 -0
  212. package/src/lib/fs-util/populate-fs.ts +14 -0
  213. package/src/lib/fs-util/write-fs.ts +10 -0
  214. package/src/lib/generate-csharp-sdk/codegen.ts +648 -0
  215. package/src/lib/generate-csharp-sdk/constants.ts +1 -0
  216. package/src/lib/generate-csharp-sdk/generate-csharp-sdk.ts +126 -0
  217. package/src/lib/generate-csharp-sdk/generate-csproj.ts +45 -0
  218. package/src/lib/generate-csharp-sdk/templates/dataclass.ts +973 -0
  219. package/src/lib/generate-csharp-sdk/templates/fs/csharp-testing.sln +34 -0
  220. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/ApiResponse.cs +159 -0
  221. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/ClientUtils.cs +280 -0
  222. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/ExceptionFactory.cs +12 -0
  223. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/GlobalSeamRequestConfiguration.cs +60 -0
  224. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/HttpMethod.cs +29 -0
  225. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/IAsynchronousSeam.cs +142 -0
  226. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/IReadableSeamRequestConfiguration.cs +68 -0
  227. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/ISynchronousSeam.cs +103 -0
  228. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/Multimap.cs +286 -0
  229. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/RequestOptions.cs +74 -0
  230. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/RetryConfiguration.cs +21 -0
  231. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/Seam.cs +1070 -0
  232. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/SeamException.cs +64 -0
  233. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Client/SeamRequestConfiguration.cs +662 -0
  234. package/src/lib/generate-csharp-sdk/templates/fs/src/Seam/Model/AsbtractModelSchema.cs +62 -0
  235. package/src/lib/generate-php-sdk/generate-php-sdk.ts +176 -0
  236. package/src/lib/generate-php-sdk/index.ts +1 -0
  237. package/src/lib/generate-php-sdk/templates/composer.json.template.ts +24 -0
  238. package/src/lib/generate-php-sdk/templates/env.example.template.ts +3 -0
  239. package/src/lib/generate-php-sdk/templates/gitignore.template.ts +5 -0
  240. package/src/lib/generate-php-sdk/templates/package.json.template.ts +11 -0
  241. package/src/lib/generate-php-sdk/templates/readme.md.template.ts +85 -0
  242. package/src/lib/generate-php-sdk/templates/smoke-test.template.ts +29 -0
  243. package/src/lib/generate-php-sdk/templates/test-fixture.template.ts +20 -0
  244. package/src/lib/generate-php-sdk/utils/deep-extract-resource-object-schemas.ts +160 -0
  245. package/src/lib/generate-php-sdk/utils/deep-flatten-one-of-and-all-of-schema.ts +128 -0
  246. package/src/lib/generate-php-sdk/utils/generate-resource-object-class.ts +105 -0
  247. package/src/lib/generate-php-sdk/utils/generate-seam-client.ts +115 -0
  248. package/src/lib/generate-php-sdk/utils/get-php-type.ts +21 -0
  249. package/src/lib/generate-php-sdk/utils/php-client.ts +189 -0
  250. package/src/lib/generate-python-sdk/class-file.ts +114 -0
  251. package/src/lib/generate-python-sdk/generate-python-sdk.ts +147 -0
  252. package/src/lib/generate-python-sdk/index.ts +1 -0
  253. package/src/lib/generate-python-sdk/map-python-type.ts +29 -0
  254. package/src/lib/generate-python-sdk/templates/conftest.py.template.ts +11 -0
  255. package/src/lib/generate-python-sdk/templates/pyproject.toml.template.ts +20 -0
  256. package/src/lib/generate-python-sdk/templates/readme.md.template.ts +47 -0
  257. package/src/lib/generate-python-sdk/templates/routes.py.template.ts +13 -0
  258. package/src/lib/generate-python-sdk/templates/seam.py.template.ts +73 -0
  259. package/src/lib/generate-python-sdk/templates/snippets/abstract-routes.template.ts +9 -0
  260. package/src/lib/generate-python-sdk/templates/snippets/abstract-seam.template.ts +8 -0
  261. package/src/lib/generate-python-sdk/templates/snippets/resource-dataclass.template.ts +15 -0
  262. package/src/lib/generate-python-sdk/templates/test_smoke.py.template.ts +12 -0
  263. package/src/lib/generate-python-sdk/templates/utils/deep_attr_dict.py.template.ts +27 -0
  264. package/src/lib/generate-ruby-sdk/generate-ruby-sdk.ts +153 -0
  265. package/src/lib/generate-ruby-sdk/index.ts +1 -0
  266. package/src/lib/generate-ruby-sdk/request.rb.template.ts +0 -0
  267. package/src/lib/generate-ruby-sdk/ruby-client.ts +81 -0
  268. package/src/lib/generate-ruby-sdk/templates/base_client.rb.template.ts +21 -0
  269. package/src/lib/generate-ruby-sdk/templates/base_resource.rb.template.ts +58 -0
  270. package/src/lib/generate-ruby-sdk/templates/client.rb.template.ts +73 -0
  271. package/src/lib/generate-ruby-sdk/templates/gemfile.template.ts +6 -0
  272. package/src/lib/generate-ruby-sdk/templates/logger.rb.template.ts +12 -0
  273. package/src/lib/generate-ruby-sdk/templates/rakefile.template.ts +22 -0
  274. package/src/lib/generate-ruby-sdk/templates/readme.md.template.ts +183 -0
  275. package/src/lib/generate-ruby-sdk/templates/request.rb.template.ts +70 -0
  276. package/src/lib/generate-ruby-sdk/templates/resource_error.rb.template.ts +7 -0
  277. package/src/lib/generate-ruby-sdk/templates/resource_errors_support.rb.template.ts +9 -0
  278. package/src/lib/generate-ruby-sdk/templates/resource_warning.rb.template.ts +7 -0
  279. package/src/lib/generate-ruby-sdk/templates/resource_warnings_support.rb.template.ts +9 -0
  280. package/src/lib/generate-ruby-sdk/templates/seamapi.gemspec.template.ts +40 -0
  281. package/src/lib/generate-ruby-sdk/templates/snippets/resource.rb.template.ts +24 -0
  282. package/src/lib/generate-ruby-sdk/templates/version.rb.template.ts +5 -0
  283. package/src/lib/index.ts +2 -0
  284. package/src/lib/openapi/flatten-obj-schema.ts +124 -0
  285. package/src/lib/openapi/get-parameter-and-response-schema.ts +59 -0
  286. package/src/lib/openapi/index.ts +2 -0
  287. package/src/lib/types.ts +96 -0
@@ -0,0 +1,95 @@
1
+ export function deepFlattenOneOfAndAllOfSchema(schema) {
2
+ if ("oneOf" in schema) {
3
+ return flattenOneOf(schema);
4
+ }
5
+ else if ("allOf" in schema) {
6
+ return flattenAllOf(schema);
7
+ }
8
+ else if ("type" in schema &&
9
+ schema.type === "object" &&
10
+ schema.properties) {
11
+ return flattenObject(schema);
12
+ }
13
+ else if ("type" in schema && schema.type === "array" && schema.items) {
14
+ return flattenArray(schema);
15
+ }
16
+ else {
17
+ // For primitive types, return the schema as is
18
+ return schema;
19
+ }
20
+ }
21
+ function flattenOneOf(one_of_schema) {
22
+ const flattened_schema = {
23
+ type: "object",
24
+ properties: {},
25
+ required: [],
26
+ };
27
+ for (const sub_schema of one_of_schema.oneOf) {
28
+ const flattened_sub_schema = deepFlattenOneOfAndAllOfSchema(sub_schema);
29
+ // Check if the sub-schema is a primitive schema
30
+ if ("type" in flattened_sub_schema &&
31
+ !("properties" in flattened_sub_schema)) {
32
+ return { type: flattened_sub_schema.type };
33
+ }
34
+ if ("$ref" in flattened_sub_schema) {
35
+ console.error("$ref not currently supported when flattening oneOf");
36
+ continue;
37
+ }
38
+ // Merge properties
39
+ Object.assign(flattened_schema.properties, flattened_sub_schema.properties);
40
+ // Update required array with common properties
41
+ flattened_schema.required =
42
+ flattened_schema.required.length === 0
43
+ ? flattened_sub_schema.required
44
+ : flattened_schema.required.filter((prop) => flattened_sub_schema.required.includes(prop));
45
+ }
46
+ return flattened_schema;
47
+ }
48
+ function flattenAllOf(all_of_schema) {
49
+ const flattened_schema = {
50
+ type: "object",
51
+ properties: {},
52
+ required: [],
53
+ };
54
+ for (const sub_Schema of all_of_schema.allOf) {
55
+ const flattened_sub_schema = deepFlattenOneOfAndAllOfSchema(sub_Schema);
56
+ // Check if the sub-schema is a primitive schema
57
+ if ("type" in flattened_sub_schema &&
58
+ !("properties" in flattened_sub_schema)) {
59
+ return { type: flattened_sub_schema.type };
60
+ }
61
+ if ("$ref" in flattened_sub_schema) {
62
+ console.error("$ref not currently supported when flattening allOf");
63
+ continue;
64
+ }
65
+ // Merge properties
66
+ Object.assign(flattened_schema.properties, flattened_sub_schema.properties);
67
+ // Merge required array
68
+ flattened_schema.required = [
69
+ ...new Set([
70
+ ...flattened_schema.required,
71
+ ...flattened_sub_schema.required,
72
+ ]),
73
+ ];
74
+ }
75
+ return flattened_schema;
76
+ }
77
+ function flattenObject(obj_schema) {
78
+ const flattened_schema = {
79
+ type: "object",
80
+ properties: {},
81
+ required: obj_schema.required || [],
82
+ };
83
+ for (const prop in obj_schema.properties) {
84
+ flattened_schema.properties[prop] = deepFlattenOneOfAndAllOfSchema(obj_schema.properties[prop]);
85
+ }
86
+ return flattened_schema;
87
+ }
88
+ function flattenArray(array_schema) {
89
+ const flattened_schema = {
90
+ type: "array",
91
+ items: deepFlattenOneOfAndAllOfSchema(array_schema.items),
92
+ };
93
+ return flattened_schema;
94
+ }
95
+ //# sourceMappingURL=deep-flatten-one-of-and-all-of-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deep-flatten-one-of-and-all-of-schema.js","sourceRoot":"","sources":["../../../src/lib/generate-php-sdk/utils/deep-flatten-one-of-and-all-of-schema.ts"],"names":[],"mappings":"AASA,MAAM,UAAU,8BAA8B,CAAC,MAAsB;IACnE,IAAI,OAAO,IAAI,MAAM,EAAE;QACrB,OAAO,YAAY,CAAC,MAAM,CAAC,CAAA;KAC5B;SAAM,IAAI,OAAO,IAAI,MAAM,EAAE;QAC5B,OAAO,YAAY,CAAC,MAAM,CAAC,CAAA;KAC5B;SAAM,IACL,MAAM,IAAI,MAAM;QAChB,MAAM,CAAC,IAAI,KAAK,QAAQ;QACxB,MAAM,CAAC,UAAU,EACjB;QACA,OAAO,aAAa,CAAC,MAAM,CAAC,CAAA;KAC7B;SAAM,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,KAAK,EAAE;QACtE,OAAO,YAAY,CAAC,MAAM,CAAC,CAAA;KAC5B;SAAM;QACL,+CAA+C;QAC/C,OAAO,MAAM,CAAA;KACd;AACH,CAAC;AAED,SAAS,YAAY,CAAC,aAA0B;IAC9C,MAAM,gBAAgB,GAAG;QACvB,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,EAAE;KACA,CAAA;IAEd,KAAK,MAAM,UAAU,IAAI,aAAa,CAAC,KAAK,EAAE;QAC5C,MAAM,oBAAoB,GAAG,8BAA8B,CAAC,UAAU,CAAC,CAAA;QAEvE,gDAAgD;QAChD,IACE,MAAM,IAAI,oBAAoB;YAC9B,CAAC,CAAC,YAAY,IAAI,oBAAoB,CAAC,EACvC;YACA,OAAO,EAAE,IAAI,EAAE,oBAAoB,CAAC,IAAI,EAAqB,CAAA;SAC9D;QAED,IAAI,MAAM,IAAI,oBAAoB,EAAE;YAClC,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAA;YACnE,SAAQ;SACT;QAED,mBAAmB;QACnB,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,oBAAoB,CAAC,UAAU,CAAC,CAAA;QAE3E,+CAA+C;QAC/C,gBAAgB,CAAC,QAAQ;YACvB,gBAAgB,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;gBACpC,CAAC,CAAC,oBAAoB,CAAC,QAAQ;gBAC/B,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CACxC,oBAAoB,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAC7C,CAAA;KACR;IAED,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,SAAS,YAAY,CAAC,aAA0B;IAC9C,MAAM,gBAAgB,GAAG;QACvB,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,EAAE;KACA,CAAA;IAEd,KAAK,MAAM,UAAU,IAAI,aAAa,CAAC,KAAK,EAAE;QAC5C,MAAM,oBAAoB,GAAG,8BAA8B,CAAC,UAAU,CAAC,CAAA;QAEvE,gDAAgD;QAChD,IACE,MAAM,IAAI,oBAAoB;YAC9B,CAAC,CAAC,YAAY,IAAI,oBAAoB,CAAC,EACvC;YACA,OAAO,EAAE,IAAI,EAAE,oBAAoB,CAAC,IAAI,EAAqB,CAAA;SAC9D;QAED,IAAI,MAAM,IAAI,oBAAoB,EAAE;YAClC,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAA;YACnE,SAAQ;SACT;QAED,mBAAmB;QACnB,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,oBAAoB,CAAC,UAAU,CAAC,CAAA;QAE3E,uBAAuB;QACvB,gBAAgB,CAAC,QAAQ,GAAG;YAC1B,GAAG,IAAI,GAAG,CAAC;gBACT,GAAG,gBAAgB,CAAC,QAAQ;gBAC5B,GAAG,oBAAoB,CAAC,QAAQ;aACjC,CAAC;SACH,CAAA;KACF;IAED,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,SAAS,aAAa,CAAC,UAAqB;IAC1C,MAAM,gBAAgB,GAAG;QACvB,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,UAAU,CAAC,QAAQ,IAAI,EAAE;KACvB,CAAA;IAEd,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,UAAU,EAAE;QACxC,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,8BAA8B,CAChE,UAAU,CAAC,UAAU,CAAC,IAAI,CAAE,CAC7B,CAAA;KACF;IAED,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,SAAS,YAAY,CAAC,YAAyB;IAC7C,MAAM,gBAAgB,GAAG;QACvB,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,8BAA8B,CAAC,YAAY,CAAC,KAAK,CAAC;KAC3C,CAAA;IAEhB,OAAO,gBAAgB,CAAA;AACzB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { PropertySchemaWithReferenceObject } from "./deep-extract-resource-object-schemas.js";
2
+ interface Params {
3
+ resource_name: string;
4
+ resource_properties: Record<string, PropertySchemaWithReferenceObject>;
5
+ required_property_names: string[];
6
+ }
7
+ export declare const generateResourceObjectClass: ({ resource_name, resource_properties, required_property_names, }: Params) => string;
8
+ export {};
@@ -0,0 +1,73 @@
1
+ import { getPhpType } from "./get-php-type.js";
2
+ export const generateResourceObjectClass = ({ resource_name, resource_properties, required_property_names, }) => {
3
+ const generateTypeDefinition = (prop_name, prop_schema) => {
4
+ const is_object_referencing_resource = "type" in prop_schema &&
5
+ prop_schema.type === "object" &&
6
+ "reference_object_type_name" in prop_schema;
7
+ const is_array_referencing_resource = "type" in prop_schema &&
8
+ prop_schema.type === "array" &&
9
+ "reference_object_type_name" in prop_schema;
10
+ if (is_object_referencing_resource) {
11
+ return `${prop_name}: ${prop_schema.reference_object_type_name}::from_json($json->${prop_name})${required_property_names.includes(prop_name) ? "," : " ?? null,"}`;
12
+ }
13
+ else if (is_array_referencing_resource) {
14
+ return `${prop_name}: array_map(
15
+ fn ($${prop_name[0]}) => ${prop_schema.reference_object_type_name}::from_json($${prop_name[0]}),
16
+ $json->${prop_name} ?? []
17
+ ),`;
18
+ }
19
+ else {
20
+ return `${prop_name}: $json->${prop_name}${required_property_names.includes(prop_name) ? "," : " ?? null,"}`;
21
+ }
22
+ };
23
+ const generateFromJsonMethod = () => {
24
+ return `
25
+ public static function from_json(mixed $json): ${resource_name}|null
26
+ {
27
+ if (!$json) {
28
+ return null;
29
+ }
30
+ return new self(
31
+ ${Object.entries(resource_properties)
32
+ .map(([prop, prop_schema]) => generateTypeDefinition(prop, prop_schema))
33
+ .join("\n ")}
34
+ );
35
+ }
36
+ `;
37
+ };
38
+ const generateConstructor = () => {
39
+ return `
40
+ public function __construct(
41
+ ${Object.entries(resource_properties)
42
+ .map(([prop_name, prop_schema]) => {
43
+ const is_object_referencing_resource = "type" in prop_schema &&
44
+ prop_schema.type === "object" &&
45
+ "reference_object_type_name" in prop_schema;
46
+ const php_type = is_object_referencing_resource
47
+ ? prop_schema.reference_object_type_name
48
+ : getPhpType("type" in prop_schema ? prop_schema.type : "mixed");
49
+ return `public ${php_type}${php_type === "mixed"
50
+ ? ""
51
+ : required_property_names.includes(prop_name)
52
+ ? ""
53
+ : " | null"} $${prop_name},`;
54
+ })
55
+ .join("\n ")}
56
+ ) {
57
+ }
58
+ `;
59
+ };
60
+ const phpClass = `<?php
61
+
62
+ namespace Seam\\Objects;
63
+
64
+ class ${resource_name}
65
+ {
66
+ ${generateFromJsonMethod()}
67
+
68
+ ${generateConstructor()}
69
+ }
70
+ `;
71
+ return phpClass;
72
+ };
73
+ //# sourceMappingURL=generate-resource-object-class.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-resource-object-class.js","sourceRoot":"","sources":["../../../src/lib/generate-php-sdk/utils/generate-resource-object-class.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAQ9C,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,EAC1C,aAAa,EACb,mBAAmB,EACnB,uBAAuB,GAChB,EAAE,EAAE;IACX,MAAM,sBAAsB,GAAG,CAC7B,SAAiB,EACjB,WAA8C,EAC9C,EAAE;QACF,MAAM,8BAA8B,GAClC,MAAM,IAAI,WAAW;YACrB,WAAW,CAAC,IAAI,KAAK,QAAQ;YAC7B,4BAA4B,IAAI,WAAW,CAAA;QAE7C,MAAM,6BAA6B,GACjC,MAAM,IAAI,WAAW;YACrB,WAAW,CAAC,IAAI,KAAK,OAAO;YAC5B,4BAA4B,IAAI,WAAW,CAAA;QAE7C,IAAI,8BAA8B,EAAE;YAClC,OAAO,GAAG,SAAS,KACjB,WAAW,CAAC,0BACd,sBAAsB,SAAS,IAC7B,uBAAuB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WACtD,EAAE,CAAA;SACH;aAAM,IAAI,6BAA6B,EAAE;YACxC,OAAO,GAAG,SAAS;iBACR,SAAS,CAAC,CAAC,CAAC,QAAQ,WAAW,CAAC,0BAA0B,gBAAgB,SAAS,CAAC,CAAC,CAAC;mBACpF,SAAS;WACjB,CAAA;SACN;aAAM;YACL,OAAO,GAAG,SAAS,YAAY,SAAS,GACtC,uBAAuB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WACtD,EAAE,CAAA;SACH;IACH,CAAC,CAAA;IAED,MAAM,sBAAsB,GAAG,GAAG,EAAE;QAClC,OAAO;qDAC0C,aAAa;;;;;;cAMpD,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC;aAClC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,EAAE,CAC3B,sBAAsB,CAAC,IAAI,EAAE,WAAW,CAAC,CAC1C;aACA,IAAI,CAAC,gBAAgB,CAAC;;;GAGlC,CAAA;IACD,CAAC,CAAA;IAED,MAAM,mBAAmB,GAAG,GAAG,EAAE;QAC/B,OAAO;;UAED,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC;aAClC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,EAAE;YAChC,MAAM,8BAA8B,GAClC,MAAM,IAAI,WAAW;gBACrB,WAAW,CAAC,IAAI,KAAK,QAAQ;gBAC7B,4BAA4B,IAAI,WAAW,CAAA;YAC7C,MAAM,QAAQ,GAAG,8BAA8B;gBAC7C,CAAC,CAAC,WAAW,CAAC,0BAA0B;gBACxC,CAAC,CAAC,UAAU,CAAC,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YAElE,OAAO,UAAU,QAAQ,GACvB,QAAQ,KAAK,OAAO;gBAClB,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,uBAAuB,CAAC,QAAQ,CAAC,SAAS,CAAC;oBAC7C,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,SACN,KAAK,SAAS,GAAG,CAAA;QACnB,CAAC,CAAC;aACD,IAAI,CAAC,YAAY,CAAC;;;GAG1B,CAAA;IACD,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG;;;;QAIX,aAAa;;MAEf,sBAAsB,EAAE;;MAExB,mBAAmB,EAAE;;CAE1B,CAAA;IAEC,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA"}
@@ -0,0 +1,7 @@
1
+ import type { PhpClient } from "./php-client.js";
2
+ interface Params {
3
+ resource_clients: PhpClient[];
4
+ resource_object_names: string[];
5
+ }
6
+ export declare const generateSeamClient: ({ resource_clients, resource_object_names, }: Params) => string;
7
+ export {};
@@ -0,0 +1,103 @@
1
+ export const generateSeamClient = ({ resource_clients, resource_object_names, }) => {
2
+ const parent_resource_clients = resource_clients.filter((c) => c.is_parent_client);
3
+ return `<?php
4
+
5
+ namespace Seam;
6
+
7
+ ${resource_object_names.map((n) => `use Seam\\Objects\\${n};`).join("\n")}
8
+
9
+ use GuzzleHttp\\Client as HTTPClient;
10
+ use \\Exception as Exception;
11
+
12
+ class SeamClient
13
+ {
14
+ ${parent_resource_clients
15
+ .map((c) => `public ${c.client_name}Client $${c.namespace};`)
16
+ .join("\n ")}
17
+
18
+ public string $api_key;
19
+ public HTTPClient $client;
20
+
21
+ public function __construct(
22
+ $api_key,
23
+ $endpoint = "https://connect.getseam.com",
24
+ $throw_http_errors = false
25
+ ) {
26
+ $this->api_key = $api_key;
27
+ $this->client = new HTTPClient([
28
+ "base_uri" => $endpoint,
29
+ "timeout" => 60.0,
30
+ "headers" => [
31
+ "Authorization" => "Bearer " . $this->api_key,
32
+ "User-Agent" => "Seam PHP Client 0.0.1",
33
+ ],
34
+ "http_errors" => $throw_http_errors,
35
+ ]);
36
+ ${parent_resource_clients
37
+ .map((c) => `$this->${c.namespace} = new ${c.client_name}Client($this);`)
38
+ .join("\n ")}
39
+ }
40
+
41
+ public function request(
42
+ $method,
43
+ $path,
44
+ $json = null,
45
+ $query = null,
46
+ $inner_object = null
47
+ ) {
48
+ $options = [
49
+ "json" => $json,
50
+ "query" => $query,
51
+ ];
52
+ $options = array_filter($options, fn ($option) => $option !== null);
53
+
54
+ // TODO handle request errors
55
+ $response = $this->client->request($method, $path, $options);
56
+ $statusCode = $response->getStatusCode();
57
+
58
+ $res_json = null;
59
+ try {
60
+ $res_json = json_decode($response->getBody());
61
+ } catch (Exception $ignoreError) {
62
+ }
63
+
64
+ if (($res_json->error ?? null) != null) {
65
+ throw new Exception(
66
+ "Error Calling \\"" .
67
+ $method .
68
+ " " .
69
+ $path .
70
+ "\\" : " .
71
+ ($res_json->error->type ?? "") .
72
+ ": " .
73
+ $res_json->error->message
74
+ );
75
+ }
76
+
77
+ if ($statusCode >= 400) {
78
+ throw new Exception(
79
+ "HTTP Error: [" . $statusCode . "] " . $method . " " . $path
80
+ );
81
+ }
82
+
83
+ if ($inner_object) {
84
+ if (!is_array($res_json->$inner_object) && ($res_json->$inner_object ?? null) == null) {
85
+ throw new Exception(
86
+ 'Missing Inner Object "' .
87
+ $inner_object .
88
+ '" for ' .
89
+ $method .
90
+ " " .
91
+ $path
92
+ );
93
+ }
94
+ return $res_json->$inner_object;
95
+ }
96
+ return $res_json;
97
+ }
98
+ }
99
+
100
+ ${resource_clients.map((c) => c.serialize()).join("\n\n")}
101
+ `;
102
+ };
103
+ //# sourceMappingURL=generate-seam-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-seam-client.js","sourceRoot":"","sources":["../../../src/lib/generate-php-sdk/utils/generate-seam-client.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EACjC,gBAAgB,EAChB,qBAAqB,GACd,EAAE,EAAE;IACX,MAAM,uBAAuB,GAAG,gBAAgB,CAAC,MAAM,CACrD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAC1B,CAAA;IAED,OAAO;;;;EAIP,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;;IAOrE,uBAAuB;SACtB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,WAAW,WAAW,CAAC,CAAC,SAAS,GAAG,CAAC;SAC5D,IAAI,CAAC,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;MAoBX,uBAAuB;SACtB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,SAAS,UAAU,CAAC,CAAC,WAAW,gBAAgB,CAAC;SACxE,IAAI,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8DnB,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;CACxD,CAAA;AACD,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export declare const getPhpType: (zod_type: string) => "string" | "array" | "float" | "bool" | "mixed";
@@ -0,0 +1,17 @@
1
+ export const getPhpType = (zod_type) => {
2
+ switch (zod_type) {
3
+ case "string":
4
+ return "string";
5
+ case "number":
6
+ return "float";
7
+ case "boolean":
8
+ return "bool";
9
+ case "object":
10
+ return "mixed";
11
+ case "array":
12
+ return "array";
13
+ default:
14
+ return "mixed";
15
+ }
16
+ };
17
+ //# sourceMappingURL=get-php-type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-php-type.js","sourceRoot":"","sources":["../../../src/lib/generate-php-sdk/utils/get-php-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAE,EAAE;IAC7C,QAAQ,QAAQ,EAAE;QAChB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAA;QAEjB,KAAK,QAAQ;YACX,OAAO,OAAO,CAAA;QAEhB,KAAK,SAAS;YACZ,OAAO,MAAM,CAAA;QAEf,KAAK,QAAQ;YACX,OAAO,OAAO,CAAA;QAEhB,KAAK,OAAO;YACV,OAAO,OAAO,CAAA;QAEhB;YACE,OAAO,OAAO,CAAA;KACjB;AACH,CAAC,CAAA"}
@@ -0,0 +1,31 @@
1
+ export type PhpClientMethodParameter = {
2
+ name: string;
3
+ type: string;
4
+ required?: boolean | undefined;
5
+ position?: number | undefined;
6
+ };
7
+ export type PhpClientMethod = {
8
+ method_name: string;
9
+ path: string;
10
+ parameters: PhpClientMethodParameter[];
11
+ return_resource: string;
12
+ return_path: string;
13
+ is_array_response: boolean;
14
+ };
15
+ type ClientName = string;
16
+ type Namespace = string;
17
+ export type PhpClientIdentifiers = {
18
+ client_name: ClientName;
19
+ namespace: Namespace;
20
+ };
21
+ export declare class PhpClient {
22
+ client_name: ClientName;
23
+ namespace: Namespace;
24
+ is_parent_client: boolean;
25
+ child_client_identifiers: PhpClientIdentifiers[];
26
+ methods: PhpClientMethod[];
27
+ constructor(client_name: ClientName, namespace: Namespace, is_parent_client: boolean, child_client_identifiers: PhpClientIdentifiers[]);
28
+ addMethod(method: PhpClientMethod): void;
29
+ serialize(): string;
30
+ }
31
+ export {};
@@ -0,0 +1,130 @@
1
+ export class PhpClient {
2
+ constructor(client_name, namespace, is_parent_client, child_client_identifiers) {
3
+ this.client_name = client_name;
4
+ this.namespace = namespace;
5
+ this.is_parent_client = is_parent_client;
6
+ this.child_client_identifiers = child_client_identifiers;
7
+ this.methods = [];
8
+ this.methods = [];
9
+ }
10
+ addMethod(method) {
11
+ this.methods.push(method);
12
+ }
13
+ serialize() {
14
+ const has_child_clients = this.child_client_identifiers.length > 0;
15
+ return [
16
+ `class ${this.client_name}Client`,
17
+ `{`,
18
+ ` private SeamClient $seam;`,
19
+ ` ${has_child_clients
20
+ ? this.child_client_identifiers
21
+ .map((i) => ` public ${i.client_name}Client $${i.namespace};`)
22
+ .join("\n")
23
+ : ""}`,
24
+ ` public function __construct(SeamClient $seam)`,
25
+ ` {`,
26
+ ` $this->seam = $seam;`,
27
+ ` ${has_child_clients
28
+ ? this.child_client_identifiers
29
+ .map((i) => `$this->${i.namespace} = new ${i.client_name}Client($seam);`)
30
+ .join("\n")
31
+ : ""}`,
32
+ ` }`,
33
+ "",
34
+ ...this.methods.map(({ method_name, path, parameters, return_resource, return_path, is_array_response, }) => {
35
+ const does_method_use_action_attempt = return_resource === "ActionAttempt" &&
36
+ this.client_name !== "ActionAttempts";
37
+ const method_return_type = is_array_response
38
+ ? "array"
39
+ : return_resource
40
+ ? return_resource
41
+ : "void";
42
+ return [
43
+ "",
44
+ ` public function ${method_name}(`,
45
+ ` ${parameters
46
+ .sort((a, b) => (a.position ?? a.required ? 1000 : 9999) -
47
+ (b.position ?? b.required ? 1000 : 9999))
48
+ .map((p) => `${p.type} $${p.name}${p.required ? "" : " = null"}`)
49
+ .concat(does_method_use_action_attempt
50
+ ? ["bool $wait_for_action_attempt = true"]
51
+ : [])
52
+ .join(",\n ")}`,
53
+ ` ): ${method_return_type} {`,
54
+ ` $request_payload = [];`,
55
+ ``,
56
+ `${parameters
57
+ .map((p) => [
58
+ ` if ($${p.name} !== null) {`,
59
+ ` $request_payload["${p.name}"] = $${p.name};`,
60
+ ` }`,
61
+ ].join("\n"))
62
+ .join("\n")}`,
63
+ ``,
64
+ ` ${return_resource ? "$res = " : ""}$this->seam->request(`,
65
+ ` "POST",`,
66
+ ` "${path}",`,
67
+ ` json: $request_payload,`,
68
+ ` ${return_path ? `inner_object: "${return_path}",` : ""}`,
69
+ ` );`,
70
+ ``,
71
+ does_method_use_action_attempt
72
+ ? [
73
+ " if (!$wait_for_action_attempt) {",
74
+ ` return ${return_resource}::from_json($res);`,
75
+ " }",
76
+ ].join("\n")
77
+ : "",
78
+ ``,
79
+ does_method_use_action_attempt
80
+ ? [
81
+ ` $action_attempt = $this->seam->action_attempts->poll_until_ready(`,
82
+ ` $res->action_attempt_id`,
83
+ ` );`,
84
+ ``,
85
+ ` return $action_attempt;`,
86
+ ].join("\n")
87
+ : "",
88
+ ``,
89
+ return_resource && !does_method_use_action_attempt
90
+ ? ` return ${is_array_response
91
+ ? `array_map(fn ($r) => ${return_resource}::from_json($r), $res);`
92
+ : `${return_resource}::from_json($res);`}`
93
+ : "",
94
+ ` }`,
95
+ ].join("\n");
96
+ }),
97
+ this.client_name === "ActionAttempts"
98
+ ? [
99
+ " public function poll_until_ready(string $action_attempt_id): ActionAttempt",
100
+ " {",
101
+ " $seam = $this->seam;",
102
+ " $time_waiting = 0.0;",
103
+ " $action_attempt = $seam->action_attempts->get($action_attempt_id);",
104
+ "",
105
+ ' while ($action_attempt->status == "pending") {',
106
+ " $action_attempt = $seam->action_attempts->get(",
107
+ " $action_attempt->action_attempt_id",
108
+ " );",
109
+ " if ($time_waiting > 20.0) {",
110
+ ' throw new Exception("Timed out waiting for access code to be created");',
111
+ " }",
112
+ " $time_waiting += 0.4;",
113
+ " usleep(400000); // sleep for 0.4 seconds",
114
+ " }",
115
+ "",
116
+ ' if ($action_attempt->status == "failed") {',
117
+ " throw new Exception(",
118
+ ' "Action Attempt failed: " . $action_attempt->error->message',
119
+ " );",
120
+ " }",
121
+ "",
122
+ " return $action_attempt;",
123
+ " }",
124
+ ].join("\n")
125
+ : "",
126
+ "}",
127
+ ].join("\n");
128
+ }
129
+ }
130
+ //# sourceMappingURL=php-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"php-client.js","sourceRoot":"","sources":["../../../src/lib/generate-php-sdk/utils/php-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ export type ClassFileMethod = {
2
+ method_name: string;
3
+ path: string;
4
+ parameters: Array<{
5
+ name: string;
6
+ type: string;
7
+ position?: number | undefined;
8
+ }>;
9
+ return_path: string[];
10
+ return_resource: string;
11
+ };
12
+ export declare class ClassFile {
13
+ name: string;
14
+ namespace: string | undefined;
15
+ methods: ClassFileMethod[];
16
+ constructor(name: string, namespace?: string | undefined);
17
+ addMethod(method: ClassFileMethod): void;
18
+ serializeToAbstractClassWithoutImports(): string;
19
+ serializeToClass(): string;
20
+ }
@@ -0,0 +1,75 @@
1
+ export class ClassFile {
2
+ constructor(name, namespace) {
3
+ this.name = name;
4
+ this.namespace = namespace;
5
+ this.methods = [];
6
+ }
7
+ addMethod(method) {
8
+ this.methods.push(method);
9
+ }
10
+ serializeToAbstractClassWithoutImports() {
11
+ return [
12
+ `class Abstract${this.name}(abc.ABC):`,
13
+ this.methods.length === 0 ? ` pass` : "",
14
+ ...this.methods.map(({ method_name, parameters }) => [
15
+ "",
16
+ "",
17
+ `@abc.abstractmethod`,
18
+ `def ${method_name}(self, ${parameters
19
+ .sort((a, b) => (a.position ?? 9999) - (b.position ?? 9999))
20
+ .map(({ name, type, position }) => position !== undefined
21
+ ? `${name}: ${type}`
22
+ : `${name}: Optional[${type}] = None`)
23
+ .join(", ")}):`,
24
+ ` raise NotImplementedError()`,
25
+ ]
26
+ .map((s) => ` ${s}`)
27
+ .join("\n")),
28
+ ].join("\n");
29
+ }
30
+ serializeToClass() {
31
+ return [
32
+ `from seamapi.types import (${[
33
+ `Abstract${this.name}`,
34
+ `AbstractSeam as Seam`,
35
+ ...Array.from(new Set(this.methods.map((m) => m.return_resource.replace(/^List\[/, "").replace(/\]$/, "")))),
36
+ ].join(",")})`,
37
+ `from typing import (Optional, Any)`,
38
+ "",
39
+ `class ${this.name}(Abstract${this.name}):`,
40
+ // TODO DOCSTRING
41
+ ` seam: Seam`,
42
+ "",
43
+ ` def __init__(self, seam: Seam):`,
44
+ ` self.seam = seam`,
45
+ "",
46
+ ...this.methods.map(({ method_name, path, return_resource, return_path, parameters }) => {
47
+ const is_return_resource_a_list = return_resource.startsWith("List[");
48
+ const list_item_type = return_resource.slice(5, -1);
49
+ return [
50
+ "",
51
+ "",
52
+ `def ${method_name}(self, ${parameters
53
+ .sort((a, b) => (a.position ?? 9999) - (b.position ?? 9999))
54
+ .map(({ name, type, position }) => position !== undefined
55
+ ? `${name}: ${type}`
56
+ : `${name}: Optional[${type}] = None`)
57
+ .join(", ")}):`,
58
+ ` json_payload = {}`,
59
+ ...parameters.map(({ name }) => ` if ${name} is not None:\n json_payload["${name}"] = ${name}`),
60
+ ` res = self.seam.make_request(`,
61
+ ` "POST",`,
62
+ ` "${path}",`,
63
+ ` json=json_payload`,
64
+ ` )`,
65
+ is_return_resource_a_list
66
+ ? ` return [${list_item_type}.from_dict(item) for item in res["${return_path.join('"]["')}"]]`
67
+ : ` return ${return_resource}.from_dict(res["${return_path.join('"]["')}"])`,
68
+ ]
69
+ .map((s) => ` ${s}`)
70
+ .join("\n");
71
+ }),
72
+ ].join("\n");
73
+ }
74
+ }
75
+ //# sourceMappingURL=class-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"class-file.js","sourceRoot":"","sources":["../../src/lib/generate-python-sdk/class-file.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const generatePythonSDK: () => Promise<any>;