@voxgig/sdkgen 4.34.0 → 4.34.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 (1055) hide show
  1. package/bin/voxgig-sdkgen +1 -1
  2. package/dist/action/copies.d.ts +4 -3
  3. package/dist/action/copies.js +142 -45
  4. package/dist/action/copies.js.map +1 -1
  5. package/dist/action/doctor.d.ts +1 -0
  6. package/dist/action/doctor.js +6 -2
  7. package/dist/action/doctor.js.map +1 -1
  8. package/dist/action/package.d.ts +3 -1
  9. package/dist/action/package.js +12 -5
  10. package/dist/action/package.js.map +1 -1
  11. package/dist/action/resolve.d.ts +11 -2
  12. package/dist/action/resolve.js +27 -0
  13. package/dist/action/resolve.js.map +1 -1
  14. package/dist/admin/npm-trust.js +7 -7
  15. package/dist/admin/npm-trust.js.map +1 -1
  16. package/dist/cmp/AgentGuide.js +4 -3
  17. package/dist/cmp/AgentGuide.js.map +1 -1
  18. package/dist/cmp/AgentGuideFeature.js +3 -2
  19. package/dist/cmp/AgentGuideFeature.js.map +1 -1
  20. package/dist/cmp/AgentGuideTop.js +2 -1
  21. package/dist/cmp/AgentGuideTop.js.map +1 -1
  22. package/dist/cmp/Changelog.js +2 -1
  23. package/dist/cmp/Changelog.js.map +1 -1
  24. package/dist/cmp/Deploy.js +2 -1
  25. package/dist/cmp/Deploy.js.map +1 -1
  26. package/dist/cmp/Entity.js +2 -2
  27. package/dist/cmp/Entity.js.map +1 -1
  28. package/dist/cmp/ExternalTarget.js +2 -1
  29. package/dist/cmp/ExternalTarget.js.map +1 -1
  30. package/dist/cmp/Feature.js +2 -1
  31. package/dist/cmp/Feature.js.map +1 -1
  32. package/dist/cmp/FeatureHook.js +2 -1
  33. package/dist/cmp/FeatureHook.js.map +1 -1
  34. package/dist/cmp/License.js +6 -4
  35. package/dist/cmp/License.js.map +1 -1
  36. package/dist/cmp/Main.js +2 -2
  37. package/dist/cmp/Main.js.map +1 -1
  38. package/dist/cmp/PublishWorkflow.js +2 -1
  39. package/dist/cmp/PublishWorkflow.js.map +1 -1
  40. package/dist/cmp/Readme.js +2 -1
  41. package/dist/cmp/Readme.js.map +1 -1
  42. package/dist/cmp/ReadmeEntity.js +4 -4
  43. package/dist/cmp/ReadmeEntity.js.map +1 -1
  44. package/dist/cmp/ReadmeErrors.js +6 -4
  45. package/dist/cmp/ReadmeErrors.js.map +1 -1
  46. package/dist/cmp/ReadmeExplanation.js +4 -3
  47. package/dist/cmp/ReadmeExplanation.js.map +1 -1
  48. package/dist/cmp/ReadmeFeatures.js +4 -3
  49. package/dist/cmp/ReadmeFeatures.js.map +1 -1
  50. package/dist/cmp/ReadmeHowto.js +4 -3
  51. package/dist/cmp/ReadmeHowto.js.map +1 -1
  52. package/dist/cmp/ReadmeInstall.js +4 -3
  53. package/dist/cmp/ReadmeInstall.js.map +1 -1
  54. package/dist/cmp/ReadmeIntro.js +4 -4
  55. package/dist/cmp/ReadmeIntro.js.map +1 -1
  56. package/dist/cmp/ReadmeModel.js +6 -3
  57. package/dist/cmp/ReadmeModel.js.map +1 -1
  58. package/dist/cmp/ReadmeOptions.js +4 -4
  59. package/dist/cmp/ReadmeOptions.js.map +1 -1
  60. package/dist/cmp/ReadmeQuick.js +4 -3
  61. package/dist/cmp/ReadmeQuick.js.map +1 -1
  62. package/dist/cmp/ReadmeRef.js +4 -4
  63. package/dist/cmp/ReadmeRef.js.map +1 -1
  64. package/dist/cmp/ReadmeRefFeatures.js +2 -1
  65. package/dist/cmp/ReadmeRefFeatures.js.map +1 -1
  66. package/dist/cmp/ReadmeStation.js +2 -1
  67. package/dist/cmp/ReadmeStation.js.map +1 -1
  68. package/dist/cmp/ReadmeTop.js +104 -35
  69. package/dist/cmp/ReadmeTop.js.map +1 -1
  70. package/dist/cmp/ReadmeUnions.js +2 -1
  71. package/dist/cmp/ReadmeUnions.js.map +1 -1
  72. package/dist/cmp/Registered.js +4 -3
  73. package/dist/cmp/Registered.js.map +1 -1
  74. package/dist/cmp/Security.js +10 -6
  75. package/dist/cmp/Security.js.map +1 -1
  76. package/dist/cmp/Test.js +2 -1
  77. package/dist/cmp/Test.js.map +1 -1
  78. package/dist/cmp/TestControl.js +2 -1
  79. package/dist/cmp/TestControl.js.map +1 -1
  80. package/dist/helpers/component.d.ts +4 -0
  81. package/dist/helpers/component.js +54 -0
  82. package/dist/helpers/component.js.map +1 -0
  83. package/dist/helpers/definition.js +2 -2
  84. package/dist/helpers/definition.js.map +1 -1
  85. package/dist/helpers/definitionPlan.d.ts +16 -0
  86. package/dist/helpers/definitionPlan.js +116 -12
  87. package/dist/helpers/definitionPlan.js.map +1 -1
  88. package/dist/helpers/featureSource.d.ts +2 -1
  89. package/dist/helpers/featureSource.js +44 -2
  90. package/dist/helpers/featureSource.js.map +1 -1
  91. package/dist/helpers/flowGuard.d.ts +8 -0
  92. package/dist/helpers/flowGuard.js +84 -0
  93. package/dist/helpers/flowGuard.js.map +1 -0
  94. package/dist/helpers/generated.d.ts +26 -0
  95. package/dist/helpers/generated.js +363 -0
  96. package/dist/helpers/generated.js.map +1 -0
  97. package/dist/helpers/mcpTools.d.ts +11 -0
  98. package/dist/helpers/mcpTools.js +28 -0
  99. package/dist/helpers/mcpTools.js.map +1 -0
  100. package/dist/helpers/media.d.ts +9 -0
  101. package/dist/helpers/media.js +61 -0
  102. package/dist/helpers/media.js.map +1 -0
  103. package/dist/helpers/modelNames.js +147 -14
  104. package/dist/helpers/modelNames.js.map +1 -1
  105. package/dist/helpers/naming.d.ts +11 -1
  106. package/dist/helpers/naming.js +143 -0
  107. package/dist/helpers/naming.js.map +1 -1
  108. package/dist/helpers/npm.d.ts +13 -0
  109. package/dist/helpers/npm.js +41 -0
  110. package/dist/helpers/npm.js.map +1 -0
  111. package/dist/helpers/npmScripts.d.ts +4 -0
  112. package/dist/helpers/npmScripts.js +30 -0
  113. package/dist/helpers/npmScripts.js.map +1 -0
  114. package/dist/helpers/opExample.d.ts +5 -4
  115. package/dist/helpers/opExample.js +10 -7
  116. package/dist/helpers/opExample.js.map +1 -1
  117. package/dist/helpers/opShape.d.ts +20 -4
  118. package/dist/helpers/opShape.js +197 -30
  119. package/dist/helpers/opShape.js.map +1 -1
  120. package/dist/helpers/optional.d.ts +20 -0
  121. package/dist/helpers/optional.js +51 -0
  122. package/dist/helpers/optional.js.map +1 -0
  123. package/dist/helpers/packageMeta.d.ts +9 -1
  124. package/dist/helpers/packageMeta.js +70 -11
  125. package/dist/helpers/packageMeta.js.map +1 -1
  126. package/dist/helpers/stdrep.js +3 -0
  127. package/dist/helpers/stdrep.js.map +1 -1
  128. package/dist/helpers/testPolicy.d.ts +9 -1
  129. package/dist/helpers/testPolicy.js +48 -0
  130. package/dist/helpers/testPolicy.js.map +1 -1
  131. package/dist/helpers/text.d.ts +2 -0
  132. package/dist/helpers/text.js +27 -0
  133. package/dist/helpers/text.js.map +1 -0
  134. package/dist/sdkgen.d.ts +15 -8
  135. package/dist/sdkgen.js +79 -12
  136. package/dist/sdkgen.js.map +1 -1
  137. package/dist/testkit.js +2 -1
  138. package/dist/testkit.js.map +1 -1
  139. package/dist/tsconfig.tsbuildinfo +1 -1
  140. package/dist/utility.d.ts +2 -1
  141. package/dist/utility.js +33 -18
  142. package/dist/utility.js.map +1 -1
  143. package/model/sdkgen.aontu +24 -1
  144. package/package.json +8 -2
  145. package/project/.sdk/model/feature/timeout.aontu +2 -0
  146. package/project/.sdk/model/target/go-mcp.aontu +2 -0
  147. package/project/.sdk/src/cmp/c/Config_c.ts +5 -0
  148. package/project/.sdk/src/cmp/c/EntityTypes_c.ts +1 -1
  149. package/project/.sdk/src/cmp/c/Entity_c.ts +1 -1
  150. package/project/.sdk/src/cmp/c/Main_c.ts +4 -20
  151. package/project/.sdk/src/cmp/c/PrepareAuth_c.ts +169 -51
  152. package/project/.sdk/src/cmp/c/ReadmeEntity_c.ts +22 -13
  153. package/project/.sdk/src/cmp/c/ReadmeHowto_c.ts +10 -5
  154. package/project/.sdk/src/cmp/c/ReadmeInstall_c.ts +2 -2
  155. package/project/.sdk/src/cmp/c/ReadmeIntro_c.ts +3 -3
  156. package/project/.sdk/src/cmp/c/ReadmeModel_c.ts +11 -10
  157. package/project/.sdk/src/cmp/c/ReadmeQuick_c.ts +37 -20
  158. package/project/.sdk/src/cmp/c/ReadmeRef_c.ts +39 -21
  159. package/project/.sdk/src/cmp/c/ReadmeTopQuick_c.ts +9 -7
  160. package/project/.sdk/src/cmp/c/ReadmeTopTest_c.ts +15 -4
  161. package/project/.sdk/src/cmp/c/TestClean_c.ts +56 -22
  162. package/project/.sdk/src/cmp/c/TestDirect_c.ts +2 -2
  163. package/project/.sdk/src/cmp/c/TestEntity_c.ts +77 -4
  164. package/project/.sdk/src/cmp/c/fragment/Entity.fragment.c +33 -27
  165. package/project/.sdk/src/cmp/c/fragment/EntityPatchOp.fragment.c +36 -0
  166. package/project/.sdk/src/cmp/c/fragment/Main.fragment.c +40 -7
  167. package/project/.sdk/src/cmp/clojure/Entity_clojure.ts +1 -1
  168. package/project/.sdk/src/cmp/clojure/Main_clojure.ts +3 -1
  169. package/project/.sdk/src/cmp/clojure/PrepareAuth_clojure.ts +44 -28
  170. package/project/.sdk/src/cmp/clojure/ReadmeEntity_clojure.ts +7 -4
  171. package/project/.sdk/src/cmp/clojure/ReadmeHowto_clojure.ts +1 -1
  172. package/project/.sdk/src/cmp/clojure/ReadmeInstall_clojure.ts +3 -3
  173. package/project/.sdk/src/cmp/clojure/ReadmeIntro_clojure.ts +3 -3
  174. package/project/.sdk/src/cmp/clojure/ReadmeModel_clojure.ts +7 -5
  175. package/project/.sdk/src/cmp/clojure/ReadmeQuick_clojure.ts +12 -4
  176. package/project/.sdk/src/cmp/clojure/ReadmeRef_clojure.ts +24 -7
  177. package/project/.sdk/src/cmp/clojure/ReadmeTopQuick_clojure.ts +2 -2
  178. package/project/.sdk/src/cmp/clojure/ReadmeTopTest_clojure.ts +1 -1
  179. package/project/.sdk/src/cmp/clojure/TestClean_clojure.ts +53 -23
  180. package/project/.sdk/src/cmp/clojure/TestEntity_clojure.ts +64 -5
  181. package/project/.sdk/src/cmp/clojure/fragment/Entity.fragment.clj +22 -11
  182. package/project/.sdk/src/cmp/clojure/fragment/EntityListOp.fragment.clj +7 -9
  183. package/project/.sdk/src/cmp/clojure/fragment/EntityPatchOp.fragment.clj +15 -0
  184. package/project/.sdk/src/cmp/cpp/EntityTypes_cpp.ts +1 -1
  185. package/project/.sdk/src/cmp/cpp/Entity_cpp.ts +2 -2
  186. package/project/.sdk/src/cmp/cpp/Main_cpp.ts +3 -19
  187. package/project/.sdk/src/cmp/cpp/PrepareAuth_cpp.ts +38 -39
  188. package/project/.sdk/src/cmp/cpp/ReadmeEntity_cpp.ts +19 -12
  189. package/project/.sdk/src/cmp/cpp/ReadmeHowto_cpp.ts +11 -6
  190. package/project/.sdk/src/cmp/cpp/ReadmeInstall_cpp.ts +2 -2
  191. package/project/.sdk/src/cmp/cpp/ReadmeIntro_cpp.ts +3 -3
  192. package/project/.sdk/src/cmp/cpp/ReadmeModel_cpp.ts +10 -9
  193. package/project/.sdk/src/cmp/cpp/ReadmeQuick_cpp.ts +26 -18
  194. package/project/.sdk/src/cmp/cpp/ReadmeRef_cpp.ts +42 -25
  195. package/project/.sdk/src/cmp/cpp/ReadmeTopQuick_cpp.ts +7 -7
  196. package/project/.sdk/src/cmp/cpp/ReadmeTopTest_cpp.ts +11 -4
  197. package/project/.sdk/src/cmp/cpp/TestClean_cpp.ts +69 -21
  198. package/project/.sdk/src/cmp/cpp/TestEntity_cpp.ts +135 -6
  199. package/project/.sdk/src/cmp/cpp/fragment/Entity.fragment.cpp +2 -0
  200. package/project/.sdk/src/cmp/cpp/fragment/EntityPatchOp.fragment.cpp +28 -0
  201. package/project/.sdk/src/cmp/csharp/EntityTypes_csharp.ts +1 -1
  202. package/project/.sdk/src/cmp/csharp/Entity_csharp.ts +1 -1
  203. package/project/.sdk/src/cmp/csharp/Main_csharp.ts +3 -1
  204. package/project/.sdk/src/cmp/csharp/Package_csharp.ts +4 -1
  205. package/project/.sdk/src/cmp/csharp/PrepareAuth_csharp.ts +69 -23
  206. package/project/.sdk/src/cmp/csharp/ReadmeEntity_csharp.ts +7 -4
  207. package/project/.sdk/src/cmp/csharp/ReadmeHowto_csharp.ts +3 -3
  208. package/project/.sdk/src/cmp/csharp/ReadmeInstall_csharp.ts +3 -3
  209. package/project/.sdk/src/cmp/csharp/ReadmeIntro_csharp.ts +3 -3
  210. package/project/.sdk/src/cmp/csharp/ReadmeModel_csharp.ts +11 -9
  211. package/project/.sdk/src/cmp/csharp/ReadmeQuick_csharp.ts +17 -6
  212. package/project/.sdk/src/cmp/csharp/ReadmeRef_csharp.ts +33 -16
  213. package/project/.sdk/src/cmp/csharp/ReadmeTopQuick_csharp.ts +1 -1
  214. package/project/.sdk/src/cmp/csharp/ReadmeTopTest_csharp.ts +1 -1
  215. package/project/.sdk/src/cmp/csharp/TestClean_csharp.ts +67 -14
  216. package/project/.sdk/src/cmp/csharp/TestDirect_csharp.ts +43 -31
  217. package/project/.sdk/src/cmp/csharp/TestEntity_csharp.ts +187 -15
  218. package/project/.sdk/src/cmp/csharp/fragment/Entity.fragment.cs +2 -0
  219. package/project/.sdk/src/cmp/csharp/fragment/EntityBase.fragment.cs +11 -2
  220. package/project/.sdk/src/cmp/csharp/fragment/EntityPatchOp.fragment.cs +41 -0
  221. package/project/.sdk/src/cmp/csharp/fragment/Main.fragment.cs +28 -4
  222. package/project/.sdk/src/cmp/csharp/utility_csharp.ts +6 -0
  223. package/project/.sdk/src/cmp/elixir/EntityOperation_elixir.ts +5 -0
  224. package/project/.sdk/src/cmp/elixir/EntityTypes_elixir.ts +3 -3
  225. package/project/.sdk/src/cmp/elixir/Entity_elixir.ts +22 -1
  226. package/project/.sdk/src/cmp/elixir/MainEntity_elixir.ts +4 -2
  227. package/project/.sdk/src/cmp/elixir/Main_elixir.ts +6 -2
  228. package/project/.sdk/src/cmp/elixir/Package_elixir.ts +7 -0
  229. package/project/.sdk/src/cmp/elixir/PrepareAuth_elixir.ts +40 -30
  230. package/project/.sdk/src/cmp/elixir/ReadmeEntity_elixir.ts +13 -9
  231. package/project/.sdk/src/cmp/elixir/ReadmeHowto_elixir.ts +6 -5
  232. package/project/.sdk/src/cmp/elixir/ReadmeInstall_elixir.ts +2 -2
  233. package/project/.sdk/src/cmp/elixir/ReadmeIntro_elixir.ts +4 -4
  234. package/project/.sdk/src/cmp/elixir/ReadmeModel_elixir.ts +13 -11
  235. package/project/.sdk/src/cmp/elixir/ReadmeQuick_elixir.ts +25 -12
  236. package/project/.sdk/src/cmp/elixir/ReadmeRef_elixir.ts +29 -13
  237. package/project/.sdk/src/cmp/elixir/ReadmeTopQuick_elixir.ts +5 -4
  238. package/project/.sdk/src/cmp/elixir/ReadmeTopTest_elixir.ts +5 -4
  239. package/project/.sdk/src/cmp/elixir/TestClean_elixir.ts +41 -12
  240. package/project/.sdk/src/cmp/elixir/TestEntity_elixir.ts +152 -23
  241. package/project/.sdk/src/cmp/elixir/fragment/Entity.fragment.ex +4 -4
  242. package/project/.sdk/src/cmp/elixir/fragment/EntityPatchOp.fragment.ex +35 -0
  243. package/project/.sdk/src/cmp/elixir/fragment/Main.fragment.ex +29 -5
  244. package/project/.sdk/src/cmp/elixir/fragment/Pipeline.fragment.ex +23 -16
  245. package/project/.sdk/src/cmp/go/EntityTypes_go.ts +1 -1
  246. package/project/.sdk/src/cmp/go/Entity_go.ts +1 -1
  247. package/project/.sdk/src/cmp/go/Main_go.ts +5 -6
  248. package/project/.sdk/src/cmp/go/PrepareAuth_go.ts +40 -26
  249. package/project/.sdk/src/cmp/go/ReadmeEntity_go.ts +1 -0
  250. package/project/.sdk/src/cmp/go/ReadmeExamplesTest_go.ts +6 -1
  251. package/project/.sdk/src/cmp/go/ReadmeHowto_go.ts +1 -1
  252. package/project/.sdk/src/cmp/go/ReadmeInstall_go.ts +3 -3
  253. package/project/.sdk/src/cmp/go/ReadmeIntro_go.ts +3 -3
  254. package/project/.sdk/src/cmp/go/ReadmeModel_go.ts +3 -2
  255. package/project/.sdk/src/cmp/go/ReadmeQuick_go.ts +14 -0
  256. package/project/.sdk/src/cmp/go/ReadmeRef_go.ts +29 -7
  257. package/project/.sdk/src/cmp/go/ReadmeTopTest_go.ts +1 -1
  258. package/project/.sdk/src/cmp/go/TestClean_go.ts +81 -18
  259. package/project/.sdk/src/cmp/go/TestDirect_go.ts +47 -53
  260. package/project/.sdk/src/cmp/go/TestEntity_go.ts +204 -24
  261. package/project/.sdk/src/cmp/go/fragment/Entity.fragment.go +79 -60
  262. package/project/.sdk/src/cmp/go/fragment/EntityPatchOp.fragment.go +49 -0
  263. package/project/.sdk/src/cmp/go/fragment/Main.fragment.go +26 -5
  264. package/project/.sdk/src/cmp/go-cli/Main_go-cli.ts +8 -10
  265. package/project/.sdk/src/cmp/go-mcp/Main_go-mcp.ts +240 -121
  266. package/project/.sdk/src/cmp/go-mcp/fragment/main.fragment.go +1 -1
  267. package/project/.sdk/src/cmp/go-mcp/fragment/tools.fragment.go +34 -27
  268. package/project/.sdk/src/cmp/java/EntityTypes_java.ts +1 -1
  269. package/project/.sdk/src/cmp/java/Entity_java.ts +1 -1
  270. package/project/.sdk/src/cmp/java/Main_java.ts +3 -1
  271. package/project/.sdk/src/cmp/java/PrepareAuth_java.ts +58 -23
  272. package/project/.sdk/src/cmp/java/ReadmeEntity_java.ts +7 -4
  273. package/project/.sdk/src/cmp/java/ReadmeHowto_java.ts +1 -1
  274. package/project/.sdk/src/cmp/java/ReadmeInstall_java.ts +3 -3
  275. package/project/.sdk/src/cmp/java/ReadmeIntro_java.ts +3 -3
  276. package/project/.sdk/src/cmp/java/ReadmeModel_java.ts +2 -1
  277. package/project/.sdk/src/cmp/java/ReadmeQuick_java.ts +10 -1
  278. package/project/.sdk/src/cmp/java/ReadmeRef_java.ts +22 -5
  279. package/project/.sdk/src/cmp/java/ReadmeTopTest_java.ts +1 -1
  280. package/project/.sdk/src/cmp/java/TestClean_java.ts +57 -12
  281. package/project/.sdk/src/cmp/java/TestDirect_java.ts +50 -36
  282. package/project/.sdk/src/cmp/java/TestEntity_java.ts +180 -13
  283. package/project/.sdk/src/cmp/java/fragment/Entity.fragment.java +2 -0
  284. package/project/.sdk/src/cmp/java/fragment/EntityBase.fragment.java +5 -3
  285. package/project/.sdk/src/cmp/java/fragment/EntityPatchOp.fragment.java +45 -0
  286. package/project/.sdk/src/cmp/js/EntityTypes_js.ts +1 -1
  287. package/project/.sdk/src/cmp/js/Entity_js.ts +1 -1
  288. package/project/.sdk/src/cmp/js/Main_js.ts +2 -0
  289. package/project/.sdk/src/cmp/js/Package_js.ts +11 -8
  290. package/project/.sdk/src/cmp/js/PrepareAuth_js.ts +39 -27
  291. package/project/.sdk/src/cmp/js/ReadmeEntity_js.ts +7 -4
  292. package/project/.sdk/src/cmp/js/ReadmeHowto_js.ts +0 -3
  293. package/project/.sdk/src/cmp/js/ReadmeInstall_js.ts +3 -3
  294. package/project/.sdk/src/cmp/js/ReadmeIntro_js.ts +3 -3
  295. package/project/.sdk/src/cmp/js/ReadmeModel_js.ts +4 -3
  296. package/project/.sdk/src/cmp/js/ReadmeQuick_js.ts +17 -0
  297. package/project/.sdk/src/cmp/js/ReadmeRef_js.ts +37 -8
  298. package/project/.sdk/src/cmp/js/ReadmeTopHowto_js.ts +2 -3
  299. package/project/.sdk/src/cmp/js/ReadmeTopTest_js.ts +1 -1
  300. package/project/.sdk/src/cmp/js/TestClean_js.ts +52 -8
  301. package/project/.sdk/src/cmp/js/TestDirect_js.ts +81 -54
  302. package/project/.sdk/src/cmp/js/TestEntity_js.ts +95 -2
  303. package/project/.sdk/src/cmp/js/TestLive_js.ts +4 -3
  304. package/project/.sdk/src/cmp/js/fragment/Direct.test.fragment.js +4 -0
  305. package/project/.sdk/src/cmp/js/fragment/Entity.fragment.js +2 -0
  306. package/project/.sdk/src/cmp/js/fragment/Entity.test.fragment.js +2 -0
  307. package/project/.sdk/src/cmp/js/fragment/EntityBase.fragment.js +51 -25
  308. package/project/.sdk/src/cmp/js/fragment/EntityPatchOp.fragment.js +129 -0
  309. package/project/.sdk/src/cmp/js/fragment/Main.fragment.js +39 -15
  310. package/project/.sdk/src/cmp/kotlin/Config_kotlin.ts +4 -0
  311. package/project/.sdk/src/cmp/kotlin/EntityTypes_kotlin.ts +1 -1
  312. package/project/.sdk/src/cmp/kotlin/Entity_kotlin.ts +1 -1
  313. package/project/.sdk/src/cmp/kotlin/Main_kotlin.ts +3 -1
  314. package/project/.sdk/src/cmp/kotlin/PrepareAuth_kotlin.ts +56 -31
  315. package/project/.sdk/src/cmp/kotlin/ReadmeEntity_kotlin.ts +7 -4
  316. package/project/.sdk/src/cmp/kotlin/ReadmeHowto_kotlin.ts +1 -1
  317. package/project/.sdk/src/cmp/kotlin/ReadmeInstall_kotlin.ts +3 -3
  318. package/project/.sdk/src/cmp/kotlin/ReadmeIntro_kotlin.ts +3 -3
  319. package/project/.sdk/src/cmp/kotlin/ReadmeModel_kotlin.ts +2 -1
  320. package/project/.sdk/src/cmp/kotlin/ReadmeQuick_kotlin.ts +10 -1
  321. package/project/.sdk/src/cmp/kotlin/ReadmeRef_kotlin.ts +22 -5
  322. package/project/.sdk/src/cmp/kotlin/ReadmeTopTest_kotlin.ts +1 -1
  323. package/project/.sdk/src/cmp/kotlin/TestClean_kotlin.ts +45 -10
  324. package/project/.sdk/src/cmp/kotlin/TestDirect_kotlin.ts +49 -26
  325. package/project/.sdk/src/cmp/kotlin/TestEntity_kotlin.ts +168 -10
  326. package/project/.sdk/src/cmp/kotlin/fragment/Entity.fragment.kt +2 -0
  327. package/project/.sdk/src/cmp/kotlin/fragment/EntityBase.fragment.kt +2 -1
  328. package/project/.sdk/src/cmp/kotlin/fragment/EntityPatchOp.fragment.kt +40 -0
  329. package/project/.sdk/src/cmp/lua/EntityTypes_lua.ts +1 -1
  330. package/project/.sdk/src/cmp/lua/Entity_lua.ts +1 -1
  331. package/project/.sdk/src/cmp/lua/Main_lua.ts +2 -1
  332. package/project/.sdk/src/cmp/lua/PrepareAuth_lua.ts +42 -23
  333. package/project/.sdk/src/cmp/lua/ReadmeEntity_lua.ts +7 -4
  334. package/project/.sdk/src/cmp/lua/ReadmeExamplesTest_lua.ts +8 -2
  335. package/project/.sdk/src/cmp/lua/ReadmeHowto_lua.ts +1 -1
  336. package/project/.sdk/src/cmp/lua/ReadmeInstall_lua.ts +2 -2
  337. package/project/.sdk/src/cmp/lua/ReadmeIntro_lua.ts +3 -3
  338. package/project/.sdk/src/cmp/lua/ReadmeModel_lua.ts +3 -2
  339. package/project/.sdk/src/cmp/lua/ReadmeQuick_lua.ts +9 -1
  340. package/project/.sdk/src/cmp/lua/ReadmeRef_lua.ts +22 -6
  341. package/project/.sdk/src/cmp/lua/ReadmeTopTest_lua.ts +1 -1
  342. package/project/.sdk/src/cmp/lua/TestClean_lua.ts +46 -12
  343. package/project/.sdk/src/cmp/lua/TestDirect_lua.ts +100 -124
  344. package/project/.sdk/src/cmp/lua/TestEntity_lua.ts +173 -20
  345. package/project/.sdk/src/cmp/lua/fragment/Entity.fragment.lua +85 -48
  346. package/project/.sdk/src/cmp/lua/fragment/EntityPatchOp.fragment.lua +34 -0
  347. package/project/.sdk/src/cmp/lua/fragment/Main.fragment.lua +28 -6
  348. package/project/.sdk/src/cmp/ocaml/EntityOperation_ocaml.ts +8 -11
  349. package/project/.sdk/src/cmp/ocaml/Entity_ocaml.ts +8 -3
  350. package/project/.sdk/src/cmp/ocaml/Main_ocaml.ts +2 -1
  351. package/project/.sdk/src/cmp/ocaml/Package_ocaml.ts +7 -5
  352. package/project/.sdk/src/cmp/ocaml/PrepareAuth_ocaml.ts +39 -34
  353. package/project/.sdk/src/cmp/ocaml/ReadmeEntity_ocaml.ts +7 -4
  354. package/project/.sdk/src/cmp/ocaml/ReadmeHowto_ocaml.ts +3 -8
  355. package/project/.sdk/src/cmp/ocaml/ReadmeInstall_ocaml.ts +2 -2
  356. package/project/.sdk/src/cmp/ocaml/ReadmeIntro_ocaml.ts +3 -3
  357. package/project/.sdk/src/cmp/ocaml/ReadmeModel_ocaml.ts +2 -1
  358. package/project/.sdk/src/cmp/ocaml/ReadmeQuick_ocaml.ts +9 -1
  359. package/project/.sdk/src/cmp/ocaml/ReadmeRef_ocaml.ts +22 -6
  360. package/project/.sdk/src/cmp/ocaml/ReadmeTopTest_ocaml.ts +3 -7
  361. package/project/.sdk/src/cmp/ocaml/TestClean_ocaml.ts +47 -14
  362. package/project/.sdk/src/cmp/ocaml/TestEntity_ocaml.ts +88 -3
  363. package/project/.sdk/src/cmp/ocaml/fragment/RunOp.fragment.ml +10 -11
  364. package/project/.sdk/src/cmp/ocaml/utility_ocaml.ts +7 -0
  365. package/project/.sdk/src/cmp/perl/Entity_perl.ts +1 -1
  366. package/project/.sdk/src/cmp/perl/Main_perl.ts +3 -1
  367. package/project/.sdk/src/cmp/perl/Package_perl.ts +5 -4
  368. package/project/.sdk/src/cmp/perl/PrepareAuth_perl.ts +48 -33
  369. package/project/.sdk/src/cmp/perl/ReadmeEntity_perl.ts +9 -4
  370. package/project/.sdk/src/cmp/perl/ReadmeExamplesTest_perl.ts +2 -2
  371. package/project/.sdk/src/cmp/perl/ReadmeHowto_perl.ts +1 -1
  372. package/project/.sdk/src/cmp/perl/ReadmeInstall_perl.ts +9 -3
  373. package/project/.sdk/src/cmp/perl/ReadmeIntro_perl.ts +3 -3
  374. package/project/.sdk/src/cmp/perl/ReadmeModel_perl.ts +7 -5
  375. package/project/.sdk/src/cmp/perl/ReadmeQuick_perl.ts +12 -4
  376. package/project/.sdk/src/cmp/perl/ReadmeRef_perl.ts +26 -9
  377. package/project/.sdk/src/cmp/perl/ReadmeTopQuick_perl.ts +2 -2
  378. package/project/.sdk/src/cmp/perl/ReadmeTopTest_perl.ts +1 -1
  379. package/project/.sdk/src/cmp/perl/TestClean_perl.ts +42 -11
  380. package/project/.sdk/src/cmp/perl/TestDirect_perl.ts +121 -149
  381. package/project/.sdk/src/cmp/perl/TestEntity_perl.ts +178 -17
  382. package/project/.sdk/src/cmp/perl/fragment/Entity.fragment.pm +16 -2
  383. package/project/.sdk/src/cmp/perl/fragment/EntityListOp.fragment.pm +2 -13
  384. package/project/.sdk/src/cmp/perl/fragment/EntityPatchOp.fragment.pm +32 -0
  385. package/project/.sdk/src/cmp/perl/fragment/Main.fragment.pm +23 -5
  386. package/project/.sdk/src/cmp/perl/utility_perl.ts +16 -0
  387. package/project/.sdk/src/cmp/php/EntityTypes_php.ts +3 -3
  388. package/project/.sdk/src/cmp/php/Entity_php.ts +4 -3
  389. package/project/.sdk/src/cmp/php/MainEntity_php.ts +1 -1
  390. package/project/.sdk/src/cmp/php/Main_php.ts +3 -1
  391. package/project/.sdk/src/cmp/php/Package_php.ts +1 -1
  392. package/project/.sdk/src/cmp/php/PrepareAuth_php.ts +36 -28
  393. package/project/.sdk/src/cmp/php/ReadmeEntity_php.ts +7 -4
  394. package/project/.sdk/src/cmp/php/ReadmeExamplesTest_php.ts +3 -3
  395. package/project/.sdk/src/cmp/php/ReadmeHowto_php.ts +1 -1
  396. package/project/.sdk/src/cmp/php/ReadmeInstall_php.ts +2 -2
  397. package/project/.sdk/src/cmp/php/ReadmeIntro_php.ts +3 -3
  398. package/project/.sdk/src/cmp/php/ReadmeModel_php.ts +2 -1
  399. package/project/.sdk/src/cmp/php/ReadmeQuick_php.ts +9 -1
  400. package/project/.sdk/src/cmp/php/ReadmeRef_php.ts +23 -6
  401. package/project/.sdk/src/cmp/php/ReadmeTopTest_php.ts +1 -1
  402. package/project/.sdk/src/cmp/php/TestClean_php.ts +73 -12
  403. package/project/.sdk/src/cmp/php/TestDirect_php.ts +95 -127
  404. package/project/.sdk/src/cmp/php/TestEntity_php.ts +219 -20
  405. package/project/.sdk/src/cmp/php/fragment/Entity.fragment.php +82 -45
  406. package/project/.sdk/src/cmp/php/fragment/EntityPatchOp.fragment.php +38 -0
  407. package/project/.sdk/src/cmp/php/fragment/Main.fragment.php +26 -5
  408. package/project/.sdk/src/cmp/py/EntityTypes_py.ts +1 -1
  409. package/project/.sdk/src/cmp/py/Entity_py.ts +2 -2
  410. package/project/.sdk/src/cmp/py/Main_py.ts +6 -2
  411. package/project/.sdk/src/cmp/py/Package_py.ts +7 -0
  412. package/project/.sdk/src/cmp/py/PrepareAuth_py.ts +52 -26
  413. package/project/.sdk/src/cmp/py/ReadmeEntity_py.ts +7 -4
  414. package/project/.sdk/src/cmp/py/ReadmeExamplesTest_py.ts +12 -6
  415. package/project/.sdk/src/cmp/py/ReadmeHowto_py.ts +1 -1
  416. package/project/.sdk/src/cmp/py/ReadmeInstall_py.ts +3 -3
  417. package/project/.sdk/src/cmp/py/ReadmeIntro_py.ts +3 -3
  418. package/project/.sdk/src/cmp/py/ReadmeModel_py.ts +2 -1
  419. package/project/.sdk/src/cmp/py/ReadmeQuick_py.ts +9 -1
  420. package/project/.sdk/src/cmp/py/ReadmeRef_py.ts +23 -6
  421. package/project/.sdk/src/cmp/py/ReadmeTopTest_py.ts +1 -1
  422. package/project/.sdk/src/cmp/py/TestClean_py.ts +41 -10
  423. package/project/.sdk/src/cmp/py/TestDirect_py.ts +91 -121
  424. package/project/.sdk/src/cmp/py/TestEntity_py.ts +146 -20
  425. package/project/.sdk/src/cmp/py/fragment/Entity.fragment.py +62 -42
  426. package/project/.sdk/src/cmp/py/fragment/EntityPatchOp.fragment.py +27 -0
  427. package/project/.sdk/src/cmp/py/fragment/Main.fragment.py +23 -5
  428. package/project/.sdk/src/cmp/py-data/Main_py-data.ts +1 -1
  429. package/project/.sdk/src/cmp/rb/EntityTypes_rb.ts +3 -3
  430. package/project/.sdk/src/cmp/rb/Entity_rb.ts +1 -1
  431. package/project/.sdk/src/cmp/rb/Main_rb.ts +5 -6
  432. package/project/.sdk/src/cmp/rb/Package_rb.ts +3 -1
  433. package/project/.sdk/src/cmp/rb/PrepareAuth_rb.ts +30 -28
  434. package/project/.sdk/src/cmp/rb/ReadmeEntity_rb.ts +9 -5
  435. package/project/.sdk/src/cmp/rb/ReadmeExamplesTest_rb.ts +16 -8
  436. package/project/.sdk/src/cmp/rb/ReadmeHowto_rb.ts +1 -1
  437. package/project/.sdk/src/cmp/rb/ReadmeInstall_rb.ts +2 -2
  438. package/project/.sdk/src/cmp/rb/ReadmeIntro_rb.ts +3 -3
  439. package/project/.sdk/src/cmp/rb/ReadmeModel_rb.ts +3 -2
  440. package/project/.sdk/src/cmp/rb/ReadmeQuick_rb.ts +14 -5
  441. package/project/.sdk/src/cmp/rb/ReadmeRef_rb.ts +26 -8
  442. package/project/.sdk/src/cmp/rb/ReadmeTopQuick_rb.ts +2 -2
  443. package/project/.sdk/src/cmp/rb/ReadmeTopTest_rb.ts +1 -1
  444. package/project/.sdk/src/cmp/rb/TestClean_rb.ts +36 -10
  445. package/project/.sdk/src/cmp/rb/TestDirect_rb.ts +95 -126
  446. package/project/.sdk/src/cmp/rb/TestEntity_rb.ts +177 -21
  447. package/project/.sdk/src/cmp/rb/fragment/Entity.fragment.rb +49 -29
  448. package/project/.sdk/src/cmp/rb/fragment/EntityListOp.fragment.rb +2 -11
  449. package/project/.sdk/src/cmp/rb/fragment/EntityPatchOp.fragment.rb +31 -0
  450. package/project/.sdk/src/cmp/rb/fragment/Main.fragment.rb +19 -5
  451. package/project/.sdk/src/cmp/rust/EntityTypes_rust.ts +1 -1
  452. package/project/.sdk/src/cmp/rust/Entity_rust.ts +2 -2
  453. package/project/.sdk/src/cmp/rust/Main_rust.ts +7 -6
  454. package/project/.sdk/src/cmp/rust/PrepareAuth_rust.ts +56 -29
  455. package/project/.sdk/src/cmp/rust/ReadmeEntity_rust.ts +16 -9
  456. package/project/.sdk/src/cmp/rust/ReadmeHowto_rust.ts +11 -4
  457. package/project/.sdk/src/cmp/rust/ReadmeInstall_rust.ts +3 -3
  458. package/project/.sdk/src/cmp/rust/ReadmeIntro_rust.ts +3 -3
  459. package/project/.sdk/src/cmp/rust/ReadmeModel_rust.ts +12 -9
  460. package/project/.sdk/src/cmp/rust/ReadmeQuick_rust.ts +25 -17
  461. package/project/.sdk/src/cmp/rust/ReadmeRef_rust.ts +35 -21
  462. package/project/.sdk/src/cmp/rust/ReadmeTopQuick_rust.ts +6 -8
  463. package/project/.sdk/src/cmp/rust/ReadmeTopTest_rust.ts +13 -5
  464. package/project/.sdk/src/cmp/rust/TestClean_rust.ts +80 -21
  465. package/project/.sdk/src/cmp/rust/TestDirect_rust.ts +124 -79
  466. package/project/.sdk/src/cmp/rust/TestEntity_rust.ts +164 -17
  467. package/project/.sdk/src/cmp/rust/fragment/Entity.fragment.rs +44 -23
  468. package/project/.sdk/src/cmp/rust/fragment/EntityPatchOp.fragment.rs +41 -0
  469. package/project/.sdk/src/cmp/rust/fragment/Main.fragment.rs +39 -9
  470. package/project/.sdk/src/cmp/scala/Config_scala.ts +4 -0
  471. package/project/.sdk/src/cmp/scala/EntityTypes_scala.ts +1 -1
  472. package/project/.sdk/src/cmp/scala/Entity_scala.ts +1 -1
  473. package/project/.sdk/src/cmp/scala/Main_scala.ts +4 -20
  474. package/project/.sdk/src/cmp/scala/PrepareAuth_scala.ts +56 -24
  475. package/project/.sdk/src/cmp/scala/ReadmeEntity_scala.ts +7 -4
  476. package/project/.sdk/src/cmp/scala/ReadmeHowto_scala.ts +1 -1
  477. package/project/.sdk/src/cmp/scala/ReadmeInstall_scala.ts +3 -3
  478. package/project/.sdk/src/cmp/scala/ReadmeIntro_scala.ts +3 -3
  479. package/project/.sdk/src/cmp/scala/ReadmeModel_scala.ts +2 -1
  480. package/project/.sdk/src/cmp/scala/ReadmeQuick_scala.ts +10 -1
  481. package/project/.sdk/src/cmp/scala/ReadmeRef_scala.ts +22 -5
  482. package/project/.sdk/src/cmp/scala/ReadmeTopTest_scala.ts +1 -1
  483. package/project/.sdk/src/cmp/scala/TestClean_scala.ts +39 -10
  484. package/project/.sdk/src/cmp/scala/TestEntity_scala.ts +113 -3
  485. package/project/.sdk/src/cmp/scala/fragment/Entity.fragment.scala +2 -0
  486. package/project/.sdk/src/cmp/scala/fragment/EntityBase.fragment.scala +4 -2
  487. package/project/.sdk/src/cmp/scala/fragment/EntityPatchOp.fragment.scala +33 -0
  488. package/project/.sdk/src/cmp/swift/EntityTypes_swift.ts +3 -3
  489. package/project/.sdk/src/cmp/swift/Entity_swift.ts +1 -1
  490. package/project/.sdk/src/cmp/swift/Main_swift.ts +6 -2
  491. package/project/.sdk/src/cmp/swift/PrepareAuth_swift.ts +56 -29
  492. package/project/.sdk/src/cmp/swift/ReadmeEntity_swift.ts +7 -4
  493. package/project/.sdk/src/cmp/swift/ReadmeHowto_swift.ts +1 -1
  494. package/project/.sdk/src/cmp/swift/ReadmeInstall_swift.ts +3 -3
  495. package/project/.sdk/src/cmp/swift/ReadmeIntro_swift.ts +3 -3
  496. package/project/.sdk/src/cmp/swift/ReadmeModel_swift.ts +2 -1
  497. package/project/.sdk/src/cmp/swift/ReadmeQuick_swift.ts +10 -1
  498. package/project/.sdk/src/cmp/swift/ReadmeRef_swift.ts +21 -5
  499. package/project/.sdk/src/cmp/swift/ReadmeTopTest_swift.ts +1 -1
  500. package/project/.sdk/src/cmp/swift/TestClean_swift.ts +44 -10
  501. package/project/.sdk/src/cmp/swift/TestEntity_swift.ts +90 -2
  502. package/project/.sdk/src/cmp/swift/fragment/Entity.fragment.swift +2 -0
  503. package/project/.sdk/src/cmp/swift/fragment/EntityBase.fragment.swift +9 -1
  504. package/project/.sdk/src/cmp/swift/fragment/EntityPatchOp.fragment.swift +24 -0
  505. package/project/.sdk/src/cmp/swift/fragment/Main.fragment.swift +23 -3
  506. package/project/.sdk/src/cmp/ts/EntityTypes_ts.ts +9 -3
  507. package/project/.sdk/src/cmp/ts/Entity_ts.ts +5 -5
  508. package/project/.sdk/src/cmp/ts/Main_ts.ts +4 -3
  509. package/project/.sdk/src/cmp/ts/Package_ts.ts +18 -10
  510. package/project/.sdk/src/cmp/ts/PrepareAuth_ts.ts +37 -28
  511. package/project/.sdk/src/cmp/ts/ReadmeEntity_ts.ts +7 -4
  512. package/project/.sdk/src/cmp/ts/ReadmeExamplesTest_ts.ts +39 -21
  513. package/project/.sdk/src/cmp/ts/ReadmeHowto_ts.ts +0 -3
  514. package/project/.sdk/src/cmp/ts/ReadmeInstall_ts.ts +3 -3
  515. package/project/.sdk/src/cmp/ts/ReadmeIntro_ts.ts +3 -3
  516. package/project/.sdk/src/cmp/ts/ReadmeModel_ts.ts +4 -3
  517. package/project/.sdk/src/cmp/ts/ReadmeQuick_ts.ts +10 -1
  518. package/project/.sdk/src/cmp/ts/ReadmeRef_ts.ts +37 -8
  519. package/project/.sdk/src/cmp/ts/ReadmeTopHowto_ts.ts +2 -3
  520. package/project/.sdk/src/cmp/ts/ReadmeTopTest_ts.ts +1 -1
  521. package/project/.sdk/src/cmp/ts/TestClean_ts.ts +52 -8
  522. package/project/.sdk/src/cmp/ts/TestDirect_ts.ts +50 -109
  523. package/project/.sdk/src/cmp/ts/TestEntity_ts.ts +92 -2
  524. package/project/.sdk/src/cmp/ts/TestLive_ts.ts +4 -3
  525. package/project/.sdk/src/cmp/ts/fragment/Direct.test.fragment.ts +3 -0
  526. package/project/.sdk/src/cmp/ts/fragment/Entity.fragment.ts +2 -0
  527. package/project/.sdk/src/cmp/ts/fragment/Entity.test.fragment.ts +3 -1
  528. package/project/.sdk/src/cmp/ts/fragment/EntityBase.fragment.ts +49 -24
  529. package/project/.sdk/src/cmp/ts/fragment/EntityPatchOp.fragment.ts +126 -0
  530. package/project/.sdk/src/cmp/ts/fragment/Main.fragment.ts +50 -18
  531. package/project/.sdk/src/cmp/zig/Entity_zig.ts +2 -2
  532. package/project/.sdk/src/cmp/zig/Main_zig.ts +5 -22
  533. package/project/.sdk/src/cmp/zig/Package_zig.ts +11 -2
  534. package/project/.sdk/src/cmp/zig/PrepareAuth_zig.ts +57 -31
  535. package/project/.sdk/src/cmp/zig/ReadmeEntity_zig.ts +17 -9
  536. package/project/.sdk/src/cmp/zig/ReadmeHowto_zig.ts +14 -4
  537. package/project/.sdk/src/cmp/zig/ReadmeInstall_zig.ts +2 -2
  538. package/project/.sdk/src/cmp/zig/ReadmeIntro_zig.ts +3 -3
  539. package/project/.sdk/src/cmp/zig/ReadmeModel_zig.ts +12 -10
  540. package/project/.sdk/src/cmp/zig/ReadmeQuick_zig.ts +29 -12
  541. package/project/.sdk/src/cmp/zig/ReadmeRef_zig.ts +45 -22
  542. package/project/.sdk/src/cmp/zig/ReadmeTopQuick_zig.ts +8 -4
  543. package/project/.sdk/src/cmp/zig/ReadmeTopTest_zig.ts +10 -3
  544. package/project/.sdk/src/cmp/zig/TestClean_zig.ts +67 -28
  545. package/project/.sdk/src/cmp/zig/TestEntity_zig.ts +54 -5
  546. package/project/.sdk/src/cmp/zig/Test_zig.ts +1 -0
  547. package/project/.sdk/src/cmp/zig/fragment/Entity.fragment.zig +44 -34
  548. package/project/.sdk/src/cmp/zig/fragment/EntityPatchOp.fragment.zig +26 -0
  549. package/project/.sdk/src/cmp/zig/fragment/Main.fragment.zig +30 -6
  550. package/project/.sdk/src/cmp/zig/fragment/Root.fragment.zig +1 -0
  551. package/project/.sdk/tm/c/LICENSE +1 -1
  552. package/project/.sdk/tm/c/core/context.c +2 -1
  553. package/project/.sdk/tm/c/core/helpers.c +21 -0
  554. package/project/.sdk/tm/c/core/response.c +103 -0
  555. package/project/.sdk/tm/c/core/sdk.h +26 -0
  556. package/project/.sdk/tm/c/core/spec.c +10 -0
  557. package/project/.sdk/tm/c/feature/test.c +46 -2
  558. package/project/.sdk/tm/c/feature/validate.c +2 -0
  559. package/project/.sdk/tm/c/tests/feature_harness.h +1 -1
  560. package/project/.sdk/tm/c/tests/primary_utility_test.c +9 -5
  561. package/project/.sdk/tm/c/tests/server_variable_test.c +80 -0
  562. package/project/.sdk/tm/c/utility/make_fetch_def.c +5 -1
  563. package/project/.sdk/tm/c/utility/make_options.c +84 -6
  564. package/project/.sdk/tm/c/utility/make_point.c +100 -8
  565. package/project/.sdk/tm/c/utility/make_spec.c +17 -1
  566. package/project/.sdk/tm/c/utility/make_url.c +38 -1
  567. package/project/.sdk/tm/c/utility/media.c +107 -0
  568. package/project/.sdk/tm/c/utility/param.c +52 -28
  569. package/project/.sdk/tm/c/utility/prepare_body.c +1 -0
  570. package/project/.sdk/tm/c/utility/prepare_headers.c +199 -29
  571. package/project/.sdk/tm/c/utility/prepare_query.c +24 -2
  572. package/project/.sdk/tm/c/utility/result_body.c +4 -0
  573. package/project/.sdk/tm/c/utility/transform_request.c +54 -17
  574. package/project/.sdk/tm/clojure/LICENSE +1 -1
  575. package/project/.sdk/tm/clojure/feature/secrets/sdk/feature/secrets.clj +0 -3
  576. package/project/.sdk/tm/clojure/src/sdk/client.clj +19 -5
  577. package/project/.sdk/tm/clojure/src/sdk/core.clj +415 -117
  578. package/project/.sdk/tm/clojure/src/sdk/features.clj +44 -20
  579. package/project/.sdk/tm/clojure/test/sdk/test/feature.clj +21 -1
  580. package/project/.sdk/tm/clojure/test/sdk/test_runner.clj +10 -2
  581. package/project/.sdk/tm/cpp/LICENSE +1 -1
  582. package/project/.sdk/tm/cpp/core/types.hpp +131 -7
  583. package/project/.sdk/tm/cpp/feature/test.hpp +32 -2
  584. package/project/.sdk/tm/cpp/feature/timeout.hpp +29 -9
  585. package/project/.sdk/tm/cpp/feature/validate.hpp +2 -0
  586. package/project/.sdk/tm/cpp/test/feature_test.cpp +37 -0
  587. package/project/.sdk/tm/cpp/test/harness.hpp +1 -1
  588. package/project/.sdk/tm/cpp/test/primary_utility_test.cpp +6 -2
  589. package/project/.sdk/tm/cpp/test/server_variable_test.cpp +57 -0
  590. package/project/.sdk/tm/cpp/utility/cookie.hpp +36 -0
  591. package/project/.sdk/tm/cpp/utility/pipeline.hpp +441 -82
  592. package/project/.sdk/tm/csharp/LICENSE +1 -1
  593. package/project/.sdk/tm/csharp/core/Context.cs +1 -1
  594. package/project/.sdk/tm/csharp/core/Helpers.cs +17 -0
  595. package/project/.sdk/tm/csharp/core/Response.cs +75 -0
  596. package/project/.sdk/tm/csharp/core/Spec.cs +3 -0
  597. package/project/.sdk/tm/csharp/feature/TestFeature.cs +41 -3
  598. package/project/.sdk/tm/csharp/feature/TimeoutFeature.cs +31 -3
  599. package/project/.sdk/tm/csharp/feature/ValidateFeature.cs +2 -0
  600. package/project/.sdk/tm/csharp/test/FeatureHarness.cs +1 -1
  601. package/project/.sdk/tm/csharp/test/FeatureTest.cs +35 -0
  602. package/project/.sdk/tm/csharp/test/PipelineTest.cs +28 -0
  603. package/project/.sdk/tm/csharp/test/Runner.cs +119 -0
  604. package/project/.sdk/tm/csharp/test/feature/secrets/SecretsFeatureTest.cs +8 -3
  605. package/project/.sdk/tm/csharp/utility/Fetcher.cs +25 -7
  606. package/project/.sdk/tm/csharp/utility/MakeFetchDef.cs +1 -5
  607. package/project/.sdk/tm/csharp/utility/MakeOptions.cs +8 -6
  608. package/project/.sdk/tm/csharp/utility/MakePoint.cs +68 -17
  609. package/project/.sdk/tm/csharp/utility/MakeSpec.cs +24 -6
  610. package/project/.sdk/tm/csharp/utility/MakeUrl.cs +21 -1
  611. package/project/.sdk/tm/csharp/utility/Media.cs +124 -0
  612. package/project/.sdk/tm/csharp/utility/Param.cs +57 -20
  613. package/project/.sdk/tm/csharp/utility/PrepareBody.cs +4 -0
  614. package/project/.sdk/tm/csharp/utility/PrepareHeaders.cs +103 -24
  615. package/project/.sdk/tm/csharp/utility/PrepareQuery.cs +33 -3
  616. package/project/.sdk/tm/csharp/utility/ResultBody.cs +5 -0
  617. package/project/.sdk/tm/csharp/utility/TransformRequest.cs +21 -13
  618. package/project/.sdk/tm/csharp/utility/struct/Struct.cs +3 -2
  619. package/project/.sdk/tm/elixir/LICENSE +1 -1
  620. package/project/.sdk/tm/elixir/lib/projectname/context.ex +1 -1
  621. package/project/.sdk/tm/elixir/lib/projectname/core.ex +7 -2
  622. package/project/.sdk/tm/elixir/lib/projectname/entity_base.ex +43 -12
  623. package/project/.sdk/tm/elixir/lib/projectname/feature/test.ex +47 -21
  624. package/project/.sdk/tm/elixir/lib/projectname/feature/validate.ex +2 -0
  625. package/project/.sdk/tm/elixir/lib/projectname/utility.ex +482 -129
  626. package/project/.sdk/tm/elixir/test/support/feature_harness.ex +1 -0
  627. package/project/.sdk/tm/go/LICENSE +1 -1
  628. package/project/.sdk/tm/go/core/context.go +1 -1
  629. package/project/.sdk/tm/go/core/helpers.go +19 -1
  630. package/project/.sdk/tm/go/core/response.go +72 -0
  631. package/project/.sdk/tm/go/core/spec.go +3 -0
  632. package/project/.sdk/tm/go/core/types.go +9 -1
  633. package/project/.sdk/tm/go/feature/test_feature.go +44 -3
  634. package/project/.sdk/tm/go/feature/timeout_feature.go +39 -22
  635. package/project/.sdk/tm/go/feature/validate_feature.go +2 -0
  636. package/project/.sdk/tm/go/test/feature_corpus_test.go +45 -1
  637. package/project/.sdk/tm/go/test/feature_harness_test.go +1 -1
  638. package/project/.sdk/tm/go/test/feature_test.go +86 -0
  639. package/project/.sdk/tm/go/test/primary_utility_test.go +37 -1
  640. package/project/.sdk/tm/go/test/testsupport_test.go +106 -0
  641. package/project/.sdk/tm/go/utility/fetcher.go +20 -6
  642. package/project/.sdk/tm/go/utility/make_fetch_def.go +1 -7
  643. package/project/.sdk/tm/go/utility/make_options.go +12 -6
  644. package/project/.sdk/tm/go/utility/make_point.go +52 -3
  645. package/project/.sdk/tm/go/utility/make_spec.go +23 -3
  646. package/project/.sdk/tm/go/utility/make_url.go +23 -1
  647. package/project/.sdk/tm/go/utility/media.go +111 -0
  648. package/project/.sdk/tm/go/utility/param.go +61 -20
  649. package/project/.sdk/tm/go/utility/prepare_body.go +3 -0
  650. package/project/.sdk/tm/go/utility/prepare_headers.go +108 -22
  651. package/project/.sdk/tm/go/utility/prepare_query.go +25 -2
  652. package/project/.sdk/tm/go/utility/result_body.go +8 -0
  653. package/project/.sdk/tm/go/utility/transform_request.go +20 -9
  654. package/project/.sdk/tm/java/LICENSE +1 -1
  655. package/project/.sdk/tm/java/core/Context.java +1 -1
  656. package/project/.sdk/tm/java/core/Helpers.java +13 -0
  657. package/project/.sdk/tm/java/core/Response.java +61 -0
  658. package/project/.sdk/tm/java/core/SdkClient.java +21 -3
  659. package/project/.sdk/tm/java/core/SdkEntity.java +2 -0
  660. package/project/.sdk/tm/java/core/Spec.java +4 -0
  661. package/project/.sdk/tm/java/feature/TestFeature.java +46 -3
  662. package/project/.sdk/tm/java/feature/TimeoutFeature.java +51 -18
  663. package/project/.sdk/tm/java/feature/ValidateFeature.java +2 -0
  664. package/project/.sdk/tm/java/test/FeatureCorpusTest.java +93 -35
  665. package/project/.sdk/tm/java/test/FeatureHarness.java +1 -0
  666. package/project/.sdk/tm/java/test/FeatureTest.java +33 -0
  667. package/project/.sdk/tm/java/test/PipelineTest.java +4 -1
  668. package/project/.sdk/tm/java/test/RunnerSupport.java +97 -0
  669. package/project/.sdk/tm/java/utility/Clean.java +17 -7
  670. package/project/.sdk/tm/java/utility/Fetcher.java +27 -3
  671. package/project/.sdk/tm/java/utility/MakeFetchDef.java +1 -7
  672. package/project/.sdk/tm/java/utility/MakePoint.java +62 -10
  673. package/project/.sdk/tm/java/utility/MakeSpec.java +26 -1
  674. package/project/.sdk/tm/java/utility/MakeUrl.java +23 -1
  675. package/project/.sdk/tm/java/utility/Media.java +117 -0
  676. package/project/.sdk/tm/java/utility/Param.java +59 -20
  677. package/project/.sdk/tm/java/utility/PrepareBody.java +3 -0
  678. package/project/.sdk/tm/java/utility/PrepareHeaders.java +76 -18
  679. package/project/.sdk/tm/java/utility/PrepareMethod.java +2 -1
  680. package/project/.sdk/tm/java/utility/PrepareQuery.java +26 -2
  681. package/project/.sdk/tm/java/utility/ResultBody.java +5 -0
  682. package/project/.sdk/tm/java/utility/TransformRequest.java +24 -11
  683. package/project/.sdk/tm/js/LICENSE +1 -1
  684. package/project/.sdk/tm/js/src/Context.js +1 -1
  685. package/project/.sdk/tm/js/src/Control.js +1 -0
  686. package/project/.sdk/tm/js/src/Response.js +10 -1
  687. package/project/.sdk/tm/js/src/Spec.js +3 -0
  688. package/project/.sdk/tm/js/src/feature/base/BaseFeature.js +28 -0
  689. package/project/.sdk/tm/js/src/feature/netsim/NetsimFeature.js +10 -8
  690. package/project/.sdk/tm/js/src/feature/ratelimit/RatelimitFeature.js +8 -6
  691. package/project/.sdk/tm/js/src/feature/retry/RetryFeature.js +17 -4
  692. package/project/.sdk/tm/js/src/feature/test/TestFeature.js +40 -12
  693. package/project/.sdk/tm/js/src/feature/timeout/TimeoutFeature.js +17 -3
  694. package/project/.sdk/tm/js/src/feature/validate/ValidateFeature.js +2 -0
  695. package/project/.sdk/tm/js/src/utility/CleanUtility.js +25 -1
  696. package/project/.sdk/tm/js/src/utility/FetcherUtility.js +23 -1
  697. package/project/.sdk/tm/js/src/utility/MakeErrorUtility.js +2 -2
  698. package/project/.sdk/tm/js/src/utility/MakeFetchDefUtility.js +14 -2
  699. package/project/.sdk/tm/js/src/utility/MakeOptionsUtility.js +6 -6
  700. package/project/.sdk/tm/js/src/utility/MakePointUtility.js +39 -2
  701. package/project/.sdk/tm/js/src/utility/MakeRequestUtility.js +27 -2
  702. package/project/.sdk/tm/js/src/utility/MakeResponseUtility.js +2 -1
  703. package/project/.sdk/tm/js/src/utility/MakeSpecUtility.js +14 -1
  704. package/project/.sdk/tm/js/src/utility/MakeUrlUtility.js +23 -0
  705. package/project/.sdk/tm/js/src/utility/MediaUtility.js +145 -0
  706. package/project/.sdk/tm/js/src/utility/ParamUtility.js +46 -18
  707. package/project/.sdk/tm/js/src/utility/PrepareBodyUtility.js +6 -0
  708. package/project/.sdk/tm/js/src/utility/PrepareHeadersUtility.js +55 -14
  709. package/project/.sdk/tm/js/src/utility/PrepareMethodUtility.js +9 -0
  710. package/project/.sdk/tm/js/src/utility/PrepareQueryUtility.js +23 -6
  711. package/project/.sdk/tm/js/src/utility/ResultBodyUtility.js +60 -3
  712. package/project/.sdk/tm/js/src/utility/TransformRequestUtility.js +16 -7
  713. package/project/.sdk/tm/js/test/definition-runner.js +103 -3
  714. package/project/.sdk/tm/js/test/feature/Corpus.test.js +47 -16
  715. package/project/.sdk/tm/js/test/feature/harness.js +4 -1
  716. package/project/.sdk/tm/js/test/feature/secrets/Secrets.test.js +7 -7
  717. package/project/.sdk/tm/js/test/feature.test.js +134 -0
  718. package/project/.sdk/tm/js/test/live-contract.js +73 -3
  719. package/project/.sdk/tm/js/test/live-entity.js +34 -15
  720. package/project/.sdk/tm/js/test/live-runner.js +52 -7
  721. package/project/.sdk/tm/js/test/live-scenarios.js +4 -4
  722. package/project/.sdk/tm/js/test/pipeline.test.js +52 -1
  723. package/project/.sdk/tm/js/test/utility.js +30 -4
  724. package/project/.sdk/tm/kotlin/LICENSE +1 -1
  725. package/project/.sdk/tm/kotlin/core/Context.kt +1 -1
  726. package/project/.sdk/tm/kotlin/core/Helpers.kt +8 -0
  727. package/project/.sdk/tm/kotlin/core/Interfaces.kt +2 -0
  728. package/project/.sdk/tm/kotlin/core/Response.kt +65 -0
  729. package/project/.sdk/tm/kotlin/core/SdkClient.kt +20 -3
  730. package/project/.sdk/tm/kotlin/core/Spec.kt +3 -0
  731. package/project/.sdk/tm/kotlin/feature/TestFeature.kt +23 -3
  732. package/project/.sdk/tm/kotlin/feature/TimeoutFeature.kt +42 -15
  733. package/project/.sdk/tm/kotlin/feature/ValidateFeature.kt +2 -0
  734. package/project/.sdk/tm/kotlin/test/FeatureHarness.kt +1 -1
  735. package/project/.sdk/tm/kotlin/test/FeatureTest.kt +32 -0
  736. package/project/.sdk/tm/kotlin/test/RunnerSupport.kt +90 -0
  737. package/project/.sdk/tm/kotlin/test/ServerVariableTest.kt +50 -0
  738. package/project/.sdk/tm/kotlin/utility/CoreUtil.kt +9 -7
  739. package/project/.sdk/tm/kotlin/utility/Fetcher.kt +24 -4
  740. package/project/.sdk/tm/kotlin/utility/MakeOptions.kt +26 -0
  741. package/project/.sdk/tm/kotlin/utility/MakePoint.kt +57 -12
  742. package/project/.sdk/tm/kotlin/utility/MakeSpecUrl.kt +26 -7
  743. package/project/.sdk/tm/kotlin/utility/Media.kt +83 -0
  744. package/project/.sdk/tm/kotlin/utility/Prepare.kt +127 -48
  745. package/project/.sdk/tm/kotlin/utility/ResultTransform.kt +18 -7
  746. package/project/.sdk/tm/lua/LICENSE +1 -1
  747. package/project/.sdk/tm/lua/core/context.lua +1 -1
  748. package/project/.sdk/tm/lua/core/helpers.lua +103 -0
  749. package/project/.sdk/tm/lua/core/response.lua +3 -0
  750. package/project/.sdk/tm/lua/core/spec.lua +3 -0
  751. package/project/.sdk/tm/lua/feature/test_feature.lua +36 -3
  752. package/project/.sdk/tm/lua/feature/validate_feature.lua +2 -0
  753. package/project/.sdk/tm/lua/test/feature_test.lua +1 -1
  754. package/project/.sdk/tm/lua/test/runner.lua +107 -0
  755. package/project/.sdk/tm/lua/utility/fetcher.lua +9 -2
  756. package/project/.sdk/tm/lua/utility/make_fetch_def.lua +2 -6
  757. package/project/.sdk/tm/lua/utility/make_options.lua +10 -7
  758. package/project/.sdk/tm/lua/utility/make_point.lua +65 -12
  759. package/project/.sdk/tm/lua/utility/make_spec.lua +19 -4
  760. package/project/.sdk/tm/lua/utility/make_url.lua +22 -1
  761. package/project/.sdk/tm/lua/utility/media.lua +106 -0
  762. package/project/.sdk/tm/lua/utility/param.lua +5 -45
  763. package/project/.sdk/tm/lua/utility/prepare_body.lua +5 -0
  764. package/project/.sdk/tm/lua/utility/prepare_headers.lua +71 -21
  765. package/project/.sdk/tm/lua/utility/prepare_query.lua +28 -6
  766. package/project/.sdk/tm/lua/utility/result_body.lua +7 -0
  767. package/project/.sdk/tm/lua/utility/transform_request.lua +23 -10
  768. package/project/.sdk/tm/lua/utility/unreadable_body.lua +70 -0
  769. package/project/.sdk/tm/ocaml/LICENSE +1 -1
  770. package/project/.sdk/tm/ocaml/sdk_features.ml +56 -10
  771. package/project/.sdk/tm/ocaml/sdk_helpers.ml +9 -0
  772. package/project/.sdk/tm/ocaml/sdk_runtime.ml +359 -85
  773. package/project/.sdk/tm/ocaml/sdk_types.ml +6 -0
  774. package/project/.sdk/tm/ocaml/test/harness.ml +1 -1
  775. package/project/.sdk/tm/ocaml/test/t_pipeline.ml +2 -1
  776. package/project/.sdk/tm/perl/LICENSE +1 -1
  777. package/project/.sdk/tm/perl/core/context.pm +1 -1
  778. package/project/.sdk/tm/perl/core/response.pm +2 -0
  779. package/project/.sdk/tm/perl/core/spec.pm +3 -0
  780. package/project/.sdk/tm/perl/feature/test_feature.pm +26 -3
  781. package/project/.sdk/tm/perl/feature/validate_feature.pm +2 -0
  782. package/project/.sdk/tm/perl/t/feature.t +1 -1
  783. package/project/.sdk/tm/perl/t/feature_corpus.t +72 -33
  784. package/project/.sdk/tm/perl/t/runner.pm +86 -0
  785. package/project/.sdk/tm/perl/t/server_variables.t +39 -0
  786. package/project/.sdk/tm/perl/utility/clean.pm +12 -7
  787. package/project/.sdk/tm/perl/utility/fetcher.pm +32 -19
  788. package/project/.sdk/tm/perl/utility/make_fetch_def.pm +4 -4
  789. package/project/.sdk/tm/perl/utility/make_options.pm +24 -0
  790. package/project/.sdk/tm/perl/utility/make_point.pm +55 -9
  791. package/project/.sdk/tm/perl/utility/make_spec.pm +27 -3
  792. package/project/.sdk/tm/perl/utility/make_url.pm +13 -1
  793. package/project/.sdk/tm/perl/utility/media.pm +109 -0
  794. package/project/.sdk/tm/perl/utility/param.pm +50 -24
  795. package/project/.sdk/tm/perl/utility/prepare_body.pm +11 -3
  796. package/project/.sdk/tm/perl/utility/prepare_headers.pm +63 -16
  797. package/project/.sdk/tm/perl/utility/prepare_method.pm +13 -0
  798. package/project/.sdk/tm/perl/utility/prepare_query.pm +18 -4
  799. package/project/.sdk/tm/perl/utility/result_body.pm +60 -0
  800. package/project/.sdk/tm/perl/utility/transform_request.pm +23 -8
  801. package/project/.sdk/tm/php/LICENSE +1 -1
  802. package/project/.sdk/tm/php/core/Context.php +1 -1
  803. package/project/.sdk/tm/php/core/Response.php +3 -0
  804. package/project/.sdk/tm/php/core/Spec.php +4 -0
  805. package/project/.sdk/tm/php/feature/CostFeature.php +2 -7
  806. package/project/.sdk/tm/php/feature/TestFeature.php +33 -3
  807. package/project/.sdk/tm/php/feature/ValidateFeature.php +14 -12
  808. package/project/.sdk/tm/php/test/FeatureCorpusTest.php +90 -35
  809. package/project/.sdk/tm/php/test/FeatureTest.php +4 -5
  810. package/project/.sdk/tm/php/test/PipelineTest.php +18 -1
  811. package/project/.sdk/tm/php/test/Runner.php +86 -0
  812. package/project/.sdk/tm/php/utility/Clean.php +10 -5
  813. package/project/.sdk/tm/php/utility/Fetcher.php +48 -6
  814. package/project/.sdk/tm/php/utility/MakeFetchDef.php +2 -1
  815. package/project/.sdk/tm/php/utility/MakePoint.php +55 -11
  816. package/project/.sdk/tm/php/utility/MakeSpec.php +21 -4
  817. package/project/.sdk/tm/php/utility/MakeUrl.php +16 -1
  818. package/project/.sdk/tm/php/utility/Media.php +111 -0
  819. package/project/.sdk/tm/php/utility/Param.php +66 -27
  820. package/project/.sdk/tm/php/utility/PrepareBody.php +5 -0
  821. package/project/.sdk/tm/php/utility/PrepareHeaders.php +83 -23
  822. package/project/.sdk/tm/php/utility/PrepareMethod.php +15 -0
  823. package/project/.sdk/tm/php/utility/PrepareQuery.php +22 -8
  824. package/project/.sdk/tm/php/utility/ResultBody.php +71 -0
  825. package/project/.sdk/tm/php/utility/TransformRequest.php +22 -11
  826. package/project/.sdk/tm/py/LICENSE +1 -1
  827. package/project/.sdk/tm/py/pkg/core/context.py +1 -1
  828. package/project/.sdk/tm/py/pkg/core/response.py +3 -0
  829. package/project/.sdk/tm/py/pkg/core/spec.py +3 -0
  830. package/project/.sdk/tm/py/pkg/feature/test_feature.py +27 -3
  831. package/project/.sdk/tm/py/pkg/feature/validate_feature.py +2 -0
  832. package/project/.sdk/tm/py/pkg/utility/fetcher.py +17 -7
  833. package/project/.sdk/tm/py/pkg/utility/make_fetch_def.py +2 -5
  834. package/project/.sdk/tm/py/pkg/utility/make_options.py +14 -8
  835. package/project/.sdk/tm/py/pkg/utility/make_point.py +40 -4
  836. package/project/.sdk/tm/py/pkg/utility/make_spec.py +12 -4
  837. package/project/.sdk/tm/py/pkg/utility/make_url.py +19 -1
  838. package/project/.sdk/tm/py/pkg/utility/media.py +88 -0
  839. package/project/.sdk/tm/py/pkg/utility/param.py +47 -18
  840. package/project/.sdk/tm/py/pkg/utility/prepare_body.py +4 -0
  841. package/project/.sdk/tm/py/pkg/utility/prepare_headers.py +56 -20
  842. package/project/.sdk/tm/py/pkg/utility/prepare_method.py +7 -0
  843. package/project/.sdk/tm/py/pkg/utility/prepare_query.py +17 -8
  844. package/project/.sdk/tm/py/pkg/utility/result_body.py +51 -0
  845. package/project/.sdk/tm/py/pkg/utility/transform_request.py +18 -9
  846. package/project/.sdk/tm/py/test/feature_harness.py +1 -1
  847. package/project/.sdk/tm/py/test/runner.py +77 -2
  848. package/project/.sdk/tm/py/test/test_feature_corpus.py +69 -32
  849. package/project/.sdk/tm/py-data/LICENSE +1 -1
  850. package/project/.sdk/tm/py-data/Makefile +2 -2
  851. package/project/.sdk/tm/rb/LICENSE +1 -1
  852. package/project/.sdk/tm/rb/core/context.rb +1 -1
  853. package/project/.sdk/tm/rb/core/response.rb +3 -1
  854. package/project/.sdk/tm/rb/core/spec.rb +4 -1
  855. package/project/.sdk/tm/rb/feature/test_feature.rb +27 -8
  856. package/project/.sdk/tm/rb/feature/validate_feature.rb +3 -1
  857. package/project/.sdk/tm/rb/test/feature_corpus_test.rb +74 -30
  858. package/project/.sdk/tm/rb/test/feature_test.rb +1 -1
  859. package/project/.sdk/tm/rb/test/runner.rb +54 -2
  860. package/project/.sdk/tm/rb/utility/clean.rb +14 -6
  861. package/project/.sdk/tm/rb/utility/fetcher.rb +22 -14
  862. package/project/.sdk/tm/rb/utility/make_fetch_def.rb +2 -4
  863. package/project/.sdk/tm/rb/utility/make_point.rb +44 -8
  864. package/project/.sdk/tm/rb/utility/make_spec.rb +14 -2
  865. package/project/.sdk/tm/rb/utility/make_url.rb +13 -1
  866. package/project/.sdk/tm/rb/utility/media.rb +75 -0
  867. package/project/.sdk/tm/rb/utility/param.rb +44 -25
  868. package/project/.sdk/tm/rb/utility/prepare_body.rb +4 -1
  869. package/project/.sdk/tm/rb/utility/prepare_headers.rb +50 -16
  870. package/project/.sdk/tm/rb/utility/prepare_method.rb +6 -0
  871. package/project/.sdk/tm/rb/utility/prepare_query.rb +12 -4
  872. package/project/.sdk/tm/rb/utility/result_body.rb +45 -0
  873. package/project/.sdk/tm/rb/utility/transform_request.rb +17 -7
  874. package/project/.sdk/tm/rust/LICENSE +1 -1
  875. package/project/.sdk/tm/rust/core/context.rs +1 -1
  876. package/project/.sdk/tm/rust/core/helpers.rs +10 -0
  877. package/project/.sdk/tm/rust/core/response.rs +80 -1
  878. package/project/.sdk/tm/rust/core/spec.rs +4 -0
  879. package/project/.sdk/tm/rust/core/types.rs +1 -0
  880. package/project/.sdk/tm/rust/feature/test.rs +29 -2
  881. package/project/.sdk/tm/rust/feature/validate.rs +2 -0
  882. package/project/.sdk/tm/rust/tests/common/mod.rs +108 -1
  883. package/project/.sdk/tm/rust/utility/clean.rs +0 -2
  884. package/project/.sdk/tm/rust/utility/fetcher.rs +19 -11
  885. package/project/.sdk/tm/rust/utility/make_fetch_def.rs +12 -1
  886. package/project/.sdk/tm/rust/utility/make_options.rs +6 -5
  887. package/project/.sdk/tm/rust/utility/make_point.rs +80 -16
  888. package/project/.sdk/tm/rust/utility/make_spec.rs +23 -4
  889. package/project/.sdk/tm/rust/utility/make_url.rs +39 -2
  890. package/project/.sdk/tm/rust/utility/media.rs +116 -0
  891. package/project/.sdk/tm/rust/utility/mod.rs +1 -0
  892. package/project/.sdk/tm/rust/utility/param.rs +66 -19
  893. package/project/.sdk/tm/rust/utility/prepare_body.rs +4 -0
  894. package/project/.sdk/tm/rust/utility/prepare_headers.rs +85 -28
  895. package/project/.sdk/tm/rust/utility/prepare_query.rs +27 -5
  896. package/project/.sdk/tm/rust/utility/result_body.rs +15 -2
  897. package/project/.sdk/tm/rust/utility/transform_request.rs +27 -14
  898. package/project/.sdk/tm/scala/LICENSE +1 -1
  899. package/project/.sdk/tm/scala/Makefile +3 -1
  900. package/project/.sdk/tm/scala/core/Context.scala +1 -1
  901. package/project/.sdk/tm/scala/core/Contracts.scala +1 -0
  902. package/project/.sdk/tm/scala/core/Helpers.scala +7 -0
  903. package/project/.sdk/tm/scala/core/Response.scala +55 -0
  904. package/project/.sdk/tm/scala/core/SdkClient.scala +18 -5
  905. package/project/.sdk/tm/scala/core/Spec.scala +3 -0
  906. package/project/.sdk/tm/scala/feature/TestFeature.scala +36 -3
  907. package/project/.sdk/tm/scala/feature/TimeoutFeature.scala +39 -13
  908. package/project/.sdk/tm/scala/feature/ValidateFeature.scala +2 -0
  909. package/project/.sdk/tm/scala/sdktest/SdkTestMain.scala +16 -1
  910. package/project/.sdk/tm/scala/sdktest/ServerVariableTest.scala +49 -0
  911. package/project/.sdk/tm/scala/sdktest/feature/secrets/SecretsTestMain.scala +1 -0
  912. package/project/.sdk/tm/scala/utility/Fetcher.scala +17 -2
  913. package/project/.sdk/tm/scala/utility/Make.scala +141 -43
  914. package/project/.sdk/tm/scala/utility/MakeSpec.scala +20 -2
  915. package/project/.sdk/tm/scala/utility/Media.scala +96 -0
  916. package/project/.sdk/tm/scala/utility/Misc.scala +56 -23
  917. package/project/.sdk/tm/scala/utility/Prepare.scala +84 -31
  918. package/project/.sdk/tm/scala/utility/Results.scala +5 -0
  919. package/project/.sdk/tm/scala/utility/Transform.scala +15 -19
  920. package/project/.sdk/tm/swift/LICENSE +1 -1
  921. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/core/Context.swift +1 -1
  922. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/core/Response.swift +57 -0
  923. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/core/Spec.swift +3 -0
  924. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/core/Support.swift +8 -0
  925. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/TestFeature.swift +34 -3
  926. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/TimeoutFeature.swift +19 -3
  927. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/ValidateFeature.swift +2 -0
  928. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/utility/Fetcher.swift +21 -12
  929. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/utility/Make.swift +85 -18
  930. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/utility/MakeOptions.swift +73 -7
  931. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/utility/Media.swift +76 -0
  932. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/utility/Prepare.swift +118 -43
  933. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/utility/ResultUtil.swift +18 -8
  934. package/project/.sdk/tm/swift/Tests/ProjectNameSDKTests/FeatureTest.swift +31 -1
  935. package/project/.sdk/tm/swift/Tests/ProjectNameSDKTests/PrimaryUtilityTest.swift +6 -0
  936. package/project/.sdk/tm/swift/Tests/ProjectNameSDKTests/ServerVariableTest.swift +42 -0
  937. package/project/.sdk/tm/ts/LICENSE +1 -1
  938. package/project/.sdk/tm/ts/src/Context.ts +1 -1
  939. package/project/.sdk/tm/ts/src/Control.ts +3 -0
  940. package/project/.sdk/tm/ts/src/Response.ts +10 -1
  941. package/project/.sdk/tm/ts/src/Spec.ts +4 -0
  942. package/project/.sdk/tm/ts/src/feature/base/BaseFeature.ts +28 -0
  943. package/project/.sdk/tm/ts/src/feature/netsim/NetsimFeature.ts +10 -8
  944. package/project/.sdk/tm/ts/src/feature/ratelimit/RatelimitFeature.ts +8 -6
  945. package/project/.sdk/tm/ts/src/feature/retry/RetryFeature.ts +17 -4
  946. package/project/.sdk/tm/ts/src/feature/test/TestFeature.ts +41 -13
  947. package/project/.sdk/tm/ts/src/feature/timeout/TimeoutFeature.ts +17 -3
  948. package/project/.sdk/tm/ts/src/feature/validate/ValidateFeature.ts +2 -0
  949. package/project/.sdk/tm/ts/src/tsconfig.json +2 -1
  950. package/project/.sdk/tm/ts/src/utility/CleanUtility.ts +25 -1
  951. package/project/.sdk/tm/ts/src/utility/FetcherUtility.ts +24 -1
  952. package/project/.sdk/tm/ts/src/utility/MakeErrorUtility.ts +2 -2
  953. package/project/.sdk/tm/ts/src/utility/MakeFetchDefUtility.ts +15 -2
  954. package/project/.sdk/tm/ts/src/utility/MakeOptionsUtility.ts +6 -6
  955. package/project/.sdk/tm/ts/src/utility/MakePointUtility.ts +38 -2
  956. package/project/.sdk/tm/ts/src/utility/MakeRequestUtility.ts +29 -2
  957. package/project/.sdk/tm/ts/src/utility/MakeResponseUtility.ts +3 -1
  958. package/project/.sdk/tm/ts/src/utility/MakeSpecUtility.ts +16 -6
  959. package/project/.sdk/tm/ts/src/utility/MakeUrlUtility.ts +16 -2
  960. package/project/.sdk/tm/ts/src/utility/MediaUtility.ts +143 -0
  961. package/project/.sdk/tm/ts/src/utility/ParamUtility.ts +50 -18
  962. package/project/.sdk/tm/ts/src/utility/PrepareBodyUtility.ts +6 -0
  963. package/project/.sdk/tm/ts/src/utility/PrepareHeadersUtility.ts +53 -11
  964. package/project/.sdk/tm/ts/src/utility/PrepareMethodUtility.ts +9 -0
  965. package/project/.sdk/tm/ts/src/utility/PrepareQueryUtility.ts +22 -6
  966. package/project/.sdk/tm/ts/src/utility/ResultBodyUtility.ts +68 -3
  967. package/project/.sdk/tm/ts/src/utility/TransformRequestUtility.ts +16 -6
  968. package/project/.sdk/tm/ts/test/definition-runner.ts +109 -3
  969. package/project/.sdk/tm/ts/test/feature/Corpus.test.ts +47 -16
  970. package/project/.sdk/tm/ts/test/feature/harness.ts +4 -1
  971. package/project/.sdk/tm/ts/test/feature/secrets/Secrets.test.ts +1 -1
  972. package/project/.sdk/tm/ts/test/feature.test.ts +134 -0
  973. package/project/.sdk/tm/ts/test/live-contract.ts +60 -2
  974. package/project/.sdk/tm/ts/test/live-entity.ts +36 -12
  975. package/project/.sdk/tm/ts/test/live-runner.ts +79 -12
  976. package/project/.sdk/tm/ts/test/live-scenarios.ts +5 -4
  977. package/project/.sdk/tm/ts/test/pipeline.test.ts +52 -1
  978. package/project/.sdk/tm/ts/test/tsconfig.json +2 -1
  979. package/project/.sdk/tm/ts/test/utility.ts +35 -7
  980. package/project/.sdk/tm/zig/LICENSE +1 -1
  981. package/project/.sdk/tm/zig/core/context.zig +2 -1
  982. package/project/.sdk/tm/zig/core/helpers.zig +33 -0
  983. package/project/.sdk/tm/zig/core/response.zig +3 -0
  984. package/project/.sdk/tm/zig/core/spec.zig +27 -0
  985. package/project/.sdk/tm/zig/core/types.zig +6 -0
  986. package/project/.sdk/tm/zig/core/utility.zig +456 -84
  987. package/project/.sdk/tm/zig/feature/test.zig +31 -2
  988. package/project/.sdk/tm/zig/feature/validate.zig +2 -0
  989. package/project/.sdk/tm/zig/test/fh.zig +1 -1
  990. package/project/sdkgen-package.json +1 -1
  991. package/src/action/copies.ts +179 -46
  992. package/src/action/doctor.ts +13 -3
  993. package/src/action/package.ts +17 -9
  994. package/src/action/resolve.ts +41 -0
  995. package/src/admin/npm-trust.ts +9 -8
  996. package/src/cmp/AgentGuide.ts +4 -3
  997. package/src/cmp/AgentGuideFeature.ts +3 -2
  998. package/src/cmp/AgentGuideTop.ts +2 -1
  999. package/src/cmp/Changelog.ts +2 -1
  1000. package/src/cmp/Deploy.ts +2 -1
  1001. package/src/cmp/Entity.ts +1 -3
  1002. package/src/cmp/ExternalTarget.ts +2 -1
  1003. package/src/cmp/Feature.ts +2 -1
  1004. package/src/cmp/FeatureHook.ts +2 -1
  1005. package/src/cmp/License.ts +7 -5
  1006. package/src/cmp/Main.ts +2 -1
  1007. package/src/cmp/PublishWorkflow.ts +2 -1
  1008. package/src/cmp/Readme.ts +2 -1
  1009. package/src/cmp/ReadmeEntity.ts +3 -3
  1010. package/src/cmp/ReadmeErrors.ts +6 -4
  1011. package/src/cmp/ReadmeExplanation.ts +4 -3
  1012. package/src/cmp/ReadmeFeatures.ts +4 -3
  1013. package/src/cmp/ReadmeHowto.ts +4 -3
  1014. package/src/cmp/ReadmeInstall.ts +4 -3
  1015. package/src/cmp/ReadmeIntro.ts +3 -3
  1016. package/src/cmp/ReadmeModel.ts +6 -3
  1017. package/src/cmp/ReadmeOptions.ts +3 -3
  1018. package/src/cmp/ReadmeQuick.ts +4 -3
  1019. package/src/cmp/ReadmeRef.ts +3 -3
  1020. package/src/cmp/ReadmeRefFeatures.ts +2 -1
  1021. package/src/cmp/ReadmeStation.ts +2 -1
  1022. package/src/cmp/ReadmeTop.ts +121 -37
  1023. package/src/cmp/ReadmeUnions.ts +2 -1
  1024. package/src/cmp/Registered.ts +4 -4
  1025. package/src/cmp/Security.ts +14 -7
  1026. package/src/cmp/Test.ts +2 -1
  1027. package/src/cmp/TestControl.ts +1 -1
  1028. package/src/helpers/component.ts +25 -0
  1029. package/src/helpers/definition.ts +2 -2
  1030. package/src/helpers/definitionPlan.ts +135 -13
  1031. package/src/helpers/featureSource.ts +55 -2
  1032. package/src/helpers/flowGuard.ts +111 -0
  1033. package/src/helpers/generated.ts +488 -0
  1034. package/src/helpers/mcpTools.ts +47 -0
  1035. package/src/helpers/media.ts +79 -0
  1036. package/src/helpers/modelNames.ts +186 -16
  1037. package/src/helpers/naming.ts +188 -0
  1038. package/src/helpers/npm.ts +68 -0
  1039. package/src/helpers/npmScripts.ts +37 -0
  1040. package/src/helpers/opExample.ts +19 -11
  1041. package/src/helpers/opShape.ts +235 -29
  1042. package/src/helpers/optional.ts +76 -0
  1043. package/src/helpers/packageMeta.ts +83 -11
  1044. package/src/helpers/stdrep.ts +5 -1
  1045. package/src/helpers/testPolicy.ts +68 -1
  1046. package/src/helpers/text.ts +33 -0
  1047. package/src/sdkgen.ts +97 -14
  1048. package/src/testkit.ts +2 -1
  1049. package/src/utility.ts +41 -19
  1050. package/project/.sdk/src/cmp/go/fragment/SdkError.fragment.go +0 -22
  1051. package/project/.sdk/src/cmp/lua/fragment/SdkError.fragment.lua +0 -38
  1052. package/project/.sdk/src/cmp/perl/fragment/SdkError.fragment.pm +0 -27
  1053. package/project/.sdk/src/cmp/php/fragment/SdkError.fragment.php +0 -35
  1054. package/project/.sdk/src/cmp/py/fragment/SdkError.fragment.py +0 -27
  1055. package/project/.sdk/src/cmp/rb/fragment/SdkError.fragment.rb +0 -25
@@ -95,7 +95,7 @@ object PrepareAuth {
95
95
  val CRED_NAME = "${scalastr(spec.name)}"
96
96
  val OPTION_APIKEY = "apikey"
97
97
  ${spec.basic ? ` val OPTION_SECRET = "secret"\n` : ''} val NOT_FOUND = "__NOTFOUND__"
98
-
98
+ ${authName(true)}
99
99
  def prepareAuth(ctx: Context): Spec = {
100
100
  val spec = ctx.spec
101
101
  if (spec == null) throw ctx.makeError("auth_no_spec", "Expected context spec property to be defined.")
@@ -109,6 +109,13 @@ ${spec.basic ? ` val OPTION_SECRET = "secret"\n` : ''} val NOT_FOUND = "__NOTF
109
109
  return spec
110
110
  }
111
111
 
112
+ val name = authName(options)
113
+
114
+ // A credential left under the declared name would travel beside the renamed one.
115
+ if (name != CRED_NAME) {
116
+ headers.remove(CRED_NAME)
117
+ }
118
+
112
119
  val apikey = Struct.getprop(options, OPTION_APIKEY, NOT_FOUND)
113
120
  ${basicBlock(spec)}
114
121
  var skip = false
@@ -119,15 +126,15 @@ ${basicBlock(spec)}
119
126
  }
120
127
 
121
128
  if (skip) {
122
- headers.remove(CRED_NAME)
129
+ headers.remove(name)
123
130
  } else {
124
131
  var authPrefix = ""
125
132
  Struct.getpath(options, java.util.List.of("auth", "prefix")) match { case s: String => authPrefix = s; case _ => }
126
133
  val apikeyVal = apikey match { case s: String => s; case _ => "" }
127
134
  // A raw credential (empty prefix, e.g. an apiKey scheme) must go in
128
135
  // as-is; only a non-empty prefix (Bearer/Basic/OAuth) is space-joined.
129
- if ("" == authPrefix) headers.put(CRED_NAME, apikeyVal)
130
- else headers.put(CRED_NAME, authPrefix + " " + apikeyVal)
136
+ if ("" == authPrefix) headers.put(name, apikeyVal)
137
+ else headers.put(name, authPrefix + " " + apikeyVal)
131
138
  }
132
139
 
133
140
  spec
@@ -157,7 +164,7 @@ function basicBlock(spec: AuthSpec): string {
157
164
  val noSecret = secret == null || (secret match { case s: String => NOT_FOUND == s || "" == s; case _ => false })
158
165
 
159
166
  if (noApikey) {
160
- headers.remove(CRED_NAME)
167
+ headers.remove(name)
161
168
  } else {
162
169
  var basicPrefix = ""
163
170
  Struct.getpath(options, java.util.List.of("auth", "prefix")) match { case s: String => basicPrefix = s; case _ => }
@@ -167,8 +174,8 @@ function basicBlock(spec: AuthSpec): string {
167
174
  // The joined, encoded pair is a wire form neither credential's own
168
175
  // registration covers.
169
176
  if (ctx.utility != null && ctx.utility.cleanAdd != null) ctx.utility.cleanAdd(ctx, b64)
170
- if ("" == basicPrefix) headers.put(CRED_NAME, b64)
171
- else headers.put(CRED_NAME, basicPrefix + " " + b64)
177
+ if ("" == basicPrefix) headers.put(name, b64)
178
+ else headers.put(name, basicPrefix + " " + b64)
172
179
  }
173
180
 
174
181
  return spec
@@ -188,7 +195,7 @@ object PrepareAuth {
188
195
  val CRED_NAME = "${scalastr(spec.name)}"
189
196
  val OPTION_APIKEY = "apikey"
190
197
  val NOT_FOUND = "__NOTFOUND__"
191
-
198
+ ${authName(false)}
192
199
  def prepareAuth(ctx: Context): Spec = {
193
200
  val spec = ctx.spec
194
201
  if (spec == null) throw ctx.makeError("auth_no_spec", "Expected context spec property to be defined.")
@@ -202,6 +209,13 @@ object PrepareAuth {
202
209
  return spec
203
210
  }
204
211
 
212
+ val name = authName(options)
213
+
214
+ // A credential left under the declared name would travel beside the renamed one.
215
+ if (name != CRED_NAME) {
216
+ query.remove(CRED_NAME)
217
+ }
218
+
205
219
  val apikey = Struct.getprop(options, OPTION_APIKEY, NOT_FOUND)
206
220
 
207
221
  var skip = false
@@ -212,14 +226,14 @@ object PrepareAuth {
212
226
  }
213
227
 
214
228
  if (skip) {
215
- query.remove(CRED_NAME)
229
+ query.remove(name)
216
230
  } else {
217
231
  val apikeyVal = apikey match { case s: String => s; case _ => "" }
218
232
  // NO PREFIX IN A QUERY STRING. \`?${spec.name}=Bearer%20abc\` is not a
219
233
  // thing any API reads: the prefix is a header convention, so the
220
234
  // options auth.prefix is dropped here deliberately rather than
221
235
  // silently concatenated.
222
- query.put(CRED_NAME, apikeyVal)
236
+ query.put(name, apikeyVal)
223
237
  }
224
238
 
225
239
  spec
@@ -243,21 +257,18 @@ object PrepareAuth {
243
257
  val CRED_NAME = "${scalastr(spec.name)}"
244
258
  val OPTION_APIKEY = "apikey"
245
259
  val NOT_FOUND = "__NOTFOUND__"
246
-
247
- // The cookie header minus our own pair, every other cookie untouched.
248
- private def without(headers: JMap[String, Object]): String = {
260
+ ${authName(false)}
261
+ // The cookie header minus the named pair, every other cookie untouched.
262
+ private def without(headers: JMap[String, Object], name: String): String = {
249
263
  val existing = headers.get(COOKIE_HEADER) match { case s: String => s; case _ => "" }
250
264
  if ("" == existing) return ""
251
265
 
252
- val kept = existing.split(";").map(_.trim).filter { piece =>
253
- "" != piece && CRED_NAME != piece && !piece.startsWith(CRED_NAME + "=")
254
- }
255
- kept.mkString("; ")
266
+ PrepareHeaders.cookieKeep(existing, Seq(name)).mkString("; ")
256
267
  }
257
268
 
258
- // Set (a value) or remove (null) our pair, leaving the rest in place.
259
- private def place(headers: JMap[String, Object], value: String): Unit = {
260
- val rest = without(headers)
269
+ // Set (a value) or remove (null) the named pair, leaving the rest in place.
270
+ private def place(headers: JMap[String, Object], name: String, value: String): Unit = {
271
+ val rest = without(headers, name)
261
272
 
262
273
  if (value == null) {
263
274
  if ("" == rest) headers.remove(COOKIE_HEADER)
@@ -265,7 +276,7 @@ object PrepareAuth {
265
276
  return
266
277
  }
267
278
 
268
- val pair = CRED_NAME + "=" + value
279
+ val pair = name + "=" + value
269
280
  if ("" == rest) headers.put(COOKIE_HEADER, pair)
270
281
  else headers.put(COOKIE_HEADER, rest + "; " + pair)
271
282
  }
@@ -279,10 +290,17 @@ object PrepareAuth {
279
290
 
280
291
  // Public APIs that need no auth omit the options.auth block entirely.
281
292
  if (options.get("auth") == null) {
282
- place(headers, null)
293
+ place(headers, CRED_NAME, null)
283
294
  return spec
284
295
  }
285
296
 
297
+ val name = authName(options)
298
+
299
+ // A credential left under the declared name would travel beside the renamed one.
300
+ if (name != CRED_NAME) {
301
+ place(headers, CRED_NAME, null)
302
+ }
303
+
286
304
  val apikey = Struct.getprop(options, OPTION_APIKEY, NOT_FOUND)
287
305
 
288
306
  var skip = false
@@ -293,12 +311,12 @@ object PrepareAuth {
293
311
  }
294
312
 
295
313
  if (skip) {
296
- place(headers, null)
314
+ place(headers, name, null)
297
315
  } else {
298
316
  val apikeyVal = apikey match { case s: String => s; case _ => "" }
299
317
  // NO PREFIX IN A COOKIE either - a cookie carries a bare
300
318
  // \`name=value\` pair, not a header's scheme-prefixed credential.
301
- place(headers, apikeyVal)
319
+ place(headers, name, apikeyVal)
302
320
  }
303
321
 
304
322
  spec
@@ -308,6 +326,20 @@ object PrepareAuth {
308
326
  }
309
327
 
310
328
 
329
+ // The client's `auth.name` option, when set, replaces the declared name; a
330
+ // header name travels lower-cased.
331
+ function authName(header: boolean): string {
332
+ return `
333
+ // The client's auth.name option, when set, replaces the name the API declares.
334
+ private def authName(options: Object): String =
335
+ Struct.getpath(options, java.util.List.of("auth", "name")) match {
336
+ case s: String if "" != s => ${header ? 's.toLowerCase(java.util.Locale.ROOT)' : 's'}
337
+ case _ => CRED_NAME
338
+ }
339
+ `
340
+ }
341
+
342
+
311
343
  function scalastr(s: string): string {
312
344
  return String(s).replace(/\\/g, '\\\\').replace(/"/g, '\\"')
313
345
  }
@@ -1,5 +1,5 @@
1
1
 
2
- import { cmp, each, Content, canonToType, canonKey, canonScalarKey, entityIdField, opRequestShape } from '@voxgig/sdkgen'
2
+ import { cmp, each, Content, canonToType, canonKey, canonScalarKey, entityIdField, opRequestShape, opNeedsAction } from '@voxgig/sdkgen'
3
3
 
4
4
  import {
5
5
  KIT,
@@ -29,6 +29,7 @@ const OP_DESC: Record<string, { method: string, desc: string }> = {
29
29
  list: { method: 'list(null, null)', desc: 'List entities, optionally matching the given criteria.' },
30
30
  create: { method: 'create(data, null)', desc: 'Create a new entity with the given data.' },
31
31
  update: { method: 'update(data, null)', desc: 'Update an existing entity.' },
32
+ patch: { method: 'patch(data, null)', desc: 'Change part of an existing entity.' },
32
33
  remove: { method: 'remove(match, null)', desc: 'Remove the matching entity.' },
33
34
  }
34
35
 
@@ -54,6 +55,8 @@ const ReadmeEntity = cmp(function ReadmeEntity(props: any) {
54
55
 
55
56
  publishedEntities.map((entity: any) => {
56
57
  const opnames = Object.keys(entity.op || {})
58
+ // An op that needs an action has no plain call to show.
59
+ const callable = opnames.filter((o: string) => !opNeedsAction(entity.op[o]))
57
60
  const fields = Object.values(entity.fields || {})
58
61
  // Model-driven id key: null when this entity has no id-like field.
59
62
  const idF = entityIdField(entity)
@@ -112,7 +115,7 @@ const ReadmeEntity = cmp(function ReadmeEntity(props: any) {
112
115
  `)
113
116
  }
114
117
 
115
- if (opnames.includes('load')) {
118
+ if (callable.includes('load')) {
116
119
  // The id key plus every REQUIRED match key (parent path params like
117
120
  // page_id) — the same shape the runtime resolves path params from, so
118
121
  // the example always works.
@@ -134,7 +137,7 @@ val ${eVar} = client.${accessor}(null).load(${loadArg}, null)
134
137
  `)
135
138
  }
136
139
 
137
- if (opnames.includes('list')) {
140
+ if (callable.includes('list')) {
138
141
  Content(`#### Example: List
139
142
 
140
143
  \`\`\`scala
@@ -144,7 +147,7 @@ val ${eVar}List = client.${accessor}(null).list(null, null)
144
147
  `)
145
148
  }
146
149
 
147
- if (opnames.includes('create')) {
150
+ if (callable.includes('create')) {
148
151
  // Members come from the SAME shape the runtime validates
149
152
  // (opRequestShape): every required member must appear — including a
150
153
  // required id and parent keys like page_id — with a real literal.
@@ -39,7 +39,7 @@ const ReadmeHowto = cmp(function ReadmeHowto(props: any) {
39
39
  let testArg = 'null'
40
40
  if (exampleEntity && isMatchOp) {
41
41
  testArg = idF ? `java.util.Map.of("${idF}", "test01")` : 'null'
42
- } else if (exampleEntity && ('create' === primaryOp || 'update' === primaryOp)) {
42
+ } else if (exampleEntity && ('create' === primaryOp || 'update' === primaryOp || 'patch' === primaryOp)) {
43
43
  const items = opRequestShape(exampleEntity, primaryOp).items
44
44
  .filter((it: any) => it.name !== idF && it.name !== 'id')
45
45
  const required = items.filter((it: any) => !it.optional)
@@ -38,11 +38,11 @@ cd scala && scala-cli compile .
38
38
  // dependency-free, plain-source scala-cli project (no sbt/mill build, no
39
39
  // third-party runtime deps), so install it from the git release tag or a
40
40
  // local source checkout and compile with scala-cli.
41
- const { releasesUrl } = repoInfo(model)
41
+ const { hostName, tagsUrl } = repoInfo(model)
42
42
  Content(`This package is not yet published to Maven Central. The generated SDK is a
43
43
  plain-source scala-cli project (no build tool, no third-party runtime
44
- dependencies). Install it from the GitHub release tag
45
- (\`${target.name}/vX.Y.Z\`, see [Releases](${releasesUrl})) or from a source
44
+ dependencies). Install it from the ${hostName} release tag
45
+ (\`${target.name}/vX.Y.Z\`, see [Tags](${tagsUrl})) or from a source
46
46
  checkout — compile it with scala-cli:
47
47
 
48
48
  \`\`\`bash
@@ -1,5 +1,5 @@
1
1
 
2
- import { cmp, Content } from '@voxgig/sdkgen'
2
+ import { cmp, Content, modelText } from '@voxgig/sdkgen'
3
3
 
4
4
  import {
5
5
  KIT,
@@ -11,7 +11,7 @@ import { scalaVarName } from './utility_scala'
11
11
 
12
12
  const ReadmeIntro = cmp(function ReadmeIntro(props: any) {
13
13
  const { target, ctx$: { model } } = props
14
- const info = (model.main && model.main.kit && model.main.kit.info) || {}
14
+ const info = modelText(model)
15
15
  const tagline = info.tagline || ''
16
16
 
17
17
  Content(`# ${model.Name} ${target.title} SDK
@@ -36,7 +36,7 @@ The ${target.title} SDK for the ${model.Name} API — an entity-oriented client
36
36
  // Model-driven op list — only the operations the active entities actually
37
37
  // expose (a read-only entity has just list+load); never claim
38
38
  // create/update/remove exist when no entity has them.
39
- const CANON_OPS = ['list', 'load', 'create', 'update', 'remove']
39
+ const CANON_OPS = ['list', 'load', 'create', 'update', 'patch', 'remove']
40
40
  const opSet = new Set<string>()
41
41
  Object.values(entity || {}).forEach((e: any) => {
42
42
  if (!e || e.active === false) return
@@ -28,9 +28,10 @@ const ReadmeModel = cmp(function ReadmeModel(props: any) {
28
28
  list: '| `list` | `(reqmatch, ctrl) -> Object` | List entities matching the criteria (an aggregate list). Raises on error. |',
29
29
  create: '| `create` | `(reqdata, ctrl) -> Object` | Create a new entity. Raises on error. |',
30
30
  update: '| `update` | `(reqdata, ctrl) -> Object` | Update an existing entity. Raises on error. |',
31
+ patch: '| `patch` | `(reqdata, ctrl) -> Object` | Change part of an existing entity. Raises on error. |',
31
32
  remove: '| `remove` | `(reqmatch, ctrl) -> Object` | Remove an entity. Raises on error. |',
32
33
  }
33
- const opRows = ['load', 'list', 'create', 'update', 'remove']
34
+ const opRows = ['load', 'list', 'create', 'update', 'patch', 'remove']
34
35
  .filter((o) => opUnion.has(o)).map((o) => opRowDefs[o]).join('\n')
35
36
 
36
37
  const apikeyOptionRow = isAuthActive(model)
@@ -185,7 +185,8 @@ catch {
185
185
  return it && it.type
186
186
  }
187
187
 
188
- if (opnames.includes('create') || opnames.includes('update') || opnames.includes('remove')) {
188
+ if (opnames.includes('create') || opnames.includes('update') || opnames.includes('patch') ||
189
+ opnames.includes('remove')) {
189
190
  Content(`### 4. Create, update, and remove
190
191
 
191
192
  \`\`\`scala
@@ -202,6 +203,14 @@ val created = client.${accessor}(null).create(java.util.Map.of(${examplePairs('c
202
203
  Content(`// Update — supply the id in the match/data
203
204
  client.${accessor}(null).update(java.util.Map.of(${updatePairs.join(', ')}), null)
204
205
 
206
+ `)
207
+ }
208
+ if (opnames.includes('patch')) {
209
+ const patchPairs = (idF ? [`"${idF}", ${scalaLit(idParamType('patch'), 'example_id')}`] : [])
210
+ .concat(examplePairs('patch'))
211
+ Content(`// Patch — sends only the fields given
212
+ client.${accessor}(null).patch(java.util.Map.of(${patchPairs.join(', ')}), null)
213
+
205
214
  `)
206
215
  }
207
216
  if (opnames.includes('remove')) {
@@ -1,5 +1,5 @@
1
1
 
2
- import { cmp, each, Content, canonToType, canonKey, canonScalarKey, File, isAuthActive, entityIdField, opRequestShape , targetFeatures } from '@voxgig/sdkgen'
2
+ import { cmp, each, Content, canonToType, canonKey, canonScalarKey, File, isAuthActive, entityIdField, opRequestShape , targetFeatures, opNeedsAction, bodyNote } from '@voxgig/sdkgen'
3
3
  import { ReadmeRefFeatures } from '@voxgig/sdkgen'
4
4
 
5
5
  import {
@@ -45,6 +45,11 @@ const OP_SIGNATURES: Record<string, { sig: string, returns: string, desc: string
45
45
  returns: 'the updated entity data',
46
46
  desc: 'Update an existing entity. The data must include the entity `id`. Returns the updated entity data and raises on error.',
47
47
  },
48
+ patch: {
49
+ sig: 'patch(reqdata, ctrl) -> Object',
50
+ returns: 'the patched entity data',
51
+ desc: 'Change part of an existing entity: only the fields given are sent. The data must include the entity `id`. Returns the patched entity data and raises on error.',
52
+ },
48
53
  remove: {
49
54
  sig: 'remove(reqmatch, ctrl) -> Object',
50
55
  returns: 'the removed entity data',
@@ -217,7 +222,7 @@ val ${eVar} = client.${accessor}(null)
217
222
  // Field operations breakdown
218
223
  const hasFieldOps = fields.some((f: any) => f.op && Object.keys(f.op).length > 0)
219
224
  if (hasFieldOps) {
220
- const opcols = ['load', 'list', 'create', 'update', 'remove']
225
+ const opcols = ['load', 'list', 'create', 'update', 'patch', 'remove']
221
226
  .filter((op: string) => opnames.includes(op) && ent.op[op]?.active !== false)
222
227
  Content(`### Field Usage by Operation
223
228
 
@@ -258,6 +263,10 @@ ${info.desc}
258
263
 
259
264
  `)
260
265
 
266
+ if (opNeedsAction(ent.op[opname])) {
267
+ return
268
+ }
269
+
261
270
  if ('load' === opname || 'remove' === opname) {
262
271
  const matchItems = opRequestShape(ent, opname).items
263
272
  .filter((it: any) => !it.optional || it.name === idF)
@@ -298,8 +307,8 @@ val result = client.${accessor}(null).create(java.util.Map.of(
298
307
 
299
308
  `)
300
309
  }
301
- else if ('update' === opname) {
302
- const updateItems = opRequestShape(ent, 'update').items
310
+ else if ('update' === opname || 'patch' === opname) {
311
+ const updateItems = opRequestShape(ent, opname).items
303
312
  .filter((it: any) => !it.optional || it.name === idF)
304
313
  .sort((a: any, b: any) =>
305
314
  (a.name === idF ? 0 : 1) - (b.name === idF ? 0 : 1))
@@ -309,12 +318,20 @@ val result = client.${accessor}(null).create(java.util.Map.of(
309
318
  it.name === idF ? ent.name + '_id' : it.name)}${comma}\n`
310
319
  }).join('')
311
320
  Content(`\`\`\`scala
312
- val result = client.${accessor}(null).update(java.util.Map.of(
321
+ val result = client.${accessor}(null).${opname}(java.util.Map.of(
313
322
  ${updateLines}), null)
314
323
  \`\`\`
315
324
 
316
325
  `)
317
326
  }
327
+
328
+ if ('create' === opname || 'update' === opname || 'patch' === opname) {
329
+ const note = bodyNote(ent.op[opname], {
330
+ values: 'an `Array[Byte]`, a `String` or an `InputStream`',
331
+ once: 'an `InputStream`',
332
+ })
333
+ if ('' !== note) Content(note)
334
+ }
318
335
  })
319
336
  }
320
337
 
@@ -51,7 +51,7 @@ val client = ${SDK}.testSDK(null, null)
51
51
  ? `java.util.Map.of(${items.map((it: any) =>
52
52
  `"${it.name}", ${it.name === idF ? '"test01"' : scalaLit(it.type)}`).join(', ')})`
53
53
  : 'null'
54
- } else if ('create' === primaryOp || 'update' === primaryOp) {
54
+ } else if ('create' === primaryOp || 'update' === primaryOp || 'patch' === primaryOp) {
55
55
  const items = opRequestShape(exampleEntity, primaryOp).items
56
56
  .filter((it: any) => it.name !== idF && it.name !== 'id')
57
57
  const required = items.filter((it: any) => !it.optional)
@@ -227,8 +227,25 @@ object SdkCleanTestMain {
227
227
  }),
228
228
  )
229
229
 
230
+ // Offline, as every generated suite is: the test OPTION resolves a required
231
+ // server variable to test-<name>, and installs no transport.
232
+ private def offline(opts: JMap[String, Object]): JMap[String, Object] = {
233
+ val out = new LinkedHashMap[String, Object](opts)
234
+ out.put("test", om("active" -> B(true)))
235
+ out
236
+ }
237
+
238
+ // A client the sweep cannot build leaves nothing swept: a harness error, not
239
+ // a leak.
240
+ private def construct(opts: JMap[String, Object]): ${SDK} =
241
+ try new ${SDK}(offline(opts))
242
+ catch {
243
+ case e: RuntimeException => throw new IllegalStateException(
244
+ "clean harness: the client could not be constructed, so nothing was swept: " + e.getMessage, e)
245
+ }
246
+
230
247
  private def makeSdk(scenario: Scenario, sinks: ArrayList[Sink], cleanopts: JMap[String, Object],
231
- extra: BaseFeature = null): ${SDK} = {
248
+ extra: BaseFeature = null, auth: JMap[String, Object] = null): ${SDK} = {
232
249
  def capture(name: String): Consumer[Object] = (rec: Object) => collect(sinks, name, rec)
233
250
 
234
251
  val feature = new LinkedHashMap[String, Object]()
@@ -267,7 +284,8 @@ object SdkCleanTestMain {
267
284
  if (extra != null) extend.add(extra)
268
285
  opts.put("extend", extend)
269
286
  opts.put("utility", om("fetcher" -> fetcher))
270
- new ${SDK}(opts)
287
+ if (auth != null) opts.put("auth", auth)
288
+ construct(opts)
271
289
  }
272
290
 
273
291
  final class Target(val accessor: Method, val op: String, val matchArgs: JMap[String, Object])
@@ -293,6 +311,7 @@ object SdkCleanTestMain {
293
311
  case "load" => ent.load(args, ctrl)
294
312
  case "create" => ent.create(args, ctrl)
295
313
  case "update" => ent.update(args, ctrl)
314
+ case "patch" => ent.patch(args, ctrl)
296
315
  case "remove" => ent.remove(args, ctrl)
297
316
  case _ => throw new IllegalArgumentException("no such op: " + op)
298
317
  }
@@ -322,7 +341,7 @@ object SdkCleanTestMain {
322
341
  private def usableOp(): Target = {
323
342
  val plainFetch: (Context, String, JMap[String, Object]) => Object =
324
343
  (_, _, _) => response(200, om("id" -> "i1"), null)
325
- val plain = new ${SDK}(om("apikey" -> CANARY_APIKEY, "utility" -> om("fetcher" -> plainFetch)))
344
+ val plain = construct(om("apikey" -> CANARY_APIKEY, "utility" -> om("fetcher" -> plainFetch)))
326
345
  val entities = Helpers.toMapAny(Config.sharedConfig().get("entity"))
327
346
  if (entities == null) return null
328
347
  val rank = Map("list" -> 0, "load" -> 1)
@@ -359,12 +378,15 @@ object SdkCleanTestMain {
359
378
  private def drive(sdk: ${SDK}, target: Target, ctrl: JMap[String, Object], sinks: ArrayList[Sink]): Throwable = {
360
379
  // A caller may keep the record it passed rather than read ctrl's entry.
361
380
  val held = if (ctrl == null) null else ctrl.get("explain")
381
+ val entity = entityOf(sdk, target.accessor)
362
382
  var out: Object = null
363
383
  var err: Throwable = null
364
- try out = call(entityOf(sdk, target.accessor), target.op, target.matchArgs, ctrl)
384
+ try out = call(entity, target.op, target.matchArgs, ctrl)
365
385
  catch { case e: Throwable => err = e }
366
386
  if (err != null) collect(sinks, "error", err)
367
387
  if (out != null) collect(sinks, "result", out)
388
+ // Raw, as a caller copying the match into another query reads it.
389
+ if (entity != null) collect(sinks, "match", entity.matchArgs())
368
390
  val explain = if (ctrl == null) null else ctrl.get("explain")
369
391
  if (explain != null) collect(sinks, "explain", explain)
370
392
  if (held != null && !(held eq explain)) collect(sinks, "explain:held", held)
@@ -399,13 +421,17 @@ object SdkCleanTestMain {
399
421
  }
400
422
  }
401
423
 
424
+ // A name given at run time replaces the declared one: the match leaves
425
+ // out whichever name prepareAuth placed.
426
+ drive(makeSdk(SCENARIOS.head, sinks, null, auth = om("name" -> "zzcred")), target, null, sinks)
427
+
402
428
  // A credential mistyped as a map. Validation here collects its errors
403
429
  // rather than throwing, so there is no rejection to sweep: sweep the
404
430
  // client it built, an operation it runs, and a message quoting the value.
405
431
  val fetch404: (Context, String, JMap[String, Object]) => Object =
406
432
  (_, url, fetchdef) => SCENARIOS(1).respond(url, fetchdef)
407
- val mistyped = new ${SDK}(om("apikey" -> om("value" -> CANARY_APIKEY),
408
- "clean" -> om("values" -> CANARY_VALUE), "utility" -> om("fetcher" -> fetch404)))
433
+ val mistyped = new ${SDK}(offline(om("apikey" -> om("value" -> CANARY_APIKEY),
434
+ "clean" -> om("values" -> CANARY_VALUE), "utility" -> om("fetcher" -> fetch404))))
409
435
  collect(sinks, "mistyped", mistyped)
410
436
  drive(mistyped, target, null, sinks)
411
437
  collect(sinks, "mistyped:quoted",
@@ -535,13 +561,15 @@ object SdkCleanTestMain {
535
561
 
536
562
  // A feature's name is not a field name: only the sensitive names inside its
537
563
  // settings register. An entity block, of per-entity settings or seeded
538
- // records keyed by entity name and id, is not read at all.
564
+ // records keyed by entity name and id, is not read at all, and nor are
565
+ // rbac's rules, keyed by entity and operation names.
539
566
  private def featureNames(rep: SdkTestReport): Unit = {
540
- val sdk = new ${SDK}(om(
567
+ val sdk = construct(om(
541
568
  "apikey" -> CANARY_APIKEY,
542
569
  "feature" -> om(
543
570
  "zzsecrets" -> om("active" -> B(false), "kind" -> "PLAINSETTING-q8w2e4r6"),
544
571
  "zzfeat" -> om("active" -> B(false), "apitoken" -> "FEATTOKEN-z9y8x7w6"),
572
+ "rbac" -> om("active" -> B(false), "rules" -> om("zztoken.load" -> "PLAINRULE-k7j5h3g1")),
545
573
  "test" -> om("active" -> B(false), "entity" -> om(
546
574
  "zztoken" -> om("ZZTOKEN01" -> om("note" -> "PLAINRECORD-t5r3e1w9"))))),
547
575
  "entity" -> om("zztoken" -> om("alias" -> om("zzkey" -> "PLAINALIAS-m2n4b6v8")))))
@@ -551,10 +579,11 @@ object SdkCleanTestMain {
551
579
  rep.eq("clean.feature.token", "token " + MASK, clean("token FEATTOKEN-z9y8x7w6"))
552
580
  rep.eq("clean.entity.record", "record PLAINRECORD-t5r3e1w9", clean("record PLAINRECORD-t5r3e1w9"))
553
581
  rep.eq("clean.entity.alias", "alias PLAINALIAS-m2n4b6v8", clean("alias PLAINALIAS-m2n4b6v8"))
582
+ rep.eq("clean.rbac.rule", "rule PLAINRULE-k7j5h3g1", clean("rule PLAINRULE-k7j5h3g1"))
554
583
  }
555
584
 
556
585
  private def configBlock(rep: SdkTestReport): Unit = {
557
- val utility = new ${SDK}(om()).getUtility()
586
+ val utility = construct(om()).getUtility()
558
587
  val config = om("options" -> om("clean" -> om("keys" -> "zzsens", "values" -> "CONFIG-SEEDED-1")))
559
588
  val ctx = utility.makeContext(om("utility" -> utility, "config" -> config,
560
589
  "options" -> om("clean" -> om("values" -> "CALLER-SEEDED-2"))), null)
@@ -569,7 +598,7 @@ object SdkCleanTestMain {
569
598
  }
570
599
 
571
600
  private def noBlock(rep: SdkTestReport): Unit = {
572
- val utility = new ${SDK}(om()).getUtility()
601
+ val utility = construct(om()).getUtility()
573
602
  val ctx = utility.makeContext(om("utility" -> utility,
574
603
  "options" -> om("apikey" -> "NOBLOCK-APIKEY-k3j5h7")), null)
575
604
  ctx.options = utility.makeOptions(ctx)