@semcore/core 16.5.0-prerelease.6 → 16.5.1-prerelease.0
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/CHANGELOG.md +6 -0
- package/lib/esm/styled/sstyled.mjs +10 -6
- package/lib/styled/sstyled.js +10 -8
- package/lib/styled/sstyled.js.map +1 -1
- package/lib/styled/sstyled.mjs +10 -6
- package/lib/styled/sstyled.mjs.map +1 -1
- package/lib/utils/injectStyle.js +1 -1
- package/lib/utils/injectStyle.mjs +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
2
1
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
3
2
|
import _cn from "classnames";
|
|
4
3
|
import { getStyles as getStyles$1 } from "./reshadow-core.mjs";
|
|
@@ -80,8 +79,12 @@ function getClassAndVars(styles, name, props) {
|
|
|
80
79
|
return acc;
|
|
81
80
|
}, [{}, {}]);
|
|
82
81
|
}
|
|
82
|
+
var reshadowMap = /* @__PURE__ */ new WeakMap();
|
|
83
83
|
function reshadowToShadow(obj) {
|
|
84
|
-
|
|
84
|
+
if (reshadowMap.has(obj)) {
|
|
85
|
+
return reshadowMap.get(obj);
|
|
86
|
+
}
|
|
87
|
+
var shadowStyle = Object.entries(obj).reduce(function(style, _ref5) {
|
|
85
88
|
var _ref6 = _slicedToArray(_ref5, 2), name = _ref6[0], value = _ref6[1];
|
|
86
89
|
var n = name;
|
|
87
90
|
if (name.startsWith("__")) {
|
|
@@ -92,20 +95,21 @@ function reshadowToShadow(obj) {
|
|
|
92
95
|
style[n] = value;
|
|
93
96
|
return style;
|
|
94
97
|
}, {});
|
|
98
|
+
reshadowMap.set(obj, shadowStyle);
|
|
99
|
+
return shadowStyle;
|
|
95
100
|
}
|
|
96
101
|
function sstyled() {
|
|
97
102
|
var styles = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
98
103
|
return {
|
|
99
104
|
cn: function cn(name, props) {
|
|
100
105
|
var _getClassAndVars = getClassAndVars(reshadowToShadow(styles), name, props), _getClassAndVars2 = _slicedToArray(_getClassAndVars, 2), classes = _getClassAndVars2[0], style = _getClassAndVars2[1];
|
|
101
|
-
var extraProps = {};
|
|
102
106
|
if (Object.keys(classes).length) {
|
|
103
|
-
|
|
107
|
+
props.className = _cn(props.className, classes);
|
|
104
108
|
}
|
|
105
109
|
if (Object.keys(style).length) {
|
|
106
|
-
|
|
110
|
+
props.style = Object.assign(style, props.style);
|
|
107
111
|
}
|
|
108
|
-
return
|
|
112
|
+
return props;
|
|
109
113
|
}
|
|
110
114
|
};
|
|
111
115
|
}
|
package/lib/styled/sstyled.js
CHANGED
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.sstyled = sstyled;
|
|
8
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
9
8
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
9
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
10
|
var _reshadowCore = require("./reshadow-core");
|
|
@@ -102,8 +101,12 @@ function getClassAndVars(styles, name, props) {
|
|
|
102
101
|
return acc;
|
|
103
102
|
}, [{}, {}]);
|
|
104
103
|
}
|
|
104
|
+
var reshadowMap = new WeakMap();
|
|
105
105
|
function reshadowToShadow(obj) {
|
|
106
|
-
|
|
106
|
+
if (reshadowMap.has(obj)) {
|
|
107
|
+
return reshadowMap.get(obj);
|
|
108
|
+
}
|
|
109
|
+
var shadowStyle = Object.entries(obj).reduce(function (style, _ref5) {
|
|
107
110
|
var _ref6 = (0, _slicedToArray2["default"])(_ref5, 2),
|
|
108
111
|
name = _ref6[0],
|
|
109
112
|
value = _ref6[1];
|
|
@@ -116,6 +119,8 @@ function reshadowToShadow(obj) {
|
|
|
116
119
|
style[n] = value;
|
|
117
120
|
return style;
|
|
118
121
|
}, {});
|
|
122
|
+
reshadowMap.set(obj, shadowStyle);
|
|
123
|
+
return shadowStyle;
|
|
119
124
|
}
|
|
120
125
|
function sstyled() {
|
|
121
126
|
var styles = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
@@ -126,16 +131,13 @@ function sstyled() {
|
|
|
126
131
|
_getClassAndVars2 = (0, _slicedToArray2["default"])(_getClassAndVars, 2),
|
|
127
132
|
classes = _getClassAndVars2[0],
|
|
128
133
|
style = _getClassAndVars2[1];
|
|
129
|
-
var extraProps = {};
|
|
130
134
|
if (Object.keys(classes).length) {
|
|
131
|
-
|
|
132
|
-
extraProps.className = (0, _classnames["default"])(props.className, classes);
|
|
135
|
+
props.className = (0, _classnames["default"])(props.className, classes);
|
|
133
136
|
}
|
|
134
137
|
if (Object.keys(style).length) {
|
|
135
|
-
|
|
136
|
-
extraProps.style = Object.assign(style, props.style);
|
|
138
|
+
props.style = Object.assign(style, props.style);
|
|
137
139
|
}
|
|
138
|
-
return
|
|
140
|
+
return props;
|
|
139
141
|
}
|
|
140
142
|
};
|
|
141
143
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sstyled.js","names":["_classnames","_interopRequireDefault","require","_reshadowCore","RESHADOW_ID","isSSR","window","document","createElement","serverMap","reshadowGetStyles","map","getStyles","css","serverStyles","id","concat","insert","code","hash","container","getElementById","head","appendChild","addEventListener","type","innerHTML","merge","s1","arguments","length","undefined","s2","Object","entries","reduce","acc","_ref","_ref2","_slicedToArray2","key","value","startsWith","cn","assign","getClassAndVars","styles","name","props","getPropValue","_props","_ref3","_ref4","substring","_key$split","split","_key$split2","mod","modValue","propValue","Boolean","reshadowToShadow","obj","style","_ref5","_ref6","n","replace","sstyled","_getClassAndVars","_getClassAndVars2","classes","
|
|
1
|
+
{"version":3,"file":"sstyled.js","names":["_classnames","_interopRequireDefault","require","_reshadowCore","RESHADOW_ID","isSSR","window","document","createElement","serverMap","reshadowGetStyles","map","getStyles","css","serverStyles","id","concat","insert","code","hash","container","getElementById","head","appendChild","addEventListener","type","innerHTML","merge","s1","arguments","length","undefined","s2","Object","entries","reduce","acc","_ref","_ref2","_slicedToArray2","key","value","startsWith","cn","assign","getClassAndVars","styles","name","props","getPropValue","_props","_ref3","_ref4","substring","_key$split","split","_key$split2","mod","modValue","propValue","Boolean","reshadowMap","WeakMap","reshadowToShadow","obj","has","get","shadowStyle","style","_ref5","_ref6","n","replace","set","sstyled","_getClassAndVars","_getClassAndVars2","classes","keys","className","_css","Error","SHADOW_STYLES","Symbol"],"sources":["../../src/styled/sstyled.tsx"],"sourcesContent":["import cn from 'classnames';\nimport type React from 'react';\n\n/** @ts-ignore */\nimport { getStyles as reshadowGetStyles } from './reshadow-core';\n\nconst RESHADOW_ID = '__reshadow__';\n\nconst isSSR = !(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nconst serverMap = reshadowGetStyles().map as any;\n\nconst getStyles = () => ({\n map: serverMap,\n get css() {\n let serverStyles = '';\n for (const id in serverMap) {\n serverStyles += `<style type='text/css' id='${id}'>${serverMap[id]}</style>`;\n }\n return serverStyles;\n },\n});\n\nfunction insert(code: any, hash: any) {\n const id = 'reshadow-'.concat(hash);\n\n if (isSSR) {\n serverMap[id] = code;\n return;\n }\n\n let container = document.getElementById(RESHADOW_ID);\n\n if (!container) {\n container = document.createElement('object');\n container.id = RESHADOW_ID;\n\n if (document.head) {\n document.head.appendChild(container);\n } else {\n document.addEventListener('DOMContentLoaded', function () {\n document.head.appendChild(container as any);\n });\n }\n }\n\n let css = document.getElementById(id);\n\n if (!css) {\n css = document.createElement('style');\n css.id = id;\n // @ts-ignore\n css.type = 'text/css';\n container.appendChild(css);\n }\n\n css.innerHTML = code;\n}\n\nfunction merge(s1 = {}, s2 = {}) {\n return Object.entries(s2).reduce((acc: any, [key, value]: any) => {\n if (key.startsWith('@') || key.startsWith('--')) {\n acc[key] = value;\n } else {\n acc[key] = cn(acc[key], value);\n }\n return acc;\n }, Object.assign({}, s1));\n}\n\nfunction getClassAndVars(styles: any, name: any, props: any) {\n function getPropValue(key: any, props: any) {\n return props[`use:${key}`] ?? props[key];\n }\n\n return Object.entries(styles).reduce(\n (acc, [key, value]) => {\n if (key.startsWith('--')) {\n // @ts-ignore\n acc[1][value] = getPropValue(key.substring(2), props);\n } else if (name === key) {\n // @ts-ignore\n acc[0][value] = true;\n } else {\n const [mod, modValue] = key.split('=');\n const propValue = getPropValue(mod, props);\n if (modValue === undefined) {\n // @ts-ignore\n acc[0][value] = Boolean(propValue ?? false);\n } else {\n // @ts-ignore\n\n acc[0][value] = propValue == modValue;\n }\n }\n return acc;\n },\n [{}, {}],\n );\n}\n\nconst reshadowMap = new WeakMap();\n\nfunction reshadowToShadow(obj: any) {\n if (reshadowMap.has(obj)) {\n return reshadowMap.get(obj);\n }\n\n const shadowStyle = Object.entries(obj).reduce((style: any, [name, value]) => {\n let n = name;\n if (name.startsWith('__')) {\n n = name.replace(/^__/, '');\n } else if (name.startsWith('_')) {\n n = name.replace(/^_/, '').replace('_', '=');\n }\n style[n] = value;\n return style;\n }, {});\n\n reshadowMap.set(obj, shadowStyle);\n\n return shadowStyle;\n}\n\nfunction sstyled(styles = {}): ((ReactNode: any) => React.ReactNode) & {\n cn(name: string, props: any): any;\n} {\n // @ts-ignore\n return {\n cn(name, props) {\n const [classes, style] = getClassAndVars(reshadowToShadow(styles), name, props);\n\n if (Object.keys(classes).length) {\n props.className = cn(props.className, classes);\n }\n\n if (Object.keys(style).length) {\n props.style = Object.assign(style, props.style);\n }\n\n return props;\n },\n };\n}\n\nsstyled.css = function (_css: any): { [key: string]: string } {\n throw new Error('Enable babel plugin');\n};\nsstyled.insert = insert;\nsstyled.merge = merge;\nsstyled.getStyles = getStyles;\nsstyled.SHADOW_STYLES = Symbol('SHADOW_STYLES');\n\nexport { sstyled };\n"],"mappings":"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","ignoreList":[]}
|
package/lib/styled/sstyled.mjs
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
2
1
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
3
2
|
import _cn from "classnames";
|
|
4
3
|
import { getStyles as getStyles$1 } from "./reshadow-core.mjs";
|
|
@@ -80,8 +79,12 @@ function getClassAndVars(styles, name, props) {
|
|
|
80
79
|
return acc;
|
|
81
80
|
}, [{}, {}]);
|
|
82
81
|
}
|
|
82
|
+
var reshadowMap = /* @__PURE__ */ new WeakMap();
|
|
83
83
|
function reshadowToShadow(obj) {
|
|
84
|
-
|
|
84
|
+
if (reshadowMap.has(obj)) {
|
|
85
|
+
return reshadowMap.get(obj);
|
|
86
|
+
}
|
|
87
|
+
var shadowStyle = Object.entries(obj).reduce(function(style, _ref5) {
|
|
85
88
|
var _ref6 = _slicedToArray(_ref5, 2), name = _ref6[0], value = _ref6[1];
|
|
86
89
|
var n = name;
|
|
87
90
|
if (name.startsWith("__")) {
|
|
@@ -92,20 +95,21 @@ function reshadowToShadow(obj) {
|
|
|
92
95
|
style[n] = value;
|
|
93
96
|
return style;
|
|
94
97
|
}, {});
|
|
98
|
+
reshadowMap.set(obj, shadowStyle);
|
|
99
|
+
return shadowStyle;
|
|
95
100
|
}
|
|
96
101
|
function sstyled() {
|
|
97
102
|
var styles = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
98
103
|
return {
|
|
99
104
|
cn: function cn(name, props) {
|
|
100
105
|
var _getClassAndVars = getClassAndVars(reshadowToShadow(styles), name, props), _getClassAndVars2 = _slicedToArray(_getClassAndVars, 2), classes = _getClassAndVars2[0], style = _getClassAndVars2[1];
|
|
101
|
-
var extraProps = {};
|
|
102
106
|
if (Object.keys(classes).length) {
|
|
103
|
-
|
|
107
|
+
props.className = _cn(props.className, classes);
|
|
104
108
|
}
|
|
105
109
|
if (Object.keys(style).length) {
|
|
106
|
-
|
|
110
|
+
props.style = Object.assign(style, props.style);
|
|
107
111
|
}
|
|
108
|
-
return
|
|
112
|
+
return props;
|
|
109
113
|
}
|
|
110
114
|
};
|
|
111
115
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sstyled.mjs","names":["cn","getStyles","reshadowGetStyles","RESHADOW_ID","isSSR","window","document","createElement","serverMap","map","css","serverStyles","id","concat","insert","code","hash","container","getElementById","head","appendChild","addEventListener","type","innerHTML","merge","s1","arguments","length","undefined","s2","Object","entries","reduce","acc","_ref","_ref2","_slicedToArray","key","value","startsWith","assign","getClassAndVars","styles","name","props","getPropValue","_props","_ref3","_ref4","substring","_key$split","split","_key$split2","mod","modValue","propValue","Boolean","reshadowToShadow","obj","style","_ref5","_ref6","n","replace","sstyled","_getClassAndVars","_getClassAndVars2","classes","
|
|
1
|
+
{"version":3,"file":"sstyled.mjs","names":["cn","getStyles","reshadowGetStyles","RESHADOW_ID","isSSR","window","document","createElement","serverMap","map","css","serverStyles","id","concat","insert","code","hash","container","getElementById","head","appendChild","addEventListener","type","innerHTML","merge","s1","arguments","length","undefined","s2","Object","entries","reduce","acc","_ref","_ref2","_slicedToArray","key","value","startsWith","assign","getClassAndVars","styles","name","props","getPropValue","_props","_ref3","_ref4","substring","_key$split","split","_key$split2","mod","modValue","propValue","Boolean","reshadowMap","WeakMap","reshadowToShadow","obj","has","get","shadowStyle","style","_ref5","_ref6","n","replace","set","sstyled","_getClassAndVars","_getClassAndVars2","classes","keys","className","_css","Error","SHADOW_STYLES","Symbol"],"sources":["../../src/styled/sstyled.tsx"],"sourcesContent":["import cn from 'classnames';\nimport type React from 'react';\n\n/** @ts-ignore */\nimport { getStyles as reshadowGetStyles } from './reshadow-core';\n\nconst RESHADOW_ID = '__reshadow__';\n\nconst isSSR = !(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nconst serverMap = reshadowGetStyles().map as any;\n\nconst getStyles = () => ({\n map: serverMap,\n get css() {\n let serverStyles = '';\n for (const id in serverMap) {\n serverStyles += `<style type='text/css' id='${id}'>${serverMap[id]}</style>`;\n }\n return serverStyles;\n },\n});\n\nfunction insert(code: any, hash: any) {\n const id = 'reshadow-'.concat(hash);\n\n if (isSSR) {\n serverMap[id] = code;\n return;\n }\n\n let container = document.getElementById(RESHADOW_ID);\n\n if (!container) {\n container = document.createElement('object');\n container.id = RESHADOW_ID;\n\n if (document.head) {\n document.head.appendChild(container);\n } else {\n document.addEventListener('DOMContentLoaded', function () {\n document.head.appendChild(container as any);\n });\n }\n }\n\n let css = document.getElementById(id);\n\n if (!css) {\n css = document.createElement('style');\n css.id = id;\n // @ts-ignore\n css.type = 'text/css';\n container.appendChild(css);\n }\n\n css.innerHTML = code;\n}\n\nfunction merge(s1 = {}, s2 = {}) {\n return Object.entries(s2).reduce((acc: any, [key, value]: any) => {\n if (key.startsWith('@') || key.startsWith('--')) {\n acc[key] = value;\n } else {\n acc[key] = cn(acc[key], value);\n }\n return acc;\n }, Object.assign({}, s1));\n}\n\nfunction getClassAndVars(styles: any, name: any, props: any) {\n function getPropValue(key: any, props: any) {\n return props[`use:${key}`] ?? props[key];\n }\n\n return Object.entries(styles).reduce(\n (acc, [key, value]) => {\n if (key.startsWith('--')) {\n // @ts-ignore\n acc[1][value] = getPropValue(key.substring(2), props);\n } else if (name === key) {\n // @ts-ignore\n acc[0][value] = true;\n } else {\n const [mod, modValue] = key.split('=');\n const propValue = getPropValue(mod, props);\n if (modValue === undefined) {\n // @ts-ignore\n acc[0][value] = Boolean(propValue ?? false);\n } else {\n // @ts-ignore\n\n acc[0][value] = propValue == modValue;\n }\n }\n return acc;\n },\n [{}, {}],\n );\n}\n\nconst reshadowMap = new WeakMap();\n\nfunction reshadowToShadow(obj: any) {\n if (reshadowMap.has(obj)) {\n return reshadowMap.get(obj);\n }\n\n const shadowStyle = Object.entries(obj).reduce((style: any, [name, value]) => {\n let n = name;\n if (name.startsWith('__')) {\n n = name.replace(/^__/, '');\n } else if (name.startsWith('_')) {\n n = name.replace(/^_/, '').replace('_', '=');\n }\n style[n] = value;\n return style;\n }, {});\n\n reshadowMap.set(obj, shadowStyle);\n\n return shadowStyle;\n}\n\nfunction sstyled(styles = {}): ((ReactNode: any) => React.ReactNode) & {\n cn(name: string, props: any): any;\n} {\n // @ts-ignore\n return {\n cn(name, props) {\n const [classes, style] = getClassAndVars(reshadowToShadow(styles), name, props);\n\n if (Object.keys(classes).length) {\n props.className = cn(props.className, classes);\n }\n\n if (Object.keys(style).length) {\n props.style = Object.assign(style, props.style);\n }\n\n return props;\n },\n };\n}\n\nsstyled.css = function (_css: any): { [key: string]: string } {\n throw new Error('Enable babel plugin');\n};\nsstyled.insert = insert;\nsstyled.merge = merge;\nsstyled.getStyles = getStyles;\nsstyled.SHADOW_STYLES = Symbol('SHADOW_STYLES');\n\nexport { sstyled };\n"],"mappings":"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","ignoreList":[]}
|
package/lib/utils/injectStyle.js
CHANGED