@voxgig/sdkgen 4.9.0 → 4.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1159) hide show
  1. package/bin/voxgig-sdkgen +1 -1
  2. package/dist/helpers/manifest.d.ts +2 -1
  3. package/dist/helpers/manifest.js +75 -1
  4. package/dist/helpers/manifest.js.map +1 -1
  5. package/dist/helpers/modelNames.d.ts +7 -0
  6. package/dist/helpers/modelNames.js +232 -0
  7. package/dist/helpers/modelNames.js.map +1 -0
  8. package/dist/helpers/naming.d.ts +2 -1
  9. package/dist/helpers/naming.js +45 -1
  10. package/dist/helpers/naming.js.map +1 -1
  11. package/dist/sdkgen.d.ts +3 -2
  12. package/dist/sdkgen.js +12 -3
  13. package/dist/sdkgen.js.map +1 -1
  14. package/dist/testkit.d.ts +2 -0
  15. package/dist/testkit.js +80 -24
  16. package/dist/testkit.js.map +1 -1
  17. package/dist/tsconfig.tsbuildinfo +1 -1
  18. package/dist/utility.js +17 -7
  19. package/dist/utility.js.map +1 -1
  20. package/package.json +1 -1
  21. package/project/.sdk/model/feature/secrets.aon +1001 -0
  22. package/project/.sdk/model/target/c.aon +15 -2
  23. package/project/.sdk/model/target/clojure.aon +10 -0
  24. package/project/.sdk/model/target/cpp.aon +18 -0
  25. package/project/.sdk/model/target/csharp.aon +5 -0
  26. package/project/.sdk/model/target/elixir.aon +6 -0
  27. package/project/.sdk/model/target/java.aon +5 -0
  28. package/project/.sdk/model/target/js.aon +5 -0
  29. package/project/.sdk/model/target/kotlin.aon +7 -0
  30. package/project/.sdk/model/target/lua.aon +17 -0
  31. package/project/.sdk/model/target/ocaml.aon +48 -5
  32. package/project/.sdk/model/target/perl.aon +5 -0
  33. package/project/.sdk/model/target/php.aon +5 -0
  34. package/project/.sdk/model/target/rb.aon +5 -0
  35. package/project/.sdk/model/target/rust.aon +5 -0
  36. package/project/.sdk/model/target/scala.aon +38 -2
  37. package/project/.sdk/model/target/swift.aon +10 -0
  38. package/project/.sdk/model/target/zig.aon +30 -4
  39. package/project/.sdk/src/cmp/c/Config_c.ts +338 -1
  40. package/project/.sdk/src/cmp/c/Main_c.ts +57 -2
  41. package/project/.sdk/src/cmp/c/Package_c.ts +12 -2
  42. package/project/.sdk/src/cmp/clojure/Config_clojure.ts +51 -4
  43. package/project/.sdk/src/cmp/clojure/Main_clojure.ts +43 -1
  44. package/project/.sdk/src/cmp/clojure/Package_clojure.ts +17 -1
  45. package/project/.sdk/src/cmp/clojure/featureextra_clojure.ts +130 -0
  46. package/project/.sdk/src/cmp/cpp/Config_cpp.ts +324 -2
  47. package/project/.sdk/src/cmp/cpp/Gitignore_cpp.ts +2 -0
  48. package/project/.sdk/src/cmp/cpp/Main_cpp.ts +62 -4
  49. package/project/.sdk/src/cmp/cpp/Package_cpp.ts +10 -0
  50. package/project/.sdk/src/cmp/csharp/Config_csharp.ts +70 -0
  51. package/project/.sdk/src/cmp/csharp/Main_csharp.ts +9 -1
  52. package/project/.sdk/src/cmp/csharp/Package_csharp.ts +25 -1
  53. package/project/.sdk/src/cmp/elixir/Config_elixir.ts +68 -2
  54. package/project/.sdk/src/cmp/elixir/Main_elixir.ts +16 -0
  55. package/project/.sdk/src/cmp/go-cli/Main_go-cli.ts +14 -1
  56. package/project/.sdk/src/cmp/java/Config_java.ts +84 -2
  57. package/project/.sdk/src/cmp/java/Main_java.ts +10 -1
  58. package/project/.sdk/src/cmp/js/Config_js.ts +75 -8
  59. package/project/.sdk/src/cmp/js/Main_js.ts +66 -2
  60. package/project/.sdk/src/cmp/js/fragment/Config.data.fragment.js +18 -1
  61. package/project/.sdk/src/cmp/js/fragment/Config.fragment.js +18 -1
  62. package/project/.sdk/src/cmp/js/fragment/Main.fragment.js +7 -0
  63. package/project/.sdk/src/cmp/kotlin/Config_kotlin.ts +63 -1
  64. package/project/.sdk/src/cmp/kotlin/Main_kotlin.ts +32 -2
  65. package/project/.sdk/src/cmp/lua/Config_lua.ts +88 -0
  66. package/project/.sdk/src/cmp/lua/Gitignore_lua.ts +4 -0
  67. package/project/.sdk/src/cmp/lua/Main_lua.ts +93 -3
  68. package/project/.sdk/src/cmp/lua/Package_lua.ts +60 -0
  69. package/project/.sdk/src/cmp/lua/fragment/Main.fragment.lua +10 -0
  70. package/project/.sdk/src/cmp/ocaml/Config_ocaml.ts +183 -5
  71. package/project/.sdk/src/cmp/ocaml/Main_ocaml.ts +160 -3
  72. package/project/.sdk/src/cmp/ocaml/Package_ocaml.ts +25 -1
  73. package/project/.sdk/src/cmp/perl/Config_perl.ts +129 -3
  74. package/project/.sdk/src/cmp/perl/Main_perl.ts +41 -1
  75. package/project/.sdk/src/cmp/perl/Package_perl.ts +13 -1
  76. package/project/.sdk/src/cmp/perl/fragment/Main.fragment.pm +1 -0
  77. package/project/.sdk/src/cmp/php/Config_php.ts +105 -1
  78. package/project/.sdk/src/cmp/php/Gitignore_php.ts +4 -2
  79. package/project/.sdk/src/cmp/php/Main_php.ts +16 -1
  80. package/project/.sdk/src/cmp/rb/Config_rb.ts +92 -2
  81. package/project/.sdk/src/cmp/rb/EntityTypes_rb.ts +11 -1
  82. package/project/.sdk/src/cmp/rb/Main_rb.ts +7 -1
  83. package/project/.sdk/src/cmp/rust/Main_rust.ts +99 -1
  84. package/project/.sdk/src/cmp/rust/Package_rust.ts +72 -6
  85. package/project/.sdk/src/cmp/scala/Config_scala.ts +44 -0
  86. package/project/.sdk/src/cmp/scala/Main_scala.ts +68 -1
  87. package/project/.sdk/src/cmp/swift/Config_swift.ts +62 -1
  88. package/project/.sdk/src/cmp/swift/Main_swift.ts +35 -1
  89. package/project/.sdk/src/cmp/swift/Package_swift.ts +81 -11
  90. package/project/.sdk/src/cmp/swift/fragment/Main.fragment.swift +58 -44
  91. package/project/.sdk/src/cmp/swift/utility_swift.ts +22 -0
  92. package/project/.sdk/src/cmp/zig/Config_zig.ts +130 -9
  93. package/project/.sdk/src/cmp/zig/Main_zig.ts +208 -4
  94. package/project/.sdk/{tm/zig/build.zig → src/cmp/zig/fragment/Build.fragment.zig} +7 -0
  95. package/project/.sdk/src/cmp/zig/fragment/Main.fragment.zig +25 -0
  96. package/project/.sdk/{tm/zig/root.zig → src/cmp/zig/fragment/Root.fragment.zig} +9 -0
  97. package/project/.sdk/tm/c/Makefile +58 -9
  98. package/project/.sdk/tm/c/core/sdk.h +10 -0
  99. package/project/.sdk/tm/c/feature/secrets/plugin/capability.c +133 -0
  100. package/project/.sdk/tm/c/feature/secrets/plugin/capability.h +39 -0
  101. package/project/.sdk/tm/c/feature/secrets/plugin/catalog.c +83 -0
  102. package/project/.sdk/tm/c/feature/secrets/plugin/catalog.h +48 -0
  103. package/project/.sdk/tm/c/feature/secrets/plugin/config.c +413 -0
  104. package/project/.sdk/tm/c/feature/secrets/plugin/config.h +24 -0
  105. package/project/.sdk/tm/c/feature/secrets/plugin/depend.c +264 -0
  106. package/project/.sdk/tm/c/feature/secrets/plugin/depend.h +29 -0
  107. package/project/.sdk/tm/c/feature/secrets/plugin/env.c +220 -0
  108. package/project/.sdk/tm/c/feature/secrets/plugin/env.h +19 -0
  109. package/project/.sdk/tm/c/feature/secrets/plugin/export.c +97 -0
  110. package/project/.sdk/tm/c/feature/secrets/plugin/export.h +19 -0
  111. package/project/.sdk/tm/c/feature/secrets/plugin/graph.c +237 -0
  112. package/project/.sdk/tm/c/feature/secrets/plugin/graph.h +17 -0
  113. package/project/.sdk/tm/c/feature/secrets/plugin/host.c +1494 -0
  114. package/project/.sdk/tm/c/feature/secrets/plugin/host.h +135 -0
  115. package/project/.sdk/tm/c/feature/secrets/plugin/order.c +288 -0
  116. package/project/.sdk/tm/c/feature/secrets/plugin/order.h +18 -0
  117. package/project/.sdk/tm/c/feature/secrets/plugin/point.c +141 -0
  118. package/project/.sdk/tm/c/feature/secrets/plugin/point.h +80 -0
  119. package/project/.sdk/tm/c/feature/secrets/plugin/ref.c +170 -0
  120. package/project/.sdk/tm/c/feature/secrets/plugin/ref.h +52 -0
  121. package/project/.sdk/tm/c/feature/secrets/plugin/resolve.c +98 -0
  122. package/project/.sdk/tm/c/feature/secrets/plugin/resolve.h +18 -0
  123. package/project/.sdk/tm/c/feature/secrets/plugin/types.c +150 -0
  124. package/project/.sdk/tm/c/feature/secrets/plugin/types.h +104 -0
  125. package/project/.sdk/tm/c/feature/secrets/plugin/value.c +649 -0
  126. package/project/.sdk/tm/c/feature/secrets/plugin/value.h +135 -0
  127. package/project/.sdk/tm/c/feature/secrets/plugin/version.c +151 -0
  128. package/project/.sdk/tm/c/feature/secrets/plugin/version.h +34 -0
  129. package/project/.sdk/tm/c/feature/secrets/plugins/aws.c +281 -0
  130. package/project/.sdk/tm/c/feature/secrets/plugins/azuresecrets.c +207 -0
  131. package/project/.sdk/tm/c/feature/secrets/plugins/boru.c +164 -0
  132. package/project/.sdk/tm/c/feature/secrets/plugins/clock.c +75 -0
  133. package/project/.sdk/tm/c/feature/secrets/plugins/doppler.c +141 -0
  134. package/project/.sdk/tm/c/feature/secrets/plugins/encode.c +144 -0
  135. package/project/.sdk/tm/c/feature/secrets/plugins/gcpsecrets.c +177 -0
  136. package/project/.sdk/tm/c/feature/secrets/plugins/hashicorp.c +239 -0
  137. package/project/.sdk/tm/c/feature/secrets/plugins/httpjson.c +599 -0
  138. package/project/.sdk/tm/c/feature/secrets/plugins/infisical.c +165 -0
  139. package/project/.sdk/tm/c/feature/secrets/plugins/onepassword.c +194 -0
  140. package/project/.sdk/tm/c/feature/secrets/plugins/proc.c +233 -0
  141. package/project/.sdk/tm/c/feature/secrets/plugins/secretspec.c +125 -0
  142. package/project/.sdk/tm/c/feature/secrets/plugins/sekretoplugins.h +125 -0
  143. package/project/.sdk/tm/c/feature/secrets/plugins/sha256.c +270 -0
  144. package/project/.sdk/tm/c/feature/secrets/plugins/sigv4.c +382 -0
  145. package/project/.sdk/tm/c/feature/secrets/plugins/support.h +153 -0
  146. package/project/.sdk/tm/c/feature/secrets/plugins/tls.c +420 -0
  147. package/project/.sdk/tm/c/feature/secrets/sekreto/internal.h +86 -0
  148. package/project/.sdk/tm/c/feature/secrets/sekreto/json.c +721 -0
  149. package/project/.sdk/tm/c/feature/secrets/sekreto/providers.c +813 -0
  150. package/project/.sdk/tm/c/feature/secrets/sekreto/sekreto.c +944 -0
  151. package/project/.sdk/tm/c/feature/secrets/sekreto/sekreto.h +490 -0
  152. package/project/.sdk/tm/c/feature/secrets/sekreto/util.c +442 -0
  153. package/project/.sdk/tm/c/feature/secrets.c +797 -0
  154. package/project/.sdk/tm/c/feature/secrets.h +46 -0
  155. package/project/.sdk/tm/c/tests/feature/secrets/secrets_test.c +802 -0
  156. package/project/.sdk/tm/c/tests/vendor/omni/json.c +2 -2
  157. package/project/.sdk/tm/c/tests/vendor/omni/omni.h +2 -2
  158. package/project/.sdk/tm/c/tests/vendor/omni/runner.c +2 -2
  159. package/project/.sdk/tm/c/tests/vendor/omni/util.c +2 -2
  160. package/project/.sdk/tm/clojure/Makefile +3 -0
  161. package/project/.sdk/tm/clojure/feature/secrets/sdk/feature/secrets.clj +530 -0
  162. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/capability.clj +84 -0
  163. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/catalog.clj +44 -0
  164. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/config.clj +240 -0
  165. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/depend.clj +199 -0
  166. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/env.clj +111 -0
  167. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/export.clj +46 -0
  168. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/graph.clj +122 -0
  169. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/host.clj +1018 -0
  170. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/json.clj +106 -0
  171. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/order.clj +157 -0
  172. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/point.clj +77 -0
  173. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/ref.clj +92 -0
  174. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/resolve.clj +46 -0
  175. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/types.clj +177 -0
  176. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin/version.clj +90 -0
  177. package/project/.sdk/tm/clojure/feature/secrets/voxgig/plugin.clj +40 -0
  178. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/addr.clj +111 -0
  179. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/chain.clj +297 -0
  180. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/core.clj +192 -0
  181. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/json.clj +261 -0
  182. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/aws.clj +165 -0
  183. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/azuresecrets.clj +111 -0
  184. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/boru.clj +107 -0
  185. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/doppler.clj +61 -0
  186. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/gcpsecrets.clj +88 -0
  187. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/hashicorp.clj +115 -0
  188. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/httpjson.clj +214 -0
  189. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/infisical.clj +80 -0
  190. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/onepassword.clj +93 -0
  191. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/proc.clj +63 -0
  192. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/secretspec.clj +99 -0
  193. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/plugins/sigv4.clj +142 -0
  194. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/provider.clj +25 -0
  195. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto/providers.clj +196 -0
  196. package/project/.sdk/tm/clojure/feature/secrets/voxgig/sekreto.clj +113 -0
  197. package/project/.sdk/tm/clojure/src/sdk/core.clj +9 -0
  198. package/project/.sdk/tm/clojure/src/sdk/features.clj +13 -1
  199. package/project/.sdk/tm/clojure/test/sdk/test/feature/secrets.clj +581 -0
  200. package/project/.sdk/tm/clojure/test/sdk/test_runner.clj +103 -14
  201. package/project/.sdk/tm/clojure/test/vendor/omni/voxgig/omni/json.clj +2 -2
  202. package/project/.sdk/tm/clojure/test/vendor/omni/voxgig/omni/runner.clj +2 -2
  203. package/project/.sdk/tm/clojure/test/vendor/omni/voxgig/omni/util.clj +2 -2
  204. package/project/.sdk/tm/cpp/Makefile +48 -4
  205. package/project/.sdk/tm/cpp/feature/secrets/plugin/capability.cpp +121 -0
  206. package/project/.sdk/tm/cpp/feature/secrets/plugin/capability.hpp +41 -0
  207. package/project/.sdk/tm/cpp/feature/secrets/plugin/catalog.cpp +60 -0
  208. package/project/.sdk/tm/cpp/feature/secrets/plugin/catalog.hpp +66 -0
  209. package/project/.sdk/tm/cpp/feature/secrets/plugin/config.cpp +376 -0
  210. package/project/.sdk/tm/cpp/feature/secrets/plugin/config.hpp +29 -0
  211. package/project/.sdk/tm/cpp/feature/secrets/plugin/depend.cpp +230 -0
  212. package/project/.sdk/tm/cpp/feature/secrets/plugin/depend.hpp +31 -0
  213. package/project/.sdk/tm/cpp/feature/secrets/plugin/env.cpp +205 -0
  214. package/project/.sdk/tm/cpp/feature/secrets/plugin/env.hpp +25 -0
  215. package/project/.sdk/tm/cpp/feature/secrets/plugin/export.cpp +84 -0
  216. package/project/.sdk/tm/cpp/feature/secrets/plugin/export.hpp +24 -0
  217. package/project/.sdk/tm/cpp/feature/secrets/plugin/graph.cpp +222 -0
  218. package/project/.sdk/tm/cpp/feature/secrets/plugin/graph.hpp +21 -0
  219. package/project/.sdk/tm/cpp/feature/secrets/plugin/host.cpp +1200 -0
  220. package/project/.sdk/tm/cpp/feature/secrets/plugin/host.hpp +250 -0
  221. package/project/.sdk/tm/cpp/feature/secrets/plugin/order.cpp +250 -0
  222. package/project/.sdk/tm/cpp/feature/secrets/plugin/order.hpp +22 -0
  223. package/project/.sdk/tm/cpp/feature/secrets/plugin/point.cpp +110 -0
  224. package/project/.sdk/tm/cpp/feature/secrets/plugin/point.hpp +79 -0
  225. package/project/.sdk/tm/cpp/feature/secrets/plugin/ref.cpp +136 -0
  226. package/project/.sdk/tm/cpp/feature/secrets/plugin/ref.hpp +60 -0
  227. package/project/.sdk/tm/cpp/feature/secrets/plugin/resolve.cpp +82 -0
  228. package/project/.sdk/tm/cpp/feature/secrets/plugin/resolve.hpp +25 -0
  229. package/project/.sdk/tm/cpp/feature/secrets/plugin/types.cpp +90 -0
  230. package/project/.sdk/tm/cpp/feature/secrets/plugin/types.hpp +65 -0
  231. package/project/.sdk/tm/cpp/feature/secrets/plugin/value.cpp +491 -0
  232. package/project/.sdk/tm/cpp/feature/secrets/plugin/value.hpp +120 -0
  233. package/project/.sdk/tm/cpp/feature/secrets/plugin/version.cpp +143 -0
  234. package/project/.sdk/tm/cpp/feature/secrets/plugin/version.hpp +36 -0
  235. package/project/.sdk/tm/cpp/feature/secrets/plugins/Aws.cpp +248 -0
  236. package/project/.sdk/tm/cpp/feature/secrets/plugins/Aws.hpp +30 -0
  237. package/project/.sdk/tm/cpp/feature/secrets/plugins/Azuresecrets.cpp +149 -0
  238. package/project/.sdk/tm/cpp/feature/secrets/plugins/Azuresecrets.hpp +23 -0
  239. package/project/.sdk/tm/cpp/feature/secrets/plugins/Boru.cpp +117 -0
  240. package/project/.sdk/tm/cpp/feature/secrets/plugins/Boru.hpp +27 -0
  241. package/project/.sdk/tm/cpp/feature/secrets/plugins/Crypto.cpp +180 -0
  242. package/project/.sdk/tm/cpp/feature/secrets/plugins/Crypto.hpp +52 -0
  243. package/project/.sdk/tm/cpp/feature/secrets/plugins/Doppler.cpp +87 -0
  244. package/project/.sdk/tm/cpp/feature/secrets/plugins/Doppler.hpp +23 -0
  245. package/project/.sdk/tm/cpp/feature/secrets/plugins/Gcpsecrets.cpp +121 -0
  246. package/project/.sdk/tm/cpp/feature/secrets/plugins/Gcpsecrets.hpp +23 -0
  247. package/project/.sdk/tm/cpp/feature/secrets/plugins/Hashicorp.cpp +153 -0
  248. package/project/.sdk/tm/cpp/feature/secrets/plugins/Hashicorp.hpp +23 -0
  249. package/project/.sdk/tm/cpp/feature/secrets/plugins/Httpjson.cpp +666 -0
  250. package/project/.sdk/tm/cpp/feature/secrets/plugins/Httpjson.hpp +160 -0
  251. package/project/.sdk/tm/cpp/feature/secrets/plugins/Infisical.cpp +123 -0
  252. package/project/.sdk/tm/cpp/feature/secrets/plugins/Infisical.hpp +23 -0
  253. package/project/.sdk/tm/cpp/feature/secrets/plugins/Onepassword.cpp +125 -0
  254. package/project/.sdk/tm/cpp/feature/secrets/plugins/Onepassword.hpp +23 -0
  255. package/project/.sdk/tm/cpp/feature/secrets/plugins/Proc.cpp +223 -0
  256. package/project/.sdk/tm/cpp/feature/secrets/plugins/Proc.hpp +47 -0
  257. package/project/.sdk/tm/cpp/feature/secrets/plugins/Secretspec.cpp +104 -0
  258. package/project/.sdk/tm/cpp/feature/secrets/plugins/Secretspec.hpp +27 -0
  259. package/project/.sdk/tm/cpp/feature/secrets/plugins/Sigv4.cpp +242 -0
  260. package/project/.sdk/tm/cpp/feature/secrets/plugins/Sigv4.hpp +58 -0
  261. package/project/.sdk/tm/cpp/feature/secrets/plugins/Tls.cpp +260 -0
  262. package/project/.sdk/tm/cpp/feature/secrets/plugins/Tls.hpp +47 -0
  263. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Json.cpp +476 -0
  264. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Json.hpp +89 -0
  265. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Provider.cpp +312 -0
  266. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Provider.hpp +263 -0
  267. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Providers.cpp +354 -0
  268. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Providers.hpp +111 -0
  269. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Sekreto.cpp +613 -0
  270. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Sekreto.hpp +227 -0
  271. package/project/.sdk/tm/cpp/feature/secrets.hpp +745 -0
  272. package/project/.sdk/tm/cpp/test/feature/secrets/secrets_test.cpp +808 -0
  273. package/project/.sdk/tm/cpp/test/vendor/omni/json.hpp +2 -2
  274. package/project/.sdk/tm/cpp/test/vendor/omni/omni.hpp +2 -2
  275. package/project/.sdk/tm/cpp/test/vendor/omni/util.hpp +2 -2
  276. package/project/.sdk/tm/csharp/feature/SecretsFeature.cs +915 -0
  277. package/project/.sdk/tm/csharp/feature/secrets/plugin/Capability.cs +196 -0
  278. package/project/.sdk/tm/csharp/feature/secrets/plugin/Catalog.cs +70 -0
  279. package/project/.sdk/tm/csharp/feature/secrets/plugin/Config.cs +505 -0
  280. package/project/.sdk/tm/csharp/feature/secrets/plugin/Definition.cs +52 -0
  281. package/project/.sdk/tm/csharp/feature/secrets/plugin/Depend.cs +285 -0
  282. package/project/.sdk/tm/csharp/feature/secrets/plugin/Entry.cs +55 -0
  283. package/project/.sdk/tm/csharp/feature/secrets/plugin/Env.cs +228 -0
  284. package/project/.sdk/tm/csharp/feature/secrets/plugin/Export.cs +102 -0
  285. package/project/.sdk/tm/csharp/feature/secrets/plugin/Graph.cs +256 -0
  286. package/project/.sdk/tm/csharp/feature/secrets/plugin/Host.cs +1379 -0
  287. package/project/.sdk/tm/csharp/feature/secrets/plugin/Inst.cs +177 -0
  288. package/project/.sdk/tm/csharp/feature/secrets/plugin/Json.cs +326 -0
  289. package/project/.sdk/tm/csharp/feature/secrets/plugin/Order.cs +295 -0
  290. package/project/.sdk/tm/csharp/feature/secrets/plugin/Plugin.cs +113 -0
  291. package/project/.sdk/tm/csharp/feature/secrets/plugin/Point.cs +177 -0
  292. package/project/.sdk/tm/csharp/feature/secrets/plugin/Refs.cs +198 -0
  293. package/project/.sdk/tm/csharp/feature/secrets/plugin/Resolve.cs +95 -0
  294. package/project/.sdk/tm/csharp/feature/secrets/plugin/Types.cs +351 -0
  295. package/project/.sdk/tm/csharp/feature/secrets/plugin/Version.cs +196 -0
  296. package/project/.sdk/tm/csharp/feature/secrets/plugins/Aws.cs +325 -0
  297. package/project/.sdk/tm/csharp/feature/secrets/plugins/AzureSecrets.cs +195 -0
  298. package/project/.sdk/tm/csharp/feature/secrets/plugins/Boru.cs +192 -0
  299. package/project/.sdk/tm/csharp/feature/secrets/plugins/Child.cs +75 -0
  300. package/project/.sdk/tm/csharp/feature/secrets/plugins/Doppler.cs +112 -0
  301. package/project/.sdk/tm/csharp/feature/secrets/plugins/GcpSecrets.cs +167 -0
  302. package/project/.sdk/tm/csharp/feature/secrets/plugins/Hashicorp.cs +221 -0
  303. package/project/.sdk/tm/csharp/feature/secrets/plugins/HttpJson.cs +213 -0
  304. package/project/.sdk/tm/csharp/feature/secrets/plugins/Infisical.cs +155 -0
  305. package/project/.sdk/tm/csharp/feature/secrets/plugins/OnePassword.cs +169 -0
  306. package/project/.sdk/tm/csharp/feature/secrets/plugins/SecretSpec.cs +172 -0
  307. package/project/.sdk/tm/csharp/feature/secrets/plugins/Sigv4.cs +240 -0
  308. package/project/.sdk/tm/csharp/feature/secrets/sekreto/Json.cs +192 -0
  309. package/project/.sdk/tm/csharp/feature/secrets/sekreto/Providers.cs +503 -0
  310. package/project/.sdk/tm/csharp/feature/secrets/sekreto/Sekreto.cs +775 -0
  311. package/project/.sdk/tm/csharp/test/feature/secrets/SecretsFeatureTest.cs +1787 -0
  312. package/project/.sdk/tm/csharp/test/vendor/omni/Runner.cs +2 -2
  313. package/project/.sdk/tm/csharp/test/vendor/omni/Util.cs +2 -2
  314. package/project/.sdk/tm/csharp/utility/MakeOptions.cs +10 -0
  315. package/project/.sdk/tm/csharp/utility/struct/Struct.cs +1 -1
  316. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/capability.ex +118 -0
  317. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/catalog.ex +56 -0
  318. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/config.ex +320 -0
  319. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/depend.ex +205 -0
  320. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/env.ex +166 -0
  321. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/error.ex +13 -0
  322. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/export.ex +73 -0
  323. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/graph.ex +185 -0
  324. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/host.ex +1182 -0
  325. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/inst.ex +139 -0
  326. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/json.ex +132 -0
  327. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/order.ex +179 -0
  328. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/point.ex +99 -0
  329. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/ref.ex +129 -0
  330. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/resolve.ex +59 -0
  331. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/types.ex +190 -0
  332. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/version.ex +136 -0
  333. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/plugin/voxgig_plugin.ex +42 -0
  334. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/json.ex +368 -0
  335. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/aws.ex +257 -0
  336. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/azuresecrets.ex +160 -0
  337. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/boru.ex +127 -0
  338. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/doppler.ex +96 -0
  339. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/gcpsecrets.ex +124 -0
  340. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/hashicorp.ex +162 -0
  341. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/http.ex +627 -0
  342. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/httpjson.ex +134 -0
  343. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/infisical.ex +125 -0
  344. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/onepassword.ex +152 -0
  345. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/proc.ex +80 -0
  346. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/secretspec.ex +101 -0
  347. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/plugins/sigv4.ex +176 -0
  348. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/provider.ex +67 -0
  349. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/providers.ex +536 -0
  350. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets/sekreto/sekreto.ex +662 -0
  351. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets.ex +839 -0
  352. package/project/.sdk/tm/elixir/test/feature/secrets/secrets_test.exs +1113 -0
  353. package/project/.sdk/tm/elixir/test/vendor/omni/json.ex +2 -2
  354. package/project/.sdk/tm/elixir/test/vendor/omni/runner.ex +2 -2
  355. package/project/.sdk/tm/elixir/test/vendor/omni/util.ex +2 -2
  356. package/project/.sdk/tm/go/feature/secrets/plugin/capability.go +1 -1
  357. package/project/.sdk/tm/go/feature/secrets/plugin/catalog.go +1 -1
  358. package/project/.sdk/tm/go/feature/secrets/plugin/config.go +1 -1
  359. package/project/.sdk/tm/go/feature/secrets/plugin/depend.go +1 -1
  360. package/project/.sdk/tm/go/feature/secrets/plugin/env.go +1 -1
  361. package/project/.sdk/tm/go/feature/secrets/plugin/export.go +1 -1
  362. package/project/.sdk/tm/go/feature/secrets/plugin/graph.go +1 -1
  363. package/project/.sdk/tm/go/feature/secrets/plugin/host.go +1 -1
  364. package/project/.sdk/tm/go/feature/secrets/plugin/order.go +1 -1
  365. package/project/.sdk/tm/go/feature/secrets/plugin/point.go +1 -1
  366. package/project/.sdk/tm/go/feature/secrets/plugin/ref.go +1 -1
  367. package/project/.sdk/tm/go/feature/secrets/plugin/resolve.go +1 -1
  368. package/project/.sdk/tm/go/feature/secrets/plugin/types.go +1 -1
  369. package/project/.sdk/tm/go/feature/secrets/plugin/util.go +1 -1
  370. package/project/.sdk/tm/go/feature/secrets/plugin/version.go +1 -1
  371. package/project/.sdk/tm/go/feature/secrets/plugins/aws/aws.go +2 -2
  372. package/project/.sdk/tm/go/feature/secrets/plugins/aws/sigv4.go +2 -2
  373. package/project/.sdk/tm/go/feature/secrets/plugins/azuresecrets/azuresecrets.go +2 -2
  374. package/project/.sdk/tm/go/feature/secrets/plugins/boru/boru.go +2 -2
  375. package/project/.sdk/tm/go/feature/secrets/plugins/doppler/doppler.go +2 -2
  376. package/project/.sdk/tm/go/feature/secrets/plugins/gcpsecrets/gcpsecrets.go +2 -2
  377. package/project/.sdk/tm/go/feature/secrets/plugins/hashicorp/hashicorp.go +2 -2
  378. package/project/.sdk/tm/go/feature/secrets/plugins/httpjson/httpjson.go +2 -2
  379. package/project/.sdk/tm/go/feature/secrets/plugins/infisical/infisical.go +2 -2
  380. package/project/.sdk/tm/go/feature/secrets/plugins/onepassword/onepassword.go +2 -2
  381. package/project/.sdk/tm/go/feature/secrets/plugins/secretspec/secretspec.go +2 -2
  382. package/project/.sdk/tm/go/feature/secrets/sekreto/addr.go +2 -2
  383. package/project/.sdk/tm/go/feature/secrets/sekreto/providers.go +2 -2
  384. package/project/.sdk/tm/go/feature/secrets/sekreto/sekreto.go +2 -2
  385. package/project/.sdk/tm/go/feature/secrets_feature.go +48 -10
  386. package/project/.sdk/tm/go/test/feature/secrets/secrets_feature_test.go +239 -0
  387. package/project/.sdk/tm/go/test/omni/omni.go +2 -2
  388. package/project/.sdk/tm/go/test/omni/util.go +2 -2
  389. package/project/.sdk/tm/go/utility/struct/voxgigstruct.go +1 -1
  390. package/project/.sdk/tm/java/feature/SecretsFeature.java +791 -0
  391. package/project/.sdk/tm/java/feature/secrets/plugin/Capability.java +181 -0
  392. package/project/.sdk/tm/java/feature/secrets/plugin/Catalog.java +64 -0
  393. package/project/.sdk/tm/java/feature/secrets/plugin/Config.java +433 -0
  394. package/project/.sdk/tm/java/feature/secrets/plugin/Definition.java +54 -0
  395. package/project/.sdk/tm/java/feature/secrets/plugin/Depend.java +292 -0
  396. package/project/.sdk/tm/java/feature/secrets/plugin/Entry.java +49 -0
  397. package/project/.sdk/tm/java/feature/secrets/plugin/Env.java +204 -0
  398. package/project/.sdk/tm/java/feature/secrets/plugin/Export.java +93 -0
  399. package/project/.sdk/tm/java/feature/secrets/plugin/Graph.java +244 -0
  400. package/project/.sdk/tm/java/feature/secrets/plugin/Host.java +1196 -0
  401. package/project/.sdk/tm/java/feature/secrets/plugin/Inst.java +173 -0
  402. package/project/.sdk/tm/java/feature/secrets/plugin/Json.java +339 -0
  403. package/project/.sdk/tm/java/feature/secrets/plugin/Order.java +274 -0
  404. package/project/.sdk/tm/java/feature/secrets/plugin/Plugin.java +94 -0
  405. package/project/.sdk/tm/java/feature/secrets/plugin/PluginException.java +37 -0
  406. package/project/.sdk/tm/java/feature/secrets/plugin/Point.java +172 -0
  407. package/project/.sdk/tm/java/feature/secrets/plugin/Refs.java +171 -0
  408. package/project/.sdk/tm/java/feature/secrets/plugin/Resolve.java +89 -0
  409. package/project/.sdk/tm/java/feature/secrets/plugin/Types.java +232 -0
  410. package/project/.sdk/tm/java/feature/secrets/plugin/Version.java +198 -0
  411. package/project/.sdk/tm/java/feature/secrets/sekreto/Addr.java +142 -0
  412. package/project/.sdk/tm/java/feature/secrets/sekreto/Builtins.java +229 -0
  413. package/project/.sdk/tm/java/feature/secrets/sekreto/Json.java +302 -0
  414. package/project/.sdk/tm/java/feature/secrets/sekreto/Provider.java +21 -0
  415. package/project/.sdk/tm/java/feature/secrets/sekreto/Sekreto.java +698 -0
  416. package/project/.sdk/tm/java/feature/secrets/sekreto/Support.java +100 -0
  417. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Aws.java +294 -0
  418. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Azuresecrets.java +164 -0
  419. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Boru.java +161 -0
  420. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Doppler.java +103 -0
  421. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Gcpsecrets.java +143 -0
  422. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Hashicorp.java +186 -0
  423. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Httpjson.java +192 -0
  424. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Infisical.java +139 -0
  425. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Onepassword.java +143 -0
  426. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Proc.java +80 -0
  427. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Secretspec.java +138 -0
  428. package/project/.sdk/tm/java/feature/secrets/sekreto/plugins/Sigv4.java +243 -0
  429. package/project/.sdk/tm/java/test/feature/secrets/SecretsFeatureTest.java +1050 -0
  430. package/project/.sdk/tm/java/test/vendor/omni/Json.java +2 -2
  431. package/project/.sdk/tm/java/test/vendor/omni/Runner.java +2 -2
  432. package/project/.sdk/tm/java/test/vendor/omni/Util.java +2 -2
  433. package/project/.sdk/tm/java/utility/MakeOptions.java +7 -0
  434. package/project/.sdk/tm/java/utility/struct/Struct.java +1 -1
  435. package/project/.sdk/tm/js/src/feature/secrets/SecretsFeature.js +454 -0
  436. package/project/.sdk/tm/js/src/feature/secrets/plugin/capability.js +119 -0
  437. package/project/.sdk/tm/js/src/feature/secrets/plugin/catalog.js +42 -0
  438. package/project/.sdk/tm/js/src/feature/secrets/plugin/config.js +323 -0
  439. package/project/.sdk/tm/js/src/feature/secrets/plugin/depend.js +196 -0
  440. package/project/.sdk/tm/js/src/feature/secrets/plugin/env.js +120 -0
  441. package/project/.sdk/tm/js/src/feature/secrets/plugin/export.js +48 -0
  442. package/project/.sdk/tm/js/src/feature/secrets/plugin/graph.js +150 -0
  443. package/project/.sdk/tm/js/src/feature/secrets/plugin/host.js +949 -0
  444. package/project/.sdk/tm/js/src/feature/secrets/plugin/index.js +35 -0
  445. package/project/.sdk/tm/js/src/feature/secrets/plugin/order.js +165 -0
  446. package/project/.sdk/tm/js/src/feature/secrets/plugin/point.js +94 -0
  447. package/project/.sdk/tm/js/src/feature/secrets/plugin/ref.js +106 -0
  448. package/project/.sdk/tm/js/src/feature/secrets/plugin/resolve.js +59 -0
  449. package/project/.sdk/tm/js/src/feature/secrets/plugin/types.js +79 -0
  450. package/project/.sdk/tm/js/src/feature/secrets/plugin/version.js +100 -0
  451. package/project/.sdk/tm/js/src/feature/secrets/sekreto/Sekreto.js +574 -0
  452. package/project/.sdk/tm/js/src/feature/secrets/sekreto/index.js +56 -0
  453. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/aws.js +188 -0
  454. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/azuresecrets.js +135 -0
  455. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/boru.js +128 -0
  456. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/doppler.js +67 -0
  457. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/gcpsecrets.js +115 -0
  458. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/hashicorp.js +139 -0
  459. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/httpjson.js +93 -0
  460. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/infisical.js +99 -0
  461. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/onepassword.js +111 -0
  462. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/secretspec.js +105 -0
  463. package/project/.sdk/tm/js/src/feature/secrets/sekreto/plugins/sigv4.js +157 -0
  464. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/addr.js +119 -0
  465. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/builtin.js +39 -0
  466. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/dotenv.js +40 -0
  467. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/env.js +21 -0
  468. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/file.js +42 -0
  469. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/memory.js +18 -0
  470. package/project/.sdk/tm/js/src/feature/secrets/sekreto/provider/support.js +151 -0
  471. package/project/.sdk/tm/js/src/utility/StructUtility.js +1 -1
  472. package/project/.sdk/tm/js/test/feature/secrets/Secrets.test.js +1019 -0
  473. package/project/.sdk/tm/js/test/vendor/omni/index.js +1 -1
  474. package/project/.sdk/tm/js/test/vendor/omni/runner.js +1 -1
  475. package/project/.sdk/tm/js/test/vendor/omni/util.js +1 -1
  476. package/project/.sdk/tm/kotlin/feature/SecretsFeature.kt +684 -0
  477. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Capability.kt +117 -0
  478. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Catalog.kt +40 -0
  479. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Config.kt +322 -0
  480. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Depend.kt +227 -0
  481. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Env.kt +163 -0
  482. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Export.kt +57 -0
  483. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Graph.kt +179 -0
  484. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Host.kt +1131 -0
  485. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Json.kt +241 -0
  486. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Order.kt +180 -0
  487. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Plugin.kt +64 -0
  488. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Point.kt +124 -0
  489. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Refs.kt +125 -0
  490. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Resolve.kt +66 -0
  491. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Types.kt +171 -0
  492. package/project/.sdk/tm/kotlin/feature/secrets/plugin/Version.kt +132 -0
  493. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Json.kt +359 -0
  494. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Provider.kt +21 -0
  495. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Providers.kt +308 -0
  496. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Sekreto.kt +525 -0
  497. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Spec.kt +126 -0
  498. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/Support.kt +205 -0
  499. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Aws.kt +251 -0
  500. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Azuresecrets.kt +145 -0
  501. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Boru.kt +130 -0
  502. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Doppler.kt +77 -0
  503. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Gcpsecrets.kt +119 -0
  504. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Hashicorp.kt +156 -0
  505. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Httpjson.kt +219 -0
  506. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Infisical.kt +114 -0
  507. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Onepassword.kt +114 -0
  508. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Secretspec.kt +118 -0
  509. package/project/.sdk/tm/kotlin/feature/secrets/sekreto/plugins/Sigv4.kt +220 -0
  510. package/project/.sdk/tm/kotlin/test/feature/secrets/SecretsTest.kt +1217 -0
  511. package/project/.sdk/tm/kotlin/test/vendor/omni/Json.kt +2 -2
  512. package/project/.sdk/tm/kotlin/test/vendor/omni/Runner.kt +2 -2
  513. package/project/.sdk/tm/kotlin/test/vendor/omni/Util.kt +2 -2
  514. package/project/.sdk/tm/kotlin/utility/struct/Struct.kt +1 -1
  515. package/project/.sdk/tm/lua/Makefile +15 -4
  516. package/project/.sdk/tm/lua/feature/secrets/native/sekretonet.c +806 -0
  517. package/project/.sdk/tm/lua/feature/secrets/plugin/capability.lua +135 -0
  518. package/project/.sdk/tm/lua/feature/secrets/plugin/catalog.lua +63 -0
  519. package/project/.sdk/tm/lua/feature/secrets/plugin/config.lua +361 -0
  520. package/project/.sdk/tm/lua/feature/secrets/plugin/depend.lua +232 -0
  521. package/project/.sdk/tm/lua/feature/secrets/plugin/env.lua +168 -0
  522. package/project/.sdk/tm/lua/feature/secrets/plugin/export.lua +66 -0
  523. package/project/.sdk/tm/lua/feature/secrets/plugin/graph.lua +194 -0
  524. package/project/.sdk/tm/lua/feature/secrets/plugin/host.lua +1190 -0
  525. package/project/.sdk/tm/lua/feature/secrets/plugin/json.lua +169 -0
  526. package/project/.sdk/tm/lua/feature/secrets/plugin/order.lua +207 -0
  527. package/project/.sdk/tm/lua/feature/secrets/plugin/point.lua +106 -0
  528. package/project/.sdk/tm/lua/feature/secrets/plugin/ref.lua +115 -0
  529. package/project/.sdk/tm/lua/feature/secrets/plugin/resolve.lua +78 -0
  530. package/project/.sdk/tm/lua/feature/secrets/plugin/types.lua +275 -0
  531. package/project/.sdk/tm/lua/feature/secrets/plugin/version.lua +131 -0
  532. package/project/.sdk/tm/lua/feature/secrets/plugin.lua +76 -0
  533. package/project/.sdk/tm/lua/feature/secrets/sekreto/addr.lua +124 -0
  534. package/project/.sdk/tm/lua/feature/secrets/sekreto/err.lua +47 -0
  535. package/project/.sdk/tm/lua/feature/secrets/sekreto/name.lua +315 -0
  536. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/aws.lua +228 -0
  537. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/azuresecrets.lua +137 -0
  538. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/boru.lua +124 -0
  539. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/crypto.lua +212 -0
  540. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/doppler.lua +89 -0
  541. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/gcpsecrets.lua +129 -0
  542. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/hashicorp.lua +154 -0
  543. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/httpjson.lua +248 -0
  544. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/infisical.lua +113 -0
  545. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/json.lua +449 -0
  546. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/net.lua +198 -0
  547. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/onepassword.lua +126 -0
  548. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/secretspec.lua +93 -0
  549. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/sigv4.lua +269 -0
  550. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/support.lua +146 -0
  551. package/project/.sdk/tm/lua/feature/secrets/sekreto/providers.lua +346 -0
  552. package/project/.sdk/tm/lua/feature/secrets/sekreto.lua +479 -0
  553. package/project/.sdk/tm/lua/feature/secrets_feature.lua +690 -0
  554. package/project/.sdk/tm/lua/test/extend_test.lua +105 -0
  555. package/project/.sdk/tm/lua/test/feature/secrets/secrets_feature_test.lua +862 -0
  556. package/project/.sdk/tm/lua/test/vendor/omni/json.lua +2 -2
  557. package/project/.sdk/tm/lua/test/vendor/omni/regex.lua +2 -2
  558. package/project/.sdk/tm/lua/test/vendor/omni/runner.lua +2 -2
  559. package/project/.sdk/tm/lua/test/vendor/omni/util.lua +2 -2
  560. package/project/.sdk/tm/lua/utility/struct/regex.lua +1 -1
  561. package/project/.sdk/tm/lua/utility/struct/struct.lua +1 -1
  562. package/project/.sdk/tm/ocaml/Makefile +52 -8
  563. package/project/.sdk/tm/ocaml/feature/secrets/plugin/capability.ml +106 -0
  564. package/project/.sdk/tm/ocaml/feature/secrets/plugin/catalog.ml +43 -0
  565. package/project/.sdk/tm/ocaml/feature/secrets/plugin/config.ml +349 -0
  566. package/project/.sdk/tm/ocaml/feature/secrets/plugin/defs.ml +143 -0
  567. package/project/.sdk/tm/ocaml/feature/secrets/plugin/depend.ml +217 -0
  568. package/project/.sdk/tm/ocaml/feature/secrets/plugin/env.ml +197 -0
  569. package/project/.sdk/tm/ocaml/feature/secrets/plugin/export.ml +89 -0
  570. package/project/.sdk/tm/ocaml/feature/secrets/plugin/graph.ml +227 -0
  571. package/project/.sdk/tm/ocaml/feature/secrets/plugin/host.ml +1112 -0
  572. package/project/.sdk/tm/ocaml/feature/secrets/plugin/order.ml +202 -0
  573. package/project/.sdk/tm/ocaml/feature/secrets/plugin/point.ml +138 -0
  574. package/project/.sdk/tm/ocaml/feature/secrets/plugin/ref.ml +126 -0
  575. package/project/.sdk/tm/ocaml/feature/secrets/plugin/resolve.ml +62 -0
  576. package/project/.sdk/tm/ocaml/feature/secrets/plugin/types.ml +97 -0
  577. package/project/.sdk/tm/ocaml/feature/secrets/plugin/value.ml +387 -0
  578. package/project/.sdk/tm/ocaml/feature/secrets/plugin/version.ml +139 -0
  579. package/project/.sdk/tm/ocaml/feature/secrets/plugins/aws.ml +171 -0
  580. package/project/.sdk/tm/ocaml/feature/secrets/plugins/azuresecrets.ml +116 -0
  581. package/project/.sdk/tm/ocaml/feature/secrets/plugins/boru.ml +95 -0
  582. package/project/.sdk/tm/ocaml/feature/secrets/plugins/crypto.ml +149 -0
  583. package/project/.sdk/tm/ocaml/feature/secrets/plugins/doppler.ml +61 -0
  584. package/project/.sdk/tm/ocaml/feature/secrets/plugins/gcpsecrets.ml +93 -0
  585. package/project/.sdk/tm/ocaml/feature/secrets/plugins/hashicorp.ml +120 -0
  586. package/project/.sdk/tm/ocaml/feature/secrets/plugins/http.ml +421 -0
  587. package/project/.sdk/tm/ocaml/feature/secrets/plugins/httpjson.ml +66 -0
  588. package/project/.sdk/tm/ocaml/feature/secrets/plugins/infisical.ml +85 -0
  589. package/project/.sdk/tm/ocaml/feature/secrets/plugins/onepassword.ml +112 -0
  590. package/project/.sdk/tm/ocaml/feature/secrets/plugins/runcmd.ml +97 -0
  591. package/project/.sdk/tm/ocaml/feature/secrets/plugins/secretspec.ml +68 -0
  592. package/project/.sdk/tm/ocaml/feature/secrets/plugins/sigv4.ml +259 -0
  593. package/project/.sdk/tm/ocaml/feature/secrets/plugins/tls.ml +44 -0
  594. package/project/.sdk/tm/ocaml/feature/secrets/plugins/tls_stubs.c +358 -0
  595. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/json.ml +376 -0
  596. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/provider.ml +647 -0
  597. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/secret.ml +299 -0
  598. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/sekreto.ml +347 -0
  599. package/project/.sdk/tm/ocaml/feature/secrets_feature.ml +453 -0
  600. package/project/.sdk/tm/ocaml/test/feature/secrets/t_secrets.ml +670 -0
  601. package/project/.sdk/tm/ocaml/test/vendor/omni/omni.ml +2 -2
  602. package/project/.sdk/tm/perl/Makefile +6 -1
  603. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Capability.pm +141 -0
  604. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Catalog.pm +65 -0
  605. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Config.pm +346 -0
  606. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Depend.pm +216 -0
  607. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Env.pm +176 -0
  608. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Export.pm +59 -0
  609. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Graph.pm +157 -0
  610. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Host.pm +1139 -0
  611. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Order.pm +187 -0
  612. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Point.pm +100 -0
  613. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Ref.pm +119 -0
  614. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Resolve.pm +71 -0
  615. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Types.pm +251 -0
  616. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin/Version.pm +122 -0
  617. package/project/.sdk/tm/perl/feature/secrets/plugin/Voxgig/Plugin.pm +70 -0
  618. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Aws.pm +263 -0
  619. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Azuresecrets.pm +159 -0
  620. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Boru.pm +180 -0
  621. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Doppler.pm +92 -0
  622. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Gcpsecrets.pm +138 -0
  623. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Hashicorp.pm +213 -0
  624. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Httpjson.pm +173 -0
  625. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Infisical.pm +132 -0
  626. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Onepassword.pm +132 -0
  627. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Proc.pm +102 -0
  628. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Secretspec.pm +132 -0
  629. package/project/.sdk/tm/perl/feature/secrets/plugins/Voxgig/Sekreto/Plugins/Sigv4.pm +190 -0
  630. package/project/.sdk/tm/perl/feature/secrets/sekreto/Voxgig/Sekreto/Addr.pm +124 -0
  631. package/project/.sdk/tm/perl/feature/secrets/sekreto/Voxgig/Sekreto/Providers.pm +301 -0
  632. package/project/.sdk/tm/perl/feature/secrets/sekreto/Voxgig/Sekreto.pm +605 -0
  633. package/project/.sdk/tm/perl/feature/secrets_feature.pm +696 -0
  634. package/project/.sdk/tm/perl/lib/Voxgig/Struct.pm +1 -1
  635. package/project/.sdk/tm/perl/t/feature/secrets/secrets.t +1004 -0
  636. package/project/.sdk/tm/perl/t/vendor/omni/Voxgig/Omni/Runner.pm +1 -1
  637. package/project/.sdk/tm/perl/t/vendor/omni/Voxgig/Omni/Util.pm +1 -1
  638. package/project/.sdk/tm/perl/t/vendor/omni/Voxgig/Omni.pm +1 -1
  639. package/project/.sdk/tm/php/feature/SecretsFeature.php +694 -0
  640. package/project/.sdk/tm/php/feature/secrets/plugin/Capability.php +226 -0
  641. package/project/.sdk/tm/php/feature/secrets/plugin/Catalog.php +75 -0
  642. package/project/.sdk/tm/php/feature/secrets/plugin/Config.php +444 -0
  643. package/project/.sdk/tm/php/feature/secrets/plugin/Depend.php +262 -0
  644. package/project/.sdk/tm/php/feature/secrets/plugin/Env.php +202 -0
  645. package/project/.sdk/tm/php/feature/secrets/plugin/Export.php +74 -0
  646. package/project/.sdk/tm/php/feature/secrets/plugin/Graph.php +195 -0
  647. package/project/.sdk/tm/php/feature/secrets/plugin/Host.php +1514 -0
  648. package/project/.sdk/tm/php/feature/secrets/plugin/Order.php +260 -0
  649. package/project/.sdk/tm/php/feature/secrets/plugin/Point.php +129 -0
  650. package/project/.sdk/tm/php/feature/secrets/plugin/Ref.php +169 -0
  651. package/project/.sdk/tm/php/feature/secrets/plugin/Resolve.php +79 -0
  652. package/project/.sdk/tm/php/feature/secrets/plugin/Types.php +348 -0
  653. package/project/.sdk/tm/php/feature/secrets/plugin/Version.php +163 -0
  654. package/project/.sdk/tm/php/feature/secrets/plugin/plugin.php +40 -0
  655. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/aws.php +274 -0
  656. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/azuresecrets.php +170 -0
  657. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/boru.php +163 -0
  658. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/doppler.php +106 -0
  659. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/gcpsecrets.php +144 -0
  660. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/hashicorp.php +194 -0
  661. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/httpjson.php +113 -0
  662. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/infisical.php +131 -0
  663. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/onepassword.php +150 -0
  664. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/runcmd.php +101 -0
  665. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/secretspec.php +146 -0
  666. package/project/.sdk/tm/php/feature/secrets/sekreto/plugins/sigv4.php +161 -0
  667. package/project/.sdk/tm/php/feature/secrets/sekreto/src/Addr.php +129 -0
  668. package/project/.sdk/tm/php/feature/secrets/sekreto/src/Providers.php +322 -0
  669. package/project/.sdk/tm/php/feature/secrets/sekreto/src/Sekreto.php +724 -0
  670. package/project/.sdk/tm/php/test/feature/secrets/SecretsTest.php +1165 -0
  671. package/project/.sdk/tm/php/test/vendor/omni/Runner.php +2 -2
  672. package/project/.sdk/tm/php/test/vendor/omni/Util.php +2 -2
  673. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/__init__.py +1 -1
  674. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/capability.py +1 -1
  675. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/catalog.py +1 -1
  676. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/config.py +1 -1
  677. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/depend.py +1 -1
  678. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/env.py +1 -1
  679. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/export.py +1 -1
  680. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/graph.py +1 -1
  681. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/host.py +1 -1
  682. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/order.py +1 -1
  683. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/point.py +1 -1
  684. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/ref.py +1 -1
  685. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/resolve.py +1 -1
  686. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/types.py +1 -1
  687. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_plugin/version.py +1 -1
  688. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/__init__.py +2 -2
  689. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/addr.py +1 -1
  690. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/aws.py +1 -1
  691. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/azuresecrets.py +1 -1
  692. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/boru.py +1 -1
  693. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/doppler.py +1 -1
  694. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/gcpsecrets.py +1 -1
  695. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/hashicorp.py +1 -1
  696. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/httpjson.py +1 -1
  697. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/infisical.py +1 -1
  698. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/onepassword.py +1 -1
  699. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/secretspec.py +1 -1
  700. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/plugins/sigv4.py +1 -1
  701. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/providers.py +1 -1
  702. package/project/.sdk/tm/py/pkg/feature/secrets/voxgig_sekreto/sekreto.py +1 -1
  703. package/project/.sdk/tm/py/pkg/feature/secrets_feature.py +28 -6
  704. package/project/.sdk/tm/py/pkg/utility/voxgig_struct/voxgig_struct.py +1 -1
  705. package/project/.sdk/tm/py/test/feature/secrets/test_secrets.py +114 -0
  706. package/project/.sdk/tm/py/test/voxgig_omni/__init__.py +1 -1
  707. package/project/.sdk/tm/py/test/voxgig_omni/runner.py +1 -1
  708. package/project/.sdk/tm/py/test/voxgig_omni/util.py +1 -1
  709. package/project/.sdk/tm/rb/Makefile +7 -1
  710. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/capability.rb +118 -0
  711. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/catalog.rb +55 -0
  712. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/config.rb +315 -0
  713. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/depend.rb +197 -0
  714. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/env.rb +143 -0
  715. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/export.rb +52 -0
  716. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/graph.rb +147 -0
  717. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/host.rb +1079 -0
  718. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/order.rb +169 -0
  719. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/point.rb +93 -0
  720. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/ref.rb +112 -0
  721. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/resolve.rb +56 -0
  722. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/types.rb +99 -0
  723. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin/version.rb +106 -0
  724. package/project/.sdk/tm/rb/feature/secrets/voxgig_plugin.rb +24 -0
  725. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/addr.rb +111 -0
  726. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/aws.rb +200 -0
  727. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/azuresecrets.rb +130 -0
  728. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/boru.rb +121 -0
  729. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/doppler.rb +66 -0
  730. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/gcpsecrets.rb +107 -0
  731. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/hashicorp.rb +137 -0
  732. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/httpjson.rb +136 -0
  733. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/infisical.rb +97 -0
  734. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/onepassword.rb +104 -0
  735. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/secretspec.rb +113 -0
  736. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/plugins/sigv4.rb +127 -0
  737. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/providers.rb +210 -0
  738. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto/sekreto.rb +465 -0
  739. package/project/.sdk/tm/rb/feature/secrets/voxgig_sekreto.rb +30 -0
  740. package/project/.sdk/tm/rb/feature/secrets_feature.rb +583 -0
  741. package/project/.sdk/tm/rb/test/feature/secrets/secrets_feature_test.rb +935 -0
  742. package/project/.sdk/tm/rb/test/vendor/omni/runner.rb +2 -2
  743. package/project/.sdk/tm/rb/test/vendor/omni/util.rb +2 -2
  744. package/project/.sdk/tm/rb/test/vendor/omni/voxgig_omni.rb +2 -2
  745. package/project/.sdk/tm/rust/feature/secrets/plugin/capability.rs +130 -0
  746. package/project/.sdk/tm/rust/feature/secrets/plugin/catalog.rs +114 -0
  747. package/project/.sdk/tm/rust/feature/secrets/plugin/config.rs +416 -0
  748. package/project/.sdk/tm/rust/feature/secrets/plugin/depend.rs +245 -0
  749. package/project/.sdk/tm/rust/feature/secrets/plugin/env.rs +200 -0
  750. package/project/.sdk/tm/rust/feature/secrets/plugin/export.rs +90 -0
  751. package/project/.sdk/tm/rust/feature/secrets/plugin/graph.rs +231 -0
  752. package/project/.sdk/tm/rust/feature/secrets/plugin/host.rs +1565 -0
  753. package/project/.sdk/tm/rust/feature/secrets/plugin/mod.rs +18 -0
  754. package/project/.sdk/tm/rust/feature/secrets/plugin/order.rs +226 -0
  755. package/project/.sdk/tm/rust/feature/secrets/plugin/point.rs +137 -0
  756. package/project/.sdk/tm/rust/feature/secrets/plugin/refs.rs +148 -0
  757. package/project/.sdk/tm/rust/feature/secrets/plugin/resolve.rs +83 -0
  758. package/project/.sdk/tm/rust/feature/secrets/plugin/types.rs +132 -0
  759. package/project/.sdk/tm/rust/feature/secrets/plugin/value.rs +433 -0
  760. package/project/.sdk/tm/rust/feature/secrets/plugin/version.rs +174 -0
  761. package/project/.sdk/tm/rust/feature/secrets/plugins/aws/crypto.rs +146 -0
  762. package/project/.sdk/tm/rust/feature/secrets/plugins/aws/sigv4.rs +230 -0
  763. package/project/.sdk/tm/rust/feature/secrets/plugins/aws.rs +328 -0
  764. package/project/.sdk/tm/rust/feature/secrets/plugins/azuresecrets.rs +184 -0
  765. package/project/.sdk/tm/rust/feature/secrets/plugins/boru.rs +172 -0
  766. package/project/.sdk/tm/rust/feature/secrets/plugins/doppler.rs +102 -0
  767. package/project/.sdk/tm/rust/feature/secrets/plugins/gcpsecrets.rs +153 -0
  768. package/project/.sdk/tm/rust/feature/secrets/plugins/hashicorp.rs +228 -0
  769. package/project/.sdk/tm/rust/feature/secrets/plugins/httpjson/http.rs +537 -0
  770. package/project/.sdk/tm/rust/feature/secrets/plugins/httpjson/json.rs +300 -0
  771. package/project/.sdk/tm/rust/feature/secrets/plugins/httpjson.rs +137 -0
  772. package/project/.sdk/tm/rust/feature/secrets/plugins/infisical.rs +148 -0
  773. package/project/.sdk/tm/rust/feature/secrets/plugins/onepassword.rs +165 -0
  774. package/project/.sdk/tm/rust/feature/secrets/plugins/secretspec.rs +150 -0
  775. package/project/.sdk/tm/rust/feature/secrets/sekreto/addr.rs +144 -0
  776. package/project/.sdk/tm/rust/feature/secrets/sekreto/mod.rs +51 -0
  777. package/project/.sdk/tm/rust/feature/secrets/sekreto/providers.rs +637 -0
  778. package/project/.sdk/tm/rust/feature/secrets/sekreto/sekreto.rs +677 -0
  779. package/project/.sdk/tm/rust/feature/secrets.rs +984 -0
  780. package/project/.sdk/tm/rust/tests/feature/secrets/main.rs +1605 -0
  781. package/project/.sdk/tm/rust/tests/vendor/omni/json.rs +2 -2
  782. package/project/.sdk/tm/rust/tests/vendor/omni/mod.rs +2 -2
  783. package/project/.sdk/tm/rust/tests/vendor/omni/regex.rs +2 -2
  784. package/project/.sdk/tm/rust/tests/vendor/omni/runner.rs +2 -2
  785. package/project/.sdk/tm/rust/tests/vendor/omni/util.rs +2 -2
  786. package/project/.sdk/tm/scala/Makefile +8 -3
  787. package/project/.sdk/tm/scala/feature/SecretsFeature.scala +578 -0
  788. package/project/.sdk/tm/scala/feature/secrets/plugin/Capability.scala +96 -0
  789. package/project/.sdk/tm/scala/feature/secrets/plugin/Config.scala +270 -0
  790. package/project/.sdk/tm/scala/feature/secrets/plugin/Depend.scala +216 -0
  791. package/project/.sdk/tm/scala/feature/secrets/plugin/Env.scala +144 -0
  792. package/project/.sdk/tm/scala/feature/secrets/plugin/Export.scala +59 -0
  793. package/project/.sdk/tm/scala/feature/secrets/plugin/Graph.scala +149 -0
  794. package/project/.sdk/tm/scala/feature/secrets/plugin/Host.scala +1089 -0
  795. package/project/.sdk/tm/scala/feature/secrets/plugin/Json.scala +156 -0
  796. package/project/.sdk/tm/scala/feature/secrets/plugin/Order.scala +169 -0
  797. package/project/.sdk/tm/scala/feature/secrets/plugin/Plugin.scala +47 -0
  798. package/project/.sdk/tm/scala/feature/secrets/plugin/Point.scala +107 -0
  799. package/project/.sdk/tm/scala/feature/secrets/plugin/Refs.scala +131 -0
  800. package/project/.sdk/tm/scala/feature/secrets/plugin/Resolve.scala +53 -0
  801. package/project/.sdk/tm/scala/feature/secrets/plugin/Types.scala +110 -0
  802. package/project/.sdk/tm/scala/feature/secrets/plugin/Value.scala +157 -0
  803. package/project/.sdk/tm/scala/feature/secrets/plugin/Version.scala +136 -0
  804. package/project/.sdk/tm/scala/feature/secrets/sekreto/Json.scala +302 -0
  805. package/project/.sdk/tm/scala/feature/secrets/sekreto/Provider.scala +20 -0
  806. package/project/.sdk/tm/scala/feature/secrets/sekreto/Providers.scala +281 -0
  807. package/project/.sdk/tm/scala/feature/secrets/sekreto/Sekreto.scala +473 -0
  808. package/project/.sdk/tm/scala/feature/secrets/sekreto/Spec.scala +123 -0
  809. package/project/.sdk/tm/scala/feature/secrets/sekreto/Support.scala +216 -0
  810. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Aws.scala +225 -0
  811. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Azuresecrets.scala +124 -0
  812. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Boru.scala +104 -0
  813. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Doppler.scala +68 -0
  814. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Gcpsecrets.scala +97 -0
  815. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Hashicorp.scala +131 -0
  816. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Httpjson.scala +209 -0
  817. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Infisical.scala +98 -0
  818. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Onepassword.scala +90 -0
  819. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Secretspec.scala +95 -0
  820. package/project/.sdk/tm/scala/feature/secrets/sekreto/plugins/Sigv4.scala +214 -0
  821. package/project/.sdk/tm/scala/sdktest/feature/secrets/SecretsTestMain.scala +1042 -0
  822. package/project/.sdk/tm/scala/sdktest/vendor/omni/Json.scala +2 -2
  823. package/project/.sdk/tm/scala/sdktest/vendor/omni/Runner.scala +2 -2
  824. package/project/.sdk/tm/scala/sdktest/vendor/omni/Util.scala +2 -2
  825. package/project/.sdk/tm/scala/utility/Make.scala +7 -0
  826. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/SecretsFeature.swift +669 -0
  827. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Capability.swift +98 -0
  828. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Catalog.swift +87 -0
  829. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Config.swift +298 -0
  830. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Depend.swift +209 -0
  831. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Env.swift +191 -0
  832. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Export.swift +63 -0
  833. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Graph.swift +158 -0
  834. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Host.swift +1141 -0
  835. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Json.swift +192 -0
  836. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Order.swift +183 -0
  837. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Point.swift +130 -0
  838. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Refs.swift +141 -0
  839. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Resolve.swift +59 -0
  840. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Types.swift +125 -0
  841. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Value.swift +198 -0
  842. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugin/Version.swift +139 -0
  843. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Aws.swift +271 -0
  844. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Azuresecrets.swift +173 -0
  845. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Boru.swift +139 -0
  846. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Crypto.swift +198 -0
  847. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Doppler.swift +86 -0
  848. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Gcpsecrets.swift +129 -0
  849. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Hashicorp.swift +175 -0
  850. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Httpjson.swift +310 -0
  851. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Infisical.swift +140 -0
  852. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Onepassword.swift +118 -0
  853. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Proc.swift +105 -0
  854. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Secretspec.swift +111 -0
  855. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/plugins/Sigv4.swift +297 -0
  856. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Addr.swift +120 -0
  857. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Json.swift +452 -0
  858. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Provider.swift +25 -0
  859. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Providers.swift +689 -0
  860. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/secrets/sekreto/Sekreto.swift +755 -0
  861. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/utility/MakeOptions.swift +9 -0
  862. package/project/.sdk/tm/swift/Tests/ProjectNameSDKTests/PrimaryUtilityTest.swift +30 -0
  863. package/project/.sdk/tm/swift/Tests/ProjectNameSDKTests/feature/secrets/SecretsFeatureTest.swift +1030 -0
  864. package/project/.sdk/tm/swift/Tests/vendor/omni/Json.swift +2 -2
  865. package/project/.sdk/tm/swift/Tests/vendor/omni/Runner.swift +2 -2
  866. package/project/.sdk/tm/swift/Tests/vendor/omni/Util.swift +2 -2
  867. package/project/.sdk/tm/ts/src/feature/secrets/SecretsFeature.ts +35 -12
  868. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Capability.ts +1 -1
  869. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Catalog.ts +1 -1
  870. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Config.ts +1 -1
  871. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Depend.ts +1 -1
  872. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Env.ts +1 -1
  873. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Export.ts +1 -1
  874. package/project/.sdk/tm/ts/src/feature/secrets/plugin/FeatureHost.ts +1 -1
  875. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Graph.ts +1 -1
  876. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Host.ts +1 -1
  877. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Order.ts +1 -1
  878. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Point.ts +1 -1
  879. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Ref.ts +1 -1
  880. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Resolve.ts +1 -1
  881. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Types.ts +1 -1
  882. package/project/.sdk/tm/ts/src/feature/secrets/plugin/Version.ts +1 -1
  883. package/project/.sdk/tm/ts/src/feature/secrets/plugin/index.ts +1 -1
  884. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/Sekreto.ts +1 -1
  885. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/index.ts +1 -1
  886. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/aws.ts +1 -1
  887. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/azuresecrets.ts +1 -1
  888. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/boru.ts +1 -1
  889. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/doppler.ts +1 -1
  890. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/gcpsecrets.ts +1 -1
  891. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/hashicorp.ts +1 -1
  892. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/httpjson.ts +1 -1
  893. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/infisical.ts +1 -1
  894. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/onepassword.ts +1 -1
  895. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/secretspec.ts +1 -1
  896. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/plugins/sigv4.ts +1 -1
  897. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/addr.ts +1 -1
  898. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/builtin.ts +1 -1
  899. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/dotenv.ts +1 -1
  900. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/env.ts +1 -1
  901. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/file.ts +1 -1
  902. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/memory.ts +1 -1
  903. package/project/.sdk/tm/ts/src/feature/secrets/sekreto/provider/support.ts +1 -1
  904. package/project/.sdk/tm/ts/src/utility/StructUtility.ts +1 -1
  905. package/project/.sdk/tm/ts/test/feature/secrets/Secrets.test.ts +73 -0
  906. package/project/.sdk/tm/ts/test/vendor/omni/Runner.ts +1 -1
  907. package/project/.sdk/tm/ts/test/vendor/omni/Util.ts +1 -1
  908. package/project/.sdk/tm/ts/test/vendor/omni/index.ts +1 -1
  909. package/project/.sdk/tm/zig/feature/secrets/plugin/capability.zig +137 -0
  910. package/project/.sdk/tm/zig/feature/secrets/plugin/catalog.zig +90 -0
  911. package/project/.sdk/tm/zig/feature/secrets/plugin/config.zig +346 -0
  912. package/project/.sdk/tm/zig/feature/secrets/plugin/depend.zig +244 -0
  913. package/project/.sdk/tm/zig/feature/secrets/plugin/env.zig +201 -0
  914. package/project/.sdk/tm/zig/feature/secrets/plugin/export.zig +83 -0
  915. package/project/.sdk/tm/zig/feature/secrets/plugin/graph.zig +212 -0
  916. package/project/.sdk/tm/zig/feature/secrets/plugin/host.zig +1224 -0
  917. package/project/.sdk/tm/zig/feature/secrets/plugin/inst.zig +126 -0
  918. package/project/.sdk/tm/zig/feature/secrets/plugin/order.zig +228 -0
  919. package/project/.sdk/tm/zig/feature/secrets/plugin/plugin.zig +34 -0
  920. package/project/.sdk/tm/zig/feature/secrets/plugin/point.zig +166 -0
  921. package/project/.sdk/tm/zig/feature/secrets/plugin/ref.zig +147 -0
  922. package/project/.sdk/tm/zig/feature/secrets/plugin/resolve.zig +74 -0
  923. package/project/.sdk/tm/zig/feature/secrets/plugin/types.zig +140 -0
  924. package/project/.sdk/tm/zig/feature/secrets/plugin/value.zig +662 -0
  925. package/project/.sdk/tm/zig/feature/secrets/plugin/version.zig +139 -0
  926. package/project/.sdk/tm/zig/feature/secrets/plugins/aws.zig +294 -0
  927. package/project/.sdk/tm/zig/feature/secrets/plugins/azuresecrets.zig +222 -0
  928. package/project/.sdk/tm/zig/feature/secrets/plugins/boru.zig +188 -0
  929. package/project/.sdk/tm/zig/feature/secrets/plugins/doppler.zig +135 -0
  930. package/project/.sdk/tm/zig/feature/secrets/plugins/gcpsecrets.zig +170 -0
  931. package/project/.sdk/tm/zig/feature/secrets/plugins/hashicorp.zig +242 -0
  932. package/project/.sdk/tm/zig/feature/secrets/plugins/httpjson.zig +535 -0
  933. package/project/.sdk/tm/zig/feature/secrets/plugins/infisical.zig +167 -0
  934. package/project/.sdk/tm/zig/feature/secrets/plugins/onepassword.zig +202 -0
  935. package/project/.sdk/tm/zig/feature/secrets/plugins/secretspec.zig +160 -0
  936. package/project/.sdk/tm/zig/feature/secrets/plugins/sigv4.zig +336 -0
  937. package/project/.sdk/tm/zig/feature/secrets/sekreto/addr.zig +148 -0
  938. package/project/.sdk/tm/zig/feature/secrets/sekreto/builtins.zig +259 -0
  939. package/project/.sdk/tm/zig/feature/secrets/sekreto/provider.zig +440 -0
  940. package/project/.sdk/tm/zig/feature/secrets/sekreto/sekreto.zig +944 -0
  941. package/project/.sdk/tm/zig/feature/secrets.zig +854 -0
  942. package/project/.sdk/tm/zig/test/feature/secrets/secrets_test.zig +891 -0
  943. package/project/.sdk/tm/zig/test/vendor/omni/omni.zig +2 -2
  944. package/project/.sdk/tm/zig/test/vendor/omni/regex.zig +2 -2
  945. package/project/.sdk/tm/zig/utility/voxgigstruct/regex.zig +2 -2
  946. package/project/.sdk/tm/zig/utility/voxgigstruct/struct.zig +2 -2
  947. package/project/sdkgen-package.json +1 -4
  948. package/src/helpers/manifest.ts +81 -1
  949. package/src/helpers/modelNames.ts +284 -0
  950. package/src/helpers/naming.ts +45 -1
  951. package/src/sdkgen.ts +11 -1
  952. package/src/testkit.ts +115 -26
  953. package/src/utility.ts +17 -7
  954. package/project/.sdk/model/target/dart.aon +0 -58
  955. package/project/.sdk/model/target/lean.aon +0 -91
  956. package/project/.sdk/model/target/seneca-provider.aon +0 -120
  957. package/project/.sdk/src/cmp/dart/Config_dart.ts +0 -176
  958. package/project/.sdk/src/cmp/dart/EntityBase_dart.ts +0 -34
  959. package/project/.sdk/src/cmp/dart/EntityOperation_dart.ts +0 -43
  960. package/project/.sdk/src/cmp/dart/EntityTypes_dart.ts +0 -207
  961. package/project/.sdk/src/cmp/dart/Entity_dart.ts +0 -87
  962. package/project/.sdk/src/cmp/dart/Gitignore_dart.ts +0 -34
  963. package/project/.sdk/src/cmp/dart/MainEntity_dart.ts +0 -33
  964. package/project/.sdk/src/cmp/dart/Main_dart.ts +0 -106
  965. package/project/.sdk/src/cmp/dart/Package_dart.ts +0 -82
  966. package/project/.sdk/src/cmp/dart/ReadmeEntity_dart.ts +0 -177
  967. package/project/.sdk/src/cmp/dart/ReadmeExamplesTest_dart.ts +0 -238
  968. package/project/.sdk/src/cmp/dart/ReadmeExplanation_dart.ts +0 -53
  969. package/project/.sdk/src/cmp/dart/ReadmeHowto_dart.ts +0 -152
  970. package/project/.sdk/src/cmp/dart/ReadmeInstall_dart.ts +0 -59
  971. package/project/.sdk/src/cmp/dart/ReadmeIntro_dart.ts +0 -65
  972. package/project/.sdk/src/cmp/dart/ReadmeModel_dart.ts +0 -151
  973. package/project/.sdk/src/cmp/dart/ReadmeOptions_dart.ts +0 -63
  974. package/project/.sdk/src/cmp/dart/ReadmeQuick_dart.ts +0 -225
  975. package/project/.sdk/src/cmp/dart/ReadmeRef_dart.ts +0 -397
  976. package/project/.sdk/src/cmp/dart/ReadmeTopHowto_dart.ts +0 -24
  977. package/project/.sdk/src/cmp/dart/ReadmeTopQuick_dart.ts +0 -106
  978. package/project/.sdk/src/cmp/dart/ReadmeTopTest_dart.ts +0 -78
  979. package/project/.sdk/src/cmp/dart/SdkError_dart.ts +0 -42
  980. package/project/.sdk/src/cmp/dart/TestDirect_dart.ts +0 -516
  981. package/project/.sdk/src/cmp/dart/TestEntity_dart.ts +0 -628
  982. package/project/.sdk/src/cmp/dart/Test_dart.ts +0 -116
  983. package/project/.sdk/src/cmp/dart/fragment/Config.data.fragment.dart +0 -79
  984. package/project/.sdk/src/cmp/dart/fragment/Config.fragment.dart +0 -51
  985. package/project/.sdk/src/cmp/dart/fragment/Direct.test.fragment.dart +0 -25
  986. package/project/.sdk/src/cmp/dart/fragment/Entity.fragment.dart +0 -29
  987. package/project/.sdk/src/cmp/dart/fragment/Entity.test.fragment.dart +0 -28
  988. package/project/.sdk/src/cmp/dart/fragment/EntityBase.fragment.dart +0 -302
  989. package/project/.sdk/src/cmp/dart/fragment/EntityCreateOp.fragment.dart +0 -98
  990. package/project/.sdk/src/cmp/dart/fragment/EntityListOp.fragment.dart +0 -90
  991. package/project/.sdk/src/cmp/dart/fragment/EntityLoadOp.fragment.dart +0 -102
  992. package/project/.sdk/src/cmp/dart/fragment/EntityRemoveOp.fragment.dart +0 -108
  993. package/project/.sdk/src/cmp/dart/fragment/EntityUpdateOp.fragment.dart +0 -102
  994. package/project/.sdk/src/cmp/dart/fragment/Main.fragment.dart +0 -338
  995. package/project/.sdk/src/cmp/dart/fragment/SdkError.fragment.dart +0 -26
  996. package/project/.sdk/src/cmp/dart/tsconfig.json +0 -15
  997. package/project/.sdk/src/cmp/dart/utility_dart.ts +0 -155
  998. package/project/.sdk/src/cmp/lean/Config_lean.ts +0 -93
  999. package/project/.sdk/src/cmp/lean/Entity_lean.ts +0 -9
  1000. package/project/.sdk/src/cmp/lean/Gitignore_lean.ts +0 -18
  1001. package/project/.sdk/src/cmp/lean/Main_lean.ts +0 -120
  1002. package/project/.sdk/src/cmp/lean/Package_lean.ts +0 -93
  1003. package/project/.sdk/src/cmp/lean/ReadmeEntity_lean.ts +0 -29
  1004. package/project/.sdk/src/cmp/lean/ReadmeExplanation_lean.ts +0 -19
  1005. package/project/.sdk/src/cmp/lean/ReadmeHowto_lean.ts +0 -25
  1006. package/project/.sdk/src/cmp/lean/ReadmeInstall_lean.ts +0 -39
  1007. package/project/.sdk/src/cmp/lean/ReadmeIntro_lean.ts +0 -25
  1008. package/project/.sdk/src/cmp/lean/ReadmeModel_lean.ts +0 -24
  1009. package/project/.sdk/src/cmp/lean/ReadmeOptions_lean.ts +0 -22
  1010. package/project/.sdk/src/cmp/lean/ReadmeQuick_lean.ts +0 -50
  1011. package/project/.sdk/src/cmp/lean/ReadmeRef_lean.ts +0 -40
  1012. package/project/.sdk/src/cmp/lean/ReadmeTopHowto_lean.ts +0 -16
  1013. package/project/.sdk/src/cmp/lean/ReadmeTopQuick_lean.ts +0 -23
  1014. package/project/.sdk/src/cmp/lean/ReadmeTopTest_lean.ts +0 -19
  1015. package/project/.sdk/src/cmp/lean/Test_lean.ts +0 -261
  1016. package/project/.sdk/src/cmp/lean/utility_lean.ts +0 -129
  1017. package/project/.sdk/src/cmp/seneca-provider/Extras_seneca-provider.ts +0 -4080
  1018. package/project/.sdk/src/cmp/seneca-provider/Gitignore_seneca-provider.ts +0 -161
  1019. package/project/.sdk/src/cmp/seneca-provider/Main_seneca-provider.ts +0 -1011
  1020. package/project/.sdk/tm/dart/LICENSE +0 -22
  1021. package/project/.sdk/tm/dart/Makefile +0 -50
  1022. package/project/.sdk/tm/dart/lib/Context.dart +0 -150
  1023. package/project/.sdk/tm/dart/lib/Control.dart +0 -15
  1024. package/project/.sdk/tm/dart/lib/Operation.dart +0 -31
  1025. package/project/.sdk/tm/dart/lib/Point.dart +0 -51
  1026. package/project/.sdk/tm/dart/lib/Response.dart +0 -32
  1027. package/project/.sdk/tm/dart/lib/Result.dart +0 -39
  1028. package/project/.sdk/tm/dart/lib/Spec.dart +0 -49
  1029. package/project/.sdk/tm/dart/lib/feature/audit/AuditFeature.dart +0 -103
  1030. package/project/.sdk/tm/dart/lib/feature/base/BaseFeature.dart +0 -76
  1031. package/project/.sdk/tm/dart/lib/feature/cache/CacheFeature.dart +0 -152
  1032. package/project/.sdk/tm/dart/lib/feature/clienttrack/ClienttrackFeature.dart +0 -104
  1033. package/project/.sdk/tm/dart/lib/feature/cost/CostFeature.dart +0 -446
  1034. package/project/.sdk/tm/dart/lib/feature/debug/DebugFeature.dart +0 -153
  1035. package/project/.sdk/tm/dart/lib/feature/idempotency/IdempotencyFeature.dart +0 -92
  1036. package/project/.sdk/tm/dart/lib/feature/log/LogFeature.dart +0 -85
  1037. package/project/.sdk/tm/dart/lib/feature/metrics/MetricsFeature.dart +0 -103
  1038. package/project/.sdk/tm/dart/lib/feature/netsim/NetsimFeature.dart +0 -186
  1039. package/project/.sdk/tm/dart/lib/feature/paging/PagingFeature.dart +0 -240
  1040. package/project/.sdk/tm/dart/lib/feature/proxy/ProxyFeature.dart +0 -118
  1041. package/project/.sdk/tm/dart/lib/feature/ratelimit/RatelimitFeature.dart +0 -103
  1042. package/project/.sdk/tm/dart/lib/feature/rbac/RbacFeature.dart +0 -121
  1043. package/project/.sdk/tm/dart/lib/feature/retry/RetryFeature.dart +0 -155
  1044. package/project/.sdk/tm/dart/lib/feature/streaming/StreamingFeature.dart +0 -97
  1045. package/project/.sdk/tm/dart/lib/feature/telemetry/TelemetryFeature.dart +0 -136
  1046. package/project/.sdk/tm/dart/lib/feature/test/TestFeature.dart +0 -328
  1047. package/project/.sdk/tm/dart/lib/feature/timeout/TimeoutFeature.dart +0 -104
  1048. package/project/.sdk/tm/dart/lib/utility/CleanUtility.dart +0 -12
  1049. package/project/.sdk/tm/dart/lib/utility/DoneUtility.dart +0 -18
  1050. package/project/.sdk/tm/dart/lib/utility/ErrUtility.dart +0 -46
  1051. package/project/.sdk/tm/dart/lib/utility/FeatureAddUtility.dart +0 -35
  1052. package/project/.sdk/tm/dart/lib/utility/FeatureHookUtility.dart +0 -20
  1053. package/project/.sdk/tm/dart/lib/utility/FeatureInitUtility.dart +0 -9
  1054. package/project/.sdk/tm/dart/lib/utility/FetcherUtility.dart +0 -104
  1055. package/project/.sdk/tm/dart/lib/utility/GraphqlUtility.dart +0 -162
  1056. package/project/.sdk/tm/dart/lib/utility/MakeContextUtility.dart +0 -6
  1057. package/project/.sdk/tm/dart/lib/utility/MakeErrorUtility.dart +0 -71
  1058. package/project/.sdk/tm/dart/lib/utility/MakeFetchDefUtility.dart +0 -42
  1059. package/project/.sdk/tm/dart/lib/utility/MakeOptionsUtility.dart +0 -233
  1060. package/project/.sdk/tm/dart/lib/utility/MakePointUtility.dart +0 -130
  1061. package/project/.sdk/tm/dart/lib/utility/MakeRequestUtility.dart +0 -66
  1062. package/project/.sdk/tm/dart/lib/utility/MakeResponseUtility.dart +0 -59
  1063. package/project/.sdk/tm/dart/lib/utility/MakeResultUtility.dart +0 -49
  1064. package/project/.sdk/tm/dart/lib/utility/MakeSpecUtility.dart +0 -77
  1065. package/project/.sdk/tm/dart/lib/utility/MakeUrlUtility.dart +0 -51
  1066. package/project/.sdk/tm/dart/lib/utility/ParamUtility.dart +0 -56
  1067. package/project/.sdk/tm/dart/lib/utility/PrepareAuthUtility.dart +0 -46
  1068. package/project/.sdk/tm/dart/lib/utility/PrepareBodyUtility.dart +0 -19
  1069. package/project/.sdk/tm/dart/lib/utility/PrepareHeadersUtility.dart +0 -11
  1070. package/project/.sdk/tm/dart/lib/utility/PrepareMethodUtility.dart +0 -30
  1071. package/project/.sdk/tm/dart/lib/utility/PrepareParamsUtility.dart +0 -23
  1072. package/project/.sdk/tm/dart/lib/utility/PreparePathUtility.dart +0 -9
  1073. package/project/.sdk/tm/dart/lib/utility/PrepareQueryUtility.dart +0 -18
  1074. package/project/.sdk/tm/dart/lib/utility/ResultBasicUtility.dart +0 -29
  1075. package/project/.sdk/tm/dart/lib/utility/ResultBodyUtility.dart +0 -15
  1076. package/project/.sdk/tm/dart/lib/utility/ResultHeadersUtility.dart +0 -18
  1077. package/project/.sdk/tm/dart/lib/utility/StructUtility.dart +0 -127
  1078. package/project/.sdk/tm/dart/lib/utility/TransformRequestUtility.dart +0 -28
  1079. package/project/.sdk/tm/dart/lib/utility/TransformResponseUtility.dart +0 -44
  1080. package/project/.sdk/tm/dart/lib/utility/Utility.dart +0 -239
  1081. package/project/.sdk/tm/dart/lib/utility/voxgig_struct.dart +0 -2462
  1082. package/project/.sdk/tm/dart/src/feature/README.md +0 -3
  1083. package/project/.sdk/tm/dart/src/feature/telemetry/.gitkeep +0 -0
  1084. package/project/.sdk/tm/dart/src/feature/test/.gitkeep +0 -0
  1085. package/project/.sdk/tm/dart/src/feature/timeout/.gitkeep +0 -0
  1086. package/project/.sdk/tm/dart/test/custom_test.dart +0 -65
  1087. package/project/.sdk/tm/dart/test/exists_test.dart +0 -12
  1088. package/project/.sdk/tm/dart/test/feature/harness.dart +0 -329
  1089. package/project/.sdk/tm/dart/test/feature_test.dart +0 -1193
  1090. package/project/.sdk/tm/dart/test/harness.dart +0 -153
  1091. package/project/.sdk/tm/dart/test/netsim_test.dart +0 -48
  1092. package/project/.sdk/tm/dart/test/omni.dart +0 -520
  1093. package/project/.sdk/tm/dart/test/omni_smoke_test.dart +0 -143
  1094. package/project/.sdk/tm/dart/test/pipeline_test.dart +0 -608
  1095. package/project/.sdk/tm/dart/test/primary_test.dart +0 -476
  1096. package/project/.sdk/tm/dart/test/sdk-test-control.json +0 -19
  1097. package/project/.sdk/tm/dart/test/struct_test.dart +0 -468
  1098. package/project/.sdk/tm/dart/test/utility.dart +0 -198
  1099. package/project/.sdk/tm/dart/test/vendor/omni/omni.dart +0 -7
  1100. package/project/.sdk/tm/dart/test/vendor/omni/runner.dart +0 -653
  1101. package/project/.sdk/tm/dart/test/vendor/omni/util.dart +0 -232
  1102. package/project/.sdk/tm/lean/LICENSE +0 -21
  1103. package/project/.sdk/tm/lean/Makefile +0 -32
  1104. package/project/.sdk/tm/lean/VERSION +0 -1
  1105. package/project/.sdk/tm/lean/src/SdkFeature.lean +0 -171
  1106. package/project/.sdk/tm/lean/src/SdkFeatures.lean +0 -787
  1107. package/project/.sdk/tm/lean/src/SdkJson.lean +0 -134
  1108. package/project/.sdk/tm/lean/src/SdkRuntime.lean +0 -374
  1109. package/project/.sdk/tm/lean/src/SdkUtility.lean +0 -809
  1110. package/project/.sdk/tm/lean/src/VoxgigStruct.lean +0 -2880
  1111. package/project/.sdk/tm/lean/src/Vregex.lean +0 -412
  1112. package/project/.sdk/tm/lean/src/feature/README.md +0 -5
  1113. package/project/.sdk/tm/lean/src/feature/audit/.gitkeep +0 -0
  1114. package/project/.sdk/tm/lean/src/feature/base/.gitkeep +0 -0
  1115. package/project/.sdk/tm/lean/src/feature/cache/.gitkeep +0 -0
  1116. package/project/.sdk/tm/lean/src/feature/clienttrack/.gitkeep +0 -0
  1117. package/project/.sdk/tm/lean/src/feature/cost/.gitkeep +0 -0
  1118. package/project/.sdk/tm/lean/src/feature/debug/.gitkeep +0 -0
  1119. package/project/.sdk/tm/lean/src/feature/idempotency/.gitkeep +0 -0
  1120. package/project/.sdk/tm/lean/src/feature/log/.gitkeep +0 -0
  1121. package/project/.sdk/tm/lean/src/feature/metrics/.gitkeep +0 -0
  1122. package/project/.sdk/tm/lean/src/feature/netsim/.gitkeep +0 -0
  1123. package/project/.sdk/tm/lean/src/feature/paging/.gitkeep +0 -0
  1124. package/project/.sdk/tm/lean/src/feature/proxy/.gitkeep +0 -0
  1125. package/project/.sdk/tm/lean/src/feature/ratelimit/.gitkeep +0 -0
  1126. package/project/.sdk/tm/lean/src/feature/rbac/.gitkeep +0 -0
  1127. package/project/.sdk/tm/lean/src/feature/retry/.gitkeep +0 -0
  1128. package/project/.sdk/tm/lean/src/feature/streaming/.gitkeep +0 -0
  1129. package/project/.sdk/tm/lean/src/feature/telemetry/.gitkeep +0 -0
  1130. package/project/.sdk/tm/lean/src/feature/test/.gitkeep +0 -0
  1131. package/project/.sdk/tm/lean/src/feature/timeout/.gitkeep +0 -0
  1132. package/project/.sdk/tm/lean/test/OmniResolver.lean +0 -358
  1133. package/project/.sdk/tm/lean/test/OmniSmoke.lean +0 -174
  1134. package/project/.sdk/tm/lean/test/StructCorpus.lean +0 -368
  1135. package/project/.sdk/tm/lean/test/TFeature.lean +0 -281
  1136. package/project/.sdk/tm/lean/test/TPrimaryUtility.lean +0 -227
  1137. package/project/.sdk/tm/lean/test/vendor/omni/Omni.lean +0 -997
  1138. package/project/.sdk/tm/seneca-provider/CODE_OF_CONDUCT.md +0 -132
  1139. package/project/.sdk/tm/seneca-provider/LICENSE +0 -21
  1140. package/project/.sdk/tm/seneca-provider/Makefile +0 -15
  1141. package/project/.sdk/tm/seneca-provider/src/tsconfig.json +0 -18
  1142. package/project/.sdk/tm/seneca-provider/test/tsconfig.json +0 -16
  1143. package/project/.sdk/tm/seneca-provider/tsfmt.json +0 -3
  1144. /package/project/.sdk/tm/{dart/src/feature/audit → c/src/feature/secrets}/.gitkeep +0 -0
  1145. /package/project/.sdk/tm/{dart/src/feature/base → clojure/src/feature/secrets}/.gitkeep +0 -0
  1146. /package/project/.sdk/tm/{dart/src/feature/cache → cpp/src/feature/secrets}/.gitkeep +0 -0
  1147. /package/project/.sdk/tm/{dart/src/feature/clienttrack → csharp/src/feature/secrets}/.gitkeep +0 -0
  1148. /package/project/.sdk/tm/{dart/src/feature/cost → elixir/src/feature/secrets}/.gitkeep +0 -0
  1149. /package/project/.sdk/tm/{dart/src/feature/debug → java/src/feature/secrets}/.gitkeep +0 -0
  1150. /package/project/.sdk/tm/{dart/src/feature/idempotency → kotlin/src/feature/secrets}/.gitkeep +0 -0
  1151. /package/project/.sdk/tm/{dart/src/feature/log → lua/src/feature/secrets}/.gitkeep +0 -0
  1152. /package/project/.sdk/tm/{dart/src/feature/metrics → ocaml/src/feature/secrets}/.gitkeep +0 -0
  1153. /package/project/.sdk/tm/{dart/src/feature/netsim → perl/src/feature/secrets}/.gitkeep +0 -0
  1154. /package/project/.sdk/tm/{dart/src/feature/paging → php/src/feature/secrets}/.gitkeep +0 -0
  1155. /package/project/.sdk/tm/{dart/src/feature/proxy → rb/src/feature/secrets}/.gitkeep +0 -0
  1156. /package/project/.sdk/tm/{dart/src/feature/ratelimit → rust/src/feature/secrets}/.gitkeep +0 -0
  1157. /package/project/.sdk/tm/{dart/src/feature/rbac → scala/src/feature/secrets}/.gitkeep +0 -0
  1158. /package/project/.sdk/tm/{dart/src/feature/retry → swift/src/feature/secrets}/.gitkeep +0 -0
  1159. /package/project/.sdk/tm/{dart/src/feature/streaming → zig/src/feature/secrets}/.gitkeep +0 -0
@@ -26,6 +26,106 @@ import {
26
26
  } from './utility_ocaml'
27
27
 
28
28
 
29
+ // THE SECRETS BUILD MODEL, derived from the model ONCE and read by both the
30
+ // Makefile fragment (Main_ocaml emits feature/secrets/feature.mk from it)
31
+ // and the generated config (the definitions list and the bundled transport
32
+ // below), so the two cannot disagree about which kinds are compiled.
33
+ //
34
+ // Upstream sekreto retired its self-registration registry for voxgig/plugin
35
+ // definitions: a provider kind the caller did not pass in `~plugins` is
36
+ // unknown to that Sekreto. So the model's choice of plugin groups IS the
37
+ // SDK's provider vocabulary, and the generated code names each active
38
+ // group's constructor (`def: ocaml:` in model/feature/secrets.aon -
39
+ // `Hashicorp.plugin`, the `unit -> Defs.definition` each vendored kind
40
+ // module defines) and nothing else. A symbol named here whose module the
41
+ // plugin trim removed is an "Unbound module" at compile time - a loud
42
+ // failure, which is the right kind.
43
+ //
44
+ // MODULE ORDER IS THE DEPENDENCY ORDER, written down (upstream's own
45
+ // Makefile is the source): the voxgig/plugin host, the sekreto core, the
46
+ // shared helpers, the kinds. The helpers are ungrouped in the model (see the
47
+ // ocaml note at the head of its `plugin` block) and are listed here only
48
+ // when a selected kind needs them - the transport chain (crypto, sigv4, tls,
49
+ // http, httpjson) when an active group declares `needs.fetch`, the
50
+ // child-process helper (runcmd) when any kind is on - because OCaml
51
+ // compiles exactly what it is handed: an [env, memory] chain compiles the
52
+ // two cores alone, and `secretspec` alone compiles runcmd.ml and no TLS.
53
+ //
54
+ // Null when the model does not activate `secrets` for this target. Read
55
+ // with `only_active: false` on the plugin map (pluginExcludesFor's
56
+ // subtlety: the feature object a component is handed has already been
57
+ // filtered, so a feature whose groups are all off would look like one
58
+ // with no plugin machinery).
59
+ type SecretsBuild = {
60
+ groups: string[],
61
+ tlsGroups: string[],
62
+ tls: boolean,
63
+ plugin: string[],
64
+ core: string[],
65
+ helpers: string[],
66
+ kinds: string[],
67
+ syms: string[],
68
+ }
69
+
70
+ const SECRETS_PLUGIN_MODULES = [
71
+ 'value', 'types', 'ref', 'version', 'capability', 'resolve', 'env',
72
+ 'config', 'graph', 'order', 'export', 'depend', 'point', 'defs',
73
+ 'catalog', 'host',
74
+ ].map((m) => 'feature/secrets/plugin/' + m + '.ml')
75
+
76
+ const SECRETS_CORE_MODULES = ['json', 'secret', 'provider', 'sekreto']
77
+ .map((m) => 'feature/secrets/sekreto/' + m + '.ml')
78
+
79
+ const SECRETS_TLS_HELPERS = ['crypto', 'sigv4', 'tls', 'http', 'httpjson']
80
+ .map((m) => 'feature/secrets/plugins/' + m + '.ml')
81
+
82
+ const SECRETS_PROC_HELPERS = ['feature/secrets/plugins/runcmd.ml']
83
+
84
+ function secretsBuild(model: Model, target: any): SecretsBuild | null {
85
+ const feature = targetFeatures(model, target)
86
+ if (null == (feature as any).secrets) return null
87
+
88
+ const declared = getModelPath(model,
89
+ `main.${KIT}.feature.secrets.plugin`,
90
+ { required: false, only_active: false }) || {}
91
+
92
+ const groups: string[] = []
93
+ const tlsGroups: string[] = []
94
+ const syms = new Set<string>()
95
+ const kinds = new Set<string>()
96
+
97
+ each(declared, (plugin: any) => {
98
+ // Filter on `active` HERE rather than trusting the feature object to
99
+ // arrive filtered (Config_go's note): getting this wrong names a
100
+ // constructor for a module the trim just deleted.
101
+ if (true !== plugin.active) return
102
+ const defs: Record<string, string> = plugin.def?.[target.name] || {}
103
+ if (0 === Object.keys(defs).length) return
104
+ groups.push(plugin.name)
105
+ if (true === plugin.needs?.fetch) tlsGroups.push(plugin.name)
106
+ for (const [sym, path] of Object.entries(defs)) {
107
+ syms.add(sym)
108
+ kinds.add(String(path))
109
+ }
110
+ })
111
+
112
+ const tls = 0 < tlsGroups.length
113
+ return {
114
+ groups: groups.sort(),
115
+ tlsGroups: tlsGroups.sort(),
116
+ tls,
117
+ plugin: SECRETS_PLUGIN_MODULES,
118
+ core: SECRETS_CORE_MODULES,
119
+ helpers: [
120
+ ...(tls ? SECRETS_TLS_HELPERS : []),
121
+ ...(0 < kinds.size ? SECRETS_PROC_HELPERS : []),
122
+ ],
123
+ kinds: Array.from(kinds).sort(),
124
+ syms: Array.from(syms).sort(),
125
+ }
126
+ }
127
+
128
+
29
129
  // sdk_config.ml: make_config () builds the embedded API model as a value;
30
130
  // make_feature name is the N-feature-safe factory the client uses to
31
131
  // instantiate features named in the options (mirrors go/rust Config).
@@ -40,6 +140,8 @@ const Config = cmp(async function Config(props: any) {
40
140
  // helpers/applicability.
41
141
  const feature = targetFeatures(model, target)
42
142
 
143
+ const secrets = secretsBuild(model, target)
144
+
43
145
  // The canonical config OBJECT and its JSON, from the shared helper. Both
44
146
  // representations render from the same `def`, so they cannot describe
45
147
  // different configs - and this target picks up `options.server` (the OpenAPI
@@ -80,9 +182,6 @@ let config_data = "${ocamlString(configJson)}"
80
182
 
81
183
  let make_config () : value =
82
184
  Sdk_json.json_read config_data
83
-
84
- let make_feature (name : string) : feature =
85
- match name with
86
185
  `)
87
186
  }
88
187
  else {
@@ -99,11 +198,76 @@ open Sdk_features
99
198
 
100
199
  let make_config () : value =
101
200
  ${formatOcamlValue(config, 1)}
201
+ `)
202
+ }
102
203
 
103
- let make_feature (name : string) : feature =
204
+ // THE PLUGIN DEFINITIONS the model selected, per feature (the ocaml
205
+ // peer of Config_go's featurePlugins map). EMITTED UNCONDITIONALLY, so
206
+ // every generated config answers the same question - but typed as
207
+ // `Defs.definition list` only when the secrets feature is active: the
208
+ // `Defs` module is part of the vendored voxgig/plugin tree, which is
209
+ // compiled only then, so an inactive model gets the polymorphic empty
210
+ // list instead (`'a list`, which unifies with anything a caller
211
+ // expects). DELIBERATE DIVERGENCE from the c/lua accessors, whose
212
+ // untyped return (void**, a table) needs no such split.
213
+ if (null == secrets) {
214
+ Content(`
215
+ (* The plugin definitions the model selected, per feature: none - no
216
+ * plugin-bearing feature is active in this SDK. *)
217
+ let feature_plugins (_name : string) = []
218
+ `)
219
+ }
220
+ else {
221
+ Content(`
222
+ (* The plugin definitions the model selected for the secrets feature's
223
+ * provider chain${0 === secrets.groups.length ? ': none - the chain can name the four built-in kinds (env, memory, dotenv, file) and a custom provider, and nothing else' : ' (plugin groups: ' + secrets.groups.join(', ') + ')'}.
224
+ * Built, not held: every call is a fresh list, so two chains never share
225
+ * a definition. *)
226
+ let feature_plugins (name : string) : Defs.definition list =
104
227
  match name with
228
+ | "secrets" -> [${0 === secrets.syms.length ? '' : '\n' + secrets.syms.map((sym: string) => ' ' + sym + ' ();\n').join('') + ' '}]
229
+ | _ -> []
230
+ `)
231
+
232
+ // THE EXCHANGE TRANSPORT OF LAST RESORT (go's rawExchangeFetch): the
233
+ // vendored sekreto HTTP client, which the active plugin groups
234
+ // compile and link anyway (feature/secrets/feature.mk adds the OpenSSL binding on
235
+ // exactly this condition). It exists so an exchange works with
236
+ // ordinary SDK options - requiring a custom transport for the COMMON
237
+ // case would refuse every live token purchase before a request was
238
+ // made. Same result shape the system.fetch seam promises ({status,
239
+ // statusText, headers, body, json()}). With no such group the feature
240
+ // is built without it and a purchase with no options.system.fetch
241
+ // fails with a named error (see secrets_feature.ml).
242
+ if (secrets.tls) {
243
+ Content(`
244
+ (* The token-exchange transport of last resort: the vendored sekreto HTTP
245
+ * client (plugins/http.ml over plugins/tls.ml), compiled because a plugin
246
+ * group needing a transport is active (${secrets.tlsGroups.join(', ')}).
247
+ * A network failure raises sekreto's own Sekreto_error, which the feature
248
+ * reports as the refusal. *)
249
+ let secrets_transport (url : string) (fetchdef : value) : value =
250
+ let meth = match getp fetchdef "method" with Str s -> s | _ -> "POST" in
251
+ let headers = match getp fetchdef "headers" with
252
+ | Map _ as h ->
253
+ List.filter_map (fun k -> match getp h k with Str v -> Some (k, v) | _ -> None) (keysof h)
254
+ | _ -> [] in
255
+ let body = match getp fetchdef "body" with Str s -> Some s | _ -> None in
256
+ let res = Http.request meth url headers body in
257
+ let text = res.Http.body in
258
+ jo [("status", Num (float_of_int res.Http.status));
259
+ ("statusText", Str (if res.Http.status >= 400 then "ERR" else "OK"));
260
+ ("headers", empty_map ());
261
+ ("body", Str text);
262
+ ("json", json_thunk (try Sdk_json.json_read text with _ -> Noval))]
105
263
  `)
264
+ }
106
265
  }
266
+ // The factory, AFTER the definitions it names: OCaml binds top to bottom.
267
+ Content(`
268
+ let make_feature (name : string) : feature =
269
+ match name with
270
+ `)
107
271
 
108
272
  // ONLY THE FEATURES THIS PORT ACTUALLY IMPLEMENTS. Emitting an arm for a
109
273
  // name with no `<name>_feature` in tm/ocaml/sdk_features.ml is an
@@ -124,12 +288,26 @@ let make_feature (name : string) : feature =
124
288
  }
125
289
  })
126
290
 
291
+ // The secrets feature is the one ocaml feature that lives OUTSIDE
292
+ // sdk_features.ml (a container: feature/secrets_feature.ml plus the
293
+ // vendored trees), so its arm names its own module and hands it the
294
+ // definitions the model selected and, when a plugin group needing a
295
+ // transport is active, the bundled exchange transport. Emitted only
296
+ // when the feature is active: the module is not compiled otherwise
297
+ // (Main_ocaml's container gate, and the Makefile's feature/secrets/feature.mk).
298
+ if (null != secrets) {
299
+ Content(` | "secrets" -> Secrets_feature.make ~plugins:(feature_plugins "secrets")${secrets.tls ? ' ~transport:secrets_transport' : ''} ()
300
+ `)
301
+ }
302
+
127
303
  Content(` | _ -> base_feature ()
128
304
  `)
305
+
129
306
  })
130
307
  })
131
308
 
132
309
 
133
310
  export {
134
- Config
311
+ Config,
312
+ secretsBuild,
135
313
  }
@@ -1,8 +1,10 @@
1
1
 
2
2
  import {
3
3
  cmp, each,
4
- File, Content, Copy,
4
+ File, Content, Copy, Folder,
5
5
  entityClassName,
6
+ pluginExcludes,
7
+ targetFeatures,
6
8
  } from '@voxgig/sdkgen'
7
9
 
8
10
 
@@ -18,10 +20,24 @@ import {
18
20
 
19
21
 
20
22
  import { Package } from './Package_ocaml'
21
- import { Config } from './Config_ocaml'
23
+ import { Config, secretsBuild } from './Config_ocaml'
22
24
  import { Gitignore } from './Gitignore_ocaml'
23
25
  import { MainEntity } from './MainEntity_ocaml'
24
26
  import { SdkError } from './SdkError_ocaml'
27
+ import { entityModule, ocamlString } from './utility_ocaml'
28
+
29
+
30
+ // Features whose source is a CONTAINER under the top-level feature/ dir,
31
+ // beside the single template module (sdk_features.ml) every other ocaml
32
+ // feature lives in. Today that is `secrets`: feature/secrets_feature.ml,
33
+ // feature/secrets/ (the vendored @voxgig/sekreto port, the voxgig/plugin
34
+ // host and the provider kinds - some forty modules of key-store,
35
+ // request-signing and child-process code that an SDK which never asked for
36
+ // secrets must not ship) and its shipped suite under test/feature/secrets/.
37
+ // Anything named here is EXCLUDED from the verbatim copy unless the model
38
+ // SELECTS the feature (see the Copy below). The lua and clojure targets gate
39
+ // their containers the same way (Main_lua.ts, Main_clojure.ts).
40
+ const CONTAINED = ['secrets']
25
41
 
26
42
 
27
43
  const Main = cmp(async function Main(props: any) {
@@ -30,6 +46,27 @@ const Main = cmp(async function Main(props: any) {
30
46
  const { model } = props.ctx$
31
47
 
32
48
  const entity: Record<string, ModelEntity> = getModelPath(model, `main.${KIT}.entity`)
49
+ // Gated by the applicability tags, so this target never names a feature
50
+ // it has no source for. One rule, one place: helpers/applicability.
51
+ const feature = targetFeatures(model, target)
52
+
53
+ // THE feature/<name>/ CONTAINER IS GATED HERE, at generate time - the
54
+ // top-level-container peer of the `srcFeatureExcludes` gate ts and js
55
+ // apply to src/feature/<name>/. `target add` keeps an unselected
56
+ // feature out of a project's tm/ in the first place (ocaml.aon has
57
+ // `feature: { trim: true }`); this covers a feature switched off after
58
+ // it was added, and the generator suite, which copies the whole scaffold
59
+ // tree. An inactive feature's vendored kind files go with it - every
60
+ // declared group's, not only the groups marked inactive, because
61
+ // pluginExcludes below walks only ACTIVE features (Main_c's
62
+ // inactivePluginExcludes, for the same reason one target over).
63
+ const containerExcludes = CONTAINED
64
+ .filter((name: string) => null == (feature as any)[name])
65
+ .flatMap((name: string) => [
66
+ new RegExp('(^|/)feature/' + name + '_feature\\.ml$'),
67
+ new RegExp('(^|/)feature/' + name + '/'),
68
+ new RegExp('(^|/)test/feature/' + name + '/'),
69
+ ])
33
70
 
34
71
  Package({ target })
35
72
 
@@ -42,15 +79,108 @@ const Main = cmp(async function Main(props: any) {
42
79
  // @voxgig/omni corpus engine) rides along verbatim - the replacements are
43
80
  // ProjectName-shaped and the port names nothing project-specific, so it
44
81
  // lands byte-identical to its recorded vendored.json digest.
82
+ //
83
+ // pluginExcludes: the generate-time plugin trim (an ACTIVE feature's
84
+ // INACTIVE plugin group's declared files stay out of the tree). The
85
+ // model's ocaml `path` entries are target-root-relative, which is this
86
+ // Copy's root - helpers/featureSource documents that getting the root
87
+ // wrong makes the trim a silent no-op. ocaml has `srcfeature: false`, so
88
+ // the per-feature Copy in cmp/Feature.ts - where pluginExcludesFor
89
+ // normally applies this trim - never runs for it, and this whole-tree
90
+ // Copy is the ONLY copy the target has (Main_go.ts precedent).
45
91
  Copy({
46
92
  from: 'tm/' + target.name,
47
93
  exclude: [/src\//, /\.(cmi|cmo|cmx|cma|cmxa|o|a)$/, /a\.out$/,
48
- /run_sdk_test$/, /run_omni_smoke$/, /run_struct_corpus$/, /run_primary_corpus$/],
94
+ /run_sdk_test$/, /run_omni_smoke$/, /run_struct_corpus$/, /run_primary_corpus$/,
95
+ ...containerExcludes, ...pluginExcludes(model)],
49
96
  replace: {
50
97
  ...props.ctx$.stdrep,
51
98
  }
52
99
  })
53
100
 
101
+ // THE BUILD SEAM: feature/secrets/feature.mk, GENERATED only when the
102
+ // model activates `secrets` for this target. It is what only the model
103
+ // knows and only a Makefile can say in OCaml - the module list in
104
+ // DEPENDENCY ORDER (ocamlc compiles a module before anything that uses
105
+ // it and has no link-time reordering, so a wildcard over the vendored
106
+ // directories would not build), the -I paths, unix.cma for the dotenv
107
+ // and file built-ins, the gated suite, and, ONLY when an active plugin
108
+ // group declares `needs.fetch`, the OpenSSL binding: plugins/tls_stubs.c
109
+ // compiled and linked with `-custom -cclib -lssl -cclib -lcrypto`. The
110
+ // template Makefile includes `$(wildcard feature/*/feature.mk)` - it names
111
+ // no feature itself - and every variable a fragment sets is empty without
112
+ // one, so an SDK without secrets - or with the built-in
113
+ // chain alone, or with `secretspec` alone - runs no C compiler and links
114
+ // no OpenSSL. The shape lua's native.mk and c's kinds.c take.
115
+ //
116
+ // The vendored stub opens with the vendoring tool's three-line `(* *)`
117
+ // provenance header (every file under tm/ocaml is stamped in ocaml's
118
+ // comment syntax; the guard holds that), which a C compiler cannot
119
+ // read - so the rule feeds the compiler from line four, as lua's does.
120
+ // Compiler line numbers are therefore three lower than in the file.
121
+ const build = secretsBuild(model, target)
122
+ if (null != build) {
123
+ Folder({ name: 'feature' }, () => {
124
+ Folder({ name: 'secrets' }, () => {
125
+ File({ name: 'feature.mk' }, () => {
126
+ Content(`# ${model.const.Name} SDK: the secrets feature build.
127
+ #
128
+ # GENERATED because the model activates \`secrets\` for this target
129
+ # (plugin groups: ${0 === build.groups.length ? 'none - the built-in kinds alone' : build.groups.join(', ')}).
130
+ # An SDK whose model does not has no such file, and its Makefile's optional
131
+ # include of it is a no-op: nothing of the feature is compiled. Do not
132
+ # hand-edit - change the model's plugin groups and regenerate.
133
+ #
134
+ # MODULE ORDER IS THE DEPENDENCY ORDER: the voxgig/plugin host, the sekreto
135
+ # core, the shared helpers the selected kinds open, the kinds, the feature.
136
+
137
+ FEATURE_INC = -I +unix -I feature -I feature/secrets/plugin \\
138
+ -I feature/secrets/sekreto -I feature/secrets/plugins
139
+ FEATURE_LIB = unix.cma
140
+
141
+ SECRETS_PLUGIN = ${build.plugin.join(' \\\n ')}
142
+
143
+ SECRETS_CORE = ${build.core.join(' \\\n ')}
144
+
145
+ SECRETS_HELPERS =${0 === build.helpers.length ? '' : ' ' + build.helpers.join(' \\\n ')}
146
+
147
+ SECRETS_KINDS =${0 === build.kinds.length ? '' : ' ' + build.kinds.join(' \\\n ')}
148
+
149
+ FEATURE_SRC = $(SECRETS_PLUGIN) $(SECRETS_CORE) $(SECRETS_HELPERS) $(SECRETS_KINDS) \\
150
+ feature/secrets_feature.ml
151
+
152
+ FEATURE_TESTS = test/feature/secrets/t_secrets.ml
153
+ `)
154
+
155
+ if (build.tls) {
156
+ Content(`
157
+ # THE ONE EXTERNAL DEPENDENCY, behind the plugin groups that need a
158
+ # transport (${build.tlsGroups.join(', ')}): plugins/tls.ml's externals live in
159
+ # plugins/tls_stubs.c against OpenSSL, so the stub is compiled here and the
160
+ # bytecode executables are linked \`-custom\` with libssl and libcrypto.
161
+ # The stub is fed from line four (past the provenance header, see above).
162
+ OCAMLLIB = $(shell $(OCAMLC) -where)
163
+ FEATURE_OBJ = feature/secrets/plugins/tls_stubs.o
164
+ FEATURE_LINK = -custom -cclib -lssl -cclib -lcrypto
165
+
166
+ feature/secrets/plugins/tls_stubs.o: feature/secrets/plugins/tls_stubs.c
167
+ @command -v $(CC) >/dev/null 2>&1 || { echo "secrets: a C compiler ($(CC)) is needed to build the OpenSSL binding that this SDK's secrets plugin kinds (${build.tlsGroups.join(', ')}) run - install one, or use only the built-in provider kinds" >&2; exit 1; }
168
+ tail -n +4 $< | $(CC) -std=c11 -O2 -Wall -Wextra -I$(OCAMLLIB) -x c - -c -o $@
169
+ `)
170
+ }
171
+ else {
172
+ Content(`
173
+ # No active plugin group needs a transport, so the OpenSSL binding is not
174
+ # compiled and nothing is linked beyond the OCaml distribution.
175
+ FEATURE_OBJ =
176
+ FEATURE_LINK =
177
+ `)
178
+ }
179
+ })
180
+ })
181
+ })
182
+ }
183
+
54
184
  // Generated API config + branded-error re-export.
55
185
  Config({ target })
56
186
  SdkError({ target })
@@ -109,6 +239,33 @@ let prepare (client : sdk_client) (fetchargs : value) : value =
109
239
  each(entity, (entity: ModelEntity) => {
110
240
  MainEntity({ target, entity })
111
241
  })
242
+
243
+ // Entity by NAME. DELIBERATE DIVERGENCE: OCaml has no dynamic dispatch
244
+ // over module names, so a caller that discovers entities from the config
245
+ // rather than naming a generated accessor - the shipped feature suites
246
+ // are templates and know no project's entity names - has no way to reach
247
+ // one without this. The go peer is the untyped interface go-cli/go-mcp
248
+ // dispatch through. None for a name this SDK did not generate.
249
+ const names = each(entity).map((e: ModelEntity) => e.name).sort()
250
+ if (0 === names.length) {
251
+ Content(`
252
+ (* Entity by name: this SDK generated no entities. *)
253
+ let entity (_client : sdk_client) (_name : string) (_entopts : value) : entity_obj option =
254
+ None
255
+ `)
256
+ }
257
+ else {
258
+ Content(`
259
+ (* Entity by name (None for a name this SDK did not generate). *)
260
+ let entity (client : sdk_client) (name : string) (entopts : value) : entity_obj option =
261
+ match name with
262
+ ${names.map((name: string) => {
263
+ const mod = entityModule(name)
264
+ const Mod = mod.charAt(0).toUpperCase() + mod.slice(1)
265
+ return ` | "${ocamlString(name)}" -> Some (${Mod}.make client entopts)\n`
266
+ }).join('')} | _ -> None
267
+ `)
268
+ }
112
269
  })
113
270
 
114
271
  })
@@ -9,17 +9,41 @@ import {
9
9
 
10
10
 
11
11
  import { packageName } from './utility_ocaml'
12
+ import { secretsBuild } from './Config_ocaml'
12
13
 
13
14
 
14
15
  // <name>.opam — opam package metadata (publish is declared pending in the
15
16
  // model; the build itself is stock ocamlc via the Makefile and needs no opam
16
17
  // packages). Twin of rust Cargo.toml, but the runtime is dependency-free so
17
18
  // there is no depends list beyond the OCaml compiler.
19
+ //
20
+ // The secrets feature's build model is NOT emitted from here, unlike
21
+ // Package_rust's rustls dependency table: the Makefile reads the generated
22
+ // feature/secrets/feature.mk (Main_ocaml), which lists the vendored modules
23
+ // in dependency order and turns the OpenSSL binding on only when a plugin
24
+ // group needing a transport is active. What this manifest CAN state is the
25
+ // system dependency that binding introduces - `depexts`, opam's word for a
26
+ // distribution package - and it states it on exactly the same condition,
27
+ // read from the same helper, so the two cannot drift.
18
28
  const Package = cmp(async function Package(props: any) {
19
29
  const ctx$ = props.ctx$
20
30
  const target = props.target
21
31
  const model = ctx$.model
22
32
 
33
+ const secrets = secretsBuild(model, target)
34
+ const depexts = null != secrets && secrets.tls
35
+ ? `# The secrets feature's plugin groups (${secrets.tlsGroups.join(', ')}) bind
36
+ # OpenSSL through the vendored plugins/tls_stubs.c (-lssl -lcrypto), the
37
+ # one external dependency an ocaml SDK can have. Linked only because those
38
+ # groups are active - see feature/secrets/feature.mk.
39
+ depexts: [
40
+ ["libssl-dev"] {os-family = "debian"}
41
+ ["openssl-devel"] {os-family = "rhel"}
42
+ ["openssl"] {os = "macos" & os-distribution = "homebrew"}
43
+ ]
44
+ `
45
+ : ''
46
+
23
47
  // WHO WROTE THIS PACKAGE. Per target, falling back to the model-wide value
24
48
  // and then to the publisher — so a manifest cannot go on naming Voxgig
25
49
  // while the model names someone else, which is exactly what the hardcoded
@@ -46,7 +70,7 @@ depends: [
46
70
  build: [
47
71
  [make "build"]
48
72
  ]
49
- `)
73
+ ${depexts}`)
50
74
  })
51
75
  })
52
76
 
@@ -4,6 +4,8 @@ import {
4
4
  File,
5
5
  cmp,
6
6
  configDefinition,
7
+ each,
8
+ targetFeatures,
7
9
  } from '@voxgig/sdkgen'
8
10
 
9
11
 
@@ -12,6 +14,66 @@ import {
12
14
  } from '@voxgig/apidef'
13
15
 
14
16
 
17
+ // PLUGIN DEFINITION IMPORTS AND THE FEATURE_PLUGINS TABLE (the perl peer
18
+ // of cmp/py/Config_py.ts pluginImports/pluginDefs and cmp/go's
19
+ // featurePlugins).
20
+ //
21
+ // Upstream sekreto replaced its self-registration registry with
22
+ // voxgig/plugin definitions: a provider kind the caller did not pass in
23
+ // via `plugins => [...]` is unknown to that Sekreto. So config imports
24
+ // each active plugin's exported definition BY NAME (the model's
25
+ // `def.perl` map) and hands the list to the feature through
26
+ // FEATURE_PLUGINS.
27
+ //
28
+ // The `def` map is declared in the model rather than derived from
29
+ // filenames because one module may export several definitions (sekreto's
30
+ // Aws.pm exports awssecrets AND awsparams). A def value is the module's
31
+ // path under tm/perl ('feature/secrets/plugins/Voxgig/Sekreto/Plugins/
32
+ // Hashicorp.pm'); the vendored tree keeps upstream's PACKAGE layout, so
33
+ // the module NAME is that path with the vendor root and the extension
34
+ // removed and the separators turned into '::'.
35
+ const PLUGIN_ROOT = 'feature/secrets/plugins/'
36
+
37
+
38
+ function pluginModule(path: string): string {
39
+ return String(path)
40
+ .replace(new RegExp('^' + PLUGIN_ROOT), '')
41
+ .replace(/\.pm$/, '')
42
+ .replace(/\//g, '::')
43
+ }
44
+
45
+
46
+ // path -> [symbol, ...] for every ACTIVE plugin of every feature, so one
47
+ // `use` line serves a two-definition module.
48
+ function pluginsByPath(feature: any): Record<string, Record<string, string[]>> {
49
+ const out: Record<string, Record<string, string[]>> = {}
50
+
51
+ each(feature, (f: any) => {
52
+ const bypath: Record<string, string[]> = {}
53
+
54
+ each(f.plugin, (plugin: any) => {
55
+ // Filter on `active` HERE rather than trusting the feature object to
56
+ // arrive filtered: getting it wrong in this direction emits a `use`
57
+ // for a module the plugin trim just deleted - an SDK that does not
58
+ // LOAD, rather than one that merely carries too much. Config_py.ts
59
+ // records the same rule.
60
+ if (false === plugin.active || null == plugin.active) return
61
+
62
+ for (const [sym, one] of Object.entries(plugin.def?.perl || {})) {
63
+ const path = String(one)
64
+ ;(bypath[path] = bypath[path] || []).push(sym)
65
+ }
66
+ })
67
+
68
+ if (0 < Object.keys(bypath).length) {
69
+ out[f.name] = bypath
70
+ }
71
+ })
72
+
73
+ return out
74
+ }
75
+
76
+
15
77
  // The config is emitted as a JSON heredoc parsed at load time by the
16
78
  // vendored struct utility (Voxgig::Struct::parse_json). This keeps
17
79
  // booleans/nulls faithful (Perl has no native boolean scalar) and yields
@@ -32,6 +94,70 @@ const Config = cmp(async function Config(props: any) {
32
94
 
33
95
  const configJson = JSON.stringify(configDef, null, 2)
34
96
 
97
+ // Gated by the applicability tags, so this target never imports a
98
+ // plugin definition it has no source for. One rule, one place:
99
+ // helpers/applicability.
100
+ const bypath = pluginsByPath(targetFeatures(model, target))
101
+ const features = Object.keys(bypath).sort()
102
+
103
+ // Every emitted line below is conditional on there being at least one
104
+ // active plugin definition: an SDK that selected no plugin group (or no
105
+ // secrets feature at all) gets exactly the config.pm it got before.
106
+ const vendorInc = 0 === features.length ? '' : `
107
+ # The vendored sekreto and plugin ports keep their UPSTREAM package layout,
108
+ # so they resolve through @INC rather than a file-path require - the same
109
+ # convention feature/secrets_feature.pm and t/omni.pm use. This BEGIN runs
110
+ # before the 'use' lines below, which are compile-time.
111
+ BEGIN {
112
+ unshift @INC,
113
+ "$__dir/feature/secrets/sekreto",
114
+ "$__dir/feature/secrets/plugin",
115
+ "$__dir/feature/secrets/plugins";
116
+ }
117
+ `
118
+
119
+ let pluginUse = ''
120
+ let pluginTable = ''
121
+
122
+ if (0 < features.length) {
123
+ const lines: string[] = []
124
+ for (const fname of features) {
125
+ for (const path of Object.keys(bypath[fname]).sort()) {
126
+ const syms = Array.from(new Set(bypath[fname][path])).sort()
127
+ lines.push(`use ${pluginModule(path)} qw(${syms.join(' ')});`)
128
+ }
129
+ }
130
+ // A module shared by two features is imported once.
131
+ pluginUse = '\n' + Array.from(new Set(lines)).join('\n') + '\n'
132
+
133
+ const entries = features.map((fname) => {
134
+ const syms = Array.from(new Set(
135
+ Object.values(bypath[fname]).reduce(
136
+ (a: string[], b: string[]) => a.concat(b), []))).sort()
137
+ return ` '${fname}' => [ ${syms.map((s) => s + '()').join(', ')} ],`
138
+ })
139
+
140
+ pluginTable = `
141
+ # THE SDK'S PROVIDER VOCABULARY, from the model's active plugin groups.
142
+ #
143
+ # sekreto's core ships four built-in kinds (env, memory, dotenv, file) and
144
+ # nothing else: a kind not passed in here is UNKNOWN to that Sekreto. So
145
+ # this table is what decides which vault, cloud, SaaS or CLI providers a
146
+ # chain in this SDK may name - and an inactive group is not merely
147
+ # unimported, its module is not generated at all.
148
+ our %FEATURE_PLUGINS = (
149
+ ${entries.join('\n')}
150
+ );
151
+
152
+ sub feature_plugins {
153
+ my ($name) = @_;
154
+ $name = '' unless defined $name;
155
+ my $list = $FEATURE_PLUGINS{$name};
156
+ return defined $list ? $list : [];
157
+ }
158
+ `
159
+ }
160
+
35
161
  File({ name: 'config.pm' }, () => {
36
162
 
37
163
  Content(`# ${model.const.Name} SDK configuration
@@ -44,10 +170,10 @@ use Cwd ();
44
170
 
45
171
  my $__dir;
46
172
  BEGIN { $__dir = File::Basename::dirname(Cwd::abs_path(__FILE__)) }
47
- require(Cwd::abs_path("$__dir/lib/Voxgig/Struct.pm"));
173
+ ${vendorInc}require(Cwd::abs_path("$__dir/lib/Voxgig/Struct.pm"));
48
174
 
49
175
  package ${model.const.Name}Config;
50
-
176
+ ${pluginUse}
51
177
  # GENERATED from the API model - do not edit by hand. Parsed fresh on
52
178
  # each call so callers can safely mutate their copy.
53
179
  my $CONFIG_JSON = <<'END_CONFIG_JSON';
@@ -78,7 +204,7 @@ sub make_feature {
78
204
  require(Cwd::abs_path("$__dir/features.pm"));
79
205
  return ${model.const.Name}Features::make_feature($name);
80
206
  }
81
-
207
+ ${pluginTable}
82
208
  1;
83
209
  `)
84
210
  })