UNPKG

svelte-inline-css

Version:

Easy to use inline style system like [Vue.js inline style](https://v3.vuejs.org/guide/class-and-style.html#binding-inline-styles) in Svelte(Use [use:action](https://svelte.dev/docs#use_action))

30 lines (29 loc) 882 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.buildStyle = void 0; const buildStyle = (parameters) => { let properties = {}; if (Array.isArray(parameters)) { parameters.forEach((value) => { properties = { ...properties, ...value }; }); } else { properties = parameters; } return Object.entries(properties).map(([key, value]) => { key = key.replace(/[A-Z]/, (substring) => '-' + substring.toLowerCase()); return [key, value]; }); }; exports.buildStyle = buildStyle; const style = (node, parameters) => { const setStyle = (parameters) => { exports.buildStyle(parameters).forEach(([key, value]) => { node.style.setProperty(key, value); }); }; setStyle(parameters); return { update: setStyle }; }; exports.default = style;