@etohq/framework 1.0.0 → 1.2.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/build-tools/compiler.d.ts.map +1 -1
- package/dist/build-tools/compiler.js +38 -32
- package/dist/build-tools/compiler.js.map +1 -1
- package/dist/config/config.d.ts.map +1 -1
- package/dist/config/config.js +1 -0
- package/dist/config/config.js.map +1 -1
- package/dist/config/loader.d.ts +7 -2
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +28 -6
- package/dist/config/loader.js.map +1 -1
- package/dist/config/types.d.ts +4 -166
- package/dist/config/types.d.ts.map +1 -1
- package/dist/context/index.d.ts +6 -0
- package/dist/context/index.d.ts.map +1 -0
- package/dist/context/index.js +50 -0
- package/dist/context/index.js.map +1 -0
- package/dist/error/index.d.ts +205 -0
- package/dist/error/index.d.ts.map +1 -0
- package/dist/error/index.js +273 -0
- package/dist/error/index.js.map +1 -0
- package/dist/eto-app-loader.d.ts +6 -4
- package/dist/eto-app-loader.d.ts.map +1 -1
- package/dist/eto-app-loader.js +53 -11
- package/dist/eto-app-loader.js.map +1 -1
- package/dist/eto.d.ts +39 -0
- package/dist/eto.d.ts.map +1 -0
- package/dist/eto.js +148 -0
- package/dist/eto.js.map +1 -0
- package/dist/feature-flags/feature-flag-loader.d.ts +4 -3
- package/dist/feature-flags/feature-flag-loader.d.ts.map +1 -1
- package/dist/feature-flags/feature-flag-loader.js +36 -25
- package/dist/feature-flags/feature-flag-loader.js.map +1 -1
- package/dist/http/encore.d.ts +191 -0
- package/dist/http/encore.d.ts.map +1 -0
- package/dist/http/encore.js +3 -0
- package/dist/http/encore.js.map +1 -0
- package/dist/http/index.d.ts +1 -3
- package/dist/http/index.d.ts.map +1 -1
- package/dist/http/index.js +1 -3
- package/dist/http/index.js.map +1 -1
- package/dist/http/middlewares/apply-default-filters.d.ts +2 -2
- package/dist/http/middlewares/apply-default-filters.d.ts.map +1 -1
- package/dist/http/middlewares/apply-default-filters.js +8 -6
- package/dist/http/middlewares/apply-default-filters.js.map +1 -1
- package/dist/http/middlewares/apply-params-as-filters.d.ts +2 -2
- package/dist/http/middlewares/apply-params-as-filters.d.ts.map +1 -1
- package/dist/http/middlewares/apply-params-as-filters.js +7 -4
- package/dist/http/middlewares/apply-params-as-filters.js.map +1 -1
- package/dist/http/middlewares/authenticate-middleware.d.ts +2 -2
- package/dist/http/middlewares/authenticate-middleware.d.ts.map +1 -1
- package/dist/http/middlewares/authenticate-middleware.js +25 -22
- package/dist/http/middlewares/authenticate-middleware.js.map +1 -1
- package/dist/http/middlewares/clear-filters-by-key.d.ts +2 -2
- package/dist/http/middlewares/clear-filters-by-key.d.ts.map +1 -1
- package/dist/http/middlewares/clear-filters-by-key.js +2 -2
- package/dist/http/middlewares/clear-filters-by-key.js.map +1 -1
- package/dist/http/middlewares/ensure-publishable-api-key.d.ts +2 -2
- package/dist/http/middlewares/ensure-publishable-api-key.d.ts.map +1 -1
- package/dist/http/middlewares/ensure-publishable-api-key.js +7 -5
- package/dist/http/middlewares/ensure-publishable-api-key.js.map +1 -1
- package/dist/http/middlewares/error-handler.d.ts +2 -3
- package/dist/http/middlewares/error-handler.d.ts.map +1 -1
- package/dist/http/middlewares/error-handler.js +6 -3
- package/dist/http/middlewares/error-handler.js.map +1 -1
- package/dist/http/middlewares/set-context.d.ts +2 -2
- package/dist/http/middlewares/set-context.d.ts.map +1 -1
- package/dist/http/middlewares/set-context.js +4 -4
- package/dist/http/middlewares/set-context.js.map +1 -1
- package/dist/http/types.d.ts +41 -31
- package/dist/http/types.d.ts.map +1 -1
- package/dist/http/types.js.map +1 -1
- package/dist/http/utils/http-compression.d.ts +1 -4
- package/dist/http/utils/http-compression.d.ts.map +1 -1
- package/dist/http/utils/http-compression.js +35 -30
- package/dist/http/utils/http-compression.js.map +1 -1
- package/dist/http/utils/maybe-apply-link-filter.d.ts +2 -2
- package/dist/http/utils/maybe-apply-link-filter.d.ts.map +1 -1
- package/dist/http/utils/maybe-apply-link-filter.js +7 -6
- package/dist/http/utils/maybe-apply-link-filter.js.map +1 -1
- package/dist/http/utils/refetch-entities.d.ts +2 -2
- package/dist/http/utils/refetch-entities.d.ts.map +1 -1
- package/dist/http/utils/refetch-entities.js.map +1 -1
- package/dist/http/utils/unless-path.d.ts +4 -4
- package/dist/http/utils/unless-path.d.ts.map +1 -1
- package/dist/http/utils/unless-path.js +20 -11
- package/dist/http/utils/unless-path.js.map +1 -1
- package/dist/http/utils/validate-body.d.ts +1 -4
- package/dist/http/utils/validate-body.d.ts.map +1 -1
- package/dist/http/utils/validate-body.js +31 -20
- package/dist/http/utils/validate-body.js.map +1 -1
- package/dist/http/utils/validate-query.d.ts +9 -4
- package/dist/http/utils/validate-query.d.ts.map +1 -1
- package/dist/http/utils/validate-query.js +63 -20
- package/dist/http/utils/validate-query.js.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/jobs/job-loader.d.ts +12 -4
- package/dist/jobs/job-loader.d.ts.map +1 -1
- package/dist/jobs/job-loader.js +56 -38
- package/dist/jobs/job-loader.js.map +1 -1
- package/dist/link-modules-sdk/index.d.ts +2 -0
- package/dist/link-modules-sdk/index.d.ts.map +1 -0
- package/dist/link-modules-sdk/index.js +18 -0
- package/dist/link-modules-sdk/index.js.map +1 -0
- package/dist/loader.d.ts +24 -0
- package/dist/loader.d.ts.map +1 -0
- package/dist/loader.js +104 -0
- package/dist/loader.js.map +1 -0
- package/dist/mikro-orm-cli/bin.js +0 -0
- package/dist/subscribers/subscriber-loader.d.ts +15 -1
- package/dist/subscribers/subscriber-loader.d.ts.map +1 -1
- package/dist/subscribers/subscriber-loader.js +44 -17
- package/dist/subscribers/subscriber-loader.js.map +1 -1
- package/dist/types/container.d.ts +2 -23
- package/dist/types/container.d.ts.map +1 -1
- package/dist/zod/zod-helpers.js +1 -1
- package/dist/zod/zod-helpers.js.map +1 -1
- package/package.json +12 -9
- package/dist/http/express-loader.d.ts +0 -8
- package/dist/http/express-loader.d.ts.map +0 -1
- package/dist/http/express-loader.js +0 -85
- package/dist/http/express-loader.js.map +0 -1
- package/dist/http/router.d.ts +0 -100
- package/dist/http/router.d.ts.map +0 -1
- package/dist/http/router.js +0 -764
- package/dist/http/router.js.map +0 -1
- package/dist/http/utils/define-middlewares.d.ts +0 -18
- package/dist/http/utils/define-middlewares.d.ts.map +0 -1
- package/dist/http/utils/define-middlewares.js +0 -40
- package/dist/http/utils/define-middlewares.js.map +0 -1
package/dist/jobs/job-loader.js
CHANGED
|
@@ -10,7 +10,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
10
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
11
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
12
|
};
|
|
13
|
-
var _JobLoader_sourceDir, _JobLoader_excludes;
|
|
13
|
+
var _JobLoader_sourceDir, _JobLoader_preLoadedJobs, _JobLoader_excludes;
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.JobLoader = void 0;
|
|
16
16
|
const utils_1 = require("@etohq/utils");
|
|
@@ -19,12 +19,13 @@ const promises_1 = require("fs/promises");
|
|
|
19
19
|
const path_1 = require("path");
|
|
20
20
|
const logger_1 = require("../logger");
|
|
21
21
|
class JobLoader {
|
|
22
|
-
constructor(sourceDir) {
|
|
22
|
+
constructor({ sourceDir, jobs }) {
|
|
23
23
|
/**
|
|
24
24
|
* The directory from which to load the jobs
|
|
25
25
|
* @private
|
|
26
26
|
*/
|
|
27
27
|
_JobLoader_sourceDir.set(this, void 0);
|
|
28
|
+
_JobLoader_preLoadedJobs.set(this, void 0);
|
|
28
29
|
/**
|
|
29
30
|
* The list of file names to exclude from the subscriber scan
|
|
30
31
|
* @private
|
|
@@ -36,7 +37,11 @@ class JobLoader {
|
|
|
36
37
|
/(\.ts\.map|\.js\.map|\.d\.ts|\.md)/,
|
|
37
38
|
/^_[^/\\]*(\.[^/\\]+)?$/,
|
|
38
39
|
]);
|
|
40
|
+
if (!sourceDir && !jobs) {
|
|
41
|
+
throw new Error('Either sourceDir or jobs must be provided');
|
|
42
|
+
}
|
|
39
43
|
__classPrivateFieldSet(this, _JobLoader_sourceDir, sourceDir, "f");
|
|
44
|
+
__classPrivateFieldSet(this, _JobLoader_preLoadedJobs, jobs, "f");
|
|
40
45
|
}
|
|
41
46
|
/**
|
|
42
47
|
* Validate cron job configuration
|
|
@@ -86,45 +91,58 @@ class JobLoader {
|
|
|
86
91
|
step();
|
|
87
92
|
});
|
|
88
93
|
}
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
logger_1.logger.info(`No job to load from ${sourcePath}. skipped.`);
|
|
102
|
-
return;
|
|
103
|
-
}
|
|
104
|
-
return await (0, utils_1.readDirRecursive)(sourcePath).then(async (entries) => {
|
|
105
|
-
const fileEntries = entries.filter((entry) => {
|
|
106
|
-
return (!entry.isDirectory() &&
|
|
107
|
-
!__classPrivateFieldGet(this, _JobLoader_excludes, "f").some((exclude) => exclude.test(entry.name)));
|
|
108
|
-
});
|
|
109
|
-
logger_1.logger.debug(`Registering jobs from ${sourcePath}.`);
|
|
110
|
-
return await (0, utils_1.promiseAll)(fileEntries.map(async (entry) => {
|
|
111
|
-
const fullPath = (0, path_1.join)(entry.path, entry.name);
|
|
112
|
-
const module_ = await (0, utils_1.dynamicImport)(fullPath);
|
|
113
|
-
const input = {
|
|
114
|
-
config: module_.config,
|
|
115
|
-
handler: module_.default,
|
|
116
|
-
};
|
|
117
|
-
this.validateConfig(input.config);
|
|
118
|
-
return input;
|
|
119
|
-
}));
|
|
94
|
+
async loadFromDirectory(sourcePath) {
|
|
95
|
+
try {
|
|
96
|
+
await (0, promises_1.access)(sourcePath);
|
|
97
|
+
}
|
|
98
|
+
catch {
|
|
99
|
+
logger_1.logger.info(`No job to load from ${sourcePath}. skipped.`);
|
|
100
|
+
return [];
|
|
101
|
+
}
|
|
102
|
+
return await (0, utils_1.readDirRecursive)(sourcePath).then(async (entries) => {
|
|
103
|
+
const fileEntries = entries.filter((entry) => {
|
|
104
|
+
return (!entry.isDirectory() &&
|
|
105
|
+
!__classPrivateFieldGet(this, _JobLoader_excludes, "f").some((exclude) => exclude.test(entry.name)));
|
|
120
106
|
});
|
|
107
|
+
logger_1.logger.debug(`Registering jobs from ${sourcePath}.`);
|
|
108
|
+
return await (0, utils_1.promiseAll)(fileEntries.map(async (entry) => {
|
|
109
|
+
const fullPath = (0, path_1.join)(entry.path, entry.name);
|
|
110
|
+
const module_ = await (0, utils_1.dynamicImport)(fullPath);
|
|
111
|
+
const input = {
|
|
112
|
+
config: module_.config,
|
|
113
|
+
handler: module_.default,
|
|
114
|
+
};
|
|
115
|
+
this.validateConfig(input.config);
|
|
116
|
+
return input;
|
|
117
|
+
}));
|
|
121
118
|
});
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
119
|
+
}
|
|
120
|
+
async load() {
|
|
121
|
+
const jobInputs = [];
|
|
122
|
+
// Handle pre-loaded jobs
|
|
123
|
+
if (__classPrivateFieldGet(this, _JobLoader_preLoadedJobs, "f")) {
|
|
124
|
+
for (const { module } of __classPrivateFieldGet(this, _JobLoader_preLoadedJobs, "f")) {
|
|
125
|
+
const input = {
|
|
126
|
+
config: module.config,
|
|
127
|
+
handler: module.default,
|
|
128
|
+
};
|
|
129
|
+
this.validateConfig(input.config);
|
|
130
|
+
jobInputs.push(input);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
// Handle source directory scanning
|
|
134
|
+
if (__classPrivateFieldGet(this, _JobLoader_sourceDir, "f")) {
|
|
135
|
+
const normalizedSourcePath = Array.isArray(__classPrivateFieldGet(this, _JobLoader_sourceDir, "f"))
|
|
136
|
+
? __classPrivateFieldGet(this, _JobLoader_sourceDir, "f")
|
|
137
|
+
: [__classPrivateFieldGet(this, _JobLoader_sourceDir, "f")];
|
|
138
|
+
const directoryJobs = await (0, utils_1.promiseAll)(normalizedSourcePath.map(path => this.loadFromDirectory(path)));
|
|
139
|
+
jobInputs.push(...directoryJobs.flat(1).filter(Boolean));
|
|
140
|
+
}
|
|
141
|
+
// Register all jobs
|
|
142
|
+
jobInputs.forEach(input => this.registerJob(input));
|
|
143
|
+
logger_1.logger.debug(`Jobs registered.`);
|
|
126
144
|
}
|
|
127
145
|
}
|
|
128
146
|
exports.JobLoader = JobLoader;
|
|
129
|
-
_JobLoader_sourceDir = new WeakMap(), _JobLoader_excludes = new WeakMap();
|
|
147
|
+
_JobLoader_sourceDir = new WeakMap(), _JobLoader_preLoadedJobs = new WeakMap(), _JobLoader_excludes = new WeakMap();
|
|
130
148
|
//# sourceMappingURL=job-loader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"job-loader.js","sourceRoot":"","sources":["../../src/jobs/job-loader.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAEA,wCAMqB;AACrB,wDAI6B;AAE7B,0CAAoC;AACpC,+BAA2B;AAC3B,sCAAkC;
|
|
1
|
+
{"version":3,"file":"job-loader.js","sourceRoot":"","sources":["../../src/jobs/job-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/link-modules-sdk/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("@etohq/link-modules-sdk"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/link-modules-sdk/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAuC"}
|
package/dist/loader.d.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ConfigModule, DefaultModulesDefinition, EtoContainer, FlagSettings, InputConfigModules, ModuleDefinitionsInput } from "@etohq/types";
|
|
2
|
+
import { Eto } from "./eto";
|
|
3
|
+
/**
|
|
4
|
+
* Initializes the DI container with configurations and feature flags.
|
|
5
|
+
*/
|
|
6
|
+
export declare function initializeContainer<TKey extends string = string>(rootDirectory: string, featureFlags: (string | Record<string, FlagSettings>)[], inlineConfig?: ConfigModule, modulesDefinitionResult?: {
|
|
7
|
+
modulesDefinition: DefaultModulesDefinition<TKey>;
|
|
8
|
+
modules: InputConfigModules<TKey>;
|
|
9
|
+
}): Promise<EtoContainer>;
|
|
10
|
+
/**
|
|
11
|
+
* Main application initialization function.
|
|
12
|
+
*/
|
|
13
|
+
export declare function withLoader<TKey extends string = string>({ directory, loaderModules, linkModule, featureFlags, backgroundLoaders, }: {
|
|
14
|
+
directory: string;
|
|
15
|
+
linkModule: any;
|
|
16
|
+
loaderModules: ModuleDefinitionsInput<TKey>;
|
|
17
|
+
featureFlags: (string | Record<string, FlagSettings>)[];
|
|
18
|
+
backgroundLoaders: (() => Promise<void>)[];
|
|
19
|
+
}): {
|
|
20
|
+
defaultModules: InputConfigModules<TKey>;
|
|
21
|
+
modulesDefinition: DefaultModulesDefinition<TKey>;
|
|
22
|
+
loadEto: (inlineConfig?: ConfigModule<TKey>) => Promise<Eto>;
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,wBAAwB,EACxB,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,cAAc,CAAA;AASrB,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAgD3B;;GAEG;AAKH,wBAAsB,mBAAmB,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,EACpE,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,EACvD,YAAY,CAAC,EAAE,YAAY,EAC3B,uBAAuB,CAAC,EAAE;IACxB,iBAAiB,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAA;IACjD,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAA;CAClC,GACA,OAAO,CAAC,YAAY,CAAC,CAgBvB;AAED;;GAEG;AAQH,wBAAgB,UAAU,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,EAAE,EACvD,SAAS,EACT,aAAa,EACb,UAAU,EACV,YAAY,EACZ,iBAAiB,GAClB,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,GAAG,CAAA;IACf,aAAa,EAAE,sBAAsB,CAAC,IAAI,CAAC,CAAA;IAC3C,YAAY,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,CAAA;IACvD,iBAAiB,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAA;CAC3C;;;6BAQoB,YAAY,CAAC,IAAI,CAAC,KAChC,OAAO,CAAC,GAAG,CAAC;EAmDlB"}
|
package/dist/loader.js
ADDED
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.initializeContainer = initializeContainer;
|
|
4
|
+
exports.withLoader = withLoader;
|
|
5
|
+
const utils_1 = require("@etohq/utils");
|
|
6
|
+
const awilix_1 = require("awilix");
|
|
7
|
+
const config_1 = require("./config");
|
|
8
|
+
const logger_1 = require("./logger");
|
|
9
|
+
const container_1 = require("./container");
|
|
10
|
+
const eto_app_loader_1 = require("./eto-app-loader");
|
|
11
|
+
const feature_flags_1 = require("./feature-flags");
|
|
12
|
+
const database_1 = require("./database");
|
|
13
|
+
const modules_sdk_1 = require("@etohq/modules-sdk");
|
|
14
|
+
/**
|
|
15
|
+
/**
|
|
16
|
+
* Determines if the application is running in worker mode.
|
|
17
|
+
*/
|
|
18
|
+
const isWorkerMode = (configModule) => {
|
|
19
|
+
return configModule.projectConfig.workerMode === "worker";
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Checks if background processors should be loaded.
|
|
23
|
+
*/
|
|
24
|
+
const shouldLoadBackgroundProcessors = (configModule) => {
|
|
25
|
+
if (configModule.projectConfig.workerMode === undefined) {
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
return ["worker", "shared"].includes(configModule.projectConfig.workerMode);
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Loads application entry points such as middleware, routes, etc.
|
|
32
|
+
*/
|
|
33
|
+
async function loadEntrypoints(backgroundLoaders, container) {
|
|
34
|
+
const configModule = container.resolve(utils_1.ContainerRegistrationKeys.CONFIG_MODULE);
|
|
35
|
+
if (shouldLoadBackgroundProcessors(configModule)) {
|
|
36
|
+
for (const loader of backgroundLoaders) {
|
|
37
|
+
await loader();
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
if (isWorkerMode(configModule)) {
|
|
41
|
+
return async () => { };
|
|
42
|
+
}
|
|
43
|
+
// Return a no-op shutdown function for entry points.
|
|
44
|
+
return async () => { };
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Initializes the DI container with configurations and feature flags.
|
|
48
|
+
*/
|
|
49
|
+
// todo update test for configLooader to accomodate inlineDefaultModules.
|
|
50
|
+
// todo add system default at config level.
|
|
51
|
+
async function initializeContainer(rootDirectory, featureFlags, inlineConfig, modulesDefinitionResult) {
|
|
52
|
+
await (0, config_1.configLoader)(rootDirectory, "eto-config", inlineConfig, modulesDefinitionResult);
|
|
53
|
+
await (0, feature_flags_1.featureFlagsLoader)(featureFlags);
|
|
54
|
+
container_1.container.register({
|
|
55
|
+
[utils_1.ContainerRegistrationKeys.LOGGER]: (0, awilix_1.asValue)(logger_1.logger),
|
|
56
|
+
[utils_1.ContainerRegistrationKeys.REMOTE_QUERY]: (0, awilix_1.asValue)(null),
|
|
57
|
+
});
|
|
58
|
+
(0, database_1.pgConnectionLoader)();
|
|
59
|
+
return container_1.container;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Main application initialization function.
|
|
63
|
+
*/
|
|
64
|
+
// [join(dir, "internal/loaders/feature-flags")];
|
|
65
|
+
// import { join } from "path"
|
|
66
|
+
// import { preLoadedSubscribers } from "../subscribers"
|
|
67
|
+
// const __filename = fileURLToPath(import.meta.url)
|
|
68
|
+
// const dir = process.cwd()
|
|
69
|
+
function withLoader({ directory, loaderModules, linkModule, featureFlags, backgroundLoaders, }) {
|
|
70
|
+
const modulesDefinitionResult = (0, modules_sdk_1.generateModulesDefinition)(...loaderModules);
|
|
71
|
+
const { modulesDefinition, modules: defaultModules } = modulesDefinitionResult;
|
|
72
|
+
return {
|
|
73
|
+
defaultModules,
|
|
74
|
+
modulesDefinition,
|
|
75
|
+
loadEto: async function loader(inlineConfig) {
|
|
76
|
+
const container = await initializeContainer(directory, featureFlags, inlineConfig, modulesDefinitionResult);
|
|
77
|
+
const { onApplicationStart, onApplicationShutdown, onApplicationPrepareShutdown, modules, gqlSchema, } = await new eto_app_loader_1.EtoAppLoader({
|
|
78
|
+
modulesDefinition,
|
|
79
|
+
linkModule,
|
|
80
|
+
}).load();
|
|
81
|
+
const entrypointsShutdown = await loadEntrypoints(backgroundLoaders, container);
|
|
82
|
+
await onApplicationStart();
|
|
83
|
+
const shutdown = async () => {
|
|
84
|
+
const pgConnection = container.resolve(utils_1.ContainerRegistrationKeys.PG_CONNECTION);
|
|
85
|
+
await onApplicationPrepareShutdown();
|
|
86
|
+
await onApplicationShutdown();
|
|
87
|
+
await (0, utils_1.promiseAll)([
|
|
88
|
+
container.dispose(),
|
|
89
|
+
// @ts-ignore
|
|
90
|
+
pgConnection?.context?.destroy?.(),
|
|
91
|
+
entrypointsShutdown(),
|
|
92
|
+
]);
|
|
93
|
+
};
|
|
94
|
+
return {
|
|
95
|
+
container,
|
|
96
|
+
shutdown,
|
|
97
|
+
modules,
|
|
98
|
+
gqlSchema,
|
|
99
|
+
directory,
|
|
100
|
+
};
|
|
101
|
+
},
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"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"}
|
|
File without changes
|
|
@@ -1,6 +1,19 @@
|
|
|
1
|
+
import { SubscriberArgs, SubscriberConfig } from "./types";
|
|
2
|
+
type SubscriberHandler<T> = (args: SubscriberArgs<T>) => Promise<void>;
|
|
3
|
+
type LoaderInput = {
|
|
4
|
+
sourceDir?: string | string[];
|
|
5
|
+
subscribers?: Array<{
|
|
6
|
+
path: string;
|
|
7
|
+
module: {
|
|
8
|
+
config: SubscriberConfig;
|
|
9
|
+
default: SubscriberHandler<any>;
|
|
10
|
+
};
|
|
11
|
+
}>;
|
|
12
|
+
options?: Record<string, unknown>;
|
|
13
|
+
};
|
|
1
14
|
export declare class SubscriberLoader {
|
|
2
15
|
#private;
|
|
3
|
-
constructor(sourceDir
|
|
16
|
+
constructor({ sourceDir, subscribers, options }: LoaderInput);
|
|
4
17
|
private validateSubscriber;
|
|
5
18
|
private createDescriptor;
|
|
6
19
|
private createMap;
|
|
@@ -8,4 +21,5 @@ export declare class SubscriberLoader {
|
|
|
8
21
|
private createSubscriber;
|
|
9
22
|
load(): Promise<string[]>;
|
|
10
23
|
}
|
|
24
|
+
export {};
|
|
11
25
|
//# sourceMappingURL=subscriber-loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscriber-loader.d.ts","sourceRoot":"","sources":["../../src/subscribers/subscriber-loader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"subscriber-loader.d.ts","sourceRoot":"","sources":["../../src/subscribers/subscriber-loader.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE1D,KAAK,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAOtE,KAAK,WAAW,GAAG;IACjB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC7B,WAAW,CAAC,EAAE,KAAK,CAAC;QAClB,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE;YACN,MAAM,EAAE,gBAAgB,CAAA;YACxB,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAA;SAChC,CAAA;KACF,CAAC,CAAA;IACF,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC,CAAA;AAED,qBAAa,gBAAgB;;gBA+Bf,EAAE,SAAS,EAAE,WAAW,EAAE,OAAY,EAAE,EAAE,WAAW;IAUjE,OAAO,CAAC,kBAAkB;YA4DZ,gBAAgB;YA+BhB,SAAS;IAoBvB,OAAO,CAAC,eAAe;IA4BvB,OAAO,CAAC,gBAAgB;IAmClB,IAAI;CAgDX"}
|
|
@@ -10,7 +10,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
10
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
11
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
12
|
};
|
|
13
|
-
var _SubscriberLoader_pluginOptions, _SubscriberLoader_sourceDir, _SubscriberLoader_excludes, _SubscriberLoader_subscriberDescriptors;
|
|
13
|
+
var _SubscriberLoader_pluginOptions, _SubscriberLoader_sourceDir, _SubscriberLoader_preLoadedSubscribers, _SubscriberLoader_excludes, _SubscriberLoader_subscriberDescriptors;
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.SubscriberLoader = void 0;
|
|
16
16
|
const utils_1 = require("@etohq/utils");
|
|
@@ -20,7 +20,7 @@ const config_1 = require("../config");
|
|
|
20
20
|
const container_1 = require("../container");
|
|
21
21
|
const logger_1 = require("../logger");
|
|
22
22
|
class SubscriberLoader {
|
|
23
|
-
constructor(sourceDir, options = {}) {
|
|
23
|
+
constructor({ sourceDir, subscribers, options = {} }) {
|
|
24
24
|
/**
|
|
25
25
|
* The options of the plugin from which the subscribers are being loaded
|
|
26
26
|
* @private
|
|
@@ -31,6 +31,7 @@ class SubscriberLoader {
|
|
|
31
31
|
* @private
|
|
32
32
|
*/
|
|
33
33
|
_SubscriberLoader_sourceDir.set(this, void 0);
|
|
34
|
+
_SubscriberLoader_preLoadedSubscribers.set(this, void 0);
|
|
34
35
|
/**
|
|
35
36
|
* The list of file names to exclude from the subscriber scan
|
|
36
37
|
* @private
|
|
@@ -52,7 +53,11 @@ class SubscriberLoader {
|
|
|
52
53
|
* @private
|
|
53
54
|
*/
|
|
54
55
|
_SubscriberLoader_subscriberDescriptors.set(this, new Map());
|
|
56
|
+
if (!sourceDir && !subscribers) {
|
|
57
|
+
throw new Error("Either sourceDir or subscribers must be provided");
|
|
58
|
+
}
|
|
55
59
|
__classPrivateFieldSet(this, _SubscriberLoader_sourceDir, sourceDir, "f");
|
|
60
|
+
__classPrivateFieldSet(this, _SubscriberLoader_preLoadedSubscribers, subscribers, "f");
|
|
56
61
|
__classPrivateFieldSet(this, _SubscriberLoader_pluginOptions, options, "f");
|
|
57
62
|
}
|
|
58
63
|
validateSubscriber(subscriber, path) {
|
|
@@ -95,7 +100,19 @@ class SubscriberLoader {
|
|
|
95
100
|
}
|
|
96
101
|
return true;
|
|
97
102
|
}
|
|
98
|
-
async createDescriptor(absolutePath) {
|
|
103
|
+
async createDescriptor(absolutePath, module_) {
|
|
104
|
+
if (module_) {
|
|
105
|
+
module_ = (0, utils_1.resolveExports)(module_);
|
|
106
|
+
const isValid = this.validateSubscriber(module_, absolutePath);
|
|
107
|
+
if (!isValid) {
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
__classPrivateFieldGet(this, _SubscriberLoader_subscriberDescriptors, "f").set(absolutePath, {
|
|
111
|
+
config: module_.config,
|
|
112
|
+
handler: module_.default,
|
|
113
|
+
});
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
99
116
|
return await (0, utils_1.dynamicImport)(absolutePath).then((module_) => {
|
|
100
117
|
module_ = (0, utils_1.resolveExports)(module_);
|
|
101
118
|
const isValid = this.validateSubscriber(module_, absolutePath);
|
|
@@ -162,20 +179,30 @@ class SubscriberLoader {
|
|
|
162
179
|
}
|
|
163
180
|
}
|
|
164
181
|
async load() {
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
try {
|
|
170
|
-
await (0, promises_1.access)(sourcePath);
|
|
182
|
+
// Handle pre-loaded subscribers
|
|
183
|
+
if (__classPrivateFieldGet(this, _SubscriberLoader_preLoadedSubscribers, "f")) {
|
|
184
|
+
for (const { path, module } of __classPrivateFieldGet(this, _SubscriberLoader_preLoadedSubscribers, "f")) {
|
|
185
|
+
await this.createDescriptor(path, module);
|
|
171
186
|
}
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
187
|
+
}
|
|
188
|
+
// Handle source directory scanning
|
|
189
|
+
if (__classPrivateFieldGet(this, _SubscriberLoader_sourceDir, "f")) {
|
|
190
|
+
const normalizeSourcePaths = Array.isArray(__classPrivateFieldGet(this, _SubscriberLoader_sourceDir, "f"))
|
|
191
|
+
? __classPrivateFieldGet(this, _SubscriberLoader_sourceDir, "f")
|
|
192
|
+
: [__classPrivateFieldGet(this, _SubscriberLoader_sourceDir, "f")];
|
|
193
|
+
const promises = normalizeSourcePaths.map(async (sourcePath) => {
|
|
194
|
+
try {
|
|
195
|
+
await (0, promises_1.access)(sourcePath);
|
|
196
|
+
}
|
|
197
|
+
catch {
|
|
198
|
+
logger_1.logger.info(`No subscribers to load from ${sourcePath}. skipped.`);
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
return await this.createMap(sourcePath);
|
|
202
|
+
});
|
|
203
|
+
await (0, utils_1.promiseAll)(promises);
|
|
204
|
+
}
|
|
205
|
+
// Register all subscribers
|
|
179
206
|
for (const [fileName, { config, handler },] of __classPrivateFieldGet(this, _SubscriberLoader_subscriberDescriptors, "f").entries()) {
|
|
180
207
|
this.createSubscriber({
|
|
181
208
|
fileName,
|
|
@@ -192,5 +219,5 @@ class SubscriberLoader {
|
|
|
192
219
|
}
|
|
193
220
|
}
|
|
194
221
|
exports.SubscriberLoader = SubscriberLoader;
|
|
195
|
-
_SubscriberLoader_pluginOptions = new WeakMap(), _SubscriberLoader_sourceDir = new WeakMap(), _SubscriberLoader_excludes = new WeakMap(), _SubscriberLoader_subscriberDescriptors = new WeakMap();
|
|
222
|
+
_SubscriberLoader_pluginOptions = new WeakMap(), _SubscriberLoader_sourceDir = new WeakMap(), _SubscriberLoader_preLoadedSubscribers = new WeakMap(), _SubscriberLoader_excludes = new WeakMap(), _SubscriberLoader_subscriberDescriptors = new WeakMap();
|
|
196
223
|
//# sourceMappingURL=subscriber-loader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscriber-loader.js","sourceRoot":"","sources":["../../src/subscribers/subscriber-loader.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,wCAOqB;AACrB,0CAAoC;AACpC,+BAAkC;AAGlC,sCAAyC;AACzC,4CAAwC;AACxC,sCAAkC;
|
|
1
|
+
{"version":3,"file":"subscriber-loader.js","sourceRoot":"","sources":["../../src/subscribers/subscriber-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,44 +1,23 @@
|
|
|
1
1
|
import { Link } from "@etohq/modules-sdk";
|
|
2
|
-
import { ConfigModule, IApiKeyModuleService, IAuthModuleService, ICacheService,
|
|
2
|
+
import { ConfigModule, IApiKeyModuleService, IAuthModuleService, ICacheService, IEventBusModuleService, IFileModuleService, ILockingModule, INotificationModuleService, IPaymentModuleService, IUserModuleService, IWorkflowEngineService, Logger, ModuleImplementations, RemoteQueryFunction } from "@etohq/types";
|
|
3
3
|
import { ContainerRegistrationKeys, Modules } from "@etohq/utils";
|
|
4
4
|
import { Knex } from "@mikro-orm/knex";
|
|
5
5
|
import { AwilixContainer, ResolveOptions } from "awilix";
|
|
6
6
|
declare module "@etohq/types" {
|
|
7
7
|
interface ModuleImplementations {
|
|
8
|
-
/**
|
|
9
|
-
* @deprecated use {@link ContainerRegistrationKeys.LINK} instead.
|
|
10
|
-
*/
|
|
11
|
-
[ContainerRegistrationKeys.REMOTE_LINK]: Link;
|
|
12
|
-
/**
|
|
13
|
-
* @version 2.2.0
|
|
14
|
-
*/
|
|
15
8
|
[ContainerRegistrationKeys.LINK]: Link;
|
|
16
9
|
[ContainerRegistrationKeys.CONFIG_MODULE]: ConfigModule;
|
|
17
10
|
[ContainerRegistrationKeys.PG_CONNECTION]: Knex<any>;
|
|
18
11
|
[ContainerRegistrationKeys.REMOTE_QUERY]: RemoteQueryFunction;
|
|
19
12
|
[ContainerRegistrationKeys.QUERY]: Omit<RemoteQueryFunction, symbol>;
|
|
20
13
|
[ContainerRegistrationKeys.LOGGER]: Logger;
|
|
14
|
+
[Modules.PAYMENT]: IPaymentModuleService;
|
|
21
15
|
[Modules.AUTH]: IAuthModuleService;
|
|
22
16
|
[Modules.CACHE]: ICacheService;
|
|
23
|
-
[Modules.CART]: ICartModuleService;
|
|
24
|
-
[Modules.CUSTOMER]: ICustomerModuleService;
|
|
25
17
|
[Modules.EVENT_BUS]: IEventBusModuleService;
|
|
26
|
-
[Modules.INVENTORY]: IInventoryService;
|
|
27
|
-
[Modules.PAYMENT]: IPaymentModuleService;
|
|
28
|
-
[Modules.PRICING]: IPricingModuleService;
|
|
29
|
-
[Modules.PRODUCT]: IProductModuleService;
|
|
30
|
-
[Modules.PROMOTION]: IPromotionModuleService;
|
|
31
|
-
[Modules.SALES_CHANNEL]: ISalesChannelModuleService;
|
|
32
|
-
[Modules.TAX]: ITaxModuleService;
|
|
33
|
-
[Modules.FULFILLMENT]: IFulfillmentModuleService;
|
|
34
|
-
[Modules.STOCK_LOCATION]: IStockLocationService;
|
|
35
18
|
[Modules.USER]: IUserModuleService;
|
|
36
19
|
[Modules.WORKFLOW_ENGINE]: IWorkflowEngineService;
|
|
37
|
-
[Modules.REGION]: IRegionModuleService;
|
|
38
|
-
[Modules.ORDER]: IOrderModuleService;
|
|
39
20
|
[Modules.API_KEY]: IApiKeyModuleService;
|
|
40
|
-
[Modules.STORE]: IStoreModuleService;
|
|
41
|
-
[Modules.CURRENCY]: ICurrencyModuleService;
|
|
42
21
|
[Modules.FILE]: IFileModuleService;
|
|
43
22
|
[Modules.NOTIFICATION]: INotificationModuleService;
|
|
44
23
|
[Modules.LOCKING]: ILockingModule;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../src/types/container.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,
|
|
1
|
+
{"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../src/types/container.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,0BAA0B,EAC1B,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,MAAM,EACN,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,yBAAyB,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAExD,OAAO,QAAQ,cAAc,CAAC;IAC5B,UAAiB,qBAAqB;QACpC,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAE,IAAI,CAAA;QACtC,CAAC,yBAAyB,CAAC,aAAa,CAAC,EAAE,YAAY,CAAA;QACvD,CAAC,yBAAyB,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;QACpD,CAAC,yBAAyB,CAAC,YAAY,CAAC,EAAE,mBAAmB,CAAA;QAC7D,CAAC,yBAAyB,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAA;QACpE,CAAC,yBAAyB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;QAC1C,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,qBAAqB,CAAA;QACxC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAA;QAClC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,aAAa,CAAA;QAC9B,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,sBAAsB,CAAA;QAC3C,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAA;QAClC,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,sBAAsB,CAAA;QACjD,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,oBAAoB,CAAA;QACvC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAA;QAClC,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,0BAA0B,CAAA;QAClD,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,cAAc,CAAA;KAClC;CACF;AAED,MAAM,MAAM,YAAY,CAAC,MAAM,SAAS,MAAM,GAAG,qBAAqB,IACpE,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,GAAG;IACjC,OAAO,CAAC,CAAC,SAAS,MAAM,MAAM,EAC5B,GAAG,EAAE,CAAC,EACN,cAAc,CAAC,EAAE,cAAc,GAC9B,MAAM,CAAC,CAAC,CAAC,CAAA;IACZ,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,cAAc,GAAG,CAAC,CAAA;IAE3D;;OAEG;IACH,WAAW,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,KAAK,YAAY,CAAA;IAC/D;;OAEG;IACH,WAAW,EAAE,MAAM,YAAY,CAAA;CAChC,CAAA;AAEH,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,CAAA;CACrC,CAAA"}
|
package/dist/zod/zod-helpers.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.zodValidator = zodValidator;
|
|
4
|
-
const utils_1 = require("
|
|
4
|
+
const utils_1 = require("../utils");
|
|
5
5
|
const zod_1 = require("zod");
|
|
6
6
|
const formatPath = (issue) => {
|
|
7
7
|
return issue.path.join(", ");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zod-helpers.js","sourceRoot":"","sources":["../../src/zod/zod-helpers.ts"],"names":[],"mappings":";;AA+GA,oCAsBC;AArID,
|
|
1
|
+
{"version":3,"file":"zod-helpers.js","sourceRoot":"","sources":["../../src/zod/zod-helpers.ts"],"names":[],"mappings":"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"}
|