| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.camelCase = void 0;
- var CUSTOM_PROPERTY_REGEX = /^--[a-zA-Z0-9_-]+$/;
- var HYPHEN_REGEX = /-([a-z])/g;
- var NO_HYPHEN_REGEX = /^[^-]+$/;
- var VENDOR_PREFIX_REGEX = /^-(webkit|moz|ms|o|khtml)-/;
- var MS_VENDOR_PREFIX_REGEX = /^-(ms)-/;
- /**
- * Checks whether to skip camelCase.
- */
- var skipCamelCase = function (property) {
- return !property ||
- NO_HYPHEN_REGEX.test(property) ||
- CUSTOM_PROPERTY_REGEX.test(property);
- };
- /**
- * Replacer that capitalizes first character.
- */
- var capitalize = function (match, character) {
- return character.toUpperCase();
- };
- /**
- * Replacer that removes beginning hyphen of vendor prefix property.
- */
- var trimHyphen = function (match, prefix) { return "".concat(prefix, "-"); };
- /**
- * CamelCases a CSS property.
- */
- var camelCase = function (property, options) {
- if (options === void 0) { options = {}; }
- if (skipCamelCase(property)) {
- return property;
- }
- property = property.toLowerCase();
- if (options.reactCompat) {
- // `-ms` vendor prefix should not be capitalized
- property = property.replace(MS_VENDOR_PREFIX_REGEX, trimHyphen);
- }
- else {
- // for non-React, remove first hyphen so vendor prefix is not capitalized
- property = property.replace(VENDOR_PREFIX_REGEX, trimHyphen);
- }
- return property.replace(HYPHEN_REGEX, capitalize);
- };
- exports.camelCase = camelCase;
- //# sourceMappingURL=utilities.js.map
|