@etsoo/shared
TypeScript icon, indicating that this package has built-in type declarations

1.2.46 • Public • Published

Shared

TypeScript shared utilities and functions.

Installing

Using npm:

$ npm install @etsoo/shared

Using yarn:

$ yarn add @etsoo/shared

ActionResult / IActionResult, IdActionResult, DynamicActionResult

Name Description
static create Create a result from error
data Result data
detail Details
errors Result errors
field Related field
ok Success or failure
status Status code
title Title
traceId Trace id
type Type

storage

Storage interface and browser storage implementation

ContentDisposition

Content disposition of HTTP

Name Description
static parse Parse header value
Methods
format Format to standard output

DataError

Error with custom data

EColor

Etsoo implmented Color

Name Description
static getColors Get HEX or RGB colors
static getEColors Get EColors
static parse Parse HTML color to EColor
Methods
clone Clone color with adjustments
getContrastRatio Get contrast ratio, a value between 0 and 1
getDeltaValue Get Delta value (perceptible by human eyes)
getLuminance Get luminance
toHEXColor To HEX color string
toLabValue To Lab value
toRGBColor To RGB color string

EventClass

Etsoo implmented abstract Event Class

Name Description
hasEvents Has specific type and callback events
off Remove specific type and callback event
on Add event listener
trigger Trigger event

Keyboard

Keyboard keys and codes

Name Description
Keys KeyboardEvent.key constants
Codes KeyboardEvent.code constants

|isTypingContent|Is typing content or press command key|

EHistory

ETSOO Extended abstract history class

Name Description
index Current index
length States length
state Current state
states States
Methods
back Back to the previous state
clear Clear all states but keep event listeners
forward Forward to the next state
getStatus Get [undo, redo] status
go Go to the specific state
pushState Adds an entry to the history stack
replaceState Modifies the current history entry

ArrayUtils

Array related utilities

Name Description
differences Array 1 items do not exist in Array 2 or reverse match
max Get max number item or number item property
maxItem Get max field value item
min Get min number item or number item property
minItem Get min field value item
sum Sum number items or number item properties
toUnique Make all items are unique

DataTypes

Data type definitions and type safe functions. ListItemType, ListItemType1 and ListItemType2 are sugar types.

Name Description
DataType Data type enum
AddAndEditType Add and edit data type
AddOrEditType Add or edit conditional type
Basic Basic types, includes number, bigint, Date, boolean, string
BasicArray Basic type name array
BasicConditional Conditional type based on BasicNames
BasicNames Basic type and basic type array names array
BasicTemplate Basic type template
BasicTemplateType Basic template type
CombinedEnum Combined type enum
CultureDefinition Culture definition
DI Dynamic interface with multiple properties
DIS Dynamic interface with single property
EnumBase Enum base type
EnumValue Enum value type
ExtendedEnum Extended type enum
Func Function type, R is return type
HAlign Horizontal align
HAlignEnum Horizontal align enum
IdDefaultType Id default type
IdType Number and string combination id type
IdItem Item with id or id generator
IdLabelItem Item with id and label
IdLabelType Item with id and label dynamic type
IdNameItem Item with id and name
IdTitleItem Item with id and title
KeyCollection Key collection, like { key1: {}, key2: {} }
Keys Get specific type keys
LabelDefaultType Label default type
MConstructor Mixins constructor
ObjType Generic object type
Optional Make properties optional
PlacementEnum Placement enum
Placement Placement type
RequireAtLeastOne Require at least one property of the keys
Simple Basic or basic array type
SimpleEnum Simple type enum
SimpleNames Simple type names
SimpleObject Simple object, string key, simple type and null value Record
StringDictionary String key, string value Record
StringRecord String key, unknown value Record
TitleDefaultType Title default type
VAlign Vertical align
VAlignEnum Vertical align enum
Methods
convert Convert value to target type
convertByType Convert by type name like 'string'
convertSimple Convert value to target enum type
getBasicName Get basic type name from Enum type
getBasicNameByValue Get value's basic type name
getEnumByKey Get enum item from key
getEnumByValue Get enum item from value
getEnumKey Get enum string literal type value
getEnumKeys Get Enum keys
getListItemLabel Get ListType2 item label
getIdValue Get object id field value
getIdValue1 Get object id field value 1
getObjectItemLabel Get object item label
getResult Get input function or value result
getStringValue Get object string field value
getValue Get object field value
isBasicName Check the type is a basic type or not (type guard)
isSimpleObject Is the target a simple object, all values are simple type (Type guard)
isSimpleType Is the input value simple type, include null and undefined
jsonReplacer JSON.stringify replacer with full path

DateUtils

Dates related utilities

Name Description
DayFormat YYYY-MM-DD
MinuteFormat YYYY-MM-DD hh:mm
SecondFormat YYYY-MM-DD hh:mm:ss
Methods
getDays Get month's days
forma Format dates
formatForInput Format to 'yyyy-MM-dd' or 'yyyy-MM-ddThh:mm:ss, especially used for date input min/max property
jsonParser JSON parser
parse Parse string to date
sameDay Two dates are in the same day
sameMonth Two dates are in the same month
substract Date extended method, substract a date

DomUtils

DOM/window related utilities

Name Description
clearFormData Clear form data
CultureMatch Culture match case Enum
dataAs Cast data as template format
detectedCountry Current detected country
detectedCulture Current detected culture
dimensionEqual Check two rectangles equality
downloadFile Download file from API fetch response body
en Get English resources definition
fileToDataURL File to data URL
formDataToObject Form data to object
getCulture Get the available culture definition
getDataChanges Get data changed fields with input data updated
getInputValue Get input value depending on its type
getLocationKey Get an unique key combined with current URL
headersToObject Convert headers to object
isFormData Is IFormData type guard
isJSONContentType Is JSON content type
isWechatClient Is Wechat client
mergeFormData Merge form data to primary one
mergeURLSearchParams Merge URL search parameters
parseUserAgent parseUserAgent
setFocus Set HTML element focus by name
setupLogging Setup frontend logging
verifyPermission Verify file system permission
zhHans Get simplified Chinese resources definition
zhHant Get traditional Chinese resources definition

ExtendUtils

Extend current class/object functioning

Name Description
applyMixins Apply mixins to current class
delayedExecutor Create delayed executor
intervalFor Repeat interval for callback
promiseHandler Promise handler to catch error
sleep Delay promise
waitFor Wait for condition meets and execute callback

NumberUtils

Numbers related utilities

Name Description
format Format number
formatFileSize Format file size
formatMoney Format money number
getCurrencySymbol Get currency symbol or name from ISO code
parse Parse to number, with or without default value
toExact To the exact precision number avoiding precision lost

StorageUtils

Storage related utilities

Name Description
setLocalData Set local storage data
setSessionData Set session storage data
getLocalData Get local storage data
getLocalObject Get local storage object data
getSessionData Get session storage data
getSessionObject Get session storage object data

Utils

String and other related utilities

Name Description
addBlankItem Add blank item to collection
charsToNumber Base64 chars to number
containChinese Check the input string contains Chinese character or not
correctTypes Correct object's property value type
equals Two values equal
exclude Exclude specific items
excludeAsync Async exclude specific items
formatInitial Format inital character to lower case or upper case
formatString Format string with parameters
getDataChanges Get data changed fields with input data updated
getNestedValue Get nested value from object
getTimeZone Get time zone
hideData Hide data
hideEmail Hide email data
isDigits Is digits string
isEmail Is email string
joinItems Join items as a string
mergeFormData Merge form data to primary one
mergeClasses Merge class names
newGUID Create a GUID
numberToChars Number to base64 chars
objectEqual Test two objects are equal or not
objectKeys Get two object's unqiue properties
objectUpdated Get the new object's updated fields contrast to the previous object
parseJsonArray Try to parse JSON input to array
parsePath Parse path similar with node.js path.parse
parseString Parse string (JSON) to specific type
removeEmptyValues Remove empty values (null, undefined, '') from the input object
removeNonLetters Remove non letters (0-9, a-z, A-Z)
replaceNullOrEmpty Replace null or empty with default value
setLabels Set source with new labels
setNestedValue Set nested value to object
snakeNameToWord Snake name to works, 'snake_name' to 'Snake Name'
sortByFavor Sort array by favored values
sortByFieldFavor Sort array by favored field values
trim Trim chars
trimEnd Trim end chars
trimStart Trim start chars

Package Sidebar

Install

npm i @etsoo/shared

Weekly Downloads

219

Version

1.2.46

License

MIT

Unpacked Size

586 kB

Total Files

148

Last publish

Collaborators

  • garryxiao