Skip to content

Commit a327f91

Browse files
authored
TS: fix sourceName in table schema (#4449)
# Description of Changes fixes: #4433. Test will be added in: https://github.com/clockworklabs/SpacetimeDB/pull/4450/changes # API and ABI breaking changes NA # Expected complexity level and risk 2
1 parent 6fea15f commit a327f91

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

crates/bindings-typescript/src/lib/schema.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,10 @@ export function tableToSchema<
9191

9292
type AllowedCol = keyof T['rowType']['row'] & string;
9393
return {
94-
sourceName: accName,
94+
// For client,`schama.tableName` will always be there as canonical name.
95+
// For module, if explicit name is not provided via `name`, accessor name will
96+
// be used, it is stored as alias in database, hence works in query builder.
97+
sourceName: schema.tableName || accName,
9598
accessorName: accName,
9699
columns: schema.rowType.row, // typed as T[i]['rowType']['row'] under TablesToSchema<T>
97100
rowType: schema.rowSpacetimeType,

crates/codegen/src/rust.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -671,7 +671,7 @@ pub struct {cols_struct} {{"
671671
)?;
672672

673673
for element in &product_def.elements {
674-
let field_name = &element.0;
674+
let field_name = &element.0.deref().to_case(Case::Snake);
675675
let field_type = type_name(module, &element.1);
676676
writeln!(
677677
out,
@@ -690,7 +690,7 @@ impl __sdk::__query_builder::HasCols for {struct_name} {{
690690
{cols_struct} {{"
691691
)?;
692692
for element in &product_def.elements {
693-
let field_name = &element.0;
693+
let field_name = &element.0.deref().to_case(Case::Snake);
694694
writeln!(
695695
out,
696696
" {field_name}: __sdk::__query_builder::Col::new(table_name, {field_name:?}),"

0 commit comments

Comments
 (0)