@webda/core 1.6.0-beta.2 → 2.0.0-beta.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/lib/application.d.ts +351 -195
- package/lib/application.js +188 -682
- package/lib/application.js.map +1 -1
- package/lib/application.spec.js +109 -289
- package/lib/application.spec.js.map +1 -1
- package/lib/core.d.ts +108 -214
- package/lib/core.js +169 -71
- package/lib/core.js.map +1 -1
- package/lib/core.spec.js +103 -42
- package/lib/core.spec.js.map +1 -1
- package/lib/index.d.ts +4 -0
- package/lib/index.js +9 -1
- package/lib/index.js.map +1 -1
- package/lib/models/aclmodel.d.ts +3 -1
- package/lib/models/aclmodel.js +6 -3
- package/lib/models/aclmodel.js.map +1 -1
- package/lib/models/aclmodel.spec.js +10 -5
- package/lib/models/aclmodel.spec.js.map +1 -1
- package/lib/models/coremodel.d.ts +11 -18
- package/lib/models/coremodel.js +36 -36
- package/lib/models/coremodel.js.map +1 -1
- package/lib/models/coremodel.spec.js +2 -2
- package/lib/models/coremodel.spec.js.map +1 -1
- package/lib/models/ident.d.ts +3 -3
- package/lib/models/ident.js +2 -1
- package/lib/models/ident.js.map +1 -1
- package/lib/models/ident.spec.js +1 -1
- package/lib/models/ident.spec.js.map +1 -1
- package/lib/models/ownermodel.d.ts +8 -4
- package/lib/models/ownermodel.js +9 -4
- package/lib/models/ownermodel.js.map +1 -1
- package/lib/models/ownermodel.spec.js +1 -1
- package/lib/models/ownermodel.spec.js.map +1 -1
- package/lib/models/rolemodel.js.map +1 -1
- package/lib/models/rolemodel.spec.js +5 -2
- package/lib/models/rolemodel.spec.js.map +1 -1
- package/lib/models/user.d.ts +4 -3
- package/lib/models/user.js +2 -1
- package/lib/models/user.js.map +1 -1
- package/lib/models/user.spec.js +1 -1
- package/lib/models/user.spec.js.map +1 -1
- package/lib/queues/filequeue.d.ts +2 -7
- package/lib/queues/filequeue.js +4 -13
- package/lib/queues/filequeue.js.map +1 -1
- package/lib/queues/filequeue.spec.js +2 -3
- package/lib/queues/filequeue.spec.js.map +1 -1
- package/lib/queues/memoryqueue.d.ts +2 -7
- package/lib/queues/memoryqueue.js +1 -11
- package/lib/queues/memoryqueue.js.map +1 -1
- package/lib/queues/memoryqueue.spec.js +1 -1
- package/lib/queues/memoryqueue.spec.js.map +1 -1
- package/lib/queues/queue.spec.d.ts +1 -1
- package/lib/queues/queue.spec.js +12 -10
- package/lib/queues/queue.spec.js.map +1 -1
- package/lib/queues/queueservice.d.ts +1 -1
- package/lib/queues/queueservice.js +1 -1
- package/lib/queues/queueservice.js.map +1 -1
- package/lib/router.d.ts +48 -2
- package/lib/router.js +78 -51
- package/lib/router.js.map +1 -1
- package/lib/router.spec.js +23 -6
- package/lib/router.spec.js.map +1 -1
- package/lib/services/asyncevents.d.ts +1 -0
- package/lib/services/asyncevents.js +4 -3
- package/lib/services/asyncevents.js.map +1 -1
- package/lib/services/asyncevents.spec.js +2 -2
- package/lib/services/asyncevents.spec.js.map +1 -1
- package/lib/services/authentication.d.ts +39 -11
- package/lib/services/authentication.js +60 -55
- package/lib/services/authentication.js.map +1 -1
- package/lib/services/authentication.spec.js +2 -1
- package/lib/services/authentication.spec.js.map +1 -1
- package/lib/services/binary.d.ts +127 -65
- package/lib/services/binary.js +255 -98
- package/lib/services/binary.js.map +1 -1
- package/lib/services/binary.spec.d.ts +2 -1
- package/lib/services/binary.spec.js +101 -30
- package/lib/services/binary.spec.js.map +1 -1
- package/lib/services/cloudbinary.d.ts +67 -0
- package/lib/services/cloudbinary.js +178 -0
- package/lib/services/cloudbinary.js.map +1 -0
- package/lib/services/cloudbinary.spec.d.ts +13 -0
- package/lib/services/cloudbinary.spec.js +212 -0
- package/lib/services/cloudbinary.spec.js.map +1 -0
- package/lib/services/configuration.d.ts +7 -2
- package/lib/services/configuration.js +6 -5
- package/lib/services/configuration.js.map +1 -1
- package/lib/services/configuration.spec.js +3 -2
- package/lib/services/configuration.spec.js.map +1 -1
- package/lib/services/cron.d.ts +5 -6
- package/lib/services/cron.js +5 -12
- package/lib/services/cron.js.map +1 -1
- package/lib/services/cron.spec.js +3 -4
- package/lib/services/cron.spec.js.map +1 -1
- package/lib/services/debugmailer.d.ts +3 -5
- package/lib/services/debugmailer.js +3 -11
- package/lib/services/debugmailer.js.map +1 -1
- package/lib/services/debugmailer.spec.js +1 -1
- package/lib/services/debugmailer.spec.js.map +1 -1
- package/lib/services/echo.d.ts +3 -7
- package/lib/services/echo.js +1 -11
- package/lib/services/echo.js.map +1 -1
- package/lib/services/echo.spec.js +4 -3
- package/lib/services/echo.spec.js.map +1 -1
- package/lib/services/filebinary.d.ts +40 -16
- package/lib/services/filebinary.js +142 -50
- package/lib/services/filebinary.js.map +1 -1
- package/lib/services/filebinary.spec.d.ts +4 -2
- package/lib/services/filebinary.spec.js +50 -12
- package/lib/services/filebinary.spec.js.map +1 -1
- package/lib/services/fileconfiguration.d.ts +1 -5
- package/lib/services/fileconfiguration.js +3 -12
- package/lib/services/fileconfiguration.js.map +1 -1
- package/lib/services/fileconfiguration.spec.js +2 -2
- package/lib/services/fileconfiguration.spec.js.map +1 -1
- package/lib/services/invitationservice.d.ts +28 -4
- package/lib/services/invitationservice.js +9 -6
- package/lib/services/invitationservice.js.map +1 -1
- package/lib/services/invitationservice.spec.js +4 -3
- package/lib/services/invitationservice.spec.js.map +1 -1
- package/lib/services/kubernetesconfiguration.d.ts +3 -5
- package/lib/services/kubernetesconfiguration.js +7 -14
- package/lib/services/kubernetesconfiguration.js.map +1 -1
- package/lib/services/kubernetesconfiguration.spec.js +5 -5
- package/lib/services/kubernetesconfiguration.spec.js.map +1 -1
- package/lib/services/mailer.d.ts +1 -5
- package/lib/services/mailer.js +1 -10
- package/lib/services/mailer.js.map +1 -1
- package/lib/services/mailer.spec.js +3 -3
- package/lib/services/mailer.spec.js.map +1 -1
- package/lib/services/notificationservice.d.ts +2 -0
- package/lib/services/notificationservice.js +2 -0
- package/lib/services/notificationservice.js.map +1 -1
- package/lib/services/notificationservice.spec.js +2 -2
- package/lib/services/notificationservice.spec.js.map +1 -1
- package/lib/services/oauth.d.ts +8 -6
- package/lib/services/oauth.js +30 -14
- package/lib/services/oauth.js.map +1 -1
- package/lib/services/oauth.spec.js +10 -10
- package/lib/services/oauth.spec.js.map +1 -1
- package/lib/services/resource.d.ts +18 -5
- package/lib/services/resource.js +42 -23
- package/lib/services/resource.js.map +1 -1
- package/lib/services/resource.spec.js +4 -4
- package/lib/services/resource.spec.js.map +1 -1
- package/lib/services/service.d.ts +22 -25
- package/lib/services/service.js +16 -22
- package/lib/services/service.js.map +1 -1
- package/lib/services/service.spec.js +2 -2
- package/lib/services/service.spec.js.map +1 -1
- package/lib/services/version.d.ts +2 -5
- package/lib/services/version.js +1 -10
- package/lib/services/version.js.map +1 -1
- package/lib/services/version.spec.js +1 -1
- package/lib/services/version.spec.js.map +1 -1
- package/lib/stores/aggregator.d.ts +3 -5
- package/lib/stores/aggregator.js +3 -10
- package/lib/stores/aggregator.js.map +1 -1
- package/lib/stores/file.d.ts +15 -8
- package/lib/stores/file.js +21 -18
- package/lib/stores/file.js.map +1 -1
- package/lib/stores/file.spec.d.ts +3 -1
- package/lib/stores/file.spec.js +32 -8
- package/lib/stores/file.spec.js.map +1 -1
- package/lib/stores/mapper.d.ts +1 -5
- package/lib/stores/mapper.js +4 -13
- package/lib/stores/mapper.js.map +1 -1
- package/lib/stores/mapper.spec.js +2 -2
- package/lib/stores/mapper.spec.js.map +1 -1
- package/lib/stores/memory.d.ts +5 -9
- package/lib/stores/memory.js +5 -17
- package/lib/stores/memory.js.map +1 -1
- package/lib/stores/memory.spec.d.ts +2 -1
- package/lib/stores/memory.spec.js +36 -4
- package/lib/stores/memory.spec.js.map +1 -1
- package/lib/stores/store.d.ts +137 -26
- package/lib/stores/store.js +431 -75
- package/lib/stores/store.js.map +1 -1
- package/lib/stores/store.spec.d.ts +31 -4
- package/lib/stores/store.spec.js +206 -35
- package/lib/stores/store.spec.js.map +1 -1
- package/lib/stores/webdaql/WebdaQLLexer.d.ts +53 -0
- package/lib/stores/webdaql/WebdaQLLexer.js +290 -0
- package/lib/stores/webdaql/WebdaQLLexer.js.map +1 -0
- package/lib/stores/webdaql/WebdaQLParserLexer.d.ts +53 -0
- package/lib/stores/webdaql/WebdaQLParserLexer.js +290 -0
- package/lib/stores/webdaql/WebdaQLParserLexer.js.map +1 -0
- package/lib/stores/webdaql/WebdaQLParserListener.d.ts +284 -0
- package/lib/stores/webdaql/WebdaQLParserListener.js +4 -0
- package/lib/stores/webdaql/WebdaQLParserListener.js.map +1 -0
- package/lib/stores/webdaql/WebdaQLParserParser.d.ts +301 -0
- package/lib/stores/webdaql/WebdaQLParserParser.js +1781 -0
- package/lib/stores/webdaql/WebdaQLParserParser.js.map +1 -0
- package/lib/stores/webdaql/WebdaQLParserVisitor.d.ts +174 -0
- package/lib/stores/webdaql/WebdaQLParserVisitor.js +4 -0
- package/lib/stores/webdaql/WebdaQLParserVisitor.js.map +1 -0
- package/lib/stores/webdaql/query.d.ts +300 -0
- package/lib/stores/webdaql/query.js +471 -0
- package/lib/stores/webdaql/query.js.map +1 -0
- package/lib/stores/webdaql/query.spec.d.ts +1 -0
- package/lib/stores/webdaql/query.spec.js +136 -0
- package/lib/stores/webdaql/query.spec.js.map +1 -0
- package/lib/test.d.ts +54 -9
- package/lib/test.js +139 -25
- package/lib/test.js.map +1 -1
- package/lib/unpackedapplication.d.ts +66 -0
- package/lib/unpackedapplication.js +219 -0
- package/lib/unpackedapplication.js.map +1 -0
- package/lib/utils/abstractdeployer.spec.js +1 -1
- package/lib/utils/abstractdeployer.spec.js.map +1 -1
- package/lib/utils/context.d.ts +17 -58
- package/lib/utils/context.js +33 -124
- package/lib/utils/context.js.map +1 -1
- package/lib/utils/context.spec.js +49 -28
- package/lib/utils/context.spec.js.map +1 -1
- package/lib/utils/cookie.d.ts +6 -3
- package/lib/utils/cookie.js +9 -5
- package/lib/utils/cookie.js.map +1 -1
- package/lib/utils/cookie.spec.js +5 -5
- package/lib/utils/cookie.spec.js.map +1 -1
- package/lib/utils/httpcontext.d.ts +157 -0
- package/lib/utils/httpcontext.js +279 -0
- package/lib/utils/httpcontext.js.map +1 -0
- package/lib/utils/httpcontext.spec.d.ts +5 -0
- package/lib/utils/httpcontext.spec.js +82 -0
- package/lib/utils/httpcontext.spec.js.map +1 -0
- package/lib/utils/logger.d.ts +18 -5
- package/lib/utils/logger.js +17 -4
- package/lib/utils/logger.js.map +1 -1
- package/lib/utils/logger.spec.js.map +1 -1
- package/lib/utils/serializers.js +5 -1
- package/lib/utils/serializers.js.map +1 -1
- package/lib/utils/serializers.spec.js +3 -3
- package/lib/utils/serializers.spec.js.map +1 -1
- package/lib/utils/waiter.d.ts +1 -1
- package/lib/utils/waiter.js.map +1 -1
- package/lib/utils/waiter.spec.js +2 -2
- package/lib/utils/waiter.spec.js.map +1 -1
- package/package.json +25 -18
- package/test/config-file-no-reload.json +2 -1
- package/test/config-file-reload.json +2 -1
- package/test/config-kube-reload.json +2 -1
- package/test/config-reload.json +1 -1
- package/test/config.json +8 -11
- package/test/config.old.json +1 -1
- package/test/moddas/annotatedservice.js +1 -3
- package/test/moddas/debugmailer.js +2 -7
- package/test/moddas/fakeservice.js +1 -1
- package/test/moddas/voidstore.js +2 -4
- package/test/models/ident.js +1 -1
- package/test/models/task.js +1 -6
- package/webda.module.json +1124 -0
- package/test/config.old-default.json +0 -151
|
@@ -15,9 +15,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
15
15
|
});
|
|
16
16
|
};
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const mocha_1 = require("@testdeck/mocha");
|
|
18
19
|
const assert = require("assert");
|
|
19
20
|
const fs = require("fs");
|
|
20
|
-
const mocha_1 = require("@testdeck/mocha");
|
|
21
21
|
const test_1 = require("../test");
|
|
22
22
|
const resource_1 = require("./resource");
|
|
23
23
|
let ResourceTest = class ResourceTest extends test_1.WebdaTest {
|
|
@@ -56,7 +56,6 @@ let ResourceTest = class ResourceTest extends test_1.WebdaTest {
|
|
|
56
56
|
assert.ok(this.webda.getRouter().getRouteFromUrl(this.ctx, "GET", "/") !== undefined);
|
|
57
57
|
this.resource._redirect(this.ctx);
|
|
58
58
|
assert.strictEqual(this.ctx.getResponseHeaders().Location, "http://test.webda.io/resources/");
|
|
59
|
-
resource_1.default.getModda();
|
|
60
59
|
});
|
|
61
60
|
}
|
|
62
61
|
index() {
|
|
@@ -68,9 +67,10 @@ let ResourceTest = class ResourceTest extends test_1.WebdaTest {
|
|
|
68
67
|
}
|
|
69
68
|
unknownFile() {
|
|
70
69
|
return __awaiter(this, void 0, void 0, function* () {
|
|
70
|
+
this.getService("ResourceService").getParameters().indexFallback = true;
|
|
71
71
|
let executor = this.getExecutor(this.ctx, "test.webda.io", "GET", "/resources/config.unknown.json");
|
|
72
72
|
assert.notStrictEqual(executor, undefined);
|
|
73
|
-
yield assert.rejects(() => executor.execute(this.ctx),
|
|
73
|
+
yield assert.rejects(() => executor.execute(this.ctx), /404/);
|
|
74
74
|
});
|
|
75
75
|
}
|
|
76
76
|
jsonFile() {
|
|
@@ -97,7 +97,7 @@ let ResourceTest = class ResourceTest extends test_1.WebdaTest {
|
|
|
97
97
|
assert.notStrictEqual(executor, undefined);
|
|
98
98
|
yield executor.execute(this.ctx);
|
|
99
99
|
assert.strictEqual(this.ctx.getResponseBody().toString(), fs.readFileSync("./test/data/test.txt").toString());
|
|
100
|
-
assert.strictEqual(this.ctx.getResponseHeaders()["Content-Type"], "text/plain");
|
|
100
|
+
assert.strictEqual(this.ctx.getResponseHeaders()["Content-Type"], "text/plain; charset=UTF-8");
|
|
101
101
|
});
|
|
102
102
|
}
|
|
103
103
|
// Check Store HTTP mapping
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource.spec.js","sourceRoot":"","sources":["../../src/services/resource.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iCAAiC;AACjC,yBAAyB;AACzB,
|
|
1
|
+
{"version":3,"file":"resource.spec.js","sourceRoot":"","sources":["../../src/services/resource.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import events = require("events");
|
|
3
|
-
import { Core, Logger } from "../index";
|
|
4
|
-
import { HttpMethodType } from "../utils/context";
|
|
5
2
|
import { WorkerLogLevel } from "@webda/workout";
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
3
|
+
import * as events from "events";
|
|
4
|
+
import { Core, Logger } from "../index";
|
|
5
|
+
import { OpenAPIWebdaDefinition } from "../router";
|
|
6
|
+
import { HttpMethodType } from "../utils/httpcontext";
|
|
8
7
|
/**
|
|
9
8
|
* Inject a Bean inside this attribute
|
|
10
9
|
*
|
|
@@ -40,6 +39,9 @@ export declare type DeepPartial<T> = {
|
|
|
40
39
|
export declare type PartialModel<T> = {
|
|
41
40
|
[P in keyof T]: T[P] extends Function ? T[P] : T[P] extends object ? null | PartialModel<T[P]> : T[P] | null;
|
|
42
41
|
};
|
|
42
|
+
export declare type Events = {
|
|
43
|
+
[key: string]: unknown;
|
|
44
|
+
};
|
|
43
45
|
/**
|
|
44
46
|
* Use this object for representing a service in the application
|
|
45
47
|
* A Service is a singleton in the application, that is init after all others services are created
|
|
@@ -50,7 +52,7 @@ export declare type PartialModel<T> = {
|
|
|
50
52
|
* @abstract
|
|
51
53
|
* @class Service
|
|
52
54
|
*/
|
|
53
|
-
declare abstract class Service<T extends ServiceParameters = ServiceParameters> extends events.EventEmitter {
|
|
55
|
+
declare abstract class Service<T extends ServiceParameters = ServiceParameters, E extends Events = Events> extends events.EventEmitter {
|
|
54
56
|
/**
|
|
55
57
|
* Webda Core object
|
|
56
58
|
*/
|
|
@@ -113,7 +115,7 @@ declare abstract class Service<T extends ServiceParameters = ServiceParameters>
|
|
|
113
115
|
* @param {Array[]} methods
|
|
114
116
|
* @param {Function} executer Method to execute for this route
|
|
115
117
|
*/
|
|
116
|
-
protected addRoute(url: string, methods: HttpMethodType[], executer: Function, openapi?:
|
|
118
|
+
protected addRoute(url: string, methods: HttpMethodType[], executer: Function, openapi?: OpenAPIWebdaDefinition, allowPath?: boolean): void;
|
|
117
119
|
/**
|
|
118
120
|
* Init the routes
|
|
119
121
|
*/
|
|
@@ -125,7 +127,7 @@ declare abstract class Service<T extends ServiceParameters = ServiceParameters>
|
|
|
125
127
|
* @param {Object} object - The object to export
|
|
126
128
|
* @return {String} The export of the strip object ( removed all attribute with _ )
|
|
127
129
|
*/
|
|
128
|
-
toPublicJSON(object:
|
|
130
|
+
toPublicJSON(object: unknown): string;
|
|
129
131
|
/**
|
|
130
132
|
* Will be called after all the Services are created
|
|
131
133
|
*
|
|
@@ -137,7 +139,7 @@ declare abstract class Service<T extends ServiceParameters = ServiceParameters>
|
|
|
137
139
|
*
|
|
138
140
|
* @param config new parameters for the service
|
|
139
141
|
*/
|
|
140
|
-
reinit(config:
|
|
142
|
+
reinit(config: DeepPartial<T>): Promise<void>;
|
|
141
143
|
/**
|
|
142
144
|
* Display a message if the listener takes too long
|
|
143
145
|
* @param start
|
|
@@ -146,29 +148,32 @@ declare abstract class Service<T extends ServiceParameters = ServiceParameters>
|
|
|
146
148
|
/**
|
|
147
149
|
* Emit the event with data and wait for Promise to finish if listener returned a Promise
|
|
148
150
|
*/
|
|
149
|
-
emitSync(event:
|
|
151
|
+
emitSync<Key extends keyof E>(event: Key, data: E[Key]): Promise<any[]>;
|
|
150
152
|
/**
|
|
151
153
|
* Override to allow capturing long listeners
|
|
152
154
|
* @override
|
|
153
155
|
*/
|
|
154
|
-
emit(event:
|
|
156
|
+
emit<Key extends keyof E>(event: Key | symbol, data: E[Key]): boolean;
|
|
157
|
+
/**
|
|
158
|
+
* Type the listener part
|
|
159
|
+
* @param event
|
|
160
|
+
* @param listener
|
|
161
|
+
* @param queue
|
|
162
|
+
* @returns
|
|
163
|
+
*/
|
|
164
|
+
on<Key extends keyof E>(event: Key | symbol, listener: (evt: E[Key]) => void): this;
|
|
155
165
|
/**
|
|
156
166
|
* Listen to an event as on(...) would do except that it will be asynchronous
|
|
157
167
|
* @param event
|
|
158
168
|
* @param callback
|
|
159
169
|
* @param queue Name of queue to use, can be undefined, queue name are used to define differents priorities
|
|
160
170
|
*/
|
|
161
|
-
onAsync(event:
|
|
171
|
+
onAsync<Key extends keyof E>(event: Key, listener: (evt: E[Key]) => void, queue?: string): void;
|
|
162
172
|
/**
|
|
163
173
|
* Return a webda service
|
|
164
174
|
* @param service name to retrieve
|
|
165
175
|
*/
|
|
166
176
|
getService<K extends Service<ServiceParameters>>(service: string): K;
|
|
167
|
-
/**
|
|
168
|
-
* Return the Modda definition if any
|
|
169
|
-
*
|
|
170
|
-
*/
|
|
171
|
-
static getModda(): ModdaDefinition | void;
|
|
172
177
|
/**
|
|
173
178
|
* Get service name
|
|
174
179
|
*/
|
|
@@ -189,13 +194,5 @@ declare abstract class Service<T extends ServiceParameters = ServiceParameters>
|
|
|
189
194
|
* @param args
|
|
190
195
|
*/
|
|
191
196
|
log(level: WorkerLogLevel, ...args: any[]): void;
|
|
192
|
-
/**
|
|
193
|
-
* Allow to specify the JSONSchema to configure this service
|
|
194
|
-
*
|
|
195
|
-
* Return undefined by default to fallback on the guess from ServiceParamaters
|
|
196
|
-
*
|
|
197
|
-
* Using this method should only be exception
|
|
198
|
-
*/
|
|
199
|
-
static getSchema(): JSONSchema6;
|
|
200
197
|
}
|
|
201
198
|
export { Service };
|
package/lib/services/service.js
CHANGED
|
@@ -29,7 +29,7 @@ class Injector {
|
|
|
29
29
|
this.optional = optional;
|
|
30
30
|
if (!defaultValue) {
|
|
31
31
|
if (parameterOrName.startsWith("params:")) {
|
|
32
|
-
this.parameter = parameterOrName.
|
|
32
|
+
this.parameter = parameterOrName.substring(7);
|
|
33
33
|
}
|
|
34
34
|
else {
|
|
35
35
|
this.value = parameterOrName;
|
|
@@ -272,22 +272,33 @@ class Service extends events.EventEmitter {
|
|
|
272
272
|
* Override to allow capturing long listeners
|
|
273
273
|
* @override
|
|
274
274
|
*/
|
|
275
|
-
emit(event,
|
|
275
|
+
emit(event, data) {
|
|
276
276
|
for (let listener of this.listeners(event)) {
|
|
277
277
|
let start = Date.now();
|
|
278
|
-
listener(
|
|
278
|
+
listener(data);
|
|
279
279
|
this.elapse(start);
|
|
280
280
|
}
|
|
281
281
|
return true;
|
|
282
282
|
}
|
|
283
|
+
/**
|
|
284
|
+
* Type the listener part
|
|
285
|
+
* @param event
|
|
286
|
+
* @param listener
|
|
287
|
+
* @param queue
|
|
288
|
+
* @returns
|
|
289
|
+
*/
|
|
290
|
+
on(event, listener) {
|
|
291
|
+
super.on(event, listener);
|
|
292
|
+
return this;
|
|
293
|
+
}
|
|
283
294
|
/**
|
|
284
295
|
* Listen to an event as on(...) would do except that it will be asynchronous
|
|
285
296
|
* @param event
|
|
286
297
|
* @param callback
|
|
287
298
|
* @param queue Name of queue to use, can be undefined, queue name are used to define differents priorities
|
|
288
299
|
*/
|
|
289
|
-
onAsync(event,
|
|
290
|
-
this._webda.getService("AsyncEvents").bindAsyncListener(this, event,
|
|
300
|
+
onAsync(event, listener, queue = undefined) {
|
|
301
|
+
this._webda.getService("AsyncEvents").bindAsyncListener(this, event, listener, queue);
|
|
291
302
|
}
|
|
292
303
|
/**
|
|
293
304
|
* Return a webda service
|
|
@@ -296,13 +307,6 @@ class Service extends events.EventEmitter {
|
|
|
296
307
|
getService(service) {
|
|
297
308
|
return this._webda.getService(service);
|
|
298
309
|
}
|
|
299
|
-
/**
|
|
300
|
-
* Return the Modda definition if any
|
|
301
|
-
*
|
|
302
|
-
*/
|
|
303
|
-
static getModda() {
|
|
304
|
-
// Can be overriden by subclasses if needed
|
|
305
|
-
}
|
|
306
310
|
/**
|
|
307
311
|
* Get service name
|
|
308
312
|
*/
|
|
@@ -335,16 +339,6 @@ class Service extends events.EventEmitter {
|
|
|
335
339
|
log(level, ...args) {
|
|
336
340
|
this.logger.log(level, ...args);
|
|
337
341
|
}
|
|
338
|
-
/**
|
|
339
|
-
* Allow to specify the JSONSchema to configure this service
|
|
340
|
-
*
|
|
341
|
-
* Return undefined by default to fallback on the guess from ServiceParamaters
|
|
342
|
-
*
|
|
343
|
-
* Using this method should only be exception
|
|
344
|
-
*/
|
|
345
|
-
static getSchema() {
|
|
346
|
-
return undefined;
|
|
347
|
-
}
|
|
348
342
|
}
|
|
349
343
|
exports.Service = Service;
|
|
350
344
|
//# sourceMappingURL=service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/services/service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/services/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,10 +16,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
16
16
|
};
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
const mocha_1 = require("@testdeck/mocha");
|
|
19
|
-
const test_1 = require("../test");
|
|
20
19
|
const assert = require("assert");
|
|
21
|
-
const __1 = require("..");
|
|
22
20
|
const sinon = require("sinon");
|
|
21
|
+
const __1 = require("..");
|
|
22
|
+
const test_1 = require("../test");
|
|
23
23
|
const service_1 = require("./service");
|
|
24
24
|
class FakeServiceParameters extends service_1.ServiceParameters {
|
|
25
25
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.spec.js","sourceRoot":"","sources":["../../src/services/service.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAA8C;AAC9C,
|
|
1
|
+
{"version":3,"file":"service.spec.js","sourceRoot":"","sources":["../../src/services/service.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Context, Service, ServiceParameters } from "..";
|
|
2
2
|
/**
|
|
3
3
|
* Version parameters
|
|
4
4
|
*/
|
|
@@ -14,6 +14,7 @@ export declare class VersionServiceParameters extends ServiceParameters {
|
|
|
14
14
|
}
|
|
15
15
|
/**
|
|
16
16
|
* Display the version of the app on a route
|
|
17
|
+
* @WebdaModda VersionService
|
|
17
18
|
*/
|
|
18
19
|
export declare class VersionService<T extends VersionServiceParameters = VersionServiceParameters> extends Service<T> {
|
|
19
20
|
/**
|
|
@@ -30,8 +31,4 @@ export declare class VersionService<T extends VersionServiceParameters = Version
|
|
|
30
31
|
* @param ctx
|
|
31
32
|
*/
|
|
32
33
|
version(ctx: Context): void;
|
|
33
|
-
/**
|
|
34
|
-
* @inheritdoc
|
|
35
|
-
*/
|
|
36
|
-
static getModda(): ModdaDefinition;
|
|
37
34
|
}
|
package/lib/services/version.js
CHANGED
|
@@ -10,6 +10,7 @@ class VersionServiceParameters extends __1.ServiceParameters {
|
|
|
10
10
|
exports.VersionServiceParameters = VersionServiceParameters;
|
|
11
11
|
/**
|
|
12
12
|
* Display the version of the app on a route
|
|
13
|
+
* @WebdaModda VersionService
|
|
13
14
|
*/
|
|
14
15
|
class VersionService extends __1.Service {
|
|
15
16
|
/**
|
|
@@ -36,16 +37,6 @@ class VersionService extends __1.Service {
|
|
|
36
37
|
ctx.setHeader("Content-Type", "text/plain");
|
|
37
38
|
ctx.write(this.parameters.version);
|
|
38
39
|
}
|
|
39
|
-
/**
|
|
40
|
-
* @inheritdoc
|
|
41
|
-
*/
|
|
42
|
-
static getModda() {
|
|
43
|
-
return {
|
|
44
|
-
uuid: "Webda/Version",
|
|
45
|
-
label: "Version",
|
|
46
|
-
description: "Display your application version on a route"
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
40
|
}
|
|
50
41
|
exports.VersionService = VersionService;
|
|
51
42
|
//# sourceMappingURL=version.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/services/version.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/services/version.ts"],"names":[],"mappings":";;;AAAA,0BAAyD;AAEzD;;GAEG;AACH,MAAa,wBAAyB,SAAQ,qBAAiB;CAS9D;AATD,4DASC;AAED;;;GAGG;AACH,MAAa,cAA8E,SAAQ,WAAU;IAC3G;;OAEG;IACH,UAAU;QACR,KAAK,CAAC,UAAU,EAAE,CAAC;QACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,MAAW;QACxB,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,cAAc,EAAE,CAAC,qBAAqB,EAAE,CAAC,OAAO,CAAC;QACpG,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,UAAU,CAAC;QACtC,OAAO,IAAI,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,GAAY;QAClB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;QAC5C,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;CACF;AA3BD,wCA2BC"}
|
|
@@ -16,8 +16,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
16
16
|
};
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
const mocha_1 = require("@testdeck/mocha");
|
|
19
|
-
const test_1 = require("../test");
|
|
20
19
|
const assert = require("assert");
|
|
20
|
+
const test_1 = require("../test");
|
|
21
21
|
let VersionTest = class VersionTest extends test_1.WebdaTest {
|
|
22
22
|
normal() {
|
|
23
23
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.spec.js","sourceRoot":"","sources":["../../src/services/version.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAA8C;AAC9C,
|
|
1
|
+
{"version":3,"file":"version.spec.js","sourceRoot":"","sources":["../../src/services/version.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAA8C;AAC9C,iCAAiC;AACjC,kCAAoC;AAGpC,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,gBAAS;IAE3B,MAAM;;YACV,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACxE,8CAA8C;YAC9C,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,OAAO,CAAC,CAAC;QACrD,CAAC;KAAA;CACF,CAAA;AANC;IADC,YAAI;yCAMJ;AAPG,WAAW;IADhB,aAAK;GACA,WAAW,CAQhB"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { ModdaDefinition } from "../core";
|
|
2
1
|
import { CoreModel } from "../models/coremodel";
|
|
3
2
|
import MapperService, { MapperParameters, MapUpdates } from "./mapper";
|
|
4
3
|
export declare class AggregatorParameters extends MapperParameters {
|
|
@@ -10,7 +9,10 @@ export declare class AggregatorParameters extends MapperParameters {
|
|
|
10
9
|
}
|
|
11
10
|
/**
|
|
12
11
|
* Service that aggregate several CoreModel into one
|
|
12
|
+
*
|
|
13
13
|
* Similar to a Mapper except that the target is constant
|
|
14
|
+
*
|
|
15
|
+
* @WebdaModda Aggregator
|
|
14
16
|
*/
|
|
15
17
|
export default class AggregatorService<T extends AggregatorParameters = AggregatorParameters> extends MapperService<T> {
|
|
16
18
|
/**
|
|
@@ -35,9 +37,5 @@ export default class AggregatorService<T extends AggregatorParameters = Aggregat
|
|
|
35
37
|
* @returns
|
|
36
38
|
*/
|
|
37
39
|
handleMap(object: CoreModel, updates: MapUpdates): Promise<void>;
|
|
38
|
-
/**
|
|
39
|
-
* @override
|
|
40
|
-
*/
|
|
41
|
-
static getModda(): ModdaDefinition;
|
|
42
40
|
}
|
|
43
41
|
export { AggregatorService };
|
package/lib/stores/aggregator.js
CHANGED
|
@@ -21,7 +21,10 @@ class AggregatorParameters extends mapper_1.MapperParameters {
|
|
|
21
21
|
exports.AggregatorParameters = AggregatorParameters;
|
|
22
22
|
/**
|
|
23
23
|
* Service that aggregate several CoreModel into one
|
|
24
|
+
*
|
|
24
25
|
* Similar to a Mapper except that the target is constant
|
|
26
|
+
*
|
|
27
|
+
* @WebdaModda Aggregator
|
|
25
28
|
*/
|
|
26
29
|
class AggregatorService extends mapper_1.default {
|
|
27
30
|
/**
|
|
@@ -90,16 +93,6 @@ class AggregatorService extends mapper_1.default {
|
|
|
90
93
|
yield this.targetStore._patch(mapUpdates, this.parameters.key);
|
|
91
94
|
});
|
|
92
95
|
}
|
|
93
|
-
/**
|
|
94
|
-
* @override
|
|
95
|
-
*/
|
|
96
|
-
static getModda() {
|
|
97
|
-
return {
|
|
98
|
-
uuid: "Webda/Aggregator",
|
|
99
|
-
label: "Aggregator",
|
|
100
|
-
description: "Deduplicate content to an aggregate"
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
96
|
}
|
|
104
97
|
exports.default = AggregatorService;
|
|
105
98
|
exports.AggregatorService = AggregatorService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aggregator.js","sourceRoot":"","sources":["../../src/stores/aggregator.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"aggregator.js","sourceRoot":"","sources":["../../src/stores/aggregator.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,qCAAuE;AAEvE,MAAa,oBAAqB,SAAQ,yBAAgB;IAMxD,YAAY,MAAW;;QACrB,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,MAAA,IAAI,CAAC,GAAG,oCAAR,IAAI,CAAC,GAAG,GAAK,OAAO,EAAC;IACvB,CAAC;CACF;AAVD,oDAUC;AAED;;;;;;GAMG;AACH,MAAqB,iBAAyE,SAAQ,gBAAgB;IACpH;;;;OAIG;IACG,IAAI;;YACR,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC/B,CAAC;KAAA;IAED;;OAEG;IACH,cAAc,CAAC,MAAW;QACxB,OAAO,IAAI,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACG,eAAe;;YACnB,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE;gBACzD,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;oBAC1B,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG;iBAC1B,CAAC,CAAC;aACJ;QACH,CAAC;KAAA;IAED;;;;;;OAMG;IACG,SAAS,CAAC,MAAiB,EAAE,OAAmB;;YACpD,IAAI,UAAU,GAAQ,EAAE,CAAC;YACzB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;gBAC/B,IAAI,QAAQ,GAAG,KAAK,CAAC;gBACrB,KAAK,IAAI,CAAC,IAAI,OAAO,EAAE;oBACrB,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;wBAC1C,QAAQ,GAAG,IAAI,CAAC;qBACjB;iBACF;gBACD,IAAI,CAAC,QAAQ,EAAE;oBACb,OAAO;iBACR;aACF;iBAAM,IAAI,OAAO,KAAK,SAAS,EAAE;gBAChC,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC9E,OAAO;aACR;iBAAM,IAAI,OAAO,KAAK,SAAS,EAAE;gBAChC,OAAO,GAAG,MAAM,CAAC;aAClB;YACD,gBAAgB;YAChB,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;gBAClC,MAAM,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;YACH,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC;YACtC,UAAU,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACjE,CAAC;KAAA;CACF;AA9DD,oCA8DC;AAEQ,8CAAiB"}
|
package/lib/stores/file.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ModdaDefinition } from "../core";
|
|
2
1
|
import { CoreModel } from "../models/coremodel";
|
|
3
|
-
import { Store, StoreParameters } from "./store";
|
|
2
|
+
import { Store, StoreFindResult, StoreParameters } from "./store";
|
|
3
|
+
import { WebdaQL } from "./webdaql/query";
|
|
4
4
|
declare class FileStoreParameters extends StoreParameters {
|
|
5
5
|
/**
|
|
6
6
|
* Local path where to store all `json` files
|
|
@@ -10,6 +10,14 @@ declare class FileStoreParameters extends StoreParameters {
|
|
|
10
10
|
* Parameter sent to JSON.stringify when storing the json
|
|
11
11
|
*/
|
|
12
12
|
beautify?: string | number;
|
|
13
|
+
/**
|
|
14
|
+
* Disable memory cache
|
|
15
|
+
*
|
|
16
|
+
* Useful if several process update storage files
|
|
17
|
+
*
|
|
18
|
+
* @default false
|
|
19
|
+
*/
|
|
20
|
+
noCache?: boolean;
|
|
13
21
|
}
|
|
14
22
|
/**
|
|
15
23
|
* Simple file storage of object
|
|
@@ -22,6 +30,7 @@ declare class FileStoreParameters extends StoreParameters {
|
|
|
22
30
|
* folder: to store to
|
|
23
31
|
*
|
|
24
32
|
* @category CoreServices
|
|
33
|
+
* @WebdaModda
|
|
25
34
|
*/
|
|
26
35
|
declare class FileStore<T extends CoreModel, K extends FileStoreParameters = FileStoreParameters> extends Store<T, K> {
|
|
27
36
|
static EXTENSION: string;
|
|
@@ -43,7 +52,10 @@ declare class FileStore<T extends CoreModel, K extends FileStoreParameters = Fil
|
|
|
43
52
|
* @override
|
|
44
53
|
*/
|
|
45
54
|
exists(uid: any): Promise<boolean>;
|
|
46
|
-
|
|
55
|
+
/**
|
|
56
|
+
* @override
|
|
57
|
+
*/
|
|
58
|
+
find(query: WebdaQL.Query): Promise<StoreFindResult<T>>;
|
|
47
59
|
/**
|
|
48
60
|
* @override
|
|
49
61
|
*/
|
|
@@ -88,10 +100,5 @@ declare class FileStore<T extends CoreModel, K extends FileStoreParameters = Fil
|
|
|
88
100
|
* @override
|
|
89
101
|
*/
|
|
90
102
|
__clean(): Promise<void>;
|
|
91
|
-
/**
|
|
92
|
-
*
|
|
93
|
-
* @inheritdoc
|
|
94
|
-
*/
|
|
95
|
-
static getModda(): ModdaDefinition;
|
|
96
103
|
}
|
|
97
104
|
export { FileStore };
|
package/lib/stores/file.js
CHANGED
|
@@ -13,6 +13,7 @@ exports.FileStore = void 0;
|
|
|
13
13
|
const fs = require("fs");
|
|
14
14
|
const path = require("path");
|
|
15
15
|
const serializers_1 = require("../utils/serializers");
|
|
16
|
+
const memory_1 = require("./memory");
|
|
16
17
|
const store_1 = require("./store");
|
|
17
18
|
class FileStoreParameters extends store_1.StoreParameters {
|
|
18
19
|
}
|
|
@@ -27,6 +28,7 @@ class FileStoreParameters extends store_1.StoreParameters {
|
|
|
27
28
|
* folder: to store to
|
|
28
29
|
*
|
|
29
30
|
* @category CoreServices
|
|
31
|
+
* @WebdaModda
|
|
30
32
|
*/
|
|
31
33
|
class FileStore extends store_1.Store {
|
|
32
34
|
/**
|
|
@@ -40,6 +42,13 @@ class FileStore extends store_1.Store {
|
|
|
40
42
|
*/
|
|
41
43
|
computeParameters() {
|
|
42
44
|
super.computeParameters();
|
|
45
|
+
if (!this.parameters.noCache) {
|
|
46
|
+
this._cacheStore = new memory_1.MemoryStore(this._webda, `_${this.getName()}_cache`, {
|
|
47
|
+
model: this.parameters.model
|
|
48
|
+
});
|
|
49
|
+
this._cacheStore.computeParameters();
|
|
50
|
+
this.cacheStorePatchException();
|
|
51
|
+
}
|
|
43
52
|
if (!fs.existsSync(this.parameters.folder)) {
|
|
44
53
|
fs.mkdirSync(this.parameters.folder);
|
|
45
54
|
}
|
|
@@ -60,12 +69,19 @@ class FileStore extends store_1.Store {
|
|
|
60
69
|
return fs.existsSync(this.file(uid));
|
|
61
70
|
});
|
|
62
71
|
}
|
|
63
|
-
|
|
72
|
+
/**
|
|
73
|
+
* @override
|
|
74
|
+
*/
|
|
75
|
+
find(query) {
|
|
64
76
|
return __awaiter(this, void 0, void 0, function* () {
|
|
65
|
-
|
|
77
|
+
const files = fs
|
|
78
|
+
.readdirSync(this.parameters.folder)
|
|
79
|
+
.filter(file => {
|
|
66
80
|
return !fs.statSync(path.join(this.parameters.folder, file)).isDirectory();
|
|
67
|
-
})
|
|
68
|
-
|
|
81
|
+
})
|
|
82
|
+
.map(f => f.substring(0, f.length - FileStore.EXTENSION.length))
|
|
83
|
+
.sort();
|
|
84
|
+
return this.simulateFind(query, files);
|
|
69
85
|
});
|
|
70
86
|
}
|
|
71
87
|
/**
|
|
@@ -157,7 +173,7 @@ class FileStore extends store_1.Store {
|
|
|
157
173
|
uids = [];
|
|
158
174
|
var files = fs.readdirSync(this.parameters.folder);
|
|
159
175
|
for (var file in files) {
|
|
160
|
-
uids.push(files[file].
|
|
176
|
+
uids.push(files[file].substring(0, files[file].length - FileStore.EXTENSION.length));
|
|
161
177
|
}
|
|
162
178
|
}
|
|
163
179
|
let result = [];
|
|
@@ -209,19 +225,6 @@ class FileStore extends store_1.Store {
|
|
|
209
225
|
require("fs-extra").emptyDirSync(this.parameters.folder);
|
|
210
226
|
});
|
|
211
227
|
}
|
|
212
|
-
/**
|
|
213
|
-
*
|
|
214
|
-
* @inheritdoc
|
|
215
|
-
*/
|
|
216
|
-
static getModda() {
|
|
217
|
-
return {
|
|
218
|
-
uuid: "Webda/FileStore",
|
|
219
|
-
label: "File Store",
|
|
220
|
-
description: "Implements user registration and login using either email or OAuth, it handles for now Facebook, Google, Amazon, GitHub, Twitter\nIt needs a Idents and a Users Store to work",
|
|
221
|
-
documentation: "https://raw.githubusercontent.com/loopingz/webda/master/readmes/Store.md",
|
|
222
|
-
logo: "images/icons/filedb.png"
|
|
223
|
-
};
|
|
224
|
-
}
|
|
225
228
|
}
|
|
226
229
|
exports.FileStore = FileStore;
|
|
227
230
|
FileStore.EXTENSION = ".json";
|
package/lib/stores/file.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/stores/file.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/stores/file.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
import { StoreTest } from "./store.spec";
|
|
2
1
|
import { CoreModel, Store } from "../index";
|
|
2
|
+
import { StoreTest } from "./store.spec";
|
|
3
3
|
declare class FileStoreTest extends StoreTest {
|
|
4
4
|
getUserStore(): Store<any>;
|
|
5
5
|
getIdentStore(): Store<any>;
|
|
6
6
|
getIndex(): Promise<CoreModel>;
|
|
7
7
|
recreateIndex(): Promise<void>;
|
|
8
|
+
update(delay?: number): Promise<void>;
|
|
8
9
|
cov(): Promise<void>;
|
|
9
10
|
configuration(): Promise<void>;
|
|
10
11
|
modelActions(): Promise<void>;
|
|
12
|
+
cacheMishit(): Promise<void>;
|
|
11
13
|
modelStaticActions(): Promise<void>;
|
|
12
14
|
httpCRUD(): Promise<void>;
|
|
13
15
|
getURL(): Promise<void>;
|