mirror of
https://github.com/shishantbiswas/bknd.git
synced 2026-03-16 04:27:21 +00:00
fix: update OneToOneRelation and PolymorphicRelation configurations
Enhanced OneToOneRelation to allow source to create target with a mapping field and added a limit. Updated PolymorphicRelation to return a TextField for entity_id instead of NumberField, improving type consistency.
This commit is contained in:
@@ -40,7 +40,7 @@
|
|||||||
"test:coverage": "ALL_TESTS=1 bun test --bail --coverage",
|
"test:coverage": "ALL_TESTS=1 bun test --bail --coverage",
|
||||||
"test:vitest:coverage": "vitest run --coverage",
|
"test:vitest:coverage": "vitest run --coverage",
|
||||||
"test:e2e": "playwright test",
|
"test:e2e": "playwright test",
|
||||||
"test:e2e:adapters": "bun run e2e/adapters.ts",
|
"test:e2e:adapters": "NODE_NO_WARNINGS=1 bun run e2e/adapters.ts",
|
||||||
"test:e2e:ui": "VITE_DB_URL=:memory: playwright test --ui",
|
"test:e2e:ui": "VITE_DB_URL=:memory: playwright test --ui",
|
||||||
"test:e2e:debug": "VITE_DB_URL=:memory: playwright test --debug",
|
"test:e2e:debug": "VITE_DB_URL=:memory: playwright test --debug",
|
||||||
"test:e2e:report": "VITE_DB_URL=:memory: playwright show-report",
|
"test:e2e:report": "VITE_DB_URL=:memory: playwright show-report",
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import { type RelationType, RelationTypes } from "./relation-types";
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Both source and target receive a mapping field
|
* Both source and target receive a mapping field
|
||||||
|
* Source gets the mapping field, and can $create the target
|
||||||
* @todo: determine if it should be removed
|
* @todo: determine if it should be removed
|
||||||
*/
|
*/
|
||||||
export type OneToOneRelationConfig = ManyToOneRelationConfig;
|
export type OneToOneRelationConfig = ManyToOneRelationConfig;
|
||||||
@@ -17,6 +18,7 @@ export class OneToOneRelation extends ManyToOneRelation {
|
|||||||
inversedBy,
|
inversedBy,
|
||||||
sourceCardinality: 1,
|
sourceCardinality: 1,
|
||||||
required,
|
required,
|
||||||
|
with_limit: 1,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -102,8 +102,8 @@ export class PolymorphicRelation extends EntityRelation<typeof PolymorphicRelati
|
|||||||
return new TextField("reference", { hidden: true, fillable: ["create"] });
|
return new TextField("reference", { hidden: true, fillable: ["create"] });
|
||||||
}
|
}
|
||||||
|
|
||||||
getEntityIdField(): NumberField {
|
getEntityIdField(): TextField {
|
||||||
return new NumberField("entity_id", { hidden: true, fillable: ["create"] });
|
return new TextField("entity_id", { hidden: true, fillable: ["create"] });
|
||||||
}
|
}
|
||||||
|
|
||||||
initialize(em: EntityManager<any>) {
|
initialize(em: EntityManager<any>) {
|
||||||
|
|||||||
Reference in New Issue
Block a user