1.0.91 • Published 6 years ago

h-ts v1.0.91

Weekly downloads
1
License
MIT
Repository
-
Last release
6 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

6 years ago

1.0.90

6 years ago

1.0.89

6 years ago

1.0.88

6 years ago

1.0.87

6 years ago

1.0.86

6 years ago

1.0.85

6 years ago

1.0.84

6 years ago

1.0.83

6 years ago

1.0.82

6 years ago

1.0.81

6 years ago

1.0.80

6 years ago

1.0.79

6 years ago

1.0.78

6 years ago

1.0.77

6 years ago

1.0.76

6 years ago

1.0.75

6 years ago

1.0.74

6 years ago

1.0.73

6 years ago

1.0.72

6 years ago

1.0.71

6 years ago

1.0.70

6 years ago

1.0.69

6 years ago

1.0.68

6 years ago

1.0.67

7 years ago

1.0.66

7 years ago

1.0.65

7 years ago

1.0.64

7 years ago

1.0.63

7 years ago

1.0.62

7 years ago

1.0.61

7 years ago

1.0.60

7 years ago

1.0.59

7 years ago

1.0.58

7 years ago

1.0.57

7 years ago

1.0.56

7 years ago

1.0.55

7 years ago

1.0.54

7 years ago

1.0.51

7 years ago

1.0.50

7 years ago

1.0.49

7 years ago

1.0.48

7 years ago

1.0.47

7 years ago

1.0.46

7 years ago

1.0.45

7 years ago

1.0.44

7 years ago

1.0.43

7 years ago

1.0.42

7 years ago

1.0.40

7 years ago

1.0.39

7 years ago

1.0.38

7 years ago

1.0.37

7 years ago

1.0.36

7 years ago

1.0.35

7 years ago

1.0.34

7 years ago

1.0.33

7 years ago

1.0.32

7 years ago

1.0.31

7 years ago

1.0.30

7 years ago

1.0.29

7 years ago

1.0.28

7 years ago

1.0.27

7 years ago

1.0.26

7 years ago

1.0.25

7 years ago

1.0.24

7 years ago

1.0.23

7 years ago

1.0.22

7 years ago

1.0.21

7 years ago

1.0.20

7 years ago

1.0.19

7 years ago

1.0.18

7 years ago

1.0.17

7 years ago

1.0.16

7 years ago

1.0.15

7 years ago

1.0.14

7 years ago

1.0.13

7 years ago

1.0.11

7 years ago

1.0.10

7 years ago

1.0.9

7 years ago

1.0.8

7 years ago

1.0.6

7 years ago

1.0.5

7 years ago

1.0.4

7 years ago

1.0.3

7 years ago

1.0.2

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago