commonMain.schemas.StringSchema.kt Maven / Gradle / Ivy
package pt.lightweightform.lfkotlin.schemas
import pt.lightweightform.lfkotlin.AllowedValues
import pt.lightweightform.lfkotlin.Bound
import pt.lightweightform.lfkotlin.ComputedValue
import pt.lightweightform.lfkotlin.InitialValue
import pt.lightweightform.lfkotlin.IsRequired
import pt.lightweightform.lfkotlin.Schema
import pt.lightweightform.lfkotlin.Validation
internal expect fun stringSchemaImpl(
isNullable: Boolean,
initialValue: String?,
computedInitialValue: InitialValue? = null,
computedValue: ComputedValue?,
mismatchedComputedCode: String?,
isClientOnly: Boolean?,
isRequired: Boolean?,
computedIsRequired: IsRequired?,
isRequiredCode: String?,
allowedValues: List?,
computedAllowedValues: AllowedValues?,
disallowedValueCode: String?,
minLength: Int?,
computedMinLength: Bound?,
minLengthCode: String?,
maxLength: Int?,
computedMaxLength: Bound?,
maxLengthCode: String?,
validations: List>?,
initialState: Map?,
extra: Map?
): Schema
/** Creates a string schema. Maps to a schema of type "string" in LF. */
@Suppress("UNCHECKED_CAST")
public fun stringSchema(
initialValue: String? = null,
computedInitialValue: InitialValue? = null,
computedValue: ComputedValue? = null,
mismatchedComputedCode: String? = null,
isClientOnly: Boolean? = null,
allowedValues: List? = null,
computedAllowedValues: AllowedValues? = null,
disallowedValueCode: String? = null,
minLength: Int? = null,
computedMinLength: Bound? = null,
minLengthCode: String? = null,
maxLength: Int? = null,
computedMaxLength: Bound? = null,
maxLengthCode: String? = null,
validations: List>? = null,
initialState: Map? = null,
extra: Map? = null
): Schema =
stringSchemaImpl(
false,
initialValue,
computedInitialValue,
computedValue as ComputedValue?,
mismatchedComputedCode,
isClientOnly,
null,
null,
null,
allowedValues,
computedAllowedValues,
disallowedValueCode,
minLength,
computedMinLength,
minLengthCode,
maxLength,
computedMaxLength,
maxLengthCode,
validations,
initialState,
extra
) as
Schema
/**
* Creates a nullable string schema. Maps to a schema of type "string" with `isNullable` set to
* `true` in LF.
*/
@Suppress("UNCHECKED_CAST")
public fun nullableStringSchema(
initialValue: String? = null,
computedInitialValue: InitialValue? = null,
computedValue: ComputedValue? = null,
mismatchedComputedCode: String? = null,
isClientOnly: Boolean? = null,
isRequired: Boolean? = null,
computedIsRequired: IsRequired? = null,
isRequiredCode: String? = null,
allowedValues: List? = null,
computedAllowedValues: AllowedValues? = null,
disallowedValueCode: String? = null,
minLength: Int? = null,
computedMinLength: Bound? = null,
minLengthCode: String? = null,
maxLength: Int? = null,
computedMaxLength: Bound? = null,
maxLengthCode: String? = null,
validations: List>? = null,
initialState: Map? = null,
extra: Map? = null
): Schema =
stringSchemaImpl(
true,
initialValue,
computedInitialValue,
computedValue,
mismatchedComputedCode,
isClientOnly,
isRequired,
computedIsRequired,
isRequiredCode,
allowedValues,
computedAllowedValues,
disallowedValueCode,
minLength,
computedMinLength,
minLengthCode,
maxLength,
computedMaxLength,
maxLengthCode,
validations,
initialState,
extra
)
© 2015 - 2025 Weber Informatics LLC | Privacy Policy