mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-31 17:38:48 +00:00
react app
This commit is contained in:
56
react-app/node_modules/react/lib/dangerousStyleValue.js
generated
vendored
Normal file
56
react-app/node_modules/react/lib/dangerousStyleValue.js
generated
vendored
Normal file
@@ -0,0 +1,56 @@
|
||||
/**
|
||||
* Copyright 2013-2015, Facebook, Inc.
|
||||
* All rights reserved.
|
||||
*
|
||||
* This source code is licensed under the BSD-style license found in the
|
||||
* LICENSE file in the root directory of this source tree. An additional grant
|
||||
* of patent rights can be found in the PATENTS file in the same directory.
|
||||
*
|
||||
* @providesModule dangerousStyleValue
|
||||
* @typechecks static-only
|
||||
*/
|
||||
|
||||
'use strict';
|
||||
|
||||
var CSSProperty = require("./CSSProperty");
|
||||
|
||||
var isUnitlessNumber = CSSProperty.isUnitlessNumber;
|
||||
|
||||
/**
|
||||
* Convert a value into the proper css writable value. The style name `name`
|
||||
* should be logical (no hyphens), as specified
|
||||
* in `CSSProperty.isUnitlessNumber`.
|
||||
*
|
||||
* @param {string} name CSS property name such as `topMargin`.
|
||||
* @param {*} value CSS property value such as `10px`.
|
||||
* @return {string} Normalized style value with dimensions applied.
|
||||
*/
|
||||
function dangerousStyleValue(name, value) {
|
||||
// Note that we've removed escapeTextForBrowser() calls here since the
|
||||
// whole string will be escaped when the attribute is injected into
|
||||
// the markup. If you provide unsafe user data here they can inject
|
||||
// arbitrary CSS which may be problematic (I couldn't repro this):
|
||||
// https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet
|
||||
// http://www.thespanner.co.uk/2007/11/26/ultimate-xss-css-injection/
|
||||
// This is not an XSS hole but instead a potential CSS injection issue
|
||||
// which has lead to a greater discussion about how we're going to
|
||||
// trust URLs moving forward. See #2115901
|
||||
|
||||
var isEmpty = value == null || typeof value === 'boolean' || value === '';
|
||||
if (isEmpty) {
|
||||
return '';
|
||||
}
|
||||
|
||||
var isNonNumeric = isNaN(value);
|
||||
if (isNonNumeric || value === 0 ||
|
||||
isUnitlessNumber.hasOwnProperty(name) && isUnitlessNumber[name]) {
|
||||
return '' + value; // cast to string
|
||||
}
|
||||
|
||||
if (typeof value === 'string') {
|
||||
value = value.trim();
|
||||
}
|
||||
return value + 'px';
|
||||
}
|
||||
|
||||
module.exports = dangerousStyleValue;
|
Reference in New Issue
Block a user