@voxgig/sdkgen 4.21.0 → 4.23.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.
- package/bin/voxgig-sdkgen +1 -1
- package/dist/action/action.js +0 -65
- package/dist/action/action.js.map +1 -1
- package/dist/action/check.js +0 -88
- package/dist/action/check.js.map +1 -1
- package/dist/action/dispatch.js +0 -27
- package/dist/action/dispatch.js.map +1 -1
- package/dist/action/doctor.d.ts +1 -0
- package/dist/action/doctor.js +55 -321
- package/dist/action/doctor.js.map +1 -1
- package/dist/action/edition.js +1 -87
- package/dist/action/edition.js.map +1 -1
- package/dist/action/feature.js +0 -48
- package/dist/action/feature.js.map +1 -1
- package/dist/action/kind.js +0 -132
- package/dist/action/kind.js.map +1 -1
- package/dist/action/package.js +0 -221
- package/dist/action/package.js.map +1 -1
- package/dist/action/resolve.js +0 -145
- package/dist/action/resolve.js.map +1 -1
- package/dist/action/target.js +0 -177
- package/dist/action/target.js.map +1 -1
- package/dist/cmp/AgentGuide.js +0 -7
- package/dist/cmp/AgentGuide.js.map +1 -1
- package/dist/cmp/AgentGuideContent.js +0 -24
- package/dist/cmp/AgentGuideContent.js.map +1 -1
- package/dist/cmp/AgentGuideTop.js +0 -7
- package/dist/cmp/AgentGuideTop.js.map +1 -1
- package/dist/cmp/Changelog.js +0 -14
- package/dist/cmp/Changelog.js.map +1 -1
- package/dist/cmp/Deploy.js +1 -31
- package/dist/cmp/Deploy.js.map +1 -1
- package/dist/cmp/Entity.js +0 -4
- package/dist/cmp/Entity.js.map +1 -1
- package/dist/cmp/ExternalTarget.js +0 -36
- package/dist/cmp/ExternalTarget.js.map +1 -1
- package/dist/cmp/Feature.js +0 -14
- package/dist/cmp/Feature.js.map +1 -1
- package/dist/cmp/FeatureDocs.js +0 -25
- package/dist/cmp/FeatureDocs.js.map +1 -1
- package/dist/cmp/PublishWorkflow.js +0 -60
- package/dist/cmp/PublishWorkflow.js.map +1 -1
- package/dist/cmp/ReadmeErrors.js +0 -2
- package/dist/cmp/ReadmeErrors.js.map +1 -1
- package/dist/cmp/ReadmeExplanation.js +0 -5
- package/dist/cmp/ReadmeExplanation.js.map +1 -1
- package/dist/cmp/ReadmeFeatures.js +0 -10
- package/dist/cmp/ReadmeFeatures.js.map +1 -1
- package/dist/cmp/ReadmeRefFeatures.js +0 -19
- package/dist/cmp/ReadmeRefFeatures.js.map +1 -1
- package/dist/cmp/ReadmeStation.js +0 -19
- package/dist/cmp/ReadmeStation.js.map +1 -1
- package/dist/cmp/ReadmeTop.js +1 -81
- package/dist/cmp/ReadmeTop.js.map +1 -1
- package/dist/cmp/ReadmeUnions.js +1 -16
- package/dist/cmp/ReadmeUnions.js.map +1 -1
- package/dist/cmp/Registered.js +0 -30
- package/dist/cmp/Registered.js.map +1 -1
- package/dist/cmp/Security.js +0 -2
- package/dist/cmp/Security.js.map +1 -1
- package/dist/cmp/Test.js +3 -2
- package/dist/cmp/Test.js.map +1 -1
- package/dist/cmp/TestControl.js +0 -25
- package/dist/cmp/TestControl.js.map +1 -1
- package/dist/helpers/applicability.js +0 -60
- package/dist/helpers/applicability.js.map +1 -1
- package/dist/helpers/buildIdNames.d.ts +3 -1
- package/dist/helpers/buildIdNames.js +15 -19
- package/dist/helpers/buildIdNames.js.map +1 -1
- package/dist/helpers/canonSpec.js +2 -116
- package/dist/helpers/canonSpec.js.map +1 -1
- package/dist/helpers/canonType.js +0 -87
- package/dist/helpers/canonType.js.map +1 -1
- package/dist/helpers/collectDeps.js +0 -27
- package/dist/helpers/collectDeps.js.map +1 -1
- package/dist/helpers/definition.js +0 -29
- package/dist/helpers/definition.js.map +1 -1
- package/dist/helpers/dryrun.js +0 -8
- package/dist/helpers/dryrun.js.map +1 -1
- package/dist/helpers/featureSource.js +0 -145
- package/dist/helpers/featureSource.js.map +1 -1
- package/dist/helpers/getMatchEntries.js +2 -6
- package/dist/helpers/getMatchEntries.js.map +1 -1
- package/dist/helpers/junk.js +9 -85
- package/dist/helpers/junk.js.map +1 -1
- package/dist/helpers/manifest.js +0 -138
- package/dist/helpers/manifest.js.map +1 -1
- package/dist/helpers/modelNames.js +5 -79
- package/dist/helpers/modelNames.js.map +1 -1
- package/dist/helpers/modelcheck.js +0 -106
- package/dist/helpers/modelcheck.js.map +1 -1
- package/dist/helpers/naming.d.ts +0 -1
- package/dist/helpers/naming.js +0 -303
- package/dist/helpers/naming.js.map +1 -1
- package/dist/helpers/opExample.js +0 -51
- package/dist/helpers/opExample.js.map +1 -1
- package/dist/helpers/opShape.js +33 -231
- package/dist/helpers/opShape.js.map +1 -1
- package/dist/helpers/optspec.js +0 -77
- package/dist/helpers/optspec.js.map +1 -1
- package/dist/helpers/packageMeta.js +1 -200
- package/dist/helpers/packageMeta.js.map +1 -1
- package/dist/helpers/pointPath.js +5 -65
- package/dist/helpers/pointPath.js.map +1 -1
- package/dist/helpers/resolved.d.ts +6 -0
- package/dist/helpers/resolved.js +22 -0
- package/dist/helpers/resolved.js.map +1 -0
- package/dist/helpers/semver.js +0 -61
- package/dist/helpers/semver.js.map +1 -1
- package/dist/helpers/serverVars.js +0 -44
- package/dist/helpers/serverVars.js.map +1 -1
- package/dist/helpers/shipped.js +0 -14
- package/dist/helpers/shipped.js.map +1 -1
- package/dist/helpers/station.js +0 -32
- package/dist/helpers/station.js.map +1 -1
- package/dist/helpers/stdrep.js +0 -26
- package/dist/helpers/stdrep.js.map +1 -1
- package/dist/helpers/testPolicy.js +0 -4
- package/dist/helpers/testPolicy.js.map +1 -1
- package/dist/sdkgen.d.ts +3 -2
- package/dist/sdkgen.js +15 -242
- package/dist/sdkgen.js.map +1 -1
- package/dist/testkit.js +6 -266
- package/dist/testkit.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utility.js +15 -250
- package/dist/utility.js.map +1 -1
- package/model/sdkgen.aon +12 -489
- package/package.json +4 -4
- package/project/.sdk/model/feature/audit.aon +0 -7
- package/project/.sdk/model/feature/cache.aon +0 -7
- package/project/.sdk/model/feature/clienttrack.aon +0 -7
- package/project/.sdk/model/feature/cost.aon +0 -13
- package/project/.sdk/model/feature/debug.aon +0 -7
- package/project/.sdk/model/feature/idempotency.aon +0 -7
- package/project/.sdk/model/feature/log.aon +0 -7
- package/project/.sdk/model/feature/metrics.aon +0 -7
- package/project/.sdk/model/feature/netsim.aon +0 -10
- package/project/.sdk/model/feature/paging.aon +0 -7
- package/project/.sdk/model/feature/proxy.aon +0 -7
- package/project/.sdk/model/feature/ratelimit.aon +0 -7
- package/project/.sdk/model/feature/retry.aon +0 -7
- package/project/.sdk/model/feature/secrets.aon +0 -482
- package/project/.sdk/model/feature/streaming.aon +0 -7
- package/project/.sdk/model/feature/telemetry.aon +0 -7
- package/project/.sdk/model/feature/test.aon +1 -8
- package/project/.sdk/model/feature/timeout.aon +0 -7
- package/project/.sdk/model/feature/validate.aon +0 -32
- package/project/.sdk/model/target/c.aon +0 -41
- package/project/.sdk/model/target/clojure.aon +0 -36
- package/project/.sdk/model/target/cpp.aon +0 -42
- package/project/.sdk/model/target/csharp.aon +0 -26
- package/project/.sdk/model/target/elixir.aon +0 -22
- package/project/.sdk/model/target/go-cli.aon +0 -30
- package/project/.sdk/model/target/go-mcp.aon +0 -21
- package/project/.sdk/model/target/go.aon +0 -9
- package/project/.sdk/model/target/java.aon +0 -29
- package/project/.sdk/model/target/js.aon +2 -21
- package/project/.sdk/model/target/kotlin.aon +0 -31
- package/project/.sdk/model/target/lua.aon +0 -32
- package/project/.sdk/model/target/ocaml.aon +0 -64
- package/project/.sdk/model/target/perl.aon +0 -20
- package/project/.sdk/model/target/php.aon +0 -17
- package/project/.sdk/model/target/py-data.aon +0 -33
- package/project/.sdk/model/target/py.aon +0 -17
- package/project/.sdk/model/target/rb.aon +0 -17
- package/project/.sdk/model/target/rust.aon +0 -25
- package/project/.sdk/model/target/scala.aon +0 -74
- package/project/.sdk/model/target/swift.aon +0 -41
- package/project/.sdk/model/target/ts.aon +3 -25
- package/project/.sdk/model/target/zig.aon +0 -50
- package/project/.sdk/src/cmp/c/Config_c.ts +0 -100
- package/project/.sdk/src/cmp/c/EntityTypes_c.ts +4 -40
- package/project/.sdk/src/cmp/c/Main_c.ts +0 -44
- package/project/.sdk/src/cmp/c/Package_c.ts +0 -14
- package/project/.sdk/src/cmp/c/PrepareAuth_c.ts +0 -85
- package/project/.sdk/src/cmp/c/ReadmeEntity_c.ts +3 -3
- package/project/.sdk/src/cmp/c/ReadmeExamplesTest_c.ts +0 -20
- package/project/.sdk/src/cmp/c/ReadmeModel_c.ts +3 -3
- package/project/.sdk/src/cmp/c/ReadmeRef_c.ts +7 -10
- package/project/.sdk/src/cmp/c/ReadmeTopQuick_c.ts +0 -2
- package/project/.sdk/src/cmp/c/Schema_c.ts +1 -20
- package/project/.sdk/src/cmp/c/TestDirect_c.ts +12 -12
- package/project/.sdk/src/cmp/c/utility_c.ts +0 -47
- package/project/.sdk/src/cmp/clojure/Config_clojure.ts +0 -63
- package/project/.sdk/src/cmp/clojure/Entity_clojure.ts +0 -1
- package/project/.sdk/src/cmp/clojure/Main_clojure.ts +0 -41
- package/project/.sdk/src/cmp/clojure/Package_clojure.ts +0 -20
- package/project/.sdk/src/cmp/clojure/PrepareAuth_clojure.ts +0 -130
- package/project/.sdk/src/cmp/clojure/ReadmeEntity_clojure.ts +3 -3
- package/project/.sdk/src/cmp/clojure/ReadmeExamplesTest_clojure.ts +0 -16
- package/project/.sdk/src/cmp/clojure/ReadmeModel_clojure.ts +3 -3
- package/project/.sdk/src/cmp/clojure/ReadmeRef_clojure.ts +7 -10
- package/project/.sdk/src/cmp/clojure/Schema_clojure.ts +1 -21
- package/project/.sdk/src/cmp/clojure/TestDirect_clojure.ts +0 -6
- package/project/.sdk/src/cmp/clojure/TestEntity_clojure.ts +0 -10
- package/project/.sdk/src/cmp/clojure/Test_clojure.ts +0 -8
- package/project/.sdk/src/cmp/clojure/featureextra_clojure.ts +0 -34
- package/project/.sdk/src/cmp/clojure/utility_clojure.ts +0 -47
- package/project/.sdk/src/cmp/cpp/Config_cpp.ts +0 -109
- package/project/.sdk/src/cmp/cpp/EntityTypes_cpp.ts +3 -39
- package/project/.sdk/src/cmp/cpp/Main_cpp.ts +0 -47
- package/project/.sdk/src/cmp/cpp/Package_cpp.ts +0 -14
- package/project/.sdk/src/cmp/cpp/PrepareAuth_cpp.ts +0 -125
- package/project/.sdk/src/cmp/cpp/ReadmeEntity_cpp.ts +3 -3
- package/project/.sdk/src/cmp/cpp/ReadmeExamplesTest_cpp.ts +0 -19
- package/project/.sdk/src/cmp/cpp/ReadmeModel_cpp.ts +3 -3
- package/project/.sdk/src/cmp/cpp/ReadmeQuick_cpp.ts +0 -7
- package/project/.sdk/src/cmp/cpp/ReadmeRef_cpp.ts +7 -10
- package/project/.sdk/src/cmp/cpp/Schema_cpp.ts +1 -22
- package/project/.sdk/src/cmp/cpp/TestDirect_cpp.ts +14 -14
- package/project/.sdk/src/cmp/cpp/TestEntity_cpp.ts +51 -53
- package/project/.sdk/src/cmp/cpp/Test_cpp.ts +0 -3
- package/project/.sdk/src/cmp/cpp/utility_cpp.ts +0 -28
- package/project/.sdk/src/cmp/csharp/Config_csharp.ts +0 -79
- package/project/.sdk/src/cmp/csharp/EntityOperation_csharp.ts +0 -3
- package/project/.sdk/src/cmp/csharp/EntityTypes_csharp.ts +4 -54
- package/project/.sdk/src/cmp/csharp/Entity_csharp.ts +0 -1
- package/project/.sdk/src/cmp/csharp/Main_csharp.ts +0 -24
- package/project/.sdk/src/cmp/csharp/Package_csharp.ts +0 -20
- package/project/.sdk/src/cmp/csharp/PrepareAuth_csharp.ts +0 -81
- package/project/.sdk/src/cmp/csharp/ReadmeEntity_csharp.ts +3 -4
- package/project/.sdk/src/cmp/csharp/ReadmeExamplesTest_csharp.ts +0 -23
- package/project/.sdk/src/cmp/csharp/ReadmeModel_csharp.ts +3 -3
- package/project/.sdk/src/cmp/csharp/ReadmeRef_csharp.ts +7 -10
- package/project/.sdk/src/cmp/csharp/ReadmeTopQuick_csharp.ts +0 -2
- package/project/.sdk/src/cmp/csharp/Schema_csharp.ts +1 -19
- package/project/.sdk/src/cmp/csharp/TestDirect_csharp.ts +30 -30
- package/project/.sdk/src/cmp/csharp/TestEntity_csharp.ts +66 -69
- package/project/.sdk/src/cmp/csharp/utility_csharp.ts +0 -72
- package/project/.sdk/src/cmp/elixir/Config_elixir.ts +0 -78
- package/project/.sdk/src/cmp/elixir/EntityTypes_elixir.ts +4 -42
- package/project/.sdk/src/cmp/elixir/Main_elixir.ts +0 -40
- package/project/.sdk/src/cmp/elixir/Package_elixir.ts +0 -13
- package/project/.sdk/src/cmp/elixir/PrepareAuth_elixir.ts +0 -123
- package/project/.sdk/src/cmp/elixir/ReadmeEntity_elixir.ts +3 -3
- package/project/.sdk/src/cmp/elixir/ReadmeExamplesTest_elixir.ts +0 -19
- package/project/.sdk/src/cmp/elixir/ReadmeModel_elixir.ts +3 -3
- package/project/.sdk/src/cmp/elixir/ReadmeRef_elixir.ts +6 -9
- package/project/.sdk/src/cmp/elixir/Schema_elixir.ts +1 -25
- package/project/.sdk/src/cmp/elixir/utility_elixir.ts +0 -34
- package/project/.sdk/src/cmp/go/Config_go.ts +0 -41
- package/project/.sdk/src/cmp/go/EntityTypes_go.ts +4 -75
- package/project/.sdk/src/cmp/go/Entity_go.ts +0 -5
- package/project/.sdk/src/cmp/go/Main_go.ts +0 -28
- package/project/.sdk/src/cmp/go/Package_go.ts +0 -7
- package/project/.sdk/src/cmp/go/PrepareAuth_go.ts +0 -64
- package/project/.sdk/src/cmp/go/ReadmeEntity_go.ts +3 -8
- package/project/.sdk/src/cmp/go/ReadmeExamplesTest_go.ts +0 -30
- package/project/.sdk/src/cmp/go/ReadmeHowto_go.ts +0 -3
- package/project/.sdk/src/cmp/go/ReadmeIntro_go.ts +0 -7
- package/project/.sdk/src/cmp/go/ReadmeModel_go.ts +3 -14
- package/project/.sdk/src/cmp/go/ReadmeQuick_go.ts +0 -21
- package/project/.sdk/src/cmp/go/ReadmeRef_go.ts +7 -19
- package/project/.sdk/src/cmp/go/ReadmeTopQuick_go.ts +0 -9
- package/project/.sdk/src/cmp/go/Schema_go.ts +1 -22
- package/project/.sdk/src/cmp/go/TestDirect_go.ts +38 -61
- package/project/.sdk/src/cmp/go/TestEntity_go.ts +75 -82
- package/project/.sdk/src/cmp/go/fragment/Entity.fragment.go +0 -21
- package/project/.sdk/src/cmp/go/fragment/Main.fragment.go +0 -12
- package/project/.sdk/src/cmp/go/utility_go.ts +5 -75
- package/project/.sdk/src/cmp/go-cli/Main_go-cli.ts +0 -49
- package/project/.sdk/src/cmp/go-cli/fragment/words.fragment.go +0 -12
- package/project/.sdk/src/cmp/go-mcp/Main_go-mcp.ts +0 -36
- package/project/.sdk/src/cmp/go-mcp/fragment/main.fragment.go +0 -20
- package/project/.sdk/src/cmp/go-mcp/fragment/tools.fragment.go +0 -3
- package/project/.sdk/src/cmp/java/Config_java.ts +0 -63
- package/project/.sdk/src/cmp/java/EntityTypes_java.ts +4 -54
- package/project/.sdk/src/cmp/java/Entity_java.ts +0 -6
- package/project/.sdk/src/cmp/java/Main_java.ts +0 -24
- package/project/.sdk/src/cmp/java/PrepareAuth_java.ts +0 -55
- package/project/.sdk/src/cmp/java/ReadmeEntity_java.ts +3 -4
- package/project/.sdk/src/cmp/java/ReadmeExamplesTest_java.ts +0 -20
- package/project/.sdk/src/cmp/java/ReadmeModel_java.ts +3 -3
- package/project/.sdk/src/cmp/java/ReadmeQuick_java.ts +0 -4
- package/project/.sdk/src/cmp/java/ReadmeRef_java.ts +7 -10
- package/project/.sdk/src/cmp/java/ReadmeTopQuick_java.ts +0 -7
- package/project/.sdk/src/cmp/java/Schema_java.ts +1 -20
- package/project/.sdk/src/cmp/java/TestDirect_java.ts +30 -37
- package/project/.sdk/src/cmp/java/TestEntity_java.ts +69 -72
- package/project/.sdk/src/cmp/java/Test_java.ts +0 -6
- package/project/.sdk/src/cmp/java/utility_java.ts +0 -33
- package/project/.sdk/src/cmp/js/Config_js.ts +0 -46
- package/project/.sdk/src/cmp/js/EntityTypes_js.ts +5 -38
- package/project/.sdk/src/cmp/js/Main_js.ts +0 -33
- package/project/.sdk/src/cmp/js/Package_js.ts +2 -7
- package/project/.sdk/src/cmp/js/PrepareAuth_js.ts +0 -57
- package/project/.sdk/src/cmp/js/ReadmeEntity_js.ts +3 -12
- package/project/.sdk/src/cmp/js/ReadmeHowto_js.ts +0 -2
- package/project/.sdk/src/cmp/js/ReadmeModel_js.ts +3 -3
- package/project/.sdk/src/cmp/js/ReadmeQuick_js.ts +0 -15
- package/project/.sdk/src/cmp/js/ReadmeRef_js.ts +7 -12
- package/project/.sdk/src/cmp/js/ReadmeTopQuick_js.ts +0 -7
- package/project/.sdk/src/cmp/js/Schema_js.ts +1 -22
- package/project/.sdk/src/cmp/js/TestDirect_js.ts +29 -43
- package/project/.sdk/src/cmp/js/TestEntity_js.ts +69 -82
- package/project/.sdk/src/cmp/js/TestLive_js.ts +12 -5
- package/project/.sdk/src/cmp/js/utility_js.ts +5 -63
- package/project/.sdk/src/cmp/kotlin/Config_kotlin.ts +0 -46
- package/project/.sdk/src/cmp/kotlin/EntityOperation_kotlin.ts +0 -2
- package/project/.sdk/src/cmp/kotlin/EntityTypes_kotlin.ts +4 -57
- package/project/.sdk/src/cmp/kotlin/Entity_kotlin.ts +0 -4
- package/project/.sdk/src/cmp/kotlin/Main_kotlin.ts +0 -46
- package/project/.sdk/src/cmp/kotlin/PrepareAuth_kotlin.ts +0 -113
- package/project/.sdk/src/cmp/kotlin/ReadmeEntity_kotlin.ts +3 -4
- package/project/.sdk/src/cmp/kotlin/ReadmeExamplesTest_kotlin.ts +0 -20
- package/project/.sdk/src/cmp/kotlin/ReadmeModel_kotlin.ts +3 -3
- package/project/.sdk/src/cmp/kotlin/ReadmeRef_kotlin.ts +7 -10
- package/project/.sdk/src/cmp/kotlin/ReadmeTopQuick_kotlin.ts +0 -5
- package/project/.sdk/src/cmp/kotlin/Schema_kotlin.ts +1 -20
- package/project/.sdk/src/cmp/kotlin/TestDirect_kotlin.ts +30 -30
- package/project/.sdk/src/cmp/kotlin/TestEntity_kotlin.ts +67 -70
- package/project/.sdk/src/cmp/kotlin/Test_kotlin.ts +0 -6
- package/project/.sdk/src/cmp/kotlin/utility_kotlin.ts +0 -33
- package/project/.sdk/src/cmp/lua/Config_lua.ts +0 -56
- package/project/.sdk/src/cmp/lua/EntityTypes_lua.ts +5 -35
- package/project/.sdk/src/cmp/lua/Entity_lua.ts +0 -7
- package/project/.sdk/src/cmp/lua/Main_lua.ts +0 -58
- package/project/.sdk/src/cmp/lua/Package_lua.ts +0 -20
- package/project/.sdk/src/cmp/lua/PrepareAuth_lua.ts +0 -61
- package/project/.sdk/src/cmp/lua/ReadmeEntity_lua.ts +3 -11
- package/project/.sdk/src/cmp/lua/ReadmeExamplesTest_lua.ts +0 -24
- package/project/.sdk/src/cmp/lua/ReadmeModel_lua.ts +3 -13
- package/project/.sdk/src/cmp/lua/ReadmeQuick_lua.ts +4 -25
- package/project/.sdk/src/cmp/lua/ReadmeRef_lua.ts +7 -17
- package/project/.sdk/src/cmp/lua/ReadmeTopQuick_lua.ts +0 -3
- package/project/.sdk/src/cmp/lua/Schema_lua.ts +1 -17
- package/project/.sdk/src/cmp/lua/TestDirect_lua.ts +25 -27
- package/project/.sdk/src/cmp/lua/TestEntity_lua.ts +66 -65
- package/project/.sdk/src/cmp/lua/utility_lua.ts +0 -30
- package/project/.sdk/src/cmp/ocaml/Config_ocaml.ts +0 -98
- package/project/.sdk/src/cmp/ocaml/EntityOperation_ocaml.ts +0 -6
- package/project/.sdk/src/cmp/ocaml/Main_ocaml.ts +0 -78
- package/project/.sdk/src/cmp/ocaml/Package_ocaml.ts +0 -13
- package/project/.sdk/src/cmp/ocaml/PrepareAuth_ocaml.ts +0 -145
- package/project/.sdk/src/cmp/ocaml/ReadmeEntity_ocaml.ts +3 -3
- package/project/.sdk/src/cmp/ocaml/ReadmeExamplesTest_ocaml.ts +0 -17
- package/project/.sdk/src/cmp/ocaml/ReadmeModel_ocaml.ts +3 -3
- package/project/.sdk/src/cmp/ocaml/ReadmeRef_ocaml.ts +7 -10
- package/project/.sdk/src/cmp/ocaml/Schema_ocaml.ts +1 -24
- package/project/.sdk/src/cmp/ocaml/SdkError_ocaml.ts +0 -4
- package/project/.sdk/src/cmp/ocaml/TestEntity_ocaml.ts +0 -5
- package/project/.sdk/src/cmp/ocaml/utility_ocaml.ts +0 -27
- package/project/.sdk/src/cmp/perl/Config_perl.ts +0 -52
- package/project/.sdk/src/cmp/perl/Entity_perl.ts +0 -3
- package/project/.sdk/src/cmp/perl/Main_perl.ts +0 -33
- package/project/.sdk/src/cmp/perl/Package_perl.ts +0 -8
- package/project/.sdk/src/cmp/perl/PrepareAuth_perl.ts +0 -84
- package/project/.sdk/src/cmp/perl/ReadmeEntity_perl.ts +3 -6
- package/project/.sdk/src/cmp/perl/ReadmeExamplesTest_perl.ts +0 -27
- package/project/.sdk/src/cmp/perl/ReadmeModel_perl.ts +3 -3
- package/project/.sdk/src/cmp/perl/ReadmeRef_perl.ts +7 -10
- package/project/.sdk/src/cmp/perl/ReadmeTopQuick_perl.ts +0 -2
- package/project/.sdk/src/cmp/perl/Schema_perl.ts +1 -19
- package/project/.sdk/src/cmp/perl/TestDirect_perl.ts +25 -27
- package/project/.sdk/src/cmp/perl/TestEntity_perl.ts +60 -59
- package/project/.sdk/src/cmp/perl/utility_perl.ts +0 -26
- package/project/.sdk/src/cmp/php/Config_php.ts +0 -76
- package/project/.sdk/src/cmp/php/EntityTypes_php.ts +5 -56
- package/project/.sdk/src/cmp/php/MainEntity_php.ts +0 -6
- package/project/.sdk/src/cmp/php/Main_php.ts +0 -15
- package/project/.sdk/src/cmp/php/PrepareAuth_php.ts +0 -73
- package/project/.sdk/src/cmp/php/ReadmeEntity_php.ts +3 -7
- package/project/.sdk/src/cmp/php/ReadmeExamplesTest_php.ts +0 -33
- package/project/.sdk/src/cmp/php/ReadmeHowto_php.ts +0 -1
- package/project/.sdk/src/cmp/php/ReadmeModel_php.ts +3 -3
- package/project/.sdk/src/cmp/php/ReadmeQuick_php.ts +4 -23
- package/project/.sdk/src/cmp/php/ReadmeRef_php.ts +7 -12
- package/project/.sdk/src/cmp/php/Schema_php.ts +1 -16
- package/project/.sdk/src/cmp/php/TestDirect_php.ts +25 -25
- package/project/.sdk/src/cmp/php/TestEntity_php.ts +66 -74
- package/project/.sdk/src/cmp/php/utility_php.ts +0 -22
- package/project/.sdk/src/cmp/py/Config_py.ts +0 -53
- package/project/.sdk/src/cmp/py/EntityTypes_py.ts +4 -59
- package/project/.sdk/src/cmp/py/Entity_py.ts +0 -16
- package/project/.sdk/src/cmp/py/Main_py.ts +1 -61
- package/project/.sdk/src/cmp/py/Package_py.ts +0 -3
- package/project/.sdk/src/cmp/py/PrepareAuth_py.ts +0 -69
- package/project/.sdk/src/cmp/py/ReadmeEntity_py.ts +3 -16
- package/project/.sdk/src/cmp/py/ReadmeExamplesTest_py.ts +0 -31
- package/project/.sdk/src/cmp/py/ReadmeHowto_py.ts +0 -3
- package/project/.sdk/src/cmp/py/ReadmeModel_py.ts +3 -3
- package/project/.sdk/src/cmp/py/ReadmeQuick_py.ts +0 -28
- package/project/.sdk/src/cmp/py/ReadmeRef_py.ts +7 -21
- package/project/.sdk/src/cmp/py/ReadmeTopQuick_py.ts +0 -14
- package/project/.sdk/src/cmp/py/Schema_py.ts +1 -20
- package/project/.sdk/src/cmp/py/TestDirect_py.ts +25 -27
- package/project/.sdk/src/cmp/py/TestEntity_py.ts +66 -65
- package/project/.sdk/src/cmp/py/utility_py.ts +0 -22
- package/project/.sdk/src/cmp/py-data/Main_py-data.ts +13 -47
- package/project/.sdk/src/cmp/rb/Config_rb.ts +0 -56
- package/project/.sdk/src/cmp/rb/EntityTypes_rb.ts +4 -62
- package/project/.sdk/src/cmp/rb/Entity_rb.ts +0 -3
- package/project/.sdk/src/cmp/rb/Main_rb.ts +0 -10
- package/project/.sdk/src/cmp/rb/Package_rb.ts +0 -5
- package/project/.sdk/src/cmp/rb/PrepareAuth_rb.ts +0 -81
- package/project/.sdk/src/cmp/rb/ReadmeEntity_rb.ts +3 -10
- package/project/.sdk/src/cmp/rb/ReadmeExamplesTest_rb.ts +0 -32
- package/project/.sdk/src/cmp/rb/ReadmeHowto_rb.ts +0 -9
- package/project/.sdk/src/cmp/rb/ReadmeModel_rb.ts +3 -3
- package/project/.sdk/src/cmp/rb/ReadmeQuick_rb.ts +4 -27
- package/project/.sdk/src/cmp/rb/ReadmeRef_rb.ts +7 -15
- package/project/.sdk/src/cmp/rb/ReadmeTopQuick_rb.ts +0 -5
- package/project/.sdk/src/cmp/rb/ReadmeTopTest_rb.ts +0 -3
- package/project/.sdk/src/cmp/rb/Schema_rb.ts +1 -16
- package/project/.sdk/src/cmp/rb/TestDirect_rb.ts +25 -27
- package/project/.sdk/src/cmp/rb/TestEntity_rb.ts +66 -65
- package/project/.sdk/src/cmp/rb/utility_rb.ts +0 -22
- package/project/.sdk/src/cmp/rust/Config_rust.ts +0 -35
- package/project/.sdk/src/cmp/rust/EntityTypes_rust.ts +4 -38
- package/project/.sdk/src/cmp/rust/Entity_rust.ts +0 -9
- package/project/.sdk/src/cmp/rust/Main_rust.ts +0 -58
- package/project/.sdk/src/cmp/rust/Package_rust.ts +0 -30
- package/project/.sdk/src/cmp/rust/PrepareAuth_rust.ts +0 -84
- package/project/.sdk/src/cmp/rust/ReadmeEntity_rust.ts +3 -3
- package/project/.sdk/src/cmp/rust/ReadmeExamplesTest_rust.ts +0 -16
- package/project/.sdk/src/cmp/rust/ReadmeModel_rust.ts +3 -3
- package/project/.sdk/src/cmp/rust/ReadmeRef_rust.ts +7 -10
- package/project/.sdk/src/cmp/rust/Schema_rust.ts +1 -19
- package/project/.sdk/src/cmp/rust/TestDirect_rust.ts +18 -25
- package/project/.sdk/src/cmp/rust/TestEntity_rust.ts +63 -71
- package/project/.sdk/src/cmp/rust/fragment/Entity.fragment.rs +0 -14
- package/project/.sdk/src/cmp/rust/fragment/EntityRemoveOp.fragment.rs +0 -4
- package/project/.sdk/src/cmp/rust/fragment/Main.fragment.rs +0 -20
- package/project/.sdk/src/cmp/rust/fragment/SdkError.fragment.rs +0 -6
- package/project/.sdk/src/cmp/rust/utility_rust.ts +0 -47
- package/project/.sdk/src/cmp/scala/Config_scala.ts +0 -31
- package/project/.sdk/src/cmp/scala/EntityTypes_scala.ts +4 -55
- package/project/.sdk/src/cmp/scala/Main_scala.ts +0 -78
- package/project/.sdk/src/cmp/scala/PrepareAuth_scala.ts +0 -102
- package/project/.sdk/src/cmp/scala/ReadmeEntity_scala.ts +3 -4
- package/project/.sdk/src/cmp/scala/ReadmeExamplesTest_scala.ts +0 -23
- package/project/.sdk/src/cmp/scala/ReadmeModel_scala.ts +3 -3
- package/project/.sdk/src/cmp/scala/ReadmeRef_scala.ts +7 -10
- package/project/.sdk/src/cmp/scala/ReadmeTopQuick_scala.ts +0 -5
- package/project/.sdk/src/cmp/scala/Schema_scala.ts +1 -20
- package/project/.sdk/src/cmp/scala/TestDirect_scala.ts +14 -14
- package/project/.sdk/src/cmp/scala/TestEntity_scala.ts +60 -67
- package/project/.sdk/src/cmp/scala/Test_scala.ts +0 -3
- package/project/.sdk/src/cmp/scala/utility_scala.ts +0 -31
- package/project/.sdk/src/cmp/swift/Config_swift.ts +0 -62
- package/project/.sdk/src/cmp/swift/EntityOperation_swift.ts +0 -3
- package/project/.sdk/src/cmp/swift/EntityTypes_swift.ts +5 -44
- package/project/.sdk/src/cmp/swift/Main_swift.ts +0 -42
- package/project/.sdk/src/cmp/swift/Package_swift.ts +0 -69
- package/project/.sdk/src/cmp/swift/PrepareAuth_swift.ts +0 -134
- package/project/.sdk/src/cmp/swift/ReadmeEntity_swift.ts +3 -5
- package/project/.sdk/src/cmp/swift/ReadmeExamplesTest_swift.ts +0 -22
- package/project/.sdk/src/cmp/swift/ReadmeModel_swift.ts +3 -3
- package/project/.sdk/src/cmp/swift/ReadmeRef_swift.ts +7 -10
- package/project/.sdk/src/cmp/swift/Schema_swift.ts +1 -19
- package/project/.sdk/src/cmp/swift/TestEntity_swift.ts +0 -4
- package/project/.sdk/src/cmp/swift/utility_swift.ts +0 -51
- package/project/.sdk/src/cmp/ts/Config_ts.ts +0 -46
- package/project/.sdk/src/cmp/ts/EntityTypes_ts.ts +5 -39
- package/project/.sdk/src/cmp/ts/Entity_ts.ts +0 -6
- package/project/.sdk/src/cmp/ts/Main_ts.ts +0 -28
- package/project/.sdk/src/cmp/ts/Package_ts.ts +2 -26
- package/project/.sdk/src/cmp/ts/PrepareAuth_ts.ts +0 -55
- package/project/.sdk/src/cmp/ts/ReadmeEntity_ts.ts +3 -12
- package/project/.sdk/src/cmp/ts/ReadmeExampleTest_ts.ts +0 -6
- package/project/.sdk/src/cmp/ts/ReadmeExamplesTest_ts.ts +0 -25
- package/project/.sdk/src/cmp/ts/ReadmeHowto_ts.ts +4 -9
- package/project/.sdk/src/cmp/ts/ReadmeIntro_ts.ts +0 -7
- package/project/.sdk/src/cmp/ts/ReadmeModel_ts.ts +3 -6
- package/project/.sdk/src/cmp/ts/ReadmeQuick_ts.ts +1 -44
- package/project/.sdk/src/cmp/ts/ReadmeRef_ts.ts +7 -25
- package/project/.sdk/src/cmp/ts/ReadmeTopQuick_ts.ts +0 -11
- package/project/.sdk/src/cmp/ts/ReadmeTopTest_ts.ts +6 -9
- package/project/.sdk/src/cmp/ts/Schema_ts.ts +1 -22
- package/project/.sdk/src/cmp/ts/TestDirect_ts.ts +42 -93
- package/project/.sdk/src/cmp/ts/TestEntity_ts.ts +76 -107
- package/project/.sdk/src/cmp/ts/TestLive_ts.ts +12 -6
- package/project/.sdk/src/cmp/ts/Test_ts.ts +0 -4
- package/project/.sdk/src/cmp/ts/fragment/Config.data.fragment.ts +0 -27
- package/project/.sdk/src/cmp/ts/fragment/Config.fragment.ts +0 -7
- package/project/.sdk/src/cmp/ts/fragment/Direct.test.fragment.ts +0 -7
- package/project/.sdk/src/cmp/ts/fragment/Entity.fragment.ts +0 -1
- package/project/.sdk/src/cmp/ts/fragment/Entity.test.fragment.ts +0 -4
- package/project/.sdk/src/cmp/ts/fragment/EntityBase.fragment.ts +0 -20
- package/project/.sdk/src/cmp/ts/fragment/EntityCreateOp.fragment.ts +0 -6
- package/project/.sdk/src/cmp/ts/fragment/EntityLoadOp.fragment.ts +0 -6
- package/project/.sdk/src/cmp/ts/fragment/EntityRemoveOp.fragment.ts +0 -15
- package/project/.sdk/src/cmp/ts/fragment/EntityUpdateOp.fragment.ts +0 -6
- package/project/.sdk/src/cmp/ts/fragment/Main.fragment.ts +0 -15
- package/project/.sdk/src/cmp/ts/fragment/MainStation.fragment.ts +0 -12
- package/project/.sdk/src/cmp/ts/fragment/SdkError.fragment.ts +0 -9
- package/project/.sdk/src/cmp/ts/utility_ts.ts +5 -64
- package/project/.sdk/src/cmp/zig/Config_zig.ts +0 -70
- package/project/.sdk/src/cmp/zig/Entity_zig.ts +0 -3
- package/project/.sdk/src/cmp/zig/Main_zig.ts +0 -83
- package/project/.sdk/src/cmp/zig/Package_zig.ts +0 -22
- package/project/.sdk/src/cmp/zig/PrepareAuth_zig.ts +0 -136
- package/project/.sdk/src/cmp/zig/ReadmeEntity_zig.ts +3 -3
- package/project/.sdk/src/cmp/zig/ReadmeExamplesTest_zig.ts +0 -18
- package/project/.sdk/src/cmp/zig/ReadmeModel_zig.ts +3 -3
- package/project/.sdk/src/cmp/zig/ReadmeQuick_zig.ts +0 -3
- package/project/.sdk/src/cmp/zig/ReadmeRef_zig.ts +7 -10
- package/project/.sdk/src/cmp/zig/Schema_zig.ts +1 -24
- package/project/.sdk/src/cmp/zig/TestDirect_zig.ts +0 -11
- package/project/.sdk/src/cmp/zig/TestEntity_zig.ts +0 -8
- package/project/.sdk/src/cmp/zig/Test_zig.ts +0 -11
- package/project/.sdk/src/cmp/zig/utility_zig.ts +0 -47
- package/project/.sdk/tm/c/feature/test.c +20 -4
- package/project/.sdk/tm/clojure/src/sdk/features.clj +6 -4
- package/project/.sdk/tm/cpp/feature/test.hpp +17 -6
- package/project/.sdk/tm/csharp/feature/FeatureOptions.cs +18 -5
- package/project/.sdk/tm/csharp/feature/TestFeature.cs +10 -4
- package/project/.sdk/tm/elixir/lib/projectname/feature/test.ex +11 -5
- package/project/.sdk/tm/go/core/context.go +0 -9
- package/project/.sdk/tm/go/core/types.go +0 -3
- package/project/.sdk/tm/go/feature/audit_feature.go +0 -9
- package/project/.sdk/tm/go/feature/cache_feature.go +0 -8
- package/project/.sdk/tm/go/feature/clienttrack_feature.go +0 -7
- package/project/.sdk/tm/go/feature/cost_feature.go +0 -51
- package/project/.sdk/tm/go/feature/debug_feature.go +0 -6
- package/project/.sdk/tm/go/feature/feature_options.go +108 -21
- package/project/.sdk/tm/go/feature/idempotency_feature.go +0 -6
- package/project/.sdk/tm/go/feature/metrics_feature.go +0 -6
- package/project/.sdk/tm/go/feature/netsim_feature.go +0 -8
- package/project/.sdk/tm/go/feature/paging_feature.go +0 -9
- package/project/.sdk/tm/go/feature/proxy_feature.go +0 -7
- package/project/.sdk/tm/go/feature/ratelimit_feature.go +0 -6
- package/project/.sdk/tm/go/feature/rbac_feature.go +0 -10
- package/project/.sdk/tm/go/feature/retry_feature.go +0 -6
- package/project/.sdk/tm/go/feature/secrets_feature.go +0 -173
- package/project/.sdk/tm/go/feature/streaming_feature.go +0 -7
- package/project/.sdk/tm/go/feature/telemetry_feature.go +0 -8
- package/project/.sdk/tm/go/feature/test_feature.go +0 -23
- package/project/.sdk/tm/go/feature/validate_feature.go +0 -66
- package/project/.sdk/tm/go/test/custom_utility_test.go +0 -29
- package/project/.sdk/tm/go/test/feature/secrets/secrets_feature_test.go +0 -100
- package/project/.sdk/tm/go/test/feature_corpus_test.go +1 -60
- package/project/.sdk/tm/go/test/feature_harness_test.go +0 -10
- package/project/.sdk/tm/go/test/feature_test.go +107 -9
- package/project/.sdk/tm/go/test/omniresolver_test.go +0 -74
- package/project/.sdk/tm/go/test/omnismoke_test.go +0 -4
- package/project/.sdk/tm/go/test/pipeline_test.go +0 -10
- package/project/.sdk/tm/go/test/primary_utility_test.go +0 -32
- package/project/.sdk/tm/go/test/struct_utility_test.go +0 -38
- package/project/.sdk/tm/go/test/testsupport_test.go +0 -25
- package/project/.sdk/tm/go/utility/feature_add.go +0 -6
- package/project/.sdk/tm/go/utility/fetcher.go +0 -6
- package/project/.sdk/tm/go/utility/graphql.go +1 -31
- package/project/.sdk/tm/go/utility/make_options.go +38 -49
- package/project/.sdk/tm/go/utility/make_point.go +0 -11
- package/project/.sdk/tm/go/utility/make_spec.go +0 -15
- package/project/.sdk/tm/go/utility/register.go +0 -28
- package/project/.sdk/tm/go/utility/transform_request.go +0 -20
- package/project/.sdk/tm/go/utility/transform_response.go +0 -8
- package/project/.sdk/tm/java/feature/TestFeature.java +11 -6
- package/project/.sdk/tm/js/src/feature/test/TestFeature.js +12 -4
- package/project/.sdk/tm/js/test/live-entity.js +29 -29
- package/project/.sdk/tm/js/test/live-scenarios.js +4 -4
- package/project/.sdk/tm/kotlin/feature/TestFeature.kt +8 -4
- package/project/.sdk/tm/ocaml/sdk_features.ml +6 -4
- package/project/.sdk/tm/perl/feature/test_feature.pm +6 -4
- package/project/.sdk/tm/rb/feature/test_feature.rb +6 -4
- package/project/.sdk/tm/rust/core/context.rs +0 -5
- package/project/.sdk/tm/rust/core/control.rs +0 -1
- package/project/.sdk/tm/rust/core/helpers.rs +0 -15
- package/project/.sdk/tm/rust/core/operation.rs +0 -1
- package/project/.sdk/tm/rust/core/point.rs +0 -3
- package/project/.sdk/tm/rust/core/response.rs +0 -2
- package/project/.sdk/tm/rust/core/result.rs +0 -1
- package/project/.sdk/tm/rust/core/spec.rs +0 -1
- package/project/.sdk/tm/rust/core/types.rs +0 -20
- package/project/.sdk/tm/rust/core/utility_type.rs +0 -5
- package/project/.sdk/tm/rust/feature/audit.rs +0 -9
- package/project/.sdk/tm/rust/feature/base.rs +0 -3
- package/project/.sdk/tm/rust/feature/cache.rs +0 -9
- package/project/.sdk/tm/rust/feature/clienttrack.rs +0 -7
- package/project/.sdk/tm/rust/feature/cost.rs +0 -48
- package/project/.sdk/tm/rust/feature/debug.rs +0 -7
- package/project/.sdk/tm/rust/feature/idempotency.rs +0 -7
- package/project/.sdk/tm/rust/feature/log.rs +0 -3
- package/project/.sdk/tm/rust/feature/metrics.rs +0 -7
- package/project/.sdk/tm/rust/feature/netsim.rs +0 -9
- package/project/.sdk/tm/rust/feature/paging.rs +0 -10
- package/project/.sdk/tm/rust/feature/proxy.rs +0 -8
- package/project/.sdk/tm/rust/feature/ratelimit.rs +0 -6
- package/project/.sdk/tm/rust/feature/rbac.rs +0 -10
- package/project/.sdk/tm/rust/feature/retry.rs +0 -6
- package/project/.sdk/tm/rust/feature/secrets.rs +1 -187
- package/project/.sdk/tm/rust/feature/streaming.rs +0 -7
- package/project/.sdk/tm/rust/feature/support.rs +0 -6
- package/project/.sdk/tm/rust/feature/telemetry.rs +0 -9
- package/project/.sdk/tm/rust/feature/test.rs +8 -23
- package/project/.sdk/tm/rust/feature/timeout.rs +0 -7
- package/project/.sdk/tm/rust/feature/validate.rs +0 -81
- package/project/.sdk/tm/rust/tests/common/mod.rs +0 -35
- package/project/.sdk/tm/rust/tests/custom_utility_test.rs +0 -2
- package/project/.sdk/tm/rust/tests/feature/secrets/main.rs +0 -95
- package/project/.sdk/tm/rust/tests/feature_test.rs +0 -16
- package/project/.sdk/tm/rust/tests/netsim_test.rs +0 -6
- package/project/.sdk/tm/rust/tests/omni_resolver/mod.rs +0 -135
- package/project/.sdk/tm/rust/tests/omni_smoke_test.rs +0 -15
- package/project/.sdk/tm/rust/tests/pipeline_test.rs +0 -6
- package/project/.sdk/tm/rust/tests/primary_utility_test.rs +0 -22
- package/project/.sdk/tm/rust/tests/struct_utility_test.rs +0 -25
- package/project/.sdk/tm/rust/utility/fetcher.rs +0 -5
- package/project/.sdk/tm/rust/utility/graphql.rs +1 -30
- package/project/.sdk/tm/rust/utility/make_error.rs +0 -2
- package/project/.sdk/tm/rust/utility/make_options.rs +0 -46
- package/project/.sdk/tm/rust/utility/make_point.rs +0 -12
- package/project/.sdk/tm/rust/utility/make_spec.rs +0 -4
- package/project/.sdk/tm/rust/utility/voxgigstruct/consts.rs +14 -20
- package/project/.sdk/tm/rust/utility/voxgigstruct/major.rs +0 -13
- package/project/.sdk/tm/rust/utility/voxgigstruct/mini.rs +0 -14
- package/project/.sdk/tm/rust/utility/voxgigstruct/mod.rs +0 -2
- package/project/.sdk/tm/rust/utility/voxgigstruct/ordered_map.rs +0 -18
- package/project/.sdk/tm/rust/utility/voxgigstruct/re.rs +0 -11
- package/project/.sdk/tm/rust/utility/voxgigstruct/value.rs +0 -3
- package/project/.sdk/tm/scala/feature/TestFeature.scala +10 -6
- package/project/.sdk/tm/swift/Sources/ProjectNameSDK/feature/TestFeature.swift +10 -6
- package/project/.sdk/tm/ts/src/Context.ts +0 -5
- package/project/.sdk/tm/ts/src/feature/audit/AuditFeature.ts +0 -7
- package/project/.sdk/tm/ts/src/feature/cache/CacheFeature.ts +0 -8
- package/project/.sdk/tm/ts/src/feature/clienttrack/ClienttrackFeature.ts +0 -7
- package/project/.sdk/tm/ts/src/feature/cost/CostFeature.ts +0 -52
- package/project/.sdk/tm/ts/src/feature/debug/DebugFeature.ts +0 -6
- package/project/.sdk/tm/ts/src/feature/metrics/MetricsFeature.ts +0 -6
- package/project/.sdk/tm/ts/src/feature/netsim/NetsimFeature.ts +0 -8
- package/project/.sdk/tm/ts/src/feature/paging/PagingFeature.ts +0 -13
- package/project/.sdk/tm/ts/src/feature/proxy/ProxyFeature.ts +0 -8
- package/project/.sdk/tm/ts/src/feature/ratelimit/RatelimitFeature.ts +0 -6
- package/project/.sdk/tm/ts/src/feature/rbac/RbacFeature.ts +0 -9
- package/project/.sdk/tm/ts/src/feature/retry/RetryFeature.ts +0 -6
- package/project/.sdk/tm/ts/src/feature/secrets/SecretsFeature.ts +0 -136
- package/project/.sdk/tm/ts/src/feature/streaming/StreamingFeature.ts +0 -7
- package/project/.sdk/tm/ts/src/feature/telemetry/TelemetryFeature.ts +0 -7
- package/project/.sdk/tm/ts/src/feature/test/TestFeature.ts +13 -88
- package/project/.sdk/tm/ts/src/feature/validate/ValidateFeature.ts +0 -87
- package/project/.sdk/tm/ts/src/utility/CleanUtility.ts +0 -12
- package/project/.sdk/tm/ts/src/utility/FeatureAddUtility.ts +0 -1
- package/project/.sdk/tm/ts/src/utility/GraphqlUtility.ts +2 -30
- package/project/.sdk/tm/ts/src/utility/MakeErrorUtility.ts +0 -4
- package/project/.sdk/tm/ts/src/utility/MakeOptionsUtility.ts +0 -46
- package/project/.sdk/tm/ts/src/utility/MakePointUtility.ts +0 -34
- package/project/.sdk/tm/ts/src/utility/MakeRequestUtility.ts +0 -1
- package/project/.sdk/tm/ts/src/utility/MakeSpecUtility.ts +0 -5
- package/project/.sdk/tm/ts/src/utility/MakeUrlUtility.ts +0 -1
- package/project/.sdk/tm/ts/src/utility/ParamUtility.ts +0 -8
- package/project/.sdk/tm/ts/src/utility/PrepareBodyUtility.ts +0 -3
- package/project/.sdk/tm/ts/src/utility/PrepareParamsUtility.ts +0 -6
- package/project/.sdk/tm/ts/src/utility/ResultBasicUtility.ts +0 -1
- package/project/.sdk/tm/ts/src/utility/TransformRequestUtility.ts +0 -20
- package/project/.sdk/tm/ts/src/utility/TransformResponseUtility.ts +0 -4
- package/project/.sdk/tm/ts/test/exists.test.ts +0 -10
- package/project/.sdk/tm/ts/test/feature/Corpus.test.ts +0 -56
- package/project/.sdk/tm/ts/test/feature/harness.ts +0 -9
- package/project/.sdk/tm/ts/test/feature/secrets/Secrets.test.ts +0 -106
- package/project/.sdk/tm/ts/test/live-contract.ts +0 -2
- package/project/.sdk/tm/ts/test/live-entity.ts +26 -26
- package/project/.sdk/tm/ts/test/live-scenarios.ts +3 -3
- package/project/.sdk/tm/ts/test/omni.ts +0 -32
- package/project/.sdk/tm/ts/test/pipeline.test.ts +45 -28
- package/project/.sdk/tm/ts/test/utility/Corpus.test.ts +0 -13
- package/project/.sdk/tm/ts/test/utility/PrimaryUtility.test.ts +56 -29
- package/project/.sdk/tm/ts/test/utility/StructUtility.test.ts +0 -7
- package/project/.sdk/tm/ts/test/utility.ts +0 -55
- package/project/.sdk/tm/zig/feature/test.zig +11 -4
- package/project/sdkgen-package.json +1 -1
- package/src/action/action.ts +0 -65
- package/src/action/check.ts +0 -88
- package/src/action/dispatch.ts +0 -27
- package/src/action/doctor.ts +69 -329
- package/src/action/edition.ts +1 -87
- package/src/action/feature.ts +1 -49
- package/src/action/kind.ts +0 -149
- package/src/action/package.ts +0 -228
- package/src/action/resolve.ts +0 -148
- package/src/action/target.ts +0 -177
- package/src/cmp/AgentGuide.ts +0 -7
- package/src/cmp/AgentGuideContent.ts +0 -24
- package/src/cmp/AgentGuideTop.ts +0 -7
- package/src/cmp/Changelog.ts +0 -14
- package/src/cmp/Deploy.ts +1 -31
- package/src/cmp/Entity.ts +0 -4
- package/src/cmp/ExternalTarget.ts +0 -36
- package/src/cmp/Feature.ts +0 -14
- package/src/cmp/FeatureDocs.ts +0 -37
- package/src/cmp/PublishWorkflow.ts +0 -60
- package/src/cmp/ReadmeErrors.ts +0 -17
- package/src/cmp/ReadmeExplanation.ts +2 -11
- package/src/cmp/ReadmeFeatures.ts +0 -10
- package/src/cmp/ReadmeRefFeatures.ts +0 -19
- package/src/cmp/ReadmeStation.ts +0 -19
- package/src/cmp/ReadmeTop.ts +1 -81
- package/src/cmp/ReadmeUnions.ts +1 -16
- package/src/cmp/Registered.ts +0 -30
- package/src/cmp/Security.ts +0 -2
- package/src/cmp/Test.ts +4 -2
- package/src/cmp/TestControl.ts +0 -25
- package/src/helpers/applicability.ts +0 -60
- package/src/helpers/buildIdNames.ts +17 -19
- package/src/helpers/canonSpec.ts +2 -116
- package/src/helpers/canonType.ts +0 -87
- package/src/helpers/collectDeps.ts +0 -27
- package/src/helpers/definition.ts +0 -29
- package/src/helpers/dryrun.ts +0 -8
- package/src/helpers/featureSource.ts +0 -152
- package/src/helpers/getMatchEntries.ts +2 -6
- package/src/helpers/junk.ts +13 -89
- package/src/helpers/manifest.ts +0 -169
- package/src/helpers/modelNames.ts +6 -82
- package/src/helpers/modelcheck.ts +0 -106
- package/src/helpers/naming.ts +0 -303
- package/src/helpers/opExample.ts +0 -56
- package/src/helpers/opShape.ts +33 -233
- package/src/helpers/optspec.ts +0 -77
- package/src/helpers/packageMeta.ts +1 -200
- package/src/helpers/pointPath.ts +5 -65
- package/src/helpers/resolved.ts +39 -0
- package/src/helpers/semver.ts +0 -61
- package/src/helpers/serverVars.ts +0 -44
- package/src/helpers/shipped.ts +0 -14
- package/src/helpers/station.ts +0 -32
- package/src/helpers/stdrep.ts +0 -52
- package/src/helpers/testPolicy.ts +0 -4
- package/src/sdkgen.ts +18 -264
- package/src/testkit.ts +6 -312
- package/src/types.ts +1 -30
- package/src/utility.ts +16 -250
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { flowSteps } from '@voxgig/sdkgen'
|
|
1
2
|
|
|
2
3
|
import {
|
|
3
4
|
KIT,
|
|
@@ -24,11 +25,6 @@ import {
|
|
|
24
25
|
import { scalaVarName } from './utility_scala'
|
|
25
26
|
|
|
26
27
|
|
|
27
|
-
// Scala GenCtx mirrors the java donor's shape (see TestEntity_java.ts). The
|
|
28
|
-
// scala per-entity test is a dependency-free scala-cli object (default
|
|
29
|
-
// package) exposing run(rep) — driven by the generated SdkEntityTestMain
|
|
30
|
-
// aggregator. Only the offline unit path is emitted: the in-memory test
|
|
31
|
-
// transport serves the fixtures, so there is no live/env/synthetic machinery.
|
|
32
28
|
type GenCtx = {
|
|
33
29
|
model: Model
|
|
34
30
|
entity: ModelEntity
|
|
@@ -68,10 +64,10 @@ const TestEntity = cmp(function TestEntity(props: any) {
|
|
|
68
64
|
for (const n of idnames) {
|
|
69
65
|
idmapObj[n] = String(n).toUpperCase()
|
|
70
66
|
}
|
|
71
|
-
const allSteps = Object.values(basicflow
|
|
72
|
-
const updateStep = allSteps.find((s: any) => s.
|
|
73
|
-
const updateData = updateStep?.
|
|
74
|
-
? Object.entries(updateStep.
|
|
67
|
+
const allSteps = Object.values(flowSteps(basicflow)) as any[]
|
|
68
|
+
const updateStep = allSteps.find((s: any) => s.o === 'update')
|
|
69
|
+
const updateData = updateStep?.d
|
|
70
|
+
? Object.entries(updateStep.d).filter(([k]: any) => k !== 'id' && !k.endsWith('$'))
|
|
75
71
|
: []
|
|
76
72
|
for (const [k, v] of updateData as any[]) {
|
|
77
73
|
if (null == idmapObj[k] && null != idmapObj[v as string]) {
|
|
@@ -125,10 +121,10 @@ object ${EntityName}EntityTest {
|
|
|
125
121
|
// that a later load/update/remove reads its id from. Seed it from the
|
|
126
122
|
// shipped "existing" fixtures here, mirroring the ts generator. Guarded on a
|
|
127
123
|
// DATA id field — an entity that carries no id has no `.get("id")` to read.
|
|
128
|
-
const flowHasCreate = allSteps.some((s: any) => s.
|
|
124
|
+
const flowHasCreate = allSteps.some((s: any) => s.o === 'create')
|
|
129
125
|
const needsPreambleData = !flowHasCreate &&
|
|
130
126
|
null != entityDataIdField(entity) &&
|
|
131
|
-
allSteps.some((s: any) => ['load', 'update', 'remove'].includes(s.
|
|
127
|
+
allSteps.some((s: any) => ['load', 'update', 'remove'].includes(s.o))
|
|
132
128
|
if (needsPreambleData) {
|
|
133
129
|
const preambleData = scalaVarName(entity.name + '_ref01_data')
|
|
134
130
|
Content(` val ${preambleData}Raw = Struct.items(Helpers.toMapAny(
|
|
@@ -138,8 +134,8 @@ object ${EntityName}EntityTest {
|
|
|
138
134
|
}
|
|
139
135
|
|
|
140
136
|
// Model-driven step iteration (sorted-key order for byte-stable output).
|
|
141
|
-
each(basicflow
|
|
142
|
-
const opgen: OpGen = GENERATE_OP[step.
|
|
137
|
+
each(flowSteps(basicflow), (step: any, index: any) => {
|
|
138
|
+
const opgen: OpGen = GENERATE_OP[step.o]
|
|
143
139
|
if (opgen) {
|
|
144
140
|
Content('\n')
|
|
145
141
|
opgen(genCtx, step, index)
|
|
@@ -156,13 +152,13 @@ object ${EntityName}EntityTest {
|
|
|
156
152
|
|
|
157
153
|
const generateCreate: OpGen = (ctx, step, index) => {
|
|
158
154
|
const { entity, flow, accessor, ENTLOWER } = ctx
|
|
159
|
-
const ref = step.
|
|
160
|
-
const entvar = scalaVarName(step.
|
|
161
|
-
const datavar = scalaVarName(step.
|
|
155
|
+
const ref = step.i.ref ?? entity.name + '_ref01'
|
|
156
|
+
const entvar = scalaVarName(step.i.entvar ?? ref + '_ent')
|
|
157
|
+
const datavar = scalaVarName(step.i.datavar ?? (ref + '_data' + (step.i.suffix ?? '')))
|
|
162
158
|
|
|
163
|
-
const priorSteps = Object.values(flow
|
|
159
|
+
const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
|
|
164
160
|
const needsEnt = !priorSteps.some((s: any) =>
|
|
165
|
-
['create', 'list', 'load', 'update', 'remove'].includes(s.
|
|
161
|
+
['create', 'list', 'load', 'update', 'remove'].includes(s.o))
|
|
166
162
|
|
|
167
163
|
Content(` // CREATE
|
|
168
164
|
`)
|
|
@@ -193,14 +189,14 @@ const generateCreate: OpGen = (ctx, step, index) => {
|
|
|
193
189
|
|
|
194
190
|
const generateList: OpGen = (ctx, step, index) => {
|
|
195
191
|
const { entity, flow, accessor, ENTLOWER } = ctx
|
|
196
|
-
const ref = step.
|
|
197
|
-
const entvar = scalaVarName(step.
|
|
198
|
-
const matchvar = scalaVarName(step.
|
|
199
|
-
const listvar = scalaVarName(step.
|
|
192
|
+
const ref = step.i.ref ?? entity.name + '_ref01'
|
|
193
|
+
const entvar = scalaVarName(step.i.entvar ?? ref + '_ent')
|
|
194
|
+
const matchvar = scalaVarName(step.i.matchvar ?? (ref + '_match' + (step.i.suffix ?? '')))
|
|
195
|
+
const listvar = scalaVarName(step.i.listvar ?? (ref + '_list' + (step.i.suffix ?? '')))
|
|
200
196
|
|
|
201
|
-
const priorSteps = Object.values(flow
|
|
197
|
+
const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
|
|
202
198
|
const needsEnt = !priorSteps.some((s: any) =>
|
|
203
|
-
['create', 'list', 'load', 'update', 'remove'].includes(s.
|
|
199
|
+
['create', 'list', 'load', 'update', 'remove'].includes(s.o))
|
|
204
200
|
|
|
205
201
|
Content(` // LIST
|
|
206
202
|
`)
|
|
@@ -217,16 +213,13 @@ const generateList: OpGen = (ctx, step, index) => {
|
|
|
217
213
|
`)
|
|
218
214
|
}
|
|
219
215
|
|
|
220
|
-
// Select-by-id assertions require the DATA type to carry an id field
|
|
221
|
-
// (entityDataIdField); an entity keyed only on a load-MATCH id it does not
|
|
222
|
-
// return as data has no `.get("id")` to compare, so skip them.
|
|
223
216
|
const hasDataId = null != entityDataIdField(entity)
|
|
224
|
-
const allSteps = Object.values(flow
|
|
225
|
-
const listvarUsed = hasDataId && !!step.
|
|
217
|
+
const allSteps = Object.values(flowSteps(flow)) as any[]
|
|
218
|
+
const listvarUsed = hasDataId && !!step.v?.some((v: any) => {
|
|
226
219
|
if ('ItemExists' !== v.apply && 'ItemNotExists' !== v.apply) return false
|
|
227
220
|
const validRef = v.def?.ref
|
|
228
|
-
return validRef && allSteps.some((s: any) => 'create' === s.
|
|
229
|
-
((s.
|
|
221
|
+
return validRef && allSteps.some((s: any) => 'create' === s.o &&
|
|
222
|
+
((s.i.ref ?? entity.name + '_ref01') === validRef))
|
|
230
223
|
})
|
|
231
224
|
|
|
232
225
|
Content(` val ${listvar}Result = ${entvar}.list(${matchvar}, null)
|
|
@@ -237,11 +230,11 @@ const generateList: OpGen = (ctx, step, index) => {
|
|
|
237
230
|
`)
|
|
238
231
|
}
|
|
239
232
|
|
|
240
|
-
if (step.
|
|
241
|
-
for (const validator of step.
|
|
233
|
+
if (step.v) {
|
|
234
|
+
for (const validator of step.v) {
|
|
242
235
|
const validRef = validator.def?.ref
|
|
243
|
-
const hasRefData = validRef && allSteps.some((s: any) => 'create' === s.
|
|
244
|
-
((s.
|
|
236
|
+
const hasRefData = validRef && allSteps.some((s: any) => 'create' === s.o &&
|
|
237
|
+
((s.i.ref ?? entity.name + '_ref01') === validRef))
|
|
245
238
|
const refDataVar = scalaVarName(validRef + '_data')
|
|
246
239
|
|
|
247
240
|
if ('ItemExists' === validator.apply && hasRefData && hasDataId) {
|
|
@@ -262,16 +255,16 @@ const generateList: OpGen = (ctx, step, index) => {
|
|
|
262
255
|
|
|
263
256
|
const generateUpdate: OpGen = (ctx, step, index) => {
|
|
264
257
|
const { entity, flow, accessor, ENTLOWER } = ctx
|
|
265
|
-
const ref = step.
|
|
266
|
-
const entvar = scalaVarName(step.
|
|
267
|
-
const datavar = scalaVarName(step.
|
|
268
|
-
const resdatavar = scalaVarName(step.
|
|
269
|
-
const markdefvar = scalaVarName(step.
|
|
270
|
-
const srcdatavar = scalaVarName(step.
|
|
271
|
-
|
|
272
|
-
const priorSteps = Object.values(flow
|
|
258
|
+
const ref = step.i.ref ?? entity.name + '_ref01'
|
|
259
|
+
const entvar = scalaVarName(step.i.entvar ?? ref + '_ent')
|
|
260
|
+
const datavar = scalaVarName(step.i.datavar ?? (ref + '_data' + (step.i.suffix ?? '')))
|
|
261
|
+
const resdatavar = scalaVarName(step.i.resdatavar ?? (ref + '_resdata' + (step.i.suffix ?? '')))
|
|
262
|
+
const markdefvar = scalaVarName(step.i.markdefvar ?? (ref + '_markdef' + (step.i.suffix ?? '')))
|
|
263
|
+
const srcdatavar = scalaVarName(step.i.srcdatavar ?? (ref + '_data' + (step.i.suffix ?? '')))
|
|
264
|
+
|
|
265
|
+
const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
|
|
273
266
|
const needsEnt = !priorSteps.some((s: any) =>
|
|
274
|
-
['create', 'list', 'load', 'update', 'remove'].includes(s.
|
|
267
|
+
['create', 'list', 'load', 'update', 'remove'].includes(s.o))
|
|
275
268
|
|
|
276
269
|
const hasDataId = null != entityDataIdField(entity)
|
|
277
270
|
|
|
@@ -288,8 +281,8 @@ const generateUpdate: OpGen = (ctx, step, index) => {
|
|
|
288
281
|
`)
|
|
289
282
|
}
|
|
290
283
|
|
|
291
|
-
if (step.
|
|
292
|
-
const dataEntries = Object.entries(step.
|
|
284
|
+
if (step.d) {
|
|
285
|
+
const dataEntries = Object.entries(step.d).filter(([k]: any) => k !== 'id' && !k.endsWith('$'))
|
|
293
286
|
for (const [key] of dataEntries) {
|
|
294
287
|
Content(` ${datavar}Up.put("${key}", idmap.get("${key}"))
|
|
295
288
|
`)
|
|
@@ -297,10 +290,10 @@ const generateUpdate: OpGen = (ctx, step, index) => {
|
|
|
297
290
|
}
|
|
298
291
|
|
|
299
292
|
let hasMark = false
|
|
300
|
-
if (step.
|
|
301
|
-
for (const spec of step.
|
|
302
|
-
if ('TextFieldMark' === spec.apply && null != step.
|
|
303
|
-
const fieldname = step.
|
|
293
|
+
if (step.s) {
|
|
294
|
+
for (const spec of step.s) {
|
|
295
|
+
if ('TextFieldMark' === spec.apply && null != step.i.textfield) {
|
|
296
|
+
const fieldname = step.i.textfield
|
|
304
297
|
const fieldvalue = spec.def?.mark ?? `Mark01-${ref}`
|
|
305
298
|
hasMark = true
|
|
306
299
|
Content(` val ${markdefvar}Name = "${fieldname}"
|
|
@@ -328,23 +321,23 @@ const generateUpdate: OpGen = (ctx, step, index) => {
|
|
|
328
321
|
|
|
329
322
|
const generateLoad: OpGen = (ctx, step, index) => {
|
|
330
323
|
const { entity, flow, accessor, ENTLOWER } = ctx
|
|
331
|
-
const ref = step.
|
|
332
|
-
const entvar = scalaVarName(step.
|
|
333
|
-
const matchvar = scalaVarName(step.
|
|
334
|
-
const datavar = scalaVarName(step.
|
|
335
|
-
const srcdatavar = scalaVarName(step.
|
|
324
|
+
const ref = step.i.ref ?? entity.name + '_ref01'
|
|
325
|
+
const entvar = scalaVarName(step.i.entvar ?? ref + '_ent')
|
|
326
|
+
const matchvar = scalaVarName(step.i.matchvar ?? (ref + '_match' + (step.i.suffix ?? '')))
|
|
327
|
+
const datavar = scalaVarName(step.i.datavar ?? (ref + '_data' + (step.i.suffix ?? '')))
|
|
328
|
+
const srcdatavar = scalaVarName(step.i.srcdatavar ?? (ref + '_data' + (step.i.suffix ?? '')))
|
|
336
329
|
|
|
337
|
-
const priorSteps = Object.values(flow
|
|
330
|
+
const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
|
|
338
331
|
const hasEntVar = priorSteps.some((s: any) =>
|
|
339
|
-
['create', 'list', 'load', 'update', 'remove'].includes(s.
|
|
332
|
+
['create', 'list', 'load', 'update', 'remove'].includes(s.o))
|
|
340
333
|
|
|
341
|
-
const flowHasCreate = Object.values(flow
|
|
334
|
+
const flowHasCreate = Object.values(flowSteps(flow)).some((s: any) => (s as any).o === 'create')
|
|
342
335
|
const preambleRef = entity.name + '_ref01'
|
|
343
336
|
const hasSrcData = (!flowHasCreate && srcdatavar === scalaVarName(preambleRef + '_data')) ||
|
|
344
337
|
priorSteps.some((s: any) => {
|
|
345
|
-
if ('create' === s.
|
|
346
|
-
const priorRef = s.
|
|
347
|
-
const priorDatvar = scalaVarName(s.
|
|
338
|
+
if ('create' === s.o) {
|
|
339
|
+
const priorRef = s.i.ref ?? entity.name + '_ref01'
|
|
340
|
+
const priorDatvar = scalaVarName(s.i.datavar ?? (priorRef + '_data' + (s.i.suffix ?? '')))
|
|
348
341
|
return priorDatvar === srcdatavar
|
|
349
342
|
}
|
|
350
343
|
return false
|
|
@@ -383,10 +376,10 @@ const generateLoad: OpGen = (ctx, step, index) => {
|
|
|
383
376
|
|
|
384
377
|
const generateRemove: OpGen = (ctx, step, index) => {
|
|
385
378
|
const { entity, flow, accessor, ENTLOWER } = ctx
|
|
386
|
-
const ref = step.
|
|
387
|
-
const entvar = scalaVarName(step.
|
|
388
|
-
const matchvar = scalaVarName(step.
|
|
389
|
-
const srcdatavar = scalaVarName(step.
|
|
379
|
+
const ref = step.i.ref ?? entity.name + '_ref01'
|
|
380
|
+
const entvar = scalaVarName(step.i.entvar ?? ref + '_ent')
|
|
381
|
+
const matchvar = scalaVarName(step.i.matchvar ?? (ref + '_match' + (step.i.suffix ?? '')))
|
|
382
|
+
const srcdatavar = scalaVarName(step.i.srcdatavar ?? (ref + '_data'))
|
|
390
383
|
|
|
391
384
|
// The remove-by-id match reads ${srcdatavar}.get("id"); skip the whole step
|
|
392
385
|
// when the DATA type has no id field (there is no created id to remove by).
|
|
@@ -394,9 +387,9 @@ const generateRemove: OpGen = (ctx, step, index) => {
|
|
|
394
387
|
return
|
|
395
388
|
}
|
|
396
389
|
|
|
397
|
-
const priorSteps = Object.values(flow
|
|
390
|
+
const priorSteps = Object.values(flowSteps(flow)).slice(0, Number(index)) as any[]
|
|
398
391
|
const needsEnt = !priorSteps.some((s: any) =>
|
|
399
|
-
['create', 'list', 'load', 'update', 'remove'].includes(s.
|
|
392
|
+
['create', 'list', 'load', 'update', 'remove'].includes(s.o))
|
|
400
393
|
|
|
401
394
|
Content(` // REMOVE
|
|
402
395
|
`)
|
|
@@ -62,9 +62,6 @@ const Test = cmp(function Test(props: any) {
|
|
|
62
62
|
}
|
|
63
63
|
})
|
|
64
64
|
|
|
65
|
-
// Documentation scala-examples presence + structure gate over the root
|
|
66
|
-
// README, scala/README.md and scala/REFERENCE.md. Driven through the same
|
|
67
|
-
// shared report by the SdkEntityTestMain aggregator below.
|
|
68
65
|
ReadmeExamplesTest({ target, scalapackage })
|
|
69
66
|
|
|
70
67
|
// Aggregating main: run every generated per-entity test through one
|
|
@@ -17,12 +17,6 @@ function projectPath(suffix?: string): string {
|
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
// The Scala package root for the generated SDK, mirroring how the go target
|
|
21
|
-
// derives GOMODULE and the java target derives its package: org segment from
|
|
22
|
-
// model.origin, name segment from the model name (e.g. origin voxgig-sdk +
|
|
23
|
-
// name solardemo -> voxgig.solardemosdk). Each runtime piece lives under it:
|
|
24
|
-
// <pkg>.core, <pkg>.utility, <pkg>.utility.struct, <pkg>.feature,
|
|
25
|
-
// <pkg>.entity, <pkg>.sdktest.
|
|
26
20
|
function scalaPackage(model: any): string {
|
|
27
21
|
const org = String(model.origin || 'voxgig-sdk')
|
|
28
22
|
.replace(/-sdk$/, '')
|
|
@@ -55,8 +49,6 @@ const SCALA_KEYWORDS = new Set([
|
|
|
55
49
|
])
|
|
56
50
|
|
|
57
51
|
|
|
58
|
-
// A camelCase Scala identifier for a snake_case model name
|
|
59
|
-
// (`status_embed_config` -> `statusEmbedConfig`), with a reserved-word guard.
|
|
60
52
|
function scalaVarName(name: string): string {
|
|
61
53
|
const pascal = camelify(name)
|
|
62
54
|
const out = pascal.charAt(0).toLowerCase() + pascal.slice(1)
|
|
@@ -64,29 +56,6 @@ function scalaVarName(name: string): string {
|
|
|
64
56
|
}
|
|
65
57
|
|
|
66
58
|
|
|
67
|
-
// Strip model bookkeeping keys (ending in $) from a config subtree.
|
|
68
|
-
// Emission-time normalisation of a model subtree (L0).
|
|
69
|
-
//
|
|
70
|
-
// Always drops jostraca's iteration metadata (`$`-suffixed keys: index$,
|
|
71
|
-
// key$, val$). With `dropDefaults`, also drops keys whose value IS the
|
|
72
|
-
// default the runtime already assumes when the key is absent, which is pure
|
|
73
|
-
// payload — see CONFIG_DEFAULT.
|
|
74
|
-
//
|
|
75
|
-
// Rebuilds the tree rather than mutating during a walk. The previous
|
|
76
|
-
// implementation walked a clone calling `delete p[k]`, but walk() assigns its
|
|
77
|
-
// callback's result back over the child (`setprop(out, ckey, walk(...))`), so
|
|
78
|
-
// the delete was undone on the way out and the helper silently did nothing.
|
|
79
|
-
// Returning `undefined` from the callback does not fix it either: setprop
|
|
80
|
-
// stores undefined rather than removing the key, which then emits as a null.
|
|
81
|
-
//
|
|
82
|
-
// `dropDefaults` is opt-in and must be passed ONLY for the entity subtree.
|
|
83
|
-
// `active` means something different in feature config, where absent reads as
|
|
84
|
-
// INACTIVE (see feature_init) — dropping `active: true` there would silently
|
|
85
|
-
// disable the feature.
|
|
86
|
-
// jostraca's iteration metadata, injected by each()/names() while it walks the
|
|
87
|
-
// model. Listed explicitly rather than matched by trailing-dollar suffix: a
|
|
88
|
-
// trailing dollar is not exclusive to jostraca -- Seneca uses entity$ as real
|
|
89
|
-
// data -- so a blanket suffix match can silently drop a legitimate API field.
|
|
90
59
|
const MODEL_META = ['index$', 'key$', 'val$']
|
|
91
60
|
|
|
92
61
|
// Keys whose value IS the default the runtime already assumes when the key is
|
|
@@ -29,42 +29,10 @@ const Config = cmp(async function Config(props: any) {
|
|
|
29
29
|
|
|
30
30
|
const model: Model = ctx$.model
|
|
31
31
|
|
|
32
|
-
// Gated by the applicability tags, so this target never imports or
|
|
33
|
-
// registers a feature it has no source for. One rule, one place:
|
|
34
|
-
// helpers/applicability.
|
|
35
32
|
const feature = targetFeatures(model, target)
|
|
36
33
|
|
|
37
|
-
// The config as data, built by the shared helper so every target embeds
|
|
38
|
-
// the same model by construction. Passing target.name opts this target
|
|
39
|
-
// into main.slug / main.version / main.target (the three station
|
|
40
|
-
// descriptor identity fields, station design §4); swift has only the
|
|
41
|
-
// JSON-literal rep, so that one call covers every rep this target emits.
|
|
42
|
-
//
|
|
43
|
-
// `def` rather than the helper's own `json`, because `in` and `name` are
|
|
44
|
-
// added to the auth block below and the JSON has to be re-serialised over
|
|
45
|
-
// that. When nothing is added, `JSON.stringify(def)` IS the helper's
|
|
46
|
-
// `json` - same object, same key order - so a header SDK's config is
|
|
47
|
-
// byte-identical to what it was.
|
|
48
34
|
const { def } = configDefinition(model, target.name)
|
|
49
35
|
|
|
50
|
-
// `in` and `name` TRAVEL WITH THE PREFIX NOW. apidef resolved both from
|
|
51
|
-
// the spec's securityScheme all along (main.kit.info.security - joplin's
|
|
52
|
-
// says `in: "query", name: "token"`) and generation dropped them, so an
|
|
53
|
-
// apiKey-in-query API got an Authorization header it does not read.
|
|
54
|
-
//
|
|
55
|
-
// Emitted ONLY when they differ from the header/Authorization defaults, so
|
|
56
|
-
// every header-based SDK regenerates byte-identical. The generated
|
|
57
|
-
// prepareAuth bakes the placement in at generation time (see
|
|
58
|
-
// PrepareAuth_swift); these carry it in the config so a running SDK, and
|
|
59
|
-
// anything reading its descriptor, can say what its scheme actually is.
|
|
60
|
-
//
|
|
61
|
-
// THE OPTSPEC HAS TO NAME THEM TOO. `main.kit.optspec.auth` does, but
|
|
62
|
-
// swift does not read the model for its option spec - buildOptSpec() in
|
|
63
|
-
// tm/swift/Sources/ProjectNameSDK/utility/MakeOptions.swift is written out
|
|
64
|
-
// by hand - so both were added there in the same change. Without that this
|
|
65
|
-
// block is inert at best: makeOptions merges the config's options and
|
|
66
|
-
// validates the result against that spec, and a key the spec does not name
|
|
67
|
-
// is dropped or rejected.
|
|
68
36
|
const authIn = resolveAuthIn(model)
|
|
69
37
|
const authName = resolveAuthName(model)
|
|
70
38
|
const authOpt: any = (def as any)?.options?.auth
|
|
@@ -75,42 +43,12 @@ const Config = cmp(async function Config(props: any) {
|
|
|
75
43
|
|
|
76
44
|
const json = JSON.stringify(def)
|
|
77
45
|
|
|
78
|
-
// Model-data defaults may carry the ProjectName placeholder (e.g. the
|
|
79
|
-
// clienttrack clientName); resolve it to the API name so the embedded JSON
|
|
80
|
-
// matches the token-replaced runtime.
|
|
81
46
|
const configJson = json.replace(/ProjectName/g, model.const.Name)
|
|
82
47
|
|
|
83
|
-
// PLUGIN DEFINITIONS AND THE featurePlugins MAP (the swift peer of
|
|
84
|
-
// Config_go's featurePlugins / Config_ts's pluginDefs).
|
|
85
|
-
//
|
|
86
|
-
// Upstream sekreto replaced its self-registration registry with
|
|
87
|
-
// voxgig/plugin definitions: a provider kind the caller did not pass in
|
|
88
|
-
// via `plugins:` is unknown to that Sekreto. So the config names each
|
|
89
|
-
// active plugin's exported Definition BY SYMBOL (the model's per-target
|
|
90
|
-
// `def.swift` map - `hashicorp`, a top-level `let` in the vendored
|
|
91
|
-
// SekretoPlugins module) and hands the list to the feature through
|
|
92
|
-
// SdkConfig.featurePlugins.
|
|
93
|
-
//
|
|
94
|
-
// Typed `[String: [Any]]`, as go types it `[]any`, so Config never has to
|
|
95
|
-
// name `Definition` - and so needs `import SekretoPlugins` only when a
|
|
96
|
-
// definition is actually listed. The feature reads the list back and
|
|
97
|
-
// downcasts.
|
|
98
|
-
//
|
|
99
|
-
// The ACCESSOR IS EMITTED UNCONDITIONALLY (empty map when nothing is
|
|
100
|
-
// selected). Its caller, feature/SecretsFeature.swift, ships whenever the
|
|
101
|
-
// feature is active, and java gated the accessor on "a feature declares a
|
|
102
|
-
// plugin block" - which a project that never selected secrets does not
|
|
103
|
-
// have - and shipped an SDK that did not compile (.handover-briefs/
|
|
104
|
-
// fixb-java.md). One rule: what a template may reference, Config always
|
|
105
|
-
// declares.
|
|
106
48
|
const featurePlugins: Record<string, string[]> = {}
|
|
107
49
|
each(feature, (f: any) => {
|
|
108
50
|
const syms: string[] = []
|
|
109
51
|
each(f.plugin, (plugin: any) => {
|
|
110
|
-
// Filter on `active` HERE rather than trusting the feature object to
|
|
111
|
-
// arrive filtered (see Config_ts.pluginImports: getting this wrong
|
|
112
|
-
// names a definition the trim just deleted, and swiftc fails the
|
|
113
|
-
// whole module on the unresolved symbol).
|
|
114
52
|
if (false === plugin.active || null == plugin.active) return
|
|
115
53
|
for (const sym of Object.keys(plugin.def?.swift || {})) {
|
|
116
54
|
syms.push(sym)
|
|
@@ -9,9 +9,6 @@ const EntityOperation = cmp(function Operation(props: any) {
|
|
|
9
9
|
const { model } = props.ctx$
|
|
10
10
|
const { ff, opname, entity, entrep, cls } = props
|
|
11
11
|
|
|
12
|
-
// The op markers sit inside the class body; the captured indent (2-space
|
|
13
|
-
// class-member indent) is applied to the whole spliced EJECT region, which
|
|
14
|
-
// is written at column 0.
|
|
15
12
|
const { indent } = props
|
|
16
13
|
|
|
17
14
|
Fragment({
|
|
@@ -1,24 +1,4 @@
|
|
|
1
1
|
|
|
2
|
-
// Typed-model generator (Swift target). Port of EntityTypes_rust.ts /
|
|
3
|
-
// EntityTypes_go.ts.
|
|
4
|
-
//
|
|
5
|
-
// Reads main.<KIT>.entity.<e>.fields[] and per-op params
|
|
6
|
-
// (op.<name>.points[].args.params[]) and emits one file,
|
|
7
|
-
// Sources/ProjectNameSDK/entity/<Name>Types.swift, with a `struct <Name>` per
|
|
8
|
-
// entity plus a request/match struct per active op. Field/param sentinels
|
|
9
|
-
// ($STRING, $INTEGER, ...) map to Swift types via the SHARED canonToType
|
|
10
|
-
// 'swift' column (the single source of truth per language — do not keep a
|
|
11
|
-
// local table here).
|
|
12
|
-
//
|
|
13
|
-
// DESIGN NOTE: the Swift runtime is fully DYNAMIC — every op takes and returns
|
|
14
|
-
// the vendored `Value` enum (throws on error) and the op fragments emit no
|
|
15
|
-
// typed wrappers. These typed models are therefore DOCUMENTARY: they mirror the
|
|
16
|
-
// entity/op shapes for reference and IDE support, but are not wired into the op
|
|
17
|
-
// signatures. They compile as part of the SwiftPM target (every .swift under
|
|
18
|
-
// Sources/ProjectNameSDK is built) so they stay in sync with the model.
|
|
19
|
-
// * Optional (req:false) member -> `T?`.
|
|
20
|
-
// * Unknown/missing sentinel -> the dynamic `Value` (never fails), matching
|
|
21
|
-
// the runtime's open shape.
|
|
22
2
|
|
|
23
3
|
import {
|
|
24
4
|
cmp, each,
|
|
@@ -48,9 +28,6 @@ function propLine(name: string, sentinel: any, optional: boolean): string {
|
|
|
48
28
|
}
|
|
49
29
|
|
|
50
30
|
|
|
51
|
-
// Emit a `struct <typeName>` from {name, type, optional} items, dropping
|
|
52
|
-
// duplicate Swift identifiers (two model names can collapse to one ident). An
|
|
53
|
-
// empty struct is a valid, zero-property shape.
|
|
54
31
|
function emitStruct(comment: string, typeName: string, items: any[]): void {
|
|
55
32
|
Content(`${comment}
|
|
56
33
|
public struct ${typeName} {
|
|
@@ -78,14 +55,8 @@ const EntityTypes = cmp(function EntityTypes(props: any) {
|
|
|
78
55
|
// collection, so inactive entities still get generated entity code that
|
|
79
56
|
// references these typed names. The typed model must cover them too.
|
|
80
57
|
const entity = getModelPath(model, `main.${KIT}.entity`, { only_active: false, required: false })
|
|
81
|
-
// Emit for every entity that gets an entity file (filter on `name`, always
|
|
82
|
-
// present; derive `Name` here so the struct set is deterministic — parity
|
|
83
|
-
// with the rust/go emitter's fix).
|
|
84
58
|
const entityList = deriveEntityNames(entity)
|
|
85
59
|
|
|
86
|
-
// Surface duplicate generated type names (two entities with the same
|
|
87
|
-
// PascalCase Name) — they would redeclare a type in statically-typed
|
|
88
|
-
// targets. Detection only; renaming is a model-level decision.
|
|
89
60
|
warnEntityTypeCollisions(entity, log, LANG)
|
|
90
61
|
|
|
91
62
|
Folder({ name: 'Sources' }, () => {
|
|
@@ -96,8 +67,8 @@ const EntityTypes = cmp(function EntityTypes(props: any) {
|
|
|
96
67
|
|
|
97
68
|
Content(`// Typed models for the ${model.const.Name} SDK.
|
|
98
69
|
//
|
|
99
|
-
// GENERATED from the API model: main.${KIT}.entity.<e>.fields
|
|
100
|
-
// params (op.<name>.points[].
|
|
70
|
+
// GENERATED from the API model: main.${KIT}.entity.<e>.fields{} and per-op
|
|
71
|
+
// params (op.<name>.points[].g.params[]). Field/param types are mapped
|
|
101
72
|
// from the canonical type sentinels. Do not edit by hand.
|
|
102
73
|
//
|
|
103
74
|
// These are DOCUMENTARY: the SDK runtime is dynamic (ops take/return the
|
|
@@ -111,25 +82,15 @@ import Foundation
|
|
|
111
82
|
entityList.forEach((ent: any) => {
|
|
112
83
|
const Name = ent.Name
|
|
113
84
|
const fields = (ent.fields ? each(ent.fields) : [])
|
|
114
|
-
.filter((f: any) => f.
|
|
115
|
-
|
|
116
|
-
// Entity data model: one property per field. req:false -> optional.
|
|
117
|
-
//
|
|
118
|
-
// Swift has no intra-module namespacing, so a spec schema named
|
|
119
|
-
// after one of our own runtime types (e.g. `Response`) would be a
|
|
120
|
-
// redeclaration and fail the build. swiftSafeTypeName appends
|
|
121
|
-
// `Type` on collision only — `Response` -> `ResponseType` — so
|
|
122
|
-
// non-colliding SDKs generate byte-identical output to before.
|
|
85
|
+
.filter((f: any) => f.a !== false)
|
|
86
|
+
|
|
123
87
|
const TypeName = swiftSafeTypeName(Name)
|
|
124
88
|
emitStruct(
|
|
125
89
|
`/// ${TypeName} is the typed data model for the ${ent.name} entity.`,
|
|
126
90
|
TypeName,
|
|
127
|
-
fields.map((f: any) => ({ name: f.
|
|
91
|
+
fields.map((f: any) => ({ name: f.n, type: f.t, optional: false === f.r }))
|
|
128
92
|
)
|
|
129
93
|
|
|
130
|
-
// Per active op: a request/match struct. Members and their
|
|
131
|
-
// optionality come from the shared partiality policy
|
|
132
|
-
// (opRequestShape).
|
|
133
94
|
const ops = ent.op || {}
|
|
134
95
|
;['load', 'list', 'create', 'update', 'remove'].forEach((opname: string) => {
|
|
135
96
|
if (null == ops[opname]) {
|
|
@@ -39,19 +39,6 @@ const Main = cmp(async function Main(props: any) {
|
|
|
39
39
|
|
|
40
40
|
const entity: ModelEntity = getModelPath(model, `main.${KIT}.entity`)
|
|
41
41
|
|
|
42
|
-
// THE SECRETS TRIM, at generate time, and swift NEEDS it where go, py and
|
|
43
|
-
// dart leave the feature-level trim to `target add` (vendor-tag rollout,
|
|
44
|
-
// Decision 5). DELIBERATE DIVERGENCE, and the reason is the build: the
|
|
45
|
-
// feature's three vendored trees are separate SwiftPM MODULES that
|
|
46
|
-
// Package_swift declares only when the feature is active (see the note
|
|
47
|
-
// there). With the feature off, a tree still in Sources/<Name>Sdk/ would
|
|
48
|
-
// be folded into the SDK target and fail it on five redeclarations, and
|
|
49
|
-
// feature/SecretsFeature.swift would fail on `import Sekreto` naming a
|
|
50
|
-
// module the manifest never declared. Every other swift feature is a
|
|
51
|
-
// single file the SDK module compiles regardless, so it needs no such
|
|
52
|
-
// exclude. Keyed on the SAME predicate the manifest uses, so the two
|
|
53
|
-
// cannot disagree. The gated suite under Tests/.../feature/secrets/ goes
|
|
54
|
-
// with it: it imports Sekreto too.
|
|
55
42
|
const secrets = swiftSecretsActive(model, target)
|
|
56
43
|
const secretsSourceExcludes: RegExp[] = secrets ? [] : [
|
|
57
44
|
/(^|\/)feature\/SecretsFeature\.swift$/,
|
|
@@ -65,19 +52,6 @@ const Main = cmp(async function Main(props: any) {
|
|
|
65
52
|
|
|
66
53
|
Gitignore({})
|
|
67
54
|
|
|
68
|
-
// Copy tm/swift files with replacements. `src/` holds only the per-feature
|
|
69
|
-
// extension folders (not shipped into the SDK output).
|
|
70
|
-
// THE COPIED TREE HAS TO CARRY THE API NAME TOO.
|
|
71
|
-
//
|
|
72
|
-
// Copy substitutes file CONTENTS, never path components, so a blanket copy
|
|
73
|
-
// of tm/swift landed the runtime in a directory literally called
|
|
74
|
-
// ProjectNameSDK. Package.swift papered over it with an explicit `path:`,
|
|
75
|
-
// so it compiled and every swift suite passed — while every published SDK
|
|
76
|
-
// shipped `Sources/ProjectNameSDK/`, and SwiftPM's own convention
|
|
77
|
-
// (Sources/<target>) was broken in all of them.
|
|
78
|
-
//
|
|
79
|
-
// Copy's `to` prop names the destination, so the two placeholder subtrees
|
|
80
|
-
// are copied explicitly and the rest of tm/swift blanket-copied as before.
|
|
81
55
|
Copy({
|
|
82
56
|
from: 'tm/' + target.name,
|
|
83
57
|
exclude: [/src\//, /Sources\//, /Tests\//],
|
|
@@ -91,15 +65,6 @@ const Main = cmp(async function Main(props: any) {
|
|
|
91
65
|
Copy({
|
|
92
66
|
from: 'tm/' + target.name + '/Sources/ProjectNameSDK',
|
|
93
67
|
to: swiftTargetDir(model),
|
|
94
|
-
// pluginExcludes: the generate-time plugin trim (an ACTIVE feature's
|
|
95
|
-
// INACTIVE plugin group's declared files stay out of the tree). The
|
|
96
|
-
// model's swift `path` entries are relative to THIS Copy's root
|
|
97
|
-
// (`feature/secrets/plugins/Aws.swift`, not `Sources/ProjectNameSDK/
|
|
98
|
-
// ...`), as py's are to its pkg copy - helpers/featureSource documents
|
|
99
|
-
// that getting the root wrong makes the trim a silent no-op. No
|
|
100
|
-
// verbatim carve-out is needed for the vendored trees: none of the
|
|
101
|
-
// upstream swift files carries a ProjectName/PROJECTENV token, so the
|
|
102
|
-
// blanket replace is inert over them.
|
|
103
68
|
exclude: [...secretsSourceExcludes, ...pluginExcludes(model)],
|
|
104
69
|
replace: {
|
|
105
70
|
...props.ctx$.stdrep,
|
|
@@ -171,13 +136,6 @@ const Main = cmp(async function Main(props: any) {
|
|
|
171
136
|
})
|
|
172
137
|
})
|
|
173
138
|
|
|
174
|
-
// utility/PrepareAuth.swift — GENERATED, NOT COPIED. Where the credential
|
|
175
|
-
// goes (header, query or cookie, and under what name) is a fact about the
|
|
176
|
-
// API, and tm/ can only hold one answer; the function was extracted from
|
|
177
|
-
// the copied utility/Prepare.swift, which no longer declares it. Called at
|
|
178
|
-
// THIS level, not inside the `core` folder above: the component opens the
|
|
179
|
-
// whole `Sources/<Name>Sdk/utility` path itself, exactly as EntityTypes
|
|
180
|
-
// does for `entity`. See PrepareAuth_swift.
|
|
181
139
|
PrepareAuth({ target })
|
|
182
140
|
|
|
183
141
|
// entity/<Name>Types.swift — documentary typed models (one struct per entity
|
|
@@ -13,73 +13,6 @@ import type {
|
|
|
13
13
|
} from '@voxgig/apidef'
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
// Emits Package.swift (the SwiftPM manifest; the Swift twin of Package_go's
|
|
17
|
-
// go.mod / Package_csharp's csproj). The library target compiles everything
|
|
18
|
-
// under Sources/<Name>Sdk (the copied runtime + generated sources); the test
|
|
19
|
-
// target compiles Tests/<Name>SdkTests. Both directories carry the API name:
|
|
20
|
-
// Copy does not rewrite path components, so Main_swift copies the two
|
|
21
|
-
// placeholder subtrees explicitly via Copy's `to` prop rather than letting a
|
|
22
|
-
// blanket copy ship them as ProjectNameSDK.
|
|
23
|
-
//
|
|
24
|
-
// Dependencies: the runtime itself is dependency-free (Foundation + the
|
|
25
|
-
// vendored struct), but declared target/feature deps flow into the manifest
|
|
26
|
-
// via collectDeps. SwiftPM cannot name a package by product alone, so a
|
|
27
|
-
// swift deps entry carries its coordinates in a documented convention:
|
|
28
|
-
//
|
|
29
|
-
// deps: swift: {
|
|
30
|
-
// 'VoxgigStation': { active: true, version: '0.0.1', kind: prod,
|
|
31
|
-
// url: 'https://github.com/voxgig/station-swift' }
|
|
32
|
-
// }
|
|
33
|
-
//
|
|
34
|
-
// - the entry KEY is the SwiftPM PRODUCT name (also the module the
|
|
35
|
-
// generated source imports);
|
|
36
|
-
// - the extra `url` field is the git repository SwiftPM resolves
|
|
37
|
-
// (`.package(url:from:)`); the package identity SwiftPM derives from it
|
|
38
|
-
// is the URL's last path component (minus any .git), which is what the
|
|
39
|
-
// `.product(name:package:)` reference must use;
|
|
40
|
-
// - `version` feeds `from:` - a plain semver (any leading range operator
|
|
41
|
-
// like '>=' is stripped, since `from:` already means >=).
|
|
42
|
-
//
|
|
43
|
-
// An entry WITHOUT a `url` is not expressible in a SwiftPM manifest (no
|
|
44
|
-
// registry-less by-name dependencies), so it is skipped - unadorned entries
|
|
45
|
-
// keep today's zero-dependency output.
|
|
46
|
-
//
|
|
47
|
-
// The `Omni` target is the VENDORED corpus test engine (Tests/vendor/omni,
|
|
48
|
-
// @voxgig/omni at the shared tag). It has to be its own MODULE, not files
|
|
49
|
-
// folded into the test target: the port calls `Omni.errify` by module name,
|
|
50
|
-
// and its top-level `clone`/`getpath`/`walk`/`stringify`/`pathify` collide
|
|
51
|
-
// head-on with the struct utility's functions of the same names. It is
|
|
52
|
-
// declared as a .testTarget rather than a .target so `swift build` - a
|
|
53
|
-
// consumer's library build - never compiles the test engine; `swift test`
|
|
54
|
-
// builds it and the suite target depends on it.
|
|
55
|
-
//
|
|
56
|
-
// THE SECRETS FEATURE ADDS THREE MORE MODULES, and this is the same
|
|
57
|
-
// precedent, load-bearing rather than tidy. The vendored @voxgig/plugin
|
|
58
|
-
// host, the @voxgig/sekreto core and its plugins live under
|
|
59
|
-
// Sources/<Name>Sdk/feature/secrets/{plugin,sekreto,plugins} and are
|
|
60
|
-
// compiled as VoxgigPlugin, Sekreto and SekretoPlugins - upstream's own
|
|
61
|
-
// three-module boundary (sekreto's swift Makefile builds exactly these). A
|
|
62
|
-
// flat layout collides on five names: plugin's `Value` and `Point` against
|
|
63
|
-
// the SDK's, sekreto's `Json` against plugin's, and `dropsuffix`/`getenv`,
|
|
64
|
-
// which sekreto declares in BOTH src/ and plugins/ because upstream never
|
|
65
|
-
// compiles them as one module. So, when the feature is active for this
|
|
66
|
-
// target:
|
|
67
|
-
//
|
|
68
|
-
// - three `.target`s are declared over the three directories;
|
|
69
|
-
// - the SDK target gains them as dependencies and `exclude: ["feature/
|
|
70
|
-
// secrets"]`, so SwiftPM does not ALSO fold the files into the SDK
|
|
71
|
-
// module (`exclude:` must come AFTER `path:` in the argument list, or
|
|
72
|
-
// the manifest itself fails to compile);
|
|
73
|
-
// - the library product vends all four, because `SecretsFeature.sekreto()`
|
|
74
|
-
// is public API returning a `Sekreto`, and a downstream package may only
|
|
75
|
-
// `import Sekreto` if the product exposes it;
|
|
76
|
-
// - the test target depends on Sekreto and VoxgigPlugin as well, since
|
|
77
|
-
// the gated suite builds providers against Sekreto's `Provider`
|
|
78
|
-
// protocol and reads the selected `Definition`s' kinds back.
|
|
79
|
-
//
|
|
80
|
-
// Keyed on swiftSecretsActive - the SAME predicate Main_swift's Copy uses
|
|
81
|
-
// to ship or withhold the trees - so the manifest and the tree agree by
|
|
82
|
-
// construction (a manifest naming a missing path fails the whole package).
|
|
83
16
|
const Package = cmp(async function Package(props: any) {
|
|
84
17
|
const ctx$ = props.ctx$
|
|
85
18
|
const target = props.target
|
|
@@ -109,8 +42,6 @@ const Package = cmp(async function Package(props: any) {
|
|
|
109
42
|
const secrets = swiftSecretsActive(model, target)
|
|
110
43
|
const srcdir = `Sources/${swiftTargetDir(model)}`
|
|
111
44
|
|
|
112
|
-
// The SDK target's dependency list: declared package products, then the
|
|
113
|
-
// three vendored secrets modules when the feature is active.
|
|
114
45
|
const sdkdeps: string[] = deps.map((d) =>
|
|
115
46
|
`.product(name: "${d.product}", package: "${d.identity}")`)
|
|
116
47
|
if (secrets) {
|