UNPKG

svg-patterns

Version:
44 lines (37 loc) 1 kB
'use strict'; var dom = require('virtual-dom/h'); var _require = require('../helpers'), M = _require.M, l = _require.l, pattern = _require.pattern; var tile = function tile(s) { return M(0, 0) + l(s / 2, s) + l(s / 2, -s) + M(0, s) + l(s / 2, -s) + l(s / 2, s); }; var defaults = { size: 12, // size of the pattern fill: 'none', // any SVG-compatible color strokeWidth: .9, stroke: '#343434', // any SVG-compatible color background: null // any SVG-compatible color }; var rhombic = function rhombic() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; opt = Object.assign({}, defaults, opt); Object.assign(opt, { width: opt.size, height: opt.size, bg: opt.background, children: [dom('path', { d: tile(opt.size), fill: opt.fill, stroke: opt.stroke, 'stroke-width': opt.strokeWidth + '', 'stroke-linecap': 'square' })] }); return pattern(opt); }; module.exports = rhombic;