Skip to main content

QEntity

@quik/entity


@quik/entity / QEntity

Abstract Class: QEntity

Defined in: entity/src/QEntity.ts:24

Base class for all entity objects in the system.

Provides core functionality for entity lifecycle management, data validation, serialization, and state tracking.

Extended by

Constructors

Constructor

new QEntity(): QEntity

Returns

QEntity

Properties

_cachedDefaults?

protected optional _cachedDefaults?: Record<string, any>

Defined in: entity/src/QEntity.ts:45

Default values for entity fields based on field definitions.


_definition

protected _definition: QEntityDefinition

Defined in: entity/src/QEntity.ts:95

Definition of entity fields and their metadata.


_entityName

protected _entityName: string

Defined in: entity/src/QEntity.ts:83

Name of the entity type.


_hooks

protected _hooks: QEntityHook

Defined in: entity/src/QEntity.ts:133

Collection of registered lifecycle hooks for this entity.


_initialFill

protected _initialFill: boolean = false

Defined in: entity/src/QEntity.ts:33

Flag indicating if entity is being initially filled.


_isFillMethodActive

protected _isFillMethodActive: boolean = false

Defined in: entity/src/QEntity.ts:121

Flag indicating if the fill method is currently executing.


_modifiedFields

protected _modifiedFields: string[]

Defined in: entity/src/QEntity.ts:41

List of field names that have been modified since creation.


_rowState

protected _rowState: QRowState

Defined in: entity/src/QEntity.ts:50

Current state of the entity row (created, modified, deleted, etc).


_runHooks

protected _runHooks: boolean = true

Defined in: entity/src/QEntity.ts:37

Flag controlling whether lifecycle hooks should be executed.


_sealed

protected _sealed: boolean = false

Defined in: entity/src/QEntity.ts:71

Flag to mark an object as sealed.


Entity

readonly static Entity: "QEntity" = "QEntity"

Defined in: entity/src/QEntity.ts:28

Entity name identifier, used for metadata lookup.

Accessors

canRunHooks

Get Signature

get protected canRunHooks(): boolean

Defined in: entity/src/QEntity.ts:145

Gets whether lifecycle hooks can be executed.

Returns

boolean


defaultValues

Get Signature

get protected defaultValues(): Record<string, any>

Defined in: entity/src/QEntity.ts:163

Returns

Record<string, any>


definition

Get Signature

get definition(): QEntityDefinition

Defined in: entity/src/QEntity.ts:100

Gets the entity field definitions.

Returns

QEntityDefinition


entityName

Get Signature

get entityName(): string

Defined in: entity/src/QEntity.ts:88

Gets the entity type name.

Returns

string


fields

Get Signature

get fields(): string[]

Defined in: entity/src/QEntity.ts:107

Gets the list of field names defined on this entity.

Returns

string[]


hooks

Get Signature

get protected hooks(): QEntityHook

Defined in: entity/src/QEntity.ts:138

Gets the registered lifecycle hooks.

Returns

QEntityHook


isFillMethodActive

Get Signature

get protected isFillMethodActive(): boolean

Defined in: entity/src/QEntity.ts:126

Gets whether the fill method is currently active.

Returns

boolean


isInitialFill

Get Signature

get protected isInitialFill(): boolean

Defined in: entity/src/QEntity.ts:152

Gets whether entity is being initially filled.

Returns

boolean


isSealed

Get Signature

get isSealed(): boolean

Defined in: entity/src/QEntity.ts:76

Read-only flag to check if the object is sealed.

Returns

boolean


logger

Get Signature

get protected logger(): IQLogger

Defined in: entity/src/QEntity.ts:159

The logger instance for this entity.

Returns

IQLogger


rowState

Get Signature

get rowState(): QRowState

Defined in: entity/src/QEntity.ts:55

Gets the current row state of the entity.

Returns

QRowState

Set Signature

set rowState(rowState): void

Defined in: entity/src/QEntity.ts:64

Sets the current row state of the entity.

Parameters
rowState

QRowState

New row state

Returns

void


selectableFields

Get Signature

get selectableFields(): string[]

Defined in: entity/src/QEntity.ts:114

Gets all fields marked as selectable in queries.

Returns

string[]

Methods

clone()

clone(properties?): QEntity

Defined in: entity/src/QEntity.ts:283

Creates a clone of the current entity.

Parameters

properties?

QEntityOptions<QEntity>

A list of properties that you want to pass to the new instance

Returns

QEntity


compare()

compare(other): boolean

Defined in: entity/src/QEntity.ts:362

Compares this entity with another entity for deep equality.

Parameters

other

QEntity

The other entity to compare with

Returns

boolean

True if entities are equal, false otherwise


disableHooks()

protected disableHooks(): void

Defined in: entity/src/QEntity.ts:455

Disables execution of lifecycle hooks.

Returns

void


enableHooks()

protected enableHooks(): void

Defined in: entity/src/QEntity.ts:462

Enables execution of lifecycle hooks.

Returns

void


fill()

fill(options?, initial?, fillOptions?): QEntity

Defined in: entity/src/QEntity.ts:184

Method used to init the entity with data.

Parameters

options?

QEntityOptions<QEntity>

A map of properties with values that can be filled in the current entity

initial?

boolean = false

Initial row fill

fillOptions?

QEntityFillOptions

Returns

QEntity


freeze()

freeze(): void

Defined in: entity/src/QEntity.ts:301

Freezes the current entity to the current values and properties list. Prevents any further modifications to the entity.

Returns

void


getFlaggedField()

getFlaggedField(flag): string[]

Defined in: entity/src/QEntity.ts:407

Gets all fields that have a specific flag.

Parameters

flag

string

Flag to check for

Returns

string[]

Array of field names with the flag


getHooks()

protected getHooks(name): MethodDecoratorType<QEntity, any[], unknown>[]

Defined in: entity/src/QEntity.ts:448

Gets all registered hooks of a specific type.

Parameters

name

HookType

Type of hooks to retrieve

Returns

MethodDecoratorType<QEntity, any[], unknown>[]


isDeleted()

isDeleted(): boolean

Defined in: entity/src/QEntity.ts:274

Checks if the entity is marked as deleted.

Returns

boolean


isFieldModified()

protected isFieldModified(field): boolean

Defined in: entity/src/QEntity.ts:422

Checks if a field has been modified since entity creation.

Parameters

field

string

Field name to check

Returns

boolean


isModified()

isModified(): boolean

Defined in: entity/src/QEntity.ts:253

Checks if the entity has been modified (created or updated).

Returns

boolean


isNew()

isNew(): boolean

Defined in: entity/src/QEntity.ts:260

Checks if the entity is newly created.

Returns

boolean


isUnmodified()

isUnmodified(): boolean

Defined in: entity/src/QEntity.ts:246

Checks if the entity is in an unmodified state.

Returns

boolean


isUpdated()

isUpdated(): boolean

Defined in: entity/src/QEntity.ts:267

Checks if the entity has been updated after creation.

Returns

boolean


markDeleted()

markDeleted(): void

Defined in: entity/src/QEntity.ts:232

Marks the entity as deleted.

Returns

void


markModified()

markModified(): void

Defined in: entity/src/QEntity.ts:239

Marks the entity as modified.

Returns

void


runHooks()

protected runHooks(name): void

Defined in: entity/src/QEntity.ts:431

Executes all registered hooks of a specific type.

Parameters

name

HookType

Type of hooks to run

Returns

void


setInitialFill()

protected setInitialFill(): void

Defined in: entity/src/QEntity.ts:469

Marks the entity as being initially filled.

Returns

void


toJSON()

toJSON(): ObjectLiteral

Defined in: entity/src/QEntity.ts:312

Returns the data from the entity as a serializable object.

This method transforms the entity to a plain object suitable for JSON serialization, hiding internal properties and fields marked as hidden.

Returns

ObjectLiteral


toObject()

toObject<T>(): T

Defined in: entity/src/QEntity.ts:345

Return the data from the entity as an object.

Use this method when you want to extract the data from the entity. This is an alias for the toJSON method.

Type Parameters

T

T = ObjectLiteral

Returns

T


toString()

toString(): string

Defined in: entity/src/QEntity.ts:352

Returns a string representation of the entity.

Returns

string


unsetInitialFill()

protected unsetInitialFill(): void

Defined in: entity/src/QEntity.ts:476

Marks the entity as no longer being initially filled.

Returns

void


validate()

validate(returnable?): Promise<QEntityValidationResults>

Defined in: entity/src/QEntity.ts:371

Validate the entity fields.

Parameters

returnable?

boolean

When true, return validation errors instead of throwing

Returns

Promise<QEntityValidationResults>