@aws-cdk/aws-medialive-alpha 2.268.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/.jsii +60888 -0
  2. package/.jsii.tabl.json.gz +0 -0
  3. package/.warnings.jsii.js +524 -0
  4. package/LICENSE +201 -0
  5. package/NOTICE +2 -0
  6. package/README.md +1297 -0
  7. package/grants.json +27 -0
  8. package/lib/audio-codec-settings.d.ts +901 -0
  9. package/lib/audio-codec-settings.js +1098 -0
  10. package/lib/audio-selector.d.ts +170 -0
  11. package/lib/audio-selector.js +306 -0
  12. package/lib/avail-settings.d.ts +231 -0
  13. package/lib/avail-settings.js +226 -0
  14. package/lib/caption-selector.d.ts +234 -0
  15. package/lib/caption-selector.js +413 -0
  16. package/lib/caption-settings.d.ts +349 -0
  17. package/lib/caption-settings.js +482 -0
  18. package/lib/channel-features.d.ts +106 -0
  19. package/lib/channel-features.js +85 -0
  20. package/lib/channel-placement-group.d.ts +73 -0
  21. package/lib/channel-placement-group.js +132 -0
  22. package/lib/channel.d.ts +687 -0
  23. package/lib/channel.js +1096 -0
  24. package/lib/cluster.d.ts +129 -0
  25. package/lib/cluster.js +158 -0
  26. package/lib/color-correction.d.ts +39 -0
  27. package/lib/color-correction.js +29 -0
  28. package/lib/destinations.d.ts +242 -0
  29. package/lib/destinations.js +455 -0
  30. package/lib/encode-configuration.d.ts +615 -0
  31. package/lib/encode-configuration.js +629 -0
  32. package/lib/enums.d.ts +698 -0
  33. package/lib/enums.js +1045 -0
  34. package/lib/file-location.d.ts +65 -0
  35. package/lib/file-location.js +150 -0
  36. package/lib/framerate.d.ts +31 -0
  37. package/lib/framerate.js +71 -0
  38. package/lib/index.d.ts +26 -0
  39. package/lib/index.js +43 -0
  40. package/lib/input-attachment.d.ts +319 -0
  41. package/lib/input-attachment.js +228 -0
  42. package/lib/input-security-group.d.ts +51 -0
  43. package/lib/input-security-group.js +123 -0
  44. package/lib/input-specification.d.ts +111 -0
  45. package/lib/input-specification.js +181 -0
  46. package/lib/input.d.ts +505 -0
  47. package/lib/input.js +803 -0
  48. package/lib/m2ts-settings.d.ts +421 -0
  49. package/lib/m2ts-settings.js +469 -0
  50. package/lib/m3u8-settings.d.ts +272 -0
  51. package/lib/m3u8-settings.js +304 -0
  52. package/lib/medialive-grants.generated.d.ts +30 -0
  53. package/lib/medialive-grants.generated.js +92 -0
  54. package/lib/network.d.ts +83 -0
  55. package/lib/network.js +132 -0
  56. package/lib/output-group.d.ts +924 -0
  57. package/lib/output-group.js +941 -0
  58. package/lib/outputs.d.ts +304 -0
  59. package/lib/outputs.js +598 -0
  60. package/lib/sdi-source.d.ts +124 -0
  61. package/lib/sdi-source.js +180 -0
  62. package/lib/shared.d.ts +44 -0
  63. package/lib/shared.js +146 -0
  64. package/lib/video-codec-settings.d.ts +1500 -0
  65. package/lib/video-codec-settings.js +1722 -0
  66. package/lib/video-selection.d.ts +92 -0
  67. package/lib/video-selection.js +95 -0
  68. package/package.json +135 -0
  69. package/rosetta/_generated.ts-fixture +6 -0
  70. package/rosetta/default.ts-fixture +21 -0
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
3
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
4
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
5
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
6
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
7
+ var _, done = false;
8
+ for (var i = decorators.length - 1; i >= 0; i--) {
9
+ var context = {};
10
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
11
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
12
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
13
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
14
+ if (kind === "accessor") {
15
+ if (result === void 0) continue;
16
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
17
+ if (_ = accept(result.get)) descriptor.get = _;
18
+ if (_ = accept(result.set)) descriptor.set = _;
19
+ if (_ = accept(result.init)) initializers.unshift(_);
20
+ }
21
+ else if (_ = accept(result)) {
22
+ if (kind === "field") initializers.unshift(_);
23
+ else descriptor[key] = _;
24
+ }
25
+ }
26
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
27
+ done = true;
28
+ };
29
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
30
+ var useValue = arguments.length > 2;
31
+ for (var i = 0; i < initializers.length; i++) {
32
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
33
+ }
34
+ return useValue ? value : void 0;
35
+ };
36
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.InputSecurityGroup = void 0;
38
+ const jsiiDeprecationWarnings = require("../.warnings.jsii.js");
39
+ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
40
+ const aws_cdk_lib_1 = require("aws-cdk-lib");
41
+ const aws_medialive_1 = require("aws-cdk-lib/aws-medialive");
42
+ const metadata_resource_1 = require("aws-cdk-lib/core/lib/metadata-resource");
43
+ const prop_injectable_1 = require("aws-cdk-lib/core/lib/prop-injectable");
44
+ const shared_1 = require("./shared");
45
+ /**
46
+ * Defines an AWS Elemental MediaLive Input Security Group.
47
+ *
48
+ * An input security group controls which IPv4 CIDR blocks can push content to a push-type input.
49
+ */
50
+ let InputSecurityGroup = (() => {
51
+ let _classDecorators = [prop_injectable_1.propertyInjectable];
52
+ let _classDescriptor;
53
+ let _classExtraInitializers = [];
54
+ let _classThis;
55
+ let _classSuper = aws_cdk_lib_1.Resource;
56
+ var InputSecurityGroup = class extends _classSuper {
57
+ static { _classThis = this; }
58
+ static {
59
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
60
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
61
+ InputSecurityGroup = _classThis = _classDescriptor.value;
62
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
63
+ }
64
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-medialive-alpha.InputSecurityGroup", version: "2.268.0-alpha.0" };
65
+ /** Uniquely identifies this class. */
66
+ static PROPERTY_INJECTION_ID = '@aws-cdk.aws-medialive-alpha.InputSecurityGroup';
67
+ /** Import an existing input security group by its ARN. The id is parsed out of the ARN. */
68
+ static fromInputSecurityGroupArn(scope, id, inputSecurityGroupArn) {
69
+ const inputSecurityGroupId = (0, shared_1.extractResourceId)(inputSecurityGroupArn, 'InputSecurityGroup');
70
+ class Import extends aws_cdk_lib_1.Resource {
71
+ inputSecurityGroupArn = inputSecurityGroupArn;
72
+ inputSecurityGroupId = inputSecurityGroupId;
73
+ get inputSecurityGroupRef() {
74
+ return {
75
+ inputSecurityGroupId: this.inputSecurityGroupId,
76
+ inputSecurityGroupArn: this.inputSecurityGroupArn,
77
+ };
78
+ }
79
+ }
80
+ return new Import(scope, id);
81
+ }
82
+ inputSecurityGroupArn;
83
+ inputSecurityGroupId;
84
+ /** A reference to this Input Security Group resource. */
85
+ get inputSecurityGroupRef() {
86
+ return {
87
+ inputSecurityGroupId: this.inputSecurityGroupId,
88
+ inputSecurityGroupArn: this.inputSecurityGroupArn,
89
+ };
90
+ }
91
+ constructor(scope, id, props) {
92
+ super(scope, id);
93
+ try {
94
+ jsiiDeprecationWarnings._aws_cdk_aws_medialive_alpha_InputSecurityGroupProps(props);
95
+ }
96
+ catch (error) {
97
+ if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
98
+ Error.captureStackTrace(error, InputSecurityGroup);
99
+ }
100
+ throw error;
101
+ }
102
+ (0, metadata_resource_1.addConstructMetadata)(this, props);
103
+ // Warn on fully-open CIDR blocks (0.0.0.0/0 or any /0 prefix).
104
+ for (const cidr of props.allowlistRules) {
105
+ if (!aws_cdk_lib_1.Token.isUnresolved(cidr) && /\/0$/.test(cidr.trim())) {
106
+ aws_cdk_lib_1.Annotations.of(this).addWarningV2('@aws-cdk/aws-medialive-alpha:openAllowlistCidr', `Allowlist CIDR '${cidr}' allows push requests from any IP. Restrict to the narrowest range your sources need.`);
107
+ }
108
+ }
109
+ const resource = new aws_medialive_1.CfnInputSecurityGroup(this, 'Resource', {
110
+ whitelistRules: props.allowlistRules.map(cidr => ({ cidr })),
111
+ tags: props.tags ? Object.entries(props.tags).map(([key, value]) => ({ key, value })) : undefined,
112
+ });
113
+ this.inputSecurityGroupArn = resource.attrArn;
114
+ this.inputSecurityGroupId = resource.ref;
115
+ }
116
+ static {
117
+ __runInitializers(_classThis, _classExtraInitializers);
118
+ }
119
+ };
120
+ return InputSecurityGroup = _classThis;
121
+ })();
122
+ exports.InputSecurityGroup = InputSecurityGroup;
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc2VjdXJpdHktZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbnB1dC1zZWN1cml0eS1ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSw2Q0FBMkQ7QUFFM0QsNkRBQWtFO0FBQ2xFLDhFQUE4RTtBQUM5RSwwRUFBMEU7QUFFMUUscUNBQTZDO0FBaUM3Qzs7OztHQUlHO0lBRVUsa0JBQWtCOzRCQUQ5QixvQ0FBa0I7Ozs7c0JBQ3FCLHNCQUFRO2tDQUFoQixTQUFRLFdBQVE7Ozs7WUFBaEQsNktBdURDOzs7OztRQXREQyxzQ0FBc0M7UUFDL0IsTUFBTSxDQUFVLHFCQUFxQixHQUFXLGlEQUFpRCxDQUFDO1FBRXpHLDJGQUEyRjtRQUNwRixNQUFNLENBQUMseUJBQXlCLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUscUJBQTZCO1lBQ2pHLE1BQU0sb0JBQW9CLEdBQUcsSUFBQSwwQkFBaUIsRUFBQyxxQkFBcUIsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO1lBRTVGLE1BQU0sTUFBTyxTQUFRLHNCQUFRO2dCQUNYLHFCQUFxQixHQUFHLHFCQUFxQixDQUFDO2dCQUM5QyxvQkFBb0IsR0FBRyxvQkFBb0IsQ0FBQztnQkFDNUQsSUFBVyxxQkFBcUI7b0JBQzlCLE9BQU87d0JBQ0wsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLG9CQUFvQjt3QkFDL0MscUJBQXFCLEVBQUUsSUFBSSxDQUFDLHFCQUFxQjtxQkFDbEQsQ0FBQztnQkFDSixDQUFDO2FBQ0Y7WUFDRCxPQUFPLElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztTQUM5QjtRQUVlLHFCQUFxQixDQUFTO1FBQzlCLG9CQUFvQixDQUFTO1FBRTdDLHlEQUF5RDtRQUN6RCxJQUFXLHFCQUFxQjtZQUM5QixPQUFPO2dCQUNMLG9CQUFvQixFQUFFLElBQUksQ0FBQyxvQkFBb0I7Z0JBQy9DLHFCQUFxQixFQUFFLElBQUksQ0FBQyxxQkFBcUI7YUFDbEQsQ0FBQztTQUNIO1FBRUQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUE4QjtZQUN0RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDOzs7Ozs7bURBakNSLGtCQUFrQjs7OztZQW1DM0IsSUFBQSx3Q0FBb0IsRUFBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFFbEMsK0RBQStEO1lBQy9ELEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUN4QyxJQUFJLENBQUMsbUJBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDO29CQUMxRCx5QkFBVyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxZQUFZLENBQy9CLGdEQUFnRCxFQUNoRCxtQkFBbUIsSUFBSSx3RkFBd0YsQ0FDaEgsQ0FBQztnQkFDSixDQUFDO1lBQ0gsQ0FBQztZQUVELE1BQU0sUUFBUSxHQUFHLElBQUkscUNBQXFCLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFDM0QsY0FBYyxFQUFFLEtBQUssQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7Z0JBQzVELElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7YUFDbEcsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLHFCQUFxQixHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUM7WUFDOUMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUM7U0FDMUM7O1lBdERVLHVEQUFrQjs7Ozs7QUFBbEIsZ0RBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBJUmVzb3VyY2UgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBBbm5vdGF0aW9ucywgUmVzb3VyY2UsIFRva2VuIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHR5cGUgeyBJSW5wdXRTZWN1cml0eUdyb3VwUmVmLCBJbnB1dFNlY3VyaXR5R3JvdXBSZWZlcmVuY2UgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbWVkaWFsaXZlJztcbmltcG9ydCB7IENmbklucHV0U2VjdXJpdHlHcm91cCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1tZWRpYWxpdmUnO1xuaW1wb3J0IHsgYWRkQ29uc3RydWN0TWV0YWRhdGEgfSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlL2xpYi9tZXRhZGF0YS1yZXNvdXJjZSc7XG5pbXBvcnQgeyBwcm9wZXJ0eUluamVjdGFibGUgfSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlL2xpYi9wcm9wLWluamVjdGFibGUnO1xuaW1wb3J0IHR5cGUgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IGV4dHJhY3RSZXNvdXJjZUlkIH0gZnJvbSAnLi9zaGFyZWQnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBNZWRpYUxpdmUgSW5wdXQgU2VjdXJpdHkgR3JvdXAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUlucHV0U2VjdXJpdHlHcm91cCBleHRlbmRzIElSZXNvdXJjZSwgSUlucHV0U2VjdXJpdHlHcm91cFJlZiB7XG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBpbnB1dCBzZWN1cml0eSBncm91cC5cbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgaW5wdXRTZWN1cml0eUdyb3VwQXJuOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgSUQgb2YgdGhlIGlucHV0IHNlY3VyaXR5IGdyb3VwLlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBpbnB1dFNlY3VyaXR5R3JvdXBJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGNyZWF0aW5nIGEgTWVkaWFMaXZlIElucHV0IFNlY3VyaXR5IEdyb3VwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElucHV0U2VjdXJpdHlHcm91cFByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBsaXN0IG9mIElQdjQgQ0lEUiBhZGRyZXNzZXMgdG8gYWxsb3cuXG4gICAqL1xuICByZWFkb25seSBhbGxvd2xpc3RSdWxlczogc3RyaW5nW107XG4gIC8qKlxuICAgKiBUYWdzIHRvIGFkZCB0byB0aGUgaW5wdXQgc2VjdXJpdHkgZ3JvdXAuXG4gICAqIEBkZWZhdWx0IC0gbm8gdGFnc1xuICAgKi9cbiAgcmVhZG9ubHkgdGFncz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG59XG5cbi8qKlxuICogRGVmaW5lcyBhbiBBV1MgRWxlbWVudGFsIE1lZGlhTGl2ZSBJbnB1dCBTZWN1cml0eSBHcm91cC5cbiAqXG4gKiBBbiBpbnB1dCBzZWN1cml0eSBncm91cCBjb250cm9scyB3aGljaCBJUHY0IENJRFIgYmxvY2tzIGNhbiBwdXNoIGNvbnRlbnQgdG8gYSBwdXNoLXR5cGUgaW5wdXQuXG4gKi9cbkBwcm9wZXJ0eUluamVjdGFibGVcbmV4cG9ydCBjbGFzcyBJbnB1dFNlY3VyaXR5R3JvdXAgZXh0ZW5kcyBSZXNvdXJjZSBpbXBsZW1lbnRzIElJbnB1dFNlY3VyaXR5R3JvdXAge1xuICAvKiogVW5pcXVlbHkgaWRlbnRpZmllcyB0aGlzIGNsYXNzLiAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBST1BFUlRZX0lOSkVDVElPTl9JRDogc3RyaW5nID0gJ0Bhd3MtY2RrLmF3cy1tZWRpYWxpdmUtYWxwaGEuSW5wdXRTZWN1cml0eUdyb3VwJztcblxuICAvKiogSW1wb3J0IGFuIGV4aXN0aW5nIGlucHV0IHNlY3VyaXR5IGdyb3VwIGJ5IGl0cyBBUk4uIFRoZSBpZCBpcyBwYXJzZWQgb3V0IG9mIHRoZSBBUk4uICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUlucHV0U2VjdXJpdHlHcm91cEFybihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBpbnB1dFNlY3VyaXR5R3JvdXBBcm46IHN0cmluZyk6IElJbnB1dFNlY3VyaXR5R3JvdXAge1xuICAgIGNvbnN0IGlucHV0U2VjdXJpdHlHcm91cElkID0gZXh0cmFjdFJlc291cmNlSWQoaW5wdXRTZWN1cml0eUdyb3VwQXJuLCAnSW5wdXRTZWN1cml0eUdyb3VwJyk7XG5cbiAgICBjbGFzcyBJbXBvcnQgZXh0ZW5kcyBSZXNvdXJjZSBpbXBsZW1lbnRzIElJbnB1dFNlY3VyaXR5R3JvdXAge1xuICAgICAgcHVibGljIHJlYWRvbmx5IGlucHV0U2VjdXJpdHlHcm91cEFybiA9IGlucHV0U2VjdXJpdHlHcm91cEFybjtcbiAgICAgIHB1YmxpYyByZWFkb25seSBpbnB1dFNlY3VyaXR5R3JvdXBJZCA9IGlucHV0U2VjdXJpdHlHcm91cElkO1xuICAgICAgcHVibGljIGdldCBpbnB1dFNlY3VyaXR5R3JvdXBSZWYoKTogSW5wdXRTZWN1cml0eUdyb3VwUmVmZXJlbmNlIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBpbnB1dFNlY3VyaXR5R3JvdXBJZDogdGhpcy5pbnB1dFNlY3VyaXR5R3JvdXBJZCxcbiAgICAgICAgICBpbnB1dFNlY3VyaXR5R3JvdXBBcm46IHRoaXMuaW5wdXRTZWN1cml0eUdyb3VwQXJuLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQpO1xuICB9XG5cbiAgcHVibGljIHJlYWRvbmx5IGlucHV0U2VjdXJpdHlHcm91cEFybjogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgaW5wdXRTZWN1cml0eUdyb3VwSWQ6IHN0cmluZztcblxuICAvKiogQSByZWZlcmVuY2UgdG8gdGhpcyBJbnB1dCBTZWN1cml0eSBHcm91cCByZXNvdXJjZS4gKi9cbiAgcHVibGljIGdldCBpbnB1dFNlY3VyaXR5R3JvdXBSZWYoKTogSW5wdXRTZWN1cml0eUdyb3VwUmVmZXJlbmNlIHtcbiAgICByZXR1cm4ge1xuICAgICAgaW5wdXRTZWN1cml0eUdyb3VwSWQ6IHRoaXMuaW5wdXRTZWN1cml0eUdyb3VwSWQsXG4gICAgICBpbnB1dFNlY3VyaXR5R3JvdXBBcm46IHRoaXMuaW5wdXRTZWN1cml0eUdyb3VwQXJuLFxuICAgIH07XG4gIH1cblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogSW5wdXRTZWN1cml0eUdyb3VwUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgYWRkQ29uc3RydWN0TWV0YWRhdGEodGhpcywgcHJvcHMpO1xuXG4gICAgLy8gV2FybiBvbiBmdWxseS1vcGVuIENJRFIgYmxvY2tzICgwLjAuMC4wLzAgb3IgYW55IC8wIHByZWZpeCkuXG4gICAgZm9yIChjb25zdCBjaWRyIG9mIHByb3BzLmFsbG93bGlzdFJ1bGVzKSB7XG4gICAgICBpZiAoIVRva2VuLmlzVW5yZXNvbHZlZChjaWRyKSAmJiAvXFwvMCQvLnRlc3QoY2lkci50cmltKCkpKSB7XG4gICAgICAgIEFubm90YXRpb25zLm9mKHRoaXMpLmFkZFdhcm5pbmdWMihcbiAgICAgICAgICAnQGF3cy1jZGsvYXdzLW1lZGlhbGl2ZS1hbHBoYTpvcGVuQWxsb3dsaXN0Q2lkcicsXG4gICAgICAgICAgYEFsbG93bGlzdCBDSURSICcke2NpZHJ9JyBhbGxvd3MgcHVzaCByZXF1ZXN0cyBmcm9tIGFueSBJUC4gUmVzdHJpY3QgdG8gdGhlIG5hcnJvd2VzdCByYW5nZSB5b3VyIHNvdXJjZXMgbmVlZC5gLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHJlc291cmNlID0gbmV3IENmbklucHV0U2VjdXJpdHlHcm91cCh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICB3aGl0ZWxpc3RSdWxlczogcHJvcHMuYWxsb3dsaXN0UnVsZXMubWFwKGNpZHIgPT4gKHsgY2lkciB9KSksXG4gICAgICB0YWdzOiBwcm9wcy50YWdzID8gT2JqZWN0LmVudHJpZXMocHJvcHMudGFncykubWFwKChba2V5LCB2YWx1ZV0pID0+ICh7IGtleSwgdmFsdWUgfSkpIDogdW5kZWZpbmVkLFxuICAgIH0pO1xuXG4gICAgdGhpcy5pbnB1dFNlY3VyaXR5R3JvdXBBcm4gPSByZXNvdXJjZS5hdHRyQXJuO1xuICAgIHRoaXMuaW5wdXRTZWN1cml0eUdyb3VwSWQgPSByZXNvdXJjZS5yZWY7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,111 @@
1
+ /**
2
+ * The codec for the input specification.
3
+ */
4
+ export declare class InputCodec {
5
+ /** AVC (H.264) */
6
+ static readonly AVC: InputCodec;
7
+ /** HEVC (H.265) */
8
+ static readonly HEVC: InputCodec;
9
+ /** MPEG2 */
10
+ static readonly MPEG2: InputCodec;
11
+ /** A value not yet modelled by AWS CDK. */
12
+ static of(value: string): InputCodec;
13
+ /** The underlying string value passed to CloudFormation. */
14
+ readonly value: string;
15
+ private constructor();
16
+ }
17
+ /**
18
+ * The maximum input bitrate for the input specification.
19
+ */
20
+ export declare class InputMaximumBitrate {
21
+ /** Max 10 Mbps */
22
+ static readonly MAX_10_MBPS: InputMaximumBitrate;
23
+ /** Max 20 Mbps */
24
+ static readonly MAX_20_MBPS: InputMaximumBitrate;
25
+ /** Max 50 Mbps */
26
+ static readonly MAX_50_MBPS: InputMaximumBitrate;
27
+ /** A value not yet modelled by AWS CDK. */
28
+ static of(value: string): InputMaximumBitrate;
29
+ /** The underlying string value passed to CloudFormation. */
30
+ readonly value: string;
31
+ private constructor();
32
+ }
33
+ /**
34
+ * The resolution for the input specification.
35
+ */
36
+ export declare class InputResolution {
37
+ /** SD */
38
+ static readonly SD: InputResolution;
39
+ /** HD */
40
+ static readonly HD: InputResolution;
41
+ /** UHD */
42
+ static readonly UHD: InputResolution;
43
+ /** A value not yet modelled by AWS CDK. */
44
+ static of(value: string): InputResolution;
45
+ /** The underlying string value passed to CloudFormation. */
46
+ readonly value: string;
47
+ private constructor();
48
+ }
49
+ /**
50
+ * Maximum CDI input resolution.
51
+ */
52
+ export declare class CdiInputResolution {
53
+ /** SD resolution */
54
+ static readonly SD: CdiInputResolution;
55
+ /** HD resolution */
56
+ static readonly HD: CdiInputResolution;
57
+ /** Full HD resolution */
58
+ static readonly FHD: CdiInputResolution;
59
+ /** UHD resolution */
60
+ static readonly UHD: CdiInputResolution;
61
+ /** A value not yet modelled by AWS CDK. */
62
+ static of(value: string): CdiInputResolution;
63
+ /** The underlying string value passed to CloudFormation. */
64
+ readonly value: string;
65
+ private constructor();
66
+ }
67
+ /**
68
+ * Properties shared by all input specifications.
69
+ */
70
+ export interface StandardInputSpecificationProps {
71
+ /**
72
+ * The codec of the input.
73
+ * This should match the codec of your source content, not the output codec.
74
+ * @default InputCodec.AVC
75
+ */
76
+ readonly codec?: InputCodec;
77
+ /**
78
+ * The maximum bitrate of the input.
79
+ * @default InputMaximumBitrate.MAX_20_MBPS
80
+ */
81
+ readonly maximumBitrate?: InputMaximumBitrate;
82
+ /**
83
+ * The resolution of the input.
84
+ * @default InputResolution.HD
85
+ */
86
+ readonly resolution?: InputResolution;
87
+ }
88
+ /**
89
+ * Properties for a CDI input specification.
90
+ */
91
+ export interface CdiInputSpecificationProps extends StandardInputSpecificationProps {
92
+ /**
93
+ * The maximum resolution of the most demanding CDI input.
94
+ * @default CdiInputResolution.HD
95
+ */
96
+ readonly cdiResolution?: CdiInputResolution;
97
+ }
98
+ /**
99
+ * The input specification for a channel.
100
+ *
101
+ * Use the static factory methods to select the input type — mirroring the console's
102
+ * "Other" / "CDI" / "Elemental Link" choice.
103
+ */
104
+ export declare abstract class InputSpecification {
105
+ /** Standard inputs ("Other" in the console) — the most common case. */
106
+ static standard(props?: StandardInputSpecificationProps): InputSpecification;
107
+ /** CDI (uncompressed) inputs. Adds the maximum CDI input resolution. */
108
+ static cdi(props?: CdiInputSpecificationProps): InputSpecification;
109
+ /** Elemental Link inputs. No additional specification is required. */
110
+ static elementalLink(): InputSpecification;
111
+ }
@@ -0,0 +1,181 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InputSpecification = exports.CdiInputResolution = exports.InputResolution = exports.InputMaximumBitrate = exports.InputCodec = void 0;
4
+ const jsiiDeprecationWarnings = require("../.warnings.jsii.js");
5
+ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
+ /**
7
+ * The codec for the input specification.
8
+ */
9
+ class InputCodec {
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-medialive-alpha.InputCodec", version: "2.268.0-alpha.0" };
11
+ /** AVC (H.264) */
12
+ static AVC = new InputCodec('AVC');
13
+ /** HEVC (H.265) */
14
+ static HEVC = new InputCodec('HEVC');
15
+ /** MPEG2 */
16
+ static MPEG2 = new InputCodec('MPEG2');
17
+ /** A value not yet modelled by AWS CDK. */
18
+ static of(value) {
19
+ return new InputCodec(value);
20
+ }
21
+ /** The underlying string value passed to CloudFormation. */
22
+ value;
23
+ constructor(value) {
24
+ this.value = value;
25
+ }
26
+ }
27
+ exports.InputCodec = InputCodec;
28
+ /**
29
+ * The maximum input bitrate for the input specification.
30
+ */
31
+ class InputMaximumBitrate {
32
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-medialive-alpha.InputMaximumBitrate", version: "2.268.0-alpha.0" };
33
+ /** Max 10 Mbps */
34
+ static MAX_10_MBPS = new InputMaximumBitrate('MAX_10_MBPS');
35
+ /** Max 20 Mbps */
36
+ static MAX_20_MBPS = new InputMaximumBitrate('MAX_20_MBPS');
37
+ /** Max 50 Mbps */
38
+ static MAX_50_MBPS = new InputMaximumBitrate('MAX_50_MBPS');
39
+ /** A value not yet modelled by AWS CDK. */
40
+ static of(value) {
41
+ return new InputMaximumBitrate(value);
42
+ }
43
+ /** The underlying string value passed to CloudFormation. */
44
+ value;
45
+ constructor(value) {
46
+ this.value = value;
47
+ }
48
+ }
49
+ exports.InputMaximumBitrate = InputMaximumBitrate;
50
+ /**
51
+ * The resolution for the input specification.
52
+ */
53
+ class InputResolution {
54
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-medialive-alpha.InputResolution", version: "2.268.0-alpha.0" };
55
+ /** SD */
56
+ static SD = new InputResolution('SD');
57
+ /** HD */
58
+ static HD = new InputResolution('HD');
59
+ /** UHD */
60
+ static UHD = new InputResolution('UHD');
61
+ /** A value not yet modelled by AWS CDK. */
62
+ static of(value) {
63
+ return new InputResolution(value);
64
+ }
65
+ /** The underlying string value passed to CloudFormation. */
66
+ value;
67
+ constructor(value) {
68
+ this.value = value;
69
+ }
70
+ }
71
+ exports.InputResolution = InputResolution;
72
+ /**
73
+ * Maximum CDI input resolution.
74
+ */
75
+ class CdiInputResolution {
76
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-medialive-alpha.CdiInputResolution", version: "2.268.0-alpha.0" };
77
+ /** SD resolution */
78
+ static SD = new CdiInputResolution('SD');
79
+ /** HD resolution */
80
+ static HD = new CdiInputResolution('HD');
81
+ /** Full HD resolution */
82
+ static FHD = new CdiInputResolution('FHD');
83
+ /** UHD resolution */
84
+ static UHD = new CdiInputResolution('UHD');
85
+ /** A value not yet modelled by AWS CDK. */
86
+ static of(value) {
87
+ return new CdiInputResolution(value);
88
+ }
89
+ /** The underlying string value passed to CloudFormation. */
90
+ value;
91
+ constructor(value) {
92
+ this.value = value;
93
+ }
94
+ }
95
+ exports.CdiInputResolution = CdiInputResolution;
96
+ /**
97
+ * The input specification for a channel.
98
+ *
99
+ * Use the static factory methods to select the input type — mirroring the console's
100
+ * "Other" / "CDI" / "Elemental Link" choice.
101
+ */
102
+ class InputSpecification {
103
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/aws-medialive-alpha.InputSpecification", version: "2.268.0-alpha.0" };
104
+ /** Standard inputs ("Other" in the console) — the most common case. */
105
+ static standard(props = {}) {
106
+ try {
107
+ jsiiDeprecationWarnings._aws_cdk_aws_medialive_alpha_StandardInputSpecificationProps(props);
108
+ }
109
+ catch (error) {
110
+ if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
111
+ Error.captureStackTrace(error, this.standard);
112
+ }
113
+ throw error;
114
+ }
115
+ return new StandardInputSpecification(props);
116
+ }
117
+ /** CDI (uncompressed) inputs. Adds the maximum CDI input resolution. */
118
+ static cdi(props = {}) {
119
+ try {
120
+ jsiiDeprecationWarnings._aws_cdk_aws_medialive_alpha_CdiInputSpecificationProps(props);
121
+ }
122
+ catch (error) {
123
+ if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
124
+ Error.captureStackTrace(error, this.cdi);
125
+ }
126
+ throw error;
127
+ }
128
+ return new CdiInputSpecification(props);
129
+ }
130
+ /** Elemental Link inputs. No additional specification is required. */
131
+ static elementalLink() {
132
+ return new ElementalLinkInputSpecification();
133
+ }
134
+ }
135
+ exports.InputSpecification = InputSpecification;
136
+ /** @internal */
137
+ function bindStandardSpec(props) {
138
+ return {
139
+ codec: (props.codec ?? InputCodec.AVC).value,
140
+ maximumBitrate: (props.maximumBitrate ?? InputMaximumBitrate.MAX_20_MBPS).value,
141
+ resolution: (props.resolution ?? InputResolution.HD).value,
142
+ };
143
+ }
144
+ /** @internal */
145
+ class StandardInputSpecification extends InputSpecification {
146
+ props;
147
+ constructor(props) {
148
+ super();
149
+ this.props = props;
150
+ }
151
+ _bindInputSpecification() {
152
+ return bindStandardSpec(this.props);
153
+ }
154
+ _bindCdiInputSpecification() {
155
+ return undefined;
156
+ }
157
+ }
158
+ /** @internal */
159
+ class CdiInputSpecification extends InputSpecification {
160
+ props;
161
+ constructor(props) {
162
+ super();
163
+ this.props = props;
164
+ }
165
+ _bindInputSpecification() {
166
+ return bindStandardSpec(this.props);
167
+ }
168
+ _bindCdiInputSpecification() {
169
+ return { resolution: (this.props.cdiResolution ?? CdiInputResolution.HD).value };
170
+ }
171
+ }
172
+ /** @internal */
173
+ class ElementalLinkInputSpecification extends InputSpecification {
174
+ _bindInputSpecification() {
175
+ return undefined;
176
+ }
177
+ _bindCdiInputSpecification() {
178
+ return undefined;
179
+ }
180
+ }
181
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc3BlY2lmaWNhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImlucHV0LXNwZWNpZmljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFFQTs7R0FFRztBQUNILE1BQWEsVUFBVTs7SUFDckIsa0JBQWtCO0lBQ1gsTUFBTSxDQUFVLEdBQUcsR0FBRyxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuRCxtQkFBbUI7SUFDWixNQUFNLENBQVUsSUFBSSxHQUFHLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JELFlBQVk7SUFDTCxNQUFNLENBQVUsS0FBSyxHQUFHLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXZELDJDQUEyQztJQUNwQyxNQUFNLENBQUMsRUFBRSxDQUFDLEtBQWE7UUFDNUIsT0FBTyxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztLQUM5QjtJQUVELDREQUE0RDtJQUM1QyxLQUFLLENBQVM7SUFFOUIsWUFBb0IsS0FBYTtRQUMvQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztLQUNwQjs7QUFsQkgsZ0NBbUJDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLG1CQUFtQjs7SUFDOUIsa0JBQWtCO0lBQ1gsTUFBTSxDQUFVLFdBQVcsR0FBRyxJQUFJLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzVFLGtCQUFrQjtJQUNYLE1BQU0sQ0FBVSxXQUFXLEdBQUcsSUFBSSxtQkFBbUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM1RSxrQkFBa0I7SUFDWCxNQUFNLENBQVUsV0FBVyxHQUFHLElBQUksbUJBQW1CLENBQUMsYUFBYSxDQUFDLENBQUM7SUFFNUUsMkNBQTJDO0lBQ3BDLE1BQU0sQ0FBQyxFQUFFLENBQUMsS0FBYTtRQUM1QixPQUFPLElBQUksbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUM7S0FDdkM7SUFFRCw0REFBNEQ7SUFDNUMsS0FB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O0tBQ3JDO0lBQ00sMEJBQTBCO1FBQy9CLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0NBQ0Y7QUFFRCxnQkFBZ0I7QUFDaEIsTUFBTSxxQkFBc0IsU0FBUSxrQkFBa0I7SUFDdkI7SUFBN0IsWUFBNkIsS0FBaUM7UUFBSSxLQUFLLEVBQUUsQ0FBQztRQUE3QyxVQUFLLEdBQUwsS0FBSyxDQUE0QjtLQUFjO0lBQ3JFLHVCQUF1QjtRQUM1QixPQUFPLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztLQUNyQztJQUNNLDBCQUEwQjtRQUMvQixPQUFPLEVBQUUsVUFBVSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLElBQUksa0JBQWtCLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7S0FDbEY7Q0FDRjtBQUVELGdCQUFnQjtBQUNoQixNQUFNLCtCQUFnQyxTQUFRLGtCQUFrQjtJQUN2RCx1QkFBdUI7UUFDNUIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDTSwwQkFBMEI7UUFDL0IsT0FBTyxTQUFTLENBQUM7S0FDbEI7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ2ZuQ2hhbm5lbCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1tZWRpYWxpdmUnO1xuXG4vKipcbiAqIFRoZSBjb2RlYyBmb3IgdGhlIGlucHV0IHNwZWNpZmljYXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnB1dENvZGVjIHtcbiAgLyoqIEFWQyAoSC4yNjQpICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQVZDID0gbmV3IElucHV0Q29kZWMoJ0FWQycpO1xuICAvKiogSEVWQyAoSC4yNjUpICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgSEVWQyA9IG5ldyBJbnB1dENvZGVjKCdIRVZDJyk7XG4gIC8qKiBNUEVHMiAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE1QRUcyID0gbmV3IElucHV0Q29kZWMoJ01QRUcyJyk7XG5cbiAgLyoqIEEgdmFsdWUgbm90IHlldCBtb2RlbGxlZCBieSBBV1MgQ0RLLiAqL1xuICBwdWJsaWMgc3RhdGljIG9mKHZhbHVlOiBzdHJpbmcpOiBJbnB1dENvZGVjIHtcbiAgICByZXR1cm4gbmV3IElucHV0Q29kZWModmFsdWUpO1xuICB9XG5cbiAgLyoqIFRoZSB1bmRlcmx5aW5nIHN0cmluZyB2YWx1ZSBwYXNzZWQgdG8gQ2xvdWRGb3JtYXRpb24uICovXG4gIHB1YmxpYyByZWFkb25seSB2YWx1ZTogc3RyaW5nO1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3IodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxufVxuXG4vKipcbiAqIFRoZSBtYXhpbXVtIGlucHV0IGJpdHJhdGUgZm9yIHRoZSBpbnB1dCBzcGVjaWZpY2F0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgSW5wdXRNYXhpbXVtQml0cmF0ZSB7XG4gIC8qKiBNYXggMTAgTWJwcyAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE1BWF8xMF9NQlBTID0gbmV3IElucHV0TWF4aW11bUJpdHJhdGUoJ01BWF8xMF9NQlBTJyk7XG4gIC8qKiBNYXggMjAgTWJwcyAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE1BWF8yMF9NQlBTID0gbmV3IElucHV0TWF4aW11bUJpdHJhdGUoJ01BWF8yMF9NQlBTJyk7XG4gIC8qKiBNYXggNTAgTWJwcyAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE1BWF81MF9NQlBTID0gbmV3IElucHV0TWF4aW11bUJpdHJhdGUoJ01BWF81MF9NQlBTJyk7XG5cbiAgLyoqIEEgdmFsdWUgbm90IHlldCBtb2RlbGxlZCBieSBBV1MgQ0RLLiAqL1xuICBwdWJsaWMgc3RhdGljIG9mKHZhbHVlOiBzdHJpbmcpOiBJbnB1dE1heGltdW1CaXRyYXRlIHtcbiAgICByZXR1cm4gbmV3IElucHV0TWF4aW11bUJpdHJhdGUodmFsdWUpO1xuICB9XG5cbiAgLyoqIFRoZSB1bmRlcmx5aW5nIHN0cmluZyB2YWx1ZSBwYXNzZWQgdG8gQ2xvdWRGb3JtYXRpb24uICovXG4gIHB1YmxpYyByZWFkb25seSB2YWx1ZTogc3RyaW5nO1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3IodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxufVxuXG4vKipcbiAqIFRoZSByZXNvbHV0aW9uIGZvciB0aGUgaW5wdXQgc3BlY2lmaWNhdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIElucHV0UmVzb2x1dGlvbiB7XG4gIC8qKiBTRCAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFNEID0gbmV3IElucHV0UmVzb2x1dGlvbignU0QnKTtcbiAgLyoqIEhEICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgSEQgPSBuZXcgSW5wdXRSZXNvbHV0aW9uKCdIRCcpO1xuICAvKiogVUhEICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgVUhEID0gbmV3IElucHV0UmVzb2x1dGlvbignVUhEJyk7XG5cbiAgLyoqIEEgdmFsdWUgbm90IHlldCBtb2RlbGxlZCBieSBBV1MgQ0RLLiAqL1xuICBwdWJsaWMgc3RhdGljIG9mKHZhbHVlOiBzdHJpbmcpOiBJbnB1dFJlc29sdXRpb24ge1xuICAgIHJldHVybiBuZXcgSW5wdXRSZXNvbHV0aW9uKHZhbHVlKTtcbiAgfVxuXG4gIC8qKiBUaGUgdW5kZXJseWluZyBzdHJpbmcgdmFsdWUgcGFzc2VkIHRvIENsb3VkRm9ybWF0aW9uLiAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdmFsdWU6IHN0cmluZztcblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cbn1cblxuLyoqXG4gKiBNYXhpbXVtIENESSBpbnB1dCByZXNvbHV0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgQ2RpSW5wdXRSZXNvbHV0aW9uIHtcbiAgLyoqIFNEIHJlc29sdXRpb24gKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBTRCA9IG5ldyBDZGlJbnB1dFJlc29sdXRpb24oJ1NEJyk7XG4gIC8qKiBIRCByZXNvbHV0aW9uICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgSEQgPSBuZXcgQ2RpSW5wdXRSZXNvbHV0aW9uKCdIRCcpO1xuICAvKiogRnVsbCBIRCByZXNvbHV0aW9uICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRkhEID0gbmV3IENkaUlucHV0UmVzb2x1dGlvbignRkhEJyk7XG4gIC8qKiBVSEQgcmVzb2x1dGlvbiAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFVIRCA9IG5ldyBDZGlJbnB1dFJlc29sdXRpb24oJ1VIRCcpO1xuXG4gIC8qKiBBIHZhbHVlIG5vdCB5ZXQgbW9kZWxsZWQgYnkgQVdTIENESy4gKi9cbiAgcHVibGljIHN0YXRpYyBvZih2YWx1ZTogc3RyaW5nKTogQ2RpSW5wdXRSZXNvbHV0aW9uIHtcbiAgICByZXR1cm4gbmV3IENkaUlucHV0UmVzb2x1dGlvbih2YWx1ZSk7XG4gIH1cblxuICAvKiogVGhlIHVuZGVybHlpbmcgc3RyaW5nIHZhbHVlIHBhc3NlZCB0byBDbG91ZEZvcm1hdGlvbi4gKi9cbiAgcHVibGljIHJlYWRvbmx5IHZhbHVlOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3Rvcih2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICB9XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBzaGFyZWQgYnkgYWxsIGlucHV0IHNwZWNpZmljYXRpb25zLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YW5kYXJkSW5wdXRTcGVjaWZpY2F0aW9uUHJvcHMge1xuICAvKipcbiAgICogVGhlIGNvZGVjIG9mIHRoZSBpbnB1dC5cbiAgICogVGhpcyBzaG91bGQgbWF0Y2ggdGhlIGNvZGVjIG9mIHlvdXIgc291cmNlIGNvbnRlbnQsIG5vdCB0aGUgb3V0cHV0IGNvZGVjLlxuICAgKiBAZGVmYXVsdCBJbnB1dENvZGVjLkFWQ1xuICAgKi9cbiAgcmVhZG9ubHkgY29kZWM/OiBJbnB1dENvZGVjO1xuICAvKipcbiAgICogVGhlIG1heGltdW0gYml0cmF0ZSBvZiB0aGUgaW5wdXQuXG4gICAqIEBkZWZhdWx0IElucHV0TWF4aW11bUJpdHJhdGUuTUFYXzIwX01CUFNcbiAgICovXG4gIHJlYWRvbmx5IG1heGltdW1CaXRyYXRlPzogSW5wdXRNYXhpbXVtQml0cmF0ZTtcbiAgLyoqXG4gICAqIFRoZSByZXNvbHV0aW9uIG9mIHRoZSBpbnB1dC5cbiAgICogQGRlZmF1bHQgSW5wdXRSZXNvbHV0aW9uLkhEXG4gICAqL1xuICByZWFkb25seSByZXNvbHV0aW9uPzogSW5wdXRSZXNvbHV0aW9uO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgQ0RJIGlucHV0IHNwZWNpZmljYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2RpSW5wdXRTcGVjaWZpY2F0aW9uUHJvcHMgZXh0ZW5kcyBTdGFuZGFyZElucHV0U3BlY2lmaWNhdGlvblByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIHJlc29sdXRpb24gb2YgdGhlIG1vc3QgZGVtYW5kaW5nIENESSBpbnB1dC5cbiAgICogQGRlZmF1bHQgQ2RpSW5wdXRSZXNvbHV0aW9uLkhEXG4gICAqL1xuICByZWFkb25seSBjZGlSZXNvbHV0aW9uPzogQ2RpSW5wdXRSZXNvbHV0aW9uO1xufVxuXG4vKipcbiAqIFRoZSBpbnB1dCBzcGVjaWZpY2F0aW9uIGZvciBhIGNoYW5uZWwuXG4gKlxuICogVXNlIHRoZSBzdGF0aWMgZmFjdG9yeSBtZXRob2RzIHRvIHNlbGVjdCB0aGUgaW5wdXQgdHlwZSDigJQgbWlycm9yaW5nIHRoZSBjb25zb2xlJ3NcbiAqIFwiT3RoZXJcIiAvIFwiQ0RJXCIgLyBcIkVsZW1lbnRhbCBMaW5rXCIgY2hvaWNlLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgSW5wdXRTcGVjaWZpY2F0aW9uIHtcbiAgLyoqIFN0YW5kYXJkIGlucHV0cyAoXCJPdGhlclwiIGluIHRoZSBjb25zb2xlKSDigJQgdGhlIG1vc3QgY29tbW9uIGNhc2UuICovXG4gIHB1YmxpYyBzdGF0aWMgc3RhbmRhcmQocHJvcHM6IFN0YW5kYXJkSW5wdXRTcGVjaWZpY2F0aW9uUHJvcHMgPSB7fSk6IElucHV0U3BlY2lmaWNhdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBTdGFuZGFyZElucHV0U3BlY2lmaWNhdGlvbihwcm9wcyk7XG4gIH1cblxuICAvKiogQ0RJICh1bmNvbXByZXNzZWQpIGlucHV0cy4gQWRkcyB0aGUgbWF4aW11bSBDREkgaW5wdXQgcmVzb2x1dGlvbi4gKi9cbiAgcHVibGljIHN0YXRpYyBjZGkocHJvcHM6IENkaUlucHV0U3BlY2lmaWNhdGlvblByb3BzID0ge30pOiBJbnB1dFNwZWNpZmljYXRpb24ge1xuICAgIHJldHVybiBuZXcgQ2RpSW5wdXRTcGVjaWZpY2F0aW9uKHByb3BzKTtcbiAgfVxuXG4gIC8qKiBFbGVtZW50YWwgTGluayBpbnB1dHMuIE5vIGFkZGl0aW9uYWwgc3BlY2lmaWNhdGlvbiBpcyByZXF1aXJlZC4gKi9cbiAgcHVibGljIHN0YXRpYyBlbGVtZW50YWxMaW5rKCk6IElucHV0U3BlY2lmaWNhdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBFbGVtZW50YWxMaW5rSW5wdXRTcGVjaWZpY2F0aW9uKCk7XG4gIH1cblxuICAvKiogQGludGVybmFsICovXG4gIHB1YmxpYyBhYnN0cmFjdCBfYmluZElucHV0U3BlY2lmaWNhdGlvbigpOiBDZm5DaGFubmVsLklucHV0U3BlY2lmaWNhdGlvblByb3BlcnR5IHwgdW5kZWZpbmVkO1xuICAvKiogQGludGVybmFsICovXG4gIHB1YmxpYyBhYnN0cmFjdCBfYmluZENkaUlucHV0U3BlY2lmaWNhdGlvbigpOiBDZm5DaGFubmVsLkNkaUlucHV0U3BlY2lmaWNhdGlvblByb3BlcnR5IHwgdW5kZWZpbmVkO1xufVxuXG4vKiogQGludGVybmFsICovXG5mdW5jdGlvbiBiaW5kU3RhbmRhcmRTcGVjKHByb3BzOiBTdGFuZGFyZElucHV0U3BlY2lmaWNhdGlvblByb3BzKTogQ2ZuQ2hhbm5lbC5JbnB1dFNwZWNpZmljYXRpb25Qcm9wZXJ0eSB7XG4gIHJldHVybiB7XG4gICAgY29kZWM6IChwcm9wcy5jb2RlYyA/PyBJbnB1dENvZGVjLkFWQykudmFsdWUsXG4gICAgbWF4aW11bUJpdHJhdGU6IChwcm9wcy5tYXhpbXVtQml0cmF0ZSA/PyBJbnB1dE1heGltdW1CaXRyYXRlLk1BWF8yMF9NQlBTKS52YWx1ZSxcbiAgICByZXNvbHV0aW9uOiAocHJvcHMucmVzb2x1dGlvbiA/PyBJbnB1dFJlc29sdXRpb24uSEQpLnZhbHVlLFxuICB9O1xufVxuXG4vKiogQGludGVybmFsICovXG5jbGFzcyBTdGFuZGFyZElucHV0U3BlY2lmaWNhdGlvbiBleHRlbmRzIElucHV0U3BlY2lmaWNhdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IFN0YW5kYXJkSW5wdXRTcGVjaWZpY2F0aW9uUHJvcHMpIHsgc3VwZXIoKTsgfVxuICBwdWJsaWMgX2JpbmRJbnB1dFNwZWNpZmljYXRpb24oKTogQ2ZuQ2hhbm5lbC5JbnB1dFNwZWNpZmljYXRpb25Qcm9wZXJ0eSB7XG4gICAgcmV0dXJuIGJpbmRTdGFuZGFyZFNwZWModGhpcy5wcm9wcyk7XG4gIH1cbiAgcHVibGljIF9iaW5kQ2RpSW5wdXRTcGVjaWZpY2F0aW9uKCk6IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuXG4vKiogQGludGVybmFsICovXG5jbGFzcyBDZGlJbnB1dFNwZWNpZmljYXRpb24gZXh0ZW5kcyBJbnB1dFNwZWNpZmljYXRpb24ge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHByb3BzOiBDZGlJbnB1dFNwZWNpZmljYXRpb25Qcm9wcykgeyBzdXBlcigpOyB9XG4gIHB1YmxpYyBfYmluZElucHV0U3BlY2lmaWNhdGlvbigpOiBDZm5DaGFubmVsLklucHV0U3BlY2lmaWNhdGlvblByb3BlcnR5IHtcbiAgICByZXR1cm4gYmluZFN0YW5kYXJkU3BlYyh0aGlzLnByb3BzKTtcbiAgfVxuICBwdWJsaWMgX2JpbmRDZGlJbnB1dFNwZWNpZmljYXRpb24oKTogQ2ZuQ2hhbm5lbC5DZGlJbnB1dFNwZWNpZmljYXRpb25Qcm9wZXJ0eSB7XG4gICAgcmV0dXJuIHsgcmVzb2x1dGlvbjogKHRoaXMucHJvcHMuY2RpUmVzb2x1dGlvbiA/PyBDZGlJbnB1dFJlc29sdXRpb24uSEQpLnZhbHVlIH07XG4gIH1cbn1cblxuLyoqIEBpbnRlcm5hbCAqL1xuY2xhc3MgRWxlbWVudGFsTGlua0lucHV0U3BlY2lmaWNhdGlvbiBleHRlbmRzIElucHV0U3BlY2lmaWNhdGlvbiB7XG4gIHB1YmxpYyBfYmluZElucHV0U3BlY2lmaWNhdGlvbigpOiB1bmRlZmluZWQge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgcHVibGljIF9iaW5kQ2RpSW5wdXRTcGVjaWZpY2F0aW9uKCk6IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuIl19