@voxgig/sdkgen 1.2.1 → 1.3.2
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 +2 -2
- package/dist/action/action.d.ts +3 -1
- package/dist/action/action.js +26 -10
- package/dist/action/action.js.map +1 -1
- package/dist/action/feature.js +9 -8
- package/dist/action/feature.js.map +1 -1
- package/dist/action/target.d.ts +7 -1
- package/dist/action/target.js +22 -13
- package/dist/action/target.js.map +1 -1
- package/dist/cmp/Changelog.d.ts +2 -0
- package/dist/cmp/Changelog.js +30 -0
- package/dist/cmp/Changelog.js.map +1 -0
- package/dist/cmp/Deploy.d.ts +2 -0
- package/dist/cmp/Deploy.js +227 -0
- package/dist/cmp/Deploy.js.map +1 -0
- package/dist/cmp/FeatureHook.js +5 -6
- package/dist/cmp/FeatureHook.js.map +1 -1
- package/dist/cmp/License.d.ts +2 -0
- package/dist/cmp/License.js +44 -0
- package/dist/cmp/License.js.map +1 -0
- package/dist/cmp/Readme.js +2 -0
- package/dist/cmp/Readme.js.map +1 -1
- package/dist/cmp/ReadmeErrors.d.ts +2 -0
- package/dist/cmp/ReadmeErrors.js +210 -0
- package/dist/cmp/ReadmeErrors.js.map +1 -0
- package/dist/cmp/ReadmeExplanation.js +213 -223
- package/dist/cmp/ReadmeExplanation.js.map +1 -1
- package/dist/cmp/ReadmeModel.js +6 -1
- package/dist/cmp/ReadmeModel.js.map +1 -1
- package/dist/cmp/ReadmeTop.js +389 -82
- package/dist/cmp/ReadmeTop.js.map +1 -1
- package/dist/cmp/Security.d.ts +2 -0
- package/dist/cmp/Security.js +36 -0
- package/dist/cmp/Security.js.map +1 -0
- package/dist/helpers/canonType.d.ts +7 -0
- package/dist/helpers/canonType.js +74 -0
- package/dist/helpers/canonType.js.map +1 -0
- package/dist/helpers/collectDeps.d.ts +3 -2
- package/dist/helpers/collectDeps.js.map +1 -1
- package/dist/helpers/naming.d.ts +3 -0
- package/dist/helpers/naming.js +51 -0
- package/dist/helpers/naming.js.map +1 -0
- package/dist/helpers/opExample.d.ts +13 -0
- package/dist/helpers/opExample.js +149 -0
- package/dist/helpers/opExample.js.map +1 -0
- package/dist/helpers/opShape.d.ts +18 -0
- package/dist/helpers/opShape.js +225 -0
- package/dist/helpers/opShape.js.map +1 -0
- package/dist/helpers/packageMeta.d.ts +27 -0
- package/dist/helpers/packageMeta.js +224 -0
- package/dist/helpers/packageMeta.js.map +1 -0
- package/dist/sdkgen.d.ts +12 -2
- package/dist/sdkgen.js +60 -20
- package/dist/sdkgen.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types.d.ts +65 -2
- package/dist/types.js.map +1 -1
- package/dist/utility.d.ts +2 -1
- package/dist/utility.js +39 -11
- package/dist/utility.js.map +1 -1
- package/model/sdkgen.aontu +137 -0
- package/package.json +11 -5
- package/project/.sdk/model/feature/feature-index.aontu +5 -0
- package/project/.sdk/model/target/go-cli.aontu +47 -0
- package/project/.sdk/model/target/go-mcp.aontu +41 -0
- package/project/.sdk/model/target/go.aontu +28 -0
- package/project/.sdk/model/target/{js.jsonic → js.aontu} +13 -0
- package/project/.sdk/model/target/{lua.jsonic → lua.aontu} +13 -0
- package/project/.sdk/model/target/{php.jsonic → php.aontu} +13 -0
- package/project/.sdk/model/target/{py.jsonic → py.aontu} +13 -0
- package/project/.sdk/model/target/{rb.jsonic → rb.aontu} +13 -0
- package/project/.sdk/model/target/{ts.jsonic → ts.aontu} +13 -0
- package/project/.sdk/src/cmp/go/Config_go.ts +3 -2
- package/project/.sdk/src/cmp/go/EntityOperation_go.ts +1 -0
- package/project/.sdk/src/cmp/go/EntityTypes_go.ts +197 -0
- package/project/.sdk/src/cmp/go/Entity_go.ts +2 -1
- package/project/.sdk/src/cmp/go/MainEntity_go.ts +6 -0
- package/project/.sdk/src/cmp/go/Main_go.ts +23 -3
- package/project/.sdk/src/cmp/go/Package_go.ts +1 -1
- package/project/.sdk/src/cmp/go/ReadmeEntity_go.ts +48 -10
- package/project/.sdk/src/cmp/go/ReadmeExamplesTest_go.ts +688 -0
- package/project/.sdk/src/cmp/go/ReadmeExplanation_go.ts +1 -1
- package/project/.sdk/src/cmp/go/ReadmeHowto_go.ts +52 -8
- package/project/.sdk/src/cmp/go/ReadmeInstall_go.ts +11 -6
- package/project/.sdk/src/cmp/go/ReadmeIntro_go.ts +40 -1
- package/project/.sdk/src/cmp/go/ReadmeModel_go.ts +67 -17
- package/project/.sdk/src/cmp/go/ReadmeOptions_go.ts +4 -3
- package/project/.sdk/src/cmp/go/ReadmeQuick_go.ts +146 -116
- package/project/.sdk/src/cmp/go/ReadmeRef_go.ts +87 -21
- package/project/.sdk/src/cmp/go/ReadmeTopHowto_go.ts +4 -0
- package/project/.sdk/src/cmp/go/ReadmeTopQuick_go.ts +75 -16
- package/project/.sdk/src/cmp/go/ReadmeTopTest_go.ts +35 -5
- package/project/.sdk/src/cmp/go/TestEntity_go.ts +1 -1
- package/project/.sdk/src/cmp/go/Test_go.ts +5 -1
- package/project/.sdk/src/cmp/go/fragment/Entity.fragment.go +21 -0
- package/project/.sdk/src/cmp/go/fragment/EntityCreateOp.fragment.go +11 -0
- package/project/.sdk/src/cmp/go/fragment/EntityListOp.fragment.go +11 -0
- package/project/.sdk/src/cmp/go/fragment/EntityLoadOp.fragment.go +11 -0
- package/project/.sdk/src/cmp/go/fragment/EntityRemoveOp.fragment.go +11 -0
- package/project/.sdk/src/cmp/go/fragment/EntityUpdateOp.fragment.go +11 -0
- package/project/.sdk/src/cmp/go/utility_go.ts +70 -0
- package/project/.sdk/src/cmp/go-cli/Main_go-cli.ts +195 -0
- package/project/.sdk/src/cmp/go-cli/fragment/main.fragment.go +106 -0
- package/project/.sdk/src/cmp/go-cli/fragment/words.fragment.go +132 -0
- package/project/.sdk/src/cmp/go-mcp/Main_go-mcp.ts +184 -0
- package/project/.sdk/src/cmp/go-mcp/fragment/main.fragment.go +68 -0
- package/project/.sdk/src/cmp/go-mcp/fragment/tools.fragment.go +114 -0
- package/project/.sdk/src/cmp/js/Config_js.ts +3 -6
- package/project/.sdk/src/cmp/js/EntityTypes_js.ts +111 -0
- package/project/.sdk/src/cmp/js/MainEntity_js.ts +1 -0
- package/project/.sdk/src/cmp/js/Main_js.ts +3 -0
- package/project/.sdk/src/cmp/js/Package_js.ts +16 -7
- package/project/.sdk/src/cmp/js/ReadmeEntity_js.ts +33 -10
- package/project/.sdk/src/cmp/js/ReadmeExplanation_js.ts +2 -2
- package/project/.sdk/src/cmp/js/ReadmeHowto_js.ts +52 -11
- package/project/.sdk/src/cmp/js/ReadmeIntro_js.ts +39 -1
- package/project/.sdk/src/cmp/js/ReadmeModel_js.ts +50 -18
- package/project/.sdk/src/cmp/js/ReadmeOptions_js.ts +4 -3
- package/project/.sdk/src/cmp/js/ReadmeQuick_js.ts +70 -20
- package/project/.sdk/src/cmp/js/ReadmeRef_js.ts +50 -16
- package/project/.sdk/src/cmp/js/ReadmeTopHowto_js.ts +3 -0
- package/project/.sdk/src/cmp/js/ReadmeTopQuick_js.ts +45 -19
- package/project/.sdk/src/cmp/js/ReadmeTopTest_js.ts +35 -3
- package/project/.sdk/src/cmp/js/fragment/EntityCreateOp.fragment.js +5 -0
- package/project/.sdk/src/cmp/js/fragment/EntityListOp.fragment.js +5 -0
- package/project/.sdk/src/cmp/js/fragment/EntityLoadOp.fragment.js +5 -0
- package/project/.sdk/src/cmp/js/fragment/EntityRemoveOp.fragment.js +5 -0
- package/project/.sdk/src/cmp/js/fragment/EntityUpdateOp.fragment.js +5 -0
- package/project/.sdk/src/cmp/js/utility_js.ts +57 -0
- package/project/.sdk/src/cmp/lua/Config_lua.ts +3 -2
- package/project/.sdk/src/cmp/lua/EntityTypes_lua.ts +113 -0
- package/project/.sdk/src/cmp/lua/MainEntity_lua.ts +8 -0
- package/project/.sdk/src/cmp/lua/Main_lua.ts +4 -0
- package/project/.sdk/src/cmp/lua/Package_lua.ts +23 -4
- package/project/.sdk/src/cmp/lua/ReadmeEntity_lua.ts +50 -13
- package/project/.sdk/src/cmp/lua/ReadmeExamplesTest_lua.ts +293 -0
- package/project/.sdk/src/cmp/lua/ReadmeHowto_lua.ts +46 -8
- package/project/.sdk/src/cmp/lua/ReadmeInstall_lua.ts +19 -3
- package/project/.sdk/src/cmp/lua/ReadmeIntro_lua.ts +38 -1
- package/project/.sdk/src/cmp/lua/ReadmeModel_lua.ts +51 -16
- package/project/.sdk/src/cmp/lua/ReadmeOptions_lua.ts +4 -3
- package/project/.sdk/src/cmp/lua/ReadmeQuick_lua.ts +156 -21
- package/project/.sdk/src/cmp/lua/ReadmeRef_lua.ts +71 -23
- package/project/.sdk/src/cmp/lua/ReadmeTopQuick_lua.ts +46 -9
- package/project/.sdk/src/cmp/lua/ReadmeTopTest_lua.ts +43 -5
- package/project/.sdk/src/cmp/lua/Test_lua.ts +4 -0
- package/project/.sdk/src/cmp/lua/fragment/EntityCreateOp.fragment.lua +4 -0
- package/project/.sdk/src/cmp/lua/fragment/EntityListOp.fragment.lua +4 -0
- package/project/.sdk/src/cmp/lua/fragment/EntityLoadOp.fragment.lua +4 -0
- package/project/.sdk/src/cmp/lua/fragment/EntityRemoveOp.fragment.lua +4 -0
- package/project/.sdk/src/cmp/lua/fragment/EntityUpdateOp.fragment.lua +4 -0
- package/project/.sdk/src/cmp/php/Config_php.ts +3 -2
- package/project/.sdk/src/cmp/php/EntityTypes_php.ts +142 -0
- package/project/.sdk/src/cmp/php/MainEntity_php.ts +18 -1
- package/project/.sdk/src/cmp/php/Main_php.ts +4 -0
- package/project/.sdk/src/cmp/php/Package_php.ts +18 -7
- package/project/.sdk/src/cmp/php/ReadmeEntity_php.ts +46 -14
- package/project/.sdk/src/cmp/php/ReadmeExamplesTest_php.ts +401 -0
- package/project/.sdk/src/cmp/php/ReadmeHowto_php.ts +56 -13
- package/project/.sdk/src/cmp/php/ReadmeInstall_php.ts +15 -3
- package/project/.sdk/src/cmp/php/ReadmeIntro_php.ts +40 -1
- package/project/.sdk/src/cmp/php/ReadmeModel_php.ts +26 -8
- package/project/.sdk/src/cmp/php/ReadmeOptions_php.ts +4 -3
- package/project/.sdk/src/cmp/php/ReadmeQuick_php.ts +159 -25
- package/project/.sdk/src/cmp/php/ReadmeRef_php.ts +90 -45
- package/project/.sdk/src/cmp/php/ReadmeTopHowto_php.ts +1 -1
- package/project/.sdk/src/cmp/php/ReadmeTopQuick_php.ts +43 -11
- package/project/.sdk/src/cmp/php/ReadmeTopTest_php.ts +52 -11
- package/project/.sdk/src/cmp/php/TestDirect_php.ts +9 -9
- package/project/.sdk/src/cmp/php/TestEntity_php.ts +6 -12
- package/project/.sdk/src/cmp/php/Test_php.ts +4 -0
- package/project/.sdk/src/cmp/php/fragment/Entity.fragment.php +13 -1
- package/project/.sdk/src/cmp/php/fragment/EntityCreateOp.fragment.php +10 -1
- package/project/.sdk/src/cmp/php/fragment/EntityListOp.fragment.php +10 -1
- package/project/.sdk/src/cmp/php/fragment/EntityLoadOp.fragment.php +10 -1
- package/project/.sdk/src/cmp/php/fragment/EntityRemoveOp.fragment.php +10 -1
- package/project/.sdk/src/cmp/php/fragment/EntityUpdateOp.fragment.php +10 -1
- package/project/.sdk/src/cmp/php/fragment/Main.fragment.php +22 -14
- package/project/.sdk/src/cmp/py/Config_py.ts +3 -2
- package/project/.sdk/src/cmp/py/EntityTypes_py.ts +184 -0
- package/project/.sdk/src/cmp/py/Entity_py.ts +27 -0
- package/project/.sdk/src/cmp/py/MainEntity_py.ts +2 -1
- package/project/.sdk/src/cmp/py/Main_py.ts +35 -0
- package/project/.sdk/src/cmp/py/Package_py.ts +24 -3
- package/project/.sdk/src/cmp/py/ReadmeEntity_py.ts +48 -14
- package/project/.sdk/src/cmp/py/ReadmeExamplesTest_py.ts +626 -0
- package/project/.sdk/src/cmp/py/ReadmeHowto_py.ts +53 -14
- package/project/.sdk/src/cmp/py/ReadmeInstall_py.ts +19 -3
- package/project/.sdk/src/cmp/py/ReadmeIntro_py.ts +48 -1
- package/project/.sdk/src/cmp/py/ReadmeModel_py.ts +28 -10
- package/project/.sdk/src/cmp/py/ReadmeOptions_py.ts +4 -3
- package/project/.sdk/src/cmp/py/ReadmeQuick_py.ts +150 -27
- package/project/.sdk/src/cmp/py/ReadmeRef_py.ts +86 -40
- package/project/.sdk/src/cmp/py/ReadmeTopHowto_py.ts +1 -1
- package/project/.sdk/src/cmp/py/ReadmeTopQuick_py.ts +45 -11
- package/project/.sdk/src/cmp/py/ReadmeTopTest_py.ts +43 -5
- package/project/.sdk/src/cmp/py/TestDirect_py.ts +7 -9
- package/project/.sdk/src/cmp/py/TestEntity_py.ts +6 -14
- package/project/.sdk/src/cmp/py/Test_py.ts +4 -0
- package/project/.sdk/src/cmp/py/fragment/Entity.fragment.py +5 -2
- package/project/.sdk/src/cmp/py/fragment/EntityCreateOp.fragment.py +1 -1
- package/project/.sdk/src/cmp/py/fragment/EntityListOp.fragment.py +5 -1
- package/project/.sdk/src/cmp/py/fragment/EntityLoadOp.fragment.py +6 -1
- package/project/.sdk/src/cmp/py/fragment/EntityRemoveOp.fragment.py +6 -1
- package/project/.sdk/src/cmp/py/fragment/EntityUpdateOp.fragment.py +1 -1
- package/project/.sdk/src/cmp/py/fragment/Main.fragment.py +17 -10
- package/project/.sdk/src/cmp/rb/Config_rb.ts +3 -2
- package/project/.sdk/src/cmp/rb/EntityTypes_rb.ts +136 -0
- package/project/.sdk/src/cmp/rb/MainEntity_rb.ts +1 -0
- package/project/.sdk/src/cmp/rb/Main_rb.ts +4 -0
- package/project/.sdk/src/cmp/rb/Package_rb.ts +34 -7
- package/project/.sdk/src/cmp/rb/ReadmeEntity_rb.ts +47 -13
- package/project/.sdk/src/cmp/rb/ReadmeExamplesTest_rb.ts +289 -0
- package/project/.sdk/src/cmp/rb/ReadmeHowto_rb.ts +72 -21
- package/project/.sdk/src/cmp/rb/ReadmeInstall_rb.ts +16 -4
- package/project/.sdk/src/cmp/rb/ReadmeIntro_rb.ts +40 -1
- package/project/.sdk/src/cmp/rb/ReadmeModel_rb.ts +29 -12
- package/project/.sdk/src/cmp/rb/ReadmeOptions_rb.ts +4 -3
- package/project/.sdk/src/cmp/rb/ReadmeQuick_rb.ts +163 -25
- package/project/.sdk/src/cmp/rb/ReadmeRef_rb.ts +85 -40
- package/project/.sdk/src/cmp/rb/ReadmeTopHowto_rb.ts +1 -1
- package/project/.sdk/src/cmp/rb/ReadmeTopQuick_rb.ts +45 -11
- package/project/.sdk/src/cmp/rb/ReadmeTopTest_rb.ts +54 -11
- package/project/.sdk/src/cmp/rb/TestDirect_rb.ts +9 -9
- package/project/.sdk/src/cmp/rb/TestEntity_rb.ts +6 -12
- package/project/.sdk/src/cmp/rb/Test_rb.ts +4 -0
- package/project/.sdk/src/cmp/rb/fragment/Entity.fragment.rb +2 -0
- package/project/.sdk/src/cmp/rb/fragment/EntityCreateOp.fragment.rb +5 -0
- package/project/.sdk/src/cmp/rb/fragment/EntityListOp.fragment.rb +20 -2
- package/project/.sdk/src/cmp/rb/fragment/EntityLoadOp.fragment.rb +8 -1
- package/project/.sdk/src/cmp/rb/fragment/EntityRemoveOp.fragment.rb +6 -1
- package/project/.sdk/src/cmp/rb/fragment/EntityUpdateOp.fragment.rb +5 -0
- package/project/.sdk/src/cmp/rb/fragment/Main.fragment.rb +24 -8
- package/project/.sdk/src/cmp/ts/Config_ts.ts +3 -6
- package/project/.sdk/src/cmp/ts/EntityTypes_ts.ts +105 -0
- package/project/.sdk/src/cmp/ts/Entity_ts.ts +17 -1
- package/project/.sdk/src/cmp/ts/MainEntity_ts.ts +1 -0
- package/project/.sdk/src/cmp/ts/Main_ts.ts +6 -0
- package/project/.sdk/src/cmp/ts/Package_ts.ts +14 -7
- package/project/.sdk/src/cmp/ts/ReadmeEntity_ts.ts +32 -10
- package/project/.sdk/src/cmp/ts/ReadmeExampleTest_ts.ts +81 -0
- package/project/.sdk/src/cmp/ts/ReadmeExamplesTest_ts.ts +446 -0
- package/project/.sdk/src/cmp/ts/ReadmeExplanation_ts.ts +2 -2
- package/project/.sdk/src/cmp/ts/ReadmeHowto_ts.ts +57 -11
- package/project/.sdk/src/cmp/ts/ReadmeInstall_ts.ts +19 -6
- package/project/.sdk/src/cmp/ts/ReadmeIntro_ts.ts +39 -1
- package/project/.sdk/src/cmp/ts/ReadmeModel_ts.ts +50 -18
- package/project/.sdk/src/cmp/ts/ReadmeOptions_ts.ts +4 -3
- package/project/.sdk/src/cmp/ts/ReadmeQuick_ts.ts +141 -48
- package/project/.sdk/src/cmp/ts/ReadmeRef_ts.ts +50 -16
- package/project/.sdk/src/cmp/ts/ReadmeTopHowto_ts.ts +3 -0
- package/project/.sdk/src/cmp/ts/ReadmeTopQuick_ts.ts +58 -19
- package/project/.sdk/src/cmp/ts/ReadmeTopTest_ts.ts +35 -3
- package/project/.sdk/src/cmp/ts/TestEntity_ts.ts +2 -2
- package/project/.sdk/src/cmp/ts/Test_ts.ts +5 -0
- package/project/.sdk/src/cmp/ts/fragment/Entity.fragment.ts +3 -1
- package/project/.sdk/src/cmp/ts/fragment/EntityBase.fragment.ts +10 -5
- package/project/.sdk/src/cmp/ts/fragment/EntityCreateOp.fragment.ts +4 -2
- package/project/.sdk/src/cmp/ts/fragment/EntityListOp.fragment.ts +4 -2
- package/project/.sdk/src/cmp/ts/fragment/EntityLoadOp.fragment.ts +4 -2
- package/project/.sdk/src/cmp/ts/fragment/EntityRemoveOp.fragment.ts +4 -2
- package/project/.sdk/src/cmp/ts/fragment/EntityUpdateOp.fragment.ts +4 -2
- package/project/.sdk/src/cmp/ts/utility_ts.ts +59 -0
- package/project/.sdk/tm/go/LICENSE +1 -1
- package/project/.sdk/tm/go/Makefile +36 -1
- package/project/.sdk/tm/go/VERSION +1 -0
- package/project/.sdk/tm/go/core/context.go +12 -7
- package/project/.sdk/tm/go-cli/src/feature/README.md +6 -0
- package/project/.sdk/tm/go-cli/src/feature/base/.gitkeep +0 -0
- package/project/.sdk/tm/go-cli/src/feature/log/.gitkeep +0 -0
- package/project/.sdk/tm/go-cli/src/feature/test/.gitkeep +0 -0
- package/project/.sdk/tm/go-mcp/src/feature/README.md +6 -0
- package/project/.sdk/tm/go-mcp/src/feature/base/.gitkeep +0 -0
- package/project/.sdk/tm/go-mcp/src/feature/log/.gitkeep +0 -0
- package/project/.sdk/tm/go-mcp/src/feature/test/.gitkeep +0 -0
- package/project/.sdk/tm/js/LICENSE +1 -1
- package/project/.sdk/tm/js/Makefile +41 -0
- package/project/.sdk/tm/lua/LICENSE +1 -1
- package/project/.sdk/tm/lua/Makefile +40 -1
- package/project/.sdk/tm/lua/core/context.lua +13 -8
- package/project/.sdk/tm/php/LICENSE +1 -1
- package/project/.sdk/tm/php/Makefile +31 -1
- package/project/.sdk/tm/php/VERSION +1 -0
- package/project/.sdk/tm/php/core/Context.php +12 -6
- package/project/.sdk/tm/php/test/PrimaryUtilityTest.php +13 -4
- package/project/.sdk/tm/php/utility/Done.php +2 -2
- package/project/.sdk/tm/php/utility/MakeError.php +3 -3
- package/project/.sdk/tm/py/LICENSE +1 -1
- package/project/.sdk/tm/py/Makefile +34 -1
- package/project/.sdk/tm/py/core/context.py +12 -7
- package/project/.sdk/tm/py/test/test_primary_utility.py +15 -4
- package/project/.sdk/tm/py/test/test_struct_utility.py +1 -1
- package/project/.sdk/tm/py/utility/done.py +3 -1
- package/project/.sdk/tm/py/utility/make_error.py +2 -2
- package/project/.sdk/tm/rb/LICENSE +1 -1
- package/project/.sdk/tm/rb/Makefile +36 -2
- package/project/.sdk/tm/rb/core/context.rb +8 -3
- package/project/.sdk/tm/rb/test/primary_utility_test.rb +2 -2
- package/project/.sdk/tm/rb/utility/done.rb +3 -1
- package/project/.sdk/tm/rb/utility/make_error.rb +5 -2
- package/project/.sdk/tm/ts/LICENSE +1 -1
- package/project/.sdk/tm/ts/Makefile +42 -0
- package/project/.sdk/tm/ts/src/Context.ts +8 -3
- package/src/action/action.ts +30 -11
- package/src/action/feature.ts +12 -14
- package/src/action/target.ts +28 -17
- package/src/cmp/Changelog.ts +34 -0
- package/src/cmp/Deploy.ts +258 -0
- package/src/cmp/FeatureHook.ts +6 -8
- package/src/cmp/License.ts +49 -0
- package/src/cmp/Readme.ts +2 -0
- package/src/cmp/ReadmeErrors.ts +257 -0
- package/src/cmp/ReadmeExplanation.ts +250 -230
- package/src/cmp/ReadmeModel.ts +7 -2
- package/src/cmp/ReadmeTop.ts +411 -95
- package/src/cmp/Security.ts +41 -0
- package/src/helpers/canonType.ts +89 -0
- package/src/helpers/collectDeps.ts +5 -3
- package/src/helpers/naming.ts +59 -0
- package/src/helpers/opExample.ts +170 -0
- package/src/helpers/opShape.ts +274 -0
- package/src/helpers/packageMeta.ts +236 -0
- package/src/sdkgen.ts +91 -23
- package/src/tsconfig.json +1 -0
- package/src/types.ts +85 -2
- package/src/utility.ts +45 -11
- package/README.md +0 -2
- package/dist/action/lang.d.ts +0 -2
- package/dist/action/lang.js +0 -68
- package/dist/action/lang.js.map +0 -1
- package/dist/cmp/Hook.d.ts +0 -2
- package/dist/cmp/Hook.js +0 -10
- package/dist/cmp/Hook.js.map +0 -1
- package/dist/cmp/Top.d.ts +0 -2
- package/dist/cmp/Top.js +0 -23
- package/dist/cmp/Top.js.map +0 -1
- package/dist/prepare-openapi.d.ts +0 -2
- package/dist/prepare-openapi.js +0 -37
- package/dist/prepare-openapi.js.map +0 -1
- package/model/sdkgen.jsonic +0 -74
- package/project/.sdk/model/feature/feature-index.jsonic +0 -5
- package/project/.sdk/model/target/go.jsonic +0 -22
- package/project/.sdk/tm/go/utility/struct/go.mod +0 -3
- /package/project/.sdk/model/feature/{log.jsonic → log.aontu} +0 -0
- /package/project/.sdk/model/feature/{test.jsonic → test.aontu} +0 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { cmp, Content, File } from 'jostraca'
|
|
2
|
+
|
|
3
|
+
import { PUBLISHER, nonAffiliation } from '../helpers/packageMeta'
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
// Root MIT LICENSE for the generated SDK repo. The copyright holder is the
|
|
7
|
+
// PUBLISHER (Voxgig): this is an unofficial, generated SDK, so it is NOT
|
|
8
|
+
// attributed to the upstream API owner. A non-affiliation note is appended so
|
|
9
|
+
// the license file itself carries the disclosure.
|
|
10
|
+
const License = cmp(function License(props: any) {
|
|
11
|
+
const { ctx$ } = props
|
|
12
|
+
const { model } = ctx$
|
|
13
|
+
|
|
14
|
+
const year = (model.const && model.const.year) || new Date().getFullYear()
|
|
15
|
+
|
|
16
|
+
File({ name: 'LICENSE' }, () => {
|
|
17
|
+
Content(`MIT License
|
|
18
|
+
|
|
19
|
+
Copyright (c) ${year} ${PUBLISHER}
|
|
20
|
+
|
|
21
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
22
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
23
|
+
in the Software without restriction, including without limitation the rights
|
|
24
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
25
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
26
|
+
furnished to do so, subject to the following conditions:
|
|
27
|
+
|
|
28
|
+
The above copyright notice and this permission notice shall be included in all
|
|
29
|
+
copies or substantial portions of the Software.
|
|
30
|
+
|
|
31
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
32
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
33
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
34
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
35
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
36
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
37
|
+
SOFTWARE.
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
${nonAffiliation(model)}
|
|
42
|
+
`)
|
|
43
|
+
})
|
|
44
|
+
})
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
export {
|
|
48
|
+
License
|
|
49
|
+
}
|
package/src/cmp/Readme.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { cmp, File, Content } from 'jostraca'
|
|
|
5
5
|
import { ReadmeIntro } from './ReadmeIntro'
|
|
6
6
|
import { ReadmeInstall } from './ReadmeInstall'
|
|
7
7
|
import { ReadmeQuick } from './ReadmeQuick'
|
|
8
|
+
import { ReadmeErrors } from './ReadmeErrors'
|
|
8
9
|
import { ReadmeModel } from './ReadmeModel'
|
|
9
10
|
import { ReadmeOptions } from './ReadmeOptions'
|
|
10
11
|
import { ReadmeEntity } from './ReadmeEntity'
|
|
@@ -22,6 +23,7 @@ const Readme = cmp(function Readme(props: any) {
|
|
|
22
23
|
ReadmeIntro({ target })
|
|
23
24
|
ReadmeInstall({ target })
|
|
24
25
|
ReadmeQuick({ target })
|
|
26
|
+
ReadmeErrors({ target })
|
|
25
27
|
ReadmeHowto({ target })
|
|
26
28
|
ReadmeModel({ target })
|
|
27
29
|
ReadmeOptions({ target })
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
|
|
2
|
+
import { cmp, Content } from 'jostraca'
|
|
3
|
+
|
|
4
|
+
import {
|
|
5
|
+
KIT,
|
|
6
|
+
getModelPath
|
|
7
|
+
} from '../types'
|
|
8
|
+
|
|
9
|
+
import { entityIdField, entityPrimaryOp } from '../helpers/opShape'
|
|
10
|
+
import { primaryOpCall } from '../helpers/opExample'
|
|
11
|
+
import type { ExampleLang, PrimaryCall } from '../helpers/opExample'
|
|
12
|
+
import { safeVarName } from '../helpers/naming'
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
// Error handling is one of the everyday developer tasks, so it gets its
|
|
16
|
+
// own user-facing section rather than being buried in the pipeline
|
|
17
|
+
// explanation. The convention differs by language in two ways:
|
|
18
|
+
//
|
|
19
|
+
// 1. Entity operations (load/list/create/update/remove) either THROW
|
|
20
|
+
// (ts, js, py, php, rb) or return an error value (go, lua).
|
|
21
|
+
// 2. The low-level `direct()`/`prepare()` escape hatch does NOT always
|
|
22
|
+
// follow the entity-op convention. In go/lua it returns (value, err);
|
|
23
|
+
// in ts/js it returns the value or an `Error`; in py/php/rb it returns
|
|
24
|
+
// the result envelope — branch on `ok`, and read `err` on failure.
|
|
25
|
+
//
|
|
26
|
+
// The entity-op snippet is rendered from the entity's PRIMARY op (never a
|
|
27
|
+
// hardcoded `load`, which a create-only entity lacks) with a type-correct
|
|
28
|
+
// match id (a numeric id renders `1`, not "example_id"). Targets not listed
|
|
29
|
+
// here (ts, js) use DEFAULT_LANG.
|
|
30
|
+
type LangErrors = {
|
|
31
|
+
// prose + snippet for the entity-op convention, given the pre-rendered
|
|
32
|
+
// primary-op invocation and its op name.
|
|
33
|
+
entity: (call: PrimaryCall, op: string) => string
|
|
34
|
+
// prose + snippet for the direct()/prepare() convention
|
|
35
|
+
direct: string
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
const DEFAULT_LANG: LangErrors = {
|
|
40
|
+
entity: (call, op) => `Entity operations reject on failure, so wrap them in \`try\` / \`catch\`:
|
|
41
|
+
|
|
42
|
+
\`\`\`ts
|
|
43
|
+
try {
|
|
44
|
+
const ${call.resultVar} = await ${call.expr}
|
|
45
|
+
console.log(${call.resultVar})
|
|
46
|
+
} catch (err) {
|
|
47
|
+
console.error('${op} failed:', err)
|
|
48
|
+
}
|
|
49
|
+
\`\`\`
|
|
50
|
+
|
|
51
|
+
`,
|
|
52
|
+
direct: `The low-level \`direct()\` method does **not** throw — it returns the
|
|
53
|
+
value or an \`Error\`, so check the result before using it:
|
|
54
|
+
|
|
55
|
+
\`\`\`ts
|
|
56
|
+
const result = await client.direct({
|
|
57
|
+
path: '/api/resource/{id}',
|
|
58
|
+
method: 'GET',
|
|
59
|
+
params: { id: 'example_id' },
|
|
60
|
+
})
|
|
61
|
+
|
|
62
|
+
if (result instanceof Error) {
|
|
63
|
+
throw result
|
|
64
|
+
}
|
|
65
|
+
\`\`\`
|
|
66
|
+
|
|
67
|
+
`,
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
const LANGS: Record<string, LangErrors> = {
|
|
72
|
+
py: {
|
|
73
|
+
entity: (call, op) => `Entity operations raise on failure, so wrap them in \`try\` / \`except\`:
|
|
74
|
+
|
|
75
|
+
\`\`\`python
|
|
76
|
+
try:
|
|
77
|
+
${call.resultVar} = ${call.expr}
|
|
78
|
+
print(${call.resultVar})
|
|
79
|
+
except Exception as err:
|
|
80
|
+
print(f"${op} failed: {err}")
|
|
81
|
+
\`\`\`
|
|
82
|
+
|
|
83
|
+
`,
|
|
84
|
+
direct: `\`direct()\` does **not** raise — it returns the result envelope. Branch
|
|
85
|
+
on \`ok\`; on failure \`status\` holds the HTTP status (for error responses)
|
|
86
|
+
and \`err\` holds a transport error, so read both defensively:
|
|
87
|
+
|
|
88
|
+
\`\`\`python
|
|
89
|
+
result = client.direct({
|
|
90
|
+
"path": "/api/resource/{id}",
|
|
91
|
+
"method": "GET",
|
|
92
|
+
"params": {"id": "example_id"},
|
|
93
|
+
})
|
|
94
|
+
|
|
95
|
+
if not result["ok"]:
|
|
96
|
+
print("request failed:", result.get("status"), result.get("err"))
|
|
97
|
+
\`\`\`
|
|
98
|
+
|
|
99
|
+
`,
|
|
100
|
+
},
|
|
101
|
+
|
|
102
|
+
php: {
|
|
103
|
+
entity: (call, op) => `Entity operations throw a \`\\Throwable\` on failure, so wrap them in
|
|
104
|
+
\`try\` / \`catch\`:
|
|
105
|
+
|
|
106
|
+
\`\`\`php
|
|
107
|
+
try {
|
|
108
|
+
$${call.resultVar} = ${call.expr};
|
|
109
|
+
} catch (\\Throwable $err) {
|
|
110
|
+
echo "Error: " . $err->getMessage();
|
|
111
|
+
}
|
|
112
|
+
\`\`\`
|
|
113
|
+
|
|
114
|
+
`,
|
|
115
|
+
direct: `\`direct()\` does **not** throw — it returns the result array. Branch on
|
|
116
|
+
\`ok\`; on failure \`status\` holds the HTTP status (for error responses) and
|
|
117
|
+
\`err\` holds a transport error, so read both defensively:
|
|
118
|
+
|
|
119
|
+
\`\`\`php
|
|
120
|
+
$result = $client->direct([
|
|
121
|
+
"path" => "/api/resource/{id}",
|
|
122
|
+
"method" => "GET",
|
|
123
|
+
"params" => ["id" => "example_id"],
|
|
124
|
+
]);
|
|
125
|
+
|
|
126
|
+
if (! $result["ok"]) {
|
|
127
|
+
$err = $result["err"] ?? null;
|
|
128
|
+
echo "request failed: " . ($err ? $err->getMessage() : "HTTP " . $result["status"]);
|
|
129
|
+
}
|
|
130
|
+
\`\`\`
|
|
131
|
+
|
|
132
|
+
`,
|
|
133
|
+
},
|
|
134
|
+
|
|
135
|
+
rb: {
|
|
136
|
+
entity: (call, op) => `Entity operations raise on failure, so rescue them:
|
|
137
|
+
|
|
138
|
+
\`\`\`ruby
|
|
139
|
+
begin
|
|
140
|
+
${call.resultVar} = ${call.expr}
|
|
141
|
+
rescue => err
|
|
142
|
+
warn "${op} failed: #{err}"
|
|
143
|
+
end
|
|
144
|
+
\`\`\`
|
|
145
|
+
|
|
146
|
+
`,
|
|
147
|
+
direct: `\`direct\` does **not** raise — it returns the result hash. Branch on
|
|
148
|
+
\`ok\`; on failure \`status\` holds the HTTP status (for error responses) and
|
|
149
|
+
\`err\` holds a transport error, so read both defensively:
|
|
150
|
+
|
|
151
|
+
\`\`\`ruby
|
|
152
|
+
result = client.direct({
|
|
153
|
+
"path" => "/api/resource/{id}",
|
|
154
|
+
"method" => "GET",
|
|
155
|
+
"params" => { "id" => "example_id" },
|
|
156
|
+
})
|
|
157
|
+
|
|
158
|
+
warn "request failed: #{result["err"] || "HTTP #{result["status"]}"}" unless result["ok"]
|
|
159
|
+
\`\`\`
|
|
160
|
+
|
|
161
|
+
`,
|
|
162
|
+
},
|
|
163
|
+
|
|
164
|
+
lua: {
|
|
165
|
+
entity: (call, op) => `Entity operations return \`(value, err)\`. Check \`err\` before using
|
|
166
|
+
the value:
|
|
167
|
+
|
|
168
|
+
\`\`\`lua
|
|
169
|
+
local ${call.resultVar}, err = ${call.expr}
|
|
170
|
+
if err then error(err) end
|
|
171
|
+
\`\`\`
|
|
172
|
+
|
|
173
|
+
`,
|
|
174
|
+
direct: `\`direct\` follows the same \`(value, err)\` convention:
|
|
175
|
+
|
|
176
|
+
\`\`\`lua
|
|
177
|
+
local result, err = client:direct({
|
|
178
|
+
path = "/api/resource/{id}",
|
|
179
|
+
method = "GET",
|
|
180
|
+
params = { id = "example_id" },
|
|
181
|
+
})
|
|
182
|
+
if err then error(err) end
|
|
183
|
+
\`\`\`
|
|
184
|
+
|
|
185
|
+
`,
|
|
186
|
+
},
|
|
187
|
+
|
|
188
|
+
go: {
|
|
189
|
+
entity: (call, op) => `Every entity operation returns \`(value, error)\`. Check \`err\` before
|
|
190
|
+
using the value — there is no exception to catch:
|
|
191
|
+
|
|
192
|
+
\`\`\`go
|
|
193
|
+
${call.resultVar}, err := ${call.expr}
|
|
194
|
+
if err != nil {
|
|
195
|
+
// handle err
|
|
196
|
+
return
|
|
197
|
+
}
|
|
198
|
+
_ = ${call.resultVar}
|
|
199
|
+
\`\`\`
|
|
200
|
+
|
|
201
|
+
`,
|
|
202
|
+
direct: `\`Direct\` follows the same \`(value, error)\` convention:
|
|
203
|
+
|
|
204
|
+
\`\`\`go
|
|
205
|
+
result, err := client.Direct(map[string]any{
|
|
206
|
+
"path": "/api/resource/{id}",
|
|
207
|
+
"method": "GET",
|
|
208
|
+
"params": map[string]any{"id": "example_id"},
|
|
209
|
+
})
|
|
210
|
+
if err != nil {
|
|
211
|
+
// handle err
|
|
212
|
+
}
|
|
213
|
+
_ = result
|
|
214
|
+
\`\`\`
|
|
215
|
+
|
|
216
|
+
`,
|
|
217
|
+
},
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
const ReadmeErrors = cmp(function ReadmeErrors(props: any) {
|
|
222
|
+
const { target, ctx$ } = props
|
|
223
|
+
const { model } = ctx$
|
|
224
|
+
|
|
225
|
+
const lang = LANGS[target.name] || DEFAULT_LANG
|
|
226
|
+
|
|
227
|
+
// Derive a real example entity from the model (the same way the sibling
|
|
228
|
+
// Readme components do) so the snippet never references a phantom entity.
|
|
229
|
+
const entity = getModelPath(model, `main.${KIT}.entity`, { only_active: false, required: false })
|
|
230
|
+
const ex = Object.values(entity || {}).find((e: any) => e && e.active !== false) as any
|
|
231
|
+
const eName = ex ? (ex.Name || (ex.name[0].toUpperCase() + ex.name.slice(1))) : 'Entity'
|
|
232
|
+
// Sanitise the variable name against the target's reserved words (a `Delete`
|
|
233
|
+
// entity must not bind `const delete = ...`).
|
|
234
|
+
const eLower = safeVarName(eName.toLowerCase(), target.name)
|
|
235
|
+
|
|
236
|
+
// The entity's id-like key field name, or null when it has none.
|
|
237
|
+
const idF = entityIdField(ex)
|
|
238
|
+
// The entity's PRIMARY op — an op it actually exposes (prefer list/load, else
|
|
239
|
+
// create/update/remove). A create-only entity therefore never shows a
|
|
240
|
+
// phantom `.load()`.
|
|
241
|
+
const primaryOp = entityPrimaryOp(ex) || 'load'
|
|
242
|
+
const call = primaryOpCall(target.name as ExampleLang, eName, eLower, primaryOp, idF, ex)
|
|
243
|
+
|
|
244
|
+
Content(`
|
|
245
|
+
## Error handling
|
|
246
|
+
|
|
247
|
+
`)
|
|
248
|
+
|
|
249
|
+
Content(lang.entity(call, primaryOp))
|
|
250
|
+
|
|
251
|
+
Content(lang.direct)
|
|
252
|
+
})
|
|
253
|
+
|
|
254
|
+
|
|
255
|
+
export {
|
|
256
|
+
ReadmeErrors
|
|
257
|
+
}
|