1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.expandFocusableNodes = void 0;
|
4 | var all_affected_1 = require("./utils/all-affected");
|
5 | var is_1 = require("./utils/is");
|
6 | var parenting_1 = require("./utils/parenting");
|
7 | var tabOrder_1 = require("./utils/tabOrder");
|
8 | var tabUtils_1 = require("./utils/tabUtils");
|
9 |
|
10 |
|
11 |
|
12 |
|
13 |
|
14 |
|
15 | var expandFocusableNodes = function (topNode) {
|
16 | var entries = (0, all_affected_1.getAllAffectedNodes)(topNode).filter(is_1.isNotAGuard);
|
17 | var commonParent = (0, parenting_1.getTopCommonParent)(topNode, topNode, entries);
|
18 | var outerNodes = (0, tabOrder_1.orderByTabIndex)((0, tabUtils_1.getFocusables)([commonParent], true), true, true);
|
19 | var innerElements = (0, tabUtils_1.getFocusables)(entries, false);
|
20 | return outerNodes.map(function (_a) {
|
21 | var node = _a.node, index = _a.index;
|
22 | return ({
|
23 | node: node,
|
24 | index: index,
|
25 | lockItem: innerElements.indexOf(node) >= 0,
|
26 | guard: (0, is_1.isGuard)(node),
|
27 | });
|
28 | });
|
29 | };
|
30 | exports.expandFocusableNodes = expandFocusableNodes;
|