-
Notifications
You must be signed in to change notification settings - Fork 14
/
bss.esm.js.map
1 lines (1 loc) · 25.4 KB
/
bss.esm.js.map
1
{"version":3,"file":"bss.esm.js","sources":["lib/pseudos.js","lib/popular.js","lib/utils.js","lib/sheet.js","lib/index.js"],"sourcesContent":["export default [\n ':active',\n ':any',\n ':checked',\n ':default',\n ':disabled',\n ':empty',\n ':enabled',\n ':first',\n ':first-child',\n ':first-of-type',\n ':fullscreen',\n ':focus',\n ':hover',\n ':indeterminate',\n ':in-range',\n ':invalid',\n ':last-child',\n ':last-of-type',\n ':left',\n ':link',\n ':only-child',\n ':only-of-type',\n ':optional',\n ':out-of-range',\n ':read-only',\n ':read-write',\n ':required',\n ':right',\n ':root',\n ':scope',\n ':target',\n ':valid',\n ':visited',\n\n // With value\n ':dir',\n ':lang',\n ':not',\n ':nth-child',\n ':nth-last-child',\n ':nth-last-of-type',\n ':nth-of-type',\n\n // Elements\n '::after',\n '::before',\n '::first-letter',\n '::first-line',\n '::selection',\n '::backdrop',\n '::placeholder',\n '::marker',\n '::spelling-error',\n '::grammar-error'\n]\n","export default {\n ai : 'alignItems',\n b : 'bottom',\n bc : 'backgroundColor',\n br : 'borderRadius',\n bs : 'boxShadow',\n bi : 'backgroundImage',\n c : 'color',\n d : 'display',\n f : 'float',\n fd : 'flexDirection',\n ff : 'fontFamily',\n fs : 'fontSize',\n h : 'height',\n jc : 'justifyContent',\n l : 'left',\n lh : 'lineHeight',\n ls : 'letterSpacing',\n m : 'margin',\n mb : 'marginBottom',\n ml : 'marginLeft',\n mr : 'marginRight',\n mt : 'marginTop',\n o : 'opacity',\n p : 'padding',\n pb : 'paddingBottom',\n pl : 'paddingLeft',\n pr : 'paddingRight',\n pt : 'paddingTop',\n r : 'right',\n t : 'top',\n ta : 'textAlign',\n td : 'textDecoration',\n tt : 'textTransform',\n w : 'width'\n}\n","export const cssProperties = ['float'].concat(Object.keys(\n typeof document === 'undefined'\n ? {}\n : findWidth(document.documentElement.style)\n).filter(p => p.indexOf('-') === -1 && p !== 'length'))\n\nfunction findWidth(obj) {\n return obj\n ? obj.hasOwnProperty('width')\n ? obj\n : findWidth(Object.getPrototypeOf(obj))\n : {}\n}\n\nexport const isProp = /^-?-?[a-z][a-z-_0-9]*$/i\n\nexport const memoize = (fn, cache = {}) => item =>\n item in cache\n ? cache[item]\n : cache[item] = fn(item)\n\nexport function add(style, prop, values) {\n if (prop in style) // Recursively increase specificity\n add(style, '!' + prop, values)\n else\n style[prop] = formatValues(prop, values)\n}\n\nexport const vendorMap = Object.create(null, {})\nexport const vendorValuePrefix = Object.create(null, {})\n\nexport const vendorRegex = /^(o|O|ms|MS|Ms|moz|Moz|webkit|Webkit|WebKit)([A-Z])/\n\nconst appendPx = memoize(prop => {\n const el = document.createElement('div')\n\n try {\n el.style[prop] = '1px'\n el.style.setProperty(prop, '1px')\n return el.style[prop].slice(-3) === '1px' ? 'px' : ''\n } catch (err) {\n return ''\n }\n}, {\n flex: '',\n boxShadow: 'px',\n border: 'px',\n borderTop: 'px',\n borderRight: 'px',\n borderBottom: 'px',\n borderLeft: 'px'\n})\n\nexport function lowercaseFirst(string) {\n return string.charAt(0).toLowerCase() + string.slice(1)\n}\n\nexport function assign(obj, obj2) {\n for (const key in obj2) {\n if (obj2.hasOwnProperty(key)) {\n obj[key] = typeof obj2[key] === 'string'\n ? obj2[key]\n : assign(obj[key] || {}, obj2[key])\n }\n }\n return obj\n}\n\nconst hyphenSeparator = /-([a-z])/g\nexport function hyphenToCamelCase(hyphen) {\n return hyphen.slice(hyphen.charAt(0) === '-' ? 1 : 0).replace(hyphenSeparator, function(match) {\n return match[1].toUpperCase()\n })\n}\n\nconst camelSeparator = /(\\B[A-Z])/g\nexport function camelCaseToHyphen(camelCase) {\n return camelCase.replace(camelSeparator, '-$1').toLowerCase()\n}\n\nconst initialMatch = /([A-Z])/g\nexport function initials(camelCase) {\n return camelCase.charAt(0) + (camelCase.match(initialMatch) || []).join('').toLowerCase()\n}\n\nconst ampersandMatch = /&/g\nexport function objectToRules(style, selector, suffix = '', single) {\n const base = {}\n const extra = suffix.indexOf('&') > -1 && suffix.indexOf(',') === -1 ? '' : '&'\n let rules = []\n\n Object.keys(style).forEach(prop => {\n if (prop.charAt(0) === '@')\n rules.push(prop + '{' + objectToRules(style[prop], selector, suffix, single).join('') + '}')\n else if (typeof style[prop] === 'object')\n rules = rules.concat(objectToRules(style[prop], selector, suffix + prop, single))\n else\n base[prop] = style[prop]\n })\n\n if (Object.keys(base).length) {\n rules.unshift(\n ((single || (suffix.charAt(0) === ' ') ? '' : '&') + extra + suffix).replace(ampersandMatch, selector).trim() +\n '{' + stylesToCss(base) + '}'\n )\n }\n\n return rules\n}\n\nexport const selectorSplit = /,(?=(?:(?:[^\"]*\"){2})*[^\"]*$)/\n\nexport function stylesToCss(style) {\n return Object.keys(style).reduce((acc, prop) =>\n acc + propToString(prop.charAt(0) === '!' ? prop.slice(1) : prop, style[prop])\n , '')\n}\n\nexport function readClasses(sheet) {\n throw new Error('not implemented')\n}\n\nfunction propToString(prop, value) {\n prop = prop in vendorMap ? vendorMap[prop] : prop\n return (vendorRegex.test(prop) ? '-' : '')\n + (cssVar(prop)\n ? prop\n : camelCaseToHyphen(prop)\n )\n + ':'\n + value\n + ';'\n}\n\nfunction formatValues(prop, value) {\n return Array.isArray(value)\n ? value.map(v => formatValue(prop, v)).join(' ')\n : typeof value === 'string'\n ? formatValues(prop, value.split(' '))\n : formatValue(prop, value)\n}\n\nfunction formatValue(prop, value) {\n return value in vendorValuePrefix\n ? vendorValuePrefix[value]\n : value + (isNaN(value) || value === null || value === 0 || value === '0' || typeof value === 'boolean' || cssVar(prop) ? '' : appendPx(prop))\n}\n\nfunction cssVar(prop) {\n return prop.charAt(0) === '-' && prop.charAt(1) === '-'\n}\n","import {\n objectToRules\n} from './utils.js'\n\nexport const classPrefix = 'b' + ('000' + ((Math.random() * 46656) | 0).toString(36)).slice(-3) +\n ('000' + ((Math.random() * 46656) | 0).toString(36)).slice(-3)\n\nconst styleSheet = typeof document === 'object' && document.createElement('style')\nstyleSheet && document.head && document.head.appendChild(styleSheet)\nstyleSheet && (styleSheet.id = classPrefix)\n\nconst sheet = styleSheet && styleSheet.sheet\n\nlet debug = false\nlet classes = Object.create(null, {})\nlet rules = []\nlet count = 0\n\nexport function setDebug(d) {\n debug = d\n}\n\nexport function getSheet() {\n const content = rules.join('')\n rules = []\n classes = Object.create(null, {})\n count = 0\n return content\n}\n\nexport function getRules() {\n return rules\n}\n\nexport function insert(rule, index) {\n rules.push(rule)\n\n if (debug)\n return styleSheet.textContent = rules.join('\\n')\n\n try {\n sheet && sheet.insertRule(rule, arguments.length > 1\n ? index\n : sheet.cssRules.length)\n } catch (e) {\n // Ignore thrown errors in eg. firefox for unsupported strings (::-webkit-inner-spin-button)\n }\n}\n\nexport function createClass(style) {\n const json = JSON.stringify(style)\n\n if (json in classes)\n return classes[json]\n\n const className = classPrefix + (++count)\n , rules = objectToRules(style, '.' + className)\n\n for (let i = 0; i < rules.length; i++)\n insert(rules[i])\n\n classes[json] = className\n\n return className\n}\n","/* eslint no-invalid-this: 0 */\nimport pseudos from './pseudos.js'\nimport popular from './popular.js'\n\nimport {\n classPrefix,\n createClass,\n setDebug,\n getSheet,\n getRules,\n insert\n} from './sheet'\n\nimport {\n hyphenToCamelCase,\n vendorValuePrefix,\n lowercaseFirst,\n objectToRules,\n selectorSplit,\n cssProperties,\n stylesToCss,\n vendorRegex,\n vendorMap,\n initials,\n memoize,\n isProp,\n assign,\n add\n} from './utils'\n\nconst shorts = Object.create(null)\n\nfunction bss(input, value) {\n const b = chain(bss)\n input && assign(b.__style, parse.apply(null, arguments))\n return b\n}\n\nfunction setProp(prop, value) {\n Object.defineProperty(bss, prop, {\n configurable: true,\n value\n })\n}\n\nObject.defineProperties(bss, {\n __style: {\n configurable: true,\n writable: true,\n value: {}\n },\n valueOf: {\n configurable: true,\n writable: true,\n value: function() {\n return '.' + this.class\n }\n },\n toString: {\n configurable: true,\n writable: true,\n value: function() {\n return this.class\n }\n }\n})\n\nsetProp('setDebug', setDebug)\n\nsetProp('$keyframes', keyframes)\nsetProp('$media', $media)\nsetProp('$import', $import)\nsetProp('$nest', $nest)\nsetProp('getSheet', getSheet)\nsetProp('getRules', getRules)\nsetProp('helper', helper)\nsetProp('css', css)\nsetProp('classPrefix', classPrefix)\n\nfunction chain(instance) {\n const newInstance = Object.create(bss, {\n __style: {\n value: assign({}, instance.__style)\n },\n style: {\n enumerable: true,\n get: function() {\n return Object.keys(this.__style).reduce((acc, key) => {\n if (typeof this.__style[key] === 'number' || typeof this.__style[key] === 'string')\n acc[key.charAt(0) === '!' ? key.slice(1) : key] = this.__style[key]\n return acc\n }, {})\n }\n }\n })\n\n if (instance === bss)\n bss.__style = {}\n\n return newInstance\n}\n\ncssProperties.forEach(prop => {\n const vendor = prop.match(vendorRegex)\n if (vendor) {\n const unprefixed = lowercaseFirst(prop.replace(vendorRegex, '$2'))\n if (cssProperties.indexOf(unprefixed) === -1) {\n if (unprefixed === 'flexDirection')\n vendorValuePrefix.flex = '-' + vendor[1].toLowerCase() + '-flex'\n\n vendorMap[unprefixed] = prop\n setProp(unprefixed, setter(prop))\n setProp(short(unprefixed), bss[unprefixed])\n return\n }\n }\n\n setProp(prop, setter(prop))\n setProp(short(prop), bss[prop])\n})\n\nsetProp('content', function Content(arg) {\n const b = chain(this)\n arg === null || arg === undefined || arg === false\n ? delete b.__style.content\n : b.__style.content = '\"' + arg + '\"'\n return b\n})\n\nObject.defineProperty(bss, 'class', {\n set: function(value) {\n this.__class = value\n },\n get: function() {\n return this.__class || createClass(this.__style)\n }\n})\n\nfunction $media(value, style) {\n const b = chain(this)\n if (value)\n b.__style['@media ' + value] = parse(style)\n\n return b\n}\n\nconst hasUrl = /^('|\"|url\\('|url\\(\")/i\nfunction $import(value) {\n value && insert('@import '\n + (hasUrl.test(value) ? value : '\"' + value + '\"')\n + ';', 0)\n\n return chain(this)\n}\n\nfunction $nest(selector, properties) {\n const b = chain(this)\n if (arguments.length === 1)\n Object.keys(selector).forEach(x => addNest(b.__style, x, selector[x]))\n else if (selector)\n addNest(b.__style, selector, properties)\n\n return b\n}\n\nfunction addNest(style, selector, properties) {\n const prop = selector.split(selectorSplit).map(x => {\n x = x.trim()\n return (x.charAt(0) === ':' || x.charAt(0) === '[' ? '' : ' ') + x\n }).join(',&')\n\n prop in style\n ? assign(style[prop], parse(properties))\n : style[prop] = parse(properties)\n}\n\npseudos.forEach(name =>\n setProp('$' + hyphenToCamelCase(name.replace(/:/g, '')), function Pseudo(value, style) {\n const b = chain(this)\n if (isTagged(value))\n b.__style[name] = parse.apply(null, arguments)\n else if (value || style)\n b.__style[name + (style ? '(' + value + ')' : '')] = parse(style || value)\n return b\n })\n)\n\nfunction setter(prop) {\n return function CssProperty(value) {\n const b = chain(this)\n if (!value && value !== 0)\n delete b.__style[prop]\n else if (arguments.length > 0)\n add(b.__style, prop, Array.prototype.slice.call(arguments))\n\n return b\n }\n}\n\nfunction css(selector, style) {\n if (arguments.length === 1)\n Object.keys(selector).forEach(key => addCss(key, selector[key]))\n else\n addCss(selector, style)\n\n return chain(this)\n}\n\nfunction addCss(selector, style) {\n objectToRules(parse(style), selector, '', true).forEach(rule => insert(rule))\n}\n\nfunction helper(name, styling) {\n if (arguments.length === 1)\n return Object.keys(name).forEach(key => helper(key, name[key]))\n\n delete bss[name] // Needed to avoid weird get calls in chrome\n\n if (typeof styling === 'function') {\n helper[name] = styling\n Object.defineProperty(bss, name, {\n configurable: true,\n value: function Helper(input) {\n const b = chain(this)\n const result = isTagged(input)\n ? styling(raw(input, arguments))\n : styling.apply(null, arguments)\n assign(b.__style, result.__style)\n return b\n }\n })\n } else {\n helper[name] = parse(styling)\n Object.defineProperty(bss, name, {\n configurable: true,\n get: function() {\n const b = chain(this)\n assign(b.__style, parse(styling))\n return b\n }\n })\n }\n}\n\nbss.helper('$animate', (value, props) =>\n bss.animation(bss.$keyframes(props) + ' ' + value)\n)\n\nfunction short(prop) {\n const acronym = initials(prop)\n , short = popular[acronym] && popular[acronym] !== prop ? prop : acronym\n\n shorts[short] = prop\n return short\n}\n\nconst blockEndMatch = /;(?![^(\"]*[)\"])|\\n/\nconst commentsMatch = /\\/\\*[\\s\\S]*?\\*\\/|([^:]|^)\\/\\/.*(?![^(\"]*[)\"])/g\nconst propSeperator = /[ :]+/\n\nconst stringToObject = memoize(string => {\n let last = ''\n , prev\n\n return string.trim().replace(commentsMatch, '').split(blockEndMatch).reduce((acc, line) => {\n if (!line)\n return acc\n line = last + line.trim()\n const [key, ...tokens] = line.replace(propSeperator, ' ').split(' ')\n\n last = line.charAt(line.length - 1) === ',' ? line : ''\n if (last)\n return acc\n\n if (line.charAt(0) === ',' || !isProp.test(key)) {\n acc[prev] += ' ' + line\n return acc\n }\n\n if (!key)\n return acc\n\n const prop = key.charAt(0) === '-' && key.charAt(1) === '-'\n ? key\n : hyphenToCamelCase(key)\n\n prev = shorts[prop] || prop\n\n if (key in helper) {\n typeof helper[key] === 'function'\n ? assign(acc, helper[key](...tokens).__style)\n : assign(acc, helper[key])\n } else if (prop in helper) {\n typeof helper[prop] === 'function'\n ? assign(acc, helper[prop](...tokens).__style)\n : assign(acc, helper[prop])\n } else if (tokens.length > 0) {\n add(acc, prev, tokens)\n }\n\n return acc\n }, {})\n})\n\nlet count = 0\nconst keyframeCache = {}\n\nfunction keyframes(props) {\n const content = Object.keys(props).reduce((acc, key) =>\n acc + key + '{' + stylesToCss(parse(props[key])) + '}'\n , '')\n\n if (content in keyframeCache)\n return keyframeCache[content]\n\n const name = classPrefix + count++\n keyframeCache[content] = name\n insert('@keyframes ' + name + '{' + content + '}')\n\n return name\n}\n\nfunction parse(input, value) {\n if (typeof input === 'string') {\n if (typeof value === 'string' || typeof value === 'number')\n return ({ [input] : value })\n\n return stringToObject(input)\n } else if (isTagged(input)) {\n return stringToObject(raw(input, arguments))\n }\n\n return input.__style || sanitize(input)\n}\n\nfunction isTagged(input) {\n return Array.isArray(input) && typeof input[0] === 'string'\n}\n\nfunction raw(input, args) {\n let str = ''\n for (let i = 0; i < input.length; i++)\n str += input[i] + (args[i + 1] || args[i + 1] === 0 ? args[i + 1] : '')\n return str\n}\n\nfunction sanitize(styles) {\n return Object.keys(styles).reduce((acc, key) => {\n const value = styles[key]\n key = shorts[key] || key\n\n if (!value && value !== 0 && value !== '')\n return acc\n\n if (key === 'content' && value.charAt(0) !== '\"')\n acc[key] = '\"' + value + '\"'\n else if (typeof value === 'object')\n acc[key] = sanitize(value)\n else\n add(acc, key, value)\n\n return acc\n }, {})\n}\n\nexport default bss\n"],"names":["count"],"mappings":"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"}