Sha256: 1137c5ed8e912cbcb10650ffaf8554bb4fa7bcc0cc78613d46ae0a83cb9cdc43

Contents?: true

Size: 831 Bytes

Versions: 375

Compression:

Stored size: 831 Bytes

Contents

/* global dom */
/**
 * Get an element's parent in the flattened tree
 * @method getComposedParent
 * @memberof axe.commons.dom
 * @instance
 * @param {Node} element
 * @return {Node|null} Parent element or Null for root node
 */
dom.getComposedParent = function getComposedParent(element) {
	if (element.assignedSlot) {
		// NOTE: If the display of a slot element isn't 'contents',
		// the slot shouldn't be ignored. Chrome does not support this (yet) so,
		// we'll skip this part for now.
		return getComposedParent(element.assignedSlot); // parent of a shadow DOM slot
	} else if (element.parentNode) {
		var parentNode = element.parentNode;
		if (parentNode.nodeType === 1) {
			return parentNode; // Regular node
		} else if (parentNode.host) {
			return parentNode.host; // Shadow root
		}
	}
	return null; // Root node
};

Version data entries

375 entries across 375 versions & 1 rubygems

Version Path
govuk_publishing_components-30.4.1 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-30.4.0 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-30.3.0 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-30.2.1 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-30.2.0 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-30.1.0 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-30.0.0 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-29.15.3 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-29.15.2 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-29.15.1 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-29.15.0 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-29.14.0 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-29.13.0 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-29.12.1 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-29.12.0 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-29.11.0 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-29.10.0 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-29.9.0 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-29.8.0 node_modules/axe-core/lib/commons/dom/get-composed-parent.js
govuk_publishing_components-29.7.0 node_modules/axe-core/lib/commons/dom/get-composed-parent.js