Type
TwitterGitHub
Draft
Draft
  • Introduction
  • ❤ Benefits
  • Getting started
    • Skeleton
    • Installation
      • npm
    • Public API
    • General concepts
  • Helper
    • recognizeValue()
      • Recognized instances
      • OfRecognized
    • resultCallback()
    • typeOf()
  • is
    • isArray()
    • isBigInt()
    • isBoolean()
    • isBooleanObject()
    • isBooleanType()
    • isClass()
    • isDate()
    • isDefined()
    • ★ isFalse()
    • isFunction()
    • isInstance()
    • isKey()
    • isNull()
    • ★ isNumber()
    • isNumberBetween()
    • isNumberObject()
    • isNumberType()
    • isObject()
    • isObjectKey()
    • isObjectKeyIn()
    • isObjectKeys()
    • isObjectKeysIn()
    • isObjectSomeKeys()
    • isPrimitive()
    • isRegExp()
    • ★ isString()
    • isStringIncludes()
    • isStringIncludesSome()
    • isStringLength()
    • isStringLengthBetween()
    • isStringObject()
    • isStringType()
    • isSymbol()
    • ★ isTrue()
    • isType()
    • isUndefined()
  • is not
    • isNotBoolean()
    • isNotDefined()
    • isNotFunction()
    • isNotNull()
    • isNotNumber()
    • isNotString()
    • isNotUndefined()
  • Are
    • areDeterminer()
      • every()
      • forEach()
      • some()
    • areBigInt()
      • every()
      • forEach()
      • some()
    • areBoolean()
      • every()
      • forEach()
      • some()
    • areDate()
      • every()
      • forEach()
      • some()
    • areDefined()
      • every()
      • forEach()
      • some()
    • ★ areFalse()
      • every()
      • forEach()
      • some()
    • areNull()
      • every()
      • forEach()
      • some()
    • ★ areNumber()
      • every()
      • forEach()
      • some()
    • areRegExp()
      • every()
      • forEach()
      • some()
    • ★ areString()
      • every()
      • forEach()
      • some()
    • areSymbol()
      • every()
      • forEach()
      • some()
    • ★ areTrue()
      • every()
      • forEach()
      • some()
    • areUndefined()
      • every()
      • forEach()
      • some()
  • Guard
    • guardArray()
    • guardBigInt()
    • guardBoolean()
    • guardClass()
    • guardDate()
    • guardDefined()
    • ★ guardFalse()
    • guardFunction()
    • guardInstance()
    • guardKey()
    • guardNull()
    • guardNumber()
    • guardNumberBetween()
    • guardObject()
    • guardObjectKey()
    • guardObjectKeyIn()
    • guardObjectKeys()
    • guardObjectKeysIn()
    • guardObjectSomeKeys()
    • guardPrimitive()
    • guardRegExp()
    • ★ guardString()
    • guardStringIncludes()
    • guardStringIncludesSome()
    • guardStringLength()
    • guardStringLengthBetween()
    • guardSymbol()
    • ★ guardTrue()
    • guardType()
    • guardUndefined()
  • object
    • are: Are {}
    • guard: Guard {}
    • guardIs: GuardIs {}
    • is: Is {}
    • isNot: IsNot {}
    • type {}
  • Interface
    • MinMax
  • Type
    • AnyBoolean
    • AnyNumber
    • AnyString
    • CallbackPayload
    • Constructor
    • Defined
    • ForEachCallback
    • GenericObject
    • Never
    • NotUndefined
    • NumberBetween
    • Primitive
    • Primitives
    • ResultCallback
    • StringOfLength
    • Type
    • Types
    • Undefined
  • Experimental
    • isParam()
  • GIT
    • Commit
    • Semantic Versioning
  • Change log
    • Keep a changelog
    • Unreleased
    • v5.0.0-rc.0
    • v4.2.0
  • License
    • MIT
  • Contact
    • ⋯ Chat
    • @ Email
  • Donate
    • ฿ Cryptocurrency
    • $ Fiat
Powered by GitBook
On this page
  • guardStringLengthBetween()
  • Generic type variables
  • Parameters
  • Return type
  • Returns
  • Example usage

Was this helpful?

Edit on GitHub
  1. Guard

guardStringLengthBetween()

PreviousguardStringLength()NextguardSymbol()

Last updated 3 years ago

Was this helpful?

guardStringLengthBetween()

Guards the value to be or instance of a length between the specified range.

guard-string-length-between.func.ts
const guardStringLengthBetween = <
  Type extends AnyString,
  Min extends number,
  Max extends number,
  Payload extends object = object
>(
  value: Type,
  min: Min,
  max: Max,
  callback?: ResultCallback<Type, { min: Min; max: Max } & Payload>,
  payload?: Payload
): value is StringOfLength<Min, Max, Type> =>
  isStringLengthBetween(value, min, max, callback, payload);

Generic type variables

TypeextendsAnyString

Minextendsnumber

Maxextendsnumber

Payloadextendsobject=object

Parameters

value: Type

min: Max

max: Max

callback?: ResultCallback<Type, { min: Min; max: Max } & Payload>

payload?: Payload

Return type

value is StringOfLength<Min, Max, Type>

Returns

Example usage

// Example usage.
import { guardStringLengthBetween } from '@angular-package/type';

// true; return type `value is StringOfLength<11, 12, "not my name">`
guardStringLengthBetween('not my name', 11, 12);
// true; return type `value is StringOfLength<10, 11, "not my name">`
guardStringLengthBetween('not my name', 10, 11);
// true; return type `value is StringOfLength<11, 11, "not my name">`
guardStringLengthBetween('not my name', 11, 11);
// false; return type `value is StringOfLength<12, 15, "not my name">`
guardStringLengthBetween('not my name', 12, 15);

// Long text for the captured value type.
const value = `Lorem Ipsum is simply dummy text of the printing and typesetting industry.
Lorem Ipsum has been the industry's standard dummy text ever since the 1500s,
when an unknown printer took a galley of type and scrambled it to make a type specimen book.
It has survived not only five centuries, but also the leap into electronic typesetting,
remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset
sheets containing Lorem Ipsum passages, and more recently with desktop publishing software
like Aldus PageMaker including versions of Lorem Ipsum.` as string;

// false, value is StringOfLength<0, 3, string>
guardStringLengthBetween(value, 0, 3); 

A generic type variable Obj constrained by indicates captured type of the given via the and the parameter of the provided function type.

A generic type variable Min constrained by the type, by default of value captured from the supplied indicates the parameter type of the provided function type and the minimum length of the provided via the .

A generic type variable Max constrained by the type, by default of value captured from the supplied indicates the parameter type of the provided function type and the maximum length of the provided via the .

The Payload generic type variable constrained by indicates the type of optional parameter of the supplied function and optional parameter of the function from which it captures its value.

The value of a generic type variable constrained by , by default of the type captured from itself to guard.

The minimum length of generic type variable of a given .

The maximum length of generic type variable of a given

The optional callback of type with parameters, the that has been checked, the result of this check, and payload of generic type variable with optional properties from the provided payload, to handle them before the result return. By default, it uses function.

The payload parameter of given callback function consists of the min and max properties of the given and parameters, and they can't be overwritten by the given parameter of the main function.

An optional of the generic type variable is assigned to the of the given function.

The return type is a as the result of its statement, indicating the is a generic type that takes generic type variables and (from the provided and parameter) as the length range of the supplied , and as the type of the supplied .

The return value is a indicating whether the is a type or an instance of of a between the specified range.

AnyString
Type
Min
value
Max
value
function
ResultCallback
resultCallback()
value
Payload
min
max
payload
boolean
StringOfLength
value
Min
Max
min
max
value
Type
value
boolean
string
String
value
length
string
String
AnyString
string
ResultCallback
value
return type
callback
number
ResultCallback
min
callback
value
return type
number
ResultCallback
max
callback
value
return type
object
callback
payload
guardStringLengthBetween()
object
Payload
callback
value
payload
payload
payload
payload
Logotype/guard-string-length-between.func.ts at main · angular-package/typeGitHub