@restorecommerce/facade 1.3.5 → 1.3.7
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/.eslintrc.cjs +1 -11
- package/CHANGELOG.md +20 -0
- package/codegen/tsconfig.codegen.tsbuildinfo +1 -0
- package/debug-run.ts +1 -1
- package/dist/tsconfig.lib.tsbuildinfo +1 -0
- package/package.json +5 -4
- package/tsconfig-base.json +8 -19
- package/tsconfig.codegen.json +0 -1
- package/tsconfig.debug.json +1 -5
- package/tsconfig.generate.json +0 -3
- package/tsconfig.lib.json +1 -2
- package/tsconfig.test.json +1 -22
- package/codegen/index.d.ts +0 -12
- package/codegen/index.js +0 -43
- package/dist/gql/index.d.ts +0 -1
- package/dist/gql/index.js +0 -1
- package/dist/gql/protos/federation.d.ts +0 -6
- package/dist/gql/protos/federation.js +0 -46
- package/dist/gql/protos/graphql.d.ts +0 -11
- package/dist/gql/protos/graphql.js +0 -158
- package/dist/gql/protos/index.d.ts +0 -6
- package/dist/gql/protos/index.js +0 -6
- package/dist/gql/protos/registry.d.ts +0 -23
- package/dist/gql/protos/registry.js +0 -366
- package/dist/gql/protos/resolvers.d.ts +0 -9
- package/dist/gql/protos/resolvers.js +0 -479
- package/dist/gql/protos/schema.d.ts +0 -14
- package/dist/gql/protos/schema.js +0 -224
- package/dist/gql/protos/stream-to-async-iterator.d.ts +0 -50
- package/dist/gql/protos/stream-to-async-iterator.js +0 -190
- package/dist/gql/protos/types.d.ts +0 -96
- package/dist/gql/protos/types.js +0 -1
- package/dist/gql/protos/utils.d.ts +0 -18
- package/dist/gql/protos/utils.js +0 -133
- package/dist/gql/types/AccessControlTypes.d.ts +0 -6
- package/dist/gql/types/AccessControlTypes.js +0 -97
- package/dist/gql/types/DateType.d.ts +0 -2
- package/dist/gql/types/DateType.js +0 -29
- package/dist/gql/types/FilterType.d.ts +0 -2
- package/dist/gql/types/FilterType.js +0 -72
- package/dist/gql/types/MetaType.d.ts +0 -2
- package/dist/gql/types/MetaType.js +0 -25
- package/dist/gql/types/ScopeType.d.ts +0 -2
- package/dist/gql/types/ScopeType.js +0 -13
- package/dist/gql/types/SortType.d.ts +0 -3
- package/dist/gql/types/SortType.js +0 -30
- package/dist/gql/types/StatusType.d.ts +0 -2
- package/dist/gql/types/StatusType.js +0 -15
- package/dist/gql/types/index.d.ts +0 -7
- package/dist/gql/types/index.js +0 -7
- package/dist/index.d.ts +0 -63
- package/dist/index.js +0 -307
- package/dist/interfaces.d.ts +0 -47
- package/dist/interfaces.js +0 -4
- package/dist/middlewares/index.d.ts +0 -1
- package/dist/middlewares/index.js +0 -1
- package/dist/middlewares/req-res-logger/index.d.ts +0 -14
- package/dist/middlewares/req-res-logger/index.js +0 -90
- package/dist/modules/access-control/gql/federation.d.ts +0 -2
- package/dist/modules/access-control/gql/federation.js +0 -13
- package/dist/modules/access-control/gql/schema.d.ts +0 -2
- package/dist/modules/access-control/gql/schema.generated.d.ts +0 -1124
- package/dist/modules/access-control/gql/schema.generated.js +0 -80
- package/dist/modules/access-control/gql/schema.js +0 -5
- package/dist/modules/access-control/gql/types.d.ts +0 -3
- package/dist/modules/access-control/gql/types.js +0 -14
- package/dist/modules/access-control/grpc/index.d.ts +0 -13
- package/dist/modules/access-control/grpc/index.js +0 -14
- package/dist/modules/access-control/index.d.ts +0 -2
- package/dist/modules/access-control/index.js +0 -26
- package/dist/modules/access-control/interfaces.d.ts +0 -15
- package/dist/modules/access-control/interfaces.js +0 -1
- package/dist/modules/catalog/gql/federation.d.ts +0 -2
- package/dist/modules/catalog/gql/federation.js +0 -13
- package/dist/modules/catalog/gql/schema.d.ts +0 -2
- package/dist/modules/catalog/gql/schema.generated.d.ts +0 -1503
- package/dist/modules/catalog/gql/schema.generated.js +0 -74
- package/dist/modules/catalog/gql/schema.js +0 -5
- package/dist/modules/catalog/gql/types.d.ts +0 -3
- package/dist/modules/catalog/gql/types.js +0 -16
- package/dist/modules/catalog/grpc/index.d.ts +0 -15
- package/dist/modules/catalog/grpc/index.js +0 -16
- package/dist/modules/catalog/index.d.ts +0 -2
- package/dist/modules/catalog/index.js +0 -26
- package/dist/modules/catalog/interfaces.d.ts +0 -16
- package/dist/modules/catalog/interfaces.js +0 -1
- package/dist/modules/facade-status/gql/index.d.ts +0 -1
- package/dist/modules/facade-status/gql/index.js +0 -11
- package/dist/modules/facade-status/gql/resolvers.d.ts +0 -2
- package/dist/modules/facade-status/gql/resolvers.js +0 -18
- package/dist/modules/facade-status/gql/schema.d.ts +0 -3
- package/dist/modules/facade-status/gql/schema.generated.d.ts +0 -109
- package/dist/modules/facade-status/gql/schema.generated.js +0 -1
- package/dist/modules/facade-status/gql/schema.js +0 -14
- package/dist/modules/facade-status/gql/types.d.ts +0 -2
- package/dist/modules/facade-status/gql/types.js +0 -10
- package/dist/modules/facade-status/index.d.ts +0 -2
- package/dist/modules/facade-status/index.js +0 -8
- package/dist/modules/facade-status/interfaces.d.ts +0 -4
- package/dist/modules/facade-status/interfaces.js +0 -1
- package/dist/modules/fulfillment/gql/federation.d.ts +0 -2
- package/dist/modules/fulfillment/gql/federation.js +0 -13
- package/dist/modules/fulfillment/gql/schema.d.ts +0 -2
- package/dist/modules/fulfillment/gql/schema.generated.d.ts +0 -1539
- package/dist/modules/fulfillment/gql/schema.generated.js +0 -79
- package/dist/modules/fulfillment/gql/schema.js +0 -5
- package/dist/modules/fulfillment/gql/types.d.ts +0 -3
- package/dist/modules/fulfillment/gql/types.js +0 -12
- package/dist/modules/fulfillment/grpc/index.d.ts +0 -9
- package/dist/modules/fulfillment/grpc/index.js +0 -10
- package/dist/modules/fulfillment/index.d.ts +0 -2
- package/dist/modules/fulfillment/index.js +0 -26
- package/dist/modules/fulfillment/interfaces.d.ts +0 -16
- package/dist/modules/fulfillment/interfaces.js +0 -1
- package/dist/modules/identity/api-key/api-key.d.ts +0 -11
- package/dist/modules/identity/api-key/api-key.js +0 -137
- package/dist/modules/identity/gql/federation.d.ts +0 -2
- package/dist/modules/identity/gql/federation.js +0 -5
- package/dist/modules/identity/gql/schema.d.ts +0 -2
- package/dist/modules/identity/gql/schema.generated.d.ts +0 -1661
- package/dist/modules/identity/gql/schema.generated.js +0 -75
- package/dist/modules/identity/gql/schema.js +0 -5
- package/dist/modules/identity/gql/types.d.ts +0 -3
- package/dist/modules/identity/gql/types.js +0 -18
- package/dist/modules/identity/grpc/index.d.ts +0 -15
- package/dist/modules/identity/grpc/index.js +0 -16
- package/dist/modules/identity/index.d.ts +0 -4
- package/dist/modules/identity/index.js +0 -54
- package/dist/modules/identity/interfaces.d.ts +0 -22
- package/dist/modules/identity/interfaces.js +0 -1
- package/dist/modules/identity/oauth/oauth.d.ts +0 -11
- package/dist/modules/identity/oauth/oauth.js +0 -170
- package/dist/modules/identity/oidc/adapter.d.ts +0 -4
- package/dist/modules/identity/oidc/adapter.js +0 -135
- package/dist/modules/identity/oidc/in-memory-adapter.d.ts +0 -16
- package/dist/modules/identity/oidc/in-memory-adapter.js +0 -85
- package/dist/modules/identity/oidc/index.d.ts +0 -18
- package/dist/modules/identity/oidc/index.js +0 -147
- package/dist/modules/identity/oidc/interfaces.d.ts +0 -73
- package/dist/modules/identity/oidc/interfaces.js +0 -7
- package/dist/modules/identity/oidc/password-grant.d.ts +0 -2
- package/dist/modules/identity/oidc/password-grant.js +0 -163
- package/dist/modules/identity/oidc/router.d.ts +0 -13
- package/dist/modules/identity/oidc/router.js +0 -164
- package/dist/modules/identity/oidc/templates.d.ts +0 -36
- package/dist/modules/identity/oidc/templates.js +0 -60
- package/dist/modules/identity/oidc/user.d.ts +0 -6
- package/dist/modules/identity/oidc/user.js +0 -91
- package/dist/modules/identity/oidc/utils.d.ts +0 -6
- package/dist/modules/identity/oidc/utils.js +0 -15
- package/dist/modules/index.d.ts +0 -13
- package/dist/modules/index.js +0 -13
- package/dist/modules/indexing/gql/federation.d.ts +0 -2
- package/dist/modules/indexing/gql/federation.js +0 -13
- package/dist/modules/indexing/gql/schema.d.ts +0 -2
- package/dist/modules/indexing/gql/schema.generated.d.ts +0 -226
- package/dist/modules/indexing/gql/schema.generated.js +0 -6
- package/dist/modules/indexing/gql/schema.js +0 -5
- package/dist/modules/indexing/gql/types.d.ts +0 -3
- package/dist/modules/indexing/gql/types.js +0 -8
- package/dist/modules/indexing/grpc/index.d.ts +0 -7
- package/dist/modules/indexing/grpc/index.js +0 -8
- package/dist/modules/indexing/index.d.ts +0 -2
- package/dist/modules/indexing/index.js +0 -26
- package/dist/modules/indexing/interfaces.d.ts +0 -13
- package/dist/modules/indexing/interfaces.js +0 -1
- package/dist/modules/invoicing/gql/federation.d.ts +0 -2
- package/dist/modules/invoicing/gql/federation.js +0 -13
- package/dist/modules/invoicing/gql/schema.d.ts +0 -2
- package/dist/modules/invoicing/gql/schema.generated.d.ts +0 -1150
- package/dist/modules/invoicing/gql/schema.generated.js +0 -75
- package/dist/modules/invoicing/gql/schema.js +0 -5
- package/dist/modules/invoicing/gql/types.d.ts +0 -3
- package/dist/modules/invoicing/gql/types.js +0 -8
- package/dist/modules/invoicing/grpc/index.d.ts +0 -7
- package/dist/modules/invoicing/grpc/index.js +0 -8
- package/dist/modules/invoicing/index.d.ts +0 -2
- package/dist/modules/invoicing/index.js +0 -26
- package/dist/modules/invoicing/interfaces.d.ts +0 -16
- package/dist/modules/invoicing/interfaces.js +0 -1
- package/dist/modules/master_data/gql/federation.d.ts +0 -2
- package/dist/modules/master_data/gql/federation.js +0 -13
- package/dist/modules/master_data/gql/schema.d.ts +0 -2
- package/dist/modules/master_data/gql/schema.generated.d.ts +0 -2520
- package/dist/modules/master_data/gql/schema.generated.js +0 -114
- package/dist/modules/master_data/gql/schema.js +0 -5
- package/dist/modules/master_data/gql/types.d.ts +0 -3
- package/dist/modules/master_data/gql/types.js +0 -32
- package/dist/modules/master_data/grpc/index.d.ts +0 -30
- package/dist/modules/master_data/grpc/index.js +0 -32
- package/dist/modules/master_data/index.d.ts +0 -2
- package/dist/modules/master_data/index.js +0 -26
- package/dist/modules/master_data/interfaces.d.ts +0 -16
- package/dist/modules/master_data/interfaces.js +0 -1
- package/dist/modules/notification/gql/federation.d.ts +0 -2
- package/dist/modules/notification/gql/federation.js +0 -13
- package/dist/modules/notification/gql/schema.d.ts +0 -2
- package/dist/modules/notification/gql/schema.generated.d.ts +0 -632
- package/dist/modules/notification/gql/schema.generated.js +0 -68
- package/dist/modules/notification/gql/schema.js +0 -5
- package/dist/modules/notification/gql/types.d.ts +0 -3
- package/dist/modules/notification/gql/types.js +0 -8
- package/dist/modules/notification/grpc/index.d.ts +0 -7
- package/dist/modules/notification/grpc/index.js +0 -8
- package/dist/modules/notification/index.d.ts +0 -2
- package/dist/modules/notification/index.js +0 -26
- package/dist/modules/notification/interfaces.d.ts +0 -16
- package/dist/modules/notification/interfaces.js +0 -1
- package/dist/modules/ordering/gql/federation.d.ts +0 -2
- package/dist/modules/ordering/gql/federation.js +0 -13
- package/dist/modules/ordering/gql/schema.d.ts +0 -2
- package/dist/modules/ordering/gql/schema.generated.d.ts +0 -1407
- package/dist/modules/ordering/gql/schema.generated.js +0 -91
- package/dist/modules/ordering/gql/schema.js +0 -5
- package/dist/modules/ordering/gql/types.d.ts +0 -3
- package/dist/modules/ordering/gql/types.js +0 -8
- package/dist/modules/ordering/grpc/index.d.ts +0 -7
- package/dist/modules/ordering/grpc/index.js +0 -8
- package/dist/modules/ordering/index.d.ts +0 -2
- package/dist/modules/ordering/index.js +0 -26
- package/dist/modules/ordering/interfaces.d.ts +0 -16
- package/dist/modules/ordering/interfaces.js +0 -1
- package/dist/modules/ostorage/gql/federation.d.ts +0 -2
- package/dist/modules/ostorage/gql/federation.js +0 -13
- package/dist/modules/ostorage/gql/schema.d.ts +0 -2
- package/dist/modules/ostorage/gql/schema.generated.d.ts +0 -846
- package/dist/modules/ostorage/gql/schema.generated.js +0 -31
- package/dist/modules/ostorage/gql/schema.js +0 -5
- package/dist/modules/ostorage/gql/types.d.ts +0 -3
- package/dist/modules/ostorage/gql/types.js +0 -8
- package/dist/modules/ostorage/grpc/index.d.ts +0 -7
- package/dist/modules/ostorage/grpc/index.js +0 -8
- package/dist/modules/ostorage/index.d.ts +0 -2
- package/dist/modules/ostorage/index.js +0 -46
- package/dist/modules/ostorage/interfaces.d.ts +0 -16
- package/dist/modules/ostorage/interfaces.js +0 -1
- package/dist/modules/ostorage/objectDownloadReqHandler.d.ts +0 -1
- package/dist/modules/ostorage/objectDownloadReqHandler.js +0 -134
- package/dist/modules/payment/gql/federation.d.ts +0 -2
- package/dist/modules/payment/gql/federation.js +0 -13
- package/dist/modules/payment/gql/schema.d.ts +0 -2
- package/dist/modules/payment/gql/schema.generated.d.ts +0 -647
- package/dist/modules/payment/gql/schema.generated.js +0 -156
- package/dist/modules/payment/gql/schema.js +0 -5
- package/dist/modules/payment/gql/types.d.ts +0 -3
- package/dist/modules/payment/gql/types.js +0 -8
- package/dist/modules/payment/grpc/index.d.ts +0 -7
- package/dist/modules/payment/grpc/index.js +0 -8
- package/dist/modules/payment/index.d.ts +0 -2
- package/dist/modules/payment/index.js +0 -26
- package/dist/modules/payment/interfaces.d.ts +0 -16
- package/dist/modules/payment/interfaces.js +0 -1
- package/dist/modules/scheduling/gql/federation.d.ts +0 -2
- package/dist/modules/scheduling/gql/federation.js +0 -13
- package/dist/modules/scheduling/gql/schema.d.ts +0 -2
- package/dist/modules/scheduling/gql/schema.generated.d.ts +0 -626
- package/dist/modules/scheduling/gql/schema.generated.js +0 -31
- package/dist/modules/scheduling/gql/schema.js +0 -5
- package/dist/modules/scheduling/gql/types.d.ts +0 -3
- package/dist/modules/scheduling/gql/types.js +0 -8
- package/dist/modules/scheduling/grpc/index.d.ts +0 -7
- package/dist/modules/scheduling/grpc/index.js +0 -8
- package/dist/modules/scheduling/index.d.ts +0 -2
- package/dist/modules/scheduling/index.js +0 -26
- package/dist/modules/scheduling/interfaces.d.ts +0 -16
- package/dist/modules/scheduling/interfaces.js +0 -1
- package/dist/utils.d.ts +0 -5
- package/dist/utils.js +0 -14
@@ -1,31 +0,0 @@
|
|
1
|
-
export var IoRestorecommerceFilterFilterOperation;
|
2
|
-
(function (IoRestorecommerceFilterFilterOperation) {
|
3
|
-
IoRestorecommerceFilterFilterOperation[IoRestorecommerceFilterFilterOperation["Eq"] = 0] = "Eq";
|
4
|
-
IoRestorecommerceFilterFilterOperation[IoRestorecommerceFilterFilterOperation["Lt"] = 1] = "Lt";
|
5
|
-
IoRestorecommerceFilterFilterOperation[IoRestorecommerceFilterFilterOperation["Lte"] = 2] = "Lte";
|
6
|
-
IoRestorecommerceFilterFilterOperation[IoRestorecommerceFilterFilterOperation["Gt"] = 3] = "Gt";
|
7
|
-
IoRestorecommerceFilterFilterOperation[IoRestorecommerceFilterFilterOperation["Gte"] = 4] = "Gte";
|
8
|
-
IoRestorecommerceFilterFilterOperation[IoRestorecommerceFilterFilterOperation["IsEmpty"] = 5] = "IsEmpty";
|
9
|
-
IoRestorecommerceFilterFilterOperation[IoRestorecommerceFilterFilterOperation["ILike"] = 6] = "ILike";
|
10
|
-
IoRestorecommerceFilterFilterOperation[IoRestorecommerceFilterFilterOperation["In"] = 7] = "In";
|
11
|
-
IoRestorecommerceFilterFilterOperation[IoRestorecommerceFilterFilterOperation["Neq"] = 8] = "Neq";
|
12
|
-
})(IoRestorecommerceFilterFilterOperation || (IoRestorecommerceFilterFilterOperation = {}));
|
13
|
-
export var IoRestorecommerceFilterFilterValueType;
|
14
|
-
(function (IoRestorecommerceFilterFilterValueType) {
|
15
|
-
IoRestorecommerceFilterFilterValueType[IoRestorecommerceFilterFilterValueType["String"] = 0] = "String";
|
16
|
-
IoRestorecommerceFilterFilterValueType[IoRestorecommerceFilterFilterValueType["Number"] = 1] = "Number";
|
17
|
-
IoRestorecommerceFilterFilterValueType[IoRestorecommerceFilterFilterValueType["Boolean"] = 2] = "Boolean";
|
18
|
-
IoRestorecommerceFilterFilterValueType[IoRestorecommerceFilterFilterValueType["Date"] = 3] = "Date";
|
19
|
-
IoRestorecommerceFilterFilterValueType[IoRestorecommerceFilterFilterValueType["Array"] = 4] = "Array";
|
20
|
-
})(IoRestorecommerceFilterFilterValueType || (IoRestorecommerceFilterFilterValueType = {}));
|
21
|
-
export var IoRestorecommerceFilterFilterOpOperator;
|
22
|
-
(function (IoRestorecommerceFilterFilterOpOperator) {
|
23
|
-
IoRestorecommerceFilterFilterOpOperator[IoRestorecommerceFilterFilterOpOperator["And"] = 0] = "And";
|
24
|
-
IoRestorecommerceFilterFilterOpOperator[IoRestorecommerceFilterFilterOpOperator["Or"] = 1] = "Or";
|
25
|
-
})(IoRestorecommerceFilterFilterOpOperator || (IoRestorecommerceFilterFilterOpOperator = {}));
|
26
|
-
export var SubscriptionAction;
|
27
|
-
(function (SubscriptionAction) {
|
28
|
-
SubscriptionAction["Created"] = "CREATED";
|
29
|
-
SubscriptionAction["Updated"] = "UPDATED";
|
30
|
-
SubscriptionAction["Deleted"] = "DELETED";
|
31
|
-
})(SubscriptionAction || (SubscriptionAction = {}));
|
@@ -1,5 +0,0 @@
|
|
1
|
-
import { registerTypings, subServices } from './types.js';
|
2
|
-
import { generateSubServiceSchemas, } from '../../../gql/protos/index.js';
|
3
|
-
import { namespace } from '../interfaces.js';
|
4
|
-
registerTypings();
|
5
|
-
export const schema = (cfg) => generateSubServiceSchemas(subServices, cfg, namespace, 'Ostorage');
|
@@ -1,8 +0,0 @@
|
|
1
|
-
import { protoMetadata as metaPackageIoRestorecommerceOstorage } from '@restorecommerce/rc-grpc-clients/dist/generated/io/restorecommerce/ostorage.js';
|
2
|
-
import { registerPackagesRecursive } from '../../../gql/protos/index.js';
|
3
|
-
export const subServices = [
|
4
|
-
metaPackageIoRestorecommerceOstorage
|
5
|
-
];
|
6
|
-
export const registerTypings = () => {
|
7
|
-
registerPackagesRecursive(...subServices);
|
8
|
-
};
|
@@ -1,7 +0,0 @@
|
|
1
|
-
import { RestoreCommerceGrpcClient } from '@restorecommerce/rc-grpc-clients';
|
2
|
-
import { type ObjectServiceClient } from '@restorecommerce/rc-grpc-clients/dist/generated/io/restorecommerce/ostorage.js';
|
3
|
-
import { type GrpcClientConfig } from '@restorecommerce/grpc-client';
|
4
|
-
export declare class OstorageSrvGrpcClient extends RestoreCommerceGrpcClient {
|
5
|
-
readonly ostorage: ObjectServiceClient;
|
6
|
-
constructor(address: string, cfg: GrpcClientConfig);
|
7
|
-
}
|
@@ -1,8 +0,0 @@
|
|
1
|
-
import { RestoreCommerceGrpcClient } from '@restorecommerce/rc-grpc-clients';
|
2
|
-
import { ObjectServiceDefinition } from '@restorecommerce/rc-grpc-clients/dist/generated/io/restorecommerce/ostorage.js';
|
3
|
-
export class OstorageSrvGrpcClient extends RestoreCommerceGrpcClient {
|
4
|
-
constructor(address, cfg) {
|
5
|
-
super(address, cfg);
|
6
|
-
this.ostorage = this.createClient(cfg, ObjectServiceDefinition, this.channel);
|
7
|
-
}
|
8
|
-
}
|
@@ -1,46 +0,0 @@
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
8
|
-
});
|
9
|
-
};
|
10
|
-
import { FederatedOstorageSchema } from './gql/federation.js';
|
11
|
-
import { namespace } from "./interfaces.js";
|
12
|
-
import { OstorageSrvGrpcClient } from "./grpc/index.js";
|
13
|
-
import { createFacadeModuleFactory } from "../../utils.js";
|
14
|
-
import { handleGetFile } from './objectDownloadReqHandler.js';
|
15
|
-
import Router from 'koa-router';
|
16
|
-
import bodyParser from 'koa-bodyparser';
|
17
|
-
export const ostorageModule = createFacadeModuleFactory(namespace, (facade, config) => {
|
18
|
-
const ostorage = {
|
19
|
-
client: new OstorageSrvGrpcClient(config.config.client.address, Object.assign(Object.assign({}, config.config.client), { logger: facade.logger }))
|
20
|
-
};
|
21
|
-
facade.addApolloService({
|
22
|
-
name: namespace,
|
23
|
-
schema: FederatedOstorageSchema(config.config)
|
24
|
-
});
|
25
|
-
const router = new Router();
|
26
|
-
router.use(bodyParser());
|
27
|
-
router.get(/^\/storage\/([^/]+)\/(.+)/, (ctx, next) => __awaiter(void 0, void 0, void 0, function* () {
|
28
|
-
const authToken = ctx.request.header['authorization'];
|
29
|
-
let token;
|
30
|
-
if (authToken && authToken.startsWith('Bearer ')) {
|
31
|
-
token = authToken.split(' ')[1];
|
32
|
-
ctx.subject = { token };
|
33
|
-
ctx.subject = { token };
|
34
|
-
}
|
35
|
-
const bucket = ctx.params[0];
|
36
|
-
const key = ctx.params[1];
|
37
|
-
yield handleGetFile(bucket, key, ctx, ostorage.client);
|
38
|
-
return ctx.response;
|
39
|
-
}));
|
40
|
-
facade.koa.use(router.routes());
|
41
|
-
facade.koa.use(router.allowedMethods());
|
42
|
-
facade.koa.use((ctx, next) => __awaiter(void 0, void 0, void 0, function* () {
|
43
|
-
ctx.ostorage = ostorage;
|
44
|
-
yield next();
|
45
|
-
}));
|
46
|
-
});
|
@@ -1,16 +0,0 @@
|
|
1
|
-
import { type OstorageSrvGrpcClient } from './grpc/index.js';
|
2
|
-
import { type FacadeModule, type FacadeContext } from '../../interfaces.js';
|
3
|
-
import { type ServiceConfig } from '../../gql/protos/index.js';
|
4
|
-
export interface OstorageServiceConfig extends ServiceConfig {
|
5
|
-
root: boolean;
|
6
|
-
}
|
7
|
-
export interface OstorageConfig {
|
8
|
-
config: OstorageServiceConfig;
|
9
|
-
}
|
10
|
-
export interface OstorageContext extends FacadeContext {
|
11
|
-
ostorage: {
|
12
|
-
client: OstorageSrvGrpcClient;
|
13
|
-
};
|
14
|
-
}
|
15
|
-
export type OstorageModule = FacadeModule<OstorageContext>;
|
16
|
-
export declare const namespace = "ostorage";
|
@@ -1 +0,0 @@
|
|
1
|
-
export const namespace = 'ostorage';
|
@@ -1 +0,0 @@
|
|
1
|
-
export declare const handleGetFile: (bucket: string, key: string, ctx: any, client: any) => Promise<any>;
|
@@ -1,134 +0,0 @@
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
8
|
-
});
|
9
|
-
};
|
10
|
-
var __asyncValues = (this && this.__asyncValues) || function (o) {
|
11
|
-
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
12
|
-
var m = o[Symbol.asyncIterator], i;
|
13
|
-
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
|
14
|
-
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
|
15
|
-
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
16
|
-
};
|
17
|
-
import { createServiceConfig } from '@restorecommerce/service-config';
|
18
|
-
import { createLogger } from '@restorecommerce/logger';
|
19
|
-
import { isNumber } from 'util';
|
20
|
-
const cfg = createServiceConfig(process.cwd());
|
21
|
-
const loggerCfg = cfg.get('logger');
|
22
|
-
let logger = createLogger(loggerCfg);
|
23
|
-
const dlQueryParamExist = (ctx) => {
|
24
|
-
// check if URL contains query parameter 'dl'
|
25
|
-
let filePath, hostName;
|
26
|
-
if (ctx && ctx.request && ctx.request.url) {
|
27
|
-
filePath = ctx.request.url;
|
28
|
-
}
|
29
|
-
if (ctx && ctx.request && ctx.request.header
|
30
|
-
&& ctx.request.header.host) {
|
31
|
-
hostName = ctx.request.header.host;
|
32
|
-
}
|
33
|
-
const completeUrl = 'http://' + hostName + filePath;
|
34
|
-
const reqURL = new URL(completeUrl);
|
35
|
-
return reqURL.searchParams.has('dl');
|
36
|
-
};
|
37
|
-
export const handleGetFile = (bucket, key, ctx, client) => __awaiter(void 0, void 0, void 0, function* () {
|
38
|
-
var _a, e_1, _b, _c;
|
39
|
-
var _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
|
40
|
-
try {
|
41
|
-
let download = false;
|
42
|
-
download = dlQueryParamExist(ctx);
|
43
|
-
// get the target orgKey from the ostorage meta and set it before making ACS request
|
44
|
-
let req = { bucket, key, download };
|
45
|
-
logger.debug('Received download request', { bucket, key });
|
46
|
-
const ostorageSrv = client['ostorage'];
|
47
|
-
req = { bucket, key, download, subject: ctx.subject };
|
48
|
-
let grpcGetStream = yield ostorageSrv.get(req);
|
49
|
-
let statusCode, statusMessage, objectOptions, objectLastModified, objectBuffer = [], objectKey;
|
50
|
-
try {
|
51
|
-
for (var _t = true, grpcGetStream_1 = __asyncValues(grpcGetStream), grpcGetStream_1_1; grpcGetStream_1_1 = yield grpcGetStream_1.next(), _a = grpcGetStream_1_1.done, !_a; _t = true) {
|
52
|
-
_c = grpcGetStream_1_1.value;
|
53
|
-
_t = false;
|
54
|
-
const data = _c;
|
55
|
-
if (!statusCode) {
|
56
|
-
statusCode = (_e = (_d = data === null || data === void 0 ? void 0 : data.response) === null || _d === void 0 ? void 0 : _d.status) === null || _e === void 0 ? void 0 : _e.code;
|
57
|
-
}
|
58
|
-
if (!statusMessage) {
|
59
|
-
statusMessage = (_g = (_f = data === null || data === void 0 ? void 0 : data.response) === null || _f === void 0 ? void 0 : _f.status) === null || _g === void 0 ? void 0 : _g.message;
|
60
|
-
}
|
61
|
-
if (!objectOptions) {
|
62
|
-
objectOptions = (_j = (_h = data === null || data === void 0 ? void 0 : data.response) === null || _h === void 0 ? void 0 : _h.payload) === null || _j === void 0 ? void 0 : _j.options;
|
63
|
-
}
|
64
|
-
if (!objectLastModified) {
|
65
|
-
objectLastModified = (_l = (_k = data === null || data === void 0 ? void 0 : data.payload) === null || _k === void 0 ? void 0 : _k.meta) === null || _l === void 0 ? void 0 : _l.modified;
|
66
|
-
}
|
67
|
-
if ((_o = (_m = data === null || data === void 0 ? void 0 : data.response) === null || _m === void 0 ? void 0 : _m.payload) === null || _o === void 0 ? void 0 : _o.object) {
|
68
|
-
objectBuffer.push((_q = (_p = data === null || data === void 0 ? void 0 : data.response) === null || _p === void 0 ? void 0 : _p.payload) === null || _q === void 0 ? void 0 : _q.object);
|
69
|
-
}
|
70
|
-
if (!objectKey) {
|
71
|
-
objectKey = (_s = (_r = data === null || data === void 0 ? void 0 : data.response) === null || _r === void 0 ? void 0 : _r.payload) === null || _s === void 0 ? void 0 : _s.key;
|
72
|
-
}
|
73
|
-
}
|
74
|
-
}
|
75
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
76
|
-
finally {
|
77
|
-
try {
|
78
|
-
if (!_t && !_a && (_b = grpcGetStream_1.return)) yield _b.call(grpcGetStream_1);
|
79
|
-
}
|
80
|
-
finally { if (e_1) throw e_1.error; }
|
81
|
-
}
|
82
|
-
const setResponseHeaders = () => {
|
83
|
-
if (objectLastModified) {
|
84
|
-
ctx.response.set('Last-Modified', new Date(objectLastModified));
|
85
|
-
}
|
86
|
-
if (!objectOptions) {
|
87
|
-
logger.debug(`Object ${key} from bucket ${bucket} does not have options`);
|
88
|
-
}
|
89
|
-
else {
|
90
|
-
// set response headers on ctx response received from ostorage-srv
|
91
|
-
let { encoding, content_type, content_language, content_disposition, length, version, md5 } = objectOptions;
|
92
|
-
if (encoding) {
|
93
|
-
ctx.response.set('Content-Encoding', encoding);
|
94
|
-
}
|
95
|
-
if (content_type) {
|
96
|
-
ctx.response.set('Content-Type', content_type);
|
97
|
-
}
|
98
|
-
if (content_language) {
|
99
|
-
ctx.response.set('Content-Language', content_language);
|
100
|
-
}
|
101
|
-
if (content_disposition) {
|
102
|
-
ctx.response.set('Content-Disposition', `${content_disposition};filename=${objectKey}`);
|
103
|
-
}
|
104
|
-
if (length) {
|
105
|
-
ctx.response.set('Content-Length', length);
|
106
|
-
}
|
107
|
-
if (version) {
|
108
|
-
ctx.response.set('ETag', version);
|
109
|
-
}
|
110
|
-
if (md5) {
|
111
|
-
ctx.response.set('Content-MD5', md5);
|
112
|
-
}
|
113
|
-
}
|
114
|
-
};
|
115
|
-
// add status
|
116
|
-
if (statusCode != 200) {
|
117
|
-
logger.error('Error downloading file', { code: statusCode, message: statusMessage });
|
118
|
-
}
|
119
|
-
else if (statusCode === 200) {
|
120
|
-
// assigning the grpcStream object through transform to Koa ctx response
|
121
|
-
setResponseHeaders();
|
122
|
-
logger.info(`Successfully downloaded file ${key}`);
|
123
|
-
}
|
124
|
-
ctx.response.body = Buffer.concat(objectBuffer);
|
125
|
-
ctx.response.status = statusCode ? statusCode : 500;
|
126
|
-
return ctx.response;
|
127
|
-
}
|
128
|
-
catch (error) {
|
129
|
-
logger.error(`Error downloading file ${key}`, { code: error.code, message: error.message, stack: error.stack });
|
130
|
-
ctx.response.body = error.message;
|
131
|
-
ctx.response.status = isNumber(error.code) ? error.code : 500;
|
132
|
-
return ctx.response;
|
133
|
-
}
|
134
|
-
});
|
@@ -1,13 +0,0 @@
|
|
1
|
-
import { gql } from 'graphql-tag';
|
2
|
-
import { buildSubgraphSchema } from '@apollo/federation';
|
3
|
-
import { schema } from './schema.js';
|
4
|
-
import { generateSubServiceResolvers } from '../../../gql/protos/index.js';
|
5
|
-
import { namespace } from '../interfaces.js';
|
6
|
-
import { subServices } from './types.js';
|
7
|
-
import { printSchema } from 'graphql';
|
8
|
-
// TODO There is currently no way of building a federated schema from GraphQLSchema Object
|
9
|
-
// See https://github.com/apollographql/apollo-server/pull/4310
|
10
|
-
export const FederatedPaymentSchema = (cfg) => buildSubgraphSchema({
|
11
|
-
typeDefs: gql(printSchema(schema(cfg))),
|
12
|
-
resolvers: generateSubServiceResolvers(subServices, cfg, namespace)
|
13
|
-
});
|