@gomomento/sdk-core 1.12.8
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/src/auth/credential-provider.d.ts +83 -0
- package/dist/src/auth/credential-provider.js +82 -0
- package/dist/src/auth/index.d.ts +1 -0
- package/dist/src/auth/index.js +18 -0
- package/dist/src/config/logging/default-momento-logger.d.ts +24 -0
- package/dist/src/config/logging/default-momento-logger.js +69 -0
- package/dist/src/config/logging/index.d.ts +3 -0
- package/dist/src/config/logging/index.js +20 -0
- package/dist/src/config/logging/momento-logger.d.ts +10 -0
- package/dist/src/config/logging/momento-logger.js +3 -0
- package/dist/src/config/logging/noop-momento-logger.d.ts +11 -0
- package/dist/src/config/logging/noop-momento-logger.js +34 -0
- package/dist/src/config/transport/grpc-configuration.d.ts +41 -0
- package/dist/src/config/transport/grpc-configuration.js +3 -0
- package/dist/src/config/transport/index.d.ts +2 -0
- package/dist/src/config/transport/index.js +19 -0
- package/dist/src/config/transport/transport-strategy.d.ts +77 -0
- package/dist/src/config/transport/transport-strategy.js +60 -0
- package/dist/src/errors/error-utils.d.ts +2 -0
- package/dist/src/errors/error-utils.js +12 -0
- package/dist/src/errors/errors.d.ts +140 -0
- package/dist/src/errors/errors.js +229 -0
- package/dist/src/errors/index.d.ts +2 -0
- package/dist/src/errors/index.js +19 -0
- package/dist/src/index.d.ts +57 -0
- package/dist/src/index.js +137 -0
- package/dist/src/internal/clients/auth/AbstractAuthClient.d.ts +10 -0
- package/dist/src/internal/clients/auth/AbstractAuthClient.js +13 -0
- package/dist/src/internal/clients/auth/IAuthClient.d.ts +4 -0
- package/dist/src/internal/clients/auth/IAuthClient.js +3 -0
- package/dist/src/internal/clients/auth/index.d.ts +2 -0
- package/dist/src/internal/clients/auth/index.js +19 -0
- package/dist/src/internal/clients/cache/AbstractCacheClient.d.ts +638 -0
- package/dist/src/internal/clients/cache/AbstractCacheClient.js +870 -0
- package/dist/src/internal/clients/cache/ICacheClient.d.ts +45 -0
- package/dist/src/internal/clients/cache/ICacheClient.js +3 -0
- package/dist/src/internal/clients/cache/IControlClient.d.ts +7 -0
- package/dist/src/internal/clients/cache/IControlClient.js +3 -0
- package/dist/src/internal/clients/cache/IDataClient.d.ts +29 -0
- package/dist/src/internal/clients/cache/IDataClient.js +3 -0
- package/dist/src/internal/clients/cache/index.d.ts +4 -0
- package/dist/src/internal/clients/cache/index.js +21 -0
- package/dist/src/internal/clients/index.d.ts +3 -0
- package/dist/src/internal/clients/index.js +20 -0
- package/dist/src/internal/clients/ping/AbstractPingClient.d.ts +25 -0
- package/dist/src/internal/clients/ping/AbstractPingClient.js +29 -0
- package/dist/src/internal/clients/ping/IPingClient.d.ts +3 -0
- package/dist/src/internal/clients/ping/IPingClient.js +3 -0
- package/dist/src/internal/clients/ping/index.d.ts +2 -0
- package/dist/src/internal/clients/ping/index.js +19 -0
- package/dist/src/internal/subscription-state.d.ts +15 -0
- package/dist/src/internal/subscription-state.js +38 -0
- package/dist/src/internal/utils/auth.d.ts +25 -0
- package/dist/src/internal/utils/auth.js +50 -0
- package/dist/src/internal/utils/collections.d.ts +1 -0
- package/dist/src/internal/utils/collections.js +8 -0
- package/dist/src/internal/utils/display.d.ts +2 -0
- package/dist/src/internal/utils/display.js +30 -0
- package/dist/src/internal/utils/index.d.ts +7 -0
- package/dist/src/internal/utils/index.js +24 -0
- package/dist/src/internal/utils/object.d.ts +1 -0
- package/dist/src/internal/utils/object.js +8 -0
- package/dist/src/internal/utils/sleep.d.ts +1 -0
- package/dist/src/internal/utils/sleep.js +6 -0
- package/dist/src/internal/utils/string.d.ts +2 -0
- package/dist/src/internal/utils/string.js +17 -0
- package/dist/src/internal/utils/validators.d.ts +13 -0
- package/dist/src/internal/utils/validators.js +105 -0
- package/dist/src/internal/vendor/printf/README.md +31 -0
- package/dist/src/internal/vendor/printf/printf.d.ts +9 -0
- package/dist/src/internal/vendor/printf/printf.js +478 -0
- package/dist/src/messages/cache-info.d.ts +5 -0
- package/dist/src/messages/cache-info.js +13 -0
- package/dist/src/messages/responses/cache-delete.d.ts +61 -0
- package/dist/src/messages/responses/cache-delete.js +54 -0
- package/dist/src/messages/responses/cache-dictionary-fetch.d.ts +120 -0
- package/dist/src/messages/responses/cache-dictionary-fetch.js +162 -0
- package/dist/src/messages/responses/cache-dictionary-get-field.d.ts +123 -0
- package/dist/src/messages/responses/cache-dictionary-get-field.js +143 -0
- package/dist/src/messages/responses/cache-dictionary-get-fields.d.ts +122 -0
- package/dist/src/messages/responses/cache-dictionary-get-fields.js +173 -0
- package/dist/src/messages/responses/cache-dictionary-increment.d.ts +69 -0
- package/dist/src/messages/responses/cache-dictionary-increment.js +68 -0
- package/dist/src/messages/responses/cache-dictionary-remove-field.d.ts +61 -0
- package/dist/src/messages/responses/cache-dictionary-remove-field.js +54 -0
- package/dist/src/messages/responses/cache-dictionary-remove-fields.d.ts +61 -0
- package/dist/src/messages/responses/cache-dictionary-remove-fields.js +54 -0
- package/dist/src/messages/responses/cache-dictionary-set-field.d.ts +61 -0
- package/dist/src/messages/responses/cache-dictionary-set-field.js +54 -0
- package/dist/src/messages/responses/cache-dictionary-set-fields.d.ts +61 -0
- package/dist/src/messages/responses/cache-dictionary-set-fields.js +54 -0
- package/dist/src/messages/responses/cache-flush.d.ts +61 -0
- package/dist/src/messages/responses/cache-flush.js +54 -0
- package/dist/src/messages/responses/cache-get.d.ts +86 -0
- package/dist/src/messages/responses/cache-get.js +88 -0
- package/dist/src/messages/responses/cache-increment.d.ts +69 -0
- package/dist/src/messages/responses/cache-increment.js +68 -0
- package/dist/src/messages/responses/cache-list-concatenate-back.d.ts +69 -0
- package/dist/src/messages/responses/cache-list-concatenate-back.js +68 -0
- package/dist/src/messages/responses/cache-list-concatenate-front.d.ts +69 -0
- package/dist/src/messages/responses/cache-list-concatenate-front.js +68 -0
- package/dist/src/messages/responses/cache-list-fetch.d.ts +92 -0
- package/dist/src/messages/responses/cache-list-fetch.js +96 -0
- package/dist/src/messages/responses/cache-list-length.d.ts +84 -0
- package/dist/src/messages/responses/cache-list-length.js +78 -0
- package/dist/src/messages/responses/cache-list-pop-back.d.ts +86 -0
- package/dist/src/messages/responses/cache-list-pop-back.js +88 -0
- package/dist/src/messages/responses/cache-list-pop-front.d.ts +86 -0
- package/dist/src/messages/responses/cache-list-pop-front.js +88 -0
- package/dist/src/messages/responses/cache-list-push-back.d.ts +69 -0
- package/dist/src/messages/responses/cache-list-push-back.js +68 -0
- package/dist/src/messages/responses/cache-list-push-front.d.ts +69 -0
- package/dist/src/messages/responses/cache-list-push-front.js +68 -0
- package/dist/src/messages/responses/cache-list-remove-value.d.ts +61 -0
- package/dist/src/messages/responses/cache-list-remove-value.js +54 -0
- package/dist/src/messages/responses/cache-list-retain.d.ts +61 -0
- package/dist/src/messages/responses/cache-list-retain.js +54 -0
- package/dist/src/messages/responses/cache-set-add-element.d.ts +71 -0
- package/dist/src/messages/responses/cache-set-add-element.js +54 -0
- package/dist/src/messages/responses/cache-set-add-elements.d.ts +65 -0
- package/dist/src/messages/responses/cache-set-add-elements.js +61 -0
- package/dist/src/messages/responses/cache-set-fetch.d.ts +111 -0
- package/dist/src/messages/responses/cache-set-fetch.js +121 -0
- package/dist/src/messages/responses/cache-set-if-not-exists.d.ts +74 -0
- package/dist/src/messages/responses/cache-set-if-not-exists.js +63 -0
- package/dist/src/messages/responses/cache-set-remove-element.d.ts +61 -0
- package/dist/src/messages/responses/cache-set-remove-element.js +54 -0
- package/dist/src/messages/responses/cache-set-remove-elements.d.ts +65 -0
- package/dist/src/messages/responses/cache-set-remove-elements.js +61 -0
- package/dist/src/messages/responses/cache-set.d.ts +61 -0
- package/dist/src/messages/responses/cache-set.js +54 -0
- package/dist/src/messages/responses/cache-sorted-set-fetch.d.ts +107 -0
- package/dist/src/messages/responses/cache-sorted-set-fetch.js +124 -0
- package/dist/src/messages/responses/cache-sorted-set-get-rank.d.ts +81 -0
- package/dist/src/messages/responses/cache-sorted-set-get-rank.js +78 -0
- package/dist/src/messages/responses/cache-sorted-set-get-score.d.ts +118 -0
- package/dist/src/messages/responses/cache-sorted-set-get-score.js +131 -0
- package/dist/src/messages/responses/cache-sorted-set-get-scores.d.ts +109 -0
- package/dist/src/messages/responses/cache-sorted-set-get-scores.js +148 -0
- package/dist/src/messages/responses/cache-sorted-set-increment-score.d.ts +69 -0
- package/dist/src/messages/responses/cache-sorted-set-increment-score.js +68 -0
- package/dist/src/messages/responses/cache-sorted-set-put-element.d.ts +61 -0
- package/dist/src/messages/responses/cache-sorted-set-put-element.js +54 -0
- package/dist/src/messages/responses/cache-sorted-set-put-elements.d.ts +61 -0
- package/dist/src/messages/responses/cache-sorted-set-put-elements.js +54 -0
- package/dist/src/messages/responses/cache-sorted-set-remove-element.d.ts +61 -0
- package/dist/src/messages/responses/cache-sorted-set-remove-element.js +54 -0
- package/dist/src/messages/responses/cache-sorted-set-remove-elements.d.ts +61 -0
- package/dist/src/messages/responses/cache-sorted-set-remove-elements.js +54 -0
- package/dist/src/messages/responses/create-cache.d.ts +77 -0
- package/dist/src/messages/responses/create-cache.js +61 -0
- package/dist/src/messages/responses/create-signing-key.d.ts +71 -0
- package/dist/src/messages/responses/create-signing-key.js +76 -0
- package/dist/src/messages/responses/delete-cache.d.ts +61 -0
- package/dist/src/messages/responses/delete-cache.js +54 -0
- package/dist/src/messages/responses/generate-api-token.d.ts +50 -0
- package/dist/src/messages/responses/generate-api-token.js +52 -0
- package/dist/src/messages/responses/grpc-response-types.d.ts +41 -0
- package/dist/src/messages/responses/grpc-response-types.js +53 -0
- package/dist/src/messages/responses/list-caches.d.ts +70 -0
- package/dist/src/messages/responses/list-caches.js +69 -0
- package/dist/src/messages/responses/list-signing-keys.d.ts +68 -0
- package/dist/src/messages/responses/list-signing-keys.js +68 -0
- package/dist/src/messages/responses/response-base.d.ts +43 -0
- package/dist/src/messages/responses/response-base.js +50 -0
- package/dist/src/messages/responses/revoke-signing-key.d.ts +61 -0
- package/dist/src/messages/responses/revoke-signing-key.js +54 -0
- package/dist/src/messages/responses/topic-item.d.ts +27 -0
- package/dist/src/messages/responses/topic-item.js +43 -0
- package/dist/src/messages/responses/topic-publish.d.ts +61 -0
- package/dist/src/messages/responses/topic-publish.js +54 -0
- package/dist/src/messages/responses/topic-subscribe.d.ts +69 -0
- package/dist/src/messages/responses/topic-subscribe.js +72 -0
- package/dist/src/messages/signing-key.d.ts +9 -0
- package/dist/src/messages/signing-key.js +21 -0
- package/dist/src/utils/cache-call-options.d.ts +99 -0
- package/dist/src/utils/cache-call-options.js +9 -0
- package/dist/src/utils/collection-ttl.d.ts +78 -0
- package/dist/src/utils/collection-ttl.js +102 -0
- package/dist/src/utils/index.d.ts +3 -0
- package/dist/src/utils/index.js +20 -0
- package/dist/src/utils/topic-call-options.d.ts +19 -0
- package/dist/src/utils/topic-call-options.js +3 -0
- package/package.json +53 -0
@@ -0,0 +1,83 @@
|
|
1
|
+
/**
|
2
|
+
* Encapsulates arguments for instantiating an EnvMomentoTokenProvider
|
3
|
+
*/
|
4
|
+
interface CredentialProviderProps {
|
5
|
+
/**
|
6
|
+
* optionally overrides the default controlEndpoint
|
7
|
+
*/
|
8
|
+
controlEndpoint?: string;
|
9
|
+
/**
|
10
|
+
* optionally overrides the default cacheEndpoint
|
11
|
+
*/
|
12
|
+
cacheEndpoint?: string;
|
13
|
+
}
|
14
|
+
/**
|
15
|
+
* Provides information that the CacheClient needs in order to establish a connection to and authenticate with
|
16
|
+
* the Momento service.
|
17
|
+
* @export
|
18
|
+
* @interface CredentialProvider
|
19
|
+
*/
|
20
|
+
export declare abstract class CredentialProvider {
|
21
|
+
/**
|
22
|
+
* @returns {string} Auth token provided by user, required to authenticate with the service
|
23
|
+
*/
|
24
|
+
abstract getAuthToken(): string;
|
25
|
+
/**
|
26
|
+
* @returns {string} The host which the Momento client will connect to for Momento control plane operations
|
27
|
+
*/
|
28
|
+
abstract getControlEndpoint(): string;
|
29
|
+
/**
|
30
|
+
* @returns {string} The host which the Momento client will connect to for Momento data plane operations
|
31
|
+
*/
|
32
|
+
abstract getCacheEndpoint(): string;
|
33
|
+
static fromEnvironmentVariable(props: EnvMomentoTokenProviderProps): CredentialProvider;
|
34
|
+
static fromString(props: StringMomentoTokenProviderProps): CredentialProvider;
|
35
|
+
}
|
36
|
+
declare abstract class CredentialProviderBase implements CredentialProvider {
|
37
|
+
abstract getAuthToken(): string;
|
38
|
+
abstract getCacheEndpoint(): string;
|
39
|
+
abstract getControlEndpoint(): string;
|
40
|
+
valueOf(): object;
|
41
|
+
}
|
42
|
+
export interface StringMomentoTokenProviderProps extends CredentialProviderProps {
|
43
|
+
/**
|
44
|
+
* authToken the momento auth token
|
45
|
+
*/
|
46
|
+
authToken: string;
|
47
|
+
}
|
48
|
+
/**
|
49
|
+
* Reads and parses a momento auth token stored in a String
|
50
|
+
* @export
|
51
|
+
* @class StringMomentoTokenProvider
|
52
|
+
*/
|
53
|
+
export declare class StringMomentoTokenProvider extends CredentialProviderBase {
|
54
|
+
private readonly authToken;
|
55
|
+
private readonly controlEndpoint;
|
56
|
+
private readonly cacheEndpoint;
|
57
|
+
/**
|
58
|
+
* @param {StringMomentoTokenProviderProps} props configuration options for the token provider
|
59
|
+
*/
|
60
|
+
constructor(props: StringMomentoTokenProviderProps);
|
61
|
+
getAuthToken(): string;
|
62
|
+
getCacheEndpoint(): string;
|
63
|
+
getControlEndpoint(): string;
|
64
|
+
}
|
65
|
+
export interface EnvMomentoTokenProviderProps extends CredentialProviderProps {
|
66
|
+
/**
|
67
|
+
* the name of the environment variable from which the auth token will be read
|
68
|
+
*/
|
69
|
+
environmentVariableName: string;
|
70
|
+
}
|
71
|
+
/**
|
72
|
+
* Reads and parses a momento auth token stored as an environment variable.
|
73
|
+
* @export
|
74
|
+
* @class EnvMomentoTokenProvider
|
75
|
+
*/
|
76
|
+
export declare class EnvMomentoTokenProvider extends StringMomentoTokenProvider {
|
77
|
+
environmentVariableName: string;
|
78
|
+
/**
|
79
|
+
* @param {EnvMomentoTokenProviderProps} props configuration options for the token provider
|
80
|
+
*/
|
81
|
+
constructor(props: EnvMomentoTokenProviderProps);
|
82
|
+
}
|
83
|
+
export {};
|
@@ -0,0 +1,82 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.EnvMomentoTokenProvider = exports.StringMomentoTokenProvider = exports.CredentialProvider = void 0;
|
4
|
+
const utils_1 = require("../internal/utils");
|
5
|
+
/**
|
6
|
+
* Provides information that the CacheClient needs in order to establish a connection to and authenticate with
|
7
|
+
* the Momento service.
|
8
|
+
* @export
|
9
|
+
* @interface CredentialProvider
|
10
|
+
*/
|
11
|
+
class CredentialProvider {
|
12
|
+
static fromEnvironmentVariable(props) {
|
13
|
+
return new EnvMomentoTokenProvider(props);
|
14
|
+
}
|
15
|
+
static fromString(props) {
|
16
|
+
return new StringMomentoTokenProvider(props);
|
17
|
+
}
|
18
|
+
}
|
19
|
+
exports.CredentialProvider = CredentialProvider;
|
20
|
+
class CredentialProviderBase {
|
21
|
+
valueOf() {
|
22
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
23
|
+
const entries = Object.entries(this).filter(([k]) => k !== 'authToken');
|
24
|
+
const clone = (0, utils_1.fromEntries)(entries);
|
25
|
+
return clone.valueOf();
|
26
|
+
}
|
27
|
+
}
|
28
|
+
/**
|
29
|
+
* Reads and parses a momento auth token stored in a String
|
30
|
+
* @export
|
31
|
+
* @class StringMomentoTokenProvider
|
32
|
+
*/
|
33
|
+
class StringMomentoTokenProvider extends CredentialProviderBase {
|
34
|
+
/**
|
35
|
+
* @param {StringMomentoTokenProviderProps} props configuration options for the token provider
|
36
|
+
*/
|
37
|
+
constructor(props) {
|
38
|
+
var _a, _b;
|
39
|
+
super();
|
40
|
+
const decodedToken = (0, utils_1.decodeAuthToken)(props.authToken);
|
41
|
+
this.authToken = decodedToken.authToken;
|
42
|
+
this.controlEndpoint =
|
43
|
+
(_a = props.controlEndpoint) !== null && _a !== void 0 ? _a : decodedToken.controlEndpoint;
|
44
|
+
this.cacheEndpoint = (_b = props.cacheEndpoint) !== null && _b !== void 0 ? _b : decodedToken.cacheEndpoint;
|
45
|
+
}
|
46
|
+
getAuthToken() {
|
47
|
+
return this.authToken;
|
48
|
+
}
|
49
|
+
getCacheEndpoint() {
|
50
|
+
return this.cacheEndpoint;
|
51
|
+
}
|
52
|
+
getControlEndpoint() {
|
53
|
+
return this.controlEndpoint;
|
54
|
+
}
|
55
|
+
}
|
56
|
+
exports.StringMomentoTokenProvider = StringMomentoTokenProvider;
|
57
|
+
/**
|
58
|
+
* Reads and parses a momento auth token stored as an environment variable.
|
59
|
+
* @export
|
60
|
+
* @class EnvMomentoTokenProvider
|
61
|
+
*/
|
62
|
+
class EnvMomentoTokenProvider extends StringMomentoTokenProvider {
|
63
|
+
/**
|
64
|
+
* @param {EnvMomentoTokenProviderProps} props configuration options for the token provider
|
65
|
+
*/
|
66
|
+
constructor(props) {
|
67
|
+
var _a, _b;
|
68
|
+
const authToken = process.env[props.environmentVariableName];
|
69
|
+
if (!authToken) {
|
70
|
+
throw new Error(`Missing required environment variable ${props.environmentVariableName}`);
|
71
|
+
}
|
72
|
+
const decodedToken = (0, utils_1.decodeAuthToken)(authToken);
|
73
|
+
super({
|
74
|
+
authToken: decodedToken.authToken,
|
75
|
+
controlEndpoint: (_a = props.controlEndpoint) !== null && _a !== void 0 ? _a : decodedToken.controlEndpoint,
|
76
|
+
cacheEndpoint: (_b = props.cacheEndpoint) !== null && _b !== void 0 ? _b : decodedToken.cacheEndpoint,
|
77
|
+
});
|
78
|
+
this.environmentVariableName = props.environmentVariableName;
|
79
|
+
}
|
80
|
+
}
|
81
|
+
exports.EnvMomentoTokenProvider = EnvMomentoTokenProvider;
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlZGVudGlhbC1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hdXRoL2NyZWRlbnRpYWwtcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQStEO0FBZ0IvRDs7Ozs7R0FLRztBQUNILE1BQXNCLGtCQUFrQjtJQWdCdEMsTUFBTSxDQUFDLHVCQUF1QixDQUM1QixLQUFtQztRQUVuQyxPQUFPLElBQUksdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELE1BQU0sQ0FBQyxVQUFVLENBQ2YsS0FBc0M7UUFFdEMsT0FBTyxJQUFJLDBCQUEwQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9DLENBQUM7Q0FDRjtBQTNCRCxnREEyQkM7QUFFRCxNQUFlLHNCQUFzQjtJQU9uQyxPQUFPO1FBQ0wsNkRBQTZEO1FBQzdELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sS0FBSyxHQUFHLElBQUEsbUJBQVcsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUNuQyxPQUFPLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN6QixDQUFDO0NBQ0Y7QUFVRDs7OztHQUlHO0FBQ0gsTUFBYSwwQkFBMkIsU0FBUSxzQkFBc0I7SUFLcEU7O09BRUc7SUFDSCxZQUFZLEtBQXNDOztRQUNoRCxLQUFLLEVBQUUsQ0FBQztRQUNSLE1BQU0sWUFBWSxHQUFHLElBQUEsdUJBQWUsRUFBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLFNBQVMsR0FBRyxZQUFZLENBQUMsU0FBUyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxlQUFlO1lBQ2xCLE1BQUEsS0FBSyxDQUFDLGVBQWUsbUNBQUksWUFBWSxDQUFDLGVBQWUsQ0FBQztRQUN4RCxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQUEsS0FBSyxDQUFDLGFBQWEsbUNBQUksWUFBWSxDQUFDLGFBQWEsQ0FBQztJQUN6RSxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzlCLENBQUM7Q0FDRjtBQTVCRCxnRUE0QkM7QUFTRDs7OztHQUlHO0FBQ0gsTUFBYSx1QkFBd0IsU0FBUSwwQkFBMEI7SUFFckU7O09BRUc7SUFDSCxZQUFZLEtBQW1DOztRQUM3QyxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDZCxNQUFNLElBQUksS0FBSyxDQUNiLHlDQUF5QyxLQUFLLENBQUMsdUJBQXVCLEVBQUUsQ0FDekUsQ0FBQztTQUNIO1FBQ0QsTUFBTSxZQUFZLEdBQUcsSUFBQSx1QkFBZSxFQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hELEtBQUssQ0FBQztZQUNKLFNBQVMsRUFBRSxZQUFZLENBQUMsU0FBUztZQUNqQyxlQUFlLEVBQUUsTUFBQSxLQUFLLENBQUMsZUFBZSxtQ0FBSSxZQUFZLENBQUMsZUFBZTtZQUN0RSxhQUFhLEVBQUUsTUFBQSxLQUFLLENBQUMsYUFBYSxtQ0FBSSxZQUFZLENBQUMsYUFBYTtTQUNqRSxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsS0FBSyxDQUFDLHVCQUF1QixDQUFDO0lBQy9ELENBQUM7Q0FDRjtBQXBCRCwwREFvQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2RlY29kZUF1dGhUb2tlbiwgZnJvbUVudHJpZXN9IGZyb20gJy4uL2ludGVybmFsL3V0aWxzJztcblxuLyoqXG4gKiBFbmNhcHN1bGF0ZXMgYXJndW1lbnRzIGZvciBpbnN0YW50aWF0aW5nIGFuIEVudk1vbWVudG9Ub2tlblByb3ZpZGVyXG4gKi9cbmludGVyZmFjZSBDcmVkZW50aWFsUHJvdmlkZXJQcm9wcyB7XG4gIC8qKlxuICAgKiBvcHRpb25hbGx5IG92ZXJyaWRlcyB0aGUgZGVmYXVsdCBjb250cm9sRW5kcG9pbnRcbiAgICovXG4gIGNvbnRyb2xFbmRwb2ludD86IHN0cmluZztcbiAgLyoqXG4gICAqIG9wdGlvbmFsbHkgb3ZlcnJpZGVzIHRoZSBkZWZhdWx0IGNhY2hlRW5kcG9pbnRcbiAgICovXG4gIGNhY2hlRW5kcG9pbnQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvdmlkZXMgaW5mb3JtYXRpb24gdGhhdCB0aGUgQ2FjaGVDbGllbnQgbmVlZHMgaW4gb3JkZXIgdG8gZXN0YWJsaXNoIGEgY29ubmVjdGlvbiB0byBhbmQgYXV0aGVudGljYXRlIHdpdGhcbiAqIHRoZSBNb21lbnRvIHNlcnZpY2UuXG4gKiBAZXhwb3J0XG4gKiBAaW50ZXJmYWNlIENyZWRlbnRpYWxQcm92aWRlclxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ3JlZGVudGlhbFByb3ZpZGVyIHtcbiAgLyoqXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IEF1dGggdG9rZW4gcHJvdmlkZWQgYnkgdXNlciwgcmVxdWlyZWQgdG8gYXV0aGVudGljYXRlIHdpdGggdGhlIHNlcnZpY2VcbiAgICovXG4gIGFic3RyYWN0IGdldEF1dGhUb2tlbigpOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBob3N0IHdoaWNoIHRoZSBNb21lbnRvIGNsaWVudCB3aWxsIGNvbm5lY3QgdG8gZm9yIE1vbWVudG8gY29udHJvbCBwbGFuZSBvcGVyYXRpb25zXG4gICAqL1xuICBhYnN0cmFjdCBnZXRDb250cm9sRW5kcG9pbnQoKTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgaG9zdCB3aGljaCB0aGUgTW9tZW50byBjbGllbnQgd2lsbCBjb25uZWN0IHRvIGZvciBNb21lbnRvIGRhdGEgcGxhbmUgb3BlcmF0aW9uc1xuICAgKi9cbiAgYWJzdHJhY3QgZ2V0Q2FjaGVFbmRwb2ludCgpOiBzdHJpbmc7XG5cbiAgc3RhdGljIGZyb21FbnZpcm9ubWVudFZhcmlhYmxlKFxuICAgIHByb3BzOiBFbnZNb21lbnRvVG9rZW5Qcm92aWRlclByb3BzXG4gICk6IENyZWRlbnRpYWxQcm92aWRlciB7XG4gICAgcmV0dXJuIG5ldyBFbnZNb21lbnRvVG9rZW5Qcm92aWRlcihwcm9wcyk7XG4gIH1cblxuICBzdGF0aWMgZnJvbVN0cmluZyhcbiAgICBwcm9wczogU3RyaW5nTW9tZW50b1Rva2VuUHJvdmlkZXJQcm9wc1xuICApOiBDcmVkZW50aWFsUHJvdmlkZXIge1xuICAgIHJldHVybiBuZXcgU3RyaW5nTW9tZW50b1Rva2VuUHJvdmlkZXIocHJvcHMpO1xuICB9XG59XG5cbmFic3RyYWN0IGNsYXNzIENyZWRlbnRpYWxQcm92aWRlckJhc2UgaW1wbGVtZW50cyBDcmVkZW50aWFsUHJvdmlkZXIge1xuICBhYnN0cmFjdCBnZXRBdXRoVG9rZW4oKTogc3RyaW5nO1xuXG4gIGFic3RyYWN0IGdldENhY2hlRW5kcG9pbnQoKTogc3RyaW5nO1xuXG4gIGFic3RyYWN0IGdldENvbnRyb2xFbmRwb2ludCgpOiBzdHJpbmc7XG5cbiAgdmFsdWVPZigpOiBvYmplY3Qge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBjb25zdCBlbnRyaWVzID0gT2JqZWN0LmVudHJpZXModGhpcykuZmlsdGVyKChba10pID0+IGsgIT09ICdhdXRoVG9rZW4nKTtcbiAgICBjb25zdCBjbG9uZSA9IGZyb21FbnRyaWVzKGVudHJpZXMpO1xuICAgIHJldHVybiBjbG9uZS52YWx1ZU9mKCk7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdHJpbmdNb21lbnRvVG9rZW5Qcm92aWRlclByb3BzXG4gIGV4dGVuZHMgQ3JlZGVudGlhbFByb3ZpZGVyUHJvcHMge1xuICAvKipcbiAgICogYXV0aFRva2VuIHRoZSBtb21lbnRvIGF1dGggdG9rZW5cbiAgICovXG4gIGF1dGhUb2tlbjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlYWRzIGFuZCBwYXJzZXMgYSBtb21lbnRvIGF1dGggdG9rZW4gc3RvcmVkIGluIGEgU3RyaW5nXG4gKiBAZXhwb3J0XG4gKiBAY2xhc3MgU3RyaW5nTW9tZW50b1Rva2VuUHJvdmlkZXJcbiAqL1xuZXhwb3J0IGNsYXNzIFN0cmluZ01vbWVudG9Ub2tlblByb3ZpZGVyIGV4dGVuZHMgQ3JlZGVudGlhbFByb3ZpZGVyQmFzZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYXV0aFRva2VuOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29udHJvbEVuZHBvaW50OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgY2FjaGVFbmRwb2ludDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcGFyYW0ge1N0cmluZ01vbWVudG9Ub2tlblByb3ZpZGVyUHJvcHN9IHByb3BzIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIHRva2VuIHByb3ZpZGVyXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcm9wczogU3RyaW5nTW9tZW50b1Rva2VuUHJvdmlkZXJQcm9wcykge1xuICAgIHN1cGVyKCk7XG4gICAgY29uc3QgZGVjb2RlZFRva2VuID0gZGVjb2RlQXV0aFRva2VuKHByb3BzLmF1dGhUb2tlbik7XG4gICAgdGhpcy5hdXRoVG9rZW4gPSBkZWNvZGVkVG9rZW4uYXV0aFRva2VuO1xuICAgIHRoaXMuY29udHJvbEVuZHBvaW50ID1cbiAgICAgIHByb3BzLmNvbnRyb2xFbmRwb2ludCA/PyBkZWNvZGVkVG9rZW4uY29udHJvbEVuZHBvaW50O1xuICAgIHRoaXMuY2FjaGVFbmRwb2ludCA9IHByb3BzLmNhY2hlRW5kcG9pbnQgPz8gZGVjb2RlZFRva2VuLmNhY2hlRW5kcG9pbnQ7XG4gIH1cblxuICBnZXRBdXRoVG9rZW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5hdXRoVG9rZW47XG4gIH1cblxuICBnZXRDYWNoZUVuZHBvaW50KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVFbmRwb2ludDtcbiAgfVxuXG4gIGdldENvbnRyb2xFbmRwb2ludCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2xFbmRwb2ludDtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVudk1vbWVudG9Ub2tlblByb3ZpZGVyUHJvcHMgZXh0ZW5kcyBDcmVkZW50aWFsUHJvdmlkZXJQcm9wcyB7XG4gIC8qKlxuICAgKiB0aGUgbmFtZSBvZiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgZnJvbSB3aGljaCB0aGUgYXV0aCB0b2tlbiB3aWxsIGJlIHJlYWRcbiAgICovXG4gIGVudmlyb25tZW50VmFyaWFibGVOYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVhZHMgYW5kIHBhcnNlcyBhIG1vbWVudG8gYXV0aCB0b2tlbiBzdG9yZWQgYXMgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUuXG4gKiBAZXhwb3J0XG4gKiBAY2xhc3MgRW52TW9tZW50b1Rva2VuUHJvdmlkZXJcbiAqL1xuZXhwb3J0IGNsYXNzIEVudk1vbWVudG9Ub2tlblByb3ZpZGVyIGV4dGVuZHMgU3RyaW5nTW9tZW50b1Rva2VuUHJvdmlkZXIge1xuICBlbnZpcm9ubWVudFZhcmlhYmxlTmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogQHBhcmFtIHtFbnZNb21lbnRvVG9rZW5Qcm92aWRlclByb3BzfSBwcm9wcyBjb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHRoZSB0b2tlbiBwcm92aWRlclxuICAgKi9cbiAgY29uc3RydWN0b3IocHJvcHM6IEVudk1vbWVudG9Ub2tlblByb3ZpZGVyUHJvcHMpIHtcbiAgICBjb25zdCBhdXRoVG9rZW4gPSBwcm9jZXNzLmVudltwcm9wcy5lbnZpcm9ubWVudFZhcmlhYmxlTmFtZV07XG4gICAgaWYgKCFhdXRoVG9rZW4pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYE1pc3NpbmcgcmVxdWlyZWQgZW52aXJvbm1lbnQgdmFyaWFibGUgJHtwcm9wcy5lbnZpcm9ubWVudFZhcmlhYmxlTmFtZX1gXG4gICAgICApO1xuICAgIH1cbiAgICBjb25zdCBkZWNvZGVkVG9rZW4gPSBkZWNvZGVBdXRoVG9rZW4oYXV0aFRva2VuKTtcbiAgICBzdXBlcih7XG4gICAgICBhdXRoVG9rZW46IGRlY29kZWRUb2tlbi5hdXRoVG9rZW4sXG4gICAgICBjb250cm9sRW5kcG9pbnQ6IHByb3BzLmNvbnRyb2xFbmRwb2ludCA/PyBkZWNvZGVkVG9rZW4uY29udHJvbEVuZHBvaW50LFxuICAgICAgY2FjaGVFbmRwb2ludDogcHJvcHMuY2FjaGVFbmRwb2ludCA/PyBkZWNvZGVkVG9rZW4uY2FjaGVFbmRwb2ludCxcbiAgICB9KTtcbiAgICB0aGlzLmVudmlyb25tZW50VmFyaWFibGVOYW1lID0gcHJvcHMuZW52aXJvbm1lbnRWYXJpYWJsZU5hbWU7XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1 @@
|
|
1
|
+
export * from './credential-provider';
|
@@ -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("./credential-provider"), exports);
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXV0aC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsd0RBQXNDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jcmVkZW50aWFsLXByb3ZpZGVyJztcbiJdfQ==
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import { MomentoLogger, MomentoLoggerFactory } from './momento-logger';
|
2
|
+
export declare enum DefaultMomentoLoggerLevel {
|
3
|
+
TRACE = 5,
|
4
|
+
DEBUG = 10,
|
5
|
+
INFO = 20,
|
6
|
+
WARN = 30,
|
7
|
+
ERROR = 40
|
8
|
+
}
|
9
|
+
export declare class DefaultMomentoLoggerFactory implements MomentoLoggerFactory {
|
10
|
+
private readonly level;
|
11
|
+
constructor(level?: DefaultMomentoLoggerLevel);
|
12
|
+
getLogger(loggerName: string | any): MomentoLogger;
|
13
|
+
}
|
14
|
+
export declare class DefaultMomentoLogger implements MomentoLogger {
|
15
|
+
private readonly loggerName;
|
16
|
+
private readonly level;
|
17
|
+
constructor(loggerName: string | any, level: DefaultMomentoLoggerLevel);
|
18
|
+
trace(msg: string, ...args: unknown[]): void;
|
19
|
+
debug(msg: string, ...args: unknown[]): void;
|
20
|
+
info(msg: string, ...args: unknown[]): void;
|
21
|
+
warn(msg: string, ...args: unknown[]): void;
|
22
|
+
error(msg: string, ...args: unknown[]): void;
|
23
|
+
private outputMessage;
|
24
|
+
}
|
@@ -0,0 +1,69 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.DefaultMomentoLogger = exports.DefaultMomentoLoggerFactory = exports.DefaultMomentoLoggerLevel = void 0;
|
4
|
+
const printf = require("../../internal/vendor/printf/printf");
|
5
|
+
var DefaultMomentoLoggerLevel;
|
6
|
+
(function (DefaultMomentoLoggerLevel) {
|
7
|
+
DefaultMomentoLoggerLevel[DefaultMomentoLoggerLevel["TRACE"] = 5] = "TRACE";
|
8
|
+
DefaultMomentoLoggerLevel[DefaultMomentoLoggerLevel["DEBUG"] = 10] = "DEBUG";
|
9
|
+
DefaultMomentoLoggerLevel[DefaultMomentoLoggerLevel["INFO"] = 20] = "INFO";
|
10
|
+
DefaultMomentoLoggerLevel[DefaultMomentoLoggerLevel["WARN"] = 30] = "WARN";
|
11
|
+
DefaultMomentoLoggerLevel[DefaultMomentoLoggerLevel["ERROR"] = 40] = "ERROR";
|
12
|
+
})(DefaultMomentoLoggerLevel = exports.DefaultMomentoLoggerLevel || (exports.DefaultMomentoLoggerLevel = {}));
|
13
|
+
class DefaultMomentoLoggerFactory {
|
14
|
+
constructor(level = DefaultMomentoLoggerLevel.INFO) {
|
15
|
+
this.level = level;
|
16
|
+
}
|
17
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
18
|
+
getLogger(loggerName) {
|
19
|
+
return new DefaultMomentoLogger(loggerName, this.level);
|
20
|
+
}
|
21
|
+
}
|
22
|
+
exports.DefaultMomentoLoggerFactory = DefaultMomentoLoggerFactory;
|
23
|
+
class DefaultMomentoLogger {
|
24
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
25
|
+
constructor(loggerName, level) {
|
26
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
27
|
+
this.loggerName =
|
28
|
+
typeof loggerName === 'string' || loggerName instanceof String
|
29
|
+
? loggerName
|
30
|
+
: // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
31
|
+
loggerName.constructor.name;
|
32
|
+
this.level = level;
|
33
|
+
}
|
34
|
+
trace(msg, ...args) {
|
35
|
+
if (this.level > DefaultMomentoLoggerLevel.TRACE) {
|
36
|
+
return;
|
37
|
+
}
|
38
|
+
this.outputMessage(console.log, DefaultMomentoLoggerLevel.TRACE, msg, args);
|
39
|
+
}
|
40
|
+
debug(msg, ...args) {
|
41
|
+
if (this.level > DefaultMomentoLoggerLevel.DEBUG) {
|
42
|
+
return;
|
43
|
+
}
|
44
|
+
this.outputMessage(console.log, DefaultMomentoLoggerLevel.DEBUG, msg, args);
|
45
|
+
}
|
46
|
+
info(msg, ...args) {
|
47
|
+
if (this.level > DefaultMomentoLoggerLevel.INFO) {
|
48
|
+
return;
|
49
|
+
}
|
50
|
+
this.outputMessage(console.log, DefaultMomentoLoggerLevel.INFO, msg, args);
|
51
|
+
}
|
52
|
+
warn(msg, ...args) {
|
53
|
+
if (this.level > DefaultMomentoLoggerLevel.WARN) {
|
54
|
+
return;
|
55
|
+
}
|
56
|
+
this.outputMessage(console.warn, DefaultMomentoLoggerLevel.WARN, msg, args);
|
57
|
+
}
|
58
|
+
error(msg, ...args) {
|
59
|
+
if (this.level > DefaultMomentoLoggerLevel.ERROR) {
|
60
|
+
return;
|
61
|
+
}
|
62
|
+
this.outputMessage(console.error, DefaultMomentoLoggerLevel.ERROR, msg, args);
|
63
|
+
}
|
64
|
+
outputMessage(outputFn, level, msg, args) {
|
65
|
+
outputFn(printf('[%s] %s (Momento: %s): %s', new Date().toISOString(), DefaultMomentoLoggerLevel[level], this.loggerName, printf(msg, ...args)));
|
66
|
+
}
|
67
|
+
}
|
68
|
+
exports.DefaultMomentoLogger = DefaultMomentoLogger;
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1tb21lbnRvLWxvZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb25maWcvbG9nZ2luZy9kZWZhdWx0LW1vbWVudG8tbG9nZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDhEQUErRDtBQUUvRCxJQUFZLHlCQU1YO0FBTkQsV0FBWSx5QkFBeUI7SUFDbkMsMkVBQVMsQ0FBQTtJQUNULDRFQUFVLENBQUE7SUFDViwwRUFBUyxDQUFBO0lBQ1QsMEVBQVMsQ0FBQTtJQUNULDRFQUFVLENBQUE7QUFDWixDQUFDLEVBTlcseUJBQXlCLEdBQXpCLGlDQUF5QixLQUF6QixpQ0FBeUIsUUFNcEM7QUFFRCxNQUFhLDJCQUEyQjtJQUV0QyxZQUNFLFFBQW1DLHlCQUF5QixDQUFDLElBQUk7UUFFakUsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELDhEQUE4RDtJQUM5RCxTQUFTLENBQUMsVUFBd0I7UUFDaEMsT0FBTyxJQUFJLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUQsQ0FBQztDQUNGO0FBWkQsa0VBWUM7QUFFRCxNQUFhLG9CQUFvQjtJQUcvQiw4REFBOEQ7SUFDOUQsWUFBWSxVQUF3QixFQUFFLEtBQWdDO1FBQ3BFLG1FQUFtRTtRQUNuRSxJQUFJLENBQUMsVUFBVTtZQUNiLE9BQU8sVUFBVSxLQUFLLFFBQVEsSUFBSSxVQUFVLFlBQVksTUFBTTtnQkFDNUQsQ0FBQyxDQUFDLFVBQVU7Z0JBQ1osQ0FBQyxDQUFDLHNFQUFzRTtvQkFDdEUsVUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDbEMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELEtBQUssQ0FBQyxHQUFXLEVBQUUsR0FBRyxJQUFlO1FBQ25DLElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyx5QkFBeUIsQ0FBQyxLQUFLLEVBQUU7WUFDaEQsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLHlCQUF5QixDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVELEtBQUssQ0FBQyxHQUFXLEVBQUUsR0FBRyxJQUFlO1FBQ25DLElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyx5QkFBeUIsQ0FBQyxLQUFLLEVBQUU7WUFDaEQsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLHlCQUF5QixDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVELElBQUksQ0FBQyxHQUFXLEVBQUUsR0FBRyxJQUFlO1FBQ2xDLElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyx5QkFBeUIsQ0FBQyxJQUFJLEVBQUU7WUFDL0MsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLHlCQUF5QixDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELElBQUksQ0FBQyxHQUFXLEVBQUUsR0FBRyxJQUFlO1FBQ2xDLElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyx5QkFBeUIsQ0FBQyxJQUFJLEVBQUU7WUFDL0MsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLHlCQUF5QixDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVELEtBQUssQ0FBQyxHQUFXLEVBQUUsR0FBRyxJQUFlO1FBQ25DLElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyx5QkFBeUIsQ0FBQyxLQUFLLEVBQUU7WUFDaEQsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FDaEIsT0FBTyxDQUFDLEtBQUssRUFDYix5QkFBeUIsQ0FBQyxLQUFLLEVBQy9CLEdBQUcsRUFDSCxJQUFJLENBQ0wsQ0FBQztJQUNKLENBQUM7SUFFTyxhQUFhLENBQ25CLFFBQWtDLEVBQ2xDLEtBQWdDLEVBQ2hDLEdBQVcsRUFDWCxJQUFlO1FBRWYsUUFBUSxDQUNOLE1BQU0sQ0FDSiwyQkFBMkIsRUFDM0IsSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsRUFDeEIseUJBQXlCLENBQUMsS0FBSyxDQUFDLEVBQ2hDLElBQUksQ0FBQyxVQUFVLEVBQ2YsTUFBTSxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUNyQixDQUNGLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUF0RUQsb0RBc0VDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtNb21lbnRvTG9nZ2VyLCBNb21lbnRvTG9nZ2VyRmFjdG9yeX0gZnJvbSAnLi9tb21lbnRvLWxvZ2dlcic7XG5pbXBvcnQgcHJpbnRmID0gcmVxdWlyZSgnLi4vLi4vaW50ZXJuYWwvdmVuZG9yL3ByaW50Zi9wcmludGYnKTtcblxuZXhwb3J0IGVudW0gRGVmYXVsdE1vbWVudG9Mb2dnZXJMZXZlbCB7XG4gIFRSQUNFID0gNSxcbiAgREVCVUcgPSAxMCxcbiAgSU5GTyA9IDIwLFxuICBXQVJOID0gMzAsXG4gIEVSUk9SID0gNDAsXG59XG5cbmV4cG9ydCBjbGFzcyBEZWZhdWx0TW9tZW50b0xvZ2dlckZhY3RvcnkgaW1wbGVtZW50cyBNb21lbnRvTG9nZ2VyRmFjdG9yeSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgbGV2ZWw6IERlZmF1bHRNb21lbnRvTG9nZ2VyTGV2ZWw7XG4gIGNvbnN0cnVjdG9yKFxuICAgIGxldmVsOiBEZWZhdWx0TW9tZW50b0xvZ2dlckxldmVsID0gRGVmYXVsdE1vbWVudG9Mb2dnZXJMZXZlbC5JTkZPXG4gICkge1xuICAgIHRoaXMubGV2ZWwgPSBsZXZlbDtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIGdldExvZ2dlcihsb2dnZXJOYW1lOiBzdHJpbmcgfCBhbnkpOiBNb21lbnRvTG9nZ2VyIHtcbiAgICByZXR1cm4gbmV3IERlZmF1bHRNb21lbnRvTG9nZ2VyKGxvZ2dlck5hbWUsIHRoaXMubGV2ZWwpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEZWZhdWx0TW9tZW50b0xvZ2dlciBpbXBsZW1lbnRzIE1vbWVudG9Mb2dnZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlck5hbWU6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBsZXZlbDogRGVmYXVsdE1vbWVudG9Mb2dnZXJMZXZlbDtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgY29uc3RydWN0b3IobG9nZ2VyTmFtZTogc3RyaW5nIHwgYW55LCBsZXZlbDogRGVmYXVsdE1vbWVudG9Mb2dnZXJMZXZlbCkge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5zYWZlLWFzc2lnbm1lbnRcbiAgICB0aGlzLmxvZ2dlck5hbWUgPVxuICAgICAgdHlwZW9mIGxvZ2dlck5hbWUgPT09ICdzdHJpbmcnIHx8IGxvZ2dlck5hbWUgaW5zdGFuY2VvZiBTdHJpbmdcbiAgICAgICAgPyBsb2dnZXJOYW1lXG4gICAgICAgIDogLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtbWVtYmVyLWFjY2Vzc1xuICAgICAgICAgIGxvZ2dlck5hbWUuY29uc3RydWN0b3IubmFtZTtcbiAgICB0aGlzLmxldmVsID0gbGV2ZWw7XG4gIH1cblxuICB0cmFjZShtc2c6IHN0cmluZywgLi4uYXJnczogdW5rbm93bltdKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubGV2ZWwgPiBEZWZhdWx0TW9tZW50b0xvZ2dlckxldmVsLlRSQUNFKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMub3V0cHV0TWVzc2FnZShjb25zb2xlLmxvZywgRGVmYXVsdE1vbWVudG9Mb2dnZXJMZXZlbC5UUkFDRSwgbXNnLCBhcmdzKTtcbiAgfVxuXG4gIGRlYnVnKG1zZzogc3RyaW5nLCAuLi5hcmdzOiB1bmtub3duW10pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5sZXZlbCA+IERlZmF1bHRNb21lbnRvTG9nZ2VyTGV2ZWwuREVCVUcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5vdXRwdXRNZXNzYWdlKGNvbnNvbGUubG9nLCBEZWZhdWx0TW9tZW50b0xvZ2dlckxldmVsLkRFQlVHLCBtc2csIGFyZ3MpO1xuICB9XG5cbiAgaW5mbyhtc2c6IHN0cmluZywgLi4uYXJnczogdW5rbm93bltdKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubGV2ZWwgPiBEZWZhdWx0TW9tZW50b0xvZ2dlckxldmVsLklORk8pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5vdXRwdXRNZXNzYWdlKGNvbnNvbGUubG9nLCBEZWZhdWx0TW9tZW50b0xvZ2dlckxldmVsLklORk8sIG1zZywgYXJncyk7XG4gIH1cblxuICB3YXJuKG1zZzogc3RyaW5nLCAuLi5hcmdzOiB1bmtub3duW10pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5sZXZlbCA+IERlZmF1bHRNb21lbnRvTG9nZ2VyTGV2ZWwuV0FSTikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm91dHB1dE1lc3NhZ2UoY29uc29sZS53YXJuLCBEZWZhdWx0TW9tZW50b0xvZ2dlckxldmVsLldBUk4sIG1zZywgYXJncyk7XG4gIH1cblxuICBlcnJvcihtc2c6IHN0cmluZywgLi4uYXJnczogdW5rbm93bltdKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubGV2ZWwgPiBEZWZhdWx0TW9tZW50b0xvZ2dlckxldmVsLkVSUk9SKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMub3V0cHV0TWVzc2FnZShcbiAgICAgIGNvbnNvbGUuZXJyb3IsXG4gICAgICBEZWZhdWx0TW9tZW50b0xvZ2dlckxldmVsLkVSUk9SLFxuICAgICAgbXNnLFxuICAgICAgYXJnc1xuICAgICk7XG4gIH1cblxuICBwcml2YXRlIG91dHB1dE1lc3NhZ2UoXG4gICAgb3V0cHV0Rm46IChvdXRwdXQ6IHN0cmluZykgPT4gdm9pZCxcbiAgICBsZXZlbDogRGVmYXVsdE1vbWVudG9Mb2dnZXJMZXZlbCxcbiAgICBtc2c6IHN0cmluZyxcbiAgICBhcmdzOiB1bmtub3duW11cbiAgKSB7XG4gICAgb3V0cHV0Rm4oXG4gICAgICBwcmludGYoXG4gICAgICAgICdbJXNdICVzIChNb21lbnRvOiAlcyk6ICVzJyxcbiAgICAgICAgbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgICBEZWZhdWx0TW9tZW50b0xvZ2dlckxldmVsW2xldmVsXSxcbiAgICAgICAgdGhpcy5sb2dnZXJOYW1lLFxuICAgICAgICBwcmludGYobXNnLCAuLi5hcmdzKVxuICAgICAgKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,20 @@
|
|
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("./default-momento-logger"), exports);
|
18
|
+
__exportStar(require("./momento-logger"), exports);
|
19
|
+
__exportStar(require("./noop-momento-logger"), exports);
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29uZmlnL2xvZ2dpbmcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJEQUF5QztBQUN6QyxtREFBaUM7QUFDakMsd0RBQXNDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kZWZhdWx0LW1vbWVudG8tbG9nZ2VyJztcbmV4cG9ydCAqIGZyb20gJy4vbW9tZW50by1sb2dnZXInO1xuZXhwb3J0ICogZnJvbSAnLi9ub29wLW1vbWVudG8tbG9nZ2VyJztcbiJdfQ==
|
@@ -0,0 +1,10 @@
|
|
1
|
+
export interface MomentoLogger {
|
2
|
+
error(msg: string, ...args: unknown[]): void;
|
3
|
+
warn(msg: string, ...args: unknown[]): void;
|
4
|
+
info(msg: string, ...args: unknown[]): void;
|
5
|
+
debug(msg: string, ...args: unknown[]): void;
|
6
|
+
trace(msg: string, ...args: unknown[]): void;
|
7
|
+
}
|
8
|
+
export interface MomentoLoggerFactory {
|
9
|
+
getLogger(loggerName: string | any): MomentoLogger;
|
10
|
+
}
|
@@ -0,0 +1,3 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9tZW50by1sb2dnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29uZmlnL2xvZ2dpbmcvbW9tZW50by1sb2dnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTW9tZW50b0xvZ2dlciB7XG4gIGVycm9yKG1zZzogc3RyaW5nLCAuLi5hcmdzOiB1bmtub3duW10pOiB2b2lkO1xuICB3YXJuKG1zZzogc3RyaW5nLCAuLi5hcmdzOiB1bmtub3duW10pOiB2b2lkO1xuICBpbmZvKG1zZzogc3RyaW5nLCAuLi5hcmdzOiB1bmtub3duW10pOiB2b2lkO1xuICBkZWJ1Zyhtc2c6IHN0cmluZywgLi4uYXJnczogdW5rbm93bltdKTogdm9pZDtcbiAgdHJhY2UobXNnOiBzdHJpbmcsIC4uLmFyZ3M6IHVua25vd25bXSk6IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9tZW50b0xvZ2dlckZhY3Rvcnkge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICBnZXRMb2dnZXIobG9nZ2VyTmFtZTogc3RyaW5nIHwgYW55KTogTW9tZW50b0xvZ2dlcjtcbn1cbiJdfQ==
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import { MomentoLogger, MomentoLoggerFactory } from './momento-logger';
|
2
|
+
export declare class NoopMomentoLogger implements MomentoLogger {
|
3
|
+
debug(msg: string, ...args: unknown[]): void;
|
4
|
+
error(msg: string, ...args: unknown[]): void;
|
5
|
+
info(msg: string, ...args: unknown[]): void;
|
6
|
+
trace(msg: string, ...args: unknown[]): void;
|
7
|
+
warn(msg: string, ...args: unknown[]): void;
|
8
|
+
}
|
9
|
+
export declare class NoopMomentoLoggerFactory implements MomentoLoggerFactory {
|
10
|
+
getLogger(loggerName: string | any): MomentoLogger;
|
11
|
+
}
|
@@ -0,0 +1,34 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.NoopMomentoLoggerFactory = exports.NoopMomentoLogger = void 0;
|
4
|
+
class NoopMomentoLogger {
|
5
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
6
|
+
debug(msg, ...args) {
|
7
|
+
// no-op
|
8
|
+
}
|
9
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
10
|
+
error(msg, ...args) {
|
11
|
+
// no-op
|
12
|
+
}
|
13
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
14
|
+
info(msg, ...args) {
|
15
|
+
// no-op
|
16
|
+
}
|
17
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
18
|
+
trace(msg, ...args) {
|
19
|
+
// no-op
|
20
|
+
}
|
21
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
22
|
+
warn(msg, ...args) {
|
23
|
+
// no-op
|
24
|
+
}
|
25
|
+
}
|
26
|
+
exports.NoopMomentoLogger = NoopMomentoLogger;
|
27
|
+
class NoopMomentoLoggerFactory {
|
28
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any
|
29
|
+
getLogger(loggerName) {
|
30
|
+
return new NoopMomentoLogger();
|
31
|
+
}
|
32
|
+
}
|
33
|
+
exports.NoopMomentoLoggerFactory = NoopMomentoLoggerFactory;
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9vcC1tb21lbnRvLWxvZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb25maWcvbG9nZ2luZy9ub29wLW1vbWVudG8tbG9nZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLE1BQWEsaUJBQWlCO0lBQzVCLDZEQUE2RDtJQUM3RCxLQUFLLENBQUMsR0FBVyxFQUFFLEdBQUcsSUFBZTtRQUNuQyxRQUFRO0lBQ1YsQ0FBQztJQUVELDZEQUE2RDtJQUM3RCxLQUFLLENBQUMsR0FBVyxFQUFFLEdBQUcsSUFBZTtRQUNuQyxRQUFRO0lBQ1YsQ0FBQztJQUVELDZEQUE2RDtJQUM3RCxJQUFJLENBQUMsR0FBVyxFQUFFLEdBQUcsSUFBZTtRQUNsQyxRQUFRO0lBQ1YsQ0FBQztJQUVELDZEQUE2RDtJQUM3RCxLQUFLLENBQUMsR0FBVyxFQUFFLEdBQUcsSUFBZTtRQUNuQyxRQUFRO0lBQ1YsQ0FBQztJQUVELDZEQUE2RDtJQUM3RCxJQUFJLENBQUMsR0FBVyxFQUFFLEdBQUcsSUFBZTtRQUNsQyxRQUFRO0lBQ1YsQ0FBQztDQUNGO0FBekJELDhDQXlCQztBQUVELE1BQWEsd0JBQXdCO0lBQ25DLGlHQUFpRztJQUNqRyxTQUFTLENBQUMsVUFBd0I7UUFDaEMsT0FBTyxJQUFJLGlCQUFpQixFQUFFLENBQUM7SUFDakMsQ0FBQztDQUNGO0FBTEQsNERBS0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge01vbWVudG9Mb2dnZXIsIE1vbWVudG9Mb2dnZXJGYWN0b3J5fSBmcm9tICcuL21vbWVudG8tbG9nZ2VyJztcblxuZXhwb3J0IGNsYXNzIE5vb3BNb21lbnRvTG9nZ2VyIGltcGxlbWVudHMgTW9tZW50b0xvZ2dlciB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgZGVidWcobXNnOiBzdHJpbmcsIC4uLmFyZ3M6IHVua25vd25bXSk6IHZvaWQge1xuICAgIC8vIG5vLW9wXG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIGVycm9yKG1zZzogc3RyaW5nLCAuLi5hcmdzOiB1bmtub3duW10pOiB2b2lkIHtcbiAgICAvLyBuby1vcFxuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICBpbmZvKG1zZzogc3RyaW5nLCAuLi5hcmdzOiB1bmtub3duW10pOiB2b2lkIHtcbiAgICAvLyBuby1vcFxuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICB0cmFjZShtc2c6IHN0cmluZywgLi4uYXJnczogdW5rbm93bltdKTogdm9pZCB7XG4gICAgLy8gbm8tb3BcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgd2Fybihtc2c6IHN0cmluZywgLi4uYXJnczogdW5rbm93bltdKTogdm9pZCB7XG4gICAgLy8gbm8tb3BcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgTm9vcE1vbWVudG9Mb2dnZXJGYWN0b3J5IGltcGxlbWVudHMgTW9tZW50b0xvZ2dlckZhY3Rvcnkge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzLCBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIGdldExvZ2dlcihsb2dnZXJOYW1lOiBzdHJpbmcgfCBhbnkpOiBNb21lbnRvTG9nZ2VyIHtcbiAgICByZXR1cm4gbmV3IE5vb3BNb21lbnRvTG9nZ2VyKCk7XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,41 @@
|
|
1
|
+
export interface GrpcConfigurationProps {
|
2
|
+
/**
|
3
|
+
* number of milliseconds the client is willing to wait for an RPC to complete before it is terminated
|
4
|
+
* with a DeadlineExceeded error.
|
5
|
+
*/
|
6
|
+
deadlineMillis: number;
|
7
|
+
/**
|
8
|
+
* the maximum amount of memory, in megabytes, that a session is allowed to consume. Sessions that consume
|
9
|
+
* more than this amount will return a ResourceExhausted error.
|
10
|
+
*/
|
11
|
+
maxSessionMemoryMb: number;
|
12
|
+
}
|
13
|
+
/**
|
14
|
+
* Encapsulates gRPC configuration tunables.
|
15
|
+
* @export
|
16
|
+
* @interface GrpcConfiguration
|
17
|
+
*/
|
18
|
+
export interface GrpcConfiguration {
|
19
|
+
/**
|
20
|
+
* @returns {number} number of milliseconds the client is willing to wait for an RPC to complete before it is terminated
|
21
|
+
* with a DeadlineExceeded error.
|
22
|
+
*/
|
23
|
+
getDeadlineMillis(): number;
|
24
|
+
/**
|
25
|
+
* Copy constructor for overriding the client-side deadline
|
26
|
+
* @param {number} deadlineMillis
|
27
|
+
* @returns {GrpcConfiguration} a new GrpcConfiguration with the specified client-side deadline
|
28
|
+
*/
|
29
|
+
withDeadlineMillis(deadlineMillis: number): GrpcConfiguration;
|
30
|
+
/**
|
31
|
+
* @returns {number} the maximum amount of memory, in megabytes, that a session is allowed to consume. Sessions that consume
|
32
|
+
* more than this amount will return a ResourceExhausted error.
|
33
|
+
*/
|
34
|
+
getMaxSessionMemoryMb(): number;
|
35
|
+
/**
|
36
|
+
* Copy constructor for overriding the max session memory
|
37
|
+
* @param {number} maxSessionMemoryMb the desired maximum amount of memory, in megabytes, to allow a client session to consume
|
38
|
+
* @returns {GrpcConfiguration} a new GrpcConfiguration with the specified maximum memory
|
39
|
+
*/
|
40
|
+
withMaxSessionMemoryMb(maxSessionMemoryMb: number): GrpcConfiguration;
|
41
|
+
}
|
@@ -0,0 +1,3 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JwYy1jb25maWd1cmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbmZpZy90cmFuc3BvcnQvZ3JwYy1jb25maWd1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEdycGNDb25maWd1cmF0aW9uUHJvcHMge1xuICAvKipcbiAgICogbnVtYmVyIG9mIG1pbGxpc2Vjb25kcyB0aGUgY2xpZW50IGlzIHdpbGxpbmcgdG8gd2FpdCBmb3IgYW4gUlBDIHRvIGNvbXBsZXRlIGJlZm9yZSBpdCBpcyB0ZXJtaW5hdGVkXG4gICAqIHdpdGggYSBEZWFkbGluZUV4Y2VlZGVkIGVycm9yLlxuICAgKi9cbiAgZGVhZGxpbmVNaWxsaXM6IG51bWJlcjtcbiAgLyoqXG4gICAqIHRoZSBtYXhpbXVtIGFtb3VudCBvZiBtZW1vcnksIGluIG1lZ2FieXRlcywgdGhhdCBhIHNlc3Npb24gaXMgYWxsb3dlZCB0byBjb25zdW1lLiAgU2Vzc2lvbnMgdGhhdCBjb25zdW1lXG4gICAqIG1vcmUgdGhhbiB0aGlzIGFtb3VudCB3aWxsIHJldHVybiBhIFJlc291cmNlRXhoYXVzdGVkIGVycm9yLlxuICAgKi9cbiAgbWF4U2Vzc2lvbk1lbW9yeU1iOiBudW1iZXI7XG59XG5cbi8qKlxuICogRW5jYXBzdWxhdGVzIGdSUEMgY29uZmlndXJhdGlvbiB0dW5hYmxlcy5cbiAqIEBleHBvcnRcbiAqIEBpbnRlcmZhY2UgR3JwY0NvbmZpZ3VyYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHcnBjQ29uZmlndXJhdGlvbiB7XG4gIC8qKlxuICAgKiBAcmV0dXJucyB7bnVtYmVyfSBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIHRoZSBjbGllbnQgaXMgd2lsbGluZyB0byB3YWl0IGZvciBhbiBSUEMgdG8gY29tcGxldGUgYmVmb3JlIGl0IGlzIHRlcm1pbmF0ZWRcbiAgICogICAgd2l0aCBhIERlYWRsaW5lRXhjZWVkZWQgZXJyb3IuXG4gICAqL1xuICBnZXREZWFkbGluZU1pbGxpcygpOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIENvcHkgY29uc3RydWN0b3IgZm9yIG92ZXJyaWRpbmcgdGhlIGNsaWVudC1zaWRlIGRlYWRsaW5lXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBkZWFkbGluZU1pbGxpc1xuICAgKiBAcmV0dXJucyB7R3JwY0NvbmZpZ3VyYXRpb259IGEgbmV3IEdycGNDb25maWd1cmF0aW9uIHdpdGggdGhlIHNwZWNpZmllZCBjbGllbnQtc2lkZSBkZWFkbGluZVxuICAgKi9cbiAgd2l0aERlYWRsaW5lTWlsbGlzKGRlYWRsaW5lTWlsbGlzOiBudW1iZXIpOiBHcnBjQ29uZmlndXJhdGlvbjtcblxuICAvKipcbiAgICogQHJldHVybnMge251bWJlcn0gdGhlIG1heGltdW0gYW1vdW50IG9mIG1lbW9yeSwgaW4gbWVnYWJ5dGVzLCB0aGF0IGEgc2Vzc2lvbiBpcyBhbGxvd2VkIHRvIGNvbnN1bWUuICBTZXNzaW9ucyB0aGF0IGNvbnN1bWVcbiAgICogICAgbW9yZSB0aGFuIHRoaXMgYW1vdW50IHdpbGwgcmV0dXJuIGEgUmVzb3VyY2VFeGhhdXN0ZWQgZXJyb3IuXG4gICAqL1xuICBnZXRNYXhTZXNzaW9uTWVtb3J5TWIoKTogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBDb3B5IGNvbnN0cnVjdG9yIGZvciBvdmVycmlkaW5nIHRoZSBtYXggc2Vzc2lvbiBtZW1vcnlcbiAgICogQHBhcmFtIHtudW1iZXJ9IG1heFNlc3Npb25NZW1vcnlNYiB0aGUgZGVzaXJlZCBtYXhpbXVtIGFtb3VudCBvZiBtZW1vcnksIGluIG1lZ2FieXRlcywgdG8gYWxsb3cgYSBjbGllbnQgc2Vzc2lvbiB0byBjb25zdW1lXG4gICAqIEByZXR1cm5zIHtHcnBjQ29uZmlndXJhdGlvbn0gYSBuZXcgR3JwY0NvbmZpZ3VyYXRpb24gd2l0aCB0aGUgc3BlY2lmaWVkIG1heGltdW0gbWVtb3J5XG4gICAqL1xuICB3aXRoTWF4U2Vzc2lvbk1lbW9yeU1iKG1heFNlc3Npb25NZW1vcnlNYjogbnVtYmVyKTogR3JwY0NvbmZpZ3VyYXRpb247XG59XG4iXX0=
|
@@ -0,0 +1,19 @@
|
|
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("./grpc-configuration"), exports);
|
18
|
+
__exportStar(require("./transport-strategy"), exports);
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29uZmlnL3RyYW5zcG9ydC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdURBQXFDO0FBQ3JDLHVEQUFxQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZ3JwYy1jb25maWd1cmF0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vdHJhbnNwb3J0LXN0cmF0ZWd5JztcbiJdfQ==
|
@@ -0,0 +1,77 @@
|
|
1
|
+
import { GrpcConfiguration, GrpcConfigurationProps } from './grpc-configuration';
|
2
|
+
export interface TransportStrategyProps {
|
3
|
+
/**
|
4
|
+
* low-level gRPC settings for communication with the Momento server
|
5
|
+
*/
|
6
|
+
grpcConfiguration: GrpcConfiguration;
|
7
|
+
/**
|
8
|
+
* The maximum duration for which a connection may remain idle before being replaced. This
|
9
|
+
* setting can be used to force re-connection of a client if it has been idle for too long.
|
10
|
+
* In environments such as AWS lambda, if the lambda is suspended for too long the connection
|
11
|
+
* may be closed by the load balancer, resulting in an error on the subsequent request. If
|
12
|
+
* this setting is set to a duration less than the load balancer timeout, we can ensure that
|
13
|
+
* the connection will be refreshed to avoid errors.
|
14
|
+
* @returns {number}
|
15
|
+
*/
|
16
|
+
maxIdleMillis: number;
|
17
|
+
}
|
18
|
+
/**
|
19
|
+
* Configures the network options for communicating with the Momento service.
|
20
|
+
* @export
|
21
|
+
* @interface TransportStrategy
|
22
|
+
*/
|
23
|
+
export interface TransportStrategy {
|
24
|
+
/**
|
25
|
+
* Configures the low-level gRPC settings for the Momento client's communication
|
26
|
+
* with the Momento server.
|
27
|
+
* @returns {GrpcConfiguration}
|
28
|
+
*/
|
29
|
+
getGrpcConfig(): GrpcConfiguration;
|
30
|
+
/**
|
31
|
+
* Copy constructor for overriding the gRPC configuration
|
32
|
+
* @param {GrpcConfiguration} grpcConfig
|
33
|
+
* @returns {TransportStrategy} a new TransportStrategy with the specified gRPC config.
|
34
|
+
*/
|
35
|
+
withGrpcConfig(grpcConfig: GrpcConfiguration): TransportStrategy;
|
36
|
+
/**
|
37
|
+
* Copy constructor to update the client-side timeout
|
38
|
+
* @param {number} clientTimeoutMillis
|
39
|
+
* @returns {TransportStrategy} a new TransportStrategy with the specified client timeout
|
40
|
+
*/
|
41
|
+
withClientTimeoutMillis(clientTimeoutMillis: number): TransportStrategy;
|
42
|
+
/**
|
43
|
+
* The maximum duration for which a connection may remain idle before being replaced. This
|
44
|
+
* setting can be used to force re-connection of a client if it has been idle for too long.
|
45
|
+
* In environments such as AWS lambda, if the lambda is suspended for too long the connection
|
46
|
+
* may be closed by the load balancer, resulting in an error on the subsequent request. If
|
47
|
+
* this setting is set to a duration less than the load balancer timeout, we can ensure that
|
48
|
+
* the connection will be refreshed to avoid errors.
|
49
|
+
* @returns {number}
|
50
|
+
*/
|
51
|
+
getMaxIdleMillis(): number;
|
52
|
+
/**
|
53
|
+
* Copy constructor to update the max idle connection timeout. (See {getMaxIdleMillis}.)
|
54
|
+
* @param {number} maxIdleMillis
|
55
|
+
* @returns {TransportStrategy} a new TransportStrategy with the specified max idle connection timeout.
|
56
|
+
*/
|
57
|
+
withMaxIdleMillis(maxIdleMillis: number): TransportStrategy;
|
58
|
+
}
|
59
|
+
export declare class StaticGrpcConfiguration implements GrpcConfiguration {
|
60
|
+
private readonly deadlineMillis;
|
61
|
+
private readonly maxSessionMemoryMb;
|
62
|
+
constructor(props: GrpcConfigurationProps);
|
63
|
+
getDeadlineMillis(): number;
|
64
|
+
getMaxSessionMemoryMb(): number;
|
65
|
+
withDeadlineMillis(deadlineMillis: number): StaticGrpcConfiguration;
|
66
|
+
withMaxSessionMemoryMb(maxSessionMemoryMb: number): StaticGrpcConfiguration;
|
67
|
+
}
|
68
|
+
export declare class StaticTransportStrategy implements TransportStrategy {
|
69
|
+
private readonly grpcConfig;
|
70
|
+
private readonly maxIdleMillis;
|
71
|
+
constructor(props: TransportStrategyProps);
|
72
|
+
getGrpcConfig(): GrpcConfiguration;
|
73
|
+
withGrpcConfig(grpcConfig: GrpcConfiguration): StaticTransportStrategy;
|
74
|
+
getMaxIdleMillis(): number;
|
75
|
+
withMaxIdleMillis(maxIdleMillis: number): TransportStrategy;
|
76
|
+
withClientTimeoutMillis(clientTimeout: number): StaticTransportStrategy;
|
77
|
+
}
|
@@ -0,0 +1,60 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.StaticTransportStrategy = exports.StaticGrpcConfiguration = void 0;
|
4
|
+
class StaticGrpcConfiguration {
|
5
|
+
constructor(props) {
|
6
|
+
this.deadlineMillis = props.deadlineMillis;
|
7
|
+
this.maxSessionMemoryMb = props.maxSessionMemoryMb;
|
8
|
+
}
|
9
|
+
getDeadlineMillis() {
|
10
|
+
return this.deadlineMillis;
|
11
|
+
}
|
12
|
+
getMaxSessionMemoryMb() {
|
13
|
+
return this.maxSessionMemoryMb;
|
14
|
+
}
|
15
|
+
withDeadlineMillis(deadlineMillis) {
|
16
|
+
return new StaticGrpcConfiguration({
|
17
|
+
deadlineMillis: deadlineMillis,
|
18
|
+
maxSessionMemoryMb: this.maxSessionMemoryMb,
|
19
|
+
});
|
20
|
+
}
|
21
|
+
withMaxSessionMemoryMb(maxSessionMemoryMb) {
|
22
|
+
return new StaticGrpcConfiguration({
|
23
|
+
deadlineMillis: this.deadlineMillis,
|
24
|
+
maxSessionMemoryMb: maxSessionMemoryMb,
|
25
|
+
});
|
26
|
+
}
|
27
|
+
}
|
28
|
+
exports.StaticGrpcConfiguration = StaticGrpcConfiguration;
|
29
|
+
class StaticTransportStrategy {
|
30
|
+
constructor(props) {
|
31
|
+
this.grpcConfig = props.grpcConfiguration;
|
32
|
+
this.maxIdleMillis = props.maxIdleMillis;
|
33
|
+
}
|
34
|
+
getGrpcConfig() {
|
35
|
+
return this.grpcConfig;
|
36
|
+
}
|
37
|
+
withGrpcConfig(grpcConfig) {
|
38
|
+
return new StaticTransportStrategy({
|
39
|
+
grpcConfiguration: grpcConfig,
|
40
|
+
maxIdleMillis: this.maxIdleMillis,
|
41
|
+
});
|
42
|
+
}
|
43
|
+
getMaxIdleMillis() {
|
44
|
+
return this.maxIdleMillis;
|
45
|
+
}
|
46
|
+
withMaxIdleMillis(maxIdleMillis) {
|
47
|
+
return new StaticTransportStrategy({
|
48
|
+
grpcConfiguration: this.grpcConfig,
|
49
|
+
maxIdleMillis: maxIdleMillis,
|
50
|
+
});
|
51
|
+
}
|
52
|
+
withClientTimeoutMillis(clientTimeout) {
|
53
|
+
return new StaticTransportStrategy({
|
54
|
+
grpcConfiguration: this.grpcConfig.withDeadlineMillis(clientTimeout),
|
55
|
+
maxIdleMillis: this.maxIdleMillis,
|
56
|
+
});
|
57
|
+
}
|
58
|
+
}
|
59
|
+
exports.StaticTransportStrategy = StaticTransportStrategy;
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNwb3J0LXN0cmF0ZWd5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbmZpZy90cmFuc3BvcnQvdHJhbnNwb3J0LXN0cmF0ZWd5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWlFQSxNQUFhLHVCQUF1QjtJQUdsQyxZQUFZLEtBQTZCO1FBQ3ZDLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQztRQUMzQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDO0lBQ3JELENBQUM7SUFFRCxpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDN0IsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztJQUNqQyxDQUFDO0lBRUQsa0JBQWtCLENBQUMsY0FBc0I7UUFDdkMsT0FBTyxJQUFJLHVCQUF1QixDQUFDO1lBQ2pDLGNBQWMsRUFBRSxjQUFjO1lBQzlCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxrQkFBa0I7U0FDNUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELHNCQUFzQixDQUFDLGtCQUEwQjtRQUMvQyxPQUFPLElBQUksdUJBQXVCLENBQUM7WUFDakMsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO1lBQ25DLGtCQUFrQixFQUFFLGtCQUFrQjtTQUN2QyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUE3QkQsMERBNkJDO0FBRUQsTUFBYSx1QkFBdUI7SUFJbEMsWUFBWSxLQUE2QjtRQUN2QyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztRQUMxQyxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7SUFDM0MsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUVELGNBQWMsQ0FBQyxVQUE2QjtRQUMxQyxPQUFPLElBQUksdUJBQXVCLENBQUM7WUFDakMsaUJBQWlCLEVBQUUsVUFBVTtZQUM3QixhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7U0FDbEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsYUFBcUI7UUFDckMsT0FBTyxJQUFJLHVCQUF1QixDQUFDO1lBQ2pDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxVQUFVO1lBQ2xDLGFBQWEsRUFBRSxhQUFhO1NBQzdCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxhQUFxQjtRQUMzQyxPQUFPLElBQUksdUJBQXVCLENBQUM7WUFDakMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUM7WUFDcEUsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1NBQ2xDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQXJDRCwwREFxQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0dycGNDb25maWd1cmF0aW9uLCBHcnBjQ29uZmlndXJhdGlvblByb3BzfSBmcm9tICcuL2dycGMtY29uZmlndXJhdGlvbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNwb3J0U3RyYXRlZ3lQcm9wcyB7XG4gIC8qKlxuICAgKiBsb3ctbGV2ZWwgZ1JQQyBzZXR0aW5ncyBmb3IgY29tbXVuaWNhdGlvbiB3aXRoIHRoZSBNb21lbnRvIHNlcnZlclxuICAgKi9cbiAgZ3JwY0NvbmZpZ3VyYXRpb246IEdycGNDb25maWd1cmF0aW9uO1xuICAvKipcbiAgICogVGhlIG1heGltdW0gZHVyYXRpb24gZm9yIHdoaWNoIGEgY29ubmVjdGlvbiBtYXkgcmVtYWluIGlkbGUgYmVmb3JlIGJlaW5nIHJlcGxhY2VkLiAgVGhpc1xuICAgKiBzZXR0aW5nIGNhbiBiZSB1c2VkIHRvIGZvcmNlIHJlLWNvbm5lY3Rpb24gb2YgYSBjbGllbnQgaWYgaXQgaGFzIGJlZW4gaWRsZSBmb3IgdG9vIGxvbmcuXG4gICAqIEluIGVudmlyb25tZW50cyBzdWNoIGFzIEFXUyBsYW1iZGEsIGlmIHRoZSBsYW1iZGEgaXMgc3VzcGVuZGVkIGZvciB0b28gbG9uZyB0aGUgY29ubmVjdGlvblxuICAgKiBtYXkgYmUgY2xvc2VkIGJ5IHRoZSBsb2FkIGJhbGFuY2VyLCByZXN1bHRpbmcgaW4gYW4gZXJyb3Igb24gdGhlIHN1YnNlcXVlbnQgcmVxdWVzdC4gIElmXG4gICAqIHRoaXMgc2V0dGluZyBpcyBzZXQgdG8gYSBkdXJhdGlvbiBsZXNzIHRoYW4gdGhlIGxvYWQgYmFsYW5jZXIgdGltZW91dCwgd2UgY2FuIGVuc3VyZSB0aGF0XG4gICAqIHRoZSBjb25uZWN0aW9uIHdpbGwgYmUgcmVmcmVzaGVkIHRvIGF2b2lkIGVycm9ycy5cbiAgICogQHJldHVybnMge251bWJlcn1cbiAgICovXG4gIG1heElkbGVNaWxsaXM6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBDb25maWd1cmVzIHRoZSBuZXR3b3JrIG9wdGlvbnMgZm9yIGNvbW11bmljYXRpbmcgd2l0aCB0aGUgTW9tZW50byBzZXJ2aWNlLlxuICogQGV4cG9ydFxuICogQGludGVyZmFjZSBUcmFuc3BvcnRTdHJhdGVneVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zcG9ydFN0cmF0ZWd5IHtcbiAgLyoqXG4gICAqIENvbmZpZ3VyZXMgdGhlIGxvdy1sZXZlbCBnUlBDIHNldHRpbmdzIGZvciB0aGUgTW9tZW50byBjbGllbnQncyBjb21tdW5pY2F0aW9uXG4gICAqIHdpdGggdGhlIE1vbWVudG8gc2VydmVyLlxuICAgKiBAcmV0dXJucyB7R3JwY0NvbmZpZ3VyYXRpb259XG4gICAqL1xuICBnZXRHcnBjQ29uZmlnKCk6IEdycGNDb25maWd1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBDb3B5IGNvbnN0cnVjdG9yIGZvciBvdmVycmlkaW5nIHRoZSBnUlBDIGNvbmZpZ3VyYXRpb25cbiAgICogQHBhcmFtIHtHcnBjQ29uZmlndXJhdGlvbn0gZ3JwY0NvbmZpZ1xuICAgKiBAcmV0dXJucyB7VHJhbnNwb3J0U3RyYXRlZ3l9IGEgbmV3IFRyYW5zcG9ydFN0cmF0ZWd5IHdpdGggdGhlIHNwZWNpZmllZCBnUlBDIGNvbmZpZy5cbiAgICovXG4gIHdpdGhHcnBjQ29uZmlnKGdycGNDb25maWc6IEdycGNDb25maWd1cmF0aW9uKTogVHJhbnNwb3J0U3RyYXRlZ3k7XG5cbiAgLyoqXG4gICAqIENvcHkgY29uc3RydWN0b3IgdG8gdXBkYXRlIHRoZSBjbGllbnQtc2lkZSB0aW1lb3V0XG4gICAqIEBwYXJhbSB7bnVtYmVyfSBjbGllbnRUaW1lb3V0TWlsbGlzXG4gICAqIEByZXR1cm5zIHtUcmFuc3BvcnRTdHJhdGVneX0gYSBuZXcgVHJhbnNwb3J0U3RyYXRlZ3kgd2l0aCB0aGUgc3BlY2lmaWVkIGNsaWVudCB0aW1lb3V0XG4gICAqL1xuICB3aXRoQ2xpZW50VGltZW91dE1pbGxpcyhjbGllbnRUaW1lb3V0TWlsbGlzOiBudW1iZXIpOiBUcmFuc3BvcnRTdHJhdGVneTtcblxuICAvKipcbiAgICogVGhlIG1heGltdW0gZHVyYXRpb24gZm9yIHdoaWNoIGEgY29ubmVjdGlvbiBtYXkgcmVtYWluIGlkbGUgYmVmb3JlIGJlaW5nIHJlcGxhY2VkLiAgVGhpc1xuICAgKiBzZXR0aW5nIGNhbiBiZSB1c2VkIHRvIGZvcmNlIHJlLWNvbm5lY3Rpb24gb2YgYSBjbGllbnQgaWYgaXQgaGFzIGJlZW4gaWRsZSBmb3IgdG9vIGxvbmcuXG4gICAqIEluIGVudmlyb25tZW50cyBzdWNoIGFzIEFXUyBsYW1iZGEsIGlmIHRoZSBsYW1iZGEgaXMgc3VzcGVuZGVkIGZvciB0b28gbG9uZyB0aGUgY29ubmVjdGlvblxuICAgKiBtYXkgYmUgY2xvc2VkIGJ5IHRoZSBsb2FkIGJhbGFuY2VyLCByZXN1bHRpbmcgaW4gYW4gZXJyb3Igb24gdGhlIHN1YnNlcXVlbnQgcmVxdWVzdC4gIElmXG4gICAqIHRoaXMgc2V0dGluZyBpcyBzZXQgdG8gYSBkdXJhdGlvbiBsZXNzIHRoYW4gdGhlIGxvYWQgYmFsYW5jZXIgdGltZW91dCwgd2UgY2FuIGVuc3VyZSB0aGF0XG4gICAqIHRoZSBjb25uZWN0aW9uIHdpbGwgYmUgcmVmcmVzaGVkIHRvIGF2b2lkIGVycm9ycy5cbiAgICogQHJldHVybnMge251bWJlcn1cbiAgICovXG4gIGdldE1heElkbGVNaWxsaXMoKTogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBDb3B5IGNvbnN0cnVjdG9yIHRvIHVwZGF0ZSB0aGUgbWF4IGlkbGUgY29ubmVjdGlvbiB0aW1lb3V0LiAgKFNlZSB7Z2V0TWF4SWRsZU1pbGxpc30uKVxuICAgKiBAcGFyYW0ge251bWJlcn0gbWF4SWRsZU1pbGxpc1xuICAgKiBAcmV0dXJucyB7VHJhbnNwb3J0U3RyYXRlZ3l9IGEgbmV3IFRyYW5zcG9ydFN0cmF0ZWd5IHdpdGggdGhlIHNwZWNpZmllZCBtYXggaWRsZSBjb25uZWN0aW9uIHRpbWVvdXQuXG4gICAqL1xuICB3aXRoTWF4SWRsZU1pbGxpcyhtYXhJZGxlTWlsbGlzOiBudW1iZXIpOiBUcmFuc3BvcnRTdHJhdGVneTtcbn1cblxuZXhwb3J0IGNsYXNzIFN0YXRpY0dycGNDb25maWd1cmF0aW9uIGltcGxlbWVudHMgR3JwY0NvbmZpZ3VyYXRpb24ge1xuICBwcml2YXRlIHJlYWRvbmx5IGRlYWRsaW5lTWlsbGlzOiBudW1iZXI7XG4gIHByaXZhdGUgcmVhZG9ubHkgbWF4U2Vzc2lvbk1lbW9yeU1iOiBudW1iZXI7XG4gIGNvbnN0cnVjdG9yKHByb3BzOiBHcnBjQ29uZmlndXJhdGlvblByb3BzKSB7XG4gICAgdGhpcy5kZWFkbGluZU1pbGxpcyA9IHByb3BzLmRlYWRsaW5lTWlsbGlzO1xuICAgIHRoaXMubWF4U2Vzc2lvbk1lbW9yeU1iID0gcHJvcHMubWF4U2Vzc2lvbk1lbW9yeU1iO1xuICB9XG5cbiAgZ2V0RGVhZGxpbmVNaWxsaXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5kZWFkbGluZU1pbGxpcztcbiAgfVxuXG4gIGdldE1heFNlc3Npb25NZW1vcnlNYigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLm1heFNlc3Npb25NZW1vcnlNYjtcbiAgfVxuXG4gIHdpdGhEZWFkbGluZU1pbGxpcyhkZWFkbGluZU1pbGxpczogbnVtYmVyKTogU3RhdGljR3JwY0NvbmZpZ3VyYXRpb24ge1xuICAgIHJldHVybiBuZXcgU3RhdGljR3JwY0NvbmZpZ3VyYXRpb24oe1xuICAgICAgZGVhZGxpbmVNaWxsaXM6IGRlYWRsaW5lTWlsbGlzLFxuICAgICAgbWF4U2Vzc2lvbk1lbW9yeU1iOiB0aGlzLm1heFNlc3Npb25NZW1vcnlNYixcbiAgICB9KTtcbiAgfVxuXG4gIHdpdGhNYXhTZXNzaW9uTWVtb3J5TWIobWF4U2Vzc2lvbk1lbW9yeU1iOiBudW1iZXIpOiBTdGF0aWNHcnBjQ29uZmlndXJhdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBTdGF0aWNHcnBjQ29uZmlndXJhdGlvbih7XG4gICAgICBkZWFkbGluZU1pbGxpczogdGhpcy5kZWFkbGluZU1pbGxpcyxcbiAgICAgIG1heFNlc3Npb25NZW1vcnlNYjogbWF4U2Vzc2lvbk1lbW9yeU1iLFxuICAgIH0pO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTdGF0aWNUcmFuc3BvcnRTdHJhdGVneSBpbXBsZW1lbnRzIFRyYW5zcG9ydFN0cmF0ZWd5IHtcbiAgcHJpdmF0ZSByZWFkb25seSBncnBjQ29uZmlnOiBHcnBjQ29uZmlndXJhdGlvbjtcbiAgcHJpdmF0ZSByZWFkb25seSBtYXhJZGxlTWlsbGlzOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IocHJvcHM6IFRyYW5zcG9ydFN0cmF0ZWd5UHJvcHMpIHtcbiAgICB0aGlzLmdycGNDb25maWcgPSBwcm9wcy5ncnBjQ29uZmlndXJhdGlvbjtcbiAgICB0aGlzLm1heElkbGVNaWxsaXMgPSBwcm9wcy5tYXhJZGxlTWlsbGlzO1xuICB9XG5cbiAgZ2V0R3JwY0NvbmZpZygpOiBHcnBjQ29uZmlndXJhdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuZ3JwY0NvbmZpZztcbiAgfVxuXG4gIHdpdGhHcnBjQ29uZmlnKGdycGNDb25maWc6IEdycGNDb25maWd1cmF0aW9uKTogU3RhdGljVHJhbnNwb3J0U3RyYXRlZ3kge1xuICAgIHJldHVybiBuZXcgU3RhdGljVHJhbnNwb3J0U3RyYXRlZ3koe1xuICAgICAgZ3JwY0NvbmZpZ3VyYXRpb246IGdycGNDb25maWcsXG4gICAgICBtYXhJZGxlTWlsbGlzOiB0aGlzLm1heElkbGVNaWxsaXMsXG4gICAgfSk7XG4gIH1cblxuICBnZXRNYXhJZGxlTWlsbGlzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMubWF4SWRsZU1pbGxpcztcbiAgfVxuXG4gIHdpdGhNYXhJZGxlTWlsbGlzKG1heElkbGVNaWxsaXM6IG51bWJlcik6IFRyYW5zcG9ydFN0cmF0ZWd5IHtcbiAgICByZXR1cm4gbmV3IFN0YXRpY1RyYW5zcG9ydFN0cmF0ZWd5KHtcbiAgICAgIGdycGNDb25maWd1cmF0aW9uOiB0aGlzLmdycGNDb25maWcsXG4gICAgICBtYXhJZGxlTWlsbGlzOiBtYXhJZGxlTWlsbGlzLFxuICAgIH0pO1xuICB9XG5cbiAgd2l0aENsaWVudFRpbWVvdXRNaWxsaXMoY2xpZW50VGltZW91dDogbnVtYmVyKTogU3RhdGljVHJhbnNwb3J0U3RyYXRlZ3kge1xuICAgIHJldHVybiBuZXcgU3RhdGljVHJhbnNwb3J0U3RyYXRlZ3koe1xuICAgICAgZ3JwY0NvbmZpZ3VyYXRpb246IHRoaXMuZ3JwY0NvbmZpZy53aXRoRGVhZGxpbmVNaWxsaXMoY2xpZW50VGltZW91dCksXG4gICAgICBtYXhJZGxlTWlsbGlzOiB0aGlzLm1heElkbGVNaWxsaXMsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|