How to use the @reshadow/runtime.createStyled function in @reshadow/runtime

To help you get started, we’ve selected a few @reshadow/runtime examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github lttb / reshadow / packages / styled / global.js View on Github external
class GlobalStyle extends React.Component {
    render() {
        // eslint-disable-next-line
        const {style} = this.props;
        if (style) {
            for (const name in style) {
                document.documentElement.style.setProperty(name, style[name]);
            }
        }

        return null;
    }
}

const globalReshadowStyled = createReshadowStyled((as, props) => {
    const style = coreStyled[KEYS.__style__];

    props.style = style;

    return React.createElement(GlobalStyle, props);
}, globalCSS);

export const createGlobalStyle = (strs, ...values) =>
    styled(GlobalStyle).create({
        wrap: (element, strs) => strs,
        styled: globalReshadowStyled,
    })(strs, ...values);
github lttb / reshadow / packages / react / index.js View on Github external
export function jsx() {
    const args = Array.prototype.slice.call(arguments);
    let element = args[0];
    if (typeof element === 'string' && !tags.has(element)) {
        args[0] = 'div';
    } else if (typeof element === 'function') {
        element = getDisplayName(element);
    }
    args[1] = map(element, args[1]);
    return React.createElement.apply(null, args);
}

export {css, use, create, keyframes};

const reactStyled = createStyled(elem => {
    const style = styled[KEYS.__style__];
    let result = styled(elem);
    if (style && result) {
        result = React.cloneElement(result, {
            style: Object.assign({}, style, result.props.style),
        });
    }
    return result;
});

reactStyled.jsx = jsx;

export default reactStyled;
github lttb / reshadow / packages / styled / index.js View on Github external
const nextArgs = Object.create(args);
        for (const index in functions) {
            let value = functions[index](data);
            if (typeof value === 'string') {
                value = mixin(value);
            }

            while (typeof value === 'function') value = value(data);

            nextArgs[index] = value;
        }
        return __css__.apply(null, nextArgs);
    };
}

const reshadowStyled = createReshadowStyled((element, as, props, filtered) => {
    const style = coreStyled[KEYS.__style__];

    if (style) {
        props.style = Object.assign({}, style, props.style);
    }

    props = map(element, props);

    if (filtered) {
        for (let i = 0; i < filtered.length; i++) {
            delete props[filtered[i]];
        }
    }

    const result = React.createElement(as, props);

@reshadow/runtime

reshadow runtime

MIT
Latest version published 2 years ago

Package Health Score

49 / 100
Full package analysis

Similar packages