@etohq/framework 1.3.0 → 1.5.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/LICENSE +21 -0
- package/dist/config/config.d.ts.map +1 -1
- package/dist/config/config.js +11 -4
- package/dist/config/config.js.map +1 -1
- package/dist/config/loader.d.ts +2 -5
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +14 -13
- package/dist/config/loader.js.map +1 -1
- package/dist/context/index.d.ts +1 -1
- package/dist/context/index.d.ts.map +1 -1
- package/dist/context/index.js +6 -3
- package/dist/context/index.js.map +1 -1
- package/dist/database/pg-connection-loader.d.ts +1 -1
- package/dist/database/pg-connection-loader.d.ts.map +1 -1
- package/dist/database/pg-connection-loader.js +25 -3
- package/dist/database/pg-connection-loader.js.map +1 -1
- package/dist/eto-app-loader.d.ts +6 -7
- package/dist/eto-app-loader.d.ts.map +1 -1
- package/dist/eto-app-loader.js +54 -4
- package/dist/eto-app-loader.js.map +1 -1
- package/dist/eto.d.ts +7 -7
- package/dist/eto.d.ts.map +1 -1
- package/dist/eto.js +4 -13
- package/dist/eto.js.map +1 -1
- package/dist/http/middlewares/apply-default-filters.d.ts.map +1 -1
- package/dist/http/middlewares/apply-default-filters.js.map +1 -1
- package/dist/http/middlewares/apply-params-as-filters.d.ts.map +1 -1
- package/dist/http/middlewares/apply-params-as-filters.js.map +1 -1
- package/dist/http/middlewares/authenticate-middleware.d.ts +3 -1
- package/dist/http/middlewares/authenticate-middleware.d.ts.map +1 -1
- package/dist/http/middlewares/authenticate-middleware.js +19 -10
- package/dist/http/middlewares/authenticate-middleware.js.map +1 -1
- package/dist/http/middlewares/bodyparser.d.ts +2 -0
- package/dist/http/middlewares/bodyparser.d.ts.map +1 -0
- package/dist/http/middlewares/bodyparser.js +99 -0
- package/dist/http/middlewares/bodyparser.js.map +1 -0
- package/dist/http/middlewares/ensure-publishable-api-key.d.ts.map +1 -1
- package/dist/http/middlewares/ensure-publishable-api-key.js +2 -2
- package/dist/http/middlewares/ensure-publishable-api-key.js.map +1 -1
- package/dist/http/middlewares/error-handler.d.ts.map +1 -1
- package/dist/http/middlewares/error-handler.js +7 -6
- package/dist/http/middlewares/error-handler.js.map +1 -1
- package/dist/http/types.d.ts +49 -19
- package/dist/http/types.d.ts.map +1 -1
- package/dist/http/utils/get-query-config.d.ts +5 -6
- package/dist/http/utils/get-query-config.d.ts.map +1 -1
- package/dist/http/utils/get-query-config.js +7 -5
- package/dist/http/utils/get-query-config.js.map +1 -1
- package/dist/http/utils/maybe-apply-link-filter.d.ts.map +1 -1
- package/dist/http/utils/maybe-apply-link-filter.js +12 -14
- package/dist/http/utils/maybe-apply-link-filter.js.map +1 -1
- package/dist/http/utils/refetch-entities.d.ts +1 -1
- package/dist/http/utils/refetch-entities.d.ts.map +1 -1
- package/dist/http/utils/refetch-entities.js +2 -2
- package/dist/http/utils/refetch-entities.js.map +1 -1
- package/dist/http/utils/validate-query.d.ts.map +1 -1
- package/dist/http/utils/validate-query.js +2 -1
- package/dist/http/utils/validate-query.js.map +1 -1
- package/dist/http/utils/wrap-handler.d.ts +2 -0
- package/dist/http/utils/wrap-handler.d.ts.map +1 -0
- package/dist/http/utils/wrap-handler.js +40 -0
- package/dist/http/utils/wrap-handler.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/jobs/job-loader.d.ts +13 -16
- package/dist/jobs/job-loader.d.ts.map +1 -1
- package/dist/jobs/job-loader.js +18 -88
- package/dist/jobs/job-loader.js.map +1 -1
- package/dist/links/link-loader.js +1 -1
- package/dist/links/link-loader.js.map +1 -1
- package/dist/loader.d.ts +8 -12
- package/dist/loader.d.ts.map +1 -1
- package/dist/loader.js +40 -35
- package/dist/loader.js.map +1 -1
- package/dist/logger/index.d.ts +28 -1
- package/dist/logger/index.d.ts.map +1 -1
- package/dist/logger/index.js +249 -3
- package/dist/logger/index.js.map +1 -1
- package/dist/migrations/index.d.ts +3 -0
- package/dist/migrations/index.d.ts.map +1 -0
- package/dist/migrations/index.js +19 -0
- package/dist/migrations/index.js.map +1 -0
- package/dist/migrations/migrator.d.ts +38 -0
- package/dist/migrations/migrator.d.ts.map +1 -0
- package/dist/migrations/migrator.js +130 -0
- package/dist/migrations/migrator.js.map +1 -0
- package/dist/migrations/run-migration-scripts.d.ts +17 -0
- package/dist/migrations/run-migration-scripts.d.ts.map +1 -0
- package/dist/migrations/run-migration-scripts.js +95 -0
- package/dist/migrations/run-migration-scripts.js.map +1 -0
- package/dist/mikro-orm-cli/bin.js +3 -3
- package/dist/mikro-orm-cli/bin.js.map +1 -1
- package/dist/subscribers/subscriber-loader.d.ts +5 -18
- package/dist/subscribers/subscriber-loader.d.ts.map +1 -1
- package/dist/subscribers/subscriber-loader.js +19 -95
- package/dist/subscribers/subscriber-loader.js.map +1 -1
- package/dist/types/container.d.ts +3 -2
- package/dist/types/container.d.ts.map +1 -1
- package/dist/utils/resource-loader.d.ts +26 -0
- package/dist/utils/resource-loader.d.ts.map +1 -0
- package/dist/utils/resource-loader.js +78 -0
- package/dist/utils/resource-loader.js.map +1 -0
- package/dist/workflows/workflow-loader.d.ts +4 -2
- package/dist/workflows/workflow-loader.d.ts.map +1 -1
- package/dist/workflows/workflow-loader.js +8 -58
- package/dist/workflows/workflow-loader.js.map +1 -1
- package/package.json +64 -57
- package/dist/telemetry/index.d.ts +0 -50
- package/dist/telemetry/index.d.ts.map +0 -1
- package/dist/telemetry/index.js +0 -81
- package/dist/telemetry/index.js.map +0 -1
|
@@ -14,23 +14,21 @@ function maybeApplyLinkFilter({ entryPoint, resourceId, filterableField, filterB
|
|
|
14
14
|
? filterFields
|
|
15
15
|
: [filterFields];
|
|
16
16
|
delete filterableFields[filterableField];
|
|
17
|
-
const remoteQuery = (0, context_1.reqContext)(req.requestMeta).scope.resolve(utils_1.ContainerRegistrationKeys.REMOTE_QUERY);
|
|
18
|
-
const queryObject = (0, utils_1.remoteQueryObjectFromString)({
|
|
19
|
-
entryPoint,
|
|
20
|
-
fields: [resourceId],
|
|
21
|
-
variables: { filters: { [filterableField]: idsToFilterBy } },
|
|
22
|
-
});
|
|
23
|
-
const resources = await remoteQuery(queryObject);
|
|
24
17
|
let existingFilters = filterableFields[filterByField];
|
|
18
|
+
const requestMeta = req.requestMeta;
|
|
19
|
+
const query = (0, context_1.reqContext)(requestMeta).scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
20
|
+
const filters = {
|
|
21
|
+
[filterableField]: idsToFilterBy,
|
|
22
|
+
};
|
|
25
23
|
if (existingFilters) {
|
|
26
|
-
|
|
27
|
-
existingFilters = [existingFilters];
|
|
28
|
-
}
|
|
29
|
-
filterableFields[filterByField] = (0, utils_1.arrayIntersection)(existingFilters, resources.map((p) => p[resourceId]));
|
|
30
|
-
}
|
|
31
|
-
else {
|
|
32
|
-
filterableFields[filterByField] = resources.map((p) => p[resourceId]);
|
|
24
|
+
filters[resourceId] = existingFilters;
|
|
33
25
|
}
|
|
26
|
+
const { data: resources } = await query.graph({
|
|
27
|
+
entity: entryPoint,
|
|
28
|
+
fields: [resourceId],
|
|
29
|
+
filters,
|
|
30
|
+
});
|
|
31
|
+
filterableFields[filterByField] = resources.map((p) => p[resourceId]);
|
|
34
32
|
req.data.filterableFields = transformFilterableFields(filterableFields);
|
|
35
33
|
return next(req);
|
|
36
34
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"maybe-apply-link-filter.js","sourceRoot":"","sources":["../../../src/http/utils/maybe-apply-link-filter.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"maybe-apply-link-filter.js","sourceRoot":"","sources":["../../../src/http/utils/maybe-apply-link-filter.ts"],"names":[],"mappings":";;AAKA,oDAuDC;AA5DD,wCAAwD;AAExD,2CAA0C;AAG1C,SAAgB,oBAAoB,CAAC,EACnC,UAAU,EACV,UAAU,EACV,eAAe,EACf,aAAa,GAAG,IAAI,GACrB;IACC,OAAO,KAAK,UAAU,UAAU,CAC9B,GAAyB,EACzB,IAAuB;QAEvB,MAAM,gBAAgB,GAAG,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAA;QAElD,IAAI,CAAC,gBAAgB,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAA;QAClB,CAAC;QAED,MAAM,YAAY,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAA;QAEtD,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;YAC/C,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;QAElB,OAAO,gBAAgB,CAAC,eAAe,CAAC,CAAA;QAExC,IAAI,eAAe,GAAG,gBAAgB,CAAC,aAAa,CAGvC,CAAA;QAEb,MAAM,WAAW,GAAG,GAAG,CAAC,WAA0B,CAAA;QAElD,MAAM,KAAK,GAAG,IAAA,oBAAU,EAAC,WAAW,CAAC,CAAC,KAAK,CAAC,OAAO,CACjD,iCAAyB,CAAC,KAAK,CAChC,CAAA;QAED,MAAM,OAAO,GAA4B;YACvC,CAAC,eAAe,CAAC,EAAE,aAAa;SACjC,CAAA;QAED,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,CAAC,UAAU,CAAC,GAAG,eAAe,CAAA;QACvC,CAAC;QAED,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC;YAC5C,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,CAAC,UAAU,CAAC;YACpB,OAAO;SACR,CAAC,CAAA;QAEF,gBAAgB,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA;QAErE,GAAG,CAAC,IAAI,CAAC,gBAAgB,GAAG,yBAAyB,CAAC,gBAAgB,CAAC,CAAA;QAEvE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAA;IAClB,CAAC,CAAA;AACH,CAAC;AACD;;;;;;;;;;;;;EAaE;AACF,SAAS,yBAAyB,CAAC,gBAAyC;IAC1E,MAAM,MAAM,GAAG,EAAE,CAAA;IACjB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;QACnC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC3B,IAAI,OAAO,GAAG,MAAM,CAAA;QAEpB,2DAA2D;QAC3D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YACpB,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;YAEpB,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,wCAAwC;gBACxC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA;gBACrB,MAAK;YACP,CAAC;YAED,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;QACzB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EtoContainer } from "@etohq/types";
|
|
2
2
|
import { EtoRequestContext } from "../types";
|
|
3
|
-
export declare const refetchEntities: (entryPoint: string, idOrFilter: string | object, scope: EtoContainer, fields: string[], pagination?: EtoRequestContext["queryConfig"]["pagination"]) => Promise<any>;
|
|
3
|
+
export declare const refetchEntities: (entryPoint: string, idOrFilter: string | object, scope: EtoContainer, fields: string[], pagination?: EtoRequestContext["queryConfig"]["pagination"], withDeleted?: boolean) => Promise<any>;
|
|
4
4
|
export declare const refetchEntity: (entryPoint: string, idOrFilter: string | object, scope: EtoContainer, fields: string[]) => Promise<any>;
|
|
5
5
|
//# sourceMappingURL=refetch-entities.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refetch-entities.d.ts","sourceRoot":"","sources":["../../../src/http/utils/refetch-entities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAM3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAE5C,eAAO,MAAM,eAAe,GAC1B,YAAY,MAAM,EAClB,YAAY,MAAM,GAAG,MAAM,EAC3B,OAAO,YAAY,EACnB,QAAQ,MAAM,EAAE,EAChB,aAAa,iBAAiB,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,
|
|
1
|
+
{"version":3,"file":"refetch-entities.d.ts","sourceRoot":"","sources":["../../../src/http/utils/refetch-entities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAM3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAE5C,eAAO,MAAM,eAAe,GAC1B,YAAY,MAAM,EAClB,YAAY,MAAM,GAAG,MAAM,EAC3B,OAAO,YAAY,EACnB,QAAQ,MAAM,EAAE,EAChB,aAAa,iBAAiB,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,EAC3D,cAAc,OAAO,iBAuBtB,CAAA;AAED,eAAO,MAAM,aAAa,GACxB,YAAY,MAAM,EAClB,YAAY,MAAM,GAAG,MAAM,EAC3B,OAAO,YAAY,EACnB,QAAQ,MAAM,EAAE,iBAKjB,CAAA"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.refetchEntity = exports.refetchEntities = void 0;
|
|
4
4
|
const utils_1 = require("@etohq/utils");
|
|
5
|
-
const refetchEntities = async (entryPoint, idOrFilter, scope, fields, pagination) => {
|
|
5
|
+
const refetchEntities = async (entryPoint, idOrFilter, scope, fields, pagination, withDeleted) => {
|
|
6
6
|
const remoteQuery = scope.resolve(utils_1.ContainerRegistrationKeys.REMOTE_QUERY);
|
|
7
7
|
const filters = (0, utils_1.isString)(idOrFilter) ? { id: idOrFilter } : idOrFilter;
|
|
8
8
|
let context = {};
|
|
@@ -12,7 +12,7 @@ const refetchEntities = async (entryPoint, idOrFilter, scope, fields, pagination
|
|
|
12
12
|
}
|
|
13
13
|
delete filters.context;
|
|
14
14
|
}
|
|
15
|
-
const variables = { filters, ...context, ...pagination };
|
|
15
|
+
const variables = { filters, ...context, ...pagination, withDeleted };
|
|
16
16
|
const queryObject = (0, utils_1.remoteQueryObjectFromString)({
|
|
17
17
|
entryPoint,
|
|
18
18
|
variables,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refetch-entities.js","sourceRoot":"","sources":["../../../src/http/utils/refetch-entities.ts"],"names":[],"mappings":";;;AACA,wCAIqB;AAGd,MAAM,eAAe,GAAG,KAAK,EAClC,UAAkB,EAClB,UAA2B,EAC3B,KAAmB,EACnB,MAAgB,EAChB,UAA2D,EAC3D,EAAE;IACF,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,iCAAyB,CAAC,YAAY,CAAC,CAAA;IACzE,MAAM,OAAO,GAAG,IAAA,gBAAQ,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,CAAA;IACtE,IAAI,OAAO,GAAW,EAAE,CAAA;IAExB,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;QACzB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,GAAG,OAAO,CAAC,OAAQ,CAAA;QAC5B,CAAC;QAED,OAAO,OAAO,CAAC,OAAO,CAAA;IACxB,CAAC;IAED,MAAM,SAAS,GAAG,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,UAAU,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"refetch-entities.js","sourceRoot":"","sources":["../../../src/http/utils/refetch-entities.ts"],"names":[],"mappings":";;;AACA,wCAIqB;AAGd,MAAM,eAAe,GAAG,KAAK,EAClC,UAAkB,EAClB,UAA2B,EAC3B,KAAmB,EACnB,MAAgB,EAChB,UAA2D,EAC3D,WAAqB,EACrB,EAAE;IACF,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,iCAAyB,CAAC,YAAY,CAAC,CAAA;IACzE,MAAM,OAAO,GAAG,IAAA,gBAAQ,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,CAAA;IACtE,IAAI,OAAO,GAAW,EAAE,CAAA;IAExB,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;QACzB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,GAAG,OAAO,CAAC,OAAQ,CAAA;QAC5B,CAAC;QAED,OAAO,OAAO,CAAC,OAAO,CAAA;IACxB,CAAC;IAED,MAAM,SAAS,GAAG,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,UAAU,EAAE,WAAW,EAAE,CAAA;IAErE,MAAM,WAAW,GAAG,IAAA,mCAA2B,EAAC;QAC9C,UAAU;QACV,SAAS;QACT,MAAM;KACP,CAAC,CAAA;IAEF,OAAO,MAAM,WAAW,CAAC,WAAW,CAAC,CAAA;AACvC,CAAC,CAAA;AA7BY,QAAA,eAAe,mBA6B3B;AAEM,MAAM,aAAa,GAAG,KAAK,EAChC,UAAkB,EAClB,UAA2B,EAC3B,KAAmB,EACnB,MAAgB,EAChB,EAAE;IACF,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAA,uBAAe,EAAC,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;IAE7E,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AATY,QAAA,aAAa,iBASzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate-query.d.ts","sourceRoot":"","sources":["../../../src/http/utils/validate-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAsB,MAAM,cAAc,CAAA;AAS1E,OAAO,EACL,mBAAmB,EAIpB,MAAM,UAAU,CAAA;AAGjB;;;;;GAKG;AAIH,eAAO,MAAM,cAAc,GAAI,OAAO,GAAG,OA6BxC,CAAA;AAwDD,wBAAgB,cAAc,CAAC,OAAO,SAAS,UAAU,EACvD,WAAW,EAAE,WAAW,CAAC,OAAO,CAAC,GAChC,mBAAmB,
|
|
1
|
+
{"version":3,"file":"validate-query.d.ts","sourceRoot":"","sources":["../../../src/http/utils/validate-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAsB,MAAM,cAAc,CAAA;AAS1E,OAAO,EACL,mBAAmB,EAIpB,MAAM,UAAU,CAAA;AAGjB;;;;;GAKG;AAIH,eAAO,MAAM,cAAc,GAAI,OAAO,GAAG,OA6BxC,CAAA;AAwDD,wBAAgB,cAAc,CAAC,OAAO,SAAS,UAAU,EACvD,WAAW,EAAE,WAAW,CAAC,OAAO,CAAC,GAChC,mBAAmB,CAyCrB"}
|
|
@@ -107,7 +107,8 @@ function transformQuery(queryConfig) {
|
|
|
107
107
|
allowed,
|
|
108
108
|
restricted,
|
|
109
109
|
});
|
|
110
|
-
|
|
110
|
+
const { with_deleted, ...validatedQueryFilters } = validated;
|
|
111
|
+
req.data.validatedQuery = validatedQueryFilters;
|
|
111
112
|
req.data.filterableFields = getFilterableFields(req.data.validatedQuery);
|
|
112
113
|
req.data.queryConfig = cnf.remoteQueryConfig;
|
|
113
114
|
req.data.listConfig = cnf.listConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate-query.js","sourceRoot":"","sources":["../../../src/http/utils/validate-query.ts"],"names":[],"mappings":";;;AA+GA,
|
|
1
|
+
{"version":3,"file":"validate-query.js","sourceRoot":"","sources":["../../../src/http/utils/validate-query.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wrap-handler.d.ts","sourceRoot":"","sources":["../../../src/http/utils/wrap-handler.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
// import type {
|
|
4
|
+
// EtoNextFunction,
|
|
5
|
+
// EtoRequest,
|
|
6
|
+
// EtoResponse,
|
|
7
|
+
// MiddlewareFunction,
|
|
8
|
+
// RouteHandler,
|
|
9
|
+
// } from "../types"
|
|
10
|
+
//
|
|
11
|
+
// export const wrapHandler = <T extends RouteHandler | MiddlewareFunction>(
|
|
12
|
+
// fn: T
|
|
13
|
+
// ) => {
|
|
14
|
+
// async function wrappedHandler(
|
|
15
|
+
// req: EtoRequest,
|
|
16
|
+
// res: EtoResponse,
|
|
17
|
+
// next: EtoNextFunction
|
|
18
|
+
// ) {
|
|
19
|
+
// const req_ = req as EtoRequest & { errors?: Error[] }
|
|
20
|
+
// if (req_?.errors?.length) {
|
|
21
|
+
// return res.status(400).json({
|
|
22
|
+
// errors: req_.errors,
|
|
23
|
+
// message:
|
|
24
|
+
// "Provided request body contains errors. Please check the data and retry the request",
|
|
25
|
+
// })
|
|
26
|
+
// }
|
|
27
|
+
//
|
|
28
|
+
// try {
|
|
29
|
+
// return await fn(req, res, next)
|
|
30
|
+
// } catch (err) {
|
|
31
|
+
// next(err)
|
|
32
|
+
// }
|
|
33
|
+
// }
|
|
34
|
+
//
|
|
35
|
+
// if (fn.name) {
|
|
36
|
+
// Object.defineProperty(wrappedHandler, "name", { value: fn.name })
|
|
37
|
+
// }
|
|
38
|
+
// return wrappedHandler as T
|
|
39
|
+
// }
|
|
40
|
+
//# sourceMappingURL=wrap-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wrap-handler.js","sourceRoot":"","sources":["../../../src/http/utils/wrap-handler.ts"],"names":[],"mappings":";;AAAA,gBAAgB;AAChB,qBAAqB;AACrB,gBAAgB;AAChB,iBAAiB;AACjB,wBAAwB;AACxB,kBAAkB;AAClB,oBAAoB;AACpB,EAAE;AACF,4EAA4E;AAC5E,UAAU;AACV,SAAS;AACT,mCAAmC;AACnC,uBAAuB;AACvB,wBAAwB;AACxB,4BAA4B;AAC5B,QAAQ;AACR,4DAA4D;AAC5D,kCAAkC;AAClC,sCAAsC;AACtC,+BAA+B;AAC/B,mBAAmB;AACnB,kGAAkG;AAClG,WAAW;AACX,QAAQ;AACR,EAAE;AACF,YAAY;AACZ,wCAAwC;AACxC,sBAAsB;AACtB,kBAAkB;AAClB,QAAQ;AACR,MAAM;AACN,EAAE;AACF,mBAAmB;AACnB,wEAAwE;AACxE,MAAM;AACN,+BAA+B;AAC/B,IAAI"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,9 +7,9 @@ export * from "./jobs";
|
|
|
7
7
|
export * from "./links";
|
|
8
8
|
export * from "./logger";
|
|
9
9
|
export * from "./eto-app-loader";
|
|
10
|
+
export * from "./migrations";
|
|
10
11
|
export * from "./subscribers";
|
|
11
12
|
export * from "./workflows";
|
|
12
|
-
export * from "./telemetry";
|
|
13
13
|
export * from "./zod";
|
|
14
14
|
export * from "./eto";
|
|
15
15
|
export * from "./loader";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,kBAAkB,CAAA;AAChC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,kBAAkB,CAAA;AAChC,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,OAAO,CAAA;AACrB,cAAc,OAAO,CAAA;AACrB,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AAEvB,eAAO,MAAM,YAAY,QAAgC,CAAA;AAEzD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -24,9 +24,9 @@ __exportStar(require("./jobs"), exports);
|
|
|
24
24
|
__exportStar(require("./links"), exports);
|
|
25
25
|
__exportStar(require("./logger"), exports);
|
|
26
26
|
__exportStar(require("./eto-app-loader"), exports);
|
|
27
|
+
__exportStar(require("./migrations"), exports);
|
|
27
28
|
__exportStar(require("./subscribers"), exports);
|
|
28
29
|
__exportStar(require("./workflows"), exports);
|
|
29
|
-
__exportStar(require("./telemetry"), exports);
|
|
30
30
|
__exportStar(require("./zod"), exports);
|
|
31
31
|
__exportStar(require("./eto"), exports);
|
|
32
32
|
__exportStar(require("./loader"), exports);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,8CAA2B;AAC3B,6CAA0B;AAC1B,kDAA+B;AAC/B,yCAAsB;AACtB,yCAAsB;AACtB,0CAAuB;AACvB,2CAAwB;AACxB,mDAAgC;AAChC,gDAA6B;AAC7B,8CAA2B;AAC3B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,8CAA2B;AAC3B,6CAA0B;AAC1B,kDAA+B;AAC/B,yCAAsB;AACtB,yCAAsB;AACtB,0CAAuB;AACvB,2CAAwB;AACxB,mDAAgC;AAChC,+CAA4B;AAC5B,gDAA6B;AAC7B,8CAA2B;AAC3B,wCAAqB;AACrB,wCAAqB;AACrB,2CAAwB;AACxB,4CAAyB;AACzB,0CAAuB;AAEV,QAAA,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;AAEzD,kDAA0C;AAAjC,oGAAA,KAAK,OAAA"}
|
|
@@ -1,24 +1,19 @@
|
|
|
1
1
|
import type { SchedulerOptions } from "@etohq/orchestration";
|
|
2
2
|
import { EtoContainer } from "@etohq/types";
|
|
3
|
+
import { ResourceLoader } from "../utils/resource-loader";
|
|
3
4
|
type CronJobConfig = {
|
|
4
5
|
name: string;
|
|
5
|
-
schedule: string;
|
|
6
|
+
schedule: string | SchedulerOptions;
|
|
6
7
|
numberOfExecutions?: SchedulerOptions["numberOfExecutions"];
|
|
7
8
|
};
|
|
8
9
|
type CronJobHandler = (container: EtoContainer) => Promise<any>;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
};
|
|
17
|
-
}>;
|
|
18
|
-
};
|
|
19
|
-
export declare class JobLoader {
|
|
20
|
-
#private;
|
|
21
|
-
constructor({ sourceDir, jobs }: LoaderInput);
|
|
10
|
+
export declare class JobLoader extends ResourceLoader {
|
|
11
|
+
protected resourceName: string;
|
|
12
|
+
constructor(sourceDir: string | string[]);
|
|
13
|
+
protected onFileLoaded(path: string, fileExports: {
|
|
14
|
+
default: CronJobHandler;
|
|
15
|
+
config: CronJobConfig;
|
|
16
|
+
}): Promise<void>;
|
|
22
17
|
/**
|
|
23
18
|
* Validate cron job configuration
|
|
24
19
|
* @param config
|
|
@@ -34,11 +29,13 @@ export declare class JobLoader {
|
|
|
34
29
|
* @param handler
|
|
35
30
|
* @protected
|
|
36
31
|
*/
|
|
37
|
-
protected
|
|
32
|
+
protected register({ config, handler, }: {
|
|
38
33
|
config: CronJobConfig;
|
|
39
34
|
handler: CronJobHandler;
|
|
40
35
|
}): void;
|
|
41
|
-
|
|
36
|
+
/**
|
|
37
|
+
* Load cron jobs from one or multiple source paths
|
|
38
|
+
*/
|
|
42
39
|
load(): Promise<void>;
|
|
43
40
|
}
|
|
44
41
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"job-loader.d.ts","sourceRoot":"","sources":["../../src/jobs/job-loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"job-loader.d.ts","sourceRoot":"","sources":["../../src/jobs/job-loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAQ3C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAEzD,KAAK,aAAa,GAAG;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAAA;IACnC,kBAAkB,CAAC,EAAE,gBAAgB,CAAC,oBAAoB,CAAC,CAAA;CAC5D,CAAA;AAED,KAAK,cAAc,GAAG,CAAC,SAAS,EAAE,YAAY,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;AAE/D,qBAAa,SAAU,SAAQ,cAAc;IAC3C,SAAS,CAAC,YAAY,SAAQ;gBAElB,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;cAIxB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE;QACX,OAAO,EAAE,cAAc,CAAA;QACvB,MAAM,EAAE,aAAa,CAAA;KACtB;IAUH;;;;OAIG;IACH,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE;QAC/B,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAAA;QACnC,IAAI,EAAE,MAAM,CAAA;KACb;IAuBD;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,CAAC,EACjB,MAAM,EACN,OAAO,GACR,EAAE;QACD,MAAM,EAAE,aAAa,CAAA;QACrB,OAAO,EAAE,cAAc,CAAA;KACxB;IAiCD;;OAEG;IACG,IAAI;CAKX"}
|
package/dist/jobs/job-loader.js
CHANGED
|
@@ -1,47 +1,22 @@
|
|
|
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 _JobLoader_sourceDir, _JobLoader_preLoadedJobs, _JobLoader_excludes;
|
|
14
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
3
|
exports.JobLoader = void 0;
|
|
16
4
|
const utils_1 = require("@etohq/utils");
|
|
17
5
|
const workflows_sdk_1 = require("@etohq/workflows-sdk");
|
|
18
|
-
const promises_1 = require("fs/promises");
|
|
19
|
-
const path_1 = require("path");
|
|
20
6
|
const logger_1 = require("../logger");
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
/index\.js/,
|
|
35
|
-
/index\.ts/,
|
|
36
|
-
/\.DS_Store/,
|
|
37
|
-
/(\.ts\.map|\.js\.map|\.d\.ts|\.md)/,
|
|
38
|
-
/^_[^/\\]*(\.[^/\\]+)?$/,
|
|
39
|
-
]);
|
|
40
|
-
if (!sourceDir && !jobs) {
|
|
41
|
-
throw new Error('Either sourceDir or jobs must be provided');
|
|
42
|
-
}
|
|
43
|
-
__classPrivateFieldSet(this, _JobLoader_sourceDir, sourceDir, "f");
|
|
44
|
-
__classPrivateFieldSet(this, _JobLoader_preLoadedJobs, jobs, "f");
|
|
7
|
+
const resource_loader_1 = require("../utils/resource-loader");
|
|
8
|
+
class JobLoader extends resource_loader_1.ResourceLoader {
|
|
9
|
+
constructor(sourceDir) {
|
|
10
|
+
super(sourceDir);
|
|
11
|
+
this.resourceName = "job";
|
|
12
|
+
}
|
|
13
|
+
async onFileLoaded(path, fileExports) {
|
|
14
|
+
this.validateConfig(fileExports.config);
|
|
15
|
+
logger_1.logger.debug(`Registering job from ${path}.`);
|
|
16
|
+
this.register({
|
|
17
|
+
config: fileExports.config,
|
|
18
|
+
handler: fileExports.default,
|
|
19
|
+
});
|
|
45
20
|
}
|
|
46
21
|
/**
|
|
47
22
|
* Validate cron job configuration
|
|
@@ -65,7 +40,7 @@ class JobLoader {
|
|
|
65
40
|
* @param handler
|
|
66
41
|
* @protected
|
|
67
42
|
*/
|
|
68
|
-
|
|
43
|
+
register({ config, handler, }) {
|
|
69
44
|
const workflowName = `job-${config.name}`;
|
|
70
45
|
const step = (0, workflows_sdk_1.createStep)(`${config.name}-as-step`, async (_, stepContext) => {
|
|
71
46
|
const { container } = stepContext;
|
|
@@ -91,58 +66,13 @@ class JobLoader {
|
|
|
91
66
|
step();
|
|
92
67
|
});
|
|
93
68
|
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
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)));
|
|
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
|
-
}));
|
|
118
|
-
});
|
|
119
|
-
}
|
|
69
|
+
/**
|
|
70
|
+
* Load cron jobs from one or multiple source paths
|
|
71
|
+
*/
|
|
120
72
|
async load() {
|
|
121
|
-
|
|
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));
|
|
73
|
+
await super.discoverResources();
|
|
143
74
|
logger_1.logger.debug(`Jobs registered.`);
|
|
144
75
|
}
|
|
145
76
|
}
|
|
146
77
|
exports.JobLoader = JobLoader;
|
|
147
|
-
_JobLoader_sourceDir = new WeakMap(), _JobLoader_preLoadedJobs = new WeakMap(), _JobLoader_excludes = new WeakMap();
|
|
148
78
|
//# sourceMappingURL=job-loader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"job-loader.js","sourceRoot":"","sources":["../../src/jobs/job-loader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"job-loader.js","sourceRoot":"","sources":["../../src/jobs/job-loader.ts"],"names":[],"mappings":";;;AAEA,wCAAiD;AACjD,wDAI6B;AAC7B,sCAAkC;AAClC,8DAAyD;AAUzD,MAAa,SAAU,SAAQ,gCAAc;IAG3C,YAAY,SAA4B;QACtC,KAAK,CAAC,SAAS,CAAC,CAAA;QAHR,iBAAY,GAAG,KAAK,CAAA;IAI9B,CAAC;IAES,KAAK,CAAC,YAAY,CAC1B,IAAY,EACZ,WAGC;QAED,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QACvC,eAAM,CAAC,KAAK,CAAC,wBAAwB,IAAI,GAAG,CAAC,CAAA;QAC7C,IAAI,CAAC,QAAQ,CAAC;YACZ,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,OAAO,EAAE,WAAW,CAAC,OAAO;SAC7B,CAAC,CAAA;IACJ,CAAC;IAED;;;;OAIG;IACO,cAAc,CAAC,MAGxB;QACC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,gBAAQ,CAChB,gBAAQ,CAAC,KAAK,CAAC,gBAAgB,EAC/B,wCAAwC,CACzC,CAAA;QACH,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,IAAI,gBAAQ,CAChB,gBAAQ,CAAC,KAAK,CAAC,gBAAgB,EAC/B,0DAA0D,CAC3D,CAAA;QACH,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,gBAAQ,CAChB,gBAAQ,CAAC,KAAK,CAAC,gBAAgB,EAC/B,0CAA0C,CAC3C,CAAA;QACH,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACO,QAAQ,CAAC,EACjB,MAAM,EACN,OAAO,GAIR;QACC,MAAM,YAAY,GAAG,OAAO,MAAM,CAAC,IAAI,EAAE,CAAA;QACzC,MAAM,IAAI,GAAG,IAAA,0BAAU,EACrB,GAAG,MAAM,CAAC,IAAI,UAAU,EACxB,KAAK,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE;YACvB,MAAM,EAAE,SAAS,EAAE,GAAG,WAAW,CAAA;YACjC,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAA;gBACpC,OAAO,IAAI,4BAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;YACnC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,eAAM,CAAC,KAAK,CACV,iBAAiB,MAAM,CAAC,IAAI,uBAAuB,KAAK,CAAC,OAAO,EAAE,CACnE,CAAA;gBACD,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC,CACF,CAAA;QAED,MAAM,cAAc,GAAG;YACrB,IAAI,EAAE,YAAY;YAClB,QAAQ,EAAE,IAAA,gBAAQ,EAAC,MAAM,CAAC,QAAQ,CAAC;gBACjC,CAAC,CAAC,MAAM,CAAC,QAAQ;gBACjB,CAAC,CAAC;oBACE,IAAI,EAAE,MAAM,CAAC,QAAQ;oBACrB,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;iBAC9C;SACN,CAAA;QAED,IAAA,8BAAc,EAAC,cAAc,EAAE,GAAG,EAAE;YAClC,IAAI,EAAE,CAAA;QACR,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,KAAK,CAAC,iBAAiB,EAAE,CAAA;QAE/B,eAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;IAClC,CAAC;CACF;AA1GD,8BA0GC"}
|
|
@@ -60,7 +60,7 @@ class LinkLoader {
|
|
|
60
60
|
});
|
|
61
61
|
logger_1.logger.debug(`Registering links from ${sourcePath}.`);
|
|
62
62
|
return await (0, utils_1.promiseAll)(fileEntries.map(async (entry) => {
|
|
63
|
-
const fullPath = (0, path_1.join)(
|
|
63
|
+
const fullPath = (0, path_1.join)(sourcePath, entry.name);
|
|
64
64
|
return await (0, utils_1.dynamicImport)(fullPath);
|
|
65
65
|
}));
|
|
66
66
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link-loader.js","sourceRoot":"","sources":["../../src/links/link-loader.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,wCAA0E;AAE1E,0CAAoC;AACpC,+BAA2B;AAC3B,sCAAkC;AAElC,MAAa,UAAU;IAmBrB,YAAY,SAA4B;QAlBxC;;;WAGG;QACH,wCAA6B;QAE7B;;;WAGG;QACH,+BAAsB;YACpB,WAAW;YACX,WAAW;YACX,YAAY;YACZ,oCAAoC;YACpC,wBAAwB;SACzB,EAAA;QAGC,uBAAA,IAAI,yBAAc,SAAS,MAAA,CAAA;IAC7B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,uBAAA,IAAI,6BAAW,CAAC;YACzD,CAAC,CAAC,uBAAA,IAAI,6BAAW;YACjB,CAAC,CAAC,CAAC,uBAAA,IAAI,6BAAW,CAAC,CAAA;QAErB,MAAM,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;YAC7D,IAAI,CAAC;gBACH,MAAM,IAAA,iBAAM,EAAC,UAAU,CAAC,CAAA;YAC1B,CAAC;YAAC,MAAM,CAAC;gBACP,eAAM,CAAC,IAAI,CAAC,wBAAwB,UAAU,YAAY,CAAC,CAAA;gBAC3D,OAAM;YACR,CAAC;YAED,OAAO,MAAM,IAAA,wBAAgB,EAAC,UAAU,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAa,EAAE,EAAE;oBACnD,OAAO,CACL,CAAC,KAAK,CAAC,WAAW,EAAE;wBACpB,CAAC,uBAAA,IAAI,4BAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAC5D,CAAA;gBACH,CAAC,CAAC,CAAA;gBAEF,eAAM,CAAC,KAAK,CAAC,0BAA0B,UAAU,GAAG,CAAC,CAAA;gBAErD,OAAO,MAAM,IAAA,kBAAU,EACrB,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,KAAa,EAAE,EAAE;oBACtC,MAAM,QAAQ,GAAG,IAAA,WAAI,EAAC,
|
|
1
|
+
{"version":3,"file":"link-loader.js","sourceRoot":"","sources":["../../src/links/link-loader.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,wCAA0E;AAE1E,0CAAoC;AACpC,+BAA2B;AAC3B,sCAAkC;AAElC,MAAa,UAAU;IAmBrB,YAAY,SAA4B;QAlBxC;;;WAGG;QACH,wCAA6B;QAE7B;;;WAGG;QACH,+BAAsB;YACpB,WAAW;YACX,WAAW;YACX,YAAY;YACZ,oCAAoC;YACpC,wBAAwB;SACzB,EAAA;QAGC,uBAAA,IAAI,yBAAc,SAAS,MAAA,CAAA;IAC7B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,uBAAA,IAAI,6BAAW,CAAC;YACzD,CAAC,CAAC,uBAAA,IAAI,6BAAW;YACjB,CAAC,CAAC,CAAC,uBAAA,IAAI,6BAAW,CAAC,CAAA;QAErB,MAAM,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;YAC7D,IAAI,CAAC;gBACH,MAAM,IAAA,iBAAM,EAAC,UAAU,CAAC,CAAA;YAC1B,CAAC;YAAC,MAAM,CAAC;gBACP,eAAM,CAAC,IAAI,CAAC,wBAAwB,UAAU,YAAY,CAAC,CAAA;gBAC3D,OAAM;YACR,CAAC;YAED,OAAO,MAAM,IAAA,wBAAgB,EAAC,UAAU,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAa,EAAE,EAAE;oBACnD,OAAO,CACL,CAAC,KAAK,CAAC,WAAW,EAAE;wBACpB,CAAC,uBAAA,IAAI,4BAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAC5D,CAAA;gBACH,CAAC,CAAC,CAAA;gBAEF,eAAM,CAAC,KAAK,CAAC,0BAA0B,UAAU,GAAG,CAAC,CAAA;gBAErD,OAAO,MAAM,IAAA,kBAAU,EACrB,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,KAAa,EAAE,EAAE;oBACtC,MAAM,QAAQ,GAAG,IAAA,WAAI,EAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;oBAC7C,OAAO,MAAM,IAAA,qBAAa,EAAC,QAAQ,CAAC,CAAA;gBACtC,CAAC,CAAC,CACH,CAAA;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,MAAM,IAAA,kBAAU,EAAC,QAAQ,CAAC,CAAA;QAE1B,eAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAA;IACnC,CAAC;CACF;AA/DD,gCA+DC"}
|
package/dist/loader.d.ts
CHANGED
|
@@ -1,24 +1,20 @@
|
|
|
1
|
-
import { ConfigModule,
|
|
1
|
+
import { ConfigModule, EtoContainer, FlagSettings, InputConfig, ModulesDefinitionInput } from "@etohq/types";
|
|
2
2
|
import { Eto } from "./eto";
|
|
3
3
|
/**
|
|
4
4
|
* Initializes the DI container with configurations and feature flags.
|
|
5
5
|
*/
|
|
6
|
-
export declare function initializeContainer<TKey extends string = string>(rootDirectory: string, featureFlags: (string | Record<string, FlagSettings>)[],
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
6
|
+
export declare function initializeContainer<TKey extends string = string>(rootDirectory: string, featureFlags: (string | Record<string, FlagSettings>)[], modulesDefinitionInput: ModulesDefinitionInput<TKey>, inputConfig?: InputConfig<TKey>): Promise<{
|
|
7
|
+
container: EtoContainer;
|
|
8
|
+
configModule: ConfigModule<TKey>;
|
|
9
|
+
}>;
|
|
10
10
|
/**
|
|
11
11
|
* Main application initialization function.
|
|
12
12
|
*/
|
|
13
|
-
export declare function withLoader<TKey extends string = string>({ directory,
|
|
13
|
+
export declare function withLoader<TKey extends string = string>({ directory, modulesDefinitionInput, linkModule, featureFlags, backgroundLoaders, }: {
|
|
14
14
|
directory: string;
|
|
15
15
|
linkModule: any;
|
|
16
|
-
|
|
16
|
+
modulesDefinitionInput: ModulesDefinitionInput<TKey>;
|
|
17
17
|
featureFlags: (string | Record<string, FlagSettings>)[];
|
|
18
18
|
backgroundLoaders: (() => Promise<void>)[];
|
|
19
|
-
}):
|
|
20
|
-
defaultModules: InputConfigModules<TKey>;
|
|
21
|
-
modulesDefinition: DefaultModulesDefinition<TKey>;
|
|
22
|
-
loadEto: (inlineConfig?: ConfigModule<TKey>) => Promise<Eto>;
|
|
23
|
-
};
|
|
19
|
+
}): (inputConfig: InputConfig<TKey>) => Promise<Eto<TKey>>;
|
|
24
20
|
//# sourceMappingURL=loader.d.ts.map
|
package/dist/loader.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,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,sBAAsB,EAAE,sBAAsB,CAAC,IAAI,CAAC,EACpD,WAAW,CAAC,EAAG,WAAW,CAAC,IAAI,CAAC,GAC/B,OAAO,CAAC;IAAE,SAAS,EAAE,YAAY,CAAC;IAAC,YAAY,EAAE,YAAY,CAAC,IAAI,CAAC,CAAA;CAAE,CAAC,CAiBxE;AAED;;GAEG;AAQH,wBAAgB,UAAU,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,EAAE,EACvD,SAAS,EACT,sBAAsB,EACtB,UAAU,EACV,YAAY,EACZ,iBAAiB,GAClB,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,GAAG,CAAA;IACf,sBAAsB,EAAE,sBAAsB,CAAC,IAAI,CAAC,CAAA;IACpD,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,IAIK,aAAa,WAAW,CAAC,IAAI,CAAC,KAC7B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CA8DtB"}
|
package/dist/loader.js
CHANGED
|
@@ -48,15 +48,16 @@ async function loadEntrypoints(backgroundLoaders, container) {
|
|
|
48
48
|
*/
|
|
49
49
|
// todo update test for configLooader to accomodate inlineDefaultModules.
|
|
50
50
|
// todo add system default at config level.
|
|
51
|
-
async function initializeContainer(rootDirectory, featureFlags,
|
|
52
|
-
await (0, config_1.configLoader)(rootDirectory, "eto-config",
|
|
51
|
+
async function initializeContainer(rootDirectory, featureFlags, modulesDefinitionInput, inputConfig) {
|
|
52
|
+
const configModule = await (0, config_1.configLoader)(rootDirectory, "eto-config", modulesDefinitionInput, inputConfig);
|
|
53
53
|
await (0, feature_flags_1.featureFlagsLoader)(featureFlags);
|
|
54
54
|
container_1.container.register({
|
|
55
55
|
[utils_1.ContainerRegistrationKeys.LOGGER]: (0, awilix_1.asValue)(logger_1.logger),
|
|
56
56
|
[utils_1.ContainerRegistrationKeys.REMOTE_QUERY]: (0, awilix_1.asValue)(null),
|
|
57
57
|
});
|
|
58
|
+
console.log("[Eto] - loading database connection");
|
|
58
59
|
(0, database_1.pgConnectionLoader)();
|
|
59
|
-
return container_1.container;
|
|
60
|
+
return { container: container_1.container, configModule };
|
|
60
61
|
}
|
|
61
62
|
/**
|
|
62
63
|
* Main application initialization function.
|
|
@@ -66,39 +67,43 @@ async function initializeContainer(rootDirectory, featureFlags, inlineConfig, mo
|
|
|
66
67
|
// import { preLoadedSubscribers } from "../subscribers"
|
|
67
68
|
// const __filename = fileURLToPath(import.meta.url)
|
|
68
69
|
// const dir = process.cwd()
|
|
69
|
-
function withLoader({ directory,
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
70
|
+
function withLoader({ directory, modulesDefinitionInput, linkModule, featureFlags, backgroundLoaders, }) {
|
|
71
|
+
return async function loader(inputConfig) {
|
|
72
|
+
const isExec = (0, utils_1.isExecMode)();
|
|
73
|
+
const defaultModulesDefinition = (0, modules_sdk_1.generateModulesDefinition)(...modulesDefinitionInput);
|
|
74
|
+
const { container } = await initializeContainer(directory, featureFlags, modulesDefinitionInput, inputConfig);
|
|
75
|
+
const { onApplicationStart, onApplicationShutdown, onApplicationPrepareShutdown, modules, gqlSchema, } = await new eto_app_loader_1.EtoAppLoader({
|
|
76
|
+
modulesDefinition: defaultModulesDefinition,
|
|
77
|
+
linkModule,
|
|
78
|
+
}).load();
|
|
79
|
+
const entrypointsShutdown = await loadEntrypoints(backgroundLoaders, container);
|
|
80
|
+
// no need too run all start functionns since some requires migrations, which is not garantee to be available when running on exec. todo enable a way to ignore.
|
|
81
|
+
if (!isExec) {
|
|
82
|
+
console.log(isExec, "isExec");
|
|
82
83
|
await onApplicationStart();
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
84
|
+
}
|
|
85
|
+
const shutdown = async () => {
|
|
86
|
+
const pgConnection = container.resolve(utils_1.ContainerRegistrationKeys.PG_CONNECTION);
|
|
87
|
+
await onApplicationPrepareShutdown();
|
|
88
|
+
await onApplicationShutdown();
|
|
89
|
+
await (0, utils_1.promiseAll)([
|
|
90
|
+
container.dispose(),
|
|
91
|
+
// @ts-ignore
|
|
92
|
+
pgConnection?.context?.destroy?.(),
|
|
93
|
+
entrypointsShutdown(),
|
|
94
|
+
]);
|
|
95
|
+
};
|
|
96
|
+
return {
|
|
97
|
+
container,
|
|
98
|
+
shutdown,
|
|
99
|
+
modules,
|
|
100
|
+
gqlSchema,
|
|
101
|
+
directory,
|
|
102
|
+
inputConfig,
|
|
103
|
+
modulesDefinitionInput,
|
|
104
|
+
linkModule,
|
|
105
|
+
isExecMode: isExec,
|
|
106
|
+
};
|
|
102
107
|
};
|
|
103
108
|
}
|
|
104
109
|
//# sourceMappingURL=loader.js.map
|
package/dist/loader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"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"}
|