@venizia/ignis-kernel 0.2.1-2 → 0.2.1-4
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/dist/cjs/base/applications/artifact-index.d.ts.map +1 -1
- package/dist/cjs/base/applications/artifact-index.js +28 -31
- package/dist/cjs/base/applications/artifact-index.js.map +1 -1
- package/dist/cjs/base/applications/common/types/application.d.ts +7 -0
- package/dist/cjs/base/applications/common/types/application.d.ts.map +1 -1
- package/dist/cjs/base/applications/rest.d.ts.map +1 -1
- package/dist/cjs/base/applications/rest.js +34 -4
- package/dist/cjs/base/applications/rest.js.map +1 -1
- package/dist/cjs/base/controllers/factory/controller.d.ts +56 -2
- package/dist/cjs/base/controllers/factory/controller.d.ts.map +1 -1
- package/dist/cjs/base/controllers/rest/base.d.ts +70 -3
- package/dist/cjs/base/controllers/rest/base.d.ts.map +1 -1
- package/dist/cjs/base/controllers/rest/base.js +30 -3
- package/dist/cjs/base/controllers/rest/base.js.map +1 -1
- package/dist/cjs/base/controllers/rest/extras.d.ts +49 -0
- package/dist/cjs/base/controllers/rest/extras.d.ts.map +1 -0
- package/dist/cjs/base/controllers/rest/extras.js +153 -0
- package/dist/cjs/base/controllers/rest/extras.js.map +1 -0
- package/dist/cjs/base/controllers/rest/index.d.ts +1 -0
- package/dist/cjs/base/controllers/rest/index.d.ts.map +1 -1
- package/dist/cjs/base/controllers/rest/index.js +1 -0
- package/dist/cjs/base/controllers/rest/index.js.map +1 -1
- package/dist/cjs/base/metadata/artifact-keys.d.ts +54 -0
- package/dist/cjs/base/metadata/artifact-keys.d.ts.map +1 -0
- package/dist/cjs/base/metadata/artifact-keys.js +60 -0
- package/dist/cjs/base/metadata/artifact-keys.js.map +1 -0
- package/dist/cjs/base/metadata/injectable.d.ts.map +1 -1
- package/dist/cjs/base/metadata/injectable.js +5 -3
- package/dist/cjs/base/metadata/injectable.js.map +1 -1
- package/dist/cjs/base/metadata/persistents.d.ts.map +1 -1
- package/dist/cjs/base/metadata/persistents.js +44 -17
- package/dist/cjs/base/metadata/persistents.js.map +1 -1
- package/dist/cjs/base/repositories/common/extra-request.d.ts +26 -0
- package/dist/cjs/base/repositories/common/extra-request.d.ts.map +1 -0
- package/dist/cjs/base/repositories/common/extra-request.js +21 -0
- package/dist/cjs/base/repositories/common/extra-request.js.map +1 -0
- package/dist/cjs/base/repositories/common/response-reader.d.ts +52 -0
- package/dist/cjs/base/repositories/common/response-reader.d.ts.map +1 -0
- package/dist/cjs/base/repositories/common/response-reader.js +98 -0
- package/dist/cjs/base/repositories/common/response-reader.js.map +1 -0
- package/dist/cjs/base/repositories/common/types/results.d.ts +2 -1
- package/dist/cjs/base/repositories/common/types/results.d.ts.map +1 -1
- package/dist/cjs/base/repositories/core/abstract.js +2 -2
- package/dist/cjs/base/repositories/core/abstract.js.map +1 -1
- package/dist/cjs/helpers/inversion/mixins/repository.mixin.d.ts +14 -3
- package/dist/cjs/helpers/inversion/mixins/repository.mixin.d.ts.map +1 -1
- package/dist/cjs/helpers/inversion/mixins/repository.mixin.js +29 -14
- package/dist/cjs/helpers/inversion/mixins/repository.mixin.js.map +1 -1
- package/dist/cjs/helpers/inversion/registry.d.ts +7 -1
- package/dist/cjs/helpers/inversion/registry.d.ts.map +1 -1
- package/dist/cjs/helpers/inversion/registry.js +2 -0
- package/dist/cjs/helpers/inversion/registry.js.map +1 -1
- package/dist/cjs/metadata.d.ts +1 -0
- package/dist/cjs/metadata.d.ts.map +1 -1
- package/dist/cjs/metadata.js +3 -1
- package/dist/cjs/metadata.js.map +1 -1
- package/dist/cjs/repository.d.ts +3 -0
- package/dist/cjs/repository.d.ts.map +1 -1
- package/dist/cjs/repository.js +7 -1
- package/dist/cjs/repository.js.map +1 -1
- package/dist/esm/base/applications/artifact-index.d.ts.map +1 -1
- package/dist/esm/base/applications/artifact-index.js +28 -31
- package/dist/esm/base/applications/artifact-index.js.map +1 -1
- package/dist/esm/base/applications/common/types/application.d.ts +7 -0
- package/dist/esm/base/applications/common/types/application.d.ts.map +1 -1
- package/dist/esm/base/applications/rest.d.ts.map +1 -1
- package/dist/esm/base/applications/rest.js +35 -5
- package/dist/esm/base/applications/rest.js.map +1 -1
- package/dist/esm/base/controllers/factory/controller.d.ts +56 -2
- package/dist/esm/base/controllers/factory/controller.d.ts.map +1 -1
- package/dist/esm/base/controllers/rest/base.d.ts +70 -3
- package/dist/esm/base/controllers/rest/base.d.ts.map +1 -1
- package/dist/esm/base/controllers/rest/base.js +30 -3
- package/dist/esm/base/controllers/rest/base.js.map +1 -1
- package/dist/esm/base/controllers/rest/extras.d.ts +49 -0
- package/dist/esm/base/controllers/rest/extras.d.ts.map +1 -0
- package/dist/esm/base/controllers/rest/extras.js +149 -0
- package/dist/esm/base/controllers/rest/extras.js.map +1 -0
- package/dist/esm/base/controllers/rest/index.d.ts +1 -0
- package/dist/esm/base/controllers/rest/index.d.ts.map +1 -1
- package/dist/esm/base/controllers/rest/index.js +1 -0
- package/dist/esm/base/controllers/rest/index.js.map +1 -1
- package/dist/esm/base/metadata/artifact-keys.d.ts +54 -0
- package/dist/esm/base/metadata/artifact-keys.d.ts.map +1 -0
- package/dist/esm/base/metadata/artifact-keys.js +56 -0
- package/dist/esm/base/metadata/artifact-keys.js.map +1 -0
- package/dist/esm/base/metadata/injectable.d.ts.map +1 -1
- package/dist/esm/base/metadata/injectable.js +6 -4
- package/dist/esm/base/metadata/injectable.js.map +1 -1
- package/dist/esm/base/metadata/persistents.d.ts.map +1 -1
- package/dist/esm/base/metadata/persistents.js +44 -17
- package/dist/esm/base/metadata/persistents.js.map +1 -1
- package/dist/esm/base/repositories/common/extra-request.d.ts +26 -0
- package/dist/esm/base/repositories/common/extra-request.d.ts.map +1 -0
- package/dist/esm/base/repositories/common/extra-request.js +17 -0
- package/dist/esm/base/repositories/common/extra-request.js.map +1 -0
- package/dist/esm/base/repositories/common/response-reader.d.ts +52 -0
- package/dist/esm/base/repositories/common/response-reader.d.ts.map +1 -0
- package/dist/esm/base/repositories/common/response-reader.js +94 -0
- package/dist/esm/base/repositories/common/response-reader.js.map +1 -0
- package/dist/esm/base/repositories/common/types/results.d.ts +2 -1
- package/dist/esm/base/repositories/common/types/results.d.ts.map +1 -1
- package/dist/esm/base/repositories/core/abstract.js +2 -2
- package/dist/esm/base/repositories/core/abstract.js.map +1 -1
- package/dist/esm/helpers/inversion/mixins/repository.mixin.d.ts +14 -3
- package/dist/esm/helpers/inversion/mixins/repository.mixin.d.ts.map +1 -1
- package/dist/esm/helpers/inversion/mixins/repository.mixin.js +29 -14
- package/dist/esm/helpers/inversion/mixins/repository.mixin.js.map +1 -1
- package/dist/esm/helpers/inversion/registry.d.ts +7 -1
- package/dist/esm/helpers/inversion/registry.d.ts.map +1 -1
- package/dist/esm/helpers/inversion/registry.js +2 -0
- package/dist/esm/helpers/inversion/registry.js.map +1 -1
- package/dist/esm/metadata.d.ts +1 -0
- package/dist/esm/metadata.d.ts.map +1 -1
- package/dist/esm/metadata.js +1 -0
- package/dist/esm/metadata.js.map +1 -1
- package/dist/esm/repository.d.ts +3 -0
- package/dist/esm/repository.d.ts.map +1 -1
- package/dist/esm/repository.js +4 -0
- package/dist/esm/repository.js.map +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HttpExtraRequest = void 0;
|
|
4
|
+
const common_1 = require("@venizia/ignis-helpers/common");
|
|
5
|
+
/** The client half of the list-extras contract: what goes in `x-request-extra`. */
|
|
6
|
+
class HttpExtraRequest {
|
|
7
|
+
/**
|
|
8
|
+
* The header value for what a call asks for - `name`, `-name`, `name(key,key)` - led by `-*` when
|
|
9
|
+
* the call wants the rows alone, every default off. `undefined` when it asks for nothing.
|
|
10
|
+
*/
|
|
11
|
+
static toHeader(opts) {
|
|
12
|
+
const { extra = {}, isEveryDefaultOff = false } = opts;
|
|
13
|
+
const entries = Object.entries(extra).map(([name, value]) => value === true ? name : value === false ? `-${name}` : `${name}(${value.join(',')})`);
|
|
14
|
+
const tokens = isEveryDefaultOff ? ['-*', ...entries] : entries;
|
|
15
|
+
return tokens.length > 0 ? tokens.join(',') : undefined;
|
|
16
|
+
}
|
|
17
|
+
/** The header name, for a client that sets headers itself. */
|
|
18
|
+
static { this.HEADER = common_1.HTTP.Headers.REQUEST_EXTRA; }
|
|
19
|
+
}
|
|
20
|
+
exports.HttpExtraRequest = HttpExtraRequest;
|
|
21
|
+
//# sourceMappingURL=extra-request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extra-request.js","sourceRoot":"","sources":["../../../../../src/base/repositories/common/extra-request.ts"],"names":[],"mappings":";;;AAAA,0DAAqD;AAoBrD,mFAAmF;AACnF,MAAa,gBAAgB;IAC3B;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,IAGf;QACC,MAAM,EAAE,KAAK,GAAG,EAAE,EAAE,iBAAiB,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC;QAEvD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAC1D,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CACrF,CAAC;QACF,MAAM,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QAEhE,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1D,CAAC;IAED,8DAA8D;aAC9C,WAAM,GAAG,aAAI,CAAC,OAAO,CAAC,aAAa,CAAC;;AApBtD,4CAqBC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { TResponsedError } from '@venizia/ignis-helpers/core';
|
|
2
|
+
/**
|
|
3
|
+
* What an IGNIS server answers - `Content-Range`, the error envelope - read once, here, for every
|
|
4
|
+
* client of that server: the http connector, and a client that reads it without the connector.
|
|
5
|
+
*/
|
|
6
|
+
export declare class HttpResponseReader {
|
|
7
|
+
static isPlainObject(value: unknown): value is Record<string, unknown>;
|
|
8
|
+
/** An empty string reads as absent, so a fallback still applies. */
|
|
9
|
+
static toText(value: unknown): string | undefined;
|
|
10
|
+
/**
|
|
11
|
+
* A `Content-Range` header as the IGNIS server writes it: `records 0-24/137` -> skip 0, total 137;
|
|
12
|
+
* an empty page, `records *\/137` -> total 137. Anything else, including an absent header or an
|
|
13
|
+
* unknown total, is `undefined`.
|
|
14
|
+
*/
|
|
15
|
+
static parseContentRange(opts: {
|
|
16
|
+
header?: string | null;
|
|
17
|
+
}): {
|
|
18
|
+
skip?: number;
|
|
19
|
+
total: number;
|
|
20
|
+
} | undefined;
|
|
21
|
+
/**
|
|
22
|
+
* The IGNIS error envelope - `{ message, statusCode, normalized: { text, code, args }, requestId,
|
|
23
|
+
* extra, details }` - read off a parsed response body. A server configured with `error.rootKey`
|
|
24
|
+
* wraps it under that key; pass the same `rootKey` to unwrap it. A body without that key, or with a
|
|
25
|
+
* non-object under it (a proxy's `{ error: 'Bad Gateway' }`), is read as it stands.
|
|
26
|
+
*
|
|
27
|
+
* A body that is not a plain object yields `{}`; any other body yields its known fields, each
|
|
28
|
+
* `undefined` when absent or mistyped. An empty string reads as absent.
|
|
29
|
+
*/
|
|
30
|
+
static readErrorEnvelope(opts: {
|
|
31
|
+
body: unknown;
|
|
32
|
+
rootKey?: string;
|
|
33
|
+
}): TResponsedError;
|
|
34
|
+
/** A failed response's envelope. A body that is not JSON yields `{}`, and the status alone still describes it. */
|
|
35
|
+
static readError(opts: {
|
|
36
|
+
response: Response;
|
|
37
|
+
rootKey?: string;
|
|
38
|
+
}): Promise<TResponsedError>;
|
|
39
|
+
/**
|
|
40
|
+
* A body the server marked with `x-response-extra` is `{ data, extra }`: its rows and what it
|
|
41
|
+
* answered beside them. Any other body is returned as it stands - an unmarked object is never
|
|
42
|
+
* unwrapped, so a row that has `data` and `extra` columns of its own is never misread.
|
|
43
|
+
*/
|
|
44
|
+
static readExtra(opts: {
|
|
45
|
+
body: unknown;
|
|
46
|
+
headers: Pick<Headers, 'has'>;
|
|
47
|
+
}): {
|
|
48
|
+
body: unknown;
|
|
49
|
+
extra?: Record<string, unknown>;
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=response-reader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response-reader.d.ts","sourceRoot":"","sources":["../../../../../src/base/repositories/common/response-reader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEnE;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAMtE,oEAAoE;IACpE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS;IAIjD;;;;OAIG;IACH,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE;QAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KACxB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS;IAoBhD;;;;;;;;OAQG;IACH,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,eAAe;IA4BpF,kHAAkH;WACrG,SAAS,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAahG;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;KAAE,GAAG;QACxE,IAAI,EAAE,OAAO,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACjC;CAcF"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HttpResponseReader = void 0;
|
|
4
|
+
const common_1 = require("@venizia/ignis-helpers/common");
|
|
5
|
+
/**
|
|
6
|
+
* What an IGNIS server answers - `Content-Range`, the error envelope - read once, here, for every
|
|
7
|
+
* client of that server: the http connector, and a client that reads it without the connector.
|
|
8
|
+
*/
|
|
9
|
+
class HttpResponseReader {
|
|
10
|
+
static isPlainObject(value) {
|
|
11
|
+
return (!!value && typeof value === 'object' && Object.getPrototypeOf(value) === Object.prototype);
|
|
12
|
+
}
|
|
13
|
+
/** An empty string reads as absent, so a fallback still applies. */
|
|
14
|
+
static toText(value) {
|
|
15
|
+
return typeof value === 'string' && value !== '' ? value : undefined;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* A `Content-Range` header as the IGNIS server writes it: `records 0-24/137` -> skip 0, total 137;
|
|
19
|
+
* an empty page, `records *\/137` -> total 137. Anything else, including an absent header or an
|
|
20
|
+
* unknown total, is `undefined`.
|
|
21
|
+
*/
|
|
22
|
+
static parseContentRange(opts) {
|
|
23
|
+
const { header } = opts;
|
|
24
|
+
if (!header) {
|
|
25
|
+
return undefined;
|
|
26
|
+
}
|
|
27
|
+
const range = header.match(/(\d+)\s*-\s*(\d+)\s*\/\s*(\d+)/);
|
|
28
|
+
if (range) {
|
|
29
|
+
return { skip: Number(range[1]), total: Number(range[3]) };
|
|
30
|
+
}
|
|
31
|
+
const unsatisfied = header.match(/\*\s*\/\s*(\d+)/);
|
|
32
|
+
if (unsatisfied) {
|
|
33
|
+
return { total: Number(unsatisfied[1]) };
|
|
34
|
+
}
|
|
35
|
+
return undefined;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* The IGNIS error envelope - `{ message, statusCode, normalized: { text, code, args }, requestId,
|
|
39
|
+
* extra, details }` - read off a parsed response body. A server configured with `error.rootKey`
|
|
40
|
+
* wraps it under that key; pass the same `rootKey` to unwrap it. A body without that key, or with a
|
|
41
|
+
* non-object under it (a proxy's `{ error: 'Bad Gateway' }`), is read as it stands.
|
|
42
|
+
*
|
|
43
|
+
* A body that is not a plain object yields `{}`; any other body yields its known fields, each
|
|
44
|
+
* `undefined` when absent or mistyped. An empty string reads as absent.
|
|
45
|
+
*/
|
|
46
|
+
static readErrorEnvelope(opts) {
|
|
47
|
+
const { body, rootKey } = opts;
|
|
48
|
+
const wrapped = rootKey && HttpResponseReader.isPlainObject(body) ? body[rootKey] : undefined;
|
|
49
|
+
const envelope = HttpResponseReader.isPlainObject(wrapped) ? wrapped : body;
|
|
50
|
+
if (!HttpResponseReader.isPlainObject(envelope)) {
|
|
51
|
+
return {};
|
|
52
|
+
}
|
|
53
|
+
const { message, statusCode, normalized, requestId, extra, details } = envelope;
|
|
54
|
+
const normalizedRecord = HttpResponseReader.isPlainObject(normalized) ? normalized : {};
|
|
55
|
+
const { text, code, args } = normalizedRecord;
|
|
56
|
+
return {
|
|
57
|
+
message: HttpResponseReader.toText(message),
|
|
58
|
+
statusCode: typeof statusCode === 'number' ? statusCode : undefined,
|
|
59
|
+
normalized: {
|
|
60
|
+
text: HttpResponseReader.toText(text),
|
|
61
|
+
code: HttpResponseReader.toText(code),
|
|
62
|
+
args: HttpResponseReader.isPlainObject(args) ? { ...args } : undefined,
|
|
63
|
+
},
|
|
64
|
+
requestId: HttpResponseReader.toText(requestId),
|
|
65
|
+
extra: HttpResponseReader.isPlainObject(extra) ? { ...extra } : undefined,
|
|
66
|
+
details: HttpResponseReader.isPlainObject(details) ? { ...details } : undefined,
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
/** A failed response's envelope. A body that is not JSON yields `{}`, and the status alone still describes it. */
|
|
70
|
+
static async readError(opts) {
|
|
71
|
+
const text = await opts.response.text().catch(() => '');
|
|
72
|
+
let body;
|
|
73
|
+
try {
|
|
74
|
+
body = text ? JSON.parse(text) : undefined;
|
|
75
|
+
}
|
|
76
|
+
catch {
|
|
77
|
+
return {};
|
|
78
|
+
}
|
|
79
|
+
return HttpResponseReader.readErrorEnvelope({ body, rootKey: opts.rootKey });
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* A body the server marked with `x-response-extra` is `{ data, extra }`: its rows and what it
|
|
83
|
+
* answered beside them. Any other body is returned as it stands - an unmarked object is never
|
|
84
|
+
* unwrapped, so a row that has `data` and `extra` columns of its own is never misread.
|
|
85
|
+
*/
|
|
86
|
+
static readExtra(opts) {
|
|
87
|
+
const { body, headers } = opts;
|
|
88
|
+
const isMarked = headers.has(common_1.HTTP.Headers.RESPONSE_EXTRA);
|
|
89
|
+
if (!isMarked ||
|
|
90
|
+
!HttpResponseReader.isPlainObject(body) ||
|
|
91
|
+
!HttpResponseReader.isPlainObject(body.extra)) {
|
|
92
|
+
return { body };
|
|
93
|
+
}
|
|
94
|
+
return { body: body.data, extra: { ...body.extra } };
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
exports.HttpResponseReader = HttpResponseReader;
|
|
98
|
+
//# sourceMappingURL=response-reader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response-reader.js","sourceRoot":"","sources":["../../../../../src/base/repositories/common/response-reader.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,9 +15,10 @@ export declare const buildDataRange: (opts: {
|
|
|
15
15
|
dataLength: number;
|
|
16
16
|
total: number;
|
|
17
17
|
}) => TDataRange;
|
|
18
|
-
/** The `shouldQueryRange: true` result envelope
|
|
18
|
+
/** The `shouldQueryRange: true` result envelope; `extra` carries what a list answered beside its rows - see `x-request-extra`. */
|
|
19
19
|
export type TDataWithRange<R> = {
|
|
20
20
|
data: Array<R>;
|
|
21
21
|
range: TDataRange;
|
|
22
|
+
extra?: Record<string, unknown>;
|
|
22
23
|
};
|
|
23
24
|
//# sourceMappingURL=results.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"results.d.ts","sourceRoot":"","sources":["../../../../../../src/base/repositories/common/types/results.ts"],"names":[],"mappings":"AAAA,uLAAuL;AACvL,MAAM,MAAM,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvC,yFAAyF;AACzF,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,mGAAmG;AACnG,eAAO,MAAM,cAAc,GAAI,MAAM;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf,KAAG,UAKH,CAAC;AAEF,
|
|
1
|
+
{"version":3,"file":"results.d.ts","sourceRoot":"","sources":["../../../../../../src/base/repositories/common/types/results.ts"],"names":[],"mappings":"AAAA,uLAAuL;AACvL,MAAM,MAAM,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvC,yFAAyF;AACzF,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,mGAAmG;AACnG,eAAO,MAAM,cAAc,GAAI,MAAM;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf,KAAG,UAKH,CAAC;AAEF,kIAAkI;AAClI,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAC9B,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACf,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC,CAAC"}
|
|
@@ -114,7 +114,7 @@ class AbstractRepository extends core_1.BaseHelper {
|
|
|
114
114
|
// method has no business reporting, and the caller path that used to reach `getDefaultLimit()`
|
|
115
115
|
// never touched it either, because `??` short-circuits when a limit is given. So the ceiling is
|
|
116
116
|
// consulted only when the binding that makes it resolvable is actually present.
|
|
117
|
-
const hasModelBinding = Boolean(inversion_1.MetadataRegistry.getInstance().getRepositoryBinding({
|
|
117
|
+
const hasModelBinding = Boolean(inversion_1.MetadataRegistry.getInstance().getRepositoryBinding({ target: this.constructor })?.model);
|
|
118
118
|
const ceiling = (hasModelBinding ? this.maxLimit : undefined) ?? constants_1.DEFAULT_MAX_LIMIT;
|
|
119
119
|
if (limit > ceiling) {
|
|
120
120
|
throw (0, core_1.getError)({
|
|
@@ -160,7 +160,7 @@ class AbstractRepository extends core_1.BaseHelper {
|
|
|
160
160
|
/** Resolves the entity instance from @repository metadata on first access. */
|
|
161
161
|
resolveEntity() {
|
|
162
162
|
const registry = inversion_1.MetadataRegistry.getInstance();
|
|
163
|
-
const binding = registry.getRepositoryBinding({
|
|
163
|
+
const binding = registry.getRepositoryBinding({ target: this.constructor });
|
|
164
164
|
if (!binding?.model) {
|
|
165
165
|
throw (0, core_1.getError)({
|
|
166
166
|
message: `[${this.constructor.name}] Cannot resolve entity. Either pass entityClass in constructor or use @repository decorator with model option.`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract.js","sourceRoot":"","sources":["../../../../../src/base/repositories/core/abstract.ts"],"names":[],"mappings":";;;AAGA,mDAAuD;AAEvD,sDAAmE;AACnE,0DAA6D;AAC7D,sDAAoG;AAYpG,sGAAsG;AACtG,sFAAsF;AACtF,mDAI6B;AAG7B;;;;GAIG;AACH,MAAsB,kBAKpB,SAAQ,iBAAU;IAiBlB,YACE,UAA+B,EAC/B,IAIC;QAED,MAAM,SAAS,GACb,IAAI,EAAE,KAAK;YACX,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAE/F,KAAK,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAlB9B;;;WAGG;QACK,mBAAc,GAAsC,IAAI,CAAC;QAgB/D,IAAI,CAAC,eAAe,GAAG,IAAI,EAAE,cAAc,IAAI,qCAAyB,CAAC,SAAS,CAAC;QAEnF,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAChC,CAAC;QAED,IAAI,IAAI,EAAE,WAAW,EAAE,CAAC;YACtB,IAAI,CAAC,OAAO,GAAG,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACxC,CAAC;IACH,CAAC;IAED,IAAI,UAAU;QACZ,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAA,eAAQ,EAAC;gBACb,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,kIAAkI;aACrK,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,UAAU,CAAC,KAAyB;QACtC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED,qEAAqE;IACrE,IAAI,MAAM;QACR,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,MAAM,CAAC,KAAqB;QAC9B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,aAAa,CAAC,IAAwC;QACpD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC;IACrC,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,IAAc,aAAa;QACzB,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC,cAAc,CAAC;QAC7B,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,4BAAgB,CAAC,WAAW,EAAE,CAAC,gBAAgB,CAAC;YACpE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;SAChC,CAAC,EAAE,QAAQ,CAAC;QAEb,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,IAAc,YAAY;QACxB,OAAO,IAAI,CAAC,aAAa,EAAE,gBAAgB,IAAI,EAAE,CAAC;IACpD,CAAC;IAED,0GAA0G;IAC1G,IAAc,YAAY;QACxB,OAAO,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,KAAK,CAAC;IAClD,CAAC;IAED,IAAc,YAAY;QACxB,OAAO,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC;IAC1C,CAAC;IAED,2HAA2H;IAC3H,IAAc,QAAQ;QACpB,OAAO,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC;IACtC,CAAC;IAED;;;;;;;;;;;OAWG;IACO,wBAAwB,CAAC,IAAwC;QACzE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC;QAEvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QAED,8DAA8D;QAC9D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAA,eAAQ,EAAC;gBACb,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,KAAK,8DAA8D,KAAK,EAAE;aAClH,CAAC,CAAC;QACL,CAAC;QAED,wFAAwF;QACxF,+FAA+F;QAC/F,+FAA+F;QAC/F,gGAAgG;QAChG,gFAAgF;QAChF,MAAM,eAAe,GAAG,OAAO,CAC7B,4BAAgB,CAAC,WAAW,EAAE,CAAC,oBAAoB,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"abstract.js","sourceRoot":"","sources":["../../../../../src/base/repositories/core/abstract.ts"],"names":[],"mappings":";;;AAGA,mDAAuD;AAEvD,sDAAmE;AACnE,0DAA6D;AAC7D,sDAAoG;AAYpG,sGAAsG;AACtG,sFAAsF;AACtF,mDAI6B;AAG7B;;;;GAIG;AACH,MAAsB,kBAKpB,SAAQ,iBAAU;IAiBlB,YACE,UAA+B,EAC/B,IAIC;QAED,MAAM,SAAS,GACb,IAAI,EAAE,KAAK;YACX,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAE/F,KAAK,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAlB9B;;;WAGG;QACK,mBAAc,GAAsC,IAAI,CAAC;QAgB/D,IAAI,CAAC,eAAe,GAAG,IAAI,EAAE,cAAc,IAAI,qCAAyB,CAAC,SAAS,CAAC;QAEnF,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAChC,CAAC;QAED,IAAI,IAAI,EAAE,WAAW,EAAE,CAAC;YACtB,IAAI,CAAC,OAAO,GAAG,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACxC,CAAC;IACH,CAAC;IAED,IAAI,UAAU;QACZ,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAA,eAAQ,EAAC;gBACb,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,kIAAkI;aACrK,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,UAAU,CAAC,KAAyB;QACtC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED,qEAAqE;IACrE,IAAI,MAAM;QACR,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,MAAM,CAAC,KAAqB;QAC9B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,aAAa,CAAC,IAAwC;QACpD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC;IACrC,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,IAAc,aAAa;QACzB,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC,cAAc,CAAC;QAC7B,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,4BAAgB,CAAC,WAAW,EAAE,CAAC,gBAAgB,CAAC;YACpE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;SAChC,CAAC,EAAE,QAAQ,CAAC;QAEb,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,IAAc,YAAY;QACxB,OAAO,IAAI,CAAC,aAAa,EAAE,gBAAgB,IAAI,EAAE,CAAC;IACpD,CAAC;IAED,0GAA0G;IAC1G,IAAc,YAAY;QACxB,OAAO,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,KAAK,CAAC;IAClD,CAAC;IAED,IAAc,YAAY;QACxB,OAAO,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC;IAC1C,CAAC;IAED,2HAA2H;IAC3H,IAAc,QAAQ;QACpB,OAAO,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC;IACtC,CAAC;IAED;;;;;;;;;;;OAWG;IACO,wBAAwB,CAAC,IAAwC;QACzE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC;QAEvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QAED,8DAA8D;QAC9D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAA,eAAQ,EAAC;gBACb,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,KAAK,8DAA8D,KAAK,EAAE;aAClH,CAAC,CAAC;QACL,CAAC;QAED,wFAAwF;QACxF,+FAA+F;QAC/F,+FAA+F;QAC/F,gGAAgG;QAChG,gFAAgF;QAChF,MAAM,eAAe,GAAG,OAAO,CAC7B,4BAAgB,CAAC,WAAW,EAAE,CAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,KAAK,CACzF,CAAC;QACF,MAAM,OAAO,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,6BAAiB,CAAC;QAEnF,IAAI,KAAK,GAAG,OAAO,EAAE,CAAC;YACpB,MAAM,IAAA,eAAQ,EAAC;gBACb,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,KAAK,4DAA4D,KAAK,eAAe,OAAO,gFAAgF;aACpN,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACO,kBAAkB,CAAC,IAA0C;QACrE,MAAM,EAAE,MAAM,EAAE,KAAK,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC;QAExC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QAED,IAAI,CAAC,wBAAwB,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAE9D,MAAM,IAAI,GAAG,CAAC,UAAoC,EAAE,IAAY,EAAQ,EAAE;YACxE,MAAM,cAAc,GAAG,UAAU,IAAI,EAAE,CAAC;YACxC,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,CAAC;gBACvC,MAAM,aAAa,GAAG,SAAS,CAAC,KAAK,CAAC;gBACtC,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,SAAS;gBACX,CAAC;gBAED,MAAM,YAAY,GAAG,GAAG,IAAI,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;gBACrD,MAAM,aAAa,GAAG,aAAa,CAAC,KAAK,CAAC;gBAE1C,IACE,aAAa,KAAK,SAAS;oBAC3B,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,aAAa,GAAG,CAAC,CAAC,EACvD,CAAC;oBACD,MAAM,IAAA,eAAQ,EAAC;wBACb,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,KAAK,mDAAmD,YAAY,6CAA6C,aAAa,EAAE;qBACxK,CAAC,CAAC;gBACL,CAAC;gBAED,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,8EAA8E;IACpE,aAAa;QACrB,MAAM,QAAQ,GAAG,4BAAgB,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAE5E,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;YACpB,MAAM,IAAA,eAAQ,EAAC;gBACb,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,iHAAiH;aACpJ,CAAC,CAAC;QACL,CAAC;QAED,4FAA4F;QAC5F,oFAAoF;QACpF,MAAM,UAAU,GAAG,IAAA,qBAAY,EAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAA2B,CAAC;QACpF,OAAO,IAAI,UAAU,EAAE,CAAC;IAC1B,CAAC;IAED,kEAAkE;IACxD,aAAa,CAAC,IAA4B;QAClD,MAAM,IAAA,eAAQ,EAAC;YACb,WAAW,EAAE,gCAAoB,CAAC,qBAAqB;YACvD,OAAO,EAAE,IAAI,IAAI,CAAC,UAAU,kDAAkD,IAAI,CAAC,cAAc,EAAE;SACpG,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACO,oBAAoB,CAAU,IAKvC;QACC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QAE7D,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,SAAS,EAAE,CAAC;QACrB,CAAC;QAED,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAC1E,OAAO,SAAS,EAAE,CAAC;QACrB,CAAC;QAED,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC;QAE1E,OAAO,kBAAW,CAAC,qBAAqB,CAAU;YAChD,SAAS,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YACvD,SAAS;YACT,KAAK,EAAE,KAAK,IAAI,YAAY;YAC5B,WAAW;YACX,UAAU;YACV,MAAM;YACN,OAAO,EAAE,OAAO,IAAI;gBAClB,QAAQ,EAAE,6BAAsB,CAAC,WAAW;gBAC5C,cAAc,EAAE,EAAE;gBAClB,UAAU,EAAE,GAAG;gBACf,MAAM,EAAE,uBAAgB,CAAC,KAAK;aAC/B;YACD,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACK,aAAa,CACnB,OAAqB;QAErB,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8HAA8H;IACpH,SAAS,CAAkB,IAGpC;QACC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEjD,OAAO,IAAI,CAAC,oBAAoB,CAAW;YACzC,SAAS,EAAE,MAAM;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;YACzC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;SAChE,CAAC,CAAC;IACL,CAAC;IAED,4KAA4K;IAClK,cAAc,CAAkB,IAGzC;QACC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEjD,OAAO,IAAI,CAAC,oBAAoB,CAAoB;YAClD,SAAS,EAAE,MAAM;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;YAC9C,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;SAChE,CAAC,CAAC;IACL,CAAC;IAED,kHAAkH;IACxG,YAAY,CAAkB,IAGvC;QACC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEjD,OAAO,IAAI,CAAC,oBAAoB,CAAe;YAC7C,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS;YAC/D,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;SACnE,CAAC,CAAC;IACL,CAAC;IAkFD,QAAQ,CAAkB,IAIzB;QACC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QAEtC,IAAI,OAAO,EAAE,YAAY,KAAK,KAAK,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACvF,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IACrD,CAAC;IA+BD,QAAQ,CAAkB,IAGzB;QACC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QAEhC,IAAI,OAAO,EAAE,YAAY,KAAK,KAAK,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACjF,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/C,CAAC;CACF;AAhdD,gDAgdC"}
|
|
@@ -10,12 +10,16 @@ export declare const RepositoryMetadataMixin: <BaseClass extends TMixinTarget<_M
|
|
|
10
10
|
}): IModelMetadata | undefined;
|
|
11
11
|
}>>(baseClass: BaseClass) => {
|
|
12
12
|
new (...args: any[]): {
|
|
13
|
+
/** By repository class name, for the by-name API. Two classes may share a name; `repositoryBindingsByClass` cannot confuse them. */
|
|
13
14
|
repositoryBindings: Map<string, IRepositoryBinding<AbstractEntity>>;
|
|
15
|
+
/** By repository class: a minified build renames classes, and two chunks may give two of them one name. */
|
|
16
|
+
repositoryBindingsByClass: Map<Function, IRepositoryBinding<AbstractEntity>>;
|
|
14
17
|
/**
|
|
15
|
-
* The model classes
|
|
16
|
-
*
|
|
18
|
+
* The model classes each datasource owns, keyed by the datasource class - or by the string a
|
|
19
|
+
* repository named it with (`dataSource: 'PgDataSource'`), which only a class of that name
|
|
20
|
+
* can match. Never by class name alone: a minified build gives two datasources one name.
|
|
17
21
|
*/
|
|
18
|
-
datasourceModels: Map<string, Set<TClass<AnyType>>>;
|
|
22
|
+
datasourceModels: Map<string | Function, Set<TClass<AnyType>>>;
|
|
19
23
|
setRepositoryMetadata<Target extends object = object, Model extends AbstractEntity = AbstractEntity<unknown>, DataSource extends IDataSource = IDataSource<{}, import("../../../base/datasources").TAnyDataSourceSchema, {}>>(opts: {
|
|
20
24
|
target: Target;
|
|
21
25
|
metadata: TRepositoryMetadata<Model, DataSource> & {
|
|
@@ -29,9 +33,16 @@ export declare const RepositoryMetadataMixin: <BaseClass extends TMixinTarget<_M
|
|
|
29
33
|
}) | undefined;
|
|
30
34
|
/** Registers a repository binding (called by @repository) linking a repository to its model + datasource. */
|
|
31
35
|
registerRepositoryBinding<Model_1 extends AbstractEntity = AbstractEntity<unknown>, DataSource_1 extends IDataSource = IDataSource<{}, import("../../../base/datasources").TAnyDataSourceSchema, {}>>(opts: IRepositoryBinding<Model_1, DataSource_1>): void;
|
|
36
|
+
/** By class, walking up to the nearest decorated parent; by name only for callers holding a name. */
|
|
32
37
|
getRepositoryBinding(opts: {
|
|
38
|
+
target: Function;
|
|
39
|
+
} | {
|
|
33
40
|
name: string;
|
|
34
41
|
}): IRepositoryBinding<AbstractEntity> | undefined;
|
|
42
|
+
/** A class finds what was registered under it, and under a string equal to its name. */
|
|
43
|
+
getDataSourceModelClasses(opts: {
|
|
44
|
+
dataSource: string | TClass<IDataSource>;
|
|
45
|
+
}): Set<TClass<AnyType>>;
|
|
35
46
|
/**
|
|
36
47
|
* Resolves and caches relations for a model entry - called lazily from buildSchema() so that
|
|
37
48
|
* every `@model` class is registered first, which avoids circular-dependency ordering issues.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repository.mixin.d.ts","sourceRoot":"","sources":["../../../../../src/helpers/inversion/mixins/repository.mixin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAGnF,OAAO,KAAK,EAAE,gBAAgB,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAGtF,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,2BAA2B,EAC3B,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AAEzB,eAAO,MAAM,uBAAuB,GAClC,SAAS,SAAS,YAAY,CAC5B,iBAAiB,GAAG;IAClB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAChD,gBAAgB,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,cAAc,GAAG,SAAS,CAAC;CACxE,CACF,EAED,WAAW,SAAS;;
|
|
1
|
+
{"version":3,"file":"repository.mixin.d.ts","sourceRoot":"","sources":["../../../../../src/helpers/inversion/mixins/repository.mixin.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,16 +22,37 @@ const RepositoryMetadataMixin = (baseClass) => {
|
|
|
22
22
|
// datasource then silently discovers no schema.
|
|
23
23
|
const repositoryClass = (0, common_1.resolveValue)({ value: opts.repository });
|
|
24
24
|
this.repositoryBindings.set(repositoryClass.name, opts);
|
|
25
|
+
this.repositoryBindingsByClass.set(repositoryClass, opts);
|
|
25
26
|
const dataSourceRef = (0, common_1.resolveValue)({ value: opts.dataSource });
|
|
26
|
-
const dsKey = typeof dataSourceRef === 'string' ? dataSourceRef : dataSourceRef.name;
|
|
27
27
|
const modelClass = (0, common_1.resolveValue)({ value: opts.model });
|
|
28
|
-
if (!this.datasourceModels.has(
|
|
29
|
-
this.datasourceModels.set(
|
|
28
|
+
if (!this.datasourceModels.has(dataSourceRef)) {
|
|
29
|
+
this.datasourceModels.set(dataSourceRef, new Set());
|
|
30
30
|
}
|
|
31
|
-
this.datasourceModels.get(
|
|
31
|
+
this.datasourceModels.get(dataSourceRef).add(modelClass);
|
|
32
32
|
}
|
|
33
|
+
/** By class, walking up to the nearest decorated parent; by name only for callers holding a name. */
|
|
33
34
|
getRepositoryBinding(opts) {
|
|
34
|
-
|
|
35
|
+
if ('name' in opts) {
|
|
36
|
+
return this.repositoryBindings.get(opts.name);
|
|
37
|
+
}
|
|
38
|
+
for (let current = opts.target; current && current !== Function.prototype; current = Object.getPrototypeOf(current)) {
|
|
39
|
+
const binding = this.repositoryBindingsByClass.get(current);
|
|
40
|
+
if (binding) {
|
|
41
|
+
return binding;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
46
|
+
/** A class finds what was registered under it, and under a string equal to its name. */
|
|
47
|
+
getDataSourceModelClasses(opts) {
|
|
48
|
+
const { dataSource } = opts;
|
|
49
|
+
if (typeof dataSource === 'string') {
|
|
50
|
+
return this.datasourceModels.get(dataSource) ?? new Set();
|
|
51
|
+
}
|
|
52
|
+
return new Set([
|
|
53
|
+
...(this.datasourceModels.get(dataSource) ?? []),
|
|
54
|
+
...(this.datasourceModels.get(dataSource.name) ?? []),
|
|
55
|
+
]);
|
|
35
56
|
}
|
|
36
57
|
/**
|
|
37
58
|
* Resolves and caches relations for a model entry - called lazily from buildSchema() so that
|
|
@@ -67,9 +88,7 @@ const RepositoryMetadataMixin = (baseClass) => {
|
|
|
67
88
|
* site.
|
|
68
89
|
*/
|
|
69
90
|
getModels(opts) {
|
|
70
|
-
const { dataSource }
|
|
71
|
-
const dsKey = typeof dataSource === 'string' ? dataSource : dataSource.name;
|
|
72
|
-
const modelClasses = this.datasourceModels.get(dsKey) ?? new Set();
|
|
91
|
+
const modelClasses = this.getDataSourceModelClasses({ dataSource: opts.dataSource });
|
|
73
92
|
const rs = Array.from(modelClasses)
|
|
74
93
|
.map(modelClass => {
|
|
75
94
|
// Read straight off the class: a class -> name -> modelRegistry round-trip collapses two
|
|
@@ -100,11 +119,9 @@ const RepositoryMetadataMixin = (baseClass) => {
|
|
|
100
119
|
* has no pgTable to resolve.
|
|
101
120
|
*/
|
|
102
121
|
getModelClasses(opts) {
|
|
103
|
-
const { dataSource } = opts;
|
|
104
|
-
const dsKey = typeof dataSource === 'string' ? dataSource : dataSource.name;
|
|
105
122
|
// Straight from the stored class refs: a name round-trip through the shared modelRegistry
|
|
106
123
|
// would hand back whichever same-named class registered last.
|
|
107
|
-
return Array.from(this.
|
|
124
|
+
return Array.from(this.getDataSourceModelClasses({ dataSource: opts.dataSource }));
|
|
108
125
|
}
|
|
109
126
|
/** The key a model occupies in `modelRegistry` - its table name, or its class name when it has none. */
|
|
110
127
|
resolveModelKey(opts) {
|
|
@@ -129,9 +146,7 @@ const RepositoryMetadataMixin = (baseClass) => {
|
|
|
129
146
|
return rs;
|
|
130
147
|
}
|
|
131
148
|
hasModels(opts) {
|
|
132
|
-
|
|
133
|
-
const modelNames = this.datasourceModels.get(dsKey);
|
|
134
|
-
return modelNames !== undefined && modelNames.size > 0;
|
|
149
|
+
return this.getDataSourceModelClasses({ dataSource: opts.dataSource }).size > 0;
|
|
135
150
|
}
|
|
136
151
|
};
|
|
137
152
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repository.mixin.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/mixins/repository.mixin.ts"],"names":[],"mappings":";;;AAGA,0DAA6D;AAC7D,sDAAuD;AAEvD,yCAA8C;AAC9C,iEAAqE;AAS9D,MAAM,uBAAuB,GAAG,CAQrC,SAAoB,EACpB,EAAE;IACF,OAAO,KAAM,SAAQ,SAAS;
|
|
1
|
+
{"version":3,"file":"repository.mixin.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/mixins/repository.mixin.ts"],"names":[],"mappings":"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"}
|
|
@@ -303,7 +303,8 @@ declare const BaseRegistry: {
|
|
|
303
303
|
} & {
|
|
304
304
|
new (...args: any[]): {
|
|
305
305
|
repositoryBindings: Map<string, IRepositoryBinding<import("../..").AbstractEntity>>;
|
|
306
|
-
|
|
306
|
+
repositoryBindingsByClass: Map<Function, IRepositoryBinding<import("../..").AbstractEntity>>;
|
|
307
|
+
datasourceModels: Map<string | Function, Set<TClass<AnyType>>>;
|
|
307
308
|
setRepositoryMetadata<Target extends object = object, Model extends import("../..").AbstractEntity = import("../..").AbstractEntity<unknown>, DataSource extends import("../..").IDataSource = import("../..").IDataSource<{}, import("../..").TAnyDataSourceSchema, {}>>(opts: {
|
|
308
309
|
target: Target;
|
|
309
310
|
metadata: import("./common/types").TRepositoryMetadata<Model, DataSource> & {
|
|
@@ -317,8 +318,13 @@ declare const BaseRegistry: {
|
|
|
317
318
|
}) | undefined;
|
|
318
319
|
registerRepositoryBinding<Model extends import("../..").AbstractEntity = import("../..").AbstractEntity<unknown>, DataSource extends import("../..").IDataSource = import("../..").IDataSource<{}, import("../..").TAnyDataSourceSchema, {}>>(opts: IRepositoryBinding<Model, DataSource>): void;
|
|
319
320
|
getRepositoryBinding(opts: {
|
|
321
|
+
target: Function;
|
|
322
|
+
} | {
|
|
320
323
|
name: string;
|
|
321
324
|
}): IRepositoryBinding<import("../..").AbstractEntity> | undefined;
|
|
325
|
+
getDataSourceModelClasses(opts: {
|
|
326
|
+
dataSource: string | TClass<import("../..").IDataSource>;
|
|
327
|
+
}): Set<TClass<AnyType>>;
|
|
322
328
|
resolveModelRelations(modelMeta: IModelRegistryEntry): unknown;
|
|
323
329
|
getModels(opts: {
|
|
324
330
|
dataSource: string | TClass<import("../..").IDataSource>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/helpers/inversion/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,gBAAgB,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAEjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAW9E,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/helpers/inversion/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,gBAAgB,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAEjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAW9E,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAsC0P,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAAD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAAD,CAAC;;;;;;;;4BA9B5Q,CAAC;AAEF,iHAAiH;AACjH,qBAAa,gBAAiB,SAAQ,YAAY;IAChD,MAAM,CAAC,QAAQ,CAAC,kBAAkB,uBAAuB;IAEzD,OAAO;IASP,MAAM,CAAC,WAAW,IAAI,gBAAgB;IAOtC,QAAQ,IAAI,IAAI;CAOjB"}
|
|
@@ -13,6 +13,7 @@ class MetadataRegistry extends BaseRegistry {
|
|
|
13
13
|
this.modelRegistry = new Map();
|
|
14
14
|
this.modelsBySchema = new WeakMap();
|
|
15
15
|
this.repositoryBindings = new Map();
|
|
16
|
+
this.repositoryBindingsByClass = new Map();
|
|
16
17
|
this.datasourceModels = new Map();
|
|
17
18
|
}
|
|
18
19
|
static getInstance() {
|
|
@@ -25,6 +26,7 @@ class MetadataRegistry extends BaseRegistry {
|
|
|
25
26
|
this.modelRegistry.clear();
|
|
26
27
|
this.modelsBySchema = new WeakMap();
|
|
27
28
|
this.repositoryBindings.clear();
|
|
29
|
+
this.repositoryBindingsByClass.clear();
|
|
28
30
|
this.datasourceModels.clear();
|
|
29
31
|
}
|
|
30
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/helpers/inversion/registry.ts"],"names":[],"mappings":";;;AACA,8DAAiF;AACjF,wDAAoD;AAEpD,qCAQkB;AAElB,MAAM,YAAY,GAAG,IAAA,8BAAqB,EACxC,IAAA,oCAA2B,EACzB,IAAA,oCAA2B,EACzB,IAAA,gCAAuB,EACrB,IAAA,gCAAuB,EAAC,IAAA,2BAAkB,EAAC,IAAA,gCAAuB,EAAC,kCAAiB,CAAC,CAAC,CAAC,CACxF,CACF,CACF,CACF,CAAC;AAEF,iHAAiH;AACjH,MAAa,gBAAiB,SAAQ,YAAY;aAChC,uBAAkB,GAAG,mBAAmB,CAAC;IAEzD;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,EAA+B,CAAC;QAC5D,IAAI,CAAC,cAAc,GAAG,IAAI,OAAO,EAA+B,CAAC;QACjE,IAAI,CAAC,kBAAkB,GAAG,IAAI,GAAG,EAA8B,CAAC;QAChE,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/helpers/inversion/registry.ts"],"names":[],"mappings":";;;AACA,8DAAiF;AACjF,wDAAoD;AAEpD,qCAQkB;AAElB,MAAM,YAAY,GAAG,IAAA,8BAAqB,EACxC,IAAA,oCAA2B,EACzB,IAAA,oCAA2B,EACzB,IAAA,gCAAuB,EACrB,IAAA,gCAAuB,EAAC,IAAA,2BAAkB,EAAC,IAAA,gCAAuB,EAAC,kCAAiB,CAAC,CAAC,CAAC,CACxF,CACF,CACF,CACF,CAAC;AAEF,iHAAiH;AACjH,MAAa,gBAAiB,SAAQ,YAAY;aAChC,uBAAkB,GAAG,mBAAmB,CAAC;IAEzD;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,EAA+B,CAAC;QAC5D,IAAI,CAAC,cAAc,GAAG,IAAI,OAAO,EAA+B,CAAC;QACjE,IAAI,CAAC,kBAAkB,GAAG,IAAI,GAAG,EAA8B,CAAC;QAChE,IAAI,CAAC,yBAAyB,GAAG,IAAI,GAAG,EAAgC,CAAC;QACzE,IAAI,CAAC,gBAAgB,GAAG,IAAI,GAAG,EAA2C,CAAC;IAC7E,CAAC;IAED,MAAM,CAAC,WAAW;QAChB,OAAO,gCAAc,CAAC,OAAO,CAAC;YAC5B,GAAG,EAAE,gBAAgB,CAAC,kBAAkB;YACxC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,gBAAgB,EAAE;SACrC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,OAAO,EAA+B,CAAC;QACjE,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,CAAC;QACvC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;;AAzBH,4CA0BC"}
|
package/dist/cjs/metadata.d.ts
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
export { component, configuration, injectable, pickRegistrationOptions, provide, service, } from './base/metadata/injectable';
|
|
10
10
|
export { datasource, model, repository } from './base/metadata/persistents';
|
|
11
11
|
export { inject } from './base/metadata/injectors';
|
|
12
|
+
export { ArtifactBindingKeys } from './base/metadata/artifact-keys';
|
|
12
13
|
export { ArtifactNamespaces, BindingNamespaces } from './common/bindings';
|
|
13
14
|
export type { TBindingNamespace } from './common/bindings';
|
|
14
15
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,SAAS,EACT,aAAa,EACb,UAAU,EACV,uBAAuB,EACvB,OAAO,EACP,OAAO,GACR,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,SAAS,EACT,aAAa,EACb,UAAU,EACV,uBAAuB,EACvB,OAAO,EACP,OAAO,GACR,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D;;;;;;GAMG;AAEH,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACnF,YAAY,EACV,iBAAiB,EACjB,4BAA4B,EAC5B,aAAa,GACd,MAAM,qBAAqB,CAAC"}
|
package/dist/cjs/metadata.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* `src/__tests__/bundle/browser-weight.test.ts`.
|
|
9
9
|
*/
|
|
10
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
-
exports.MetadataRegistry = exports.BindingKeys = exports.ArtifactTypes = exports.BindingNamespaces = exports.ArtifactNamespaces = exports.inject = exports.repository = exports.model = exports.datasource = exports.service = exports.provide = exports.pickRegistrationOptions = exports.injectable = exports.configuration = exports.component = void 0;
|
|
11
|
+
exports.MetadataRegistry = exports.BindingKeys = exports.ArtifactTypes = exports.BindingNamespaces = exports.ArtifactNamespaces = exports.ArtifactBindingKeys = exports.inject = exports.repository = exports.model = exports.datasource = exports.service = exports.provide = exports.pickRegistrationOptions = exports.injectable = exports.configuration = exports.component = void 0;
|
|
12
12
|
var injectable_1 = require("./base/metadata/injectable");
|
|
13
13
|
Object.defineProperty(exports, "component", { enumerable: true, get: function () { return injectable_1.component; } });
|
|
14
14
|
Object.defineProperty(exports, "configuration", { enumerable: true, get: function () { return injectable_1.configuration; } });
|
|
@@ -22,6 +22,8 @@ Object.defineProperty(exports, "model", { enumerable: true, get: function () { r
|
|
|
22
22
|
Object.defineProperty(exports, "repository", { enumerable: true, get: function () { return persistents_1.repository; } });
|
|
23
23
|
var injectors_1 = require("./base/metadata/injectors");
|
|
24
24
|
Object.defineProperty(exports, "inject", { enumerable: true, get: function () { return injectors_1.inject; } });
|
|
25
|
+
var artifact_keys_1 = require("./base/metadata/artifact-keys");
|
|
26
|
+
Object.defineProperty(exports, "ArtifactBindingKeys", { enumerable: true, get: function () { return artifact_keys_1.ArtifactBindingKeys; } });
|
|
25
27
|
var bindings_1 = require("./common/bindings");
|
|
26
28
|
Object.defineProperty(exports, "ArtifactNamespaces", { enumerable: true, get: function () { return bindings_1.ArtifactNamespaces; } });
|
|
27
29
|
Object.defineProperty(exports, "BindingNamespaces", { enumerable: true, get: function () { return bindings_1.BindingNamespaces; } });
|
package/dist/cjs/metadata.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/metadata.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,yDAOoC;AANlC,uGAAA,SAAS,OAAA;AACT,2GAAA,aAAa,OAAA;AACb,wGAAA,UAAU,OAAA;AACV,qHAAA,uBAAuB,OAAA;AACvB,qGAAA,OAAO,OAAA;AACP,qGAAA,OAAO,OAAA;AAET,2DAA4E;AAAnE,yGAAA,UAAU,OAAA;AAAE,oGAAA,KAAK,OAAA;AAAE,yGAAA,UAAU,OAAA;AACtC,uDAAmD;AAA1C,mGAAA,MAAM,OAAA;
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/metadata.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,yDAOoC;AANlC,uGAAA,SAAS,OAAA;AACT,2GAAA,aAAa,OAAA;AACb,wGAAA,UAAU,OAAA;AACV,qHAAA,uBAAuB,OAAA;AACvB,qGAAA,OAAO,OAAA;AACP,qGAAA,OAAO,OAAA;AAET,2DAA4E;AAAnE,yGAAA,UAAU,OAAA;AAAE,oGAAA,KAAK,OAAA;AAAE,yGAAA,UAAU,OAAA;AACtC,uDAAmD;AAA1C,mGAAA,MAAM,OAAA;AACf,+DAAoE;AAA3D,oHAAA,mBAAmB,OAAA;AAE5B,8CAA0E;AAAjE,8GAAA,kBAAkB,OAAA;AAAE,6GAAA,iBAAiB,OAAA;AAG9C;;;;;;GAMG;AAEH,iDAAmF;AAA1E,0GAAA,aAAa,OAAA;AAAE,wGAAA,WAAW,OAAA;AAAE,6GAAA,gBAAgB,OAAA"}
|
package/dist/cjs/repository.d.ts
CHANGED
|
@@ -16,6 +16,9 @@ export { AbstractRepository } from './base/repositories/core/abstract';
|
|
|
16
16
|
export { AbstractDataSource } from './base/datasources/abstract';
|
|
17
17
|
export type { ICreatableRepository, ICrudRepository, IDeletableRepository, IPersistableRepository, IReadableRepository, IRepository, IUpdatableRepository, } from './base/repositories/common/types/contracts';
|
|
18
18
|
export { buildDataRange } from './base/repositories/common/types/results';
|
|
19
|
+
export { HttpResponseReader } from './base/repositories/common/response-reader';
|
|
20
|
+
export { HttpExtraRequest } from './base/repositories/common/extra-request';
|
|
21
|
+
export type { TExtraRequest, TExtraResult } from './base/repositories/common/extra-request';
|
|
19
22
|
export { DEFAULT_LIMIT, DEFAULT_MAX_LIMIT, RepositoryOperationScopes, RepositoryTypes, } from './base/repositories/common/constants';
|
|
20
23
|
export type { TRepositoryType } from './base/repositories/common/constants';
|
|
21
24
|
export { CoreErrorCodes, SearchErrorCodes } from './common/error-codes';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../src/repository.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,YAAY,EACV,oBAAoB,EACpB,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,WAAW,EACX,oBAAoB,GACrB,MAAM,4CAA4C,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAI1E,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,yBAAyB,EACzB,eAAe,GAChB,MAAM,sCAAsC,CAAC;AAC9C,YAAY,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAEnG,YAAY,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAInE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGvE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../src/repository.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,YAAY,EACV,oBAAoB,EACpB,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,WAAW,EACX,oBAAoB,GACrB,MAAM,4CAA4C,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAI1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AAI5F,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,yBAAyB,EACzB,eAAe,GAChB,MAAM,sCAAsC,CAAC;AAC9C,YAAY,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAEnG,YAAY,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAInE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGvE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC"}
|
package/dist/cjs/repository.js
CHANGED
|
@@ -14,13 +14,19 @@
|
|
|
14
14
|
* Weight is a contract, checked by `src/__tests__/bundle/browser-weight.test.ts`.
|
|
15
15
|
*/
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.SchemaTypes = exports.AbstractEntity = exports.throwNotSupported = exports.SearchErrorCodes = exports.CoreErrorCodes = exports.RepositoryTypes = exports.RepositoryOperationScopes = exports.DEFAULT_MAX_LIMIT = exports.DEFAULT_LIMIT = exports.buildDataRange = exports.AbstractDataSource = exports.AbstractRepository = void 0;
|
|
17
|
+
exports.SchemaTypes = exports.AbstractEntity = exports.throwNotSupported = exports.SearchErrorCodes = exports.CoreErrorCodes = exports.RepositoryTypes = exports.RepositoryOperationScopes = exports.DEFAULT_MAX_LIMIT = exports.DEFAULT_LIMIT = exports.HttpExtraRequest = exports.HttpResponseReader = exports.buildDataRange = exports.AbstractDataSource = exports.AbstractRepository = void 0;
|
|
18
18
|
var abstract_1 = require("./base/repositories/core/abstract");
|
|
19
19
|
Object.defineProperty(exports, "AbstractRepository", { enumerable: true, get: function () { return abstract_1.AbstractRepository; } });
|
|
20
20
|
var abstract_2 = require("./base/datasources/abstract");
|
|
21
21
|
Object.defineProperty(exports, "AbstractDataSource", { enumerable: true, get: function () { return abstract_2.AbstractDataSource; } });
|
|
22
22
|
var results_1 = require("./base/repositories/common/types/results");
|
|
23
23
|
Object.defineProperty(exports, "buildDataRange", { enumerable: true, get: function () { return results_1.buildDataRange; } });
|
|
24
|
+
// How a client reads what an IGNIS server answers - shared by the http connector and any client
|
|
25
|
+
// that reads the same server without it.
|
|
26
|
+
var response_reader_1 = require("./base/repositories/common/response-reader");
|
|
27
|
+
Object.defineProperty(exports, "HttpResponseReader", { enumerable: true, get: function () { return response_reader_1.HttpResponseReader; } });
|
|
28
|
+
var extra_request_1 = require("./base/repositories/common/extra-request");
|
|
29
|
+
Object.defineProperty(exports, "HttpExtraRequest", { enumerable: true, get: function () { return extra_request_1.HttpExtraRequest; } });
|
|
24
30
|
// What a repository on any transport raises and bounds itself by - the constants, the error codes,
|
|
25
31
|
// and the helper an engine that lacks an operation throws through.
|
|
26
32
|
var constants_1 = require("./base/repositories/common/constants");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repository.js","sourceRoot":"","sources":["../../src/repository.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAEH,8DAAuE;AAA9D,8GAAA,kBAAkB,OAAA;AAC3B,wDAAiE;AAAxD,8GAAA,kBAAkB,OAAA;AAY3B,oEAA0E;AAAjE,yGAAA,cAAc,OAAA;AAEvB,mGAAmG;AACnG,mEAAmE;AACnE,kEAK8C;AAJ5C,0GAAA,aAAa,OAAA;AACb,8GAAA,iBAAiB,OAAA;AACjB,sHAAA,yBAAyB,OAAA;AACzB,4GAAA,eAAe,OAAA;AAGjB,oDAAwE;AAA/D,6GAAA,cAAc,OAAA;AAAE,+GAAA,gBAAgB,OAAA;AACzC,2DAA8D;AAArD,kHAAA,iBAAiB,OAAA;AAK1B,mGAAmG;AACnG,qFAAqF;AACrF,2CAAoD;AAA3C,sGAAA,cAAc,OAAA;AACvB,4DAA6D;AAApD,wGAAA,WAAW,OAAA"}
|
|
1
|
+
{"version":3,"file":"repository.js","sourceRoot":"","sources":["../../src/repository.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAEH,8DAAuE;AAA9D,8GAAA,kBAAkB,OAAA;AAC3B,wDAAiE;AAAxD,8GAAA,kBAAkB,OAAA;AAY3B,oEAA0E;AAAjE,yGAAA,cAAc,OAAA;AAEvB,gGAAgG;AAChG,yCAAyC;AACzC,8EAAgF;AAAvE,qHAAA,kBAAkB,OAAA;AAC3B,0EAA4E;AAAnE,iHAAA,gBAAgB,OAAA;AAGzB,mGAAmG;AACnG,mEAAmE;AACnE,kEAK8C;AAJ5C,0GAAA,aAAa,OAAA;AACb,8GAAA,iBAAiB,OAAA;AACjB,sHAAA,yBAAyB,OAAA;AACzB,4GAAA,eAAe,OAAA;AAGjB,oDAAwE;AAA/D,6GAAA,cAAc,OAAA;AAAE,+GAAA,gBAAgB,OAAA;AACzC,2DAA8D;AAArD,kHAAA,iBAAiB,OAAA;AAK1B,mGAAmG;AACnG,qFAAqF;AACrF,2CAAoD;AAA3C,sGAAA,cAAc,OAAA;AACvB,4DAA6D;AAApD,wGAAA,WAAW,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifact-index.d.ts","sourceRoot":"","sources":["../../../../src/base/applications/artifact-index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAW,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAErE,OAAO,EAAE,UAAU,EAAY,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAA6B,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAG/F,+NAA+N;AAC/N,qBAAa,mBAAoB,SAAQ,UAAU;IACjD,MAAM,CAAC,QAAQ,CAAC,mBAAmB,2BAA2B;IAE9D,OAAO;IAIP,MAAM,CAAC,WAAW,IAAI,mBAAmB;IAOzC,uMAAuM;IACvM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAOzC;IAEF,oNAAoN;IACpN,oBAAoB,IAAI,cAAc;IAsBtC,yHAAyH;IACnH,OAAO,CAAC,IAAI,EAAE;QAClB,KAAK,EAAE,mBAAmB,CAAC;QAC3B,WAAW,EAAE,OAAO,CAAC;KACtB,GAAG,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IA0CrC;;;;OAIG;IACH,+BAA+B,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;KAAE,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"artifact-index.d.ts","sourceRoot":"","sources":["../../../../src/base/applications/artifact-index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAW,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAErE,OAAO,EAAE,UAAU,EAAY,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAA6B,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAG/F,+NAA+N;AAC/N,qBAAa,mBAAoB,SAAQ,UAAU;IACjD,MAAM,CAAC,QAAQ,CAAC,mBAAmB,2BAA2B;IAE9D,OAAO;IAIP,MAAM,CAAC,WAAW,IAAI,mBAAmB;IAOzC,uMAAuM;IACvM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAOzC;IAEF,oNAAoN;IACpN,oBAAoB,IAAI,cAAc;IAsBtC,yHAAyH;IACnH,OAAO,CAAC,IAAI,EAAE;QAClB,KAAK,EAAE,mBAAmB,CAAC;QAC3B,WAAW,EAAE,OAAO,CAAC;KACtB,GAAG,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IA0CrC;;;;OAIG;IACH,+BAA+B,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;KAAE,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE;IAyE7F,8JAA8J;IACxJ,OAAO,CAAC,IAAI,EAAE;QAClB,KAAK,EAAE,mBAAmB,CAAC;QAC3B,WAAW,EAAE,OAAO,CAAC;KACtB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAsB7B,4IAA4I;IAC5I,OAAO,CAAC,aAAa;IAMrB,mNAAmN;IAC7M,MAAM,CAAC,KAAK,SAAS,MAAM,cAAc,EAAE,IAAI,EAAE;QACrD,OAAO,EAAE,cAAc,EAAE,CAAC;QAC1B,KAAK,EAAE,KAAK,CAAC;QACb,WAAW,EAAE,OAAO,CAAC;KACtB,GAAG,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;YA8B3C,UAAU;CAWzB"}
|