Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
d27dafba2b | |||
b6594de18c | |||
d9246cbeac |
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@push.rocks/smartdata",
|
||||
"version": "5.2.1",
|
||||
"version": "5.2.2",
|
||||
"private": false,
|
||||
"description": "An advanced library for NoSQL data organization and manipulation using TypeScript with support for MongoDB, data validation, collections, and custom data types.",
|
||||
"main": "dist_ts/index.js",
|
||||
@ -13,14 +13,14 @@
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+ssh://git@gitlab.com/pushrocks/smartdata.git"
|
||||
"url": "https://code.foss.global/push.rocks/smartdata.git"
|
||||
},
|
||||
"author": "Lossless GmbH",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://gitlab.com/pushrocks/smartdata/issues"
|
||||
},
|
||||
"homepage": "https://gitlab.com/pushrocks/smartdata#README",
|
||||
"homepage": "https://code.foss.global/push.rocks/smartdata",
|
||||
"dependencies": {
|
||||
"@push.rocks/lik": "^6.0.14",
|
||||
"@push.rocks/smartdelay": "^3.0.1",
|
||||
|
@ -3,6 +3,6 @@
|
||||
*/
|
||||
export const commitinfo = {
|
||||
name: '@push.rocks/smartdata',
|
||||
version: '5.2.1',
|
||||
version: '5.2.2',
|
||||
description: 'An advanced library for NoSQL data organization and manipulation using TypeScript with support for MongoDB, data validation, collections, and custom data types.'
|
||||
}
|
||||
|
@ -13,10 +13,10 @@ export type TDocCreation = 'db' | 'new' | 'mixed';
|
||||
export function svDb() {
|
||||
return (target: SmartDataDbDoc<unknown, unknown>, key: string) => {
|
||||
console.log(`called svDb() on >${target.constructor.name}.${key}<`);
|
||||
if (!target.saveableProperties) {
|
||||
target.saveableProperties = [];
|
||||
if (!target.constructor.prototype.saveableProperties) {
|
||||
target.constructor.prototype.saveableProperties = [];
|
||||
}
|
||||
target.saveableProperties.push(key);
|
||||
target.constructor.prototype.saveableProperties.push(key);
|
||||
};
|
||||
}
|
||||
|
||||
@ -28,16 +28,16 @@ export function unI() {
|
||||
console.log(`called unI on >>${target.constructor.name}.${key}<<`);
|
||||
|
||||
// mark the index as unique
|
||||
if (!target.uniqueIndexes) {
|
||||
target.uniqueIndexes = [];
|
||||
if (!target.constructor.prototype.uniqueIndexes) {
|
||||
target.constructor.prototype.uniqueIndexes = [];
|
||||
}
|
||||
target.uniqueIndexes.push(key);
|
||||
target.constructor.prototype.uniqueIndexes.push(key);
|
||||
|
||||
// and also save it
|
||||
if (!target.saveableProperties) {
|
||||
target.saveableProperties = [];
|
||||
if (!target.constructor.prototype.saveableProperties) {
|
||||
target.constructor.prototype.saveableProperties = [];
|
||||
}
|
||||
target.saveableProperties.push(key);
|
||||
target.constructor.prototype.saveableProperties.push(key);
|
||||
};
|
||||
}
|
||||
|
||||
@ -301,7 +301,7 @@ export class SmartDataDbDoc<T extends TImplements, TImplements, TManager extends
|
||||
*/
|
||||
public async createSavableObject(): Promise<TImplements> {
|
||||
const saveableObject: unknown = {}; // is not exposed to outside, so any is ok here
|
||||
for (const propertyNameString of this.saveableProperties) {
|
||||
for (const propertyNameString of this.constructor.prototype.saveableProperties) {
|
||||
saveableObject[propertyNameString] = this[propertyNameString];
|
||||
}
|
||||
return saveableObject as TImplements;
|
||||
|
Reference in New Issue
Block a user