@akanjs/document 0.9.58-canary.0 → 0.9.58-canary.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/cjs/src/database.js +3 -0
- package/esm/src/database.js +3 -0
- package/package.json +1 -1
- package/src/database.d.ts +3 -0
- package/src/dbDecorators.d.ts +1 -1
package/cjs/src/database.js
CHANGED
|
@@ -200,6 +200,9 @@ const databaseModelOf = (database, model, redis, meili) => {
|
|
|
200
200
|
async [`load${className}Many`](ids) {
|
|
201
201
|
return await this.__loader.loadMany(ids);
|
|
202
202
|
}
|
|
203
|
+
async clone(data) {
|
|
204
|
+
return await new this.__model({ ...data, _id: data.id }).save();
|
|
205
|
+
}
|
|
203
206
|
async [`create${className}`](data) {
|
|
204
207
|
return await new this.__model(data).save();
|
|
205
208
|
}
|
package/esm/src/database.js
CHANGED
|
@@ -182,6 +182,9 @@ const databaseModelOf = (database, model, redis, meili) => {
|
|
|
182
182
|
async [`load${className}Many`](ids) {
|
|
183
183
|
return await this.__loader.loadMany(ids);
|
|
184
184
|
}
|
|
185
|
+
async clone(data) {
|
|
186
|
+
return await new this.__model({ ...data, _id: data.id }).save();
|
|
187
|
+
}
|
|
185
188
|
async [`create${className}`](data) {
|
|
186
189
|
return await new this.__model(data).save();
|
|
187
190
|
}
|
package/package.json
CHANGED
package/src/database.d.ts
CHANGED
|
@@ -88,6 +88,9 @@ type DatabaseModelWithQuerySort<T extends string, Input, Doc, Obj, Insight, Quer
|
|
|
88
88
|
__exists(query: _QueryOfDoc): Promise<string | null>;
|
|
89
89
|
__count(query: _QueryOfDoc): Promise<number>;
|
|
90
90
|
__insight(query: _QueryOfDoc): Promise<Insight>;
|
|
91
|
+
clone(data: _DataInput & {
|
|
92
|
+
id: string;
|
|
93
|
+
}): Promise<Doc>;
|
|
91
94
|
listenPre: (type: SaveEventType, listener: (doc: Doc, type: CRUDEventType) => PromiseOrObject<void>) => () => void;
|
|
92
95
|
listenPost: (type: SaveEventType, listener: (doc: Doc, type: CRUDEventType) => PromiseOrObject<void>) => () => void;
|
|
93
96
|
} & {
|
package/src/dbDecorators.d.ts
CHANGED
|
@@ -39,7 +39,7 @@ export type SchemaOf<Mdl, Doc> = Schema<null, Mdl, Doc, undefined, null, Mdl>;
|
|
|
39
39
|
export interface BaseMiddleware {
|
|
40
40
|
onSchema: (schema: SchemaOf<any, any>) => void;
|
|
41
41
|
}
|
|
42
|
-
export declare const into: <Doc, Filter extends FilterInstance, T extends string, Input, Full, Light, Insight, AddDbModels extends Type[], _CapitalizedT extends string, _Default, _DefaultInput, _DefaultState, _DefaultStateInput, _DefaultInsight, _PurifiedInput, _Doc, _DocInput, _QueryOfDoc, _Query = ExtractQuery<Filter>, _Sort = keyof Filter["sort"], _DatabaseModel = DatabaseModel<T, _DocInput, Doc, Full, Insight, Filter, _CapitalizedT, _QueryOfDoc, _Query, _Sort>, _LoaderBuilder extends LoaderBuilder<_Doc> = LoaderBuilder<_Doc>>(docRef: Type<Doc>, filterRef: Type<Filter>, cnst: ConstantModel<T, Input, Full, Light, Insight, _CapitalizedT, _Default, _DefaultInput, _DefaultState, _DefaultStateInput, _DefaultInsight, _PurifiedInput, _Doc, _DocInput, _QueryOfDoc>, loaderBuilder: _LoaderBuilder, ...addMdls: AddDbModels) => Type<MergeAllActionTypes<AddDbModels, keyof _DatabaseModel & string> & _DatabaseModel & ExtractLoaderInfoObject<ReturnType<_LoaderBuilder>>>;
|
|
42
|
+
export declare const into: <Doc, Filter extends FilterInstance, T extends string, Input, Obj, Full, Light, Insight, AddDbModels extends Type[], _CapitalizedT extends string, _Default, _DefaultInput, _DefaultState, _DefaultStateInput, _DefaultInsight, _PurifiedInput, _Doc, _DocInput, _QueryOfDoc, _Query = ExtractQuery<Filter>, _Sort = keyof Filter["sort"], _DatabaseModel = DatabaseModel<T, _DocInput, Doc, Full, Insight, Filter, _CapitalizedT, _QueryOfDoc, _Query, _Sort>, _LoaderBuilder extends LoaderBuilder<_Doc> = LoaderBuilder<_Doc>>(docRef: Type<Doc>, filterRef: Type<Filter>, cnst: ConstantModel<T, Input, Obj, Full, Light, Insight, _CapitalizedT, _Default, _DefaultInput, _DefaultState, _DefaultStateInput, _DefaultInsight, _PurifiedInput, _Doc, _DocInput, _QueryOfDoc>, loaderBuilder: _LoaderBuilder, ...addMdls: AddDbModels) => Type<MergeAllActionTypes<AddDbModels, keyof _DatabaseModel & string> & _DatabaseModel & ExtractLoaderInfoObject<ReturnType<_LoaderBuilder>>>;
|
|
43
43
|
export declare const by: <Model, AddDbModels extends Type[], _DocModel = Model extends BaseObject ? Doc<Model> : DocumentModel<Model>>(modelRef: Type<Model>, ...addRefs: AddDbModels) => Type<MergeAllActionTypes<AddDbModels, keyof _DocModel & string> & _DocModel>;
|
|
44
44
|
export declare const beyond: <DbModel, Doc>(model: Type<DbModel>, doc: Type<Doc>) => {
|
|
45
45
|
new (): {
|