@effect-aws/client-cloudsearch 1.2.0 → 1.9.3
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/CloudSearchClientInstance/package.json +6 -0
- package/CloudSearchService/package.json +6 -0
- package/CloudSearchServiceConfig/package.json +6 -0
- package/Errors/package.json +6 -0
- package/dist/cjs/CloudSearchClientInstance.d.ts +24 -0
- package/dist/cjs/CloudSearchClientInstance.d.ts.map +1 -0
- package/dist/cjs/CloudSearchClientInstance.js +50 -0
- package/dist/cjs/CloudSearchClientInstance.js.map +1 -0
- package/{lib → dist/cjs}/CloudSearchService.d.ts +17 -67
- package/dist/cjs/CloudSearchService.d.ts.map +1 -0
- package/dist/cjs/CloudSearchService.js +85 -0
- package/dist/cjs/CloudSearchService.js.map +1 -0
- package/dist/cjs/CloudSearchServiceConfig.d.ts +25 -0
- package/dist/cjs/CloudSearchServiceConfig.d.ts.map +1 -0
- package/dist/cjs/CloudSearchServiceConfig.js +35 -0
- package/dist/cjs/CloudSearchServiceConfig.js.map +1 -0
- package/{lib → dist/cjs}/Errors.d.ts +6 -11
- package/dist/cjs/Errors.d.ts.map +1 -0
- package/dist/cjs/Errors.js +16 -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/CloudSearchClientInstance.d.ts +24 -0
- package/dist/dts/CloudSearchClientInstance.d.ts.map +1 -0
- package/dist/dts/CloudSearchService.d.ts +145 -0
- package/dist/dts/CloudSearchService.d.ts.map +1 -0
- package/dist/dts/CloudSearchServiceConfig.d.ts +25 -0
- package/dist/dts/CloudSearchServiceConfig.d.ts.map +1 -0
- package/dist/dts/Errors.d.ts +15 -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/CloudSearchClientInstance.js +23 -0
- package/dist/esm/CloudSearchClientInstance.js.map +1 -0
- package/dist/esm/CloudSearchService.js +58 -0
- package/dist/esm/CloudSearchService.js.map +1 -0
- package/dist/esm/CloudSearchServiceConfig.js +31 -0
- package/dist/esm/CloudSearchServiceConfig.js.map +1 -0
- package/dist/esm/Errors.js +13 -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/CloudSearchClientInstance.ts +33 -0
- package/src/CloudSearchService.ts +532 -0
- package/src/CloudSearchServiceConfig.ts +52 -0
- package/src/Errors.ts +35 -0
- package/src/index.ts +44 -0
- package/CHANGELOG.md +0 -35
- package/docgen.json +0 -8
- package/lib/CloudSearchClientInstance.d.ts +0 -31
- package/lib/CloudSearchClientInstance.js +0 -57
- package/lib/CloudSearchClientInstanceConfig.d.ts +0 -23
- package/lib/CloudSearchClientInstanceConfig.js +0 -44
- package/lib/CloudSearchService.js +0 -114
- package/lib/Errors.js +0 -16
- package/lib/esm/CloudSearchClientInstance.js +0 -30
- package/lib/esm/CloudSearchClientInstanceConfig.js +0 -40
- package/lib/esm/CloudSearchService.js +0 -110
- package/lib/esm/Errors.js +0 -13
- 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
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @since 1.0.0
|
|
3
|
-
*/
|
|
4
|
-
import { CloudSearchClient } from "@aws-sdk/client-cloudsearch";
|
|
5
|
-
import * as Context from "effect/Context";
|
|
6
|
-
import * as Effect from "effect/Effect";
|
|
7
|
-
import * as Layer from "effect/Layer";
|
|
8
|
-
import { CloudSearchClientInstanceConfig } from "./CloudSearchClientInstanceConfig";
|
|
9
|
-
declare const CloudSearchClientInstance_base: Context.TagClass<CloudSearchClientInstance, "@effect-aws/client-cloudsearch/CloudSearchClientInstance", CloudSearchClient>;
|
|
10
|
-
/**
|
|
11
|
-
* @since 1.0.0
|
|
12
|
-
* @category tags
|
|
13
|
-
*/
|
|
14
|
-
export declare class CloudSearchClientInstance extends CloudSearchClientInstance_base {
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* @since 1.0.0
|
|
18
|
-
* @category constructors
|
|
19
|
-
*/
|
|
20
|
-
export declare const makeCloudSearchClientInstance: Effect.Effect<CloudSearchClient, never, import("effect/Scope").Scope | CloudSearchClientInstanceConfig>;
|
|
21
|
-
/**
|
|
22
|
-
* @since 1.0.0
|
|
23
|
-
* @category layers
|
|
24
|
-
*/
|
|
25
|
-
export declare const CloudSearchClientInstanceLayer: Layer.Layer<CloudSearchClientInstance, never, CloudSearchClientInstanceConfig>;
|
|
26
|
-
/**
|
|
27
|
-
* @since 1.0.0
|
|
28
|
-
* @category layers
|
|
29
|
-
*/
|
|
30
|
-
export declare const DefaultCloudSearchClientInstanceLayer: Layer.Layer<CloudSearchClientInstance, never, never>;
|
|
31
|
-
export {};
|
|
@@ -1,57 +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.DefaultCloudSearchClientInstanceLayer = exports.CloudSearchClientInstanceLayer = exports.makeCloudSearchClientInstance = exports.CloudSearchClientInstance = void 0;
|
|
27
|
-
/**
|
|
28
|
-
* @since 1.0.0
|
|
29
|
-
*/
|
|
30
|
-
const client_cloudsearch_1 = require("@aws-sdk/client-cloudsearch");
|
|
31
|
-
const Context = __importStar(require("effect/Context"));
|
|
32
|
-
const Effect = __importStar(require("effect/Effect"));
|
|
33
|
-
const Layer = __importStar(require("effect/Layer"));
|
|
34
|
-
const CloudSearchClientInstanceConfig_1 = require("./CloudSearchClientInstanceConfig");
|
|
35
|
-
/**
|
|
36
|
-
* @since 1.0.0
|
|
37
|
-
* @category tags
|
|
38
|
-
*/
|
|
39
|
-
class CloudSearchClientInstance extends Context.Tag("@effect-aws/client-cloudsearch/CloudSearchClientInstance")() {
|
|
40
|
-
}
|
|
41
|
-
exports.CloudSearchClientInstance = CloudSearchClientInstance;
|
|
42
|
-
/**
|
|
43
|
-
* @since 1.0.0
|
|
44
|
-
* @category constructors
|
|
45
|
-
*/
|
|
46
|
-
exports.makeCloudSearchClientInstance = Effect.flatMap(CloudSearchClientInstanceConfig_1.CloudSearchClientInstanceConfig, (config) => Effect.acquireRelease(Effect.sync(() => new client_cloudsearch_1.CloudSearchClient(config)), (client) => Effect.sync(() => client.destroy())));
|
|
47
|
-
/**
|
|
48
|
-
* @since 1.0.0
|
|
49
|
-
* @category layers
|
|
50
|
-
*/
|
|
51
|
-
exports.CloudSearchClientInstanceLayer = Layer.scoped(CloudSearchClientInstance, exports.makeCloudSearchClientInstance);
|
|
52
|
-
/**
|
|
53
|
-
* @since 1.0.0
|
|
54
|
-
* @category layers
|
|
55
|
-
*/
|
|
56
|
-
exports.DefaultCloudSearchClientInstanceLayer = exports.CloudSearchClientInstanceLayer.pipe(Layer.provide(CloudSearchClientInstanceConfig_1.DefaultCloudSearchClientConfigLayer));
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9DbG91ZFNlYXJjaENsaWVudEluc3RhbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0dBRUc7QUFDSCxvRUFBZ0U7QUFDaEUsd0RBQTBDO0FBQzFDLHNEQUF3QztBQUN4QyxvREFBc0M7QUFDdEMsdUZBRzJDO0FBRTNDOzs7R0FHRztBQUNILE1BQWEseUJBQTBCLFNBQVEsT0FBTyxDQUFDLEdBQUcsQ0FDeEQsMERBQTBELENBQzNELEVBQWdEO0NBQUc7QUFGcEQsOERBRW9EO0FBRXBEOzs7R0FHRztBQUNVLFFBQUEsNkJBQTZCLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FDekQsaUVBQStCLEVBQy9CLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FDVCxNQUFNLENBQUMsY0FBYyxDQUNuQixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksc0NBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsRUFDaEQsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQ2hELENBQ0osQ0FBQztBQUVGOzs7R0FHRztBQUNVLFFBQUEsOEJBQThCLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FDeEQseUJBQXlCLEVBQ3pCLHFDQUE2QixDQUM5QixDQUFDO0FBRUY7OztHQUdHO0FBQ1UsUUFBQSxxQ0FBcUMsR0FDaEQsc0NBQThCLENBQUMsSUFBSSxDQUNqQyxLQUFLLENBQUMsT0FBTyxDQUFDLHFFQUFtQyxDQUFDLENBQ25ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzaW5jZSAxLjAuMFxuICovXG5pbXBvcnQgeyBDbG91ZFNlYXJjaENsaWVudCB9IGZyb20gXCJAYXdzLXNkay9jbGllbnQtY2xvdWRzZWFyY2hcIjtcbmltcG9ydCAqIGFzIENvbnRleHQgZnJvbSBcImVmZmVjdC9Db250ZXh0XCI7XG5pbXBvcnQgKiBhcyBFZmZlY3QgZnJvbSBcImVmZmVjdC9FZmZlY3RcIjtcbmltcG9ydCAqIGFzIExheWVyIGZyb20gXCJlZmZlY3QvTGF5ZXJcIjtcbmltcG9ydCB7XG4gIERlZmF1bHRDbG91ZFNlYXJjaENsaWVudENvbmZpZ0xheWVyLFxuICBDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlQ29uZmlnLFxufSBmcm9tIFwiLi9DbG91ZFNlYXJjaENsaWVudEluc3RhbmNlQ29uZmlnXCI7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgdGFnc1xuICovXG5leHBvcnQgY2xhc3MgQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZSBleHRlbmRzIENvbnRleHQuVGFnKFxuICBcIkBlZmZlY3QtYXdzL2NsaWVudC1jbG91ZHNlYXJjaC9DbG91ZFNlYXJjaENsaWVudEluc3RhbmNlXCIsXG4pPENsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2UsIENsb3VkU2VhcmNoQ2xpZW50PigpIHt9XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgY29uc3RydWN0b3JzXG4gKi9cbmV4cG9ydCBjb25zdCBtYWtlQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZSA9IEVmZmVjdC5mbGF0TWFwKFxuICBDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlQ29uZmlnLFxuICAoY29uZmlnKSA9PlxuICAgIEVmZmVjdC5hY3F1aXJlUmVsZWFzZShcbiAgICAgIEVmZmVjdC5zeW5jKCgpID0+IG5ldyBDbG91ZFNlYXJjaENsaWVudChjb25maWcpKSxcbiAgICAgIChjbGllbnQpID0+IEVmZmVjdC5zeW5jKCgpID0+IGNsaWVudC5kZXN0cm95KCkpLFxuICAgICksXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUxheWVyID0gTGF5ZXIuc2NvcGVkKFxuICBDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlLFxuICBtYWtlQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0Q2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUxheWVyID1cbiAgQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUxheWVyLnBpcGUoXG4gICAgTGF5ZXIucHJvdmlkZShEZWZhdWx0Q2xvdWRTZWFyY2hDbGllbnRDb25maWdMYXllciksXG4gICk7XG4iXX0=
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @since 1.0.0
|
|
3
|
-
*/
|
|
4
|
-
import type { CloudSearchClientConfig } from "@aws-sdk/client-cloudsearch";
|
|
5
|
-
import { Context, Effect, Layer } from "effect";
|
|
6
|
-
declare const CloudSearchClientInstanceConfig_base: Context.TagClass<CloudSearchClientInstanceConfig, "@effect-aws/client-cloudsearch/CloudSearchClientInstanceConfig", CloudSearchClientConfig>;
|
|
7
|
-
/**
|
|
8
|
-
* @since 1.0.0
|
|
9
|
-
* @category tags
|
|
10
|
-
*/
|
|
11
|
-
export declare class CloudSearchClientInstanceConfig extends CloudSearchClientInstanceConfig_base {
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* @since 1.0.0
|
|
15
|
-
* @category constructors
|
|
16
|
-
*/
|
|
17
|
-
export declare const makeDefaultCloudSearchClientInstanceConfig: Effect.Effect<CloudSearchClientConfig>;
|
|
18
|
-
/**
|
|
19
|
-
* @since 1.0.0
|
|
20
|
-
* @category layers
|
|
21
|
-
*/
|
|
22
|
-
export declare const DefaultCloudSearchClientConfigLayer: Layer.Layer<CloudSearchClientInstanceConfig, never, never>;
|
|
23
|
-
export {};
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DefaultCloudSearchClientConfigLayer = exports.makeDefaultCloudSearchClientInstanceConfig = exports.CloudSearchClientInstanceConfig = void 0;
|
|
4
|
-
const effect_1 = require("effect");
|
|
5
|
-
/**
|
|
6
|
-
* @since 1.0.0
|
|
7
|
-
* @category tags
|
|
8
|
-
*/
|
|
9
|
-
class CloudSearchClientInstanceConfig extends effect_1.Context.Tag("@effect-aws/client-cloudsearch/CloudSearchClientInstanceConfig")() {
|
|
10
|
-
}
|
|
11
|
-
exports.CloudSearchClientInstanceConfig = CloudSearchClientInstanceConfig;
|
|
12
|
-
/**
|
|
13
|
-
* @since 1.0.0
|
|
14
|
-
* @category constructors
|
|
15
|
-
*/
|
|
16
|
-
exports.makeDefaultCloudSearchClientInstanceConfig = effect_1.Effect.gen(function* (_) {
|
|
17
|
-
const runtime = yield* _(effect_1.Effect.runtime());
|
|
18
|
-
const runSync = effect_1.Runtime.runSync(runtime);
|
|
19
|
-
return {
|
|
20
|
-
logger: {
|
|
21
|
-
info(m) {
|
|
22
|
-
effect_1.Effect.logInfo(m).pipe(runSync);
|
|
23
|
-
},
|
|
24
|
-
warn(m) {
|
|
25
|
-
effect_1.Effect.logWarning(m).pipe(runSync);
|
|
26
|
-
},
|
|
27
|
-
error(m) {
|
|
28
|
-
effect_1.Effect.logError(m).pipe(runSync);
|
|
29
|
-
},
|
|
30
|
-
debug(m) {
|
|
31
|
-
effect_1.Effect.logDebug(m).pipe(runSync);
|
|
32
|
-
},
|
|
33
|
-
trace(m) {
|
|
34
|
-
effect_1.Effect.logTrace(m).pipe(runSync);
|
|
35
|
-
},
|
|
36
|
-
},
|
|
37
|
-
};
|
|
38
|
-
});
|
|
39
|
-
/**
|
|
40
|
-
* @since 1.0.0
|
|
41
|
-
* @category layers
|
|
42
|
-
*/
|
|
43
|
-
exports.DefaultCloudSearchClientConfigLayer = effect_1.Layer.effect(CloudSearchClientInstanceConfig, exports.makeDefaultCloudSearchClientInstanceConfig);
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9DbG91ZFNlYXJjaENsaWVudEluc3RhbmNlQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUlBLG1DQUF5RDtBQUV6RDs7O0dBR0c7QUFDSCxNQUFhLCtCQUFnQyxTQUFRLGdCQUFPLENBQUMsR0FBRyxDQUM5RCxnRUFBZ0UsQ0FDakUsRUFBNEQ7Q0FBRztBQUZoRSwwRUFFZ0U7QUFFaEU7OztHQUdHO0FBQ1UsUUFBQSwwQ0FBMEMsR0FDckQsZUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO0lBQ3JCLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxlQUFNLENBQUMsT0FBTyxFQUFTLENBQUMsQ0FBQztJQUNsRCxNQUFNLE9BQU8sR0FBRyxnQkFBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV6QyxPQUFPO1FBQ0wsTUFBTSxFQUFFO1lBQ04sSUFBSSxDQUFDLENBQUM7Z0JBQ0osZUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbEMsQ0FBQztZQUNELElBQUksQ0FBQyxDQUFDO2dCQUNKLGVBQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3JDLENBQUM7WUFDRCxLQUFLLENBQUMsQ0FBQztnQkFDTCxlQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBQ0QsS0FBSyxDQUFDLENBQUM7Z0JBQ0wsZUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUNELEtBQUssQ0FBQyxDQUFDO2dCQUNMLGVBQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ25DLENBQUM7U0FDRjtLQUNGLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQztBQUVMOzs7R0FHRztBQUNVLFFBQUEsbUNBQW1DLEdBQUcsY0FBSyxDQUFDLE1BQU0sQ0FDN0QsK0JBQStCLEVBQy9CLGtEQUEwQyxDQUMzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHR5cGUgeyBDbG91ZFNlYXJjaENsaWVudENvbmZpZyB9IGZyb20gXCJAYXdzLXNkay9jbGllbnQtY2xvdWRzZWFyY2hcIjtcbmltcG9ydCB7IENvbnRleHQsIEVmZmVjdCwgTGF5ZXIsIFJ1bnRpbWUgfSBmcm9tIFwiZWZmZWN0XCI7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgdGFnc1xuICovXG5leHBvcnQgY2xhc3MgQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZyBleHRlbmRzIENvbnRleHQuVGFnKFxuICBcIkBlZmZlY3QtYXdzL2NsaWVudC1jbG91ZHNlYXJjaC9DbG91ZFNlYXJjaENsaWVudEluc3RhbmNlQ29uZmlnXCIsXG4pPENsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2VDb25maWcsIENsb3VkU2VhcmNoQ2xpZW50Q29uZmlnPigpIHt9XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgY29uc3RydWN0b3JzXG4gKi9cbmV4cG9ydCBjb25zdCBtYWtlRGVmYXVsdENsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2VDb25maWc6IEVmZmVjdC5FZmZlY3Q8Q2xvdWRTZWFyY2hDbGllbnRDb25maWc+ID1cbiAgRWZmZWN0LmdlbihmdW5jdGlvbiogKF8pIHtcbiAgICBjb25zdCBydW50aW1lID0geWllbGQqIF8oRWZmZWN0LnJ1bnRpbWU8bmV2ZXI+KCkpO1xuICAgIGNvbnN0IHJ1blN5bmMgPSBSdW50aW1lLnJ1blN5bmMocnVudGltZSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgbG9nZ2VyOiB7XG4gICAgICAgIGluZm8obSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dJbmZvKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICAgIHdhcm4obSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dXYXJuaW5nKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nRXJyb3IobSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgICAgZGVidWcobSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dEZWJ1ZyhtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgICB0cmFjZShtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ1RyYWNlKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG4gIH0pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdENsb3VkU2VhcmNoQ2xpZW50Q29uZmlnTGF5ZXIgPSBMYXllci5lZmZlY3QoXG4gIENsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2VDb25maWcsXG4gIG1ha2VEZWZhdWx0Q2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZyxcbik7XG4iXX0=
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var _a;
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.DefaultCloudSearchServiceLayer = exports.CloudSearchServiceLayer = exports.BaseCloudSearchServiceLayer = exports.CloudSearch = exports.CloudSearchService = exports.makeCloudSearchService = void 0;
|
|
5
|
-
/**
|
|
6
|
-
* @since 1.0.0
|
|
7
|
-
*/
|
|
8
|
-
const client_cloudsearch_1 = require("@aws-sdk/client-cloudsearch");
|
|
9
|
-
const effect_1 = require("effect");
|
|
10
|
-
const CloudSearchClientInstance_1 = require("./CloudSearchClientInstance");
|
|
11
|
-
const CloudSearchClientInstanceConfig_1 = require("./CloudSearchClientInstanceConfig");
|
|
12
|
-
const Errors_1 = require("./Errors");
|
|
13
|
-
const commands = {
|
|
14
|
-
BuildSuggestersCommand: client_cloudsearch_1.BuildSuggestersCommand,
|
|
15
|
-
CreateDomainCommand: client_cloudsearch_1.CreateDomainCommand,
|
|
16
|
-
DefineAnalysisSchemeCommand: client_cloudsearch_1.DefineAnalysisSchemeCommand,
|
|
17
|
-
DefineExpressionCommand: client_cloudsearch_1.DefineExpressionCommand,
|
|
18
|
-
DefineIndexFieldCommand: client_cloudsearch_1.DefineIndexFieldCommand,
|
|
19
|
-
DefineSuggesterCommand: client_cloudsearch_1.DefineSuggesterCommand,
|
|
20
|
-
DeleteAnalysisSchemeCommand: client_cloudsearch_1.DeleteAnalysisSchemeCommand,
|
|
21
|
-
DeleteDomainCommand: client_cloudsearch_1.DeleteDomainCommand,
|
|
22
|
-
DeleteExpressionCommand: client_cloudsearch_1.DeleteExpressionCommand,
|
|
23
|
-
DeleteIndexFieldCommand: client_cloudsearch_1.DeleteIndexFieldCommand,
|
|
24
|
-
DeleteSuggesterCommand: client_cloudsearch_1.DeleteSuggesterCommand,
|
|
25
|
-
DescribeAnalysisSchemesCommand: client_cloudsearch_1.DescribeAnalysisSchemesCommand,
|
|
26
|
-
DescribeAvailabilityOptionsCommand: client_cloudsearch_1.DescribeAvailabilityOptionsCommand,
|
|
27
|
-
DescribeDomainEndpointOptionsCommand: client_cloudsearch_1.DescribeDomainEndpointOptionsCommand,
|
|
28
|
-
DescribeDomainsCommand: client_cloudsearch_1.DescribeDomainsCommand,
|
|
29
|
-
DescribeExpressionsCommand: client_cloudsearch_1.DescribeExpressionsCommand,
|
|
30
|
-
DescribeIndexFieldsCommand: client_cloudsearch_1.DescribeIndexFieldsCommand,
|
|
31
|
-
DescribeScalingParametersCommand: client_cloudsearch_1.DescribeScalingParametersCommand,
|
|
32
|
-
DescribeServiceAccessPoliciesCommand: client_cloudsearch_1.DescribeServiceAccessPoliciesCommand,
|
|
33
|
-
DescribeSuggestersCommand: client_cloudsearch_1.DescribeSuggestersCommand,
|
|
34
|
-
IndexDocumentsCommand: client_cloudsearch_1.IndexDocumentsCommand,
|
|
35
|
-
ListDomainNamesCommand: client_cloudsearch_1.ListDomainNamesCommand,
|
|
36
|
-
UpdateAvailabilityOptionsCommand: client_cloudsearch_1.UpdateAvailabilityOptionsCommand,
|
|
37
|
-
UpdateDomainEndpointOptionsCommand: client_cloudsearch_1.UpdateDomainEndpointOptionsCommand,
|
|
38
|
-
UpdateScalingParametersCommand: client_cloudsearch_1.UpdateScalingParametersCommand,
|
|
39
|
-
UpdateServiceAccessPoliciesCommand: client_cloudsearch_1.UpdateServiceAccessPoliciesCommand,
|
|
40
|
-
};
|
|
41
|
-
/**
|
|
42
|
-
* @since 1.0.0
|
|
43
|
-
* @category constructors
|
|
44
|
-
*/
|
|
45
|
-
exports.makeCloudSearchService = effect_1.Effect.gen(function* (_) {
|
|
46
|
-
const client = yield* _(CloudSearchClientInstance_1.CloudSearchClientInstance);
|
|
47
|
-
return effect_1.Record.toEntries(commands).reduce((acc, [command]) => {
|
|
48
|
-
const CommandCtor = commands[command];
|
|
49
|
-
const methodImpl = (args, options) => effect_1.Effect.tryPromise({
|
|
50
|
-
try: (abortSignal) => client.send(new CommandCtor(args), {
|
|
51
|
-
...(options !== null && options !== void 0 ? options : {}),
|
|
52
|
-
abortSignal,
|
|
53
|
-
}),
|
|
54
|
-
catch: (e) => {
|
|
55
|
-
if (e instanceof client_cloudsearch_1.CloudSearchServiceException &&
|
|
56
|
-
Errors_1.AllServiceErrors.includes(e.name)) {
|
|
57
|
-
const ServiceException = effect_1.Data.tagged(e.name);
|
|
58
|
-
return ServiceException({
|
|
59
|
-
...e,
|
|
60
|
-
message: e.message,
|
|
61
|
-
stack: e.stack,
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
if (e instanceof Error) {
|
|
65
|
-
return (0, Errors_1.SdkError)({
|
|
66
|
-
...e,
|
|
67
|
-
name: "SdkError",
|
|
68
|
-
message: e.message,
|
|
69
|
-
stack: e.stack,
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
throw e;
|
|
73
|
-
},
|
|
74
|
-
});
|
|
75
|
-
const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, "");
|
|
76
|
-
return { ...acc, [methodName]: methodImpl };
|
|
77
|
-
}, {});
|
|
78
|
-
});
|
|
79
|
-
/**
|
|
80
|
-
* @since 1.0.0
|
|
81
|
-
* @category models
|
|
82
|
-
*/
|
|
83
|
-
class CloudSearchService extends effect_1.Effect.Tag("@effect-aws/client-cloudsearch/CloudSearchService")() {
|
|
84
|
-
}
|
|
85
|
-
exports.CloudSearchService = CloudSearchService;
|
|
86
|
-
_a = CloudSearchService;
|
|
87
|
-
CloudSearchService.defaultLayer = effect_1.Layer.effect(_a, exports.makeCloudSearchService).pipe(effect_1.Layer.provide(CloudSearchClientInstance_1.CloudSearchClientInstanceLayer), effect_1.Layer.provide(CloudSearchClientInstanceConfig_1.DefaultCloudSearchClientConfigLayer));
|
|
88
|
-
CloudSearchService.layer = (config) => effect_1.Layer.effect(_a, exports.makeCloudSearchService).pipe(effect_1.Layer.provide(CloudSearchClientInstance_1.CloudSearchClientInstanceLayer), effect_1.Layer.provide(effect_1.Layer.effect(CloudSearchClientInstanceConfig_1.CloudSearchClientInstanceConfig, CloudSearchClientInstanceConfig_1.makeDefaultCloudSearchClientInstanceConfig.pipe(effect_1.Effect.map((defaultConfig) => ({ ...defaultConfig, ...config }))))));
|
|
89
|
-
CloudSearchService.baseLayer = (evaluate) => effect_1.Layer.effect(_a, exports.makeCloudSearchService).pipe(effect_1.Layer.provide(effect_1.Layer.effect(CloudSearchClientInstance_1.CloudSearchClientInstance, effect_1.Effect.map(CloudSearchClientInstanceConfig_1.makeDefaultCloudSearchClientInstanceConfig, evaluate))));
|
|
90
|
-
/**
|
|
91
|
-
* @since 1.0.0
|
|
92
|
-
* @category models
|
|
93
|
-
* @alias CloudSearchService
|
|
94
|
-
*/
|
|
95
|
-
exports.CloudSearch = CloudSearchService;
|
|
96
|
-
/**
|
|
97
|
-
* @since 1.0.0
|
|
98
|
-
* @category layers
|
|
99
|
-
* @deprecated use CloudSearch.baseLayer instead
|
|
100
|
-
*/
|
|
101
|
-
exports.BaseCloudSearchServiceLayer = effect_1.Layer.effect(CloudSearchService, exports.makeCloudSearchService);
|
|
102
|
-
/**
|
|
103
|
-
* @since 1.0.0
|
|
104
|
-
* @category layers
|
|
105
|
-
* @deprecated use CloudSearch.layer instead
|
|
106
|
-
*/
|
|
107
|
-
exports.CloudSearchServiceLayer = exports.BaseCloudSearchServiceLayer.pipe(effect_1.Layer.provide(CloudSearchClientInstance_1.CloudSearchClientInstanceLayer));
|
|
108
|
-
/**
|
|
109
|
-
* @since 1.0.0
|
|
110
|
-
* @category layers
|
|
111
|
-
* @deprecated use CloudSearch.defaultLayer instead
|
|
112
|
-
*/
|
|
113
|
-
exports.DefaultCloudSearchServiceLayer = CloudSearchService.defaultLayer;
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xvdWRTZWFyY2hTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0Nsb3VkU2VhcmNoU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUE7O0dBRUc7QUFDSCxvRUFrRnFDO0FBQ3JDLG1DQUFxRDtBQUNyRCwyRUFHcUM7QUFDckMsdUZBSTJDO0FBQzNDLHFDQVlrQjtBQWFsQixNQUFNLFFBQVEsR0FBRztJQUNmLHNCQUFzQixFQUF0QiwyQ0FBc0I7SUFDdEIsbUJBQW1CLEVBQW5CLHdDQUFtQjtJQUNuQiwyQkFBMkIsRUFBM0IsZ0RBQTJCO0lBQzNCLHVCQUF1QixFQUF2Qiw0Q0FBdUI7SUFDdkIsdUJBQXVCLEVBQXZCLDRDQUF1QjtJQUN2QixzQkFBc0IsRUFBdEIsMkNBQXNCO0lBQ3RCLDJCQUEyQixFQUEzQixnREFBMkI7SUFDM0IsbUJBQW1CLEVBQW5CLHdDQUFtQjtJQUNuQix1QkFBdUIsRUFBdkIsNENBQXVCO0lBQ3ZCLHVCQUF1QixFQUF2Qiw0Q0FBdUI7SUFDdkIsc0JBQXNCLEVBQXRCLDJDQUFzQjtJQUN0Qiw4QkFBOEIsRUFBOUIsbURBQThCO0lBQzlCLGtDQUFrQyxFQUFsQyx1REFBa0M7SUFDbEMsb0NBQW9DLEVBQXBDLHlEQUFvQztJQUNwQyxzQkFBc0IsRUFBdEIsMkNBQXNCO0lBQ3RCLDBCQUEwQixFQUExQiwrQ0FBMEI7SUFDMUIsMEJBQTBCLEVBQTFCLCtDQUEwQjtJQUMxQixnQ0FBZ0MsRUFBaEMscURBQWdDO0lBQ2hDLG9DQUFvQyxFQUFwQyx5REFBb0M7SUFDcEMseUJBQXlCLEVBQXpCLDhDQUF5QjtJQUN6QixxQkFBcUIsRUFBckIsMENBQXFCO0lBQ3JCLHNCQUFzQixFQUF0QiwyQ0FBc0I7SUFDdEIsZ0NBQWdDLEVBQWhDLHFEQUFnQztJQUNoQyxrQ0FBa0MsRUFBbEMsdURBQWtDO0lBQ2xDLDhCQUE4QixFQUE5QixtREFBOEI7SUFDOUIsa0NBQWtDLEVBQWxDLHVEQUFr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LEVBQy9CLDRFQUEwQyxDQUFDLElBQUksQ0FDN0MsZUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsYUFBYSxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUNqRSxDQUNGLENBQ0YsQ0FDRixBQVhrQixDQVdqQjtBQUNZLDRCQUFTLEdBQUcsQ0FDMUIsUUFBdUUsRUFDdkUsRUFBRSxDQUNGLGNBQUssQ0FBQyxNQUFNLENBQUMsRUFBSSxFQUFFLDhCQUFzQixDQUFDLENBQUMsSUFBSSxDQUM3QyxjQUFLLENBQUMsT0FBTyxDQUNYLGNBQUssQ0FBQyxNQUFNLENBQ1YscURBQXlCLEVBQ3pCLGVBQU0sQ0FBQyxHQUFHLENBQUMsNEVBQTBDLEVBQUUsUUFBUSxDQUFDLENBQ2pFLENBQ0YsQ0FDRixBQVZzQixDQVVyQjtBQUdOOzs7O0dBSUc7QUFDVSxRQUFBLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQztBQUU5Qzs7OztHQUlHO0FBQ1UsUUFBQSwyQkFBMkIsR0FBRyxjQUFLLENBQUMsTUFBTSxDQUNyRCxrQkFBa0IsRUFDbEIsOEJBQXNCLENBQ3ZCLENBQUM7QUFFRjs7OztHQUlHO0FBQ1UsUUFBQSx1QkFBdUIsR0FBRyxtQ0FBMkIsQ0FBQyxJQUFJLENBQ3JFLGNBQUssQ0FBQyxPQUFPLENBQUMsMERBQThCLENBQUMsQ0FDOUMsQ0FBQztBQUVGOzs7O0dBSUc7QUFDVSxRQUFBLDhCQUE4QixHQUFHLGtCQUFrQixDQUFDLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmltcG9ydCB7XG4gIENsb3VkU2VhcmNoU2VydmljZUV4Y2VwdGlvbixcbiAgdHlwZSBDbG91ZFNlYXJjaENsaWVudCxcbiAgdHlwZSBDbG91ZFNlYXJjaENsaWVudENvbmZpZyxcbiAgQnVpbGRTdWdnZXN0ZXJzQ29tbWFuZCxcbiAgdHlwZSBCdWlsZFN1Z2dlc3RlcnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgQnVpbGRTdWdnZXN0ZXJzQ29tbWFuZE91dHB1dCxcbiAgQ3JlYXRlRG9tYWluQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVEb21haW5Db21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlRG9tYWluQ29tbWFuZE91dHB1dCxcbiAgRGVmaW5lQW5hbHlzaXNTY2hlbWVDb21tYW5kLFxuICB0eXBlIERlZmluZUFuYWx5c2lzU2NoZW1lQ29tbWFuZElucHV0LFxuICB0eXBlIERlZmluZUFuYWx5c2lzU2NoZW1lQ29tbWFuZE91dHB1dCxcbiAgRGVmaW5lRXhwcmVzc2lvbkNvbW1hbmQsXG4gIHR5cGUgRGVmaW5lRXhwcmVzc2lvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWZpbmVFeHByZXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgRGVmaW5lSW5kZXhGaWVsZENvbW1hbmQsXG4gIHR5cGUgRGVmaW5lSW5kZXhGaWVsZENvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWZpbmVJbmRleEZpZWxkQ29tbWFuZE91dHB1dCxcbiAgRGVmaW5lU3VnZ2VzdGVyQ29tbWFuZCxcbiAgdHlwZSBEZWZpbmVTdWdnZXN0ZXJDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVmaW5lU3VnZ2VzdGVyQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlQW5hbHlzaXNTY2hlbWVDb21tYW5kLFxuICB0eXBlIERlbGV0ZUFuYWx5c2lzU2NoZW1lQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUFuYWx5c2lzU2NoZW1lQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlRG9tYWluQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVEb21haW5Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlRG9tYWluQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlRXhwcmVzc2lvbkNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlRXhwcmVzc2lvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVFeHByZXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlSW5kZXhGaWVsZENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlSW5kZXhGaWVsZENvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVJbmRleEZpZWxkQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlU3VnZ2VzdGVyQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVTdWdnZXN0ZXJDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlU3VnZ2VzdGVyQ29tbWFuZE91dHB1dCxcbiAgRGVzY3JpYmVBbmFseXNpc1NjaGVtZXNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlQW5hbHlzaXNTY2hlbWVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlQW5hbHlzaXNTY2hlbWVzQ29tbWFuZE91dHB1dCxcbiAgRGVzY3JpYmVBdmFpbGFiaWxpdHlPcHRpb25zQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUF2YWlsYWJpbGl0eU9wdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVBdmFpbGFiaWxpdHlPcHRpb25zQ29tbWFuZE91dHB1dCxcbiAgRGVzY3JpYmVEb21haW5FbmRwb2ludE9wdGlvbnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlRG9tYWluRW5kcG9pbnRPcHRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlRG9tYWluRW5kcG9pbnRPcHRpb25zQ29tbWFuZE91dHB1dCxcbiAgRGVzY3JpYmVEb21haW5zQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZURvbWFpbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVEb21haW5zQ29tbWFuZE91dHB1dCxcbiAgRGVzY3JpYmVFeHByZXNzaW9uc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVFeHByZXNzaW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUV4cHJlc3Npb25zQ29tbWFuZE91dHB1dCxcbiAgRGVzY3JpYmVJbmRleEZpZWxkc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVJbmRleEZpZWxkc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUluZGV4RmllbGRzQ29tbWFuZE91dHB1dCxcbiAgRGVzY3JpYmVTY2FsaW5nUGFyYW1ldGVyc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVTY2FsaW5nUGFyYW1ldGVyc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVNjYWxpbmdQYXJhbWV0ZXJzQ29tbWFuZE91dHB1dCxcbiAgRGVzY3JpYmVTZXJ2aWNlQWNjZXNzUG9saWNpZXNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlU2VydmljZUFjY2Vzc1BvbGljaWVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlU2VydmljZUFjY2Vzc1BvbGljaWVzQ29tbWFuZE91dHB1dCxcbiAgRGVzY3JpYmVTdWdnZXN0ZXJzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVN1Z2dlc3RlcnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVTdWdnZXN0ZXJzQ29tbWFuZE91dHB1dCxcbiAgSW5kZXhEb2N1bWVudHNDb21tYW5kLFxuICB0eXBlIEluZGV4RG9jdW1lbnRzQ29tbWFuZElucHV0LFxuICB0eXBlIEluZGV4RG9jdW1lbnRzQ29tbWFuZE91dHB1dCxcbiAgTGlzdERvbWFpbk5hbWVzQ29tbWFuZCxcbiAgdHlwZSBMaXN0RG9tYWluTmFtZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdERvbWFpbk5hbWVzQ29tbWFuZE91dHB1dCxcbiAgVXBkYXRlQXZhaWxhYmlsaXR5T3B0aW9uc0NvbW1hbmQsXG4gIHR5cGUgVXBkYXRlQXZhaWxhYmlsaXR5T3B0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBVcGRhdGVBdmFpbGFiaWxpdHlPcHRpb25zQ29tbWFuZE91dHB1dCxcbiAgVXBkYXRlRG9tYWluRW5kcG9pbnRPcHRpb25zQ29tbWFuZCxcbiAgdHlwZSBVcGRhdGVEb21haW5FbmRwb2ludE9wdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgVXBkYXRlRG9tYWluRW5kcG9pbnRPcHRpb25zQ29tbWFuZE91dHB1dCxcbiAgVXBkYXRlU2NhbGluZ1BhcmFtZXRlcnNDb21tYW5kLFxuICB0eXBlIFVwZGF0ZVNjYWxpbmdQYXJhbWV0ZXJzQ29tbWFuZElucHV0LFxuICB0eXBlIFVwZGF0ZVNjYWxpbmdQYXJhbWV0ZXJzQ29tbWFuZE91dHB1dCxcbiAgVXBkYXRlU2VydmljZUFjY2Vzc1BvbGljaWVzQ29tbWFuZCxcbiAgdHlwZSBVcGRhdGVTZXJ2aWNlQWNjZXNzUG9saWNpZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgVXBkYXRlU2VydmljZUFjY2Vzc1BvbGljaWVzQ29tbWFuZE91dHB1dCxcbn0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1jbG91ZHNlYXJjaFwiO1xuaW1wb3J0IHsgRGF0YSwgRWZmZWN0LCBMYXllciwgUmVjb3JkIH0gZnJvbSBcImVmZmVjdFwiO1xuaW1wb3J0IHtcbiAgQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZSxcbiAgQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUxheWVyLFxufSBmcm9tIFwiLi9DbG91ZFNlYXJjaENsaWVudEluc3RhbmNlXCI7XG5pbXBvcnQge1xuICBEZWZhdWx0Q2xvdWRTZWFyY2hDbGllbnRDb25maWdMYXllcixcbiAgbWFrZURlZmF1bHRDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlQ29uZmlnLFxuICBDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlQ29uZmlnLFxufSBmcm9tIFwiLi9DbG91ZFNlYXJjaENsaWVudEluc3RhbmNlQ29uZmlnXCI7XG5pbXBvcnQge1xuICBBbGxTZXJ2aWNlRXJyb3JzLFxuICBCYXNlRXJyb3IsXG4gIERpc2FibGVkT3BlcmF0aW9uRXJyb3IsXG4gIEludGVybmFsRXJyb3IsXG4gIEludmFsaWRUeXBlRXJyb3IsXG4gIExpbWl0RXhjZWVkZWRFcnJvcixcbiAgUmVzb3VyY2VBbHJlYWR5RXhpc3RzRXJyb3IsXG4gIFJlc291cmNlTm90Rm91bmRFcnJvcixcbiAgVmFsaWRhdGlvbkVycm9yLFxuICBTZGtFcnJvcixcbiAgVGFnZ2VkRXhjZXB0aW9uLFxufSBmcm9tIFwiLi9FcnJvcnNcIjtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIdHRwSGFuZGxlck9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIG1heGltdW0gdGltZSBpbiBtaWxsaXNlY29uZHMgdGhhdCB0aGUgY29ubmVjdGlvbiBwaGFzZSBvZiBhIHJlcXVlc3RcbiAgICogbWF5IHRha2UgYmVmb3JlIHRoZSBjb25uZWN0aW9uIGF0dGVtcHQgaXMgYWJhbmRvbmVkLlxuICAgKi9cbiAgcmVxdWVzdFRpbWVvdXQ/OiBudW1iZXI7XG59XG5cbmNvbnN0IGNvbW1hbmRzID0ge1xuICBCdWlsZFN1Z2dlc3RlcnNDb21tYW5kLFxuICBDcmVhdGVEb21haW5Db21tYW5kLFxuICBEZWZpbmVBbmFseXNpc1NjaGVtZUNvbW1hbmQsXG4gIERlZmluZUV4cHJlc3Npb25Db21tYW5kLFxuICBEZWZpbmVJbmRleEZpZWxkQ29tbWFuZCxcbiAgRGVmaW5lU3VnZ2VzdGVyQ29tbWFuZCxcbiAgRGVsZXRlQW5hbHlzaXNTY2hlbWVDb21tYW5kLFxuICBEZWxldGVEb21haW5Db21tYW5kLFxuICBEZWxldGVFeHByZXNzaW9uQ29tbWFuZCxcbiAgRGVsZXRlSW5kZXhGaWVsZENvbW1hbmQsXG4gIERlbGV0ZVN1Z2dlc3RlckNvbW1hbmQsXG4gIERlc2NyaWJlQW5hbHlzaXNTY2hlbWVzQ29tbWFuZCxcbiAgRGVzY3JpYmVBdmFpbGFiaWxpdHlPcHRpb25zQ29tbWFuZCxcbiAgRGVzY3JpYmVEb21haW5FbmRwb2ludE9wdGlvbnNDb21tYW5kLFxuICBEZXNjcmliZURvbWFpbnNDb21tYW5kLFxuICBEZXNjcmliZUV4cHJlc3Npb25zQ29tbWFuZCxcbiAgRGVzY3JpYmVJbmRleEZpZWxkc0NvbW1hbmQsXG4gIERlc2NyaWJlU2NhbGluZ1BhcmFtZXRlcnNDb21tYW5kLFxuICBEZXNjcmliZVNlcnZpY2VBY2Nlc3NQb2xpY2llc0NvbW1hbmQsXG4gIERlc2NyaWJlU3VnZ2VzdGVyc0NvbW1hbmQsXG4gIEluZGV4RG9jdW1lbnRzQ29tbWFuZCxcbiAgTGlzdERvbWFpbk5hbWVzQ29tbWFuZCxcbiAgVXBkYXRlQXZhaWxhYmlsaXR5T3B0aW9uc0NvbW1hbmQsXG4gIFVwZGF0ZURvbWFpbkVuZHBvaW50T3B0aW9uc0NvbW1hbmQsXG4gIFVwZGF0ZVNjYWxpbmdQYXJhbWV0ZXJzQ29tbWFuZCxcbiAgVXBkYXRlU2VydmljZUFjY2Vzc1BvbGljaWVzQ29tbWFuZCxcbn07XG5cbmludGVyZmFjZSBDbG91ZFNlYXJjaFNlcnZpY2UkIHtcbiAgcmVhZG9ubHkgXzogdW5pcXVlIHN5bWJvbDtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQnVpbGRTdWdnZXN0ZXJzQ29tbWFuZH1cbiAgICovXG4gIGJ1aWxkU3VnZ2VzdGVycyhcbiAgICBhcmdzOiBCdWlsZFN1Z2dlc3RlcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBCdWlsZFN1Z2dlc3RlcnNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhc2VFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlRG9tYWluQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZURvbWFpbihcbiAgICBhcmdzOiBDcmVhdGVEb21haW5Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVEb21haW5Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhc2VFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBSZXNvdXJjZUFscmVhZHlFeGlzdHNFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlZmluZUFuYWx5c2lzU2NoZW1lQ29tbWFuZH1cbiAgICovXG4gIGRlZmluZUFuYWx5c2lzU2NoZW1lKFxuICAgIGFyZ3M6IERlZmluZUFuYWx5c2lzU2NoZW1lQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVmaW5lQW5hbHlzaXNTY2hlbWVDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhc2VFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFR5cGVFcnJvclxuICAgIHwgTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWZpbmVFeHByZXNzaW9uQ29tbWFuZH1cbiAgICovXG4gIGRlZmluZUV4cHJlc3Npb24oXG4gICAgYXJnczogRGVmaW5lRXhwcmVzc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlZmluZUV4cHJlc3Npb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhc2VFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFR5cGVFcnJvclxuICAgIHwgTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWZpbmVJbmRleEZpZWxkQ29tbWFuZH1cbiAgICovXG4gIGRlZmluZUluZGV4RmllbGQoXG4gICAgYXJnczogRGVmaW5lSW5kZXhGaWVsZENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlZmluZUluZGV4RmllbGRDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhc2VFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFR5cGVFcnJvclxuICAgIHwgTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWZpbmVTdWdnZXN0ZXJDb21tYW5kfVxuICAgKi9cbiAgZGVmaW5lU3VnZ2VzdGVyKFxuICAgIGFyZ3M6IERlZmluZVN1Z2dlc3RlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlZmluZVN1Z2dlc3RlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFzZUVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkVHlwZUVycm9yXG4gICAgfCBMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUFuYWx5c2lzU2NoZW1lQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUFuYWx5c2lzU2NoZW1lKFxuICAgIGFyZ3M6IERlbGV0ZUFuYWx5c2lzU2NoZW1lQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlQW5hbHlzaXNTY2hlbWVDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhc2VFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFR5cGVFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlRG9tYWluQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZURvbWFpbihcbiAgICBhcmdzOiBEZWxldGVEb21haW5Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVEb21haW5Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQmFzZUVycm9yIHwgSW50ZXJuYWxFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVFeHByZXNzaW9uQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUV4cHJlc3Npb24oXG4gICAgYXJnczogRGVsZXRlRXhwcmVzc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZUV4cHJlc3Npb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhc2VFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFR5cGVFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlSW5kZXhGaWVsZENvbW1hbmR9XG4gICAqL1xuICBkZWxldGVJbmRleEZpZWxkKFxuICAgIGFyZ3M6IERlbGV0ZUluZGV4RmllbGRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVJbmRleEZpZWxkQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXNlRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRUeXBlRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVN1Z2dlc3RlckNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVTdWdnZXN0ZXIoXG4gICAgYXJnczogRGVsZXRlU3VnZ2VzdGVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlU3VnZ2VzdGVyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXNlRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRUeXBlRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQW5hbHlzaXNTY2hlbWVzQ29tbWFuZH1cbiAgICovXG4gIGRlc2NyaWJlQW5hbHlzaXNTY2hlbWVzKFxuICAgIGFyZ3M6IERlc2NyaWJlQW5hbHlzaXNTY2hlbWVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVBbmFseXNpc1NjaGVtZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQmFzZUVycm9yIHwgSW50ZXJuYWxFcnJvciB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUF2YWlsYWJpbGl0eU9wdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVBdmFpbGFiaWxpdHlPcHRpb25zKFxuICAgIGFyZ3M6IERlc2NyaWJlQXZhaWxhYmlsaXR5T3B0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQXZhaWxhYmlsaXR5T3B0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFzZUVycm9yXG4gICAgfCBEaXNhYmxlZE9wZXJhdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkVHlwZUVycm9yXG4gICAgfCBMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZURvbWFpbkVuZHBvaW50T3B0aW9uc0NvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZURvbWFpbkVuZHBvaW50T3B0aW9ucyhcbiAgICBhcmdzOiBEZXNjcmliZURvbWFpbkVuZHBvaW50T3B0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlRG9tYWluRW5kcG9pbnRPcHRpb25zQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXNlRXJyb3JcbiAgICB8IERpc2FibGVkT3BlcmF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IExpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlRG9tYWluc0NvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZURvbWFpbnMoXG4gICAgYXJnczogRGVzY3JpYmVEb21haW5zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVEb21haW5zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEJhc2VFcnJvciB8IEludGVybmFsRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVFeHByZXNzaW9uc0NvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZUV4cHJlc3Npb25zKFxuICAgIGFyZ3M6IERlc2NyaWJlRXhwcmVzc2lvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUV4cHJlc3Npb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEJhc2VFcnJvciB8IEludGVybmFsRXJyb3IgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVJbmRleEZpZWxkc0NvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZUluZGV4RmllbGRzKFxuICAgIGFyZ3M6IERlc2NyaWJlSW5kZXhGaWVsZHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUluZGV4RmllbGRzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEJhc2VFcnJvciB8IEludGVybmFsRXJyb3IgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVTY2FsaW5nUGFyYW1ldGVyc0NvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZVNjYWxpbmdQYXJhbWV0ZXJzKFxuICAgIGFyZ3M6IERlc2NyaWJlU2NhbGluZ1BhcmFtZXRlcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVNjYWxpbmdQYXJhbWV0ZXJzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEJhc2VFcnJvciB8IEludGVybmFsRXJyb3IgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVTZXJ2aWNlQWNjZXNzUG9saWNpZXNDb21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVTZXJ2aWNlQWNjZXNzUG9saWNpZXMoXG4gICAgYXJnczogRGVzY3JpYmVTZXJ2aWNlQWNjZXNzUG9saWNpZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVNlcnZpY2VBY2Nlc3NQb2xpY2llc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBCYXNlRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlU3VnZ2VzdGVyc0NvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZVN1Z2dlc3RlcnMoXG4gICAgYXJnczogRGVzY3JpYmVTdWdnZXN0ZXJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVTdWdnZXN0ZXJzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEJhc2VFcnJvciB8IEludGVybmFsRXJyb3IgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgSW5kZXhEb2N1bWVudHNDb21tYW5kfVxuICAgKi9cbiAgaW5kZXhEb2N1bWVudHMoXG4gICAgYXJnczogSW5kZXhEb2N1bWVudHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBJbmRleERvY3VtZW50c0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFzZUVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0RG9tYWluTmFtZXNDb21tYW5kfVxuICAgKi9cbiAgbGlzdERvbWFpbk5hbWVzKFxuICAgIGFyZ3M6IExpc3REb21haW5OYW1lc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PExpc3REb21haW5OYW1lc0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgQmFzZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBkYXRlQXZhaWxhYmlsaXR5T3B0aW9uc0NvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVBdmFpbGFiaWxpdHlPcHRpb25zKFxuICAgIGFyZ3M6IFVwZGF0ZUF2YWlsYWJpbGl0eU9wdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBVcGRhdGVBdmFpbGFiaWxpdHlPcHRpb25zQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXNlRXJyb3JcbiAgICB8IERpc2FibGVkT3BlcmF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRUeXBlRXJyb3JcbiAgICB8IExpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBkYXRlRG9tYWluRW5kcG9pbnRPcHRpb25zQ29tbWFuZH1cbiAgICovXG4gIHVwZGF0ZURvbWFpbkVuZHBvaW50T3B0aW9ucyhcbiAgICBhcmdzOiBVcGRhdGVEb21haW5FbmRwb2ludE9wdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBVcGRhdGVEb21haW5FbmRwb2ludE9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhc2VFcnJvclxuICAgIHwgRGlzYWJsZWRPcGVyYXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFR5cGVFcnJvclxuICAgIHwgTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVTY2FsaW5nUGFyYW1ldGVyc0NvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVTY2FsaW5nUGFyYW1ldGVycyhcbiAgICBhcmdzOiBVcGRhdGVTY2FsaW5nUGFyYW1ldGVyc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFVwZGF0ZVNjYWxpbmdQYXJhbWV0ZXJzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXNlRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRUeXBlRXJyb3JcbiAgICB8IExpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBkYXRlU2VydmljZUFjY2Vzc1BvbGljaWVzQ29tbWFuZH1cbiAgICovXG4gIHVwZGF0ZVNlcnZpY2VBY2Nlc3NQb2xpY2llcyhcbiAgICBhcmdzOiBVcGRhdGVTZXJ2aWNlQWNjZXNzUG9saWNpZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBVcGRhdGVTZXJ2aWNlQWNjZXNzUG9saWNpZXNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhc2VFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFR5cGVFcnJvclxuICAgIHwgTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xufVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZUNsb3VkU2VhcmNoU2VydmljZSA9IEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gIGNvbnN0IGNsaWVudCA9IHlpZWxkKiBfKENsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2UpO1xuXG4gIHJldHVybiBSZWNvcmQudG9FbnRyaWVzKGNvbW1hbmRzKS5yZWR1Y2UoKGFjYywgW2NvbW1hbmRdKSA9PiB7XG4gICAgY29uc3QgQ29tbWFuZEN0b3IgPSBjb21tYW5kc1tjb21tYW5kXSBhcyBhbnk7XG4gICAgY29uc3QgbWV0aG9kSW1wbCA9IChhcmdzOiBhbnksIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMpID0+XG4gICAgICBFZmZlY3QudHJ5UHJvbWlzZSh7XG4gICAgICAgIHRyeTogKGFib3J0U2lnbmFsKSA9PlxuICAgICAgICAgIGNsaWVudC5zZW5kKG5ldyBDb21tYW5kQ3RvcihhcmdzKSwge1xuICAgICAgICAgICAgLi4uKG9wdGlvbnMgPz8ge30pLFxuICAgICAgICAgICAgYWJvcnRTaWduYWwsXG4gICAgICAgICAgfSksXG4gICAgICAgIGNhdGNoOiAoZSkgPT4ge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGUgaW5zdGFuY2VvZiBDbG91ZFNlYXJjaFNlcnZpY2VFeGNlcHRpb24gJiZcbiAgICAgICAgICAgIEFsbFNlcnZpY2VFcnJvcnMuaW5jbHVkZXMoZS5uYW1lKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgY29uc3QgU2VydmljZUV4Y2VwdGlvbiA9IERhdGEudGFnZ2VkPFxuICAgICAgICAgICAgICBUYWdnZWRFeGNlcHRpb248Q2xvdWRTZWFyY2hTZXJ2aWNlRXhjZXB0aW9uPlxuICAgICAgICAgICAgPihlLm5hbWUpO1xuXG4gICAgICAgICAgICByZXR1cm4gU2VydmljZUV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGUubWVzc2FnZSxcbiAgICAgICAgICAgICAgc3RhY2s6IGUuc3RhY2ssXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIFNka0Vycm9yKHtcbiAgICAgICAgICAgICAgLi4uZSxcbiAgICAgICAgICAgICAgbmFtZTogXCJTZGtFcnJvclwiLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICBjb25zdCBtZXRob2ROYW1lID0gKGNvbW1hbmRbMF0udG9Mb3dlckNhc2UoKSArIGNvbW1hbmQuc2xpY2UoMSkpLnJlcGxhY2UoXG4gICAgICAvQ29tbWFuZCQvLFxuICAgICAgXCJcIixcbiAgICApO1xuICAgIHJldHVybiB7IC4uLmFjYywgW21ldGhvZE5hbWVdOiBtZXRob2RJbXBsIH07XG4gIH0sIHt9KSBhcyBDbG91ZFNlYXJjaFNlcnZpY2UkO1xufSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbW9kZWxzXG4gKi9cbmV4cG9ydCBjbGFzcyBDbG91ZFNlYXJjaFNlcnZpY2UgZXh0ZW5kcyBFZmZlY3QuVGFnKFxuICBcIkBlZmZlY3QtYXdzL2NsaWVudC1jbG91ZHNlYXJjaC9DbG91ZFNlYXJjaFNlcnZpY2VcIixcbik8Q2xvdWRTZWFyY2hTZXJ2aWNlLCBDbG91ZFNlYXJjaFNlcnZpY2UkPigpIHtcbiAgc3RhdGljIHJlYWRvbmx5IGRlZmF1bHRMYXllciA9IExheWVyLmVmZmVjdChcbiAgICB0aGlzLFxuICAgIG1ha2VDbG91ZFNlYXJjaFNlcnZpY2UsXG4gICkucGlwZShcbiAgICBMYXllci5wcm92aWRlKENsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2VMYXllciksXG4gICAgTGF5ZXIucHJvdmlkZShEZWZhdWx0Q2xvdWRTZWFyY2hDbGllbnRDb25maWdMYXllciksXG4gICk7XG4gIHN0YXRpYyByZWFkb25seSBsYXllciA9IChjb25maWc6IENsb3VkU2VhcmNoQ2xpZW50Q29uZmlnKSA9PlxuICAgIExheWVyLmVmZmVjdCh0aGlzLCBtYWtlQ2xvdWRTZWFyY2hTZXJ2aWNlKS5waXBlKFxuICAgICAgTGF5ZXIucHJvdmlkZShDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlTGF5ZXIpLFxuICAgICAgTGF5ZXIucHJvdmlkZShcbiAgICAgICAgTGF5ZXIuZWZmZWN0KFxuICAgICAgICAgIENsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2VDb25maWcsXG4gICAgICAgICAgbWFrZURlZmF1bHRDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlQ29uZmlnLnBpcGUoXG4gICAgICAgICAgICBFZmZlY3QubWFwKChkZWZhdWx0Q29uZmlnKSA9PiAoeyAuLi5kZWZhdWx0Q29uZmlnLCAuLi5jb25maWcgfSkpLFxuICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICk7XG4gIHN0YXRpYyByZWFkb25seSBiYXNlTGF5ZXIgPSAoXG4gICAgZXZhbHVhdGU6IChkZWZhdWx0Q29uZmlnOiBDbG91ZFNlYXJjaENsaWVudENvbmZpZykgPT4gQ2xvdWRTZWFyY2hDbGllbnQsXG4gICkgPT5cbiAgICBMYXllci5lZmZlY3QodGhpcywgbWFrZUNsb3VkU2VhcmNoU2VydmljZSkucGlwZShcbiAgICAgIExheWVyLnByb3ZpZGUoXG4gICAgICAgIExheWVyLmVmZmVjdChcbiAgICAgICAgICBDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlLFxuICAgICAgICAgIEVmZmVjdC5tYXAobWFrZURlZmF1bHRDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlQ29uZmlnLCBldmFsdWF0ZSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICk7XG59XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbW9kZWxzXG4gKiBAYWxpYXMgQ2xvdWRTZWFyY2hTZXJ2aWNlXG4gKi9cbmV4cG9ydCBjb25zdCBDbG91ZFNlYXJjaCA9IENsb3VkU2VhcmNoU2VydmljZTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqIEBkZXByZWNhdGVkIHVzZSBDbG91ZFNlYXJjaC5iYXNlTGF5ZXIgaW5zdGVhZFxuICovXG5leHBvcnQgY29uc3QgQmFzZUNsb3VkU2VhcmNoU2VydmljZUxheWVyID0gTGF5ZXIuZWZmZWN0KFxuICBDbG91ZFNlYXJjaFNlcnZpY2UsXG4gIG1ha2VDbG91ZFNlYXJjaFNlcnZpY2UsXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICogQGRlcHJlY2F0ZWQgdXNlIENsb3VkU2VhcmNoLmxheWVyIGluc3RlYWRcbiAqL1xuZXhwb3J0IGNvbnN0IENsb3VkU2VhcmNoU2VydmljZUxheWVyID0gQmFzZUNsb3VkU2VhcmNoU2VydmljZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKiBAZGVwcmVjYXRlZCB1c2UgQ2xvdWRTZWFyY2guZGVmYXVsdExheWVyIGluc3RlYWRcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRDbG91ZFNlYXJjaFNlcnZpY2VMYXllciA9IENsb3VkU2VhcmNoU2VydmljZS5kZWZhdWx0TGF5ZXI7XG4iXX0=
|
package/lib/Errors.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SdkError = exports.AllServiceErrors = void 0;
|
|
4
|
-
const effect_1 = require("effect");
|
|
5
|
-
exports.AllServiceErrors = [
|
|
6
|
-
"BaseException",
|
|
7
|
-
"DisabledOperationException",
|
|
8
|
-
"InternalException",
|
|
9
|
-
"InvalidTypeException",
|
|
10
|
-
"LimitExceededException",
|
|
11
|
-
"ResourceAlreadyExistsException",
|
|
12
|
-
"ResourceNotFoundException",
|
|
13
|
-
"ValidationException",
|
|
14
|
-
];
|
|
15
|
-
exports.SdkError = effect_1.Data.tagged("SdkError");
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFVQSxtQ0FBOEI7QUFFakIsUUFBQSxnQkFBZ0IsR0FBRztJQUM5QixlQUFlO0lBQ2YsNEJBQTRCO0lBQzVCLG1CQUFtQjtJQUNuQixzQkFBc0I7SUFDdEIsd0JBQXdCO0lBQ3hCLGdDQUFnQztJQUNoQywyQkFBMkI7SUFDM0IscUJBQXFCO0NBQ3RCLENBQUM7QUFrQlcsUUFBQSxRQUFRLEdBQUcsYUFBSSxDQUFDLE1BQU0sQ0FBVyxVQUFVLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgQmFzZUV4Y2VwdGlvbixcbiAgRGlzYWJsZWRPcGVyYXRpb25FeGNlcHRpb24sXG4gIEludGVybmFsRXhjZXB0aW9uLFxuICBJbnZhbGlkVHlwZUV4Y2VwdGlvbixcbiAgTGltaXRFeGNlZWRlZEV4Y2VwdGlvbixcbiAgUmVzb3VyY2VBbHJlYWR5RXhpc3RzRXhjZXB0aW9uLFxuICBSZXNvdXJjZU5vdEZvdW5kRXhjZXB0aW9uLFxuICBWYWxpZGF0aW9uRXhjZXB0aW9uLFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LWNsb3Vkc2VhcmNoXCI7XG5pbXBvcnQgeyBEYXRhIH0gZnJvbSBcImVmZmVjdFwiO1xuXG5leHBvcnQgY29uc3QgQWxsU2VydmljZUVycm9ycyA9IFtcbiAgXCJCYXNlRXhjZXB0aW9uXCIsXG4gIFwiRGlzYWJsZWRPcGVyYXRpb25FeGNlcHRpb25cIixcbiAgXCJJbnRlcm5hbEV4Y2VwdGlvblwiLFxuICBcIkludmFsaWRUeXBlRXhjZXB0aW9uXCIsXG4gIFwiTGltaXRFeGNlZWRlZEV4Y2VwdGlvblwiLFxuICBcIlJlc291cmNlQWxyZWFkeUV4aXN0c0V4Y2VwdGlvblwiLFxuICBcIlJlc291cmNlTm90Rm91bmRFeGNlcHRpb25cIixcbiAgXCJWYWxpZGF0aW9uRXhjZXB0aW9uXCIsXG5dO1xuXG5leHBvcnQgdHlwZSBUYWdnZWRFeGNlcHRpb248VCBleHRlbmRzIHsgbmFtZTogc3RyaW5nIH0+ID0gVCAmIHtcbiAgcmVhZG9ubHkgX3RhZzogVFtcIm5hbWVcIl07XG59O1xuXG5leHBvcnQgdHlwZSBCYXNlRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248QmFzZUV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBEaXNhYmxlZE9wZXJhdGlvbkVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPERpc2FibGVkT3BlcmF0aW9uRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIEludGVybmFsRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248SW50ZXJuYWxFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgSW52YWxpZFR5cGVFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxJbnZhbGlkVHlwZUV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBMaW1pdEV4Y2VlZGVkRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248TGltaXRFeGNlZWRlZEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBSZXNvdXJjZUFscmVhZHlFeGlzdHNFcnJvciA9XG4gIFRhZ2dlZEV4Y2VwdGlvbjxSZXNvdXJjZUFscmVhZHlFeGlzdHNFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VOb3RGb3VuZEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFJlc291cmNlTm90Rm91bmRFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgVmFsaWRhdGlvbkVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFZhbGlkYXRpb25FeGNlcHRpb24+O1xuXG5leHBvcnQgdHlwZSBTZGtFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxFcnJvciAmIHsgbmFtZTogXCJTZGtFcnJvclwiIH0+O1xuZXhwb3J0IGNvbnN0IFNka0Vycm9yID0gRGF0YS50YWdnZWQ8U2RrRXJyb3I+KFwiU2RrRXJyb3JcIik7XG4iXX0=
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @since 1.0.0
|
|
3
|
-
*/
|
|
4
|
-
import { CloudSearchClient } from "@aws-sdk/client-cloudsearch";
|
|
5
|
-
import * as Context from "effect/Context";
|
|
6
|
-
import * as Effect from "effect/Effect";
|
|
7
|
-
import * as Layer from "effect/Layer";
|
|
8
|
-
import { DefaultCloudSearchClientConfigLayer, CloudSearchClientInstanceConfig, } from "./CloudSearchClientInstanceConfig";
|
|
9
|
-
/**
|
|
10
|
-
* @since 1.0.0
|
|
11
|
-
* @category tags
|
|
12
|
-
*/
|
|
13
|
-
export class CloudSearchClientInstance extends Context.Tag("@effect-aws/client-cloudsearch/CloudSearchClientInstance")() {
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* @since 1.0.0
|
|
17
|
-
* @category constructors
|
|
18
|
-
*/
|
|
19
|
-
export const makeCloudSearchClientInstance = Effect.flatMap(CloudSearchClientInstanceConfig, (config) => Effect.acquireRelease(Effect.sync(() => new CloudSearchClient(config)), (client) => Effect.sync(() => client.destroy())));
|
|
20
|
-
/**
|
|
21
|
-
* @since 1.0.0
|
|
22
|
-
* @category layers
|
|
23
|
-
*/
|
|
24
|
-
export const CloudSearchClientInstanceLayer = Layer.scoped(CloudSearchClientInstance, makeCloudSearchClientInstance);
|
|
25
|
-
/**
|
|
26
|
-
* @since 1.0.0
|
|
27
|
-
* @category layers
|
|
28
|
-
*/
|
|
29
|
-
export const DefaultCloudSearchClientInstanceLayer = CloudSearchClientInstanceLayer.pipe(Layer.provide(DefaultCloudSearchClientConfigLayer));
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9DbG91ZFNlYXJjaENsaWVudEluc3RhbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxLQUFLLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEtBQUssTUFBTSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEtBQUssS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUN0QyxPQUFPLEVBQ0wsbUNBQW1DLEVBQ25DLCtCQUErQixHQUNoQyxNQUFNLG1DQUFtQyxDQUFDO0FBRTNDOzs7R0FHRztBQUNILE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxPQUFPLENBQUMsR0FBRyxDQUN4RCwwREFBMEQsQ0FDM0QsRUFBZ0Q7Q0FBRztBQUVwRDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUN6RCwrQkFBK0IsRUFDL0IsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUNULE1BQU0sQ0FBQyxjQUFjLENBQ25CLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUNoRCxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FDaEQsQ0FDSixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FDeEQseUJBQXlCLEVBQ3pCLDZCQUE2QixDQUM5QixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQ2hELDhCQUE4QixDQUFDLElBQUksQ0FDakMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxtQ0FBbUMsQ0FBQyxDQUNuRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHsgQ2xvdWRTZWFyY2hDbGllbnQgfSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LWNsb3Vkc2VhcmNoXCI7XG5pbXBvcnQgKiBhcyBDb250ZXh0IGZyb20gXCJlZmZlY3QvQ29udGV4dFwiO1xuaW1wb3J0ICogYXMgRWZmZWN0IGZyb20gXCJlZmZlY3QvRWZmZWN0XCI7XG5pbXBvcnQgKiBhcyBMYXllciBmcm9tIFwiZWZmZWN0L0xheWVyXCI7XG5pbXBvcnQge1xuICBEZWZhdWx0Q2xvdWRTZWFyY2hDbGllbnRDb25maWdMYXllcixcbiAgQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZyxcbn0gZnJvbSBcIi4vQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZ1wiO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IHRhZ3NcbiAqL1xuZXhwb3J0IGNsYXNzIENsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2UgZXh0ZW5kcyBDb250ZXh0LlRhZyhcbiAgXCJAZWZmZWN0LWF3cy9jbGllbnQtY2xvdWRzZWFyY2gvQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZVwiLFxuKTxDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlLCBDbG91ZFNlYXJjaENsaWVudD4oKSB7fVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZUNsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2UgPSBFZmZlY3QuZmxhdE1hcChcbiAgQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZyxcbiAgKGNvbmZpZykgPT5cbiAgICBFZmZlY3QuYWNxdWlyZVJlbGVhc2UoXG4gICAgICBFZmZlY3Quc3luYygoKSA9PiBuZXcgQ2xvdWRTZWFyY2hDbGllbnQoY29uZmlnKSksXG4gICAgICAoY2xpZW50KSA9PiBFZmZlY3Quc3luYygoKSA9PiBjbGllbnQuZGVzdHJveSgpKSxcbiAgICApLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IENsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2VMYXllciA9IExheWVyLnNjb3BlZChcbiAgQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZSxcbiAgbWFrZUNsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2UsXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdENsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2VMYXllciA9XG4gIENsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2VMYXllci5waXBlKFxuICAgIExheWVyLnByb3ZpZGUoRGVmYXVsdENsb3VkU2VhcmNoQ2xpZW50Q29uZmlnTGF5ZXIpLFxuICApO1xuIl19
|
|
@@ -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 CloudSearchClientInstanceConfig extends Context.Tag("@effect-aws/client-cloudsearch/CloudSearchClientInstanceConfig")() {
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* @since 1.0.0
|
|
10
|
-
* @category constructors
|
|
11
|
-
*/
|
|
12
|
-
export const makeDefaultCloudSearchClientInstanceConfig = 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 DefaultCloudSearchClientConfigLayer = Layer.effect(CloudSearchClientInstanceConfig, makeDefaultCloudSearchClientInstanceConfig);
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9DbG91ZFNlYXJjaENsaWVudEluc3RhbmNlQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFekQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLE9BQU8sQ0FBQyxHQUFHLENBQzlELGdFQUFnRSxDQUNqRSxFQUE0RDtDQUFHO0FBRWhFOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLDBDQUEwQyxHQUNyRCxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7SUFDckIsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQVMsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFekMsT0FBTztRQUNMLE1BQU0sRUFBRTtZQUNOLElBQUksQ0FBQyxDQUFDO2dCQUNKLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2xDLENBQUM7WUFDRCxJQUFJLENBQUMsQ0FBQztnQkFDSixNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNyQyxDQUFDO1lBQ0QsS0FBSyxDQUFDLENBQUM7Z0JBQ0wsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUNELEtBQUssQ0FBQyxDQUFDO2dCQUNMLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ25DLENBQUM7WUFDRCxLQUFLLENBQUMsQ0FBQztnQkFDTCxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNuQyxDQUFDO1NBQ0Y7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDLENBQUM7QUFFTDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxtQ0FBbUMsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUM3RCwrQkFBK0IsRUFDL0IsMENBQTBDLENBQzNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzaW5jZSAxLjAuMFxuICovXG5pbXBvcnQgdHlwZSB7IENsb3VkU2VhcmNoQ2xpZW50Q29uZmlnIH0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1jbG91ZHNlYXJjaFwiO1xuaW1wb3J0IHsgQ29udGV4dCwgRWZmZWN0LCBMYXllciwgUnVudGltZSB9IGZyb20gXCJlZmZlY3RcIjtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSB0YWdzXG4gKi9cbmV4cG9ydCBjbGFzcyBDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlQ29uZmlnIGV4dGVuZHMgQ29udGV4dC5UYWcoXG4gIFwiQGVmZmVjdC1hd3MvY2xpZW50LWNsb3Vkc2VhcmNoL0Nsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2VDb25maWdcIixcbik8Q2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZywgQ2xvdWRTZWFyY2hDbGllbnRDb25maWc+KCkge31cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBjb25zdHJ1Y3RvcnNcbiAqL1xuZXhwb3J0IGNvbnN0IG1ha2VEZWZhdWx0Q2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZzogRWZmZWN0LkVmZmVjdDxDbG91ZFNlYXJjaENsaWVudENvbmZpZz4gPVxuICBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoXykge1xuICAgIGNvbnN0IHJ1bnRpbWUgPSB5aWVsZCogXyhFZmZlY3QucnVudGltZTxuZXZlcj4oKSk7XG4gICAgY29uc3QgcnVuU3luYyA9IFJ1bnRpbWUucnVuU3luYyhydW50aW1lKTtcblxuICAgIHJldHVybiB7XG4gICAgICBsb2dnZXI6IHtcbiAgICAgICAgaW5mbyhtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ0luZm8obSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgICAgd2FybihtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ1dhcm5pbmcobSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3IobSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dFcnJvcihtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgICBkZWJ1ZyhtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ0RlYnVnKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICAgIHRyYWNlKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nVHJhY2UobSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0Q2xvdWRTZWFyY2hDbGllbnRDb25maWdMYXllciA9IExheWVyLmVmZmVjdChcbiAgQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZyxcbiAgbWFrZURlZmF1bHRDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlQ29uZmlnLFxuKTtcbiJdfQ==
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
var _a;
|
|
2
|
-
/**
|
|
3
|
-
* @since 1.0.0
|
|
4
|
-
*/
|
|
5
|
-
import { CloudSearchServiceException, BuildSuggestersCommand, CreateDomainCommand, DefineAnalysisSchemeCommand, DefineExpressionCommand, DefineIndexFieldCommand, DefineSuggesterCommand, DeleteAnalysisSchemeCommand, DeleteDomainCommand, DeleteExpressionCommand, DeleteIndexFieldCommand, DeleteSuggesterCommand, DescribeAnalysisSchemesCommand, DescribeAvailabilityOptionsCommand, DescribeDomainEndpointOptionsCommand, DescribeDomainsCommand, DescribeExpressionsCommand, DescribeIndexFieldsCommand, DescribeScalingParametersCommand, DescribeServiceAccessPoliciesCommand, DescribeSuggestersCommand, IndexDocumentsCommand, ListDomainNamesCommand, UpdateAvailabilityOptionsCommand, UpdateDomainEndpointOptionsCommand, UpdateScalingParametersCommand, UpdateServiceAccessPoliciesCommand, } from "@aws-sdk/client-cloudsearch";
|
|
6
|
-
import { Data, Effect, Layer, Record } from "effect";
|
|
7
|
-
import { CloudSearchClientInstance, CloudSearchClientInstanceLayer, } from "./CloudSearchClientInstance";
|
|
8
|
-
import { DefaultCloudSearchClientConfigLayer, makeDefaultCloudSearchClientInstanceConfig, CloudSearchClientInstanceConfig, } from "./CloudSearchClientInstanceConfig";
|
|
9
|
-
import { AllServiceErrors, SdkError, } from "./Errors";
|
|
10
|
-
const commands = {
|
|
11
|
-
BuildSuggestersCommand,
|
|
12
|
-
CreateDomainCommand,
|
|
13
|
-
DefineAnalysisSchemeCommand,
|
|
14
|
-
DefineExpressionCommand,
|
|
15
|
-
DefineIndexFieldCommand,
|
|
16
|
-
DefineSuggesterCommand,
|
|
17
|
-
DeleteAnalysisSchemeCommand,
|
|
18
|
-
DeleteDomainCommand,
|
|
19
|
-
DeleteExpressionCommand,
|
|
20
|
-
DeleteIndexFieldCommand,
|
|
21
|
-
DeleteSuggesterCommand,
|
|
22
|
-
DescribeAnalysisSchemesCommand,
|
|
23
|
-
DescribeAvailabilityOptionsCommand,
|
|
24
|
-
DescribeDomainEndpointOptionsCommand,
|
|
25
|
-
DescribeDomainsCommand,
|
|
26
|
-
DescribeExpressionsCommand,
|
|
27
|
-
DescribeIndexFieldsCommand,
|
|
28
|
-
DescribeScalingParametersCommand,
|
|
29
|
-
DescribeServiceAccessPoliciesCommand,
|
|
30
|
-
DescribeSuggestersCommand,
|
|
31
|
-
IndexDocumentsCommand,
|
|
32
|
-
ListDomainNamesCommand,
|
|
33
|
-
UpdateAvailabilityOptionsCommand,
|
|
34
|
-
UpdateDomainEndpointOptionsCommand,
|
|
35
|
-
UpdateScalingParametersCommand,
|
|
36
|
-
UpdateServiceAccessPoliciesCommand,
|
|
37
|
-
};
|
|
38
|
-
/**
|
|
39
|
-
* @since 1.0.0
|
|
40
|
-
* @category constructors
|
|
41
|
-
*/
|
|
42
|
-
export const makeCloudSearchService = Effect.gen(function* (_) {
|
|
43
|
-
const client = yield* _(CloudSearchClientInstance);
|
|
44
|
-
return Record.toEntries(commands).reduce((acc, [command]) => {
|
|
45
|
-
const CommandCtor = commands[command];
|
|
46
|
-
const methodImpl = (args, options) => Effect.tryPromise({
|
|
47
|
-
try: (abortSignal) => client.send(new CommandCtor(args), {
|
|
48
|
-
...(options !== null && options !== void 0 ? options : {}),
|
|
49
|
-
abortSignal,
|
|
50
|
-
}),
|
|
51
|
-
catch: (e) => {
|
|
52
|
-
if (e instanceof CloudSearchServiceException &&
|
|
53
|
-
AllServiceErrors.includes(e.name)) {
|
|
54
|
-
const ServiceException = Data.tagged(e.name);
|
|
55
|
-
return ServiceException({
|
|
56
|
-
...e,
|
|
57
|
-
message: e.message,
|
|
58
|
-
stack: e.stack,
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
if (e instanceof Error) {
|
|
62
|
-
return SdkError({
|
|
63
|
-
...e,
|
|
64
|
-
name: "SdkError",
|
|
65
|
-
message: e.message,
|
|
66
|
-
stack: e.stack,
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
throw e;
|
|
70
|
-
},
|
|
71
|
-
});
|
|
72
|
-
const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, "");
|
|
73
|
-
return { ...acc, [methodName]: methodImpl };
|
|
74
|
-
}, {});
|
|
75
|
-
});
|
|
76
|
-
/**
|
|
77
|
-
* @since 1.0.0
|
|
78
|
-
* @category models
|
|
79
|
-
*/
|
|
80
|
-
export class CloudSearchService extends Effect.Tag("@effect-aws/client-cloudsearch/CloudSearchService")() {
|
|
81
|
-
}
|
|
82
|
-
_a = CloudSearchService;
|
|
83
|
-
CloudSearchService.defaultLayer = Layer.effect(_a, makeCloudSearchService).pipe(Layer.provide(CloudSearchClientInstanceLayer), Layer.provide(DefaultCloudSearchClientConfigLayer));
|
|
84
|
-
CloudSearchService.layer = (config) => Layer.effect(_a, makeCloudSearchService).pipe(Layer.provide(CloudSearchClientInstanceLayer), Layer.provide(Layer.effect(CloudSearchClientInstanceConfig, makeDefaultCloudSearchClientInstanceConfig.pipe(Effect.map((defaultConfig) => ({ ...defaultConfig, ...config }))))));
|
|
85
|
-
CloudSearchService.baseLayer = (evaluate) => Layer.effect(_a, makeCloudSearchService).pipe(Layer.provide(Layer.effect(CloudSearchClientInstance, Effect.map(makeDefaultCloudSearchClientInstanceConfig, evaluate))));
|
|
86
|
-
/**
|
|
87
|
-
* @since 1.0.0
|
|
88
|
-
* @category models
|
|
89
|
-
* @alias CloudSearchService
|
|
90
|
-
*/
|
|
91
|
-
export const CloudSearch = CloudSearchService;
|
|
92
|
-
/**
|
|
93
|
-
* @since 1.0.0
|
|
94
|
-
* @category layers
|
|
95
|
-
* @deprecated use CloudSearch.baseLayer instead
|
|
96
|
-
*/
|
|
97
|
-
export const BaseCloudSearchServiceLayer = Layer.effect(CloudSearchService, makeCloudSearchService);
|
|
98
|
-
/**
|
|
99
|
-
* @since 1.0.0
|
|
100
|
-
* @category layers
|
|
101
|
-
* @deprecated use CloudSearch.layer instead
|
|
102
|
-
*/
|
|
103
|
-
export const CloudSearchServiceLayer = BaseCloudSearchServiceLayer.pipe(Layer.provide(CloudSearchClientInstanceLayer));
|
|
104
|
-
/**
|
|
105
|
-
* @since 1.0.0
|
|
106
|
-
* @category layers
|
|
107
|
-
* @deprecated use CloudSearch.defaultLayer instead
|
|
108
|
-
*/
|
|
109
|
-
export const DefaultCloudSearchServiceLayer = CloudSearchService.defaultLayer;
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xvdWRTZWFyY2hTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0Nsb3VkU2VhcmNoU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7O0dBRUc7QUFDSCxPQUFPLEVBQ0wsMkJBQTJCLEVBRzNCLHNCQUFzQixFQUd0QixtQkFBbUIsRUFHbkIsMkJBQTJCLEVBRzNCLHVCQUF1QixFQUd2Qix1QkFBdUIsRUFHdkIsc0JBQXNCLEVBR3RCLDJCQUEyQixFQUczQixtQkFBbUIsRUFHbkIsdUJBQXVCLEVBR3ZCLHVCQUF1QixFQUd2QixzQkFBc0IsRUFHdEIsOEJBQThCLEVBRzlCLGtDQUFrQyxFQUdsQyxvQ0FBb0MsRUFHcEMsc0JBQXNCLEVBR3RCLDBCQUEwQixFQUcxQiwwQkFBMEIsRUFHMUIsZ0NBQWdDLEVBR2hDLG9DQUFvQyxFQUdwQyx5QkFBeUIsRUFHekIscUJBQXFCLEVBR3JCLHNCQUFzQixFQUd0QixnQ0FBZ0MsRUFHaEMsa0NBQWtDLEVBR2xDLDhCQUE4QixFQUc5QixrQ0FBa0MsR0FHbkMsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3JELE9BQU8sRUFDTCx5QkFBeUIsRUFDekIsOEJBQThCLEdBQy9CLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUNMLG1DQUFtQyxFQUNuQywwQ0FBMEMsRUFDMUMsK0JBQStCLEdBQ2hDLE1BQU0sbUNBQW1DLENBQUM7QUFDM0MsT0FBTyxFQUNMLGdCQUFnQixFQVNoQixRQUFRLEdBRVQsTUFBTSxVQUFVLENBQUM7QUFhbEIsTUFBTSxRQUFRLEdBQUc7SUFDZixzQkFBc0I7SUFDdEIsbUJBQW1CO0lBQ25CLDJCQUEyQjtJQUMzQix1QkFBdUI7SUFDdkIsdUJBQXVCO0lBQ3ZCLHNCQUFzQjtJQUN0QiwyQkFBMkI7SUFDM0IsbUJB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LENBQUMsTUFBTSw4QkFBOEIsR0FBRyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzaW5jZSAxLjAuMFxuICovXG5pbXBvcnQge1xuICBDbG91ZFNlYXJjaFNlcnZpY2VFeGNlcHRpb24sXG4gIHR5cGUgQ2xvdWRTZWFyY2hDbGllbnQsXG4gIHR5cGUgQ2xvdWRTZWFyY2hDbGllbnRDb25maWcsXG4gIEJ1aWxkU3VnZ2VzdGVyc0NvbW1hbmQsXG4gIHR5cGUgQnVpbGRTdWdnZXN0ZXJzQ29tbWFuZElucHV0LFxuICB0eXBlIEJ1aWxkU3VnZ2VzdGVyc0NvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZURvbWFpbkNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlRG9tYWluQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZURvbWFpbkNvbW1hbmRPdXRwdXQsXG4gIERlZmluZUFuYWx5c2lzU2NoZW1lQ29tbWFuZCxcbiAgdHlwZSBEZWZpbmVBbmFseXNpc1NjaGVtZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWZpbmVBbmFseXNpc1NjaGVtZUNvbW1hbmRPdXRwdXQsXG4gIERlZmluZUV4cHJlc3Npb25Db21tYW5kLFxuICB0eXBlIERlZmluZUV4cHJlc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVmaW5lRXhwcmVzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIERlZmluZUluZGV4RmllbGRDb21tYW5kLFxuICB0eXBlIERlZmluZUluZGV4RmllbGRDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVmaW5lSW5kZXhGaWVsZENvbW1hbmRPdXRwdXQsXG4gIERlZmluZVN1Z2dlc3RlckNvbW1hbmQsXG4gIHR5cGUgRGVmaW5lU3VnZ2VzdGVyQ29tbWFuZElucHV0LFxuICB0eXBlIERlZmluZVN1Z2dlc3RlckNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUFuYWx5c2lzU2NoZW1lQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVBbmFseXNpc1NjaGVtZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVBbmFseXNpc1NjaGVtZUNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZURvbWFpbkNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlRG9tYWluQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZURvbWFpbkNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUV4cHJlc3Npb25Db21tYW5kLFxuICB0eXBlIERlbGV0ZUV4cHJlc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlRXhwcmVzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUluZGV4RmllbGRDb21tYW5kLFxuICB0eXBlIERlbGV0ZUluZGV4RmllbGRDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlSW5kZXhGaWVsZENvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVN1Z2dlc3RlckNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlU3VnZ2VzdGVyQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVN1Z2dlc3RlckNvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlQW5hbHlzaXNTY2hlbWVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUFuYWx5c2lzU2NoZW1lc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUFuYWx5c2lzU2NoZW1lc0NvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlQXZhaWxhYmlsaXR5T3B0aW9uc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVBdmFpbGFiaWxpdHlPcHRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlQXZhaWxhYmlsaXR5T3B0aW9uc0NvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlRG9tYWluRW5kcG9pbnRPcHRpb25zQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZURvbWFpbkVuZHBvaW50T3B0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZURvbWFpbkVuZHBvaW50T3B0aW9uc0NvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlRG9tYWluc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVEb21haW5zQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlRG9tYWluc0NvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlRXhwcmVzc2lvbnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlRXhwcmVzc2lvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVFeHByZXNzaW9uc0NvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlSW5kZXhGaWVsZHNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlSW5kZXhGaWVsZHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVJbmRleEZpZWxkc0NvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlU2NhbGluZ1BhcmFtZXRlcnNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlU2NhbGluZ1BhcmFtZXRlcnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVTY2FsaW5nUGFyYW1ldGVyc0NvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlU2VydmljZUFjY2Vzc1BvbGljaWVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZVNlcnZpY2VBY2Nlc3NQb2xpY2llc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVNlcnZpY2VBY2Nlc3NQb2xpY2llc0NvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlU3VnZ2VzdGVyc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVTdWdnZXN0ZXJzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlU3VnZ2VzdGVyc0NvbW1hbmRPdXRwdXQsXG4gIEluZGV4RG9jdW1lbnRzQ29tbWFuZCxcbiAgdHlwZSBJbmRleERvY3VtZW50c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBJbmRleERvY3VtZW50c0NvbW1hbmRPdXRwdXQsXG4gIExpc3REb21haW5OYW1lc0NvbW1hbmQsXG4gIHR5cGUgTGlzdERvbWFpbk5hbWVzQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3REb21haW5OYW1lc0NvbW1hbmRPdXRwdXQsXG4gIFVwZGF0ZUF2YWlsYWJpbGl0eU9wdGlvbnNDb21tYW5kLFxuICB0eXBlIFVwZGF0ZUF2YWlsYWJpbGl0eU9wdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgVXBkYXRlQXZhaWxhYmlsaXR5T3B0aW9uc0NvbW1hbmRPdXRwdXQsXG4gIFVwZGF0ZURvbWFpbkVuZHBvaW50T3B0aW9uc0NvbW1hbmQsXG4gIHR5cGUgVXBkYXRlRG9tYWluRW5kcG9pbnRPcHRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIFVwZGF0ZURvbWFpbkVuZHBvaW50T3B0aW9uc0NvbW1hbmRPdXRwdXQsXG4gIFVwZGF0ZVNjYWxpbmdQYXJhbWV0ZXJzQ29tbWFuZCxcbiAgdHlwZSBVcGRhdGVTY2FsaW5nUGFyYW1ldGVyc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBVcGRhdGVTY2FsaW5nUGFyYW1ldGVyc0NvbW1hbmRPdXRwdXQsXG4gIFVwZGF0ZVNlcnZpY2VBY2Nlc3NQb2xpY2llc0NvbW1hbmQsXG4gIHR5cGUgVXBkYXRlU2VydmljZUFjY2Vzc1BvbGljaWVzQ29tbWFuZElucHV0LFxuICB0eXBlIFVwZGF0ZVNlcnZpY2VBY2Nlc3NQb2xpY2llc0NvbW1hbmRPdXRwdXQsXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtY2xvdWRzZWFyY2hcIjtcbmltcG9ydCB7IERhdGEsIEVmZmVjdCwgTGF5ZXIsIFJlY29yZCB9IGZyb20gXCJlZmZlY3RcIjtcbmltcG9ydCB7XG4gIENsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2UsXG4gIENsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2VMYXllcixcbn0gZnJvbSBcIi4vQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZVwiO1xuaW1wb3J0IHtcbiAgRGVmYXVsdENsb3VkU2VhcmNoQ2xpZW50Q29uZmlnTGF5ZXIsXG4gIG1ha2VEZWZhdWx0Q2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZyxcbiAgQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZyxcbn0gZnJvbSBcIi4vQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZ1wiO1xuaW1wb3J0IHtcbiAgQWxsU2VydmljZUVycm9ycyxcbiAgQmFzZUVycm9yLFxuICBEaXNhYmxlZE9wZXJhdGlvbkVycm9yLFxuICBJbnRlcm5hbEVycm9yLFxuICBJbnZhbGlkVHlwZUVycm9yLFxuICBMaW1pdEV4Y2VlZGVkRXJyb3IsXG4gIFJlc291cmNlQWxyZWFkeUV4aXN0c0Vycm9yLFxuICBSZXNvdXJjZU5vdEZvdW5kRXJyb3IsXG4gIFZhbGlkYXRpb25FcnJvcixcbiAgU2RrRXJyb3IsXG4gIFRhZ2dlZEV4Y2VwdGlvbixcbn0gZnJvbSBcIi4vRXJyb3JzXCI7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSHR0cEhhbmRsZXJPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIHRpbWUgaW4gbWlsbGlzZWNvbmRzIHRoYXQgdGhlIGNvbm5lY3Rpb24gcGhhc2Ugb2YgYSByZXF1ZXN0XG4gICAqIG1heSB0YWtlIGJlZm9yZSB0aGUgY29ubmVjdGlvbiBhdHRlbXB0IGlzIGFiYW5kb25lZC5cbiAgICovXG4gIHJlcXVlc3RUaW1lb3V0PzogbnVtYmVyO1xufVxuXG5jb25zdCBjb21tYW5kcyA9IHtcbiAgQnVpbGRTdWdnZXN0ZXJzQ29tbWFuZCxcbiAgQ3JlYXRlRG9tYWluQ29tbWFuZCxcbiAgRGVmaW5lQW5hbHlzaXNTY2hlbWVDb21tYW5kLFxuICBEZWZpbmVFeHByZXNzaW9uQ29tbWFuZCxcbiAgRGVmaW5lSW5kZXhGaWVsZENvbW1hbmQsXG4gIERlZmluZVN1Z2dlc3RlckNvbW1hbmQsXG4gIERlbGV0ZUFuYWx5c2lzU2NoZW1lQ29tbWFuZCxcbiAgRGVsZXRlRG9tYWluQ29tbWFuZCxcbiAgRGVsZXRlRXhwcmVzc2lvbkNvbW1hbmQsXG4gIERlbGV0ZUluZGV4RmllbGRDb21tYW5kLFxuICBEZWxldGVTdWdnZXN0ZXJDb21tYW5kLFxuICBEZXNjcmliZUFuYWx5c2lzU2NoZW1lc0NvbW1hbmQsXG4gIERlc2NyaWJlQXZhaWxhYmlsaXR5T3B0aW9uc0NvbW1hbmQsXG4gIERlc2NyaWJlRG9tYWluRW5kcG9pbnRPcHRpb25zQ29tbWFuZCxcbiAgRGVzY3JpYmVEb21haW5zQ29tbWFuZCxcbiAgRGVzY3JpYmVFeHByZXNzaW9uc0NvbW1hbmQsXG4gIERlc2NyaWJlSW5kZXhGaWVsZHNDb21tYW5kLFxuICBEZXNjcmliZVNjYWxpbmdQYXJhbWV0ZXJzQ29tbWFuZCxcbiAgRGVzY3JpYmVTZXJ2aWNlQWNjZXNzUG9saWNpZXNDb21tYW5kLFxuICBEZXNjcmliZVN1Z2dlc3RlcnNDb21tYW5kLFxuICBJbmRleERvY3VtZW50c0NvbW1hbmQsXG4gIExpc3REb21haW5OYW1lc0NvbW1hbmQsXG4gIFVwZGF0ZUF2YWlsYWJpbGl0eU9wdGlvbnNDb21tYW5kLFxuICBVcGRhdGVEb21haW5FbmRwb2ludE9wdGlvbnNDb21tYW5kLFxuICBVcGRhdGVTY2FsaW5nUGFyYW1ldGVyc0NvbW1hbmQsXG4gIFVwZGF0ZVNlcnZpY2VBY2Nlc3NQb2xpY2llc0NvbW1hbmQsXG59O1xuXG5pbnRlcmZhY2UgQ2xvdWRTZWFyY2hTZXJ2aWNlJCB7XG4gIHJlYWRvbmx5IF86IHVuaXF1ZSBzeW1ib2w7XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEJ1aWxkU3VnZ2VzdGVyc0NvbW1hbmR9XG4gICAqL1xuICBidWlsZFN1Z2dlc3RlcnMoXG4gICAgYXJnczogQnVpbGRTdWdnZXN0ZXJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQnVpbGRTdWdnZXN0ZXJzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXNlRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZURvbWFpbkNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVEb21haW4oXG4gICAgYXJnczogQ3JlYXRlRG9tYWluQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlRG9tYWluQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXNlRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IExpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgUmVzb3VyY2VBbHJlYWR5RXhpc3RzRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWZpbmVBbmFseXNpc1NjaGVtZUNvbW1hbmR9XG4gICAqL1xuICBkZWZpbmVBbmFseXNpc1NjaGVtZShcbiAgICBhcmdzOiBEZWZpbmVBbmFseXNpc1NjaGVtZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlZmluZUFuYWx5c2lzU2NoZW1lQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXNlRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRUeXBlRXJyb3JcbiAgICB8IExpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVmaW5lRXhwcmVzc2lvbkNvbW1hbmR9XG4gICAqL1xuICBkZWZpbmVFeHByZXNzaW9uKFxuICAgIGFyZ3M6IERlZmluZUV4cHJlc3Npb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWZpbmVFeHByZXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXNlRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRUeXBlRXJyb3JcbiAgICB8IExpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVmaW5lSW5kZXhGaWVsZENvbW1hbmR9XG4gICAqL1xuICBkZWZpbmVJbmRleEZpZWxkKFxuICAgIGFyZ3M6IERlZmluZUluZGV4RmllbGRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWZpbmVJbmRleEZpZWxkQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXNlRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRUeXBlRXJyb3JcbiAgICB8IExpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVmaW5lU3VnZ2VzdGVyQ29tbWFuZH1cbiAgICovXG4gIGRlZmluZVN1Z2dlc3RlcihcbiAgICBhcmdzOiBEZWZpbmVTdWdnZXN0ZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWZpbmVTdWdnZXN0ZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhc2VFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFR5cGVFcnJvclxuICAgIHwgTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVBbmFseXNpc1NjaGVtZUNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVBbmFseXNpc1NjaGVtZShcbiAgICBhcmdzOiBEZWxldGVBbmFseXNpc1NjaGVtZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZUFuYWx5c2lzU2NoZW1lQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXNlRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRUeXBlRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZURvbWFpbkNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVEb21haW4oXG4gICAgYXJnczogRGVsZXRlRG9tYWluQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlRG9tYWluQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEJhc2VFcnJvciB8IEludGVybmFsRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlRXhwcmVzc2lvbkNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVFeHByZXNzaW9uKFxuICAgIGFyZ3M6IERlbGV0ZUV4cHJlc3Npb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVFeHByZXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXNlRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRUeXBlRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUluZGV4RmllbGRDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlSW5kZXhGaWVsZChcbiAgICBhcmdzOiBEZWxldGVJbmRleEZpZWxkQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlSW5kZXhGaWVsZENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFzZUVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkVHlwZUVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVTdWdnZXN0ZXJDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlU3VnZ2VzdGVyKFxuICAgIGFyZ3M6IERlbGV0ZVN1Z2dlc3RlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVN1Z2dlc3RlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFzZUVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkVHlwZUVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUFuYWx5c2lzU2NoZW1lc0NvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZUFuYWx5c2lzU2NoZW1lcyhcbiAgICBhcmdzOiBEZXNjcmliZUFuYWx5c2lzU2NoZW1lc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQW5hbHlzaXNTY2hlbWVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEJhc2VFcnJvciB8IEludGVybmFsRXJyb3IgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVBdmFpbGFiaWxpdHlPcHRpb25zQ29tbWFuZH1cbiAgICovXG4gIGRlc2NyaWJlQXZhaWxhYmlsaXR5T3B0aW9ucyhcbiAgICBhcmdzOiBEZXNjcmliZUF2YWlsYWJpbGl0eU9wdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUF2YWlsYWJpbGl0eU9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhc2VFcnJvclxuICAgIHwgRGlzYWJsZWRPcGVyYXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFR5cGVFcnJvclxuICAgIHwgTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVEb21haW5FbmRwb2ludE9wdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVEb21haW5FbmRwb2ludE9wdGlvbnMoXG4gICAgYXJnczogRGVzY3JpYmVEb21haW5FbmRwb2ludE9wdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZURvbWFpbkVuZHBvaW50T3B0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFzZUVycm9yXG4gICAgfCBEaXNhYmxlZE9wZXJhdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZURvbWFpbnNDb21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVEb21haW5zKFxuICAgIGFyZ3M6IERlc2NyaWJlRG9tYWluc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlRG9tYWluc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBCYXNlRXJyb3IgfCBJbnRlcm5hbEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlRXhwcmVzc2lvbnNDb21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVFeHByZXNzaW9ucyhcbiAgICBhcmdzOiBEZXNjcmliZUV4cHJlc3Npb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVFeHByZXNzaW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBCYXNlRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlSW5kZXhGaWVsZHNDb21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVJbmRleEZpZWxkcyhcbiAgICBhcmdzOiBEZXNjcmliZUluZGV4RmllbGRzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVJbmRleEZpZWxkc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBCYXNlRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlU2NhbGluZ1BhcmFtZXRlcnNDb21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVTY2FsaW5nUGFyYW1ldGVycyhcbiAgICBhcmdzOiBEZXNjcmliZVNjYWxpbmdQYXJhbWV0ZXJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVTY2FsaW5nUGFyYW1ldGVyc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBCYXNlRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlU2VydmljZUFjY2Vzc1BvbGljaWVzQ29tbWFuZH1cbiAgICovXG4gIGRlc2NyaWJlU2VydmljZUFjY2Vzc1BvbGljaWVzKFxuICAgIGFyZ3M6IERlc2NyaWJlU2VydmljZUFjY2Vzc1BvbGljaWVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVTZXJ2aWNlQWNjZXNzUG9saWNpZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQmFzZUVycm9yIHwgSW50ZXJuYWxFcnJvciB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVN1Z2dlc3RlcnNDb21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVTdWdnZXN0ZXJzKFxuICAgIGFyZ3M6IERlc2NyaWJlU3VnZ2VzdGVyc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlU3VnZ2VzdGVyc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBCYXNlRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEluZGV4RG9jdW1lbnRzQ29tbWFuZH1cbiAgICovXG4gIGluZGV4RG9jdW1lbnRzKFxuICAgIGFyZ3M6IEluZGV4RG9jdW1lbnRzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgSW5kZXhEb2N1bWVudHNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhc2VFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdERvbWFpbk5hbWVzQ29tbWFuZH1cbiAgICovXG4gIGxpc3REb21haW5OYW1lcyhcbiAgICBhcmdzOiBMaXN0RG9tYWluTmFtZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxMaXN0RG9tYWluTmFtZXNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IEJhc2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVwZGF0ZUF2YWlsYWJpbGl0eU9wdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgdXBkYXRlQXZhaWxhYmlsaXR5T3B0aW9ucyhcbiAgICBhcmdzOiBVcGRhdGVBdmFpbGFiaWxpdHlPcHRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVXBkYXRlQXZhaWxhYmlsaXR5T3B0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFzZUVycm9yXG4gICAgfCBEaXNhYmxlZE9wZXJhdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkVHlwZUVycm9yXG4gICAgfCBMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVwZGF0ZURvbWFpbkVuZHBvaW50T3B0aW9uc0NvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVEb21haW5FbmRwb2ludE9wdGlvbnMoXG4gICAgYXJnczogVXBkYXRlRG9tYWluRW5kcG9pbnRPcHRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVXBkYXRlRG9tYWluRW5kcG9pbnRPcHRpb25zQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXNlRXJyb3JcbiAgICB8IERpc2FibGVkT3BlcmF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRUeXBlRXJyb3JcbiAgICB8IExpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBkYXRlU2NhbGluZ1BhcmFtZXRlcnNDb21tYW5kfVxuICAgKi9cbiAgdXBkYXRlU2NhbGluZ1BhcmFtZXRlcnMoXG4gICAgYXJnczogVXBkYXRlU2NhbGluZ1BhcmFtZXRlcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBVcGRhdGVTY2FsaW5nUGFyYW1ldGVyc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFzZUVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkVHlwZUVycm9yXG4gICAgfCBMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVwZGF0ZVNlcnZpY2VBY2Nlc3NQb2xpY2llc0NvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVTZXJ2aWNlQWNjZXNzUG9saWNpZXMoXG4gICAgYXJnczogVXBkYXRlU2VydmljZUFjY2Vzc1BvbGljaWVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVXBkYXRlU2VydmljZUFjY2Vzc1BvbGljaWVzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXNlRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRUeXBlRXJyb3JcbiAgICB8IExpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcbn1cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBjb25zdHJ1Y3RvcnNcbiAqL1xuZXhwb3J0IGNvbnN0IG1ha2VDbG91ZFNlYXJjaFNlcnZpY2UgPSBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoXykge1xuICBjb25zdCBjbGllbnQgPSB5aWVsZCogXyhDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlKTtcblxuICByZXR1cm4gUmVjb3JkLnRvRW50cmllcyhjb21tYW5kcykucmVkdWNlKChhY2MsIFtjb21tYW5kXSkgPT4ge1xuICAgIGNvbnN0IENvbW1hbmRDdG9yID0gY29tbWFuZHNbY29tbWFuZF0gYXMgYW55O1xuICAgIGNvbnN0IG1ldGhvZEltcGwgPSAoYXJnczogYW55LCBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zKSA9PlxuICAgICAgRWZmZWN0LnRyeVByb21pc2Uoe1xuICAgICAgICB0cnk6IChhYm9ydFNpZ25hbCkgPT5cbiAgICAgICAgICBjbGllbnQuc2VuZChuZXcgQ29tbWFuZEN0b3IoYXJncyksIHtcbiAgICAgICAgICAgIC4uLihvcHRpb25zID8/IHt9KSxcbiAgICAgICAgICAgIGFib3J0U2lnbmFsLFxuICAgICAgICAgIH0pLFxuICAgICAgICBjYXRjaDogKGUpID0+IHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBlIGluc3RhbmNlb2YgQ2xvdWRTZWFyY2hTZXJ2aWNlRXhjZXB0aW9uICYmXG4gICAgICAgICAgICBBbGxTZXJ2aWNlRXJyb3JzLmluY2x1ZGVzKGUubmFtZSlcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIGNvbnN0IFNlcnZpY2VFeGNlcHRpb24gPSBEYXRhLnRhZ2dlZDxcbiAgICAgICAgICAgICAgVGFnZ2VkRXhjZXB0aW9uPENsb3VkU2VhcmNoU2VydmljZUV4Y2VwdGlvbj5cbiAgICAgICAgICAgID4oZS5uYW1lKTtcblxuICAgICAgICAgICAgcmV0dXJuIFNlcnZpY2VFeGNlcHRpb24oe1xuICAgICAgICAgICAgICAuLi5lLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiBTZGtFcnJvcih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG5hbWU6IFwiU2RrRXJyb3JcIixcbiAgICAgICAgICAgICAgbWVzc2FnZTogZS5tZXNzYWdlLFxuICAgICAgICAgICAgICBzdGFjazogZS5zdGFjayxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgY29uc3QgbWV0aG9kTmFtZSA9IChjb21tYW5kWzBdLnRvTG93ZXJDYXNlKCkgKyBjb21tYW5kLnNsaWNlKDEpKS5yZXBsYWNlKFxuICAgICAgL0NvbW1hbmQkLyxcbiAgICAgIFwiXCIsXG4gICAgKTtcbiAgICByZXR1cm4geyAuLi5hY2MsIFttZXRob2ROYW1lXTogbWV0aG9kSW1wbCB9O1xuICB9LCB7fSkgYXMgQ2xvdWRTZWFyY2hTZXJ2aWNlJDtcbn0pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IG1vZGVsc1xuICovXG5leHBvcnQgY2xhc3MgQ2xvdWRTZWFyY2hTZXJ2aWNlIGV4dGVuZHMgRWZmZWN0LlRhZyhcbiAgXCJAZWZmZWN0LWF3cy9jbGllbnQtY2xvdWRzZWFyY2gvQ2xvdWRTZWFyY2hTZXJ2aWNlXCIsXG4pPENsb3VkU2VhcmNoU2VydmljZSwgQ2xvdWRTZWFyY2hTZXJ2aWNlJD4oKSB7XG4gIHN0YXRpYyByZWFkb25seSBkZWZhdWx0TGF5ZXIgPSBMYXllci5lZmZlY3QoXG4gICAgdGhpcyxcbiAgICBtYWtlQ2xvdWRTZWFyY2hTZXJ2aWNlLFxuICApLnBpcGUoXG4gICAgTGF5ZXIucHJvdmlkZShDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlTGF5ZXIpLFxuICAgIExheWVyLnByb3ZpZGUoRGVmYXVsdENsb3VkU2VhcmNoQ2xpZW50Q29uZmlnTGF5ZXIpLFxuICApO1xuICBzdGF0aWMgcmVhZG9ubHkgbGF5ZXIgPSAoY29uZmlnOiBDbG91ZFNlYXJjaENsaWVudENvbmZpZykgPT5cbiAgICBMYXllci5lZmZlY3QodGhpcywgbWFrZUNsb3VkU2VhcmNoU2VydmljZSkucGlwZShcbiAgICAgIExheWVyLnByb3ZpZGUoQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUxheWVyKSxcbiAgICAgIExheWVyLnByb3ZpZGUoXG4gICAgICAgIExheWVyLmVmZmVjdChcbiAgICAgICAgICBDbG91ZFNlYXJjaENsaWVudEluc3RhbmNlQ29uZmlnLFxuICAgICAgICAgIG1ha2VEZWZhdWx0Q2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZy5waXBlKFxuICAgICAgICAgICAgRWZmZWN0Lm1hcCgoZGVmYXVsdENvbmZpZykgPT4gKHsgLi4uZGVmYXVsdENvbmZpZywgLi4uY29uZmlnIH0pKSxcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApO1xuICBzdGF0aWMgcmVhZG9ubHkgYmFzZUxheWVyID0gKFxuICAgIGV2YWx1YXRlOiAoZGVmYXVsdENvbmZpZzogQ2xvdWRTZWFyY2hDbGllbnRDb25maWcpID0+IENsb3VkU2VhcmNoQ2xpZW50LFxuICApID0+XG4gICAgTGF5ZXIuZWZmZWN0KHRoaXMsIG1ha2VDbG91ZFNlYXJjaFNlcnZpY2UpLnBpcGUoXG4gICAgICBMYXllci5wcm92aWRlKFxuICAgICAgICBMYXllci5lZmZlY3QoXG4gICAgICAgICAgQ2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZSxcbiAgICAgICAgICBFZmZlY3QubWFwKG1ha2VEZWZhdWx0Q2xvdWRTZWFyY2hDbGllbnRJbnN0YW5jZUNvbmZpZywgZXZhbHVhdGUpLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApO1xufVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IG1vZGVsc1xuICogQGFsaWFzIENsb3VkU2VhcmNoU2VydmljZVxuICovXG5leHBvcnQgY29uc3QgQ2xvdWRTZWFyY2ggPSBDbG91ZFNlYXJjaFNlcnZpY2U7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKiBAZGVwcmVjYXRlZCB1c2UgQ2xvdWRTZWFyY2guYmFzZUxheWVyIGluc3RlYWRcbiAqL1xuZXhwb3J0IGNvbnN0IEJhc2VDbG91ZFNlYXJjaFNlcnZpY2VMYXllciA9IExheWVyLmVmZmVjdChcbiAgQ2xvdWRTZWFyY2hTZXJ2aWNlLFxuICBtYWtlQ2xvdWRTZWFyY2hTZXJ2aWNlLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqIEBkZXByZWNhdGVkIHVzZSBDbG91ZFNlYXJjaC5sYXllciBpbnN0ZWFkXG4gKi9cbmV4cG9ydCBjb25zdCBDbG91ZFNlYXJjaFNlcnZpY2VMYXllciA9IEJhc2VDbG91ZFNlYXJjaFNlcnZpY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKENsb3VkU2VhcmNoQ2xpZW50SW5zdGFuY2VMYXllciksXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICogQGRlcHJlY2F0ZWQgdXNlIENsb3VkU2VhcmNoLmRlZmF1bHRMYXllciBpbnN0ZWFkXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0Q2xvdWRTZWFyY2hTZXJ2aWNlTGF5ZXIgPSBDbG91ZFNlYXJjaFNlcnZpY2UuZGVmYXVsdExheWVyO1xuIl19
|