oncss 1.1.5 → 1.1.6
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/core.js +4 -1
- package/core.js.map +2 -2
- package/package.json +1 -1
package/core.js
CHANGED
|
@@ -70,7 +70,7 @@ const style = (_css, cls, opt, dept = 1) => {
|
|
|
70
70
|
let cachekey;
|
|
71
71
|
let classname = cls;
|
|
72
72
|
if (!cls) {
|
|
73
|
-
cachekey = JSON.stringify(_css);
|
|
73
|
+
cachekey = JSON.stringify(_css, (_key, value) => typeof value === "function" ? value.toString() : value);
|
|
74
74
|
const has = CSSFactory.get(cachekey);
|
|
75
75
|
if (has) {
|
|
76
76
|
has.cache = true;
|
|
@@ -131,6 +131,9 @@ const style = (_css, cls, opt, dept = 1) => {
|
|
|
131
131
|
skiped[classname].push(prop);
|
|
132
132
|
continue;
|
|
133
133
|
}
|
|
134
|
+
if (typeof val === "function" || Array.isArray(val)) {
|
|
135
|
+
continue;
|
|
136
|
+
}
|
|
134
137
|
if (typeof val === "object") {
|
|
135
138
|
for (let media in val) {
|
|
136
139
|
if (typeof val[media] === "object" || typeof val[media] === "function" || Array.isArray(val[media])) {
|
package/core.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/core.ts"],
|
|
4
|
-
"sourcesContent": ["import { CSSOptionProps, CSSFactoryType, CSSProps } from './types';\nimport youid from 'youid';\nconst _global: any = typeof window !== 'undefined' ? window : global;\n_global.Factory = _global.Factory || new Map<string, CSSFactoryType>();\nexport const CSSFactory = _global.Factory as Map<string, CSSFactoryType>\n\n\nconst number_val_props = [\n \"fontWeight\",\n \"font-weight\",\n \"lineHeight\",\n \"line-height\",\n \"opacity\",\n \"zIndex\",\n \"z-index\",\n \"flex\",\n \"order\",\n \"flexGrow\",\n \"flex-grow\",\n \"flexShrink\",\n \"flex-shrink\",\n \"flexBasis\",\n \"flex-basis\",\n \"columns\",\n \"perspective\",\n \"stroke-dashoffset\"\n]\n\nexport const formatCSSProp = (prop: string) => prop.split(/(?=[A-Z])/).join(\"-\").toLowerCase();\nexport const formatCSSValue = (prop: string, val: any) => typeof val === 'number' && !number_val_props.includes(prop) ? `${val}px` : val\n\nconst PREFIXES = ['webkit', 'moz', 'ms', 'o'];\nlet _declaration: CSSStyleDeclaration;\nconst PREFIXCACHE = new Map();\n\nexport const cssPrefix = (prop: string, value: string): { prop: string, value: string } => {\n value = formatCSSValue(prop, value);\n prop = formatCSSProp(prop);\n\n if (typeof window === 'undefined') {\n return { prop, value };\n }\n\n const declaration = _declaration || (_declaration = document.createElement(\"div\").style);\n value = value?.toString();\n\n // Check if the property and value work as is\n if (declaration.setProperty(prop, value), declaration.getPropertyValue(prop) === value) {\n return { prop, value };\n }\n\n // Check cached property and value prefix\n const cached = PREFIXCACHE.get(prop);\n if (cached) {\n return { prop: cached._prop, value: `${cached._vprefix}${value}` };\n }\n\n let _prop = prop;\n let _value = value;\n let _vprefix = '';\n\n // Try property prefixes\n const camelCaseProp = prop.includes('-') ? prop.replace(/-([a-z])/g, (_, c) => c.toUpperCase()) : prop;\n for (const prefix of PREFIXES) {\n if (declaration[`${prefix}${camelCaseProp}` as any] !== undefined) {\n _prop = `-${prefix}-${prop}`;\n break;\n }\n }\n\n // Check if prefixed property works with the value\n declaration.setProperty(_prop, value);\n if (!declaration.getPropertyValue(_prop)) {\n for (const prefix of PREFIXES) {\n const prefixedValue = `-${prefix}-${value}`;\n if (declaration.setProperty(_prop, prefixedValue), declaration.getPropertyValue(_prop) === prefixedValue) {\n _value = prefixedValue;\n _vprefix = `-${prefix}-`;\n break;\n }\n }\n }\n\n PREFIXCACHE.set(prop, { _prop, _vprefix });\n return { prop: _prop, value: _value };\n};\n\nexport const style = <Aliases, BreakpointKeys extends string>(_css: CSSProps<Aliases, BreakpointKeys>, cls?: string, opt?: CSSOptionProps<Aliases, BreakpointKeys>, dept = 1) => {\n let cachekey\n let classname = cls\n if (!cls) {\n cachekey = JSON.stringify(_css)\n const has = CSSFactory.get(cachekey)\n if (has) {\n has.cache = true\n return has\n }\n classname = `${opt?.classPrefix || \"\"}x${youid(cachekey)}`\n } else if (typeof cls !== 'string') {\n throw new Error(`Invalid class name: ${cls}`)\n }\n\n let stack: any = [`${classname}{`]\n let medias: any = {}\n let skiped: any = {}\n for (let prop in _css) {\n let val = (_css as any)[prop]\n let firstChar = prop.charAt(0)\n if (firstChar === '&') {\n let ncls = prop.replace(/&/g, classname as string)\n const r: any = style(val, ncls, opt, dept + 1)\n if (opt?.skipProps) {\n skiped = {\n ...skiped,\n ...r.skiped\n }\n }\n stack.push(r.stack)\n } else if (firstChar === '@') {\n if (prop.startsWith(\"@global\") || prop.startsWith(\"@keyframes\")) {\n let _css = ''\n for (let selector in val) {\n let r: any = style(val[selector], selector, opt, dept + 1)\n _css += r.stack\n if (opt?.skipProps) {\n skiped = {\n ...skiped,\n ...r.skiped\n }\n }\n }\n if (prop.startsWith(\"@keyframes\")) {\n stack.push(`${prop}{${_css}}`)\n } else {\n stack.push(_css)\n }\n } else {\n let r: any = style(val, classname, opt, dept + 1)\n const atcss = prop + \"{\" + r.stack + \"}\"\n stack.push(atcss)\n if (opt?.skipProps) {\n skiped = {\n ...skiped,\n ...r.skiped\n }\n }\n }\n } else {\n if (opt?.skipProps && opt.skipProps(prop, val, dept)) {\n if (!((classname as any) in skiped)) skiped[classname as string] = []\n skiped[classname as string].push(prop)\n continue\n }\n if (typeof val === 'object') {\n for (let media in val) {\n if (typeof val[media] === 'object' || typeof val[media] === 'function' || Array.isArray(val[media])) {\n throw new Error(`Invalid css value: ${val[media]}`);\n }\n let breakpoint = media\n let isNumber = !isNaN(parseInt(breakpoint))\n if (!isNumber) {\n if (opt?.breakpoints && !isNaN(parseInt((opt.breakpoints as any)[media]))) {\n breakpoint = opt.breakpoints[media as BreakpointKeys].toString()\n } else {\n throw new Error(`Invalid breakpoint prop: ${media}`);\n }\n }\n let _css = { [prop]: val[media] }\n let r: any = style(_css, classname, opt, dept)\n let _style = r.stack\n let mediakey = `@media (min-width: ${breakpoint}px)`\n medias[mediakey] = medias[mediakey] ? medias[mediakey] + _style : _style\n if (opt?.skipProps) {\n skiped = {\n ...skiped,\n ...r.skiped\n }\n }\n }\n } else {\n if (opt?.getProps) {\n let _props: any = opt.getProps(prop, val, _css, dept)\n if (_props) {\n let r: any = style(_props, classname, {\n ...opt,\n getProps: undefined\n })\n if (opt?.skipProps) {\n skiped = {\n ...skiped,\n ...r.skiped\n }\n }\n stack.push(r.stack)\n continue;\n }\n }\n if (opt?.aliases && (opt.aliases as any)[prop]) {\n let _props = (opt.aliases as any)[prop](val)\n if (_props) {\n let r: any = style(_props, classname, {\n ...opt,\n aliases: undefined\n }, dept)\n r.stack = r.stack.replace(`${classname}{`, '').replace(`}`, '')\n stack[0] += r.stack\n continue;\n }\n }\n if (opt?.getValue) {\n val = opt.getValue(prop, val, _css, dept)\n }\n let p = cssPrefix(prop, val)\n stack[0] += `${p.prop}:${p.value};`\n }\n }\n }\n stack[0] += \"}\"\n if (stack[0] === `${classname}{}`) {\n stack[0] = \"\"\n }\n stack = stack.join('')\n for (let media in medias) {\n stack += `${media}{${medias[media].replace(new RegExp(`}\\\\${classname}\\\\{`, 'g'), '')}}`\n }\n\n if (cachekey) {\n stack = stack.replace(new RegExp(classname as string, 'g'), `.${classname}`)\n const r = {\n cache: false,\n cachekey,\n classname: classname as string,\n css: stack,\n cssraw: _css,\n skiped,\n getStyleTag: () => document?.querySelector(`[data-oncss=\"${classname}\"]`) as HTMLStyleElement | null,\n deleteStyle: () => {\n const tag = document?.querySelector(`[data-oncss=\"${classname}\"]`)\n tag && tag.remove()\n },\n }\n r.toString = () => classname as string\n CSSFactory.set(cachekey, r)\n let inject = opt?.injectStyle || true\n if (inject && typeof window !== 'undefined') {\n if (!document.querySelector(`[data-oncss=\"${classname}\"]`)) {\n const tag = document.createElement(\"style\");\n tag.innerHTML = r.css\n tag.setAttribute(`data-oncss`, classname as string)\n document.head.append(tag)\n }\n }\n return r\n }\n return { stack, skiped }\n}"],
|
|
5
|
-
"mappings": "AACA,OAAO,WAAW;AAClB,MAAM,UAAe,OAAO,WAAW,cAAc,SAAS;AAC9D,QAAQ,UAAU,QAAQ,WAAW,oBAAI,IAA4B;AAC9D,MAAM,aAAa,QAAQ;AAGlC,MAAM,mBAAmB;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ;AAEO,MAAM,gBAAgB,CAAC,SAAiB,KAAK,MAAM,WAAW,EAAE,KAAK,GAAG,EAAE,YAAY;AACtF,MAAM,iBAAiB,CAAC,MAAc,QAAa,OAAO,QAAQ,YAAY,CAAC,iBAAiB,SAAS,IAAI,IAAI,GAAG,GAAG,OAAO;AAErI,MAAM,WAAW,CAAC,UAAU,OAAO,MAAM,GAAG;AAC5C,IAAI;AACJ,MAAM,cAAc,oBAAI,IAAI;AAErB,MAAM,YAAY,CAAC,MAAc,UAAmD;AACvF,UAAQ,eAAe,MAAM,KAAK;AAClC,SAAO,cAAc,IAAI;AAEzB,MAAI,OAAO,WAAW,aAAa;AAC/B,WAAO,EAAE,MAAM,MAAM;AAAA,EACzB;AAEA,QAAM,cAAc,iBAAiB,eAAe,SAAS,cAAc,KAAK,EAAE;AAClF,UAAQ,OAAO,SAAS;AAGxB,MAAI,YAAY,YAAY,MAAM,KAAK,GAAG,YAAY,iBAAiB,IAAI,MAAM,OAAO;AACpF,WAAO,EAAE,MAAM,MAAM;AAAA,EACzB;AAGA,QAAM,SAAS,YAAY,IAAI,IAAI;AACnC,MAAI,QAAQ;AACR,WAAO,EAAE,MAAM,OAAO,OAAO,OAAO,GAAG,OAAO,QAAQ,GAAG,KAAK,GAAG;AAAA,EACrE;AAEA,MAAI,QAAQ;AACZ,MAAI,SAAS;AACb,MAAI,WAAW;AAGf,QAAM,gBAAgB,KAAK,SAAS,GAAG,IAAI,KAAK,QAAQ,aAAa,CAAC,GAAG,MAAM,EAAE,YAAY,CAAC,IAAI;AAClG,aAAW,UAAU,UAAU;AAC3B,QAAI,YAAY,GAAG,MAAM,GAAG,aAAa,EAAS,MAAM,QAAW;AAC/D,cAAQ,IAAI,MAAM,IAAI,IAAI;AAC1B;AAAA,IACJ;AAAA,EACJ;AAGA,cAAY,YAAY,OAAO,KAAK;AACpC,MAAI,CAAC,YAAY,iBAAiB,KAAK,GAAG;AACtC,eAAW,UAAU,UAAU;AAC3B,YAAM,gBAAgB,IAAI,MAAM,IAAI,KAAK;AACzC,UAAI,YAAY,YAAY,OAAO,aAAa,GAAG,YAAY,iBAAiB,KAAK,MAAM,eAAe;AACtG,iBAAS;AACT,mBAAW,IAAI,MAAM;AACrB;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AAEA,cAAY,IAAI,MAAM,EAAE,OAAO,SAAS,CAAC;AACzC,SAAO,EAAE,MAAM,OAAO,OAAO,OAAO;AACxC;AAEO,MAAM,QAAQ,CAAyC,MAAyC,KAAc,KAA+C,OAAO,MAAM;AAC7K,MAAI;AACJ,MAAI,YAAY;AAChB,MAAI,CAAC,KAAK;AACN,eAAW,KAAK,UAAU,IAAI;
|
|
4
|
+
"sourcesContent": ["import { CSSOptionProps, CSSFactoryType, CSSProps } from './types';\nimport youid from 'youid';\nconst _global: any = typeof window !== 'undefined' ? window : global;\n_global.Factory = _global.Factory || new Map<string, CSSFactoryType>();\nexport const CSSFactory = _global.Factory as Map<string, CSSFactoryType>\n\n\nconst number_val_props = [\n \"fontWeight\",\n \"font-weight\",\n \"lineHeight\",\n \"line-height\",\n \"opacity\",\n \"zIndex\",\n \"z-index\",\n \"flex\",\n \"order\",\n \"flexGrow\",\n \"flex-grow\",\n \"flexShrink\",\n \"flex-shrink\",\n \"flexBasis\",\n \"flex-basis\",\n \"columns\",\n \"perspective\",\n \"stroke-dashoffset\"\n]\n\nexport const formatCSSProp = (prop: string) => prop.split(/(?=[A-Z])/).join(\"-\").toLowerCase();\nexport const formatCSSValue = (prop: string, val: any) => typeof val === 'number' && !number_val_props.includes(prop) ? `${val}px` : val\n\nconst PREFIXES = ['webkit', 'moz', 'ms', 'o'];\nlet _declaration: CSSStyleDeclaration;\nconst PREFIXCACHE = new Map();\n\nexport const cssPrefix = (prop: string, value: string): { prop: string, value: string } => {\n value = formatCSSValue(prop, value);\n prop = formatCSSProp(prop);\n\n if (typeof window === 'undefined') {\n return { prop, value };\n }\n\n const declaration = _declaration || (_declaration = document.createElement(\"div\").style);\n value = value?.toString();\n\n // Check if the property and value work as is\n if (declaration.setProperty(prop, value), declaration.getPropertyValue(prop) === value) {\n return { prop, value };\n }\n\n // Check cached property and value prefix\n const cached = PREFIXCACHE.get(prop);\n if (cached) {\n return { prop: cached._prop, value: `${cached._vprefix}${value}` };\n }\n\n let _prop = prop;\n let _value = value;\n let _vprefix = '';\n\n // Try property prefixes\n const camelCaseProp = prop.includes('-') ? prop.replace(/-([a-z])/g, (_, c) => c.toUpperCase()) : prop;\n for (const prefix of PREFIXES) {\n if (declaration[`${prefix}${camelCaseProp}` as any] !== undefined) {\n _prop = `-${prefix}-${prop}`;\n break;\n }\n }\n\n // Check if prefixed property works with the value\n declaration.setProperty(_prop, value);\n if (!declaration.getPropertyValue(_prop)) {\n for (const prefix of PREFIXES) {\n const prefixedValue = `-${prefix}-${value}`;\n if (declaration.setProperty(_prop, prefixedValue), declaration.getPropertyValue(_prop) === prefixedValue) {\n _value = prefixedValue;\n _vprefix = `-${prefix}-`;\n break;\n }\n }\n }\n\n PREFIXCACHE.set(prop, { _prop, _vprefix });\n return { prop: _prop, value: _value };\n};\n\nexport const style = <Aliases, BreakpointKeys extends string>(_css: CSSProps<Aliases, BreakpointKeys>, cls?: string, opt?: CSSOptionProps<Aliases, BreakpointKeys>, dept = 1) => {\n let cachekey\n let classname = cls\n if (!cls) {\n cachekey = JSON.stringify(_css, (_key, value) => typeof value === \"function\" ? value.toString() : value);\n const has = CSSFactory.get(cachekey)\n if (has) {\n has.cache = true\n return has\n }\n classname = `${opt?.classPrefix || \"\"}x${youid(cachekey)}`\n } else if (typeof cls !== 'string') {\n throw new Error(`Invalid class name: ${cls}`)\n }\n\n let stack: any = [`${classname}{`]\n let medias: any = {}\n let skiped: any = {}\n for (let prop in _css) {\n let val = (_css as any)[prop]\n let firstChar = prop.charAt(0)\n if (firstChar === '&') {\n let ncls = prop.replace(/&/g, classname as string)\n const r: any = style(val, ncls, opt, dept + 1)\n if (opt?.skipProps) {\n skiped = {\n ...skiped,\n ...r.skiped\n }\n }\n stack.push(r.stack)\n } else if (firstChar === '@') {\n if (prop.startsWith(\"@global\") || prop.startsWith(\"@keyframes\")) {\n let _css = ''\n for (let selector in val) {\n let r: any = style(val[selector], selector, opt, dept + 1)\n _css += r.stack\n if (opt?.skipProps) {\n skiped = {\n ...skiped,\n ...r.skiped\n }\n }\n }\n if (prop.startsWith(\"@keyframes\")) {\n stack.push(`${prop}{${_css}}`)\n } else {\n stack.push(_css)\n }\n } else {\n let r: any = style(val, classname, opt, dept + 1)\n const atcss = prop + \"{\" + r.stack + \"}\"\n stack.push(atcss)\n if (opt?.skipProps) {\n skiped = {\n ...skiped,\n ...r.skiped\n }\n }\n }\n } else {\n if (opt?.skipProps && opt.skipProps(prop, val, dept)) {\n if (!((classname as any) in skiped)) skiped[classname as string] = []\n skiped[classname as string].push(prop)\n continue\n }\n if (typeof val === 'function' || Array.isArray(val)) {\n continue\n }\n if (typeof val === 'object') {\n for (let media in val) {\n if (typeof val[media] === 'object' || typeof val[media] === 'function' || Array.isArray(val[media])) {\n throw new Error(`Invalid css value: ${val[media]}`);\n }\n let breakpoint = media\n let isNumber = !isNaN(parseInt(breakpoint))\n if (!isNumber) {\n if (opt?.breakpoints && !isNaN(parseInt((opt.breakpoints as any)[media]))) {\n breakpoint = opt.breakpoints[media as BreakpointKeys].toString()\n } else {\n throw new Error(`Invalid breakpoint prop: ${media}`);\n }\n }\n let _css = { [prop]: val[media] }\n let r: any = style(_css, classname, opt, dept)\n let _style = r.stack\n let mediakey = `@media (min-width: ${breakpoint}px)`\n medias[mediakey] = medias[mediakey] ? medias[mediakey] + _style : _style\n if (opt?.skipProps) {\n skiped = {\n ...skiped,\n ...r.skiped\n }\n }\n }\n } else {\n if (opt?.getProps) {\n let _props: any = opt.getProps(prop, val, _css, dept)\n if (_props) {\n let r: any = style(_props, classname, {\n ...opt,\n getProps: undefined\n })\n if (opt?.skipProps) {\n skiped = {\n ...skiped,\n ...r.skiped\n }\n }\n stack.push(r.stack)\n continue;\n }\n }\n if (opt?.aliases && (opt.aliases as any)[prop]) {\n let _props = (opt.aliases as any)[prop](val)\n if (_props) {\n let r: any = style(_props, classname, {\n ...opt,\n aliases: undefined\n }, dept)\n r.stack = r.stack.replace(`${classname}{`, '').replace(`}`, '')\n stack[0] += r.stack\n continue;\n }\n }\n if (opt?.getValue) {\n val = opt.getValue(prop, val, _css, dept)\n }\n let p = cssPrefix(prop, val)\n stack[0] += `${p.prop}:${p.value};`\n }\n }\n }\n stack[0] += \"}\"\n if (stack[0] === `${classname}{}`) {\n stack[0] = \"\"\n }\n stack = stack.join('')\n for (let media in medias) {\n stack += `${media}{${medias[media].replace(new RegExp(`}\\\\${classname}\\\\{`, 'g'), '')}}`\n }\n\n if (cachekey) {\n stack = stack.replace(new RegExp(classname as string, 'g'), `.${classname}`)\n const r = {\n cache: false,\n cachekey,\n classname: classname as string,\n css: stack,\n cssraw: _css,\n skiped,\n getStyleTag: () => document?.querySelector(`[data-oncss=\"${classname}\"]`) as HTMLStyleElement | null,\n deleteStyle: () => {\n const tag = document?.querySelector(`[data-oncss=\"${classname}\"]`)\n tag && tag.remove()\n },\n }\n r.toString = () => classname as string\n CSSFactory.set(cachekey, r)\n let inject = opt?.injectStyle || true\n if (inject && typeof window !== 'undefined') {\n if (!document.querySelector(`[data-oncss=\"${classname}\"]`)) {\n const tag = document.createElement(\"style\");\n tag.innerHTML = r.css\n tag.setAttribute(`data-oncss`, classname as string)\n document.head.append(tag)\n }\n }\n return r\n }\n return { stack, skiped }\n}"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["_css"]
|
|
7
7
|
}
|