@entropic-bond/crud-panel 4.0.0 → 4.0.2
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/lib/crud-controller.d.ts +22 -4
- package/lib/crud-controller.js +27 -3
- package/lib/crud-controller.js.map +1 -1
- package/package.json +1 -1
package/lib/crud-controller.d.ts
CHANGED
|
@@ -25,12 +25,30 @@ export declare abstract class CrudController<T extends EntropicComponent> {
|
|
|
25
25
|
protected storeDoc(): Promise<void>;
|
|
26
26
|
protected deleteDoc(): Promise<void>;
|
|
27
27
|
/**
|
|
28
|
-
* Override this method to customize the query used to retrieve the documents
|
|
28
|
+
* Override this method to customize the query used to retrieve the documents
|
|
29
|
+
* in the documentCollection method. This is the default method used by
|
|
30
|
+
* the documentCollection method. If the findDocs method is overridden and returns
|
|
31
|
+
* non undefined value, then this queryDocs method will not be used.
|
|
29
32
|
*
|
|
30
33
|
* @param limit the maximum number of documents to retrieve
|
|
31
34
|
* @returns a query to retrieve the documents
|
|
35
|
+
* @see documentCollection
|
|
36
|
+
* @see findDocs
|
|
32
37
|
*/
|
|
33
|
-
protected
|
|
38
|
+
protected queryDocs(limit?: number): Query<T>;
|
|
39
|
+
/**
|
|
40
|
+
* Override this method to customize the query used to retrieve the documents
|
|
41
|
+
* in the documentCollection method. The default method called by the
|
|
42
|
+
* documentCollection method is the queryDocs method. If this findDocs method
|
|
43
|
+
* returns a non undefined value, then this method will be used instead of the
|
|
44
|
+
* queryDocs method.
|
|
45
|
+
*
|
|
46
|
+
* @param limit the maximum number of documents to retrieve
|
|
47
|
+
* @returns a query to retrieve the documents
|
|
48
|
+
* @see documentCollection
|
|
49
|
+
* @see queryDocs
|
|
50
|
+
*/
|
|
51
|
+
protected findDocs(limit?: number): Promise<T[]> | undefined;
|
|
34
52
|
/**
|
|
35
53
|
* Sets a filter function to filter in memory the documents returned by the `documentCollection` method.
|
|
36
54
|
*
|
|
@@ -53,14 +71,14 @@ export declare abstract class CrudController<T extends EntropicComponent> {
|
|
|
53
71
|
*/
|
|
54
72
|
onError(observer: Callback<Error>): Unsubscriber;
|
|
55
73
|
protected notifyChange<U extends CrudControllerEvent<T>>(event: U): void;
|
|
56
|
-
newDocument():
|
|
74
|
+
newDocument(): this;
|
|
57
75
|
storeDocument(): Promise<void>;
|
|
58
76
|
deleteDocument(): Promise<void>;
|
|
59
77
|
documentCollection(limit?: number): Promise<T[]>;
|
|
60
78
|
filter(docs: T[]): T[];
|
|
61
79
|
onProgress(observer: Callback<ProgressEvent>): Unsubscriber;
|
|
62
80
|
protected get model(): Model<T>;
|
|
63
|
-
setDocument(value: T):
|
|
81
|
+
setDocument(value: T): this;
|
|
64
82
|
set document(value: T);
|
|
65
83
|
get document(): T;
|
|
66
84
|
/**
|
package/lib/crud-controller.js
CHANGED
|
@@ -47,17 +47,37 @@ class CrudController {
|
|
|
47
47
|
return this.model.delete(this.document.id);
|
|
48
48
|
}
|
|
49
49
|
/**
|
|
50
|
-
* Override this method to customize the query used to retrieve the documents
|
|
50
|
+
* Override this method to customize the query used to retrieve the documents
|
|
51
|
+
* in the documentCollection method. This is the default method used by
|
|
52
|
+
* the documentCollection method. If the findDocs method is overridden and returns
|
|
53
|
+
* non undefined value, then this queryDocs method will not be used.
|
|
51
54
|
*
|
|
52
55
|
* @param limit the maximum number of documents to retrieve
|
|
53
56
|
* @returns a query to retrieve the documents
|
|
57
|
+
* @see documentCollection
|
|
58
|
+
* @see findDocs
|
|
54
59
|
*/
|
|
55
|
-
|
|
60
|
+
queryDocs(limit) {
|
|
56
61
|
let query = this.model.find();
|
|
57
62
|
if (limit)
|
|
58
63
|
query = query.limit(limit);
|
|
59
64
|
return query;
|
|
60
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* Override this method to customize the query used to retrieve the documents
|
|
68
|
+
* in the documentCollection method. The default method called by the
|
|
69
|
+
* documentCollection method is the queryDocs method. If this findDocs method
|
|
70
|
+
* returns a non undefined value, then this method will be used instead of the
|
|
71
|
+
* queryDocs method.
|
|
72
|
+
*
|
|
73
|
+
* @param limit the maximum number of documents to retrieve
|
|
74
|
+
* @returns a query to retrieve the documents
|
|
75
|
+
* @see documentCollection
|
|
76
|
+
* @see queryDocs
|
|
77
|
+
*/
|
|
78
|
+
findDocs(limit) {
|
|
79
|
+
return undefined;
|
|
80
|
+
}
|
|
61
81
|
/**
|
|
62
82
|
* Sets a filter function to filter in memory the documents returned by the `documentCollection` method.
|
|
63
83
|
*
|
|
@@ -142,7 +162,11 @@ class CrudController {
|
|
|
142
162
|
let found = [];
|
|
143
163
|
try {
|
|
144
164
|
this.progressController.notifyBusy(true, progressStage);
|
|
145
|
-
|
|
165
|
+
const docPromise = this.findDocs(limit);
|
|
166
|
+
if (docPromise)
|
|
167
|
+
found = await docPromise;
|
|
168
|
+
else
|
|
169
|
+
found = await this.queryDocs(limit).get();
|
|
146
170
|
}
|
|
147
171
|
catch (error) {
|
|
148
172
|
this.onChangeHdl.notify({ error: this.errorToError(error) });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crud-controller.js","sourceRoot":"","sources":["../src/crud-controller.ts"],"names":[],"mappings":";;;AAAA,iDAAoI;AACpI,+DAAyE;AAiBzE,MAAsB,cAAc;IAKnC,YAAa,QAAY;
|
|
1
|
+
{"version":3,"file":"crud-controller.js","sourceRoot":"","sources":["../src/crud-controller.ts"],"names":[],"mappings":"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"}
|