blob: 06f61ad4d18307116159c3d966d1e20cc96ea0e8 [file] [log] [blame]
'use strict';
/**
* Contains helpers for working with vendor prefixes.
*
* Copied from https://github.com/postcss/postcss/commit/777c55b5d2a10605313a4972888f4f32005f5ac2
*
* @namespace vendor
*/
module.exports = {
/**
* Returns the vendor prefix extracted from an input string.
*
* @param {string} prop String with or without vendor prefix.
*
* @return {string} vendor prefix or empty string
*
* @example
* vendor.prefix('-moz-tab-size') //=> '-moz-'
* vendor.prefix('tab-size') //=> ''
*/
prefix(prop) {
const match = prop.match(/^(-\w+-)/);
if (match) {
return match[0];
}
return '';
},
/**
* Returns the input string stripped of its vendor prefix.
*
* @param {string} prop String with or without vendor prefix.
*
* @return {string} String name without vendor prefixes.
*
* @example
* vendor.unprefixed('-moz-tab-size') //=> 'tab-size'
*/
unprefixed(prop) {
return prop.replace(/^-\w+-/, '');
},
};