From 2248df98f15806d7b7d62bf2ed405fcf6f9a498c Mon Sep 17 00:00:00 2001 From: susan evans Date: Wed, 7 Jun 2023 13:35:36 -0700 Subject: [PATCH 01/20] Revert "Revert "pass at updating inputs/outputs doc (#2996)" (#3002)" This reverts commit 44df4c4688e98589a49ef26c4c7d60d5c1268ddc. --- .../docs/concepts/inputs-outputs/_index.md | 800 +++++++++++++++++- 1 file changed, 788 insertions(+), 12 deletions(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index bfb9aa252a9..f828abb4e5a 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -13,16 +13,272 @@ aliases: --- -Resource properties are treated specially in Pulumi, both for purposes of input and output. +## Inputs -All resource arguments accept *inputs*. Inputs are values of type {{< pulumi-input >}}, a type that permits either a raw value of a given type (such as string, integer, boolean, list, map, and so on), an asynchronously computed value (i.e., a `Promise` or `Task`), or an output read from another resource’s properties. +All resources in Pulumi accept values that describe the way the resource behaves. We call these values *inputs*. -All resource properties on the instance object itself are *outputs*. Outputs are values of type {{< pulumi-output >}}, which behave very much like [promises](https://en.wikipedia.org/wiki/Futures_and_promises). This is necessary because outputs are not fully known until the infrastructure resource has actually completed provisioning, which happens asynchronously. Outputs are also how Pulumi tracks dependencies between resources. +{{< chooser language "javascript,typescript,python,go,csharp,java" >}} + +{{% choosable language javascript %}} + +```javascript +// TODO +``` + +{{% /choosable %}} +{{% choosable language typescript %}} + +```typescript +const myId = new random.RandomId("mine", { + byteLength: 8, // byte_length is an input +}); +``` + +{{% /choosable %}} +{{% choosable language python %}} + +```python +my_id = random.RandomId("mine", + byte_length=8 # byte_length is an input +) +``` + +{{% /choosable %}} +{{% choosable language go %}} + +```go + +myId, err := random.NewRandomId(ctx, "mine", &random.RandomIdArgs{ + ByteLength: pulumi.Int(8), // ByteLength is an input +}) +if err != nil { + return err +} + +``` + +{{% /choosable %}} +{{% choosable language csharp %}} + +```csharp +var myId = new Random.RandomId("mine", new() +{ + ByteLength = 8, // ByteLength is an input +}); + +``` + +{{% /choosable %}} +{{% choosable language java %}} + +```java +var myId = new RandomId("mine", RandomIdArgs.builder() + .byteLength(8) // byteLength is an input + .build()); + +``` + +{{% /choosable %}} +{{< /chooser >}} + +_Inputs_ are generally representations of the parameters to the underlying API call of any resource that Pulumi is managing. + +The simplest way to create a resource with its required _inputs_ is to use a _raw value_. + +{{< chooser language "javascript,typescript,python,go,csharp,java" >}} + +{{% choosable language javascript %}} + +```javascript +const key = new tls.PrivateKey("my-private-key", { + algorithm: "ECDSA", // ECDSA is a raw value +}); + +``` + +{{% /choosable %}} +{{% choosable language typescript %}} + +```typescript +const key = new tls.PrivateKey("my-private-key", { + algorithm: "ECDSA", // ECDSA is a raw value +}); + +``` + +{{% /choosable %}} +{{% choosable language python %}} + +```python +key = tls.PrivateKey("my-private-key", + algorithm="ECDSA", # ECDSA is a raw value +) + +``` + +{{% /choosable %}} +{{% choosable language go %}} + +```go + +key, err := tls.NewPrivateKey(ctx, "my-private-key", &tls.PrivateKeyArgs{ + Algorithm: pulumi.String("ECDSA"), // ECDSA is a raw value +}) +if err != nil { + return err +} + + +``` + +{{% /choosable %}} +{{% choosable language csharp %}} + +```csharp +var key = new PrivateKey("my-private-key", new PrivateKeyArgs{ + Algorithm = "ECDSA", // ECDSA is a raw value +}); +``` + +{{% /choosable %}} +{{% choosable language java %}} + +```java +// TODO +``` + +{{% /choosable %}} +{{< /chooser >}} + +{{% notes %}} +_Raw value_ in this document is used to describe a standard string, boolean, integer or other typed value in your language of choice. _Raw value_ is a way of differentiating these language specific values from Pulumi's asynchronous values. + +An {{< pulumi-output >}} value can resolve to a _raw value_. For more information on this, see [apply](#apply). +{{% /notes %}} + +However, in most Pulumi programs, the inputs to a resource will reference values from another resource + +{{< chooser language "javascript,typescript,python,go,csharp,java" >}} + +{{% choosable language javascript %}} + +```javascript +// TODO +``` + +{{% /choosable %}} +{{% choosable language typescript %}} + +```typescript + +const password = new random.RandomPassword("password", { + length: 16, + special: true, + overrideSpecial: "!#$%&*()-_=+[]{}<>:?", +}); +const example = new aws.rds.Instance("example", { + instanceClass: "db.t3.micro", + allocatedStorage: 64, + engine: "mysql", + username: "someone", + password: password.result, // We pass the output from password as an input +}); +``` + +{{% /choosable %}} +{{% choosable language python %}} + +```python +password = random.RandomPassword( + "password", + length=16, + special=True, + override_special="!#$%&*()-_=+[]{}<>:?" +) +example = aws.rds.Instance( + "example", + instance_class="db.t3.micro", + allocated_storage=64, + engine="mysql", + username="someone", + password=password.result, # We pass the output from password as an input +) +``` + +{{% /choosable %}} +{{% choosable language go %}} + +```go +password, err := random.NewRandomPassword(ctx, "password", &random.RandomPasswordArgs{ + Length: pulumi.Int(16), + Special: pulumi.Bool(true), + OverrideSpecial: pulumi.String("!#$%&*()-_=+[]{}<>:?"), +}) +if err != nil { + return err +} +_, err = rds.NewInstance(ctx, "example", &rds.InstanceArgs{ + InstanceClass: pulumi.String("db.t3.micro"), + AllocatedStorage: pulumi.Int(64), + Engine: pulumi.String("mysql"), + Username: pulumi.String("someone"), + Password: password.Result, // We pass the output from password as an input +}) +if err != nil { + return err +} +``` + +{{% /choosable %}} +{{% choosable language csharp %}} + +```csharp +var password = new Random.RandomPassword("password", new() +{ + Length = 16, + Special = true, + OverrideSpecial = "!#$%&*()-_=+[]{}<>:?", +}); + +var example = new Aws.Rds.Instance("example", new() +{ + InstanceClass = "db.t3.micro", + AllocatedStorage = 64, + Engine = "mysql", + Username = "someone", + Password = password.Result, // We pass the output from password as an input +}); +``` -Outputs, therefore, represent two things: +{{% /choosable %}} +{{% choosable language java %}} -- The eventual raw value of the output -- The dependency on the source(s) of the output value +```java +var password = new RandomPassword("password", RandomPasswordArgs.builder() + .length(16) + .special(true) + .overrideSpecial("!#$%&*()-_=+[]{}<>:?") + .build()); + +var example = new Instance("example", InstanceArgs.builder() + .instanceClass("db.t3.micro") + .allocatedStorage(64) + .engine("mysql") + .username("someone") + .password(password.result()) // We pass the output from password as an input + .build()); +``` + +{{% /choosable %}} +{{< /chooser >}} + +In this case, Pulumi is taking the _output_ from one resource and using it as the _input_ to another resources + +## Outputs + +All resources created by Pulumi will have properties which are returned from the cloud provider API. These values are *outputs*. + +Outputs are values of type {{< pulumi-output >}}, which behave very much like [promises](https://en.wikipedia.org/wiki/Futures_and_promises) or [monads](https://en.wikipedia.org/wiki/Monad_(functional_programming)). This is necessary because outputs are not fully known until the infrastructure resource has actually completed provisioning, which happens *asynchronously*. Outputs are also how Pulumi tracks dependencies between resources. When an output from one resource has been returned from the cloud provider API, Pulumi can link the two resources together and pass it as the input to another resource. Pulumi automatically captures dependencies when you pass an output from one resource as an input to another resource. Capturing these dependencies ensures that the physical infrastructure resources are not created or updated until all their dependencies are available and up-to-date. @@ -34,9 +290,69 @@ Because outputs are asynchronous, their actual raw values are not immediately av ## Apply -To access the raw value of an output and transform that value into a new value, use {{< pulumi-apply >}}. This method accepts a callback that will be invoked with the raw value, once that value is available. +To access the raw (or _resolved_) value of an output, use {{< pulumi-apply >}}. This method accepts a callback that will be invoked with the raw value, once that value is available. + +This example will wait for the value to be returned from the API and print it to stdout + +{{< chooser language "javascript,typescript,python,go,csharp,java" >}} + +{{% choosable language javascript %}} + +```javascript +// TODO +``` + +{{% /choosable %}} +{{% choosable language typescript %}} + +```typescript +const myPet = new random.RandomPet("my-pet") +myPet.id.apply(id => console.log(`Hello, {id}!`)) +``` + +{{% /choosable %}} +{{% choosable language python %}} + +```python +my_pet = random.RandomPet("my-pet") +my_pet.id.apply(lambda id: print(f"Hello, {id}!")) +``` + +{{% /choosable %}} +{{% choosable language go %}} + +```go +myPet, err := random.NewRandomPet(ctx, "my-pet", &random.RandomPetArgs{}) +if err != nil { + return err +} + +myPet.ID().ApplyT(func(id string) error { + fmt.Printf("Hello, %s!", id) + return nil +}) +``` -For example, the following code creates an HTTPS URL from the DNS name (the raw value) of a virtual machine: +{{% /choosable %}} +{{% choosable language csharp %}} + +```csharp +var myPet = new Pulumi.Random.RandomPet("my-pet", new(){}); + myPet.Id.Apply(id => { Console.WriteLine($"Hello, {id}!"); return id; }); +``` + +{{% /choosable %}} +{{% choosable language java %}} + +```java +// TODO +``` + +{{% /choosable %}} + +{{< /chooser >}} + +You can use this same process to create new output values to pass as inputs to another resource, for example, the following code creates an HTTPS URL from the DNS name (the raw value) of a virtual machine: {{< chooser language "javascript,typescript,python,go,csharp,java,yaml" >}} @@ -105,7 +421,7 @@ During some program executions, `apply` doesn’t run. For example, it won’t r ## All -If you have multiple outputs and need to join them, the `all` function acts like an `apply` over many resources. This function joins over an entire list of outputs. It waits for all of them to become available and then provides them to the supplied callback. This function can be used to compute an entirely new output value, such as by adding or concatenating outputs from two different resources together, or by creating a new data structure that uses them. Just like with `apply`, the result of [Output.all](/docs/reference/pkg/python/pulumi#pulumi.Output.all) is itself an Output. +If you have multiple outputs and need to join them, the `all` function acts like an `apply` over many resources, allowing you to resolve multiple outputs before performing an operation. `all` waits for all output values to become available and then provides them to the supplied callback. This function can be used to compute an entirely new output value, such as by adding or concatenating outputs from two different resources together, or by creating a new data structure that uses them. Just like with `apply`, the result of [Output.all](/docs/reference/pkg/python/pulumi#pulumi.Output.all) is itself an Output. For example, let’s use a server and a database name to create a database connection string: @@ -509,7 +825,7 @@ let certValidation = new aws.route53.Record("cert_validation", { ## Working with Outputs and Strings {#outputs-and-strings} -Outputs that contain strings cannot be used directly in operations such as string concatenation. String interpolation lets you more easily build a string out of various output values, without needing {{< pulumi-apply >}} or [Output.all](/docs/reference/pkg/python/pulumi#pulumi.Output.all). You can use string interpolation to export a stack output, provide a dynamically computed string as a new resource argument, or even for diagnostic purposes. +Outputs that resolve to strings cannot be used directly in operations such as string concatenation until the output has been resolved. In these scenarios, you'll need to resolve the values using {{< pulumi-apply >}}. For example, say you want to create a URL from `hostname` and `port` output values. You can do this using `apply` and `all`. @@ -589,7 +905,7 @@ var url = Output.tuple(hostname, port) {{< /chooser >}} -However, this approach is verbose and unwieldy. To make this common task easier, Pulumi exposes helpers that allow you to create strings that contain outputs—internally hiding all of the messiness required to join them together: +However, this approach is verbose and unwieldy. To make this common task easier, Pulumi exposes interpolation helpers that allow you to create strings that contain outputs - internally hiding all of the messiness required to join them together: {{% choosable language javascript %}} @@ -653,9 +969,216 @@ variables: {{% /choosable %}} +You can use string interpolation to export a stack output, provide a dynamically computed string as a new resource argument, or even for diagnostic purposes. + ## Working with Outputs and JSON {#outputs-and-json} -Often in the course of working with web technologies, you encounter JavaScript Object Notation (JSON) which is a popular specification for representing data. Pulumi provides first-class helper functions for deserializing JSON string outputs into your language's native objects and serializing your language's native objects to JSON string outputs. +Often in the course of working with web technologies, you encounter JavaScript Object Notation (JSON) which is a popular specification for representing data. In many scenarios, you'll need to embed resource outputs into a JSON string. In these scenarios, you need to first _resolve_ the output, _then_ build the JSON string: + +{{< chooser language "typescript,python,go,csharp" >}} +{{% choosable language typescript %}} + +```typescript +const contentBucket = new aws.s3.Bucket("content-bucket", { + acl: "private", + website: { + indexDocument: "index.html", + errorDocument: "index.html", + }, + forceDestroy: true, +}); + +const originAccessIdentity = new aws.cloudfront.OriginAccessIdentity( + "cloudfront", + { + comment: pulumi.interpolate`OAI-${contentBucket.bucketDomainName}`, + } +); + +// apply method +new aws.s3.BucketPolicy("cloudfront-bucket-policy", { + bucket: contentBucket.bucket, + policy: pulumi + .all([contentBucket.bucket, originAccessIdentity.iamArn]) + .apply(([bucketName, iamArn]) => + JSON.stringify({ + Version: "2012-10-17", + Statement: [ + { + Sid: "CloudfrontAllow", + Effect: "Allow", + Principal: { + AWS: iamArn, + }, + Action: "s3:GetObject", + Resource: `arn:aws:s3:::${bucketName}/*`, + }, + ], + }) + ), +}); +``` + +{{% /choosable %}} +{{% choosable language python %}} + +```python +bucket = aws.s3.Bucket( + "content-bucket", + acl="private", + website=aws.s3.BucketWebsiteArgs( + index_document="index.html", error_document="404.html" + ), +) + +origin_access_identity = aws.cloudfront.OriginAccessIdentity( + "cloudfront", + comment=pulumi.Output.concat("OAI-", bucket.id), +) + +bucket_policy = aws.s3.BucketPolicy( + "cloudfront-bucket-policy", + bucket=bucket.bucket, + policy=pulumi.Output.all( + cloudfront_iam_arn=origin_access_identity.iam_arn, + bucket_arn=bucket.arn + ).apply( + lambda args: json.dumps( + { + "Version": "2012-10-17", + "Statement": [ + { + "Sid": "CloudfrontAllow", + "Effect": "Allow", + "Principal": { + "AWS": args["cloudfront_iam_arn"], + }, + "Action": "s3:GetObject", + "Resource": f"{args['bucket_arn']}/*", + } + ], + } + ) + ), + opts=pulumi.ResourceOptions(parent=bucket) +) +``` + +{{% /choosable %}} +{{% choosable language go %}} + +{{% notes type="info" %}} +The Pulumi Go SDK does not currently support serializing or deserializing maps with unknown values. +It is tracked [here](https://github.com/pulumi/pulumi/issues/12460). + +The following is a simplified example of using `pulumi.JSONMarshal` in Go. +{{% /notes %}} + +```go +bucket, err := s3.NewBucket(ctx, "content-bucket", &s3.BucketArgs{ + Acl: pulumi.String("private"), + Website: &s3.BucketWebsiteArgs{ + IndexDocument: pulumi.String("index.html"), + ErrorDocument: pulumi.String("404.html"), + }, +}) +if err != nil { + return err +} + +originAccessIdentity, err := cloudfront.NewOriginAccessIdentity(ctx, "cloudfront", &cloudfront.OriginAccessIdentityArgs{ + Comment: pulumi.Sprintf("OAI-%s", bucket.ID()), +}) +if err != nil { + return err +} + +_, err = s3.NewBucketPolicy(ctx, "cloudfront-bucket-policy", &s3.BucketPolicyArgs{ + Bucket: bucket.ID(), + Policy: pulumi.All(bucket.Arn, originAccessIdentity.IamArn).ApplyT( + func(args []interface{}) (pulumi.StringOutput, error) { + bucketArn := args[0].(string) + iamArn := args[1].(string) + + policy, err := json.Marshal(map[string]interface{}{ + "Version": "2012-10-17", + "Statement": []map[string]interface{}{ + { + "Sid": "CloudfrontAllow", + "Effect": "Allow", + "Principal": map[string]interface{}{ + "AWS": iamArn, + }, + "Action": "s3:GetObject", + "Resource": bucketArn + "/*", + }, + }, + }) + + if err != nil { + return pulumi.String(""), err + } + return pulumi.String(policy), nil + }).(pulumi.StringOutput), +}, pulumi.Parent(bucket)) +if err != nil { + return err +} +``` + +{{% /choosable %}} +{{% choosable language csharp %}} + +```csharp +var bucket = new Bucket("content-bucket", new BucketArgs +{ + Acl = "private", + Website = new BucketWebsiteArgs + { + IndexDocument = "index.html", + ErrorDocument = "404.html", + }, +}); + +var originAccessIdentity = new OriginAccessIdentity("cloudfront", new OriginAccessIdentityArgs +{ + Comment = Output.Format($"OAI-{bucket.Id}"), +}); + +var bucketPolicy = new BucketPolicy("cloudfront-bucket-policy", new BucketPolicyArgs +{ + Bucket = bucket.Bucket, + Policy = Output.Tuple(bucket.Arn, originAccessIdentity.IamArn) + .Apply(t => + { + string bucketArn = t.Item1; + string cloudfrontIamArn = t.Item2; + + var policy = new + { + Version = "2012-10-17", + Statement = new object[] + { + new + { + Sid = "CloudfrontAllow", + Effect = "Allow", + Principal = new { AWS = cloudfrontIamArn }, + Action = "s3:GetObject", + Resource = $"{bucketArn}/*", + }, + }, + }; + + return JsonSerializer.Serialize(policy); + }), +}, new CustomResourceOptions { Parent = bucket }); +``` + +{{% /choosable %}} +{{< /chooser >}} + +This operation is so common, Pulumi provides first-class helper functions for deserializing JSON string outputs into your language's native objects and serializing your language's native objects to JSON string outputs. These helper functions are designed to remove the process of manually resolving the output inside a {{< pulumi-apply >}}. ### Converting Outputs to JSON @@ -1056,3 +1579,256 @@ public static Output> split(Output str) { {{% /choosable %}} {{< /chooser >}} + +## Common Pitfalls + +### String Interpolation + +When working with outputs and apply, you may see an error message like so: + +``` +Calling __str__ on an Output[T] is not supported. To get the value of an Output[T] as an Output[str] consider: 1. o.apply(lambda v: f"prefix{v}suffix") See https://pulumi.io/help/outputs for more details. +``` + +The reason this is happening is because the _Output_ value is being used before it has been resolved by from the API. + +A concrete example of this can be seen in the following code: + +{{< chooser language "javascript,typescript,python,go,csharp,java" >}} + +{{% choosable language javascript %}} + +```javascript +// TODO +``` + +{{% /choosable %}} +{{% choosable language typescript %}} + +```typescript +// NOTE: This example is not correct +const contentBucket = new aws.s3.Bucket("content-bucket", { + acl: "private", + website: { + indexDocument: "index.html", + errorDocument: "index.html", + }, + forceDestroy: true, +}); + +const bucketPolicy = new aws.s3.BucketPolicy("cloudfront-bucket-policy", { + bucket: contentBucket.bucket, + policy: JSON.stringify({ + Version: "2012-10-17", + Statement: [ + { + Sid: "CloudfrontAllow", + Effect: "Allow", + Principal: { + AWS: iamArn, + }, + Action: "s3:GetObject", + Resource: bucket.arn.apply(arn => arn), + }, + ], + }) + ), +}); +``` + +{{% /choosable %}} +{{% choosable language python %}} + +```python +# NOTE: This example is not correct +bucket = aws.s3.Bucket( + "cloudfront", + acl="private", + website=aws.s3.BucketWebsiteArgs( + index_document="index.html", error_document="404.html" + ), +) + +bucket_policy = aws.s3.BucketPolicy( + "cloudfrontAccess", + bucket=bucket.bucket, + policy=json.dumps( + { + "Version": "2012-10-17", + "Statement": [ + { + "Sid": "CloudfrontAllow", + "Effect": "Allow", + "Principal": { + "AWS": "*", + }, + "Action": "s3:GetObject", + "Resource": bucket.arn.apply(lambda arn: arn), + } + ], + } + ) + ), + opts=pulumi.ResourceOptions(parent=bucket) +) +``` + +{{% /choosable %}} +{{% choosable language go %}} + +```go + +// NOTE: This example is not correct +bucket, err := s3.NewBucket(ctx, "content-bucket", &s3.BucketArgs{ + Acl: pulumi.String("private"), + Website: &s3.BucketWebsiteArgs{ + IndexDocument: pulumi.String("index.html"), + ErrorDocument: pulumi.String("404.html"), + }, +}) +if err != nil { + return err +} + +_, err = s3.NewBucketPolicy(ctx, "cloudfront-bucket-policy", &s3.BucketPolicyArgs{ + Bucket: bucket.ID(), + Policy: json.Marshal(map[string]interface{}{ + "Version": "2012-10-17", + "Statement": []map[string]interface{}{ + { + "Sid": "CloudfrontAllow", + "Effect": "Allow", + "Principal": map[string]interface{}{ + "AWS": iamArn, + }, + "Action": "s3:GetObject", + "Resource": bucket.Arn.ApplyT(arn []interface{} (pulumi.StringOutput)), + }, + }, + }) + }), +if err != nil { + return err +} +``` + +{{% /choosable %}} +{{% choosable language csharp %}} + +```csharp +var bucket = new Bucket("content-bucket", new BucketArgs +{ + Acl = "private", + Website = new BucketWebsiteArgs + { + IndexDocument = "index.html", + ErrorDocument = "404.html", + }, +}); + +// TODO incorrect bucket policy build +``` + +{{% /choosable %}} +{{% choosable language java %}} + +```java +// TODO +``` + +{{% /choosable %}} + +{{< /chooser >}} + +Notice how the `apply` call is being used inside the JSON string. In this scenario, the `apply` call is happening during the build of the JSON string, which is too early in the Pulumi lifecycle. The value of the bucket ARN has not yet been resolved from the cloud provider API, so the JSON string cannot be built yet. + +The correct way of handling this scenario is to resolve the bucket ARN, _then_ build the JSON string. You can see an example of this in the (#outputs-and-json) section. + +Notice in that example how the JSON string is being built _inside_ the `apply` call to Pulumi. In logical order, this happens as: + +- Resolve the bucket ARN from the cloud provider +- Then, build the JSON string with the "raw" value. + +### Resource Names + +When creating multiple resources, it can be tempting to use the output of one resource as the name to another: + +{{< chooser language "javascript,typescript,python,go,csharp,java" >}} + +{{% choosable language javascript %}} + +```javascript + +``` + +{{% /choosable %}} +{{% choosable language typescript %}} + +```typescript +// NOTE: This example is not correct +const bucket = new aws.s3.Bucket("my-bucket", {}); + +const bucketPolicy = new aws.s3.BucketPolicy(bucket.name, { + // rest of bucket arguments go here +}); +``` + +{{% /choosable %}} +{{% choosable language python %}} + +```python +# NOTE: This example is not correct +bucket = aws.s3.Bucket("my-bucket",) + +bucket_policy = aws.s3.BucketPolicy( + bucket.name, + # rest of bucket arguments go here +) +``` + +{{% /choosable %}} +{{% choosable language go %}} + +```go + +// NOTE: This example is not correct +bucket, err := s3.NewBucket(ctx, "my-bucket", &s3.BucketArgs{}) +if err != nil { + return err +} + +_, err = s3.NewBucketPolicy(ctx, bucket.Name, &s3.BucketPolicyArgs{ + Bucket: bucket.ID(), + // rest of bucket arguments go here +}) +if err != nil { + return err +} +``` + +{{% /choosable %}} +{{% choosable language csharp %}} + +```csharp +var bucket = new Bucket("my-bucket", new BucketArgs{}); + +// TODO incorrect bucket policy build +``` + +{{% /choosable %}} +{{% choosable language java %}} + +```java +// TODO +``` + +{{% /choosable %}} +{{< /chooser >}} + +However, this pattern isn't possible because resource names need to be available and known at runtime in order to construct the URN of the resource. + +If you really wish to pass an output from one resource as the resource name of another resource, you will need to use a {{< pulumi-apply >}}. + +{{% notes %}} +This will lead to previews being inaccurate. Resources created inside an apply will only appear in the Pulumi output after an `up` operation is run, and is therefore strongly discouraged. +{{% /notes %}} From 176b1be0e26d97ea8af8724d892784adfc3511ef Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Thu, 8 Jun 2023 10:12:29 -0700 Subject: [PATCH 02/20] Update themes/default/content/docs/concepts/inputs-outputs/_index.md Co-authored-by: Josh Kodroff --- themes/default/content/docs/concepts/inputs-outputs/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index f828abb4e5a..3a4b7936e63 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -153,7 +153,7 @@ var key = new PrivateKey("my-private-key", new PrivateKeyArgs{ {{% notes %}} _Raw value_ in this document is used to describe a standard string, boolean, integer or other typed value in your language of choice. _Raw value_ is a way of differentiating these language specific values from Pulumi's asynchronous values. -An {{< pulumi-output >}} value can resolve to a _raw value_. For more information on this, see [apply](#apply). +An {{< pulumi-output >}} value can resolve to a _raw value_. For more information, see [apply](#apply). {{% /notes %}} However, in most Pulumi programs, the inputs to a resource will reference values from another resource From ef999e67b4342b2588f0a2782bde172be9b74d56 Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Thu, 8 Jun 2023 10:12:37 -0700 Subject: [PATCH 03/20] Update themes/default/content/docs/concepts/inputs-outputs/_index.md Co-authored-by: Josh Kodroff --- themes/default/content/docs/concepts/inputs-outputs/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index 3a4b7936e63..7b3e97599e9 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -156,7 +156,7 @@ _Raw value_ in this document is used to describe a standard string, boolean, int An {{< pulumi-output >}} value can resolve to a _raw value_. For more information, see [apply](#apply). {{% /notes %}} -However, in most Pulumi programs, the inputs to a resource will reference values from another resource +However, in most Pulumi programs, the inputs to a resource will reference values from another resource: {{< chooser language "javascript,typescript,python,go,csharp,java" >}} From 9ff6fab4b084c551b47c8caac34031a6101c960c Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Thu, 8 Jun 2023 10:12:44 -0700 Subject: [PATCH 04/20] Update themes/default/content/docs/concepts/inputs-outputs/_index.md Co-authored-by: Josh Kodroff --- themes/default/content/docs/concepts/inputs-outputs/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index 7b3e97599e9..256964d6d75 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -272,7 +272,7 @@ var example = new Instance("example", InstanceArgs.builder() {{% /choosable %}} {{< /chooser >}} -In this case, Pulumi is taking the _output_ from one resource and using it as the _input_ to another resources +In this case, Pulumi is taking the _output_ from one resource and using it as the _input_ to another resource. ## Outputs From 1a272de818e99dec150c90b63512cccfe58652ec Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Thu, 8 Jun 2023 12:47:53 -0700 Subject: [PATCH 05/20] Update themes/default/content/docs/concepts/inputs-outputs/_index.md Co-authored-by: Aaron Friel --- themes/default/content/docs/concepts/inputs-outputs/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index 256964d6d75..d3b797aee88 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -905,7 +905,7 @@ var url = Output.tuple(hostname, port) {{< /chooser >}} -However, this approach is verbose and unwieldy. To make this common task easier, Pulumi exposes interpolation helpers that allow you to create strings that contain outputs - internally hiding all of the messiness required to join them together: +However, this approach is verbose and unwieldy. To make this common task easier, Pulumi exposes interpolation helpers that allow you to create strings that contain outputs. These interpolation methods wrap [all](#all) and [apply](#apply) with an interface that resembles your language's native string formatting functions. {{% choosable language javascript %}} From dbc1d897abcacd4e0ba0962ee5a4fe05746663e8 Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Thu, 8 Jun 2023 12:48:20 -0700 Subject: [PATCH 06/20] Update themes/default/content/docs/concepts/inputs-outputs/_index.md Co-authored-by: Aaron Friel --- themes/default/content/docs/concepts/inputs-outputs/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index d3b797aee88..1ebd78acd3b 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -421,7 +421,7 @@ During some program executions, `apply` doesn’t run. For example, it won’t r ## All -If you have multiple outputs and need to join them, the `all` function acts like an `apply` over many resources, allowing you to resolve multiple outputs before performing an operation. `all` waits for all output values to become available and then provides them to the supplied callback. This function can be used to compute an entirely new output value, such as by adding or concatenating outputs from two different resources together, or by creating a new data structure that uses them. Just like with `apply`, the result of [Output.all](/docs/reference/pkg/python/pulumi#pulumi.Output.all) is itself an Output. +If you have multiple outputs and need to use them together, the `all` function acts like an `apply` over many resources, allowing you to use multiple outputs when creating a new output. `all` waits for all output values to become available and then provides them as _plain values_ to the supplied callback. This function can be used to compute an entirely new output value, such as by adding or concatenating outputs from two different resources together, or by creating a new data structure that uses them. Just like with `apply`, the result of [Output.all](/docs/reference/pkg/python/pulumi#pulumi.Output.all) is itself an Output. For example, let’s use a server and a database name to create a database connection string: From f76857edd6c86922271feae5f845df2b4100069c Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Thu, 8 Jun 2023 12:51:20 -0700 Subject: [PATCH 07/20] use plain instead of raw --- .../docs/concepts/inputs-outputs/_index.md | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index 1ebd78acd3b..998805bbb7e 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -83,7 +83,7 @@ var myId = new RandomId("mine", RandomIdArgs.builder() _Inputs_ are generally representations of the parameters to the underlying API call of any resource that Pulumi is managing. -The simplest way to create a resource with its required _inputs_ is to use a _raw value_. +The simplest way to create a resource with its required _inputs_ is to use a _plain value_. {{< chooser language "javascript,typescript,python,go,csharp,java" >}} @@ -91,7 +91,7 @@ The simplest way to create a resource with its required _inputs_ is to use a _ra ```javascript const key = new tls.PrivateKey("my-private-key", { - algorithm: "ECDSA", // ECDSA is a raw value + algorithm: "ECDSA", // ECDSA is a plain value }); ``` @@ -101,7 +101,7 @@ const key = new tls.PrivateKey("my-private-key", { ```typescript const key = new tls.PrivateKey("my-private-key", { - algorithm: "ECDSA", // ECDSA is a raw value + algorithm: "ECDSA", // ECDSA is a plain value }); ``` @@ -111,7 +111,7 @@ const key = new tls.PrivateKey("my-private-key", { ```python key = tls.PrivateKey("my-private-key", - algorithm="ECDSA", # ECDSA is a raw value + algorithm="ECDSA", # ECDSA is a plain value ) ``` @@ -122,7 +122,7 @@ key = tls.PrivateKey("my-private-key", ```go key, err := tls.NewPrivateKey(ctx, "my-private-key", &tls.PrivateKeyArgs{ - Algorithm: pulumi.String("ECDSA"), // ECDSA is a raw value + Algorithm: pulumi.String("ECDSA"), // ECDSA is a plain value }) if err != nil { return err @@ -136,7 +136,7 @@ if err != nil { ```csharp var key = new PrivateKey("my-private-key", new PrivateKeyArgs{ - Algorithm = "ECDSA", // ECDSA is a raw value + Algorithm = "ECDSA", // ECDSA is a plain value }); ``` @@ -151,9 +151,9 @@ var key = new PrivateKey("my-private-key", new PrivateKeyArgs{ {{< /chooser >}} {{% notes %}} -_Raw value_ in this document is used to describe a standard string, boolean, integer or other typed value in your language of choice. _Raw value_ is a way of differentiating these language specific values from Pulumi's asynchronous values. +_Plain value_ in this document is used to describe a standard string, boolean, integer or other typed value or data structure in your language of choice. _Plain_ value_ is a way of differentiating these language specific values from Pulumi's asynchronous values. -An {{< pulumi-output >}} value can resolve to a _raw value_. For more information, see [apply](#apply). +An {{< pulumi-output >}} value can resolve to a _plain value_. For more information, see [apply](#apply). {{% /notes %}} However, in most Pulumi programs, the inputs to a resource will reference values from another resource: @@ -282,15 +282,15 @@ Outputs are values of type {{< pulumi-output >}}, which behave very much like [p Pulumi automatically captures dependencies when you pass an output from one resource as an input to another resource. Capturing these dependencies ensures that the physical infrastructure resources are not created or updated until all their dependencies are available and up-to-date. -Because outputs are asynchronous, their actual raw values are not immediately available. If you need to access an output’s raw value—for example, to compute a derived, new value, or because you want to log it—you have these options: +Because outputs are asynchronous, their actual plain values are not immediately available. If you need to access an output’s plain value—for example, to compute a derived, new value, or because you want to log it—you have these options: -- [Apply](#apply): a callback that receives the raw value, and computes a new output +- [Apply](#apply): a callback that receives the plain value, and computes a new output - [Lifting](#lifting): directly read properties off an output value - [Interpolation](#outputs-and-strings): concatenate string outputs with other strings directly ## Apply -To access the raw (or _resolved_) value of an output, use {{< pulumi-apply >}}. This method accepts a callback that will be invoked with the raw value, once that value is available. +To access the _plain_ (or _resolved_) value of an output, use {{< pulumi-apply >}}. This method accepts a callback that will be invoked with the plain value, once that value is available. This example will wait for the value to be returned from the API and print it to stdout @@ -352,7 +352,7 @@ var myPet = new Pulumi.Random.RandomPet("my-pet", new(){}); {{< /chooser >}} -You can use this same process to create new output values to pass as inputs to another resource, for example, the following code creates an HTTPS URL from the DNS name (the raw value) of a virtual machine: +You can use this same process to create new output values to pass as inputs to another resource, for example, the following code creates an HTTPS URL from the DNS name (the plain value) of a virtual machine: {{< chooser language "javascript,typescript,python,go,csharp,java,yaml" >}} @@ -525,7 +525,7 @@ variables: {{< /chooser >}} -Notice that [Output.all](/docs/reference/pkg/python/pulumi#pulumi.Output.all) works by returning an output that represents the combination of multiple outputs so that, within the callback, the raw values are available inside of a tuple. +Notice that [Output.all](/docs/reference/pkg/python/pulumi#pulumi.Output.all) works by returning an output that represents the combination of multiple outputs so that, within the callback, the plain values are available inside of a tuple. ## Accessing Nested Properties of an Output by Lifting {#lifting} @@ -1511,7 +1511,7 @@ For more details [view the .NET documentation](/docs/reference/pkg/dotnet/Pulumi ## Convert Input to Output through Interpolation -It is possible to turn an {{< pulumi-input >}} into an {{< pulumi-output >}} value. Resource arguments already accept outputs as input values however, in some cases you need to know that a value is definitely an {{< pulumi-output >}} at runtime. Knowing this can be helpful because, since {{< pulumi-input >}} values have many possible representations—a raw value, a promise, or an output—you would normally need to handle all possible cases. By first transforming that value into an {{< pulumi-output >}}, you can treat it uniformly instead. +It is possible to turn an {{< pulumi-input >}} into an {{< pulumi-output >}} value. Resource arguments already accept outputs as input values however, in some cases you need to know that a value is definitely an {{< pulumi-output >}} at runtime. Knowing this can be helpful because, since {{< pulumi-input >}} values have many possible representations—a plain value, a promise, or an output—you would normally need to handle all possible cases. By first transforming that value into an {{< pulumi-output >}}, you can treat it uniformly instead. For example, this code transforms an {{< pulumi-input >}} into an {{< pulumi-output >}} so that it can use the `apply` function: @@ -1747,7 +1747,7 @@ The correct way of handling this scenario is to resolve the bucket ARN, _then_ b Notice in that example how the JSON string is being built _inside_ the `apply` call to Pulumi. In logical order, this happens as: - Resolve the bucket ARN from the cloud provider -- Then, build the JSON string with the "raw" value. +- Then, build the JSON string with the "plain" value. ### Resource Names From 3ed47623bdc2e964c663c714a07786a49bdef99d Mon Sep 17 00:00:00 2001 From: susan evans Date: Thu, 8 Jun 2023 18:06:47 -0700 Subject: [PATCH 08/20] fix Signed-off-by: susanev Co-authored-by: Luke Hoban --- themes/default/content/docs/concepts/inputs-outputs/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index 998805bbb7e..203a278f7b5 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -30,7 +30,7 @@ All resources in Pulumi accept values that describe the way the resource behaves ```typescript const myId = new random.RandomId("mine", { - byteLength: 8, // byte_length is an input + byteLength: 8, // byteLength is an input }); ``` From bc7c27c5b3ed5ae6d1b14c03ccbe7480a687ef6a Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Fri, 9 Jun 2023 08:45:59 -0700 Subject: [PATCH 09/20] Update themes/default/content/docs/concepts/inputs-outputs/_index.md Co-authored-by: Fabian Iwand --- themes/default/content/docs/concepts/inputs-outputs/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index 203a278f7b5..95ad28fd7c4 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -151,7 +151,7 @@ var key = new PrivateKey("my-private-key", new PrivateKeyArgs{ {{< /chooser >}} {{% notes %}} -_Plain value_ in this document is used to describe a standard string, boolean, integer or other typed value or data structure in your language of choice. _Plain_ value_ is a way of differentiating these language specific values from Pulumi's asynchronous values. +_Plain value_ in this document is used to describe a standard string, boolean, integer or other typed value or data structure in your language of choice. _Plain value_ is a way of differentiating these language specific values from Pulumi's asynchronous values. An {{< pulumi-output >}} value can resolve to a _plain value_. For more information, see [apply](#apply). {{% /notes %}} From 808efc9e6d40daa3ecd962a502a12916561a9149 Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Fri, 9 Jun 2023 13:23:10 -0700 Subject: [PATCH 10/20] remove usage of the word resolve --- .../docs/concepts/inputs-outputs/_index.md | 26 ++++++++++++------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index 95ad28fd7c4..5f10f07f308 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -153,7 +153,7 @@ var key = new PrivateKey("my-private-key", new PrivateKeyArgs{ {{% notes %}} _Plain value_ in this document is used to describe a standard string, boolean, integer or other typed value or data structure in your language of choice. _Plain value_ is a way of differentiating these language specific values from Pulumi's asynchronous values. -An {{< pulumi-output >}} value can resolve to a _plain value_. For more information, see [apply](#apply). +Once an {{< pulumi-output >}} value has returned (generally from an API) to Pulumi, it can be used as a _plain value_. For more information, see [apply](#apply). {{% /notes %}} However, in most Pulumi programs, the inputs to a resource will reference values from another resource: @@ -290,7 +290,7 @@ Because outputs are asynchronous, their actual plain values are not immediately ## Apply -To access the _plain_ (or _resolved_) value of an output, use {{< pulumi-apply >}}. This method accepts a callback that will be invoked with the plain value, once that value is available. +To access the _plain_ (or returned) value of an output, use {{< pulumi-apply >}}. This method accepts a callback that will be invoked with the plain value, once that value is available. This example will wait for the value to be returned from the API and print it to stdout @@ -413,7 +413,7 @@ variables: {{< /chooser >}} -The result of the call to {{< pulumi-apply >}} is a new Output. So in this example, the url variable is also an {{< pulumi-output >}}. It will resolve to the new value returned from the callback, and carries the dependencies of the original Output. If the callback itself returns an Output, the dependencies of that output are also kept in the resulting Output. +The result of the call to {{< pulumi-apply >}} is a new Output. So in this example, the url variable is also an {{< pulumi-output >}}. It will wait for the new value to be returned from the callback, and carries the dependencies of the original Output. If the callback itself returns an Output, the dependencies of that output are also kept in the resulting Output. {{% notes %}} During some program executions, `apply` doesn’t run. For example, it won’t run during a preview, when resource output values may be unknown. Therefore, you should avoid side-effects within the callbacks. For this reason, you should not allocate new resources inside of your callbacks either, as it could lead to `pulumi preview` being wrong. @@ -825,7 +825,7 @@ let certValidation = new aws.route53.Record("cert_validation", { ## Working with Outputs and Strings {#outputs-and-strings} -Outputs that resolve to strings cannot be used directly in operations such as string concatenation until the output has been resolved. In these scenarios, you'll need to resolve the values using {{< pulumi-apply >}}. +Outputs that return to the engine as strings cannot be used directly in operations such as string concatenation until the output has returned to Pulumi. In these scenarios, you'll need to wait for the value to return using {{< pulumi-apply >}}. For example, say you want to create a URL from `hostname` and `port` output values. You can do this using `apply` and `all`. @@ -973,7 +973,7 @@ You can use string interpolation to export a stack output, provide a dynamically ## Working with Outputs and JSON {#outputs-and-json} -Often in the course of working with web technologies, you encounter JavaScript Object Notation (JSON) which is a popular specification for representing data. In many scenarios, you'll need to embed resource outputs into a JSON string. In these scenarios, you need to first _resolve_ the output, _then_ build the JSON string: +Often in the course of working with web technologies, you encounter JavaScript Object Notation (JSON) which is a popular specification for representing data. In many scenarios, you'll need to embed resource outputs into a JSON string. In these scenarios, you need to first _wait for the returned_ output, _then_ build the JSON string: {{< chooser language "typescript,python,go,csharp" >}} {{% choosable language typescript %}} @@ -1590,7 +1590,7 @@ When working with outputs and apply, you may see an error message like so: Calling __str__ on an Output[T] is not supported. To get the value of an Output[T] as an Output[str] consider: 1. o.apply(lambda v: f"prefix{v}suffix") See https://pulumi.io/help/outputs for more details. ``` -The reason this is happening is because the _Output_ value is being used before it has been resolved by from the API. +The reason this is happening is because the _Output_ value is being used before it has returned ans is available from the API. A concrete example of this can be seen in the following code: @@ -1740,13 +1740,13 @@ var bucket = new Bucket("content-bucket", new BucketArgs {{< /chooser >}} -Notice how the `apply` call is being used inside the JSON string. In this scenario, the `apply` call is happening during the build of the JSON string, which is too early in the Pulumi lifecycle. The value of the bucket ARN has not yet been resolved from the cloud provider API, so the JSON string cannot be built yet. +Notice how the `apply` call is being used inside the JSON string. In this scenario, the `apply` call is happening during the build of the JSON string, which is too early in the Pulumi lifecycle. The value of the bucket ARN has not yet been returned from the cloud provider API, so the JSON string cannot be built yet. -The correct way of handling this scenario is to resolve the bucket ARN, _then_ build the JSON string. You can see an example of this in the (#outputs-and-json) section. +The correct way of handling this scenario is to wait for the bucket ARN to return, _then_ build the JSON string. You can see an example of this in the (#outputs-and-json) section. Notice in that example how the JSON string is being built _inside_ the `apply` call to Pulumi. In logical order, this happens as: -- Resolve the bucket ARN from the cloud provider +- Wait for the the bucket ARN to be returned from the cloud provider - Then, build the JSON string with the "plain" value. ### Resource Names @@ -1832,3 +1832,11 @@ If you really wish to pass an output from one resource as the resource name of a {{% notes %}} This will lead to previews being inaccurate. Resources created inside an apply will only appear in the Pulumi output after an `up` operation is run, and is therefore strongly discouraged. {{% /notes %}} + +### JavaScript Promises + +If you're familiar with JavaScript, you might already be familiar with the mechanism of [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise). + +Pulumi Output values are similar in some ways to JavaScript Promises, in that they are values that are not necessarily known until a future event. With that in mind, it can be tempting to try and use `Promise.resolve()` and to think of Outputs like Promises. + +However, Pulumi Outputs do not behave in the same way as JavaScript Promises. As such, it's not possible to block execution of a Pulumi program until a promise is resolved and you should not use JavaScript Promise mechanisms to handle Pulumi Outputs. \ No newline at end of file From 0a21d4a5fb6cacef632f6258421063a59a69d3e6 Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Fri, 9 Jun 2023 14:45:07 -0700 Subject: [PATCH 11/20] add newline --- themes/default/content/docs/concepts/inputs-outputs/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index 5f10f07f308..958206096c8 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -1839,4 +1839,4 @@ If you're familiar with JavaScript, you might already be familiar with the mecha Pulumi Output values are similar in some ways to JavaScript Promises, in that they are values that are not necessarily known until a future event. With that in mind, it can be tempting to try and use `Promise.resolve()` and to think of Outputs like Promises. -However, Pulumi Outputs do not behave in the same way as JavaScript Promises. As such, it's not possible to block execution of a Pulumi program until a promise is resolved and you should not use JavaScript Promise mechanisms to handle Pulumi Outputs. \ No newline at end of file +However, Pulumi Outputs do not behave in the same way as JavaScript Promises. As such, it's not possible to block execution of a Pulumi program until a promise is resolved and you should not use JavaScript Promise mechanisms to handle Pulumi Outputs. From f53c73ac7bdce6a0134a7b035d5416787c71735a Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Sun, 11 Jun 2023 09:39:18 -0700 Subject: [PATCH 12/20] fill in some todos --- .../docs/concepts/inputs-outputs/_index.md | 38 ++++++++++++++++--- 1 file changed, 33 insertions(+), 5 deletions(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index 958206096c8..a6b79cd6b73 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -22,7 +22,9 @@ All resources in Pulumi accept values that describe the way the resource behaves {{% choosable language javascript %}} ```javascript -// TODO +const myId = new random.RandomId("mine", { + byteLength: 8, // byteLength is an input +}); ``` {{% /choosable %}} @@ -78,6 +80,18 @@ var myId = new RandomId("mine", RandomIdArgs.builder() ``` +{{% /choosable %}} + +{{% choosable language yaml %}} + +```yaml +resources: + myId: + type: random:randomId + properties: + byteLength: 8 // byteLenght is an input +``` + {{% /choosable %}} {{< /chooser >}} @@ -144,7 +158,10 @@ var key = new PrivateKey("my-private-key", new PrivateKeyArgs{ {{% choosable language java %}} ```java -// TODO +var key = new PrivateKey("my-private-key", PrivateKeyArgs.builder() + .algorithm("ECDSA") // ECDSA is a plain value + .build() +) ``` {{% /choosable %}} @@ -163,14 +180,24 @@ However, in most Pulumi programs, the inputs to a resource will reference values {{% choosable language javascript %}} ```javascript -// TODO +let password = new random.RandomPassword("password", { + length: 16, + special: true, + overrideSpecial: "!#$%&*()-_=+[]{}<>:?", +}); +let example = new aws.rds.Instance("example", { + instanceClass: "db.t3.micro", + allocatedStorage: 64, + engine: "mysql", + username: "someone", + password: password.result, // We pass the output from password as an input +}); ``` {{% /choosable %}} {{% choosable language typescript %}} ```typescript - const password = new random.RandomPassword("password", { length: 16, special: true, @@ -299,7 +326,8 @@ This example will wait for the value to be returned from the API and print it to {{% choosable language javascript %}} ```javascript -// TODO +let myPet = new random.RandomPet("my-pet") +myPet.id.apply(id => console.log(`Hello, {id}!`)) ``` {{% /choosable %}} From 9d94d0d0b43cfce00ba2a0e41a9d085654adbf25 Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Thu, 15 Jun 2023 10:28:20 -0700 Subject: [PATCH 13/20] add csharp and javascript missing examples --- .../docs/concepts/inputs-outputs/_index.md | 67 +++++++++++++++++-- 1 file changed, 60 insertions(+), 7 deletions(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index a6b79cd6b73..82913d4fe89 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -366,14 +366,14 @@ myPet.ID().ApplyT(func(id string) error { ```csharp var myPet = new Pulumi.Random.RandomPet("my-pet", new(){}); - myPet.Id.Apply(id => { Console.WriteLine($"Hello, {id}!"); return id; }); +myPet.Id.Apply(id => { Console.WriteLine($"Hello, {id}!"); return id; }); ``` {{% /choosable %}} {{% choosable language java %}} ```java -// TODO +final ``` {{% /choosable %}} @@ -1622,12 +1622,41 @@ The reason this is happening is because the _Output_ value is being used before A concrete example of this can be seen in the following code: +{{% notes %}} +The following code is an example of what NOT to do. Please do not copy this code into your Pulumi program +{{% /notes %}} + {{< chooser language "javascript,typescript,python,go,csharp,java" >}} {{% choosable language javascript %}} - ```javascript -// TODO +// NOTE: This example is not correct +let contentBucket = new aws.s3.Bucket("content-bucket", { + acl: "private", + website: { + indexDocument: "index.html", + errorDocument: "index.html", + }, + forceDestroy: true, +}); + +let bucketPolicy = new aws.s3.BucketPolicy("cloudfront-bucket-policy", { + bucket: contentBucket.bucket, + policy: JSON.stringify({ + Version: "2012-10-17", + Statement: [ + { + Sid: "CloudfrontAllow", + Effect: "Allow", + Principal: { + AWS: iamArn, + }, + Action: "s3:GetObject", + Resource: bucket.arn.apply(arn => arn), + }, + ], + }) +}); ``` {{% /choosable %}} @@ -1660,7 +1689,6 @@ const bucketPolicy = new aws.s3.BucketPolicy("cloudfront-bucket-policy", { }, ], }) - ), }); ``` @@ -1754,7 +1782,28 @@ var bucket = new Bucket("content-bucket", new BucketArgs }, }); -// TODO incorrect bucket policy build + var bucketPolicy = new BucketPolicy("cloudfront-bucket-policy", new BucketPolicyArgs + { + Bucket = bucket.Id, + Policy = JsonSerializer.Serialize(new + { + Version = "2012-10-17", + Statement = new[] + { + new + { + Sid = "CloudfrontAllow", + Effect = "Allow", + Principal = new + { + AWS = "*" + }, + Action = "s3:GetObject", + Resource = bucket.Arn.Apply(arn => $"{arn}/*"), + } + } + }) + }); ``` {{% /choosable %}} @@ -1840,7 +1889,11 @@ if err != nil { ```csharp var bucket = new Bucket("my-bucket", new BucketArgs{}); -// TODO incorrect bucket policy build +var bucketPolicy = new Bucket(bucket.Name, new BucketPolicyArgs +{ + Bucket = bucket.Id, + // rest of the bucket arguments go here +}) ``` {{% /choosable %}} From 63d4d8de9cb0e85b3acc4d697181a11239453585 Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Thu, 15 Jun 2023 11:36:28 -0700 Subject: [PATCH 14/20] add java examples --- .../docs/concepts/inputs-outputs/_index.md | 52 ++++++++++++++++--- 1 file changed, 44 insertions(+), 8 deletions(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index 82913d4fe89..2f2c19fbf95 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -373,7 +373,13 @@ myPet.Id.Apply(id => { Console.WriteLine($"Hello, {id}!"); return id; }); {{% choosable language java %}} ```java -final +var myId = new RandomPet("my-pet", RandomPetArgs.builder() + .build()); + +myId.id().applyValue(i -> { + System.out.println("Hello," + i + "!"); + return null; +}); ``` {{% /choosable %}} @@ -1772,6 +1778,7 @@ if err != nil { {{% choosable language csharp %}} ```csharp +// NOTE: this example is not correct var bucket = new Bucket("content-bucket", new BucketArgs { Acl = "private", @@ -1810,7 +1817,29 @@ var bucket = new Bucket("content-bucket", new BucketArgs {{% choosable language java %}} ```java -// TODO +// NOTE: this example is not correct +var bucket = new Bucket("my-bucket", BucketArgs.builder() + .acl("private") + .website(BucketWebsiteArgs.builder() + .indexDocument("index.html") + .errorDocument("404.html") + .build()) + .build()); + +var policy = new JSONObject(); + policy.put("Version", "2012-10-17"); + policy.put("Statement", new JSONArray(new JSONObject[] { + new JSONObject() + .put("Effect", "Allow") + .put("Principal", "*") + .put("Action", "s3:GetObject") + .put("Resource", bucket.apply.arn(arn -> arn) + "/*") + })); + + var bucketPolicy = new BucketPolicy("cloudfront-bucket-policy", BucketPolicyArgs.builder() + .bucket(bucket.id()) + .policy(policy) + .build()); ``` {{% /choosable %}} @@ -1835,7 +1864,11 @@ When creating multiple resources, it can be tempting to use the output of one re {{% choosable language javascript %}} ```javascript +const bucket = new aws.s3.Bucket("my-bucket", {}); +const bucketPolicy = new aws.s3.BucketPolicy(bucket.name, { + // rest of bucket policy arguments go here +}); ``` {{% /choosable %}} @@ -1846,7 +1879,7 @@ When creating multiple resources, it can be tempting to use the output of one re const bucket = new aws.s3.Bucket("my-bucket", {}); const bucketPolicy = new aws.s3.BucketPolicy(bucket.name, { - // rest of bucket arguments go here + // rest of bucket policy arguments go here }); ``` @@ -1859,7 +1892,7 @@ bucket = aws.s3.Bucket("my-bucket",) bucket_policy = aws.s3.BucketPolicy( bucket.name, - # rest of bucket arguments go here + # rest of bucket policy arguments go here ) ``` @@ -1876,7 +1909,7 @@ if err != nil { _, err = s3.NewBucketPolicy(ctx, bucket.Name, &s3.BucketPolicyArgs{ Bucket: bucket.ID(), - // rest of bucket arguments go here + // rest of bucket policy arguments go here }) if err != nil { return err @@ -1889,10 +1922,10 @@ if err != nil { ```csharp var bucket = new Bucket("my-bucket", new BucketArgs{}); -var bucketPolicy = new Bucket(bucket.Name, new BucketPolicyArgs +var bucketPolicy = new BucketPolicy(bucket.Name, new BucketPolicyArgs { Bucket = bucket.Id, - // rest of the bucket arguments go here + // rest of the bucket policy arguments go here }) ``` @@ -1900,7 +1933,10 @@ var bucketPolicy = new Bucket(bucket.Name, new BucketPolicyArgs {{% choosable language java %}} ```java -// TODO +var bucket = new Bucket("my-bucket") +var bucketPolicy = new BucketPolicy(bucket.bucket(), + BucketPolicyArgs.builder() + // the rest of the bucket policy arguments go here); ``` {{% /choosable %}} From 15c0415de63a572b27052c9b94d9c70840ad34d0 Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Thu, 15 Jun 2023 11:39:56 -0700 Subject: [PATCH 15/20] add blank line --- themes/default/content/docs/concepts/inputs-outputs/_index.md | 1 + 1 file changed, 1 insertion(+) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index 2f2c19fbf95..c3c1df119d6 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -1635,6 +1635,7 @@ The following code is an example of what NOT to do. Please do not copy this code {{< chooser language "javascript,typescript,python,go,csharp,java" >}} {{% choosable language javascript %}} + ```javascript // NOTE: This example is not correct let contentBucket = new aws.s3.Bucket("content-bucket", { From a388d4b5ad2917664a2d3a6a759c6783649340cc Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Thu, 15 Jun 2023 11:40:12 -0700 Subject: [PATCH 16/20] add newline --- themes/default/content/docs/concepts/inputs-outputs/_index.md | 1 + 1 file changed, 1 insertion(+) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index c3c1df119d6..bd8a10066b0 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -1958,3 +1958,4 @@ If you're familiar with JavaScript, you might already be familiar with the mecha Pulumi Output values are similar in some ways to JavaScript Promises, in that they are values that are not necessarily known until a future event. With that in mind, it can be tempting to try and use `Promise.resolve()` and to think of Outputs like Promises. However, Pulumi Outputs do not behave in the same way as JavaScript Promises. As such, it's not possible to block execution of a Pulumi program until a promise is resolved and you should not use JavaScript Promise mechanisms to handle Pulumi Outputs. + From 0c19e5c269d22f2fbc4d30e60db0635bdb1b54c2 Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Thu, 15 Jun 2023 11:42:42 -0700 Subject: [PATCH 17/20] only a single blank line --- themes/default/content/docs/concepts/inputs-outputs/_index.md | 1 - 1 file changed, 1 deletion(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index bd8a10066b0..c3c1df119d6 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -1958,4 +1958,3 @@ If you're familiar with JavaScript, you might already be familiar with the mecha Pulumi Output values are similar in some ways to JavaScript Promises, in that they are values that are not necessarily known until a future event. With that in mind, it can be tempting to try and use `Promise.resolve()` and to think of Outputs like Promises. However, Pulumi Outputs do not behave in the same way as JavaScript Promises. As such, it's not possible to block execution of a Pulumi program until a promise is resolved and you should not use JavaScript Promise mechanisms to handle Pulumi Outputs. - From f7df27a5fdfffb80b012a7dcfa69f6d47575cd6b Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Thu, 15 Jun 2023 11:44:20 -0700 Subject: [PATCH 18/20] remove trailing space --- .../docs/concepts/inputs-outputs/_index.md | 2 +- yarn.lock | 174 +++++++++--------- 2 files changed, 90 insertions(+), 86 deletions(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index c3c1df119d6..b704a0dda60 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -1935,7 +1935,7 @@ var bucketPolicy = new BucketPolicy(bucket.Name, new BucketPolicyArgs ```java var bucket = new Bucket("my-bucket") -var bucketPolicy = new BucketPolicy(bucket.bucket(), +var bucketPolicy = new BucketPolicy(bucket.bucket(), BucketPolicyArgs.builder() // the rest of the bucket policy arguments go here); ``` diff --git a/yarn.lock b/yarn.lock index ded1aeda63e..00b7aa3101a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -30,7 +30,7 @@ aggregate-error@^3.0.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + resolved "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz" integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== dependencies: clean-stack "^2.0.0" @@ -38,7 +38,7 @@ aggregate-error@^3.0.0: ansi-escapes@^4.3.0: version "4.3.2" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz" integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== dependencies: type-fest "^0.21.3" @@ -50,7 +50,7 @@ ansi-regex@^5.0.0: ansi-regex@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz" integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== ansi-styles@^3.2.1: @@ -69,7 +69,7 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: ansi-styles@^6.0.0: version "6.1.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.1.1.tgz#63cd61c72283a71cb30bd881dbb60adada74bc70" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.1.1.tgz" integrity sha512-qDOv24WjnYuL+wbwHdlsYZFy+cgPtrYw0Tn7GLORicQp9BkQLzrgI3Pm4VyR9ERZ41YTn7KlMPuL1n05WdZvmg== anymatch@~3.1.2: @@ -89,7 +89,7 @@ argparse@^1.0.7: astral-regex@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" + resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== binary-extensions@^2.0.0: @@ -138,19 +138,19 @@ chalk@^4.1.0: clean-stack@^2.0.0: version "2.2.0" - resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + resolved "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== cli-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" + resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz" integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== dependencies: restore-cursor "^3.1.0" cli-truncate@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" + resolved "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz" integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== dependencies: slice-ansi "^3.0.0" @@ -158,7 +158,7 @@ cli-truncate@^2.1.0: cli-truncate@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-3.1.0.tgz#3f23ab12535e3d73e839bb43e73c9de487db1389" + resolved "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz" integrity sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA== dependencies: slice-ansi "^5.0.0" @@ -187,24 +187,24 @@ color-convert@^2.0.1: dependencies: color-name "~1.1.4" -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= - color-name@~1.1.4: version "1.1.4" resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + colorette@^2.0.16, colorette@^2.0.17: version "2.0.19" - resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798" + resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz" integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== commander@^9.3.0: version "9.4.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-9.4.0.tgz#bc4a40918fefe52e22450c111ecd6b7acce6f11c" + resolved "https://registry.npmjs.org/commander/-/commander-9.4.0.tgz" integrity sha512-sRPT+umqkz90UA8M1yqYfnHlZA7fF6nSphDtxeywPZ49ysjxDQybzk13CL+mXekDRG92skbcqCLVovuCusNmFw== concurrently@^6.0.0: @@ -224,7 +224,7 @@ concurrently@^6.0.0: cross-spawn@^7.0.3: version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== dependencies: path-key "^3.1.0" @@ -238,14 +238,14 @@ date-fns@^2.16.1: debug@^4.3.4: version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: ms "2.1.2" eastasianwidth@^0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" + resolved "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz" integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== emoji-regex@^8.0.0: @@ -255,7 +255,7 @@ emoji-regex@^8.0.0: emoji-regex@^9.2.2: version "9.2.2" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz" integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== entities@~2.0.0: @@ -278,7 +278,7 @@ escalade@^3.1.1: escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== esprima@^4.0.0: version "4.0.1" @@ -287,7 +287,7 @@ esprima@^4.0.0: execa@^6.1.0: version "6.1.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-6.1.0.tgz#cea16dee211ff011246556388effa0818394fb20" + resolved "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz" integrity sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA== dependencies: cross-spawn "^7.0.3" @@ -324,7 +324,7 @@ get-caller-file@^2.0.5: get-stream@^6.0.1: version "6.0.1" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== glob-parent@~5.1.2: @@ -337,7 +337,7 @@ glob-parent@~5.1.2: has-flag@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== has-flag@^4.0.0: version "4.0.0" @@ -358,23 +358,23 @@ hosted-git-info@^2.1.4: human-signals@^3.0.1: version "3.0.1" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-3.0.1.tgz#c740920859dafa50e5a3222da9d3bf4bb0e5eef5" + resolved "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz" integrity sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ== husky@^8.0.1: version "8.0.1" - resolved "https://registry.yarnpkg.com/husky/-/husky-8.0.1.tgz#511cb3e57de3e3190514ae49ed50f6bc3f50b3e9" + resolved "https://registry.npmjs.org/husky/-/husky-8.0.1.tgz" integrity sha512-xs7/chUH/CKdOCs7Zy0Aev9e/dKOMZf3K1Az1nar3tzlv0jfqnYtu235bstsWTmXOR0EfINrPa97yy4Lz6RiKw== indent-string@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" + resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== is-binary-path@~2.1.0: version "2.1.0" @@ -393,7 +393,7 @@ is-core-module@^2.2.0: is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== is-fullwidth-code-point@^3.0.0: version "3.0.0" @@ -402,7 +402,7 @@ is-fullwidth-code-point@^3.0.0: is-fullwidth-code-point@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz#fae3167c729e7463f8461ce512b080a49268aa88" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz" integrity sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ== is-glob@^4.0.1, is-glob@~4.0.1: @@ -419,12 +419,12 @@ is-number@^7.0.0: is-stream@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-3.0.0.tgz#e6bfd7aa6bef69f4f472ce9bb681e3e57b4319ac" + resolved "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz" integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA== isexe@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== js-tokens@^4.0.0: @@ -447,13 +447,13 @@ json-parse-even-better-errors@^2.3.0: lilconfig@2.0.5: version "2.0.5" - resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.5.tgz#19e57fd06ccc3848fd1891655b5a447092225b25" + resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.5.tgz" integrity sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg== lines-and-columns@^1.1.6: version "1.1.6" resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz" - integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= + integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= sha512-8ZmlJFVK9iCmtLz19HpSsR8HaAMWBT284VMNednLwlIMDP2hJDCIhUp0IZ2xUcZ+Ob6BM0VvCSJwzASDM45NLQ== linkify-it@^2.0.0: version "2.2.0" @@ -464,7 +464,7 @@ linkify-it@^2.0.0: lint-staged@^13.0.3: version "13.0.3" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-13.0.3.tgz#d7cdf03a3830b327a2b63c6aec953d71d9dc48c6" + resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-13.0.3.tgz" integrity sha512-9hmrwSCFroTSYLjflGI8Uk+GWAwMB4OlpU4bMJEAT5d/llQwtYKoim4bLOyLCuWFAhWEupE0vkIFqtw/WIsPug== dependencies: cli-truncate "^3.1.0" @@ -483,7 +483,7 @@ lint-staged@^13.0.3: listr2@^4.0.5: version "4.0.5" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-4.0.5.tgz#9dcc50221583e8b4c71c43f9c7dfd0ef546b75d5" + resolved "https://registry.npmjs.org/listr2/-/listr2-4.0.5.tgz" integrity sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA== dependencies: cli-truncate "^2.1.0" @@ -502,7 +502,7 @@ lodash@^4.17.20: log-update@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/log-update/-/log-update-4.0.0.tgz#589ecd352471f2a1c0c570287543a64dfd20e0a1" + resolved "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz" integrity sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg== dependencies: ansi-escapes "^4.3.0" @@ -531,16 +531,16 @@ markdownlint@^0.17.2: mdurl@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz" - integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= + integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g== merge-stream@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== micromatch@^4.0.5: version "4.0.5" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz" integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== dependencies: braces "^3.0.2" @@ -548,17 +548,17 @@ micromatch@^4.0.5: mimic-fn@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== mimic-fn@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc" + resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz" integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw== ms@2.1.2: version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== normalize-package-data@^2.5.0: @@ -578,33 +578,33 @@ normalize-path@^3.0.0, normalize-path@~3.0.0: npm-run-path@^5.1.0: version "5.1.0" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.1.0.tgz#bc62f7f3f6952d9894bd08944ba011a6ee7b7e00" + resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz" integrity sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q== dependencies: path-key "^4.0.0" object-inspect@^1.12.2: version "1.12.2" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea" + resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz" integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ== onetime@^5.1.0: version "5.1.2" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" onetime@^6.0.0: version "6.0.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-6.0.0.tgz#7c24c18ed1fd2e9bca4bd26806a33613c77d34b4" + resolved "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz" integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ== dependencies: mimic-fn "^4.0.0" p-map@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz" integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== dependencies: aggregate-error "^3.0.0" @@ -621,12 +621,12 @@ parse-json@^5.0.0: path-key@^3.1.0: version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== path-key@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18" + resolved "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz" integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== path-parse@^1.0.6: @@ -634,31 +634,26 @@ path-parse@^1.0.6: resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== -picomatch@^2.0.4, picomatch@^2.2.1: - version "2.3.0" - resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz" - integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw== - -picomatch@^2.3.1: +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== pidtree@^0.6.0: version "0.6.0" - resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c" + resolved "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz" integrity sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g== prettier-plugin-go-template@^0.0.13: version "0.0.13" - resolved "https://registry.yarnpkg.com/prettier-plugin-go-template/-/prettier-plugin-go-template-0.0.13.tgz#b4047bce76430bc89a8ee8f27fad1b1c14d942be" + resolved "https://registry.npmjs.org/prettier-plugin-go-template/-/prettier-plugin-go-template-0.0.13.tgz" integrity sha512-gG/xT5kd+kCzoMaTchXvdfBdsunyRCV6G8cgdPGPd2V5JGGKXUG7SjzBKU7jaGh2RTeblcAdBb/E+S/duOAMsA== dependencies: ulid "^2.3.0" -prettier@^2.6.2: +prettier@^2.0.0, prettier@^2.6.2: version "2.6.2" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.6.2.tgz#e26d71a18a74c3d0f0597f55f01fb6c06c206032" + resolved "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz" integrity sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew== read-pkg@^5.2.0: @@ -681,7 +676,7 @@ readdirp@~3.6.0: require-directory@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= + integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== resolve@^1.10.0: version "1.20.0" @@ -693,7 +688,7 @@ resolve@^1.10.0: restore-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" + resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz" integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== dependencies: onetime "^5.1.0" @@ -701,7 +696,7 @@ restore-cursor@^3.1.0: rfdc@^1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b" + resolved "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz" integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA== rxjs@^6.6.3: @@ -713,7 +708,7 @@ rxjs@^6.6.3: rxjs@^7.5.5: version "7.5.6" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.6.tgz#0446577557862afd6903517ce7cae79ecb9662bc" + resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.5.6.tgz" integrity sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw== dependencies: tslib "^2.1.0" @@ -732,24 +727,24 @@ sass@^1.39.2: shebang-command@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: shebang-regex "^3.0.0" shebang-regex@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== signal-exit@^3.0.2, signal-exit@^3.0.7: version "3.0.7" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== slice-ansi@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz#31ddc10930a1b7e0b67b08c96c2f49b77a789787" + resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz" integrity sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ== dependencies: ansi-styles "^4.0.0" @@ -758,7 +753,7 @@ slice-ansi@^3.0.0: slice-ansi@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" + resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz" integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== dependencies: ansi-styles "^4.0.0" @@ -767,7 +762,7 @@ slice-ansi@^4.0.0: slice-ansi@^5.0.0: version "5.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-5.0.0.tgz#b73063c57aa96f9cd881654b15294d95d285c42a" + resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz" integrity sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ== dependencies: ansi-styles "^6.0.0" @@ -776,7 +771,7 @@ slice-ansi@^5.0.0: spawn-command@^0.0.2-1: version "0.0.2-1" resolved "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz" - integrity sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A= + integrity sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A= sha512-n98l9E2RMSJ9ON1AKisHzz7V42VDiBQGY6PB1BwRglz99wpVsSuGzQ+jOi6lFXBGVTCrRpltvjm+/XA+tpeJrg== spdx-correct@^3.0.0: version "3.1.1" @@ -807,14 +802,23 @@ spdx-license-ids@^3.0.0: sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== string-argv@^0.3.1: version "0.3.1" - resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da" + resolved "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz" integrity sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg== -string-width@^4.1.0, string-width@^4.2.0: +string-width@^4.1.0: + version "4.2.2" + resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz" + integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.0" + +string-width@^4.2.0: version "4.2.2" resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz" integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== @@ -825,7 +829,7 @@ string-width@^4.1.0, string-width@^4.2.0: string-width@^5.0.0: version "5.1.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + resolved "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz" integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== dependencies: eastasianwidth "^0.2.0" @@ -841,14 +845,14 @@ strip-ansi@^6.0.0: strip-ansi@^7.0.1: version "7.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.0.1.tgz#61740a08ce36b61e50e65653f07060d000975fb2" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz" integrity sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw== dependencies: ansi-regex "^6.0.1" strip-final-newline@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd" + resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz" integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== supports-color@^5.3.0: @@ -874,7 +878,7 @@ supports-color@^8.1.0: through@^2.3.8: version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz" integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== to-regex-range@^5.0.1: @@ -896,12 +900,12 @@ tslib@^1.9.0: tslib@^2.1.0: version "2.4.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz" integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== type-fest@^0.21.3: version "0.21.3" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== type-fest@^0.6.0: @@ -916,7 +920,7 @@ uc.micro@^1.0.1, uc.micro@^1.0.5: ulid@^2.3.0: version "2.3.0" - resolved "https://registry.yarnpkg.com/ulid/-/ulid-2.3.0.tgz#93063522771a9774121a84d126ecd3eb9804071f" + resolved "https://registry.npmjs.org/ulid/-/ulid-2.3.0.tgz" integrity sha512-keqHubrlpvT6G2wH0OEfSW4mquYRcbe/J8NMmveoQOjUqmo+hXtO+ORCpWhdbZ7k72UtY61BL7haGxW6enBnjw== validate-npm-package-license@^3.0.1: @@ -929,14 +933,14 @@ validate-npm-package-license@^3.0.1: which@^2.0.1: version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" wrap-ansi@^6.2.0: version "6.2.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz" integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== dependencies: ansi-styles "^4.0.0" @@ -959,7 +963,7 @@ y18n@^5.0.5: yaml@^2.1.1: version "2.2.2" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.2.2.tgz#ec551ef37326e6d42872dad1970300f8eb83a073" + resolved "https://registry.npmjs.org/yaml/-/yaml-2.2.2.tgz" integrity sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA== yargs-parser@^20.2.2: From 2b1379b1df0d88794b665b1c6b17850445e0e00c Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Thu, 15 Jun 2023 11:48:09 -0700 Subject: [PATCH 19/20] revert changes to yarn.lock --- yarn.lock | 174 ++++++++++++++++++++++++++---------------------------- 1 file changed, 85 insertions(+), 89 deletions(-) diff --git a/yarn.lock b/yarn.lock index 00b7aa3101a..ded1aeda63e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -30,7 +30,7 @@ aggregate-error@^3.0.0: version "3.1.0" - resolved "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== dependencies: clean-stack "^2.0.0" @@ -38,7 +38,7 @@ aggregate-error@^3.0.0: ansi-escapes@^4.3.0: version "4.3.2" - resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== dependencies: type-fest "^0.21.3" @@ -50,7 +50,7 @@ ansi-regex@^5.0.0: ansi-regex@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== ansi-styles@^3.2.1: @@ -69,7 +69,7 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: ansi-styles@^6.0.0: version "6.1.1" - resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.1.1.tgz" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.1.1.tgz#63cd61c72283a71cb30bd881dbb60adada74bc70" integrity sha512-qDOv24WjnYuL+wbwHdlsYZFy+cgPtrYw0Tn7GLORicQp9BkQLzrgI3Pm4VyR9ERZ41YTn7KlMPuL1n05WdZvmg== anymatch@~3.1.2: @@ -89,7 +89,7 @@ argparse@^1.0.7: astral-regex@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== binary-extensions@^2.0.0: @@ -138,19 +138,19 @@ chalk@^4.1.0: clean-stack@^2.0.0: version "2.2.0" - resolved "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== cli-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== dependencies: restore-cursor "^3.1.0" cli-truncate@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== dependencies: slice-ansi "^3.0.0" @@ -158,7 +158,7 @@ cli-truncate@^2.1.0: cli-truncate@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-3.1.0.tgz#3f23ab12535e3d73e839bb43e73c9de487db1389" integrity sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA== dependencies: slice-ansi "^5.0.0" @@ -187,24 +187,24 @@ color-convert@^2.0.1: dependencies: color-name "~1.1.4" +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + color-name@~1.1.4: version "1.1.4" resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== - colorette@^2.0.16, colorette@^2.0.17: version "2.0.19" - resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798" integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== commander@^9.3.0: version "9.4.0" - resolved "https://registry.npmjs.org/commander/-/commander-9.4.0.tgz" + resolved "https://registry.yarnpkg.com/commander/-/commander-9.4.0.tgz#bc4a40918fefe52e22450c111ecd6b7acce6f11c" integrity sha512-sRPT+umqkz90UA8M1yqYfnHlZA7fF6nSphDtxeywPZ49ysjxDQybzk13CL+mXekDRG92skbcqCLVovuCusNmFw== concurrently@^6.0.0: @@ -224,7 +224,7 @@ concurrently@^6.0.0: cross-spawn@^7.0.3: version "7.0.3" - resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== dependencies: path-key "^3.1.0" @@ -238,14 +238,14 @@ date-fns@^2.16.1: debug@^4.3.4: version "4.3.4" - resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: ms "2.1.2" eastasianwidth@^0.2.0: version "0.2.0" - resolved "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== emoji-regex@^8.0.0: @@ -255,7 +255,7 @@ emoji-regex@^8.0.0: emoji-regex@^9.2.2: version "9.2.2" - resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== entities@~2.0.0: @@ -278,7 +278,7 @@ escalade@^3.1.1: escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= esprima@^4.0.0: version "4.0.1" @@ -287,7 +287,7 @@ esprima@^4.0.0: execa@^6.1.0: version "6.1.0" - resolved "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz" + resolved "https://registry.yarnpkg.com/execa/-/execa-6.1.0.tgz#cea16dee211ff011246556388effa0818394fb20" integrity sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA== dependencies: cross-spawn "^7.0.3" @@ -324,7 +324,7 @@ get-caller-file@^2.0.5: get-stream@^6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== glob-parent@~5.1.2: @@ -337,7 +337,7 @@ glob-parent@~5.1.2: has-flag@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= has-flag@^4.0.0: version "4.0.0" @@ -358,23 +358,23 @@ hosted-git-info@^2.1.4: human-signals@^3.0.1: version "3.0.1" - resolved "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-3.0.1.tgz#c740920859dafa50e5a3222da9d3bf4bb0e5eef5" integrity sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ== husky@^8.0.1: version "8.0.1" - resolved "https://registry.npmjs.org/husky/-/husky-8.0.1.tgz" + resolved "https://registry.yarnpkg.com/husky/-/husky-8.0.1.tgz#511cb3e57de3e3190514ae49ed50f6bc3f50b3e9" integrity sha512-xs7/chUH/CKdOCs7Zy0Aev9e/dKOMZf3K1Az1nar3tzlv0jfqnYtu235bstsWTmXOR0EfINrPa97yy4Lz6RiKw== indent-string@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== + integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= is-binary-path@~2.1.0: version "2.1.0" @@ -393,7 +393,7 @@ is-core-module@^2.2.0: is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= is-fullwidth-code-point@^3.0.0: version "3.0.0" @@ -402,7 +402,7 @@ is-fullwidth-code-point@^3.0.0: is-fullwidth-code-point@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz#fae3167c729e7463f8461ce512b080a49268aa88" integrity sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ== is-glob@^4.0.1, is-glob@~4.0.1: @@ -419,12 +419,12 @@ is-number@^7.0.0: is-stream@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-3.0.0.tgz#e6bfd7aa6bef69f4f472ce9bb681e3e57b4319ac" integrity sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA== isexe@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== js-tokens@^4.0.0: @@ -447,13 +447,13 @@ json-parse-even-better-errors@^2.3.0: lilconfig@2.0.5: version "2.0.5" - resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.5.tgz" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.5.tgz#19e57fd06ccc3848fd1891655b5a447092225b25" integrity sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg== lines-and-columns@^1.1.6: version "1.1.6" resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz" - integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= sha512-8ZmlJFVK9iCmtLz19HpSsR8HaAMWBT284VMNednLwlIMDP2hJDCIhUp0IZ2xUcZ+Ob6BM0VvCSJwzASDM45NLQ== + integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= linkify-it@^2.0.0: version "2.2.0" @@ -464,7 +464,7 @@ linkify-it@^2.0.0: lint-staged@^13.0.3: version "13.0.3" - resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-13.0.3.tgz" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-13.0.3.tgz#d7cdf03a3830b327a2b63c6aec953d71d9dc48c6" integrity sha512-9hmrwSCFroTSYLjflGI8Uk+GWAwMB4OlpU4bMJEAT5d/llQwtYKoim4bLOyLCuWFAhWEupE0vkIFqtw/WIsPug== dependencies: cli-truncate "^3.1.0" @@ -483,7 +483,7 @@ lint-staged@^13.0.3: listr2@^4.0.5: version "4.0.5" - resolved "https://registry.npmjs.org/listr2/-/listr2-4.0.5.tgz" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-4.0.5.tgz#9dcc50221583e8b4c71c43f9c7dfd0ef546b75d5" integrity sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA== dependencies: cli-truncate "^2.1.0" @@ -502,7 +502,7 @@ lodash@^4.17.20: log-update@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/log-update/-/log-update-4.0.0.tgz#589ecd352471f2a1c0c570287543a64dfd20e0a1" integrity sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg== dependencies: ansi-escapes "^4.3.0" @@ -531,16 +531,16 @@ markdownlint@^0.17.2: mdurl@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz" - integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g== + integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= merge-stream@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== micromatch@^4.0.5: version "4.0.5" - resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== dependencies: braces "^3.0.2" @@ -548,17 +548,17 @@ micromatch@^4.0.5: mimic-fn@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== mimic-fn@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-4.0.0.tgz#60a90550d5cb0b239cca65d893b1a53b29871ecc" integrity sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw== ms@2.1.2: version "2.1.2" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== normalize-package-data@^2.5.0: @@ -578,33 +578,33 @@ normalize-path@^3.0.0, normalize-path@~3.0.0: npm-run-path@^5.1.0: version "5.1.0" - resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-5.1.0.tgz#bc62f7f3f6952d9894bd08944ba011a6ee7b7e00" integrity sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q== dependencies: path-key "^4.0.0" object-inspect@^1.12.2: version "1.12.2" - resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea" integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ== onetime@^5.1.0: version "5.1.2" - resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" onetime@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-6.0.0.tgz#7c24c18ed1fd2e9bca4bd26806a33613c77d34b4" integrity sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ== dependencies: mimic-fn "^4.0.0" p-map@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== dependencies: aggregate-error "^3.0.0" @@ -621,12 +621,12 @@ parse-json@^5.0.0: path-key@^3.1.0: version "3.1.1" - resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== path-key@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-4.0.0.tgz#295588dc3aee64154f877adb9d780b81c554bf18" integrity sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== path-parse@^1.0.6: @@ -634,26 +634,31 @@ path-parse@^1.0.6: resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: +picomatch@^2.0.4, picomatch@^2.2.1: + version "2.3.0" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz" + integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw== + +picomatch@^2.3.1: version "2.3.1" - resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== pidtree@^0.6.0: version "0.6.0" - resolved "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz" + resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c" integrity sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g== prettier-plugin-go-template@^0.0.13: version "0.0.13" - resolved "https://registry.npmjs.org/prettier-plugin-go-template/-/prettier-plugin-go-template-0.0.13.tgz" + resolved "https://registry.yarnpkg.com/prettier-plugin-go-template/-/prettier-plugin-go-template-0.0.13.tgz#b4047bce76430bc89a8ee8f27fad1b1c14d942be" integrity sha512-gG/xT5kd+kCzoMaTchXvdfBdsunyRCV6G8cgdPGPd2V5JGGKXUG7SjzBKU7jaGh2RTeblcAdBb/E+S/duOAMsA== dependencies: ulid "^2.3.0" -prettier@^2.0.0, prettier@^2.6.2: +prettier@^2.6.2: version "2.6.2" - resolved "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.6.2.tgz#e26d71a18a74c3d0f0597f55f01fb6c06c206032" integrity sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew== read-pkg@^5.2.0: @@ -676,7 +681,7 @@ readdirp@~3.6.0: require-directory@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== + integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= resolve@^1.10.0: version "1.20.0" @@ -688,7 +693,7 @@ resolve@^1.10.0: restore-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== dependencies: onetime "^5.1.0" @@ -696,7 +701,7 @@ restore-cursor@^3.1.0: rfdc@^1.3.0: version "1.3.0" - resolved "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz" + resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b" integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA== rxjs@^6.6.3: @@ -708,7 +713,7 @@ rxjs@^6.6.3: rxjs@^7.5.5: version "7.5.6" - resolved "https://registry.npmjs.org/rxjs/-/rxjs-7.5.6.tgz" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.6.tgz#0446577557862afd6903517ce7cae79ecb9662bc" integrity sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw== dependencies: tslib "^2.1.0" @@ -727,24 +732,24 @@ sass@^1.39.2: shebang-command@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: shebang-regex "^3.0.0" shebang-regex@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== signal-exit@^3.0.2, signal-exit@^3.0.7: version "3.0.7" - resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== slice-ansi@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz#31ddc10930a1b7e0b67b08c96c2f49b77a789787" integrity sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ== dependencies: ansi-styles "^4.0.0" @@ -753,7 +758,7 @@ slice-ansi@^3.0.0: slice-ansi@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== dependencies: ansi-styles "^4.0.0" @@ -762,7 +767,7 @@ slice-ansi@^4.0.0: slice-ansi@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-5.0.0.tgz#b73063c57aa96f9cd881654b15294d95d285c42a" integrity sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ== dependencies: ansi-styles "^6.0.0" @@ -771,7 +776,7 @@ slice-ansi@^5.0.0: spawn-command@^0.0.2-1: version "0.0.2-1" resolved "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz" - integrity sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A= sha512-n98l9E2RMSJ9ON1AKisHzz7V42VDiBQGY6PB1BwRglz99wpVsSuGzQ+jOi6lFXBGVTCrRpltvjm+/XA+tpeJrg== + integrity sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A= spdx-correct@^3.0.0: version "3.1.1" @@ -802,23 +807,14 @@ spdx-license-ids@^3.0.0: sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= string-argv@^0.3.1: version "0.3.1" - resolved "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz" + resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da" integrity sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg== -string-width@^4.1.0: - version "4.2.2" - resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz" - integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.0" - -string-width@^4.2.0: +string-width@^4.1.0, string-width@^4.2.0: version "4.2.2" resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz" integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== @@ -829,7 +825,7 @@ string-width@^4.2.0: string-width@^5.0.0: version "5.1.2" - resolved "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== dependencies: eastasianwidth "^0.2.0" @@ -845,14 +841,14 @@ strip-ansi@^6.0.0: strip-ansi@^7.0.1: version "7.0.1" - resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.0.1.tgz#61740a08ce36b61e50e65653f07060d000975fb2" integrity sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw== dependencies: ansi-regex "^6.0.1" strip-final-newline@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd" integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== supports-color@^5.3.0: @@ -878,7 +874,7 @@ supports-color@^8.1.0: through@^2.3.8: version "2.3.8" - resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== to-regex-range@^5.0.1: @@ -900,12 +896,12 @@ tslib@^1.9.0: tslib@^2.1.0: version "2.4.0" - resolved "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== type-fest@^0.21.3: version "0.21.3" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== type-fest@^0.6.0: @@ -920,7 +916,7 @@ uc.micro@^1.0.1, uc.micro@^1.0.5: ulid@^2.3.0: version "2.3.0" - resolved "https://registry.npmjs.org/ulid/-/ulid-2.3.0.tgz" + resolved "https://registry.yarnpkg.com/ulid/-/ulid-2.3.0.tgz#93063522771a9774121a84d126ecd3eb9804071f" integrity sha512-keqHubrlpvT6G2wH0OEfSW4mquYRcbe/J8NMmveoQOjUqmo+hXtO+ORCpWhdbZ7k72UtY61BL7haGxW6enBnjw== validate-npm-package-license@^3.0.1: @@ -933,14 +929,14 @@ validate-npm-package-license@^3.0.1: which@^2.0.1: version "2.0.2" - resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" wrap-ansi@^6.2.0: version "6.2.0" - resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== dependencies: ansi-styles "^4.0.0" @@ -963,7 +959,7 @@ y18n@^5.0.5: yaml@^2.1.1: version "2.2.2" - resolved "https://registry.npmjs.org/yaml/-/yaml-2.2.2.tgz" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.2.2.tgz#ec551ef37326e6d42872dad1970300f8eb83a073" integrity sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA== yargs-parser@^20.2.2: From c9c1981cb27874922e1382a23711cfdf8fccc009 Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Thu, 15 Jun 2023 11:51:48 -0700 Subject: [PATCH 20/20] add yaml plain input example --- .../docs/concepts/inputs-outputs/_index.md | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/themes/default/content/docs/concepts/inputs-outputs/_index.md b/themes/default/content/docs/concepts/inputs-outputs/_index.md index b704a0dda60..6f30c7b72ed 100644 --- a/themes/default/content/docs/concepts/inputs-outputs/_index.md +++ b/themes/default/content/docs/concepts/inputs-outputs/_index.md @@ -17,7 +17,7 @@ aliases: All resources in Pulumi accept values that describe the way the resource behaves. We call these values *inputs*. -{{< chooser language "javascript,typescript,python,go,csharp,java" >}} +{{< chooser language "javascript,typescript,python,go,csharp,java,yaml" >}} {{% choosable language javascript %}} @@ -89,7 +89,7 @@ resources: myId: type: random:randomId properties: - byteLength: 8 // byteLenght is an input + byteLength: 8 # byteLength is an input ``` {{% /choosable %}} @@ -99,7 +99,7 @@ _Inputs_ are generally representations of the parameters to the underlying API c The simplest way to create a resource with its required _inputs_ is to use a _plain value_. -{{< chooser language "javascript,typescript,python,go,csharp,java" >}} +{{< chooser language "javascript,typescript,python,go,csharp,java,yaml" >}} {{% choosable language javascript %}} @@ -164,6 +164,18 @@ var key = new PrivateKey("my-private-key", PrivateKeyArgs.builder() ) ``` +{{% /choosable %}} + +{{% choosable language yaml %}} + +```yaml +resources: + key: + type: tls:PrivateKey + properties: + algorithm: "ECDSA" # ECDSA is a plain value +``` + {{% /choosable %}} {{< /chooser >}}