UNPKG

@nex-ui/system

Version:

A lightweight and performant styling library based on Emotion, focusing on component architecture and developer experience.

27 lines (24 loc) 824 B
import { __DEV__, isString } from '@nex-ui/utils'; import { isValidAliasValue } from './utils.mjs'; function createAliases(aliases) { const aliasMap = new Map(); for(const key in aliases){ // istanbul ignore if if (!Object.hasOwn(aliases, key)) continue; const value = aliases[key]; if (!isValidAliasValue(value)) { if (__DEV__) { console.error('[Nex UI] system: Expect the alias value to be a CSSProperty or CSSProperty[], but what is currently received is %o.', value); } continue; } aliasMap.set(key, isString(value) ? [ value ] : value); } return { getPropertiesByAlias: (key)=>aliasMap.get(key), isAlias: (key)=>aliasMap.has(key) }; } export { createAliases };