You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
907 B
40 lines
907 B
let Declaration = require('../declaration') |
|
|
|
class BorderRadius extends Declaration { |
|
/** |
|
* Change syntax, when add Mozilla prefix |
|
*/ |
|
prefixed(prop, prefix) { |
|
if (prefix === '-moz-') { |
|
return prefix + (BorderRadius.toMozilla[prop] || prop) |
|
} |
|
return super.prefixed(prop, prefix) |
|
} |
|
|
|
/** |
|
* Return unprefixed version of property |
|
*/ |
|
normalize(prop) { |
|
return BorderRadius.toNormal[prop] || prop |
|
} |
|
} |
|
|
|
BorderRadius.names = ['border-radius'] |
|
|
|
BorderRadius.toMozilla = {} |
|
BorderRadius.toNormal = {} |
|
|
|
for (let ver of ['top', 'bottom']) { |
|
for (let hor of ['left', 'right']) { |
|
let normal = `border-${ver}-${hor}-radius` |
|
let mozilla = `border-radius-${ver}${hor}` |
|
|
|
BorderRadius.names.push(normal) |
|
BorderRadius.names.push(mozilla) |
|
|
|
BorderRadius.toMozilla[normal] = mozilla |
|
BorderRadius.toNormal[mozilla] = normal |
|
} |
|
} |
|
|
|
module.exports = BorderRadius
|
|
|