Skip to content

DBX-6628 Properly expose model structure types from @dbml/core#816

Merged
huydo862003 merged 7 commits intomasterfrom
chore/properly-expose-types-from-@dbml/core
Feb 6, 2026
Merged

DBX-6628 Properly expose model structure types from @dbml/core#816
huydo862003 merged 7 commits intomasterfrom
chore/properly-expose-types-from-@dbml/core

Conversation

@huydo862003
Copy link
Copy Markdown
Contributor

@huydo862003 huydo862003 commented Feb 5, 2026

Summary

  • #DBX-6628
  • Update normalized model structure types to match dbx-utils.
  • Export these types in types/index.d.ts, which were previously unexported, so dbx apps have to workaround by import type {} from '@dbml/core/types/...'. Now, the types can be imported by import type {} from '@dbml/core' alone.
  • Next step: Migrate the dbx apps away from dbx-utils types & workaround imports. Directly consume @dbml/core types.

Issue

(issue link here)

Lasting Changes (Technical)

(please list down: code changes/things that have wide-effect; new libraries/functions added that can be used by others; examples below)

  • (Added class EmailValidator to validate email address' validity)
  • (Added Tenant#is_trial? check)

Checklist

Please check directly on the box once each of these are done

  • Documentation (if necessary)
  • Lint Checks Passed
  • Unit Tests Passed
  • Coverage Tests Passed
  • Integration Tests Passed
  • Code Review

@linear
Copy link
Copy Markdown

linear Bot commented Feb 5, 2026

@huydo862003 huydo862003 force-pushed the chore/properly-expose-types-from-@dbml/core branch from a585a87 to 7411724 Compare February 5, 2026 11:19
Comment thread packages/dbml-core/types/model_structure/field.d.ts
@huydo862003 huydo862003 force-pushed the chore/properly-expose-types-from-@dbml/core branch from 4bd5428 to 0333110 Compare February 6, 2026 05:23
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Feb 6, 2026

Coverage Report

Commit: f5cafa6

📊 View detailed HTML coverage reports

Overall Coverage

Metric Coverage
Lines ✅ 87.10% (7695/8835)
Statements ✅ 86.67% (8235/9502)
Functions ✅ 90.43% (1985/2195)
Branches ⚠️ 76.99% (3867/5023)

Package Coverage

Package Lines Statements Functions Branches
@dbml/dbml-cli ✅ 100.00% ✅ 100.00% ✅ 100.00% ✅ 100.00%
@dbml/dbml-connector ⚠️ 64.58% ⚠️ 64.29% ⚠️ 59.53% ⚠️ 59.13%
@dbml/dbml-core ✅ 90.94% ✅ 89.97% ✅ 91.37% ⚠️ 77.20%
@dbml/dbml-parse ✅ 88.87% ✅ 88.79% ✅ 94.72% ✅ 80.46%

⚠️ Coverage Warnings

The following packages have coverage below 80%:

  • @dbml/dbml-connector: 64.58% line coverage

Files with Coverage Below 80%

@dbml/dbml-connector

9 file(s) below 80% coverage
File Lines Statements Functions Branches
src/connectors/bigquery/index.ts 0.00% 0.00% 0.00% 0.00%
src/utils/credential-loader.ts 0.00% 0.00% 0.00% 0.00%
src/utils/helpers.ts 0.00% 0.00% 0.00% 0.00%
src/connectors/snowflake/index.ts 10.56% 10.31% 0.00% 0.00%
src/utils/parseSchema.ts 46.15% 42.85% 28.57% 27.27%
src/connectors/connector.ts 66.66% 66.66% 100.00% 57.14%
src/connectors/oracle/tables.ts 71.25% 66.30% 100.00% 56.96%
src/connectors/oracle/index.ts 80.00% 80.76% 100.00% 25.00%
src/connectors/oracle/utils.ts 85.71% 85.71% 100.00% 71.42%

@dbml/dbml-core

29 file(s) below 80% coverage
File Lines Statements Functions Branches
src/parse/error.js 0.00% 0.00% 0.00% 0.00%
src/parse/ANTLR/ASTGeneration/SyntaxError.js 0.00% 0.00% 0.00% 0.00%
src/transform/index.js 0.00% 0.00% 0.00% 100.00%
src/utils/version.js 0.00% 0.00% 100.00% 100.00%
src/model_structure/element.js 16.66% 16.66% 25.00% 0.00%
src/parse/databaseGenerator.js 18.42% 17.94% 0.00% 0.00%
src/import/index.js 50.00% 50.00% 50.00% 100.00%
src/model_structure/utils.js 50.00% 50.00% 50.00% 0.00%
src/export/JsonExporter.js 66.66% 66.66% 100.00% 33.33%
src/parse/ANTLR/ASTGeneration/ParserErrorListener.js 66.66% 66.66% 50.00% 100.00%
src/parse/Parser.js 67.30% 64.81% 62.50% 61.90%
src/export/utils.js 73.17% 73.80% 90.00% 54.54%
src/model_structure/schema.js 76.11% 78.94% 86.04% 32.35%
src/model_structure/tableGroup.js 80.64% 81.25% 80.00% 38.09%
src/export/ModelExporter.js 82.35% 82.35% 100.00% 58.33%
src/parse/ANTLR/ASTGeneration/oraclesql/OracleSQLASTGen.js 85.88% 84.21% 92.94% 70.23%
src/parse/ANTLR/ASTGeneration/mssql/MssqlASTGen.js 86.30% 84.32% 90.81% 68.27%
src/model_structure/enum.js 90.90% 91.66% 100.00% 33.33%
src/parse/ANTLR/ASTGeneration/AST.js 91.11% 91.11% 76.47% 77.77%
src/model_structure/check.js 92.30% 92.30% 83.33% 66.66%
src/model_structure/endpoint.js 92.85% 94.00% 100.00% 65.38%
src/model_structure/enumValue.js 92.85% 92.85% 100.00% 75.00%
src/model_structure/tablePartial.js 92.85% 92.85% 80.00% 77.77%
src/model_structure/ref.js 93.33% 93.54% 100.00% 69.23%
src/model_structure/table.js 94.25% 91.91% 97.67% 61.01%
src/model_structure/indexes.js 96.55% 96.77% 100.00% 72.72%
src/parse/ANTLR/ASTGeneration/index.js 98.21% 90.16% 100.00% 62.50%
src/model_structure/stickyNote.js 100.00% 100.00% 100.00% 0.00%
src/parse/ANTLR/ASTGeneration/helpers.js 100.00% 83.33% 100.00% 75.00%

@dbml/dbml-parse

32 file(s) below 80% coverage
File Lines Statements Functions Branches
src/compiler/queries/container/scope.ts 0.00% 0.00% 0.00% 100.00%
__tests__/utils/testHelpers.ts 11.76% 21.05% 50.00% 0.00%
src/core/interpreter/elementInterpreter/project.ts 51.42% 51.42% 100.00% 45.45%
src/core/analyzer/symbol/utils.ts 56.52% 56.52% 100.00% 50.00%
src/compiler/queries/parse.ts 60.00% 60.00% 60.00% 100.00%
src/core/analyzer/binder/elementBinder/note.ts 62.50% 64.70% 83.33% 50.00%
src/services/suggestions/utils.ts 65.21% 65.21% 100.00% 56.00%
src/compiler/queries/token.ts 66.66% 66.66% 66.66% 100.00%
src/core/analyzer/validator/elementValidators/indexes.ts 72.00% 72.83% 90.90% 57.69%
src/core/analyzer/binder/elementBinder/enum.ts 72.22% 73.68% 100.00% 62.50%
src/core/analyzer/validator/elementValidators/note.ts 72.54% 70.90% 76.92% 68.75%
src/core/parser/utils.ts 74.64% 75.34% 100.00% 83.07%
src/core/analyzer/analyzer.ts 75.00% 66.66% 60.00% 100.00%
src/core/utils.ts 75.86% 75.00% 72.72% 56.66%
src/core/analyzer/symbol/symbolIndex.ts 76.92% 77.50% 92.85% 50.00%
src/core/analyzer/binder/elementBinder/project.ts 77.77% 78.94% 100.00% 50.00%
src/core/analyzer/validator/elementValidators/checks.ts 77.77% 79.31% 93.75% 71.87%
src/core/analyzer/validator/elementValidators/project.ts 78.12% 78.78% 100.00% 56.25%
src/core/analyzer/utils.ts 78.16% 77.27% 86.66% 76.71%
src/core/analyzer/binder/elementBinder/ref.ts 78.78% 80.00% 90.90% 75.00%
src/core/analyzer/binder/elementBinder/indexes.ts 79.06% 77.77% 90.90% 68.18%
src/core/analyzer/binder/elementBinder/tableGroup.ts 80.00% 80.64% 100.00% 50.00%
src/compiler/queries/container/token.ts 83.33% 85.71% 100.00% 75.00%
src/core/analyzer/validator/elementValidators/tablePartial.ts 83.43% 80.72% 87.23% 64.28%
src/core/analyzer/binder/elementBinder/tablePartial.ts 86.00% 86.53% 100.00% 69.23%
src/core/parser/parser.ts 86.34% 86.51% 100.00% 78.65%
src/compiler/queries/symbol.ts 91.30% 92.00% 100.00% 78.57%
__tests__/utils/compiler.ts 92.63% 92.53% 100.00% 70.00%
src/core/serialization/serialize.ts 93.33% 93.33% 66.66% 94.11%
src/core/interpreter/elementInterpreter/sticky_note.ts 95.00% 95.23% 100.00% 66.66%
src/core/analyzer/symbol/symbolTable.ts 100.00% 100.00% 100.00% 75.00%
src/services/definition/provider.ts 100.00% 100.00% 100.00% 75.00%

@huydo862003 huydo862003 merged commit 1cbe269 into master Feb 6, 2026
4 checks passed
@huydo862003 huydo862003 deleted the chore/properly-expose-types-from-@dbml/core branch February 6, 2026 07:12
@huydo862003 huydo862003 added the PR: Internal 🏡 A type of pull request used for changelog categories label Feb 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

PR: Internal 🏡 A type of pull request used for changelog categories

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants