diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index fa720fe5..eafd5663 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,3 +1,3 @@
{
- ".": "0.1.0-beta.25"
+ ".": "0.1.0-beta.26"
}
\ No newline at end of file
diff --git a/.stats.yml b/.stats.yml
index 7fd83720..976874ff 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 110
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/stigg/stigg-512ec51333e2e803d366c0aebea858913541a7ef0269a56f9371686feed26cd8.yml
-openapi_spec_hash: 9b6d9f90c1aff0165ef7769f2311a1bd
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/stigg/stigg-a3b1cb64a010bc54278d208eb9ef309cb7c31e9099c45470fa3d032b1f4a17f6.yml
+openapi_spec_hash: 09e5366c0f3dd1ea84dadb90e7cbf762
config_hash: 0eca08dde117ac62155a012abb0ecac7
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 78416d0a..39121caa 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,13 @@
# Changelog
+## 0.1.0-beta.26 (2026-06-23)
+
+Full Changelog: [v0.1.0-beta.25...v0.1.0-beta.26](https://github.com/stiggio/stigg-java/compare/v0.1.0-beta.25...v0.1.0-beta.26)
+
+### Features
+
+* **api:** add hasSoftLimit field to addon/plan entitlement credit models ([9d0a964](https://github.com/stiggio/stigg-java/commit/9d0a964fa1731e351cfa71f9cd46043a539e31b5))
+
## 0.1.0-beta.25 (2026-06-22)
Full Changelog: [v0.1.0-beta.24...v0.1.0-beta.25](https://github.com/stiggio/stigg-java/compare/v0.1.0-beta.24...v0.1.0-beta.25)
diff --git a/README.md b/README.md
index 92ccc6b6..6c2ef149 100644
--- a/README.md
+++ b/README.md
@@ -2,8 +2,8 @@
-[](https://central.sonatype.com/artifact/io.stigg/stigg-java/0.1.0-beta.25)
-[](https://javadoc.io/doc/io.stigg/stigg-java/0.1.0-beta.25)
+[](https://central.sonatype.com/artifact/io.stigg/stigg-java/0.1.0-beta.26)
+[](https://javadoc.io/doc/io.stigg/stigg-java/0.1.0-beta.26)
@@ -22,7 +22,7 @@ Use the Stigg MCP Server to enable AI assistants to interact with this API, allo
-Javadocs are available on [javadoc.io](https://javadoc.io/doc/io.stigg/stigg-java/0.1.0-beta.25).
+Javadocs are available on [javadoc.io](https://javadoc.io/doc/io.stigg/stigg-java/0.1.0-beta.26).
@@ -33,7 +33,7 @@ Javadocs are available on [javadoc.io](https://javadoc.io/doc/io.stigg/stigg-jav
### Gradle
```kotlin
-implementation("io.stigg:stigg-java:0.1.0-beta.25")
+implementation("io.stigg:stigg-java:0.1.0-beta.26")
```
### Maven
@@ -42,7 +42,7 @@ implementation("io.stigg:stigg-java:0.1.0-beta.25")
io.stigg
stigg-java
- 0.1.0-beta.25
+ 0.1.0-beta.26
```
diff --git a/build.gradle.kts b/build.gradle.kts
index c50746f9..b902f98f 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -8,7 +8,7 @@ repositories {
allprojects {
group = "io.stigg"
- version = "0.1.0-beta.25" // x-release-please-version
+ version = "0.1.0-beta.26" // x-release-please-version
}
subprojects {
diff --git a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/AddonPackageEntitlement.kt b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/AddonPackageEntitlement.kt
index 58dbdfb5..9e8528b3 100644
--- a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/AddonPackageEntitlement.kt
+++ b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/AddonPackageEntitlement.kt
@@ -3285,6 +3285,7 @@ private constructor(
private val createdAt: JsonField,
private val description: JsonField,
private val displayNameOverride: JsonField,
+ private val hasSoftLimit: JsonField,
private val hiddenFromWidgets: JsonField>,
private val isCustom: JsonField,
private val isGranted: JsonField,
@@ -3316,6 +3317,9 @@ private constructor(
@JsonProperty("displayNameOverride")
@ExcludeMissing
displayNameOverride: JsonField = JsonMissing.of(),
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ hasSoftLimit: JsonField = JsonMissing.of(),
@JsonProperty("hiddenFromWidgets")
@ExcludeMissing
hiddenFromWidgets: JsonField> = JsonMissing.of(),
@@ -3341,6 +3345,7 @@ private constructor(
createdAt,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -3411,6 +3416,15 @@ private constructor(
fun displayNameOverride(): Optional =
displayNameOverride.getOptional("displayNameOverride")
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to false.
+ *
+ * @throws StiggInvalidDataException if the JSON field has an unexpected type (e.g. if
+ * the server responded with an unexpected value).
+ */
+ fun hasSoftLimit(): Optional = hasSoftLimit.getOptional("hasSoftLimit")
+
/**
* Widget types where this entitlement is hidden
*
@@ -3539,6 +3553,16 @@ private constructor(
@ExcludeMissing
fun _displayNameOverride(): JsonField = displayNameOverride
+ /**
+ * Returns the raw JSON value of [hasSoftLimit].
+ *
+ * Unlike [hasSoftLimit], this method doesn't throw if the JSON field has an unexpected
+ * type.
+ */
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ fun _hasSoftLimit(): JsonField = hasSoftLimit
+
/**
* Returns the raw JSON value of [hiddenFromWidgets].
*
@@ -3620,6 +3644,7 @@ private constructor(
* .createdAt()
* .description()
* .displayNameOverride()
+ * .hasSoftLimit()
* .hiddenFromWidgets()
* .isCustom()
* .isGranted()
@@ -3640,6 +3665,7 @@ private constructor(
private var createdAt: JsonField? = null
private var description: JsonField? = null
private var displayNameOverride: JsonField? = null
+ private var hasSoftLimit: JsonField? = null
private var hiddenFromWidgets: JsonField>? = null
private var isCustom: JsonField? = null
private var isGranted: JsonField? = null
@@ -3658,6 +3684,7 @@ private constructor(
createdAt = credit.createdAt
description = credit.description
displayNameOverride = credit.displayNameOverride
+ hasSoftLimit = credit.hasSoftLimit
hiddenFromWidgets = credit.hiddenFromWidgets.map { it.toMutableList() }
isCustom = credit.isCustom
isGranted = credit.isGranted
@@ -3784,6 +3811,36 @@ private constructor(
this.displayNameOverride = displayNameOverride
}
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to
+ * false.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean?) =
+ hasSoftLimit(JsonField.ofNullable(hasSoftLimit))
+
+ /**
+ * Alias for [Builder.hasSoftLimit].
+ *
+ * This unboxed primitive overload exists for backwards compatibility.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean) = hasSoftLimit(hasSoftLimit as Boolean?)
+
+ /** Alias for calling [Builder.hasSoftLimit] with `hasSoftLimit.orElse(null)`. */
+ fun hasSoftLimit(hasSoftLimit: Optional) =
+ hasSoftLimit(hasSoftLimit.getOrNull())
+
+ /**
+ * Sets [Builder.hasSoftLimit] to an arbitrary JSON value.
+ *
+ * You should usually call [Builder.hasSoftLimit] with a well-typed [Boolean] value
+ * instead. This method is primarily for setting the field to an undocumented or not
+ * yet supported value.
+ */
+ fun hasSoftLimit(hasSoftLimit: JsonField) = apply {
+ this.hasSoftLimit = hasSoftLimit
+ }
+
/** Widget types where this entitlement is hidden */
fun hiddenFromWidgets(hiddenFromWidgets: List) =
hiddenFromWidgets(JsonField.of(hiddenFromWidgets))
@@ -3958,6 +4015,7 @@ private constructor(
* .createdAt()
* .description()
* .displayNameOverride()
+ * .hasSoftLimit()
* .hiddenFromWidgets()
* .isCustom()
* .isGranted()
@@ -3976,6 +4034,7 @@ private constructor(
checkRequired("createdAt", createdAt),
checkRequired("description", description),
checkRequired("displayNameOverride", displayNameOverride),
+ checkRequired("hasSoftLimit", hasSoftLimit),
checkRequired("hiddenFromWidgets", hiddenFromWidgets).map {
it.toImmutable()
},
@@ -4013,6 +4072,7 @@ private constructor(
createdAt()
description()
displayNameOverride()
+ hasSoftLimit()
hiddenFromWidgets().forEach { it.validate() }
isCustom()
isGranted()
@@ -4050,6 +4110,7 @@ private constructor(
(if (createdAt.asKnown().isPresent) 1 else 0) +
(if (description.asKnown().isPresent) 1 else 0) +
(if (displayNameOverride.asKnown().isPresent) 1 else 0) +
+ (if (hasSoftLimit.asKnown().isPresent) 1 else 0) +
(hiddenFromWidgets.asKnown().getOrNull()?.sumOf { it.validity().toInt() }
?: 0) +
(if (isCustom.asKnown().isPresent) 1 else 0) +
@@ -4506,6 +4567,7 @@ private constructor(
createdAt == other.createdAt &&
description == other.description &&
displayNameOverride == other.displayNameOverride &&
+ hasSoftLimit == other.hasSoftLimit &&
hiddenFromWidgets == other.hiddenFromWidgets &&
isCustom == other.isCustom &&
isGranted == other.isGranted &&
@@ -4525,6 +4587,7 @@ private constructor(
createdAt,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -4539,7 +4602,7 @@ private constructor(
override fun hashCode(): Int = hashCode
override fun toString() =
- "Credit{id=$id, amount=$amount, behavior=$behavior, cadence=$cadence, createdAt=$createdAt, description=$description, displayNameOverride=$displayNameOverride, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, type=$type, updatedAt=$updatedAt, dependencyFeatureId=$dependencyFeatureId, additionalProperties=$additionalProperties}"
+ "Credit{id=$id, amount=$amount, behavior=$behavior, cadence=$cadence, createdAt=$createdAt, description=$description, displayNameOverride=$displayNameOverride, hasSoftLimit=$hasSoftLimit, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, type=$type, updatedAt=$updatedAt, dependencyFeatureId=$dependencyFeatureId, additionalProperties=$additionalProperties}"
}
}
diff --git a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementCreateParams.kt b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementCreateParams.kt
index 70c98d76..7aebe63d 100644
--- a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementCreateParams.kt
+++ b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementCreateParams.kt
@@ -3221,6 +3221,7 @@ private constructor(
private val dependencyFeatureId: JsonField,
private val description: JsonField,
private val displayNameOverride: JsonField,
+ private val hasSoftLimit: JsonField,
private val hiddenFromWidgets: JsonField>,
private val isCustom: JsonField,
private val isGranted: JsonField,
@@ -3250,6 +3251,9 @@ private constructor(
@JsonProperty("displayNameOverride")
@ExcludeMissing
displayNameOverride: JsonField = JsonMissing.of(),
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ hasSoftLimit: JsonField = JsonMissing.of(),
@JsonProperty("hiddenFromWidgets")
@ExcludeMissing
hiddenFromWidgets: JsonField> = JsonMissing.of(),
@@ -3269,6 +3273,7 @@ private constructor(
dependencyFeatureId,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -3350,6 +3355,15 @@ private constructor(
fun displayNameOverride(): Optional =
displayNameOverride.getOptional("displayNameOverride")
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to false.
+ *
+ * @throws StiggInvalidDataException if the JSON field has an unexpected type (e.g. if
+ * the server responded with an unexpected value).
+ */
+ fun hasSoftLimit(): Optional = hasSoftLimit.getOptional("hasSoftLimit")
+
/**
* Widget types where this entitlement is hidden
*
@@ -3444,6 +3458,16 @@ private constructor(
@ExcludeMissing
fun _displayNameOverride(): JsonField = displayNameOverride
+ /**
+ * Returns the raw JSON value of [hasSoftLimit].
+ *
+ * Unlike [hasSoftLimit], this method doesn't throw if the JSON field has an unexpected
+ * type.
+ */
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ fun _hasSoftLimit(): JsonField = hasSoftLimit
+
/**
* Returns the raw JSON value of [hiddenFromWidgets].
*
@@ -3517,6 +3541,7 @@ private constructor(
private var dependencyFeatureId: JsonField = JsonMissing.of()
private var description: JsonField = JsonMissing.of()
private var displayNameOverride: JsonField = JsonMissing.of()
+ private var hasSoftLimit: JsonField = JsonMissing.of()
private var hiddenFromWidgets: JsonField>? = null
private var isCustom: JsonField = JsonMissing.of()
private var isGranted: JsonField = JsonMissing.of()
@@ -3533,6 +3558,7 @@ private constructor(
dependencyFeatureId = credit.dependencyFeatureId
description = credit.description
displayNameOverride = credit.displayNameOverride
+ hasSoftLimit = credit.hasSoftLimit
hiddenFromWidgets = credit.hiddenFromWidgets.map { it.toMutableList() }
isCustom = credit.isCustom
isGranted = credit.isGranted
@@ -3659,6 +3685,24 @@ private constructor(
this.displayNameOverride = displayNameOverride
}
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to
+ * false.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean) = hasSoftLimit(JsonField.of(hasSoftLimit))
+
+ /**
+ * Sets [Builder.hasSoftLimit] to an arbitrary JSON value.
+ *
+ * You should usually call [Builder.hasSoftLimit] with a well-typed [Boolean] value
+ * instead. This method is primarily for setting the field to an undocumented or not
+ * yet supported value.
+ */
+ fun hasSoftLimit(hasSoftLimit: JsonField) = apply {
+ this.hasSoftLimit = hasSoftLimit
+ }
+
/** Widget types where this entitlement is hidden */
fun hiddenFromWidgets(hiddenFromWidgets: List) =
hiddenFromWidgets(JsonField.of(hiddenFromWidgets))
@@ -3769,6 +3813,7 @@ private constructor(
dependencyFeatureId,
description,
displayNameOverride,
+ hasSoftLimit,
(hiddenFromWidgets ?: JsonMissing.of()).map { it.toImmutable() },
isCustom,
isGranted,
@@ -3806,6 +3851,7 @@ private constructor(
dependencyFeatureId()
description()
displayNameOverride()
+ hasSoftLimit()
hiddenFromWidgets().ifPresent { it.forEach { it.validate() } }
isCustom()
isGranted()
@@ -3837,6 +3883,7 @@ private constructor(
(if (dependencyFeatureId.asKnown().isPresent) 1 else 0) +
(if (description.asKnown().isPresent) 1 else 0) +
(if (displayNameOverride.asKnown().isPresent) 1 else 0) +
+ (if (hasSoftLimit.asKnown().isPresent) 1 else 0) +
(hiddenFromWidgets.asKnown().getOrNull()?.sumOf { it.validity().toInt() }
?: 0) +
(if (isCustom.asKnown().isPresent) 1 else 0) +
@@ -4291,6 +4338,7 @@ private constructor(
dependencyFeatureId == other.dependencyFeatureId &&
description == other.description &&
displayNameOverride == other.displayNameOverride &&
+ hasSoftLimit == other.hasSoftLimit &&
hiddenFromWidgets == other.hiddenFromWidgets &&
isCustom == other.isCustom &&
isGranted == other.isGranted &&
@@ -4308,6 +4356,7 @@ private constructor(
dependencyFeatureId,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -4319,7 +4368,7 @@ private constructor(
override fun hashCode(): Int = hashCode
override fun toString() =
- "Credit{id=$id, amount=$amount, cadence=$cadence, type=$type, behavior=$behavior, dependencyFeatureId=$dependencyFeatureId, description=$description, displayNameOverride=$displayNameOverride, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, additionalProperties=$additionalProperties}"
+ "Credit{id=$id, amount=$amount, cadence=$cadence, type=$type, behavior=$behavior, dependencyFeatureId=$dependencyFeatureId, description=$description, displayNameOverride=$displayNameOverride, hasSoftLimit=$hasSoftLimit, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, additionalProperties=$additionalProperties}"
}
}
diff --git a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementCreateResponse.kt b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementCreateResponse.kt
index 3dfa11f6..dc9d6873 100644
--- a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementCreateResponse.kt
+++ b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementCreateResponse.kt
@@ -3298,6 +3298,7 @@ private constructor(
private val createdAt: JsonField,
private val description: JsonField,
private val displayNameOverride: JsonField,
+ private val hasSoftLimit: JsonField,
private val hiddenFromWidgets: JsonField>,
private val isCustom: JsonField,
private val isGranted: JsonField,
@@ -3329,6 +3330,9 @@ private constructor(
@JsonProperty("displayNameOverride")
@ExcludeMissing
displayNameOverride: JsonField = JsonMissing.of(),
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ hasSoftLimit: JsonField = JsonMissing.of(),
@JsonProperty("hiddenFromWidgets")
@ExcludeMissing
hiddenFromWidgets: JsonField> = JsonMissing.of(),
@@ -3354,6 +3358,7 @@ private constructor(
createdAt,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -3424,6 +3429,15 @@ private constructor(
fun displayNameOverride(): Optional =
displayNameOverride.getOptional("displayNameOverride")
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to false.
+ *
+ * @throws StiggInvalidDataException if the JSON field has an unexpected type (e.g. if
+ * the server responded with an unexpected value).
+ */
+ fun hasSoftLimit(): Optional = hasSoftLimit.getOptional("hasSoftLimit")
+
/**
* Widget types where this entitlement is hidden
*
@@ -3552,6 +3566,16 @@ private constructor(
@ExcludeMissing
fun _displayNameOverride(): JsonField = displayNameOverride
+ /**
+ * Returns the raw JSON value of [hasSoftLimit].
+ *
+ * Unlike [hasSoftLimit], this method doesn't throw if the JSON field has an unexpected
+ * type.
+ */
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ fun _hasSoftLimit(): JsonField = hasSoftLimit
+
/**
* Returns the raw JSON value of [hiddenFromWidgets].
*
@@ -3633,6 +3657,7 @@ private constructor(
* .createdAt()
* .description()
* .displayNameOverride()
+ * .hasSoftLimit()
* .hiddenFromWidgets()
* .isCustom()
* .isGranted()
@@ -3653,6 +3678,7 @@ private constructor(
private var createdAt: JsonField? = null
private var description: JsonField? = null
private var displayNameOverride: JsonField? = null
+ private var hasSoftLimit: JsonField? = null
private var hiddenFromWidgets: JsonField>? = null
private var isCustom: JsonField? = null
private var isGranted: JsonField? = null
@@ -3671,6 +3697,7 @@ private constructor(
createdAt = credit.createdAt
description = credit.description
displayNameOverride = credit.displayNameOverride
+ hasSoftLimit = credit.hasSoftLimit
hiddenFromWidgets = credit.hiddenFromWidgets.map { it.toMutableList() }
isCustom = credit.isCustom
isGranted = credit.isGranted
@@ -3797,6 +3824,36 @@ private constructor(
this.displayNameOverride = displayNameOverride
}
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to
+ * false.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean?) =
+ hasSoftLimit(JsonField.ofNullable(hasSoftLimit))
+
+ /**
+ * Alias for [Builder.hasSoftLimit].
+ *
+ * This unboxed primitive overload exists for backwards compatibility.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean) = hasSoftLimit(hasSoftLimit as Boolean?)
+
+ /** Alias for calling [Builder.hasSoftLimit] with `hasSoftLimit.orElse(null)`. */
+ fun hasSoftLimit(hasSoftLimit: Optional) =
+ hasSoftLimit(hasSoftLimit.getOrNull())
+
+ /**
+ * Sets [Builder.hasSoftLimit] to an arbitrary JSON value.
+ *
+ * You should usually call [Builder.hasSoftLimit] with a well-typed [Boolean] value
+ * instead. This method is primarily for setting the field to an undocumented or not
+ * yet supported value.
+ */
+ fun hasSoftLimit(hasSoftLimit: JsonField) = apply {
+ this.hasSoftLimit = hasSoftLimit
+ }
+
/** Widget types where this entitlement is hidden */
fun hiddenFromWidgets(hiddenFromWidgets: List) =
hiddenFromWidgets(JsonField.of(hiddenFromWidgets))
@@ -3971,6 +4028,7 @@ private constructor(
* .createdAt()
* .description()
* .displayNameOverride()
+ * .hasSoftLimit()
* .hiddenFromWidgets()
* .isCustom()
* .isGranted()
@@ -3989,6 +4047,7 @@ private constructor(
checkRequired("createdAt", createdAt),
checkRequired("description", description),
checkRequired("displayNameOverride", displayNameOverride),
+ checkRequired("hasSoftLimit", hasSoftLimit),
checkRequired("hiddenFromWidgets", hiddenFromWidgets).map {
it.toImmutable()
},
@@ -4026,6 +4085,7 @@ private constructor(
createdAt()
description()
displayNameOverride()
+ hasSoftLimit()
hiddenFromWidgets().forEach { it.validate() }
isCustom()
isGranted()
@@ -4063,6 +4123,7 @@ private constructor(
(if (createdAt.asKnown().isPresent) 1 else 0) +
(if (description.asKnown().isPresent) 1 else 0) +
(if (displayNameOverride.asKnown().isPresent) 1 else 0) +
+ (if (hasSoftLimit.asKnown().isPresent) 1 else 0) +
(hiddenFromWidgets.asKnown().getOrNull()?.sumOf { it.validity().toInt() }
?: 0) +
(if (isCustom.asKnown().isPresent) 1 else 0) +
@@ -4519,6 +4580,7 @@ private constructor(
createdAt == other.createdAt &&
description == other.description &&
displayNameOverride == other.displayNameOverride &&
+ hasSoftLimit == other.hasSoftLimit &&
hiddenFromWidgets == other.hiddenFromWidgets &&
isCustom == other.isCustom &&
isGranted == other.isGranted &&
@@ -4538,6 +4600,7 @@ private constructor(
createdAt,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -4552,7 +4615,7 @@ private constructor(
override fun hashCode(): Int = hashCode
override fun toString() =
- "Credit{id=$id, amount=$amount, behavior=$behavior, cadence=$cadence, createdAt=$createdAt, description=$description, displayNameOverride=$displayNameOverride, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, type=$type, updatedAt=$updatedAt, dependencyFeatureId=$dependencyFeatureId, additionalProperties=$additionalProperties}"
+ "Credit{id=$id, amount=$amount, behavior=$behavior, cadence=$cadence, createdAt=$createdAt, description=$description, displayNameOverride=$displayNameOverride, hasSoftLimit=$hasSoftLimit, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, type=$type, updatedAt=$updatedAt, dependencyFeatureId=$dependencyFeatureId, additionalProperties=$additionalProperties}"
}
}
diff --git a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementListResponse.kt b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementListResponse.kt
index 953cabe8..07cbc912 100644
--- a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementListResponse.kt
+++ b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementListResponse.kt
@@ -3338,6 +3338,7 @@ private constructor(
private val createdAt: JsonField,
private val description: JsonField,
private val displayNameOverride: JsonField,
+ private val hasSoftLimit: JsonField,
private val hiddenFromWidgets: JsonField>,
private val isCustom: JsonField,
private val isGranted: JsonField,
@@ -3369,6 +3370,9 @@ private constructor(
@JsonProperty("displayNameOverride")
@ExcludeMissing
displayNameOverride: JsonField = JsonMissing.of(),
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ hasSoftLimit: JsonField = JsonMissing.of(),
@JsonProperty("hiddenFromWidgets")
@ExcludeMissing
hiddenFromWidgets: JsonField> = JsonMissing.of(),
@@ -3394,6 +3398,7 @@ private constructor(
createdAt,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -3464,6 +3469,15 @@ private constructor(
fun displayNameOverride(): Optional =
displayNameOverride.getOptional("displayNameOverride")
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to false.
+ *
+ * @throws StiggInvalidDataException if the JSON field has an unexpected type (e.g. if
+ * the server responded with an unexpected value).
+ */
+ fun hasSoftLimit(): Optional = hasSoftLimit.getOptional("hasSoftLimit")
+
/**
* Widget types where this entitlement is hidden
*
@@ -3592,6 +3606,16 @@ private constructor(
@ExcludeMissing
fun _displayNameOverride(): JsonField = displayNameOverride
+ /**
+ * Returns the raw JSON value of [hasSoftLimit].
+ *
+ * Unlike [hasSoftLimit], this method doesn't throw if the JSON field has an unexpected
+ * type.
+ */
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ fun _hasSoftLimit(): JsonField = hasSoftLimit
+
/**
* Returns the raw JSON value of [hiddenFromWidgets].
*
@@ -3673,6 +3697,7 @@ private constructor(
* .createdAt()
* .description()
* .displayNameOverride()
+ * .hasSoftLimit()
* .hiddenFromWidgets()
* .isCustom()
* .isGranted()
@@ -3693,6 +3718,7 @@ private constructor(
private var createdAt: JsonField? = null
private var description: JsonField? = null
private var displayNameOverride: JsonField? = null
+ private var hasSoftLimit: JsonField? = null
private var hiddenFromWidgets: JsonField>? = null
private var isCustom: JsonField? = null
private var isGranted: JsonField? = null
@@ -3711,6 +3737,7 @@ private constructor(
createdAt = credit.createdAt
description = credit.description
displayNameOverride = credit.displayNameOverride
+ hasSoftLimit = credit.hasSoftLimit
hiddenFromWidgets = credit.hiddenFromWidgets.map { it.toMutableList() }
isCustom = credit.isCustom
isGranted = credit.isGranted
@@ -3837,6 +3864,36 @@ private constructor(
this.displayNameOverride = displayNameOverride
}
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to
+ * false.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean?) =
+ hasSoftLimit(JsonField.ofNullable(hasSoftLimit))
+
+ /**
+ * Alias for [Builder.hasSoftLimit].
+ *
+ * This unboxed primitive overload exists for backwards compatibility.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean) = hasSoftLimit(hasSoftLimit as Boolean?)
+
+ /** Alias for calling [Builder.hasSoftLimit] with `hasSoftLimit.orElse(null)`. */
+ fun hasSoftLimit(hasSoftLimit: Optional) =
+ hasSoftLimit(hasSoftLimit.getOrNull())
+
+ /**
+ * Sets [Builder.hasSoftLimit] to an arbitrary JSON value.
+ *
+ * You should usually call [Builder.hasSoftLimit] with a well-typed [Boolean] value
+ * instead. This method is primarily for setting the field to an undocumented or not
+ * yet supported value.
+ */
+ fun hasSoftLimit(hasSoftLimit: JsonField) = apply {
+ this.hasSoftLimit = hasSoftLimit
+ }
+
/** Widget types where this entitlement is hidden */
fun hiddenFromWidgets(hiddenFromWidgets: List) =
hiddenFromWidgets(JsonField.of(hiddenFromWidgets))
@@ -4011,6 +4068,7 @@ private constructor(
* .createdAt()
* .description()
* .displayNameOverride()
+ * .hasSoftLimit()
* .hiddenFromWidgets()
* .isCustom()
* .isGranted()
@@ -4029,6 +4087,7 @@ private constructor(
checkRequired("createdAt", createdAt),
checkRequired("description", description),
checkRequired("displayNameOverride", displayNameOverride),
+ checkRequired("hasSoftLimit", hasSoftLimit),
checkRequired("hiddenFromWidgets", hiddenFromWidgets).map {
it.toImmutable()
},
@@ -4066,6 +4125,7 @@ private constructor(
createdAt()
description()
displayNameOverride()
+ hasSoftLimit()
hiddenFromWidgets().forEach { it.validate() }
isCustom()
isGranted()
@@ -4103,6 +4163,7 @@ private constructor(
(if (createdAt.asKnown().isPresent) 1 else 0) +
(if (description.asKnown().isPresent) 1 else 0) +
(if (displayNameOverride.asKnown().isPresent) 1 else 0) +
+ (if (hasSoftLimit.asKnown().isPresent) 1 else 0) +
(hiddenFromWidgets.asKnown().getOrNull()?.sumOf { it.validity().toInt() }
?: 0) +
(if (isCustom.asKnown().isPresent) 1 else 0) +
@@ -4559,6 +4620,7 @@ private constructor(
createdAt == other.createdAt &&
description == other.description &&
displayNameOverride == other.displayNameOverride &&
+ hasSoftLimit == other.hasSoftLimit &&
hiddenFromWidgets == other.hiddenFromWidgets &&
isCustom == other.isCustom &&
isGranted == other.isGranted &&
@@ -4578,6 +4640,7 @@ private constructor(
createdAt,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -4592,7 +4655,7 @@ private constructor(
override fun hashCode(): Int = hashCode
override fun toString() =
- "Credit{id=$id, amount=$amount, behavior=$behavior, cadence=$cadence, createdAt=$createdAt, description=$description, displayNameOverride=$displayNameOverride, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, type=$type, updatedAt=$updatedAt, dependencyFeatureId=$dependencyFeatureId, additionalProperties=$additionalProperties}"
+ "Credit{id=$id, amount=$amount, behavior=$behavior, cadence=$cadence, createdAt=$createdAt, description=$description, displayNameOverride=$displayNameOverride, hasSoftLimit=$hasSoftLimit, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, type=$type, updatedAt=$updatedAt, dependencyFeatureId=$dependencyFeatureId, additionalProperties=$additionalProperties}"
}
}
diff --git a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementUpdateParams.kt b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementUpdateParams.kt
index c7fddad2..dc9f2db8 100644
--- a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementUpdateParams.kt
+++ b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/addons/entitlements/EntitlementUpdateParams.kt
@@ -2893,6 +2893,7 @@ private constructor(
private val dependencyFeatureId: JsonField,
private val description: JsonField,
private val displayNameOverride: JsonField,
+ private val hasSoftLimit: JsonField,
private val hiddenFromWidgets: JsonField>,
private val isCustom: JsonField,
private val isGranted: JsonField,
@@ -2921,6 +2922,9 @@ private constructor(
@JsonProperty("displayNameOverride")
@ExcludeMissing
displayNameOverride: JsonField = JsonMissing.of(),
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ hasSoftLimit: JsonField = JsonMissing.of(),
@JsonProperty("hiddenFromWidgets")
@ExcludeMissing
hiddenFromWidgets: JsonField> = JsonMissing.of(),
@@ -2939,6 +2943,7 @@ private constructor(
dependencyFeatureId,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -3010,6 +3015,15 @@ private constructor(
fun displayNameOverride(): Optional =
displayNameOverride.getOptional("displayNameOverride")
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to false.
+ *
+ * @throws StiggInvalidDataException if the JSON field has an unexpected type (e.g. if
+ * the server responded with an unexpected value).
+ */
+ fun hasSoftLimit(): Optional = hasSoftLimit.getOptional("hasSoftLimit")
+
/**
* Widget types where this entitlement is hidden
*
@@ -3097,6 +3111,16 @@ private constructor(
@ExcludeMissing
fun _displayNameOverride(): JsonField = displayNameOverride
+ /**
+ * Returns the raw JSON value of [hasSoftLimit].
+ *
+ * Unlike [hasSoftLimit], this method doesn't throw if the JSON field has an unexpected
+ * type.
+ */
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ fun _hasSoftLimit(): JsonField = hasSoftLimit
+
/**
* Returns the raw JSON value of [hiddenFromWidgets].
*
@@ -3160,6 +3184,7 @@ private constructor(
private var dependencyFeatureId: JsonField = JsonMissing.of()
private var description: JsonField = JsonMissing.of()
private var displayNameOverride: JsonField = JsonMissing.of()
+ private var hasSoftLimit: JsonField = JsonMissing.of()
private var hiddenFromWidgets: JsonField>? = null
private var isCustom: JsonField = JsonMissing.of()
private var isGranted: JsonField = JsonMissing.of()
@@ -3175,6 +3200,7 @@ private constructor(
dependencyFeatureId = credit.dependencyFeatureId
description = credit.description
displayNameOverride = credit.displayNameOverride
+ hasSoftLimit = credit.hasSoftLimit
hiddenFromWidgets = credit.hiddenFromWidgets.map { it.toMutableList() }
isCustom = credit.isCustom
isGranted = credit.isGranted
@@ -3286,6 +3312,24 @@ private constructor(
this.displayNameOverride = displayNameOverride
}
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to
+ * false.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean) = hasSoftLimit(JsonField.of(hasSoftLimit))
+
+ /**
+ * Sets [Builder.hasSoftLimit] to an arbitrary JSON value.
+ *
+ * You should usually call [Builder.hasSoftLimit] with a well-typed [Boolean] value
+ * instead. This method is primarily for setting the field to an undocumented or not
+ * yet supported value.
+ */
+ fun hasSoftLimit(hasSoftLimit: JsonField) = apply {
+ this.hasSoftLimit = hasSoftLimit
+ }
+
/** Widget types where this entitlement is hidden */
fun hiddenFromWidgets(hiddenFromWidgets: List) =
hiddenFromWidgets(JsonField.of(hiddenFromWidgets))
@@ -3386,6 +3430,7 @@ private constructor(
dependencyFeatureId,
description,
displayNameOverride,
+ hasSoftLimit,
(hiddenFromWidgets ?: JsonMissing.of()).map { it.toImmutable() },
isCustom,
isGranted,
@@ -3422,6 +3467,7 @@ private constructor(
dependencyFeatureId()
description()
displayNameOverride()
+ hasSoftLimit()
hiddenFromWidgets().ifPresent { it.forEach { it.validate() } }
isCustom()
isGranted()
@@ -3452,6 +3498,7 @@ private constructor(
(if (dependencyFeatureId.asKnown().isPresent) 1 else 0) +
(if (description.asKnown().isPresent) 1 else 0) +
(if (displayNameOverride.asKnown().isPresent) 1 else 0) +
+ (if (hasSoftLimit.asKnown().isPresent) 1 else 0) +
(hiddenFromWidgets.asKnown().getOrNull()?.sumOf { it.validity().toInt() }
?: 0) +
(if (isCustom.asKnown().isPresent) 1 else 0) +
@@ -3905,6 +3952,7 @@ private constructor(
dependencyFeatureId == other.dependencyFeatureId &&
description == other.description &&
displayNameOverride == other.displayNameOverride &&
+ hasSoftLimit == other.hasSoftLimit &&
hiddenFromWidgets == other.hiddenFromWidgets &&
isCustom == other.isCustom &&
isGranted == other.isGranted &&
@@ -3921,6 +3969,7 @@ private constructor(
dependencyFeatureId,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -3932,7 +3981,7 @@ private constructor(
override fun hashCode(): Int = hashCode
override fun toString() =
- "Credit{type=$type, amount=$amount, behavior=$behavior, cadence=$cadence, dependencyFeatureId=$dependencyFeatureId, description=$description, displayNameOverride=$displayNameOverride, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, additionalProperties=$additionalProperties}"
+ "Credit{type=$type, amount=$amount, behavior=$behavior, cadence=$cadence, dependencyFeatureId=$dependencyFeatureId, description=$description, displayNameOverride=$displayNameOverride, hasSoftLimit=$hasSoftLimit, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, additionalProperties=$additionalProperties}"
}
}
diff --git a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementCreateParams.kt b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementCreateParams.kt
index b289d6ef..b32c220d 100644
--- a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementCreateParams.kt
+++ b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementCreateParams.kt
@@ -3221,6 +3221,7 @@ private constructor(
private val dependencyFeatureId: JsonField,
private val description: JsonField,
private val displayNameOverride: JsonField,
+ private val hasSoftLimit: JsonField,
private val hiddenFromWidgets: JsonField>,
private val isCustom: JsonField,
private val isGranted: JsonField,
@@ -3250,6 +3251,9 @@ private constructor(
@JsonProperty("displayNameOverride")
@ExcludeMissing
displayNameOverride: JsonField = JsonMissing.of(),
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ hasSoftLimit: JsonField = JsonMissing.of(),
@JsonProperty("hiddenFromWidgets")
@ExcludeMissing
hiddenFromWidgets: JsonField> = JsonMissing.of(),
@@ -3269,6 +3273,7 @@ private constructor(
dependencyFeatureId,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -3350,6 +3355,15 @@ private constructor(
fun displayNameOverride(): Optional =
displayNameOverride.getOptional("displayNameOverride")
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to false.
+ *
+ * @throws StiggInvalidDataException if the JSON field has an unexpected type (e.g. if
+ * the server responded with an unexpected value).
+ */
+ fun hasSoftLimit(): Optional = hasSoftLimit.getOptional("hasSoftLimit")
+
/**
* Widget types where this entitlement is hidden
*
@@ -3444,6 +3458,16 @@ private constructor(
@ExcludeMissing
fun _displayNameOverride(): JsonField = displayNameOverride
+ /**
+ * Returns the raw JSON value of [hasSoftLimit].
+ *
+ * Unlike [hasSoftLimit], this method doesn't throw if the JSON field has an unexpected
+ * type.
+ */
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ fun _hasSoftLimit(): JsonField = hasSoftLimit
+
/**
* Returns the raw JSON value of [hiddenFromWidgets].
*
@@ -3517,6 +3541,7 @@ private constructor(
private var dependencyFeatureId: JsonField = JsonMissing.of()
private var description: JsonField = JsonMissing.of()
private var displayNameOverride: JsonField = JsonMissing.of()
+ private var hasSoftLimit: JsonField = JsonMissing.of()
private var hiddenFromWidgets: JsonField>? = null
private var isCustom: JsonField = JsonMissing.of()
private var isGranted: JsonField = JsonMissing.of()
@@ -3533,6 +3558,7 @@ private constructor(
dependencyFeatureId = credit.dependencyFeatureId
description = credit.description
displayNameOverride = credit.displayNameOverride
+ hasSoftLimit = credit.hasSoftLimit
hiddenFromWidgets = credit.hiddenFromWidgets.map { it.toMutableList() }
isCustom = credit.isCustom
isGranted = credit.isGranted
@@ -3659,6 +3685,24 @@ private constructor(
this.displayNameOverride = displayNameOverride
}
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to
+ * false.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean) = hasSoftLimit(JsonField.of(hasSoftLimit))
+
+ /**
+ * Sets [Builder.hasSoftLimit] to an arbitrary JSON value.
+ *
+ * You should usually call [Builder.hasSoftLimit] with a well-typed [Boolean] value
+ * instead. This method is primarily for setting the field to an undocumented or not
+ * yet supported value.
+ */
+ fun hasSoftLimit(hasSoftLimit: JsonField) = apply {
+ this.hasSoftLimit = hasSoftLimit
+ }
+
/** Widget types where this entitlement is hidden */
fun hiddenFromWidgets(hiddenFromWidgets: List) =
hiddenFromWidgets(JsonField.of(hiddenFromWidgets))
@@ -3769,6 +3813,7 @@ private constructor(
dependencyFeatureId,
description,
displayNameOverride,
+ hasSoftLimit,
(hiddenFromWidgets ?: JsonMissing.of()).map { it.toImmutable() },
isCustom,
isGranted,
@@ -3806,6 +3851,7 @@ private constructor(
dependencyFeatureId()
description()
displayNameOverride()
+ hasSoftLimit()
hiddenFromWidgets().ifPresent { it.forEach { it.validate() } }
isCustom()
isGranted()
@@ -3837,6 +3883,7 @@ private constructor(
(if (dependencyFeatureId.asKnown().isPresent) 1 else 0) +
(if (description.asKnown().isPresent) 1 else 0) +
(if (displayNameOverride.asKnown().isPresent) 1 else 0) +
+ (if (hasSoftLimit.asKnown().isPresent) 1 else 0) +
(hiddenFromWidgets.asKnown().getOrNull()?.sumOf { it.validity().toInt() }
?: 0) +
(if (isCustom.asKnown().isPresent) 1 else 0) +
@@ -4291,6 +4338,7 @@ private constructor(
dependencyFeatureId == other.dependencyFeatureId &&
description == other.description &&
displayNameOverride == other.displayNameOverride &&
+ hasSoftLimit == other.hasSoftLimit &&
hiddenFromWidgets == other.hiddenFromWidgets &&
isCustom == other.isCustom &&
isGranted == other.isGranted &&
@@ -4308,6 +4356,7 @@ private constructor(
dependencyFeatureId,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -4319,7 +4368,7 @@ private constructor(
override fun hashCode(): Int = hashCode
override fun toString() =
- "Credit{id=$id, amount=$amount, cadence=$cadence, type=$type, behavior=$behavior, dependencyFeatureId=$dependencyFeatureId, description=$description, displayNameOverride=$displayNameOverride, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, additionalProperties=$additionalProperties}"
+ "Credit{id=$id, amount=$amount, cadence=$cadence, type=$type, behavior=$behavior, dependencyFeatureId=$dependencyFeatureId, description=$description, displayNameOverride=$displayNameOverride, hasSoftLimit=$hasSoftLimit, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, additionalProperties=$additionalProperties}"
}
}
diff --git a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementCreateResponse.kt b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementCreateResponse.kt
index bd74c913..85c26c1a 100644
--- a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementCreateResponse.kt
+++ b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementCreateResponse.kt
@@ -3298,6 +3298,7 @@ private constructor(
private val createdAt: JsonField,
private val description: JsonField,
private val displayNameOverride: JsonField,
+ private val hasSoftLimit: JsonField,
private val hiddenFromWidgets: JsonField>,
private val isCustom: JsonField,
private val isGranted: JsonField,
@@ -3329,6 +3330,9 @@ private constructor(
@JsonProperty("displayNameOverride")
@ExcludeMissing
displayNameOverride: JsonField = JsonMissing.of(),
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ hasSoftLimit: JsonField = JsonMissing.of(),
@JsonProperty("hiddenFromWidgets")
@ExcludeMissing
hiddenFromWidgets: JsonField> = JsonMissing.of(),
@@ -3354,6 +3358,7 @@ private constructor(
createdAt,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -3424,6 +3429,15 @@ private constructor(
fun displayNameOverride(): Optional =
displayNameOverride.getOptional("displayNameOverride")
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to false.
+ *
+ * @throws StiggInvalidDataException if the JSON field has an unexpected type (e.g. if
+ * the server responded with an unexpected value).
+ */
+ fun hasSoftLimit(): Optional = hasSoftLimit.getOptional("hasSoftLimit")
+
/**
* Widget types where this entitlement is hidden
*
@@ -3552,6 +3566,16 @@ private constructor(
@ExcludeMissing
fun _displayNameOverride(): JsonField = displayNameOverride
+ /**
+ * Returns the raw JSON value of [hasSoftLimit].
+ *
+ * Unlike [hasSoftLimit], this method doesn't throw if the JSON field has an unexpected
+ * type.
+ */
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ fun _hasSoftLimit(): JsonField = hasSoftLimit
+
/**
* Returns the raw JSON value of [hiddenFromWidgets].
*
@@ -3633,6 +3657,7 @@ private constructor(
* .createdAt()
* .description()
* .displayNameOverride()
+ * .hasSoftLimit()
* .hiddenFromWidgets()
* .isCustom()
* .isGranted()
@@ -3653,6 +3678,7 @@ private constructor(
private var createdAt: JsonField? = null
private var description: JsonField? = null
private var displayNameOverride: JsonField? = null
+ private var hasSoftLimit: JsonField? = null
private var hiddenFromWidgets: JsonField>? = null
private var isCustom: JsonField? = null
private var isGranted: JsonField? = null
@@ -3671,6 +3697,7 @@ private constructor(
createdAt = credit.createdAt
description = credit.description
displayNameOverride = credit.displayNameOverride
+ hasSoftLimit = credit.hasSoftLimit
hiddenFromWidgets = credit.hiddenFromWidgets.map { it.toMutableList() }
isCustom = credit.isCustom
isGranted = credit.isGranted
@@ -3797,6 +3824,36 @@ private constructor(
this.displayNameOverride = displayNameOverride
}
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to
+ * false.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean?) =
+ hasSoftLimit(JsonField.ofNullable(hasSoftLimit))
+
+ /**
+ * Alias for [Builder.hasSoftLimit].
+ *
+ * This unboxed primitive overload exists for backwards compatibility.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean) = hasSoftLimit(hasSoftLimit as Boolean?)
+
+ /** Alias for calling [Builder.hasSoftLimit] with `hasSoftLimit.orElse(null)`. */
+ fun hasSoftLimit(hasSoftLimit: Optional) =
+ hasSoftLimit(hasSoftLimit.getOrNull())
+
+ /**
+ * Sets [Builder.hasSoftLimit] to an arbitrary JSON value.
+ *
+ * You should usually call [Builder.hasSoftLimit] with a well-typed [Boolean] value
+ * instead. This method is primarily for setting the field to an undocumented or not
+ * yet supported value.
+ */
+ fun hasSoftLimit(hasSoftLimit: JsonField) = apply {
+ this.hasSoftLimit = hasSoftLimit
+ }
+
/** Widget types where this entitlement is hidden */
fun hiddenFromWidgets(hiddenFromWidgets: List) =
hiddenFromWidgets(JsonField.of(hiddenFromWidgets))
@@ -3971,6 +4028,7 @@ private constructor(
* .createdAt()
* .description()
* .displayNameOverride()
+ * .hasSoftLimit()
* .hiddenFromWidgets()
* .isCustom()
* .isGranted()
@@ -3989,6 +4047,7 @@ private constructor(
checkRequired("createdAt", createdAt),
checkRequired("description", description),
checkRequired("displayNameOverride", displayNameOverride),
+ checkRequired("hasSoftLimit", hasSoftLimit),
checkRequired("hiddenFromWidgets", hiddenFromWidgets).map {
it.toImmutable()
},
@@ -4026,6 +4085,7 @@ private constructor(
createdAt()
description()
displayNameOverride()
+ hasSoftLimit()
hiddenFromWidgets().forEach { it.validate() }
isCustom()
isGranted()
@@ -4063,6 +4123,7 @@ private constructor(
(if (createdAt.asKnown().isPresent) 1 else 0) +
(if (description.asKnown().isPresent) 1 else 0) +
(if (displayNameOverride.asKnown().isPresent) 1 else 0) +
+ (if (hasSoftLimit.asKnown().isPresent) 1 else 0) +
(hiddenFromWidgets.asKnown().getOrNull()?.sumOf { it.validity().toInt() }
?: 0) +
(if (isCustom.asKnown().isPresent) 1 else 0) +
@@ -4519,6 +4580,7 @@ private constructor(
createdAt == other.createdAt &&
description == other.description &&
displayNameOverride == other.displayNameOverride &&
+ hasSoftLimit == other.hasSoftLimit &&
hiddenFromWidgets == other.hiddenFromWidgets &&
isCustom == other.isCustom &&
isGranted == other.isGranted &&
@@ -4538,6 +4600,7 @@ private constructor(
createdAt,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -4552,7 +4615,7 @@ private constructor(
override fun hashCode(): Int = hashCode
override fun toString() =
- "Credit{id=$id, amount=$amount, behavior=$behavior, cadence=$cadence, createdAt=$createdAt, description=$description, displayNameOverride=$displayNameOverride, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, type=$type, updatedAt=$updatedAt, dependencyFeatureId=$dependencyFeatureId, additionalProperties=$additionalProperties}"
+ "Credit{id=$id, amount=$amount, behavior=$behavior, cadence=$cadence, createdAt=$createdAt, description=$description, displayNameOverride=$displayNameOverride, hasSoftLimit=$hasSoftLimit, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, type=$type, updatedAt=$updatedAt, dependencyFeatureId=$dependencyFeatureId, additionalProperties=$additionalProperties}"
}
}
diff --git a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementListResponse.kt b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementListResponse.kt
index d26442c1..61ee1dcc 100644
--- a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementListResponse.kt
+++ b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementListResponse.kt
@@ -3338,6 +3338,7 @@ private constructor(
private val createdAt: JsonField,
private val description: JsonField,
private val displayNameOverride: JsonField,
+ private val hasSoftLimit: JsonField,
private val hiddenFromWidgets: JsonField>,
private val isCustom: JsonField,
private val isGranted: JsonField,
@@ -3369,6 +3370,9 @@ private constructor(
@JsonProperty("displayNameOverride")
@ExcludeMissing
displayNameOverride: JsonField = JsonMissing.of(),
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ hasSoftLimit: JsonField = JsonMissing.of(),
@JsonProperty("hiddenFromWidgets")
@ExcludeMissing
hiddenFromWidgets: JsonField> = JsonMissing.of(),
@@ -3394,6 +3398,7 @@ private constructor(
createdAt,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -3464,6 +3469,15 @@ private constructor(
fun displayNameOverride(): Optional =
displayNameOverride.getOptional("displayNameOverride")
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to false.
+ *
+ * @throws StiggInvalidDataException if the JSON field has an unexpected type (e.g. if
+ * the server responded with an unexpected value).
+ */
+ fun hasSoftLimit(): Optional = hasSoftLimit.getOptional("hasSoftLimit")
+
/**
* Widget types where this entitlement is hidden
*
@@ -3592,6 +3606,16 @@ private constructor(
@ExcludeMissing
fun _displayNameOverride(): JsonField = displayNameOverride
+ /**
+ * Returns the raw JSON value of [hasSoftLimit].
+ *
+ * Unlike [hasSoftLimit], this method doesn't throw if the JSON field has an unexpected
+ * type.
+ */
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ fun _hasSoftLimit(): JsonField = hasSoftLimit
+
/**
* Returns the raw JSON value of [hiddenFromWidgets].
*
@@ -3673,6 +3697,7 @@ private constructor(
* .createdAt()
* .description()
* .displayNameOverride()
+ * .hasSoftLimit()
* .hiddenFromWidgets()
* .isCustom()
* .isGranted()
@@ -3693,6 +3718,7 @@ private constructor(
private var createdAt: JsonField? = null
private var description: JsonField? = null
private var displayNameOverride: JsonField? = null
+ private var hasSoftLimit: JsonField? = null
private var hiddenFromWidgets: JsonField>? = null
private var isCustom: JsonField? = null
private var isGranted: JsonField? = null
@@ -3711,6 +3737,7 @@ private constructor(
createdAt = credit.createdAt
description = credit.description
displayNameOverride = credit.displayNameOverride
+ hasSoftLimit = credit.hasSoftLimit
hiddenFromWidgets = credit.hiddenFromWidgets.map { it.toMutableList() }
isCustom = credit.isCustom
isGranted = credit.isGranted
@@ -3837,6 +3864,36 @@ private constructor(
this.displayNameOverride = displayNameOverride
}
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to
+ * false.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean?) =
+ hasSoftLimit(JsonField.ofNullable(hasSoftLimit))
+
+ /**
+ * Alias for [Builder.hasSoftLimit].
+ *
+ * This unboxed primitive overload exists for backwards compatibility.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean) = hasSoftLimit(hasSoftLimit as Boolean?)
+
+ /** Alias for calling [Builder.hasSoftLimit] with `hasSoftLimit.orElse(null)`. */
+ fun hasSoftLimit(hasSoftLimit: Optional) =
+ hasSoftLimit(hasSoftLimit.getOrNull())
+
+ /**
+ * Sets [Builder.hasSoftLimit] to an arbitrary JSON value.
+ *
+ * You should usually call [Builder.hasSoftLimit] with a well-typed [Boolean] value
+ * instead. This method is primarily for setting the field to an undocumented or not
+ * yet supported value.
+ */
+ fun hasSoftLimit(hasSoftLimit: JsonField) = apply {
+ this.hasSoftLimit = hasSoftLimit
+ }
+
/** Widget types where this entitlement is hidden */
fun hiddenFromWidgets(hiddenFromWidgets: List) =
hiddenFromWidgets(JsonField.of(hiddenFromWidgets))
@@ -4011,6 +4068,7 @@ private constructor(
* .createdAt()
* .description()
* .displayNameOverride()
+ * .hasSoftLimit()
* .hiddenFromWidgets()
* .isCustom()
* .isGranted()
@@ -4029,6 +4087,7 @@ private constructor(
checkRequired("createdAt", createdAt),
checkRequired("description", description),
checkRequired("displayNameOverride", displayNameOverride),
+ checkRequired("hasSoftLimit", hasSoftLimit),
checkRequired("hiddenFromWidgets", hiddenFromWidgets).map {
it.toImmutable()
},
@@ -4066,6 +4125,7 @@ private constructor(
createdAt()
description()
displayNameOverride()
+ hasSoftLimit()
hiddenFromWidgets().forEach { it.validate() }
isCustom()
isGranted()
@@ -4103,6 +4163,7 @@ private constructor(
(if (createdAt.asKnown().isPresent) 1 else 0) +
(if (description.asKnown().isPresent) 1 else 0) +
(if (displayNameOverride.asKnown().isPresent) 1 else 0) +
+ (if (hasSoftLimit.asKnown().isPresent) 1 else 0) +
(hiddenFromWidgets.asKnown().getOrNull()?.sumOf { it.validity().toInt() }
?: 0) +
(if (isCustom.asKnown().isPresent) 1 else 0) +
@@ -4559,6 +4620,7 @@ private constructor(
createdAt == other.createdAt &&
description == other.description &&
displayNameOverride == other.displayNameOverride &&
+ hasSoftLimit == other.hasSoftLimit &&
hiddenFromWidgets == other.hiddenFromWidgets &&
isCustom == other.isCustom &&
isGranted == other.isGranted &&
@@ -4578,6 +4640,7 @@ private constructor(
createdAt,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -4592,7 +4655,7 @@ private constructor(
override fun hashCode(): Int = hashCode
override fun toString() =
- "Credit{id=$id, amount=$amount, behavior=$behavior, cadence=$cadence, createdAt=$createdAt, description=$description, displayNameOverride=$displayNameOverride, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, type=$type, updatedAt=$updatedAt, dependencyFeatureId=$dependencyFeatureId, additionalProperties=$additionalProperties}"
+ "Credit{id=$id, amount=$amount, behavior=$behavior, cadence=$cadence, createdAt=$createdAt, description=$description, displayNameOverride=$displayNameOverride, hasSoftLimit=$hasSoftLimit, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, type=$type, updatedAt=$updatedAt, dependencyFeatureId=$dependencyFeatureId, additionalProperties=$additionalProperties}"
}
}
diff --git a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementUpdateParams.kt b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementUpdateParams.kt
index be4cc58f..df88d1d3 100644
--- a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementUpdateParams.kt
+++ b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/EntitlementUpdateParams.kt
@@ -2893,6 +2893,7 @@ private constructor(
private val dependencyFeatureId: JsonField,
private val description: JsonField,
private val displayNameOverride: JsonField,
+ private val hasSoftLimit: JsonField,
private val hiddenFromWidgets: JsonField>,
private val isCustom: JsonField,
private val isGranted: JsonField,
@@ -2921,6 +2922,9 @@ private constructor(
@JsonProperty("displayNameOverride")
@ExcludeMissing
displayNameOverride: JsonField = JsonMissing.of(),
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ hasSoftLimit: JsonField = JsonMissing.of(),
@JsonProperty("hiddenFromWidgets")
@ExcludeMissing
hiddenFromWidgets: JsonField> = JsonMissing.of(),
@@ -2939,6 +2943,7 @@ private constructor(
dependencyFeatureId,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -3010,6 +3015,15 @@ private constructor(
fun displayNameOverride(): Optional =
displayNameOverride.getOptional("displayNameOverride")
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to false.
+ *
+ * @throws StiggInvalidDataException if the JSON field has an unexpected type (e.g. if
+ * the server responded with an unexpected value).
+ */
+ fun hasSoftLimit(): Optional = hasSoftLimit.getOptional("hasSoftLimit")
+
/**
* Widget types where this entitlement is hidden
*
@@ -3097,6 +3111,16 @@ private constructor(
@ExcludeMissing
fun _displayNameOverride(): JsonField = displayNameOverride
+ /**
+ * Returns the raw JSON value of [hasSoftLimit].
+ *
+ * Unlike [hasSoftLimit], this method doesn't throw if the JSON field has an unexpected
+ * type.
+ */
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ fun _hasSoftLimit(): JsonField = hasSoftLimit
+
/**
* Returns the raw JSON value of [hiddenFromWidgets].
*
@@ -3160,6 +3184,7 @@ private constructor(
private var dependencyFeatureId: JsonField = JsonMissing.of()
private var description: JsonField = JsonMissing.of()
private var displayNameOverride: JsonField = JsonMissing.of()
+ private var hasSoftLimit: JsonField = JsonMissing.of()
private var hiddenFromWidgets: JsonField>? = null
private var isCustom: JsonField = JsonMissing.of()
private var isGranted: JsonField = JsonMissing.of()
@@ -3175,6 +3200,7 @@ private constructor(
dependencyFeatureId = credit.dependencyFeatureId
description = credit.description
displayNameOverride = credit.displayNameOverride
+ hasSoftLimit = credit.hasSoftLimit
hiddenFromWidgets = credit.hiddenFromWidgets.map { it.toMutableList() }
isCustom = credit.isCustom
isGranted = credit.isGranted
@@ -3286,6 +3312,24 @@ private constructor(
this.displayNameOverride = displayNameOverride
}
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to
+ * false.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean) = hasSoftLimit(JsonField.of(hasSoftLimit))
+
+ /**
+ * Sets [Builder.hasSoftLimit] to an arbitrary JSON value.
+ *
+ * You should usually call [Builder.hasSoftLimit] with a well-typed [Boolean] value
+ * instead. This method is primarily for setting the field to an undocumented or not
+ * yet supported value.
+ */
+ fun hasSoftLimit(hasSoftLimit: JsonField) = apply {
+ this.hasSoftLimit = hasSoftLimit
+ }
+
/** Widget types where this entitlement is hidden */
fun hiddenFromWidgets(hiddenFromWidgets: List) =
hiddenFromWidgets(JsonField.of(hiddenFromWidgets))
@@ -3386,6 +3430,7 @@ private constructor(
dependencyFeatureId,
description,
displayNameOverride,
+ hasSoftLimit,
(hiddenFromWidgets ?: JsonMissing.of()).map { it.toImmutable() },
isCustom,
isGranted,
@@ -3422,6 +3467,7 @@ private constructor(
dependencyFeatureId()
description()
displayNameOverride()
+ hasSoftLimit()
hiddenFromWidgets().ifPresent { it.forEach { it.validate() } }
isCustom()
isGranted()
@@ -3452,6 +3498,7 @@ private constructor(
(if (dependencyFeatureId.asKnown().isPresent) 1 else 0) +
(if (description.asKnown().isPresent) 1 else 0) +
(if (displayNameOverride.asKnown().isPresent) 1 else 0) +
+ (if (hasSoftLimit.asKnown().isPresent) 1 else 0) +
(hiddenFromWidgets.asKnown().getOrNull()?.sumOf { it.validity().toInt() }
?: 0) +
(if (isCustom.asKnown().isPresent) 1 else 0) +
@@ -3905,6 +3952,7 @@ private constructor(
dependencyFeatureId == other.dependencyFeatureId &&
description == other.description &&
displayNameOverride == other.displayNameOverride &&
+ hasSoftLimit == other.hasSoftLimit &&
hiddenFromWidgets == other.hiddenFromWidgets &&
isCustom == other.isCustom &&
isGranted == other.isGranted &&
@@ -3921,6 +3969,7 @@ private constructor(
dependencyFeatureId,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -3932,7 +3981,7 @@ private constructor(
override fun hashCode(): Int = hashCode
override fun toString() =
- "Credit{type=$type, amount=$amount, behavior=$behavior, cadence=$cadence, dependencyFeatureId=$dependencyFeatureId, description=$description, displayNameOverride=$displayNameOverride, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, additionalProperties=$additionalProperties}"
+ "Credit{type=$type, amount=$amount, behavior=$behavior, cadence=$cadence, dependencyFeatureId=$dependencyFeatureId, description=$description, displayNameOverride=$displayNameOverride, hasSoftLimit=$hasSoftLimit, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, additionalProperties=$additionalProperties}"
}
}
diff --git a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/PlanEntitlement.kt b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/PlanEntitlement.kt
index b5a51a0b..7c20308b 100644
--- a/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/PlanEntitlement.kt
+++ b/stigg-java-core/src/main/kotlin/io/stigg/models/v1/plans/entitlements/PlanEntitlement.kt
@@ -3282,6 +3282,7 @@ private constructor(
private val createdAt: JsonField,
private val description: JsonField,
private val displayNameOverride: JsonField,
+ private val hasSoftLimit: JsonField,
private val hiddenFromWidgets: JsonField>,
private val isCustom: JsonField,
private val isGranted: JsonField,
@@ -3313,6 +3314,9 @@ private constructor(
@JsonProperty("displayNameOverride")
@ExcludeMissing
displayNameOverride: JsonField = JsonMissing.of(),
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ hasSoftLimit: JsonField = JsonMissing.of(),
@JsonProperty("hiddenFromWidgets")
@ExcludeMissing
hiddenFromWidgets: JsonField> = JsonMissing.of(),
@@ -3338,6 +3342,7 @@ private constructor(
createdAt,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -3408,6 +3413,15 @@ private constructor(
fun displayNameOverride(): Optional =
displayNameOverride.getOptional("displayNameOverride")
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to false.
+ *
+ * @throws StiggInvalidDataException if the JSON field has an unexpected type (e.g. if
+ * the server responded with an unexpected value).
+ */
+ fun hasSoftLimit(): Optional = hasSoftLimit.getOptional("hasSoftLimit")
+
/**
* Widget types where this entitlement is hidden
*
@@ -3536,6 +3550,16 @@ private constructor(
@ExcludeMissing
fun _displayNameOverride(): JsonField = displayNameOverride
+ /**
+ * Returns the raw JSON value of [hasSoftLimit].
+ *
+ * Unlike [hasSoftLimit], this method doesn't throw if the JSON field has an unexpected
+ * type.
+ */
+ @JsonProperty("hasSoftLimit")
+ @ExcludeMissing
+ fun _hasSoftLimit(): JsonField = hasSoftLimit
+
/**
* Returns the raw JSON value of [hiddenFromWidgets].
*
@@ -3617,6 +3641,7 @@ private constructor(
* .createdAt()
* .description()
* .displayNameOverride()
+ * .hasSoftLimit()
* .hiddenFromWidgets()
* .isCustom()
* .isGranted()
@@ -3637,6 +3662,7 @@ private constructor(
private var createdAt: JsonField? = null
private var description: JsonField? = null
private var displayNameOverride: JsonField? = null
+ private var hasSoftLimit: JsonField? = null
private var hiddenFromWidgets: JsonField>? = null
private var isCustom: JsonField? = null
private var isGranted: JsonField? = null
@@ -3655,6 +3681,7 @@ private constructor(
createdAt = credit.createdAt
description = credit.description
displayNameOverride = credit.displayNameOverride
+ hasSoftLimit = credit.hasSoftLimit
hiddenFromWidgets = credit.hiddenFromWidgets.map { it.toMutableList() }
isCustom = credit.isCustom
isGranted = credit.isGranted
@@ -3781,6 +3808,36 @@ private constructor(
this.displayNameOverride = displayNameOverride
}
+ /**
+ * Whether the credit wallet is soft-limited. When true, getEntitlement returns
+ * hasAccess=true past the limit; vendors decide whether to enforce. Defaults to
+ * false.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean?) =
+ hasSoftLimit(JsonField.ofNullable(hasSoftLimit))
+
+ /**
+ * Alias for [Builder.hasSoftLimit].
+ *
+ * This unboxed primitive overload exists for backwards compatibility.
+ */
+ fun hasSoftLimit(hasSoftLimit: Boolean) = hasSoftLimit(hasSoftLimit as Boolean?)
+
+ /** Alias for calling [Builder.hasSoftLimit] with `hasSoftLimit.orElse(null)`. */
+ fun hasSoftLimit(hasSoftLimit: Optional) =
+ hasSoftLimit(hasSoftLimit.getOrNull())
+
+ /**
+ * Sets [Builder.hasSoftLimit] to an arbitrary JSON value.
+ *
+ * You should usually call [Builder.hasSoftLimit] with a well-typed [Boolean] value
+ * instead. This method is primarily for setting the field to an undocumented or not
+ * yet supported value.
+ */
+ fun hasSoftLimit(hasSoftLimit: JsonField) = apply {
+ this.hasSoftLimit = hasSoftLimit
+ }
+
/** Widget types where this entitlement is hidden */
fun hiddenFromWidgets(hiddenFromWidgets: List) =
hiddenFromWidgets(JsonField.of(hiddenFromWidgets))
@@ -3955,6 +4012,7 @@ private constructor(
* .createdAt()
* .description()
* .displayNameOverride()
+ * .hasSoftLimit()
* .hiddenFromWidgets()
* .isCustom()
* .isGranted()
@@ -3973,6 +4031,7 @@ private constructor(
checkRequired("createdAt", createdAt),
checkRequired("description", description),
checkRequired("displayNameOverride", displayNameOverride),
+ checkRequired("hasSoftLimit", hasSoftLimit),
checkRequired("hiddenFromWidgets", hiddenFromWidgets).map {
it.toImmutable()
},
@@ -4010,6 +4069,7 @@ private constructor(
createdAt()
description()
displayNameOverride()
+ hasSoftLimit()
hiddenFromWidgets().forEach { it.validate() }
isCustom()
isGranted()
@@ -4047,6 +4107,7 @@ private constructor(
(if (createdAt.asKnown().isPresent) 1 else 0) +
(if (description.asKnown().isPresent) 1 else 0) +
(if (displayNameOverride.asKnown().isPresent) 1 else 0) +
+ (if (hasSoftLimit.asKnown().isPresent) 1 else 0) +
(hiddenFromWidgets.asKnown().getOrNull()?.sumOf { it.validity().toInt() }
?: 0) +
(if (isCustom.asKnown().isPresent) 1 else 0) +
@@ -4503,6 +4564,7 @@ private constructor(
createdAt == other.createdAt &&
description == other.description &&
displayNameOverride == other.displayNameOverride &&
+ hasSoftLimit == other.hasSoftLimit &&
hiddenFromWidgets == other.hiddenFromWidgets &&
isCustom == other.isCustom &&
isGranted == other.isGranted &&
@@ -4522,6 +4584,7 @@ private constructor(
createdAt,
description,
displayNameOverride,
+ hasSoftLimit,
hiddenFromWidgets,
isCustom,
isGranted,
@@ -4536,7 +4599,7 @@ private constructor(
override fun hashCode(): Int = hashCode
override fun toString() =
- "Credit{id=$id, amount=$amount, behavior=$behavior, cadence=$cadence, createdAt=$createdAt, description=$description, displayNameOverride=$displayNameOverride, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, type=$type, updatedAt=$updatedAt, dependencyFeatureId=$dependencyFeatureId, additionalProperties=$additionalProperties}"
+ "Credit{id=$id, amount=$amount, behavior=$behavior, cadence=$cadence, createdAt=$createdAt, description=$description, displayNameOverride=$displayNameOverride, hasSoftLimit=$hasSoftLimit, hiddenFromWidgets=$hiddenFromWidgets, isCustom=$isCustom, isGranted=$isGranted, order=$order, type=$type, updatedAt=$updatedAt, dependencyFeatureId=$dependencyFeatureId, additionalProperties=$additionalProperties}"
}
}