1.0.91 • Published 5 years ago

h-ts v1.0.91

Weekly downloads
1
License
MIT
Repository
-
Last release
5 years ago

Helpers for typescript

(documentation, wip)

export {AnyHelp} from "./AnyHelp";

helpers that work on any type e.g.
isNotNull

export {ArrayHelp} from "./ArrayHelp"

helpers for array, better typesafety for higher order function array helpers

export {ObjectHelp} from "./ObjectHelp"

helper for object

export {EQ, EQ_NS} from "./Equality"

export {KeySet} from "./KeySet"

export {MapHelp} from "./MapHelp"

export {WebHelp} from "./WebHelp"

export {Global} from "./Global"

export {ChunkedIterate} from "./ChunkedIterate"

export {Decorators} from "./Decorators"

export {TypeHelp} from "./TypeHelp"

export {StringHelp} from "./StringHelp"

export {FunctionHelp} from "./FunctionHelp"

export {ProxyHelp} from "./ProxyHelp"

export {Ided, Idify} from "./Ided"

a way to DRYly write an object whose properties use the key they are assigned to in their own initialization

type Color<T extends string> = {name: T}
const colors = {
  ...Ided.byName({name: "red"}),
  ...Ided.byName({name: "green"}),
}
//Colors will have the type:
{red: {name: "red"}, {green: {name: "green"}}

export {Heap} from "./Heap"

a simple heap implementation

export {YoconHelp} from "./yocon/YoconHelp"

a work in progress port of the

export {StringEnum, Enum} from "./Enum"

better versions of enums

export * from "./TopLevelExports"

export function createRecord

function createRecord<T extends object>(obj: T,): T extends object ? Record<keyof T, TypeHelp.ValueType<T>> : never {
  return obj as any
}

export const unreachable = LangHelp.unreachable

export const isNotNull = AnyHelp.isNotNull

export const augment = AnyHelp.augment

export const createKeySet = KeySet.create

export const createPrefixedKeySet = KeySet.createPrefixed

export const iife = (f : () => T) : T => f()

//iife = immediately invoked function expression, useful to avoid having to add extra parens
iife(() => x + 1) // invokes immediately

(() => x + 1)()//Lines starting with a `(` are Problematic without explicit semicolons
//Consider
const y = 1
const x = y
(() => x + 1)()
//This will be interpreted as
const y = 1
const x = y(() => x + 1)()

export const ensure = TypeHelp.ensure

export const ensureValue = TypeHelp.ensureValue

export const literal = TypeHelp.literal

export const infer = TypeHelp.infer

export const cast = TypeHelp.cast

export const cast_any = TypeHelp.cast_any

export const tuple = TypeHelp.tuple

export const memo = Decorators.memo

export const cache = Decorators.cache

export * from "./TopLevelTypes"

export type Id = TypeHelp.Id

export type PropsOf = TypeHelp.PropsOf

export type UnionToIntersection = TypeHelp.UnionToIntersection

export type UnionFromArray<T extends any[]> = TypeHelp.UnionFromArray

export type IntersectionFromArray<T extends any[]> = TypeHelp.IntersectionFromArray

export type StringMap = TypeHelp.StringMap

export type Readyonly = TypeHelp.Readyonly

export type Diff<T extends keyof any, U extends keyof any> = TypeHelp.Diff<T, U>

export type Omit<T, K extends keyof T> = TypeHelp.Omit<T, K>

export type Replace<T, K extends keyof T, V> = TypeHelp.Replace<T, K, V>

export type DeepPartial = TypeHelp.DeepPartial

export type KeyType = keyof T

export type ValueType = Tkeyof T

1.0.91

5 years ago

1.0.90

5 years ago

1.0.89

5 years ago

1.0.88

5 years ago

1.0.87

5 years ago

1.0.86

5 years ago

1.0.85

5 years ago

1.0.84

5 years ago

1.0.83

5 years ago

1.0.82

5 years ago

1.0.81

5 years ago

1.0.80

5 years ago

1.0.79

5 years ago

1.0.78

5 years ago

1.0.77

5 years ago

1.0.76

5 years ago

1.0.75

5 years ago

1.0.74

5 years ago

1.0.73

5 years ago

1.0.72

5 years ago

1.0.71

5 years ago

1.0.70

5 years ago

1.0.69

5 years ago

1.0.68

5 years ago

1.0.67

5 years ago

1.0.66

5 years ago

1.0.65

5 years ago

1.0.64

5 years ago

1.0.63

5 years ago

1.0.62

5 years ago

1.0.61

5 years ago

1.0.60

5 years ago

1.0.59

5 years ago

1.0.58

5 years ago

1.0.57

5 years ago

1.0.56

5 years ago

1.0.55

5 years ago

1.0.54

5 years ago

1.0.51

5 years ago

1.0.50

5 years ago

1.0.49

5 years ago

1.0.48

5 years ago

1.0.47

5 years ago

1.0.46

6 years ago

1.0.45

6 years ago

1.0.44

6 years ago

1.0.43

6 years ago

1.0.42

6 years ago

1.0.40

6 years ago

1.0.39

6 years ago

1.0.38

6 years ago

1.0.37

6 years ago

1.0.36

6 years ago

1.0.35

6 years ago

1.0.34

6 years ago

1.0.33

6 years ago

1.0.32

6 years ago

1.0.31

6 years ago

1.0.30

6 years ago

1.0.29

6 years ago

1.0.28

6 years ago

1.0.27

6 years ago

1.0.26

6 years ago

1.0.25

6 years ago

1.0.24

6 years ago

1.0.23

6 years ago

1.0.22

6 years ago

1.0.21

6 years ago

1.0.20

6 years ago

1.0.19

6 years ago

1.0.18

6 years ago

1.0.17

6 years ago

1.0.16

6 years ago

1.0.15

6 years ago

1.0.14

6 years ago

1.0.13

6 years ago

1.0.11

6 years ago

1.0.10

6 years ago

1.0.9

6 years ago

1.0.8

6 years ago

1.0.6

6 years ago

1.0.5

6 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago