onecore 0.0.41 → 0.0.43
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/index.js +60 -8
- package/package.json +1 -1
- package/src/db.ts +3 -0
- package/src/index.ts +40 -8
- package/src/metadata.ts +1 -0
package/lib/index.js
CHANGED
|
@@ -32,6 +32,14 @@ var ViewManager = (function () {
|
|
|
32
32
|
return ViewManager;
|
|
33
33
|
}());
|
|
34
34
|
exports.ViewManager = ViewManager;
|
|
35
|
+
var DefaultViewService = (function (_super) {
|
|
36
|
+
__extends(DefaultViewService, _super);
|
|
37
|
+
function DefaultViewService() {
|
|
38
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
39
|
+
}
|
|
40
|
+
return DefaultViewService;
|
|
41
|
+
}(ViewManager));
|
|
42
|
+
exports.DefaultViewService = DefaultViewService;
|
|
35
43
|
var ViewSearchManager = (function (_super) {
|
|
36
44
|
__extends(ViewSearchManager, _super);
|
|
37
45
|
function ViewSearchManager(find, repo) {
|
|
@@ -86,6 +94,30 @@ var GenericManager = (function (_super) {
|
|
|
86
94
|
return GenericManager;
|
|
87
95
|
}(ViewManager));
|
|
88
96
|
exports.GenericManager = GenericManager;
|
|
97
|
+
var DefaultGenericService = (function (_super) {
|
|
98
|
+
__extends(DefaultGenericService, _super);
|
|
99
|
+
function DefaultGenericService() {
|
|
100
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
101
|
+
}
|
|
102
|
+
return DefaultGenericService;
|
|
103
|
+
}(GenericManager));
|
|
104
|
+
exports.DefaultGenericService = DefaultGenericService;
|
|
105
|
+
var DefaultService = (function (_super) {
|
|
106
|
+
__extends(DefaultService, _super);
|
|
107
|
+
function DefaultService() {
|
|
108
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
109
|
+
}
|
|
110
|
+
return DefaultService;
|
|
111
|
+
}(GenericManager));
|
|
112
|
+
exports.DefaultService = DefaultService;
|
|
113
|
+
var DefaultGenericSearchService = (function (_super) {
|
|
114
|
+
__extends(DefaultGenericSearchService, _super);
|
|
115
|
+
function DefaultGenericSearchService() {
|
|
116
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
117
|
+
}
|
|
118
|
+
return DefaultGenericSearchService;
|
|
119
|
+
}(GenericManager));
|
|
120
|
+
exports.DefaultGenericSearchService = DefaultGenericSearchService;
|
|
89
121
|
var Manager = (function (_super) {
|
|
90
122
|
__extends(Manager, _super);
|
|
91
123
|
function Manager(find, repo) {
|
|
@@ -100,16 +132,20 @@ var Manager = (function (_super) {
|
|
|
100
132
|
return Manager;
|
|
101
133
|
}(GenericManager));
|
|
102
134
|
exports.Manager = Manager;
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
135
|
+
var GenericSearchManager = (function (_super) {
|
|
136
|
+
__extends(GenericSearchManager, _super);
|
|
137
|
+
function GenericSearchManager() {
|
|
138
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
139
|
+
}
|
|
140
|
+
return GenericSearchManager;
|
|
141
|
+
}(Manager));
|
|
142
|
+
exports.GenericSearchManager = GenericSearchManager;
|
|
108
143
|
var SavedService = (function () {
|
|
109
|
-
function SavedService(repository, query, max) {
|
|
144
|
+
function SavedService(repository, query, max, autoRemove) {
|
|
110
145
|
this.repository = repository;
|
|
111
146
|
this.query = query;
|
|
112
147
|
this.max = max;
|
|
148
|
+
this.autoRemove = autoRemove;
|
|
113
149
|
this.load = this.load.bind(this);
|
|
114
150
|
this.save = this.save.bind(this);
|
|
115
151
|
this.remove = this.remove.bind(this);
|
|
@@ -136,9 +172,17 @@ var SavedService = (function () {
|
|
|
136
172
|
else {
|
|
137
173
|
items.push(itemId);
|
|
138
174
|
if (items.length > _this.max) {
|
|
139
|
-
|
|
175
|
+
if (_this.autoRemove) {
|
|
176
|
+
items.shift();
|
|
177
|
+
return _this.repository.update(id, items);
|
|
178
|
+
}
|
|
179
|
+
else {
|
|
180
|
+
return Promise.resolve(-1);
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
return _this.repository.update(id, items);
|
|
140
185
|
}
|
|
141
|
-
return _this.repository.update(id, items);
|
|
142
186
|
}
|
|
143
187
|
}
|
|
144
188
|
});
|
|
@@ -165,3 +209,11 @@ var SavedService = (function () {
|
|
|
165
209
|
return SavedService;
|
|
166
210
|
}());
|
|
167
211
|
exports.SavedService = SavedService;
|
|
212
|
+
var SavedManager = (function (_super) {
|
|
213
|
+
__extends(SavedManager, _super);
|
|
214
|
+
function SavedManager() {
|
|
215
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
216
|
+
}
|
|
217
|
+
return SavedManager;
|
|
218
|
+
}(SavedService));
|
|
219
|
+
exports.SavedManager = SavedManager;
|
package/package.json
CHANGED
package/src/db.ts
CHANGED
package/src/index.ts
CHANGED
|
@@ -80,6 +80,18 @@ export interface ImportService {
|
|
|
80
80
|
export interface Importer {
|
|
81
81
|
import(): Promise<ImportResult>;
|
|
82
82
|
}
|
|
83
|
+
export interface Parser<T> {
|
|
84
|
+
parse: (data: string) => Promise<T>;
|
|
85
|
+
}
|
|
86
|
+
export interface Transformer<T> {
|
|
87
|
+
transform: (data: string) => Promise<T>;
|
|
88
|
+
}
|
|
89
|
+
export interface ExportService {
|
|
90
|
+
export(ctx?: any): Promise<number>;
|
|
91
|
+
}
|
|
92
|
+
export interface Exporter {
|
|
93
|
+
export(ctx?: any): Promise<number>;
|
|
94
|
+
}
|
|
83
95
|
export class ViewManager<T, ID> implements ViewService<T, ID> {
|
|
84
96
|
constructor(private r: ViewRepository<T, ID>) {
|
|
85
97
|
this.metadata = this.metadata.bind(this);
|
|
@@ -96,6 +108,10 @@ export class ViewManager<T, ID> implements ViewService<T, ID> {
|
|
|
96
108
|
return this.r.load(id, ctx);
|
|
97
109
|
}
|
|
98
110
|
}
|
|
111
|
+
// tslint:disable-next-line:max-classes-per-file
|
|
112
|
+
export class DefaultViewService<T, ID> extends ViewManager<T, ID> {
|
|
113
|
+
}
|
|
114
|
+
|
|
99
115
|
// tslint:disable-next-line:max-classes-per-file
|
|
100
116
|
export class ViewSearchManager<T, ID, F extends Filter> extends ViewManager<T, ID> implements ViewSearchService<T, ID, F> {
|
|
101
117
|
constructor(public find: Search<T, F>, repo: ViewRepository<T, ID>) {
|
|
@@ -139,6 +155,15 @@ export class GenericManager<T, ID> extends ViewManager<T, ID> implements Generic
|
|
|
139
155
|
}
|
|
140
156
|
}
|
|
141
157
|
// tslint:disable-next-line:max-classes-per-file
|
|
158
|
+
export class DefaultGenericService<T, ID> extends GenericManager<T, ID> {
|
|
159
|
+
}
|
|
160
|
+
// tslint:disable-next-line:max-classes-per-file
|
|
161
|
+
export class DefaultService<T, ID> extends GenericManager<T, ID> {
|
|
162
|
+
}
|
|
163
|
+
// tslint:disable-next-line:max-classes-per-file
|
|
164
|
+
export class DefaultGenericSearchService<T, ID> extends GenericManager<T, ID> {
|
|
165
|
+
}
|
|
166
|
+
// tslint:disable-next-line:max-classes-per-file
|
|
142
167
|
export class Manager<T, ID, F extends Filter> extends GenericManager<T, ID> implements GenericSearchService<T, ID, number, F> {
|
|
143
168
|
constructor(public find: Search<T, F>, repo: GenericRepository<T, ID>) {
|
|
144
169
|
super(repo);
|
|
@@ -148,11 +173,9 @@ export class Manager<T, ID, F extends Filter> extends GenericManager<T, ID> impl
|
|
|
148
173
|
return this.find(s, limit, offset, fields);
|
|
149
174
|
}
|
|
150
175
|
}
|
|
151
|
-
|
|
152
|
-
export
|
|
153
|
-
|
|
154
|
-
export const DefaultService = GenericManager;
|
|
155
|
-
export const DefaultGenericSearchService = GenericManager;
|
|
176
|
+
// tslint:disable-next-line:max-classes-per-file
|
|
177
|
+
export class GenericSearchManager<T, ID, F extends Filter> extends Manager<T, ID, F> {
|
|
178
|
+
}
|
|
156
179
|
export interface SavedRepository<ID> {
|
|
157
180
|
load(id: ID): Promise<string[]|null>;
|
|
158
181
|
insert(id: ID, arr: string[]): Promise<number>;
|
|
@@ -160,7 +183,7 @@ export interface SavedRepository<ID> {
|
|
|
160
183
|
}
|
|
161
184
|
// tslint:disable-next-line:max-classes-per-file
|
|
162
185
|
export class SavedService<ID, T> {
|
|
163
|
-
constructor(protected repository: SavedRepository<ID>, protected query: (ids: string[]) => Promise<T[]>, public max: number) {
|
|
186
|
+
constructor(protected repository: SavedRepository<ID>, protected query: (ids: string[]) => Promise<T[]>, public max: number, public autoRemove?: boolean) {
|
|
164
187
|
this.load = this.load.bind(this);
|
|
165
188
|
this.save = this.save.bind(this);
|
|
166
189
|
this.remove = this.remove.bind(this);
|
|
@@ -183,9 +206,15 @@ export class SavedService<ID, T> {
|
|
|
183
206
|
} else {
|
|
184
207
|
items.push(itemId);
|
|
185
208
|
if (items.length > this.max) {
|
|
186
|
-
|
|
209
|
+
if (this.autoRemove) {
|
|
210
|
+
items.shift();
|
|
211
|
+
return this.repository.update(id, items);
|
|
212
|
+
} else {
|
|
213
|
+
return Promise.resolve(-1);
|
|
214
|
+
}
|
|
215
|
+
} else {
|
|
216
|
+
return this.repository.update(id, items);
|
|
187
217
|
}
|
|
188
|
-
return this.repository.update(id, items);
|
|
189
218
|
}
|
|
190
219
|
}
|
|
191
220
|
});
|
|
@@ -207,3 +236,6 @@ export class SavedService<ID, T> {
|
|
|
207
236
|
});
|
|
208
237
|
}
|
|
209
238
|
}
|
|
239
|
+
// tslint:disable-next-line:max-classes-per-file
|
|
240
|
+
export class SavedManager<ID, T> extends SavedService<ID, T> {
|
|
241
|
+
}
|