/** * Copyright (c) Nicolas Gallagher. * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * @flow */ const unitlessNumbers = { animationIterationCount: true, aspectRatio: true, borderImageOutset: true, borderImageSlice: true, borderImageWidth: true, boxFlex: true, boxFlexGroup: true, boxOrdinalGroup: true, columnCount: true, flex: true, flexGrow: true, flexOrder: true, flexPositive: true, flexShrink: true, flexNegative: true, fontWeight: true, gridRow: true, gridRowEnd: true, gridRowGap: true, gridRowStart: true, gridColumn: true, gridColumnEnd: true, gridColumnGap: true, gridColumnStart: true, lineClamp: true, opacity: true, order: true, orphans: true, tabSize: true, widows: true, zIndex: true, zoom: true, // SVG-related fillOpacity: true, floodOpacity: true, stopOpacity: true, strokeDasharray: true, strokeDashoffset: true, strokeMiterlimit: true, strokeOpacity: true, strokeWidth: true, // transform types scale: true, scaleX: true, scaleY: true, scaleZ: true, // RN properties shadowOpacity: true }; /** * Support style names that may come passed in prefixed by adding permutations * of vendor prefixes. */ const prefixes = ['ms', 'Moz', 'O', 'Webkit']; declare var prefixKey: (prefix: string, key: string) => any; Object.keys(unitlessNumbers).forEach(prop => { prefixes.forEach(prefix => { unitlessNumbers[prefixKey(prefix, prop)] = unitlessNumbers[prop]; }); }); export default unitlessNumbers;