@deterministic-code/datasources-cli 0.0.0-stage → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/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 +171 -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
package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/sql-keywords.js
ADDED
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
/** SQL reserved words and native types that follow `datasource.casing.keywords`. */
|
|
2
|
+
export const SQL_KEYWORDS = new Set([
|
|
3
|
+
"AFTER",
|
|
4
|
+
"ALTER",
|
|
5
|
+
"AND",
|
|
6
|
+
"AS",
|
|
7
|
+
"AT",
|
|
8
|
+
"AUTOINCREMENT",
|
|
9
|
+
"AUTO_INCREMENT",
|
|
10
|
+
"BEFORE",
|
|
11
|
+
"BEGIN",
|
|
12
|
+
"BETWEEN",
|
|
13
|
+
"BIGINT",
|
|
14
|
+
"BIGSERIAL",
|
|
15
|
+
"BINARY_DOUBLE",
|
|
16
|
+
"BIT",
|
|
17
|
+
"BLOB",
|
|
18
|
+
"BOOLEAN",
|
|
19
|
+
"BY",
|
|
20
|
+
"BYTEA",
|
|
21
|
+
"CASCADE",
|
|
22
|
+
"CAST",
|
|
23
|
+
"CHAR",
|
|
24
|
+
"CLOB",
|
|
25
|
+
"CONSTRAINT",
|
|
26
|
+
"CONSTRAINTS",
|
|
27
|
+
"CREATE",
|
|
28
|
+
"DATETIME",
|
|
29
|
+
"DATETIME2",
|
|
30
|
+
"DECIMAL",
|
|
31
|
+
"DECLARE",
|
|
32
|
+
"DEFAULT",
|
|
33
|
+
"DELETE",
|
|
34
|
+
"DIAGNOSTICS",
|
|
35
|
+
"DOUBLE",
|
|
36
|
+
"DROP",
|
|
37
|
+
"EACH",
|
|
38
|
+
"ELSE",
|
|
39
|
+
"END",
|
|
40
|
+
"EXCEPTION",
|
|
41
|
+
"EXECUTE",
|
|
42
|
+
"EXISTS",
|
|
43
|
+
"FALSE",
|
|
44
|
+
"FLOAT",
|
|
45
|
+
"FOR",
|
|
46
|
+
"FOREIGN",
|
|
47
|
+
"FROM",
|
|
48
|
+
"FUNCTION",
|
|
49
|
+
"GENERATED",
|
|
50
|
+
"GET",
|
|
51
|
+
"GETDATE",
|
|
52
|
+
"GETUTCDATE",
|
|
53
|
+
"GO",
|
|
54
|
+
"IDENTITY",
|
|
55
|
+
"IDENTITY_INSERT",
|
|
56
|
+
"IF",
|
|
57
|
+
"IMMEDIATE",
|
|
58
|
+
"IN",
|
|
59
|
+
"INDEX",
|
|
60
|
+
"INNER",
|
|
61
|
+
"INSERT",
|
|
62
|
+
"INT",
|
|
63
|
+
"INTEGER",
|
|
64
|
+
"INTO",
|
|
65
|
+
"JOIN",
|
|
66
|
+
"KEY",
|
|
67
|
+
"LANGUAGE",
|
|
68
|
+
"LAST_INSERT_ID",
|
|
69
|
+
"LOCALTIMESTAMP",
|
|
70
|
+
"LONGBLOB",
|
|
71
|
+
"LONGTEXT",
|
|
72
|
+
"MAX",
|
|
73
|
+
"NCHAR",
|
|
74
|
+
"NEW",
|
|
75
|
+
"NEWID",
|
|
76
|
+
"NOCOUNT",
|
|
77
|
+
"NOT",
|
|
78
|
+
"NOW",
|
|
79
|
+
"NULL",
|
|
80
|
+
"NUMBER",
|
|
81
|
+
"NUMERIC",
|
|
82
|
+
"NVARCHAR",
|
|
83
|
+
"OFF",
|
|
84
|
+
"OLD",
|
|
85
|
+
"ON",
|
|
86
|
+
"OR",
|
|
87
|
+
"ORDER",
|
|
88
|
+
"OTHERS",
|
|
89
|
+
"PRECISION",
|
|
90
|
+
"PRIMARY",
|
|
91
|
+
"PROCEDURE",
|
|
92
|
+
"RAISE",
|
|
93
|
+
"RAW",
|
|
94
|
+
"REAL",
|
|
95
|
+
"REFERENCES",
|
|
96
|
+
"REPLACE",
|
|
97
|
+
"RETURN",
|
|
98
|
+
"RETURNING",
|
|
99
|
+
"RETURNS",
|
|
100
|
+
"ROW",
|
|
101
|
+
"ROWCOUNT",
|
|
102
|
+
"ROW_COUNT",
|
|
103
|
+
"SCOPE_IDENTITY",
|
|
104
|
+
"SELECT",
|
|
105
|
+
"SERIAL",
|
|
106
|
+
"SET",
|
|
107
|
+
"SETOF",
|
|
108
|
+
"SMALLINT",
|
|
109
|
+
"SQLCODE",
|
|
110
|
+
"SYS_EXTRACT_UTC",
|
|
111
|
+
"SYS_GUID",
|
|
112
|
+
"SYSTIMESTAMP",
|
|
113
|
+
"TABLE",
|
|
114
|
+
"TEXT",
|
|
115
|
+
"THEN",
|
|
116
|
+
"TIME",
|
|
117
|
+
"TIMESTAMP",
|
|
118
|
+
"TIMESTAMPTZ",
|
|
119
|
+
"TINYINT",
|
|
120
|
+
"TRIGGER",
|
|
121
|
+
"TRUE",
|
|
122
|
+
"UNIQUE",
|
|
123
|
+
"UNIQUEIDENTIFIER",
|
|
124
|
+
"UNSIGNED",
|
|
125
|
+
"UPDATE",
|
|
126
|
+
"UTC_TIMESTAMP",
|
|
127
|
+
"UUID",
|
|
128
|
+
"VALUES",
|
|
129
|
+
"VARBINARY",
|
|
130
|
+
"VARCHAR",
|
|
131
|
+
"VARCHAR2",
|
|
132
|
+
"WHEN",
|
|
133
|
+
"WHERE",
|
|
134
|
+
"ZONE",
|
|
135
|
+
]);
|
|
136
|
+
const TOKEN = /('(?:''|[^'])*')|("(?:""|[^"])*")|(`(?:``|[^`])*`)|(\[[^\]]*\])|(--[^\n]*)|(\/\*[\s\S]*?\*\/)|([A-Za-z_][A-Za-z0-9_]*)/g;
|
|
137
|
+
/** Rewrite unquoted SQL keywords/types. Quoted idents, strings, and comments stay as-is. */
|
|
138
|
+
export const applyKeywordCasing = (sql, keyword) => sql.replace(TOKEN, (match, _s, _d, _b, _br, _lc, _bc, word) => word !== undefined && SQL_KEYWORDS.has(word.toUpperCase())
|
|
139
|
+
? keyword(word)
|
|
140
|
+
: match);
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { TypeField } from "@deterministic-code/deterministic-generators-common/parser";
|
|
2
|
+
import type { PackCasing } from "./default-casing.js";
|
|
3
|
+
import { type SqlTable } from "./sql-schema.js";
|
|
4
|
+
/** Physical table/column names from datasource `mapping` overlays + pack casing. */
|
|
5
|
+
export declare class SqlMapping {
|
|
6
|
+
private readonly casing;
|
|
7
|
+
private readonly byLogicalName;
|
|
8
|
+
constructor(casing: PackCasing, tables: readonly SqlTable[]);
|
|
9
|
+
tableStem(table: SqlTable): string;
|
|
10
|
+
fieldStem(table: SqlTable, fieldName: string): string;
|
|
11
|
+
tableName(table: SqlTable): string;
|
|
12
|
+
columnName(table: SqlTable, fieldName: string): string;
|
|
13
|
+
constraintName(table: SqlTable, ...parts: string[]): string;
|
|
14
|
+
triggerName(table: SqlTable): string;
|
|
15
|
+
tableOf(logicalName: string): SqlTable;
|
|
16
|
+
resolveReference(references: NonNullable<TypeField["references"]>): {
|
|
17
|
+
tableName: string;
|
|
18
|
+
columnName: string;
|
|
19
|
+
};
|
|
20
|
+
}
|
package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/sql-mapping.js
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { fieldOverlay, referenceTarget, } from "./sql-schema.js";
|
|
2
|
+
/** Physical table/column names from datasource `mapping` overlays + pack casing. */
|
|
3
|
+
export class SqlMapping {
|
|
4
|
+
casing;
|
|
5
|
+
byLogicalName;
|
|
6
|
+
constructor(casing, tables) {
|
|
7
|
+
this.casing = casing;
|
|
8
|
+
this.byLogicalName = new Map(tables.map((t) => [t.name, t]));
|
|
9
|
+
}
|
|
10
|
+
tableStem(table) {
|
|
11
|
+
return table.mapping ?? table.name;
|
|
12
|
+
}
|
|
13
|
+
fieldStem(table, fieldName) {
|
|
14
|
+
return fieldOverlay(table, fieldName)?.mapping ?? fieldName;
|
|
15
|
+
}
|
|
16
|
+
tableName(table) {
|
|
17
|
+
return this.casing.tableName(this.tableStem(table));
|
|
18
|
+
}
|
|
19
|
+
columnName(table, fieldName) {
|
|
20
|
+
return this.casing.columnName(this.fieldStem(table, fieldName));
|
|
21
|
+
}
|
|
22
|
+
constraintName(table, ...parts) {
|
|
23
|
+
return this.casing.constraintName(this.tableStem(table), ...parts);
|
|
24
|
+
}
|
|
25
|
+
triggerName(table) {
|
|
26
|
+
return this.casing.triggerName(this.tableStem(table));
|
|
27
|
+
}
|
|
28
|
+
tableOf(logicalName) {
|
|
29
|
+
const table = this.byLogicalName.get(logicalName);
|
|
30
|
+
if (!table) {
|
|
31
|
+
throw new Error(`foreign key references unknown table "${logicalName}"`);
|
|
32
|
+
}
|
|
33
|
+
return table;
|
|
34
|
+
}
|
|
35
|
+
resolveReference(references) {
|
|
36
|
+
const [logicalTable, logicalCol] = referenceTarget(references);
|
|
37
|
+
const target = this.tableOf(logicalTable);
|
|
38
|
+
return {
|
|
39
|
+
tableName: this.tableName(target),
|
|
40
|
+
columnName: this.columnName(target, logicalCol),
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
}
|
package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/sql-schema.d.ts
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { DatasourceFieldOverlay, DatasourceIndex, DatasourceTable, IDeterministic, Type, TypeField } from "@deterministic-code/deterministic-generators-common/parser";
|
|
2
|
+
/** Flattened `datasource.*` flags. Stored procedures are opt-in `"true"`. */
|
|
3
|
+
export declare const datasourceSettings: (settings: Record<string, string>) => {
|
|
4
|
+
useStoredProcedures: boolean;
|
|
5
|
+
};
|
|
6
|
+
export type SqlTable = Omit<Type, "mapping"> & {
|
|
7
|
+
tableName?: string;
|
|
8
|
+
indexes: DatasourceIndex[];
|
|
9
|
+
uniqueIndexFields: string[];
|
|
10
|
+
mapping?: string;
|
|
11
|
+
overlays: DatasourceFieldOverlay[];
|
|
12
|
+
};
|
|
13
|
+
export type LiveTable = SqlTable & {
|
|
14
|
+
tableName: string;
|
|
15
|
+
};
|
|
16
|
+
export declare const overlayOf: (table: SqlTable) => DatasourceTable;
|
|
17
|
+
export declare const fieldOverlay: (table: SqlTable, fieldName: string) => DatasourceFieldOverlay | undefined;
|
|
18
|
+
export declare const tableIdentity: (table: SqlTable) => string[];
|
|
19
|
+
export declare const isGeneratedIdentity: (table: SqlTable) => boolean;
|
|
20
|
+
export declare const usesGeneratedIdColumn: (table: SqlTable, field: TypeField) => boolean;
|
|
21
|
+
export declare const sqlTablesFrom: (spec: IDeterministic) => SqlTable[];
|
|
22
|
+
export declare const hasAuditColumns: (table: {
|
|
23
|
+
fields: {
|
|
24
|
+
name: string;
|
|
25
|
+
}[];
|
|
26
|
+
}) => boolean;
|
|
27
|
+
export type SqlFile = {
|
|
28
|
+
path: string;
|
|
29
|
+
content: string;
|
|
30
|
+
};
|
|
31
|
+
export declare const referenceTarget: (references: NonNullable<TypeField["references"]>) => [string, string];
|
|
32
|
+
/** Attach physical names and order parent tables before children. */
|
|
33
|
+
export declare const buildLiveTables: (types: SqlTable[], mapping: {
|
|
34
|
+
tableName: (table: SqlTable) => string;
|
|
35
|
+
}) => LiveTable[];
|
package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/common/sql-schema.js
ADDED
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { datasourceTypesOf, dictionaryUniqueColumns, identityColumns, persistedColumnFields, tableByName, } from "@deterministic-code/generators-common/spec-types";
|
|
2
|
+
/** Flattened `datasource.*` flags. Stored procedures are opt-in `"true"`. */
|
|
3
|
+
export const datasourceSettings = (settings) => ({
|
|
4
|
+
useStoredProcedures: String(settings["datasource.use_stored_procedures"]) === "true",
|
|
5
|
+
});
|
|
6
|
+
export const overlayOf = (table) => ({
|
|
7
|
+
name: table.name,
|
|
8
|
+
fields: table.overlays,
|
|
9
|
+
indexes: table.indexes,
|
|
10
|
+
uniqueIndexFields: table.uniqueIndexFields,
|
|
11
|
+
...(table.mapping !== undefined ? { mapping: table.mapping } : {}),
|
|
12
|
+
});
|
|
13
|
+
export const fieldOverlay = (table, fieldName) => table.overlays.find((overlay) => overlay.name === fieldName);
|
|
14
|
+
const GENERATED_ID_TYPES = new Set([
|
|
15
|
+
"integer",
|
|
16
|
+
"biginteger",
|
|
17
|
+
"uuid",
|
|
18
|
+
"string",
|
|
19
|
+
]);
|
|
20
|
+
export const tableIdentity = (table) => {
|
|
21
|
+
const keys = identityColumns(table, overlayOf(table));
|
|
22
|
+
if (keys.length > 1) {
|
|
23
|
+
return keys.every((col) => table.fields.some((f) => f.name === col))
|
|
24
|
+
? keys
|
|
25
|
+
: [];
|
|
26
|
+
}
|
|
27
|
+
const col = keys[0];
|
|
28
|
+
if (col === undefined)
|
|
29
|
+
return [];
|
|
30
|
+
if (table.fields.some((f) => f.name === col) || table.inherits === "set") {
|
|
31
|
+
return [col];
|
|
32
|
+
}
|
|
33
|
+
return [];
|
|
34
|
+
};
|
|
35
|
+
export const isGeneratedIdentity = (table) => {
|
|
36
|
+
const keys = tableIdentity(table);
|
|
37
|
+
if (keys.length !== 1)
|
|
38
|
+
return false;
|
|
39
|
+
return fieldOverlay(table, keys[0])?.isFixedId !== true;
|
|
40
|
+
};
|
|
41
|
+
export const usesGeneratedIdColumn = (table, field) => isGeneratedIdentity(table) &&
|
|
42
|
+
field.name === tableIdentity(table)[0] &&
|
|
43
|
+
GENERATED_ID_TYPES.has(field.type);
|
|
44
|
+
export const sqlTablesFrom = (spec) => {
|
|
45
|
+
const overlays = tableByName(spec);
|
|
46
|
+
const byName = new Map(spec.expandedTypes.map((t) => [t.name, t]));
|
|
47
|
+
return datasourceTypesOf(spec).map((type) => {
|
|
48
|
+
const table = overlays.get(type.name);
|
|
49
|
+
const { mapping: _typeMapping, ...rest } = type;
|
|
50
|
+
const uniqueCols = dictionaryUniqueColumns(type, byName);
|
|
51
|
+
const indexes = [...(table?.indexes ?? [])];
|
|
52
|
+
if (uniqueCols.length > 0 &&
|
|
53
|
+
!indexes.some((idx) => idx.isUnique &&
|
|
54
|
+
idx.fields.length === uniqueCols.length &&
|
|
55
|
+
idx.fields.every((name, i) => name === uniqueCols[i]))) {
|
|
56
|
+
indexes.push({
|
|
57
|
+
name: "owner_key",
|
|
58
|
+
fields: uniqueCols,
|
|
59
|
+
isUnique: true,
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
return {
|
|
63
|
+
...rest,
|
|
64
|
+
fields: persistedColumnFields(type, byName),
|
|
65
|
+
indexes,
|
|
66
|
+
uniqueIndexFields: table?.uniqueIndexFields ?? [],
|
|
67
|
+
...(table?.mapping !== undefined ? { mapping: table.mapping } : {}),
|
|
68
|
+
overlays: table?.fields ?? [],
|
|
69
|
+
};
|
|
70
|
+
});
|
|
71
|
+
};
|
|
72
|
+
export const hasAuditColumns = (table) => table.fields.some((f) => f.name === "created") &&
|
|
73
|
+
table.fields.some((f) => f.name === "updated");
|
|
74
|
+
const referenceParents = (references) => {
|
|
75
|
+
if (references === undefined)
|
|
76
|
+
return [];
|
|
77
|
+
if (Array.isArray(references))
|
|
78
|
+
return [references[0]];
|
|
79
|
+
return [references.split(".")[0]];
|
|
80
|
+
};
|
|
81
|
+
export const referenceTarget = (references) => {
|
|
82
|
+
if (Array.isArray(references))
|
|
83
|
+
return [references[0], references[1]];
|
|
84
|
+
const [table, col] = references.split(".");
|
|
85
|
+
return [table ?? "", col ?? ""];
|
|
86
|
+
};
|
|
87
|
+
const topoSort = (tables) => {
|
|
88
|
+
const names = new Set(tables.map((t) => t.name));
|
|
89
|
+
const deps = new Map(tables.map((t) => [
|
|
90
|
+
t.name,
|
|
91
|
+
new Set(t.fields.flatMap((f) => referenceParents(f.references).filter((dep) => names.has(dep) && dep !== t.name))),
|
|
92
|
+
]));
|
|
93
|
+
const out = [];
|
|
94
|
+
const done = new Set();
|
|
95
|
+
const pending = tables.slice();
|
|
96
|
+
while (pending.length > 0) {
|
|
97
|
+
const idx = pending.findIndex((t) => [...(deps.get(t.name) ?? [])].every((d) => done.has(d)));
|
|
98
|
+
if (idx === -1) {
|
|
99
|
+
out.push(...pending);
|
|
100
|
+
break;
|
|
101
|
+
}
|
|
102
|
+
const [t] = pending.splice(idx, 1);
|
|
103
|
+
out.push(t);
|
|
104
|
+
done.add(t.name);
|
|
105
|
+
}
|
|
106
|
+
return out;
|
|
107
|
+
};
|
|
108
|
+
/** Attach physical names and order parent tables before children. */
|
|
109
|
+
export const buildLiveTables = (types, mapping) => topoSort(types.map((t) => ({
|
|
110
|
+
...t,
|
|
111
|
+
tableName: mapping.tableName(t),
|
|
112
|
+
})));
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export type Json = string | number | boolean | null | Json[] | {
|
|
2
|
+
[key: string]: Json;
|
|
3
|
+
};
|
|
4
|
+
type JsonObject = {
|
|
5
|
+
[key: string]: Json;
|
|
6
|
+
};
|
|
7
|
+
export declare const apply: (before: Json, next: Json) => Json;
|
|
8
|
+
export declare const applyFile: (before: Json | undefined, envelope: Json) => Json | undefined;
|
|
9
|
+
export declare const applyDocument: (before: {
|
|
10
|
+
[path: string]: Json;
|
|
11
|
+
}, doc: {
|
|
12
|
+
[path: string]: Json;
|
|
13
|
+
}) => {
|
|
14
|
+
[path: string]: Json;
|
|
15
|
+
};
|
|
16
|
+
export declare const isObject: (value: Json | undefined) => value is JsonObject;
|
|
17
|
+
export declare const snapshotsEqual: (left: Json | undefined, right: Json | undefined) => boolean;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { isDeepStrictEqual } from "node:util";
|
|
2
|
+
export const apply = (before, next) => {
|
|
3
|
+
if (next == null)
|
|
4
|
+
return before;
|
|
5
|
+
if (isKeyedCollection(before) && isKeyedSplit(next))
|
|
6
|
+
return applyKeyed(before, next);
|
|
7
|
+
if (isObject(before) && isObject(next))
|
|
8
|
+
return applyObject(before, next);
|
|
9
|
+
return next;
|
|
10
|
+
};
|
|
11
|
+
export const applyFile = (before, envelope) => {
|
|
12
|
+
if (envelope == null)
|
|
13
|
+
return before;
|
|
14
|
+
if (isObject(envelope)) {
|
|
15
|
+
if (envelope.removed === true && Object.keys(envelope).length === 1)
|
|
16
|
+
return undefined;
|
|
17
|
+
if (envelope.added === true)
|
|
18
|
+
return envelope.content;
|
|
19
|
+
}
|
|
20
|
+
return apply(before ?? null, envelope);
|
|
21
|
+
};
|
|
22
|
+
export const applyDocument = (before, doc) => {
|
|
23
|
+
const out = { ...before };
|
|
24
|
+
for (const [path, envelope] of Object.entries(doc)) {
|
|
25
|
+
const next = applyFile(out[path], envelope);
|
|
26
|
+
if (next === undefined)
|
|
27
|
+
delete out[path];
|
|
28
|
+
else
|
|
29
|
+
out[path] = next;
|
|
30
|
+
}
|
|
31
|
+
return out;
|
|
32
|
+
};
|
|
33
|
+
const applyKeyed = (beforeVal, split) => {
|
|
34
|
+
const removed = new Set(split.removed ?? []);
|
|
35
|
+
const changed = new Map();
|
|
36
|
+
for (const entry of split.changed ?? []) {
|
|
37
|
+
const key = Object.keys(entry)[0];
|
|
38
|
+
changed.set(key, entry[key]);
|
|
39
|
+
}
|
|
40
|
+
return [
|
|
41
|
+
...beforeVal.flatMap((entry) => {
|
|
42
|
+
const key = Object.keys(entry)[0];
|
|
43
|
+
if (removed.has(key))
|
|
44
|
+
return [];
|
|
45
|
+
return changed.has(key) ? [{ [key]: apply(entry[key], changed.get(key)) }] : [entry];
|
|
46
|
+
}),
|
|
47
|
+
...(split.added ?? []),
|
|
48
|
+
];
|
|
49
|
+
};
|
|
50
|
+
const applyObject = (beforeVal, next) => {
|
|
51
|
+
const removed = new Set(Array.isArray(next.removed) ? next.removed : []);
|
|
52
|
+
const out = {};
|
|
53
|
+
for (const key of Object.keys(beforeVal)) {
|
|
54
|
+
if (removed.has(key))
|
|
55
|
+
continue;
|
|
56
|
+
out[key] = key in next ? apply(beforeVal[key], next[key]) : beforeVal[key];
|
|
57
|
+
}
|
|
58
|
+
for (const key of Object.keys(next)) {
|
|
59
|
+
if (key === "removed" && Array.isArray(next.removed))
|
|
60
|
+
continue;
|
|
61
|
+
if (!(key in beforeVal))
|
|
62
|
+
out[key] = next[key];
|
|
63
|
+
}
|
|
64
|
+
return out;
|
|
65
|
+
};
|
|
66
|
+
const isKeyedSplit = (value) => {
|
|
67
|
+
if (!isObject(value))
|
|
68
|
+
return false;
|
|
69
|
+
const allowed = new Set(["added", "changed", "removed"]);
|
|
70
|
+
return Object.keys(value).every((key) => allowed.has(key));
|
|
71
|
+
};
|
|
72
|
+
export const isObject = (value) => value !== null &&
|
|
73
|
+
value !== undefined &&
|
|
74
|
+
typeof value === "object" &&
|
|
75
|
+
!Array.isArray(value) &&
|
|
76
|
+
Object.getPrototypeOf(value) === Object.prototype;
|
|
77
|
+
const isKeyedCollection = (value) => Array.isArray(value) &&
|
|
78
|
+
value.length > 0 &&
|
|
79
|
+
value.every((item) => item !== null &&
|
|
80
|
+
typeof item === "object" &&
|
|
81
|
+
!Array.isArray(item) &&
|
|
82
|
+
Object.keys(item).length === 1);
|
|
83
|
+
export const snapshotsEqual = (left, right) => isDeepStrictEqual(left ?? null, right ?? null);
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { GenerateContext } from "@deterministic-code/generators-common/generate-context";
|
|
2
|
+
import { type PackCasing } from "./default-casing.js";
|
|
3
|
+
import { type SqlDialect } from "./sql-dialect.js";
|
|
4
|
+
export declare const versionDiffPaths: (settings: Record<string, string>) => string[];
|
|
5
|
+
/** Replay frozen diffs, fail when live types/datasource YAML drifted, emit per-version SQL. */
|
|
6
|
+
export declare const versionMigrationFiles: (dialect: SqlDialect, ctx: GenerateContext, casing: PackCasing, live: {
|
|
7
|
+
typesYaml: string | undefined;
|
|
8
|
+
datasourceYaml: string | undefined;
|
|
9
|
+
}) => Promise<{
|
|
10
|
+
files: {
|
|
11
|
+
path: string;
|
|
12
|
+
content: string;
|
|
13
|
+
}[];
|
|
14
|
+
count: number;
|
|
15
|
+
}>;
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { parse, stringify } from "yaml";
|
|
2
|
+
import { CreateTableStatement } from "@deterministic-code/datasources";
|
|
3
|
+
import { memoryReader } from "@deterministic-code/generators-common/deterministic-reader";
|
|
4
|
+
import { DeterministicParser } from "@deterministic-code/deterministic-generators-common/parser";
|
|
5
|
+
import { applyDocument, isObject, snapshotsEqual } from "./version-apply.js";
|
|
6
|
+
import { createCasing } from "./default-casing.js";
|
|
7
|
+
import { SqlMapping } from "./sql-mapping.js";
|
|
8
|
+
import { buildLiveTables, sqlTablesFrom } from "./sql-schema.js";
|
|
9
|
+
import { renderSql } from "./sql-dialect.js";
|
|
10
|
+
import { schemaDiff } from "./schema-diff.js";
|
|
11
|
+
import { seedSections } from "./seed-generator.js";
|
|
12
|
+
import { byGroupsFromDatasource } from "./datasource-by-fields.js";
|
|
13
|
+
import { procedureStatementsForTable } from "./generate-procedures.js";
|
|
14
|
+
import { datasourceSettings, hasAuditColumns } from "./sql-schema.js";
|
|
15
|
+
const versionDiff = /^version-\d{8}T\d{6}Z-\d{3}\/diff\.yaml$/;
|
|
16
|
+
const defaultDatasourceYaml = `version: 1.0.0
|
|
17
|
+
includes:
|
|
18
|
+
- types:
|
|
19
|
+
filter: tag == "datasource_type" || tag == "view_type"
|
|
20
|
+
types: []
|
|
21
|
+
`;
|
|
22
|
+
export const versionDiffPaths = (settings) => (settings["version.diffs"] ?? "")
|
|
23
|
+
.split("\n")
|
|
24
|
+
.map((path) => path.trim())
|
|
25
|
+
.filter((path) => versionDiff.test(path));
|
|
26
|
+
const asDocument = (value, source) => isObject(value) ? value : (() => { throw new Error(`${source}: expected a mapping`); })();
|
|
27
|
+
const filesOf = (snapshot) => {
|
|
28
|
+
const files = {};
|
|
29
|
+
for (const [path, value] of Object.entries(snapshot))
|
|
30
|
+
files[path] = stringify(value);
|
|
31
|
+
files["datasource.yaml"] ??= defaultDatasourceYaml;
|
|
32
|
+
return files;
|
|
33
|
+
};
|
|
34
|
+
const compile = async (snapshot, settings) => {
|
|
35
|
+
const spec = await DeterministicParser(memoryReader(filesOf(snapshot))).parse(settings);
|
|
36
|
+
const types = sqlTablesFrom(spec);
|
|
37
|
+
const mapping = new SqlMapping(createCasing(settings), types);
|
|
38
|
+
return { tables: buildLiveTables(types, mapping), mapping, seeds: spec.datasourceSeeds };
|
|
39
|
+
};
|
|
40
|
+
const emptySnapshot = (settings) => compile({}, settings);
|
|
41
|
+
const pad = (n) => String(n).padStart(4, "0");
|
|
42
|
+
const renderAll = (dialect, statements) => statements
|
|
43
|
+
.map((statement) => renderSql(dialect, statement))
|
|
44
|
+
.filter((sql) => sql !== "")
|
|
45
|
+
.join("\n");
|
|
46
|
+
/** Replay frozen diffs, fail when live types/datasource YAML drifted, emit per-version SQL. */
|
|
47
|
+
export const versionMigrationFiles = async (dialect, ctx, casing, live) => {
|
|
48
|
+
const paths = versionDiffPaths(ctx.settings);
|
|
49
|
+
if (paths.length === 0)
|
|
50
|
+
return { files: [], count: 0 };
|
|
51
|
+
let before = {};
|
|
52
|
+
const snapshots = [];
|
|
53
|
+
for (const path of paths) {
|
|
54
|
+
const text = await ctx.reader.read(path);
|
|
55
|
+
if (text === "")
|
|
56
|
+
continue;
|
|
57
|
+
before = applyDocument(before, asDocument(parse(text), path));
|
|
58
|
+
snapshots.push(before);
|
|
59
|
+
}
|
|
60
|
+
if (snapshots.length === 0)
|
|
61
|
+
return { files: [], count: 0 };
|
|
62
|
+
const last = snapshots[snapshots.length - 1];
|
|
63
|
+
const liveTypes = live.typesYaml === undefined ? undefined : parse(live.typesYaml);
|
|
64
|
+
const liveDatasource = parse(live.datasourceYaml ?? defaultDatasourceYaml);
|
|
65
|
+
const snapshotDatasource = last["datasource.yaml"] ?? parse(defaultDatasourceYaml);
|
|
66
|
+
if (!snapshotsEqual(last["types.yaml"], liveTypes) || !snapshotsEqual(snapshotDatasource, liveDatasource)) {
|
|
67
|
+
throw new Error("types.yaml or datasource.yaml differs from the frozen version diffs; run datasources version first");
|
|
68
|
+
}
|
|
69
|
+
const files = [];
|
|
70
|
+
let previous = await emptySnapshot(ctx.settings);
|
|
71
|
+
let number = 0;
|
|
72
|
+
for (const [index, snapshot] of snapshots.entries()) {
|
|
73
|
+
const current = await compile(snapshot, ctx.settings);
|
|
74
|
+
const up = [
|
|
75
|
+
...schemaDiff(dialect, previous, current),
|
|
76
|
+
...procedureDiff(dialect, ctx.settings, previous, current),
|
|
77
|
+
];
|
|
78
|
+
const down = [
|
|
79
|
+
...schemaDiff(dialect, current, previous),
|
|
80
|
+
...procedureDiff(dialect, ctx.settings, current, previous),
|
|
81
|
+
];
|
|
82
|
+
if (up.length === 0 && down.length === 0) {
|
|
83
|
+
previous = current;
|
|
84
|
+
continue;
|
|
85
|
+
}
|
|
86
|
+
number += 1;
|
|
87
|
+
const seeds = index === 0 && up.some((statement) => statement instanceof CreateTableStatement)
|
|
88
|
+
? seedSections(dialect, current.tables, current.seeds, current.mapping)
|
|
89
|
+
: [];
|
|
90
|
+
const upSql = [
|
|
91
|
+
`-- Generated migration for ${dialect}`,
|
|
92
|
+
renderAll(dialect, up),
|
|
93
|
+
...(seeds.length ? ["", "-- Seed data", ...seeds] : []),
|
|
94
|
+
]
|
|
95
|
+
.filter((line) => line !== "")
|
|
96
|
+
.join("\n");
|
|
97
|
+
const downSql = [`-- Rollback migration for ${dialect}`, renderAll(dialect, down)].join("\n");
|
|
98
|
+
files.push({
|
|
99
|
+
path: `${pad(number)}_up.sql`,
|
|
100
|
+
content: finalize(upSql, casing),
|
|
101
|
+
});
|
|
102
|
+
files.push({
|
|
103
|
+
path: `${pad(number)}_down.sql`,
|
|
104
|
+
content: finalize(downSql, casing),
|
|
105
|
+
});
|
|
106
|
+
previous = current;
|
|
107
|
+
}
|
|
108
|
+
return { files, count: number };
|
|
109
|
+
};
|
|
110
|
+
const fieldsOf = (table) => JSON.stringify(table.fields.map((field) => [field.name, field.type, field.size ?? null]));
|
|
111
|
+
const procedureDiff = (dialect, settings, before, after) => {
|
|
112
|
+
if (!datasourceSettings(settings).useStoredProcedures)
|
|
113
|
+
return [];
|
|
114
|
+
const casing = createCasing(settings);
|
|
115
|
+
const previous = new Map(before.tables.map((table) => [table.name, table]));
|
|
116
|
+
const groups = byGroupsFromDatasource(after.tables);
|
|
117
|
+
return after.tables.flatMap((table) => {
|
|
118
|
+
const prior = previous.get(table.name);
|
|
119
|
+
if (prior === undefined || !hasAuditColumns(table) || fieldsOf(prior) === fieldsOf(table))
|
|
120
|
+
return [];
|
|
121
|
+
return procedureStatementsForTable(dialect, table, after.mapping, casing, groups.get(table.name) ?? []).statements;
|
|
122
|
+
});
|
|
123
|
+
};
|
|
124
|
+
const finalize = (text, casing) => {
|
|
125
|
+
const out = casing.applyKeywords(text.replace(/\n{3,}/g, "\n\n"));
|
|
126
|
+
return out.endsWith("\n") ? out : `${out}\n`;
|
|
127
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const sqliteTypeConverter: import("datasources/dist/index.js").IMapping<string, string> & import("datasources/dist/index.js").DeterministicTypeConverter;
|
|
2
|
+
export declare const sqliteDefaultValueConverter: import("datasources/dist/index.js").DefaultValueConverter;
|
|
3
|
+
export declare const mysqlTypeConverter: import("datasources/dist/index.js").IMapping<string, string> & import("datasources/dist/index.js").DeterministicTypeConverter;
|
|
4
|
+
export declare const mysqlDefaultValueConverter: import("datasources/dist/index.js").DefaultValueConverter;
|
|
5
|
+
export declare const postgresTypeConverter: import("datasources/dist/index.js").IMapping<string, string> & import("datasources/dist/index.js").DeterministicTypeConverter;
|
|
6
|
+
export declare const postgresDefaultValueConverter: import("datasources/dist/index.js").DefaultValueConverter;
|
|
7
|
+
export declare const oracleTypeConverter: import("datasources/dist/index.js").IMapping<string, string> & import("datasources/dist/index.js").DeterministicTypeConverter;
|
|
8
|
+
export declare const oracleDefaultValueConverter: import("datasources/dist/index.js").DefaultValueConverter;
|
|
9
|
+
export declare const sqlserverTypeConverter: import("datasources/dist/index.js").IMapping<string, string> & import("datasources/dist/index.js").DeterministicTypeConverter;
|
|
10
|
+
export declare const sqlserverDefaultValueConverter: import("datasources/dist/index.js").DefaultValueConverter;
|
package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/dialect-converters.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { dialectDriver } from "./common/sql-dialect.js";
|
|
2
|
+
const sqlite = dialectDriver("sqlite");
|
|
3
|
+
const mysql = dialectDriver("mysql");
|
|
4
|
+
const postgres = dialectDriver("postgres");
|
|
5
|
+
const oracle = dialectDriver("oracle");
|
|
6
|
+
const sqlserver = dialectDriver("sqlserver");
|
|
7
|
+
export const sqliteTypeConverter = sqlite.typeConverter;
|
|
8
|
+
export const sqliteDefaultValueConverter = sqlite.defaultValueConverter;
|
|
9
|
+
export const mysqlTypeConverter = mysql.typeConverter;
|
|
10
|
+
export const mysqlDefaultValueConverter = mysql.defaultValueConverter;
|
|
11
|
+
export const postgresTypeConverter = postgres.typeConverter;
|
|
12
|
+
export const postgresDefaultValueConverter = postgres.defaultValueConverter;
|
|
13
|
+
export const oracleTypeConverter = oracle.typeConverter;
|
|
14
|
+
export const oracleDefaultValueConverter = oracle.defaultValueConverter;
|
|
15
|
+
export const sqlserverTypeConverter = sqlserver.typeConverter;
|
|
16
|
+
export const sqlserverDefaultValueConverter = sqlserver.defaultValueConverter;
|
package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/generate-sql.d.ts
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { GenerateContext } from "@deterministic-code/generators-common/generate-context";
|
|
2
|
+
import type { GenerateEntry } from "@deterministic-code/generators-common/generate-entry";
|
|
3
|
+
/** DDL + custom migrations (+ stored procedures when enabled) for each dialect. */
|
|
4
|
+
export declare const generate: (ctx: GenerateContext, dialects: readonly string[]) => Promise<GenerateEntry[]>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { generateSqlFor } from "./common/generate-sql.js";
|
|
2
|
+
import { requireDialect } from "./common/sql-dialect.js";
|
|
3
|
+
/** DDL + custom migrations (+ stored procedures when enabled) for each dialect. */
|
|
4
|
+
export const generate = async (ctx, dialects) => {
|
|
5
|
+
const entries = [];
|
|
6
|
+
for (const dialect of dialects) {
|
|
7
|
+
entries.push(...(await generateSqlFor(requireDialect(dialect), ctx)));
|
|
8
|
+
}
|
|
9
|
+
return entries;
|
|
10
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { GenerateContext } from "@deterministic-code/generators-common/generate-context";
|
|
2
|
+
import type { GenerateEntry } from "@deterministic-code/generators-common/generate-entry";
|
|
3
|
+
/** Stored-procedure migrations for dialects that support them. */
|
|
4
|
+
export declare const generate: (ctx: GenerateContext, dialects: readonly string[]) => Promise<GenerateEntry[]>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { generateProceduresForDialect } from "./common/generate-procedures.js";
|
|
2
|
+
import { requireDialect } from "./common/sql-dialect.js";
|
|
3
|
+
/** Stored-procedure migrations for dialects that support them. */
|
|
4
|
+
export const generate = async (ctx, dialects) => {
|
|
5
|
+
const entries = [];
|
|
6
|
+
for (const dialect of dialects) {
|
|
7
|
+
entries.push(...(await generateProceduresForDialect(requireDialect(dialect), ctx)));
|
|
8
|
+
}
|
|
9
|
+
return entries;
|
|
10
|
+
};
|
package/node_modules/@deterministic-code/datasources-code-generators/dist/sql/resources/sql.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const migrationUpTmpl: string, migrationDownTmpl: string;
|