| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 | 'use strict';var parsers = require('../parsers.js');var TYPES = parsers.TYPES;var isValid = function(v) {  if (v.toLowerCase() === 'auto') {    return true;  }  var type = parsers.valueType(v);  return (    type === TYPES.LENGTH ||    type === TYPES.PERCENT ||    (type === TYPES.INTEGER && (v === '0' || v === 0))  );};var parser = function(v) {  var V = v.toLowerCase();  if (V === 'auto') {    return V;  }  return parsers.parseMeasurement(v);};var mySetter = parsers.implicitSetter('margin', '', isValid, parser);var myGlobal = parsers.implicitSetter(  'margin',  '',  function() {    return true;  },  function(v) {    return v;  });module.exports.definition = {  set: function(v) {    if (typeof v === 'number') {      v = String(v);    }    if (typeof v !== 'string') {      return;    }    var V = v.toLowerCase();    switch (V) {      case 'inherit':      case 'initial':      case 'unset':      case '':        myGlobal.call(this, V);        break;      default:        mySetter.call(this, v);        break;    }  },  get: function() {    return this.getPropertyValue('margin');  },  enumerable: true,  configurable: true,};module.exports.isValid = isValid;module.exports.parser = parser;
 |