Skip to main content

Class: JsonApiSerializer

jsonapi.JsonApiSerializer

Serializer implementation for JSON:API.

Hierarchy​

Constructors​

constructor​

• new JsonApiSerializer(config?)

Parameters​

NameType
config?ObjectSerializerConfig

Inherited from​

ObjectSerializer.constructor

Defined in​

src/object/objectSerializer.ts:19

Methods​

configure​

▸ configure(config?, override?): void

Parameters​

NameTypeDefault value
config?ObjectSerializerConfigundefined
overridebooleantrue

Returns​

void

Inherited from​

ObjectSerializer.configure

Defined in​

src/object/objectSerializer.ts:23


hydrateAttributeInResource​

▸ Protected hydrateAttributeInResource(resource, serializedKey, serializedValue): Promise<void>

Parameters​

NameType
resourceJsonApiDocument
serializedKeystring
serializedValueunknown

Returns​

Promise<void>

Inherit Doc

Overrides​

ObjectSerializer.hydrateAttributeInResource

Defined in​

src/jsonapi/jsonApiSerializer.ts:26


hydratePropInResource​

▸ Protected hydratePropInResource(_resource, _serializedKey, _serializedValue): Promise<void>

Parameters​

NameType
_resourceJsonApiDocument
_serializedKeystring
_serializedValueunknown

Returns​

Promise<void>

Inherited from​

ObjectSerializer.hydratePropInResource

Defined in​

src/object/objectSerializer.ts:72


hydrateRelationInResource​

▸ Protected hydrateRelationInResource(resource, serializedKey, serializedValue): Promise<void>

Parameters​

NameType
resourceJsonApiDocument
serializedKeystring
serializedValueunknown

Returns​

Promise<void>

Inherit Doc

Overrides​

ObjectSerializer.hydrateRelationInResource

Defined in​

src/jsonapi/jsonApiSerializer.ts:39


makeResource​

▸ Protected makeResource(instance): Promise<{ data: { attributes: {} = {}; id: undefined | string ; lid: undefined | string ; relationships: {} = {}; type: string = instance.$model.$type } }>

Parameters​

NameType
instanceModelInstance

Returns​

Promise<{ data: { attributes: {} = {}; id: undefined | string ; lid: undefined | string ; relationships: {} = {}; type: string = instance.$model.$type } }>

Inherit Doc

Overrides​

ObjectSerializer.makeResource

Defined in​

src/jsonapi/jsonApiSerializer.ts:13


serialize​

▸ serialize(instance, context): Promise<JsonApiDocument>

Parameters​

NameType
instanceModelInstance
contextObject

Returns​

Promise<JsonApiDocument>

Inherited from​

ObjectSerializer.serialize

Defined in​

src/object/objectSerializer.ts:27


serializeAttributeKey​

▸ Protected serializeAttributeKey(instance, def, _context): Promise<string>

Parameters​

NameType
instanceModelInstance
defModelAttribute
_contextObject

Returns​

Promise<string>

Inherited from​

ObjectSerializer.serializeAttributeKey

Defined in​

src/object/objectSerializer.ts:98


serializeAttributeValue​

▸ Protected serializeAttributeValue(_instance, def, rawValue, _context): Promise<unknown>

Parameters​

NameType
_instanceModelInstance
defModelAttribute
rawValueunknown
_contextObject

Returns​

Promise<unknown>

Inherited from​

ObjectSerializer.serializeAttributeValue

Defined in​

src/object/objectSerializer.ts:143


serializeId​

▸ Protected serializeId(id?): undefined | string

Serialize an instance's ID.

Parameters​

NameType
id?Optional<ModelIdType>

Returns​

undefined | string

Defined in​

src/jsonapi/jsonApiSerializer.ts:78


serializeInstanceIdentifier​

▸ Protected serializeInstanceIdentifier(instance): Object

Serialize an instance unique identifier object.

Parameters​

NameType
instanceModelInstance

Returns​

Object

NameType
idundefined | string
lidundefined | string
typestring

Defined in​

src/jsonapi/jsonApiSerializer.ts:65


serializeRelatedInstance​

▸ Protected serializeRelatedInstance(_instance, _def, related): Promise<{ id: undefined | string ; lid: undefined | string ; type: string = instance.$model.$type }>

Parameters​

NameType
_instanceModelInstance
_defModelRelation
relatedModelInstance

Returns​

Promise<{ id: undefined | string ; lid: undefined | string ; type: string = instance.$model.$type }>

Inherit Doc

Overrides​

ObjectSerializer.serializeRelatedInstance

Defined in​

src/jsonapi/jsonApiSerializer.ts:52


serializeRelationKey​

▸ Protected serializeRelationKey(instance, def, _context): Promise<string>

Parameters​

NameType
instanceModelInstance
defModelRelation
_contextObject

Returns​

Promise<string>

Inherited from​

ObjectSerializer.serializeRelationKey

Defined in​

src/object/objectSerializer.ts:106


serializeRelationValue​

▸ Protected serializeRelationValue(instance, def, rawValue, context): Promise<unknown>

Parameters​

NameType
instanceModelInstance
defModelRelation
rawValueunknown
contextObject

Returns​

Promise<unknown>

Inherited from​

ObjectSerializer.serializeRelationValue

Defined in​

src/object/objectSerializer.ts:154


shouldSerializeAttribute​

▸ Protected shouldSerializeAttribute(instance, def, rawValue, context): Promise<boolean>

Parameters​

NameType
instanceModelInstance
defModelAttribute
rawValueunknown
contextObject

Returns​

Promise<boolean>

Inherited from​

ObjectSerializer.shouldSerializeAttribute

Defined in​

src/object/objectSerializer.ts:114


shouldSerializeProp​

▸ Protected shouldSerializeProp(instance, def, rawValue, _context): Promise<boolean>

Parameters​

NameType
instanceModelInstance
defModelRelation | ModelAttribute
rawValueunknown
_contextObject

Returns​

Promise<boolean>

Inherited from​

ObjectSerializer.shouldSerializeProp

Defined in​

src/object/objectSerializer.ts:132


shouldSerializeRelation​

▸ Protected shouldSerializeRelation(instance, def, rawValue, context): Promise<boolean>

Parameters​

NameType
instanceModelInstance
defModelRelation
rawValueunknown
contextObject

Returns​

Promise<boolean>

Inherited from​

ObjectSerializer.shouldSerializeRelation

Defined in​

src/object/objectSerializer.ts:123