@deterministic-code/datasources-cli 0.0.0-stage → 0.1.3
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/datasources.mjs +2 -0
- package/dist/catalog.js +60 -0
- package/dist/commands.js +51 -0
- package/dist/detect.js +23 -0
- package/dist/env.js +93 -0
- package/dist/generate/CSharpRepositories.js +134 -0
- package/dist/generate/CodeGenerationProvider.js +0 -0
- package/dist/generate/DeterministicProvider.js +53 -0
- package/dist/generate/GenerateRequest.js +6 -0
- package/dist/generate/RepositoryModel.js +64 -0
- package/dist/generate/RepositoryPlan.js +172 -0
- package/dist/generate/RustRepositories.js +270 -0
- package/dist/generate/TypeScriptRepositories.js +115 -0
- package/dist/generate/applyGenerate.js +28 -0
- package/dist/generate/applyMigrations.js +28 -0
- package/dist/generate/loadSpec.js +48 -0
- package/dist/generate/migrateUp.js +76 -0
- package/dist/generate/providers.js +10 -0
- package/dist/generate/settingsFlat.js +29 -0
- package/dist/generate/writeEntries.js +35 -0
- package/dist/index.js +10 -0
- package/dist/installed.js +14 -0
- package/dist/io.js +35 -0
- package/dist/main.js +10 -0
- package/dist/migrateInit.js +11 -0
- package/dist/parse.js +144 -0
- package/dist/run.js +197 -0
- package/dist/setup.js +54 -0
- package/dist/version/applyVersion.js +51 -0
- package/dist/version/delta.js +114 -0
- package/dist/version/render.js +38 -0
- package/dist/wireRegister.js +104 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/common/default-casing.js +44 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/common/view-shape.js +78 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/deterministic-type-converter.js +124 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/emit.js +20 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-backend-app.js +42 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-context.js +0 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-datasource-type-validators-tests.js +170 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-datasource-types-tests.js +127 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-datasource-types.d.ts +3 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-datasource-types.js +75 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-routes-tests.js +27 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-routes.js +93 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-service-tests.js +29 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-services.js +58 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-view-type-validators-tests.js +223 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-view-type-validators.js +92 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-view-types-tests.js +138 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-view-types.d.ts +3 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/generate-view-types.js +99 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/import-generator.js +167 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/resources/backend-app.js +34 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/resources/datasource-type-validators-tests.js +12 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/resources/datasource-type-validators.js +12 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/resources/datasource-types-tests.js +11 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/resources/datasource-types.js +9 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/resources/routes-tests.js +9 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/resources/routes.js +15 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/resources/service-tests.js +9 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/resources/services.js +13 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/resources/view-type-validators-tests.js +12 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/resources/view-type-validators.js +9 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/resources/view-types-tests.js +11 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/resources/view-types.js +9 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/specification-parser.js +20 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-backend-app/Dockerfile.tmpl +23 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-backend-app/csharp/App/App.csproj.tmpl +22 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-backend-app/csharp/App/Program.cs.tmpl +28 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-backend-app/csharp/App/appsettings.Development.json.tmpl +8 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-backend-app/csharp/App/appsettings.json.tmpl +9 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-backend-app/docker-compose.yml.tmpl +17 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-backend-app/entrypoint.sh +7 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-backend-app/env.tmpl +1 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-backend-app/gitignore.tmpl +18 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-datasource-type-validators/type.cs.tmpl +14 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-datasource-type-validators-tests/type.tests.cs.tmpl +20 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-datasource-types/type.cs.tmpl +15 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-datasource-types-tests/type.tests.cs.tmpl +44 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-routes/custom-stub.cs.tmpl +5 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-routes/name-enrichment.cs.tmpl +49 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-routes/router.cs.tmpl +15 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-routes-tests/generic.cs.tmpl +3 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-service-tests/generic.cs.tmpl +3 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-services/custom-stub.cs.tmpl +19 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-services/generic.cs.tmpl +9 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-view-type-validators/type.cs.tmpl +17 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-view-type-validators-tests/type.tests.cs.tmpl +30 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-view-types/type.cs.tmpl +20 -0
- package/node_modules/@deterministic-code/csharp-generators/dist/templates/create-view-types-tests/type.tests.cs.tmpl +60 -0
- package/node_modules/@deterministic-code/csharp-generators/package.json +86 -0
- package/node_modules/@deterministic-code/csharp-generators/src/common/default-casing.test.ts +73 -0
- package/node_modules/@deterministic-code/csharp-generators/src/common/default-casing.ts +79 -0
- package/node_modules/@deterministic-code/csharp-generators/src/common/view-shape.ts +124 -0
- package/node_modules/@deterministic-code/csharp-generators/src/deterministic-type-converter.ts +144 -0
- package/node_modules/@deterministic-code/csharp-generators/src/emit.ts +22 -0
- package/node_modules/@deterministic-code/csharp-generators/src/generate-backend-app.ts +52 -0
- package/node_modules/@deterministic-code/csharp-generators/src/generate-context.ts +1 -0
- package/node_modules/@deterministic-code/csharp-generators/src/generate-datasource-type-validators-tests.ts +207 -0
- package/node_modules/@deterministic-code/csharp-generators/src/generate-datasource-type-validators.ts +227 -0
- package/node_modules/@deterministic-code/csharp-generators/src/generate-datasource-types-tests.ts +143 -0
- package/node_modules/@deterministic-code/csharp-generators/src/generate-datasource-types.ts +86 -0
- package/node_modules/@deterministic-code/csharp-generators/src/generate-routes-tests.ts +29 -0
- package/node_modules/@deterministic-code/csharp-generators/src/generate-routes.ts +110 -0
- package/node_modules/@deterministic-code/csharp-generators/src/generate-service-tests.ts +31 -0
- package/node_modules/@deterministic-code/csharp-generators/src/generate-services.ts +69 -0
- package/node_modules/@deterministic-code/csharp-generators/src/generate-view-type-validators-tests.ts +277 -0
- package/node_modules/@deterministic-code/csharp-generators/src/generate-view-type-validators.ts +112 -0
- package/node_modules/@deterministic-code/csharp-generators/src/generate-view-types-tests.ts +187 -0
- package/node_modules/@deterministic-code/csharp-generators/src/generate-view-types.ts +118 -0
- package/node_modules/@deterministic-code/csharp-generators/src/import-generator.test.ts +266 -0
- package/node_modules/@deterministic-code/csharp-generators/src/import-generator.ts +226 -0
- package/node_modules/@deterministic-code/csharp-generators/src/resources/backend-app.ts +26 -0
- package/node_modules/@deterministic-code/csharp-generators/src/resources/datasource-type-validators-tests.ts +12 -0
- package/node_modules/@deterministic-code/csharp-generators/src/resources/datasource-type-validators.ts +12 -0
- package/node_modules/@deterministic-code/csharp-generators/src/resources/datasource-types-tests.ts +11 -0
- package/node_modules/@deterministic-code/csharp-generators/src/resources/datasource-types.ts +9 -0
- package/node_modules/@deterministic-code/csharp-generators/src/resources/routes-tests.ts +9 -0
- package/node_modules/@deterministic-code/csharp-generators/src/resources/routes.ts +14 -0
- package/node_modules/@deterministic-code/csharp-generators/src/resources/service-tests.ts +9 -0
- package/node_modules/@deterministic-code/csharp-generators/src/resources/services.ts +12 -0
- package/node_modules/@deterministic-code/csharp-generators/src/resources/view-type-validators-tests.ts +12 -0
- package/node_modules/@deterministic-code/csharp-generators/src/resources/view-type-validators.ts +9 -0
- package/node_modules/@deterministic-code/csharp-generators/src/resources/view-types-tests.ts +11 -0
- package/node_modules/@deterministic-code/csharp-generators/src/resources/view-types.ts +9 -0
- package/node_modules/@deterministic-code/csharp-generators/src/specification-parser.ts +34 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-backend-app/Dockerfile.tmpl +23 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-backend-app/csharp/App/App.csproj.tmpl +22 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-backend-app/csharp/App/Program.cs.tmpl +28 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-backend-app/csharp/App/appsettings.Development.json.tmpl +8 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-backend-app/csharp/App/appsettings.json.tmpl +9 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-backend-app/docker-compose.yml.tmpl +17 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-backend-app/entrypoint.sh +7 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-backend-app/env.tmpl +1 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-backend-app/gitignore.tmpl +18 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-datasource-type-validators/type.cs.tmpl +14 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-datasource-type-validators-tests/type.tests.cs.tmpl +20 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-datasource-types/type.cs.tmpl +15 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-datasource-types-tests/type.tests.cs.tmpl +44 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-routes/custom-stub.cs.tmpl +5 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-routes/name-enrichment.cs.tmpl +49 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-routes/router.cs.tmpl +15 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-routes-tests/generic.cs.tmpl +3 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-service-tests/generic.cs.tmpl +3 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-services/custom-stub.cs.tmpl +19 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-services/generic.cs.tmpl +9 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-view-type-validators/type.cs.tmpl +17 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-view-type-validators-tests/type.tests.cs.tmpl +30 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-view-types/type.cs.tmpl +20 -0
- package/node_modules/@deterministic-code/csharp-generators/src/templates/create-view-types-tests/type.tests.cs.tmpl +60 -0
- package/node_modules/@deterministic-code/csharp-generators/tsconfig.build.json +10 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/generate-sql.d.ts +4 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/generate-sql.js +4 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/generate-stored-procedures.d.ts +4 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/generate-stored-procedures.js +4 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/generateSql.d.ts +1 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/generateSql.js +1 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/converter-field.d.ts +3 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/converter-field.js +6 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/custom-migrations-source.d.ts +9 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/custom-migrations-source.js +71 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/datasource-by-fields.d.ts +3 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/datasource-by-fields.js +38 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/default-casing.d.ts +20 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/default-casing.js +64 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/generate-custom-migrations.d.ts +6 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/generate-custom-migrations.js +25 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/generate-procedures.d.ts +14 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/generate-procedures.js +106 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/generate-sql.d.ts +5 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/generate-sql.js +116 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/procedures/driver.d.ts +9 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/procedures/driver.js +18 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/procedures/helpers.d.ts +25 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/procedures/helpers.js +39 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/schema-diff.d.ts +10 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/schema-diff.js +136 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/seed-generator.d.ts +6 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/seed-generator.js +82 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/sql-dialect.d.ts +23 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/sql-dialect.js +58 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/sql-keywords.d.ts +4 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/sql-keywords.js +140 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/sql-mapping.d.ts +20 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/sql-mapping.js +43 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/sql-schema.d.ts +35 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/sql-schema.js +112 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/version-apply.d.ts +18 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/version-apply.js +83 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/version-migrations.d.ts +15 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/version-migrations.js +127 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/dialect-converters.d.ts +10 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/dialect-converters.js +16 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/generate-sql.d.ts +4 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/generate-sql.js +10 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/generate-stored-procedures.d.ts +4 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/generate-stored-procedures.js +10 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/resources/sql.d.ts +1 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/resources/sql.js +6 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/statements.d.ts +28 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/statements.js +81 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/templates/create-sql/migration-down.sql.tmpl +6 -0
- package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/templates/create-sql/migration-up.sql.tmpl +18 -0
- package/node_modules/@deterministic-code/datasources-code-generators/package.json +24 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/README.md +22 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/package.json +40 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/parser/datasource-type-tree.ts +330 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/parser/deterministic-reader.ts +63 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/parser/deterministic.ts +35 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/parser/dist/specification-parser.js +1290 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/parser/ensure-health.ts +57 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/parser/parser/compile-filter.ts +90 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/parser/parser/specification-parser.ts +1057 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/parser/settings.ts +49 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/parser/specification-parser.ts +24 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/parser/specification.ts +383 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/parser/vitest.config.ts +20 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/parser/yaml-node.ts +88 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/SpecValidator.ts +260 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/index.ts +12 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/types.ts +47 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/validators/DatasourceSeedsValidator.test.ts +385 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/validators/DatasourceSeedsValidator.ts +75 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/validators/DatasourceValidator.ts +39 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/validators/FrontendBindingsValidator.ts +11 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/validators/RoutesApiValidator.test.ts +59 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/validators/RoutesApiValidator.ts +18 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/validators/RoutesValidator.ts +24 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/validators/ServicesValidator.ts +24 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/validators/TypesValidator.test.ts +140 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/validators/TypesValidator.ts +31 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/validators/engines.ts +7 -0
- package/node_modules/@deterministic-code/deterministic-generators-common/typescript/validator/validators/validator.test.ts +229 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/README.md +22 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/package.json +40 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/parser/datasource-type-tree.ts +330 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/parser/deterministic-reader.ts +63 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/parser/deterministic.ts +35 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/parser/ensure-health.ts +57 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/parser/parser/compile-filter.ts +90 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/parser/parser/specification-parser.ts +1056 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/parser/settings.ts +49 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/parser/specification-parser.ts +24 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/parser/specification.ts +383 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/parser/vitest.config.ts +20 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/parser/yaml-node.ts +88 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/SpecValidator.ts +260 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/index.ts +12 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/types.ts +47 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/validators/DatasourceSeedsValidator.test.ts +385 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/validators/DatasourceSeedsValidator.ts +75 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/validators/DatasourceValidator.ts +39 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/validators/FrontendBindingsValidator.ts +11 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/validators/RoutesApiValidator.test.ts +59 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/validators/RoutesApiValidator.ts +18 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/validators/RoutesValidator.ts +24 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/validators/ServicesValidator.ts +24 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/validators/TypesValidator.test.ts +140 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/validators/TypesValidator.ts +31 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/validators/engines.ts +7 -0
- package/node_modules/@deterministic-code/deterministic-specifications-typescript/typescript/validator/validators/validator.test.ts +229 -0
- package/node_modules/@deterministic-code/generators-common/README.md +10 -0
- package/node_modules/@deterministic-code/generators-common/dist/casing-strategy.d.ts +10 -0
- package/node_modules/@deterministic-code/generators-common/dist/casing-strategy.js +167 -0
- package/node_modules/@deterministic-code/generators-common/dist/datasource-naming.d.ts +10 -0
- package/node_modules/@deterministic-code/generators-common/dist/datasource-naming.js +29 -0
- package/node_modules/@deterministic-code/generators-common/dist/datasource-type-tree.d.ts +42 -0
- package/node_modules/@deterministic-code/generators-common/dist/datasource-type-tree.js +240 -0
- package/node_modules/@deterministic-code/generators-common/dist/default-token.d.ts +7 -0
- package/node_modules/@deterministic-code/generators-common/dist/default-token.js +17 -0
- package/node_modules/@deterministic-code/generators-common/dist/deterministic-default-value-converter.d.ts +21 -0
- package/node_modules/@deterministic-code/generators-common/dist/deterministic-default-value-converter.js +128 -0
- package/node_modules/@deterministic-code/generators-common/dist/deterministic-reader.d.ts +7 -0
- package/node_modules/@deterministic-code/generators-common/dist/deterministic-reader.js +47 -0
- package/node_modules/@deterministic-code/generators-common/dist/deterministic-type-converter.d.ts +7 -0
- package/node_modules/@deterministic-code/generators-common/dist/deterministic-type-converter.js +35 -0
- package/node_modules/@deterministic-code/generators-common/dist/fill.d.ts +1 -0
- package/node_modules/@deterministic-code/generators-common/dist/fill.js +7 -0
- package/node_modules/@deterministic-code/generators-common/dist/generate-context.d.ts +5 -0
- package/node_modules/@deterministic-code/generators-common/dist/generate-context.js +0 -0
- package/node_modules/@deterministic-code/generators-common/dist/generate-entry.d.ts +17 -0
- package/node_modules/@deterministic-code/generators-common/dist/generate-entry.js +25 -0
- package/node_modules/@deterministic-code/generators-common/dist/import-generator.d.ts +35 -0
- package/node_modules/@deterministic-code/generators-common/dist/import-generator.js +0 -0
- package/node_modules/@deterministic-code/generators-common/dist/reference-verifier.d.ts +35 -0
- package/node_modules/@deterministic-code/generators-common/dist/reference-verifier.js +223 -0
- package/node_modules/@deterministic-code/generators-common/dist/routes-api-converter.d.ts +4 -0
- package/node_modules/@deterministic-code/generators-common/dist/routes-api-converter.js +528 -0
- package/node_modules/@deterministic-code/generators-common/dist/routes-api.d.ts +57 -0
- package/node_modules/@deterministic-code/generators-common/dist/routes-api.js +13 -0
- package/node_modules/@deterministic-code/generators-common/dist/settings.d.ts +20 -0
- package/node_modules/@deterministic-code/generators-common/dist/settings.js +47 -0
- package/node_modules/@deterministic-code/generators-common/dist/spec-types.d.ts +37 -0
- package/node_modules/@deterministic-code/generators-common/dist/spec-types.js +162 -0
- package/node_modules/@deterministic-code/generators-common/package.json +95 -0
- package/node_modules/@deterministic-code/generators-common/src/casing-strategy.test.ts +404 -0
- package/node_modules/@deterministic-code/generators-common/src/casing-strategy.ts +222 -0
- package/node_modules/@deterministic-code/generators-common/src/datasource-naming.test.ts +232 -0
- package/node_modules/@deterministic-code/generators-common/src/datasource-naming.ts +53 -0
- package/node_modules/@deterministic-code/generators-common/src/datasource-type-tree.test.ts +406 -0
- package/node_modules/@deterministic-code/generators-common/src/datasource-type-tree.ts +333 -0
- package/node_modules/@deterministic-code/generators-common/src/default-token.ts +17 -0
- package/node_modules/@deterministic-code/generators-common/src/deterministic-default-value-converter.test.ts +97 -0
- package/node_modules/@deterministic-code/generators-common/src/deterministic-default-value-converter.ts +148 -0
- package/node_modules/@deterministic-code/generators-common/src/deterministic-reader.ts +63 -0
- package/node_modules/@deterministic-code/generators-common/src/deterministic-type-converter.test.ts +34 -0
- package/node_modules/@deterministic-code/generators-common/src/deterministic-type-converter.ts +35 -0
- package/node_modules/@deterministic-code/generators-common/src/fill.ts +6 -0
- package/node_modules/@deterministic-code/generators-common/src/generate-context.ts +6 -0
- package/node_modules/@deterministic-code/generators-common/src/generate-entry.ts +54 -0
- package/node_modules/@deterministic-code/generators-common/src/import-generator.ts +39 -0
- package/node_modules/@deterministic-code/generators-common/src/mustache-module.d.ts +9 -0
- package/node_modules/@deterministic-code/generators-common/src/pluralize-module.d.ts +10 -0
- package/node_modules/@deterministic-code/generators-common/src/reference-verifier.test.ts +257 -0
- package/node_modules/@deterministic-code/generators-common/src/reference-verifier.ts +294 -0
- package/node_modules/@deterministic-code/generators-common/src/routes-api-converter.test.ts +454 -0
- package/node_modules/@deterministic-code/generators-common/src/routes-api-converter.ts +715 -0
- package/node_modules/@deterministic-code/generators-common/src/routes-api.ts +82 -0
- package/node_modules/@deterministic-code/generators-common/src/settings.test.ts +154 -0
- package/node_modules/@deterministic-code/generators-common/src/settings.ts +80 -0
- package/node_modules/@deterministic-code/generators-common/src/spec-types.test.ts +156 -0
- package/node_modules/@deterministic-code/generators-common/src/spec-types.ts +234 -0
- package/node_modules/@deterministic-code/generators-common/tsconfig.build.json +20 -0
- package/node_modules/@deterministic-code/generators-openapi/package.json +34 -0
- package/node_modules/@deterministic-code/generators-openapi/src/default-casing.ts +15 -0
- package/node_modules/@deterministic-code/generators-openapi/src/generate-openapi-docs.ts +1 -0
- package/node_modules/@deterministic-code/generators-openapi/src/generate-openapi.integration.test.ts +106 -0
- package/node_modules/@deterministic-code/generators-openapi/src/generate-openapi.samples.test.ts +279 -0
- package/node_modules/@deterministic-code/generators-openapi/src/generate-openapi.ts +20 -0
- package/node_modules/@deterministic-code/generators-openapi/src/openapi-converter.ts +37 -0
- package/node_modules/@deterministic-code/generators-openapi/src/openapi-document.ts +158 -0
- package/node_modules/@deterministic-code/generators-openapi/src/resources/openapi.ts +9 -0
- package/node_modules/@deterministic-code/generators-openapi/src/samples/01-simple/datasource.yaml +5 -0
- package/node_modules/@deterministic-code/generators-openapi/src/samples/01-simple/routes.yaml +5 -0
- package/node_modules/@deterministic-code/generators-openapi/src/samples/01-simple/types.yaml +8 -0
- package/node_modules/@deterministic-code/generators-openapi/src/samples/02-moderate/datasource.yaml +13 -0
- package/node_modules/@deterministic-code/generators-openapi/src/samples/02-moderate/routes.yaml +14 -0
- package/node_modules/@deterministic-code/generators-openapi/src/samples/02-moderate/types.yaml +21 -0
- package/node_modules/@deterministic-code/generators-openapi/src/samples/03-complex/datasource.yaml +13 -0
- package/node_modules/@deterministic-code/generators-openapi/src/samples/03-complex/routes.yaml +15 -0
- package/node_modules/@deterministic-code/generators-openapi/src/samples/03-complex/types.yaml +35 -0
- package/node_modules/@deterministic-code/generators-openapi/src/samples/04-complex-optimistic-concurrency/datasource.yaml +16 -0
- package/node_modules/@deterministic-code/generators-openapi/src/samples/04-complex-optimistic-concurrency/routes.yaml +15 -0
- package/node_modules/@deterministic-code/generators-openapi/src/samples/04-complex-optimistic-concurrency/types.yaml +35 -0
- package/node_modules/@deterministic-code/generators-openapi/src/templates/create-openapi/openapi.json.tmpl +32 -0
- package/node_modules/@deterministic-code/generators-openapi/src/templates/create-openapi/openapi.rs.tmpl +17 -0
- package/node_modules/@deterministic-code/generators-openapi/src/templates/create-openapi/openapi_conformance.rs.tmpl +56 -0
- package/node_modules/@deterministic-code/generators-openapi/src/templates/create-openapi/operation.json.tmpl +55 -0
- package/node_modules/@deterministic-code/generators-openapi/tsconfig.build.json +10 -0
- package/node_modules/@deterministic-code/patch-merger/README.md +170 -0
- package/node_modules/@deterministic-code/patch-merger/package.json +33 -0
- package/node_modules/@deterministic-code/patch-merger/typescript/dist/index.cjs +2 -0
- package/node_modules/@deterministic-code/patch-merger/typescript/dist/index.cjs.map +1 -0
- package/node_modules/@deterministic-code/patch-merger/typescript/dist/index.d.ts +75 -0
- package/node_modules/@deterministic-code/patch-merger/typescript/dist/index.js +18 -0
- package/node_modules/@deterministic-code/patch-merger/typescript/dist/index.js.map +1 -0
- package/node_modules/@deterministic-code/patch-merger/typescript/dist/patch-merger-CjtjSB9r.js +631 -0
- package/node_modules/@deterministic-code/patch-merger/typescript/dist/patch-merger-CjtjSB9r.js.map +1 -0
- package/node_modules/@deterministic-code/patch-merger/typescript/dist/patch-merger-CvVbM8X5.cjs +14 -0
- package/node_modules/@deterministic-code/patch-merger/typescript/dist/patch-merger-CvVbM8X5.cjs.map +1 -0
- package/node_modules/@deterministic-code/patch-merger/typescript/dist/patch-merger.cjs +2 -0
- package/node_modules/@deterministic-code/patch-merger/typescript/dist/patch-merger.cjs.map +1 -0
- package/node_modules/@deterministic-code/patch-merger/typescript/dist/patch-merger.d.ts +53 -0
- package/node_modules/@deterministic-code/patch-merger/typescript/dist/patch-merger.js +8 -0
- package/node_modules/@deterministic-code/patch-merger/typescript/dist/patch-merger.js.map +1 -0
- package/node_modules/@deterministic-code/rust-generators/dist/common/default-casing.js +32 -0
- package/node_modules/@deterministic-code/rust-generators/dist/common/dictionary-candidate.js +4 -0
- package/node_modules/@deterministic-code/rust-generators/dist/common/test-samples.js +77 -0
- package/node_modules/@deterministic-code/rust-generators/dist/common/view-shape.js +28 -0
- package/node_modules/@deterministic-code/rust-generators/dist/common/view-test-fixtures.js +105 -0
- package/node_modules/@deterministic-code/rust-generators/dist/deterministic-type-converter.js +134 -0
- package/node_modules/@deterministic-code/rust-generators/dist/emit.js +20 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-backend-app.js +39 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-context.js +0 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-datasource-type-validators-tests.js +106 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-datasource-types-tests.js +60 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-datasource-types.d.ts +3 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-datasource-types.js +70 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-openapi.js +32 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-perf-e2e-tests.js +6 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-perf-server.js +20 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-routes-e2e-test.js +102 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-routes-tests.js +118 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-routes.js +329 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-service-integration-tests.js +65 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-service-tests.js +51 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-services.js +75 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-view-type-validators-tests.js +93 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-view-type-validators.js +137 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-view-types-tests.js +81 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-view-types.d.ts +3 -0
- package/node_modules/@deterministic-code/rust-generators/dist/generate-view-types.js +142 -0
- package/node_modules/@deterministic-code/rust-generators/dist/import-generator.js +243 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/backend-app.js +31 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/datasource-type-validators-tests.js +12 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/datasource-type-validators.js +12 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/datasource-types-tests.js +11 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/datasource-types.js +9 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/openapi.js +13 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/perf-e2e.js +8 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/perf-server.js +8 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/routes-e2e.js +17 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/routes-tests.js +22 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/routes.js +46 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/service-integration-tests.js +12 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/service-tests.js +9 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/services.js +13 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/view-type-validators-tests.js +12 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/view-type-validators.js +25 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/view-types-tests.js +11 -0
- package/node_modules/@deterministic-code/rust-generators/dist/resources/view-types.js +9 -0
- package/node_modules/@deterministic-code/rust-generators/dist/rust-eager-service-graph.js +6 -0
- package/node_modules/@deterministic-code/rust-generators/dist/specification-parser.js +20 -0
- package/node_modules/@deterministic-code/rust-generators/dist/struct-default.js +70 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-backend-app/Cargo.toml.tmpl +34 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-backend-app/Dockerfile.tmpl +31 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-backend-app/docker-compose.yml.tmpl +17 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-backend-app/entrypoint.sh +7 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-backend-app/env.tmpl +2 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-backend-app/gitignore.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-backend-app/rust/chunks/README.md +1 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-backend-app/rust/chunks/lib.rs +2 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-backend-app/rust/chunks/main.rs +4 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-backend-app/rust/health_check_service.rs +13 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-datasource-type-validators/type.rs.tmpl +8 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-datasource-type-validators-tests/type_tests.rs.tmpl +14 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-datasource-types/type.rs.tmpl +22 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-datasource-types-tests/type_tests.rs.tmpl +39 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-openapi/openapi.rs.tmpl +17 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-openapi/openapi_conformance.rs.tmpl +56 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-perf-e2e/app_perf_client.rs.tmpl +541 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-perf-server/perf_server.rs.tmpl +3 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes/app-wiring-body.rs.tmpl +11 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes/app-wiring.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes/by-field-merge.rs.tmpl +10 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes/check-eager-child.rs.tmpl +14 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes/check-optional-typed.rs.tmpl +3 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes/check-required-typed.rs.tmpl +5 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes/check-required.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes/coerce-row.rs.tmpl +62 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes/crud.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes/readonly.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes/validator-empty.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes/validator.rs.tmpl +5 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes-e2e/app_routes_e2e.rs.tmpl +2 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes-e2e/crud-tests.rs.tmpl +66 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes-e2e/readonly-tests.rs.tmpl +33 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes-e2e/setup.rs.tmpl +52 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes-tests/by-field-get-list.rs.tmpl +15 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes-tests/by-field-get-unique.rs.tmpl +15 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes-tests/crud.rs.tmpl +9 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-routes-tests/readonly.rs.tmpl +9 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-service-integration-tests/generic.rs.tmpl +9 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-service-tests/generic.rs.tmpl +9 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-services/custom-stub.rs.tmpl +13 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-services/generic.rs.tmpl +13 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-view-type-validators/check-array-nullable.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-view-type-validators/check-array.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-view-type-validators/check-nullable.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-view-type-validators/check-required.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-view-type-validators/type.rs.tmpl +20 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-view-type-validators-tests/type_tests.rs.tmpl +14 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-view-types/type.rs.tmpl +35 -0
- package/node_modules/@deterministic-code/rust-generators/dist/templates/create-view-types-tests/type_tests.rs.tmpl +48 -0
- package/node_modules/@deterministic-code/rust-generators/package.json +106 -0
- package/node_modules/@deterministic-code/rust-generators/src/common/default-casing.test.ts +60 -0
- package/node_modules/@deterministic-code/rust-generators/src/common/default-casing.ts +47 -0
- package/node_modules/@deterministic-code/rust-generators/src/common/dictionary-candidate.ts +4 -0
- package/node_modules/@deterministic-code/rust-generators/src/common/test-samples.ts +82 -0
- package/node_modules/@deterministic-code/rust-generators/src/common/view-shape.ts +46 -0
- package/node_modules/@deterministic-code/rust-generators/src/common/view-test-fixtures.ts +162 -0
- package/node_modules/@deterministic-code/rust-generators/src/deterministic-type-converter.ts +168 -0
- package/node_modules/@deterministic-code/rust-generators/src/emit.ts +22 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-backend-app.ts +45 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-context.ts +1 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-datasource-type-validators-tests.ts +142 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-datasource-type-validators.ts +182 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-datasource-types-tests.ts +63 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-datasource-types.ts +84 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-openapi.ts +40 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-perf-e2e-tests.ts +7 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-perf-server.ts +21 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-routes-e2e-test.ts +117 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-routes-tests.ts +153 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-routes.ts +465 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-service-integration-tests.ts +84 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-service-tests.ts +64 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-services.ts +86 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-view-type-validators-tests.ts +105 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-view-type-validators.ts +154 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-view-types-tests.ts +92 -0
- package/node_modules/@deterministic-code/rust-generators/src/generate-view-types.ts +168 -0
- package/node_modules/@deterministic-code/rust-generators/src/import-generator.test.ts +381 -0
- package/node_modules/@deterministic-code/rust-generators/src/import-generator.ts +341 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/backend-app.ts +24 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/datasource-type-validators-tests.ts +12 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/datasource-type-validators.ts +12 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/datasource-types-tests.ts +11 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/datasource-types.ts +9 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/openapi.ts +12 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/perf-e2e.ts +6 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/perf-server.ts +6 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/routes-e2e.ts +15 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/routes-tests.ts +19 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/routes.ts +35 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/service-integration-tests.ts +12 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/service-tests.ts +9 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/services.ts +12 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/view-type-validators-tests.ts +12 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/view-type-validators.ts +21 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/view-types-tests.ts +11 -0
- package/node_modules/@deterministic-code/rust-generators/src/resources/view-types.ts +9 -0
- package/node_modules/@deterministic-code/rust-generators/src/rust-eager-service-graph.ts +4 -0
- package/node_modules/@deterministic-code/rust-generators/src/specification-parser.ts +34 -0
- package/node_modules/@deterministic-code/rust-generators/src/struct-default.ts +99 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-backend-app/Cargo.toml.tmpl +34 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-backend-app/Dockerfile.tmpl +31 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-backend-app/docker-compose.yml.tmpl +17 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-backend-app/entrypoint.sh +7 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-backend-app/env.tmpl +2 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-backend-app/gitignore.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-backend-app/rust/chunks/README.md +1 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-backend-app/rust/chunks/lib.rs +2 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-backend-app/rust/chunks/main.rs +4 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-backend-app/rust/health_check_service.rs +13 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-datasource-type-validators/type.rs.tmpl +8 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-datasource-type-validators-tests/type_tests.rs.tmpl +14 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-datasource-types/type.rs.tmpl +22 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-datasource-types-tests/type_tests.rs.tmpl +39 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-openapi/openapi.rs.tmpl +17 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-openapi/openapi_conformance.rs.tmpl +56 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-perf-e2e/app_perf_client.rs.tmpl +541 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-perf-server/perf_server.rs.tmpl +3 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes/app-wiring-body.rs.tmpl +11 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes/app-wiring.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes/by-field-merge.rs.tmpl +10 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes/check-eager-child.rs.tmpl +14 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes/check-optional-typed.rs.tmpl +3 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes/check-required-typed.rs.tmpl +5 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes/check-required.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes/coerce-row.rs.tmpl +62 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes/crud.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes/readonly.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes/validator-empty.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes/validator.rs.tmpl +5 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes-e2e/app_routes_e2e.rs.tmpl +2 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes-e2e/crud-tests.rs.tmpl +66 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes-e2e/readonly-tests.rs.tmpl +33 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes-e2e/setup.rs.tmpl +52 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes-tests/by-field-get-list.rs.tmpl +15 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes-tests/by-field-get-unique.rs.tmpl +15 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes-tests/crud.rs.tmpl +9 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-routes-tests/readonly.rs.tmpl +9 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-service-integration-tests/generic.rs.tmpl +9 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-service-tests/generic.rs.tmpl +9 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-services/custom-stub.rs.tmpl +13 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-services/generic.rs.tmpl +13 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-view-type-validators/check-array-nullable.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-view-type-validators/check-array.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-view-type-validators/check-nullable.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-view-type-validators/check-required.rs.tmpl +1 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-view-type-validators/type.rs.tmpl +20 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-view-type-validators-tests/type_tests.rs.tmpl +14 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-view-types/type.rs.tmpl +35 -0
- package/node_modules/@deterministic-code/rust-generators/src/templates/create-view-types-tests/type_tests.rs.tmpl +48 -0
- package/node_modules/@deterministic-code/rust-generators/tsconfig.build.json +10 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/client-binding-transport.js +15 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/client-bindings-ir.js +186 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/common/default-casing.js +53 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/common/dictionary-candidate.js +4 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/common/fake-test-data.js +88 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/common/http-path.js +8 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/common/type-converters/native-to-zod.js +118 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/common/view-shape.js +30 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/common/view-test-shape.js +238 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/deterministic-type-converter.js +110 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/emit-shaped-types.js +353 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/emit.js +43 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/frontend-bindings-routes.js +4 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-backend-app.js +105 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-client-bindings-live-tests.js +28 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-client-bindings-mock-tests.js +28 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-client-bindings.js +55 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-context.js +0 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-datasource-type-validators-tests.js +167 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-datasource-types-tests.js +83 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-datasource-types.d.ts +3 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-datasource-types.js +10 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-frontend-app.js +154 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-frontend-types-tests.js +14 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-frontend-types.js +18 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-frontend-validators-tests.js +14 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-frontend-validators.js +34 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-perf-e2e-tests.js +8 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-perf-server.js +31 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-routes-e2e-test.js +21 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-routes-tests.js +64 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-routes.js +172 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-service-integration-tests.js +282 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-service-tests.js +80 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-services.js +239 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-view-type-validators-tests.js +192 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-view-type-validators.js +308 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-view-types-tests.js +101 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-view-types.d.ts +3 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/generate-view-types.js +5 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/import-generator.js +241 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/inline-inherited.js +4 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/backend-app-minimal.js +25 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/backend-app.js +43 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/client-bindings-live-tests.js +16 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/client-bindings-mock-tests.js +16 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/client-bindings.js +31 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/datasource-type-validators-tests.js +14 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/datasource-type-validators.js +16 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/datasource-types-tests.js +11 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/frontend-app-angular.js +46 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/frontend-app-next.js +37 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/frontend-app-svelte.js +43 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/frontend-app.js +37 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/frontend-validators.js +28 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/perf-e2e.js +8 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/perf-server.js +18 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/routes-e2e.js +11 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/routes-tests.js +37 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/routes.js +40 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/service-integration-tests.js +11 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/service-tests.js +9 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/services.js +15 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/shaped-types.js +13 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/view-type-validators-tests.js +14 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/view-type-validators.js +28 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/resources/view-types-tests.js +15 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/Dockerfile.tmpl +19 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/app-boot.test.ts.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/docker-compose.yml.tmpl +18 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/entrypoint.sh +7 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/env.tmpl +1 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/gitignore.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/health-check-service.ts.tmpl +11 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/health.test.ts.tmpl +27 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/minimal/app.ts.tmpl +15 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/minimal/health.test.ts.tmpl +23 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/minimal/package.json.tmpl +14 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/minimal/server.ts.tmpl +20 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/minimal/tsconfig.json.tmpl +22 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/package.json.tmpl +30 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/tsconfig.json.tmpl +19 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/typescript/chunks/README.md +1 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/typescript/chunks/app.ts +24 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/typescript/chunks/server.ts +20 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/vitest.config.ts.tmpl +16 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-backend-app/vitest.perf.config.ts.tmpl +28 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-client-bindings/axios-http.ts.tmpl +28 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-client-bindings/entity.ts.tmpl +13 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-client-bindings/fetch-http.ts.tmpl +33 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-client-bindings/root-index.ts.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-client-bindings/tanstack-index.ts.tmpl +7 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-client-bindings/tanstack.ts.tmpl +28 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-client-bindings/transport-index.ts.tmpl +4 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-client-bindings-live-tests/http-entity.test.ts.tmpl +29 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-client-bindings-live-tests/tanstack-entity.test.ts.tmpl +29 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-client-bindings-mock-tests/http-entity.test.ts.tmpl +19 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-client-bindings-mock-tests/tanstack-entity.test.ts.tmpl +23 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-datasource-type-validators/index.ts.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-datasource-type-validators/type.ts.tmpl +12 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-datasource-type-validators-tests/type.test.ts.tmpl +12 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-datasource-types-tests/type.test.ts.tmpl +29 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/Dockerfile.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/angular/Dockerfile.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/angular/angular.json.tmpl +34 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/angular/docker-compose-service.yml.tmpl +6 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/angular/gitignore.tmpl +4 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/angular/package.json.tmpl +38 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/angular/src/app/app.config.ts.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/angular/src/app/app.ts.tmpl +7 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/angular/src/index.html.tmpl +12 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/angular/src/main.ts.tmpl +6 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/angular/src/styles.css.tmpl +1 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/angular/tsconfig.app.json.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/angular/tsconfig.json.tmpl +22 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/docker-compose-service.yml.tmpl +6 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/gitignore.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/index.html.tmpl +12 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/next/Dockerfile.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/next/app/layout.tsx.tmpl +17 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/next/app/page.tsx.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/next/docker-compose-service.yml.tmpl +6 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/next/gitignore.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/next/next-env.d.ts.tmpl +2 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/next/next.config.ts.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/next/package.json.tmpl +33 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/next/tsconfig.json.tmpl +20 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/package.json.tmpl +35 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/src/App.tsx.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/src/main.tsx.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/svelte/Dockerfile.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/svelte/docker-compose-service.yml.tmpl +6 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/svelte/gitignore.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/svelte/index.html.tmpl +12 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/svelte/package.json.tmpl +32 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/svelte/src/App.svelte.tmpl +1 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/svelte/src/main.ts.tmpl +4 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/svelte/src/vite-env.d.ts.tmpl +2 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/svelte/svelte.config.js.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/svelte/tsconfig.json.tmpl +15 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/svelte/vite.config.ts.tmpl +10 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/tsconfig.json.tmpl +22 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-app/vite.config.ts.tmpl +10 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-validators/index.ts.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-validators/schema-inherit.ts.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-validators/schema-standalone.ts.tmpl +10 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-validators/schema-union.ts.tmpl +4 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-frontend-validators/type.ts.tmpl +11 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-migrate-scripts/setup-typescript.mjs.tmpl +89 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-perf-e2e/app.perf.client.test.ts.tmpl +257 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-perf-server/perf-server.ts.tmpl +19 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes/by-field-delete-list.ts.tmpl +13 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes/by-field-delete-unique.ts.tmpl +17 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes/by-field-get-list.ts.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes/by-field-get-unique.ts.tmpl +17 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes/by-field-put-list.ts.tmpl +14 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes/by-field-put-unique.ts.tmpl +23 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes/crud.ts.tmpl +6 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes/custom-stub.ts.tmpl +13 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes/index.ts.tmpl +4 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes/readonly.ts.tmpl +6 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes-e2e/app.integration.test.ts.tmpl +22 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes-tests/by-field-delete-list.ts.tmpl +7 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes-tests/by-field-delete-unique.ts.tmpl +14 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes-tests/by-field-get-list.ts.tmpl +10 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes-tests/by-field-get-unique.ts.tmpl +22 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes-tests/by-field-put-list.ts.tmpl +7 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes-tests/by-field-put-unique.ts.tmpl +17 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes-tests/crud.test.ts.tmpl +8 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes-tests/mock-factory.ts.tmpl +16 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-routes-tests/readonly.test.ts.tmpl +8 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-service-integration-tests/generic.integration.test.ts.tmpl +109 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-service-tests/generic.test.ts.tmpl +65 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-services/custom-stub.ts.tmpl +30 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-services/generic.ts.tmpl +114 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-services/index.ts.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-shaped-types/index.ts.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-shaped-types/type.ts.tmpl +25 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-view-type-validators/index.ts.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-view-type-validators/schema-inherit.ts.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-view-type-validators/schema-standalone.ts.tmpl +10 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-view-type-validators/schema-union.ts.tmpl +4 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-view-type-validators/type.ts.tmpl +11 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-view-type-validators-tests/type.test.ts.tmpl +12 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-view-types-tests/field-tests.ts.tmpl +26 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-view-types-tests/type.test.ts.tmpl +26 -0
- package/node_modules/@deterministic-code/typescript-generators/dist/templates/create-view-types-tests/value.ts.tmpl +1 -0
- package/node_modules/@deterministic-code/typescript-generators/package.json +133 -0
- package/node_modules/@deterministic-code/typescript-generators/src/client-binding-transport.ts +26 -0
- package/node_modules/@deterministic-code/typescript-generators/src/client-bindings-ir.ts +273 -0
- package/node_modules/@deterministic-code/typescript-generators/src/common/default-casing.test.ts +193 -0
- package/node_modules/@deterministic-code/typescript-generators/src/common/default-casing.ts +90 -0
- package/node_modules/@deterministic-code/typescript-generators/src/common/dictionary-candidate.ts +4 -0
- package/node_modules/@deterministic-code/typescript-generators/src/common/fake-test-data.ts +132 -0
- package/node_modules/@deterministic-code/typescript-generators/src/common/http-path.ts +12 -0
- package/node_modules/@deterministic-code/typescript-generators/src/common/type-converters/native-to-zod.ts +137 -0
- package/node_modules/@deterministic-code/typescript-generators/src/common/view-shape.ts +57 -0
- package/node_modules/@deterministic-code/typescript-generators/src/common/view-test-shape.ts +354 -0
- package/node_modules/@deterministic-code/typescript-generators/src/deterministic-type-converter.ts +134 -0
- package/node_modules/@deterministic-code/typescript-generators/src/emit-shaped-types.ts +541 -0
- package/node_modules/@deterministic-code/typescript-generators/src/emit.ts +67 -0
- package/node_modules/@deterministic-code/typescript-generators/src/frontend-bindings-routes.ts +3 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-backend-app.ts +116 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-client-bindings-live-tests.ts +29 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-client-bindings-mock-tests.ts +29 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-client-bindings.ts +56 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-context.ts +1 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-datasource-type-validators-tests.ts +203 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-datasource-type-validators.ts +191 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-datasource-types-tests.ts +97 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-datasource-types.ts +13 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-frontend-app.ts +180 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-frontend-types-tests.ts +17 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-frontend-types.ts +23 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-frontend-validators-tests.ts +17 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-frontend-validators.ts +39 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-perf-e2e-tests.ts +9 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-perf-server.ts +32 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-routes-e2e-test.ts +22 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-routes-tests.ts +75 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-routes.ts +196 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-service-integration-tests.ts +351 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-service-tests.ts +103 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-services.ts +287 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-view-type-validators-tests.ts +233 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-view-type-validators.ts +391 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-view-types-tests.ts +124 -0
- package/node_modules/@deterministic-code/typescript-generators/src/generate-view-types.ts +8 -0
- package/node_modules/@deterministic-code/typescript-generators/src/import-generator.test.ts +432 -0
- package/node_modules/@deterministic-code/typescript-generators/src/import-generator.ts +346 -0
- package/node_modules/@deterministic-code/typescript-generators/src/inline-inherited.ts +2 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/backend-app-minimal.ts +21 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/backend-app.ts +32 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/client-bindings-live-tests.ts +15 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/client-bindings-mock-tests.ts +15 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/client-bindings.ts +25 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/datasource-type-validators-tests.ts +14 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/datasource-type-validators.ts +15 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/datasource-types-tests.ts +11 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/frontend-app-angular.ts +35 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/frontend-app-next.ts +29 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/frontend-app-svelte.ts +33 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/frontend-app.ts +29 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/frontend-validators.ts +24 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/perf-e2e.ts +6 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/perf-server.ts +15 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/routes-e2e.ts +9 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/routes-tests.ts +29 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/routes.ts +31 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/service-integration-tests.ts +9 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/service-tests.ts +9 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/services.ts +13 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/shaped-types.ts +12 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/view-type-validators-tests.ts +14 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/view-type-validators.ts +24 -0
- package/node_modules/@deterministic-code/typescript-generators/src/resources/view-types-tests.ts +13 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/Dockerfile.tmpl +19 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/app-boot.test.ts.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/docker-compose.yml.tmpl +18 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/entrypoint.sh +7 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/env.tmpl +1 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/gitignore.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/health-check-service.ts.tmpl +11 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/health.test.ts.tmpl +27 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/minimal/app.ts.tmpl +15 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/minimal/health.test.ts.tmpl +23 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/minimal/package.json.tmpl +14 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/minimal/server.ts.tmpl +20 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/minimal/tsconfig.json.tmpl +22 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/package.json.tmpl +30 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/tsconfig.json.tmpl +19 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/typescript/chunks/README.md +1 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/typescript/chunks/app.ts +24 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/typescript/chunks/server.ts +20 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/vitest.config.ts.tmpl +16 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-backend-app/vitest.perf.config.ts.tmpl +28 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-client-bindings/axios-http.ts.tmpl +28 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-client-bindings/entity.ts.tmpl +13 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-client-bindings/fetch-http.ts.tmpl +33 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-client-bindings/root-index.ts.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-client-bindings/tanstack-index.ts.tmpl +7 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-client-bindings/tanstack.ts.tmpl +28 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-client-bindings/transport-index.ts.tmpl +4 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-client-bindings-live-tests/http-entity.test.ts.tmpl +29 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-client-bindings-live-tests/tanstack-entity.test.ts.tmpl +29 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-client-bindings-mock-tests/http-entity.test.ts.tmpl +19 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-client-bindings-mock-tests/tanstack-entity.test.ts.tmpl +23 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-datasource-type-validators/index.ts.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-datasource-type-validators/type.ts.tmpl +12 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-datasource-type-validators-tests/type.test.ts.tmpl +12 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-datasource-types-tests/type.test.ts.tmpl +29 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/Dockerfile.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/angular/Dockerfile.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/angular/angular.json.tmpl +34 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/angular/docker-compose-service.yml.tmpl +6 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/angular/gitignore.tmpl +4 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/angular/package.json.tmpl +38 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/angular/src/app/app.config.ts.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/angular/src/app/app.ts.tmpl +7 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/angular/src/index.html.tmpl +12 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/angular/src/main.ts.tmpl +6 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/angular/src/styles.css.tmpl +1 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/angular/tsconfig.app.json.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/angular/tsconfig.json.tmpl +22 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/docker-compose-service.yml.tmpl +6 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/gitignore.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/index.html.tmpl +12 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/next/Dockerfile.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/next/app/layout.tsx.tmpl +17 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/next/app/page.tsx.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/next/docker-compose-service.yml.tmpl +6 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/next/gitignore.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/next/next-env.d.ts.tmpl +2 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/next/next.config.ts.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/next/package.json.tmpl +33 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/next/tsconfig.json.tmpl +20 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/package.json.tmpl +35 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/src/App.tsx.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/src/main.tsx.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/svelte/Dockerfile.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/svelte/docker-compose-service.yml.tmpl +6 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/svelte/gitignore.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/svelte/index.html.tmpl +12 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/svelte/package.json.tmpl +32 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/svelte/src/App.svelte.tmpl +1 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/svelte/src/main.ts.tmpl +4 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/svelte/src/vite-env.d.ts.tmpl +2 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/svelte/svelte.config.js.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/svelte/tsconfig.json.tmpl +15 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/svelte/vite.config.ts.tmpl +10 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/tsconfig.json.tmpl +22 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-app/vite.config.ts.tmpl +10 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-validators/index.ts.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-validators/schema-inherit.ts.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-validators/schema-standalone.ts.tmpl +10 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-validators/schema-union.ts.tmpl +4 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-frontend-validators/type.ts.tmpl +11 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-migrate-scripts/setup-typescript.mjs.tmpl +89 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-perf-e2e/app.perf.client.test.ts.tmpl +257 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-perf-server/perf-server.ts.tmpl +19 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes/by-field-delete-list.ts.tmpl +13 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes/by-field-delete-unique.ts.tmpl +17 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes/by-field-get-list.ts.tmpl +9 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes/by-field-get-unique.ts.tmpl +17 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes/by-field-put-list.ts.tmpl +14 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes/by-field-put-unique.ts.tmpl +23 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes/crud.ts.tmpl +6 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes/custom-stub.ts.tmpl +13 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes/index.ts.tmpl +4 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes/readonly.ts.tmpl +6 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes-e2e/app.integration.test.ts.tmpl +22 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes-tests/by-field-delete-list.ts.tmpl +7 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes-tests/by-field-delete-unique.ts.tmpl +14 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes-tests/by-field-get-list.ts.tmpl +10 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes-tests/by-field-get-unique.ts.tmpl +22 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes-tests/by-field-put-list.ts.tmpl +7 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes-tests/by-field-put-unique.ts.tmpl +17 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes-tests/crud.test.ts.tmpl +8 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes-tests/mock-factory.ts.tmpl +16 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-routes-tests/readonly.test.ts.tmpl +8 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-service-integration-tests/generic.integration.test.ts.tmpl +109 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-service-tests/generic.test.ts.tmpl +65 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-services/custom-stub.ts.tmpl +30 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-services/generic.ts.tmpl +114 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-services/index.ts.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-shaped-types/index.ts.tmpl +3 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-shaped-types/type.ts.tmpl +25 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-view-type-validators/index.ts.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-view-type-validators/schema-inherit.ts.tmpl +5 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-view-type-validators/schema-standalone.ts.tmpl +10 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-view-type-validators/schema-union.ts.tmpl +4 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-view-type-validators/type.ts.tmpl +11 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-view-type-validators-tests/type.test.ts.tmpl +12 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-view-types-tests/field-tests.ts.tmpl +26 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-view-types-tests/type.test.ts.tmpl +26 -0
- package/node_modules/@deterministic-code/typescript-generators/src/templates/create-view-types-tests/value.ts.tmpl +1 -0
- package/node_modules/@deterministic-code/typescript-generators/tsconfig.build.json +10 -0
- package/package.json +46 -4
- package/README.md +0 -3
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { describe, it, expect } from "vitest";
|
|
2
|
+
import { once } from "node:events";
|
|
3
|
+
import { createServer } from "node:http";
|
|
4
|
+
import type { AddressInfo } from "node:net";
|
|
5
|
+
import { {{appFnName}} } from "../{{appFileBase}}.js";
|
|
6
|
+
|
|
7
|
+
describe("app routes e2e", () => {
|
|
8
|
+
it("serves GET /api/health", async () => {
|
|
9
|
+
const app = await {{appFnName}}();
|
|
10
|
+
const server = createServer(app);
|
|
11
|
+
server.listen(0);
|
|
12
|
+
await once(server, "listening");
|
|
13
|
+
try {
|
|
14
|
+
const { port } = server.address() as AddressInfo;
|
|
15
|
+
const res = await fetch(`http://127.0.0.1:${port}/api/health`);
|
|
16
|
+
expect(res.status).toBeLessThan(500);
|
|
17
|
+
} finally {
|
|
18
|
+
server.close();
|
|
19
|
+
await once(server, "close");
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
|
|
2
|
+
it("DELETE {{mountPath}}/{{kebab}}/:value returns { count } for the non-unique case", async () => {
|
|
3
|
+
service.deleteBy.mockResolvedValueOnce(2);
|
|
4
|
+
const res = await request(app).delete("{{mountPath}}/{{kebab}}/x"){{&ifMatch}};
|
|
5
|
+
expect(res.status).toBe(200);
|
|
6
|
+
expect(res.body).toEqual({ count: 2 });
|
|
7
|
+
});
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
|
|
2
|
+
it("DELETE {{mountPath}}/{{kebab}}/:value returns success when one row deleted", async () => {
|
|
3
|
+
service.deleteBy.mockResolvedValueOnce(1);
|
|
4
|
+
const res = await request(app).delete("{{mountPath}}/{{kebab}}/x"){{&ifMatch}};
|
|
5
|
+
expect(res.status).toBe(200);
|
|
6
|
+
expect(res.body).toEqual({ success: true });
|
|
7
|
+
expect(service.deleteBy).toHaveBeenCalledWith([{ name: "{{byField}}", value: "x" }]);
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
it("DELETE {{mountPath}}/{{kebab}}/:value returns 404 when no row matches", async () => {
|
|
11
|
+
service.deleteBy.mockResolvedValueOnce(0);
|
|
12
|
+
const res = await request(app).delete("{{mountPath}}/{{kebab}}/missing"){{&ifMatch}};
|
|
13
|
+
expect(res.status).toBe(404);
|
|
14
|
+
});
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
|
|
2
|
+
it("GET {{mountPath}}/{{kebab}}/:value returns the array of matches", async () => {
|
|
3
|
+
service.findBy.mockResolvedValueOnce([
|
|
4
|
+
{ id: 1, {{byField}}: "x" },
|
|
5
|
+
{ id: 2, {{byField}}: "x" },
|
|
6
|
+
]);
|
|
7
|
+
const res = await request(app).get("{{mountPath}}/{{kebab}}/x");
|
|
8
|
+
expect(res.status).toBe(200);
|
|
9
|
+
expect(service.findBy).toHaveBeenCalledWith([{ name: "{{byField}}", value: "x" }]);
|
|
10
|
+
});
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
|
|
2
|
+
it("GET {{mountPath}}/{{kebab}}/:value returns the row when unique findBy matches", async () => {
|
|
3
|
+
service.findBy.mockResolvedValueOnce([{ id: 1, {{byField}}: "x" }]);
|
|
4
|
+
const res = await request(app).get("{{mountPath}}/{{kebab}}/x");
|
|
5
|
+
expect(res.status).toBe(200);
|
|
6
|
+
expect(service.findBy).toHaveBeenCalledWith([{ name: "{{byField}}", value: "x" }]);
|
|
7
|
+
});
|
|
8
|
+
|
|
9
|
+
it("GET {{mountPath}}/{{kebab}}/:value returns 404 when no row matches", async () => {
|
|
10
|
+
service.findBy.mockResolvedValueOnce([]);
|
|
11
|
+
const res = await request(app).get("{{mountPath}}/{{kebab}}/missing");
|
|
12
|
+
expect(res.status).toBe(404);
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
it("GET {{mountPath}}/{{kebab}}/:value returns 409 when multiple rows match a unique-byField route", async () => {
|
|
16
|
+
service.findBy.mockResolvedValueOnce([
|
|
17
|
+
{ id: 1, {{byField}}: "x" },
|
|
18
|
+
{ id: 2, {{byField}}: "x" },
|
|
19
|
+
]);
|
|
20
|
+
const res = await request(app).get("{{mountPath}}/{{kebab}}/x");
|
|
21
|
+
expect(res.status).toBe(409);
|
|
22
|
+
});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
|
|
2
|
+
it("PUT {{mountPath}}/{{kebab}}/:value returns { count } for the non-unique case", async () => {
|
|
3
|
+
service.updateBy.mockResolvedValueOnce(3);
|
|
4
|
+
const res = await request(app).put("{{mountPath}}/{{kebab}}/x"){{&ifMatch}}.send({});
|
|
5
|
+
expect(res.status).toBe(200);
|
|
6
|
+
expect(res.body).toEqual({ count: 3 });
|
|
7
|
+
});
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
|
|
2
|
+
it("PUT {{mountPath}}/{{kebab}}/:value updates the unique row", async () => {
|
|
3
|
+
service.updateBy.mockResolvedValueOnce(1);
|
|
4
|
+
service.findBy.mockResolvedValueOnce([{ id: 1, {{byField}}: "x" }]);
|
|
5
|
+
const res = await request(app).put("{{mountPath}}/{{kebab}}/x"){{&ifMatch}}.send({});
|
|
6
|
+
expect(res.status).toBe(200);
|
|
7
|
+
expect(service.updateBy).toHaveBeenCalledWith(
|
|
8
|
+
[{ name: "{{byField}}", value: "x" }],
|
|
9
|
+
{},
|
|
10
|
+
);
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
it("PUT {{mountPath}}/{{kebab}}/:value returns 404 when no row matches", async () => {
|
|
14
|
+
service.updateBy.mockResolvedValueOnce(0);
|
|
15
|
+
const res = await request(app).put("{{mountPath}}/{{kebab}}/missing"){{&ifMatch}}.send({});
|
|
16
|
+
expect(res.status).toBe(404);
|
|
17
|
+
});
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
function createMock(primaryKey?: any): any {
|
|
2
|
+
return {
|
|
3
|
+
primaryKey,
|
|
4
|
+
query: vi.fn().mockResolvedValue([]),
|
|
5
|
+
findAll: vi.fn().mockResolvedValue([]),
|
|
6
|
+
find: vi.fn().mockResolvedValue([]),
|
|
7
|
+
findById: vi.fn().mockResolvedValue(null),
|
|
8
|
+
findBy: vi.fn().mockResolvedValue([]),
|
|
9
|
+
create: vi.fn(async (data: unknown) => ({ id: 1, ...(data as object) })),
|
|
10
|
+
update: vi.fn(async (id: number, data: unknown) => ({ id, ...(data as object) })),
|
|
11
|
+
patch: vi.fn(async (id: number, data: unknown) => ({ id, ...(data as object) })),
|
|
12
|
+
delete: vi.fn().mockResolvedValue(true),
|
|
13
|
+
updateBy: vi.fn().mockResolvedValue(0),
|
|
14
|
+
deleteBy: vi.fn().mockResolvedValue(0),
|
|
15
|
+
};
|
|
16
|
+
}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
{{&prelude}}import { describe, it, expect, beforeEach, afterEach } from "vitest";
|
|
2
|
+
import { copyFile, mkdtemp, rm } from "node:fs/promises";
|
|
3
|
+
import { tmpdir } from "node:os";
|
|
4
|
+
import { join } from "node:path";
|
|
5
|
+
import {
|
|
6
|
+
PrimaryKeyService,
|
|
7
|
+
SqliteDatasource,
|
|
8
|
+
SqliteStandardRepository,
|
|
9
|
+
} from "@datasources/core";
|
|
10
|
+
import { {{className}} } from "{{serviceImport}}";
|
|
11
|
+
{{#parentImports}}import { {{className}} } from "{{importPath}}";
|
|
12
|
+
{{/parentImports}}
|
|
13
|
+
{{#typeImports}}import type { {{names}} } from "{{fromPath}}";
|
|
14
|
+
{{/typeImports}}
|
|
15
|
+
const TABLE_NAME = {{&tableNameJson}};
|
|
16
|
+
const primaryKeys = new PrimaryKeyService([
|
|
17
|
+
{{#pkEntries}} { entityName: {{&entityNameJson}}, primaryKeyColumn: {{&columnJson}}, primaryKeyIdType: {{&pkIdTypeJson}} },
|
|
18
|
+
{{/pkEntries}}]);
|
|
19
|
+
|
|
20
|
+
describe("{{className}} (sqlite integration)", () => {
|
|
21
|
+
let tmpDir: string;
|
|
22
|
+
let dbPath: string;
|
|
23
|
+
let datasource: SqliteDatasource;
|
|
24
|
+
let service: {{className}};
|
|
25
|
+
|
|
26
|
+
beforeEach(async () => {
|
|
27
|
+
const prebuilt = process.env.npm_package_config_test_db;
|
|
28
|
+
if (!prebuilt) {
|
|
29
|
+
throw new Error(
|
|
30
|
+
"npm_package_config_test_db is unset — run via `npm test` so the pretest hook materializes the prebuilt sqlite via migrate-setup --and-up.",
|
|
31
|
+
);
|
|
32
|
+
}
|
|
33
|
+
tmpDir = await mkdtemp(join(tmpdir(), "{{entityName}}-itest-"));
|
|
34
|
+
dbPath = join(tmpDir, "test.db");
|
|
35
|
+
await copyFile(prebuilt, dbPath);
|
|
36
|
+
datasource = new SqliteDatasource({
|
|
37
|
+
dbPath,
|
|
38
|
+
pragmas: ["foreign_keys = ON"],
|
|
39
|
+
});
|
|
40
|
+
await datasource.open();
|
|
41
|
+
await datasource.query(`DELETE FROM ${TABLE_NAME}`);
|
|
42
|
+
const repository = new SqliteStandardRepository<{{rowTypeName}}>(
|
|
43
|
+
datasource,
|
|
44
|
+
TABLE_NAME,
|
|
45
|
+
{ entityName: {{&entityNameJson}}, primaryKeys },
|
|
46
|
+
);
|
|
47
|
+
service = new {{className}}(repository{{#isUuidPk}}, { idType: "uuid" }{{/isUuidPk}});
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
afterEach(async () => {
|
|
51
|
+
await datasource.close();
|
|
52
|
+
await rm(tmpDir, { recursive: true, force: true });
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
it("findAll returns [] on an empty table", async () => {
|
|
56
|
+
expect(await service.findAll()).toEqual([]);
|
|
57
|
+
});
|
|
58
|
+
{{#canCreate}}
|
|
59
|
+
it("create inserts a row and auto-populates id/created/updated", async () => {
|
|
60
|
+
const row = await service.create({}{{#createTypeName}} as {{createTypeName}}{{/createTypeName}});
|
|
61
|
+
const r = row as unknown as Record<string, unknown>;
|
|
62
|
+
expect(typeof r.id).toBe("{{idTsType}}");
|
|
63
|
+
expect(typeof r.created).toBe("string");
|
|
64
|
+
expect(typeof r.updated).toBe("string");
|
|
65
|
+
});
|
|
66
|
+
{{/canCreate}}
|
|
67
|
+
it("findById returns null for a missing id", async () => {
|
|
68
|
+
expect(await service.findById({{&missingId}})).toBeNull();
|
|
69
|
+
});
|
|
70
|
+
{{#canUpdate}}
|
|
71
|
+
it("update returns null for a missing id", async () => {
|
|
72
|
+
const result = await service.update({{&missingId}}, {});
|
|
73
|
+
expect(result).toBeNull();
|
|
74
|
+
});
|
|
75
|
+
{{/canUpdate}}
|
|
76
|
+
it("delete returns false when the row does not exist", async () => {
|
|
77
|
+
expect(await service.delete({{&missingId}})).toBe(false);
|
|
78
|
+
});
|
|
79
|
+
|
|
80
|
+
{{#hierarchy}}
|
|
81
|
+
it("create, update, and delete with parents", async () => {
|
|
82
|
+
{{#chainServices}} const {{varName}} = new {{className}}(
|
|
83
|
+
new SqliteStandardRepository<{{rowTypeName}}>(datasource, {{&tableNameJson}}, {
|
|
84
|
+
entityName: {{&entityNameJson}},
|
|
85
|
+
primaryKeys,
|
|
86
|
+
}){{#isUuidPk}}, { idType: "uuid" }{{/isUuidPk}},
|
|
87
|
+
);
|
|
88
|
+
{{/chainServices}}
|
|
89
|
+
{{#creates}}{{#isLookup}} const {{varName}} = await {{serviceVar}}.findById({{&seedId}});
|
|
90
|
+
expect({{varName}}).not.toBeNull();
|
|
91
|
+
if ({{varName}} === null) {
|
|
92
|
+
throw new Error({{&missingSeedErrorJson}});
|
|
93
|
+
}
|
|
94
|
+
{{/isLookup}}{{^isLookup}} const {{varName}} = await {{serviceVar}}.create({
|
|
95
|
+
{{#fields}} {{ident}}: {{&expr}},
|
|
96
|
+
{{/fields}} }{{#createTypeName}} as {{createTypeName}}{{/createTypeName}});
|
|
97
|
+
{{/isLookup}}{{/creates}}
|
|
98
|
+
{{#updates}} const {{updatedVarName}} = await {{serviceVar}}.update({{varName}}.{{pkIdent}}, {
|
|
99
|
+
{{#fields}} {{ident}}: {{&expr}},
|
|
100
|
+
{{/fields}} });
|
|
101
|
+
expect({{updatedVarName}}).not.toBeNull();
|
|
102
|
+
{{/updates}}
|
|
103
|
+
{{#deletes}} expect(await {{serviceVar}}.delete({{varName}}.{{pkIdent}})).toBe(true);
|
|
104
|
+
expect(await {{serviceVar}}.findById({{varName}}.{{pkIdent}})).toBeNull();
|
|
105
|
+
{{/deletes}} });
|
|
106
|
+
{{/hierarchy}}{{#missingLookupSeed}}
|
|
107
|
+
// Seed data does not exist for readonly-lookup "{{lookupName}}", so this test (and the remainder) cannot be written.
|
|
108
|
+
{{/missingLookupSeed}}
|
|
109
|
+
});
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { describe, it, expect, vi, beforeEach } from "vitest";
|
|
2
|
+
{{&prelude}}import type { ICrudRepository } from "@datasources/core";
|
|
3
|
+
import { {{className}} } from "{{importPath}}";
|
|
4
|
+
|
|
5
|
+
type Repo = ICrudRepository<any>;
|
|
6
|
+
|
|
7
|
+
function createMockRepository(): Repo {
|
|
8
|
+
return {
|
|
9
|
+
entityName: {{&entityNameJson}},
|
|
10
|
+
primaryKey: { fromRow: vi.fn() },
|
|
11
|
+
query: vi.fn().mockResolvedValue([]),
|
|
12
|
+
findAll: vi.fn().mockResolvedValue([]),
|
|
13
|
+
find: vi.fn().mockResolvedValue(null),
|
|
14
|
+
findBy: vi.fn().mockResolvedValue([]),
|
|
15
|
+
findIn: vi.fn().mockResolvedValue([]),
|
|
16
|
+
add: vi.fn(async (data: unknown) => ({ id: 1, ...(data as object) })),
|
|
17
|
+
update: vi.fn(async (id: number, data: unknown) => ({ id, ...(data as object) })),
|
|
18
|
+
delete: vi.fn().mockResolvedValue(true),
|
|
19
|
+
} as unknown as Repo;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
describe("{{className}}", () => {
|
|
23
|
+
let repo: Repo;
|
|
24
|
+
let service: {{className}};
|
|
25
|
+
|
|
26
|
+
beforeEach(() => {
|
|
27
|
+
repo = createMockRepository();
|
|
28
|
+
service = new {{className}}(repo);
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
it("findAll delegates to the repository", async () => {
|
|
32
|
+
await service.findAll();
|
|
33
|
+
expect(repo.findAll).toHaveBeenCalledOnce();
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
it("findById forwards the id to repo.find", async () => {
|
|
37
|
+
const id = {{&idExpr}};
|
|
38
|
+
await service.findById(id);
|
|
39
|
+
expect(repo.find).toHaveBeenCalledWith(id);
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
it("create forwards the payload to repo.add", async () => {
|
|
43
|
+
const payload = { name: "example" } as any;
|
|
44
|
+
await service.create(payload);
|
|
45
|
+
expect(repo.add).toHaveBeenCalledWith(payload);
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
it("update forwards id + patch", async () => {
|
|
49
|
+
const id = {{&idExpr}};
|
|
50
|
+
const patch = { name: "renamed" } as any;
|
|
51
|
+
await service.update(id, patch);
|
|
52
|
+
expect(repo.update).toHaveBeenCalledWith(id, patch);
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
it("delete forwards the id", async () => {
|
|
56
|
+
const id = {{&idExpr}};
|
|
57
|
+
await service.delete(id);
|
|
58
|
+
expect(repo.delete).toHaveBeenCalledWith(id);
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
it("findBy translates a single NameValue to repo.findBy", async () => {
|
|
62
|
+
await service.findBy([{ name: "email", value: "a@b.c" }]);
|
|
63
|
+
expect(repo.findBy).toHaveBeenCalledWith("email", "a@b.c");
|
|
64
|
+
});
|
|
65
|
+
});
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{{#simpleDoc}}/** Service {{interfaceName}}. */
|
|
2
|
+
{{/simpleDoc}}{{#descriptionDoc}}/**
|
|
3
|
+
* Service {{interfaceName}}.
|
|
4
|
+
* Datasource type: standard.
|
|
5
|
+
* Target: Custom.
|
|
6
|
+
* Fields: 0.
|
|
7
|
+
*/
|
|
8
|
+
{{/descriptionDoc}}{{#hasMethods}}export interface {{interfaceName}} {
|
|
9
|
+
{{#methods}}
|
|
10
|
+
{{name}}(..._args: unknown[]): Promise<unknown>;
|
|
11
|
+
{{/methods}}
|
|
12
|
+
}
|
|
13
|
+
{{/hasMethods}}{{^hasMethods}}export interface {{interfaceName}} {}
|
|
14
|
+
{{/hasMethods}}
|
|
15
|
+
|
|
16
|
+
{{#simpleDoc}}/** Service {{className}}. */
|
|
17
|
+
{{/simpleDoc}}{{#descriptionDoc}}/**
|
|
18
|
+
* Service {{className}}.
|
|
19
|
+
* Datasource type: standard.
|
|
20
|
+
* Target: Custom.
|
|
21
|
+
* Fields: 0.
|
|
22
|
+
*/
|
|
23
|
+
{{/descriptionDoc}}export class {{className}} implements {{interfaceName}} {
|
|
24
|
+
static readonly dependencies = [] as const;
|
|
25
|
+
{{#methods}}
|
|
26
|
+
async {{name}}(..._args: unknown[]): Promise<unknown> {
|
|
27
|
+
return {};
|
|
28
|
+
}
|
|
29
|
+
{{/methods}}
|
|
30
|
+
}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
{{#typeImport}}import { {{typeName}} } from "{{typeImportPath}}";
|
|
2
|
+
{{/typeImport}}{{#mutateImport}}import { {{mutateTypeName}} } from "{{mutateImportPath}}";
|
|
3
|
+
{{/mutateImport}}import type { ICrudRepository } from "@datasources/core";
|
|
4
|
+
|
|
5
|
+
type NameValue = { name: string; value: unknown };
|
|
6
|
+
type Mutate = {{#mutateTypeName}}{{mutateTypeName}}{{/mutateTypeName}}{{^mutateTypeName}}Omit<{{typeName}}, {{pkOmit}}>{{/mutateTypeName}};
|
|
7
|
+
|
|
8
|
+
{{#simpleDoc}}/** Service {{interfaceName}}. */
|
|
9
|
+
{{/simpleDoc}}{{#descriptionDoc}}/**
|
|
10
|
+
* Service {{interfaceName}}.
|
|
11
|
+
* Datasource type: {{datasourceType}}.
|
|
12
|
+
* Fields: 0.
|
|
13
|
+
*/
|
|
14
|
+
{{/descriptionDoc}}export type {{interfaceName}} = {{className}};
|
|
15
|
+
|
|
16
|
+
{{#simpleDoc}}/** Service {{className}}. */
|
|
17
|
+
{{/simpleDoc}}{{#descriptionDoc}}/**
|
|
18
|
+
* Service {{className}}.
|
|
19
|
+
* Datasource type: {{datasourceType}}.
|
|
20
|
+
* Fields: 0.
|
|
21
|
+
*/
|
|
22
|
+
{{/descriptionDoc}}export class {{className}} {
|
|
23
|
+
readonly primaryKey;
|
|
24
|
+
|
|
25
|
+
constructor(
|
|
26
|
+
private readonly repository: ICrudRepository<{{typeName}}, {{idTsType}}>,
|
|
27
|
+
) {
|
|
28
|
+
this.primaryKey = repository.primaryKey;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
query(command: string, args: NameValue[]): Promise<{{typeName}}[]> {
|
|
32
|
+
return this.repository.query(command, args.map((a) => a.value));
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
findAll(): Promise<{{typeName}}[]> {
|
|
36
|
+
return this.repository.findAll();
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
create(data: Mutate): Promise<{{typeName}}> {
|
|
40
|
+
return this.repository.add(data);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
find(query: string, args: NameValue[]): Promise<{{typeName}}[]> {
|
|
44
|
+
return this.repository.query(query, args.map((a) => a.value));
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
findById(id: {{idTsType}}): Promise<{{typeName}} | null> {
|
|
48
|
+
return this.repository.find(id);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
findBy(whereArgs: NameValue[]): Promise<{{typeName}}[]> {
|
|
52
|
+
if (whereArgs.length === 0) return this.repository.findAll();
|
|
53
|
+
if (whereArgs.length === 1) {
|
|
54
|
+
return this.repository.findBy(whereArgs[0].name, whereArgs[0].value);
|
|
55
|
+
}
|
|
56
|
+
return this.repository.query(
|
|
57
|
+
whereArgs.map((a) => a.name).join(" AND "),
|
|
58
|
+
whereArgs.map((a) => a.value),
|
|
59
|
+
);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
update(
|
|
63
|
+
id: {{idTsType}},
|
|
64
|
+
data: Partial<Mutate>,
|
|
65
|
+
opts?: { expectedUpdated?: string },
|
|
66
|
+
): Promise<{{typeName}} | null> {
|
|
67
|
+
return opts === undefined
|
|
68
|
+
? this.repository.update(id, data)
|
|
69
|
+
: this.repository.update(id, data, opts);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
patch(
|
|
73
|
+
id: {{idTsType}},
|
|
74
|
+
data: Partial<Mutate>,
|
|
75
|
+
opts?: { expectedUpdated?: string },
|
|
76
|
+
): Promise<{{typeName}} | null> {
|
|
77
|
+
return this.update(id, data, opts);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
delete(id: {{idTsType}}, opts?: { expectedUpdated?: string }): Promise<boolean> {
|
|
81
|
+
return opts === undefined
|
|
82
|
+
? this.repository.delete(id)
|
|
83
|
+
: this.repository.delete(id, opts);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
async updateBy(
|
|
87
|
+
whereArgs: NameValue[],
|
|
88
|
+
data: Partial<Mutate>,
|
|
89
|
+
): Promise<number> {
|
|
90
|
+
const rows = await this.findBy(whereArgs);
|
|
91
|
+
let count = 0;
|
|
92
|
+
for (const row of rows) {
|
|
93
|
+
const id = this.primaryKey.fromRow(row as Record<string, unknown>) as {{idTsType}};
|
|
94
|
+
if ((await this.repository.update(id, data)) !== null) count++;
|
|
95
|
+
}
|
|
96
|
+
return count;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
async deleteBy(whereArgs: NameValue[]): Promise<number> {
|
|
100
|
+
const rows = await this.findBy(whereArgs);
|
|
101
|
+
let count = 0;
|
|
102
|
+
for (const row of rows) {
|
|
103
|
+
const id = this.primaryKey.fromRow(row as Record<string, unknown>) as {{idTsType}};
|
|
104
|
+
if (await this.repository.delete(id)) count++;
|
|
105
|
+
}
|
|
106
|
+
return count;
|
|
107
|
+
}
|
|
108
|
+
{{#finders}}
|
|
109
|
+
async {{method}}({{param}}: {{paramType}}): Promise<{{typeName}} | null> {
|
|
110
|
+
const rows = await this.findBy([{ name: "{{field}}", value: {{param}} }]);
|
|
111
|
+
return rows[0] ?? null;
|
|
112
|
+
}
|
|
113
|
+
{{/finders}}
|
|
114
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
// schema-version: {{schemaVersion}}
|
|
2
|
+
{{#imports}}import{{^isValue}} type{{/isValue}} { {{names}} } from "{{fromPath}}";
|
|
3
|
+
{{/imports}}{{#hasImports}}
|
|
4
|
+
{{/hasImports}}{{#simpleDoc}}/** {{docNoun}} {{className}}. */
|
|
5
|
+
{{/simpleDoc}}{{#descriptionDoc}}/**
|
|
6
|
+
* {{docNoun}} {{className}}.
|
|
7
|
+
* Datasource type: {{datasourceType}}.
|
|
8
|
+
* Target: {{target}}.
|
|
9
|
+
* Fields: {{fieldCount}}.
|
|
10
|
+
*/
|
|
11
|
+
{{/descriptionDoc}}{{#hasDictionary}}type Dictionary<K extends PropertyKey, V> = Record<K, V>;
|
|
12
|
+
{{/hasDictionary}}{{#isUnion}}export type {{className}} = {{unionMembers}};
|
|
13
|
+
{{/isUnion}}{{#isShaped}}{{#isClass}}export class {{className}}{{#hasExtends}} extends {{extendsType}}{{/hasExtends}}{{#hasFields}} {
|
|
14
|
+
{{#fields}}
|
|
15
|
+
{{ident}}{{#definite}}!{{/definite}}: {{tsType}}{{#nullable}} | null{{/nullable}}{{#hasInitializer}} = {{&initializer}}{{/hasInitializer}};
|
|
16
|
+
{{/fields}}
|
|
17
|
+
}
|
|
18
|
+
{{/hasFields}}{{^hasFields}} {}
|
|
19
|
+
{{/hasFields}}{{/isClass}}{{^isClass}}export interface {{className}}{{#hasExtends}} extends {{extendsType}}{{/hasExtends}}{{#hasFields}} {
|
|
20
|
+
{{#fields}}
|
|
21
|
+
{{ident}}: {{tsType}}{{#nullable}} | null{{/nullable}};
|
|
22
|
+
{{/fields}}
|
|
23
|
+
}
|
|
24
|
+
{{/hasFields}}{{^hasFields}} {}
|
|
25
|
+
{{/hasFields}}{{/isClass}}{{/isShaped}}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export const {{schemaName}} = {{#emptyObject}}z.object({}){{/emptyObject}}{{^emptyObject}}z.object({
|
|
2
|
+
{{#fields}}
|
|
3
|
+
{{ident}}: {{&zodExpr}},
|
|
4
|
+
{{/fields}}
|
|
5
|
+
}){{/emptyObject}};
|
|
6
|
+
{{#hasTrio}}
|
|
7
|
+
export const {{createName}} = {{schemaName}};
|
|
8
|
+
export const {{updateName}} = {{schemaName}};
|
|
9
|
+
export const {{patchName}} = {{schemaName}}.partial();
|
|
10
|
+
{{/hasTrio}}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// schema-version: {{schemaVersion}}
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
{{#imports}}
|
|
4
|
+
import { {{names}} } from "{{fromPath}}";
|
|
5
|
+
{{/imports}}
|
|
6
|
+
|
|
7
|
+
{{&schemaBody}}
|
|
8
|
+
{{#withTypeAnnotation}}
|
|
9
|
+
|
|
10
|
+
export type {{validatedTypeName}} = z.infer<typeof {{schemaName}}>;
|
|
11
|
+
{{/withTypeAnnotation}}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// schema-version: {{schemaVersion}}
|
|
2
|
+
{{&prelude}}import { describe, it, expect } from "vitest";
|
|
3
|
+
import { {{schemaName}} } from "{{schemaImport}}";
|
|
4
|
+
|
|
5
|
+
describe("{{schemaName}} (view_types.{{viewName}})", () => {
|
|
6
|
+
{{#cases}}
|
|
7
|
+
it("{{name}}", () => {
|
|
8
|
+
const value = {{&fixture}};
|
|
9
|
+
expect(() => {{schemaName}}.parse(value)).{{assertion}}();
|
|
10
|
+
});
|
|
11
|
+
{{/cases}}
|
|
12
|
+
});
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
it("gets {{testName}}", () => {
|
|
2
|
+
const initial = {{&sampleExpr}};
|
|
3
|
+
{{#isRoot}}
|
|
4
|
+
const value: {{className}} = { ...sample(), {{ident}}: initial };
|
|
5
|
+
{{/isRoot}}
|
|
6
|
+
{{^isRoot}}
|
|
7
|
+
const value: {{className}} = sample();
|
|
8
|
+
value{{&access}} = initial;
|
|
9
|
+
{{/isRoot}}
|
|
10
|
+
expect(value{{&access}}).toEqual(initial);
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
it("sets {{testName}}", () => {
|
|
14
|
+
const value: {{className}} = sample();
|
|
15
|
+
const next = {{&nextExpr}};
|
|
16
|
+
value{{&access}} = next;
|
|
17
|
+
expect(value{{&access}}).toEqual(next);
|
|
18
|
+
});
|
|
19
|
+
{{#nullable}}
|
|
20
|
+
it("allows setting {{testName}} to null", () => {
|
|
21
|
+
const value: {{className}} = sample();
|
|
22
|
+
value{{&access}} = null;
|
|
23
|
+
expect(value{{&access}}).toBeNull();
|
|
24
|
+
});
|
|
25
|
+
{{/nullable}}
|
|
26
|
+
{{&nestedTests}}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// schema-version: {{schemaVersion}}
|
|
2
|
+
{{&prelude}}import { describe, it, expect } from "vitest";
|
|
3
|
+
import type { {{className}} } from "{{typeImport}}";
|
|
4
|
+
{{#isUnion}}
|
|
5
|
+
{{#members}}
|
|
6
|
+
import type { {{memberClass}} } from "{{memberImport}}";
|
|
7
|
+
{{/members}}
|
|
8
|
+
{{/isUnion}}
|
|
9
|
+
|
|
10
|
+
describe("{{className}} field accessors (view_types.{{viewName}})", () => {
|
|
11
|
+
{{#isShaped}}
|
|
12
|
+
const sample = (): {{className}} => ({{&fixture}});
|
|
13
|
+
|
|
14
|
+
it("constructs a sample", () => {
|
|
15
|
+
expect(sample()).toBeDefined();
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
{{&fieldTests}}{{/isShaped}}{{#isUnion}}
|
|
19
|
+
{{#members}}
|
|
20
|
+
it("accepts a {{name}} member", () => {
|
|
21
|
+
const value: {{className}} = {{&memberFixture}} as {{memberClass}};
|
|
22
|
+
expect(value).toBeDefined();
|
|
23
|
+
});
|
|
24
|
+
{{/members}}
|
|
25
|
+
{{/isUnion}}
|
|
26
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{{#isArray}}[{{/isArray}}{{#isObject}}{ {{#nested}}{{ident}}: {{&value}}{{^last}}, {{/last}}{{/nested}} }{{/isObject}}{{#isPrimitive}}{{&expr}}{{/isPrimitive}}{{#isArray}}]{{/isArray}}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"module": "nodenext", "moduleResolution": "nodenext", "target": "ES2022",
|
|
4
|
+
"lib": ["ES2022"], "types": ["node"], "declaration": true, "outDir": "dist",
|
|
5
|
+
"rootDir": "src", "allowImportingTsExtensions": true, "rewriteRelativeImportExtensions": true,
|
|
6
|
+
"resolveJsonModule": true, "skipLibCheck": true, "strict": true, "forceConsistentCasingInFileNames": true
|
|
7
|
+
},
|
|
8
|
+
"include": ["src/**/*.ts"],
|
|
9
|
+
"exclude": ["node_modules", "dist", "src/templates/**"]
|
|
10
|
+
}
|