let flexSpec = require('./flex-spec') let Declaration = require('../declaration') class AlignItems extends Declaration { /** * Change property name for 2009 and 2012 specs */ prefixed (prop, prefix) { let spec ;[spec, prefix] = flexSpec(prefix) if (spec === 2009) { return prefix + 'box-align' } if (spec === 2012) { return prefix + 'flex-align' } return super.prefixed(prop, prefix) } /** * Return property name by final spec */ normalize () { return 'align-items' } /** * Change value for 2009 and 2012 specs */ set (decl, prefix) { let spec = flexSpec(prefix)[0] if (spec === 2009 || spec === 2012) { decl.value = AlignItems.oldValues[decl.value] || decl.value } return super.set(decl, prefix) } } AlignItems.names = ['align-items', 'flex-align', 'box-align'] AlignItems.oldValues = { 'flex-end': 'end', 'flex-start': 'start' } module.exports = AlignItems