- Updated all component headers and documentation
- Changed navbar and footer branding
- Updated homepage hero badge
- Modified page title in index.html
- Simplified footer text to 'Built with ❤️'
- Consistent V2 capitalization across all references
23 lines
866 B
JavaScript
23 lines
866 B
JavaScript
import { filterAutoFocusable } from './DOMutils';
|
|
import { pickFirstFocus } from './firstFocus';
|
|
import { getDataset } from './is';
|
|
const findAutoFocused = (autoFocusables) => (node) => {
|
|
var _a;
|
|
const autofocus = (_a = getDataset(node)) === null || _a === void 0 ? void 0 : _a.autofocus;
|
|
return (
|
|
// @ts-expect-error
|
|
node.autofocus ||
|
|
//
|
|
(autofocus !== undefined && autofocus !== 'false') ||
|
|
//
|
|
autoFocusables.indexOf(node) >= 0);
|
|
};
|
|
export const pickAutofocus = (nodesIndexes, orderedNodes, groups) => {
|
|
const nodes = nodesIndexes.map(({ node }) => node);
|
|
const autoFocusable = filterAutoFocusable(nodes.filter(findAutoFocused(groups)));
|
|
if (autoFocusable && autoFocusable.length) {
|
|
return pickFirstFocus(autoFocusable);
|
|
}
|
|
return pickFirstFocus(filterAutoFocusable(orderedNodes));
|
|
};
|