A class containing utility functions for use with pinia-jsonapi
Note - an instance of this class is exported as utils
from pinia-jsonapi
,
so it does not need to be used directly.
Methods
(static) Utils#addJvHelpers(obj) → {object}
Add helper functions and getters to a restructured object
Parameters:
Name | Type | Description |
---|---|---|
obj |
object | An object to assign helpers to |
Returns:
A copy of the object with added helper functions/getters
- Type
- object
(static) Utils#cleanPatch(patch, state, jvProps) → {object}
A function that cleans up a patch object, so that it doesn't introduce unexpected changes when sent to the API.
It removes any attributes which are unchanged from the store, to minimise accidental reversions.
It also strips out any of links, relationships and meta from _jv
- See Configuration
Parameters:
Name | Type | Default | Description |
---|---|---|---|
patch |
object | A restructured object to be cleaned |
|
state |
object | {} | Vuex state object (for patch comparison) |
jvProps |
array | '[]' | _jv Properties to be kept |
Returns:
A cleaned copy of the patch object
- Type
- object
(static) Utils#deepCopy(obj) → {object}
Deep copy a normalised object, then re-add helper nethods
Parameters:
Name | Type | Description |
---|---|---|
obj |
object | An object to be deep copied |
Returns:
A deep copied object, with Helper functions added
- Type
- object
(static) Utils#getTypeId(data, encode) → {array}
Get the type, id and relationships from a restructured object
Parameters:
Name | Type | Default | Description |
---|---|---|---|
data |
object | A restructured object |
|
encode |
boolean | true | url-encode the returned values |
Returns:
An array (optionally) containing type, id and rels
- Type
- array
(static) Utils#getURL(data) → {string}
Return the URL path (links.self) or construct from type/id
Parameters:
Name | Type | Description |
---|---|---|
data |
object | A restructured object |
Returns:
The record's URL path
- Type
- string
(static) Utils#jsonapiToNorm(data) → {object}
Convert JSONAPI record(s) to restructured data
Parameters:
Name | Type | Description |
---|---|---|
data |
object | The |
Returns:
Restructured data
- Type
- object
(static) Utils#normToJsonapi(record) → {object}
Convert one or more restructured records to jsonapi
Parameters:
Name | Type | Description |
---|---|---|
record |
object | A restructured record to be convert to JSONAPI |
Returns:
JSONAPI record
- Type
- object
(static) Utils#normToStore(record) → {object}
Convert one or more restructured records to nested (type & id) 'store' object
Parameters:
Name | Type | Description |
---|---|---|
record |
object | A restructured record to be convert to JSONAPI |
Returns:
Structured 'store' object
- Type
- object