@effect-aws/client-ec2 1.3.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/EC2ClientInstance/package.json +6 -0
- package/EC2Service/package.json +6 -0
- package/EC2ServiceConfig/package.json +6 -0
- package/Errors/package.json +6 -0
- package/LICENSE +1 -1
- package/dist/cjs/EC2ClientInstance.d.ts +24 -0
- package/dist/cjs/EC2ClientInstance.d.ts.map +1 -0
- package/dist/cjs/EC2ClientInstance.js +50 -0
- package/dist/cjs/EC2ClientInstance.js.map +1 -0
- package/{lib → dist/cjs}/EC2Service.d.ts +121 -38
- package/dist/cjs/EC2Service.d.ts.map +1 -0
- package/dist/cjs/EC2Service.js +713 -0
- package/dist/cjs/EC2Service.js.map +1 -0
- package/dist/cjs/EC2ServiceConfig.d.ts +25 -0
- package/dist/cjs/EC2ServiceConfig.d.ts.map +1 -0
- package/dist/cjs/EC2ServiceConfig.js +35 -0
- package/dist/cjs/EC2ServiceConfig.js.map +1 -0
- package/dist/cjs/Errors.d.ts +11 -0
- package/dist/cjs/Errors.d.ts.map +1 -0
- package/dist/cjs/Errors.js +8 -0
- package/dist/cjs/Errors.js.map +1 -0
- package/dist/cjs/index.d.ts +39 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +56 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/dts/EC2ClientInstance.d.ts +24 -0
- package/dist/dts/EC2ClientInstance.d.ts.map +1 -0
- package/dist/dts/EC2Service.d.ts +3333 -0
- package/dist/dts/EC2Service.d.ts.map +1 -0
- package/dist/dts/EC2ServiceConfig.d.ts +25 -0
- package/dist/dts/EC2ServiceConfig.d.ts.map +1 -0
- package/dist/dts/Errors.d.ts +11 -0
- package/dist/dts/Errors.d.ts.map +1 -0
- package/dist/dts/index.d.ts +39 -0
- package/dist/dts/index.d.ts.map +1 -0
- package/dist/esm/EC2ClientInstance.js +23 -0
- package/dist/esm/EC2ClientInstance.js.map +1 -0
- package/dist/esm/EC2Service.js +686 -0
- package/dist/esm/EC2Service.js.map +1 -0
- package/dist/esm/EC2ServiceConfig.js +31 -0
- package/dist/esm/EC2ServiceConfig.js.map +1 -0
- package/dist/esm/Errors.js +5 -0
- package/dist/esm/Errors.js.map +1 -0
- package/dist/esm/index.js +27 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/package.json +4 -0
- package/package.json +60 -43
- package/src/EC2ClientInstance.ts +33 -0
- package/src/EC2Service.ts +9939 -0
- package/src/EC2ServiceConfig.ts +51 -0
- package/src/Errors.ts +11 -0
- package/src/index.ts +44 -0
- package/CHANGELOG.md +0 -33
- package/docgen.json +0 -8
- package/lib/EC2ClientInstance.d.ts +0 -31
- package/lib/EC2ClientInstance.js +0 -57
- package/lib/EC2ClientInstanceConfig.d.ts +0 -23
- package/lib/EC2ClientInstanceConfig.js +0 -44
- package/lib/EC2Service.js +0 -724
- package/lib/Errors.d.ts +0 -15
- package/lib/Errors.js +0 -30
- package/lib/esm/EC2ClientInstance.js +0 -30
- package/lib/esm/EC2ClientInstanceConfig.js +0 -40
- package/lib/esm/EC2Service.js +0 -720
- package/lib/esm/Errors.js +0 -4
- package/lib/esm/index.js +0 -5
- package/lib/index.d.ts +0 -4
- package/lib/index.js +0 -21
- package/project.json +0 -77
- package/vitest.config.ts +0 -3
package/lib/Errors.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { EC2ServiceException } from "@aws-sdk/client-ec2";
|
|
2
|
-
import * as Data from "effect/Data";
|
|
3
|
-
export type TaggedException<T extends {
|
|
4
|
-
name: string;
|
|
5
|
-
}> = T & {
|
|
6
|
-
readonly _tag: T["name"];
|
|
7
|
-
};
|
|
8
|
-
export type EC2ServiceError = TaggedException<EC2ServiceException & {
|
|
9
|
-
name: "EC2ServiceError";
|
|
10
|
-
}>;
|
|
11
|
-
export declare const EC2ServiceError: Data.Case.Constructor<EC2ServiceError, "_tag">;
|
|
12
|
-
export type SdkError = TaggedException<Error & {
|
|
13
|
-
name: "SdkError";
|
|
14
|
-
}>;
|
|
15
|
-
export declare const SdkError: Data.Case.Constructor<SdkError, "_tag">;
|
package/lib/Errors.js
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.SdkError = exports.EC2ServiceError = void 0;
|
|
27
|
-
const Data = __importStar(require("effect/Data"));
|
|
28
|
-
exports.EC2ServiceError = Data.tagged("EC2ServiceError");
|
|
29
|
-
exports.SdkError = Data.tagged("SdkError");
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLGtEQUFvQztBQVN2QixRQUFBLGVBQWUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFrQixpQkFBaUIsQ0FBQyxDQUFDO0FBRWxFLFFBQUEsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQVcsVUFBVSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEVDMlNlcnZpY2VFeGNlcHRpb24gfSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LWVjMlwiO1xuaW1wb3J0ICogYXMgRGF0YSBmcm9tIFwiZWZmZWN0L0RhdGFcIjtcblxuZXhwb3J0IHR5cGUgVGFnZ2VkRXhjZXB0aW9uPFQgZXh0ZW5kcyB7IG5hbWU6IHN0cmluZyB9PiA9IFQgJiB7XG4gIHJlYWRvbmx5IF90YWc6IFRbXCJuYW1lXCJdO1xufTtcblxuZXhwb3J0IHR5cGUgRUMyU2VydmljZUVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFxuICBFQzJTZXJ2aWNlRXhjZXB0aW9uICYgeyBuYW1lOiBcIkVDMlNlcnZpY2VFcnJvclwiIH1cbj47XG5leHBvcnQgY29uc3QgRUMyU2VydmljZUVycm9yID0gRGF0YS50YWdnZWQ8RUMyU2VydmljZUVycm9yPihcIkVDMlNlcnZpY2VFcnJvclwiKTtcbmV4cG9ydCB0eXBlIFNka0Vycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEVycm9yICYgeyBuYW1lOiBcIlNka0Vycm9yXCIgfT47XG5leHBvcnQgY29uc3QgU2RrRXJyb3IgPSBEYXRhLnRhZ2dlZDxTZGtFcnJvcj4oXCJTZGtFcnJvclwiKTtcbiJdfQ==
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @since 1.0.0
|
|
3
|
-
*/
|
|
4
|
-
import { EC2Client } from "@aws-sdk/client-ec2";
|
|
5
|
-
import * as Context from "effect/Context";
|
|
6
|
-
import * as Effect from "effect/Effect";
|
|
7
|
-
import * as Layer from "effect/Layer";
|
|
8
|
-
import { DefaultEC2ClientConfigLayer, EC2ClientInstanceConfig, } from "./EC2ClientInstanceConfig";
|
|
9
|
-
/**
|
|
10
|
-
* @since 1.0.0
|
|
11
|
-
* @category tags
|
|
12
|
-
*/
|
|
13
|
-
export class EC2ClientInstance extends Context.Tag("@effect-aws/client-ec2/EC2ClientInstance")() {
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* @since 1.0.0
|
|
17
|
-
* @category constructors
|
|
18
|
-
*/
|
|
19
|
-
export const makeEC2ClientInstance = Effect.map(EC2ClientInstanceConfig, (config) => new EC2Client(config));
|
|
20
|
-
/**
|
|
21
|
-
* @since 1.0.0
|
|
22
|
-
* @category layers
|
|
23
|
-
*/
|
|
24
|
-
export const EC2ClientInstanceLayer = Layer.effect(EC2ClientInstance, makeEC2ClientInstance);
|
|
25
|
-
/**
|
|
26
|
-
* @since 1.0.0
|
|
27
|
-
* @category layers
|
|
28
|
-
*/
|
|
29
|
-
export const DefaultEC2ClientInstanceLayer = EC2ClientInstanceLayer.pipe(Layer.provide(DefaultEC2ClientConfigLayer));
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRUMyQ2xpZW50SW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvRUMyQ2xpZW50SW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxLQUFLLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEtBQUssTUFBTSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEtBQUssS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUN0QyxPQUFPLEVBQ0wsMkJBQTJCLEVBQzNCLHVCQUF1QixHQUN4QixNQUFNLDJCQUEyQixDQUFDO0FBRW5DOzs7R0FHRztBQUNILE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxPQUFPLENBQUMsR0FBRyxDQUNoRCwwQ0FBMEMsQ0FDM0MsRUFBZ0M7Q0FBRztBQUVwQzs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUM3Qyx1QkFBdUIsRUFDdkIsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLElBQUksU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUNsQyxDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FDaEQsaUJBQWlCLEVBQ2pCLHFCQUFxQixDQUN0QixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxDQUN0RSxLQUFLLENBQUMsT0FBTyxDQUFDLDJCQUEyQixDQUFDLENBQzNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzaW5jZSAxLjAuMFxuICovXG5pbXBvcnQgeyBFQzJDbGllbnQgfSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LWVjMlwiO1xuaW1wb3J0ICogYXMgQ29udGV4dCBmcm9tIFwiZWZmZWN0L0NvbnRleHRcIjtcbmltcG9ydCAqIGFzIEVmZmVjdCBmcm9tIFwiZWZmZWN0L0VmZmVjdFwiO1xuaW1wb3J0ICogYXMgTGF5ZXIgZnJvbSBcImVmZmVjdC9MYXllclwiO1xuaW1wb3J0IHtcbiAgRGVmYXVsdEVDMkNsaWVudENvbmZpZ0xheWVyLFxuICBFQzJDbGllbnRJbnN0YW5jZUNvbmZpZyxcbn0gZnJvbSBcIi4vRUMyQ2xpZW50SW5zdGFuY2VDb25maWdcIjtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSB0YWdzXG4gKi9cbmV4cG9ydCBjbGFzcyBFQzJDbGllbnRJbnN0YW5jZSBleHRlbmRzIENvbnRleHQuVGFnKFxuICBcIkBlZmZlY3QtYXdzL2NsaWVudC1lYzIvRUMyQ2xpZW50SW5zdGFuY2VcIixcbik8RUMyQ2xpZW50SW5zdGFuY2UsIEVDMkNsaWVudD4oKSB7fVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZUVDMkNsaWVudEluc3RhbmNlID0gRWZmZWN0Lm1hcChcbiAgRUMyQ2xpZW50SW5zdGFuY2VDb25maWcsXG4gIChjb25maWcpID0+IG5ldyBFQzJDbGllbnQoY29uZmlnKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBFQzJDbGllbnRJbnN0YW5jZUxheWVyID0gTGF5ZXIuZWZmZWN0KFxuICBFQzJDbGllbnRJbnN0YW5jZSxcbiAgbWFrZUVDMkNsaWVudEluc3RhbmNlLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRFQzJDbGllbnRJbnN0YW5jZUxheWVyID0gRUMyQ2xpZW50SW5zdGFuY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKERlZmF1bHRFQzJDbGllbnRDb25maWdMYXllciksXG4pO1xuIl19
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { Context, Effect, Layer, Runtime } from "effect";
|
|
2
|
-
/**
|
|
3
|
-
* @since 1.0.0
|
|
4
|
-
* @category tags
|
|
5
|
-
*/
|
|
6
|
-
export class EC2ClientInstanceConfig extends Context.Tag("@effect-aws/client-ec2/EC2ClientInstanceConfig")() {
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* @since 1.0.0
|
|
10
|
-
* @category constructors
|
|
11
|
-
*/
|
|
12
|
-
export const makeDefaultEC2ClientInstanceConfig = Effect.gen(function* (_) {
|
|
13
|
-
const runtime = yield* _(Effect.runtime());
|
|
14
|
-
const runSync = Runtime.runSync(runtime);
|
|
15
|
-
return {
|
|
16
|
-
logger: {
|
|
17
|
-
info(m) {
|
|
18
|
-
Effect.logInfo(m).pipe(runSync);
|
|
19
|
-
},
|
|
20
|
-
warn(m) {
|
|
21
|
-
Effect.logWarning(m).pipe(runSync);
|
|
22
|
-
},
|
|
23
|
-
error(m) {
|
|
24
|
-
Effect.logError(m).pipe(runSync);
|
|
25
|
-
},
|
|
26
|
-
debug(m) {
|
|
27
|
-
Effect.logDebug(m).pipe(runSync);
|
|
28
|
-
},
|
|
29
|
-
trace(m) {
|
|
30
|
-
Effect.logTrace(m).pipe(runSync);
|
|
31
|
-
},
|
|
32
|
-
},
|
|
33
|
-
};
|
|
34
|
-
});
|
|
35
|
-
/**
|
|
36
|
-
* @since 1.0.0
|
|
37
|
-
* @category layers
|
|
38
|
-
*/
|
|
39
|
-
export const DefaultEC2ClientConfigLayer = Layer.effect(EC2ClientInstanceConfig, makeDefaultEC2ClientInstanceConfig);
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRUMyQ2xpZW50SW5zdGFuY2VDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvRUMyQ2xpZW50SW5zdGFuY2VDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUV6RDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsT0FBTyxDQUFDLEdBQUcsQ0FDdEQsZ0RBQWdELENBQ2pELEVBQTRDO0NBQUc7QUFFaEQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0NBQWtDLEdBQzdDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztJQUNyQixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBUyxDQUFDLENBQUM7SUFDbEQsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV6QyxPQUFPO1FBQ0wsTUFBTSxFQUFFO1lBQ04sSUFBSSxDQUFDLENBQUM7Z0JBQ0osTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbEMsQ0FBQztZQUNELElBQUksQ0FBQyxDQUFDO2dCQUNKLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3JDLENBQUM7WUFDRCxLQUFLLENBQUMsQ0FBQztnQkFDTCxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBQ0QsS0FBSyxDQUFDLENBQUM7Z0JBQ0wsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUNELEtBQUssQ0FBQyxDQUFDO2dCQUNMLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ25DLENBQUM7U0FDRjtLQUNGLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQztBQUVMOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQ3JELHVCQUF1QixFQUN2QixrQ0FBa0MsQ0FDbkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmltcG9ydCB0eXBlIHsgRUMyQ2xpZW50Q29uZmlnIH0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1lYzJcIjtcbmltcG9ydCB7IENvbnRleHQsIEVmZmVjdCwgTGF5ZXIsIFJ1bnRpbWUgfSBmcm9tIFwiZWZmZWN0XCI7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgdGFnc1xuICovXG5leHBvcnQgY2xhc3MgRUMyQ2xpZW50SW5zdGFuY2VDb25maWcgZXh0ZW5kcyBDb250ZXh0LlRhZyhcbiAgXCJAZWZmZWN0LWF3cy9jbGllbnQtZWMyL0VDMkNsaWVudEluc3RhbmNlQ29uZmlnXCIsXG4pPEVDMkNsaWVudEluc3RhbmNlQ29uZmlnLCBFQzJDbGllbnRDb25maWc+KCkge31cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBjb25zdHJ1Y3RvcnNcbiAqL1xuZXhwb3J0IGNvbnN0IG1ha2VEZWZhdWx0RUMyQ2xpZW50SW5zdGFuY2VDb25maWc6IEVmZmVjdC5FZmZlY3Q8RUMyQ2xpZW50Q29uZmlnPiA9XG4gIEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gICAgY29uc3QgcnVudGltZSA9IHlpZWxkKiBfKEVmZmVjdC5ydW50aW1lPG5ldmVyPigpKTtcbiAgICBjb25zdCBydW5TeW5jID0gUnVudGltZS5ydW5TeW5jKHJ1bnRpbWUpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGxvZ2dlcjoge1xuICAgICAgICBpbmZvKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nSW5mbyhtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgICB3YXJuKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nV2FybmluZyhtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcihtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ0Vycm9yKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICAgIGRlYnVnKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nRGVidWcobSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHJhY2UobSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dUcmFjZShtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuICB9KTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRFQzJDbGllbnRDb25maWdMYXllciA9IExheWVyLmVmZmVjdChcbiAgRUMyQ2xpZW50SW5zdGFuY2VDb25maWcsXG4gIG1ha2VEZWZhdWx0RUMyQ2xpZW50SW5zdGFuY2VDb25maWcsXG4pO1xuIl19
|