-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathyss.js.map
1 lines (1 loc) · 14.5 KB
/
yss.js.map
1
{"version":3,"file":"yss.js","sources":["src/utils.js","src/render.js","src/helpers.js","src/index.js"],"sourcesContent":["'use strict'\n\nvar KEBAB_REGEX = /[A-Z\\u00C0-\\u00D6\\u00D8-\\u00DE]/g\n\nexport function kebabCase(str) {\n return str.replace(KEBAB_REGEX, match => `-${match.toLowerCase()}`)\n}\n\nexport function camelize(s) {\n return s.replace(/-([a-z])/g, g => g[1].toUpperCase())\n}\n\nexport function cleanSplit(s, regExp) {\n return s\n .split(regExp)\n .map(a => a.trim())\n .filter(a => a)\n}\n\nexport function isObject(thing) {\n return typeof thing === 'object'\n}\n\nexport function toAlphabetNumber(number) {\n return number.toString(36)\n}\n\nexport function getClassName(n) {\n return '.y' + toAlphabetNumber(n)\n}\n\nexport const keys = Object.keys\nexport function map(obj, fn) {\n return Object.keys(obj).map(key => fn(obj[key], key))\n}\n","'use strict'\n\nimport { kebabCase, map, toAlphabetNumber, keys } from './utils'\n\nfunction isAttr(attr) {\n return attr[0] !== ':' && attr[0] !== ' ' && attr[0] !== '@'\n}\n\nfunction isSubselector(attr) {\n return attr[0] === ':' || attr[0] === ' '\n}\n\nfunction isMediaQuery(attr) {\n return attr[0] === '@'\n}\n\nconst animationNameByStyle = {}\nlet animationCounter = 0\nexport default function (style) {\n const usedAnimations = {}\n function toCssDefinition(cssClass, style) {\n const baseStyle = keys(style)\n .filter(isAttr)\n .map(attr => {\n let value = style[attr]\n if (attr === 'animation') {\n const frameStyles = style[attr].frameStyles\n const animationStyle = map(frameStyles, (y, frameName) =>\n toCssDefinition(frameName, y.style)\n ).join('')\n if (!animationNameByStyle[animationStyle]) {\n animationNameByStyle[animationStyle] =\n 'a' + toAlphabetNumber(animationCounter++)\n }\n usedAnimations[animationStyle] = animationNameByStyle[animationStyle]\n value = `${style[attr].timing || ''} ${\n animationNameByStyle[animationStyle]\n }`\n }\n return `${kebabCase(attr)}:${value}`\n })\n .join(';')\n const subStyles = keys(style)\n .filter(isSubselector)\n .map(pseudo => toCssDefinition(cssClass + pseudo, style[pseudo].style))\n .join('')\n const mediaStyles = keys(style)\n .filter(isMediaQuery)\n .map(\n mediaQuery =>\n `${mediaQuery}{${toCssDefinition(\n `${cssClass}`,\n style[mediaQuery].style\n )}}`\n )\n .join('')\n return `${cssClass}{${baseStyle}}${subStyles}${mediaStyles}`\n }\n\n const styles = keys(style)\n .map(function (cssClass) {\n return `${toCssDefinition(cssClass, style[cssClass])}`\n })\n .join('')\n const keyframes = map(\n usedAnimations,\n (name, keyframeStyle) => `@keyframes ${name}{${keyframeStyle}}`\n ).join('')\n return keyframes + styles\n}\n","'use strict'\n\nexport function nest(y, selector, style) {\n y.style[` ${selector}`] = y.yss(style)\n}\n\nexport function media(y, def, style) {\n y.style[`@media ${def}`] = y.yss(style)\n}\n\nexport function animate(y, timing, frameStyles) {\n y.style.animation = { frameStyles, timing }\n}\n\nexport function pseudo(yss, name, helperName = name) {\n const selector = `:${name}`\n yss.helper(helperName, (y, key, ...args) => {\n if (!y.style[selector] || !y.style[selector].style) {\n y.style[selector] = yss(y.style[selector])\n }\n y.style[selector](key, ...args)\n })\n}\n","'use strict'\nimport {\n camelize,\n cleanSplit,\n isObject,\n toAlphabetNumber,\n getClassName,\n} from './utils'\nimport render from './render'\nimport { nest, media, animate, pseudo } from './helpers'\n\nlet classCounter = 0\nfunction Yss(opts = {}) {\n const classNamesByStyle = {}\n opts = Object.assign(\n {\n getClassName,\n render,\n },\n opts\n )\n\n // this is the prototype of a styling instance.\n const baseInstance = {\n get class() {\n const serializedStyle = JSON.stringify(this.style)\n const existingClassname = classNamesByStyle[serializedStyle]\n if (existingClassname) {\n return existingClassname\n }\n const className = opts.getClassName(classCounter++, this.style)\n classNamesByStyle[serializedStyle] = className\n yss.style[className] = this.style\n return className\n },\n toString: function () {\n return this.class\n },\n toJSON: function () {\n return this.style\n },\n get className() {\n return this.class.slice(1)\n },\n }\n Object.setPrototypeOf(baseInstance, function () {})\n\n function parseStyle(styleInstance, key, ...args) {\n if (typeof key === 'string' && !args[0]) {\n // plain string, parse like template string\n key = [key]\n }\n if (Array.isArray(key)) {\n // template string\n // fold string array with args\n const string = key\n .map((part, i) => part + (args[i] == null ? '' : args[i]))\n .join('')\n // build style object\n return cleanSplit(string, /[;\\n]/).reduce((style, row) => {\n let [key, ...value] = cleanSplit(row, /[ :]/)\n const prop = camelize(key)\n // if there is a helper with prop name, use it\n if (styleInstance[prop]) {\n styleInstance[prop](...value)\n } else {\n style[prop] = value.join(' ')\n }\n return style\n }, {})\n }\n if (key && key.style) {\n // merge instances\n return key.style\n }\n if (args[0]) {\n // key/value definition\n return { [key]: args[0] }\n }\n return key // object\n }\n\n // this creates a styling instance and hooks the upper prototype to it\n function yss(...args) {\n function styleInstance(...styleArgs) {\n Object.assign(\n styleInstance.style,\n parseStyle(styleInstance, ...styleArgs)\n )\n return styleInstance\n }\n styleInstance.style = {}\n styleInstance.yss = yss\n Object.setPrototypeOf(styleInstance, baseInstance)\n return styleInstance(...args)\n }\n\n yss.style = {}\n Object.defineProperty(yss, 'css', {\n get: () => opts.render(yss.style),\n })\n\n // this is the function to create helpers. Helpers are attached to the prototype of the styling\n // instances and to yss itself. When called on yss, they automatically create an instance and\n // and call the helpers on them right away\n yss.helper = function (name, ...args) {\n if (isObject(name)) {\n // define multiple helpers at once\n const helpers = name\n for (name in helpers) {\n yss.helper(name, helpers[name])\n }\n return\n }\n let fn = args[0]\n if (\n typeof args[0] === 'string' ||\n Array.isArray(args[0]) ||\n args[0].style\n ) {\n fn = y => y(...args)\n }\n if (fn.length === 1) {\n // set to baseInstance\n Object.defineProperty(baseInstance, name, {\n get: function () {\n fn(this)\n return this\n },\n })\n // set to yss itself\n Object.defineProperty(yss, name, {\n // create an instance and call helper right away\n get: () => yss({})[name],\n })\n } else {\n // set to baseInstance\n baseInstance[name] = function (...args) {\n fn(this, ...args)\n return this\n }\n // set to yss itself\n yss[name] = (...args) => yss({})[name](...args)\n }\n }\n\n // add default helpers\n yss.helper('nest', nest)\n yss.helper('media', media)\n yss.helper('animate', animate)\n pseudo(yss, 'hover')\n pseudo(yss, 'focus')\n\n return yss\n}\n\nexport default Yss\n"],"names":["const","let"],"mappings":"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"}