@voxgig/sdkgen 1.2.1 → 1.3.1

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 (329) hide show
  1. package/bin/voxgig-sdkgen +2 -2
  2. package/dist/action/action.d.ts +2 -1
  3. package/dist/action/action.js +15 -9
  4. package/dist/action/action.js.map +1 -1
  5. package/dist/action/feature.js +6 -3
  6. package/dist/action/feature.js.map +1 -1
  7. package/dist/action/target.d.ts +7 -1
  8. package/dist/action/target.js +13 -6
  9. package/dist/action/target.js.map +1 -1
  10. package/dist/cmp/Changelog.d.ts +2 -0
  11. package/dist/cmp/Changelog.js +30 -0
  12. package/dist/cmp/Changelog.js.map +1 -0
  13. package/dist/cmp/Deploy.d.ts +2 -0
  14. package/dist/cmp/Deploy.js +227 -0
  15. package/dist/cmp/Deploy.js.map +1 -0
  16. package/dist/cmp/FeatureHook.js +5 -6
  17. package/dist/cmp/FeatureHook.js.map +1 -1
  18. package/dist/cmp/License.d.ts +2 -0
  19. package/dist/cmp/License.js +44 -0
  20. package/dist/cmp/License.js.map +1 -0
  21. package/dist/cmp/Readme.js +2 -0
  22. package/dist/cmp/Readme.js.map +1 -1
  23. package/dist/cmp/ReadmeErrors.d.ts +2 -0
  24. package/dist/cmp/ReadmeErrors.js +210 -0
  25. package/dist/cmp/ReadmeErrors.js.map +1 -0
  26. package/dist/cmp/ReadmeExplanation.js +213 -223
  27. package/dist/cmp/ReadmeExplanation.js.map +1 -1
  28. package/dist/cmp/ReadmeModel.js +6 -1
  29. package/dist/cmp/ReadmeModel.js.map +1 -1
  30. package/dist/cmp/ReadmeTop.js +389 -82
  31. package/dist/cmp/ReadmeTop.js.map +1 -1
  32. package/dist/cmp/Security.d.ts +2 -0
  33. package/dist/cmp/Security.js +36 -0
  34. package/dist/cmp/Security.js.map +1 -0
  35. package/dist/helpers/canonType.d.ts +7 -0
  36. package/dist/helpers/canonType.js +74 -0
  37. package/dist/helpers/canonType.js.map +1 -0
  38. package/dist/helpers/collectDeps.d.ts +3 -2
  39. package/dist/helpers/collectDeps.js.map +1 -1
  40. package/dist/helpers/naming.d.ts +3 -0
  41. package/dist/helpers/naming.js +51 -0
  42. package/dist/helpers/naming.js.map +1 -0
  43. package/dist/helpers/opExample.d.ts +13 -0
  44. package/dist/helpers/opExample.js +149 -0
  45. package/dist/helpers/opExample.js.map +1 -0
  46. package/dist/helpers/opShape.d.ts +18 -0
  47. package/dist/helpers/opShape.js +193 -0
  48. package/dist/helpers/opShape.js.map +1 -0
  49. package/dist/helpers/packageMeta.d.ts +27 -0
  50. package/dist/helpers/packageMeta.js +224 -0
  51. package/dist/helpers/packageMeta.js.map +1 -0
  52. package/dist/sdkgen.d.ts +11 -1
  53. package/dist/sdkgen.js +57 -18
  54. package/dist/sdkgen.js.map +1 -1
  55. package/dist/tsconfig.tsbuildinfo +1 -1
  56. package/dist/types.d.ts +65 -2
  57. package/dist/types.js.map +1 -1
  58. package/dist/utility.js +20 -11
  59. package/dist/utility.js.map +1 -1
  60. package/model/sdkgen.aontu +137 -0
  61. package/package.json +11 -5
  62. package/project/.sdk/model/target/go-cli.jsonic +47 -0
  63. package/project/.sdk/model/target/go-mcp.jsonic +41 -0
  64. package/project/.sdk/model/target/go.jsonic +9 -3
  65. package/project/.sdk/model/target/js.jsonic +13 -0
  66. package/project/.sdk/model/target/lua.jsonic +13 -0
  67. package/project/.sdk/model/target/php.jsonic +13 -0
  68. package/project/.sdk/model/target/py.jsonic +13 -0
  69. package/project/.sdk/model/target/rb.jsonic +13 -0
  70. package/project/.sdk/model/target/ts.jsonic +13 -0
  71. package/project/.sdk/src/cmp/go/EntityOperation_go.ts +1 -0
  72. package/project/.sdk/src/cmp/go/EntityTypes_go.ts +197 -0
  73. package/project/.sdk/src/cmp/go/Entity_go.ts +2 -1
  74. package/project/.sdk/src/cmp/go/MainEntity_go.ts +6 -0
  75. package/project/.sdk/src/cmp/go/Main_go.ts +23 -3
  76. package/project/.sdk/src/cmp/go/Package_go.ts +1 -1
  77. package/project/.sdk/src/cmp/go/ReadmeEntity_go.ts +18 -6
  78. package/project/.sdk/src/cmp/go/ReadmeExamplesTest_go.ts +684 -0
  79. package/project/.sdk/src/cmp/go/ReadmeExplanation_go.ts +1 -1
  80. package/project/.sdk/src/cmp/go/ReadmeHowto_go.ts +48 -8
  81. package/project/.sdk/src/cmp/go/ReadmeInstall_go.ts +11 -6
  82. package/project/.sdk/src/cmp/go/ReadmeIntro_go.ts +40 -1
  83. package/project/.sdk/src/cmp/go/ReadmeModel_go.ts +63 -17
  84. package/project/.sdk/src/cmp/go/ReadmeOptions_go.ts +4 -3
  85. package/project/.sdk/src/cmp/go/ReadmeQuick_go.ts +124 -115
  86. package/project/.sdk/src/cmp/go/ReadmeRef_go.ts +28 -15
  87. package/project/.sdk/src/cmp/go/ReadmeTopQuick_go.ts +33 -9
  88. package/project/.sdk/src/cmp/go/ReadmeTopTest_go.ts +35 -5
  89. package/project/.sdk/src/cmp/go/TestEntity_go.ts +1 -1
  90. package/project/.sdk/src/cmp/go/Test_go.ts +5 -1
  91. package/project/.sdk/src/cmp/go/fragment/Entity.fragment.go +21 -0
  92. package/project/.sdk/src/cmp/go/fragment/EntityCreateOp.fragment.go +11 -0
  93. package/project/.sdk/src/cmp/go/fragment/EntityListOp.fragment.go +11 -0
  94. package/project/.sdk/src/cmp/go/fragment/EntityLoadOp.fragment.go +11 -0
  95. package/project/.sdk/src/cmp/go/fragment/EntityRemoveOp.fragment.go +11 -0
  96. package/project/.sdk/src/cmp/go/fragment/EntityUpdateOp.fragment.go +11 -0
  97. package/project/.sdk/src/cmp/go-cli/Main_go-cli.ts +195 -0
  98. package/project/.sdk/src/cmp/go-cli/fragment/main.fragment.go +106 -0
  99. package/project/.sdk/src/cmp/go-cli/fragment/words.fragment.go +132 -0
  100. package/project/.sdk/src/cmp/go-mcp/Main_go-mcp.ts +184 -0
  101. package/project/.sdk/src/cmp/go-mcp/fragment/main.fragment.go +68 -0
  102. package/project/.sdk/src/cmp/go-mcp/fragment/tools.fragment.go +114 -0
  103. package/project/.sdk/src/cmp/js/EntityTypes_js.ts +111 -0
  104. package/project/.sdk/src/cmp/js/MainEntity_js.ts +1 -0
  105. package/project/.sdk/src/cmp/js/Main_js.ts +3 -0
  106. package/project/.sdk/src/cmp/js/Package_js.ts +16 -7
  107. package/project/.sdk/src/cmp/js/ReadmeEntity_js.ts +13 -7
  108. package/project/.sdk/src/cmp/js/ReadmeExplanation_js.ts +2 -2
  109. package/project/.sdk/src/cmp/js/ReadmeHowto_js.ts +52 -11
  110. package/project/.sdk/src/cmp/js/ReadmeIntro_js.ts +39 -1
  111. package/project/.sdk/src/cmp/js/ReadmeModel_js.ts +50 -18
  112. package/project/.sdk/src/cmp/js/ReadmeOptions_js.ts +4 -3
  113. package/project/.sdk/src/cmp/js/ReadmeQuick_js.ts +45 -19
  114. package/project/.sdk/src/cmp/js/ReadmeRef_js.ts +24 -13
  115. package/project/.sdk/src/cmp/js/ReadmeTopHowto_js.ts +3 -0
  116. package/project/.sdk/src/cmp/js/ReadmeTopQuick_js.ts +28 -12
  117. package/project/.sdk/src/cmp/js/ReadmeTopTest_js.ts +23 -3
  118. package/project/.sdk/src/cmp/js/fragment/EntityCreateOp.fragment.js +5 -0
  119. package/project/.sdk/src/cmp/js/fragment/EntityListOp.fragment.js +5 -0
  120. package/project/.sdk/src/cmp/js/fragment/EntityLoadOp.fragment.js +5 -0
  121. package/project/.sdk/src/cmp/js/fragment/EntityRemoveOp.fragment.js +5 -0
  122. package/project/.sdk/src/cmp/js/fragment/EntityUpdateOp.fragment.js +5 -0
  123. package/project/.sdk/src/cmp/js/utility_js.ts +57 -0
  124. package/project/.sdk/src/cmp/lua/EntityTypes_lua.ts +113 -0
  125. package/project/.sdk/src/cmp/lua/MainEntity_lua.ts +8 -0
  126. package/project/.sdk/src/cmp/lua/Main_lua.ts +4 -0
  127. package/project/.sdk/src/cmp/lua/Package_lua.ts +23 -4
  128. package/project/.sdk/src/cmp/lua/ReadmeEntity_lua.ts +12 -10
  129. package/project/.sdk/src/cmp/lua/ReadmeExamplesTest_lua.ts +293 -0
  130. package/project/.sdk/src/cmp/lua/ReadmeHowto_lua.ts +46 -8
  131. package/project/.sdk/src/cmp/lua/ReadmeInstall_lua.ts +19 -3
  132. package/project/.sdk/src/cmp/lua/ReadmeIntro_lua.ts +38 -1
  133. package/project/.sdk/src/cmp/lua/ReadmeModel_lua.ts +51 -16
  134. package/project/.sdk/src/cmp/lua/ReadmeOptions_lua.ts +4 -3
  135. package/project/.sdk/src/cmp/lua/ReadmeQuick_lua.ts +79 -18
  136. package/project/.sdk/src/cmp/lua/ReadmeRef_lua.ts +25 -20
  137. package/project/.sdk/src/cmp/lua/ReadmeTopQuick_lua.ts +17 -9
  138. package/project/.sdk/src/cmp/lua/ReadmeTopTest_lua.ts +32 -5
  139. package/project/.sdk/src/cmp/lua/Test_lua.ts +4 -0
  140. package/project/.sdk/src/cmp/lua/fragment/EntityCreateOp.fragment.lua +4 -0
  141. package/project/.sdk/src/cmp/lua/fragment/EntityListOp.fragment.lua +4 -0
  142. package/project/.sdk/src/cmp/lua/fragment/EntityLoadOp.fragment.lua +4 -0
  143. package/project/.sdk/src/cmp/lua/fragment/EntityRemoveOp.fragment.lua +4 -0
  144. package/project/.sdk/src/cmp/lua/fragment/EntityUpdateOp.fragment.lua +4 -0
  145. package/project/.sdk/src/cmp/php/EntityTypes_php.ts +142 -0
  146. package/project/.sdk/src/cmp/php/MainEntity_php.ts +18 -1
  147. package/project/.sdk/src/cmp/php/Main_php.ts +4 -0
  148. package/project/.sdk/src/cmp/php/Package_php.ts +18 -7
  149. package/project/.sdk/src/cmp/php/ReadmeEntity_php.ts +15 -11
  150. package/project/.sdk/src/cmp/php/ReadmeExamplesTest_php.ts +401 -0
  151. package/project/.sdk/src/cmp/php/ReadmeHowto_php.ts +56 -13
  152. package/project/.sdk/src/cmp/php/ReadmeInstall_php.ts +15 -3
  153. package/project/.sdk/src/cmp/php/ReadmeIntro_php.ts +40 -1
  154. package/project/.sdk/src/cmp/php/ReadmeModel_php.ts +26 -8
  155. package/project/.sdk/src/cmp/php/ReadmeOptions_php.ts +4 -3
  156. package/project/.sdk/src/cmp/php/ReadmeQuick_php.ts +80 -22
  157. package/project/.sdk/src/cmp/php/ReadmeRef_php.ts +51 -42
  158. package/project/.sdk/src/cmp/php/ReadmeTopHowto_php.ts +1 -1
  159. package/project/.sdk/src/cmp/php/ReadmeTopQuick_php.ts +19 -11
  160. package/project/.sdk/src/cmp/php/ReadmeTopTest_php.ts +41 -11
  161. package/project/.sdk/src/cmp/php/TestDirect_php.ts +9 -9
  162. package/project/.sdk/src/cmp/php/TestEntity_php.ts +6 -12
  163. package/project/.sdk/src/cmp/php/Test_php.ts +4 -0
  164. package/project/.sdk/src/cmp/php/fragment/Entity.fragment.php +13 -1
  165. package/project/.sdk/src/cmp/php/fragment/EntityCreateOp.fragment.php +10 -1
  166. package/project/.sdk/src/cmp/php/fragment/EntityListOp.fragment.php +10 -1
  167. package/project/.sdk/src/cmp/php/fragment/EntityLoadOp.fragment.php +10 -1
  168. package/project/.sdk/src/cmp/php/fragment/EntityRemoveOp.fragment.php +10 -1
  169. package/project/.sdk/src/cmp/php/fragment/EntityUpdateOp.fragment.php +10 -1
  170. package/project/.sdk/src/cmp/php/fragment/Main.fragment.php +22 -14
  171. package/project/.sdk/src/cmp/py/EntityTypes_py.ts +184 -0
  172. package/project/.sdk/src/cmp/py/Entity_py.ts +27 -0
  173. package/project/.sdk/src/cmp/py/MainEntity_py.ts +2 -1
  174. package/project/.sdk/src/cmp/py/Main_py.ts +35 -0
  175. package/project/.sdk/src/cmp/py/Package_py.ts +24 -3
  176. package/project/.sdk/src/cmp/py/ReadmeEntity_py.ts +27 -11
  177. package/project/.sdk/src/cmp/py/ReadmeExamplesTest_py.ts +626 -0
  178. package/project/.sdk/src/cmp/py/ReadmeHowto_py.ts +53 -14
  179. package/project/.sdk/src/cmp/py/ReadmeInstall_py.ts +19 -3
  180. package/project/.sdk/src/cmp/py/ReadmeIntro_py.ts +48 -1
  181. package/project/.sdk/src/cmp/py/ReadmeModel_py.ts +28 -10
  182. package/project/.sdk/src/cmp/py/ReadmeOptions_py.ts +4 -3
  183. package/project/.sdk/src/cmp/py/ReadmeQuick_py.ts +73 -24
  184. package/project/.sdk/src/cmp/py/ReadmeRef_py.ts +57 -37
  185. package/project/.sdk/src/cmp/py/ReadmeTopHowto_py.ts +1 -1
  186. package/project/.sdk/src/cmp/py/ReadmeTopQuick_py.ts +19 -11
  187. package/project/.sdk/src/cmp/py/ReadmeTopTest_py.ts +30 -5
  188. package/project/.sdk/src/cmp/py/TestDirect_py.ts +7 -9
  189. package/project/.sdk/src/cmp/py/TestEntity_py.ts +6 -14
  190. package/project/.sdk/src/cmp/py/Test_py.ts +4 -0
  191. package/project/.sdk/src/cmp/py/fragment/Entity.fragment.py +5 -2
  192. package/project/.sdk/src/cmp/py/fragment/EntityCreateOp.fragment.py +1 -1
  193. package/project/.sdk/src/cmp/py/fragment/EntityListOp.fragment.py +5 -1
  194. package/project/.sdk/src/cmp/py/fragment/EntityLoadOp.fragment.py +6 -1
  195. package/project/.sdk/src/cmp/py/fragment/EntityRemoveOp.fragment.py +6 -1
  196. package/project/.sdk/src/cmp/py/fragment/EntityUpdateOp.fragment.py +1 -1
  197. package/project/.sdk/src/cmp/py/fragment/Main.fragment.py +17 -10
  198. package/project/.sdk/src/cmp/rb/EntityTypes_rb.ts +136 -0
  199. package/project/.sdk/src/cmp/rb/MainEntity_rb.ts +1 -0
  200. package/project/.sdk/src/cmp/rb/Main_rb.ts +4 -0
  201. package/project/.sdk/src/cmp/rb/Package_rb.ts +34 -7
  202. package/project/.sdk/src/cmp/rb/ReadmeEntity_rb.ts +26 -10
  203. package/project/.sdk/src/cmp/rb/ReadmeExamplesTest_rb.ts +289 -0
  204. package/project/.sdk/src/cmp/rb/ReadmeHowto_rb.ts +72 -21
  205. package/project/.sdk/src/cmp/rb/ReadmeInstall_rb.ts +16 -4
  206. package/project/.sdk/src/cmp/rb/ReadmeIntro_rb.ts +40 -1
  207. package/project/.sdk/src/cmp/rb/ReadmeModel_rb.ts +29 -12
  208. package/project/.sdk/src/cmp/rb/ReadmeOptions_rb.ts +4 -3
  209. package/project/.sdk/src/cmp/rb/ReadmeQuick_rb.ts +85 -22
  210. package/project/.sdk/src/cmp/rb/ReadmeRef_rb.ts +56 -37
  211. package/project/.sdk/src/cmp/rb/ReadmeTopHowto_rb.ts +1 -1
  212. package/project/.sdk/src/cmp/rb/ReadmeTopQuick_rb.ts +19 -11
  213. package/project/.sdk/src/cmp/rb/ReadmeTopTest_rb.ts +43 -11
  214. package/project/.sdk/src/cmp/rb/TestDirect_rb.ts +9 -9
  215. package/project/.sdk/src/cmp/rb/TestEntity_rb.ts +6 -12
  216. package/project/.sdk/src/cmp/rb/Test_rb.ts +4 -0
  217. package/project/.sdk/src/cmp/rb/fragment/Entity.fragment.rb +2 -0
  218. package/project/.sdk/src/cmp/rb/fragment/EntityCreateOp.fragment.rb +5 -0
  219. package/project/.sdk/src/cmp/rb/fragment/EntityListOp.fragment.rb +20 -2
  220. package/project/.sdk/src/cmp/rb/fragment/EntityLoadOp.fragment.rb +8 -1
  221. package/project/.sdk/src/cmp/rb/fragment/EntityRemoveOp.fragment.rb +6 -1
  222. package/project/.sdk/src/cmp/rb/fragment/EntityUpdateOp.fragment.rb +5 -0
  223. package/project/.sdk/src/cmp/rb/fragment/Main.fragment.rb +24 -8
  224. package/project/.sdk/src/cmp/ts/EntityTypes_ts.ts +105 -0
  225. package/project/.sdk/src/cmp/ts/Entity_ts.ts +17 -1
  226. package/project/.sdk/src/cmp/ts/MainEntity_ts.ts +1 -0
  227. package/project/.sdk/src/cmp/ts/Main_ts.ts +6 -0
  228. package/project/.sdk/src/cmp/ts/Package_ts.ts +14 -7
  229. package/project/.sdk/src/cmp/ts/ReadmeEntity_ts.ts +13 -7
  230. package/project/.sdk/src/cmp/ts/ReadmeExampleTest_ts.ts +81 -0
  231. package/project/.sdk/src/cmp/ts/ReadmeExamplesTest_ts.ts +446 -0
  232. package/project/.sdk/src/cmp/ts/ReadmeExplanation_ts.ts +2 -2
  233. package/project/.sdk/src/cmp/ts/ReadmeHowto_ts.ts +57 -11
  234. package/project/.sdk/src/cmp/ts/ReadmeInstall_ts.ts +19 -6
  235. package/project/.sdk/src/cmp/ts/ReadmeIntro_ts.ts +39 -1
  236. package/project/.sdk/src/cmp/ts/ReadmeModel_ts.ts +50 -18
  237. package/project/.sdk/src/cmp/ts/ReadmeOptions_ts.ts +4 -3
  238. package/project/.sdk/src/cmp/ts/ReadmeQuick_ts.ts +95 -40
  239. package/project/.sdk/src/cmp/ts/ReadmeRef_ts.ts +24 -13
  240. package/project/.sdk/src/cmp/ts/ReadmeTopHowto_ts.ts +3 -0
  241. package/project/.sdk/src/cmp/ts/ReadmeTopQuick_ts.ts +44 -12
  242. package/project/.sdk/src/cmp/ts/ReadmeTopTest_ts.ts +23 -3
  243. package/project/.sdk/src/cmp/ts/TestEntity_ts.ts +2 -2
  244. package/project/.sdk/src/cmp/ts/Test_ts.ts +5 -0
  245. package/project/.sdk/src/cmp/ts/fragment/Entity.fragment.ts +3 -1
  246. package/project/.sdk/src/cmp/ts/fragment/EntityBase.fragment.ts +10 -5
  247. package/project/.sdk/src/cmp/ts/fragment/EntityCreateOp.fragment.ts +4 -2
  248. package/project/.sdk/src/cmp/ts/fragment/EntityListOp.fragment.ts +4 -2
  249. package/project/.sdk/src/cmp/ts/fragment/EntityLoadOp.fragment.ts +4 -2
  250. package/project/.sdk/src/cmp/ts/fragment/EntityRemoveOp.fragment.ts +4 -2
  251. package/project/.sdk/src/cmp/ts/fragment/EntityUpdateOp.fragment.ts +4 -2
  252. package/project/.sdk/src/cmp/ts/utility_ts.ts +59 -0
  253. package/project/.sdk/tm/go/LICENSE +1 -1
  254. package/project/.sdk/tm/go/Makefile +36 -1
  255. package/project/.sdk/tm/go/VERSION +1 -0
  256. package/project/.sdk/tm/go/core/context.go +12 -7
  257. package/project/.sdk/tm/go-cli/src/feature/README.md +6 -0
  258. package/project/.sdk/tm/go-cli/src/feature/base/.gitkeep +0 -0
  259. package/project/.sdk/tm/go-cli/src/feature/log/.gitkeep +0 -0
  260. package/project/.sdk/tm/go-cli/src/feature/test/.gitkeep +0 -0
  261. package/project/.sdk/tm/go-mcp/src/feature/README.md +6 -0
  262. package/project/.sdk/tm/go-mcp/src/feature/base/.gitkeep +0 -0
  263. package/project/.sdk/tm/go-mcp/src/feature/log/.gitkeep +0 -0
  264. package/project/.sdk/tm/go-mcp/src/feature/test/.gitkeep +0 -0
  265. package/project/.sdk/tm/js/LICENSE +1 -1
  266. package/project/.sdk/tm/js/Makefile +41 -0
  267. package/project/.sdk/tm/lua/LICENSE +1 -1
  268. package/project/.sdk/tm/lua/Makefile +40 -1
  269. package/project/.sdk/tm/lua/core/context.lua +13 -8
  270. package/project/.sdk/tm/php/LICENSE +1 -1
  271. package/project/.sdk/tm/php/Makefile +31 -1
  272. package/project/.sdk/tm/php/VERSION +1 -0
  273. package/project/.sdk/tm/php/core/Context.php +12 -6
  274. package/project/.sdk/tm/php/test/PrimaryUtilityTest.php +13 -4
  275. package/project/.sdk/tm/php/utility/Done.php +2 -2
  276. package/project/.sdk/tm/php/utility/MakeError.php +3 -3
  277. package/project/.sdk/tm/py/LICENSE +1 -1
  278. package/project/.sdk/tm/py/Makefile +34 -1
  279. package/project/.sdk/tm/py/core/context.py +12 -7
  280. package/project/.sdk/tm/py/test/test_primary_utility.py +15 -4
  281. package/project/.sdk/tm/py/utility/done.py +3 -1
  282. package/project/.sdk/tm/py/utility/make_error.py +2 -2
  283. package/project/.sdk/tm/rb/LICENSE +1 -1
  284. package/project/.sdk/tm/rb/Makefile +33 -1
  285. package/project/.sdk/tm/rb/core/context.rb +8 -3
  286. package/project/.sdk/tm/rb/test/primary_utility_test.rb +2 -2
  287. package/project/.sdk/tm/rb/utility/done.rb +3 -1
  288. package/project/.sdk/tm/rb/utility/make_error.rb +5 -2
  289. package/project/.sdk/tm/ts/LICENSE +1 -1
  290. package/project/.sdk/tm/ts/Makefile +42 -0
  291. package/project/.sdk/tm/ts/src/Context.ts +8 -3
  292. package/src/action/action.ts +17 -10
  293. package/src/action/feature.ts +8 -6
  294. package/src/action/target.ts +17 -8
  295. package/src/cmp/Changelog.ts +34 -0
  296. package/src/cmp/Deploy.ts +258 -0
  297. package/src/cmp/FeatureHook.ts +6 -8
  298. package/src/cmp/License.ts +49 -0
  299. package/src/cmp/Readme.ts +2 -0
  300. package/src/cmp/ReadmeErrors.ts +257 -0
  301. package/src/cmp/ReadmeExplanation.ts +250 -230
  302. package/src/cmp/ReadmeModel.ts +7 -2
  303. package/src/cmp/ReadmeTop.ts +411 -95
  304. package/src/cmp/Security.ts +41 -0
  305. package/src/helpers/canonType.ts +89 -0
  306. package/src/helpers/collectDeps.ts +5 -3
  307. package/src/helpers/naming.ts +59 -0
  308. package/src/helpers/opExample.ts +170 -0
  309. package/src/helpers/opShape.ts +236 -0
  310. package/src/helpers/packageMeta.ts +236 -0
  311. package/src/sdkgen.ts +87 -20
  312. package/src/tsconfig.json +1 -0
  313. package/src/types.ts +85 -2
  314. package/src/utility.ts +22 -11
  315. package/README.md +0 -2
  316. package/dist/action/lang.d.ts +0 -2
  317. package/dist/action/lang.js +0 -68
  318. package/dist/action/lang.js.map +0 -1
  319. package/dist/cmp/Hook.d.ts +0 -2
  320. package/dist/cmp/Hook.js +0 -10
  321. package/dist/cmp/Hook.js.map +0 -1
  322. package/dist/cmp/Top.d.ts +0 -2
  323. package/dist/cmp/Top.js +0 -23
  324. package/dist/cmp/Top.js.map +0 -1
  325. package/dist/prepare-openapi.d.ts +0 -2
  326. package/dist/prepare-openapi.js +0 -37
  327. package/dist/prepare-openapi.js.map +0 -1
  328. package/model/sdkgen.jsonic +0 -74
  329. package/project/.sdk/tm/go/utility/struct/go.mod +0 -3
@@ -4,38 +4,295 @@ exports.ReadmeTop = void 0;
4
4
  const jostraca_1 = require("jostraca");
5
5
  const types_1 = require("../types");
6
6
  const utility_1 = require("../utility");
7
+ const opShape_1 = require("../helpers/opShape");
8
+ const canonType_1 = require("../helpers/canonType");
9
+ const naming_1 = require("../helpers/naming");
10
+ const packageMeta_1 = require("../helpers/packageMeta");
11
+ const SDKGEN_REPO = 'https://github.com/voxgig/sdkgen';
12
+ // A type-correct TS example literal for a model field, keyed off its canonical
13
+ // type sentinel — mirrors the per-language `exampleValue`, but inline because
14
+ // this neutral component renders the intro `ts` block directly.
15
+ function tsExampleLiteral(type) {
16
+ const k = (0, canonType_1.canonKey)(type);
17
+ if ('INTEGER' === k || 'NUMBER' === k)
18
+ return '1';
19
+ if ('BOOLEAN' === k)
20
+ return 'true';
21
+ if ('ARRAY' === k)
22
+ return '[]';
23
+ if ('OBJECT' === k)
24
+ return '{}';
25
+ return `'example'`;
26
+ }
27
+ // Per-language install commands rendered in the top-level "Try it"
28
+ // section. The per-language `ReadmeInstall_<lang>.ts` templates exist
29
+ // but emit extra prose ("Or install from source: ..."); for the
30
+ // landing-page README we want a single copy-paste line per language.
31
+ function installCommand(target, model) {
32
+ // Delegate to the single source of truth so the README install command can
33
+ // never drift from the real published package name (see helpers/packageMeta).
34
+ return (0, packageMeta_1.installCommand)(model, target.name);
35
+ }
36
+ // Pick the language we lead the README with — first entry from the
37
+ // docs-ordered SDK targets. Returns undefined if there are no targets.
38
+ function pickLeadTarget(sdkTargets) {
39
+ return sdkTargets[0];
40
+ }
7
41
  const ReadmeTop = (0, jostraca_1.cmp)(function ReadmeTop(props) {
8
42
  const { ctx$ } = props;
9
43
  const { model } = ctx$;
10
- const desc = model.main.def.desc || '';
44
+ // Ensure the Name/NAME case variants exist (apidef usually sets these,
45
+ // but guard so the header never renders "undefined SDK"). Entity/feature
46
+ // names are guarded the same way below.
47
+ if (model.name && !model.Name)
48
+ (0, jostraca_1.names)(model, model.name);
49
+ const info = (model.main && model.main[types_1.KIT] && model.main[types_1.KIT].info) || {};
50
+ const def = (model.main && model.main.def) || {};
51
+ // Plain-text title — prefer the OpenAPI `info.title` when it's
52
+ // recognisably the product name (e.g. "Aare.guru API"), fall back
53
+ // to the normalised SDK Name.
54
+ const productName = info.title || `${model.Name} API`;
55
+ const tagline = info.tagline
56
+ || def.tagline
57
+ || `${productName} client, generated from the OpenAPI spec.`;
58
+ const aboutMd = info.about_md || '';
59
+ const licenseMd = info.license_md || '';
60
+ const licenseShort = info.license_short || '';
61
+ const homepage = info.homepage || '';
62
+ const docsUrl = info.docs_url || '';
63
+ const entityDesc = info.entity_desc || {};
11
64
  const entity = (0, types_1.getModelPath)(model, `main.${types_1.KIT}.entity`);
12
65
  const target = (0, types_1.getModelPath)(model, `main.${types_1.KIT}.target`);
13
66
  const feature = (0, types_1.getModelPath)(model, `main.${types_1.KIT}.feature`);
14
- // Ensure names are computed on entities and features
15
67
  (0, jostraca_1.each)(entity, (ent) => { if (!ent.Name)
16
68
  (0, jostraca_1.names)(ent, ent.name); });
17
69
  (0, jostraca_1.each)(feature, (feat) => { if (!feat.Name)
18
70
  (0, jostraca_1.names)(feat, feat.name); });
19
71
  const activeEntities = (0, jostraca_1.each)(entity).filter((e) => e.active !== false);
20
- const activeTargets = (0, jostraca_1.each)(target);
72
+ const activeTargets = (0, jostraca_1.each)(target).filter((t) => t.active !== false);
73
+ const hasCli = activeTargets.some((t) => t.name === 'go-cli');
74
+ const hasMcp = activeTargets.some((t) => t.name === 'go-mcp');
75
+ const hasJsLike = activeTargets.some((t) => t.name === 'ts' || t.name === 'js');
76
+ // Canonical docs order from main.kit.config.docs_order (with a
77
+ // schema-supplied default of ['ts','py','php','go','rb','lua']).
78
+ // Targets present but not listed get appended in spec-defined order,
79
+ // so adding a new target never silently disappears from the docs.
80
+ const docsOrder = (0, types_1.getModelPath)(model, `main.${types_1.KIT}.config.docs_order`, { only_active: false, required: false }) || [];
81
+ const sdkTargets = activeTargets
82
+ .filter((t) => t.name !== 'go-cli' && t.name !== 'go-mcp')
83
+ .slice()
84
+ .sort((a, b) => {
85
+ const ai = docsOrder.indexOf(a.name);
86
+ const bi = docsOrder.indexOf(b.name);
87
+ const av = ai === -1 ? docsOrder.length : ai;
88
+ const bv = bi === -1 ? docsOrder.length : bi;
89
+ return av - bv;
90
+ });
91
+ const langList = sdkTargets.map((t) => t.title).join(', ');
92
+ const leadTarget = pickLeadTarget(sdkTargets);
21
93
  (0, jostraca_1.File)({ name: 'README.md' }, () => {
94
+ // 1. H1 + one-line value prop + unofficial / non-affiliation disclosure
22
95
  (0, jostraca_1.Content)(`# ${model.Name} SDK
23
96
 
24
- ${desc}
97
+ ${tagline}
98
+
99
+ ${(0, packageMeta_1.nonAffiliation)(model)}
100
+
101
+ `);
102
+ // Positioning line, only when we actually have multiple SDK targets.
103
+ if (sdkTargets.length > 1) {
104
+ const surfaces = [];
105
+ surfaces.push(`${langList} SDKs`);
106
+ if (hasCli)
107
+ surfaces.push('a CLI');
108
+ if (hasJsLike)
109
+ surfaces.push('an interactive REPL');
110
+ if (hasMcp)
111
+ surfaces.push('an MCP server for AI agents');
112
+ const surfaceList = surfaces.length > 1
113
+ ? surfaces.slice(0, -1).join(', ') + ', and ' + surfaces[surfaces.length - 1]
114
+ : surfaces[0];
115
+ (0, jostraca_1.Content)(`> ${surfaceList} — all generated from one OpenAPI spec by [@voxgig/sdkgen](${SDKGEN_REPO}).
25
116
 
26
117
  `);
27
- // Target links
28
- if (activeTargets.length > 0) {
29
- (0, jostraca_1.Content)(`Available for `);
30
- const links = activeTargets.map((t) => `[${t.title}](${t.name}/)`);
31
- (0, jostraca_1.Content)(`${links.join(' and ')}.
118
+ }
119
+ // 2. About / what the API is
120
+ if (aboutMd) {
121
+ (0, jostraca_1.Content)(`## About ${productName}
122
+
123
+ ${aboutMd.trim()}
32
124
 
33
125
  `);
34
126
  }
35
- // Entities section
127
+ else if (def.desc) {
128
+ (0, jostraca_1.Content)(`${def.desc}
129
+
130
+ `);
131
+ }
132
+ // 2b. Entities-first framing: the API surface is a small set of semantic,
133
+ // Capitalised entities — NOT raw URL paths/queries — which is the core
134
+ // mental model the SDK is built around (model-driven; lists real entities).
36
135
  if (activeEntities.length > 0) {
136
+ const entNames = activeEntities.map((e) => e.Name);
137
+ const entList = entNames.length > 1
138
+ ? entNames.slice(0, -1).join(', ') + ' and ' + entNames[entNames.length - 1]
139
+ : entNames[0];
140
+ const exEnt = activeEntities[0];
141
+ const ex = exEnt.Name;
142
+ const exLower = (0, naming_1.safeVarName)(ex.toLowerCase(), 'ts');
143
+ // The example call uses the entity's PRIMARY op — an op it actually
144
+ // exposes (prefer list -> the array, then load -> the record, else a
145
+ // create with its required fields). A create-only entity therefore never
146
+ // shows a phantom .list()/.load() that would not compile. If it exposes
147
+ // only remove (or nothing), the op line is omitted entirely.
148
+ const primaryOp = (0, opShape_1.entityPrimaryOp)(exEnt);
149
+ let exCall = '';
150
+ if ('list' === primaryOp) {
151
+ exCall = `const items = await client.${ex}().list()`;
152
+ }
153
+ else if ('load' === primaryOp) {
154
+ exCall = `const ${exLower} = await client.${ex}().load()`;
155
+ }
156
+ else if ('create' === primaryOp || 'update' === primaryOp) {
157
+ const exIdF = (0, opShape_1.entityIdField)(exEnt);
158
+ const shapeItems = (0, opShape_1.opRequestShape)(exEnt, primaryOp).items
159
+ .filter((it) => it.name !== exIdF && it.name !== 'id');
160
+ const required = shapeItems.filter((it) => !it.optional);
161
+ // ALL required fields must appear or the literal is not assignable to
162
+ // the typed CreateData/UpdateData; cap only the optional fallback.
163
+ const chosen = required.length ? required : shapeItems.slice(0, 3);
164
+ const bodyLines = chosen.map((it) => ` ${it.name}: ${tsExampleLiteral(it.type)},`);
165
+ const body = bodyLines.length ? `\n${bodyLines.join('\n')}\n` : '';
166
+ exCall = `const ${exLower} = await client.${ex}().${primaryOp}({${body}})`;
167
+ }
168
+ // Model-driven op list — only the operations the entities actually expose
169
+ // (advice may be list+load only; never claim create/update/remove exist).
170
+ const CANON_OPS = ['list', 'load', 'create', 'update', 'remove'];
171
+ const opSet = new Set();
172
+ activeEntities.forEach((e) => Object.keys(e.op || {})
173
+ .forEach((o) => { if (e.op[o] && e.op[o].active !== false)
174
+ opSet.add(o); }));
175
+ const opNames = CANON_OPS.filter((o) => opSet.has(o)).concat([...opSet].filter((o) => !CANON_OPS.includes(o)));
176
+ const opList = (opNames.length ? opNames : ['list', 'load']).map((o) => '`' + o + '`').join(', ');
177
+ (0, jostraca_1.Content)(`## Entities, not endpoints
178
+
179
+ This SDK exposes the API as a small set of **semantic entities** — ${entList} — that you
180
+ call directly, instead of assembling URL paths and query strings. Entities are
181
+ **Capitalised** to mark them as the primary surface, each with the operations they
182
+ support (${opList}):
183
+
184
+ \`\`\`ts
185
+ const client = new ${model.Name}SDK()${exCall ? '\n' + exCall : ''}
186
+ \`\`\`
187
+
188
+ Thinking in entities keeps the mental model small — for people and AI agents alike —
189
+ rather than reasoning about raw HTTP routes and query parameters.
190
+
191
+ `);
192
+ }
193
+ // 3. Packages — real published package name + install command per
194
+ // ecosystem. A package that is NOT yet live on its registry (the fleet
195
+ // default: 'pending') must NOT advertise a `npm install ...` that 404s —
196
+ // its Install cell links to the git-tag releases page instead. The go
197
+ // family resolves from the tag directly (`go get <mod>@latest`).
198
+ if (sdkTargets.length > 0) {
199
+ const { releasesUrl } = (0, packageMeta_1.repoInfo)(model);
200
+ (0, jostraca_1.Content)(`## Packages
201
+
202
+ | Language | Package | Install |
203
+ | --- | --- | --- |
204
+ `);
205
+ sdkTargets.forEach((tgt) => {
206
+ const state = (0, packageMeta_1.registryState)(model, tgt.name);
207
+ let cell;
208
+ if ('active' === state) {
209
+ const cmd = installCommand(tgt, model);
210
+ if (!cmd)
211
+ return;
212
+ cell = '`' + cmd + '`';
213
+ }
214
+ else if ('tag' === state) {
215
+ // Tag-only port (go): the vendor command IS the real install.
216
+ cell = '`' + (0, packageMeta_1.vendorCommand)(model, tgt.name) + '`';
217
+ }
218
+ else {
219
+ // pending / inactive: point at the git tag, never a 404 command.
220
+ cell = `publish pending — [install from git tag](${releasesUrl})`;
221
+ }
222
+ (0, jostraca_1.Content)(`| ${tgt.title} | \`${(0, packageMeta_1.packageName)(model, tgt.name)}\` | ${cell} |
223
+ `);
224
+ });
225
+ (0, jostraca_1.Content)(`
226
+ `);
227
+ }
228
+ // 4. Quickstart in the lead language
229
+ if (leadTarget) {
230
+ (0, jostraca_1.Content)(`## Quickstart
231
+
232
+ ### ${leadTarget.title}
233
+
234
+ `);
235
+ const LeadQuick = (0, utility_1.requirePath)(ctx$, `./cmp/${leadTarget.name}/ReadmeTopQuick_${leadTarget.name}`, { ignore: true });
236
+ if (LeadQuick) {
237
+ LeadQuick['ReadmeTopQuick']({ target: leadTarget });
238
+ }
37
239
  (0, jostraca_1.Content)(`
38
- ## Entities
240
+ See the [${leadTarget.title} README](${leadTarget.name}/README.md) for the full guide.
241
+
242
+ `);
243
+ }
244
+ // 5. Surface table
245
+ if (sdkTargets.length > 0 || hasCli || hasMcp) {
246
+ (0, jostraca_1.Content)(`## Surfaces
247
+
248
+ | Surface | Path |
249
+ | --- | --- |
250
+ `);
251
+ if (sdkTargets.length > 0) {
252
+ const paths = sdkTargets.map((t) => `\`${t.name}/\``).join(' ');
253
+ (0, jostraca_1.Content)(`| **SDK** (${langList}) | ${paths} |
254
+ `);
255
+ }
256
+ if (hasCli) {
257
+ (0, jostraca_1.Content)(`| **CLI** | \`go-cli/\` |
258
+ `);
259
+ }
260
+ if (hasMcp) {
261
+ (0, jostraca_1.Content)(`| **MCP server** | \`go-mcp/\` |
262
+ `);
263
+ }
264
+ (0, jostraca_1.Content)(`
265
+ `);
266
+ }
267
+ // 6. MCP / agent usage — only if MCP target is enabled
268
+ if (hasMcp) {
269
+ (0, jostraca_1.Content)(`## Use it from an AI agent (MCP)
270
+
271
+ The generated MCP server exposes every operation in this SDK as an
272
+ [MCP](https://modelcontextprotocol.io) tool that Claude, Cursor or Cline
273
+ can call directly. Build and register it:
274
+
275
+ \`\`\`bash
276
+ cd go-mcp && go build -o ${model.name}-mcp .
277
+ \`\`\`
278
+
279
+ Then add it to your agent's MCP config (Claude Desktop, Cursor, etc.):
280
+
281
+ \`\`\`json
282
+ {
283
+ "mcpServers": {
284
+ "${model.name}": {
285
+ "command": "/abs/path/to/${model.name}-mcp"
286
+ }
287
+ }
288
+ }
289
+ \`\`\`
290
+
291
+ `);
292
+ }
293
+ // 7. Entities table
294
+ if (activeEntities.length > 0) {
295
+ (0, jostraca_1.Content)(`## Entities
39
296
 
40
297
  The API exposes ${activeEntities.length === 1 ? 'one entity' : activeEntities.length + ' entities'}:
41
298
 
@@ -43,8 +300,11 @@ The API exposes ${activeEntities.length === 1 ? 'one entity' : activeEntities.le
43
300
  | --- | --- | --- |
44
301
  `);
45
302
  activeEntities.map((ent) => {
46
- const entdesc = ent.short || '';
47
303
  const ops = ent.op || {};
304
+ const opNames = Object.keys(ops).filter((o) => ops[o]?.active !== false);
305
+ // Never emit a blank description cell: fall back to an ops-derived line.
306
+ const entdesc = entityDesc[ent.name] || ent.short || ent.desc ||
307
+ `The ${ent.Name} entity${opNames.length ? ' (' + opNames.join(', ') + ')' : ''}.`;
48
308
  const points = (0, jostraca_1.each)(ops).map((op) => op.points ? (0, jostraca_1.each)(op.points) : []).flat();
49
309
  const path = points.length > 0
50
310
  ? points[0].orig || ''
@@ -52,19 +312,92 @@ The API exposes ${activeEntities.length === 1 ? 'one entity' : activeEntities.le
52
312
  (0, jostraca_1.Content)(`| **${ent.Name}** | ${entdesc} | \`${path}\` |
53
313
  `);
54
314
  });
315
+ const opUnion = new Set();
316
+ activeEntities.forEach((e) => Object.keys(e.op || {})
317
+ .forEach((o) => { if (e.op[o]?.active !== false)
318
+ opUnion.add(o); }));
319
+ const opAvail = ['load', 'list', 'create', 'update', 'remove'].filter((o) => opUnion.has(o));
320
+ const opBold = (opAvail.length ? opAvail : ['load', 'list']).map((o) => '**' + o + '**').join(', ');
55
321
  (0, jostraca_1.Content)(`
56
- Each entity supports the following operations where available: **load**, **list**, **create**,
57
- **update**, and **remove**.
322
+ The operations available across these entities are ${opBold} see each entity's
323
+ own list above for exactly which it supports.
58
324
 
59
325
  `);
60
326
  }
61
- // Architecture section
62
- (0, jostraca_1.Content)(`
63
- ## Architecture
327
+ // 8. Quickstart in the other languages (lead is already covered above)
328
+ const otherTargets = sdkTargets.filter((t) => leadTarget && t.name !== leadTarget.name);
329
+ if (otherTargets.length > 0) {
330
+ (0, jostraca_1.Content)(`## Quickstart in other languages
64
331
 
65
- ### Entity-operation model
332
+ `);
333
+ otherTargets.forEach((tgt) => {
334
+ const Quick = (0, utility_1.requirePath)(ctx$, `./cmp/${tgt.name}/ReadmeTopQuick_${tgt.name}`, { ignore: true });
335
+ if (Quick) {
336
+ (0, jostraca_1.Content)(`### ${tgt.title}
66
337
 
67
- Every SDK call follows the same pipeline:
338
+ `);
339
+ Quick['ReadmeTopQuick']({ target: tgt });
340
+ (0, jostraca_1.Content)(`
341
+ `);
342
+ }
343
+ });
344
+ }
345
+ // 9. Testing — keep, but slim
346
+ if (sdkTargets.length > 0) {
347
+ (0, jostraca_1.Content)(`## Unit testing in offline mode
348
+
349
+ Every SDK ships a test mode that swaps the HTTP transport for an
350
+ in-memory mock, so unit tests run offline.
351
+
352
+ `);
353
+ sdkTargets.forEach((tgt) => {
354
+ const Test = (0, utility_1.requirePath)(ctx$, `./cmp/${tgt.name}/ReadmeTopTest_${tgt.name}`, { ignore: true });
355
+ if (Test) {
356
+ (0, jostraca_1.Content)(`### ${tgt.title}
357
+
358
+ `);
359
+ Test['ReadmeTopTest']({ target: tgt });
360
+ (0, jostraca_1.Content)(`
361
+ `);
362
+ }
363
+ });
364
+ }
365
+ // 10. Direct and prepare — a common everyday task (the low-level
366
+ // escape hatch for endpoints the entity model doesn't cover).
367
+ (0, jostraca_1.Content)(`## Direct and prepare
368
+
369
+ For endpoints the entity model doesn't cover, use the low-level methods:
370
+
371
+ - **\`direct(fetchargs)\`** — build and send an HTTP request in one step.
372
+ - **\`prepare(fetchargs)\`** — build the request without sending it.
373
+
374
+ Both accept a map with \`path\`, \`method\`, \`params\`, \`query\`,
375
+ \`headers\`, and \`body\`. See the [How-to guides](#how-to-guides) below.
376
+
377
+ `);
378
+ // 11. How-to guides — keep, useful for the engineer reader
379
+ (0, jostraca_1.Content)(`## How-to guides
380
+
381
+ ### Make a direct API call
382
+
383
+ When the entity interface does not cover an endpoint, use \`direct\`:
384
+
385
+ `);
386
+ sdkTargets.forEach((tgt) => {
387
+ const Howto = (0, utility_1.requirePath)(ctx$, `./cmp/${tgt.name}/ReadmeTopHowto_${tgt.name}`, { ignore: true });
388
+ if (Howto) {
389
+ Howto['ReadmeTopHowto']({ target: tgt });
390
+ }
391
+ });
392
+ // 11b. Advanced — the pipeline model and feature hooks are internal
393
+ // machinery: useful when extending the SDK, but not part of everyday
394
+ // use, so they live below the task-focused sections above.
395
+ (0, jostraca_1.Content)(`## Advanced
396
+
397
+ > Everyday use only needs the sections above. This explains the internals
398
+ > behind every call — relevant when writing custom features.
399
+
400
+ Every SDK call runs the same five-stage pipeline:
68
401
 
69
402
  1. **Point** — resolve the API endpoint from the operation definition.
70
403
  2. **Spec** — build the HTTP specification (URL, method, headers, body).
@@ -72,14 +405,14 @@ Every SDK call follows the same pipeline:
72
405
  4. **Response** — receive and parse the response.
73
406
  5. **Result** — extract the result data for the caller.
74
407
 
75
- At each stage a feature hook fires (e.g. \`PrePoint\`, \`PreSpec\`,
76
- \`PreRequest\`), allowing features to inspect or modify the pipeline.
408
+ A feature hook fires at each stage (e.g. \`PrePoint\`, \`PreSpec\`,
409
+ \`PreRequest\`), so features can inspect or modify the pipeline without
410
+ forking the SDK.
77
411
 
78
412
  ### Features
79
413
 
80
- Features are hook-based middleware that extend SDK behaviour.
81
-
82
- | Feature | Purpose |
414
+ `);
415
+ (0, jostraca_1.Content)(`| Feature | Purpose |
83
416
  | --- | --- |
84
417
  `);
85
418
  (0, jostraca_1.each)(feature, (feat) => {
@@ -90,80 +423,54 @@ Features are hook-based middleware that extend SDK behaviour.
90
423
  `);
91
424
  });
92
425
  (0, jostraca_1.Content)(`
93
- You can add custom features by passing them in the \`extend\` option at
94
- construction time.
95
-
96
- ### Direct and Prepare
97
-
98
- For endpoints not covered by the entity model, use the low-level methods:
99
-
100
- - **\`direct(fetchargs)\`** — build and send an HTTP request in one step.
101
- - **\`prepare(fetchargs)\`** — build the request without sending it.
102
-
103
- Both accept a map with \`path\`, \`method\`, \`params\`, \`query\`, \`headers\`,
104
- and \`body\`.
426
+ Pass custom features via the \`extend\` option at construction time.
105
427
 
106
428
  `);
107
- // Quick start section with examples from each target
108
- (0, jostraca_1.Content)(`
109
- ## Quick start
429
+ // 12. Per-language docs links
430
+ if (sdkTargets.length > 0) {
431
+ (0, jostraca_1.Content)(`## Per-language documentation
110
432
 
111
433
  `);
112
- activeTargets.map((tgt) => {
113
- const ReadmeTopQuick_sdk = (0, utility_1.requirePath)(ctx$, `./cmp/${tgt.name}/ReadmeTopQuick_${tgt.name}`, { ignore: true });
114
- if (ReadmeTopQuick_sdk) {
115
- (0, jostraca_1.Content)(`### ${tgt.title}
116
-
434
+ sdkTargets.forEach((tgt) => {
435
+ (0, jostraca_1.Content)(`- [${tgt.title}](${tgt.name}/README.md)
117
436
  `);
118
- ReadmeTopQuick_sdk['ReadmeTopQuick']({ target: tgt });
119
- (0, jostraca_1.Content)(`
437
+ });
438
+ (0, jostraca_1.Content)(`
120
439
  `);
121
- }
122
- });
123
- // Testing section
124
- (0, jostraca_1.Content)(`
125
- ## Testing
440
+ }
441
+ // 13. Upstream API — contact/servers from the OpenAPI info block
442
+ const upstreamUrl = (info.contact && info.contact.url)
443
+ || (info.servers && info.servers[0] && info.servers[0].url)
444
+ || homepage;
445
+ if (upstreamUrl || docsUrl) {
446
+ (0, jostraca_1.Content)(`## Upstream API
126
447
 
127
- Both SDKs provide a test mode that replaces the HTTP transport with an
128
- in-memory mock, so tests run without a network connection.
448
+ This SDK is generated from the upstream OpenAPI specification. It is an
449
+ unofficial client and is not affiliated with the API provider.
129
450
 
130
451
  `);
131
- activeTargets.map((tgt) => {
132
- const ReadmeTopTest_sdk = (0, utility_1.requirePath)(ctx$, `./cmp/${tgt.name}/ReadmeTopTest_${tgt.name}`, { ignore: true });
133
- if (ReadmeTopTest_sdk) {
134
- (0, jostraca_1.Content)(`### ${tgt.title}
135
-
452
+ if (upstreamUrl) {
453
+ (0, jostraca_1.Content)(`- Upstream API: [${upstreamUrl}](${upstreamUrl})
136
454
  `);
137
- ReadmeTopTest_sdk['ReadmeTopTest']({ target: tgt });
138
- (0, jostraca_1.Content)(`
455
+ }
456
+ if (docsUrl && docsUrl !== upstreamUrl) {
457
+ (0, jostraca_1.Content)(`- Documentation: [${docsUrl}](${docsUrl})
139
458
  `);
140
459
  }
141
- });
142
- // How-to guides
143
- (0, jostraca_1.Content)(`
144
- ## How-to guides
145
-
146
- ### Make a direct API call
460
+ (0, jostraca_1.Content)(`
461
+ `);
462
+ }
463
+ // 13b. Security
464
+ (0, jostraca_1.Content)(`## Security
147
465
 
148
- When the entity interface does not cover an endpoint, use \`direct\`:
466
+ Please report security issues to ${packageMeta_1.SECURITY_EMAIL}. See [SECURITY.md](SECURITY.md).
467
+ Do not open public issues for suspected vulnerabilities.
149
468
 
150
469
  `);
151
- activeTargets.map((tgt) => {
152
- const ReadmeTopHowto_sdk = (0, utility_1.requirePath)(ctx$, `./cmp/${tgt.name}/ReadmeTopHowto_${tgt.name}`, { ignore: true });
153
- if (ReadmeTopHowto_sdk) {
154
- ReadmeTopHowto_sdk['ReadmeTopHowto']({ target: tgt });
155
- }
156
- });
157
- // Language-specific links
158
- (0, jostraca_1.Content)(`
159
- ## Language-specific documentation
470
+ // 14. Provenance footer
471
+ (0, jostraca_1.Content)(`---
160
472
 
161
- `);
162
- activeTargets.map((tgt) => {
163
- (0, jostraca_1.Content)(`- [${tgt.title} SDK](${tgt.name}/README.md)
164
- `);
165
- });
166
- (0, jostraca_1.Content)(`
473
+ Generated from the ${productName} OpenAPI spec by [@voxgig/sdkgen](${SDKGEN_REPO}).
167
474
  `);
168
475
  });
169
476
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ReadmeTop.js","sourceRoot":"","sources":["../../src/cmp/ReadmeTop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReadmeTop.js","sourceRoot":"","sources":["../../src/cmp/ReadmeTop.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ declare const Security: import("jostraca").Component;
2
+ export { Security };
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Security = void 0;
4
+ const jostraca_1 = require("jostraca");
5
+ const packageMeta_1 = require("../helpers/packageMeta");
6
+ // Root SECURITY.md: a responsible-disclosure policy pointing at the Voxgig
7
+ // security contact, with the generated / unofficial disclosure inline.
8
+ const Security = (0, jostraca_1.cmp)(function Security(props) {
9
+ const { ctx$ } = props;
10
+ const { model } = ctx$;
11
+ const { issuesUrl } = (0, packageMeta_1.repoInfo)(model);
12
+ (0, jostraca_1.File)({ name: 'SECURITY.md' }, () => {
13
+ (0, jostraca_1.Content)(`# Security Policy
14
+
15
+ ## Reporting a vulnerability
16
+
17
+ Please report security issues to ${packageMeta_1.SECURITY_EMAIL}.
18
+
19
+ Do not open public GitHub issues for suspected vulnerabilities. We aim to
20
+ acknowledge reports within 3 business days.
21
+
22
+ For non-security bugs, use the issue tracker: ${issuesUrl}
23
+
24
+ ## Scope
25
+
26
+ This policy applies to the generated Voxgig SDK packages published from this
27
+ repository (npm, PyPI, Packagist, RubyGems, LuaRocks, and the Go module).
28
+
29
+ This is an unofficial SDK for the ${(0, packageMeta_1.apiName)(model)} public API, generated by
30
+ Voxgig. It is not affiliated with, endorsed by, or sponsored by the upstream
31
+ API provider.
32
+ `);
33
+ });
34
+ });
35
+ exports.Security = Security;
36
+ //# sourceMappingURL=Security.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Security.js","sourceRoot":"","sources":["../../src/cmp/Security.ts"],"names":[],"mappings":";;;AAAA,uCAA6C;AAE7C,wDAA0E;AAG1E,2EAA2E;AAC3E,uEAAuE;AACvE,MAAM,QAAQ,GAAG,IAAA,cAAG,EAAC,SAAS,QAAQ,CAAC,KAAU;IAC/C,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IACtB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;IAEtB,MAAM,EAAE,SAAS,EAAE,GAAG,IAAA,sBAAQ,EAAC,KAAK,CAAC,CAAA;IAErC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE;QACjC,IAAA,kBAAO,EAAC;;;;mCAIuB,4BAAc;;;;;gDAKD,SAAS;;;;;;;oCAOrB,IAAA,qBAAO,EAAC,KAAK,CAAC;;;CAGjD,CAAC,CAAA;IACA,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAIA,4BAAQ"}
@@ -0,0 +1,7 @@
1
+ type CanonLang = 'ts' | 'js' | 'py' | 'php' | 'rb' | 'lua' | 'go';
2
+ declare const CANON_TYPE: Record<string, Record<CanonLang, string>>;
3
+ declare const CANON_ANY: Record<CanonLang, string>;
4
+ declare function canonKey(sentinel: unknown): string;
5
+ declare function canonToType(sentinel: unknown, lang: string): string;
6
+ export { canonToType, canonKey, CANON_TYPE, CANON_ANY, };
7
+ export type { CanonLang, };