UNPKG

html2canvas

Version:
67 lines (56 loc) 1.97 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.parseTransform = undefined; var _Length = require('../Length'); var _Length2 = _interopRequireDefault(_Length); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var toFloat = function toFloat(s) { return parseFloat(s.trim()); }; var MATRIX = /(matrix|matrix3d)\((.+)\)/; var parseTransform = exports.parseTransform = function parseTransform(style) { var transform = parseTransformMatrix(style.transform || style.webkitTransform || style.mozTransform || // $FlowFixMe style.msTransform || // $FlowFixMe style.oTransform); if (transform === null) { return null; } return { transform: transform, transformOrigin: parseTransformOrigin(style.transformOrigin || style.webkitTransformOrigin || style.mozTransformOrigin || // $FlowFixMe style.msTransformOrigin || // $FlowFixMe style.oTransformOrigin) }; }; // $FlowFixMe var parseTransformOrigin = function parseTransformOrigin(origin) { if (typeof origin !== 'string') { var v = new _Length2.default('0'); return [v, v]; } var values = origin.split(' ').map(_Length2.default.create); return [values[0], values[1]]; }; // $FlowFixMe var parseTransformMatrix = function parseTransformMatrix(transform) { if (transform === 'none' || typeof transform !== 'string') { return null; } var match = transform.match(MATRIX); if (match) { if (match[1] === 'matrix') { var matrix = match[2].split(',').map(toFloat); return [matrix[0], matrix[1], matrix[2], matrix[3], matrix[4], matrix[5]]; } else { var matrix3d = match[2].split(',').map(toFloat); return [matrix3d[0], matrix3d[1], matrix3d[4], matrix3d[5], matrix3d[12], matrix3d[13]]; } } return null; };