@rolster/vinegar 3.4.0 → 3.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.js +9 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/es/index.js +9 -3
- package/dist/es/index.js.map +1 -1
- package/dist/esm/datasource.d.ts +2 -2
- package/dist/esm/datasource.js.map +1 -1
- package/dist/esm/entity-manager.js +9 -3
- package/dist/esm/entity-manager.js.map +1 -1
- package/package.json +1 -1
package/dist/cjs/index.js
CHANGED
|
@@ -235,13 +235,19 @@ class EntityManager {
|
|
|
235
235
|
return Promise.all(refreshs$);
|
|
236
236
|
}
|
|
237
237
|
async destroyAll() {
|
|
238
|
-
return Promise.all(this._destroys.map((destroy) =>
|
|
238
|
+
return Promise.all(this._destroys.map((destroy) => {
|
|
239
|
+
return this.dataSource.delete(destroy);
|
|
240
|
+
}));
|
|
239
241
|
}
|
|
240
242
|
async hiddenAll() {
|
|
241
|
-
return Promise.all(this._hiddens.map((hidden) =>
|
|
243
|
+
return Promise.all(this._hiddens.map((hidden) => {
|
|
244
|
+
return this.dataSource.hidden(hidden);
|
|
245
|
+
}));
|
|
242
246
|
}
|
|
243
247
|
async procedureAll() {
|
|
244
|
-
return Promise.all(this._procedures.map((procedure) =>
|
|
248
|
+
return Promise.all(this._procedures.map((procedure) => {
|
|
249
|
+
return this.dataSource.procedure(this, procedure);
|
|
250
|
+
}));
|
|
245
251
|
}
|
|
246
252
|
}
|
|
247
253
|
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../esm/database.js","../esm/datasource.js","../../node_modules/uuid/dist/esm-browser/stringify.js","../../node_modules/uuid/dist/esm-browser/rng.js","../../node_modules/uuid/dist/esm-browser/native.js","../../node_modules/uuid/dist/esm-browser/v4.js","../esm/helpers.js","../esm/entity-manager.js","../esm/entity.js","../esm/persistent-unit.js","../esm/procedure.js","../esm/repository.js","../esm/result.js","../esm/values.js"],"sourcesContent":["export class AbstractEntityDatabase {\n}\n//# sourceMappingURL=database.js.map","export class AbstractEntityDataSource {\n}\n//# sourceMappingURL=datasource.js.map","import validate from './validate.js';\nconst byteToHex = [];\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\nexport function unsafeStringify(arr, offset = 0) {\n return (byteToHex[arr[offset + 0]] +\n byteToHex[arr[offset + 1]] +\n byteToHex[arr[offset + 2]] +\n byteToHex[arr[offset + 3]] +\n '-' +\n byteToHex[arr[offset + 4]] +\n byteToHex[arr[offset + 5]] +\n '-' +\n byteToHex[arr[offset + 6]] +\n byteToHex[arr[offset + 7]] +\n '-' +\n byteToHex[arr[offset + 8]] +\n byteToHex[arr[offset + 9]] +\n '-' +\n byteToHex[arr[offset + 10]] +\n byteToHex[arr[offset + 11]] +\n byteToHex[arr[offset + 12]] +\n byteToHex[arr[offset + 13]] +\n byteToHex[arr[offset + 14]] +\n byteToHex[arr[offset + 15]]).toLowerCase();\n}\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset);\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n return uuid;\n}\nexport default stringify;\n","let getRandomValues;\nconst rnds8 = new Uint8Array(16);\nexport default function rng() {\n if (!getRandomValues) {\n if (typeof crypto === 'undefined' || !crypto.getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n getRandomValues = crypto.getRandomValues.bind(crypto);\n }\n return getRandomValues(rnds8);\n}\n","const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nexport default { randomUUID };\n","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n options = options || {};\n const rnds = options.random ?? options.rng?.() ?? rng();\n if (rnds.length < 16) {\n throw new Error('Random bytes length must be >= 16');\n }\n rnds[6] = (rnds[6] & 0x0f) | 0x40;\n rnds[8] = (rnds[8] & 0x3f) | 0x80;\n if (buf) {\n offset = offset || 0;\n if (offset < 0 || offset + 16 > buf.length) {\n throw new RangeError(`UUID byte range ${offset}:${offset + 15} is out of buffer bounds`);\n }\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n return buf;\n }\n return unsafeStringify(rnds);\n}\nexport default v4;\n","export function modelIsEditable(model) {\n return typeof model === 'object' && 'updatedAt' in model;\n}\nexport function modelIsHideable(model) {\n return typeof model === 'object' && 'hidden' in model && 'hiddenAt' in model;\n}\nexport function modelToLiteralObject(model) {\n const changes = {};\n Object.entries(model).forEach(([key, value]) => {\n changes[key] = value;\n });\n return changes;\n}\nexport function verifyChangesInModel(model, initialStatus) {\n const currentStatus = modelToLiteralObject(model);\n const changes = {};\n Object.entries(currentStatus).forEach(([key, value]) => {\n if (currentStatus[key] !== initialStatus[key]) {\n changes[key] = value;\n }\n });\n const requiredUpdate = Object.keys(changes).length > 0;\n if (requiredUpdate && modelIsEditable(model)) {\n changes['updatedAt'] = new Date();\n }\n return requiredUpdate ? changes : undefined;\n}\n//# sourceMappingURL=helpers.js.map","import { ResultFactory, fromPromise } from '@rolster/commons';\nimport { v4 as uuid } from 'uuid';\nimport { modelIsHideable } from './helpers';\nexport class AbstractEntityManager {\n}\nexport class EntityManager {\n constructor(dataSource) {\n this.dataSource = dataSource;\n this._persists = [];\n this._persistsList = [];\n this._syncs = [];\n this._refreshs = [];\n this._procedures = [];\n this._hiddens = [];\n this._destroys = [];\n this.uuid = uuid();\n this._relations = new Map();\n }\n persist(persist) {\n this._persists.push(persist);\n }\n persists(persists) {\n this._persistsList.push(persists);\n }\n sync(sync) {\n const { entity, model, relationable } = sync;\n relationable && this.relation(entity, model);\n this._syncs.push(sync);\n }\n refresh(refresh) {\n const { entity, model, relationable } = refresh;\n relationable && this.relation(entity, model);\n this._refreshs.push(refresh);\n }\n procedure(procedure) {\n this._procedures.push(procedure);\n }\n destroy(entity) {\n const result = this.select(entity);\n if (result.isSuccess) {\n !modelIsHideable(result.value)\n ? this._destroys.push(result.value)\n : this._hiddens.push(result.value);\n }\n }\n relation(entity, model) {\n this._relations.set(entity, model);\n }\n link(entity, model) {\n this.relation(entity, model);\n return entity;\n }\n select(entity) {\n const model = this._relations.get(entity);\n return model\n ? ResultFactory.success(model)\n : ResultFactory.failure('Not found');\n }\n async flush() {\n const persists = [\n ...(await this.persistAll()),\n ...(await this.persistListAll())\n ];\n const syncs = await this.syncAll();\n const refreshs = await this.refreshAll();\n const procedures = await this.procedureAll();\n const [hiddens, destroys] = await Promise.all([\n this.hiddenAll(),\n this.destroyAll()\n ]);\n const results = [\n ...persists,\n ...syncs,\n ...refreshs,\n ...procedures,\n ...hiddens,\n ...destroys\n ];\n this.dispose();\n return results;\n }\n dispose() {\n this._relations.clear();\n this._persists = [];\n this._persistsList = [];\n this._refreshs = [];\n this._syncs = [];\n this._hiddens = [];\n this._destroys = [];\n this._procedures = [];\n }\n async persistAll() {\n const results = [];\n for (const persist of this._persists) {\n const model = await fromPromise(persist.create(this));\n persist.relationable && this.relation(persist.entity, model);\n results.push(await this.dataSource.insert(model));\n }\n return results;\n }\n async persistListAll() {\n const results = [];\n for (const persists of this._persistsList) {\n const models = await fromPromise(persists.create(this));\n for (const model of models) {\n results.push(await this.dataSource.insert(model));\n }\n }\n return results;\n }\n syncAll() {\n const syncs = this._syncs.filter(({ model }) => !modelIsHideable(model)\n ? !this._destroys.includes(model)\n : !this._hiddens.includes(model));\n const syncs$ = [];\n syncs.forEach((sync) => {\n const dirty = sync.verify(this);\n if (dirty) {\n syncs$.push(this.dataSource.update(sync.model, dirty));\n }\n });\n return Promise.all(syncs$);\n }\n async refreshAll() {\n const refreshs$ = this._refreshs.map(async (refresh) => {\n const _models = await fromPromise(refresh.dispatch(this));\n const models = _models.filter(({ model }) => !modelIsHideable(model)\n ? !this._destroys.includes(model)\n : !this._hiddens.includes(model));\n return this.dataSource.refresh(models);\n });\n return Promise.all(refreshs$);\n }\n async destroyAll() {\n return Promise.all(this._destroys.map((destroy) => this.dataSource.delete(destroy)));\n }\n async hiddenAll() {\n return Promise.all(this._hiddens.map((hidden) => this.dataSource.hidden(hidden)));\n }\n async procedureAll() {\n return Promise.all(this._procedures.map((procedure) => this.dataSource.procedure(procedure)));\n }\n}\n//# sourceMappingURL=entity-manager.js.map","import { modelToLiteralObject, verifyChangesInModel } from './helpers';\nexport class Entity {\n constructor(uuid) {\n this.uuid = uuid;\n }\n}\nexport class EntityPersist {\n constructor(entity, relationable = true) {\n this.entity = entity;\n this.relationable = relationable;\n }\n}\nexport class EntityPersistList {\n constructor(entity) {\n this.entity = entity;\n }\n}\nexport class EntitySync {\n constructor(entity, model, relationable = true) {\n this.entity = entity;\n this.model = model;\n this.relationable = relationable;\n this.initialStatus = modelToLiteralObject(model);\n }\n verify(manager) {\n return this.verifySync(manager);\n }\n verifySync(manager) {\n this.sync(manager); // Sync data Entity/Model\n return verifyChangesInModel(this.model, this.initialStatus);\n }\n}\nexport class EntityRefresh {\n constructor(entity, model, relationable = true) {\n this.entity = entity;\n this.model = model;\n this.relationable = relationable;\n }\n}\n//# sourceMappingURL=entity.js.map","export class AbstractPersistentUnit {\n}\n//# sourceMappingURL=persistent-unit.js.map","export class AbstractProcedure {\n}\n//# sourceMappingURL=procedure.js.map","export class AbstractRepository {\n}\n//# sourceMappingURL=repository.js.map","export class PersistentUnitResult {\n constructor(code, error, model) {\n this.code = code;\n this.error = error;\n this.model = model;\n }\n}\n//# sourceMappingURL=result.js.map","import { modelToLiteralObject, verifyChangesInModel } from './helpers';\nexport class RefreshModel {\n constructor(model) {\n this.model = model;\n this.initialStatus = modelToLiteralObject(model);\n }\n getChanges() {\n return verifyChangesInModel(this.model, this.initialStatus);\n }\n}\n//# sourceMappingURL=values.js.map"],"names":["uuid","ResultFactory","fromPromise"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../esm/database.js","../esm/datasource.js","../../node_modules/uuid/dist/esm-browser/stringify.js","../../node_modules/uuid/dist/esm-browser/rng.js","../../node_modules/uuid/dist/esm-browser/native.js","../../node_modules/uuid/dist/esm-browser/v4.js","../esm/helpers.js","../esm/entity-manager.js","../esm/entity.js","../esm/persistent-unit.js","../esm/procedure.js","../esm/repository.js","../esm/result.js","../esm/values.js"],"sourcesContent":["export class AbstractEntityDatabase {\n}\n//# sourceMappingURL=database.js.map","export class AbstractEntityDataSource {\n}\n//# sourceMappingURL=datasource.js.map","import validate from './validate.js';\nconst byteToHex = [];\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\nexport function unsafeStringify(arr, offset = 0) {\n return (byteToHex[arr[offset + 0]] +\n byteToHex[arr[offset + 1]] +\n byteToHex[arr[offset + 2]] +\n byteToHex[arr[offset + 3]] +\n '-' +\n byteToHex[arr[offset + 4]] +\n byteToHex[arr[offset + 5]] +\n '-' +\n byteToHex[arr[offset + 6]] +\n byteToHex[arr[offset + 7]] +\n '-' +\n byteToHex[arr[offset + 8]] +\n byteToHex[arr[offset + 9]] +\n '-' +\n byteToHex[arr[offset + 10]] +\n byteToHex[arr[offset + 11]] +\n byteToHex[arr[offset + 12]] +\n byteToHex[arr[offset + 13]] +\n byteToHex[arr[offset + 14]] +\n byteToHex[arr[offset + 15]]).toLowerCase();\n}\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset);\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n return uuid;\n}\nexport default stringify;\n","let getRandomValues;\nconst rnds8 = new Uint8Array(16);\nexport default function rng() {\n if (!getRandomValues) {\n if (typeof crypto === 'undefined' || !crypto.getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n getRandomValues = crypto.getRandomValues.bind(crypto);\n }\n return getRandomValues(rnds8);\n}\n","const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nexport default { randomUUID };\n","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n options = options || {};\n const rnds = options.random ?? options.rng?.() ?? rng();\n if (rnds.length < 16) {\n throw new Error('Random bytes length must be >= 16');\n }\n rnds[6] = (rnds[6] & 0x0f) | 0x40;\n rnds[8] = (rnds[8] & 0x3f) | 0x80;\n if (buf) {\n offset = offset || 0;\n if (offset < 0 || offset + 16 > buf.length) {\n throw new RangeError(`UUID byte range ${offset}:${offset + 15} is out of buffer bounds`);\n }\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n return buf;\n }\n return unsafeStringify(rnds);\n}\nexport default v4;\n","export function modelIsEditable(model) {\n return typeof model === 'object' && 'updatedAt' in model;\n}\nexport function modelIsHideable(model) {\n return typeof model === 'object' && 'hidden' in model && 'hiddenAt' in model;\n}\nexport function modelToLiteralObject(model) {\n const changes = {};\n Object.entries(model).forEach(([key, value]) => {\n changes[key] = value;\n });\n return changes;\n}\nexport function verifyChangesInModel(model, initialStatus) {\n const currentStatus = modelToLiteralObject(model);\n const changes = {};\n Object.entries(currentStatus).forEach(([key, value]) => {\n if (currentStatus[key] !== initialStatus[key]) {\n changes[key] = value;\n }\n });\n const requiredUpdate = Object.keys(changes).length > 0;\n if (requiredUpdate && modelIsEditable(model)) {\n changes['updatedAt'] = new Date();\n }\n return requiredUpdate ? changes : undefined;\n}\n//# sourceMappingURL=helpers.js.map","import { ResultFactory, fromPromise } from '@rolster/commons';\nimport { v4 as uuid } from 'uuid';\nimport { modelIsHideable } from './helpers';\nexport class AbstractEntityManager {\n}\nexport class EntityManager {\n constructor(dataSource) {\n this.dataSource = dataSource;\n this._persists = [];\n this._persistsList = [];\n this._syncs = [];\n this._refreshs = [];\n this._procedures = [];\n this._hiddens = [];\n this._destroys = [];\n this.uuid = uuid();\n this._relations = new Map();\n }\n persist(persist) {\n this._persists.push(persist);\n }\n persists(persists) {\n this._persistsList.push(persists);\n }\n sync(sync) {\n const { entity, model, relationable } = sync;\n relationable && this.relation(entity, model);\n this._syncs.push(sync);\n }\n refresh(refresh) {\n const { entity, model, relationable } = refresh;\n relationable && this.relation(entity, model);\n this._refreshs.push(refresh);\n }\n procedure(procedure) {\n this._procedures.push(procedure);\n }\n destroy(entity) {\n const result = this.select(entity);\n if (result.isSuccess) {\n !modelIsHideable(result.value)\n ? this._destroys.push(result.value)\n : this._hiddens.push(result.value);\n }\n }\n relation(entity, model) {\n this._relations.set(entity, model);\n }\n link(entity, model) {\n this.relation(entity, model);\n return entity;\n }\n select(entity) {\n const model = this._relations.get(entity);\n return model\n ? ResultFactory.success(model)\n : ResultFactory.failure('Not found');\n }\n async flush() {\n const persists = [\n ...(await this.persistAll()),\n ...(await this.persistListAll())\n ];\n const syncs = await this.syncAll();\n const refreshs = await this.refreshAll();\n const procedures = await this.procedureAll();\n const [hiddens, destroys] = await Promise.all([\n this.hiddenAll(),\n this.destroyAll()\n ]);\n const results = [\n ...persists,\n ...syncs,\n ...refreshs,\n ...procedures,\n ...hiddens,\n ...destroys\n ];\n this.dispose();\n return results;\n }\n dispose() {\n this._relations.clear();\n this._persists = [];\n this._persistsList = [];\n this._refreshs = [];\n this._syncs = [];\n this._hiddens = [];\n this._destroys = [];\n this._procedures = [];\n }\n async persistAll() {\n const results = [];\n for (const persist of this._persists) {\n const model = await fromPromise(persist.create(this));\n persist.relationable && this.relation(persist.entity, model);\n results.push(await this.dataSource.insert(model));\n }\n return results;\n }\n async persistListAll() {\n const results = [];\n for (const persists of this._persistsList) {\n const models = await fromPromise(persists.create(this));\n for (const model of models) {\n results.push(await this.dataSource.insert(model));\n }\n }\n return results;\n }\n syncAll() {\n const syncs = this._syncs.filter(({ model }) => !modelIsHideable(model)\n ? !this._destroys.includes(model)\n : !this._hiddens.includes(model));\n const syncs$ = [];\n syncs.forEach((sync) => {\n const dirty = sync.verify(this);\n if (dirty) {\n syncs$.push(this.dataSource.update(sync.model, dirty));\n }\n });\n return Promise.all(syncs$);\n }\n async refreshAll() {\n const refreshs$ = this._refreshs.map(async (refresh) => {\n const _models = await fromPromise(refresh.dispatch(this));\n const models = _models.filter(({ model }) => !modelIsHideable(model)\n ? !this._destroys.includes(model)\n : !this._hiddens.includes(model));\n return this.dataSource.refresh(models);\n });\n return Promise.all(refreshs$);\n }\n async destroyAll() {\n return Promise.all(this._destroys.map((destroy) => {\n return this.dataSource.delete(destroy);\n }));\n }\n async hiddenAll() {\n return Promise.all(this._hiddens.map((hidden) => {\n return this.dataSource.hidden(hidden);\n }));\n }\n async procedureAll() {\n return Promise.all(this._procedures.map((procedure) => {\n return this.dataSource.procedure(this, procedure);\n }));\n }\n}\n//# sourceMappingURL=entity-manager.js.map","import { modelToLiteralObject, verifyChangesInModel } from './helpers';\nexport class Entity {\n constructor(uuid) {\n this.uuid = uuid;\n }\n}\nexport class EntityPersist {\n constructor(entity, relationable = true) {\n this.entity = entity;\n this.relationable = relationable;\n }\n}\nexport class EntityPersistList {\n constructor(entity) {\n this.entity = entity;\n }\n}\nexport class EntitySync {\n constructor(entity, model, relationable = true) {\n this.entity = entity;\n this.model = model;\n this.relationable = relationable;\n this.initialStatus = modelToLiteralObject(model);\n }\n verify(manager) {\n return this.verifySync(manager);\n }\n verifySync(manager) {\n this.sync(manager); // Sync data Entity/Model\n return verifyChangesInModel(this.model, this.initialStatus);\n }\n}\nexport class EntityRefresh {\n constructor(entity, model, relationable = true) {\n this.entity = entity;\n this.model = model;\n this.relationable = relationable;\n }\n}\n//# sourceMappingURL=entity.js.map","export class AbstractPersistentUnit {\n}\n//# sourceMappingURL=persistent-unit.js.map","export class AbstractProcedure {\n}\n//# sourceMappingURL=procedure.js.map","export class AbstractRepository {\n}\n//# sourceMappingURL=repository.js.map","export class PersistentUnitResult {\n constructor(code, error, model) {\n this.code = code;\n this.error = error;\n this.model = model;\n }\n}\n//# sourceMappingURL=result.js.map","import { modelToLiteralObject, verifyChangesInModel } from './helpers';\nexport class RefreshModel {\n constructor(model) {\n this.model = model;\n this.initialStatus = modelToLiteralObject(model);\n }\n getChanges() {\n return verifyChangesInModel(this.model, this.initialStatus);\n }\n}\n//# sourceMappingURL=values.js.map"],"names":["uuid","ResultFactory","fromPromise"],"mappings":"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"}
|
package/dist/es/index.js
CHANGED
|
@@ -231,13 +231,19 @@ class EntityManager {
|
|
|
231
231
|
return Promise.all(refreshs$);
|
|
232
232
|
}
|
|
233
233
|
async destroyAll() {
|
|
234
|
-
return Promise.all(this._destroys.map((destroy) =>
|
|
234
|
+
return Promise.all(this._destroys.map((destroy) => {
|
|
235
|
+
return this.dataSource.delete(destroy);
|
|
236
|
+
}));
|
|
235
237
|
}
|
|
236
238
|
async hiddenAll() {
|
|
237
|
-
return Promise.all(this._hiddens.map((hidden) =>
|
|
239
|
+
return Promise.all(this._hiddens.map((hidden) => {
|
|
240
|
+
return this.dataSource.hidden(hidden);
|
|
241
|
+
}));
|
|
238
242
|
}
|
|
239
243
|
async procedureAll() {
|
|
240
|
-
return Promise.all(this._procedures.map((procedure) =>
|
|
244
|
+
return Promise.all(this._procedures.map((procedure) => {
|
|
245
|
+
return this.dataSource.procedure(this, procedure);
|
|
246
|
+
}));
|
|
241
247
|
}
|
|
242
248
|
}
|
|
243
249
|
|
package/dist/es/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../esm/database.js","../esm/datasource.js","../../node_modules/uuid/dist/esm-browser/stringify.js","../../node_modules/uuid/dist/esm-browser/rng.js","../../node_modules/uuid/dist/esm-browser/native.js","../../node_modules/uuid/dist/esm-browser/v4.js","../esm/helpers.js","../esm/entity-manager.js","../esm/entity.js","../esm/persistent-unit.js","../esm/procedure.js","../esm/repository.js","../esm/result.js","../esm/values.js"],"sourcesContent":["export class AbstractEntityDatabase {\n}\n//# sourceMappingURL=database.js.map","export class AbstractEntityDataSource {\n}\n//# sourceMappingURL=datasource.js.map","import validate from './validate.js';\nconst byteToHex = [];\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\nexport function unsafeStringify(arr, offset = 0) {\n return (byteToHex[arr[offset + 0]] +\n byteToHex[arr[offset + 1]] +\n byteToHex[arr[offset + 2]] +\n byteToHex[arr[offset + 3]] +\n '-' +\n byteToHex[arr[offset + 4]] +\n byteToHex[arr[offset + 5]] +\n '-' +\n byteToHex[arr[offset + 6]] +\n byteToHex[arr[offset + 7]] +\n '-' +\n byteToHex[arr[offset + 8]] +\n byteToHex[arr[offset + 9]] +\n '-' +\n byteToHex[arr[offset + 10]] +\n byteToHex[arr[offset + 11]] +\n byteToHex[arr[offset + 12]] +\n byteToHex[arr[offset + 13]] +\n byteToHex[arr[offset + 14]] +\n byteToHex[arr[offset + 15]]).toLowerCase();\n}\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset);\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n return uuid;\n}\nexport default stringify;\n","let getRandomValues;\nconst rnds8 = new Uint8Array(16);\nexport default function rng() {\n if (!getRandomValues) {\n if (typeof crypto === 'undefined' || !crypto.getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n getRandomValues = crypto.getRandomValues.bind(crypto);\n }\n return getRandomValues(rnds8);\n}\n","const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nexport default { randomUUID };\n","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n options = options || {};\n const rnds = options.random ?? options.rng?.() ?? rng();\n if (rnds.length < 16) {\n throw new Error('Random bytes length must be >= 16');\n }\n rnds[6] = (rnds[6] & 0x0f) | 0x40;\n rnds[8] = (rnds[8] & 0x3f) | 0x80;\n if (buf) {\n offset = offset || 0;\n if (offset < 0 || offset + 16 > buf.length) {\n throw new RangeError(`UUID byte range ${offset}:${offset + 15} is out of buffer bounds`);\n }\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n return buf;\n }\n return unsafeStringify(rnds);\n}\nexport default v4;\n","export function modelIsEditable(model) {\n return typeof model === 'object' && 'updatedAt' in model;\n}\nexport function modelIsHideable(model) {\n return typeof model === 'object' && 'hidden' in model && 'hiddenAt' in model;\n}\nexport function modelToLiteralObject(model) {\n const changes = {};\n Object.entries(model).forEach(([key, value]) => {\n changes[key] = value;\n });\n return changes;\n}\nexport function verifyChangesInModel(model, initialStatus) {\n const currentStatus = modelToLiteralObject(model);\n const changes = {};\n Object.entries(currentStatus).forEach(([key, value]) => {\n if (currentStatus[key] !== initialStatus[key]) {\n changes[key] = value;\n }\n });\n const requiredUpdate = Object.keys(changes).length > 0;\n if (requiredUpdate && modelIsEditable(model)) {\n changes['updatedAt'] = new Date();\n }\n return requiredUpdate ? changes : undefined;\n}\n//# sourceMappingURL=helpers.js.map","import { ResultFactory, fromPromise } from '@rolster/commons';\nimport { v4 as uuid } from 'uuid';\nimport { modelIsHideable } from './helpers';\nexport class AbstractEntityManager {\n}\nexport class EntityManager {\n constructor(dataSource) {\n this.dataSource = dataSource;\n this._persists = [];\n this._persistsList = [];\n this._syncs = [];\n this._refreshs = [];\n this._procedures = [];\n this._hiddens = [];\n this._destroys = [];\n this.uuid = uuid();\n this._relations = new Map();\n }\n persist(persist) {\n this._persists.push(persist);\n }\n persists(persists) {\n this._persistsList.push(persists);\n }\n sync(sync) {\n const { entity, model, relationable } = sync;\n relationable && this.relation(entity, model);\n this._syncs.push(sync);\n }\n refresh(refresh) {\n const { entity, model, relationable } = refresh;\n relationable && this.relation(entity, model);\n this._refreshs.push(refresh);\n }\n procedure(procedure) {\n this._procedures.push(procedure);\n }\n destroy(entity) {\n const result = this.select(entity);\n if (result.isSuccess) {\n !modelIsHideable(result.value)\n ? this._destroys.push(result.value)\n : this._hiddens.push(result.value);\n }\n }\n relation(entity, model) {\n this._relations.set(entity, model);\n }\n link(entity, model) {\n this.relation(entity, model);\n return entity;\n }\n select(entity) {\n const model = this._relations.get(entity);\n return model\n ? ResultFactory.success(model)\n : ResultFactory.failure('Not found');\n }\n async flush() {\n const persists = [\n ...(await this.persistAll()),\n ...(await this.persistListAll())\n ];\n const syncs = await this.syncAll();\n const refreshs = await this.refreshAll();\n const procedures = await this.procedureAll();\n const [hiddens, destroys] = await Promise.all([\n this.hiddenAll(),\n this.destroyAll()\n ]);\n const results = [\n ...persists,\n ...syncs,\n ...refreshs,\n ...procedures,\n ...hiddens,\n ...destroys\n ];\n this.dispose();\n return results;\n }\n dispose() {\n this._relations.clear();\n this._persists = [];\n this._persistsList = [];\n this._refreshs = [];\n this._syncs = [];\n this._hiddens = [];\n this._destroys = [];\n this._procedures = [];\n }\n async persistAll() {\n const results = [];\n for (const persist of this._persists) {\n const model = await fromPromise(persist.create(this));\n persist.relationable && this.relation(persist.entity, model);\n results.push(await this.dataSource.insert(model));\n }\n return results;\n }\n async persistListAll() {\n const results = [];\n for (const persists of this._persistsList) {\n const models = await fromPromise(persists.create(this));\n for (const model of models) {\n results.push(await this.dataSource.insert(model));\n }\n }\n return results;\n }\n syncAll() {\n const syncs = this._syncs.filter(({ model }) => !modelIsHideable(model)\n ? !this._destroys.includes(model)\n : !this._hiddens.includes(model));\n const syncs$ = [];\n syncs.forEach((sync) => {\n const dirty = sync.verify(this);\n if (dirty) {\n syncs$.push(this.dataSource.update(sync.model, dirty));\n }\n });\n return Promise.all(syncs$);\n }\n async refreshAll() {\n const refreshs$ = this._refreshs.map(async (refresh) => {\n const _models = await fromPromise(refresh.dispatch(this));\n const models = _models.filter(({ model }) => !modelIsHideable(model)\n ? !this._destroys.includes(model)\n : !this._hiddens.includes(model));\n return this.dataSource.refresh(models);\n });\n return Promise.all(refreshs$);\n }\n async destroyAll() {\n return Promise.all(this._destroys.map((destroy) => this.dataSource.delete(destroy)));\n }\n async hiddenAll() {\n return Promise.all(this._hiddens.map((hidden) => this.dataSource.hidden(hidden)));\n }\n async procedureAll() {\n return Promise.all(this._procedures.map((procedure) => this.dataSource.procedure(procedure)));\n }\n}\n//# sourceMappingURL=entity-manager.js.map","import { modelToLiteralObject, verifyChangesInModel } from './helpers';\nexport class Entity {\n constructor(uuid) {\n this.uuid = uuid;\n }\n}\nexport class EntityPersist {\n constructor(entity, relationable = true) {\n this.entity = entity;\n this.relationable = relationable;\n }\n}\nexport class EntityPersistList {\n constructor(entity) {\n this.entity = entity;\n }\n}\nexport class EntitySync {\n constructor(entity, model, relationable = true) {\n this.entity = entity;\n this.model = model;\n this.relationable = relationable;\n this.initialStatus = modelToLiteralObject(model);\n }\n verify(manager) {\n return this.verifySync(manager);\n }\n verifySync(manager) {\n this.sync(manager); // Sync data Entity/Model\n return verifyChangesInModel(this.model, this.initialStatus);\n }\n}\nexport class EntityRefresh {\n constructor(entity, model, relationable = true) {\n this.entity = entity;\n this.model = model;\n this.relationable = relationable;\n }\n}\n//# sourceMappingURL=entity.js.map","export class AbstractPersistentUnit {\n}\n//# sourceMappingURL=persistent-unit.js.map","export class AbstractProcedure {\n}\n//# sourceMappingURL=procedure.js.map","export class AbstractRepository {\n}\n//# sourceMappingURL=repository.js.map","export class PersistentUnitResult {\n constructor(code, error, model) {\n this.code = code;\n this.error = error;\n this.model = model;\n }\n}\n//# sourceMappingURL=result.js.map","import { modelToLiteralObject, verifyChangesInModel } from './helpers';\nexport class RefreshModel {\n constructor(model) {\n this.model = model;\n this.initialStatus = modelToLiteralObject(model);\n }\n getChanges() {\n return verifyChangesInModel(this.model, this.initialStatus);\n }\n}\n//# sourceMappingURL=values.js.map"],"names":["uuid"],"mappings":";;AAAO,MAAM,sBAAsB,CAAC;AACpC;;ACDO,MAAM,wBAAwB,CAAC;AACtC;;ACAA,MAAM,SAAS,GAAG,EAAE,CAAC;AACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,CAAC,EAAE;AAC9B,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACtD,CAAC;AACM,SAAS,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,EAAE;AACjD,IAAI,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACtC,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAClC,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAClC,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAClC,QAAQ,GAAG;AACX,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAClC,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAClC,QAAQ,GAAG;AACX,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAClC,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAClC,QAAQ,GAAG;AACX,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAClC,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAClC,QAAQ,GAAG;AACX,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AACnC,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AACnC,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AACnC,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AACnC,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AACnC,QAAQ,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;AACnD;;AC1BA,IAAI,eAAe,CAAC;AACpB,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;AAClB,SAAS,GAAG,GAAG;AAC9B,IAAI,IAAI,CAAC,eAAe,EAAE;AAC1B,QAAQ,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;AACtE,YAAY,MAAM,IAAI,KAAK,CAAC,0GAA0G,CAAC,CAAC;AACxI,SAAS;AACT,QAAQ,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC9D,KAAK;AACL,IAAI,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;AAClC;;ACVA,MAAM,UAAU,GAAG,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACxG,aAAe,EAAE,UAAU,EAAE;;ACE7B,SAAS,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE;AAClC,IAAI,IAAI,MAAM,CAAC,UAAU,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE;AAC/C,QAAQ,OAAO,MAAM,CAAC,UAAU,EAAE,CAAC;AACnC,KAAK;AACL,IAAI,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;AAC5B,IAAI,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC;AAC5D,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE,EAAE;AAC1B,QAAQ,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;AAC7D,KAAK;AACL,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,CAAC;AACtC,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,CAAC;AACtC,IAAI,IAAI,GAAG,EAAE;AACb,QAAQ,MAAM,GAAG,MAAM,IAAI,CAAC,CAAC;AAC7B,QAAQ,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE;AACpD,YAAY,MAAM,IAAI,UAAU,CAAC,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC;AACrG,SAAS;AACT,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE;AACrC,YAAY,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AACtC,SAAS;AACT,QAAQ,OAAO,GAAG,CAAC;AACnB,KAAK;AACL,IAAI,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;AACjC;;ACzBO,SAAS,eAAe,CAAC,KAAK,EAAE;AACvC,IAAI,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,WAAW,IAAI,KAAK,CAAC;AAC7D,CAAC;AACM,SAAS,eAAe,CAAC,KAAK,EAAE;AACvC,IAAI,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAI,KAAK,IAAI,UAAU,IAAI,KAAK,CAAC;AACjF,CAAC;AACM,SAAS,oBAAoB,CAAC,KAAK,EAAE;AAC5C,IAAI,MAAM,OAAO,GAAG,EAAE,CAAC;AACvB,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK;AACpD,QAAQ,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAC7B,KAAK,CAAC,CAAC;AACP,IAAI,OAAO,OAAO,CAAC;AACnB,CAAC;AACM,SAAS,oBAAoB,CAAC,KAAK,EAAE,aAAa,EAAE;AAC3D,IAAI,MAAM,aAAa,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;AACtD,IAAI,MAAM,OAAO,GAAG,EAAE,CAAC;AACvB,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK;AAC5D,QAAQ,IAAI,aAAa,CAAC,GAAG,CAAC,KAAK,aAAa,CAAC,GAAG,CAAC,EAAE;AACvD,YAAY,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AACjC,SAAS;AACT,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AAC3D,IAAI,IAAI,cAAc,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE;AAClD,QAAQ,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;AAC1C,KAAK;AACL,IAAI,OAAO,cAAc,GAAG,OAAO,GAAG,SAAS,CAAC;AAChD;;ACvBO,MAAM,qBAAqB,CAAC;AACnC,CAAC;AACM,MAAM,aAAa,CAAC;AAC3B,IAAI,WAAW,CAAC,UAAU,EAAE;AAC5B,QAAQ,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;AACrC,QAAQ,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;AAC5B,QAAQ,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;AAChC,QAAQ,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;AACzB,QAAQ,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;AAC5B,QAAQ,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;AAC9B,QAAQ,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;AAC3B,QAAQ,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;AAC5B,QAAQ,IAAI,CAAC,IAAI,GAAGA,EAAI,EAAE,CAAC;AAC3B,QAAQ,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;AACpC,KAAK;AACL,IAAI,OAAO,CAAC,OAAO,EAAE;AACrB,QAAQ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACrC,KAAK;AACL,IAAI,QAAQ,CAAC,QAAQ,EAAE;AACvB,QAAQ,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC1C,KAAK;AACL,IAAI,IAAI,CAAC,IAAI,EAAE;AACf,QAAQ,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;AACrD,QAAQ,YAAY,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACrD,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/B,KAAK;AACL,IAAI,OAAO,CAAC,OAAO,EAAE;AACrB,QAAQ,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;AACxD,QAAQ,YAAY,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACrD,QAAQ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACrC,KAAK;AACL,IAAI,SAAS,CAAC,SAAS,EAAE;AACzB,QAAQ,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AACzC,KAAK;AACL,IAAI,OAAO,CAAC,MAAM,EAAE;AACpB,QAAQ,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC3C,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE;AAC9B,YAAY,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC;AAC1C,kBAAkB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;AACnD,kBAAkB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACnD,SAAS;AACT,KAAK;AACL,IAAI,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE;AAC5B,QAAQ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC3C,KAAK;AACL,IAAI,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE;AACxB,QAAQ,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACrC,QAAQ,OAAO,MAAM,CAAC;AACtB,KAAK;AACL,IAAI,MAAM,CAAC,MAAM,EAAE;AACnB,QAAQ,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAClD,QAAQ,OAAO,KAAK;AACpB,cAAc,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC;AAC1C,cAAc,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AACjD,KAAK;AACL,IAAI,MAAM,KAAK,GAAG;AAClB,QAAQ,MAAM,QAAQ,GAAG;AACzB,YAAY,IAAI,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;AACxC,YAAY,IAAI,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;AAC5C,SAAS,CAAC;AACV,QAAQ,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;AAC3C,QAAQ,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;AACjD,QAAQ,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;AACrD,QAAQ,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;AACtD,YAAY,IAAI,CAAC,SAAS,EAAE;AAC5B,YAAY,IAAI,CAAC,UAAU,EAAE;AAC7B,SAAS,CAAC,CAAC;AACX,QAAQ,MAAM,OAAO,GAAG;AACxB,YAAY,GAAG,QAAQ;AACvB,YAAY,GAAG,KAAK;AACpB,YAAY,GAAG,QAAQ;AACvB,YAAY,GAAG,UAAU;AACzB,YAAY,GAAG,OAAO;AACtB,YAAY,GAAG,QAAQ;AACvB,SAAS,CAAC;AACV,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;AACvB,QAAQ,OAAO,OAAO,CAAC;AACvB,KAAK;AACL,IAAI,OAAO,GAAG;AACd,QAAQ,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;AAChC,QAAQ,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;AAC5B,QAAQ,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;AAChC,QAAQ,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;AAC5B,QAAQ,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;AACzB,QAAQ,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;AAC3B,QAAQ,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;AAC5B,QAAQ,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;AAC9B,KAAK;AACL,IAAI,MAAM,UAAU,GAAG;AACvB,QAAQ,MAAM,OAAO,GAAG,EAAE,CAAC;AAC3B,QAAQ,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE;AAC9C,YAAY,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AAClE,YAAY,OAAO,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACzE,YAAY,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9D,SAAS;AACT,QAAQ,OAAO,OAAO,CAAC;AACvB,KAAK;AACL,IAAI,MAAM,cAAc,GAAG;AAC3B,QAAQ,MAAM,OAAO,GAAG,EAAE,CAAC;AAC3B,QAAQ,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,aAAa,EAAE;AACnD,YAAY,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AACpE,YAAY,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;AACxC,gBAAgB,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAClE,aAAa;AACb,SAAS;AACT,QAAQ,OAAO,OAAO,CAAC;AACvB,KAAK;AACL,IAAI,OAAO,GAAG;AACd,QAAQ,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC;AAC/E,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;AAC7C,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9C,QAAQ,MAAM,MAAM,GAAG,EAAE,CAAC;AAC1B,QAAQ,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK;AAChC,YAAY,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC5C,YAAY,IAAI,KAAK,EAAE;AACvB,gBAAgB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AACvE,aAAa;AACb,SAAS,CAAC,CAAC;AACX,QAAQ,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACnC,KAAK;AACL,IAAI,MAAM,UAAU,GAAG;AACvB,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,OAAO,KAAK;AAChE,YAAY,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AACtE,YAAY,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC;AAChF,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;AACjD,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AAClD,YAAY,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AACnD,SAAS,CAAC,CAAC;AACX,QAAQ,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACtC,KAAK;AACL,IAAI,MAAM,UAAU,GAAG;AACvB,QAAQ,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC7F,KAAK;AACL,IAAI,MAAM,SAAS,GAAG;AACtB,QAAQ,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAC1F,KAAK;AACL,IAAI,MAAM,YAAY,GAAG;AACzB,QAAQ,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACtG,KAAK;AACL;;AC7IO,MAAM,MAAM,CAAC;AACpB,IAAI,WAAW,CAAC,IAAI,EAAE;AACtB,QAAQ,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AACzB,KAAK;AACL,CAAC;AACM,MAAM,aAAa,CAAC;AAC3B,IAAI,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,EAAE;AAC7C,QAAQ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AAC7B,QAAQ,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;AACzC,KAAK;AACL,CAAC;AACM,MAAM,iBAAiB,CAAC;AAC/B,IAAI,WAAW,CAAC,MAAM,EAAE;AACxB,QAAQ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AAC7B,KAAK;AACL,CAAC;AACM,MAAM,UAAU,CAAC;AACxB,IAAI,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI,EAAE;AACpD,QAAQ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AAC7B,QAAQ,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AAC3B,QAAQ,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;AACzC,QAAQ,IAAI,CAAC,aAAa,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;AACzD,KAAK;AACL,IAAI,MAAM,CAAC,OAAO,EAAE;AACpB,QAAQ,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AACxC,KAAK;AACL,IAAI,UAAU,CAAC,OAAO,EAAE;AACxB,QAAQ,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC3B,QAAQ,OAAO,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;AACpE,KAAK;AACL,CAAC;AACM,MAAM,aAAa,CAAC;AAC3B,IAAI,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI,EAAE;AACpD,QAAQ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AAC7B,QAAQ,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AAC3B,QAAQ,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;AACzC,KAAK;AACL;;ACtCO,MAAM,sBAAsB,CAAC;AACpC;;ACDO,MAAM,iBAAiB,CAAC;AAC/B;;ACDO,MAAM,kBAAkB,CAAC;AAChC;;ACDO,MAAM,oBAAoB,CAAC;AAClC,IAAI,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE;AACpC,QAAQ,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AACzB,QAAQ,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AAC3B,QAAQ,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AAC3B,KAAK;AACL;;ACLO,MAAM,YAAY,CAAC;AAC1B,IAAI,WAAW,CAAC,KAAK,EAAE;AACvB,QAAQ,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AAC3B,QAAQ,IAAI,CAAC,aAAa,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;AACzD,KAAK;AACL,IAAI,UAAU,GAAG;AACjB,QAAQ,OAAO,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;AACpE,KAAK;AACL;;;;"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../esm/database.js","../esm/datasource.js","../../node_modules/uuid/dist/esm-browser/stringify.js","../../node_modules/uuid/dist/esm-browser/rng.js","../../node_modules/uuid/dist/esm-browser/native.js","../../node_modules/uuid/dist/esm-browser/v4.js","../esm/helpers.js","../esm/entity-manager.js","../esm/entity.js","../esm/persistent-unit.js","../esm/procedure.js","../esm/repository.js","../esm/result.js","../esm/values.js"],"sourcesContent":["export class AbstractEntityDatabase {\n}\n//# sourceMappingURL=database.js.map","export class AbstractEntityDataSource {\n}\n//# sourceMappingURL=datasource.js.map","import validate from './validate.js';\nconst byteToHex = [];\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\nexport function unsafeStringify(arr, offset = 0) {\n return (byteToHex[arr[offset + 0]] +\n byteToHex[arr[offset + 1]] +\n byteToHex[arr[offset + 2]] +\n byteToHex[arr[offset + 3]] +\n '-' +\n byteToHex[arr[offset + 4]] +\n byteToHex[arr[offset + 5]] +\n '-' +\n byteToHex[arr[offset + 6]] +\n byteToHex[arr[offset + 7]] +\n '-' +\n byteToHex[arr[offset + 8]] +\n byteToHex[arr[offset + 9]] +\n '-' +\n byteToHex[arr[offset + 10]] +\n byteToHex[arr[offset + 11]] +\n byteToHex[arr[offset + 12]] +\n byteToHex[arr[offset + 13]] +\n byteToHex[arr[offset + 14]] +\n byteToHex[arr[offset + 15]]).toLowerCase();\n}\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset);\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n return uuid;\n}\nexport default stringify;\n","let getRandomValues;\nconst rnds8 = new Uint8Array(16);\nexport default function rng() {\n if (!getRandomValues) {\n if (typeof crypto === 'undefined' || !crypto.getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n getRandomValues = crypto.getRandomValues.bind(crypto);\n }\n return getRandomValues(rnds8);\n}\n","const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nexport default { randomUUID };\n","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n options = options || {};\n const rnds = options.random ?? options.rng?.() ?? rng();\n if (rnds.length < 16) {\n throw new Error('Random bytes length must be >= 16');\n }\n rnds[6] = (rnds[6] & 0x0f) | 0x40;\n rnds[8] = (rnds[8] & 0x3f) | 0x80;\n if (buf) {\n offset = offset || 0;\n if (offset < 0 || offset + 16 > buf.length) {\n throw new RangeError(`UUID byte range ${offset}:${offset + 15} is out of buffer bounds`);\n }\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n return buf;\n }\n return unsafeStringify(rnds);\n}\nexport default v4;\n","export function modelIsEditable(model) {\n return typeof model === 'object' && 'updatedAt' in model;\n}\nexport function modelIsHideable(model) {\n return typeof model === 'object' && 'hidden' in model && 'hiddenAt' in model;\n}\nexport function modelToLiteralObject(model) {\n const changes = {};\n Object.entries(model).forEach(([key, value]) => {\n changes[key] = value;\n });\n return changes;\n}\nexport function verifyChangesInModel(model, initialStatus) {\n const currentStatus = modelToLiteralObject(model);\n const changes = {};\n Object.entries(currentStatus).forEach(([key, value]) => {\n if (currentStatus[key] !== initialStatus[key]) {\n changes[key] = value;\n }\n });\n const requiredUpdate = Object.keys(changes).length > 0;\n if (requiredUpdate && modelIsEditable(model)) {\n changes['updatedAt'] = new Date();\n }\n return requiredUpdate ? changes : undefined;\n}\n//# sourceMappingURL=helpers.js.map","import { ResultFactory, fromPromise } from '@rolster/commons';\nimport { v4 as uuid } from 'uuid';\nimport { modelIsHideable } from './helpers';\nexport class AbstractEntityManager {\n}\nexport class EntityManager {\n constructor(dataSource) {\n this.dataSource = dataSource;\n this._persists = [];\n this._persistsList = [];\n this._syncs = [];\n this._refreshs = [];\n this._procedures = [];\n this._hiddens = [];\n this._destroys = [];\n this.uuid = uuid();\n this._relations = new Map();\n }\n persist(persist) {\n this._persists.push(persist);\n }\n persists(persists) {\n this._persistsList.push(persists);\n }\n sync(sync) {\n const { entity, model, relationable } = sync;\n relationable && this.relation(entity, model);\n this._syncs.push(sync);\n }\n refresh(refresh) {\n const { entity, model, relationable } = refresh;\n relationable && this.relation(entity, model);\n this._refreshs.push(refresh);\n }\n procedure(procedure) {\n this._procedures.push(procedure);\n }\n destroy(entity) {\n const result = this.select(entity);\n if (result.isSuccess) {\n !modelIsHideable(result.value)\n ? this._destroys.push(result.value)\n : this._hiddens.push(result.value);\n }\n }\n relation(entity, model) {\n this._relations.set(entity, model);\n }\n link(entity, model) {\n this.relation(entity, model);\n return entity;\n }\n select(entity) {\n const model = this._relations.get(entity);\n return model\n ? ResultFactory.success(model)\n : ResultFactory.failure('Not found');\n }\n async flush() {\n const persists = [\n ...(await this.persistAll()),\n ...(await this.persistListAll())\n ];\n const syncs = await this.syncAll();\n const refreshs = await this.refreshAll();\n const procedures = await this.procedureAll();\n const [hiddens, destroys] = await Promise.all([\n this.hiddenAll(),\n this.destroyAll()\n ]);\n const results = [\n ...persists,\n ...syncs,\n ...refreshs,\n ...procedures,\n ...hiddens,\n ...destroys\n ];\n this.dispose();\n return results;\n }\n dispose() {\n this._relations.clear();\n this._persists = [];\n this._persistsList = [];\n this._refreshs = [];\n this._syncs = [];\n this._hiddens = [];\n this._destroys = [];\n this._procedures = [];\n }\n async persistAll() {\n const results = [];\n for (const persist of this._persists) {\n const model = await fromPromise(persist.create(this));\n persist.relationable && this.relation(persist.entity, model);\n results.push(await this.dataSource.insert(model));\n }\n return results;\n }\n async persistListAll() {\n const results = [];\n for (const persists of this._persistsList) {\n const models = await fromPromise(persists.create(this));\n for (const model of models) {\n results.push(await this.dataSource.insert(model));\n }\n }\n return results;\n }\n syncAll() {\n const syncs = this._syncs.filter(({ model }) => !modelIsHideable(model)\n ? !this._destroys.includes(model)\n : !this._hiddens.includes(model));\n const syncs$ = [];\n syncs.forEach((sync) => {\n const dirty = sync.verify(this);\n if (dirty) {\n syncs$.push(this.dataSource.update(sync.model, dirty));\n }\n });\n return Promise.all(syncs$);\n }\n async refreshAll() {\n const refreshs$ = this._refreshs.map(async (refresh) => {\n const _models = await fromPromise(refresh.dispatch(this));\n const models = _models.filter(({ model }) => !modelIsHideable(model)\n ? !this._destroys.includes(model)\n : !this._hiddens.includes(model));\n return this.dataSource.refresh(models);\n });\n return Promise.all(refreshs$);\n }\n async destroyAll() {\n return Promise.all(this._destroys.map((destroy) => {\n return this.dataSource.delete(destroy);\n }));\n }\n async hiddenAll() {\n return Promise.all(this._hiddens.map((hidden) => {\n return this.dataSource.hidden(hidden);\n }));\n }\n async procedureAll() {\n return Promise.all(this._procedures.map((procedure) => {\n return this.dataSource.procedure(this, procedure);\n }));\n }\n}\n//# sourceMappingURL=entity-manager.js.map","import { modelToLiteralObject, verifyChangesInModel } from './helpers';\nexport class Entity {\n constructor(uuid) {\n this.uuid = uuid;\n }\n}\nexport class EntityPersist {\n constructor(entity, relationable = true) {\n this.entity = entity;\n this.relationable = relationable;\n }\n}\nexport class EntityPersistList {\n constructor(entity) {\n this.entity = entity;\n }\n}\nexport class EntitySync {\n constructor(entity, model, relationable = true) {\n this.entity = entity;\n this.model = model;\n this.relationable = relationable;\n this.initialStatus = modelToLiteralObject(model);\n }\n verify(manager) {\n return this.verifySync(manager);\n }\n verifySync(manager) {\n this.sync(manager); // Sync data Entity/Model\n return verifyChangesInModel(this.model, this.initialStatus);\n }\n}\nexport class EntityRefresh {\n constructor(entity, model, relationable = true) {\n this.entity = entity;\n this.model = model;\n this.relationable = relationable;\n }\n}\n//# sourceMappingURL=entity.js.map","export class AbstractPersistentUnit {\n}\n//# sourceMappingURL=persistent-unit.js.map","export class AbstractProcedure {\n}\n//# sourceMappingURL=procedure.js.map","export class AbstractRepository {\n}\n//# sourceMappingURL=repository.js.map","export class PersistentUnitResult {\n constructor(code, error, model) {\n this.code = code;\n this.error = error;\n this.model = model;\n }\n}\n//# sourceMappingURL=result.js.map","import { modelToLiteralObject, verifyChangesInModel } from './helpers';\nexport class RefreshModel {\n constructor(model) {\n this.model = model;\n this.initialStatus = modelToLiteralObject(model);\n }\n getChanges() {\n return verifyChangesInModel(this.model, this.initialStatus);\n }\n}\n//# sourceMappingURL=values.js.map"],"names":["uuid"],"mappings":"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"}
|
package/dist/esm/datasource.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AbstractProcedure } from './procedure';
|
|
2
2
|
import { PersistentUnitResult } from './result';
|
|
3
|
-
import { AbstractModel, HideableModel } from './types';
|
|
3
|
+
import { AbstractModel, HideableModel, QueryEntityManager } from './types';
|
|
4
4
|
import { RefreshModel } from './values';
|
|
5
5
|
export declare abstract class AbstractEntityDataSource {
|
|
6
6
|
abstract insert(model: AbstractModel): Promise<PersistentUnitResult>;
|
|
@@ -8,5 +8,5 @@ export declare abstract class AbstractEntityDataSource {
|
|
|
8
8
|
abstract refresh(models: RefreshModel[]): Promise<PersistentUnitResult>;
|
|
9
9
|
abstract delete(model: AbstractModel): Promise<PersistentUnitResult>;
|
|
10
10
|
abstract hidden(model: HideableModel): Promise<PersistentUnitResult>;
|
|
11
|
-
abstract procedure(procedure: AbstractProcedure): Promise<PersistentUnitResult>;
|
|
11
|
+
abstract procedure(manager: QueryEntityManager, procedure: AbstractProcedure): Promise<PersistentUnitResult>;
|
|
12
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datasource.js","sourceRoot":"","sources":["../../src/datasource.ts"],"names":[],"mappings":"AAKA,MAAM,OAAgB,wBAAwB;
|
|
1
|
+
{"version":3,"file":"datasource.js","sourceRoot":"","sources":["../../src/datasource.ts"],"names":[],"mappings":"AAKA,MAAM,OAAgB,wBAAwB;CAkB7C"}
|
|
@@ -132,13 +132,19 @@ export class EntityManager {
|
|
|
132
132
|
return Promise.all(refreshs$);
|
|
133
133
|
}
|
|
134
134
|
async destroyAll() {
|
|
135
|
-
return Promise.all(this._destroys.map((destroy) =>
|
|
135
|
+
return Promise.all(this._destroys.map((destroy) => {
|
|
136
|
+
return this.dataSource.delete(destroy);
|
|
137
|
+
}));
|
|
136
138
|
}
|
|
137
139
|
async hiddenAll() {
|
|
138
|
-
return Promise.all(this._hiddens.map((hidden) =>
|
|
140
|
+
return Promise.all(this._hiddens.map((hidden) => {
|
|
141
|
+
return this.dataSource.hidden(hidden);
|
|
142
|
+
}));
|
|
139
143
|
}
|
|
140
144
|
async procedureAll() {
|
|
141
|
-
return Promise.all(this._procedures.map((procedure) =>
|
|
145
|
+
return Promise.all(this._procedures.map((procedure) => {
|
|
146
|
+
return this.dataSource.procedure(this, procedure);
|
|
147
|
+
}));
|
|
142
148
|
}
|
|
143
149
|
}
|
|
144
150
|
//# sourceMappingURL=entity-manager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-manager.js","sourceRoot":"","sources":["../../src/entity-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,aAAa,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAQlC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAkB5C,MAAM,OAAgB,qBAAqB;CAwB1C;AAED,MAAM,OAAO,aAAa;
|
|
1
|
+
{"version":3,"file":"entity-manager.js","sourceRoot":"","sources":["../../src/entity-manager.ts"],"names":[],"mappings":"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"}
|