File tree Expand file tree Collapse file tree 1 file changed +16
-6
lines changed Expand file tree Collapse file tree 1 file changed +16
-6
lines changed Original file line number Diff line number Diff line change @@ -186,15 +186,25 @@ class ReactTooltip extends React.Component {
186186 * Pick out corresponded target elements
187187 */
188188 getTargetArray ( id ) {
189- let targetArray
189+ let targetArray = [ ] ;
190+ let selector ;
190191 if ( ! id ) {
191- targetArray = document . querySelectorAll ( '[data-tip]:not([data-for])' )
192+ selector = '[data-tip]:not([data-for])' ;
192193 } else {
193- const escaped = id . replace ( / \\ / g, '\\\\' ) . replace ( / " / g, '\\"' )
194- targetArray = document . querySelectorAll ( ` [data-tip][data-for="${ escaped } "]` )
194+ const escaped = id . replace ( / \\ / g, '\\\\' ) . replace ( / " / g, '\\"' ) ;
195+ selector = ' [data-tip][data-for="' + escaped + '"]' ;
195196 }
196- // targetArray is a NodeList, convert it to a real array
197- return nodeListToArray ( targetArray )
197+
198+ // Scan document for shadow DOM elements
199+ nodeListToArray ( document . getElementsByTagName ( '*' ) )
200+ . filter ( element => element . shadowRoot )
201+ . forEach ( element => {
202+ targetArray = targetArray . concat ( nodeListToArray ( element . shadowRoot . querySelectorAll ( selector ) ) ) ;
203+ } ) ;
204+
205+ targetArray = targetArray . concat ( nodeListToArray ( document . querySelectorAll ( selector ) ) ) ;
206+
207+ return targetArray
198208 }
199209
200210 /**
You can’t perform that action at this time.
0 commit comments