"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "useModalAttributes", { enumerable: true, get: function() { return useModalAttributes; } }); const _reactutilities = require("@fluentui/react-utilities"); const _useTabsterAttributes = require("./useTabsterAttributes"); const _tabster = require("tabster"); const _useTabster = require("./useTabster"); const useModalAttributes = (options = {})=>{ const { trapFocus, alwaysFocusable, legacyTrapFocus } = options; const tabster = (0, _useTabster.useTabster)(); // Initializes the modalizer and restorer APIs if (tabster) { (0, _tabster.getModalizer)(tabster); (0, _tabster.getRestorer)(tabster); } const id = (0, _reactutilities.useId)('modal-', options.id); const modalAttributes = (0, _useTabsterAttributes.useTabsterAttributes)({ restorer: { type: _tabster.RestorerTypes.Source }, ...trapFocus && { modalizer: { id, isOthersAccessible: !trapFocus, isAlwaysAccessible: alwaysFocusable, isTrapped: legacyTrapFocus && trapFocus } } }); const triggerAttributes = (0, _useTabsterAttributes.useTabsterAttributes)({ restorer: { type: _tabster.RestorerTypes.Target } }); return { modalAttributes, triggerAttributes }; };