@voxgig/sdkgen 1.3.14 → 1.3.18

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 (549) hide show
  1. package/bin/voxgig-sdkgen +1 -1
  2. package/dist/action/action.js.map +1 -1
  3. package/dist/action/feature.js.map +1 -1
  4. package/dist/action/target.js.map +1 -1
  5. package/dist/cmp/AgentGuide.js.map +1 -1
  6. package/dist/cmp/AgentGuideContent.js.map +1 -1
  7. package/dist/cmp/AgentGuideFeature.js.map +1 -1
  8. package/dist/cmp/AgentGuideTop.js.map +1 -1
  9. package/dist/cmp/Changelog.js.map +1 -1
  10. package/dist/cmp/Deploy.js.map +1 -1
  11. package/dist/cmp/Entity.js +5 -1
  12. package/dist/cmp/Entity.js.map +1 -1
  13. package/dist/cmp/Feature.js +2 -1
  14. package/dist/cmp/Feature.js.map +1 -1
  15. package/dist/cmp/FeatureHook.js.map +1 -1
  16. package/dist/cmp/License.js.map +1 -1
  17. package/dist/cmp/Main.js.map +1 -1
  18. package/dist/cmp/Readme.js.map +1 -1
  19. package/dist/cmp/ReadmeEntity.js.map +1 -1
  20. package/dist/cmp/ReadmeErrors.js +1 -1
  21. package/dist/cmp/ReadmeErrors.js.map +1 -1
  22. package/dist/cmp/ReadmeExplanation.js +2 -2
  23. package/dist/cmp/ReadmeExplanation.js.map +1 -1
  24. package/dist/cmp/ReadmeHowto.js.map +1 -1
  25. package/dist/cmp/ReadmeInstall.js.map +1 -1
  26. package/dist/cmp/ReadmeIntro.js.map +1 -1
  27. package/dist/cmp/ReadmeModel.js.map +1 -1
  28. package/dist/cmp/ReadmeOptions.js.map +1 -1
  29. package/dist/cmp/ReadmeQuick.js.map +1 -1
  30. package/dist/cmp/ReadmeRef.js.map +1 -1
  31. package/dist/cmp/ReadmeTop.js +1 -1
  32. package/dist/cmp/ReadmeTop.js.map +1 -1
  33. package/dist/cmp/Security.js.map +1 -1
  34. package/dist/cmp/Test.js.map +1 -1
  35. package/dist/helpers/buildIdNames.js.map +1 -1
  36. package/dist/helpers/canonType.d.ts +3 -2
  37. package/dist/helpers/canonType.js +112 -24
  38. package/dist/helpers/canonType.js.map +1 -1
  39. package/dist/helpers/collectDeps.d.ts +1 -1
  40. package/dist/helpers/collectDeps.js +36 -13
  41. package/dist/helpers/collectDeps.js.map +1 -1
  42. package/dist/helpers/getMatchEntries.js.map +1 -1
  43. package/dist/helpers/naming.d.ts +7 -1
  44. package/dist/helpers/naming.js +90 -0
  45. package/dist/helpers/naming.js.map +1 -1
  46. package/dist/helpers/opExample.d.ts +1 -1
  47. package/dist/helpers/opExample.js +37 -20
  48. package/dist/helpers/opExample.js.map +1 -1
  49. package/dist/helpers/opShape.d.ts +5 -1
  50. package/dist/helpers/opShape.js +174 -7
  51. package/dist/helpers/opShape.js.map +1 -1
  52. package/dist/helpers/packageMeta.js.map +1 -1
  53. package/dist/sdkgen.d.ts +3 -3
  54. package/dist/sdkgen.js +12 -2
  55. package/dist/sdkgen.js.map +1 -1
  56. package/dist/tsconfig.tsbuildinfo +1 -1
  57. package/dist/types.js.map +1 -1
  58. package/dist/utility.js.map +1 -1
  59. package/package.json +20 -14
  60. package/project/.sdk/model/target/cpp.aontu +4 -4
  61. package/project/.sdk/model/target/go-cli.aontu +17 -17
  62. package/project/.sdk/model/target/go-mcp.aontu +11 -11
  63. package/project/.sdk/model/target/go.aontu +1 -1
  64. package/project/.sdk/model/target/haskell.aontu +6 -3
  65. package/project/.sdk/model/target/java.aontu +4 -4
  66. package/project/.sdk/model/target/kotlin.aontu +4 -4
  67. package/project/.sdk/model/target/lean.aontu +51 -0
  68. package/project/.sdk/model/target/scala.aontu +4 -4
  69. package/project/.sdk/model/target/zig.aontu +12 -2
  70. package/project/.sdk/src/cmp/c/Config_c.ts +16 -4
  71. package/project/.sdk/src/cmp/c/EntityTypes_c.ts +167 -0
  72. package/project/.sdk/src/cmp/c/Entity_c.ts +3 -3
  73. package/project/.sdk/src/cmp/c/Main_c.ts +4 -0
  74. package/project/.sdk/src/cmp/c/ReadmeEntity_c.ts +192 -0
  75. package/project/.sdk/src/cmp/c/ReadmeExamplesTest_c.ts +169 -0
  76. package/project/.sdk/src/cmp/c/ReadmeExplanation_c.ts +55 -0
  77. package/project/.sdk/src/cmp/c/ReadmeHowto_c.ts +168 -0
  78. package/project/.sdk/src/cmp/c/ReadmeInstall_c.ts +52 -0
  79. package/project/.sdk/src/cmp/c/ReadmeIntro_c.ts +67 -0
  80. package/project/.sdk/src/cmp/c/ReadmeModel_c.ts +151 -0
  81. package/project/.sdk/src/cmp/c/ReadmeOptions_c.ts +65 -0
  82. package/project/.sdk/src/cmp/c/ReadmeQuick_c.ts +225 -0
  83. package/project/.sdk/src/cmp/c/ReadmeRef_c.ts +398 -0
  84. package/project/.sdk/src/cmp/c/ReadmeTopHowto_c.ts +24 -0
  85. package/project/.sdk/src/cmp/c/ReadmeTopQuick_c.ts +104 -0
  86. package/project/.sdk/src/cmp/c/ReadmeTopTest_c.ts +86 -0
  87. package/project/.sdk/src/cmp/c/TestDirect_c.ts +3 -3
  88. package/project/.sdk/src/cmp/c/TestEntity_c.ts +10 -0
  89. package/project/.sdk/src/cmp/c/Test_c.ts +4 -0
  90. package/project/.sdk/src/cmp/c/utility_c.ts +8 -2
  91. package/project/.sdk/src/cmp/clojure/Entity_clojure.ts +1 -1
  92. package/project/.sdk/src/cmp/clojure/ReadmeEntity_clojure.ts +182 -0
  93. package/project/.sdk/src/cmp/clojure/ReadmeExamplesTest_clojure.ts +65 -0
  94. package/project/.sdk/src/cmp/clojure/ReadmeExplanation_clojure.ts +44 -0
  95. package/project/.sdk/src/cmp/clojure/ReadmeHowto_clojure.ts +144 -0
  96. package/project/.sdk/src/cmp/clojure/ReadmeInstall_clojure.ts +51 -0
  97. package/project/.sdk/src/cmp/clojure/ReadmeIntro_clojure.ts +66 -0
  98. package/project/.sdk/src/cmp/clojure/ReadmeModel_clojure.ts +156 -0
  99. package/project/.sdk/src/cmp/clojure/ReadmeOptions_clojure.ts +61 -0
  100. package/project/.sdk/src/cmp/clojure/ReadmeQuick_clojure.ts +210 -0
  101. package/project/.sdk/src/cmp/clojure/ReadmeRef_clojure.ts +409 -0
  102. package/project/.sdk/src/cmp/clojure/ReadmeTopHowto_clojure.ts +24 -0
  103. package/project/.sdk/src/cmp/clojure/ReadmeTopQuick_clojure.ts +98 -0
  104. package/project/.sdk/src/cmp/clojure/ReadmeTopTest_clojure.ts +78 -0
  105. package/project/.sdk/src/cmp/clojure/TestDirect_clojure.ts +58 -0
  106. package/project/.sdk/src/cmp/clojure/TestEntity_clojure.ts +79 -0
  107. package/project/.sdk/src/cmp/clojure/Test_clojure.ts +21 -65
  108. package/project/.sdk/src/cmp/cpp/EntityTypes_cpp.ts +174 -0
  109. package/project/.sdk/src/cmp/cpp/Entity_cpp.ts +3 -3
  110. package/project/.sdk/src/cmp/cpp/MainEntity_cpp.ts +2 -2
  111. package/project/.sdk/src/cmp/cpp/Main_cpp.ts +5 -0
  112. package/project/.sdk/src/cmp/cpp/ReadmeEntity_cpp.ts +170 -0
  113. package/project/.sdk/src/cmp/cpp/ReadmeExamplesTest_cpp.ts +136 -0
  114. package/project/.sdk/src/cmp/cpp/ReadmeExplanation_cpp.ts +45 -0
  115. package/project/.sdk/src/cmp/cpp/ReadmeHowto_cpp.ts +139 -0
  116. package/project/.sdk/src/cmp/cpp/ReadmeInstall_cpp.ts +42 -0
  117. package/project/.sdk/src/cmp/cpp/ReadmeIntro_cpp.ts +69 -0
  118. package/project/.sdk/src/cmp/cpp/ReadmeModel_cpp.ts +155 -0
  119. package/project/.sdk/src/cmp/cpp/ReadmeOptions_cpp.ts +62 -0
  120. package/project/.sdk/src/cmp/cpp/ReadmeQuick_cpp.ts +234 -0
  121. package/project/.sdk/src/cmp/cpp/ReadmeRef_cpp.ts +387 -0
  122. package/project/.sdk/src/cmp/cpp/ReadmeTopHowto_cpp.ts +24 -0
  123. package/project/.sdk/src/cmp/cpp/ReadmeTopQuick_cpp.ts +95 -0
  124. package/project/.sdk/src/cmp/cpp/ReadmeTopTest_cpp.ts +70 -0
  125. package/project/.sdk/src/cmp/cpp/TestDirect_cpp.ts +3 -3
  126. package/project/.sdk/src/cmp/cpp/TestEntity_cpp.ts +5 -1
  127. package/project/.sdk/src/cmp/cpp/Test_cpp.ts +4 -0
  128. package/project/.sdk/src/cmp/csharp/EntityTypes_csharp.ts +195 -0
  129. package/project/.sdk/src/cmp/csharp/Entity_csharp.ts +3 -3
  130. package/project/.sdk/src/cmp/csharp/MainEntity_csharp.ts +2 -2
  131. package/project/.sdk/src/cmp/csharp/Main_csharp.ts +6 -0
  132. package/project/.sdk/src/cmp/csharp/Package_csharp.ts +1 -1
  133. package/project/.sdk/src/cmp/csharp/ReadmeEntity_csharp.ts +174 -0
  134. package/project/.sdk/src/cmp/csharp/ReadmeExamplesTest_csharp.ts +210 -0
  135. package/project/.sdk/src/cmp/csharp/ReadmeExplanation_csharp.ts +42 -0
  136. package/project/.sdk/src/cmp/csharp/ReadmeHowto_csharp.ts +168 -0
  137. package/project/.sdk/src/cmp/csharp/ReadmeInstall_csharp.ts +41 -0
  138. package/project/.sdk/src/cmp/csharp/ReadmeIntro_csharp.ts +65 -0
  139. package/project/.sdk/src/cmp/csharp/ReadmeModel_csharp.ts +148 -0
  140. package/project/.sdk/src/cmp/csharp/ReadmeOptions_csharp.ts +60 -0
  141. package/project/.sdk/src/cmp/csharp/ReadmeQuick_csharp.ts +219 -0
  142. package/project/.sdk/src/cmp/csharp/ReadmeRef_csharp.ts +390 -0
  143. package/project/.sdk/src/cmp/csharp/ReadmeTopHowto_csharp.ts +25 -0
  144. package/project/.sdk/src/cmp/csharp/ReadmeTopQuick_csharp.ts +92 -0
  145. package/project/.sdk/src/cmp/csharp/ReadmeTopTest_csharp.ts +77 -0
  146. package/project/.sdk/src/cmp/csharp/TestDirect_csharp.ts +3 -3
  147. package/project/.sdk/src/cmp/csharp/Test_csharp.ts +4 -0
  148. package/project/.sdk/src/cmp/dart/EntityTypes_dart.ts +43 -30
  149. package/project/.sdk/src/cmp/dart/Entity_dart.ts +11 -3
  150. package/project/.sdk/src/cmp/dart/MainEntity_dart.ts +2 -2
  151. package/project/.sdk/src/cmp/dart/Main_dart.ts +3 -3
  152. package/project/.sdk/src/cmp/dart/Package_dart.ts +1 -1
  153. package/project/.sdk/src/cmp/dart/ReadmeEntity_dart.ts +166 -0
  154. package/project/.sdk/src/cmp/dart/ReadmeExamplesTest_dart.ts +238 -0
  155. package/project/.sdk/src/cmp/dart/ReadmeExplanation_dart.ts +53 -0
  156. package/project/.sdk/src/cmp/dart/ReadmeHowto_dart.ts +151 -0
  157. package/project/.sdk/src/cmp/dart/ReadmeInstall_dart.ts +59 -0
  158. package/project/.sdk/src/cmp/dart/ReadmeIntro_dart.ts +65 -0
  159. package/project/.sdk/src/cmp/dart/ReadmeModel_dart.ts +151 -0
  160. package/project/.sdk/src/cmp/dart/ReadmeOptions_dart.ts +63 -0
  161. package/project/.sdk/src/cmp/dart/ReadmeQuick_dart.ts +214 -0
  162. package/project/.sdk/src/cmp/dart/ReadmeRef_dart.ts +381 -0
  163. package/project/.sdk/src/cmp/dart/ReadmeTopHowto_dart.ts +24 -0
  164. package/project/.sdk/src/cmp/dart/ReadmeTopQuick_dart.ts +95 -0
  165. package/project/.sdk/src/cmp/dart/ReadmeTopTest_dart.ts +78 -0
  166. package/project/.sdk/src/cmp/dart/TestDirect_dart.ts +4 -4
  167. package/project/.sdk/src/cmp/dart/TestEntity_dart.ts +52 -0
  168. package/project/.sdk/src/cmp/dart/Test_dart.ts +6 -0
  169. package/project/.sdk/src/cmp/dart/fragment/Entity.fragment.dart +1 -3
  170. package/project/.sdk/src/cmp/dart/fragment/Entity.test.fragment.dart +1 -40
  171. package/project/.sdk/src/cmp/dart/fragment/Main.fragment.dart +3 -3
  172. package/project/.sdk/src/cmp/elixir/EntityTypes_elixir.ts +164 -0
  173. package/project/.sdk/src/cmp/elixir/Entity_elixir.ts +1 -1
  174. package/project/.sdk/src/cmp/elixir/Main_elixir.ts +4 -0
  175. package/project/.sdk/src/cmp/elixir/Package_elixir.ts +3 -1
  176. package/project/.sdk/src/cmp/elixir/ReadmeEntity_elixir.ts +163 -0
  177. package/project/.sdk/src/cmp/elixir/ReadmeExamplesTest_elixir.ts +144 -0
  178. package/project/.sdk/src/cmp/elixir/ReadmeExplanation_elixir.ts +55 -0
  179. package/project/.sdk/src/cmp/elixir/ReadmeHowto_elixir.ts +149 -0
  180. package/project/.sdk/src/cmp/elixir/ReadmeInstall_elixir.ts +67 -0
  181. package/project/.sdk/src/cmp/elixir/ReadmeIntro_elixir.ts +66 -0
  182. package/project/.sdk/src/cmp/elixir/ReadmeModel_elixir.ts +150 -0
  183. package/project/.sdk/src/cmp/elixir/ReadmeOptions_elixir.ts +62 -0
  184. package/project/.sdk/src/cmp/elixir/ReadmeQuick_elixir.ts +198 -0
  185. package/project/.sdk/src/cmp/elixir/ReadmeRef_elixir.ts +333 -0
  186. package/project/.sdk/src/cmp/elixir/ReadmeTopHowto_elixir.ts +26 -0
  187. package/project/.sdk/src/cmp/elixir/ReadmeTopQuick_elixir.ts +79 -0
  188. package/project/.sdk/src/cmp/elixir/ReadmeTopTest_elixir.ts +68 -0
  189. package/project/.sdk/src/cmp/elixir/Test_elixir.ts +4 -0
  190. package/project/.sdk/src/cmp/elixir/fragment/EntityCreateOp.fragment.ex +4 -0
  191. package/project/.sdk/src/cmp/elixir/fragment/EntityListOp.fragment.ex +4 -0
  192. package/project/.sdk/src/cmp/elixir/fragment/EntityLoadOp.fragment.ex +4 -0
  193. package/project/.sdk/src/cmp/elixir/fragment/EntityRemoveOp.fragment.ex +4 -0
  194. package/project/.sdk/src/cmp/elixir/fragment/EntityUpdateOp.fragment.ex +4 -0
  195. package/project/.sdk/src/cmp/elixir/utility_elixir.ts +32 -0
  196. package/project/.sdk/src/cmp/go/Config_go.ts +4 -1
  197. package/project/.sdk/src/cmp/go/EntityTypes_go.ts +121 -20
  198. package/project/.sdk/src/cmp/go/Entity_go.ts +3 -3
  199. package/project/.sdk/src/cmp/go/Main_go.ts +7 -6
  200. package/project/.sdk/src/cmp/go/Package_go.ts +1 -1
  201. package/project/.sdk/src/cmp/go/ReadmeHowto_go.ts +6 -1
  202. package/project/.sdk/src/cmp/go/TestDirect_go.ts +3 -3
  203. package/project/.sdk/src/cmp/go/TestEntity_go.ts +11 -4
  204. package/project/.sdk/src/cmp/go/utility_go.ts +28 -2
  205. package/project/.sdk/src/cmp/go-cli/Main_go-cli.ts +249 -44
  206. package/project/.sdk/src/cmp/go-cli/fragment/main.fragment.go +27 -5
  207. package/project/.sdk/src/cmp/go-mcp/Main_go-mcp.ts +200 -31
  208. package/project/.sdk/src/cmp/haskell/ReadmeEntity_haskell.ts +181 -0
  209. package/project/.sdk/src/cmp/haskell/ReadmeExamplesTest_haskell.ts +135 -0
  210. package/project/.sdk/src/cmp/haskell/ReadmeExplanation_haskell.ts +48 -0
  211. package/project/.sdk/src/cmp/haskell/ReadmeHowto_haskell.ts +168 -0
  212. package/project/.sdk/src/cmp/haskell/ReadmeInstall_haskell.ts +51 -0
  213. package/project/.sdk/src/cmp/haskell/ReadmeIntro_haskell.ts +67 -0
  214. package/project/.sdk/src/cmp/haskell/ReadmeModel_haskell.ts +160 -0
  215. package/project/.sdk/src/cmp/haskell/ReadmeOptions_haskell.ts +74 -0
  216. package/project/.sdk/src/cmp/haskell/ReadmeQuick_haskell.ts +237 -0
  217. package/project/.sdk/src/cmp/haskell/ReadmeRef_haskell.ts +405 -0
  218. package/project/.sdk/src/cmp/haskell/ReadmeTopHowto_haskell.ts +31 -0
  219. package/project/.sdk/src/cmp/haskell/ReadmeTopQuick_haskell.ts +104 -0
  220. package/project/.sdk/src/cmp/haskell/ReadmeTopTest_haskell.ts +80 -0
  221. package/project/.sdk/src/cmp/haskell/Test_haskell.ts +27 -2
  222. package/project/.sdk/src/cmp/java/EntityTypes_java.ts +206 -0
  223. package/project/.sdk/src/cmp/java/Entity_java.ts +3 -3
  224. package/project/.sdk/src/cmp/java/MainEntity_java.ts +2 -2
  225. package/project/.sdk/src/cmp/java/Main_java.ts +6 -0
  226. package/project/.sdk/src/cmp/java/Package_java.ts +1 -1
  227. package/project/.sdk/src/cmp/java/ReadmeEntity_java.ts +175 -0
  228. package/project/.sdk/src/cmp/java/ReadmeExamplesTest_java.ts +208 -0
  229. package/project/.sdk/src/cmp/java/ReadmeExplanation_java.ts +46 -0
  230. package/project/.sdk/src/cmp/java/ReadmeHowto_java.ts +156 -0
  231. package/project/.sdk/src/cmp/java/ReadmeInstall_java.ts +52 -0
  232. package/project/.sdk/src/cmp/java/ReadmeIntro_java.ts +66 -0
  233. package/project/.sdk/src/cmp/java/ReadmeModel_java.ts +150 -0
  234. package/project/.sdk/src/cmp/java/ReadmeOptions_java.ts +61 -0
  235. package/project/.sdk/src/cmp/java/ReadmeQuick_java.ts +230 -0
  236. package/project/.sdk/src/cmp/java/ReadmeRef_java.ts +388 -0
  237. package/project/.sdk/src/cmp/java/ReadmeTopHowto_java.ts +23 -0
  238. package/project/.sdk/src/cmp/java/ReadmeTopQuick_java.ts +103 -0
  239. package/project/.sdk/src/cmp/java/ReadmeTopTest_java.ts +77 -0
  240. package/project/.sdk/src/cmp/java/TestDirect_java.ts +3 -3
  241. package/project/.sdk/src/cmp/java/Test_java.ts +4 -0
  242. package/project/.sdk/src/cmp/js/EntityTypes_js.ts +25 -9
  243. package/project/.sdk/src/cmp/js/Entity_js.ts +3 -3
  244. package/project/.sdk/src/cmp/js/MainEntity_js.ts +6 -4
  245. package/project/.sdk/src/cmp/js/Main_js.ts +2 -2
  246. package/project/.sdk/src/cmp/js/ReadmeEntity_js.ts +4 -4
  247. package/project/.sdk/src/cmp/js/ReadmeHowto_js.ts +13 -4
  248. package/project/.sdk/src/cmp/js/ReadmeQuick_js.ts +4 -4
  249. package/project/.sdk/src/cmp/js/ReadmeRef_js.ts +5 -5
  250. package/project/.sdk/src/cmp/js/ReadmeTopQuick_js.ts +4 -4
  251. package/project/.sdk/src/cmp/js/ReadmeTopTest_js.ts +4 -4
  252. package/project/.sdk/src/cmp/js/TestDirect_js.ts +10 -9
  253. package/project/.sdk/src/cmp/js/TestEntity_js.ts +7 -2
  254. package/project/.sdk/src/cmp/js/fragment/Entity.test.fragment.js +0 -31
  255. package/project/.sdk/src/cmp/kotlin/EntityTypes_kotlin.ts +200 -0
  256. package/project/.sdk/src/cmp/kotlin/Entity_kotlin.ts +3 -3
  257. package/project/.sdk/src/cmp/kotlin/MainEntity_kotlin.ts +2 -2
  258. package/project/.sdk/src/cmp/kotlin/Main_kotlin.ts +6 -0
  259. package/project/.sdk/src/cmp/kotlin/Package_kotlin.ts +1 -1
  260. package/project/.sdk/src/cmp/kotlin/ReadmeEntity_kotlin.ts +175 -0
  261. package/project/.sdk/src/cmp/kotlin/ReadmeExamplesTest_kotlin.ts +198 -0
  262. package/project/.sdk/src/cmp/kotlin/ReadmeExplanation_kotlin.ts +47 -0
  263. package/project/.sdk/src/cmp/kotlin/ReadmeHowto_kotlin.ts +154 -0
  264. package/project/.sdk/src/cmp/kotlin/ReadmeInstall_kotlin.ts +50 -0
  265. package/project/.sdk/src/cmp/kotlin/ReadmeIntro_kotlin.ts +66 -0
  266. package/project/.sdk/src/cmp/kotlin/ReadmeModel_kotlin.ts +150 -0
  267. package/project/.sdk/src/cmp/kotlin/ReadmeOptions_kotlin.ts +61 -0
  268. package/project/.sdk/src/cmp/kotlin/ReadmeQuick_kotlin.ts +230 -0
  269. package/project/.sdk/src/cmp/kotlin/ReadmeRef_kotlin.ts +387 -0
  270. package/project/.sdk/src/cmp/kotlin/ReadmeTopHowto_kotlin.ts +23 -0
  271. package/project/.sdk/src/cmp/kotlin/ReadmeTopQuick_kotlin.ts +104 -0
  272. package/project/.sdk/src/cmp/kotlin/ReadmeTopTest_kotlin.ts +77 -0
  273. package/project/.sdk/src/cmp/kotlin/TestDirect_kotlin.ts +3 -3
  274. package/project/.sdk/src/cmp/kotlin/Test_kotlin.ts +4 -0
  275. package/project/.sdk/src/cmp/lean/Config_lean.ts +88 -0
  276. package/project/.sdk/src/cmp/lean/Entity_lean.ts +9 -0
  277. package/project/.sdk/src/cmp/lean/Gitignore_lean.ts +18 -0
  278. package/project/.sdk/src/cmp/lean/Main_lean.ts +120 -0
  279. package/project/.sdk/src/cmp/lean/Package_lean.ts +68 -0
  280. package/project/.sdk/src/cmp/lean/ReadmeEntity_lean.ts +29 -0
  281. package/project/.sdk/src/cmp/lean/ReadmeExplanation_lean.ts +19 -0
  282. package/project/.sdk/src/cmp/lean/ReadmeHowto_lean.ts +25 -0
  283. package/project/.sdk/src/cmp/lean/ReadmeInstall_lean.ts +38 -0
  284. package/project/.sdk/src/cmp/lean/ReadmeIntro_lean.ts +25 -0
  285. package/project/.sdk/src/cmp/lean/ReadmeModel_lean.ts +24 -0
  286. package/project/.sdk/src/cmp/lean/ReadmeOptions_lean.ts +22 -0
  287. package/project/.sdk/src/cmp/lean/ReadmeQuick_lean.ts +50 -0
  288. package/project/.sdk/src/cmp/lean/ReadmeRef_lean.ts +16 -0
  289. package/project/.sdk/src/cmp/lean/ReadmeTopHowto_lean.ts +16 -0
  290. package/project/.sdk/src/cmp/lean/ReadmeTopQuick_lean.ts +23 -0
  291. package/project/.sdk/src/cmp/lean/ReadmeTopTest_lean.ts +18 -0
  292. package/project/.sdk/src/cmp/lean/Test_lean.ts +207 -0
  293. package/project/.sdk/src/cmp/lean/utility_lean.ts +78 -0
  294. package/project/.sdk/src/cmp/lua/Config_lua.ts +1 -1
  295. package/project/.sdk/src/cmp/lua/EntityTypes_lua.ts +19 -6
  296. package/project/.sdk/src/cmp/lua/Entity_lua.ts +3 -3
  297. package/project/.sdk/src/cmp/lua/Main_lua.ts +14 -2
  298. package/project/.sdk/src/cmp/lua/Package_lua.ts +1 -1
  299. package/project/.sdk/src/cmp/lua/ReadmeEntity_lua.ts +2 -2
  300. package/project/.sdk/src/cmp/lua/ReadmeHowto_lua.ts +6 -1
  301. package/project/.sdk/src/cmp/lua/ReadmeQuick_lua.ts +3 -3
  302. package/project/.sdk/src/cmp/lua/ReadmeRef_lua.ts +2 -2
  303. package/project/.sdk/src/cmp/lua/ReadmeTopQuick_lua.ts +2 -2
  304. package/project/.sdk/src/cmp/lua/TestDirect_lua.ts +3 -3
  305. package/project/.sdk/src/cmp/lua/TestEntity_lua.ts +8 -3
  306. package/project/.sdk/src/cmp/lua/Test_lua.ts +1 -1
  307. package/project/.sdk/src/cmp/lua/fragment/Main.fragment.lua +2 -0
  308. package/project/.sdk/src/cmp/ocaml/ReadmeEntity_ocaml.ts +180 -0
  309. package/project/.sdk/src/cmp/ocaml/ReadmeExamplesTest_ocaml.ts +126 -0
  310. package/project/.sdk/src/cmp/ocaml/ReadmeExplanation_ocaml.ts +46 -0
  311. package/project/.sdk/src/cmp/ocaml/ReadmeHowto_ocaml.ts +147 -0
  312. package/project/.sdk/src/cmp/ocaml/ReadmeInstall_ocaml.ts +44 -0
  313. package/project/.sdk/src/cmp/ocaml/ReadmeIntro_ocaml.ts +68 -0
  314. package/project/.sdk/src/cmp/ocaml/ReadmeModel_ocaml.ts +155 -0
  315. package/project/.sdk/src/cmp/ocaml/ReadmeOptions_ocaml.ts +59 -0
  316. package/project/.sdk/src/cmp/ocaml/ReadmeQuick_ocaml.ts +205 -0
  317. package/project/.sdk/src/cmp/ocaml/ReadmeRef_ocaml.ts +402 -0
  318. package/project/.sdk/src/cmp/ocaml/ReadmeTopHowto_ocaml.ts +25 -0
  319. package/project/.sdk/src/cmp/ocaml/ReadmeTopQuick_ocaml.ts +86 -0
  320. package/project/.sdk/src/cmp/ocaml/ReadmeTopTest_ocaml.ts +79 -0
  321. package/project/.sdk/src/cmp/ocaml/Test_ocaml.ts +4 -0
  322. package/project/.sdk/src/cmp/perl/Entity_perl.ts +3 -3
  323. package/project/.sdk/src/cmp/perl/MainEntity_perl.ts +2 -2
  324. package/project/.sdk/src/cmp/perl/Package_perl.ts +1 -1
  325. package/project/.sdk/src/cmp/perl/ReadmeEntity_perl.ts +181 -0
  326. package/project/.sdk/src/cmp/perl/ReadmeExamplesTest_perl.ts +354 -0
  327. package/project/.sdk/src/cmp/perl/ReadmeExplanation_perl.ts +43 -0
  328. package/project/.sdk/src/cmp/perl/ReadmeHowto_perl.ts +149 -0
  329. package/project/.sdk/src/cmp/perl/ReadmeInstall_perl.ts +47 -0
  330. package/project/.sdk/src/cmp/perl/ReadmeIntro_perl.ts +66 -0
  331. package/project/.sdk/src/cmp/perl/ReadmeModel_perl.ts +150 -0
  332. package/project/.sdk/src/cmp/perl/ReadmeOptions_perl.ts +59 -0
  333. package/project/.sdk/src/cmp/perl/ReadmeQuick_perl.ts +216 -0
  334. package/project/.sdk/src/cmp/perl/ReadmeRef_perl.ts +399 -0
  335. package/project/.sdk/src/cmp/perl/ReadmeTopHowto_perl.ts +24 -0
  336. package/project/.sdk/src/cmp/perl/ReadmeTopQuick_perl.ts +91 -0
  337. package/project/.sdk/src/cmp/perl/ReadmeTopTest_perl.ts +83 -0
  338. package/project/.sdk/src/cmp/perl/TestDirect_perl.ts +3 -3
  339. package/project/.sdk/src/cmp/perl/Test_perl.ts +4 -0
  340. package/project/.sdk/src/cmp/php/EntityTypes_php.ts +23 -7
  341. package/project/.sdk/src/cmp/php/Entity_php.ts +3 -3
  342. package/project/.sdk/src/cmp/php/MainEntity_php.ts +2 -2
  343. package/project/.sdk/src/cmp/php/Package_php.ts +1 -1
  344. package/project/.sdk/src/cmp/php/ReadmeHowto_php.ts +6 -1
  345. package/project/.sdk/src/cmp/php/TestDirect_php.ts +3 -3
  346. package/project/.sdk/src/cmp/php/TestEntity_php.ts +8 -3
  347. package/project/.sdk/src/cmp/py/EntityTypes_py.ts +32 -8
  348. package/project/.sdk/src/cmp/py/Entity_py.ts +4 -12
  349. package/project/.sdk/src/cmp/py/MainEntity_py.ts +2 -2
  350. package/project/.sdk/src/cmp/py/Main_py.ts +2 -2
  351. package/project/.sdk/src/cmp/py/Package_py.ts +1 -1
  352. package/project/.sdk/src/cmp/py/ReadmeEntity_py.ts +2 -2
  353. package/project/.sdk/src/cmp/py/ReadmeHowto_py.ts +8 -3
  354. package/project/.sdk/src/cmp/py/ReadmeQuick_py.ts +3 -3
  355. package/project/.sdk/src/cmp/py/ReadmeRef_py.ts +2 -2
  356. package/project/.sdk/src/cmp/py/ReadmeTopQuick_py.ts +2 -2
  357. package/project/.sdk/src/cmp/py/ReadmeTopTest_py.ts +2 -2
  358. package/project/.sdk/src/cmp/py/TestDirect_py.ts +3 -3
  359. package/project/.sdk/src/cmp/py/TestEntity_py.ts +8 -3
  360. package/project/.sdk/src/cmp/rb/EntityTypes_rb.ts +32 -8
  361. package/project/.sdk/src/cmp/rb/Entity_rb.ts +3 -3
  362. package/project/.sdk/src/cmp/rb/MainEntity_rb.ts +2 -2
  363. package/project/.sdk/src/cmp/rb/Package_rb.ts +2 -2
  364. package/project/.sdk/src/cmp/rb/ReadmeEntity_rb.ts +2 -2
  365. package/project/.sdk/src/cmp/rb/ReadmeHowto_rb.ts +8 -3
  366. package/project/.sdk/src/cmp/rb/ReadmeQuick_rb.ts +3 -3
  367. package/project/.sdk/src/cmp/rb/ReadmeRef_rb.ts +2 -2
  368. package/project/.sdk/src/cmp/rb/ReadmeTopQuick_rb.ts +2 -2
  369. package/project/.sdk/src/cmp/rb/ReadmeTopTest_rb.ts +2 -2
  370. package/project/.sdk/src/cmp/rb/TestDirect_rb.ts +3 -3
  371. package/project/.sdk/src/cmp/rb/TestEntity_rb.ts +8 -3
  372. package/project/.sdk/src/cmp/rust/EntityBase_rust.ts +6 -2
  373. package/project/.sdk/src/cmp/rust/EntityTypes_rust.ts +151 -0
  374. package/project/.sdk/src/cmp/rust/Entity_rust.ts +4 -4
  375. package/project/.sdk/src/cmp/rust/MainEntity_rust.ts +2 -2
  376. package/project/.sdk/src/cmp/rust/Main_rust.ts +5 -0
  377. package/project/.sdk/src/cmp/rust/Package_rust.ts +1 -1
  378. package/project/.sdk/src/cmp/rust/ReadmeEntity_rust.ts +163 -0
  379. package/project/.sdk/src/cmp/rust/ReadmeExamplesTest_rust.ts +144 -0
  380. package/project/.sdk/src/cmp/rust/ReadmeExplanation_rust.ts +44 -0
  381. package/project/.sdk/src/cmp/rust/ReadmeHowto_rust.ts +142 -0
  382. package/project/.sdk/src/cmp/rust/ReadmeInstall_rust.ts +49 -0
  383. package/project/.sdk/src/cmp/rust/ReadmeIntro_rust.ts +66 -0
  384. package/project/.sdk/src/cmp/rust/ReadmeModel_rust.ts +153 -0
  385. package/project/.sdk/src/cmp/rust/ReadmeOptions_rust.ts +60 -0
  386. package/project/.sdk/src/cmp/rust/ReadmeQuick_rust.ts +212 -0
  387. package/project/.sdk/src/cmp/rust/ReadmeRef_rust.ts +384 -0
  388. package/project/.sdk/src/cmp/rust/ReadmeTopHowto_rust.ts +24 -0
  389. package/project/.sdk/src/cmp/rust/ReadmeTopQuick_rust.ts +95 -0
  390. package/project/.sdk/src/cmp/rust/ReadmeTopTest_rust.ts +81 -0
  391. package/project/.sdk/src/cmp/rust/TestDirect_rust.ts +3 -3
  392. package/project/.sdk/src/cmp/rust/TestEntity_rust.ts +10 -0
  393. package/project/.sdk/src/cmp/rust/Test_rust.ts +4 -0
  394. package/project/.sdk/src/cmp/scala/EntityTypes_scala.ts +201 -0
  395. package/project/.sdk/src/cmp/scala/Entity_scala.ts +3 -3
  396. package/project/.sdk/src/cmp/scala/MainEntity_scala.ts +2 -2
  397. package/project/.sdk/src/cmp/scala/Main_scala.ts +6 -0
  398. package/project/.sdk/src/cmp/scala/ReadmeEntity_scala.ts +175 -0
  399. package/project/.sdk/src/cmp/scala/ReadmeExamplesTest_scala.ts +182 -0
  400. package/project/.sdk/src/cmp/scala/ReadmeExplanation_scala.ts +49 -0
  401. package/project/.sdk/src/cmp/scala/ReadmeHowto_scala.ts +155 -0
  402. package/project/.sdk/src/cmp/scala/ReadmeInstall_scala.ts +58 -0
  403. package/project/.sdk/src/cmp/scala/ReadmeIntro_scala.ts +66 -0
  404. package/project/.sdk/src/cmp/scala/ReadmeModel_scala.ts +150 -0
  405. package/project/.sdk/src/cmp/scala/ReadmeOptions_scala.ts +61 -0
  406. package/project/.sdk/src/cmp/scala/ReadmeQuick_scala.ts +230 -0
  407. package/project/.sdk/src/cmp/scala/ReadmeRef_scala.ts +388 -0
  408. package/project/.sdk/src/cmp/scala/ReadmeTopHowto_scala.ts +23 -0
  409. package/project/.sdk/src/cmp/scala/ReadmeTopQuick_scala.ts +104 -0
  410. package/project/.sdk/src/cmp/scala/ReadmeTopTest_scala.ts +77 -0
  411. package/project/.sdk/src/cmp/scala/TestDirect_scala.ts +3 -3
  412. package/project/.sdk/src/cmp/scala/TestEntity_scala.ts +38 -10
  413. package/project/.sdk/src/cmp/scala/Test_scala.ts +9 -1
  414. package/project/.sdk/src/cmp/swift/EntityTypes_swift.ts +151 -0
  415. package/project/.sdk/src/cmp/swift/Entity_swift.ts +3 -3
  416. package/project/.sdk/src/cmp/swift/MainEntity_swift.ts +2 -2
  417. package/project/.sdk/src/cmp/swift/Main_swift.ts +5 -0
  418. package/project/.sdk/src/cmp/swift/Package_swift.ts +1 -1
  419. package/project/.sdk/src/cmp/swift/ReadmeEntity_swift.ts +176 -0
  420. package/project/.sdk/src/cmp/swift/ReadmeExamplesTest_swift.ts +187 -0
  421. package/project/.sdk/src/cmp/swift/ReadmeExplanation_swift.ts +49 -0
  422. package/project/.sdk/src/cmp/swift/ReadmeHowto_swift.ts +159 -0
  423. package/project/.sdk/src/cmp/swift/ReadmeInstall_swift.ts +58 -0
  424. package/project/.sdk/src/cmp/swift/ReadmeIntro_swift.ts +64 -0
  425. package/project/.sdk/src/cmp/swift/ReadmeModel_swift.ts +149 -0
  426. package/project/.sdk/src/cmp/swift/ReadmeOptions_swift.ts +62 -0
  427. package/project/.sdk/src/cmp/swift/ReadmeQuick_swift.ts +232 -0
  428. package/project/.sdk/src/cmp/swift/ReadmeRef_swift.ts +387 -0
  429. package/project/.sdk/src/cmp/swift/ReadmeTopHowto_swift.ts +24 -0
  430. package/project/.sdk/src/cmp/swift/ReadmeTopQuick_swift.ts +105 -0
  431. package/project/.sdk/src/cmp/swift/ReadmeTopTest_swift.ts +77 -0
  432. package/project/.sdk/src/cmp/swift/TestDirect_swift.ts +1 -1
  433. package/project/.sdk/src/cmp/swift/Test_swift.ts +4 -0
  434. package/project/.sdk/src/cmp/ts/EntityTypes_ts.ts +19 -6
  435. package/project/.sdk/src/cmp/ts/Entity_ts.ts +3 -3
  436. package/project/.sdk/src/cmp/ts/MainEntity_ts.ts +6 -4
  437. package/project/.sdk/src/cmp/ts/Main_ts.ts +2 -2
  438. package/project/.sdk/src/cmp/ts/ReadmeEntity_ts.ts +4 -4
  439. package/project/.sdk/src/cmp/ts/ReadmeHowto_ts.ts +14 -4
  440. package/project/.sdk/src/cmp/ts/ReadmeQuick_ts.ts +29 -11
  441. package/project/.sdk/src/cmp/ts/ReadmeRef_ts.ts +5 -5
  442. package/project/.sdk/src/cmp/ts/ReadmeTopQuick_ts.ts +4 -4
  443. package/project/.sdk/src/cmp/ts/ReadmeTopTest_ts.ts +4 -4
  444. package/project/.sdk/src/cmp/ts/TestDirect_ts.ts +17 -15
  445. package/project/.sdk/src/cmp/ts/TestEntity_ts.ts +18 -2
  446. package/project/.sdk/src/cmp/zig/Config_zig.ts +22 -4
  447. package/project/.sdk/src/cmp/zig/Entity_zig.ts +4 -4
  448. package/project/.sdk/src/cmp/zig/MainEntity_zig.ts +2 -2
  449. package/project/.sdk/src/cmp/zig/Main_zig.ts +10 -4
  450. package/project/.sdk/src/cmp/zig/Package_zig.ts +61 -0
  451. package/project/.sdk/src/cmp/zig/ReadmeEntity_zig.ts +188 -0
  452. package/project/.sdk/src/cmp/zig/ReadmeExamplesTest_zig.ts +58 -0
  453. package/project/.sdk/src/cmp/zig/ReadmeExplanation_zig.ts +45 -0
  454. package/project/.sdk/src/cmp/zig/ReadmeHowto_zig.ts +143 -0
  455. package/project/.sdk/src/cmp/zig/ReadmeInstall_zig.ts +54 -0
  456. package/project/.sdk/src/cmp/zig/ReadmeIntro_zig.ts +66 -0
  457. package/project/.sdk/src/cmp/zig/ReadmeModel_zig.ts +152 -0
  458. package/project/.sdk/src/cmp/zig/ReadmeOptions_zig.ts +60 -0
  459. package/project/.sdk/src/cmp/zig/ReadmeQuick_zig.ts +211 -0
  460. package/project/.sdk/src/cmp/zig/ReadmeRef_zig.ts +400 -0
  461. package/project/.sdk/src/cmp/zig/ReadmeTopHowto_zig.ts +24 -0
  462. package/project/.sdk/src/cmp/zig/ReadmeTopQuick_zig.ts +96 -0
  463. package/project/.sdk/src/cmp/zig/ReadmeTopTest_zig.ts +82 -0
  464. package/project/.sdk/src/cmp/zig/TestDirect_zig.ts +66 -0
  465. package/project/.sdk/src/cmp/zig/TestEntity_zig.ts +79 -0
  466. package/project/.sdk/src/cmp/zig/Test_zig.ts +17 -61
  467. package/project/.sdk/tm/clojure/src/voxgig/struct.clj +1 -1
  468. package/project/.sdk/tm/cpp/test/feature_test.cpp +19 -0
  469. package/project/.sdk/tm/cpp/test/primary_utility_test.cpp +8 -16
  470. package/project/.sdk/tm/csharp/test/PrimaryUtilityTest.cs +10 -28
  471. package/project/.sdk/tm/dart/lib/utility/MakeRequestUtility.dart +4 -1
  472. package/project/.sdk/tm/dart/lib/utility/voxgig_struct.dart +7 -1
  473. package/project/.sdk/tm/dart/test/primary_test.dart +7 -0
  474. package/project/.sdk/tm/elixir/lib/utility/struct/voxgig_struct.ex +1 -1
  475. package/project/.sdk/tm/elixir/test/primary_utility_test.exs +7 -1
  476. package/project/.sdk/tm/go/feature/test_feature.go +33 -1
  477. package/project/.sdk/tm/go/test/primary_utility_test.go +41 -42
  478. package/project/.sdk/tm/go/test/runner_test.go +30 -1
  479. package/project/.sdk/tm/go/utility/struct/voxgigstruct.go +3 -1
  480. package/project/.sdk/tm/haskell/test/Harness.hs +8 -3
  481. package/project/.sdk/tm/java/test/PrimaryUtilityTest.java +7 -24
  482. package/project/.sdk/tm/js/Makefile +1 -1
  483. package/project/.sdk/tm/js/jsconfig.json +12 -0
  484. package/project/.sdk/tm/js/src/feature/test/TestFeature.js +18 -1
  485. package/project/.sdk/tm/js/test/utility/PrimaryUtility.test.js +8 -0
  486. package/project/.sdk/tm/kotlin/test/PrimaryUtilityTest.kt +7 -20
  487. package/project/.sdk/tm/lean/LICENSE +21 -0
  488. package/project/.sdk/tm/lean/VERSION +1 -0
  489. package/project/.sdk/tm/lean/src/SdkFeature.lean +171 -0
  490. package/project/.sdk/tm/lean/src/SdkFeatures.lean +602 -0
  491. package/project/.sdk/tm/lean/src/SdkJson.lean +134 -0
  492. package/project/.sdk/tm/lean/src/SdkRuntime.lean +356 -0
  493. package/project/.sdk/tm/lean/src/SdkUtility.lean +617 -0
  494. package/project/.sdk/tm/lean/src/VoxgigStruct.lean +2880 -0
  495. package/project/.sdk/tm/lean/src/Vregex.lean +412 -0
  496. package/project/.sdk/tm/lean/src/feature/README.md +5 -0
  497. package/project/.sdk/tm/lean/src/feature/audit/.gitkeep +0 -0
  498. package/project/.sdk/tm/lean/src/feature/base/.gitkeep +0 -0
  499. package/project/.sdk/tm/lean/src/feature/cache/.gitkeep +0 -0
  500. package/project/.sdk/tm/lean/src/feature/clienttrack/.gitkeep +0 -0
  501. package/project/.sdk/tm/lean/src/feature/debug/.gitkeep +0 -0
  502. package/project/.sdk/tm/lean/src/feature/idempotency/.gitkeep +0 -0
  503. package/project/.sdk/tm/lean/src/feature/log/.gitkeep +0 -0
  504. package/project/.sdk/tm/lean/src/feature/metrics/.gitkeep +0 -0
  505. package/project/.sdk/tm/lean/src/feature/netsim/.gitkeep +0 -0
  506. package/project/.sdk/tm/lean/src/feature/paging/.gitkeep +0 -0
  507. package/project/.sdk/tm/lean/src/feature/proxy/.gitkeep +0 -0
  508. package/project/.sdk/tm/lean/src/feature/ratelimit/.gitkeep +0 -0
  509. package/project/.sdk/tm/lean/src/feature/rbac/.gitkeep +0 -0
  510. package/project/.sdk/tm/lean/src/feature/retry/.gitkeep +0 -0
  511. package/project/.sdk/tm/lean/src/feature/streaming/.gitkeep +0 -0
  512. package/project/.sdk/tm/lean/src/feature/telemetry/.gitkeep +0 -0
  513. package/project/.sdk/tm/lean/src/feature/test/.gitkeep +0 -0
  514. package/project/.sdk/tm/lean/src/feature/timeout/.gitkeep +0 -0
  515. package/project/.sdk/tm/lean/test/StructCorpus.lean +697 -0
  516. package/project/.sdk/tm/lean/test/TFeature.lean +268 -0
  517. package/project/.sdk/tm/lean/test/TPrimaryUtility.lean +349 -0
  518. package/project/.sdk/tm/lua/test/primary_utility_test.lua +10 -8
  519. package/project/.sdk/tm/ocaml/Makefile +5 -1
  520. package/project/.sdk/tm/perl/t/primary_utility.t +8 -17
  521. package/project/.sdk/tm/php/test/PrimaryUtilityTest.php +9 -7
  522. package/project/.sdk/tm/php/utility/struct/Struct.php +1 -1
  523. package/project/.sdk/tm/py/feature/test_feature.py +28 -1
  524. package/project/.sdk/tm/py/test/test_primary_utility.py +13 -18
  525. package/project/.sdk/tm/py/utility/voxgig_struct/voxgig_struct.py +1 -1
  526. package/project/.sdk/tm/rb/feature/test_feature.rb +24 -1
  527. package/project/.sdk/tm/rb/test/primary_utility_test.rb +7 -8
  528. package/project/.sdk/tm/rb/utility/struct/voxgig_struct.rb +1 -1
  529. package/project/.sdk/tm/rust/tests/common/mod.rs +37 -1
  530. package/project/.sdk/tm/rust/tests/primary_utility_test.rs +12 -26
  531. package/project/.sdk/tm/scala/sdktest/SdkTestMain.scala +8 -59
  532. package/project/.sdk/tm/swift/Tests/ProjectNameSDKTests/PrimaryUtilityTest.swift +7 -8
  533. package/project/.sdk/tm/ts/Makefile +1 -1
  534. package/project/.sdk/tm/ts/src/feature/test/TestFeature.ts +18 -1
  535. package/project/.sdk/tm/ts/test/utility/PrimaryUtility.test.ts +65 -21
  536. package/project/.sdk/tm/zig/utility/voxgigstruct/struct.zig +1 -1
  537. package/src/cmp/Entity.ts +5 -1
  538. package/src/cmp/Feature.ts +2 -1
  539. package/src/cmp/ReadmeErrors.ts +2 -2
  540. package/src/cmp/ReadmeExplanation.ts +3 -3
  541. package/src/cmp/ReadmeTop.ts +2 -2
  542. package/src/helpers/canonType.ts +121 -25
  543. package/src/helpers/collectDeps.ts +39 -12
  544. package/src/helpers/naming.ts +106 -0
  545. package/src/helpers/opExample.ts +43 -20
  546. package/src/helpers/opShape.ts +197 -11
  547. package/src/sdkgen.ts +13 -3
  548. package/src/tsconfig.json +2 -0
  549. package/project/.sdk/tm/zig/build.zig.zon +0 -11
@@ -0,0 +1,61 @@
1
+
2
+ import {
3
+ Content,
4
+ File,
5
+ cmp,
6
+ } from '@voxgig/sdkgen'
7
+
8
+
9
+ import type {
10
+ Model,
11
+ } from '@voxgig/apidef'
12
+
13
+
14
+ import { zigModuleName } from './utility_zig'
15
+
16
+
17
+ // build.zig.zon — the Zig package manifest. Zig has no central package
18
+ // registry, so there are no external registry dependencies to declare: the
19
+ // voxgig struct port is vendored in-tree (utility/voxgigstruct) and wired as a
20
+ // local module by build.zig. This generator only stamps the manifest with the
21
+ // model-derived package name (the go/rust Package generators emit go.mod /
22
+ // Cargo.toml the same way).
23
+ //
24
+ // The `.paths` allow-list mirrors the (registry-less) template: it only
25
+ // matters when packaging for a registry, which zig does not do, so it is kept
26
+ // stable. `.name` is a plain string here rather than the newer enum-literal +
27
+ // fingerprint form.
28
+ //
29
+ // TOOLCHAIN PIN: the string form REQUIRES zig <= 0.13. Zig 0.14 rejects it
30
+ // outright — `build.zig.zon:2:13: error: expected enum literal` — so the
31
+ // generated SDK will not build at all on a newer toolchain. The consumer CI
32
+ // job pins 0.13.0 to match (create-sdkgen
33
+ // project/standard/.github/workflows/ci.yml). Moving to a newer zig means
34
+ // changing BOTH: `.name = .${name}` plus a `.fingerprint` here, and the CI
35
+ // pin there.
36
+ const Package = cmp(async function Package(props: any) {
37
+ const ctx$ = props.ctx$
38
+ const model: Model = ctx$.model
39
+
40
+ const name = zigModuleName(model)
41
+
42
+ File({ name: 'build.zig.zon' }, () => {
43
+ Content(`.{
44
+ .name = "${name}",
45
+ .version = "0.0.1",
46
+ .dependencies = .{},
47
+ .paths = .{
48
+ "src",
49
+ "test",
50
+ "build.zig",
51
+ "build.zig.zon",
52
+ },
53
+ }
54
+ `)
55
+ })
56
+ })
57
+
58
+
59
+ export {
60
+ Package
61
+ }
@@ -0,0 +1,188 @@
1
+
2
+ import { cmp, each, Content, canonKey, entityIdField, opRequestShape } from '@voxgig/sdkgen'
3
+
4
+ import {
5
+ KIT,
6
+ getModelPath,
7
+ } from '@voxgig/apidef'
8
+
9
+ import { zigVarName } from './utility_zig'
10
+
11
+
12
+ // Canonical type sentinel -> a zig type name for the field/param tables.
13
+ // (The shared canonToType helper has no zig column, so map locally.) Every
14
+ // value is dynamically a `Value`, so the type column is documentary.
15
+ function zigType(type: any): string {
16
+ const k = canonKey(type)
17
+ if ('STRING' === k) return '[]const u8'
18
+ if ('INTEGER' === k) return 'i64'
19
+ if ('NUMBER' === k) return 'f64'
20
+ if ('BOOLEAN' === k) return 'bool'
21
+ if ('ARRAY' === k) return 'Value (array)'
22
+ if ('OBJECT' === k) return 'Value (object)'
23
+ return 'Value'
24
+ }
25
+
26
+
27
+ // A type-correct zig expression constructing a voxgig struct Value.
28
+ function zigLit(type: any, placeholder: string = 'example'): string {
29
+ const k = canonKey(type)
30
+ if ('INTEGER' === k || 'NUMBER' === k) return 'h.vnum(1)'
31
+ if ('BOOLEAN' === k) return 'h.vbool(true)'
32
+ if ('ARRAY' === k) return 'h.olist()'
33
+ if ('OBJECT' === k) return 'h.omap()'
34
+ return `h.vstr("${placeholder}")`
35
+ }
36
+
37
+
38
+ // Operation method descriptions (language-agnostic wording, zig signatures).
39
+ const OP_DESC: Record<string, { method: string, desc: string }> = {
40
+ load: { method: 'load(reqmatch, ctrl)', desc: 'Load a single entity by match criteria.' },
41
+ list: { method: 'list(reqmatch, ctrl)', desc: 'List entities, optionally matching the given criteria.' },
42
+ create: { method: 'create(reqdata, ctrl)', desc: 'Create a new entity with the given data.' },
43
+ update: { method: 'update(reqdata, ctrl)', desc: 'Update an existing entity.' },
44
+ remove: { method: 'remove(reqmatch, ctrl)', desc: 'Remove the matching entity.' },
45
+ }
46
+
47
+
48
+ const ReadmeEntity = cmp(function ReadmeEntity(props: any) {
49
+ const { target } = props
50
+ const { model } = props.ctx$
51
+
52
+ const entity = getModelPath(model, `main.${KIT}.entity`)
53
+
54
+ const publishedEntities = each(entity)
55
+ .filter((entity: any) => entity.active !== false)
56
+
57
+ if (0 === publishedEntities.length) {
58
+ return
59
+ }
60
+
61
+ Content(`
62
+
63
+ ## Entities
64
+
65
+ `)
66
+
67
+ publishedEntities.map((entity: any) => {
68
+ const opnames = Object.keys(entity.op || {})
69
+ const fields = entity.fields || []
70
+ const idF = entityIdField(entity)
71
+ const eVar = zigVarName(entity.name)
72
+ const method = zigVarName(entity.name)
73
+
74
+ Content(`
75
+ ### ${entity.Name}
76
+
77
+ `)
78
+
79
+ if (entity.short) {
80
+ Content(`${entity.short}
81
+
82
+ `)
83
+ }
84
+
85
+ Content(`Create an instance: \`const ${eVar} = client.${method}(h.vnull());\`
86
+
87
+ `)
88
+
89
+ if (opnames.length > 0) {
90
+ Content(`#### Operations
91
+
92
+ | Method | Description |
93
+ | --- | --- |
94
+ `)
95
+ opnames.map((opname: string) => {
96
+ const info = OP_DESC[opname]
97
+ if (info) {
98
+ Content(`| \`${info.method}\` | ${info.desc} |
99
+ `)
100
+ }
101
+ })
102
+
103
+ Content(`
104
+ Each operation returns an \`OpResult\` — \`switch\` on it: \`.ok => |data|\`
105
+ carries the result \`Value\`, \`.err => |e|\` carries the branded error.
106
+
107
+ `)
108
+ }
109
+
110
+ if (fields.length > 0) {
111
+ Content(`#### Fields
112
+
113
+ | Field | Type | Description |
114
+ | --- | --- | --- |
115
+ `)
116
+
117
+ each(fields, (field: any) => {
118
+ const desc = field.short || ''
119
+ Content(`| \`${field.name}\` | \`${zigType(field.type)}\` | ${desc} |
120
+ `)
121
+ })
122
+
123
+ Content(`
124
+ `)
125
+ }
126
+
127
+ if (opnames.includes('load')) {
128
+ const loadItems = opRequestShape(entity, 'load').items
129
+ .filter((it: any) => !it.optional || it.name === idF)
130
+ .sort((a: any, b: any) =>
131
+ (a.name === idF ? 0 : 1) - (b.name === idF ? 0 : 1))
132
+ const loadArg = 0 < loadItems.length
133
+ ? `h.jo(&.{${loadItems.map((it: any) =>
134
+ `.{ "${it.name}", ${zigLit(it.type,
135
+ it.name === idF ? entity.name + '_id' : it.name)} }`).join(', ')}})`
136
+ : 'h.vnull()'
137
+ Content(`#### Example: Load
138
+
139
+ \`\`\`zig
140
+ switch (client.${method}(h.vnull()).load(${loadArg}, h.vnull())) {
141
+ .ok => |${eVar}| std.debug.print("{s}\\n", .{h.stringify(${eVar})}),
142
+ .err => |e| std.debug.print("load failed: {s}\\n", .{e.msg}),
143
+ }
144
+ \`\`\`
145
+
146
+ `)
147
+ }
148
+
149
+ if (opnames.includes('list')) {
150
+ Content(`#### Example: List
151
+
152
+ \`\`\`zig
153
+ switch (client.${method}(h.vnull()).list(h.vnull(), h.vnull())) {
154
+ .ok => |${eVar}s| std.debug.print("{s}\\n", .{h.stringify(${eVar}s)}),
155
+ .err => |e| std.debug.print("list failed: {s}\\n", .{e.msg}),
156
+ }
157
+ \`\`\`
158
+
159
+ `)
160
+ }
161
+
162
+ if (opnames.includes('create')) {
163
+ const createItems = opRequestShape(entity, 'create').items
164
+ .filter((it: any) => !it.optional)
165
+ Content(`#### Example: Create
166
+
167
+ \`\`\`zig
168
+ switch (client.${method}(h.vnull()).create(h.jo(&.{
169
+ `)
170
+ createItems.map((it: any) => {
171
+ Content(` .{ "${it.name}", ${zigLit(it.type, 'example_' + it.name)} }, // ${zigType(it.type)}
172
+ `)
173
+ })
174
+ Content(`}), h.vnull())) {
175
+ .ok => |${eVar}| std.debug.print("{s}\\n", .{h.stringify(${eVar})}),
176
+ .err => |e| std.debug.print("create failed: {s}\\n", .{e.msg}),
177
+ }
178
+ \`\`\`
179
+
180
+ `)
181
+ }
182
+ })
183
+ })
184
+
185
+
186
+ export {
187
+ ReadmeEntity
188
+ }
@@ -0,0 +1,58 @@
1
+
2
+ import { cmp, Content } from '@voxgig/sdkgen'
3
+
4
+
5
+ // Validates the documented README/REFERENCE quick-start examples for the Zig
6
+ // SDK.
7
+ //
8
+ // DESIGN NOTE vs the go/rust gates (ReadmeExamplesTest_go.ts /
9
+ // ReadmeExamplesTest_rust.ts): the go version shells out to `go build`/`go run`
10
+ // to compile and run every fenced block; the rust version reads the doc files
11
+ // and checks that each block is structurally well-formed. Zig's test harness
12
+ // uses an EXPLICIT test-file list in build.zig (no auto-discovery of test/*.zig
13
+ // and no per-block temp compilation), and the doc files are not on the package
14
+ // path at test time — so neither a filesystem scan nor a per-snippet compile can
15
+ // be authored safely without a build to validate against.
16
+ //
17
+ // Instead this gate emits a real, always-compiling zig `test` block INTO the
18
+ // shared generated_test.zig (the only generated test file build.zig picks up).
19
+ // It exercises the exact top-level entry points the docs advertise — the
20
+ // test-mode constructor and the `direct()` escape hatch — so the documented
21
+ // quick-start surface is guaranteed to exist and run. Upgrading it to a true
22
+ // per-block compile gate is left as a follow-up.
23
+ const ReadmeExamplesTest = cmp(function ReadmeExamplesTest(props: any) {
24
+ const { ctx$: { model } } = props
25
+
26
+ Content(`
27
+ // Documented quick-start surface (README.md / REFERENCE.md). Exercises the
28
+ // test-mode constructor and the direct() escape hatch exactly as documented.
29
+ test "readme_quickstart_surface" {
30
+ // \`sdk.test_sdk(...)\` — the documented mock constructor.
31
+ const client = sdk.test_sdk(vnull(), vnull());
32
+ try std.testing.expect(std.mem.eql(u8, client.mode, "test"));
33
+
34
+ // \`client.direct(...)\` — the documented escape hatch. It always returns a
35
+ // result map carrying an \`ok\` flag (never an error union).
36
+ const result = client.direct(h.jo(&.{
37
+ .{ "path", h.vstr("/api/resource/{id}") },
38
+ .{ "method", h.vstr("GET") },
39
+ .{ "params", h.jo(&.{.{ "id", h.vstr("example") }}) },
40
+ }));
41
+ try std.testing.expect(result == .object);
42
+ try std.testing.expect(h.get_bool(result, "ok") != null);
43
+
44
+ // \`client.prepare(...)\` — build a request without sending it.
45
+ const fetchdef = client.prepare(h.jo(&.{
46
+ .{ "path", h.vstr("/api/resource/{id}") },
47
+ .{ "method", h.vstr("GET") },
48
+ .{ "params", h.jo(&.{.{ "id", h.vstr("example") }}) },
49
+ })) catch h.vnull();
50
+ _ = fetchdef;
51
+ }
52
+ `)
53
+ })
54
+
55
+
56
+ export {
57
+ ReadmeExamplesTest
58
+ }
@@ -0,0 +1,45 @@
1
+
2
+ import { cmp, Content } from '@voxgig/sdkgen'
3
+
4
+
5
+ const ReadmeExplanation = cmp(function ReadmeExplanation(props: any) {
6
+ const { target, ctx$: { model } } = props
7
+
8
+ Content(`### Data as \`Value\`
9
+
10
+ The Zig SDK uses a single dynamic \`Value\` type throughout rather than a
11
+ typed struct per entity. \`Value\` is the vendored voxgig struct port's
12
+ \`JsonValue\` (a JSON-shaped tagged union: \`.string\`, \`.integer\`,
13
+ \`.float\`, \`.bool\`, \`.array\`, \`.object\`, \`.null\`). This mirrors the
14
+ dynamic nature of the API and keeps the SDK flexible — no code generation is
15
+ needed when the API schema changes.
16
+
17
+ Build request maps with the \`h.jo\` / \`h.ja\` helpers and read fields back
18
+ with \`h.getp\` (or the typed \`h.get_str\` / \`h.get_bool\` / \`h.to_int\`
19
+ accessors); use \`h.to_map\` to safely coerce a value to a map.
20
+
21
+ ### Module structure
22
+
23
+ \`\`\`
24
+ ${target.name}/
25
+ ├── root.zig -- Module root (re-exports the public surface)
26
+ ├── build.zig -- Build + test wiring
27
+ ├── core/ -- Pipeline types, config, client (sdk.zig)
28
+ ├── entity/ -- Per-entity clients (one file each)
29
+ ├── feature/ -- Built-in features (base, test, log)
30
+ ├── utility/ -- Utilities + the vendored voxgig struct port
31
+ └── test/ -- Test suites
32
+ \`\`\`
33
+
34
+ The public API is re-exported from \`root.zig\`, so \`@import("sdk")\` reaches
35
+ the SDK client, \`Value\`, and the \`h\` (helpers) namespace directly. Import
36
+ entity or utility modules only when needed.
37
+
38
+ `)
39
+
40
+ })
41
+
42
+
43
+ export {
44
+ ReadmeExplanation
45
+ }
@@ -0,0 +1,143 @@
1
+
2
+ import { cmp, Content, isAuthActive, envName, canonKey, entityIdField, pickExampleEntity, opRequestShape } from '@voxgig/sdkgen'
3
+
4
+ import {
5
+ KIT,
6
+ getModelPath,
7
+ nom,
8
+ } from '@voxgig/apidef'
9
+
10
+ import { zigVarName } from './utility_zig'
11
+
12
+
13
+ // A type-correct zig expression constructing a voxgig struct Value.
14
+ function zigLit(type: any): string {
15
+ const k = canonKey(type)
16
+ if ('INTEGER' === k || 'NUMBER' === k) return 'h.vnum(1)'
17
+ if ('BOOLEAN' === k) return 'h.vbool(true)'
18
+ if ('ARRAY' === k) return 'h.olist()'
19
+ if ('OBJECT' === k) return 'h.omap()'
20
+ return 'h.vstr("example")'
21
+ }
22
+
23
+
24
+ const ReadmeHowto = cmp(function ReadmeHowto(props: any) {
25
+ const { target, ctx$: { model } } = props
26
+
27
+ const entity = getModelPath(model, `main.${KIT}.entity`)
28
+ // Pick an entity with a real op (prefer a read op). primaryOp is null only
29
+ // when NO entity exposes any op (a direct()-only SDK).
30
+ const { entity: exampleEntity, primaryOp } = pickExampleEntity(entity)
31
+ const eName = exampleEntity ? nom(exampleEntity, 'Name') : 'Entity'
32
+ const eVar = exampleEntity ? zigVarName(exampleEntity.name) : 'entity'
33
+ const method = exampleEntity ? zigVarName(exampleEntity.name) : 'entity'
34
+ const idF = exampleEntity ? entityIdField(exampleEntity) : null
35
+ const isMatchOp = 'load' === primaryOp || 'remove' === primaryOp
36
+ let testArg = 'h.vnull()'
37
+ if (exampleEntity && isMatchOp) {
38
+ testArg = idF ? `h.jo(&.{.{ "${idF}", h.vstr("test01") }})` : 'h.vnull()'
39
+ } else if (exampleEntity && ('create' === primaryOp || 'update' === primaryOp)) {
40
+ const items = opRequestShape(exampleEntity, primaryOp).items
41
+ .filter((it: any) => it.name !== idF && it.name !== 'id')
42
+ const required = items.filter((it: any) => !it.optional)
43
+ const chosen = required.length ? required : items.slice(0, 3)
44
+ testArg = 0 < chosen.length
45
+ ? `h.jo(&.{${chosen.map((it: any) => `.{ "${it.name}", ${zigLit(it.type)} }`).join(', ')}})`
46
+ : 'h.omap()'
47
+ }
48
+
49
+ // The op-driven test-mode line. A direct()-only SDK shows a direct() call.
50
+ const testModeExample = primaryOp
51
+ ? `// Entity ops return an OpResult — .ok carries the record, .err the error.
52
+ switch (client.${method}(h.vnull()).${primaryOp}(${testArg}, h.vnull())) {
53
+ .ok => |${eVar}| std.debug.print("{s}\\n", .{h.stringify(${eVar})}), // the mock record
54
+ .err => |e| std.debug.print("${primaryOp} failed: {s}\\n", .{e.msg}),
55
+ }`
56
+ : `const result = client.direct(h.jo(&.{
57
+ .{ "path", h.vstr("/api/resource") },
58
+ .{ "method", h.vstr("GET") },
59
+ }));
60
+ std.debug.print("{s}\\n", .{h.stringify(result)});`
61
+
62
+ const apikeyEnvLine = isAuthActive(model)
63
+ ? `\n${envName(model)}_APIKEY=<your-key>`
64
+ : ''
65
+
66
+ Content(`### Make a direct HTTP request
67
+
68
+ For endpoints not covered by entity methods:
69
+
70
+ \`\`\`zig
71
+ const result = client.direct(h.jo(&.{
72
+ .{ "path", h.vstr("/api/resource/{id}") },
73
+ .{ "method", h.vstr("GET") },
74
+ .{ "params", h.jo(&.{.{ "id", h.vstr("example") }}) },
75
+ }));
76
+
77
+ if (h.get_bool(result, "ok") orelse false) {
78
+ std.debug.print("{d}\\n", .{h.to_int(h.getp(result, "status"))}); // 200
79
+ std.debug.print("{s}\\n", .{h.stringify(h.getp(result, "data"))}); // response body
80
+ } else {
81
+ // A non-2xx response carries status + data (the error body); a
82
+ // transport-level failure carries err instead. Only one is present.
83
+ std.debug.print("{s}\\n", .{h.get_str(result, "err") orelse ""});
84
+ }
85
+ \`\`\`
86
+
87
+ ### Prepare a request without sending it
88
+
89
+ \`\`\`zig
90
+ // prepare() returns the fetch definition (an error union — use \`catch\`/\`try\`).
91
+ const fetchdef = client.prepare(h.jo(&.{
92
+ .{ "path", h.vstr("/api/resource/{id}") },
93
+ .{ "method", h.vstr("DELETE") },
94
+ .{ "params", h.jo(&.{.{ "id", h.vstr("example") }}) },
95
+ })) catch unreachable;
96
+
97
+ std.debug.print("{s}\\n", .{h.get_str(fetchdef, "url") orelse ""});
98
+ std.debug.print("{s}\\n", .{h.get_str(fetchdef, "method") orelse ""});
99
+ std.debug.print("{s}\\n", .{h.stringify(h.getp(fetchdef, "headers"))});
100
+ \`\`\`
101
+
102
+ ### Use test mode
103
+
104
+ Create a mock client for unit testing — no server required:
105
+
106
+ \`\`\`zig
107
+ const client = sdk.test_sdk(h.vnull(), h.vnull());
108
+
109
+ ${testModeExample}
110
+ \`\`\`
111
+
112
+ ### Point at a different server
113
+
114
+ Override the base URL to reach a local or staging server:
115
+
116
+ \`\`\`zig
117
+ const client = sdk.${model.const.Name}SDK.new(h.jo(&.{
118
+ .{ "base", h.vstr("http://localhost:8080") },
119
+ }));
120
+ \`\`\`
121
+
122
+ ### Run live tests
123
+
124
+ Create a \`.env.local\` file at the project root:
125
+
126
+ \`\`\`
127
+ ${envName(model)}_TEST_LIVE=TRUE${apikeyEnvLine}
128
+ \`\`\`
129
+
130
+ Then run:
131
+
132
+ \`\`\`bash
133
+ cd ${target.name} && zig build test
134
+ \`\`\`
135
+
136
+ `)
137
+
138
+ })
139
+
140
+
141
+ export {
142
+ ReadmeHowto
143
+ }
@@ -0,0 +1,54 @@
1
+
2
+ import { cmp, Content, installCommand, isPublished, repoInfo } from '@voxgig/sdkgen'
3
+
4
+
5
+ const ReadmeInstall = cmp(function ReadmeInstall(props: any) {
6
+ const { target, ctx$ } = props
7
+ const { model } = ctx$
8
+
9
+ if (isPublished(model, target.name)) {
10
+ Content(`\`\`\`bash
11
+ ${installCommand(model, target.name)}
12
+ \`\`\`
13
+
14
+ Or build it from a source checkout:
15
+
16
+ \`\`\`bash
17
+ cd ${target.name} && zig build
18
+ \`\`\`
19
+
20
+ `)
21
+ return
22
+ }
23
+
24
+ // Zig has no central package registry — the release IS the git tag. Depend
25
+ // on it via the Zig package manager (a git-tagged url in build.zig.zon) or
26
+ // build from a local source checkout.
27
+ const { releasesUrl } = repoInfo(model)
28
+ Content(`Zig has no central package registry, so this package is distributed as a
29
+ git tag (\`${target.name}/vX.Y.Z\`, see [Releases](${releasesUrl})). Add it to
30
+ your \`build.zig.zon\` dependencies, or build from a source checkout:
31
+
32
+ \`\`\`bash
33
+ cd ${target.name} && zig build
34
+ \`\`\`
35
+
36
+ To depend on it from another project, add the tagged archive to
37
+ \`build.zig.zon\`:
38
+
39
+ \`\`\`zig
40
+ .dependencies = .{
41
+ .sdk = .{
42
+ .url = "<repo-url>/archive/refs/tags/${target.name}/vX.Y.Z.tar.gz",
43
+ // .hash = "...", // filled in by \`zig fetch\`
44
+ },
45
+ },
46
+ \`\`\`
47
+
48
+ `)
49
+ })
50
+
51
+
52
+ export {
53
+ ReadmeInstall
54
+ }
@@ -0,0 +1,66 @@
1
+
2
+ import { cmp, Content } from '@voxgig/sdkgen'
3
+
4
+ import {
5
+ KIT,
6
+ getModelPath,
7
+ } from '@voxgig/apidef'
8
+
9
+ import { zigVarName } from './utility_zig'
10
+
11
+
12
+ const ReadmeIntro = cmp(function ReadmeIntro(props: any) {
13
+ const { target, ctx$: { model } } = props
14
+ const info = (model.main && model.main.kit && model.main.kit.info) || {}
15
+ const tagline = info.tagline || ''
16
+
17
+ Content(`# ${model.Name} ${target.title} SDK
18
+
19
+ ${tagline}
20
+
21
+ The ${target.title} SDK for the ${model.Name} API — an entity-oriented client following idiomatic Zig conventions.
22
+
23
+ `)
24
+
25
+ // Emphasise the entity-oriented design: the SDK surfaces the API as
26
+ // capitalised, semantic Entities with a small, uniform verb set rather
27
+ // than raw URL paths and query strings. The example entity name is
28
+ // derived from the model, never hardcoded.
29
+ const entity = getModelPath(model, `main.${KIT}.entity`)
30
+ const exampleEntity = Object.values(entity || {})
31
+ .find((e: any) => e.active !== false) as any
32
+ const example = exampleEntity
33
+ ? `for example \`client.${zigVarName(exampleEntity.name)}(h.vnull())\` — each`
34
+ : 'each'
35
+
36
+ // Model-driven op list — only the operations the active entities actually
37
+ // expose (a read-only entity has just list+load); never claim
38
+ // create/update/remove exist when no entity has them.
39
+ const CANON_OPS = ['list', 'load', 'create', 'update', 'remove']
40
+ const opSet = new Set<string>()
41
+ Object.values(entity || {}).forEach((e: any) => {
42
+ if (!e || e.active === false) return
43
+ Object.keys(e.op || {}).forEach((o: string) => {
44
+ if (e.op[o] && e.op[o].active !== false) opSet.add(o)
45
+ })
46
+ })
47
+ const opNames = CANON_OPS.filter((o) => opSet.has(o))
48
+ .concat([...opSet].filter((o) => !CANON_OPS.includes(o)))
49
+ const opList = (opNames.length ? opNames : ['list', 'load'])
50
+ .map((o) => '`' + o + '`').join(', ')
51
+
52
+ Content(`The SDK exposes the API as capitalised, semantic **Entities** — ${example}
53
+ carrying a small, uniform set of operations (${opList}) instead of raw URL
54
+ paths and query strings. You work with named resources and verbs, which
55
+ keeps the cognitive load low.
56
+
57
+ > Other languages, the CLI, and MCP server live alongside this one — see
58
+ > the [top-level README](../README.md).
59
+
60
+ `)
61
+ })
62
+
63
+
64
+ export {
65
+ ReadmeIntro
66
+ }