diff --git a/src/renderers/dom/shared/HTMLDOMPropertyConfig.js b/src/renderers/dom/shared/HTMLDOMPropertyConfig.js
index ec288be9ea..da0ca9b449 100644
--- a/src/renderers/dom/shared/HTMLDOMPropertyConfig.js
+++ b/src/renderers/dom/shared/HTMLDOMPropertyConfig.js
@@ -139,6 +139,8 @@ var HTMLDOMPropertyConfig = {
shape: 0,
size: HAS_POSITIVE_NUMERIC_VALUE,
sizes: 0,
+ // support for projecting regular DOM Elements via V1 named slots ( shadow dom )
+ slot: 0,
span: HAS_POSITIVE_NUMERIC_VALUE,
spellCheck: 0,
src: 0,
diff --git a/src/renderers/dom/shared/__tests__/ReactDOMComponent-test.js b/src/renderers/dom/shared/__tests__/ReactDOMComponent-test.js
index 36d2841700..00d0bd445d 100644
--- a/src/renderers/dom/shared/__tests__/ReactDOMComponent-test.js
+++ b/src/renderers/dom/shared/__tests__/ReactDOMComponent-test.js
@@ -245,6 +245,24 @@ describe('ReactDOMComponent', () => {
expect(stubStyle.display).toEqual('');
});
+ it('should allow named slot projection on both web components and regular DOM elements', () => {
+ var container = document.createElement('div');
+
+ ReactDOM.render(
+
+
+
+ ,
+ container
+ );
+
+ var lightDOM = container.firstChild.childNodes;
+
+ expect(lightDOM[0].getAttribute('slot')).toBe('first');
+ expect(lightDOM[1].getAttribute('slot')).toBe('second');
+
+ } );
+
it('should skip reserved props on web components', () => {
var container = document.createElement('div');