@etohq/utils 1.5.4-next.0 → 2.0.0
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/common/errors.d.ts +3 -7
- package/dist/common/errors.d.ts.map +1 -1
- package/dist/common/errors.js +6 -10
- package/dist/common/errors.js.map +1 -1
- package/dist/dml/entity-builder.d.ts +2 -1
- package/dist/dml/entity-builder.d.ts.map +1 -1
- package/dist/dml/entity-builder.js +2 -17
- package/dist/dml/entity-builder.js.map +1 -1
- package/dist/dml/entity.d.ts +6 -0
- package/dist/dml/entity.d.ts.map +1 -1
- package/dist/dml/entity.js +47 -3
- package/dist/dml/entity.js.map +1 -1
- package/dist/dml/helpers/entity-builder/define-property.d.ts.map +1 -1
- package/dist/dml/helpers/entity-builder/define-property.js +41 -14
- package/dist/dml/helpers/entity-builder/define-property.js.map +1 -1
- package/dist/dml/helpers/mikro-orm/custom-type/zod-validated-json.d.ts +56 -0
- package/dist/dml/helpers/mikro-orm/custom-type/zod-validated-json.d.ts.map +1 -0
- package/dist/dml/helpers/mikro-orm/custom-type/zod-validated-json.js +132 -0
- package/dist/dml/helpers/mikro-orm/custom-type/zod-validated-json.js.map +1 -0
- package/dist/dml/properties/index.d.ts +1 -0
- package/dist/dml/properties/index.d.ts.map +1 -1
- package/dist/dml/properties/index.js +3 -0
- package/dist/dml/properties/index.js.map +1 -1
- package/dist/dml/properties/json.d.ts +59 -3
- package/dist/dml/properties/json.d.ts.map +1 -1
- package/dist/dml/properties/json.js +80 -3
- package/dist/dml/properties/json.js.map +1 -1
- package/dist/feature-flags/index.d.ts +0 -1
- package/dist/feature-flags/index.d.ts.map +1 -1
- package/dist/feature-flags/index.js +0 -1
- package/dist/feature-flags/index.js.map +1 -1
- package/dist/modules-sdk/create-pg-connection.d.ts +4 -3
- package/dist/modules-sdk/create-pg-connection.d.ts.map +1 -1
- package/dist/modules-sdk/create-pg-connection.js +61 -7
- package/dist/modules-sdk/create-pg-connection.js.map +1 -1
- package/dist/modules-sdk/definition.d.ts +10 -4
- package/dist/modules-sdk/definition.d.ts.map +1 -1
- package/dist/modules-sdk/definition.js +6 -2
- package/dist/modules-sdk/definition.js.map +1 -1
- package/dist/modules-sdk/loaders/mikro-orm-connection-loader.d.ts.map +1 -1
- package/dist/modules-sdk/loaders/mikro-orm-connection-loader.js +25 -6
- package/dist/modules-sdk/loaders/mikro-orm-connection-loader.js.map +1 -1
- package/dist/modules-sdk/modules-to-container-types.d.ts.map +1 -1
- package/dist/modules-sdk/modules-to-container-types.js +0 -1
- package/dist/modules-sdk/modules-to-container-types.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +46 -46
- package/LICENSE +0 -21
- package/dist/feature-flags/draft-overlays.d.ts +0 -3
- package/dist/feature-flags/draft-overlays.d.ts.map +0 -1
- package/dist/feature-flags/draft-overlays.js +0 -10
- package/dist/feature-flags/draft-overlays.js.map +0 -1
- package/dist/feature-flags/draft.d.ts +0 -3
- package/dist/feature-flags/draft.d.ts.map +0 -1
- package/dist/feature-flags/draft.js +0 -10
- package/dist/feature-flags/draft.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dml/properties/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,QAAQ,CAAA;AACtB,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,MAAM,CAAA;AACpB,cAAc,QAAQ,CAAA;AACtB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dml/properties/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,QAAQ,CAAA;AACtB,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,MAAM,CAAA;AACpB,cAAc,QAAQ,CAAA;AACtB,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AACrC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA"}
|
|
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.hasZodSchema = void 0;
|
|
17
18
|
__exportStar(require("./array"), exports);
|
|
18
19
|
__exportStar(require("./autoincrement"), exports);
|
|
19
20
|
__exportStar(require("./base"), exports);
|
|
@@ -26,6 +27,8 @@ __exportStar(require("./float"), exports);
|
|
|
26
27
|
__exportStar(require("./geometry"), exports);
|
|
27
28
|
__exportStar(require("./id"), exports);
|
|
28
29
|
__exportStar(require("./json"), exports);
|
|
30
|
+
var json_1 = require("./json");
|
|
31
|
+
Object.defineProperty(exports, "hasZodSchema", { enumerable: true, get: function () { return json_1.hasZodSchema; } });
|
|
29
32
|
__exportStar(require("./multipolygon"), exports);
|
|
30
33
|
__exportStar(require("./nullable"), exports);
|
|
31
34
|
__exportStar(require("./number"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dml/properties/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dml/properties/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,kDAA+B;AAC/B,yCAAsB;AACtB,+CAA4B;AAC5B,4CAAyB;AACzB,6CAA0B;AAC1B,8CAA2B;AAC3B,yCAAsB;AACtB,0CAAuB;AACvB,6CAA0B;AAC1B,uCAAoB;AACpB,yCAAsB;AACtB,+BAAqC;AAA5B,oGAAA,YAAY,OAAA;AACrB,iDAA8B;AAC9B,6CAA0B;AAC1B,2CAAwB;AACxB,0CAAuB;AACvB,4CAAyB;AACzB,gDAA6B;AAC7B,yCAAsB;AACtB,2CAAwB"}
|
|
@@ -1,11 +1,67 @@
|
|
|
1
|
+
import { ZodTypeAny } from "zod";
|
|
1
2
|
import { BaseProperty } from "./base";
|
|
2
3
|
/**
|
|
3
4
|
* The JSONProperty is used to define a property that stores
|
|
4
|
-
* data as a JSON string
|
|
5
|
+
* data as a JSON string.
|
|
6
|
+
*
|
|
7
|
+
* Now with full Zod schema support including:
|
|
8
|
+
* - Type inference for TypeScript
|
|
9
|
+
* - Schema metadata for validation
|
|
10
|
+
* - Optional validation flag
|
|
5
11
|
*/
|
|
6
|
-
export declare class JSONProperty
|
|
12
|
+
export declare class JSONProperty<T = Record<string, unknown>> extends BaseProperty<T> {
|
|
13
|
+
#private;
|
|
7
14
|
protected dataType: {
|
|
8
|
-
|
|
15
|
+
name: "json";
|
|
16
|
+
};
|
|
17
|
+
constructor(schema?: ZodTypeAny);
|
|
18
|
+
/**
|
|
19
|
+
* Get the Zod schema for validation
|
|
20
|
+
*/
|
|
21
|
+
get zodSchema(): ZodTypeAny | undefined;
|
|
22
|
+
/**
|
|
23
|
+
* Enable Zod validation for this property.
|
|
24
|
+
* When a Zod schema is provided, validation is disabled by default.
|
|
25
|
+
* Call this method to enable runtime validation.
|
|
26
|
+
*/
|
|
27
|
+
validate(): this;
|
|
28
|
+
/**
|
|
29
|
+
* Disable Zod validation for this property (default behavior).
|
|
30
|
+
* Useful when you want the type safety but not runtime validation.
|
|
31
|
+
*/
|
|
32
|
+
noValidate(): this;
|
|
33
|
+
/**
|
|
34
|
+
* Override default method to store the default value
|
|
35
|
+
*/
|
|
36
|
+
default(value: T): this;
|
|
37
|
+
/**
|
|
38
|
+
* Parse the property metadata, now including Zod schema info
|
|
39
|
+
*/
|
|
40
|
+
parse(fieldName: string): {
|
|
41
|
+
defaultValue: T | undefined;
|
|
42
|
+
dataType: {
|
|
43
|
+
options: {
|
|
44
|
+
zodSchema: ZodTypeAny | undefined;
|
|
45
|
+
validate: boolean;
|
|
46
|
+
hasSchema: boolean;
|
|
47
|
+
};
|
|
48
|
+
name: "json";
|
|
49
|
+
};
|
|
50
|
+
fieldName: string;
|
|
51
|
+
nullable: boolean;
|
|
52
|
+
computed: boolean;
|
|
53
|
+
indexes: {
|
|
54
|
+
name?: string;
|
|
55
|
+
type: "index" | "unique";
|
|
56
|
+
}[];
|
|
57
|
+
relationships: import("@etohq/types").RelationshipMetadata[];
|
|
58
|
+
primaryKey?: boolean;
|
|
9
59
|
};
|
|
10
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Type guard to check if a property has Zod validation
|
|
63
|
+
*/
|
|
64
|
+
export declare function hasZodSchema(property: unknown): property is JSONProperty & {
|
|
65
|
+
zodSchema: ZodTypeAny;
|
|
66
|
+
};
|
|
11
67
|
//# sourceMappingURL=json.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../src/dml/properties/json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAErC
|
|
1
|
+
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../src/dml/properties/json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAErC;;;;;;;;GAQG;AACH,qBAAa,YAAY,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;;IAC5E,SAAS,CAAC,QAAQ;;MAEjB;gBAMW,MAAM,CAAC,EAAE,UAAU;IAK/B;;OAEG;IACH,IAAI,SAAS,IAAI,UAAU,GAAG,SAAS,CAEtC;IAED;;;;OAIG;IACH,QAAQ;IAKR;;;OAGG;IACH,UAAU;IAKV;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,CAAC;IAKhB;;OAEG;IACH,KAAK,CAAC,SAAS,EAAE,MAAM;;;;;;;;;;;;;;gBAWf,CAAJ;;;;;;CAKL;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,OAAO,GAChB,QAAQ,IAAI,YAAY,GAAG;IAAE,SAAS,EAAE,UAAU,CAAA;CAAE,CAEtD"}
|
|
@@ -1,18 +1,95 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
3
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
4
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
5
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
6
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
7
|
+
};
|
|
8
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
9
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
10
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
|
+
};
|
|
13
|
+
var _JSONProperty_zodSchema, _JSONProperty_validate, _JSONProperty_defaultValue;
|
|
2
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
15
|
exports.JSONProperty = void 0;
|
|
16
|
+
exports.hasZodSchema = hasZodSchema;
|
|
4
17
|
const base_1 = require("./base");
|
|
5
18
|
/**
|
|
6
19
|
* The JSONProperty is used to define a property that stores
|
|
7
|
-
* data as a JSON string
|
|
20
|
+
* data as a JSON string.
|
|
21
|
+
*
|
|
22
|
+
* Now with full Zod schema support including:
|
|
23
|
+
* - Type inference for TypeScript
|
|
24
|
+
* - Schema metadata for validation
|
|
25
|
+
* - Optional validation flag
|
|
8
26
|
*/
|
|
9
27
|
class JSONProperty extends base_1.BaseProperty {
|
|
10
|
-
constructor() {
|
|
11
|
-
super(
|
|
28
|
+
constructor(schema) {
|
|
29
|
+
super();
|
|
12
30
|
this.dataType = {
|
|
13
31
|
name: "json",
|
|
14
32
|
};
|
|
33
|
+
_JSONProperty_zodSchema.set(this, void 0);
|
|
34
|
+
_JSONProperty_validate.set(this, false);
|
|
35
|
+
_JSONProperty_defaultValue.set(this, void 0);
|
|
36
|
+
__classPrivateFieldSet(this, _JSONProperty_zodSchema, schema, "f");
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Get the Zod schema for validation
|
|
40
|
+
*/
|
|
41
|
+
get zodSchema() {
|
|
42
|
+
return __classPrivateFieldGet(this, _JSONProperty_zodSchema, "f");
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Enable Zod validation for this property.
|
|
46
|
+
* When a Zod schema is provided, validation is disabled by default.
|
|
47
|
+
* Call this method to enable runtime validation.
|
|
48
|
+
*/
|
|
49
|
+
validate() {
|
|
50
|
+
__classPrivateFieldSet(this, _JSONProperty_validate, true, "f");
|
|
51
|
+
return this;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Disable Zod validation for this property (default behavior).
|
|
55
|
+
* Useful when you want the type safety but not runtime validation.
|
|
56
|
+
*/
|
|
57
|
+
noValidate() {
|
|
58
|
+
__classPrivateFieldSet(this, _JSONProperty_validate, false, "f");
|
|
59
|
+
return this;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Override default method to store the default value
|
|
63
|
+
*/
|
|
64
|
+
default(value) {
|
|
65
|
+
__classPrivateFieldSet(this, _JSONProperty_defaultValue, value, "f");
|
|
66
|
+
return this;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Parse the property metadata, now including Zod schema info
|
|
70
|
+
*/
|
|
71
|
+
parse(fieldName) {
|
|
72
|
+
const base = super.parse(fieldName);
|
|
73
|
+
return {
|
|
74
|
+
...base,
|
|
75
|
+
defaultValue: __classPrivateFieldGet(this, _JSONProperty_defaultValue, "f"),
|
|
76
|
+
dataType: {
|
|
77
|
+
...this.dataType,
|
|
78
|
+
options: {
|
|
79
|
+
zodSchema: __classPrivateFieldGet(this, _JSONProperty_zodSchema, "f"),
|
|
80
|
+
validate: __classPrivateFieldGet(this, _JSONProperty_validate, "f"),
|
|
81
|
+
hasSchema: !!__classPrivateFieldGet(this, _JSONProperty_zodSchema, "f"),
|
|
82
|
+
},
|
|
83
|
+
},
|
|
84
|
+
};
|
|
15
85
|
}
|
|
16
86
|
}
|
|
17
87
|
exports.JSONProperty = JSONProperty;
|
|
88
|
+
_JSONProperty_zodSchema = new WeakMap(), _JSONProperty_validate = new WeakMap(), _JSONProperty_defaultValue = new WeakMap();
|
|
89
|
+
/**
|
|
90
|
+
* Type guard to check if a property has Zod validation
|
|
91
|
+
*/
|
|
92
|
+
function hasZodSchema(property) {
|
|
93
|
+
return property instanceof JSONProperty && !!property.zodSchema;
|
|
94
|
+
}
|
|
18
95
|
//# sourceMappingURL=json.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../../src/dml/properties/json.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../../src/dml/properties/json.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAoFA,oCAIC;AAvFD,iCAAqC;AAErC;;;;;;;;GAQG;AACH,MAAa,YAA0C,SAAQ,mBAAe;IAS5E,YAAY,MAAmB;QAC7B,KAAK,EAAE,CAAA;QATC,aAAQ,GAAG;YACnB,IAAI,EAAE,MAAe;SACtB,CAAA;QAED,0CAAuB;QACvB,iCAAqB,KAAK,EAAA;QAC1B,6CAAiB;QAIf,uBAAA,IAAI,2BAAc,MAAM,MAAA,CAAA;IAC1B,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACX,OAAO,uBAAA,IAAI,+BAAW,CAAA;IACxB,CAAC;IAED;;;;OAIG;IACH,QAAQ;QACN,uBAAA,IAAI,0BAAa,IAAI,MAAA,CAAA;QACrB,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;OAGG;IACH,UAAU;QACR,uBAAA,IAAI,0BAAa,KAAK,MAAA,CAAA;QACtB,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,KAAQ;QACd,uBAAA,IAAI,8BAAiB,KAAK,MAAA,CAAA;QAC1B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAiB;QACrB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAEnC,OAAO;YACL,GAAG,IAAI;YACP,YAAY,EAAE,uBAAA,IAAI,kCAAc;YAChC,QAAQ,EAAE;gBACR,GAAG,IAAI,CAAC,QAAQ;gBAChB,OAAO,EAAE;oBACP,SAAS,EAAE,uBAAA,IAAI,+BAAW;oBAC1B,QAAQ,EAAE,uBAAA,IAAI,8BAAU;oBACxB,SAAS,EAAE,CAAC,CAAC,uBAAA,IAAI,+BAAW;iBAC7B;aACF;SACF,CAAA;IACH,CAAC;CACF;AAnED,oCAmEC;;AAED;;GAEG;AACH,SAAgB,YAAY,CAC1B,QAAiB;IAEjB,OAAO,QAAQ,YAAY,YAAY,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAA;AACjE,CAAC"}
|
|
@@ -3,7 +3,6 @@ export * from "./discover-and-register-feature-flags";
|
|
|
3
3
|
export * from "./flag-router";
|
|
4
4
|
export * from "./register-flag";
|
|
5
5
|
export * from "./analytics";
|
|
6
|
-
export * from "./draft";
|
|
7
6
|
export * from "./many-to-many-inventory";
|
|
8
7
|
export * from "./publishable-api-keys";
|
|
9
8
|
export * from "./workflows";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/feature-flags/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,uCAAuC,CAAA;AACrD,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/feature-flags/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,uCAAuC,CAAA;AACrD,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,aAAa,CAAA"}
|
|
@@ -19,7 +19,6 @@ __exportStar(require("./discover-and-register-feature-flags"), exports);
|
|
|
19
19
|
__exportStar(require("./flag-router"), exports);
|
|
20
20
|
__exportStar(require("./register-flag"), exports);
|
|
21
21
|
__exportStar(require("./analytics"), exports);
|
|
22
|
-
__exportStar(require("./draft"), exports);
|
|
23
22
|
__exportStar(require("./many-to-many-inventory"), exports);
|
|
24
23
|
__exportStar(require("./publishable-api-keys"), exports);
|
|
25
24
|
__exportStar(require("./workflows"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/feature-flags/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAwC;AACxC,wEAAqD;AACrD,gDAA6B;AAC7B,kDAA+B;AAC/B,8CAA2B;AAC3B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/feature-flags/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAwC;AACxC,wEAAqD;AACrD,gDAA6B;AAC7B,kDAA+B;AAC/B,8CAA2B;AAC3B,2DAAwC;AACxC,yDAAsC;AACtC,8CAA2B"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { ModuleServiceInitializeOptions } from "@etohq/types";
|
|
2
|
-
import { knex } from "@mikro-orm/postgresql";
|
|
3
2
|
type Options = ModuleServiceInitializeOptions["database"];
|
|
4
3
|
/**
|
|
5
|
-
* Create a
|
|
4
|
+
* Create a knex (pg in the future) connection which can be reused and shared
|
|
5
|
+
*
|
|
6
|
+
* Supports both traditional connection strings and Encore SQLDatabase objects.
|
|
6
7
|
* @param options
|
|
7
8
|
*/
|
|
8
|
-
export declare function createPgConnection(options: Options):
|
|
9
|
+
export declare function createPgConnection(options: Options): any;
|
|
9
10
|
export declare const isSharedConnectionSymbol: unique symbol;
|
|
10
11
|
export {};
|
|
11
12
|
//# sourceMappingURL=create-pg-connection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-pg-connection.d.ts","sourceRoot":"","sources":["../../src/modules-sdk/create-pg-connection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"create-pg-connection.d.ts","sourceRoot":"","sources":["../../src/modules-sdk/create-pg-connection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAA;AAG7D,KAAK,OAAO,GAAG,8BAA8B,CAAC,UAAU,CAAC,CAAA;AAazD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,OAqDlD;AA6CD,eAAO,MAAM,wBAAwB,eAAmC,CAAA"}
|
|
@@ -4,10 +4,32 @@ exports.isSharedConnectionSymbol = void 0;
|
|
|
4
4
|
exports.createPgConnection = createPgConnection;
|
|
5
5
|
const postgresql_1 = require("@mikro-orm/postgresql");
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* Check if value is an Encore SQLDatabase-like object
|
|
8
|
+
*/
|
|
9
|
+
function isSQLDatabase(obj) {
|
|
10
|
+
return (obj &&
|
|
11
|
+
typeof obj.connectionString === "string" &&
|
|
12
|
+
typeof obj.query === "function");
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Create a knex (pg in the future) connection which can be reused and shared
|
|
16
|
+
*
|
|
17
|
+
* Supports both traditional connection strings and Encore SQLDatabase objects.
|
|
8
18
|
* @param options
|
|
9
19
|
*/
|
|
10
20
|
function createPgConnection(options) {
|
|
21
|
+
// If connection is already provided (from factory), use it directly
|
|
22
|
+
if (options.connection) {
|
|
23
|
+
// Check if it's an Encore SQLDatabase
|
|
24
|
+
if (isSQLDatabase(options.connection)) {
|
|
25
|
+
// Create knex client using SQLDatabase's connection string
|
|
26
|
+
// The SQLDatabase manages its own pool, so we use its connection string
|
|
27
|
+
return createKnexFromSQLDatabase(options.connection, options.schema || "public", options);
|
|
28
|
+
}
|
|
29
|
+
// Otherwise assume it's already a knex-compatible client
|
|
30
|
+
return options.connection;
|
|
31
|
+
}
|
|
32
|
+
// Traditional connection string approach
|
|
11
33
|
const { pool, schema = "public", clientUrl, driverOptions } = options;
|
|
12
34
|
const ssl = options.driverOptions?.ssl ??
|
|
13
35
|
options.driverOptions?.connection?.ssl ??
|
|
@@ -26,15 +48,47 @@ function createPgConnection(options) {
|
|
|
26
48
|
connectionString: clientUrl,
|
|
27
49
|
ssl: ssl,
|
|
28
50
|
idle_in_transaction_session_timeout: driverOptions?.idle_in_transaction_session_timeout ??
|
|
29
|
-
undefined,
|
|
30
|
-
connectionTimeoutMillis: connectionTimeoutMillis,
|
|
31
|
-
keepAlive: keepAlive,
|
|
32
|
-
keepAliveInitialDelayMillis: keepAliveInitialDelayMillis,
|
|
51
|
+
undefined,
|
|
52
|
+
connectionTimeoutMillis: connectionTimeoutMillis,
|
|
53
|
+
keepAlive: keepAlive,
|
|
54
|
+
keepAliveInitialDelayMillis: keepAliveInitialDelayMillis,
|
|
55
|
+
},
|
|
56
|
+
pool: {
|
|
57
|
+
propagateCreateError: false,
|
|
58
|
+
min: pool?.min ?? 1,
|
|
59
|
+
...(pool ?? {}),
|
|
60
|
+
},
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Create knex connection from Encore SQLDatabase
|
|
65
|
+
*/
|
|
66
|
+
function createKnexFromSQLDatabase(sqlDb, schema, options) {
|
|
67
|
+
const { pool, driverOptions } = options;
|
|
68
|
+
const ssl = driverOptions?.ssl ?? driverOptions?.connection?.ssl ?? false;
|
|
69
|
+
const connectionTimeoutMillis = driverOptions?.connectionTimeoutMillis ??
|
|
70
|
+
driverOptions?.connection?.connectionTimeoutMillis ??
|
|
71
|
+
5000;
|
|
72
|
+
const keepAliveInitialDelayMillis = driverOptions?.keepAliveInitialDelayMillis ??
|
|
73
|
+
driverOptions?.connection?.keepAliveInitialDelayMillis ??
|
|
74
|
+
10000;
|
|
75
|
+
const keepAlive = driverOptions?.keepAlive ?? driverOptions?.connection?.keepAlive ?? true;
|
|
76
|
+
return (0, postgresql_1.knex)({
|
|
77
|
+
client: "pg",
|
|
78
|
+
searchPath: schema,
|
|
79
|
+
connection: {
|
|
80
|
+
// Use SQLDatabase's connection string
|
|
81
|
+
connectionString: sqlDb.connectionString,
|
|
82
|
+
ssl: ssl,
|
|
83
|
+
idle_in_transaction_session_timeout: driverOptions?.idle_in_transaction_session_timeout ??
|
|
84
|
+
undefined,
|
|
85
|
+
connectionTimeoutMillis: connectionTimeoutMillis,
|
|
86
|
+
keepAlive: keepAlive,
|
|
87
|
+
keepAliveInitialDelayMillis: keepAliveInitialDelayMillis,
|
|
33
88
|
},
|
|
34
89
|
pool: {
|
|
35
|
-
propagateCreateError: false,
|
|
90
|
+
propagateCreateError: false,
|
|
36
91
|
min: pool?.min ?? 1,
|
|
37
|
-
// https://knexjs.org/guide/#pool
|
|
38
92
|
...(pool ?? {}),
|
|
39
93
|
},
|
|
40
94
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-pg-connection.js","sourceRoot":"","sources":["../../src/modules-sdk/create-pg-connection.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"create-pg-connection.js","sourceRoot":"","sources":["../../src/modules-sdk/create-pg-connection.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ export declare const Modules: {
|
|
|
3
3
|
readonly AUTH: "auth";
|
|
4
4
|
readonly RBAC: "rbac";
|
|
5
5
|
readonly CACHE: "cache";
|
|
6
|
+
readonly DISCOVERY_RESOLVER: "discovery_resolver";
|
|
6
7
|
readonly EVENT_BUS: "event_bus";
|
|
7
8
|
readonly LINK: "link_modules";
|
|
8
9
|
readonly PAYMENT: "payment";
|
|
@@ -10,13 +11,14 @@ export declare const Modules: {
|
|
|
10
11
|
readonly USER: "user";
|
|
11
12
|
readonly WORKFLOW_ENGINE: "workflows";
|
|
12
13
|
readonly API_KEY: "api_key";
|
|
14
|
+
readonly SETTINGS: "settings";
|
|
15
|
+
readonly TRANSLATION: "translation";
|
|
13
16
|
readonly STORE: "store";
|
|
14
17
|
readonly CURRENCY: "currency";
|
|
15
18
|
readonly FILE: "file";
|
|
16
19
|
readonly NOTIFICATION: "notification";
|
|
17
20
|
readonly INDEX: "index";
|
|
18
21
|
readonly LOCKING: "locking";
|
|
19
|
-
readonly DRAFT: "draft";
|
|
20
22
|
readonly AUDIT_LOG: "audit_log";
|
|
21
23
|
readonly AMBASSADOR: "ambassador";
|
|
22
24
|
readonly MEMBERSHIP: "membership";
|
|
@@ -28,17 +30,19 @@ export declare const MODULE_PACKAGE_NAMES: {
|
|
|
28
30
|
auth: string;
|
|
29
31
|
rbac: string;
|
|
30
32
|
cache: string;
|
|
33
|
+
discovery_resolver: string;
|
|
31
34
|
event_bus: string;
|
|
32
35
|
link_modules: string;
|
|
33
36
|
payment: string;
|
|
34
37
|
user: string;
|
|
35
38
|
workflows: string;
|
|
36
39
|
api_key: string;
|
|
40
|
+
settings: string;
|
|
41
|
+
translation: string;
|
|
37
42
|
file: string;
|
|
38
43
|
notification: string;
|
|
39
44
|
index: string;
|
|
40
45
|
locking: string;
|
|
41
|
-
draft: string;
|
|
42
46
|
audit_log: string;
|
|
43
47
|
ambassador: string;
|
|
44
48
|
membership: string;
|
|
@@ -49,12 +53,13 @@ export declare const REVERSED_MODULE_PACKAGE_NAMES: {};
|
|
|
49
53
|
/**
|
|
50
54
|
* Making modules be referenced as a type as well.
|
|
51
55
|
*/
|
|
52
|
-
export type Modules =
|
|
56
|
+
export type Modules = typeof Modules[keyof typeof Modules];
|
|
53
57
|
export declare const ModuleRegistrationName: {
|
|
54
58
|
readonly ANALYTICS: "analytics";
|
|
55
59
|
readonly AUTH: "auth";
|
|
56
60
|
readonly RBAC: "rbac";
|
|
57
61
|
readonly CACHE: "cache";
|
|
62
|
+
readonly DISCOVERY_RESOLVER: "discovery_resolver";
|
|
58
63
|
readonly EVENT_BUS: "event_bus";
|
|
59
64
|
readonly LINK: "link_modules";
|
|
60
65
|
readonly PAYMENT: "payment";
|
|
@@ -62,13 +67,14 @@ export declare const ModuleRegistrationName: {
|
|
|
62
67
|
readonly USER: "user";
|
|
63
68
|
readonly WORKFLOW_ENGINE: "workflows";
|
|
64
69
|
readonly API_KEY: "api_key";
|
|
70
|
+
readonly SETTINGS: "settings";
|
|
71
|
+
readonly TRANSLATION: "translation";
|
|
65
72
|
readonly STORE: "store";
|
|
66
73
|
readonly CURRENCY: "currency";
|
|
67
74
|
readonly FILE: "file";
|
|
68
75
|
readonly NOTIFICATION: "notification";
|
|
69
76
|
readonly INDEX: "index";
|
|
70
77
|
readonly LOCKING: "locking";
|
|
71
|
-
readonly DRAFT: "draft";
|
|
72
78
|
readonly AUDIT_LOG: "audit_log";
|
|
73
79
|
readonly AMBASSADOR: "ambassador";
|
|
74
80
|
readonly MEMBERSHIP: "membership";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definition.d.ts","sourceRoot":"","sources":["../../src/modules-sdk/definition.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO
|
|
1
|
+
{"version":3,"file":"definition.d.ts","sourceRoot":"","sources":["../../src/modules-sdk/definition.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BV,CAAA;AAEV,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;CAuBhC,CAAA;AAED,eAAO,MAAM,6BAA6B,IAKpC,CAAA;AAEN;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,MAAM,OAAO,OAAO,CAAC,CAAA;AAC1D,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;CAAU,CAAA"}
|
|
@@ -6,6 +6,7 @@ exports.Modules = {
|
|
|
6
6
|
AUTH: "auth",
|
|
7
7
|
RBAC: "rbac",
|
|
8
8
|
CACHE: "cache",
|
|
9
|
+
DISCOVERY_RESOLVER: "discovery_resolver",
|
|
9
10
|
EVENT_BUS: "event_bus",
|
|
10
11
|
LINK: "link_modules",
|
|
11
12
|
PAYMENT: "payment",
|
|
@@ -13,13 +14,14 @@ exports.Modules = {
|
|
|
13
14
|
USER: "user",
|
|
14
15
|
WORKFLOW_ENGINE: "workflows",
|
|
15
16
|
API_KEY: "api_key",
|
|
17
|
+
SETTINGS: "settings",
|
|
18
|
+
TRANSLATION: "translation",
|
|
16
19
|
STORE: "store",
|
|
17
20
|
CURRENCY: "currency",
|
|
18
21
|
FILE: "file",
|
|
19
22
|
NOTIFICATION: "notification",
|
|
20
23
|
INDEX: "index",
|
|
21
24
|
LOCKING: "locking",
|
|
22
|
-
DRAFT: "draft",
|
|
23
25
|
AUDIT_LOG: "audit_log",
|
|
24
26
|
AMBASSADOR: "ambassador",
|
|
25
27
|
MEMBERSHIP: "membership",
|
|
@@ -31,17 +33,19 @@ exports.MODULE_PACKAGE_NAMES = {
|
|
|
31
33
|
[exports.Modules.AUTH]: "@etohq/eto/auth",
|
|
32
34
|
[exports.Modules.RBAC]: "@etohq/eto/rbac",
|
|
33
35
|
[exports.Modules.CACHE]: "@etohq/eto/cache-inmemory",
|
|
36
|
+
[exports.Modules.DISCOVERY_RESOLVER]: "@etohq/discovery-resolver",
|
|
34
37
|
[exports.Modules.EVENT_BUS]: "@etohq/eto/event-bus-local",
|
|
35
38
|
[exports.Modules.LINK]: "@etohq/link-modules-sdk",
|
|
36
39
|
[exports.Modules.PAYMENT]: "@etohq/eto/payment",
|
|
37
40
|
[exports.Modules.USER]: "@etohq/eto/user",
|
|
38
41
|
[exports.Modules.WORKFLOW_ENGINE]: "@etohq/eto/workflow-engine-inmemory",
|
|
39
42
|
[exports.Modules.API_KEY]: "@etohq/eto/api-key",
|
|
43
|
+
[exports.Modules.SETTINGS]: "@etohq/settings",
|
|
44
|
+
[exports.Modules.TRANSLATION]: "@etohq/translation",
|
|
40
45
|
[exports.Modules.FILE]: "@etohq/eto/file",
|
|
41
46
|
[exports.Modules.NOTIFICATION]: "@etohq/eto/notification",
|
|
42
47
|
[exports.Modules.INDEX]: "@etohq/eto/index-module",
|
|
43
48
|
[exports.Modules.LOCKING]: "@etohq/eto/locking",
|
|
44
|
-
[exports.Modules.DRAFT]: "@etohq/eto/draft",
|
|
45
49
|
[exports.Modules.AUDIT_LOG]: "@etohq/eto/audit-log",
|
|
46
50
|
[exports.Modules.AMBASSADOR]: "@etohq/eto/ambassador",
|
|
47
51
|
[exports.Modules.MEMBERSHIP]: "@etohq/eto/membership",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definition.js","sourceRoot":"","sources":["../../src/modules-sdk/definition.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG;IACrB,SAAS,EAAE,WAAW;IACtB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,WAAW;IACtB,IAAI,EAAE,cAAc;IACpB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,eAAe,EAAE,WAAW;IAC5B,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,YAAY,EAAE,cAAc;IAC5B,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,SAAS;IAClB,
|
|
1
|
+
{"version":3,"file":"definition.js","sourceRoot":"","sources":["../../src/modules-sdk/definition.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG;IACrB,SAAS,EAAE,WAAW;IACtB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,kBAAkB,EAAE,oBAAoB;IACxC,SAAS,EAAE,WAAW;IACtB,IAAI,EAAE,cAAc;IACpB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,eAAe,EAAE,WAAW;IAC5B,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,WAAW,EAAE,aAAa;IAC1B,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,YAAY,EAAE,cAAc;IAC5B,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,aAAa;CAClB,CAAA;AAEG,QAAA,oBAAoB,GAAG;IAClC,CAAC,eAAO,CAAC,SAAS,CAAC,EAAE,sBAAsB;IAC3C,CAAC,eAAO,CAAC,IAAI,CAAC,EAAE,iBAAiB;IACjC,CAAC,eAAO,CAAC,IAAI,CAAC,EAAE,iBAAiB;IACjC,CAAC,eAAO,CAAC,KAAK,CAAC,EAAE,2BAA2B;IAC5C,CAAC,eAAO,CAAC,kBAAkB,CAAC,EAAE,2BAA2B;IACzD,CAAC,eAAO,CAAC,SAAS,CAAC,EAAE,4BAA4B;IACjD,CAAC,eAAO,CAAC,IAAI,CAAC,EAAE,yBAAyB;IACzC,CAAC,eAAO,CAAC,OAAO,CAAC,EAAE,oBAAoB;IACvC,CAAC,eAAO,CAAC,IAAI,CAAC,EAAE,iBAAiB;IACjC,CAAC,eAAO,CAAC,eAAe,CAAC,EAAE,qCAAqC;IAChE,CAAC,eAAO,CAAC,OAAO,CAAC,EAAE,oBAAoB;IACvC,CAAC,eAAO,CAAC,QAAQ,CAAC,EAAE,iBAAiB;IACrC,CAAC,eAAO,CAAC,WAAW,CAAC,EAAE,oBAAoB;IAC3C,CAAC,eAAO,CAAC,IAAI,CAAC,EAAE,iBAAiB;IACjC,CAAC,eAAO,CAAC,YAAY,CAAC,EAAE,yBAAyB;IACjD,CAAC,eAAO,CAAC,KAAK,CAAC,EAAE,yBAAyB;IAC1C,CAAC,eAAO,CAAC,OAAO,CAAC,EAAE,oBAAoB;IACvC,CAAC,eAAO,CAAC,SAAS,CAAC,EAAE,sBAAsB;IAC3C,CAAC,eAAO,CAAC,UAAU,CAAC,EAAE,uBAAuB;IAC7C,CAAC,eAAO,CAAC,UAAU,CAAC,EAAE,uBAAuB;IAC7C,CAAC,eAAO,CAAC,KAAK,CAAC,EAAE,kBAAkB;IACnC,CAAC,eAAO,CAAC,WAAW,CAAC,EAAE,wBAAwB;CAChD,CAAA;AAEY,QAAA,6BAA6B,GAAG,MAAM,CAAC,OAAO,CACzD,4BAAoB,CACrB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;IAC7B,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,CAAA;IAChB,OAAO,GAAG,CAAA;AACZ,CAAC,EAAE,EAAE,CAAC,CAAA;AAMO,QAAA,sBAAsB,GAAG,eAAO,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mikro-orm-connection-loader.d.ts","sourceRoot":"","sources":["../../../src/modules-sdk/loaders/mikro-orm-connection-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"mikro-orm-connection-loader.d.ts","sourceRoot":"","sources":["../../../src/modules-sdk/loaders/mikro-orm-connection-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAWpE;;;;;;;;;;GAUG;AACH,wBAAsB,wBAAwB,CAAC,EAC7C,UAAU,EACV,SAAS,EACT,OAAO,EACP,iBAAiB,EACjB,QAAQ,EACR,gBAAgB,GACjB,EAAE;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,GAAG,EAAE,CAAA;IACf,SAAS,EAAE,YAAY,CAAA;IACvB,OAAO,CAAC,EACJ,eAAe,CAAC,8BAA8B,GAC9C,eAAe,CAAC,6CAA6C,CAAA;IACjE,iBAAiB,CAAC,EAAE,eAAe,CAAC,yBAAyB,CAAA;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,gBAAgB,EAAE,MAAM,CAAA;CACzB,iBAyFA"}
|
|
@@ -42,14 +42,33 @@ async function mikroOrmConnectionLoader({ moduleName, container, options, module
|
|
|
42
42
|
}
|
|
43
43
|
/**
|
|
44
44
|
* Reuse an existing connection if it is passed in the options
|
|
45
|
+
* OR use connection factory if provided for dynamic connection creation
|
|
45
46
|
*/
|
|
46
47
|
let dbConfig;
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
48
|
+
const typedOptions = options;
|
|
49
|
+
// Check for connection factory first (for dynamic per-module database routing)
|
|
50
|
+
if (typedOptions?.database?.connectionFactory) {
|
|
51
|
+
const factory = typedOptions.database.connectionFactory;
|
|
52
|
+
const factoryResult = factory(moduleName, typedOptions.database.schema || "public");
|
|
53
|
+
// Convert factory result (SQLDatabase) to knex connection
|
|
54
|
+
const connection = (0, create_pg_connection_1.createPgConnection)({
|
|
55
|
+
connection: factoryResult,
|
|
56
|
+
schema: typedOptions.database.schema || "public",
|
|
57
|
+
clientUrl: factoryResult?.connectionString || typedOptions.database.clientUrl,
|
|
58
|
+
});
|
|
59
|
+
const shouldSwallowError = true;
|
|
60
|
+
dbConfig = {
|
|
61
|
+
...(0, load_module_database_config_1.loadDatabaseConfig)(moduleName, (options ?? {}), shouldSwallowError),
|
|
62
|
+
connection,
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
const shouldSwallowError = !!typedOptions?.database?.connection;
|
|
67
|
+
dbConfig = {
|
|
68
|
+
...(0, load_module_database_config_1.loadDatabaseConfig)(moduleName, (options ?? {}), shouldSwallowError),
|
|
69
|
+
connection: typedOptions?.database?.connection,
|
|
70
|
+
};
|
|
71
|
+
}
|
|
53
72
|
manager ??= await loadDefault({
|
|
54
73
|
database: {
|
|
55
74
|
...dbConfig,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mikro-orm-connection-loader.js","sourceRoot":"","sources":["../../../src/modules-sdk/loaders/mikro-orm-connection-loader.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"mikro-orm-connection-loader.js","sourceRoot":"","sources":["../../../src/modules-sdk/loaders/mikro-orm-connection-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modules-to-container-types.d.ts","sourceRoot":"","sources":["../../src/modules-sdk/modules-to-container-types.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"modules-to-container-types.d.ts","sourceRoot":"","sources":["../../src/modules-sdk/modules-to-container-types.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAgDhD;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,EAAE,CAAC,EACtD,EACE,SAAS,EACT,aAAa,GACd,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;CACtB,iBAmEF"}
|
|
@@ -25,7 +25,6 @@ const SERVICES_INTERFACES = {
|
|
|
25
25
|
[definition_1.Modules.FILE]: "IFileModuleService",
|
|
26
26
|
[definition_1.Modules.NOTIFICATION]: "INotificationModuleService",
|
|
27
27
|
[definition_1.Modules.LOCKING]: "ILockingModule",
|
|
28
|
-
[definition_1.Modules.DRAFT]: "IDraftModuleService",
|
|
29
28
|
};
|
|
30
29
|
/**
|
|
31
30
|
* Modules registered inside the config file points to one
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modules-to-container-types.js","sourceRoot":"","sources":["../../src/modules-sdk/modules-to-container-types.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"modules-to-container-types.js","sourceRoot":"","sources":["../../src/modules-sdk/modules-to-container-types.ts"],"names":[],"mappings":"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"}
|