UNPKG

@mapcss/core

Version:

Tiny, composable Atomic CSS engine

59 lines (58 loc) 4.09 kB
export { isEmptyObject, isFunction, isLength0, isNumber, isObject, isString, isSymbol, } from "./deps/deno.land/x/isx@v1.0.0-beta.17/mod.js"; import { isUndefined } from "./deps/deno.land/x/isx@v1.0.0-beta.17/mod.js"; export { deepMerge } from "./deps/deno.land/std@0.122.0/collections/deep_merge.js"; export { associateWith } from "./deps/deno.land/std@0.123.0/collections/associate_with.js"; export { mapEntries } from "./deps/deno.land/std@0.123.0/collections/map_entries.js"; export { filterValues } from "./deps/deno.land/std@0.123.0/collections/filter_values.js"; export { distinctBy } from "./deps/deno.land/std@0.125.0/collections/distinct_by.js"; export { union } from "./deps/deno.land/std@0.125.0/collections/union.js"; export { sortBy } from "./deps/deno.land/std@0.125.0/collections/sort_by.js"; export { curry } from "./deps/deno.land/x/curry@v1.0.0/mod.js"; export { None, type Option, Some, } from "./deps/deno.land/x/monads@v0.5.10/option/option.js"; export { type Either, Left, Right, } from "./deps/deno.land/x/monads@v0.5.10/either/either.js"; export { isUndefined }; export type { AcceptedPlugin, ChildNode, ChildProps, Container, DeclarationProps, Plugin as PostcssPlugin, } from "./deps/deno.land/x/postcss@8.4.6/lib/postcss.d.js"; import Rule from "./deps/deno.land/x/postcss@8.4.6/lib/rule.js"; import Declaration from "./deps/deno.land/x/postcss@8.4.6/lib/declaration.js"; import AtRule from "./deps/deno.land/x/postcss@8.4.6/lib/at-rule.js"; import Root from "./deps/deno.land/x/postcss@8.4.6/lib/root.js"; import postcss from "./deps/deno.land/x/postcss@8.4.6/lib/postcss.js"; export { AtRule, Declaration, postcss, Root, Rule }; export { toAST, toObject, } from "./deps/deno.land/x/postcss_js@v1.0.0-beta.2/mod.js"; export declare function isStringOrNumber(value: unknown): value is string | number; export declare function isRegExp(value: unknown): value is RegExp; /** check field is exist or not */ export declare function has(key: PropertyKey, object: object): boolean; /** safe get accessor */ export declare function prop<T extends PropertyKey, U extends Record<PropertyKey, any>>(key: T, object: U): U[T] extends U[T] ? U[T] | undefined : unknown; /** take elements except head */ export declare function tail<T extends unknown>(val: readonly T[]): T[]; /** safe get accessor deeply */ export declare function propPath(path: PropertyKey[], object: Record<PropertyKey, any>): unknown; /** Alias for `Tuple` */ declare type IsTuple<T extends readonly unknown[]> = number extends T["length"] ? false : true; declare type ArrayOfLength<N extends number, C extends any[] = []> = C["length"] extends N ? C : ArrayOfLength<N, [...C, any]>; declare type Minus<N extends number> = ArrayOfLength<N> extends [any, ...infer Rest] ? Rest["length"] : never; /** take last element of `array` */ export declare function last<T extends readonly unknown[]>(value: T): IsTuple<T> extends true ? T[Minus<T["length"]>] : T[number] | undefined; export declare function init<T>(value: readonly T[]): T[]; /** safe accessor for first element */ export declare function head<T extends readonly unknown[]>(value: T): IsTuple<T> extends true ? T[0] : T[0] | undefined; export declare type PropPath<T extends Record<any, any>, P extends unknown[] | unknown> = P extends unknown[] ? P extends [infer X, ...infer Rest] ? PropPath<T[X], Rest> : T : T[P] | undefined; /** High precision round */ export declare function roundTo(num: number, digit: number): number; export declare type Arrayable<T> = T | T[]; export declare type Optional<T extends Record<PropertyKey, unknown>, K extends PropertyKey> = { [k in K]?: T[k]; } & { [k in keyof Omit<T, K>]: T[k]; }; export declare type ReplaceKeys<U, T, Y> = { [k in keyof U]: k extends keyof Y ? Y[k] : k extends Exclude<keyof U, T> ? U[k] : never; }; export declare type PartialByKeys<T extends {}, U = keyof T> = Omit<Partial<Pick<T, U & keyof T>> & Omit<T, U & keyof T>, never>; interface Chain<T> { map<U>(fn: (val: T) => U): Chain<U>; unwrap(): T | never; } export declare function chain<T>(val: T): Chain<T>;