From ef0cdd22d0e4b1ae097cd504045a444127e92c88 Mon Sep 17 00:00:00 2001 From: fern-api <115122769+fern-api[bot]@users.noreply.github.com> Date: Wed, 6 Aug 2025 00:19:43 +0000 Subject: [PATCH] SDK regeneration --- README.md | 2 +- build.gradle | 4 +- .../com/pipedream/api/core/ClientOptions.java | 4 +- .../pipedream/api/types/ConfigurableProp.java | 303 +++++++++++---- .../api/types/ConfigurablePropAlert.java | 359 +++++++++++++----- .../api/types/ConfigurablePropAny.java | 303 +++++++++++---- .../api/types/ConfigurablePropApp.java | 328 +++++++++++----- .../api/types/ConfigurablePropBoolean.java | 303 +++++++++++---- .../api/types/ConfigurablePropDiscord.java | 303 +++++++++++---- .../api/types/ConfigurablePropInteger.java | 359 +++++++++++++----- .../api/types/ConfigurablePropObject.java | 303 +++++++++++---- .../api/types/ConfigurablePropString.java | 328 +++++++++++----- .../types/ConfigurablePropStringArray.java | 328 +++++++++++----- 13 files changed, 2344 insertions(+), 883 deletions(-) diff --git a/README.md b/README.md index 940d231..57b37a1 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ Add the dependency in your `pom.xml` file: com.pipedream pipedream - 0.0.2 + 1.0.1 ``` diff --git a/build.gradle b/build.gradle index f7196f0..61f024a 100644 --- a/build.gradle +++ b/build.gradle @@ -47,7 +47,7 @@ java { group = 'com.pipedream' -version = '1.0.0' +version = '1.0.1' jar { dependsOn(":generatePomFileForMavenPublication") @@ -78,7 +78,7 @@ publishing { maven(MavenPublication) { groupId = 'com.pipedream' artifactId = 'pipedream' - version = '1.0.0' + version = '1.0.1' from components.java pom { name = 'pipedream' diff --git a/src/main/java/com/pipedream/api/core/ClientOptions.java b/src/main/java/com/pipedream/api/core/ClientOptions.java index 548a432..534a35d 100644 --- a/src/main/java/com/pipedream/api/core/ClientOptions.java +++ b/src/main/java/com/pipedream/api/core/ClientOptions.java @@ -35,10 +35,10 @@ private ClientOptions( this.headers.putAll(headers); this.headers.putAll(new HashMap() { { - put("User-Agent", "com.pipedream:pipedream/0.0.2"); + put("User-Agent", "com.pipedream:pipedream/1.0.1"); put("X-Fern-Language", "JAVA"); put("X-Fern-SDK-Name", "com.pipedream.fern:api-sdk"); - put("X-Fern-SDK-Version", "0.0.2"); + put("X-Fern-SDK-Version", "1.0.1"); } }); this.headerSuppliers = headerSuppliers; diff --git a/src/main/java/com/pipedream/api/types/ConfigurableProp.java b/src/main/java/com/pipedream/api/types/ConfigurableProp.java index 9b27278..014fbe5 100644 --- a/src/main/java/com/pipedream/api/types/ConfigurableProp.java +++ b/src/main/java/com/pipedream/api/types/ConfigurableProp.java @@ -16,11 +16,12 @@ import java.util.Map; import java.util.Objects; import java.util.Optional; +import org.jetbrains.annotations.NotNull; @JsonInclude(JsonInclude.Include.NON_ABSENT) @JsonDeserialize(builder = ConfigurableProp.Builder.class) public final class ConfigurableProp { - private final Optional name; + private final String name; private final Optional type; @@ -45,7 +46,7 @@ public final class ConfigurableProp { private final Map additionalProperties; private ConfigurableProp( - Optional name, + String name, Optional type, Optional label, Optional description, @@ -75,7 +76,7 @@ private ConfigurableProp( * @return When building configuredProps, make sure to use this field as the key when setting the prop value */ @JsonProperty("name") - public Optional getName() { + public String getName() { return name; } @@ -202,39 +203,120 @@ public String toString() { return ObjectMappers.stringify(this); } - public static Builder builder() { + public static NameStage builder() { return new Builder(); } - @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder { - private Optional name = Optional.empty(); + public interface NameStage { + /** + *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ */ + _FinalStage name(@NotNull String name); - private Optional type = Optional.empty(); + Builder from(ConfigurableProp other); + } - private Optional label = Optional.empty(); + public interface _FinalStage { + ConfigurableProp build(); - private Optional description = Optional.empty(); + _FinalStage type(Optional type); - private Optional optional = Optional.empty(); + _FinalStage type(String type); - private Optional disabled = Optional.empty(); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ */ + _FinalStage label(Optional label); - private Optional hidden = Optional.empty(); + _FinalStage label(String label); - private Optional remoteOptions = Optional.empty(); + /** + *

A description of the prop, shown to the user when configuring the component.

+ */ + _FinalStage description(Optional description); - private Optional useQuery = Optional.empty(); + _FinalStage description(String description); - private Optional reloadProps = Optional.empty(); + /** + *

If true, this prop does not need to be specified.

+ */ + _FinalStage optional(Optional optional); + + _FinalStage optional(Boolean optional); + + /** + *

If true, this prop will be ignored.

+ */ + _FinalStage disabled(Optional disabled); + + _FinalStage disabled(Boolean disabled); + + /** + *

If true, should not expose this prop to the user

+ */ + _FinalStage hidden(Optional hidden); + + _FinalStage hidden(Boolean hidden); + + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ */ + _FinalStage remoteOptions(Optional remoteOptions); + + _FinalStage remoteOptions(Boolean remoteOptions); + + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ */ + _FinalStage useQuery(Optional useQuery); + + _FinalStage useQuery(Boolean useQuery); + + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ */ + _FinalStage reloadProps(Optional reloadProps); + + _FinalStage reloadProps(Boolean reloadProps); + + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ */ + _FinalStage withLabel(Optional withLabel); + + _FinalStage withLabel(Boolean withLabel); + } + + @JsonIgnoreProperties(ignoreUnknown = true) + public static final class Builder implements NameStage, _FinalStage { + private String name; private Optional withLabel = Optional.empty(); + private Optional reloadProps = Optional.empty(); + + private Optional useQuery = Optional.empty(); + + private Optional remoteOptions = Optional.empty(); + + private Optional hidden = Optional.empty(); + + private Optional disabled = Optional.empty(); + + private Optional optional = Optional.empty(); + + private Optional description = Optional.empty(); + + private Optional label = Optional.empty(); + + private Optional type = Optional.empty(); + @JsonAnySetter private Map additionalProperties = new HashMap<>(); private Builder() {} + @java.lang.Override public Builder from(ConfigurableProp other) { name(other.getName()); type(other.getType()); @@ -252,155 +334,210 @@ public Builder from(ConfigurableProp other) { /** *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "name", nulls = Nulls.SKIP) - public Builder name(Optional name) { - this.name = name; - return this; - } - - public Builder name(String name) { - this.name = Optional.ofNullable(name); + @java.lang.Override + @JsonSetter("name") + public _FinalStage name(@NotNull String name) { + this.name = Objects.requireNonNull(name, "name must not be null"); return this; } - @JsonSetter(value = "type", nulls = Nulls.SKIP) - public Builder type(Optional type) { - this.type = type; - return this; - } - - public Builder type(String type) { - this.type = Optional.ofNullable(type); + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage withLabel(Boolean withLabel) { + this.withLabel = Optional.ofNullable(withLabel); return this; } /** - *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

*/ - @JsonSetter(value = "label", nulls = Nulls.SKIP) - public Builder label(Optional label) { - this.label = label; + @java.lang.Override + @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) + public _FinalStage withLabel(Optional withLabel) { + this.withLabel = withLabel; return this; } - public Builder label(String label) { - this.label = Optional.ofNullable(label); + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage reloadProps(Boolean reloadProps) { + this.reloadProps = Optional.ofNullable(reloadProps); return this; } /** - *

A description of the prop, shown to the user when configuring the component.

+ *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

*/ - @JsonSetter(value = "description", nulls = Nulls.SKIP) - public Builder description(Optional description) { - this.description = description; + @java.lang.Override + @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) + public _FinalStage reloadProps(Optional reloadProps) { + this.reloadProps = reloadProps; return this; } - public Builder description(String description) { - this.description = Optional.ofNullable(description); + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage useQuery(Boolean useQuery) { + this.useQuery = Optional.ofNullable(useQuery); return this; } /** - *

If true, this prop does not need to be specified.

+ *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

*/ - @JsonSetter(value = "optional", nulls = Nulls.SKIP) - public Builder optional(Optional optional) { - this.optional = optional; + @java.lang.Override + @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) + public _FinalStage useQuery(Optional useQuery) { + this.useQuery = useQuery; return this; } - public Builder optional(Boolean optional) { - this.optional = Optional.ofNullable(optional); + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage remoteOptions(Boolean remoteOptions) { + this.remoteOptions = Optional.ofNullable(remoteOptions); return this; } /** - *

If true, this prop will be ignored.

+ *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

*/ - @JsonSetter(value = "disabled", nulls = Nulls.SKIP) - public Builder disabled(Optional disabled) { - this.disabled = disabled; + @java.lang.Override + @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) + public _FinalStage remoteOptions(Optional remoteOptions) { + this.remoteOptions = remoteOptions; return this; } - public Builder disabled(Boolean disabled) { - this.disabled = Optional.ofNullable(disabled); + /** + *

If true, should not expose this prop to the user

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage hidden(Boolean hidden) { + this.hidden = Optional.ofNullable(hidden); return this; } /** *

If true, should not expose this prop to the user

*/ + @java.lang.Override @JsonSetter(value = "hidden", nulls = Nulls.SKIP) - public Builder hidden(Optional hidden) { + public _FinalStage hidden(Optional hidden) { this.hidden = hidden; return this; } - public Builder hidden(Boolean hidden) { - this.hidden = Optional.ofNullable(hidden); + /** + *

If true, this prop will be ignored.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage disabled(Boolean disabled) { + this.disabled = Optional.ofNullable(disabled); return this; } /** - *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ *

If true, this prop will be ignored.

*/ - @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) - public Builder remoteOptions(Optional remoteOptions) { - this.remoteOptions = remoteOptions; + @java.lang.Override + @JsonSetter(value = "disabled", nulls = Nulls.SKIP) + public _FinalStage disabled(Optional disabled) { + this.disabled = disabled; return this; } - public Builder remoteOptions(Boolean remoteOptions) { - this.remoteOptions = Optional.ofNullable(remoteOptions); + /** + *

If true, this prop does not need to be specified.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage optional(Boolean optional) { + this.optional = Optional.ofNullable(optional); return this; } /** - *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ *

If true, this prop does not need to be specified.

*/ - @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) - public Builder useQuery(Optional useQuery) { - this.useQuery = useQuery; + @java.lang.Override + @JsonSetter(value = "optional", nulls = Nulls.SKIP) + public _FinalStage optional(Optional optional) { + this.optional = optional; return this; } - public Builder useQuery(Boolean useQuery) { - this.useQuery = Optional.ofNullable(useQuery); + /** + *

A description of the prop, shown to the user when configuring the component.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage description(String description) { + this.description = Optional.ofNullable(description); return this; } /** - *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ *

A description of the prop, shown to the user when configuring the component.

*/ - @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) - public Builder reloadProps(Optional reloadProps) { - this.reloadProps = reloadProps; + @java.lang.Override + @JsonSetter(value = "description", nulls = Nulls.SKIP) + public _FinalStage description(Optional description) { + this.description = description; return this; } - public Builder reloadProps(Boolean reloadProps) { - this.reloadProps = Optional.ofNullable(reloadProps); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage label(String label) { + this.label = Optional.ofNullable(label); return this; } /** - *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

*/ - @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) - public Builder withLabel(Optional withLabel) { - this.withLabel = withLabel; + @java.lang.Override + @JsonSetter(value = "label", nulls = Nulls.SKIP) + public _FinalStage label(Optional label) { + this.label = label; return this; } - public Builder withLabel(Boolean withLabel) { - this.withLabel = Optional.ofNullable(withLabel); + @java.lang.Override + public _FinalStage type(String type) { + this.type = Optional.ofNullable(type); + return this; + } + + @java.lang.Override + @JsonSetter(value = "type", nulls = Nulls.SKIP) + public _FinalStage type(Optional type) { + this.type = type; return this; } + @java.lang.Override public ConfigurableProp build() { return new ConfigurableProp( name, diff --git a/src/main/java/com/pipedream/api/types/ConfigurablePropAlert.java b/src/main/java/com/pipedream/api/types/ConfigurablePropAlert.java index 782303c..7a9ccb6 100644 --- a/src/main/java/com/pipedream/api/types/ConfigurablePropAlert.java +++ b/src/main/java/com/pipedream/api/types/ConfigurablePropAlert.java @@ -16,6 +16,7 @@ import java.util.Map; import java.util.Objects; import java.util.Optional; +import org.jetbrains.annotations.NotNull; @JsonInclude(JsonInclude.Include.NON_ABSENT) @JsonDeserialize(builder = ConfigurablePropAlert.Builder.class) @@ -26,7 +27,7 @@ public final class ConfigurablePropAlert { private final Optional content; - private final Optional name; + private final String name; private final Optional label; @@ -52,7 +53,7 @@ private ConfigurablePropAlert( Optional type, Optional alertType, Optional content, - Optional name, + String name, Optional label, Optional description, Optional optional, @@ -104,7 +105,7 @@ public Optional getContent() { * @return When building configuredProps, make sure to use this field as the key when setting the prop value */ @JsonProperty("name") - public Optional getName() { + public String getName() { return name; } @@ -230,43 +231,138 @@ public String toString() { return ObjectMappers.stringify(this); } - public static Builder builder() { + public static NameStage builder() { return new Builder(); } - @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder { - private Optional type = Optional.empty(); + public interface NameStage { + /** + *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ */ + _FinalStage name(@NotNull String name); - private Optional alertType = Optional.empty(); + Builder from(ConfigurablePropAlert other); + } - private Optional content = Optional.empty(); + public interface _FinalStage { + ConfigurablePropAlert build(); - private Optional name = Optional.empty(); + _FinalStage type(Optional type); - private Optional label = Optional.empty(); + _FinalStage type(String type); - private Optional description = Optional.empty(); + /** + *

The severity level of the alert.

+ */ + _FinalStage alertType(Optional alertType); - private Optional optional = Optional.empty(); + _FinalStage alertType(ConfigurablePropAlertAlertType alertType); - private Optional disabled = Optional.empty(); + /** + *

The content of the alert, which can include HTML or plain text.

+ */ + _FinalStage content(Optional content); - private Optional hidden = Optional.empty(); + _FinalStage content(String content); - private Optional remoteOptions = Optional.empty(); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ */ + _FinalStage label(Optional label); - private Optional useQuery = Optional.empty(); + _FinalStage label(String label); - private Optional reloadProps = Optional.empty(); + /** + *

A description of the prop, shown to the user when configuring the component.

+ */ + _FinalStage description(Optional description); + + _FinalStage description(String description); + + /** + *

If true, this prop does not need to be specified.

+ */ + _FinalStage optional(Optional optional); + + _FinalStage optional(Boolean optional); + + /** + *

If true, this prop will be ignored.

+ */ + _FinalStage disabled(Optional disabled); + + _FinalStage disabled(Boolean disabled); + + /** + *

If true, should not expose this prop to the user

+ */ + _FinalStage hidden(Optional hidden); + + _FinalStage hidden(Boolean hidden); + + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ */ + _FinalStage remoteOptions(Optional remoteOptions); + + _FinalStage remoteOptions(Boolean remoteOptions); + + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ */ + _FinalStage useQuery(Optional useQuery); + + _FinalStage useQuery(Boolean useQuery); + + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ */ + _FinalStage reloadProps(Optional reloadProps); + + _FinalStage reloadProps(Boolean reloadProps); + + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ */ + _FinalStage withLabel(Optional withLabel); + + _FinalStage withLabel(Boolean withLabel); + } + + @JsonIgnoreProperties(ignoreUnknown = true) + public static final class Builder implements NameStage, _FinalStage { + private String name; private Optional withLabel = Optional.empty(); + private Optional reloadProps = Optional.empty(); + + private Optional useQuery = Optional.empty(); + + private Optional remoteOptions = Optional.empty(); + + private Optional hidden = Optional.empty(); + + private Optional disabled = Optional.empty(); + + private Optional optional = Optional.empty(); + + private Optional description = Optional.empty(); + + private Optional label = Optional.empty(); + + private Optional content = Optional.empty(); + + private Optional alertType = Optional.empty(); + + private Optional type = Optional.empty(); + @JsonAnySetter private Map additionalProperties = new HashMap<>(); private Builder() {} + @java.lang.Override public Builder from(ConfigurablePropAlert other) { type(other.getType()); alertType(other.getAlertType()); @@ -284,185 +380,252 @@ public Builder from(ConfigurablePropAlert other) { return this; } - @JsonSetter(value = "type", nulls = Nulls.SKIP) - public Builder type(Optional type) { - this.type = type; - return this; - } - - public Builder type(String type) { - this.type = Optional.ofNullable(type); - return this; - } - /** - *

The severity level of the alert.

+ *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "alertType", nulls = Nulls.SKIP) - public Builder alertType(Optional alertType) { - this.alertType = alertType; + @java.lang.Override + @JsonSetter("name") + public _FinalStage name(@NotNull String name) { + this.name = Objects.requireNonNull(name, "name must not be null"); return this; } - public Builder alertType(ConfigurablePropAlertAlertType alertType) { - this.alertType = Optional.ofNullable(alertType); + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage withLabel(Boolean withLabel) { + this.withLabel = Optional.ofNullable(withLabel); return this; } /** - *

The content of the alert, which can include HTML or plain text.

+ *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

*/ - @JsonSetter(value = "content", nulls = Nulls.SKIP) - public Builder content(Optional content) { - this.content = content; + @java.lang.Override + @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) + public _FinalStage withLabel(Optional withLabel) { + this.withLabel = withLabel; return this; } - public Builder content(String content) { - this.content = Optional.ofNullable(content); + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage reloadProps(Boolean reloadProps) { + this.reloadProps = Optional.ofNullable(reloadProps); return this; } /** - *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

*/ - @JsonSetter(value = "name", nulls = Nulls.SKIP) - public Builder name(Optional name) { - this.name = name; + @java.lang.Override + @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) + public _FinalStage reloadProps(Optional reloadProps) { + this.reloadProps = reloadProps; return this; } - public Builder name(String name) { - this.name = Optional.ofNullable(name); + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage useQuery(Boolean useQuery) { + this.useQuery = Optional.ofNullable(useQuery); return this; } /** - *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

*/ - @JsonSetter(value = "label", nulls = Nulls.SKIP) - public Builder label(Optional label) { - this.label = label; + @java.lang.Override + @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) + public _FinalStage useQuery(Optional useQuery) { + this.useQuery = useQuery; return this; } - public Builder label(String label) { - this.label = Optional.ofNullable(label); + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage remoteOptions(Boolean remoteOptions) { + this.remoteOptions = Optional.ofNullable(remoteOptions); return this; } /** - *

A description of the prop, shown to the user when configuring the component.

+ *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

*/ - @JsonSetter(value = "description", nulls = Nulls.SKIP) - public Builder description(Optional description) { - this.description = description; + @java.lang.Override + @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) + public _FinalStage remoteOptions(Optional remoteOptions) { + this.remoteOptions = remoteOptions; return this; } - public Builder description(String description) { - this.description = Optional.ofNullable(description); + /** + *

If true, should not expose this prop to the user

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage hidden(Boolean hidden) { + this.hidden = Optional.ofNullable(hidden); return this; } /** - *

If true, this prop does not need to be specified.

+ *

If true, should not expose this prop to the user

*/ - @JsonSetter(value = "optional", nulls = Nulls.SKIP) - public Builder optional(Optional optional) { - this.optional = optional; + @java.lang.Override + @JsonSetter(value = "hidden", nulls = Nulls.SKIP) + public _FinalStage hidden(Optional hidden) { + this.hidden = hidden; return this; } - public Builder optional(Boolean optional) { - this.optional = Optional.ofNullable(optional); + /** + *

If true, this prop will be ignored.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage disabled(Boolean disabled) { + this.disabled = Optional.ofNullable(disabled); return this; } /** *

If true, this prop will be ignored.

*/ + @java.lang.Override @JsonSetter(value = "disabled", nulls = Nulls.SKIP) - public Builder disabled(Optional disabled) { + public _FinalStage disabled(Optional disabled) { this.disabled = disabled; return this; } - public Builder disabled(Boolean disabled) { - this.disabled = Optional.ofNullable(disabled); + /** + *

If true, this prop does not need to be specified.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage optional(Boolean optional) { + this.optional = Optional.ofNullable(optional); return this; } /** - *

If true, should not expose this prop to the user

+ *

If true, this prop does not need to be specified.

*/ - @JsonSetter(value = "hidden", nulls = Nulls.SKIP) - public Builder hidden(Optional hidden) { - this.hidden = hidden; + @java.lang.Override + @JsonSetter(value = "optional", nulls = Nulls.SKIP) + public _FinalStage optional(Optional optional) { + this.optional = optional; return this; } - public Builder hidden(Boolean hidden) { - this.hidden = Optional.ofNullable(hidden); + /** + *

A description of the prop, shown to the user when configuring the component.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage description(String description) { + this.description = Optional.ofNullable(description); return this; } /** - *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ *

A description of the prop, shown to the user when configuring the component.

*/ - @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) - public Builder remoteOptions(Optional remoteOptions) { - this.remoteOptions = remoteOptions; + @java.lang.Override + @JsonSetter(value = "description", nulls = Nulls.SKIP) + public _FinalStage description(Optional description) { + this.description = description; return this; } - public Builder remoteOptions(Boolean remoteOptions) { - this.remoteOptions = Optional.ofNullable(remoteOptions); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage label(String label) { + this.label = Optional.ofNullable(label); return this; } /** - *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

*/ - @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) - public Builder useQuery(Optional useQuery) { - this.useQuery = useQuery; + @java.lang.Override + @JsonSetter(value = "label", nulls = Nulls.SKIP) + public _FinalStage label(Optional label) { + this.label = label; return this; } - public Builder useQuery(Boolean useQuery) { - this.useQuery = Optional.ofNullable(useQuery); + /** + *

The content of the alert, which can include HTML or plain text.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage content(String content) { + this.content = Optional.ofNullable(content); return this; } /** - *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ *

The content of the alert, which can include HTML or plain text.

*/ - @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) - public Builder reloadProps(Optional reloadProps) { - this.reloadProps = reloadProps; + @java.lang.Override + @JsonSetter(value = "content", nulls = Nulls.SKIP) + public _FinalStage content(Optional content) { + this.content = content; return this; } - public Builder reloadProps(Boolean reloadProps) { - this.reloadProps = Optional.ofNullable(reloadProps); + /** + *

The severity level of the alert.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage alertType(ConfigurablePropAlertAlertType alertType) { + this.alertType = Optional.ofNullable(alertType); return this; } /** - *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ *

The severity level of the alert.

*/ - @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) - public Builder withLabel(Optional withLabel) { - this.withLabel = withLabel; + @java.lang.Override + @JsonSetter(value = "alertType", nulls = Nulls.SKIP) + public _FinalStage alertType(Optional alertType) { + this.alertType = alertType; return this; } - public Builder withLabel(Boolean withLabel) { - this.withLabel = Optional.ofNullable(withLabel); + @java.lang.Override + public _FinalStage type(String type) { + this.type = Optional.ofNullable(type); + return this; + } + + @java.lang.Override + @JsonSetter(value = "type", nulls = Nulls.SKIP) + public _FinalStage type(Optional type) { + this.type = type; return this; } + @java.lang.Override public ConfigurablePropAlert build() { return new ConfigurablePropAlert( type, diff --git a/src/main/java/com/pipedream/api/types/ConfigurablePropAny.java b/src/main/java/com/pipedream/api/types/ConfigurablePropAny.java index 87824c9..caff2b5 100644 --- a/src/main/java/com/pipedream/api/types/ConfigurablePropAny.java +++ b/src/main/java/com/pipedream/api/types/ConfigurablePropAny.java @@ -16,13 +16,14 @@ import java.util.Map; import java.util.Objects; import java.util.Optional; +import org.jetbrains.annotations.NotNull; @JsonInclude(JsonInclude.Include.NON_ABSENT) @JsonDeserialize(builder = ConfigurablePropAny.Builder.class) public final class ConfigurablePropAny { private final Optional type; - private final Optional name; + private final String name; private final Optional label; @@ -46,7 +47,7 @@ public final class ConfigurablePropAny { private ConfigurablePropAny( Optional type, - Optional name, + String name, Optional label, Optional description, Optional optional, @@ -80,7 +81,7 @@ public Optional getType() { * @return When building configuredProps, make sure to use this field as the key when setting the prop value */ @JsonProperty("name") - public Optional getName() { + public String getName() { return name; } @@ -202,39 +203,120 @@ public String toString() { return ObjectMappers.stringify(this); } - public static Builder builder() { + public static NameStage builder() { return new Builder(); } - @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder { - private Optional type = Optional.empty(); + public interface NameStage { + /** + *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ */ + _FinalStage name(@NotNull String name); - private Optional name = Optional.empty(); + Builder from(ConfigurablePropAny other); + } - private Optional label = Optional.empty(); + public interface _FinalStage { + ConfigurablePropAny build(); - private Optional description = Optional.empty(); + _FinalStage type(Optional type); - private Optional optional = Optional.empty(); + _FinalStage type(String type); - private Optional disabled = Optional.empty(); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ */ + _FinalStage label(Optional label); - private Optional hidden = Optional.empty(); + _FinalStage label(String label); - private Optional remoteOptions = Optional.empty(); + /** + *

A description of the prop, shown to the user when configuring the component.

+ */ + _FinalStage description(Optional description); - private Optional useQuery = Optional.empty(); + _FinalStage description(String description); - private Optional reloadProps = Optional.empty(); + /** + *

If true, this prop does not need to be specified.

+ */ + _FinalStage optional(Optional optional); + + _FinalStage optional(Boolean optional); + + /** + *

If true, this prop will be ignored.

+ */ + _FinalStage disabled(Optional disabled); + + _FinalStage disabled(Boolean disabled); + + /** + *

If true, should not expose this prop to the user

+ */ + _FinalStage hidden(Optional hidden); + + _FinalStage hidden(Boolean hidden); + + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ */ + _FinalStage remoteOptions(Optional remoteOptions); + + _FinalStage remoteOptions(Boolean remoteOptions); + + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ */ + _FinalStage useQuery(Optional useQuery); + + _FinalStage useQuery(Boolean useQuery); + + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ */ + _FinalStage reloadProps(Optional reloadProps); + + _FinalStage reloadProps(Boolean reloadProps); + + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ */ + _FinalStage withLabel(Optional withLabel); + + _FinalStage withLabel(Boolean withLabel); + } + + @JsonIgnoreProperties(ignoreUnknown = true) + public static final class Builder implements NameStage, _FinalStage { + private String name; private Optional withLabel = Optional.empty(); + private Optional reloadProps = Optional.empty(); + + private Optional useQuery = Optional.empty(); + + private Optional remoteOptions = Optional.empty(); + + private Optional hidden = Optional.empty(); + + private Optional disabled = Optional.empty(); + + private Optional optional = Optional.empty(); + + private Optional description = Optional.empty(); + + private Optional label = Optional.empty(); + + private Optional type = Optional.empty(); + @JsonAnySetter private Map additionalProperties = new HashMap<>(); private Builder() {} + @java.lang.Override public Builder from(ConfigurablePropAny other) { type(other.getType()); name(other.getName()); @@ -250,157 +332,212 @@ public Builder from(ConfigurablePropAny other) { return this; } - @JsonSetter(value = "type", nulls = Nulls.SKIP) - public Builder type(Optional type) { - this.type = type; - return this; - } - - public Builder type(String type) { - this.type = Optional.ofNullable(type); - return this; - } - /** *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "name", nulls = Nulls.SKIP) - public Builder name(Optional name) { - this.name = name; + @java.lang.Override + @JsonSetter("name") + public _FinalStage name(@NotNull String name) { + this.name = Objects.requireNonNull(name, "name must not be null"); return this; } - public Builder name(String name) { - this.name = Optional.ofNullable(name); + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage withLabel(Boolean withLabel) { + this.withLabel = Optional.ofNullable(withLabel); return this; } /** - *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

*/ - @JsonSetter(value = "label", nulls = Nulls.SKIP) - public Builder label(Optional label) { - this.label = label; + @java.lang.Override + @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) + public _FinalStage withLabel(Optional withLabel) { + this.withLabel = withLabel; return this; } - public Builder label(String label) { - this.label = Optional.ofNullable(label); + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage reloadProps(Boolean reloadProps) { + this.reloadProps = Optional.ofNullable(reloadProps); return this; } /** - *

A description of the prop, shown to the user when configuring the component.

+ *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

*/ - @JsonSetter(value = "description", nulls = Nulls.SKIP) - public Builder description(Optional description) { - this.description = description; + @java.lang.Override + @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) + public _FinalStage reloadProps(Optional reloadProps) { + this.reloadProps = reloadProps; return this; } - public Builder description(String description) { - this.description = Optional.ofNullable(description); + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage useQuery(Boolean useQuery) { + this.useQuery = Optional.ofNullable(useQuery); return this; } /** - *

If true, this prop does not need to be specified.

+ *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

*/ - @JsonSetter(value = "optional", nulls = Nulls.SKIP) - public Builder optional(Optional optional) { - this.optional = optional; + @java.lang.Override + @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) + public _FinalStage useQuery(Optional useQuery) { + this.useQuery = useQuery; return this; } - public Builder optional(Boolean optional) { - this.optional = Optional.ofNullable(optional); + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage remoteOptions(Boolean remoteOptions) { + this.remoteOptions = Optional.ofNullable(remoteOptions); return this; } /** - *

If true, this prop will be ignored.

+ *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

*/ - @JsonSetter(value = "disabled", nulls = Nulls.SKIP) - public Builder disabled(Optional disabled) { - this.disabled = disabled; + @java.lang.Override + @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) + public _FinalStage remoteOptions(Optional remoteOptions) { + this.remoteOptions = remoteOptions; return this; } - public Builder disabled(Boolean disabled) { - this.disabled = Optional.ofNullable(disabled); + /** + *

If true, should not expose this prop to the user

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage hidden(Boolean hidden) { + this.hidden = Optional.ofNullable(hidden); return this; } /** *

If true, should not expose this prop to the user

*/ + @java.lang.Override @JsonSetter(value = "hidden", nulls = Nulls.SKIP) - public Builder hidden(Optional hidden) { + public _FinalStage hidden(Optional hidden) { this.hidden = hidden; return this; } - public Builder hidden(Boolean hidden) { - this.hidden = Optional.ofNullable(hidden); + /** + *

If true, this prop will be ignored.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage disabled(Boolean disabled) { + this.disabled = Optional.ofNullable(disabled); return this; } /** - *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ *

If true, this prop will be ignored.

*/ - @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) - public Builder remoteOptions(Optional remoteOptions) { - this.remoteOptions = remoteOptions; + @java.lang.Override + @JsonSetter(value = "disabled", nulls = Nulls.SKIP) + public _FinalStage disabled(Optional disabled) { + this.disabled = disabled; return this; } - public Builder remoteOptions(Boolean remoteOptions) { - this.remoteOptions = Optional.ofNullable(remoteOptions); + /** + *

If true, this prop does not need to be specified.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage optional(Boolean optional) { + this.optional = Optional.ofNullable(optional); return this; } /** - *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ *

If true, this prop does not need to be specified.

*/ - @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) - public Builder useQuery(Optional useQuery) { - this.useQuery = useQuery; + @java.lang.Override + @JsonSetter(value = "optional", nulls = Nulls.SKIP) + public _FinalStage optional(Optional optional) { + this.optional = optional; return this; } - public Builder useQuery(Boolean useQuery) { - this.useQuery = Optional.ofNullable(useQuery); + /** + *

A description of the prop, shown to the user when configuring the component.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage description(String description) { + this.description = Optional.ofNullable(description); return this; } /** - *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ *

A description of the prop, shown to the user when configuring the component.

*/ - @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) - public Builder reloadProps(Optional reloadProps) { - this.reloadProps = reloadProps; + @java.lang.Override + @JsonSetter(value = "description", nulls = Nulls.SKIP) + public _FinalStage description(Optional description) { + this.description = description; return this; } - public Builder reloadProps(Boolean reloadProps) { - this.reloadProps = Optional.ofNullable(reloadProps); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage label(String label) { + this.label = Optional.ofNullable(label); return this; } /** - *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

*/ - @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) - public Builder withLabel(Optional withLabel) { - this.withLabel = withLabel; + @java.lang.Override + @JsonSetter(value = "label", nulls = Nulls.SKIP) + public _FinalStage label(Optional label) { + this.label = label; return this; } - public Builder withLabel(Boolean withLabel) { - this.withLabel = Optional.ofNullable(withLabel); + @java.lang.Override + public _FinalStage type(String type) { + this.type = Optional.ofNullable(type); + return this; + } + + @java.lang.Override + @JsonSetter(value = "type", nulls = Nulls.SKIP) + public _FinalStage type(Optional type) { + this.type = type; return this; } + @java.lang.Override public ConfigurablePropAny build() { return new ConfigurablePropAny( type, diff --git a/src/main/java/com/pipedream/api/types/ConfigurablePropApp.java b/src/main/java/com/pipedream/api/types/ConfigurablePropApp.java index f6e4246..abe1111 100644 --- a/src/main/java/com/pipedream/api/types/ConfigurablePropApp.java +++ b/src/main/java/com/pipedream/api/types/ConfigurablePropApp.java @@ -16,6 +16,7 @@ import java.util.Map; import java.util.Objects; import java.util.Optional; +import org.jetbrains.annotations.NotNull; @JsonInclude(JsonInclude.Include.NON_ABSENT) @JsonDeserialize(builder = ConfigurablePropApp.Builder.class) @@ -24,7 +25,7 @@ public final class ConfigurablePropApp { private final Optional app; - private final Optional name; + private final String name; private final Optional label; @@ -49,7 +50,7 @@ public final class ConfigurablePropApp { private ConfigurablePropApp( Optional type, Optional app, - Optional name, + String name, Optional label, Optional description, Optional optional, @@ -92,7 +93,7 @@ public Optional getApp() { * @return When building configuredProps, make sure to use this field as the key when setting the prop value */ @JsonProperty("name") - public Optional getName() { + public String getName() { return name; } @@ -216,41 +217,129 @@ public String toString() { return ObjectMappers.stringify(this); } - public static Builder builder() { + public static NameStage builder() { return new Builder(); } + public interface NameStage { + /** + *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ */ + _FinalStage name(@NotNull String name); + + Builder from(ConfigurablePropApp other); + } + + public interface _FinalStage { + ConfigurablePropApp build(); + + _FinalStage type(Optional type); + + _FinalStage type(String type); + + /** + *

The name slug of the app, e.g. 'github', 'slack', etc. This is used to identify the app for which the account is being configured.

+ */ + _FinalStage app(Optional app); + + _FinalStage app(String app); + + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ */ + _FinalStage label(Optional label); + + _FinalStage label(String label); + + /** + *

A description of the prop, shown to the user when configuring the component.

+ */ + _FinalStage description(Optional description); + + _FinalStage description(String description); + + /** + *

If true, this prop does not need to be specified.

+ */ + _FinalStage optional(Optional optional); + + _FinalStage optional(Boolean optional); + + /** + *

If true, this prop will be ignored.

+ */ + _FinalStage disabled(Optional disabled); + + _FinalStage disabled(Boolean disabled); + + /** + *

If true, should not expose this prop to the user

+ */ + _FinalStage hidden(Optional hidden); + + _FinalStage hidden(Boolean hidden); + + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ */ + _FinalStage remoteOptions(Optional remoteOptions); + + _FinalStage remoteOptions(Boolean remoteOptions); + + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ */ + _FinalStage useQuery(Optional useQuery); + + _FinalStage useQuery(Boolean useQuery); + + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ */ + _FinalStage reloadProps(Optional reloadProps); + + _FinalStage reloadProps(Boolean reloadProps); + + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ */ + _FinalStage withLabel(Optional withLabel); + + _FinalStage withLabel(Boolean withLabel); + } + @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder { - private Optional type = Optional.empty(); + public static final class Builder implements NameStage, _FinalStage { + private String name; - private Optional app = Optional.empty(); + private Optional withLabel = Optional.empty(); - private Optional name = Optional.empty(); + private Optional reloadProps = Optional.empty(); - private Optional label = Optional.empty(); + private Optional useQuery = Optional.empty(); - private Optional description = Optional.empty(); + private Optional remoteOptions = Optional.empty(); - private Optional optional = Optional.empty(); + private Optional hidden = Optional.empty(); private Optional disabled = Optional.empty(); - private Optional hidden = Optional.empty(); + private Optional optional = Optional.empty(); - private Optional remoteOptions = Optional.empty(); + private Optional description = Optional.empty(); - private Optional useQuery = Optional.empty(); + private Optional label = Optional.empty(); - private Optional reloadProps = Optional.empty(); + private Optional app = Optional.empty(); - private Optional withLabel = Optional.empty(); + private Optional type = Optional.empty(); @JsonAnySetter private Map additionalProperties = new HashMap<>(); private Builder() {} + @java.lang.Override public Builder from(ConfigurablePropApp other) { type(other.getType()); app(other.getApp()); @@ -267,171 +356,232 @@ public Builder from(ConfigurablePropApp other) { return this; } - @JsonSetter(value = "type", nulls = Nulls.SKIP) - public Builder type(Optional type) { - this.type = type; + /** + *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + @JsonSetter("name") + public _FinalStage name(@NotNull String name) { + this.name = Objects.requireNonNull(name, "name must not be null"); return this; } - public Builder type(String type) { - this.type = Optional.ofNullable(type); + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage withLabel(Boolean withLabel) { + this.withLabel = Optional.ofNullable(withLabel); return this; } /** - *

The name slug of the app, e.g. 'github', 'slack', etc. This is used to identify the app for which the account is being configured.

+ *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

*/ - @JsonSetter(value = "app", nulls = Nulls.SKIP) - public Builder app(Optional app) { - this.app = app; + @java.lang.Override + @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) + public _FinalStage withLabel(Optional withLabel) { + this.withLabel = withLabel; return this; } - public Builder app(String app) { - this.app = Optional.ofNullable(app); + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage reloadProps(Boolean reloadProps) { + this.reloadProps = Optional.ofNullable(reloadProps); return this; } /** - *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

*/ - @JsonSetter(value = "name", nulls = Nulls.SKIP) - public Builder name(Optional name) { - this.name = name; + @java.lang.Override + @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) + public _FinalStage reloadProps(Optional reloadProps) { + this.reloadProps = reloadProps; return this; } - public Builder name(String name) { - this.name = Optional.ofNullable(name); + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage useQuery(Boolean useQuery) { + this.useQuery = Optional.ofNullable(useQuery); return this; } /** - *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

*/ - @JsonSetter(value = "label", nulls = Nulls.SKIP) - public Builder label(Optional label) { - this.label = label; + @java.lang.Override + @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) + public _FinalStage useQuery(Optional useQuery) { + this.useQuery = useQuery; return this; } - public Builder label(String label) { - this.label = Optional.ofNullable(label); + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage remoteOptions(Boolean remoteOptions) { + this.remoteOptions = Optional.ofNullable(remoteOptions); return this; } /** - *

A description of the prop, shown to the user when configuring the component.

+ *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

*/ - @JsonSetter(value = "description", nulls = Nulls.SKIP) - public Builder description(Optional description) { - this.description = description; + @java.lang.Override + @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) + public _FinalStage remoteOptions(Optional remoteOptions) { + this.remoteOptions = remoteOptions; return this; } - public Builder description(String description) { - this.description = Optional.ofNullable(description); + /** + *

If true, should not expose this prop to the user

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage hidden(Boolean hidden) { + this.hidden = Optional.ofNullable(hidden); return this; } /** - *

If true, this prop does not need to be specified.

+ *

If true, should not expose this prop to the user

*/ - @JsonSetter(value = "optional", nulls = Nulls.SKIP) - public Builder optional(Optional optional) { - this.optional = optional; + @java.lang.Override + @JsonSetter(value = "hidden", nulls = Nulls.SKIP) + public _FinalStage hidden(Optional hidden) { + this.hidden = hidden; return this; } - public Builder optional(Boolean optional) { - this.optional = Optional.ofNullable(optional); + /** + *

If true, this prop will be ignored.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage disabled(Boolean disabled) { + this.disabled = Optional.ofNullable(disabled); return this; } /** *

If true, this prop will be ignored.

*/ + @java.lang.Override @JsonSetter(value = "disabled", nulls = Nulls.SKIP) - public Builder disabled(Optional disabled) { + public _FinalStage disabled(Optional disabled) { this.disabled = disabled; return this; } - public Builder disabled(Boolean disabled) { - this.disabled = Optional.ofNullable(disabled); - return this; - } - /** - *

If true, should not expose this prop to the user

+ *

If true, this prop does not need to be specified.

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "hidden", nulls = Nulls.SKIP) - public Builder hidden(Optional hidden) { - this.hidden = hidden; + @java.lang.Override + public _FinalStage optional(Boolean optional) { + this.optional = Optional.ofNullable(optional); return this; } - public Builder hidden(Boolean hidden) { - this.hidden = Optional.ofNullable(hidden); + /** + *

If true, this prop does not need to be specified.

+ */ + @java.lang.Override + @JsonSetter(value = "optional", nulls = Nulls.SKIP) + public _FinalStage optional(Optional optional) { + this.optional = optional; return this; } /** - *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ *

A description of the prop, shown to the user when configuring the component.

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) - public Builder remoteOptions(Optional remoteOptions) { - this.remoteOptions = remoteOptions; + @java.lang.Override + public _FinalStage description(String description) { + this.description = Optional.ofNullable(description); return this; } - public Builder remoteOptions(Boolean remoteOptions) { - this.remoteOptions = Optional.ofNullable(remoteOptions); + /** + *

A description of the prop, shown to the user when configuring the component.

+ */ + @java.lang.Override + @JsonSetter(value = "description", nulls = Nulls.SKIP) + public _FinalStage description(Optional description) { + this.description = description; return this; } /** - *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) - public Builder useQuery(Optional useQuery) { - this.useQuery = useQuery; + @java.lang.Override + public _FinalStage label(String label) { + this.label = Optional.ofNullable(label); return this; } - public Builder useQuery(Boolean useQuery) { - this.useQuery = Optional.ofNullable(useQuery); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ */ + @java.lang.Override + @JsonSetter(value = "label", nulls = Nulls.SKIP) + public _FinalStage label(Optional label) { + this.label = label; return this; } /** - *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ *

The name slug of the app, e.g. 'github', 'slack', etc. This is used to identify the app for which the account is being configured.

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) - public Builder reloadProps(Optional reloadProps) { - this.reloadProps = reloadProps; + @java.lang.Override + public _FinalStage app(String app) { + this.app = Optional.ofNullable(app); return this; } - public Builder reloadProps(Boolean reloadProps) { - this.reloadProps = Optional.ofNullable(reloadProps); + /** + *

The name slug of the app, e.g. 'github', 'slack', etc. This is used to identify the app for which the account is being configured.

+ */ + @java.lang.Override + @JsonSetter(value = "app", nulls = Nulls.SKIP) + public _FinalStage app(Optional app) { + this.app = app; return this; } - /** - *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

- */ - @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) - public Builder withLabel(Optional withLabel) { - this.withLabel = withLabel; + @java.lang.Override + public _FinalStage type(String type) { + this.type = Optional.ofNullable(type); return this; } - public Builder withLabel(Boolean withLabel) { - this.withLabel = Optional.ofNullable(withLabel); + @java.lang.Override + @JsonSetter(value = "type", nulls = Nulls.SKIP) + public _FinalStage type(Optional type) { + this.type = type; return this; } + @java.lang.Override public ConfigurablePropApp build() { return new ConfigurablePropApp( type, diff --git a/src/main/java/com/pipedream/api/types/ConfigurablePropBoolean.java b/src/main/java/com/pipedream/api/types/ConfigurablePropBoolean.java index ad596d0..219b5c7 100644 --- a/src/main/java/com/pipedream/api/types/ConfigurablePropBoolean.java +++ b/src/main/java/com/pipedream/api/types/ConfigurablePropBoolean.java @@ -16,13 +16,14 @@ import java.util.Map; import java.util.Objects; import java.util.Optional; +import org.jetbrains.annotations.NotNull; @JsonInclude(JsonInclude.Include.NON_ABSENT) @JsonDeserialize(builder = ConfigurablePropBoolean.Builder.class) public final class ConfigurablePropBoolean { private final Optional type; - private final Optional name; + private final String name; private final Optional label; @@ -46,7 +47,7 @@ public final class ConfigurablePropBoolean { private ConfigurablePropBoolean( Optional type, - Optional name, + String name, Optional label, Optional description, Optional optional, @@ -80,7 +81,7 @@ public Optional getType() { * @return When building configuredProps, make sure to use this field as the key when setting the prop value */ @JsonProperty("name") - public Optional getName() { + public String getName() { return name; } @@ -202,39 +203,120 @@ public String toString() { return ObjectMappers.stringify(this); } - public static Builder builder() { + public static NameStage builder() { return new Builder(); } - @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder { - private Optional type = Optional.empty(); + public interface NameStage { + /** + *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ */ + _FinalStage name(@NotNull String name); - private Optional name = Optional.empty(); + Builder from(ConfigurablePropBoolean other); + } - private Optional label = Optional.empty(); + public interface _FinalStage { + ConfigurablePropBoolean build(); - private Optional description = Optional.empty(); + _FinalStage type(Optional type); - private Optional optional = Optional.empty(); + _FinalStage type(String type); - private Optional disabled = Optional.empty(); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ */ + _FinalStage label(Optional label); - private Optional hidden = Optional.empty(); + _FinalStage label(String label); - private Optional remoteOptions = Optional.empty(); + /** + *

A description of the prop, shown to the user when configuring the component.

+ */ + _FinalStage description(Optional description); - private Optional useQuery = Optional.empty(); + _FinalStage description(String description); - private Optional reloadProps = Optional.empty(); + /** + *

If true, this prop does not need to be specified.

+ */ + _FinalStage optional(Optional optional); + + _FinalStage optional(Boolean optional); + + /** + *

If true, this prop will be ignored.

+ */ + _FinalStage disabled(Optional disabled); + + _FinalStage disabled(Boolean disabled); + + /** + *

If true, should not expose this prop to the user

+ */ + _FinalStage hidden(Optional hidden); + + _FinalStage hidden(Boolean hidden); + + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ */ + _FinalStage remoteOptions(Optional remoteOptions); + + _FinalStage remoteOptions(Boolean remoteOptions); + + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ */ + _FinalStage useQuery(Optional useQuery); + + _FinalStage useQuery(Boolean useQuery); + + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ */ + _FinalStage reloadProps(Optional reloadProps); + + _FinalStage reloadProps(Boolean reloadProps); + + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ */ + _FinalStage withLabel(Optional withLabel); + + _FinalStage withLabel(Boolean withLabel); + } + + @JsonIgnoreProperties(ignoreUnknown = true) + public static final class Builder implements NameStage, _FinalStage { + private String name; private Optional withLabel = Optional.empty(); + private Optional reloadProps = Optional.empty(); + + private Optional useQuery = Optional.empty(); + + private Optional remoteOptions = Optional.empty(); + + private Optional hidden = Optional.empty(); + + private Optional disabled = Optional.empty(); + + private Optional optional = Optional.empty(); + + private Optional description = Optional.empty(); + + private Optional label = Optional.empty(); + + private Optional type = Optional.empty(); + @JsonAnySetter private Map additionalProperties = new HashMap<>(); private Builder() {} + @java.lang.Override public Builder from(ConfigurablePropBoolean other) { type(other.getType()); name(other.getName()); @@ -250,157 +332,212 @@ public Builder from(ConfigurablePropBoolean other) { return this; } - @JsonSetter(value = "type", nulls = Nulls.SKIP) - public Builder type(Optional type) { - this.type = type; - return this; - } - - public Builder type(String type) { - this.type = Optional.ofNullable(type); - return this; - } - /** *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "name", nulls = Nulls.SKIP) - public Builder name(Optional name) { - this.name = name; + @java.lang.Override + @JsonSetter("name") + public _FinalStage name(@NotNull String name) { + this.name = Objects.requireNonNull(name, "name must not be null"); return this; } - public Builder name(String name) { - this.name = Optional.ofNullable(name); + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage withLabel(Boolean withLabel) { + this.withLabel = Optional.ofNullable(withLabel); return this; } /** - *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

*/ - @JsonSetter(value = "label", nulls = Nulls.SKIP) - public Builder label(Optional label) { - this.label = label; + @java.lang.Override + @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) + public _FinalStage withLabel(Optional withLabel) { + this.withLabel = withLabel; return this; } - public Builder label(String label) { - this.label = Optional.ofNullable(label); + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage reloadProps(Boolean reloadProps) { + this.reloadProps = Optional.ofNullable(reloadProps); return this; } /** - *

A description of the prop, shown to the user when configuring the component.

+ *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

*/ - @JsonSetter(value = "description", nulls = Nulls.SKIP) - public Builder description(Optional description) { - this.description = description; + @java.lang.Override + @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) + public _FinalStage reloadProps(Optional reloadProps) { + this.reloadProps = reloadProps; return this; } - public Builder description(String description) { - this.description = Optional.ofNullable(description); + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage useQuery(Boolean useQuery) { + this.useQuery = Optional.ofNullable(useQuery); return this; } /** - *

If true, this prop does not need to be specified.

+ *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

*/ - @JsonSetter(value = "optional", nulls = Nulls.SKIP) - public Builder optional(Optional optional) { - this.optional = optional; + @java.lang.Override + @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) + public _FinalStage useQuery(Optional useQuery) { + this.useQuery = useQuery; return this; } - public Builder optional(Boolean optional) { - this.optional = Optional.ofNullable(optional); + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage remoteOptions(Boolean remoteOptions) { + this.remoteOptions = Optional.ofNullable(remoteOptions); return this; } /** - *

If true, this prop will be ignored.

+ *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

*/ - @JsonSetter(value = "disabled", nulls = Nulls.SKIP) - public Builder disabled(Optional disabled) { - this.disabled = disabled; + @java.lang.Override + @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) + public _FinalStage remoteOptions(Optional remoteOptions) { + this.remoteOptions = remoteOptions; return this; } - public Builder disabled(Boolean disabled) { - this.disabled = Optional.ofNullable(disabled); + /** + *

If true, should not expose this prop to the user

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage hidden(Boolean hidden) { + this.hidden = Optional.ofNullable(hidden); return this; } /** *

If true, should not expose this prop to the user

*/ + @java.lang.Override @JsonSetter(value = "hidden", nulls = Nulls.SKIP) - public Builder hidden(Optional hidden) { + public _FinalStage hidden(Optional hidden) { this.hidden = hidden; return this; } - public Builder hidden(Boolean hidden) { - this.hidden = Optional.ofNullable(hidden); + /** + *

If true, this prop will be ignored.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage disabled(Boolean disabled) { + this.disabled = Optional.ofNullable(disabled); return this; } /** - *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ *

If true, this prop will be ignored.

*/ - @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) - public Builder remoteOptions(Optional remoteOptions) { - this.remoteOptions = remoteOptions; + @java.lang.Override + @JsonSetter(value = "disabled", nulls = Nulls.SKIP) + public _FinalStage disabled(Optional disabled) { + this.disabled = disabled; return this; } - public Builder remoteOptions(Boolean remoteOptions) { - this.remoteOptions = Optional.ofNullable(remoteOptions); + /** + *

If true, this prop does not need to be specified.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage optional(Boolean optional) { + this.optional = Optional.ofNullable(optional); return this; } /** - *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ *

If true, this prop does not need to be specified.

*/ - @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) - public Builder useQuery(Optional useQuery) { - this.useQuery = useQuery; + @java.lang.Override + @JsonSetter(value = "optional", nulls = Nulls.SKIP) + public _FinalStage optional(Optional optional) { + this.optional = optional; return this; } - public Builder useQuery(Boolean useQuery) { - this.useQuery = Optional.ofNullable(useQuery); + /** + *

A description of the prop, shown to the user when configuring the component.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage description(String description) { + this.description = Optional.ofNullable(description); return this; } /** - *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ *

A description of the prop, shown to the user when configuring the component.

*/ - @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) - public Builder reloadProps(Optional reloadProps) { - this.reloadProps = reloadProps; + @java.lang.Override + @JsonSetter(value = "description", nulls = Nulls.SKIP) + public _FinalStage description(Optional description) { + this.description = description; return this; } - public Builder reloadProps(Boolean reloadProps) { - this.reloadProps = Optional.ofNullable(reloadProps); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage label(String label) { + this.label = Optional.ofNullable(label); return this; } /** - *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

*/ - @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) - public Builder withLabel(Optional withLabel) { - this.withLabel = withLabel; + @java.lang.Override + @JsonSetter(value = "label", nulls = Nulls.SKIP) + public _FinalStage label(Optional label) { + this.label = label; return this; } - public Builder withLabel(Boolean withLabel) { - this.withLabel = Optional.ofNullable(withLabel); + @java.lang.Override + public _FinalStage type(String type) { + this.type = Optional.ofNullable(type); + return this; + } + + @java.lang.Override + @JsonSetter(value = "type", nulls = Nulls.SKIP) + public _FinalStage type(Optional type) { + this.type = type; return this; } + @java.lang.Override public ConfigurablePropBoolean build() { return new ConfigurablePropBoolean( type, diff --git a/src/main/java/com/pipedream/api/types/ConfigurablePropDiscord.java b/src/main/java/com/pipedream/api/types/ConfigurablePropDiscord.java index 91fffbf..6dbf7ec 100644 --- a/src/main/java/com/pipedream/api/types/ConfigurablePropDiscord.java +++ b/src/main/java/com/pipedream/api/types/ConfigurablePropDiscord.java @@ -16,13 +16,14 @@ import java.util.Map; import java.util.Objects; import java.util.Optional; +import org.jetbrains.annotations.NotNull; @JsonInclude(JsonInclude.Include.NON_ABSENT) @JsonDeserialize(builder = ConfigurablePropDiscord.Builder.class) public final class ConfigurablePropDiscord { private final Optional type; - private final Optional name; + private final String name; private final Optional label; @@ -46,7 +47,7 @@ public final class ConfigurablePropDiscord { private ConfigurablePropDiscord( Optional type, - Optional name, + String name, Optional label, Optional description, Optional optional, @@ -80,7 +81,7 @@ public Optional getType() { * @return When building configuredProps, make sure to use this field as the key when setting the prop value */ @JsonProperty("name") - public Optional getName() { + public String getName() { return name; } @@ -202,39 +203,120 @@ public String toString() { return ObjectMappers.stringify(this); } - public static Builder builder() { + public static NameStage builder() { return new Builder(); } - @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder { - private Optional type = Optional.empty(); + public interface NameStage { + /** + *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ */ + _FinalStage name(@NotNull String name); - private Optional name = Optional.empty(); + Builder from(ConfigurablePropDiscord other); + } - private Optional label = Optional.empty(); + public interface _FinalStage { + ConfigurablePropDiscord build(); - private Optional description = Optional.empty(); + _FinalStage type(Optional type); - private Optional optional = Optional.empty(); + _FinalStage type(String type); - private Optional disabled = Optional.empty(); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ */ + _FinalStage label(Optional label); - private Optional hidden = Optional.empty(); + _FinalStage label(String label); - private Optional remoteOptions = Optional.empty(); + /** + *

A description of the prop, shown to the user when configuring the component.

+ */ + _FinalStage description(Optional description); - private Optional useQuery = Optional.empty(); + _FinalStage description(String description); - private Optional reloadProps = Optional.empty(); + /** + *

If true, this prop does not need to be specified.

+ */ + _FinalStage optional(Optional optional); + + _FinalStage optional(Boolean optional); + + /** + *

If true, this prop will be ignored.

+ */ + _FinalStage disabled(Optional disabled); + + _FinalStage disabled(Boolean disabled); + + /** + *

If true, should not expose this prop to the user

+ */ + _FinalStage hidden(Optional hidden); + + _FinalStage hidden(Boolean hidden); + + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ */ + _FinalStage remoteOptions(Optional remoteOptions); + + _FinalStage remoteOptions(Boolean remoteOptions); + + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ */ + _FinalStage useQuery(Optional useQuery); + + _FinalStage useQuery(Boolean useQuery); + + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ */ + _FinalStage reloadProps(Optional reloadProps); + + _FinalStage reloadProps(Boolean reloadProps); + + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ */ + _FinalStage withLabel(Optional withLabel); + + _FinalStage withLabel(Boolean withLabel); + } + + @JsonIgnoreProperties(ignoreUnknown = true) + public static final class Builder implements NameStage, _FinalStage { + private String name; private Optional withLabel = Optional.empty(); + private Optional reloadProps = Optional.empty(); + + private Optional useQuery = Optional.empty(); + + private Optional remoteOptions = Optional.empty(); + + private Optional hidden = Optional.empty(); + + private Optional disabled = Optional.empty(); + + private Optional optional = Optional.empty(); + + private Optional description = Optional.empty(); + + private Optional label = Optional.empty(); + + private Optional type = Optional.empty(); + @JsonAnySetter private Map additionalProperties = new HashMap<>(); private Builder() {} + @java.lang.Override public Builder from(ConfigurablePropDiscord other) { type(other.getType()); name(other.getName()); @@ -250,157 +332,212 @@ public Builder from(ConfigurablePropDiscord other) { return this; } - @JsonSetter(value = "type", nulls = Nulls.SKIP) - public Builder type(Optional type) { - this.type = type; - return this; - } - - public Builder type(String type) { - this.type = Optional.ofNullable(type); - return this; - } - /** *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "name", nulls = Nulls.SKIP) - public Builder name(Optional name) { - this.name = name; + @java.lang.Override + @JsonSetter("name") + public _FinalStage name(@NotNull String name) { + this.name = Objects.requireNonNull(name, "name must not be null"); return this; } - public Builder name(String name) { - this.name = Optional.ofNullable(name); + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage withLabel(Boolean withLabel) { + this.withLabel = Optional.ofNullable(withLabel); return this; } /** - *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

*/ - @JsonSetter(value = "label", nulls = Nulls.SKIP) - public Builder label(Optional label) { - this.label = label; + @java.lang.Override + @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) + public _FinalStage withLabel(Optional withLabel) { + this.withLabel = withLabel; return this; } - public Builder label(String label) { - this.label = Optional.ofNullable(label); + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage reloadProps(Boolean reloadProps) { + this.reloadProps = Optional.ofNullable(reloadProps); return this; } /** - *

A description of the prop, shown to the user when configuring the component.

+ *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

*/ - @JsonSetter(value = "description", nulls = Nulls.SKIP) - public Builder description(Optional description) { - this.description = description; + @java.lang.Override + @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) + public _FinalStage reloadProps(Optional reloadProps) { + this.reloadProps = reloadProps; return this; } - public Builder description(String description) { - this.description = Optional.ofNullable(description); + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage useQuery(Boolean useQuery) { + this.useQuery = Optional.ofNullable(useQuery); return this; } /** - *

If true, this prop does not need to be specified.

+ *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

*/ - @JsonSetter(value = "optional", nulls = Nulls.SKIP) - public Builder optional(Optional optional) { - this.optional = optional; + @java.lang.Override + @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) + public _FinalStage useQuery(Optional useQuery) { + this.useQuery = useQuery; return this; } - public Builder optional(Boolean optional) { - this.optional = Optional.ofNullable(optional); + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage remoteOptions(Boolean remoteOptions) { + this.remoteOptions = Optional.ofNullable(remoteOptions); return this; } /** - *

If true, this prop will be ignored.

+ *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

*/ - @JsonSetter(value = "disabled", nulls = Nulls.SKIP) - public Builder disabled(Optional disabled) { - this.disabled = disabled; + @java.lang.Override + @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) + public _FinalStage remoteOptions(Optional remoteOptions) { + this.remoteOptions = remoteOptions; return this; } - public Builder disabled(Boolean disabled) { - this.disabled = Optional.ofNullable(disabled); + /** + *

If true, should not expose this prop to the user

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage hidden(Boolean hidden) { + this.hidden = Optional.ofNullable(hidden); return this; } /** *

If true, should not expose this prop to the user

*/ + @java.lang.Override @JsonSetter(value = "hidden", nulls = Nulls.SKIP) - public Builder hidden(Optional hidden) { + public _FinalStage hidden(Optional hidden) { this.hidden = hidden; return this; } - public Builder hidden(Boolean hidden) { - this.hidden = Optional.ofNullable(hidden); + /** + *

If true, this prop will be ignored.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage disabled(Boolean disabled) { + this.disabled = Optional.ofNullable(disabled); return this; } /** - *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ *

If true, this prop will be ignored.

*/ - @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) - public Builder remoteOptions(Optional remoteOptions) { - this.remoteOptions = remoteOptions; + @java.lang.Override + @JsonSetter(value = "disabled", nulls = Nulls.SKIP) + public _FinalStage disabled(Optional disabled) { + this.disabled = disabled; return this; } - public Builder remoteOptions(Boolean remoteOptions) { - this.remoteOptions = Optional.ofNullable(remoteOptions); + /** + *

If true, this prop does not need to be specified.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage optional(Boolean optional) { + this.optional = Optional.ofNullable(optional); return this; } /** - *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ *

If true, this prop does not need to be specified.

*/ - @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) - public Builder useQuery(Optional useQuery) { - this.useQuery = useQuery; + @java.lang.Override + @JsonSetter(value = "optional", nulls = Nulls.SKIP) + public _FinalStage optional(Optional optional) { + this.optional = optional; return this; } - public Builder useQuery(Boolean useQuery) { - this.useQuery = Optional.ofNullable(useQuery); + /** + *

A description of the prop, shown to the user when configuring the component.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage description(String description) { + this.description = Optional.ofNullable(description); return this; } /** - *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ *

A description of the prop, shown to the user when configuring the component.

*/ - @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) - public Builder reloadProps(Optional reloadProps) { - this.reloadProps = reloadProps; + @java.lang.Override + @JsonSetter(value = "description", nulls = Nulls.SKIP) + public _FinalStage description(Optional description) { + this.description = description; return this; } - public Builder reloadProps(Boolean reloadProps) { - this.reloadProps = Optional.ofNullable(reloadProps); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage label(String label) { + this.label = Optional.ofNullable(label); return this; } /** - *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

*/ - @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) - public Builder withLabel(Optional withLabel) { - this.withLabel = withLabel; + @java.lang.Override + @JsonSetter(value = "label", nulls = Nulls.SKIP) + public _FinalStage label(Optional label) { + this.label = label; return this; } - public Builder withLabel(Boolean withLabel) { - this.withLabel = Optional.ofNullable(withLabel); + @java.lang.Override + public _FinalStage type(String type) { + this.type = Optional.ofNullable(type); + return this; + } + + @java.lang.Override + @JsonSetter(value = "type", nulls = Nulls.SKIP) + public _FinalStage type(Optional type) { + this.type = type; return this; } + @java.lang.Override public ConfigurablePropDiscord build() { return new ConfigurablePropDiscord( type, diff --git a/src/main/java/com/pipedream/api/types/ConfigurablePropInteger.java b/src/main/java/com/pipedream/api/types/ConfigurablePropInteger.java index ddbdf76..730b67f 100644 --- a/src/main/java/com/pipedream/api/types/ConfigurablePropInteger.java +++ b/src/main/java/com/pipedream/api/types/ConfigurablePropInteger.java @@ -16,6 +16,7 @@ import java.util.Map; import java.util.Objects; import java.util.Optional; +import org.jetbrains.annotations.NotNull; @JsonInclude(JsonInclude.Include.NON_ABSENT) @JsonDeserialize(builder = ConfigurablePropInteger.Builder.class) @@ -26,7 +27,7 @@ public final class ConfigurablePropInteger { private final Optional max; - private final Optional name; + private final String name; private final Optional label; @@ -52,7 +53,7 @@ private ConfigurablePropInteger( Optional type, Optional min, Optional max, - Optional name, + String name, Optional label, Optional description, Optional optional, @@ -104,7 +105,7 @@ public Optional getMax() { * @return When building configuredProps, make sure to use this field as the key when setting the prop value */ @JsonProperty("name") - public Optional getName() { + public String getName() { return name; } @@ -230,43 +231,138 @@ public String toString() { return ObjectMappers.stringify(this); } - public static Builder builder() { + public static NameStage builder() { return new Builder(); } - @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder { - private Optional type = Optional.empty(); + public interface NameStage { + /** + *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ */ + _FinalStage name(@NotNull String name); - private Optional min = Optional.empty(); + Builder from(ConfigurablePropInteger other); + } - private Optional max = Optional.empty(); + public interface _FinalStage { + ConfigurablePropInteger build(); - private Optional name = Optional.empty(); + _FinalStage type(Optional type); - private Optional label = Optional.empty(); + _FinalStage type(String type); - private Optional description = Optional.empty(); + /** + *

The minimum value for this integer prop.

+ */ + _FinalStage min(Optional min); - private Optional optional = Optional.empty(); + _FinalStage min(Integer min); - private Optional disabled = Optional.empty(); + /** + *

The maximum value for this integer prop.

+ */ + _FinalStage max(Optional max); - private Optional hidden = Optional.empty(); + _FinalStage max(Integer max); - private Optional remoteOptions = Optional.empty(); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ */ + _FinalStage label(Optional label); - private Optional useQuery = Optional.empty(); + _FinalStage label(String label); - private Optional reloadProps = Optional.empty(); + /** + *

A description of the prop, shown to the user when configuring the component.

+ */ + _FinalStage description(Optional description); + + _FinalStage description(String description); + + /** + *

If true, this prop does not need to be specified.

+ */ + _FinalStage optional(Optional optional); + + _FinalStage optional(Boolean optional); + + /** + *

If true, this prop will be ignored.

+ */ + _FinalStage disabled(Optional disabled); + + _FinalStage disabled(Boolean disabled); + + /** + *

If true, should not expose this prop to the user

+ */ + _FinalStage hidden(Optional hidden); + + _FinalStage hidden(Boolean hidden); + + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ */ + _FinalStage remoteOptions(Optional remoteOptions); + + _FinalStage remoteOptions(Boolean remoteOptions); + + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ */ + _FinalStage useQuery(Optional useQuery); + + _FinalStage useQuery(Boolean useQuery); + + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ */ + _FinalStage reloadProps(Optional reloadProps); + + _FinalStage reloadProps(Boolean reloadProps); + + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ */ + _FinalStage withLabel(Optional withLabel); + + _FinalStage withLabel(Boolean withLabel); + } + + @JsonIgnoreProperties(ignoreUnknown = true) + public static final class Builder implements NameStage, _FinalStage { + private String name; private Optional withLabel = Optional.empty(); + private Optional reloadProps = Optional.empty(); + + private Optional useQuery = Optional.empty(); + + private Optional remoteOptions = Optional.empty(); + + private Optional hidden = Optional.empty(); + + private Optional disabled = Optional.empty(); + + private Optional optional = Optional.empty(); + + private Optional description = Optional.empty(); + + private Optional label = Optional.empty(); + + private Optional max = Optional.empty(); + + private Optional min = Optional.empty(); + + private Optional type = Optional.empty(); + @JsonAnySetter private Map additionalProperties = new HashMap<>(); private Builder() {} + @java.lang.Override public Builder from(ConfigurablePropInteger other) { type(other.getType()); min(other.getMin()); @@ -284,185 +380,252 @@ public Builder from(ConfigurablePropInteger other) { return this; } - @JsonSetter(value = "type", nulls = Nulls.SKIP) - public Builder type(Optional type) { - this.type = type; - return this; - } - - public Builder type(String type) { - this.type = Optional.ofNullable(type); - return this; - } - /** - *

The minimum value for this integer prop.

+ *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "min", nulls = Nulls.SKIP) - public Builder min(Optional min) { - this.min = min; + @java.lang.Override + @JsonSetter("name") + public _FinalStage name(@NotNull String name) { + this.name = Objects.requireNonNull(name, "name must not be null"); return this; } - public Builder min(Integer min) { - this.min = Optional.ofNullable(min); + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage withLabel(Boolean withLabel) { + this.withLabel = Optional.ofNullable(withLabel); return this; } /** - *

The maximum value for this integer prop.

+ *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

*/ - @JsonSetter(value = "max", nulls = Nulls.SKIP) - public Builder max(Optional max) { - this.max = max; + @java.lang.Override + @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) + public _FinalStage withLabel(Optional withLabel) { + this.withLabel = withLabel; return this; } - public Builder max(Integer max) { - this.max = Optional.ofNullable(max); + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage reloadProps(Boolean reloadProps) { + this.reloadProps = Optional.ofNullable(reloadProps); return this; } /** - *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

*/ - @JsonSetter(value = "name", nulls = Nulls.SKIP) - public Builder name(Optional name) { - this.name = name; + @java.lang.Override + @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) + public _FinalStage reloadProps(Optional reloadProps) { + this.reloadProps = reloadProps; return this; } - public Builder name(String name) { - this.name = Optional.ofNullable(name); + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage useQuery(Boolean useQuery) { + this.useQuery = Optional.ofNullable(useQuery); return this; } /** - *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

*/ - @JsonSetter(value = "label", nulls = Nulls.SKIP) - public Builder label(Optional label) { - this.label = label; + @java.lang.Override + @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) + public _FinalStage useQuery(Optional useQuery) { + this.useQuery = useQuery; return this; } - public Builder label(String label) { - this.label = Optional.ofNullable(label); + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage remoteOptions(Boolean remoteOptions) { + this.remoteOptions = Optional.ofNullable(remoteOptions); return this; } /** - *

A description of the prop, shown to the user when configuring the component.

+ *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

*/ - @JsonSetter(value = "description", nulls = Nulls.SKIP) - public Builder description(Optional description) { - this.description = description; + @java.lang.Override + @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) + public _FinalStage remoteOptions(Optional remoteOptions) { + this.remoteOptions = remoteOptions; return this; } - public Builder description(String description) { - this.description = Optional.ofNullable(description); + /** + *

If true, should not expose this prop to the user

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage hidden(Boolean hidden) { + this.hidden = Optional.ofNullable(hidden); return this; } /** - *

If true, this prop does not need to be specified.

+ *

If true, should not expose this prop to the user

*/ - @JsonSetter(value = "optional", nulls = Nulls.SKIP) - public Builder optional(Optional optional) { - this.optional = optional; + @java.lang.Override + @JsonSetter(value = "hidden", nulls = Nulls.SKIP) + public _FinalStage hidden(Optional hidden) { + this.hidden = hidden; return this; } - public Builder optional(Boolean optional) { - this.optional = Optional.ofNullable(optional); + /** + *

If true, this prop will be ignored.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage disabled(Boolean disabled) { + this.disabled = Optional.ofNullable(disabled); return this; } /** *

If true, this prop will be ignored.

*/ + @java.lang.Override @JsonSetter(value = "disabled", nulls = Nulls.SKIP) - public Builder disabled(Optional disabled) { + public _FinalStage disabled(Optional disabled) { this.disabled = disabled; return this; } - public Builder disabled(Boolean disabled) { - this.disabled = Optional.ofNullable(disabled); + /** + *

If true, this prop does not need to be specified.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage optional(Boolean optional) { + this.optional = Optional.ofNullable(optional); return this; } /** - *

If true, should not expose this prop to the user

+ *

If true, this prop does not need to be specified.

*/ - @JsonSetter(value = "hidden", nulls = Nulls.SKIP) - public Builder hidden(Optional hidden) { - this.hidden = hidden; + @java.lang.Override + @JsonSetter(value = "optional", nulls = Nulls.SKIP) + public _FinalStage optional(Optional optional) { + this.optional = optional; return this; } - public Builder hidden(Boolean hidden) { - this.hidden = Optional.ofNullable(hidden); + /** + *

A description of the prop, shown to the user when configuring the component.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage description(String description) { + this.description = Optional.ofNullable(description); return this; } /** - *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ *

A description of the prop, shown to the user when configuring the component.

*/ - @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) - public Builder remoteOptions(Optional remoteOptions) { - this.remoteOptions = remoteOptions; + @java.lang.Override + @JsonSetter(value = "description", nulls = Nulls.SKIP) + public _FinalStage description(Optional description) { + this.description = description; return this; } - public Builder remoteOptions(Boolean remoteOptions) { - this.remoteOptions = Optional.ofNullable(remoteOptions); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage label(String label) { + this.label = Optional.ofNullable(label); return this; } /** - *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

*/ - @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) - public Builder useQuery(Optional useQuery) { - this.useQuery = useQuery; + @java.lang.Override + @JsonSetter(value = "label", nulls = Nulls.SKIP) + public _FinalStage label(Optional label) { + this.label = label; return this; } - public Builder useQuery(Boolean useQuery) { - this.useQuery = Optional.ofNullable(useQuery); + /** + *

The maximum value for this integer prop.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage max(Integer max) { + this.max = Optional.ofNullable(max); return this; } /** - *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ *

The maximum value for this integer prop.

*/ - @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) - public Builder reloadProps(Optional reloadProps) { - this.reloadProps = reloadProps; + @java.lang.Override + @JsonSetter(value = "max", nulls = Nulls.SKIP) + public _FinalStage max(Optional max) { + this.max = max; return this; } - public Builder reloadProps(Boolean reloadProps) { - this.reloadProps = Optional.ofNullable(reloadProps); + /** + *

The minimum value for this integer prop.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage min(Integer min) { + this.min = Optional.ofNullable(min); return this; } /** - *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ *

The minimum value for this integer prop.

*/ - @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) - public Builder withLabel(Optional withLabel) { - this.withLabel = withLabel; + @java.lang.Override + @JsonSetter(value = "min", nulls = Nulls.SKIP) + public _FinalStage min(Optional min) { + this.min = min; return this; } - public Builder withLabel(Boolean withLabel) { - this.withLabel = Optional.ofNullable(withLabel); + @java.lang.Override + public _FinalStage type(String type) { + this.type = Optional.ofNullable(type); + return this; + } + + @java.lang.Override + @JsonSetter(value = "type", nulls = Nulls.SKIP) + public _FinalStage type(Optional type) { + this.type = type; return this; } + @java.lang.Override public ConfigurablePropInteger build() { return new ConfigurablePropInteger( type, diff --git a/src/main/java/com/pipedream/api/types/ConfigurablePropObject.java b/src/main/java/com/pipedream/api/types/ConfigurablePropObject.java index 0cd6fa0..e405fca 100644 --- a/src/main/java/com/pipedream/api/types/ConfigurablePropObject.java +++ b/src/main/java/com/pipedream/api/types/ConfigurablePropObject.java @@ -16,13 +16,14 @@ import java.util.Map; import java.util.Objects; import java.util.Optional; +import org.jetbrains.annotations.NotNull; @JsonInclude(JsonInclude.Include.NON_ABSENT) @JsonDeserialize(builder = ConfigurablePropObject.Builder.class) public final class ConfigurablePropObject { private final Optional type; - private final Optional name; + private final String name; private final Optional label; @@ -46,7 +47,7 @@ public final class ConfigurablePropObject { private ConfigurablePropObject( Optional type, - Optional name, + String name, Optional label, Optional description, Optional optional, @@ -80,7 +81,7 @@ public Optional getType() { * @return When building configuredProps, make sure to use this field as the key when setting the prop value */ @JsonProperty("name") - public Optional getName() { + public String getName() { return name; } @@ -202,39 +203,120 @@ public String toString() { return ObjectMappers.stringify(this); } - public static Builder builder() { + public static NameStage builder() { return new Builder(); } - @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder { - private Optional type = Optional.empty(); + public interface NameStage { + /** + *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ */ + _FinalStage name(@NotNull String name); - private Optional name = Optional.empty(); + Builder from(ConfigurablePropObject other); + } - private Optional label = Optional.empty(); + public interface _FinalStage { + ConfigurablePropObject build(); - private Optional description = Optional.empty(); + _FinalStage type(Optional type); - private Optional optional = Optional.empty(); + _FinalStage type(String type); - private Optional disabled = Optional.empty(); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ */ + _FinalStage label(Optional label); - private Optional hidden = Optional.empty(); + _FinalStage label(String label); - private Optional remoteOptions = Optional.empty(); + /** + *

A description of the prop, shown to the user when configuring the component.

+ */ + _FinalStage description(Optional description); - private Optional useQuery = Optional.empty(); + _FinalStage description(String description); - private Optional reloadProps = Optional.empty(); + /** + *

If true, this prop does not need to be specified.

+ */ + _FinalStage optional(Optional optional); + + _FinalStage optional(Boolean optional); + + /** + *

If true, this prop will be ignored.

+ */ + _FinalStage disabled(Optional disabled); + + _FinalStage disabled(Boolean disabled); + + /** + *

If true, should not expose this prop to the user

+ */ + _FinalStage hidden(Optional hidden); + + _FinalStage hidden(Boolean hidden); + + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ */ + _FinalStage remoteOptions(Optional remoteOptions); + + _FinalStage remoteOptions(Boolean remoteOptions); + + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ */ + _FinalStage useQuery(Optional useQuery); + + _FinalStage useQuery(Boolean useQuery); + + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ */ + _FinalStage reloadProps(Optional reloadProps); + + _FinalStage reloadProps(Boolean reloadProps); + + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ */ + _FinalStage withLabel(Optional withLabel); + + _FinalStage withLabel(Boolean withLabel); + } + + @JsonIgnoreProperties(ignoreUnknown = true) + public static final class Builder implements NameStage, _FinalStage { + private String name; private Optional withLabel = Optional.empty(); + private Optional reloadProps = Optional.empty(); + + private Optional useQuery = Optional.empty(); + + private Optional remoteOptions = Optional.empty(); + + private Optional hidden = Optional.empty(); + + private Optional disabled = Optional.empty(); + + private Optional optional = Optional.empty(); + + private Optional description = Optional.empty(); + + private Optional label = Optional.empty(); + + private Optional type = Optional.empty(); + @JsonAnySetter private Map additionalProperties = new HashMap<>(); private Builder() {} + @java.lang.Override public Builder from(ConfigurablePropObject other) { type(other.getType()); name(other.getName()); @@ -250,157 +332,212 @@ public Builder from(ConfigurablePropObject other) { return this; } - @JsonSetter(value = "type", nulls = Nulls.SKIP) - public Builder type(Optional type) { - this.type = type; - return this; - } - - public Builder type(String type) { - this.type = Optional.ofNullable(type); - return this; - } - /** *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "name", nulls = Nulls.SKIP) - public Builder name(Optional name) { - this.name = name; + @java.lang.Override + @JsonSetter("name") + public _FinalStage name(@NotNull String name) { + this.name = Objects.requireNonNull(name, "name must not be null"); return this; } - public Builder name(String name) { - this.name = Optional.ofNullable(name); + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage withLabel(Boolean withLabel) { + this.withLabel = Optional.ofNullable(withLabel); return this; } /** - *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

*/ - @JsonSetter(value = "label", nulls = Nulls.SKIP) - public Builder label(Optional label) { - this.label = label; + @java.lang.Override + @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) + public _FinalStage withLabel(Optional withLabel) { + this.withLabel = withLabel; return this; } - public Builder label(String label) { - this.label = Optional.ofNullable(label); + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage reloadProps(Boolean reloadProps) { + this.reloadProps = Optional.ofNullable(reloadProps); return this; } /** - *

A description of the prop, shown to the user when configuring the component.

+ *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

*/ - @JsonSetter(value = "description", nulls = Nulls.SKIP) - public Builder description(Optional description) { - this.description = description; + @java.lang.Override + @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) + public _FinalStage reloadProps(Optional reloadProps) { + this.reloadProps = reloadProps; return this; } - public Builder description(String description) { - this.description = Optional.ofNullable(description); + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage useQuery(Boolean useQuery) { + this.useQuery = Optional.ofNullable(useQuery); return this; } /** - *

If true, this prop does not need to be specified.

+ *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

*/ - @JsonSetter(value = "optional", nulls = Nulls.SKIP) - public Builder optional(Optional optional) { - this.optional = optional; + @java.lang.Override + @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) + public _FinalStage useQuery(Optional useQuery) { + this.useQuery = useQuery; return this; } - public Builder optional(Boolean optional) { - this.optional = Optional.ofNullable(optional); + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage remoteOptions(Boolean remoteOptions) { + this.remoteOptions = Optional.ofNullable(remoteOptions); return this; } /** - *

If true, this prop will be ignored.

+ *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

*/ - @JsonSetter(value = "disabled", nulls = Nulls.SKIP) - public Builder disabled(Optional disabled) { - this.disabled = disabled; + @java.lang.Override + @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) + public _FinalStage remoteOptions(Optional remoteOptions) { + this.remoteOptions = remoteOptions; return this; } - public Builder disabled(Boolean disabled) { - this.disabled = Optional.ofNullable(disabled); + /** + *

If true, should not expose this prop to the user

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage hidden(Boolean hidden) { + this.hidden = Optional.ofNullable(hidden); return this; } /** *

If true, should not expose this prop to the user

*/ + @java.lang.Override @JsonSetter(value = "hidden", nulls = Nulls.SKIP) - public Builder hidden(Optional hidden) { + public _FinalStage hidden(Optional hidden) { this.hidden = hidden; return this; } - public Builder hidden(Boolean hidden) { - this.hidden = Optional.ofNullable(hidden); + /** + *

If true, this prop will be ignored.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage disabled(Boolean disabled) { + this.disabled = Optional.ofNullable(disabled); return this; } /** - *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ *

If true, this prop will be ignored.

*/ - @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) - public Builder remoteOptions(Optional remoteOptions) { - this.remoteOptions = remoteOptions; + @java.lang.Override + @JsonSetter(value = "disabled", nulls = Nulls.SKIP) + public _FinalStage disabled(Optional disabled) { + this.disabled = disabled; return this; } - public Builder remoteOptions(Boolean remoteOptions) { - this.remoteOptions = Optional.ofNullable(remoteOptions); + /** + *

If true, this prop does not need to be specified.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage optional(Boolean optional) { + this.optional = Optional.ofNullable(optional); return this; } /** - *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ *

If true, this prop does not need to be specified.

*/ - @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) - public Builder useQuery(Optional useQuery) { - this.useQuery = useQuery; + @java.lang.Override + @JsonSetter(value = "optional", nulls = Nulls.SKIP) + public _FinalStage optional(Optional optional) { + this.optional = optional; return this; } - public Builder useQuery(Boolean useQuery) { - this.useQuery = Optional.ofNullable(useQuery); + /** + *

A description of the prop, shown to the user when configuring the component.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage description(String description) { + this.description = Optional.ofNullable(description); return this; } /** - *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ *

A description of the prop, shown to the user when configuring the component.

*/ - @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) - public Builder reloadProps(Optional reloadProps) { - this.reloadProps = reloadProps; + @java.lang.Override + @JsonSetter(value = "description", nulls = Nulls.SKIP) + public _FinalStage description(Optional description) { + this.description = description; return this; } - public Builder reloadProps(Boolean reloadProps) { - this.reloadProps = Optional.ofNullable(reloadProps); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage label(String label) { + this.label = Optional.ofNullable(label); return this; } /** - *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

*/ - @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) - public Builder withLabel(Optional withLabel) { - this.withLabel = withLabel; + @java.lang.Override + @JsonSetter(value = "label", nulls = Nulls.SKIP) + public _FinalStage label(Optional label) { + this.label = label; return this; } - public Builder withLabel(Boolean withLabel) { - this.withLabel = Optional.ofNullable(withLabel); + @java.lang.Override + public _FinalStage type(String type) { + this.type = Optional.ofNullable(type); + return this; + } + + @java.lang.Override + @JsonSetter(value = "type", nulls = Nulls.SKIP) + public _FinalStage type(Optional type) { + this.type = type; return this; } + @java.lang.Override public ConfigurablePropObject build() { return new ConfigurablePropObject( type, diff --git a/src/main/java/com/pipedream/api/types/ConfigurablePropString.java b/src/main/java/com/pipedream/api/types/ConfigurablePropString.java index c85dcf4..7347504 100644 --- a/src/main/java/com/pipedream/api/types/ConfigurablePropString.java +++ b/src/main/java/com/pipedream/api/types/ConfigurablePropString.java @@ -16,6 +16,7 @@ import java.util.Map; import java.util.Objects; import java.util.Optional; +import org.jetbrains.annotations.NotNull; @JsonInclude(JsonInclude.Include.NON_ABSENT) @JsonDeserialize(builder = ConfigurablePropString.Builder.class) @@ -24,7 +25,7 @@ public final class ConfigurablePropString { private final Optional secret; - private final Optional name; + private final String name; private final Optional label; @@ -49,7 +50,7 @@ public final class ConfigurablePropString { private ConfigurablePropString( Optional type, Optional secret, - Optional name, + String name, Optional label, Optional description, Optional optional, @@ -92,7 +93,7 @@ public Optional getSecret() { * @return When building configuredProps, make sure to use this field as the key when setting the prop value */ @JsonProperty("name") - public Optional getName() { + public String getName() { return name; } @@ -216,41 +217,129 @@ public String toString() { return ObjectMappers.stringify(this); } - public static Builder builder() { + public static NameStage builder() { return new Builder(); } + public interface NameStage { + /** + *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ */ + _FinalStage name(@NotNull String name); + + Builder from(ConfigurablePropString other); + } + + public interface _FinalStage { + ConfigurablePropString build(); + + _FinalStage type(Optional type); + + _FinalStage type(String type); + + /** + *

If true, this prop is a secret and should not be displayed in plain text.

+ */ + _FinalStage secret(Optional secret); + + _FinalStage secret(Boolean secret); + + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ */ + _FinalStage label(Optional label); + + _FinalStage label(String label); + + /** + *

A description of the prop, shown to the user when configuring the component.

+ */ + _FinalStage description(Optional description); + + _FinalStage description(String description); + + /** + *

If true, this prop does not need to be specified.

+ */ + _FinalStage optional(Optional optional); + + _FinalStage optional(Boolean optional); + + /** + *

If true, this prop will be ignored.

+ */ + _FinalStage disabled(Optional disabled); + + _FinalStage disabled(Boolean disabled); + + /** + *

If true, should not expose this prop to the user

+ */ + _FinalStage hidden(Optional hidden); + + _FinalStage hidden(Boolean hidden); + + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ */ + _FinalStage remoteOptions(Optional remoteOptions); + + _FinalStage remoteOptions(Boolean remoteOptions); + + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ */ + _FinalStage useQuery(Optional useQuery); + + _FinalStage useQuery(Boolean useQuery); + + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ */ + _FinalStage reloadProps(Optional reloadProps); + + _FinalStage reloadProps(Boolean reloadProps); + + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ */ + _FinalStage withLabel(Optional withLabel); + + _FinalStage withLabel(Boolean withLabel); + } + @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder { - private Optional type = Optional.empty(); + public static final class Builder implements NameStage, _FinalStage { + private String name; - private Optional secret = Optional.empty(); + private Optional withLabel = Optional.empty(); - private Optional name = Optional.empty(); + private Optional reloadProps = Optional.empty(); - private Optional label = Optional.empty(); + private Optional useQuery = Optional.empty(); - private Optional description = Optional.empty(); + private Optional remoteOptions = Optional.empty(); - private Optional optional = Optional.empty(); + private Optional hidden = Optional.empty(); private Optional disabled = Optional.empty(); - private Optional hidden = Optional.empty(); + private Optional optional = Optional.empty(); - private Optional remoteOptions = Optional.empty(); + private Optional description = Optional.empty(); - private Optional useQuery = Optional.empty(); + private Optional label = Optional.empty(); - private Optional reloadProps = Optional.empty(); + private Optional secret = Optional.empty(); - private Optional withLabel = Optional.empty(); + private Optional type = Optional.empty(); @JsonAnySetter private Map additionalProperties = new HashMap<>(); private Builder() {} + @java.lang.Override public Builder from(ConfigurablePropString other) { type(other.getType()); secret(other.getSecret()); @@ -267,171 +356,232 @@ public Builder from(ConfigurablePropString other) { return this; } - @JsonSetter(value = "type", nulls = Nulls.SKIP) - public Builder type(Optional type) { - this.type = type; + /** + *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + @JsonSetter("name") + public _FinalStage name(@NotNull String name) { + this.name = Objects.requireNonNull(name, "name must not be null"); return this; } - public Builder type(String type) { - this.type = Optional.ofNullable(type); + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage withLabel(Boolean withLabel) { + this.withLabel = Optional.ofNullable(withLabel); return this; } /** - *

If true, this prop is a secret and should not be displayed in plain text.

+ *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

*/ - @JsonSetter(value = "secret", nulls = Nulls.SKIP) - public Builder secret(Optional secret) { - this.secret = secret; + @java.lang.Override + @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) + public _FinalStage withLabel(Optional withLabel) { + this.withLabel = withLabel; return this; } - public Builder secret(Boolean secret) { - this.secret = Optional.ofNullable(secret); + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage reloadProps(Boolean reloadProps) { + this.reloadProps = Optional.ofNullable(reloadProps); return this; } /** - *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

*/ - @JsonSetter(value = "name", nulls = Nulls.SKIP) - public Builder name(Optional name) { - this.name = name; + @java.lang.Override + @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) + public _FinalStage reloadProps(Optional reloadProps) { + this.reloadProps = reloadProps; return this; } - public Builder name(String name) { - this.name = Optional.ofNullable(name); + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage useQuery(Boolean useQuery) { + this.useQuery = Optional.ofNullable(useQuery); return this; } /** - *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

*/ - @JsonSetter(value = "label", nulls = Nulls.SKIP) - public Builder label(Optional label) { - this.label = label; + @java.lang.Override + @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) + public _FinalStage useQuery(Optional useQuery) { + this.useQuery = useQuery; return this; } - public Builder label(String label) { - this.label = Optional.ofNullable(label); + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage remoteOptions(Boolean remoteOptions) { + this.remoteOptions = Optional.ofNullable(remoteOptions); return this; } /** - *

A description of the prop, shown to the user when configuring the component.

+ *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

*/ - @JsonSetter(value = "description", nulls = Nulls.SKIP) - public Builder description(Optional description) { - this.description = description; + @java.lang.Override + @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) + public _FinalStage remoteOptions(Optional remoteOptions) { + this.remoteOptions = remoteOptions; return this; } - public Builder description(String description) { - this.description = Optional.ofNullable(description); + /** + *

If true, should not expose this prop to the user

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage hidden(Boolean hidden) { + this.hidden = Optional.ofNullable(hidden); return this; } /** - *

If true, this prop does not need to be specified.

+ *

If true, should not expose this prop to the user

*/ - @JsonSetter(value = "optional", nulls = Nulls.SKIP) - public Builder optional(Optional optional) { - this.optional = optional; + @java.lang.Override + @JsonSetter(value = "hidden", nulls = Nulls.SKIP) + public _FinalStage hidden(Optional hidden) { + this.hidden = hidden; return this; } - public Builder optional(Boolean optional) { - this.optional = Optional.ofNullable(optional); + /** + *

If true, this prop will be ignored.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage disabled(Boolean disabled) { + this.disabled = Optional.ofNullable(disabled); return this; } /** *

If true, this prop will be ignored.

*/ + @java.lang.Override @JsonSetter(value = "disabled", nulls = Nulls.SKIP) - public Builder disabled(Optional disabled) { + public _FinalStage disabled(Optional disabled) { this.disabled = disabled; return this; } - public Builder disabled(Boolean disabled) { - this.disabled = Optional.ofNullable(disabled); - return this; - } - /** - *

If true, should not expose this prop to the user

+ *

If true, this prop does not need to be specified.

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "hidden", nulls = Nulls.SKIP) - public Builder hidden(Optional hidden) { - this.hidden = hidden; + @java.lang.Override + public _FinalStage optional(Boolean optional) { + this.optional = Optional.ofNullable(optional); return this; } - public Builder hidden(Boolean hidden) { - this.hidden = Optional.ofNullable(hidden); + /** + *

If true, this prop does not need to be specified.

+ */ + @java.lang.Override + @JsonSetter(value = "optional", nulls = Nulls.SKIP) + public _FinalStage optional(Optional optional) { + this.optional = optional; return this; } /** - *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ *

A description of the prop, shown to the user when configuring the component.

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) - public Builder remoteOptions(Optional remoteOptions) { - this.remoteOptions = remoteOptions; + @java.lang.Override + public _FinalStage description(String description) { + this.description = Optional.ofNullable(description); return this; } - public Builder remoteOptions(Boolean remoteOptions) { - this.remoteOptions = Optional.ofNullable(remoteOptions); + /** + *

A description of the prop, shown to the user when configuring the component.

+ */ + @java.lang.Override + @JsonSetter(value = "description", nulls = Nulls.SKIP) + public _FinalStage description(Optional description) { + this.description = description; return this; } /** - *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) - public Builder useQuery(Optional useQuery) { - this.useQuery = useQuery; + @java.lang.Override + public _FinalStage label(String label) { + this.label = Optional.ofNullable(label); return this; } - public Builder useQuery(Boolean useQuery) { - this.useQuery = Optional.ofNullable(useQuery); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ */ + @java.lang.Override + @JsonSetter(value = "label", nulls = Nulls.SKIP) + public _FinalStage label(Optional label) { + this.label = label; return this; } /** - *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ *

If true, this prop is a secret and should not be displayed in plain text.

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) - public Builder reloadProps(Optional reloadProps) { - this.reloadProps = reloadProps; + @java.lang.Override + public _FinalStage secret(Boolean secret) { + this.secret = Optional.ofNullable(secret); return this; } - public Builder reloadProps(Boolean reloadProps) { - this.reloadProps = Optional.ofNullable(reloadProps); + /** + *

If true, this prop is a secret and should not be displayed in plain text.

+ */ + @java.lang.Override + @JsonSetter(value = "secret", nulls = Nulls.SKIP) + public _FinalStage secret(Optional secret) { + this.secret = secret; return this; } - /** - *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

- */ - @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) - public Builder withLabel(Optional withLabel) { - this.withLabel = withLabel; + @java.lang.Override + public _FinalStage type(String type) { + this.type = Optional.ofNullable(type); return this; } - public Builder withLabel(Boolean withLabel) { - this.withLabel = Optional.ofNullable(withLabel); + @java.lang.Override + @JsonSetter(value = "type", nulls = Nulls.SKIP) + public _FinalStage type(Optional type) { + this.type = type; return this; } + @java.lang.Override public ConfigurablePropString build() { return new ConfigurablePropString( type, diff --git a/src/main/java/com/pipedream/api/types/ConfigurablePropStringArray.java b/src/main/java/com/pipedream/api/types/ConfigurablePropStringArray.java index 664fc6a..4708211 100644 --- a/src/main/java/com/pipedream/api/types/ConfigurablePropStringArray.java +++ b/src/main/java/com/pipedream/api/types/ConfigurablePropStringArray.java @@ -16,6 +16,7 @@ import java.util.Map; import java.util.Objects; import java.util.Optional; +import org.jetbrains.annotations.NotNull; @JsonInclude(JsonInclude.Include.NON_ABSENT) @JsonDeserialize(builder = ConfigurablePropStringArray.Builder.class) @@ -24,7 +25,7 @@ public final class ConfigurablePropStringArray { private final Optional secret; - private final Optional name; + private final String name; private final Optional label; @@ -49,7 +50,7 @@ public final class ConfigurablePropStringArray { private ConfigurablePropStringArray( Optional type, Optional secret, - Optional name, + String name, Optional label, Optional description, Optional optional, @@ -92,7 +93,7 @@ public Optional getSecret() { * @return When building configuredProps, make sure to use this field as the key when setting the prop value */ @JsonProperty("name") - public Optional getName() { + public String getName() { return name; } @@ -216,41 +217,129 @@ public String toString() { return ObjectMappers.stringify(this); } - public static Builder builder() { + public static NameStage builder() { return new Builder(); } + public interface NameStage { + /** + *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ */ + _FinalStage name(@NotNull String name); + + Builder from(ConfigurablePropStringArray other); + } + + public interface _FinalStage { + ConfigurablePropStringArray build(); + + _FinalStage type(Optional type); + + _FinalStage type(String type); + + /** + *

If true, this prop is a secret and should not be displayed in plain text.

+ */ + _FinalStage secret(Optional secret); + + _FinalStage secret(Boolean secret); + + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ */ + _FinalStage label(Optional label); + + _FinalStage label(String label); + + /** + *

A description of the prop, shown to the user when configuring the component.

+ */ + _FinalStage description(Optional description); + + _FinalStage description(String description); + + /** + *

If true, this prop does not need to be specified.

+ */ + _FinalStage optional(Optional optional); + + _FinalStage optional(Boolean optional); + + /** + *

If true, this prop will be ignored.

+ */ + _FinalStage disabled(Optional disabled); + + _FinalStage disabled(Boolean disabled); + + /** + *

If true, should not expose this prop to the user

+ */ + _FinalStage hidden(Optional hidden); + + _FinalStage hidden(Boolean hidden); + + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ */ + _FinalStage remoteOptions(Optional remoteOptions); + + _FinalStage remoteOptions(Boolean remoteOptions); + + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ */ + _FinalStage useQuery(Optional useQuery); + + _FinalStage useQuery(Boolean useQuery); + + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ */ + _FinalStage reloadProps(Optional reloadProps); + + _FinalStage reloadProps(Boolean reloadProps); + + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ */ + _FinalStage withLabel(Optional withLabel); + + _FinalStage withLabel(Boolean withLabel); + } + @JsonIgnoreProperties(ignoreUnknown = true) - public static final class Builder { - private Optional type = Optional.empty(); + public static final class Builder implements NameStage, _FinalStage { + private String name; - private Optional secret = Optional.empty(); + private Optional withLabel = Optional.empty(); - private Optional name = Optional.empty(); + private Optional reloadProps = Optional.empty(); - private Optional label = Optional.empty(); + private Optional useQuery = Optional.empty(); - private Optional description = Optional.empty(); + private Optional remoteOptions = Optional.empty(); - private Optional optional = Optional.empty(); + private Optional hidden = Optional.empty(); private Optional disabled = Optional.empty(); - private Optional hidden = Optional.empty(); + private Optional optional = Optional.empty(); - private Optional remoteOptions = Optional.empty(); + private Optional description = Optional.empty(); - private Optional useQuery = Optional.empty(); + private Optional label = Optional.empty(); - private Optional reloadProps = Optional.empty(); + private Optional secret = Optional.empty(); - private Optional withLabel = Optional.empty(); + private Optional type = Optional.empty(); @JsonAnySetter private Map additionalProperties = new HashMap<>(); private Builder() {} + @java.lang.Override public Builder from(ConfigurablePropStringArray other) { type(other.getType()); secret(other.getSecret()); @@ -267,171 +356,232 @@ public Builder from(ConfigurablePropStringArray other) { return this; } - @JsonSetter(value = "type", nulls = Nulls.SKIP) - public Builder type(Optional type) { - this.type = type; + /** + *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + @JsonSetter("name") + public _FinalStage name(@NotNull String name) { + this.name = Objects.requireNonNull(name, "name must not be null"); return this; } - public Builder type(String type) { - this.type = Optional.ofNullable(type); + /** + *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage withLabel(Boolean withLabel) { + this.withLabel = Optional.ofNullable(withLabel); return this; } /** - *

If true, this prop is a secret and should not be displayed in plain text.

+ *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

*/ - @JsonSetter(value = "secret", nulls = Nulls.SKIP) - public Builder secret(Optional secret) { - this.secret = secret; + @java.lang.Override + @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) + public _FinalStage withLabel(Optional withLabel) { + this.withLabel = withLabel; return this; } - public Builder secret(Boolean secret) { - this.secret = Optional.ofNullable(secret); + /** + *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage reloadProps(Boolean reloadProps) { + this.reloadProps = Optional.ofNullable(reloadProps); return this; } /** - *

When building configuredProps, make sure to use this field as the key when setting the prop value

+ *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

*/ - @JsonSetter(value = "name", nulls = Nulls.SKIP) - public Builder name(Optional name) { - this.name = name; + @java.lang.Override + @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) + public _FinalStage reloadProps(Optional reloadProps) { + this.reloadProps = reloadProps; return this; } - public Builder name(String name) { - this.name = Optional.ofNullable(name); + /** + *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage useQuery(Boolean useQuery) { + this.useQuery = Optional.ofNullable(useQuery); return this; } /** - *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

*/ - @JsonSetter(value = "label", nulls = Nulls.SKIP) - public Builder label(Optional label) { - this.label = label; + @java.lang.Override + @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) + public _FinalStage useQuery(Optional useQuery) { + this.useQuery = useQuery; return this; } - public Builder label(String label) { - this.label = Optional.ofNullable(label); + /** + *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage remoteOptions(Boolean remoteOptions) { + this.remoteOptions = Optional.ofNullable(remoteOptions); return this; } /** - *

A description of the prop, shown to the user when configuring the component.

+ *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

*/ - @JsonSetter(value = "description", nulls = Nulls.SKIP) - public Builder description(Optional description) { - this.description = description; + @java.lang.Override + @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) + public _FinalStage remoteOptions(Optional remoteOptions) { + this.remoteOptions = remoteOptions; return this; } - public Builder description(String description) { - this.description = Optional.ofNullable(description); + /** + *

If true, should not expose this prop to the user

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage hidden(Boolean hidden) { + this.hidden = Optional.ofNullable(hidden); return this; } /** - *

If true, this prop does not need to be specified.

+ *

If true, should not expose this prop to the user

*/ - @JsonSetter(value = "optional", nulls = Nulls.SKIP) - public Builder optional(Optional optional) { - this.optional = optional; + @java.lang.Override + @JsonSetter(value = "hidden", nulls = Nulls.SKIP) + public _FinalStage hidden(Optional hidden) { + this.hidden = hidden; return this; } - public Builder optional(Boolean optional) { - this.optional = Optional.ofNullable(optional); + /** + *

If true, this prop will be ignored.

+ * @return Reference to {@code this} so that method calls can be chained together. + */ + @java.lang.Override + public _FinalStage disabled(Boolean disabled) { + this.disabled = Optional.ofNullable(disabled); return this; } /** *

If true, this prop will be ignored.

*/ + @java.lang.Override @JsonSetter(value = "disabled", nulls = Nulls.SKIP) - public Builder disabled(Optional disabled) { + public _FinalStage disabled(Optional disabled) { this.disabled = disabled; return this; } - public Builder disabled(Boolean disabled) { - this.disabled = Optional.ofNullable(disabled); - return this; - } - /** - *

If true, should not expose this prop to the user

+ *

If true, this prop does not need to be specified.

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "hidden", nulls = Nulls.SKIP) - public Builder hidden(Optional hidden) { - this.hidden = hidden; + @java.lang.Override + public _FinalStage optional(Boolean optional) { + this.optional = Optional.ofNullable(optional); return this; } - public Builder hidden(Boolean hidden) { - this.hidden = Optional.ofNullable(hidden); + /** + *

If true, this prop does not need to be specified.

+ */ + @java.lang.Override + @JsonSetter(value = "optional", nulls = Nulls.SKIP) + public _FinalStage optional(Optional optional) { + this.optional = optional; return this; } /** - *

If true, call configureComponent for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options

+ *

A description of the prop, shown to the user when configuring the component.

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "remoteOptions", nulls = Nulls.SKIP) - public Builder remoteOptions(Optional remoteOptions) { - this.remoteOptions = remoteOptions; + @java.lang.Override + public _FinalStage description(String description) { + this.description = Optional.ofNullable(description); return this; } - public Builder remoteOptions(Boolean remoteOptions) { - this.remoteOptions = Optional.ofNullable(remoteOptions); + /** + *

A description of the prop, shown to the user when configuring the component.

+ */ + @java.lang.Override + @JsonSetter(value = "description", nulls = Nulls.SKIP) + public _FinalStage description(Optional description) { + this.description = description; return this; } /** - *

If true, calls to configureComponent for this prop support receiving a query parameter to filter remote options

+ *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "useQuery", nulls = Nulls.SKIP) - public Builder useQuery(Optional useQuery) { - this.useQuery = useQuery; + @java.lang.Override + public _FinalStage label(String label) { + this.label = Optional.ofNullable(label); return this; } - public Builder useQuery(Boolean useQuery) { - this.useQuery = Optional.ofNullable(useQuery); + /** + *

Value to use as an input label. In cases where type is "app", should load the app via getApp, etc. and show app.name instead.

+ */ + @java.lang.Override + @JsonSetter(value = "label", nulls = Nulls.SKIP) + public _FinalStage label(Optional label) { + this.label = label; return this; } /** - *

If true, after setting a value for this prop, a call to reloadComponentProps is required as the component has dynamic configurable props dependent on this one

+ *

If true, this prop is a secret and should not be displayed in plain text.

+ * @return Reference to {@code this} so that method calls can be chained together. */ - @JsonSetter(value = "reloadProps", nulls = Nulls.SKIP) - public Builder reloadProps(Optional reloadProps) { - this.reloadProps = reloadProps; + @java.lang.Override + public _FinalStage secret(Boolean secret) { + this.secret = Optional.ofNullable(secret); return this; } - public Builder reloadProps(Boolean reloadProps) { - this.reloadProps = Optional.ofNullable(reloadProps); + /** + *

If true, this prop is a secret and should not be displayed in plain text.

+ */ + @java.lang.Override + @JsonSetter(value = "secret", nulls = Nulls.SKIP) + public _FinalStage secret(Optional secret) { + this.secret = secret; return this; } - /** - *

If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label

- */ - @JsonSetter(value = "withLabel", nulls = Nulls.SKIP) - public Builder withLabel(Optional withLabel) { - this.withLabel = withLabel; + @java.lang.Override + public _FinalStage type(String type) { + this.type = Optional.ofNullable(type); return this; } - public Builder withLabel(Boolean withLabel) { - this.withLabel = Optional.ofNullable(withLabel); + @java.lang.Override + @JsonSetter(value = "type", nulls = Nulls.SKIP) + public _FinalStage type(Optional type) { + this.type = type; return this; } + @java.lang.Override public ConfigurablePropStringArray build() { return new ConfigurablePropStringArray( type,