@stigg/node-server-sdk 0.18.1
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/CHANGELOG.md +53 -0
- package/README.md +3 -0
- package/dist/api/configurationApi.d.ts +8 -0
- package/dist/api/configurationApi.js +19 -0
- package/dist/api/entitlements/entitlementsApi.d.ts +16 -0
- package/dist/api/entitlements/entitlementsApi.js +70 -0
- package/dist/api/entitlements/entitlementsGql.d.ts +4 -0
- package/dist/api/entitlements/entitlementsGql.js +57 -0
- package/dist/api/generated/types.d.ts +2413 -0
- package/dist/api/generated/types.js +379 -0
- package/dist/api/initApolloClient.d.ts +12 -0
- package/dist/api/initApolloClient.js +75 -0
- package/dist/api/managementApi.d.ts +12 -0
- package/dist/api/managementApi.js +80 -0
- package/dist/client.d.ts +61 -0
- package/dist/client.js +166 -0
- package/dist/configuration.d.ts +18 -0
- package/dist/configuration.js +47 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.js +19 -0
- package/dist/models.d.ts +107 -0
- package/dist/models.js +27 -0
- package/dist/services/cache/cacheService.d.ts +9 -0
- package/dist/services/cache/cacheService.js +3 -0
- package/dist/services/cache/cachedEntitlement.d.ts +18 -0
- package/dist/services/cache/cachedEntitlement.js +10 -0
- package/dist/services/cache/inMemoryCacheService.d.ts +13 -0
- package/dist/services/cache/inMemoryCacheService.js +33 -0
- package/dist/services/entitlementDecisionService.d.ts +9 -0
- package/dist/services/entitlementDecisionService.js +43 -0
- package/dist/services/entitlementsService.d.ts +22 -0
- package/dist/services/entitlementsService.js +80 -0
- package/dist/services/loggerService.d.ts +14 -0
- package/dist/services/loggerService.js +32 -0
- package/dist/utils/ModelMapper.d.ts +13 -0
- package/dist/utils/ModelMapper.js +109 -0
- package/package.json +80 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
## [0.18.1](https://github.com/stiggio/node-server-sdk/compare/0.18.0...0.18.1) (2022-03-24)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* better initialization func ([d8fb398](https://github.com/stiggio/node-server-sdk/commit/d8fb398edd3135df111dd91d5a2b03967996f7ca))
|
|
7
|
+
* use prod as default, nicer wssUri building ([9c6b450](https://github.com/stiggio/node-server-sdk/commit/9c6b450d40c5a93ec588639942871f7920a1bea2))
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
# [0.18.0](https://github.com/stiggio/node-server-sdk/compare/0.17.0...0.18.0) (2022-03-14)
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
* added logger service ([9e48cb5](https://github.com/stiggio/node-server-sdk/commit/9e48cb5c6516e018efe4fdda83204085213871ac))
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
# [0.17.0](https://github.com/stiggio/node-server-sdk/compare/0.16.1...0.17.0) (2022-03-14)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
### Features
|
|
24
|
+
|
|
25
|
+
* add trials support on subscription creation ([0d53eb6](https://github.com/stiggio/node-server-sdk/commit/0d53eb66d6cb34c747d062da0926ed44616a4dd7))
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
## [0.16.1](https://github.com/stiggio/node-server-sdk/compare/0.16.0...0.16.1) (2022-02-23)
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
### Bug Fixes
|
|
33
|
+
|
|
34
|
+
* add billing period parameter to stripe checkout ([9a5b02d](https://github.com/stiggio/node-server-sdk/commit/9a5b02d9757585bc4940ff7b845fb8bc53b4e48f))
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
# [0.16.0](https://github.com/stiggio/node-server-sdk/compare/0.15.2...0.16.0) (2022-02-23)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
### Bug Fixes
|
|
42
|
+
|
|
43
|
+
* billing period type ([ccc25dd](https://github.com/stiggio/node-server-sdk/commit/ccc25dd10f1dc9027a064464fead5fb1d335a87c))
|
|
44
|
+
* import path ([e155a94](https://github.com/stiggio/node-server-sdk/commit/e155a941c036d73a9b9010e6f55847286abd8b8b))
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
### Features
|
|
48
|
+
|
|
49
|
+
* add billing period to create subscription ([47fc464](https://github.com/stiggio/node-server-sdk/commit/47fc464f320b92d311ad85ae4b91f4bd7da93c48))
|
|
50
|
+
* add prict unit amount to create subscription ([a8525d5](https://github.com/stiggio/node-server-sdk/commit/a8525d5019540baf73ec04021e4b23ca6600b8bc))
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
|
package/README.md
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ApolloClient, NormalizedCacheObject } from '@apollo/client/core';
|
|
2
|
+
import { GetEnvironmentQuery } from './generated/types';
|
|
3
|
+
declare class ConfigurationApi {
|
|
4
|
+
private readonly client;
|
|
5
|
+
constructor(client: ApolloClient<NormalizedCacheObject>);
|
|
6
|
+
getEnvironment(): Promise<import("@apollo/client/core").ApolloQueryResult<GetEnvironmentQuery>>;
|
|
7
|
+
}
|
|
8
|
+
export default ConfigurationApi;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const core_1 = require("@apollo/client/core");
|
|
4
|
+
class ConfigurationApi {
|
|
5
|
+
constructor(client) {
|
|
6
|
+
this.client = client;
|
|
7
|
+
}
|
|
8
|
+
async getEnvironment() {
|
|
9
|
+
return await this.client.query({
|
|
10
|
+
query: (0, core_1.gql) `
|
|
11
|
+
query GetEnvironment {
|
|
12
|
+
currentEnvironment
|
|
13
|
+
}
|
|
14
|
+
`,
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.default = ConfigurationApi;
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbkFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvY29uZmlndXJhdGlvbkFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDhDQUErRTtBQUcvRSxNQUFNLGdCQUFnQjtJQUNwQixZQUE2QixNQUEyQztRQUEzQyxXQUFNLEdBQU4sTUFBTSxDQUFxQztJQUFHLENBQUM7SUFFNUUsS0FBSyxDQUFDLGNBQWM7UUFDbEIsT0FBTyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFvRDtZQUNoRixLQUFLLEVBQUUsSUFBQSxVQUFHLEVBQUE7Ozs7T0FJVDtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQUVELGtCQUFlLGdCQUFnQixDQUFDIn0=
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ApolloClient, NormalizedCacheObject, FetchResult } from '@apollo/client/core';
|
|
2
|
+
import { CreateUsageMeasurementMutation, EntitlementsUpdatedSubscription, UsageUpdatedSubscription } from '../generated/types';
|
|
3
|
+
import { CreateUsageMeasurement, FetchEntitlement, FetchEntitlements } from '../../models';
|
|
4
|
+
declare class EntitlementsApi {
|
|
5
|
+
private readonly client;
|
|
6
|
+
constructor(client: ApolloClient<NormalizedCacheObject>);
|
|
7
|
+
getEntitlement(query: FetchEntitlement): Promise<{
|
|
8
|
+
__typename?: "Entitlement" | undefined;
|
|
9
|
+
} & import("../generated/types").EntitlementFragment>;
|
|
10
|
+
getEntitlements(query: FetchEntitlements): Promise<({
|
|
11
|
+
__typename?: "Entitlement" | undefined;
|
|
12
|
+
} & import("../generated/types").EntitlementFragment)[]>;
|
|
13
|
+
createUsageMeasurement(data: CreateUsageMeasurement): Promise<FetchResult<CreateUsageMeasurementMutation, Record<string, any>, Record<string, any>>>;
|
|
14
|
+
subscribeEntitlementsChanges(onEntitlementUpdated: (value: FetchResult<EntitlementsUpdatedSubscription>) => void, onUsageUpdated: (data: FetchResult<UsageUpdatedSubscription>) => void): void;
|
|
15
|
+
}
|
|
16
|
+
export default EntitlementsApi;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const core_1 = require("@apollo/client/core");
|
|
4
|
+
const entitlementsGql_1 = require("./entitlementsGql");
|
|
5
|
+
class EntitlementsApi {
|
|
6
|
+
constructor(client) {
|
|
7
|
+
this.client = client;
|
|
8
|
+
}
|
|
9
|
+
async getEntitlement(query) {
|
|
10
|
+
const { data: { entitlement }, } = await this.client.query({
|
|
11
|
+
query: (0, core_1.gql) `
|
|
12
|
+
query Entitlement($query: FetchEntitlementQuery!) {
|
|
13
|
+
entitlement(query: $query) {
|
|
14
|
+
...EntitlementFragment
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
${entitlementsGql_1.ENTITLEMENT_FRAGMENT}
|
|
18
|
+
`,
|
|
19
|
+
variables: { query },
|
|
20
|
+
fetchPolicy: 'network-only',
|
|
21
|
+
});
|
|
22
|
+
return entitlement;
|
|
23
|
+
}
|
|
24
|
+
async getEntitlements(query) {
|
|
25
|
+
const { data: { cachedEntitlements: entitlements }, } = await this.client.query({
|
|
26
|
+
query: (0, core_1.gql) `
|
|
27
|
+
query CachedEntitlements($query: FetchEntitlementsQuery!) {
|
|
28
|
+
cachedEntitlements(query: $query) {
|
|
29
|
+
...EntitlementFragment
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
${entitlementsGql_1.ENTITLEMENT_FRAGMENT}
|
|
33
|
+
`,
|
|
34
|
+
variables: { query },
|
|
35
|
+
fetchPolicy: 'network-only',
|
|
36
|
+
});
|
|
37
|
+
return entitlements;
|
|
38
|
+
}
|
|
39
|
+
async createUsageMeasurement(data) {
|
|
40
|
+
return this.client.mutate({
|
|
41
|
+
mutation: (0, core_1.gql) `
|
|
42
|
+
mutation CreateUsageMeasurement($usageMeasurement: UsageMeasurementCreateInput!) {
|
|
43
|
+
createUsageMeasurement(usageMeasurement: $usageMeasurement) {
|
|
44
|
+
id
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
`,
|
|
48
|
+
variables: { usageMeasurement: data },
|
|
49
|
+
fetchPolicy: 'network-only',
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
subscribeEntitlementsChanges(onEntitlementUpdated, onUsageUpdated) {
|
|
53
|
+
this.client
|
|
54
|
+
.subscribe({
|
|
55
|
+
query: entitlementsGql_1.ENTITLEMENTS_UPDATED,
|
|
56
|
+
})
|
|
57
|
+
.subscribe((value) => {
|
|
58
|
+
onEntitlementUpdated(value);
|
|
59
|
+
});
|
|
60
|
+
this.client
|
|
61
|
+
.subscribe({
|
|
62
|
+
query: entitlementsGql_1.USAGE_UPDATED,
|
|
63
|
+
})
|
|
64
|
+
.subscribe((data) => {
|
|
65
|
+
onUsageUpdated(data);
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
exports.default = EntitlementsApi;
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXRsZW1lbnRzQXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS9lbnRpdGxlbWVudHMvZW50aXRsZW1lbnRzQXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsOENBQTRGO0FBYzVGLHVEQUE4RjtBQUU5RixNQUFNLGVBQWU7SUFDbkIsWUFBNkIsTUFBMkM7UUFBM0MsV0FBTSxHQUFOLE1BQU0sQ0FBcUM7SUFBRyxDQUFDO0lBRTVFLEtBQUssQ0FBQyxjQUFjLENBQUMsS0FBdUI7UUFDMUMsTUFBTSxFQUNKLElBQUksRUFBRSxFQUFFLFdBQVcsRUFBRSxHQUN0QixHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQThDO1lBQ3ZFLEtBQUssRUFBRSxJQUFBLFVBQUcsRUFBQTs7Ozs7O1VBTU4sc0NBQW9CO09BQ3ZCO1lBQ0QsU0FBUyxFQUFFLEVBQUUsS0FBSyxFQUFFO1lBQ3BCLFdBQVcsRUFBRSxjQUFjO1NBQzVCLENBQUMsQ0FBQztRQUVILE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxLQUFLLENBQUMsZUFBZSxDQUFDLEtBQXdCO1FBQzVDLE1BQU0sRUFDSixJQUFJLEVBQUUsRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsR0FDM0MsR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUE0RDtZQUNyRixLQUFLLEVBQUUsSUFBQSxVQUFHLEVBQUE7Ozs7OztVQU1OLHNDQUFvQjtPQUN2QjtZQUNELFNBQVMsRUFBRSxFQUFFLEtBQUssRUFBRTtZQUNwQixXQUFXLEVBQUUsY0FBYztTQUM1QixDQUFDLENBQUM7UUFFSCxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0lBRUQsS0FBSyxDQUFDLHNCQUFzQixDQUFDLElBQTRCO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQTBFO1lBQ2pHLFFBQVEsRUFBRSxJQUFBLFVBQUcsRUFBQTs7Ozs7O09BTVo7WUFDRCxTQUFTLEVBQUUsRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUU7WUFDckMsV0FBVyxFQUFFLGNBQWM7U0FDNUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELDRCQUE0QixDQUMxQixvQkFBbUYsRUFDbkYsY0FBcUU7UUFFckUsSUFBSSxDQUFDLE1BQU07YUFDUixTQUFTLENBQTRFO1lBQ3BGLEtBQUssRUFBRSxzQ0FBb0I7U0FDNUIsQ0FBQzthQUNELFNBQVMsQ0FBQyxDQUFDLEtBQW1ELEVBQUUsRUFBRTtZQUNqRSxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QixDQUFDLENBQUMsQ0FBQztRQUVMLElBQUksQ0FBQyxNQUFNO2FBQ1IsU0FBUyxDQUE4RDtZQUN0RSxLQUFLLEVBQUUsK0JBQWE7U0FDckIsQ0FBQzthQUNELFNBQVMsQ0FBQyxDQUFDLElBQTJDLEVBQUUsRUFBRTtZQUN6RCxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0NBQ0Y7QUFFRCxrQkFBZSxlQUFlLENBQUMifQ==
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const FEATURE_FRAGMENT: import("graphql/language/ast").DocumentNode;
|
|
2
|
+
export declare const ENTITLEMENT_FRAGMENT: import("graphql/language/ast").DocumentNode;
|
|
3
|
+
export declare const ENTITLEMENTS_UPDATED: import("graphql/language/ast").DocumentNode;
|
|
4
|
+
export declare const USAGE_UPDATED: import("graphql/language/ast").DocumentNode;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.USAGE_UPDATED = exports.ENTITLEMENTS_UPDATED = exports.ENTITLEMENT_FRAGMENT = exports.FEATURE_FRAGMENT = void 0;
|
|
4
|
+
const core_1 = require("@apollo/client/core");
|
|
5
|
+
exports.FEATURE_FRAGMENT = (0, core_1.gql) `
|
|
6
|
+
fragment FeatureFragment on EntitlementFeature {
|
|
7
|
+
featureType
|
|
8
|
+
meterType
|
|
9
|
+
featureUnits
|
|
10
|
+
featureUnitsPlural
|
|
11
|
+
refId
|
|
12
|
+
}
|
|
13
|
+
`;
|
|
14
|
+
exports.ENTITLEMENT_FRAGMENT = (0, core_1.gql) `
|
|
15
|
+
fragment EntitlementFragment on Entitlement {
|
|
16
|
+
isGranted
|
|
17
|
+
accessDeniedReason
|
|
18
|
+
customerId
|
|
19
|
+
usageLimit
|
|
20
|
+
hasUnlimitedUsage
|
|
21
|
+
currentUsage
|
|
22
|
+
requestedUsage
|
|
23
|
+
nextResetDate
|
|
24
|
+
feature {
|
|
25
|
+
...FeatureFragment
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
${exports.FEATURE_FRAGMENT}
|
|
29
|
+
`;
|
|
30
|
+
exports.ENTITLEMENTS_UPDATED = (0, core_1.gql) `
|
|
31
|
+
subscription EntitlementsUpdated {
|
|
32
|
+
entitlementsUpdated {
|
|
33
|
+
customerId
|
|
34
|
+
entitlements {
|
|
35
|
+
...EntitlementFragment
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
${exports.ENTITLEMENT_FRAGMENT}
|
|
40
|
+
`;
|
|
41
|
+
exports.USAGE_UPDATED = (0, core_1.gql) `
|
|
42
|
+
subscription UsageUpdated {
|
|
43
|
+
usageUpdated {
|
|
44
|
+
usage {
|
|
45
|
+
customerId
|
|
46
|
+
featureId
|
|
47
|
+
currentUsage
|
|
48
|
+
nextResetDate
|
|
49
|
+
}
|
|
50
|
+
entitlement {
|
|
51
|
+
...EntitlementFragment
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
${exports.ENTITLEMENT_FRAGMENT}
|
|
56
|
+
`;
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXRsZW1lbnRzR3FsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS9lbnRpdGxlbWVudHMvZW50aXRsZW1lbnRzR3FsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDhDQUEwQztBQUU3QixRQUFBLGdCQUFnQixHQUFHLElBQUEsVUFBRyxFQUFBOzs7Ozs7OztDQVFsQyxDQUFDO0FBRVcsUUFBQSxvQkFBb0IsR0FBRyxJQUFBLFVBQUcsRUFBQTs7Ozs7Ozs7Ozs7Ozs7SUFjbkMsd0JBQWdCO0NBQ25CLENBQUM7QUFFVyxRQUFBLG9CQUFvQixHQUFHLElBQUEsVUFBRyxFQUFBOzs7Ozs7Ozs7SUFTbkMsNEJBQW9CO0NBQ3ZCLENBQUM7QUFFVyxRQUFBLGFBQWEsR0FBRyxJQUFBLFVBQUcsRUFBQTs7Ozs7Ozs7Ozs7Ozs7SUFjNUIsNEJBQW9CO0NBQ3ZCLENBQUMifQ==
|