@symbo.ls/scratch 2.10.123 → 2.10.149
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +862 -326
- package/dist/index.cjs.js.map +4 -4
- package/package.json +2 -2
- package/src/system/color.js +1 -1
- package/src/system/font.js +1 -1
- package/src/system/spacing.js +1 -1
- package/src/system/svg.js +4 -1
- package/src/system/theme.js +1 -1
- package/src/system/typography.js +1 -1
- package/src/utils/sequence.js +1 -1
- package/src/utils/sprite.js +1 -1
package/dist/index.cjs.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["
|
|
4
|
-
"sourcesContent": ["'use strict'\n\nexport * from './factory.js'\nexport * from './utils'\nexport * from './set.js'\nexport * from './defaultConfig'\n", "'use strict'\n\nconst global = globalThis\nconst self = globalThis\nconst window = globalThis\nconst document = window.document // eslint-disable-line\n\nexport { global, self, window, document }\n", "'use strict'\n\nimport { window } from '@domql/globals'\nimport { HTML_TAGS } from '@domql/tags'\n\nexport const isValidHtmlTag = arg => HTML_TAGS.body.indexOf(arg)\n\nexport const isObject = arg => {\n if (arg === null) return false\n return (typeof arg === 'object') && (arg.constructor === Object)\n}\n\nexport const isString = arg => typeof arg === 'string'\n\nexport const isNumber = arg => typeof arg === 'number'\n\nexport const isFunction = arg => typeof arg === 'function'\n\nexport const isBoolean = arg => arg === true || arg === false\n\nexport const isNull = arg => arg === null\n\nexport const isArray = arg => Array.isArray(arg)\n\nexport const isObjectLike = arg => {\n if (arg === null) return false\n // if (isArray(arg)) return false\n return (typeof arg === 'object')\n}\n\nexport const isNode = obj => {\n return (\n typeof window.Node === 'object'\n ? obj instanceof window.Node\n : obj && typeof obj === 'object' && typeof obj.nodeType === 'number' && typeof obj.nodeName === 'string'\n )\n}\n\nexport const isHtmlElement = obj => {\n return (\n typeof window.HTMLElement === 'object'\n ? obj instanceof window.HTMLElement // DOM2\n : obj && typeof obj === 'object' && obj !== null && obj.nodeType === 1 && typeof obj.nodeName === 'string'\n )\n}\n\nexport const isDefined = arg => {\n return isObject(arg) ||\n isObjectLike(arg) ||\n isString(arg) ||\n isNumber(arg) ||\n isFunction(arg) ||\n isArray(arg) ||\n isObjectLike(arg) ||\n isBoolean(arg) ||\n isNull(arg)\n}\n\nexport const isUndefined = arg => {\n return arg === undefined\n}\n\nexport const TYPES = {\n boolean: isBoolean,\n array: isArray,\n object: isObject,\n string: isString,\n number: isNumber,\n null: isNull,\n function: isFunction,\n objectLike: isObjectLike,\n node: isNode,\n htmlElement: isHtmlElement,\n defined: isDefined\n}\n\nexport const is = (arg) => {\n return (...args) => {\n return args.map(val => TYPES[val](arg)).filter(v => v).length > 0\n }\n}\n\nexport const isNot = (arg) => {\n return (...args) => {\n return args.map(val => TYPES[val](arg)).filter(v => v).length === 0\n }\n}\n", "'use strict'\n\nimport { isFunction, isObjectLike, isObject, isArray, isString } from './types.js'\n\nexport const exec = (param, element, state) => {\n if (isFunction(param)) return param(element, state || element.state)\n return param\n}\n\nexport const map = (obj, extention, element) => {\n for (const e in extention) {\n obj[e] = exec(extention[e], element)\n }\n}\n\nexport const merge = (element, obj) => {\n for (const e in obj) {\n const elementProp = element[e]\n const objProp = obj[e]\n if (elementProp === undefined) {\n element[e] = objProp\n }\n }\n return element\n}\n\nexport const deepMerge = (element, extend) => {\n for (const e in extend) {\n const elementProp = element[e]\n const extendProp = extend[e]\n // const cachedProps = cache.props\n if (e === 'parent' || e === 'props') continue\n if (elementProp === undefined) {\n element[e] = extendProp\n } else if (isObjectLike(elementProp) && isObject(extendProp)) {\n deepMerge(elementProp, extendProp)\n }\n }\n return element\n}\n\nexport const clone = obj => {\n const o = {}\n for (const prop in obj) {\n if (prop === 'node') continue\n o[prop] = obj[prop]\n }\n return o\n}\n\n// Clone anything deeply but exclude keys given in 'exclude'\nexport const deepCloneExclude = (obj, exclude = []) => {\n if (isArray(obj)) {\n return obj.map(x => deepCloneExclude(x, exclude))\n }\n\n const o = {}\n for (const k in obj) {\n if (exclude.indexOf(k) > -1) continue\n\n let v = obj[k]\n\n if (k === 'extend' && isArray(v)) {\n v = mergeArrayExclude(v, exclude)\n }\n\n if (isArray(v)) {\n o[k] = v.map(x => deepCloneExclude(x, exclude))\n } else if (isObject(v)) {\n o[k] = deepCloneExclude(v, exclude)\n } else o[k] = v\n }\n\n return o\n}\n\n// Merge array, but exclude keys listed in 'excl'\nexport const mergeArrayExclude = (arr, excl = []) => {\n return arr.reduce((acc, curr) => deepMerge(acc, deepCloneExclude(curr, excl)), {})\n}\n\n/**\n * Deep cloning of object\n */\nexport const deepClone = (obj) => {\n if (isArray(obj)) {\n return obj.map(deepClone)\n }\n const o = {}\n for (const prop in obj) {\n let objProp = obj[prop]\n if (prop === 'extend' && isArray(objProp)) {\n objProp = mergeArray(objProp)\n }\n if (isArray(objProp)) {\n o[prop] = objProp.map(v => isObject(v) ? deepClone(v) : v)\n } else if (isObject(objProp)) {\n o[prop] = deepClone(objProp)\n } else o[prop] = objProp\n }\n return o\n}\n\n/**\n * Stringify object\n */\nexport const deepStringify = (obj, stringified = {}) => {\n for (const prop in obj) {\n const objProp = obj[prop]\n if (isFunction(objProp)) {\n stringified[prop] = objProp.toString()\n } else if (isObject(objProp)) {\n stringified[prop] = {}\n deepStringify(objProp[prop], stringified[prop])\n } else if (isArray(objProp)) {\n stringified[prop] = []\n objProp.map((v, i) => deepStringify(v, stringified[prop][i]))\n } else stringified[prop] = objProp\n }\n return stringified\n}\n\n/**\n * Detringify object\n */\nexport const deepDestringify = (obj, stringified = {}) => {\n for (const prop in obj) {\n const objProp = obj[prop]\n if (isString(objProp)) {\n if (objProp.includes('=>') || objProp.includes('function') || objProp[0] === '(') {\n try {\n const evalProp = eval(objProp) // eslint-disable-line\n stringified[prop] = evalProp\n } catch (e) { if (e) stringified[prop] = objProp }\n }\n } else stringified[prop] = objProp\n if (isObject(objProp)) deepDestringify(stringified[prop], stringified[prop])\n }\n return stringified\n}\n\n/**\n * Overwrites object properties with another\n */\nexport const overwrite = (element, params, options) => {\n const { ref } = element\n const changes = {}\n\n for (const e in params) {\n if (e === 'props') continue\n\n const elementProp = element[e]\n const paramsProp = params[e]\n\n if (paramsProp) {\n ref.__cache[e] = changes[e] = elementProp\n ref[e] = paramsProp\n }\n }\n\n return changes\n}\n\nexport const diff = (obj, original, cache) => {\n const changes = cache || {}\n for (const e in obj) {\n if (e === 'ref') continue\n const originalProp = original[e]\n const objProp = obj[e]\n if (isObjectLike(originalProp) && isObjectLike(objProp)) {\n changes[e] = {}\n diff(originalProp, objProp, changes[e])\n } else if (objProp !== undefined) {\n changes[e] = objProp\n }\n }\n return changes\n}\n\n/**\n * Overwrites object properties with another\n */\nexport const overwriteObj = (params, obj) => {\n const changes = {}\n\n for (const e in params) {\n const objProp = obj[e]\n const paramsProp = params[e]\n\n if (paramsProp) {\n obj[e] = changes[e] = objProp\n }\n }\n\n return changes\n}\n\n/**\n * Overwrites DEEPly object properties with another\n */\nexport const overwriteDeep = (params, obj) => {\n for (const e in params) {\n const objProp = obj[e]\n const paramsProp = params[e]\n if (isObjectLike(objProp) && isObjectLike(paramsProp)) {\n overwriteDeep(objProp, paramsProp)\n } else if (paramsProp !== undefined) {\n obj[e] = paramsProp\n }\n }\n return obj\n}\n\n/**\n * Overwrites object properties with another\n */\nexport const mergeIfExisted = (a, b) => {\n if (isObjectLike(a) && isObjectLike(b)) return deepMerge(a, b)\n return a || b\n}\n\n/**\n * Merges array extendtypes\n */\nexport const mergeArray = (arr) => {\n return arr.reduce((a, c) => deepMerge(a, deepClone(c)), {})\n}\n\n/**\n * Merges array extendtypes\n */\nexport const mergeAndCloneIfArray = obj => {\n return isArray(obj) ? mergeArray(obj) : deepClone(obj)\n}\n\n/**\n * Overwrites object properties with another\n */\nexport const flattenRecursive = (param, prop, stack = []) => {\n const objectized = mergeAndCloneIfArray(param)\n stack.push(objectized)\n\n const extendOfExtend = objectized[prop]\n if (extendOfExtend) flattenRecursive(extendOfExtend, prop, stack)\n\n delete objectized[prop]\n\n return stack\n}\n\nexport const isEqualDeep = (param, element) => {\n if (param === element) return true\n if (!param || !element) return false\n for (const prop in param) {\n const paramProp = param[prop]\n const elementProp = element[prop]\n if (isObjectLike(paramProp)) {\n const isEqual = isEqualDeep(paramProp, elementProp)\n if (!isEqual) return false\n } else {\n const isEqual = paramProp === elementProp\n if (!isEqual) return false\n }\n }\n return true\n}\n", "'use strict'\n\nexport const cleanWithNode = extend => delete extend.node && extend\n\nexport const createID = (function () {\n let index = 0\n\n function newId () {\n index++\n return index\n }\n\n return newId\n})()\n\nexport const createSnapshotId = createID\n", "'use strict'\n\nexport * from './sequence.js'\nexport * from './unit.js'\nexport * from './typography.js'\nexport * from './font.js'\nexport * from './font-family.js'\nexport * from './media.js'\nexport * from './spacing.js'\nexport * from './color.js'\nexport * from './theme.js'\nexport * from './icons.js'\nexport * from './timing.js'\nexport * from './document.js'\nexport * from './responsive.js'\nexport * from './cases.js'\nexport * from './animation.js'\nexport * from './svg.js'\n\nexport const RESET = {}\n", "'use strict'\n\nexport const SEQUENCE = {\n 'minor-second': 1.067,\n 'major-second': 1.125,\n 'minor-third': 1.2,\n 'major-third': 1.25,\n 'perfect-fourth': 1.333,\n 'augmented-fourth': 1.414,\n 'perfect-fifth': 1.5,\n 'minor-sixth': 1.6,\n phi: 1.618, // golden-ratio\n 'major-sixth': 1.667,\n 'square-root-3': 1.732, // theodorus\n 'minor-seventh': 1.778,\n 'major-seventh': 1.875,\n octave: 2,\n 'square-root-5': 2.23, // pythagoras\n 'major-tenth': 2.5,\n 'major-eleventh': 2.667,\n 'major-twelfth': 3,\n pi: 3.14, // archimedes\n 'double-octave': 4\n}\n", "'use strict'\n\nexport const UNIT = {\n default: 'em'\n}\n", "'use strict'\n\nimport { SEQUENCE } from './sequence.js'\n\nconst defaultProps = {\n browserDefault: 16,\n base: 16,\n type: 'font-size',\n ratio: SEQUENCE['minor-third'],\n range: [-3, +12],\n h1Matches: +6,\n lineHeight: 1.5,\n unit: 'em',\n templates: {},\n sequence: {},\n scales: {},\n vars: {}\n}\n\nexport const TYPOGRAPHY = defaultProps\n", "'use strict'\n\nvar defFont = { // eslint-disable-line\n name: '',\n url: '',\n fontStyle: '',\n fontWeight: 500,\n fontStretch: 'normal',\n fontOpticalSizing: 'auto'\n}\n\nexport const FONT = {}\n", "'use strict'\n\nexport const isString = arg => typeof arg === 'string'\n\nexport const isArray = arg => Array.isArray(arg)\n\nexport const isObject = arg => {\n if (arg === null) return false\n return (typeof arg === 'object') && (arg.constructor === Object)\n}\n\nexport const isObjectLike = arg => {\n if (arg === null) return false\n return (typeof arg === 'object')\n}\n\nexport const merge = (obj, original) => {\n for (const e in original) {\n const objProp = obj[e]\n const originalProp = original[e]\n if (objProp === undefined) {\n obj[e] = originalProp\n }\n }\n return obj\n}\n\nexport const deepMerge = (obj, obj2) => {\n for (const e in obj2) {\n const objProp = obj[e]\n const obj2Prop = obj2[e]\n if (objProp === undefined) {\n obj[e] = obj2Prop\n } else if (isObjectLike(objProp) && isObject(obj2Prop)) {\n deepMerge(objProp, obj2Prop)\n }\n }\n return obj\n}\n\nexport const arrayze = val => {\n if (isString(val)) return val.split(' ')\n if (isObject(val)) return Object.keys(val).map(v => val[v])\n if (isArray(val)) return val\n}\n\nexport const isFunction = arg => typeof arg === 'function'\n", "'use strict'\n\nimport { document, window } from '@domql/globals'\nconst ENV = process.env.NODE_ENV\n\nexport const colorStringToRgbaArray = color => {\n if (color === '') return\n if (color.toLowerCase() === 'transparent') return [0, 0, 0, 0]\n\n // convert #RGB and #RGBA to #RRGGBB and #RRGGBBAA\n if (color[0] === '#') {\n if (color.length < 7) {\n color = '#' + color[1] + color[1] + color[2] + color[2] + color[3] + color[3] + (color.length > 4 ? color[4] + color[4] : '')\n } return [parseInt(color.substr(1, 2), 16),\n parseInt(color.substr(3, 2), 16),\n parseInt(color.substr(5, 2), 16),\n color.length > 7 ? parseInt(color.substr(7, 2), 16) / 255 : 1]\n }\n\n // convert named colors\n if (color.indexOf('rgb') === -1) {\n if (document && window) {\n // intentionally use unknown tag to lower chances of css rule override with !important\n const elem = document.body.appendChild(document.createElement('fictum'))\n // this flag tested on chrome 59, ff 53, ie9, ie10, ie11, edge 14\n const flag = 'rgb(1, 2, 3)'\n elem.style.color = flag\n // color set failed - some monstrous css rule is probably taking over the color of our object\n if (elem.style.color !== flag) return\n elem.style.color = color\n if (elem.style.color === flag || elem.style.color === '') return // color parse failed\n color = window.getComputedStyle(elem).color\n document.body.removeChild(elem)\n } else console.warn('Color conversion failed, no document or window object found')\n }\n\n // convert 'rgb(R,G,B)' to 'rgb(R,G,B,A)' which looks awful but will pass the regxep below\n if (color.indexOf('rgb') === 0) {\n if (color.indexOf('rgba') === -1) color = `${color}, 1`\n return color.match(/[\\.\\d]+/g).map(a => +a) // eslint-disable-line\n }\n}\n\nexport const mixTwoColors = (colorA, colorB, range = 0.5) => {\n colorA = colorStringToRgbaArray(colorA)\n colorB = colorStringToRgbaArray(colorB)\n return mixTwoRgba(colorA, colorB, range)\n}\n\nexport const hexToRgb = (hex, alpha = 1) => {\n const [r, g, b] = hex.match(/\\w\\w/g).map(x => parseInt(x, 16))\n return `rgb(${r},${g},${b})`\n}\n\nexport const hexToRgbArray = (hex, alpha = 1) => {\n const [r, g, b] = hex.match(/\\w\\w/g).map(x => parseInt(x, 16))\n return [r, g, b]\n}\n\nexport const rgbToHex = (r, g, b) => {\n return '#' + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1)\n}\n\nexport const rgbArrayToHex = ([r, g, b]) => {\n return ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1)\n}\n\nexport const hexToRgba = (hex, alpha = 1) => {\n const [r, g, b] = hex.match(/\\w\\w/g).map(x => parseInt(x, 16))\n return `rgba(${r},${g},${b},${alpha})`\n}\n\nexport const mixTwoRgb = (colorA, colorB, range = 0.5) => {\n const arr = []\n for (let i = 0; i < 3; i++) {\n arr[i] = ~~(\n colorA[i] + (\n (colorB[i] - colorA[i]) * range\n )\n )\n }\n return `rgb(${arr})`\n}\n\nexport const changeLightness = (delta, hsl) => {\n const [hue, saturation, lightness] = hsl\n\n const newLightness = Math.max(\n 0,\n Math.min(100, lightness + parseFloat(delta))\n )\n\n return [hue, saturation, newLightness]\n}\n\nexport const rgbToHSL = (r, g, b) => {\n const a = Math.max(r, g, b); const n = a - Math.min(r, g, b); const f = (1 - Math.abs(a + a - n - 1))\n const h = n && ((a == r) ? (g - b) / n : ((a == g) ? 2 + (b - r) / n : 4 + (r - g) / n)) //eslint-disable-line\n return [60 * (h < 0 ? h + 6 : h), f ? n / f : 0, (a + a - n) / 2]\n}\n\nexport const hslToRgb = (h, s, l,\n a = s * Math.min(l, 1 - l),\n f = (n, k = (n + h / 30) % 12) => l - a * Math.max(\n Math.min(k - 3, 9 - k, 1), -1\n )\n) => [f(0), f(8), f(4)]\n\nexport const getColorShade = (col, amt) => {\n const num = parseInt(col, 16)\n\n let r = (num >> 16) + amt\n\n if (r > 255) r = 255\n else if (r < 0) r = 0\n\n let b = ((num >> 8) & 0x00FF) + amt\n\n if (b > 255) b = 255\n else if (b < 0) b = 0\n\n let g = (num & 0x0000FF) + amt\n\n if (g > 255) g = 255\n else if (g < 0) g = 0\n\n return (g | (b << 8) | (r << 16)).toString(16)\n}\n\nexport const mixTwoRgba = (colorA, colorB, range = 0.5) => {\n const arr = []\n for (let i = 0; i < 4; i++) {\n const round = (i === 3) ? x => x : Math.round\n arr[i] = round(\n (colorA[i] + (\n (colorB[i] - colorA[i]) * range\n ))\n )\n }\n return `rgba(${arr})`\n}\n\nexport const opacify = (color, opacity) => {\n const arr = colorStringToRgbaArray(color)\n if (!arr) {\n if (ENV === 'test' || ENV === 'development') console.warn(color + 'color is not rgba')\n return\n }\n arr[3] = opacity\n return `rgba(${arr})`\n}\n", "'use strict'\n\nexport const getDefaultOrFirstKey = (LIBRARY, key) => {\n if (LIBRARY[key]) return LIBRARY[key].value\n if (LIBRARY.default) return LIBRARY[LIBRARY.default].value\n const hasValue = Object.keys(LIBRARY)[0]\n return hasValue && LIBRARY[hasValue] && LIBRARY[hasValue].value\n}\n\nexport const getFontFormat = url => url.split(/[#?]/)[0].split('.').pop().trim()\n\nexport const setInCustomFontMedia = str => `@font-face { ${str} }`\n\nexport const setCustomFont = (name, url, weight) => `\n font-family: '${name}';\n font-style: normal;\n ${weight && `font-weight: ${weight};`}\n src: url('${url}') format('${getFontFormat(url)}');`\n\nexport const setCustomFontMedia = (name, url, weight) => `@font-face {\n ${setCustomFont(name, url, weight)}\n}`\n// src: url('${url}') format('${getFontFormat(url)}');\n\nexport const getFontFaceEach = (name, weights) => {\n const keys = Object.keys(weights)\n return keys.map(key => {\n const { url, fontWeight } = weights[key]\n return setCustomFont(name, url, fontWeight)\n })\n}\n\nexport const getFontFace = LIBRARY => {\n const keys = Object.keys(LIBRARY)\n return keys.map(key => getFontFaceEach(key, LIBRARY[key].value))\n}\n\nexport const getFontFaceEachString = (name, weights) => {\n const isArr = weights[0]\n if (isArr) return getFontFaceEach(name, weights).map(setInCustomFontMedia)\n return setCustomFontMedia(name, weights.url)\n}\n\nexport const getFontFaceString = LIBRARY => {\n const keys = Object.keys(LIBRARY)\n return keys.map(key => getFontFaceEachString(key, LIBRARY[key].value))\n}\n", "'use strict'\n\nexport * from './navigation'\nexport * from './scaling'\nexport * from './codify'\nexport * from './date'\n\nexport const copyStringToClipboard = str => {\n var el = document.createElement('textarea')\n el.value = str\n el.setAttribute('readonly', '')\n el.style = { position: 'absolute', left: '-9999px' }\n document.body.appendChild(el)\n el.select()\n document.execCommand('copy')\n document.body.removeChild(el)\n}\n\nexport const toCamelCase = str => {\n return str.replace(/(?:^\\w|[A-Z]|\\b\\w)/g, function (word, index) {\n return index === 0 ? word.toLowerCase() : word.toUpperCase()\n }).replaceAll(/\\s+/g, '')\n}\n\nexport const toTitleCase = str => str.replace(\n /\\w\\S*/g, txt => {\n return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase()\n }\n)\n\nexport const toDashCase = val => val\n .replace(/[A-Z]/g, (match, offset) => (offset > 0 ? '-' : '') + match.toLowerCase())\n .replace('.', '-')\n\nexport const toDescriptionCase = str => {\n const result = str.replace(/([A-Z])/g, ' $1')\n return result.charAt(0).toUpperCase() + result.slice(1)\n}\n", "'use strict'\n\nimport { getActiveConfig } from '../factory'\nimport { isString } from '@domql/utils'\nimport { toDashCase } from '@symbo.ls/utils'\n\nexport const numToLetterMap = {\n '-6': 'U',\n '-5': 'V',\n '-4': 'W',\n '-3': 'X',\n '-2': 'Y',\n '-1': 'Z',\n 0: 'A',\n 1: 'B',\n 2: 'C',\n 3: 'D',\n 4: 'E',\n 5: 'F',\n 6: 'G',\n 7: 'H',\n 8: 'I',\n 9: 'J',\n 10: 'K',\n 11: 'L',\n 12: 'M',\n 13: 'N',\n 14: 'O',\n 15: 'P',\n 16: 'Q',\n 17: 'R',\n 18: 'S',\n 19: 'T'\n}\n\nconst setSequenceValue = (props, sequenceProps) => {\n const { key, variable, value, scaling, index } = props\n sequenceProps.sequence[key] = {\n key,\n decimal: ~~(value * 100) / 100,\n val: ~~(value),\n scaling,\n index,\n variable\n }\n sequenceProps.scales[key] = scaling\n sequenceProps.vars[variable] = scaling + sequenceProps.unit\n}\n\nexport const generateSubSequence = (props, sequenceProps) => {\n const { key, base, value, ratio, variable, index } = props\n\n const next = value * ratio\n const diff = next - value\n const smallscale = diff / 1.618\n\n const valueRounded = ~~(value)\n const nextRounded = ~~(next)\n const diffRounded = nextRounded - valueRounded\n\n let arr = []\n const first = next - smallscale\n const second = value + smallscale\n const middle = (first + second) / 2\n if (diffRounded > 16) arr = [first, middle, second]\n else arr = [first, second]\n\n arr.map((v, k) => {\n const scaling = ~~(v / base * 1000) / 1000\n const newVar = variable + (k + 1)\n\n const props = {\n key: key + (k + 1),\n variable: newVar,\n value: v,\n scaling,\n index: index + (k + 1) / 10\n }\n\n return setSequenceValue(props, sequenceProps)\n })\n}\n\nconst switchSequenceOnNegative = (key, base, ratio) => {\n // const values = Object.values(SEQUENCE)\n // const index = values.indexOf(ratio)\n // const diffRatio = ratio / SPACING.ratio\n // const total = values[values.length - 1] - values[0]\n // const avg = total / 2\n // const diff = avg - ratio\n // const scale = total / ratio\n // const finalDiff = avg + avg / diffRatio\n\n // if (key < 0) return base * Math.pow(avg, key)\n return base * Math.pow(ratio, key)\n}\n\nexport const generateSequence = (sequenceProps) => {\n const { type, base, ratio, range, subSequence } = sequenceProps\n const n = Math.abs(range[0]) + Math.abs(range[1])\n const prefix = '--' + (type && type.replace('.', '-')) + '-'\n\n for (let i = 0; i <= n; i++) {\n const key = range[1] - i\n const letterKey = numToLetterMap[key]\n const value = switchSequenceOnNegative(key, base, ratio)\n const scaling = ~~(value / base * 100) / 100\n const variable = prefix + letterKey\n\n const props = {\n key: letterKey,\n variable,\n value,\n base,\n scaling,\n ratio,\n index: key\n }\n\n setSequenceValue(props, sequenceProps)\n\n if (subSequence) generateSubSequence(props, sequenceProps)\n }\n return sequenceProps\n}\n\nexport const getSequenceValue = (value = 'A', sequenceProps) => {\n const CONFIG = getActiveConfig()\n const { UNIT } = CONFIG\n\n const {\n sequence,\n unit = UNIT.default,\n useVariable\n } = sequenceProps\n\n if (isString(value) && value.slice(0, 2) === '--') return `var(${value})`\n\n const prefix = `--${toDashCase(sequenceProps.type.replace('.', '-'))}-`\n\n const startsWithDashOrLetterRegex = /^-?[a-zA-Z]/i\n const startsWithDashOrLetter = startsWithDashOrLetterRegex.test(value)\n\n if (\n value === 'none' ||\n value === 'auto' ||\n value === 'unset' ||\n value === 'inherit' ||\n value === 'fit-content' ||\n value === 'min-content' ||\n value === 'max-content' ||\n value.includes('calc') ||\n !startsWithDashOrLetter\n ) return value\n\n const letterVal = value.toUpperCase()\n const isNegative = letterVal.slice(0, 1) === '-' ? '-' : ''\n let absValue = isNegative ? letterVal.slice(1) : letterVal\n\n let mediaName = ''\n if (absValue.includes('-')) {\n mediaName = '-' + absValue.split('-')[1].toLowerCase()\n absValue = absValue.split('-')[0]\n }\n\n const varValue = v => `var(${prefix}${v}${mediaName})`\n if (absValue.includes('+')) {\n const args = absValue.split('+')\n const [first, second] = args\n const joint = `${varValue(first)} + ${varValue(second)}`\n return isNegative ? `calc((${joint}) * -1)` : `calc(${joint})`\n } else if (absValue.includes('-')) {\n const args = absValue.split('-')\n const [first, second] = args\n const joint = `${varValue(first)} - ${varValue(second)}`\n return isNegative ? `calc((${joint}) * -1)` : `calc(${joint})`\n }\n\n // if subsequence is not set but value is applied\n if (!sequence[absValue] && absValue.length === 2) {\n if (CONFIG.verbose) console.warn(absValue, '- value is not found because `subSequence` is set to false')\n absValue = absValue.slice(0, 1)\n }\n\n if (useVariable || CONFIG.useVariable) {\n const varValue = `var(${prefix}${absValue}${mediaName})`\n return isNegative ? `calc(${varValue} * -1)` : varValue\n }\n\n const sequenceItem = sequence ? sequence[absValue] : null\n if (!sequenceItem) return console.warn('can\\'t find', sequence, absValue)\n\n if (unit === 'ms' || unit === 's') {\n return isNegative + sequenceItem.val + unit\n }\n\n return isNegative + sequenceItem.scaling + unit\n}\n\nexport const getSequenceValuePropertyPair = (value, propertyName, sequenceProps) => {\n if (typeof value !== 'string') {\n console.warn(propertyName, value, 'is not a string')\n return ({})\n }\n if (value === '-' || value === '') return ({})\n return { [propertyName]: getSequenceValue(value, sequenceProps) }\n}\n\nexport const findHeadingLetter = (h1Matches, index) => numToLetterMap[h1Matches - index]\n\nexport const findHeadings = propertyNames => {\n const { h1Matches, sequence } = propertyNames\n return new Array(6).fill(null).map((_, i) => {\n const findLetter = findHeadingLetter(h1Matches, i)\n return sequence[findLetter]\n })\n}\n", "'use strict'\n\nimport { getActiveConfig } from '../factory.js'\nimport { isObjectLike } from '@domql/utils'\n\nconst ENV = process.env.NODE_ENV // eslint-disable-line\n\nexport const setVariables = (result, key) => {\n const CONFIG = getActiveConfig()\n const { CSS_VARS } = CONFIG\n if (isObjectLike(result.value)) {\n // for (const key in result.value) {\n // }\n } else {\n CSS_VARS[result.var] = result.value\n }\n}\n\nexport const applySequenceVars = (props, mediaName, options = {}) => {\n const CONFIG = getActiveConfig()\n const { UNIT, MEDIA, TIMING, CSS_VARS } = CONFIG\n\n const unit = props.unit || UNIT.default\n const { sequence, scales } = props\n\n for (const key in sequence) {\n const item = sequence[key]\n const value = (props.type === TIMING.type ? sequence[key].val : scales[key]) + unit\n\n if (mediaName) {\n const query = MEDIA[mediaName]\n if (!query) {\n if (CONFIG.verbose) console.warn('Can\\'t find query ', query)\n }\n let underMediaQuery = CSS_VARS[`@media ${query}`]\n if (!underMediaQuery) underMediaQuery = CSS_VARS[`@media ${query}`] = {}\n underMediaQuery[item.variable] = `var(${item.variable + '-' + mediaName})`\n CSS_VARS[item.variable + '-' + mediaName] = value\n } else {\n if (options.useDefault === false) {\n CSS_VARS[item.variable] = value\n } else {\n CSS_VARS[item.variable + '-default'] = value\n CSS_VARS[item.variable] = `var(${item.variable + '-default'})`\n }\n }\n }\n}\n", "'use strict'\n\nimport { isString } from \"@domql/utils\"\n\nexport const generateSprite = (icons) => {\n let sprite =\n '<svg aria-hidden=\"true\" width=\"0\" height=\"0\" style=\"position:absolute\">'\n\n for (let key in icons) {\n sprite += icons[key]\n }\n\n sprite += \"</svg>\"\n\n return sprite\n}\n\nconst parseRootAttributes = (htmlString) => {\n if (!isString(htmlString)) {\n return console.warn(`parseRootAttributes: ${htmlString} is not a string`)\n }\n \n let match = htmlString.match(/<svg\\s+(.*?)>/);\n if (!match || !match[1]) {\n return {};\n }\n\n let attrString = match[1];\n let attrs = attrString.match(/(\\S+)=[\"']?((?:.(?![\"']?\\s+(?:\\S+)=|\\s*\\/?[>\"']))+.)[\"']?/gm);\n return attrs.reduce((acc, attr) => {\n let [key, value] = attr.split(\"=\");\n acc[key] = value.replace(/['\"]/g, \"\");\n return acc;\n }, {});\n}\n\nexport const convertSvgToSymbol = (key, code) => {\n const extractAttrs = parseRootAttributes(code)\n const { width, height } = extractAttrs\n \n const viewBox = extractAttrs.viewBox || `0 0 ${width || 24} ${height || 24}`\n const xmlns = 'http://www.w3.org/2000/svg'\n\n let symbol = code.replace(\"<svg\", \n `<symbol id=\"${key}\" xmlns=\"${xmlns}\" viewBox=\"${viewBox}\"`\n )\n symbol = symbol.replace(/width=\"[^\\\"]*/, \"\")\n symbol = symbol.replace(/height=\"[^\\\"]*/, \"\")\n symbol = symbol.replace(\"</svg\", \"</symbol\")\n return symbol\n}\n", "'use strict'\n\nimport { getFontFace } from '../utils'\n\nvar defaultFont = { // eslint-disable-line\n name: '',\n family: '',\n type: ''\n}\n\nexport const FONT_FAMILY = {}\nexport const FONT_FAMILY_TYPES = {\n 'sans-serif': 'Helvetica, Arial, sans-serif, --system-default',\n serif: 'Times New Roman, Georgia, serif, --system-default',\n monospace: 'Courier New, monospace, --system-default'\n}\nexport const FONT_FACE = getFontFace(FONT_FAMILY)\n", "'use strict'\n\nexport const MEDIA = {\n tv: '(min-width: 2780px)',\n\n screenL: '(max-width: 1920px)',\n screenM: '(max-width: 1680px)',\n screenS: '(max-width: 1440px)',\n tabletL: '(max-width: 1366px)',\n tabletM: '(max-width: 1280px)',\n tabletS: '(max-width: 1024px)',\n mobileL: '(max-width: 768px)',\n mobileM: '(max-width: 560px)',\n mobileS: '(max-width: 480px)',\n mobileXS: '(max-width: 375px)',\n\n light: '(prefers-color-scheme: light)',\n dark: '(prefers-color-scheme: dark)',\n\n print: 'print'\n}\n", "'use strict'\n\nimport { SEQUENCE, TYPOGRAPHY } from '.'\n\nconst defaultProps = {\n base: TYPOGRAPHY.base,\n type: 'spacing',\n ratio: SEQUENCE.phi,\n range: [-5, +15],\n subSequence: true,\n unit: 'em',\n sequence: {},\n scales: {},\n vars: {}\n}\n\nexport const SPACING = defaultProps\n", "'use strict'\n\nvar proto = { // eslint-disable-line\n name: '',\n value: '',\n themes: {}\n}\n\nexport const COLOR = {}\nexport const GRADIENT = {}\n", "'use strict'\n\nconst themeA = { // eslint-disable-line no-unused-vars\n text: 'blue',\n background: 'white',\n border: 'black', // .opacity(0.2),\n active: {},\n helpers: [],\n themes: {},\n inverse: {} // schemeAInverse\n}\n\nexport const THEME = {}\n", "'use strict'\n\nexport const ICONS = {}\n", "'use strict'\n\nimport { SEQUENCE } from '.'\n\nconst defaultProps = {\n default: 150,\n base: 150,\n type: 'timing',\n ratio: SEQUENCE['perfect-fourth'],\n range: [-3, +12],\n unit: 'ms',\n sequence: {},\n scales: {},\n vars: {}\n}\n\nexport const TIMING = defaultProps\n", "'use strict'\n\nexport const DOCUMENT = {}\n", "'use strict'\n\nexport const BREAKPOINTS = {\n screenL: 1920,\n screenM: 1680,\n screenS: 1440,\n tabletL: 1366,\n tabletM: 1280,\n tabletS: 1024,\n mobileL: 768,\n mobileM: 560,\n mobileS: 480,\n mobileXS: 375\n}\n\nexport const DEVICES = {\n screenL: [1920, 1024],\n screenM: [1680, 1024],\n screenS: [1440, 978],\n tabletL: [1366, 926],\n tabletM: [1280, 768],\n tabletS: [1024, 768],\n mobileL: [768, 375],\n mobileM: [560, 768],\n mobileS: [480, 768],\n mobileXS: [375, 768]\n}\n", "'use strict'\n\nexport const CASES = {}\n", "'use strict'\n\nexport const ANIMATION = {}\n", "'use strict'\n\nexport const SVG = {}\nexport const SVG_DATA = {}\n", "'use strict'\n\nimport { deepClone, isDefined } from '@domql/utils'\nimport * as CONF from './defaultConfig'\n\nexport const CSS_VARS = {}\nexport const CONFIG = {\n verbose: false,\n useVariable: true,\n useReset: true,\n CSS_VARS,\n ...CONF\n}\n\nconst cachedConfig = deepClone(CONFIG)\n\nexport const FACTORY = {\n active: '0',\n 0: CONFIG\n}\n\nexport const activateConfig = (def) => {\n if (isDefined(def)) { FACTORY.active = def }\n return FACTORY[def || FACTORY.active]\n}\n\nexport const getActiveConfig = (def) => {\n if (isDefined(def) && !FACTORY[def]) {\n FACTORY[def] = deepClone(cachedConfig)\n return FACTORY[def]\n }\n return FACTORY[def || FACTORY.active]\n}\n\nexport const setActiveConfig = (def) => {\n return FACTORY.active = FACTORY[def]\n}\n", "'use strict'\n\nimport { getActiveConfig } from '../factory'\nimport { isObject, isArray, isString } from '@domql/utils'\n\nimport {\n colorStringToRgbaArray,\n rgbToHSL,\n hexToRgbArray,\n rgbArrayToHex,\n hslToRgb,\n getColorShade\n} from '../utils'\n\nexport const getColor = (value, key) => {\n const CONFIG = getActiveConfig()\n if (!isString(value)) {\n if (CONFIG.verbose) console.warn(value, '- type for color is not valid')\n return\n }\n\n if (value.slice(0, 2) === '--') return `var(${value})`\n\n if (key && value[key]) value = value[key]\n const [name, alpha, tone] = isArray(value) ? value : value.split(' ')\n const { COLOR, GRADIENT } = CONFIG\n\n let val = (COLOR[name] || GRADIENT[name])\n\n if (!val) {\n if (CONFIG.verbose) console.warn('Can\\'t find color ', name)\n return value\n }\n\n if (key) {\n if (val[key]) val = val[key]\n else if (CONFIG.verbose) console.warn(value, ' - does not have ', key)\n }\n\n // TODO: support variables\n // if (alpha) return `rgba(var(${val[shade || ''].var}), ${modifier})`\n\n let rgb = val.rgb\n if (rgb) {\n if (tone) {\n if (!val[tone]) {\n const toHex = rgbArrayToHex(rgb.split(', ').map(v => parseFloat(v)))\n if (tone.slice(0, 1) === '-' || tone.slice(0, 1) === '+') {\n rgb = hexToRgbArray(getColorShade(toHex, parseFloat(tone))).join(', ')\n } else {\n const [r, g, b] = [...rgb.split(', ').map(v => parseInt(v))]\n const hsl = rgbToHSL(r, g, b)\n const [h, s, l] = hsl // eslint-disable-line\n const newRgb = hslToRgb(h, s, parseFloat(tone) / 100 * 255)\n rgb = newRgb\n }\n val[tone] = { rgb, var: `${val.var}-${tone}` }\n } else rgb = val[tone].rgb\n }\n if (alpha) return `rgba(${rgb}, ${alpha})`\n return CONFIG.useVariable ? `var(${val.var})` : `rgb(${rgb})`\n } else return CONFIG.useVariable ? `var(${val.var})` : val.value\n}\n\nexport const getMediaColor = (value, property, globalTheme) => {\n const CONFIG = getActiveConfig()\n if (!globalTheme) globalTheme = CONFIG.globalTheme\n if (!isString(value)) {\n if (CONFIG.verbose) console.warn(value, '- type for color is not valid')\n return\n }\n\n if (value.slice(0, 2) === '--') return { [property]: `var(${value})` }\n\n const [name] = isArray(value) ? value : value.split(' ')\n\n const { COLOR, GRADIENT } = CONFIG\n const val = COLOR[name] || GRADIENT[name]\n const isObj = isObject(val)\n\n if (isObj && val.value) return { [property]: getColor(value, globalTheme) }\n else if (isObj) {\n if (globalTheme) return { [property]: getColor(value, `@${globalTheme}`) }\n else {\n const obj = {}\n for (const mediaName in val) {\n const query = CONFIG.MEDIA[mediaName.slice(1)]\n const media = `@media screen and ${query}`\n obj[media] = { [property]: getColor(value, mediaName) }\n }\n return obj\n }\n } else {\n if (CONFIG.verbose) console.warn('Can\\'t find color', value)\n return { [property]: value }\n }\n}\n\nexport const setColor = (val, key, suffix) => {\n const CONFIG = getActiveConfig()\n\n if (isString(val) && val.slice(0, 2) === '--') val = getColor(val.slice(2))\n\n if (isArray(val)) {\n return {\n '@light': setColor(val[0], key, 'light'),\n '@dark': setColor(val[1], key, 'dark')\n }\n }\n\n if (isObject(val)) {\n const obj = {}\n for (const variant in val) obj[variant] = setColor(val[variant], key, variant.slice(0, 1) === '@' ? variant.slice(1) : variant)\n return obj\n }\n\n const CSSVar = `--color-${key}` + (suffix ? `-${suffix}` : '')\n const [r, g, b, a = 1] = colorStringToRgbaArray(val.value || val)\n const alpha = parseFloat(a.toFixed(2))\n const rgb = `${r}, ${g}, ${b}`\n const value = `rgba(${rgb}, ${alpha})`\n\n if (CONFIG.useVariable) { CONFIG.CSS_VARS[CSSVar] = value }\n\n return {\n var: CSSVar,\n rgb,\n alpha,\n value\n }\n}\n\nexport const setGradient = (val, key, suffix) => {\n const CONFIG = getActiveConfig()\n if (isString(val) && val.slice(0, 2) === '--') val = getColor(val.slice(2))\n\n if (isArray(val)) {\n return {\n '@light': setGradient(val[0], key, 'light'),\n '@dark': setGradient(val[0], key, 'dark')\n }\n }\n\n if (isObject(val)) {\n const obj = {}\n for (const variant in val) obj[variant] = setGradient(val[variant], key, variant.slice(0, 1) === '@' ? variant.slice(1) : variant)\n return obj\n }\n\n const CSSVar = `--gradient-${key}` + (suffix ? `-${suffix}` : '')\n\n if (CONFIG.useVariable) {\n CONFIG.CSS_VARS[CSSVar] = val.value || val\n }\n\n return {\n var: CSSVar,\n value: val.value || val\n }\n}\n", "'use strict'\n\nimport { getColor } from './color'\nimport { getActiveConfig } from '../factory'\n\nimport {\n isObject,\n isString,\n isObjectLike,\n isArray\n} from '@domql/utils'\n\nconst ENV = process.env.NODE_ENV // eslint-disable-line\n\nconst setThemeValue = theme => {\n const value = {}\n const { state, media, helpers, ...rest } = theme\n const keys = Object.keys(rest)\n keys.map(key => {\n const conditions = ['color', 'Color', 'background', 'border']\n const isColor = conditions.some(k => key.includes(k))\n return (value[key] = isColor ? getColor(theme[key]) : theme[key])\n })\n return value\n}\n\nconst getThemeValue = theme => {\n if (theme.value) return theme.value\n theme.value = setThemeValue(theme)\n return theme.value\n}\n\nexport const getTheme = (value, modifier) => {\n const CONFIG = getActiveConfig()\n if (CONFIG.useVariable) return getMediaTheme(value, modifier)\n const { THEME } = CONFIG\n\n if (isString(value)) {\n const [theme, subtheme] = value.split(' ')\n const isOurTheme = THEME[theme]\n if (isOurTheme) {\n if (!subtheme && !modifier) return getThemeValue(isOurTheme)\n value = [theme, subtheme || modifier]\n }\n }\n\n if (isObjectLike(value) && value[1]) {\n const themeName = value[0]\n const subThemeName = value[1]\n const { helpers, media, state } = THEME[themeName]\n\n if (media && media[subThemeName]) return getThemeValue(media[subThemeName])\n if (helpers && helpers[subThemeName]) return getThemeValue(helpers[subThemeName])\n if (state && state[subThemeName]) return getThemeValue(state[subThemeName])\n } else if (isObject(value)) return setThemeValue(value)\n}\n\nconst setInverseTheme = (theme, variant, value) => {\n if (isObject(variant)) {\n theme.variants.inverse.value = setThemeValue(variant)\n } else if (variant === true) {\n const { color, background } = value\n theme.variants.inverse = {\n value: {\n color: background,\n background: color\n }\n }\n }\n}\n\nconst setPseudo = (theme, key, variant, themeValue) => {\n const result = getTheme(variant)\n themeValue[`&:${key}`] = result\n if (isObject(variant) && !variant.value) variant.value = result\n}\n\nconst setSelectors = (theme, value) => {\n const { state } = theme\n if (!state) return\n const keys = Object.keys(state)\n keys.map(key => {\n const variant = state[key]\n setPseudo(theme, key, variant, value)\n return theme\n })\n return theme\n}\n\nconst setPrefersScheme = (theme, key, variant, themeValue) => {\n const result = getTheme(variant)\n themeValue[`@media (prefers-color-scheme: ${key})`] = result\n if (isObject(variant) && !variant.value) variant.value = result\n}\n\nconst setMedia = (theme, value) => {\n const { media } = theme\n if (!media) return\n const keys = Object.keys(media)\n keys.map(key => {\n const variant = media[key]\n if (key === 'dark' || key === 'light') setPrefersScheme(theme, key, variant, value)\n if (key === 'inverse') setInverseTheme(theme, variant, value)\n return theme\n })\n return theme\n}\n\nconst setHelpers = (theme, value) => {\n const CONFIG = getActiveConfig()\n const { helpers } = theme\n if (!helpers) return\n const keys = Object.keys(helpers)\n keys.map(key => {\n const helper = helpers[key]\n if (isString(helper)) helpers[key] = CONFIG.THEME[helper]\n else getThemeValue(helpers[key])\n return theme\n })\n return theme\n}\n\nexport const setTheme = (val, key) => {\n const CONFIG = getActiveConfig()\n if (CONFIG.useVariable) return setMediaTheme(val, key)\n\n const { state, media, helpers } = val\n const value = setThemeValue(val, key)\n const CSSvar = `--theme-${key}`\n\n setSelectors(val, value)\n setMedia(val, value)\n setHelpers(val, value)\n\n return { var: CSSvar, value, state, media, helpers }\n}\n\nconst keySetters = { // eslint-disable-line\n '@': (theme, value) => setMedia(theme, value),\n ':': (theme, value) => setSelectors(theme, value),\n '.': (theme, value) => setHelpers(theme, value)\n}\n\nexport const setMediaTheme = (val, key, suffix, prefers) => {\n const CONFIG = getActiveConfig()\n const { CSS_VARS } = CONFIG\n const theme = { value: val }\n\n if (isObjectLike(val)) {\n for (const param in val) {\n const symb = param.slice(0, 1)\n const value = val[param]\n if (symb === '@' || symb === ':' || symb === '.') {\n const hasPrefers = symb === '@' && param\n theme[param] = setMediaTheme(value, key, param, prefers || hasPrefers)\n } else {\n const color = getColor(value, prefers)\n const metaSuffixes = [...new Set([prefers, suffix].filter(v => v).map(v => v.slice(1)))]\n const varmetaSuffixName = metaSuffixes.length ? '-' + metaSuffixes.join('-') : ''\n const CSSVar = `--theme-${key}${varmetaSuffixName}-${param}`\n if (CONFIG.useVariable) {\n CSS_VARS[CSSVar] = color\n theme[param] = `var(${CSSVar})`\n } else {\n theme[param] = color\n }\n theme[`.${param}`] = { [param]: theme[param] }\n }\n }\n\n if (theme['background'] || theme['color'] || theme['backgroundColor']) {\n theme['.inversed'] = {\n color: theme['background'] || theme['backgroundColor'],\n background: theme['color']\n }\n }\n }\n\n if (isString(val) && val.slice(0, 2) === '--') {\n const { THEME } = CONFIG\n const value = THEME[val.slice(2)]\n const getReferenced = getMediaTheme(value, prefers)\n return getReferenced\n }\n\n return theme\n}\n\nconst recursiveTheme = val => {\n const CONFIG = getActiveConfig()\n const obj = {}\n for (const param in val) {\n const symb = param.slice(0, 1)\n if (isObjectLike(val[param])) {\n if (symb === '@') {\n const query = CONFIG.MEDIA[param.slice(1)]\n const media = `@media screen and ${query}`\n obj[media] = recursiveTheme(val[param])\n } else if (symb === ':') {\n obj[`&${param}`] = recursiveTheme(val[param])\n }\n } else obj[param] = val[param]\n }\n return obj\n}\n\nconst findModifierFromArray = (val, modifierArray) => {\n const currentMod = modifierArray.shift()\n if (val[currentMod]) return findModifierFromArray(val[currentMod], modifierArray)\n return val\n}\n\nconst findModifier = (val, modifier) => {\n if (isArray(modifier)) return findModifierFromArray(val, modifier)\n else if (isString(modifier) && val[modifier]) return val[modifier]\n else return val\n}\n\nconst checkForReference = (val, callback) => {\n if (isString(val) && val.slice(0, 2) === '--') return getMediaTheme(val.slice(2))\n return val\n}\n\nconst checkThemeReference = (val) => checkForReference(val, checkThemeReference) // eslint-disable-line\n\nexport const getMediaTheme = (val, mod) => {\n const CONFIG = getActiveConfig()\n if (isString(val) && val.slice(0, 2) === '--') val = getMediaTheme(val.slice(2))\n\n if (!val || !isString(val)) {\n if (CONFIG.verbose) console.warn(val, '- theme is not string')\n return\n }\n\n const [name, ...modifier] = isArray(val) ? val : val.split(' ')\n let value = CONFIG.THEME[name]\n if (value && (modifier || mod)) {\n value = findModifier(value, modifier.length ? modifier : mod)\n }\n\n const r = recursiveTheme(value)\n return r\n}\n", "'use strict'\n\nimport { isObject } from '@domql/utils'\nimport { getActiveConfig } from '../factory'\n\nimport {\n arrayze,\n getDefaultOrFirstKey,\n getFontFaceEach,\n setCustomFontMedia\n} from '../utils'\n\n// const ENV = process.env.NODE_ENV\n\nexport const setFont = (val, key) => {\n const CSSvar = `--font-${key}`\n const fontFace = val[0]\n ? getFontFaceEach(key, val)\n : setCustomFontMedia(key, val.url)\n return { var: CSSvar, value: val, fontFace }\n}\n\nexport const getFontFamily = (key, factory) => {\n const CONFIG = getActiveConfig()\n const { FONT_FAMILY } = CONFIG\n return getDefaultOrFirstKey(factory || FONT_FAMILY, key)\n}\n\nexport const setFontFamily = (val, key) => {\n const CONFIG = getActiveConfig()\n const { FONT_FAMILY, FONT_FAMILY_TYPES } = CONFIG\n let { value, type } = val\n if (val.isDefault) FONT_FAMILY.default = key\n\n if (isObject(value)) value = arrayze(value)\n\n const CSSvar = `--font-family-${key}`\n const str = `${value.join(', ')}, ${FONT_FAMILY_TYPES[type]}`\n return { var: CSSvar, value: str, arr: value, type }\n}\n", "'use strict'\n\nimport { getActiveConfig } from '../factory'\n\nimport {\n applySequenceVars,\n findHeadings,\n generateSequence,\n getSequenceValuePropertyPair,\n merge\n} from '../utils'\n\nexport const runThroughMedia = props => {\n const CONFIG = getActiveConfig()\n const { TYPOGRAPHY, MEDIA } = CONFIG\n\n for (const prop in props) {\n const mediaProps = props[prop]\n if (prop.slice(0, 1) === '@') {\n const { type, base, ratio, range, subSequence, h1Matches, unit } = props\n\n merge(mediaProps, {\n type,\n base,\n ratio,\n range,\n subSequence,\n h1Matches,\n unit,\n sequence: {},\n scales: {},\n templates: {},\n vars: {}\n })\n\n generateSequence(mediaProps)\n\n const mediaName = prop.slice(1)\n applySequenceVars(mediaProps, mediaName)\n\n const query = MEDIA[mediaName]\n TYPOGRAPHY.templates[`@media screen and ${query}`] = {\n fontSize: mediaProps.base / TYPOGRAPHY.browserDefault + unit\n }\n }\n }\n}\n\nexport const applyHeadings = (props) => {\n const CONFIG = getActiveConfig()\n if (props.h1Matches) {\n const unit = props.unit\n const HEADINGS = findHeadings(props)\n const { templates } = props\n for (const k in HEADINGS) {\n const headerName = `h${parseInt(k) + 1}`\n const headerStyle = templates[headerName]\n templates[headerName] = {\n fontSize: CONFIG.useVariable ? `var(${HEADINGS[k].variable})` : `${HEADINGS[k].scaling}${unit}`,\n margin: headerStyle ? headerStyle.margin : 0,\n lineHeight: headerStyle ? headerStyle.lineHeight : props.lineHeight,\n letterSpacing: headerStyle ? headerStyle.letterSpacing : props.letterSpacing,\n fontWeight: headerStyle ? headerStyle.fontWeight : 900 - (k * 100)\n }\n }\n }\n}\n\nexport const applyTypographySequence = () => {\n const CONFIG = getActiveConfig()\n const { TYPOGRAPHY } = CONFIG\n\n generateSequence(TYPOGRAPHY)\n applyHeadings(TYPOGRAPHY)\n applySequenceVars(TYPOGRAPHY)\n runThroughMedia(TYPOGRAPHY)\n}\n\nexport const getFontSizeByKey = value => {\n const CONFIG = getActiveConfig()\n const { TYPOGRAPHY } = CONFIG\n return getSequenceValuePropertyPair(\n value,\n 'fontSize',\n TYPOGRAPHY\n )\n}\n", "'use strict'\n\nimport { getActiveConfig } from '../factory'\n\nimport { isString } from '@domql/utils'\nimport {\n applySequenceVars,\n arrayze,\n generateSequence,\n getSequenceValuePropertyPair,\n merge\n} from '../utils'\n\nconst runThroughMedia = sequenceProps => {\n for (const prop in sequenceProps) {\n const mediaProps = sequenceProps[prop]\n if (prop.slice(0, 1) === '@') {\n const { type, base, ratio, range, subSequence, h1Matches, unit } = sequenceProps\n\n merge(mediaProps, {\n type,\n base,\n ratio,\n range,\n subSequence,\n h1Matches,\n unit,\n sequence: {},\n scales: {},\n templates: {},\n vars: {}\n })\n\n generateSequence(mediaProps)\n\n const mediaName = prop.slice(1)\n applySequenceVars(mediaProps, mediaName)\n }\n }\n}\n\nexport const applySpacingSequence = () => {\n const CONFIG = getActiveConfig()\n const { SPACING } = CONFIG\n generateSequence(SPACING)\n applySequenceVars(SPACING)\n runThroughMedia(SPACING)\n}\n\nconst getSequence = (sequenceProps) => {\n const CONFIG = getActiveConfig()\n const { SPACING } = CONFIG\n if (!sequenceProps) return SPACING\n const hasGenerated = Object.keys(sequenceProps.sequence).length > 0\n return hasGenerated ? sequenceProps : generateSequence(sequenceProps)\n}\n\nexport const getSpacingByKey = (\n value,\n propertyName = 'padding',\n sequenceProps\n) => {\n const sequence = getSequence(sequenceProps)\n\n const stack = arrayze(value)\n if (!stack) return\n\n if (isString(value) && value.includes('calc')) {\n return { [propertyName]: value }\n }\n\n if (stack.length > 1) {\n let suffix = ''\n if (propertyName === 'borderWidth') {\n propertyName = 'border'\n suffix = 'Width'\n }\n\n const directions = {\n 2: ['Block', 'Inline'],\n 3: ['BlockStart', 'Inline', 'BlockEnd'],\n 4: ['BlockStart', 'InlineEnd', 'BlockEnd', 'InlineStart']\n }\n\n const wrapSequenceValueByDirection = (direction, i) => getSequenceValuePropertyPair(\n stack[i],\n propertyName + direction + suffix,\n sequence\n )\n\n return directions[stack.length].map((dir, key) => wrapSequenceValueByDirection(dir, key))\n }\n\n return getSequenceValuePropertyPair(\n value,\n propertyName,\n sequence\n )\n}\n\nexport const getSpacingBasedOnRatio = (props, propertyName, val) => {\n const CONFIG = getActiveConfig()\n const { SPACING } = CONFIG\n\n const { spacingRatio, unit } = props\n const value = val || props[propertyName]\n\n if (spacingRatio) {\n let sequenceProps = SPACING[spacingRatio]\n\n if (!sequenceProps) {\n const { type, base, range, subSequence } = SPACING\n\n sequenceProps = SPACING[spacingRatio] = merge({\n ratio: spacingRatio,\n type: type + '-' + spacingRatio,\n unit,\n sequence: {},\n scales: {},\n templates: {},\n vars: {}\n }, {\n base,\n range,\n subSequence,\n ratio: SPACING.ratio,\n unit: SPACING.unit\n })\n }\n\n applySequenceVars(sequenceProps, null, { useDefault: false })\n\n return getSpacingByKey(value, propertyName, sequenceProps)\n }\n return getSpacingByKey(value, propertyName)\n}\n", "'use strict'\n\nimport { toCamelCase } from '@symbo.ls/utils'\nimport { getActiveConfig } from '../factory.js'\nimport {\n applySequenceVars,\n generateSequence,\n getSequenceValuePropertyPair\n} from '../utils'\n\nexport const applyTimingSequence = () => {\n const CONFIG = getActiveConfig()\n const { TIMING } = CONFIG\n generateSequence(TIMING)\n applySequenceVars(TIMING)\n}\n\nexport const getTimingFunction = value => {\n const CONFIG = getActiveConfig()\n const { TIMING } = CONFIG\n return TIMING[value] || TIMING[toCamelCase(value)] || value\n}\n\nexport const getTimingByKey = (value, property = 'timing') => {\n const CONFIG = getActiveConfig()\n const { TIMING } = CONFIG\n return getSequenceValuePropertyPair(\n value,\n property,\n TIMING\n )\n}\n", "'use strict'\n\nimport { getActiveConfig } from '../factory.js'\nimport { getDefaultOrFirstKey, merge } from '../utils'\n\nexport const applyDocument = () => {\n const CONFIG = getActiveConfig()\n const { DOCUMENT, FONT_FAMILY, THEME, TYPOGRAPHY } = CONFIG\n return merge(DOCUMENT, {\n theme: THEME.document,\n fontFamily: getDefaultOrFirstKey(FONT_FAMILY),\n fontSize: TYPOGRAPHY.base,\n lineHeight: TYPOGRAPHY.lineHeight\n })\n}\n", "'use strict'\n\nimport { document } from '@domql/globals'\nimport { generateSprite, convertSvgToSymbol } from \"../utils\"\nimport { getActiveConfig } from '../factory.js'\n\nconst DEF_OPTIONS = {\n document: document\n}\n\nexport const setSVG = (val, key) => {\n if (!val) return console.log('setSVG: val is not defined')\n const CONFIG = getActiveConfig()\n if (CONFIG.useSvgSprite) {\n return convertSvgToSymbol(key, val)\n } return val\n}\n\nexport const appendSVGSprite = (LIBRARY, options = DEF_OPTIONS) => {\n const CONFIG = getActiveConfig()\n const doc = options.document || document\n\n const lib = Object.keys(LIBRARY).length ? {} : CONFIG.SVG\n for (let key in LIBRARY) lib[key] = CONFIG.SVG[key]\n \n const SVGsprite = generateSprite(lib)\n if (!doc) {\n console.warn('To append SVG sprites it should be run in browser environment')\n return SVGsprite\n }\n \n const svgSpriteDOM = doc.createElement('template')\n svgSpriteDOM.innerHTML = SVGsprite\n doc.body.appendChild(svgSpriteDOM.content)\n}\n\nexport const setIcon = (val, key) => {\n const CONFIG = getActiveConfig()\n if (CONFIG.useIconSprite) {\n return setSVG(val, key)\n } return val\n}\n\nexport const appendIconsSprite = (LIBRARY, options = DEF_OPTIONS) => {\n const CONFIG = getActiveConfig()\n const doc = options.document || document\n \n const lib = Object.keys(LIBRARY).length ? {} : CONFIG.ICONS\n for (let key in LIBRARY) lib[key] = CONFIG.ICONS[key]\n \n const SVGsprite = generateSprite(lib)\n if (!doc) {\n console.warn('To append SVG Icon sprites it should be run in browser environment')\n return SVGsprite\n }\n\n const iconsSpriteDOM = doc.createElement('template')\n iconsSpriteDOM.innerHTML = SVGsprite\n doc.body.appendChild(iconsSpriteDOM.content)\n}\n", "'use strict'\n\nimport { getActiveConfig } from '../factory.js'\nimport { getMediaTheme } from '.'\nimport { deepMerge, merge } from '@domql/utils' // eslint-disable-line no-unused-vars\n\nexport const applyReset = (reset = {}) => {\n const CONFIG = getActiveConfig()\n const { CSS_VARS, RESET, TYPOGRAPHY, DOCUMENT } = CONFIG\n if (RESET) {\n if (RESET[':root']) {\n const configReset = RESET\n const configTemplates = TYPOGRAPHY.templates\n\n configReset.body = {\n ...getMediaTheme('document', `@${CONFIG.globalTheme}`),\n ...configTemplates.body\n }\n configReset.h1 = configTemplates.h1\n configReset.h2 = configTemplates.h2\n configReset.h3 = configTemplates.h3\n configReset.h4 = configTemplates.h4\n configReset.h5 = configTemplates.h5\n configReset.h6 = configTemplates.h6\n }\n\n const { body, ...templates } = TYPOGRAPHY.templates\n\n return deepMerge(merge(RESET, reset), {\n html: {\n position: 'absolute',\n overflow: 'hidden',\n width: '100%',\n height: '100%',\n top: '0',\n left: '0',\n margin: '0',\n WebkitFontSmoothing: 'antialiased',\n transform: 'translate3d(0, 0, 1px)',\n scrollBehavior: 'smooth',\n\n fontSize: TYPOGRAPHY.browserDefault + 'px',\n\n fontFamily: DOCUMENT.fontFamily,\n lineHeight: DOCUMENT.lineHeight\n },\n\n body: {\n boxSizing: 'border-box',\n height: '100%',\n margin: 0,\n fontFamily: DOCUMENT.fontFamily,\n\n fontSize: TYPOGRAPHY.base / TYPOGRAPHY.browserDefault + CONFIG.UNIT.default,\n\n ...(CONFIG.useDocumentTheme ? getMediaTheme('document', `@${CONFIG.globalTheme}`) : {}),\n\n ...templates,\n ...body\n },\n\n // form elements\n fieldset: {\n border: 0,\n padding: 0,\n margin: 0\n },\n\n 'select, input': {\n fontFamily: DOCUMENT.fontFamily\n }\n })\n }\n}\n", "'use strict'\n\nimport { FACTORY, getActiveConfig } from './factory.js' // eslint-disable-line no-unused-vars\nimport {\n setColor,\n setGradient,\n setFont,\n setFontFamily,\n setTheme,\n setIcon,\n setSVG,\n applyTypographySequence,\n applySpacingSequence,\n applyReset,\n applyTimingSequence,\n applyDocument\n} from './system'\n\nimport { isFunction } from './utils'\n\nconst ENV = process.env.NODE_ENV // eslint-disable-line no-unused-vars\n\nconst setCases = (val, key) => {\n if (isFunction(val)) return val()\n return val\n}\n\nconst setSameValue = (val, key) => val\n\nexport const VALUE_TRANSFORMERS = {\n color: setColor,\n gradient: setGradient,\n font: setFont,\n font_family: setFontFamily,\n theme: setTheme,\n icons: setIcon,\n svg: setSVG,\n svg_data: setSameValue,\n typography: setSameValue,\n cases: setCases,\n spacing: setSameValue,\n media: setSameValue,\n timing: setSameValue,\n reset: setSameValue,\n unit: setSameValue,\n animation: setSameValue\n}\n\n/**\n *\n * @param {Object} FACTORY_NAME Defines which factory it goes to\n * @param {*} value Value of the property\n * @param {String} key Key, or the name of the property\n * @returns {Object} Factory\n */\nexport const setValue = (FACTORY_NAME, value, key) => {\n const CONFIG = getActiveConfig()\n const factoryName = FACTORY_NAME.toLowerCase()\n const FACTORY = CONFIG[FACTORY_NAME]\n\n if (VALUE_TRANSFORMERS[factoryName]) {\n const result = VALUE_TRANSFORMERS[factoryName](value, key)\n FACTORY[key] = result\n return FACTORY\n }\n\n if (CONFIG.verbose) console.warn('Can not find', factoryName, 'method in scratch')\n}\n\nexport const setEach = (factoryName, props) => {\n const CONFIG = getActiveConfig()\n const FACTORY_NAME = factoryName.toUpperCase()\n const keys = Object.keys(props)\n keys.map(key => setValue(FACTORY_NAME, props[key], key))\n\n return CONFIG[FACTORY_NAME]\n}\n\nconst SET_OPTIONS = {}\n\nexport const set = (recivedConfig, options = SET_OPTIONS) => {\n let CONFIG = getActiveConfig()\n const {\n version,\n verbose,\n useVariable,\n useReset,\n useSvgSprite,\n useFontImport,\n useIconSprite,\n globalTheme,\n useDocumentTheme,\n ...config } = recivedConfig\n \n if (options.newConfig) {\n FACTORY['active'] = options.newConfig\n CONFIG = getActiveConfig(options.newConfig)\n }\n\n if (verbose !== undefined) CONFIG.verbose = verbose\n if (useVariable !== undefined) CONFIG.useVariable = useVariable\n if (useReset !== undefined) CONFIG.useReset = useReset\n if (useFontImport !== undefined) CONFIG.useFontImport = useFontImport\n if (useSvgSprite !== undefined) CONFIG.useSvgSprite = useSvgSprite\n if (useIconSprite !== undefined) CONFIG.useIconSprite = useIconSprite\n if (useDocumentTheme !== undefined) CONFIG.useDocumentTheme = useDocumentTheme\n if (globalTheme !== undefined) CONFIG.globalTheme = globalTheme\n if (CONFIG.verbose) console.log(CONFIG)\n\n const keys = Object.keys(config)\n keys.map(key => setEach(key, config[key]))\n\n // apply generic configs\n applyTypographySequence()\n applySpacingSequence()\n applyTimingSequence()\n applyDocument()\n applyReset()\n\n return CONFIG\n}\n\nexport * from './system'\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["
|
|
3
|
+
"sources": ["../../../node_modules/@domql/globals/dist/cjs/index.js", "../../../node_modules/@domql/tags/dist/cjs/htmlTags.js", "../../../node_modules/@domql/tags/dist/cjs/index.js", "../../../node_modules/@domql/utils/dist/cjs/types.js", "../../../node_modules/@domql/utils/dist/cjs/object.js", "../../../node_modules/@domql/utils/dist/cjs/function.js", "../../../node_modules/@domql/utils/dist/cjs/array.js", "../../../node_modules/@domql/utils/dist/cjs/node.js", "../../../node_modules/@domql/utils/dist/cjs/log.js", "../../../node_modules/@domql/utils/dist/cjs/index.js", "../src/index.js", "../src/factory.js", "../src/defaultConfig/index.js", "../src/defaultConfig/sequence.js", "../src/defaultConfig/unit.js", "../src/defaultConfig/typography.js", "../src/defaultConfig/font.js", "../src/utils/object.js", "../src/utils/color.js", "../src/utils/font.js", "../src/utils/sequence.js", "../../utils/src/scaling.js", "../../utils/src/index.js", "../src/utils/var.js", "../src/utils/sprite.js", "../src/defaultConfig/font-family.js", "../src/defaultConfig/media.js", "../src/defaultConfig/spacing.js", "../src/defaultConfig/color.js", "../src/defaultConfig/theme.js", "../src/defaultConfig/icons.js", "../src/defaultConfig/timing.js", "../src/defaultConfig/document.js", "../src/defaultConfig/responsive.js", "../src/defaultConfig/cases.js", "../src/defaultConfig/animation.js", "../src/defaultConfig/svg.js", "../src/system/color.js", "../src/system/theme.js", "../src/system/font.js", "../src/system/typography.js", "../src/system/spacing.js", "../src/system/timing.js", "../src/system/document.js", "../src/system/svg.js", "../src/system/reset.js", "../src/set.js"],
|
|
4
|
+
"sourcesContent": ["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar globals_exports = {};\n__export(globals_exports, {\n document: () => document,\n global: () => global,\n self: () => self,\n window: () => window\n});\nmodule.exports = __toCommonJS(globals_exports);\nconst global = globalThis;\nconst self = globalThis;\nconst window = globalThis;\nconst document = window.document;\n", "\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar htmlTags_exports = {};\n__export(htmlTags_exports, {\n HTML_TAGS: () => HTML_TAGS\n});\nmodule.exports = __toCommonJS(htmlTags_exports);\nconst HTML_TAGS = {\n root: [\n \"body\",\n \"html\"\n ],\n head: [\n \"title\",\n \"base\",\n \"meta\",\n \"style\"\n ],\n body: [\n \"string\",\n \"fragment\",\n \"a\",\n \"abbr\",\n \"acronym\",\n \"address\",\n \"applet\",\n \"area\",\n \"article\",\n \"aside\",\n \"audio\",\n \"b\",\n \"basefont\",\n \"bdi\",\n \"bdo\",\n \"big\",\n \"blockquote\",\n \"br\",\n \"button\",\n \"canvas\",\n \"caption\",\n \"center\",\n \"cite\",\n \"code\",\n \"col\",\n \"colgroup\",\n \"data\",\n \"datalist\",\n \"dd\",\n \"del\",\n \"details\",\n \"dfn\",\n \"dialog\",\n \"dir\",\n \"div\",\n \"dl\",\n \"dt\",\n \"em\",\n \"embed\",\n \"fieldset\",\n \"figcaption\",\n \"figure\",\n \"font\",\n \"footer\",\n \"form\",\n \"frame\",\n \"frameset\",\n \"h1\",\n \"h2\",\n \"h3\",\n \"h4\",\n \"h5\",\n \"h6\",\n \"head\",\n \"header\",\n \"hr\",\n \"i\",\n \"iframe\",\n \"img\",\n \"input\",\n \"ins\",\n \"kbd\",\n \"label\",\n \"legend\",\n \"li\",\n \"link\",\n \"main\",\n \"map\",\n \"mark\",\n \"meter\",\n \"nav\",\n \"noframes\",\n \"noscript\",\n \"object\",\n \"ol\",\n \"optgroup\",\n \"option\",\n \"output\",\n \"p\",\n \"param\",\n \"picture\",\n \"pre\",\n \"progress\",\n \"q\",\n \"rp\",\n \"rt\",\n \"ruby\",\n \"s\",\n \"samp\",\n \"script\",\n \"section\",\n \"select\",\n \"small\",\n \"source\",\n \"span\",\n \"strike\",\n \"strong\",\n \"sub\",\n \"summary\",\n \"sup\",\n \"table\",\n \"tbody\",\n \"td\",\n \"template\",\n \"textarea\",\n \"tfoot\",\n \"th\",\n \"thead\",\n \"time\",\n \"tr\",\n \"track\",\n \"tt\",\n \"u\",\n \"ul\",\n \"var\",\n \"video\",\n \"wbr\",\n // SVG\n \"svg\",\n \"path\"\n ]\n};\n", "\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, \"default\"), secondTarget && __copyProps(secondTarget, mod, \"default\"));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar tags_exports = {};\nmodule.exports = __toCommonJS(tags_exports);\n__reExport(tags_exports, require(\"./htmlTags.js\"), module.exports);\n", "\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar types_exports = {};\n__export(types_exports, {\n TYPES: () => TYPES,\n is: () => is,\n isArray: () => isArray,\n isBoolean: () => isBoolean,\n isDefined: () => isDefined,\n isFunction: () => isFunction,\n isHtmlElement: () => isHtmlElement,\n isNode: () => isNode,\n isNot: () => isNot,\n isNull: () => isNull,\n isNumber: () => isNumber,\n isObject: () => isObject,\n isObjectLike: () => isObjectLike,\n isString: () => isString,\n isUndefined: () => isUndefined,\n isValidHtmlTag: () => isValidHtmlTag\n});\nmodule.exports = __toCommonJS(types_exports);\nvar import_globals = require(\"@domql/globals\");\nvar import_tags = require(\"@domql/tags\");\nconst isValidHtmlTag = (arg) => import_tags.HTML_TAGS.body.indexOf(arg);\nconst isObject = (arg) => {\n if (arg === null)\n return false;\n return typeof arg === \"object\" && arg.constructor === Object;\n};\nconst isString = (arg) => typeof arg === \"string\";\nconst isNumber = (arg) => typeof arg === \"number\";\nconst isFunction = (arg) => typeof arg === \"function\";\nconst isBoolean = (arg) => arg === true || arg === false;\nconst isNull = (arg) => arg === null;\nconst isArray = (arg) => Array.isArray(arg);\nconst isObjectLike = (arg) => {\n if (arg === null)\n return false;\n return typeof arg === \"object\";\n};\nconst isNode = (obj) => {\n return typeof import_globals.window.Node === \"object\" ? obj instanceof import_globals.window.Node : obj && typeof obj === \"object\" && typeof obj.nodeType === \"number\" && typeof obj.nodeName === \"string\";\n};\nconst isHtmlElement = (obj) => {\n return typeof import_globals.window.HTMLElement === \"object\" ? obj instanceof import_globals.window.HTMLElement : obj && typeof obj === \"object\" && obj !== null && obj.nodeType === 1 && typeof obj.nodeName === \"string\";\n};\nconst isDefined = (arg) => {\n return isObject(arg) || isObjectLike(arg) || isString(arg) || isNumber(arg) || isFunction(arg) || isArray(arg) || isObjectLike(arg) || isBoolean(arg) || isNull(arg);\n};\nconst isUndefined = (arg) => {\n return arg === void 0;\n};\nconst TYPES = {\n boolean: isBoolean,\n array: isArray,\n object: isObject,\n string: isString,\n number: isNumber,\n null: isNull,\n function: isFunction,\n objectLike: isObjectLike,\n node: isNode,\n htmlElement: isHtmlElement,\n defined: isDefined\n};\nconst is = (arg) => {\n return (...args) => {\n return args.map((val) => TYPES[val](arg)).filter((v) => v).length > 0;\n };\n};\nconst isNot = (arg) => {\n return (...args) => {\n return args.map((val) => TYPES[val](arg)).filter((v) => v).length === 0;\n };\n};\n", "\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar object_exports = {};\n__export(object_exports, {\n clone: () => clone,\n deepClone: () => deepClone,\n deepCloneExclude: () => deepCloneExclude,\n deepDestringify: () => deepDestringify,\n deepMerge: () => deepMerge,\n deepStringify: () => deepStringify,\n diff: () => diff,\n exec: () => exec,\n flattenRecursive: () => flattenRecursive,\n isEqualDeep: () => isEqualDeep,\n map: () => map,\n merge: () => merge,\n mergeAndCloneIfArray: () => mergeAndCloneIfArray,\n mergeArray: () => mergeArray,\n mergeArrayExclude: () => mergeArrayExclude,\n mergeIfExisted: () => mergeIfExisted,\n overwrite: () => overwrite,\n overwriteDeep: () => overwriteDeep,\n overwriteObj: () => overwriteObj\n});\nmodule.exports = __toCommonJS(object_exports);\nvar import_types = require(\"./types.js\");\nconst exec = (param, element, state) => {\n if ((0, import_types.isFunction)(param))\n return param(element, state || element.state);\n return param;\n};\nconst map = (obj2, extention, element) => {\n for (const e in extention) {\n obj2[e] = exec(extention[e], element);\n }\n};\nconst merge = (element, obj2) => {\n for (const e in obj2) {\n const elementProp = element[e];\n const objProp2 = obj2[e];\n if (elementProp === void 0) {\n element[e] = objProp2;\n }\n }\n return element;\n};\nconst deepMerge = (element, extend) => {\n for (const e in extend) {\n const elementProp = element[e];\n const extendProp = extend[e];\n if (e === \"parent\" || e === \"props\")\n continue;\n if (elementProp === void 0) {\n element[e] = extendProp;\n } else if ((0, import_types.isObjectLike)(elementProp) && (0, import_types.isObject)(extendProp)) {\n deepMerge(elementProp, extendProp);\n }\n }\n return element;\n};\nconst clone = (obj2) => {\n const o = {};\n for (const prop2 in obj2) {\n if (prop2 === \"node\")\n continue;\n o[prop2] = obj2[prop2];\n }\n return o;\n};\nconst deepCloneExclude = (obj2, exclude = []) => {\n if ((0, import_types.isArray)(obj2)) {\n return obj2.map((x) => deepCloneExclude(x, exclude));\n }\n const o = {};\n for (const k in obj2) {\n if (exclude.indexOf(k) > -1)\n continue;\n let v = obj2[k];\n if (k === \"extend\" && (0, import_types.isArray)(v)) {\n v = mergeArrayExclude(v, exclude);\n }\n if ((0, import_types.isArray)(v)) {\n o[k] = v.map((x) => deepCloneExclude(x, exclude));\n } else if ((0, import_types.isObject)(v)) {\n o[k] = deepCloneExclude(v, exclude);\n } else\n o[k] = v;\n }\n return o;\n};\nconst mergeArrayExclude = (arr, excl = []) => {\n return arr.reduce((acc, curr) => deepMerge(acc, deepCloneExclude(curr, excl)), {});\n};\nconst deepClone = (obj2) => {\n if ((0, import_types.isArray)(obj2)) {\n return obj2.map(deepClone);\n }\n const o = {};\n for (const prop2 in obj2) {\n let objProp2 = obj2[prop2];\n if (prop2 === \"extend\" && (0, import_types.isArray)(objProp2)) {\n objProp2 = mergeArray(objProp2);\n }\n if ((0, import_types.isArray)(objProp2)) {\n o[prop2] = objProp2.map((v) => (0, import_types.isObject)(v) ? deepClone(v) : v);\n } else if ((0, import_types.isObject)(objProp2)) {\n o[prop2] = deepClone(objProp2);\n } else\n o[prop2] = objProp2;\n }\n return o;\n};\nconst deepStringify = (obj2, stringified2 = {}) => {\n for (const prop2 in obj2) {\n const objProp2 = obj2[prop2];\n if ((0, import_types.isFunction)(objProp2)) {\n stringified2[prop2] = objProp2.toString();\n } else if ((0, import_types.isObject)(objProp2)) {\n stringified2[prop2] = {};\n deepStringify(objProp2[prop2], stringified2[prop2]);\n } else if ((0, import_types.isArray)(objProp2)) {\n stringified2[prop2] = [];\n objProp2.map((v, i) => deepStringify(v, stringified2[prop2][i]));\n } else\n stringified2[prop2] = objProp2;\n }\n return stringified2;\n};\nconst deepDestringify = (obj, stringified = {}) => {\n for (const prop in obj) {\n const objProp = obj[prop];\n if ((0, import_types.isString)(objProp)) {\n if (objProp.includes(\"=>\") || objProp.includes(\"function\") || objProp[0] === \"(\") {\n try {\n const evalProp = eval(objProp);\n stringified[prop] = evalProp;\n } catch (e) {\n if (e)\n stringified[prop] = objProp;\n }\n }\n } else\n stringified[prop] = objProp;\n if ((0, import_types.isObject)(objProp))\n deepDestringify(stringified[prop], stringified[prop]);\n }\n return stringified;\n};\nconst overwrite = (element, params, options) => {\n const { ref } = element;\n const changes = {};\n for (const e in params) {\n if (e === \"props\")\n continue;\n const elementProp = element[e];\n const paramsProp = params[e];\n if (paramsProp) {\n ref.__cache[e] = changes[e] = elementProp;\n ref[e] = paramsProp;\n }\n }\n return changes;\n};\nconst diff = (obj2, original, cache) => {\n const changes = cache || {};\n for (const e in obj2) {\n if (e === \"ref\")\n continue;\n const originalProp = original[e];\n const objProp2 = obj2[e];\n if ((0, import_types.isObjectLike)(originalProp) && (0, import_types.isObjectLike)(objProp2)) {\n changes[e] = {};\n diff(originalProp, objProp2, changes[e]);\n } else if (objProp2 !== void 0) {\n changes[e] = objProp2;\n }\n }\n return changes;\n};\nconst overwriteObj = (params, obj2) => {\n const changes = {};\n for (const e in params) {\n const objProp2 = obj2[e];\n const paramsProp = params[e];\n if (paramsProp) {\n obj2[e] = changes[e] = objProp2;\n }\n }\n return changes;\n};\nconst overwriteDeep = (params, obj2) => {\n for (const e in params) {\n const objProp2 = obj2[e];\n const paramsProp = params[e];\n if ((0, import_types.isObjectLike)(objProp2) && (0, import_types.isObjectLike)(paramsProp)) {\n overwriteDeep(objProp2, paramsProp);\n } else if (paramsProp !== void 0) {\n obj2[e] = paramsProp;\n }\n }\n return obj2;\n};\nconst mergeIfExisted = (a, b) => {\n if ((0, import_types.isObjectLike)(a) && (0, import_types.isObjectLike)(b))\n return deepMerge(a, b);\n return a || b;\n};\nconst mergeArray = (arr) => {\n return arr.reduce((a, c) => deepMerge(a, deepClone(c)), {});\n};\nconst mergeAndCloneIfArray = (obj2) => {\n return (0, import_types.isArray)(obj2) ? mergeArray(obj2) : deepClone(obj2);\n};\nconst flattenRecursive = (param, prop2, stack = []) => {\n const objectized = mergeAndCloneIfArray(param);\n stack.push(objectized);\n const extendOfExtend = objectized[prop2];\n if (extendOfExtend)\n flattenRecursive(extendOfExtend, prop2, stack);\n delete objectized[prop2];\n return stack;\n};\nconst isEqualDeep = (param, element) => {\n if (param === element)\n return true;\n if (!param || !element)\n return false;\n for (const prop2 in param) {\n const paramProp = param[prop2];\n const elementProp = element[prop2];\n if ((0, import_types.isObjectLike)(paramProp)) {\n const isEqual = isEqualDeep(paramProp, elementProp);\n if (!isEqual)\n return false;\n } else {\n const isEqual = paramProp === elementProp;\n if (!isEqual)\n return false;\n }\n }\n return true;\n};\n", "\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar function_exports = {};\n__export(function_exports, {\n debounce: () => debounce,\n memoize: () => memoize\n});\nmodule.exports = __toCommonJS(function_exports);\nconst debounce = (element, func, timeout = 300) => {\n let timer;\n return (...args) => {\n clearTimeout(timer);\n timer = setTimeout(() => {\n func.apply(element, args);\n }, timeout);\n };\n};\nconst memoize = (fn) => {\n const cache = {};\n return (...args) => {\n const n = args[0];\n if (n in cache) {\n return cache[n];\n } else {\n const result = fn(n);\n cache[n] = result;\n return result;\n }\n };\n};\n", "\"use strict\";\n", "\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar node_exports = {};\n__export(node_exports, {\n cleanWithNode: () => cleanWithNode,\n createID: () => createID,\n createSnapshotId: () => createSnapshotId\n});\nmodule.exports = __toCommonJS(node_exports);\nconst cleanWithNode = (extend) => delete extend.node && extend;\nconst createID = function() {\n let index = 0;\n function newId() {\n index++;\n return index;\n }\n return newId;\n}();\nconst createSnapshotId = createID;\n", "\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar log_exports = {};\n__export(log_exports, {\n logGroupIf: () => logGroupIf,\n logIf: () => logIf\n});\nmodule.exports = __toCommonJS(log_exports);\nconst logIf = (bool, ...arg) => {\n if (bool)\n arg.map((v) => console.log(v));\n};\nconst logGroupIf = (bool, key, ...arg) => {\n if (bool) {\n console.group(key);\n arg.map((v) => console.log(v));\n console.groupEnd(key);\n }\n};\n", "\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, \"default\"), secondTarget && __copyProps(secondTarget, mod, \"default\"));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar utils_exports = {};\nmodule.exports = __toCommonJS(utils_exports);\n__reExport(utils_exports, require(\"./types.js\"), module.exports);\n__reExport(utils_exports, require(\"./object.js\"), module.exports);\n__reExport(utils_exports, require(\"./function.js\"), module.exports);\n__reExport(utils_exports, require(\"./array.js\"), module.exports);\n__reExport(utils_exports, require(\"./node.js\"), module.exports);\n__reExport(utils_exports, require(\"./log.js\"), module.exports);\n", "'use strict'\n\nexport * from './factory.js'\nexport * from './utils'\nexport * from './set.js'\nexport * from './defaultConfig'\n", "'use strict'\n\nimport { deepClone, isDefined } from '@domql/utils'\nimport * as CONF from './defaultConfig'\n\nexport const CSS_VARS = {}\nexport const CONFIG = {\n verbose: false,\n useVariable: true,\n useReset: true,\n CSS_VARS,\n ...CONF\n}\n\nconst cachedConfig = deepClone(CONFIG)\n\nexport const FACTORY = {\n active: '0',\n 0: CONFIG\n}\n\nexport const activateConfig = (def) => {\n if (isDefined(def)) { FACTORY.active = def }\n return FACTORY[def || FACTORY.active]\n}\n\nexport const getActiveConfig = (def) => {\n if (isDefined(def) && !FACTORY[def]) {\n FACTORY[def] = deepClone(cachedConfig)\n return FACTORY[def]\n }\n return FACTORY[def || FACTORY.active]\n}\n\nexport const setActiveConfig = (def) => {\n return FACTORY.active = FACTORY[def]\n}\n", "'use strict'\n\nexport * from './sequence.js'\nexport * from './unit.js'\nexport * from './typography.js'\nexport * from './font.js'\nexport * from './font-family.js'\nexport * from './media.js'\nexport * from './spacing.js'\nexport * from './color.js'\nexport * from './theme.js'\nexport * from './icons.js'\nexport * from './timing.js'\nexport * from './document.js'\nexport * from './responsive.js'\nexport * from './cases.js'\nexport * from './animation.js'\nexport * from './svg.js'\n\nexport const RESET = {}\n", "'use strict'\n\nexport const SEQUENCE = {\n 'minor-second': 1.067,\n 'major-second': 1.125,\n 'minor-third': 1.2,\n 'major-third': 1.25,\n 'perfect-fourth': 1.333,\n 'augmented-fourth': 1.414,\n 'perfect-fifth': 1.5,\n 'minor-sixth': 1.6,\n phi: 1.618, // golden-ratio\n 'major-sixth': 1.667,\n 'square-root-3': 1.732, // theodorus\n 'minor-seventh': 1.778,\n 'major-seventh': 1.875,\n octave: 2,\n 'square-root-5': 2.23, // pythagoras\n 'major-tenth': 2.5,\n 'major-eleventh': 2.667,\n 'major-twelfth': 3,\n pi: 3.14, // archimedes\n 'double-octave': 4\n}\n", "'use strict'\n\nexport const UNIT = {\n default: 'em'\n}\n", "'use strict'\n\nimport { SEQUENCE } from './sequence.js'\n\nconst defaultProps = {\n browserDefault: 16,\n base: 16,\n type: 'font-size',\n ratio: SEQUENCE['minor-third'],\n range: [-3, +12],\n h1Matches: +6,\n lineHeight: 1.5,\n unit: 'em',\n templates: {},\n sequence: {},\n scales: {},\n vars: {}\n}\n\nexport const TYPOGRAPHY = defaultProps\n", "'use strict'\n\nvar defFont = { // eslint-disable-line\n name: '',\n url: '',\n fontStyle: '',\n fontWeight: 500,\n fontStretch: 'normal',\n fontOpticalSizing: 'auto'\n}\n\nexport const FONT = {}\n", "'use strict'\n\nexport const isString = arg => typeof arg === 'string'\n\nexport const isArray = arg => Array.isArray(arg)\n\nexport const isObject = arg => {\n if (arg === null) return false\n return (typeof arg === 'object') && (arg.constructor === Object)\n}\n\nexport const isObjectLike = arg => {\n if (arg === null) return false\n return (typeof arg === 'object')\n}\n\nexport const merge = (obj, original) => {\n for (const e in original) {\n const objProp = obj[e]\n const originalProp = original[e]\n if (objProp === undefined) {\n obj[e] = originalProp\n }\n }\n return obj\n}\n\nexport const deepMerge = (obj, obj2) => {\n for (const e in obj2) {\n const objProp = obj[e]\n const obj2Prop = obj2[e]\n if (objProp === undefined) {\n obj[e] = obj2Prop\n } else if (isObjectLike(objProp) && isObject(obj2Prop)) {\n deepMerge(objProp, obj2Prop)\n }\n }\n return obj\n}\n\nexport const arrayze = val => {\n if (isString(val)) return val.split(' ')\n if (isObject(val)) return Object.keys(val).map(v => val[v])\n if (isArray(val)) return val\n}\n\nexport const isFunction = arg => typeof arg === 'function'\n", "'use strict'\n\nimport { document, window } from '@domql/globals'\nconst ENV = process.env.NODE_ENV\n\nexport const colorStringToRgbaArray = color => {\n if (color === '') return\n if (color.toLowerCase() === 'transparent') return [0, 0, 0, 0]\n\n // convert #RGB and #RGBA to #RRGGBB and #RRGGBBAA\n if (color[0] === '#') {\n if (color.length < 7) {\n color = '#' + color[1] + color[1] + color[2] + color[2] + color[3] + color[3] + (color.length > 4 ? color[4] + color[4] : '')\n } return [parseInt(color.substr(1, 2), 16),\n parseInt(color.substr(3, 2), 16),\n parseInt(color.substr(5, 2), 16),\n color.length > 7 ? parseInt(color.substr(7, 2), 16) / 255 : 1]\n }\n\n // convert named colors\n if (color.indexOf('rgb') === -1) {\n if (document && window) {\n // intentionally use unknown tag to lower chances of css rule override with !important\n const elem = document.body.appendChild(document.createElement('fictum'))\n // this flag tested on chrome 59, ff 53, ie9, ie10, ie11, edge 14\n const flag = 'rgb(1, 2, 3)'\n elem.style.color = flag\n // color set failed - some monstrous css rule is probably taking over the color of our object\n if (elem.style.color !== flag) return\n elem.style.color = color\n if (elem.style.color === flag || elem.style.color === '') return // color parse failed\n color = window.getComputedStyle(elem).color\n document.body.removeChild(elem)\n } else console.warn('Color conversion failed, no document or window object found')\n }\n\n // convert 'rgb(R,G,B)' to 'rgb(R,G,B,A)' which looks awful but will pass the regxep below\n if (color.indexOf('rgb') === 0) {\n if (color.indexOf('rgba') === -1) color = `${color}, 1`\n return color.match(/[\\.\\d]+/g).map(a => +a) // eslint-disable-line\n }\n}\n\nexport const mixTwoColors = (colorA, colorB, range = 0.5) => {\n colorA = colorStringToRgbaArray(colorA)\n colorB = colorStringToRgbaArray(colorB)\n return mixTwoRgba(colorA, colorB, range)\n}\n\nexport const hexToRgb = (hex, alpha = 1) => {\n const [r, g, b] = hex.match(/\\w\\w/g).map(x => parseInt(x, 16))\n return `rgb(${r},${g},${b})`\n}\n\nexport const hexToRgbArray = (hex, alpha = 1) => {\n const [r, g, b] = hex.match(/\\w\\w/g).map(x => parseInt(x, 16))\n return [r, g, b]\n}\n\nexport const rgbToHex = (r, g, b) => {\n return '#' + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1)\n}\n\nexport const rgbArrayToHex = ([r, g, b]) => {\n return ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1)\n}\n\nexport const hexToRgba = (hex, alpha = 1) => {\n const [r, g, b] = hex.match(/\\w\\w/g).map(x => parseInt(x, 16))\n return `rgba(${r},${g},${b},${alpha})`\n}\n\nexport const mixTwoRgb = (colorA, colorB, range = 0.5) => {\n const arr = []\n for (let i = 0; i < 3; i++) {\n arr[i] = ~~(\n colorA[i] + (\n (colorB[i] - colorA[i]) * range\n )\n )\n }\n return `rgb(${arr})`\n}\n\nexport const changeLightness = (delta, hsl) => {\n const [hue, saturation, lightness] = hsl\n\n const newLightness = Math.max(\n 0,\n Math.min(100, lightness + parseFloat(delta))\n )\n\n return [hue, saturation, newLightness]\n}\n\nexport const rgbToHSL = (r, g, b) => {\n const a = Math.max(r, g, b); const n = a - Math.min(r, g, b); const f = (1 - Math.abs(a + a - n - 1))\n const h = n && ((a == r) ? (g - b) / n : ((a == g) ? 2 + (b - r) / n : 4 + (r - g) / n)) //eslint-disable-line\n return [60 * (h < 0 ? h + 6 : h), f ? n / f : 0, (a + a - n) / 2]\n}\n\nexport const hslToRgb = (h, s, l,\n a = s * Math.min(l, 1 - l),\n f = (n, k = (n + h / 30) % 12) => l - a * Math.max(\n Math.min(k - 3, 9 - k, 1), -1\n )\n) => [f(0), f(8), f(4)]\n\nexport const getColorShade = (col, amt) => {\n const num = parseInt(col, 16)\n\n let r = (num >> 16) + amt\n\n if (r > 255) r = 255\n else if (r < 0) r = 0\n\n let b = ((num >> 8) & 0x00FF) + amt\n\n if (b > 255) b = 255\n else if (b < 0) b = 0\n\n let g = (num & 0x0000FF) + amt\n\n if (g > 255) g = 255\n else if (g < 0) g = 0\n\n return (g | (b << 8) | (r << 16)).toString(16)\n}\n\nexport const mixTwoRgba = (colorA, colorB, range = 0.5) => {\n const arr = []\n for (let i = 0; i < 4; i++) {\n const round = (i === 3) ? x => x : Math.round\n arr[i] = round(\n (colorA[i] + (\n (colorB[i] - colorA[i]) * range\n ))\n )\n }\n return `rgba(${arr})`\n}\n\nexport const opacify = (color, opacity) => {\n const arr = colorStringToRgbaArray(color)\n if (!arr) {\n if (ENV === 'test' || ENV === 'development') console.warn(color + 'color is not rgba')\n return\n }\n arr[3] = opacity\n return `rgba(${arr})`\n}\n", "'use strict'\n\nexport const getDefaultOrFirstKey = (LIBRARY, key) => {\n if (LIBRARY[key]) return LIBRARY[key].value\n if (LIBRARY.default) return LIBRARY[LIBRARY.default].value\n const hasValue = Object.keys(LIBRARY)[0]\n return hasValue && LIBRARY[hasValue] && LIBRARY[hasValue].value\n}\n\nexport const getFontFormat = url => url.split(/[#?]/)[0].split('.').pop().trim()\n\nexport const setInCustomFontMedia = str => `@font-face { ${str} }`\n\nexport const setCustomFont = (name, url, weight) => `\n font-family: '${name}';\n font-style: normal;\n ${weight && `font-weight: ${weight};`}\n src: url('${url}') format('${getFontFormat(url)}');`\n\nexport const setCustomFontMedia = (name, url, weight) => `@font-face {\n ${setCustomFont(name, url, weight)}\n}`\n// src: url('${url}') format('${getFontFormat(url)}');\n\nexport const getFontFaceEach = (name, weights) => {\n const keys = Object.keys(weights)\n return keys.map(key => {\n const { url, fontWeight } = weights[key]\n return setCustomFont(name, url, fontWeight)\n })\n}\n\nexport const getFontFace = LIBRARY => {\n const keys = Object.keys(LIBRARY)\n return keys.map(key => getFontFaceEach(key, LIBRARY[key].value))\n}\n\nexport const getFontFaceEachString = (name, weights) => {\n const isArr = weights[0]\n if (isArr) return getFontFaceEach(name, weights).map(setInCustomFontMedia)\n return setCustomFontMedia(name, weights.url)\n}\n\nexport const getFontFaceString = LIBRARY => {\n const keys = Object.keys(LIBRARY)\n return keys.map(key => getFontFaceEachString(key, LIBRARY[key].value))\n}\n", "'use strict'\n\nimport { isString } from '@domql/utils'\nimport { toDashCase } from '@symbo.ls/utils'\nimport { getActiveConfig } from '../factory.js'\n\nexport const numToLetterMap = {\n '-6': 'U',\n '-5': 'V',\n '-4': 'W',\n '-3': 'X',\n '-2': 'Y',\n '-1': 'Z',\n 0: 'A',\n 1: 'B',\n 2: 'C',\n 3: 'D',\n 4: 'E',\n 5: 'F',\n 6: 'G',\n 7: 'H',\n 8: 'I',\n 9: 'J',\n 10: 'K',\n 11: 'L',\n 12: 'M',\n 13: 'N',\n 14: 'O',\n 15: 'P',\n 16: 'Q',\n 17: 'R',\n 18: 'S',\n 19: 'T'\n}\n\nconst setSequenceValue = (props, sequenceProps) => {\n const { key, variable, value, scaling, index } = props\n sequenceProps.sequence[key] = {\n key,\n decimal: ~~(value * 100) / 100,\n val: ~~(value),\n scaling,\n index,\n variable\n }\n sequenceProps.scales[key] = scaling\n sequenceProps.vars[variable] = scaling + sequenceProps.unit\n}\n\nexport const generateSubSequence = (props, sequenceProps) => {\n const { key, base, value, ratio, variable, index } = props\n\n const next = value * ratio\n const diff = next - value\n const smallscale = diff / 1.618\n\n const valueRounded = ~~(value)\n const nextRounded = ~~(next)\n const diffRounded = nextRounded - valueRounded\n\n let arr = []\n const first = next - smallscale\n const second = value + smallscale\n const middle = (first + second) / 2\n if (diffRounded > 16) arr = [first, middle, second]\n else arr = [first, second]\n\n arr.map((v, k) => {\n const scaling = ~~(v / base * 1000) / 1000\n const newVar = variable + (k + 1)\n\n const props = {\n key: key + (k + 1),\n variable: newVar,\n value: v,\n scaling,\n index: index + (k + 1) / 10\n }\n\n return setSequenceValue(props, sequenceProps)\n })\n}\n\nconst switchSequenceOnNegative = (key, base, ratio) => {\n // const values = Object.values(SEQUENCE)\n // const index = values.indexOf(ratio)\n // const diffRatio = ratio / SPACING.ratio\n // const total = values[values.length - 1] - values[0]\n // const avg = total / 2\n // const diff = avg - ratio\n // const scale = total / ratio\n // const finalDiff = avg + avg / diffRatio\n\n // if (key < 0) return base * Math.pow(avg, key)\n return base * Math.pow(ratio, key)\n}\n\nexport const generateSequence = (sequenceProps) => {\n const { type, base, ratio, range, subSequence } = sequenceProps\n const n = Math.abs(range[0]) + Math.abs(range[1])\n const prefix = '--' + (type && type.replace('.', '-')) + '-'\n\n for (let i = 0; i <= n; i++) {\n const key = range[1] - i\n const letterKey = numToLetterMap[key]\n const value = switchSequenceOnNegative(key, base, ratio)\n const scaling = ~~(value / base * 100) / 100\n const variable = prefix + letterKey\n\n const props = {\n key: letterKey,\n variable,\n value,\n base,\n scaling,\n ratio,\n index: key\n }\n\n setSequenceValue(props, sequenceProps)\n\n if (subSequence) generateSubSequence(props, sequenceProps)\n }\n return sequenceProps\n}\n\nexport const getSequenceValue = (value = 'A', sequenceProps) => {\n const CONFIG = getActiveConfig()\n const { UNIT } = CONFIG\n\n const {\n sequence,\n unit = UNIT.default,\n useVariable\n } = sequenceProps\n\n if (isString(value) && value.slice(0, 2) === '--') return `var(${value})`\n\n const prefix = `--${toDashCase(sequenceProps.type.replace('.', '-'))}-`\n\n const startsWithDashOrLetterRegex = /^-?[a-zA-Z]/i\n const startsWithDashOrLetter = startsWithDashOrLetterRegex.test(value)\n\n if (\n value === 'none' ||\n value === 'auto' ||\n value === 'unset' ||\n value === 'inherit' ||\n value === 'fit-content' ||\n value === 'min-content' ||\n value === 'max-content' ||\n value.includes('calc') ||\n !startsWithDashOrLetter\n ) return value\n\n const letterVal = value.toUpperCase()\n const isNegative = letterVal.slice(0, 1) === '-' ? '-' : ''\n let absValue = isNegative ? letterVal.slice(1) : letterVal\n\n let mediaName = ''\n if (absValue.includes('-')) {\n mediaName = '-' + absValue.split('-')[1].toLowerCase()\n absValue = absValue.split('-')[0]\n }\n\n const varValue = v => `var(${prefix}${v}${mediaName})`\n if (absValue.includes('+')) {\n const args = absValue.split('+')\n const [first, second] = args\n const joint = `${varValue(first)} + ${varValue(second)}`\n return isNegative ? `calc((${joint}) * -1)` : `calc(${joint})`\n } else if (absValue.includes('-')) {\n const args = absValue.split('-')\n const [first, second] = args\n const joint = `${varValue(first)} - ${varValue(second)}`\n return isNegative ? `calc((${joint}) * -1)` : `calc(${joint})`\n }\n\n // if subsequence is not set but value is applied\n if (!sequence[absValue] && absValue.length === 2) {\n if (CONFIG.verbose) console.warn(absValue, '- value is not found because `subSequence` is set to false')\n absValue = absValue.slice(0, 1)\n }\n\n if (useVariable || CONFIG.useVariable) {\n const varValue = `var(${prefix}${absValue}${mediaName})`\n return isNegative ? `calc(${varValue} * -1)` : varValue\n }\n\n const sequenceItem = sequence ? sequence[absValue] : null\n if (!sequenceItem) return console.warn('can\\'t find', sequence, absValue)\n\n if (unit === 'ms' || unit === 's') {\n return isNegative + sequenceItem.val + unit\n }\n\n return isNegative + sequenceItem.scaling + unit\n}\n\nexport const getSequenceValuePropertyPair = (value, propertyName, sequenceProps) => {\n if (typeof value !== 'string') {\n console.warn(propertyName, value, 'is not a string')\n return ({})\n }\n if (value === '-' || value === '') return ({})\n return { [propertyName]: getSequenceValue(value, sequenceProps) }\n}\n\nexport const findHeadingLetter = (h1Matches, index) => numToLetterMap[h1Matches - index]\n\nexport const findHeadings = propertyNames => {\n const { h1Matches, sequence } = propertyNames\n return new Array(6).fill(null).map((_, i) => {\n const findLetter = findHeadingLetter(h1Matches, i)\n return sequence[findLetter]\n })\n}\n", "'use strict'\n\nimport { isObject, isArray } from '@domql/utils'\n\nexport const findClosestNumber = (number, arr) => {\n return (isArray(arr) ? arr : Object.values(arr)).reduce((prev, curr) => {\n return (Math.abs(curr - number) < Math.abs(prev - number) ? curr : prev)\n })\n}\n\nexport const findClosestNumberInFactory = (val, factory) => {\n val = parseFloat(val)\n if (isObject(factory)) factory = Object.values(factory)\n return findClosestNumber(val, factory)\n}\n", "'use strict'\n\nexport * from './navigation'\nexport * from './scaling'\nexport * from './codify'\nexport * from './date'\n\nexport const copyStringToClipboard = str => {\n var el = document.createElement('textarea')\n el.value = str\n el.setAttribute('readonly', '')\n el.style = { position: 'absolute', left: '-9999px' }\n document.body.appendChild(el)\n el.select()\n document.execCommand('copy')\n document.body.removeChild(el)\n}\n\nexport const toCamelCase = str => {\n return str.replace(/(?:^\\w|[A-Z]|\\b\\w)/g, function (word, index) {\n return index === 0 ? word.toLowerCase() : word.toUpperCase()\n }).replaceAll(/\\s+/g, '')\n}\n\nexport const toTitleCase = str => str.replace(\n /\\w\\S*/g, txt => {\n return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase()\n }\n)\n\nexport const toDashCase = val => val\n .replace(/[A-Z]/g, (match, offset) => (offset > 0 ? '-' : '') + match.toLowerCase())\n .replace('.', '-')\n\nexport const toDescriptionCase = str => {\n const result = str.replace(/([A-Z])/g, ' $1')\n return result.charAt(0).toUpperCase() + result.slice(1)\n}\n", "'use strict'\n\nimport { getActiveConfig } from '../factory.js'\nimport { isObjectLike } from '@domql/utils'\n\nconst ENV = process.env.NODE_ENV // eslint-disable-line\n\nexport const setVariables = (result, key) => {\n const CONFIG = getActiveConfig()\n const { CSS_VARS } = CONFIG\n if (isObjectLike(result.value)) {\n // for (const key in result.value) {\n // }\n } else {\n CSS_VARS[result.var] = result.value\n }\n}\n\nexport const applySequenceVars = (props, mediaName, options = {}) => {\n const CONFIG = getActiveConfig()\n const { UNIT, MEDIA, TIMING, CSS_VARS } = CONFIG\n\n const unit = props.unit || UNIT.default\n const { sequence, scales } = props\n\n for (const key in sequence) {\n const item = sequence[key]\n const value = (props.type === TIMING.type ? sequence[key].val : scales[key]) + unit\n\n if (mediaName) {\n const query = MEDIA[mediaName]\n if (!query) {\n if (CONFIG.verbose) console.warn('Can\\'t find query ', query)\n }\n let underMediaQuery = CSS_VARS[`@media ${query}`]\n if (!underMediaQuery) underMediaQuery = CSS_VARS[`@media ${query}`] = {}\n underMediaQuery[item.variable] = `var(${item.variable + '-' + mediaName})`\n CSS_VARS[item.variable + '-' + mediaName] = value\n } else {\n if (options.useDefault === false) {\n CSS_VARS[item.variable] = value\n } else {\n CSS_VARS[item.variable + '-default'] = value\n CSS_VARS[item.variable] = `var(${item.variable + '-default'})`\n }\n }\n }\n}\n", "'use strict'\n\nimport { isString } from '@domql/utils'\n\nexport const generateSprite = (icons) => {\n let sprite =\n '<svg aria-hidden=\"true\" width=\"0\" height=\"0\" style=\"position:absolute\">'\n\n for (let key in icons) {\n sprite += icons[key]\n }\n\n sprite += \"</svg>\"\n\n return sprite\n}\n\nconst parseRootAttributes = (htmlString) => {\n if (!isString(htmlString)) {\n return console.warn(`parseRootAttributes: ${htmlString} is not a string`)\n }\n \n let match = htmlString.match(/<svg\\s+(.*?)>/);\n if (!match || !match[1]) {\n return {};\n }\n\n let attrString = match[1];\n let attrs = attrString.match(/(\\S+)=[\"']?((?:.(?![\"']?\\s+(?:\\S+)=|\\s*\\/?[>\"']))+.)[\"']?/gm);\n return attrs.reduce((acc, attr) => {\n let [key, value] = attr.split(\"=\");\n acc[key] = value.replace(/['\"]/g, \"\");\n return acc;\n }, {});\n}\n\nexport const convertSvgToSymbol = (key, code) => {\n const extractAttrs = parseRootAttributes(code)\n const { width, height } = extractAttrs\n \n const viewBox = extractAttrs.viewBox || `0 0 ${width || 24} ${height || 24}`\n const xmlns = 'http://www.w3.org/2000/svg'\n\n let symbol = code.replace(\"<svg\", \n `<symbol id=\"${key}\" xmlns=\"${xmlns}\" viewBox=\"${viewBox}\"`\n )\n symbol = symbol.replace(/width=\"[^\\\"]*/, \"\")\n symbol = symbol.replace(/height=\"[^\\\"]*/, \"\")\n symbol = symbol.replace(\"</svg\", \"</symbol\")\n return symbol\n}\n", "'use strict'\n\nimport { getFontFace } from '../utils'\n\nvar defaultFont = { // eslint-disable-line\n name: '',\n family: '',\n type: ''\n}\n\nexport const FONT_FAMILY = {}\nexport const FONT_FAMILY_TYPES = {\n 'sans-serif': 'Helvetica, Arial, sans-serif, --system-default',\n serif: 'Times New Roman, Georgia, serif, --system-default',\n monospace: 'Courier New, monospace, --system-default'\n}\nexport const FONT_FACE = getFontFace(FONT_FAMILY)\n", "'use strict'\n\nexport const MEDIA = {\n tv: '(min-width: 2780px)',\n\n screenL: '(max-width: 1920px)',\n screenM: '(max-width: 1680px)',\n screenS: '(max-width: 1440px)',\n tabletL: '(max-width: 1366px)',\n tabletM: '(max-width: 1280px)',\n tabletS: '(max-width: 1024px)',\n mobileL: '(max-width: 768px)',\n mobileM: '(max-width: 560px)',\n mobileS: '(max-width: 480px)',\n mobileXS: '(max-width: 375px)',\n\n light: '(prefers-color-scheme: light)',\n dark: '(prefers-color-scheme: dark)',\n\n print: 'print'\n}\n", "'use strict'\n\nimport { SEQUENCE, TYPOGRAPHY } from '.'\n\nconst defaultProps = {\n base: TYPOGRAPHY.base,\n type: 'spacing',\n ratio: SEQUENCE.phi,\n range: [-5, +15],\n subSequence: true,\n unit: 'em',\n sequence: {},\n scales: {},\n vars: {}\n}\n\nexport const SPACING = defaultProps\n", "'use strict'\n\nvar proto = { // eslint-disable-line\n name: '',\n value: '',\n themes: {}\n}\n\nexport const COLOR = {}\nexport const GRADIENT = {}\n", "'use strict'\n\nconst themeA = { // eslint-disable-line no-unused-vars\n text: 'blue',\n background: 'white',\n border: 'black', // .opacity(0.2),\n active: {},\n helpers: [],\n themes: {},\n inverse: {} // schemeAInverse\n}\n\nexport const THEME = {}\n", "'use strict'\n\nexport const ICONS = {}\n", "'use strict'\n\nimport { SEQUENCE } from '.'\n\nconst defaultProps = {\n default: 150,\n base: 150,\n type: 'timing',\n ratio: SEQUENCE['perfect-fourth'],\n range: [-3, +12],\n unit: 'ms',\n sequence: {},\n scales: {},\n vars: {}\n}\n\nexport const TIMING = defaultProps\n", "'use strict'\n\nexport const DOCUMENT = {}\n", "'use strict'\n\nexport const BREAKPOINTS = {\n screenL: 1920,\n screenM: 1680,\n screenS: 1440,\n tabletL: 1366,\n tabletM: 1280,\n tabletS: 1024,\n mobileL: 768,\n mobileM: 560,\n mobileS: 480,\n mobileXS: 375\n}\n\nexport const DEVICES = {\n screenL: [1920, 1024],\n screenM: [1680, 1024],\n screenS: [1440, 978],\n tabletL: [1366, 926],\n tabletM: [1280, 768],\n tabletS: [1024, 768],\n mobileL: [768, 375],\n mobileM: [560, 768],\n mobileS: [480, 768],\n mobileXS: [375, 768]\n}\n", "'use strict'\n\nexport const CASES = {}\n", "'use strict'\n\nexport const ANIMATION = {}\n", "'use strict'\n\nexport const SVG = {}\nexport const SVG_DATA = {}\n", "'use strict'\n\nimport { getActiveConfig } from '../factory.js'\nimport { isObject, isArray, isString } from '@domql/utils'\n\nimport {\n colorStringToRgbaArray,\n rgbToHSL,\n hexToRgbArray,\n rgbArrayToHex,\n hslToRgb,\n getColorShade\n} from '../utils'\n\nexport const getColor = (value, key) => {\n const CONFIG = getActiveConfig()\n if (!isString(value)) {\n if (CONFIG.verbose) console.warn(value, '- type for color is not valid')\n return\n }\n\n if (value.slice(0, 2) === '--') return `var(${value})`\n\n if (key && value[key]) value = value[key]\n const [name, alpha, tone] = isArray(value) ? value : value.split(' ')\n const { COLOR, GRADIENT } = CONFIG\n\n let val = (COLOR[name] || GRADIENT[name])\n\n if (!val) {\n if (CONFIG.verbose) console.warn('Can\\'t find color ', name)\n return value\n }\n\n if (key) {\n if (val[key]) val = val[key]\n else if (CONFIG.verbose) console.warn(value, ' - does not have ', key)\n }\n\n // TODO: support variables\n // if (alpha) return `rgba(var(${val[shade || ''].var}), ${modifier})`\n\n let rgb = val.rgb\n if (rgb) {\n if (tone) {\n if (!val[tone]) {\n const toHex = rgbArrayToHex(rgb.split(', ').map(v => parseFloat(v)))\n if (tone.slice(0, 1) === '-' || tone.slice(0, 1) === '+') {\n rgb = hexToRgbArray(getColorShade(toHex, parseFloat(tone))).join(', ')\n } else {\n const [r, g, b] = [...rgb.split(', ').map(v => parseInt(v))]\n const hsl = rgbToHSL(r, g, b)\n const [h, s, l] = hsl // eslint-disable-line\n const newRgb = hslToRgb(h, s, parseFloat(tone) / 100 * 255)\n rgb = newRgb\n }\n val[tone] = { rgb, var: `${val.var}-${tone}` }\n } else rgb = val[tone].rgb\n }\n if (alpha) return `rgba(${rgb}, ${alpha})`\n return CONFIG.useVariable ? `var(${val.var})` : `rgb(${rgb})`\n } else return CONFIG.useVariable ? `var(${val.var})` : val.value\n}\n\nexport const getMediaColor = (value, property, globalTheme) => {\n const CONFIG = getActiveConfig()\n if (!globalTheme) globalTheme = CONFIG.globalTheme\n if (!isString(value)) {\n if (CONFIG.verbose) console.warn(value, '- type for color is not valid')\n return\n }\n\n if (value.slice(0, 2) === '--') return { [property]: `var(${value})` }\n\n const [name] = isArray(value) ? value : value.split(' ')\n\n const { COLOR, GRADIENT } = CONFIG\n const val = COLOR[name] || GRADIENT[name]\n const isObj = isObject(val)\n\n if (isObj && val.value) return { [property]: getColor(value, globalTheme) }\n else if (isObj) {\n if (globalTheme) return { [property]: getColor(value, `@${globalTheme}`) }\n else {\n const obj = {}\n for (const mediaName in val) {\n const query = CONFIG.MEDIA[mediaName.slice(1)]\n const media = `@media screen and ${query}`\n obj[media] = { [property]: getColor(value, mediaName) }\n }\n return obj\n }\n } else {\n if (CONFIG.verbose) console.warn('Can\\'t find color', value)\n return { [property]: value }\n }\n}\n\nexport const setColor = (val, key, suffix) => {\n const CONFIG = getActiveConfig()\n\n if (isString(val) && val.slice(0, 2) === '--') val = getColor(val.slice(2))\n\n if (isArray(val)) {\n return {\n '@light': setColor(val[0], key, 'light'),\n '@dark': setColor(val[1], key, 'dark')\n }\n }\n\n if (isObject(val)) {\n const obj = {}\n for (const variant in val) obj[variant] = setColor(val[variant], key, variant.slice(0, 1) === '@' ? variant.slice(1) : variant)\n return obj\n }\n\n const CSSVar = `--color-${key}` + (suffix ? `-${suffix}` : '')\n const [r, g, b, a = 1] = colorStringToRgbaArray(val.value || val)\n const alpha = parseFloat(a.toFixed(2))\n const rgb = `${r}, ${g}, ${b}`\n const value = `rgba(${rgb}, ${alpha})`\n\n if (CONFIG.useVariable) { CONFIG.CSS_VARS[CSSVar] = value }\n\n return {\n var: CSSVar,\n rgb,\n alpha,\n value\n }\n}\n\nexport const setGradient = (val, key, suffix) => {\n const CONFIG = getActiveConfig()\n if (isString(val) && val.slice(0, 2) === '--') val = getColor(val.slice(2))\n\n if (isArray(val)) {\n return {\n '@light': setGradient(val[0], key, 'light'),\n '@dark': setGradient(val[0], key, 'dark')\n }\n }\n\n if (isObject(val)) {\n const obj = {}\n for (const variant in val) obj[variant] = setGradient(val[variant], key, variant.slice(0, 1) === '@' ? variant.slice(1) : variant)\n return obj\n }\n\n const CSSVar = `--gradient-${key}` + (suffix ? `-${suffix}` : '')\n\n if (CONFIG.useVariable) {\n CONFIG.CSS_VARS[CSSVar] = val.value || val\n }\n\n return {\n var: CSSVar,\n value: val.value || val\n }\n}\n", "'use strict'\n\nimport { getColor } from './color'\nimport { getActiveConfig } from '../factory.js'\n\nimport {\n isObject,\n isString,\n isObjectLike,\n isArray\n} from '@domql/utils'\n\nconst ENV = process.env.NODE_ENV // eslint-disable-line\n\nconst setThemeValue = theme => {\n const value = {}\n const { state, media, helpers, ...rest } = theme\n const keys = Object.keys(rest)\n keys.map(key => {\n const conditions = ['color', 'Color', 'background', 'border']\n const isColor = conditions.some(k => key.includes(k))\n return (value[key] = isColor ? getColor(theme[key]) : theme[key])\n })\n return value\n}\n\nconst getThemeValue = theme => {\n if (theme.value) return theme.value\n theme.value = setThemeValue(theme)\n return theme.value\n}\n\nexport const getTheme = (value, modifier) => {\n const CONFIG = getActiveConfig()\n if (CONFIG.useVariable) return getMediaTheme(value, modifier)\n const { THEME } = CONFIG\n\n if (isString(value)) {\n const [theme, subtheme] = value.split(' ')\n const isOurTheme = THEME[theme]\n if (isOurTheme) {\n if (!subtheme && !modifier) return getThemeValue(isOurTheme)\n value = [theme, subtheme || modifier]\n }\n }\n\n if (isObjectLike(value) && value[1]) {\n const themeName = value[0]\n const subThemeName = value[1]\n const { helpers, media, state } = THEME[themeName]\n\n if (media && media[subThemeName]) return getThemeValue(media[subThemeName])\n if (helpers && helpers[subThemeName]) return getThemeValue(helpers[subThemeName])\n if (state && state[subThemeName]) return getThemeValue(state[subThemeName])\n } else if (isObject(value)) return setThemeValue(value)\n}\n\nconst setInverseTheme = (theme, variant, value) => {\n if (isObject(variant)) {\n theme.variants.inverse.value = setThemeValue(variant)\n } else if (variant === true) {\n const { color, background } = value\n theme.variants.inverse = {\n value: {\n color: background,\n background: color\n }\n }\n }\n}\n\nconst setPseudo = (theme, key, variant, themeValue) => {\n const result = getTheme(variant)\n themeValue[`&:${key}`] = result\n if (isObject(variant) && !variant.value) variant.value = result\n}\n\nconst setSelectors = (theme, value) => {\n const { state } = theme\n if (!state) return\n const keys = Object.keys(state)\n keys.map(key => {\n const variant = state[key]\n setPseudo(theme, key, variant, value)\n return theme\n })\n return theme\n}\n\nconst setPrefersScheme = (theme, key, variant, themeValue) => {\n const result = getTheme(variant)\n themeValue[`@media (prefers-color-scheme: ${key})`] = result\n if (isObject(variant) && !variant.value) variant.value = result\n}\n\nconst setMedia = (theme, value) => {\n const { media } = theme\n if (!media) return\n const keys = Object.keys(media)\n keys.map(key => {\n const variant = media[key]\n if (key === 'dark' || key === 'light') setPrefersScheme(theme, key, variant, value)\n if (key === 'inverse') setInverseTheme(theme, variant, value)\n return theme\n })\n return theme\n}\n\nconst setHelpers = (theme, value) => {\n const CONFIG = getActiveConfig()\n const { helpers } = theme\n if (!helpers) return\n const keys = Object.keys(helpers)\n keys.map(key => {\n const helper = helpers[key]\n if (isString(helper)) helpers[key] = CONFIG.THEME[helper]\n else getThemeValue(helpers[key])\n return theme\n })\n return theme\n}\n\nexport const setTheme = (val, key) => {\n const CONFIG = getActiveConfig()\n if (CONFIG.useVariable) return setMediaTheme(val, key)\n\n const { state, media, helpers } = val\n const value = setThemeValue(val, key)\n const CSSvar = `--theme-${key}`\n\n setSelectors(val, value)\n setMedia(val, value)\n setHelpers(val, value)\n\n return { var: CSSvar, value, state, media, helpers }\n}\n\nconst keySetters = { // eslint-disable-line\n '@': (theme, value) => setMedia(theme, value),\n ':': (theme, value) => setSelectors(theme, value),\n '.': (theme, value) => setHelpers(theme, value)\n}\n\nexport const setMediaTheme = (val, key, suffix, prefers) => {\n const CONFIG = getActiveConfig()\n const { CSS_VARS } = CONFIG\n const theme = { value: val }\n\n if (isObjectLike(val)) {\n for (const param in val) {\n const symb = param.slice(0, 1)\n const value = val[param]\n if (symb === '@' || symb === ':' || symb === '.') {\n const hasPrefers = symb === '@' && param\n theme[param] = setMediaTheme(value, key, param, prefers || hasPrefers)\n } else {\n const color = getColor(value, prefers)\n const metaSuffixes = [...new Set([prefers, suffix].filter(v => v).map(v => v.slice(1)))]\n const varmetaSuffixName = metaSuffixes.length ? '-' + metaSuffixes.join('-') : ''\n const CSSVar = `--theme-${key}${varmetaSuffixName}-${param}`\n if (CONFIG.useVariable) {\n CSS_VARS[CSSVar] = color\n theme[param] = `var(${CSSVar})`\n } else {\n theme[param] = color\n }\n theme[`.${param}`] = { [param]: theme[param] }\n }\n }\n\n if (theme['background'] || theme['color'] || theme['backgroundColor']) {\n theme['.inversed'] = {\n color: theme['background'] || theme['backgroundColor'],\n background: theme['color']\n }\n }\n }\n\n if (isString(val) && val.slice(0, 2) === '--') {\n const { THEME } = CONFIG\n const value = THEME[val.slice(2)]\n const getReferenced = getMediaTheme(value, prefers)\n return getReferenced\n }\n\n return theme\n}\n\nconst recursiveTheme = val => {\n const CONFIG = getActiveConfig()\n const obj = {}\n for (const param in val) {\n const symb = param.slice(0, 1)\n if (isObjectLike(val[param])) {\n if (symb === '@') {\n const query = CONFIG.MEDIA[param.slice(1)]\n const media = `@media screen and ${query}`\n obj[media] = recursiveTheme(val[param])\n } else if (symb === ':') {\n obj[`&${param}`] = recursiveTheme(val[param])\n }\n } else obj[param] = val[param]\n }\n return obj\n}\n\nconst findModifierFromArray = (val, modifierArray) => {\n const currentMod = modifierArray.shift()\n if (val[currentMod]) return findModifierFromArray(val[currentMod], modifierArray)\n return val\n}\n\nconst findModifier = (val, modifier) => {\n if (isArray(modifier)) return findModifierFromArray(val, modifier)\n else if (isString(modifier) && val[modifier]) return val[modifier]\n else return val\n}\n\nconst checkForReference = (val, callback) => {\n if (isString(val) && val.slice(0, 2) === '--') return getMediaTheme(val.slice(2))\n return val\n}\n\nconst checkThemeReference = (val) => checkForReference(val, checkThemeReference) // eslint-disable-line\n\nexport const getMediaTheme = (val, mod) => {\n const CONFIG = getActiveConfig()\n if (isString(val) && val.slice(0, 2) === '--') val = getMediaTheme(val.slice(2))\n\n if (!val || !isString(val)) {\n if (CONFIG.verbose) console.warn(val, '- theme is not string')\n return\n }\n\n const [name, ...modifier] = isArray(val) ? val : val.split(' ')\n let value = CONFIG.THEME[name]\n if (value && (modifier || mod)) {\n value = findModifier(value, modifier.length ? modifier : mod)\n }\n\n const r = recursiveTheme(value)\n return r\n}\n", "'use strict'\n\nimport { isObject } from '@domql/utils'\nimport { getActiveConfig } from '../factory.js'\n\nimport {\n arrayze,\n getDefaultOrFirstKey,\n getFontFaceEach,\n setCustomFontMedia\n} from '../utils'\n\n// const ENV = process.env.NODE_ENV\n\nexport const setFont = (val, key) => {\n const CSSvar = `--font-${key}`\n const fontFace = val[0]\n ? getFontFaceEach(key, val)\n : setCustomFontMedia(key, val.url)\n return { var: CSSvar, value: val, fontFace }\n}\n\nexport const getFontFamily = (key, factory) => {\n const CONFIG = getActiveConfig()\n const { FONT_FAMILY } = CONFIG\n return getDefaultOrFirstKey(factory || FONT_FAMILY, key)\n}\n\nexport const setFontFamily = (val, key) => {\n const CONFIG = getActiveConfig()\n const { FONT_FAMILY, FONT_FAMILY_TYPES } = CONFIG\n let { value, type } = val\n if (val.isDefault) FONT_FAMILY.default = key\n\n if (isObject(value)) value = arrayze(value)\n\n const CSSvar = `--font-family-${key}`\n const str = `${value.join(', ')}, ${FONT_FAMILY_TYPES[type]}`\n return { var: CSSvar, value: str, arr: value, type }\n}\n", "'use strict'\n\nimport { getActiveConfig } from '../factory.js'\n\nimport {\n applySequenceVars,\n findHeadings,\n generateSequence,\n getSequenceValuePropertyPair,\n merge\n} from '../utils'\n\nexport const runThroughMedia = props => {\n const CONFIG = getActiveConfig()\n const { TYPOGRAPHY, MEDIA } = CONFIG\n\n for (const prop in props) {\n const mediaProps = props[prop]\n if (prop.slice(0, 1) === '@') {\n const { type, base, ratio, range, subSequence, h1Matches, unit } = props\n\n merge(mediaProps, {\n type,\n base,\n ratio,\n range,\n subSequence,\n h1Matches,\n unit,\n sequence: {},\n scales: {},\n templates: {},\n vars: {}\n })\n\n generateSequence(mediaProps)\n\n const mediaName = prop.slice(1)\n applySequenceVars(mediaProps, mediaName)\n\n const query = MEDIA[mediaName]\n TYPOGRAPHY.templates[`@media screen and ${query}`] = {\n fontSize: mediaProps.base / TYPOGRAPHY.browserDefault + unit\n }\n }\n }\n}\n\nexport const applyHeadings = (props) => {\n const CONFIG = getActiveConfig()\n if (props.h1Matches) {\n const unit = props.unit\n const HEADINGS = findHeadings(props)\n const { templates } = props\n for (const k in HEADINGS) {\n const headerName = `h${parseInt(k) + 1}`\n const headerStyle = templates[headerName]\n templates[headerName] = {\n fontSize: CONFIG.useVariable ? `var(${HEADINGS[k].variable})` : `${HEADINGS[k].scaling}${unit}`,\n margin: headerStyle ? headerStyle.margin : 0,\n lineHeight: headerStyle ? headerStyle.lineHeight : props.lineHeight,\n letterSpacing: headerStyle ? headerStyle.letterSpacing : props.letterSpacing,\n fontWeight: headerStyle ? headerStyle.fontWeight : 900 - (k * 100)\n }\n }\n }\n}\n\nexport const applyTypographySequence = () => {\n const CONFIG = getActiveConfig()\n const { TYPOGRAPHY } = CONFIG\n\n generateSequence(TYPOGRAPHY)\n applyHeadings(TYPOGRAPHY)\n applySequenceVars(TYPOGRAPHY)\n runThroughMedia(TYPOGRAPHY)\n}\n\nexport const getFontSizeByKey = value => {\n const CONFIG = getActiveConfig()\n const { TYPOGRAPHY } = CONFIG\n return getSequenceValuePropertyPair(\n value,\n 'fontSize',\n TYPOGRAPHY\n )\n}\n", "'use strict'\n\nimport { getActiveConfig } from '../factory.js'\n\nimport { isString } from '@domql/utils'\nimport {\n applySequenceVars,\n arrayze,\n generateSequence,\n getSequenceValuePropertyPair,\n merge\n} from '../utils'\n\nconst runThroughMedia = sequenceProps => {\n for (const prop in sequenceProps) {\n const mediaProps = sequenceProps[prop]\n if (prop.slice(0, 1) === '@') {\n const { type, base, ratio, range, subSequence, h1Matches, unit } = sequenceProps\n\n merge(mediaProps, {\n type,\n base,\n ratio,\n range,\n subSequence,\n h1Matches,\n unit,\n sequence: {},\n scales: {},\n templates: {},\n vars: {}\n })\n\n generateSequence(mediaProps)\n\n const mediaName = prop.slice(1)\n applySequenceVars(mediaProps, mediaName)\n }\n }\n}\n\nexport const applySpacingSequence = () => {\n const CONFIG = getActiveConfig()\n const { SPACING } = CONFIG\n generateSequence(SPACING)\n applySequenceVars(SPACING)\n runThroughMedia(SPACING)\n}\n\nconst getSequence = (sequenceProps) => {\n const CONFIG = getActiveConfig()\n const { SPACING } = CONFIG\n if (!sequenceProps) return SPACING\n const hasGenerated = Object.keys(sequenceProps.sequence).length > 0\n return hasGenerated ? sequenceProps : generateSequence(sequenceProps)\n}\n\nexport const getSpacingByKey = (\n value,\n propertyName = 'padding',\n sequenceProps\n) => {\n const sequence = getSequence(sequenceProps)\n\n const stack = arrayze(value)\n if (!stack) return\n\n if (isString(value) && value.includes('calc')) {\n return { [propertyName]: value }\n }\n\n if (stack.length > 1) {\n let suffix = ''\n if (propertyName === 'borderWidth') {\n propertyName = 'border'\n suffix = 'Width'\n }\n\n const directions = {\n 2: ['Block', 'Inline'],\n 3: ['BlockStart', 'Inline', 'BlockEnd'],\n 4: ['BlockStart', 'InlineEnd', 'BlockEnd', 'InlineStart']\n }\n\n const wrapSequenceValueByDirection = (direction, i) => getSequenceValuePropertyPair(\n stack[i],\n propertyName + direction + suffix,\n sequence\n )\n\n return directions[stack.length].map((dir, key) => wrapSequenceValueByDirection(dir, key))\n }\n\n return getSequenceValuePropertyPair(\n value,\n propertyName,\n sequence\n )\n}\n\nexport const getSpacingBasedOnRatio = (props, propertyName, val) => {\n const CONFIG = getActiveConfig()\n const { SPACING } = CONFIG\n\n const { spacingRatio, unit } = props\n const value = val || props[propertyName]\n\n if (spacingRatio) {\n let sequenceProps = SPACING[spacingRatio]\n\n if (!sequenceProps) {\n const { type, base, range, subSequence } = SPACING\n\n sequenceProps = SPACING[spacingRatio] = merge({\n ratio: spacingRatio,\n type: type + '-' + spacingRatio,\n unit,\n sequence: {},\n scales: {},\n templates: {},\n vars: {}\n }, {\n base,\n range,\n subSequence,\n ratio: SPACING.ratio,\n unit: SPACING.unit\n })\n }\n\n applySequenceVars(sequenceProps, null, { useDefault: false })\n\n return getSpacingByKey(value, propertyName, sequenceProps)\n }\n return getSpacingByKey(value, propertyName)\n}\n", "'use strict'\n\nimport { toCamelCase } from '@symbo.ls/utils'\nimport { getActiveConfig } from '../factory.js'\nimport {\n applySequenceVars,\n generateSequence,\n getSequenceValuePropertyPair\n} from '../utils'\n\nexport const applyTimingSequence = () => {\n const CONFIG = getActiveConfig()\n const { TIMING } = CONFIG\n generateSequence(TIMING)\n applySequenceVars(TIMING)\n}\n\nexport const getTimingFunction = value => {\n const CONFIG = getActiveConfig()\n const { TIMING } = CONFIG\n return TIMING[value] || TIMING[toCamelCase(value)] || value\n}\n\nexport const getTimingByKey = (value, property = 'timing') => {\n const CONFIG = getActiveConfig()\n const { TIMING } = CONFIG\n return getSequenceValuePropertyPair(\n value,\n property,\n TIMING\n )\n}\n", "'use strict'\n\nimport { getActiveConfig } from '../factory.js'\nimport { getDefaultOrFirstKey, merge } from '../utils'\n\nexport const applyDocument = () => {\n const CONFIG = getActiveConfig()\n const { DOCUMENT, FONT_FAMILY, THEME, TYPOGRAPHY } = CONFIG\n return merge(DOCUMENT, {\n theme: THEME.document,\n fontFamily: getDefaultOrFirstKey(FONT_FAMILY),\n fontSize: TYPOGRAPHY.base,\n lineHeight: TYPOGRAPHY.lineHeight\n })\n}\n", "'use strict'\n\nimport { document } from '@domql/globals'\nimport { generateSprite, convertSvgToSymbol } from \"../utils\"\nimport { getActiveConfig } from '../factory.js'\n\nconst DEF_OPTIONS = {\n document: document\n}\n\nexport const setSVG = (val, key) => {\n if (!val) {\n if (CONFIG.verbose) console.warn('setSVG: val is not defined', key)\n return\n }\n const CONFIG = getActiveConfig()\n if (CONFIG.useSvgSprite) {\n return convertSvgToSymbol(key, val)\n } return val\n}\n\nexport const appendSVGSprite = (LIBRARY, options = DEF_OPTIONS) => {\n const CONFIG = getActiveConfig()\n const doc = options.document || document\n\n const lib = Object.keys(LIBRARY).length ? {} : CONFIG.SVG\n for (let key in LIBRARY) lib[key] = CONFIG.SVG[key]\n \n const SVGsprite = generateSprite(lib)\n if (!doc) {\n console.warn('To append SVG sprites it should be run in browser environment')\n return SVGsprite\n }\n \n const svgSpriteDOM = doc.createElement('template')\n svgSpriteDOM.innerHTML = SVGsprite\n doc.body.appendChild(svgSpriteDOM.content)\n}\n\nexport const setIcon = (val, key) => {\n const CONFIG = getActiveConfig()\n if (CONFIG.useIconSprite) {\n return setSVG(val, key)\n } return val\n}\n\nexport const appendIconsSprite = (LIBRARY, options = DEF_OPTIONS) => {\n const CONFIG = getActiveConfig()\n const doc = options.document || document\n \n const lib = Object.keys(LIBRARY).length ? {} : CONFIG.ICONS\n for (let key in LIBRARY) lib[key] = CONFIG.ICONS[key]\n \n const SVGsprite = generateSprite(lib)\n if (!doc) {\n console.warn('To append SVG Icon sprites it should be run in browser environment')\n return SVGsprite\n }\n\n const iconsSpriteDOM = doc.createElement('template')\n iconsSpriteDOM.innerHTML = SVGsprite\n doc.body.appendChild(iconsSpriteDOM.content)\n}\n", "'use strict'\n\nimport { getActiveConfig } from '../factory.js'\nimport { getMediaTheme } from '.'\nimport { deepMerge, merge } from '@domql/utils' // eslint-disable-line no-unused-vars\n\nexport const applyReset = (reset = {}) => {\n const CONFIG = getActiveConfig()\n const { CSS_VARS, RESET, TYPOGRAPHY, DOCUMENT } = CONFIG\n if (RESET) {\n if (RESET[':root']) {\n const configReset = RESET\n const configTemplates = TYPOGRAPHY.templates\n\n configReset.body = {\n ...getMediaTheme('document', `@${CONFIG.globalTheme}`),\n ...configTemplates.body\n }\n configReset.h1 = configTemplates.h1\n configReset.h2 = configTemplates.h2\n configReset.h3 = configTemplates.h3\n configReset.h4 = configTemplates.h4\n configReset.h5 = configTemplates.h5\n configReset.h6 = configTemplates.h6\n }\n\n const { body, ...templates } = TYPOGRAPHY.templates\n\n return deepMerge(merge(RESET, reset), {\n html: {\n position: 'absolute',\n overflow: 'hidden',\n width: '100%',\n height: '100%',\n top: '0',\n left: '0',\n margin: '0',\n WebkitFontSmoothing: 'antialiased',\n transform: 'translate3d(0, 0, 1px)',\n scrollBehavior: 'smooth',\n\n fontSize: TYPOGRAPHY.browserDefault + 'px',\n\n fontFamily: DOCUMENT.fontFamily,\n lineHeight: DOCUMENT.lineHeight\n },\n\n body: {\n boxSizing: 'border-box',\n height: '100%',\n margin: 0,\n fontFamily: DOCUMENT.fontFamily,\n\n fontSize: TYPOGRAPHY.base / TYPOGRAPHY.browserDefault + CONFIG.UNIT.default,\n\n ...(CONFIG.useDocumentTheme ? getMediaTheme('document', `@${CONFIG.globalTheme}`) : {}),\n\n ...templates,\n ...body\n },\n\n // form elements\n fieldset: {\n border: 0,\n padding: 0,\n margin: 0\n },\n\n 'select, input': {\n fontFamily: DOCUMENT.fontFamily\n }\n })\n }\n}\n", "'use strict'\n\nimport { FACTORY, getActiveConfig } from './factory.js' // eslint-disable-line no-unused-vars\nimport {\n setColor,\n setGradient,\n setFont,\n setFontFamily,\n setTheme,\n setIcon,\n setSVG,\n applyTypographySequence,\n applySpacingSequence,\n applyReset,\n applyTimingSequence,\n applyDocument\n} from './system'\n\nimport { isFunction } from './utils'\n\nconst ENV = process.env.NODE_ENV // eslint-disable-line no-unused-vars\n\nconst setCases = (val, key) => {\n if (isFunction(val)) return val()\n return val\n}\n\nconst setSameValue = (val, key) => val\n\nexport const VALUE_TRANSFORMERS = {\n color: setColor,\n gradient: setGradient,\n font: setFont,\n font_family: setFontFamily,\n theme: setTheme,\n icons: setIcon,\n svg: setSVG,\n svg_data: setSameValue,\n typography: setSameValue,\n cases: setCases,\n spacing: setSameValue,\n media: setSameValue,\n timing: setSameValue,\n reset: setSameValue,\n unit: setSameValue,\n animation: setSameValue\n}\n\n/**\n *\n * @param {Object} FACTORY_NAME Defines which factory it goes to\n * @param {*} value Value of the property\n * @param {String} key Key, or the name of the property\n * @returns {Object} Factory\n */\nexport const setValue = (FACTORY_NAME, value, key) => {\n const CONFIG = getActiveConfig()\n const factoryName = FACTORY_NAME.toLowerCase()\n const FACTORY = CONFIG[FACTORY_NAME]\n\n if (VALUE_TRANSFORMERS[factoryName]) {\n const result = VALUE_TRANSFORMERS[factoryName](value, key)\n FACTORY[key] = result\n return FACTORY\n }\n\n if (CONFIG.verbose) console.warn('Can not find', factoryName, 'method in scratch')\n}\n\nexport const setEach = (factoryName, props) => {\n const CONFIG = getActiveConfig()\n const FACTORY_NAME = factoryName.toUpperCase()\n const keys = Object.keys(props)\n keys.map(key => setValue(FACTORY_NAME, props[key], key))\n\n return CONFIG[FACTORY_NAME]\n}\n\nconst SET_OPTIONS = {}\n\nexport const set = (recivedConfig, options = SET_OPTIONS) => {\n let CONFIG = getActiveConfig()\n const {\n version,\n verbose,\n useVariable,\n useReset,\n useSvgSprite,\n useFontImport,\n useIconSprite,\n globalTheme,\n useDocumentTheme,\n ...config } = recivedConfig\n \n if (options.newConfig) {\n FACTORY['active'] = options.newConfig\n CONFIG = getActiveConfig(options.newConfig)\n }\n\n if (verbose !== undefined) CONFIG.verbose = verbose\n if (useVariable !== undefined) CONFIG.useVariable = useVariable\n if (useReset !== undefined) CONFIG.useReset = useReset\n if (useFontImport !== undefined) CONFIG.useFontImport = useFontImport\n if (useSvgSprite !== undefined) CONFIG.useSvgSprite = useSvgSprite\n if (useIconSprite !== undefined) CONFIG.useIconSprite = useIconSprite\n if (useDocumentTheme !== undefined) CONFIG.useDocumentTheme = useDocumentTheme\n if (globalTheme !== undefined) CONFIG.globalTheme = globalTheme\n if (CONFIG.verbose) console.log(CONFIG)\n\n const keys = Object.keys(config)\n keys.map(key => setEach(key, config[key]))\n\n // apply generic configs\n applyTypographySequence()\n applySpacingSequence()\n applyTimingSequence()\n applyDocument()\n applyReset()\n\n return CONFIG\n}\n\nexport * from './system'\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["exports", "module", "__defProp", "__getOwnPropDesc", "__getOwnPropNames", "__hasOwnProp", "__export", "__copyProps", "__toCommonJS", "document", "window", "exports", "module", "__defProp", "__getOwnPropDesc", "__getOwnPropNames", "__hasOwnProp", "__export", "__copyProps", "__toCommonJS", "require_cjs", "exports", "module", "__defProp", "__getOwnPropDesc", "__getOwnPropNames", "__hasOwnProp", "__copyProps", "__toCommonJS", "exports", "module", "__defProp", "__getOwnPropDesc", "__getOwnPropNames", "__hasOwnProp", "__export", "__copyProps", "__toCommonJS", "isArray", "isDefined", "isFunction", "isObject", "isObjectLike", "isString", "import_globals", "obj", "exports", "module", "__defProp", "__getOwnPropDesc", "__getOwnPropNames", "__hasOwnProp", "__export", "__copyProps", "__toCommonJS", "exports", "module", "__defProp", "__getOwnPropDesc", "__getOwnPropNames", "__hasOwnProp", "__export", "__copyProps", "__toCommonJS", "exports", "module", "__defProp", "__getOwnPropDesc", "__getOwnPropNames", "__hasOwnProp", "__export", "__copyProps", "__toCommonJS", "require_cjs", "exports", "module", "__defProp", "__getOwnPropDesc", "__getOwnPropNames", "__hasOwnProp", "__copyProps", "__toCommonJS", "__export", "deepMerge", "merge", "__toCommonJS", "import_utils", "__export", "merge", "obj", "objProp", "deepMerge", "obj2", "import_utils", "diff", "props", "CONFIG", "UNIT", "varValue", "import_utils", "CONFIG", "CSS_VARS", "UNIT", "MEDIA", "TIMING", "import_utils", "defaultProps", "defaultProps", "import_utils", "CONFIG", "COLOR", "GRADIENT", "obj", "import_utils", "CONFIG", "THEME", "CONFIG", "CSS_VARS", "THEME", "obj", "CONFIG", "import_utils", "CONFIG", "FONT_FAMILY", "FONT_FAMILY_TYPES", "CONFIG", "TYPOGRAPHY", "MEDIA", "prop", "merge", "import_utils", "runThroughMedia", "prop", "merge", "CONFIG", "SPACING", "CONFIG", "TIMING", "CONFIG", "DOCUMENT", "FONT_FAMILY", "THEME", "TYPOGRAPHY", "merge", "import_globals", "CONFIG", "import_utils", "CONFIG", "CSS_VARS", "RESET", "TYPOGRAPHY", "DOCUMENT", "CONFIG", "FACTORY"]
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@symbo.ls/scratch",
|
|
3
3
|
"description": "Φ / CSS framework and methodology.",
|
|
4
4
|
"author": "symbo.ls",
|
|
5
|
-
"version": "2.10.
|
|
5
|
+
"version": "2.10.149",
|
|
6
6
|
"files": [
|
|
7
7
|
"src",
|
|
8
8
|
"dist"
|
|
@@ -36,5 +36,5 @@
|
|
|
36
36
|
"outputFormat": "commonjs",
|
|
37
37
|
"includeNodeModules": true
|
|
38
38
|
},
|
|
39
|
-
"gitHead": "
|
|
39
|
+
"gitHead": "e12c846d47b3309dc6fbe18c359a3db2b8586cbe"
|
|
40
40
|
}
|