feat: define link util (#7931)
* feat: define link util * handle pluralized fieldAlias for isList * serviceName ar reference * finalize * todo * WIP * finalize * fix tests * update typings * fix Module * linkable * update errors
This commit is contained in:
1 parent
9b1688944e
commit
41c4307fc7
26 files changed
+523
-341
No files matched your search
@@ -72,7 +72,7 @@ describe("Entity builder", () => {
|
||||
phones: model.array(),
|
||||
})
|
||||
|
||||
expect(user.name).toEqual("User")
|
||||
expect(user.name).toEqual("user")
|
||||
expect(user.parse().tableName).toEqual("user")
|
||||
|
||||
const User = toMikroORMEntity(user)
|
||||
@@ -202,7 +202,7 @@ describe("Entity builder", () => {
|
||||
}
|
||||
)
|
||||
|
||||
expect(user.name).toEqual("User")
|
||||
expect(user.name).toEqual("user")
|
||||
expect(user.parse().tableName).toEqual("user_table")
|
||||
|
||||
const User = toMikroORMEntity(user)
|
||||
@@ -324,7 +324,7 @@ describe("Entity builder", () => {
|
||||
}
|
||||
)
|
||||
|
||||
expect(user.name).toEqual("UserRole")
|
||||
expect(user.name).toEqual("userRole")
|
||||
expect(user.parse().tableName).toEqual("user_role")
|
||||
|
||||
const User = toMikroORMEntity(user)
|
||||
@@ -3849,7 +3849,7 @@ describe("Entity builder", () => {
|
||||
})
|
||||
|
||||
expect(defineEmail).toThrow(
|
||||
'Cannot cascade delete "user" relationship(s) from "Email" entity. Child to parent cascades are not allowed'
|
||||
'Cannot cascade delete "user" relationship(s) from "email" entity. Child to parent cascades are not allowed'
|
||||
)
|
||||
})
|
||||
|
||||
|
||||
@@ -109,7 +109,7 @@ export class EntityBuilder {
|
||||
*
|
||||
* export default MyCustom
|
||||
*/
|
||||
define<Schema extends DMLSchema, TConfig extends IDmlEntityConfig>(
|
||||
define<Schema extends DMLSchema, const TConfig extends IDmlEntityConfig>(
|
||||
nameOrConfig: TConfig,
|
||||
schema: Schema
|
||||
): DmlEntity<
|
||||
|
||||
@@ -9,11 +9,11 @@ import {
|
||||
IsDmlEntity,
|
||||
QueryCondition,
|
||||
} from "@medusajs/types"
|
||||
import { isObject, isString, toCamelCase, upperCaseFirst } from "../common"
|
||||
import { isObject, isString, toCamelCase } from "../common"
|
||||
import { transformIndexWhere } from "./helpers/entity-builder/build-indexes"
|
||||
import { BelongsTo } from "./relations/belongs-to"
|
||||
|
||||
function extractNameAndTableName<Config extends IDmlEntityConfig>(
|
||||
function extractNameAndTableName<const Config extends IDmlEntityConfig>(
|
||||
nameOrConfig: Config
|
||||
) {
|
||||
const result = {
|
||||
@@ -27,9 +27,8 @@ function extractNameAndTableName<Config extends IDmlEntityConfig>(
|
||||
if (isString(nameOrConfig)) {
|
||||
const [schema, ...rest] = nameOrConfig.split(".")
|
||||
const name = rest.length ? rest.join(".") : schema
|
||||
result.name = upperCaseFirst(
|
||||
toCamelCase(name)
|
||||
) as InferDmlEntityNameFromConfig<Config>
|
||||
result.name = toCamelCase(name) as InferDmlEntityNameFromConfig<Config>
|
||||
|
||||
result.tableName = nameOrConfig
|
||||
}
|
||||
|
||||
@@ -44,9 +43,7 @@ function extractNameAndTableName<Config extends IDmlEntityConfig>(
|
||||
const [schema, ...rest] = potentialName.split(".")
|
||||
const name = rest.length ? rest.join(".") : schema
|
||||
|
||||
result.name = upperCaseFirst(
|
||||
toCamelCase(name)
|
||||
) as InferDmlEntityNameFromConfig<Config>
|
||||
result.name = toCamelCase(name) as InferDmlEntityNameFromConfig<Config>
|
||||
result.tableName = nameOrConfig.tableName
|
||||
}
|
||||
|
||||
@@ -59,7 +56,7 @@ function extractNameAndTableName<Config extends IDmlEntityConfig>(
|
||||
*/
|
||||
export class DmlEntity<
|
||||
Schema extends DMLSchema,
|
||||
TConfig extends IDmlEntityConfig
|
||||
const TConfig extends IDmlEntityConfig
|
||||
> implements IDmlEntity<Schema, TConfig>
|
||||
{
|
||||
[IsDmlEntity]: true = true
|
||||
|
||||
Reference in new issue
Block a user