@three14/pulumi-argocd 1.0.1 → 1.1.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 (50) hide show
  1. package/accountToken.d.ts +5 -3
  2. package/accountToken.js +15 -13
  3. package/accountToken.js.map +1 -1
  4. package/application.d.ts +15 -1
  5. package/application.js +20 -16
  6. package/application.js.map +1 -1
  7. package/applicationSet.d.ts +83 -0
  8. package/applicationSet.js +91 -8
  9. package/applicationSet.js.map +1 -1
  10. package/cluster.d.ts +2 -2
  11. package/cluster.js +20 -20
  12. package/cluster.js.map +1 -1
  13. package/config/index.js +1 -1
  14. package/config/index.js.map +1 -1
  15. package/config/vars.d.ts +14 -21
  16. package/config/vars.js +1 -1
  17. package/config/vars.js.map +1 -1
  18. package/index.d.ts +1 -18
  19. package/index.js +19 -30
  20. package/index.js.map +1 -1
  21. package/package.json +3 -3
  22. package/provider.d.ts +32 -29
  23. package/provider.js +29 -21
  24. package/provider.js.map +1 -1
  25. package/types/index.js +1 -1
  26. package/types/index.js.map +1 -1
  27. package/types/input.d.ts +9877 -5776
  28. package/types/input.js +1 -1
  29. package/types/input.js.map +1 -1
  30. package/types/output.d.ts +10481 -6380
  31. package/types/output.js +1 -1
  32. package/types/output.js.map +1 -1
  33. package/utilities.d.ts +0 -4
  34. package/utilities.js +20 -30
  35. package/utilities.js.map +1 -1
  36. package/project.d.ts +0 -198
  37. package/project.js +0 -193
  38. package/project.js.map +0 -1
  39. package/projectToken.d.ts +0 -150
  40. package/projectToken.js +0 -91
  41. package/projectToken.js.map +0 -1
  42. package/repository.d.ts +0 -291
  43. package/repository.js +0 -135
  44. package/repository.js.map +0 -1
  45. package/repositoryCertificate.d.ts +0 -84
  46. package/repositoryCertificate.js +0 -73
  47. package/repositoryCertificate.js.map +0 -1
  48. package/repositoryCredentials.d.ts +0 -207
  49. package/repositoryCredentials.js +0 -113
  50. package/repositoryCredentials.js.map +0 -1
@@ -1,73 +0,0 @@
1
- "use strict";
2
- // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
- // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.RepositoryCertificate = void 0;
6
- const pulumi = require("@pulumi/pulumi");
7
- const utilities = require("./utilities");
8
- /**
9
- * Manages [custom TLS certificates](https://argo-cd.readthedocs.io/en/stable/user-guide/private-repositories/#self-signed-untrusted-tls-certificates) used by ArgoCD for connecting Git repositories.
10
- *
11
- * ## Example Usage
12
- *
13
- * ```typescript
14
- * import * as pulumi from "@pulumi/pulumi";
15
- * import * as argocd from "@three14/pulumi-argocd";
16
- *
17
- * // HTTPS certificate
18
- * const private_git_repository_https = new argocd.RepositoryCertificate("private-git-repository-https", {https: {
19
- * serverName: "private-git-repository.local",
20
- * certData: "-----BEGIN CERTIFICATE-----\\nfoo\\nbar\\n-----END CERTIFICATE-----\n",
21
- * }});
22
- * // SSH certificate
23
- * const private_git_repository_ssh = new argocd.RepositoryCertificate("private-git-repository-ssh", {ssh: {
24
- * serverName: "private-git-repository.local",
25
- * certSubtype: "ssh-rsa",
26
- * certData: "AAAAB3NzaC1yc2EAAAADAQABAAABgQCiPZAufKgxwRgxP9qy2Gtub0FI8qJGtL8Ldb7KatBeRUQQPn8QK7ZYjzYDvP1GOutFMaQT0rKIqaGImIBsztNCno...\n",
27
- * }});
28
- * ```
29
- */
30
- class RepositoryCertificate extends pulumi.CustomResource {
31
- /**
32
- * Get an existing RepositoryCertificate resource's state with the given name, ID, and optional extra
33
- * properties used to qualify the lookup.
34
- *
35
- * @param name The _unique_ name of the resulting resource.
36
- * @param id The _unique_ provider ID of the resource to lookup.
37
- * @param state Any extra arguments used during the lookup.
38
- * @param opts Optional settings to control the behavior of the CustomResource.
39
- */
40
- static get(name, id, state, opts) {
41
- return new RepositoryCertificate(name, state, Object.assign(Object.assign({}, opts), { id: id }));
42
- }
43
- /**
44
- * Returns true if the given object is an instance of RepositoryCertificate. This is designed to work even
45
- * when multiple copies of the Pulumi SDK have been loaded into the same process.
46
- */
47
- static isInstance(obj) {
48
- if (obj === undefined || obj === null) {
49
- return false;
50
- }
51
- return obj['__pulumiType'] === RepositoryCertificate.__pulumiType;
52
- }
53
- constructor(name, argsOrState, opts) {
54
- let resourceInputs = {};
55
- opts = opts || {};
56
- if (opts.id) {
57
- const state = argsOrState;
58
- resourceInputs["https"] = state ? state.https : undefined;
59
- resourceInputs["ssh"] = state ? state.ssh : undefined;
60
- }
61
- else {
62
- const args = argsOrState;
63
- resourceInputs["https"] = args ? args.https : undefined;
64
- resourceInputs["ssh"] = args ? args.ssh : undefined;
65
- }
66
- opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
67
- super(RepositoryCertificate.__pulumiType, name, resourceInputs, opts);
68
- }
69
- }
70
- exports.RepositoryCertificate = RepositoryCertificate;
71
- /** @internal */
72
- RepositoryCertificate.__pulumiType = 'argocd:index/repositoryCertificate:RepositoryCertificate';
73
- //# sourceMappingURL=repositoryCertificate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repositoryCertificate.js","sourceRoot":"","sources":["../repositoryCertificate.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAa,qBAAsB,SAAQ,MAAM,CAAC,cAAc;IAC5D;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAkC,EAAE,IAAmC;QAChI,OAAO,IAAI,qBAAqB,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAC5E,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,qBAAqB,CAAC,YAAY,CAAC;IACtE,CAAC;IAmBD,YAAY,IAAY,EAAE,WAAoE,EAAE,IAAmC;QAC/H,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAqD,CAAC;YACpE,cAAc,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1D,cAAc,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;SACzD;aAAM;YACH,MAAM,IAAI,GAAG,WAAoD,CAAC;YAClE,cAAc,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YACxD,cAAc,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;SACvD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,qBAAqB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC1E,CAAC;;AA3DL,sDA4DC;AA9CG,gBAAgB;AACO,kCAAY,GAAG,0DAA0D,CAAC"}
@@ -1,207 +0,0 @@
1
- import * as pulumi from "@pulumi/pulumi";
2
- /**
3
- * Manages [repository credentials](https://argo-cd.readthedocs.io/en/stable/user-guide/private-repositories/#credentials) within ArgoCD.
4
- *
5
- * **Note**: due to restrictions in the ArgoCD API the provider is unable to track drift in this resource to fields other than `username`. I.e. the provider is unable to detect changes to repository credentials that are made outside of Pulumi (e.g. manual updates to the underlying Kubernetes Secrets).
6
- *
7
- * ## Example Usage
8
- *
9
- * ```typescript
10
- * import * as pulumi from "@pulumi/pulumi";
11
- * import * as argocd from "@three14/pulumi-argocd";
12
- *
13
- * const _private = new argocd.RepositoryCredentials("private", {
14
- * url: "git@private-git-repository.local",
15
- * username: "git",
16
- * sshPrivateKey: `-----BEGIN OPENSSH PRIVATE KEY-----
17
- * foo
18
- * bar
19
- * -----END OPENSSH PRIVATE KEY-----`,
20
- * });
21
- * ```
22
- *
23
- * ## Import
24
- *
25
- * Repository credentials can be imported using the repository URL.
26
- *
27
- * Note: as the ArgoCD API does not return any sensitive information, a
28
- *
29
- * subsequent `pulumi up` should be executed to make the `password`,
30
- *
31
- * `ssh_private_key` and `tls_client_cert_key` attributes converge to their
32
- *
33
- * expected values defined within the plan.
34
- *
35
- * Example:
36
- *
37
- * ```sh
38
- * $ pulumi import argocd:index/repositoryCredentials:RepositoryCredentials myrepocreds git@private-git-repository.local:somerepo.git
39
- * ```
40
- */
41
- export declare class RepositoryCredentials extends pulumi.CustomResource {
42
- /**
43
- * Get an existing RepositoryCredentials resource's state with the given name, ID, and optional extra
44
- * properties used to qualify the lookup.
45
- *
46
- * @param name The _unique_ name of the resulting resource.
47
- * @param id The _unique_ provider ID of the resource to lookup.
48
- * @param state Any extra arguments used during the lookup.
49
- * @param opts Optional settings to control the behavior of the CustomResource.
50
- */
51
- static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RepositoryCredentialsState, opts?: pulumi.CustomResourceOptions): RepositoryCredentials;
52
- /**
53
- * Returns true if the given object is an instance of RepositoryCredentials. This is designed to work even
54
- * when multiple copies of the Pulumi SDK have been loaded into the same process.
55
- */
56
- static isInstance(obj: any): obj is RepositoryCredentials;
57
- /**
58
- * Whether `helm-oci` support should be enabled for this repo.
59
- */
60
- readonly enableOci: pulumi.Output<boolean | undefined>;
61
- /**
62
- * GitHub API URL for GitHub app authentication.
63
- */
64
- readonly githubappEnterpriseBaseUrl: pulumi.Output<string | undefined>;
65
- /**
66
- * Github App ID of the app used to access the repo for GitHub app authentication.
67
- */
68
- readonly githubappId: pulumi.Output<string | undefined>;
69
- /**
70
- * ID of the installed GitHub App for GitHub app authentication.
71
- */
72
- readonly githubappInstallationId: pulumi.Output<string | undefined>;
73
- /**
74
- * Private key data (PEM) for authentication via GitHub app.
75
- */
76
- readonly githubappPrivateKey: pulumi.Output<string | undefined>;
77
- /**
78
- * Password for authenticating at the repo server.
79
- */
80
- readonly password: pulumi.Output<string | undefined>;
81
- /**
82
- * Private key data for authenticating at the repo server using SSH (only Git repos).
83
- */
84
- readonly sshPrivateKey: pulumi.Output<string | undefined>;
85
- /**
86
- * TLS client cert data for authenticating at the repo server.
87
- */
88
- readonly tlsClientCertData: pulumi.Output<string | undefined>;
89
- /**
90
- * TLS client cert key for authenticating at the repo server.
91
- */
92
- readonly tlsClientCertKey: pulumi.Output<string | undefined>;
93
- /**
94
- * URL that these credentials matches to.
95
- */
96
- readonly url: pulumi.Output<string>;
97
- /**
98
- * Username for authenticating at the repo server.
99
- */
100
- readonly username: pulumi.Output<string | undefined>;
101
- /**
102
- * Create a RepositoryCredentials resource with the given unique name, arguments, and options.
103
- *
104
- * @param name The _unique_ name of the resource.
105
- * @param args The arguments to use to populate this resource's properties.
106
- * @param opts A bag of options that control this resource's behavior.
107
- */
108
- constructor(name: string, args: RepositoryCredentialsArgs, opts?: pulumi.CustomResourceOptions);
109
- }
110
- /**
111
- * Input properties used for looking up and filtering RepositoryCredentials resources.
112
- */
113
- export interface RepositoryCredentialsState {
114
- /**
115
- * Whether `helm-oci` support should be enabled for this repo.
116
- */
117
- enableOci?: pulumi.Input<boolean>;
118
- /**
119
- * GitHub API URL for GitHub app authentication.
120
- */
121
- githubappEnterpriseBaseUrl?: pulumi.Input<string>;
122
- /**
123
- * Github App ID of the app used to access the repo for GitHub app authentication.
124
- */
125
- githubappId?: pulumi.Input<string>;
126
- /**
127
- * ID of the installed GitHub App for GitHub app authentication.
128
- */
129
- githubappInstallationId?: pulumi.Input<string>;
130
- /**
131
- * Private key data (PEM) for authentication via GitHub app.
132
- */
133
- githubappPrivateKey?: pulumi.Input<string>;
134
- /**
135
- * Password for authenticating at the repo server.
136
- */
137
- password?: pulumi.Input<string>;
138
- /**
139
- * Private key data for authenticating at the repo server using SSH (only Git repos).
140
- */
141
- sshPrivateKey?: pulumi.Input<string>;
142
- /**
143
- * TLS client cert data for authenticating at the repo server.
144
- */
145
- tlsClientCertData?: pulumi.Input<string>;
146
- /**
147
- * TLS client cert key for authenticating at the repo server.
148
- */
149
- tlsClientCertKey?: pulumi.Input<string>;
150
- /**
151
- * URL that these credentials matches to.
152
- */
153
- url?: pulumi.Input<string>;
154
- /**
155
- * Username for authenticating at the repo server.
156
- */
157
- username?: pulumi.Input<string>;
158
- }
159
- /**
160
- * The set of arguments for constructing a RepositoryCredentials resource.
161
- */
162
- export interface RepositoryCredentialsArgs {
163
- /**
164
- * Whether `helm-oci` support should be enabled for this repo.
165
- */
166
- enableOci?: pulumi.Input<boolean>;
167
- /**
168
- * GitHub API URL for GitHub app authentication.
169
- */
170
- githubappEnterpriseBaseUrl?: pulumi.Input<string>;
171
- /**
172
- * Github App ID of the app used to access the repo for GitHub app authentication.
173
- */
174
- githubappId?: pulumi.Input<string>;
175
- /**
176
- * ID of the installed GitHub App for GitHub app authentication.
177
- */
178
- githubappInstallationId?: pulumi.Input<string>;
179
- /**
180
- * Private key data (PEM) for authentication via GitHub app.
181
- */
182
- githubappPrivateKey?: pulumi.Input<string>;
183
- /**
184
- * Password for authenticating at the repo server.
185
- */
186
- password?: pulumi.Input<string>;
187
- /**
188
- * Private key data for authenticating at the repo server using SSH (only Git repos).
189
- */
190
- sshPrivateKey?: pulumi.Input<string>;
191
- /**
192
- * TLS client cert data for authenticating at the repo server.
193
- */
194
- tlsClientCertData?: pulumi.Input<string>;
195
- /**
196
- * TLS client cert key for authenticating at the repo server.
197
- */
198
- tlsClientCertKey?: pulumi.Input<string>;
199
- /**
200
- * URL that these credentials matches to.
201
- */
202
- url: pulumi.Input<string>;
203
- /**
204
- * Username for authenticating at the repo server.
205
- */
206
- username?: pulumi.Input<string>;
207
- }
@@ -1,113 +0,0 @@
1
- "use strict";
2
- // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
- // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.RepositoryCredentials = void 0;
6
- const pulumi = require("@pulumi/pulumi");
7
- const utilities = require("./utilities");
8
- /**
9
- * Manages [repository credentials](https://argo-cd.readthedocs.io/en/stable/user-guide/private-repositories/#credentials) within ArgoCD.
10
- *
11
- * **Note**: due to restrictions in the ArgoCD API the provider is unable to track drift in this resource to fields other than `username`. I.e. the provider is unable to detect changes to repository credentials that are made outside of Pulumi (e.g. manual updates to the underlying Kubernetes Secrets).
12
- *
13
- * ## Example Usage
14
- *
15
- * ```typescript
16
- * import * as pulumi from "@pulumi/pulumi";
17
- * import * as argocd from "@three14/pulumi-argocd";
18
- *
19
- * const _private = new argocd.RepositoryCredentials("private", {
20
- * url: "git@private-git-repository.local",
21
- * username: "git",
22
- * sshPrivateKey: `-----BEGIN OPENSSH PRIVATE KEY-----
23
- * foo
24
- * bar
25
- * -----END OPENSSH PRIVATE KEY-----`,
26
- * });
27
- * ```
28
- *
29
- * ## Import
30
- *
31
- * Repository credentials can be imported using the repository URL.
32
- *
33
- * Note: as the ArgoCD API does not return any sensitive information, a
34
- *
35
- * subsequent `pulumi up` should be executed to make the `password`,
36
- *
37
- * `ssh_private_key` and `tls_client_cert_key` attributes converge to their
38
- *
39
- * expected values defined within the plan.
40
- *
41
- * Example:
42
- *
43
- * ```sh
44
- * $ pulumi import argocd:index/repositoryCredentials:RepositoryCredentials myrepocreds git@private-git-repository.local:somerepo.git
45
- * ```
46
- */
47
- class RepositoryCredentials extends pulumi.CustomResource {
48
- /**
49
- * Get an existing RepositoryCredentials resource's state with the given name, ID, and optional extra
50
- * properties used to qualify the lookup.
51
- *
52
- * @param name The _unique_ name of the resulting resource.
53
- * @param id The _unique_ provider ID of the resource to lookup.
54
- * @param state Any extra arguments used during the lookup.
55
- * @param opts Optional settings to control the behavior of the CustomResource.
56
- */
57
- static get(name, id, state, opts) {
58
- return new RepositoryCredentials(name, state, Object.assign(Object.assign({}, opts), { id: id }));
59
- }
60
- /**
61
- * Returns true if the given object is an instance of RepositoryCredentials. This is designed to work even
62
- * when multiple copies of the Pulumi SDK have been loaded into the same process.
63
- */
64
- static isInstance(obj) {
65
- if (obj === undefined || obj === null) {
66
- return false;
67
- }
68
- return obj['__pulumiType'] === RepositoryCredentials.__pulumiType;
69
- }
70
- constructor(name, argsOrState, opts) {
71
- let resourceInputs = {};
72
- opts = opts || {};
73
- if (opts.id) {
74
- const state = argsOrState;
75
- resourceInputs["enableOci"] = state ? state.enableOci : undefined;
76
- resourceInputs["githubappEnterpriseBaseUrl"] = state ? state.githubappEnterpriseBaseUrl : undefined;
77
- resourceInputs["githubappId"] = state ? state.githubappId : undefined;
78
- resourceInputs["githubappInstallationId"] = state ? state.githubappInstallationId : undefined;
79
- resourceInputs["githubappPrivateKey"] = state ? state.githubappPrivateKey : undefined;
80
- resourceInputs["password"] = state ? state.password : undefined;
81
- resourceInputs["sshPrivateKey"] = state ? state.sshPrivateKey : undefined;
82
- resourceInputs["tlsClientCertData"] = state ? state.tlsClientCertData : undefined;
83
- resourceInputs["tlsClientCertKey"] = state ? state.tlsClientCertKey : undefined;
84
- resourceInputs["url"] = state ? state.url : undefined;
85
- resourceInputs["username"] = state ? state.username : undefined;
86
- }
87
- else {
88
- const args = argsOrState;
89
- if ((!args || args.url === undefined) && !opts.urn) {
90
- throw new Error("Missing required property 'url'");
91
- }
92
- resourceInputs["enableOci"] = args ? args.enableOci : undefined;
93
- resourceInputs["githubappEnterpriseBaseUrl"] = args ? args.githubappEnterpriseBaseUrl : undefined;
94
- resourceInputs["githubappId"] = args ? args.githubappId : undefined;
95
- resourceInputs["githubappInstallationId"] = args ? args.githubappInstallationId : undefined;
96
- resourceInputs["githubappPrivateKey"] = (args === null || args === void 0 ? void 0 : args.githubappPrivateKey) ? pulumi.secret(args.githubappPrivateKey) : undefined;
97
- resourceInputs["password"] = (args === null || args === void 0 ? void 0 : args.password) ? pulumi.secret(args.password) : undefined;
98
- resourceInputs["sshPrivateKey"] = (args === null || args === void 0 ? void 0 : args.sshPrivateKey) ? pulumi.secret(args.sshPrivateKey) : undefined;
99
- resourceInputs["tlsClientCertData"] = args ? args.tlsClientCertData : undefined;
100
- resourceInputs["tlsClientCertKey"] = (args === null || args === void 0 ? void 0 : args.tlsClientCertKey) ? pulumi.secret(args.tlsClientCertKey) : undefined;
101
- resourceInputs["url"] = args ? args.url : undefined;
102
- resourceInputs["username"] = args ? args.username : undefined;
103
- }
104
- opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
105
- const secretOpts = { additionalSecretOutputs: ["githubappPrivateKey", "password", "sshPrivateKey", "tlsClientCertKey"] };
106
- opts = pulumi.mergeOptions(opts, secretOpts);
107
- super(RepositoryCredentials.__pulumiType, name, resourceInputs, opts);
108
- }
109
- }
110
- exports.RepositoryCredentials = RepositoryCredentials;
111
- /** @internal */
112
- RepositoryCredentials.__pulumiType = 'argocd:index/repositoryCredentials:RepositoryCredentials';
113
- //# sourceMappingURL=repositoryCredentials.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repositoryCredentials.js","sourceRoot":"","sources":["../repositoryCredentials.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,MAAa,qBAAsB,SAAQ,MAAM,CAAC,cAAc;IAC5D;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAkC,EAAE,IAAmC;QAChI,OAAO,IAAI,qBAAqB,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAC5E,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,qBAAqB,CAAC,YAAY,CAAC;IACtE,CAAC;IAuDD,YAAY,IAAY,EAAE,WAAoE,EAAE,IAAmC;QAC/H,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAqD,CAAC;YACpE,cAAc,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAClE,cAAc,CAAC,4BAA4B,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC,SAAS,CAAC;YACpG,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,cAAc,CAAC,yBAAyB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9F,cAAc,CAAC,qBAAqB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC;YACtF,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,cAAc,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1E,cAAc,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC;YAClF,cAAc,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;YAChF,cAAc,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YACtD,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;SACnE;aAAM;YACH,MAAM,IAAI,GAAG,WAAoD,CAAC;YAClE,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAChD,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;aACtD;YACD,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,cAAc,CAAC,4BAA4B,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,SAAS,CAAC;YAClG,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YACpE,cAAc,CAAC,yBAAyB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5F,cAAc,CAAC,qBAAqB,CAAC,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,mBAAmB,EAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACxH,cAAc,CAAC,UAAU,CAAC,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,EAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACvF,cAAc,CAAC,eAAe,CAAC,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,aAAa,EAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACtG,cAAc,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC;YAChF,cAAc,CAAC,kBAAkB,CAAC,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,gBAAgB,EAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC/G,cAAc,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YACpD,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;SACjE;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,EAAE,uBAAuB,EAAE,CAAC,qBAAqB,EAAE,UAAU,EAAE,eAAe,EAAE,kBAAkB,CAAC,EAAE,CAAC;QACzH,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC7C,KAAK,CAAC,qBAAqB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC1E,CAAC;;AAtHL,sDAuHC;AAzGG,gBAAgB;AACO,kCAAY,GAAG,0DAA0D,CAAC"}