From 019de2be30cc6fb3cd267fcb8aa0368793c32e7e Mon Sep 17 00:00:00 2001 From: Nathan Hunzaker Date: Sun, 6 Aug 2017 22:34:03 -0400 Subject: [PATCH] Handle special properties like onFocusOut --- .../dom/shared/hooks/ReactDOMUnknownPropertyHook.js | 7 ++++++- src/renderers/dom/shared/hooks/possibleStandardNames.js | 5 ++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/renderers/dom/shared/hooks/ReactDOMUnknownPropertyHook.js b/src/renderers/dom/shared/hooks/ReactDOMUnknownPropertyHook.js index febe782e60c6d..fe843b458b11d 100644 --- a/src/renderers/dom/shared/hooks/ReactDOMUnknownPropertyHook.js +++ b/src/renderers/dom/shared/hooks/ReactDOMUnknownPropertyHook.js @@ -39,6 +39,10 @@ if (__DEV__) { var EVENT_NAME_REGEX = /^on[A-Z]/; var ARIA_NAME_REGEX = /^aria-/i; var possibleStandardNames = require('possibleStandardNames'); + var unsupportedProps = { + onfocusin: true, + onfocusout: true, + }; var validateProperty = function(tagName, name, value, debugID) { if (warnedProperties.hasOwnProperty(name) && warnedProperties[name]) { @@ -78,7 +82,8 @@ if (__DEV__) { return true; } - if (DOMProperty.isReservedProp(name)) { + // Unsupported props are handled by another validation + if (unsupportedProps.hasOwnProperty(lowerCasedName)) { return true; } diff --git a/src/renderers/dom/shared/hooks/possibleStandardNames.js b/src/renderers/dom/shared/hooks/possibleStandardNames.js index 3f83cee2adcd0..1e7ef05597ad5 100644 --- a/src/renderers/dom/shared/hooks/possibleStandardNames.js +++ b/src/renderers/dom/shared/hooks/possibleStandardNames.js @@ -28,11 +28,13 @@ var possibleStandardNames = { class: 'className', classid: 'classID', classname: 'className', + children: 'children', colspan: 'colSpan', contenteditable: 'contentEditable', contextmenu: 'contextMenu', controlslist: 'controlsList', crossorigin: 'crossOrigin', + dangerouslysetinnerhtml: 'dangerouslySetInnerHTML', datetime: 'dateTime', defaultvalue: 'defaultValue', defaultchecked: 'defaultChecked', @@ -81,7 +83,7 @@ var possibleStandardNames = { alignmentbaseline: 'alignmentBaseline', 'alignment-baseline': 'alignmentBaseline', allowreorder: 'allowReorder', - 'aribic-form': 'arabicForm', + 'arabic-form': 'arabicForm', arabicform: 'arabicForm', attributename: 'attributeName', attributetype: 'attributeType', @@ -233,6 +235,7 @@ var possibleStandardNames = { 'stroke-opacity': 'strokeOpacity', strokeopacity: 'strokeOpacity', 'stroke-width': 'strokeWidth', + suppresscontenteditablewarning: 'suppressContentEditableWarning', surfacescale: 'surfaceScale', systemlanguage: 'systemLanguage', tablevalues: 'tableValues',