\r\n *
\r\n *
\r\n * \r\n * ...more frames where the (page) id should match the 'tab-id' of the radio button in a list item.\r\n *
\r\n *
\r\n * \r\n * Depends on the core and event-broadcaster class.\r\n */\r\nclass tabstrip {\r\n\r\n // #region: Constructor **********************************************************************/\r\n /**\r\n * The constructor does work that needs to be executed exactly once.\r\n */\r\n constructor(defaultTab, callback) {\r\n\r\n // A callback can be provided that is called on tab click.\r\n this.callback = callback;\r\n\r\n // Is selecting a new tab active.\r\n this.isSwitchingTab = false;\r\n\r\n // All tabs present in this tabstrip.\r\n this.tabs = [...document.querySelectorAll(\".tabstrip input[name=tabs]\")];\r\n\r\n // Add the events to the tabstrip instance.\r\n this.tabs.forEach((tab) => {\r\n // Add the click event on the radio (tab) to (re)load the url.\r\n // We use 'click' as the 'change' event will not fire when we set the selected radio to checked from script.\r\n // We can however reliably fire the click event.\r\n tab.addEventListener(\"click\", (e) => {\r\n if (this.callback && !this.callback(e, tab)) {\r\n return false;\r\n }\r\n \r\n // Select active tab.\r\n this.handleTabChange(tab.id);\r\n }, { capture: false });\r\n });\r\n\r\n // React to url change.\r\n top.window.addEventListener(\"popstate\", () => {\r\n var urlTab = isEmbed ? core.getEmbedUrl().searchParams.get(\"tab\") : core.getQueryParameter(\"tab\");\r\n\r\n this.selectTab(urlTab || defaultTab);\r\n });\r\n\r\n // Set initial tab.\r\n this.selectTab(core.getQueryParameter(\"tab\", window) || defaultTab);\r\n }\r\n // #endregion ********************************************************************************/\r\n\r\n // #region: Build ****************************************************************************/\r\n /**\r\n * Identifies class.\r\n * @returns {string} The string representation of this class.\r\n */\r\n toString() {\r\n return \"[tabstrip]\";\r\n }\r\n\r\n static toString() {\r\n return \"[tabstrip]\";\r\n }\r\n\r\n /** \r\n * Identifies the version.\r\n * @returns {string} The version number of this class.\r\n */\r\n static version() {\r\n return \"1.0.0\";\r\n }\r\n // #endregion ********************************************************************************/\r\n\r\n // #region: Public Methods *******************************************************************/\r\n /**\r\n * Enables all tabs.\r\n */\r\n enableAllTabs() {\r\n this.tabs.forEach((tab) => {\r\n tab.removeAttribute(\"disabled\");\r\n });\r\n }\r\n\r\n /**\r\n * Get the active tab.\r\n * @returns The currently active tab or the first in the list.\r\n */\r\n getActiveTab() {\r\n return document.querySelector(\".frames > iframe.active\") ?? this.tabs[0];\r\n }\r\n\r\n /**\r\n * Performs the action needed to switch tabs.\r\n * @param {String} newTabId The id for the new tab selected.\r\n */\r\n handleTabChange(newTabId) {\r\n const activeTab = this.getActiveTab();\r\n\r\n const url = document.querySelector(`#${newTabId}`).dataset.page;\r\n const iframe = document.querySelector(`#${newTabId}-page`);\r\n\r\n // So no tab is active at all.\r\n activeTab.classList.remove(\"active\");\r\n\r\n // Make this tab active.\r\n iframe.classList.add(\"active\");\r\n document.querySelector(`#${newTabId}`).checked = true;\r\n\r\n // Set new URL if needed.\r\n if (!iframe.contentWindow?.location.href.includes(url)) {\r\n var loadHandler = function () {\r\n eventBroadcaster.broadcast({ detail: { show: false }, message: broadcasts.LOCK_SCREEN });\r\n \r\n this.switchTabUrl(top.window, newTabId, iframe);\r\n this.isSwitchingTab = false;\r\n\r\n iframe.removeEventListener(\"load\", loadHandler);\r\n }.bind(this);\r\n\r\n iframe.addEventListener(\"load\", loadHandler, { capture: false });\r\n\r\n eventBroadcaster.broadcast({ detail: { show: true }, message: broadcasts.LOCK_SCREEN });\r\n iframe.src = baseUrl + url;\r\n }\r\n else {\r\n this.switchTabUrl(top.window, newTabId, iframe);\r\n this.isSwitchingTab = false;\r\n }\r\n }\r\n\r\n /**\r\n * In some cases the current tab may need to be reloaded.\r\n */\r\n reloadActiveTab() {\r\n const currentTab = document.querySelector(\"iframe.active\");\r\n\r\n currentTab.addEventListener(\"load\", function handler() {\r\n eventBroadcaster.broadcast({ detail: { show: false }, message: broadcasts.LOCK_SCREEN });\r\n this.removeEventListener(\"load\", handler);\r\n }, { capture: false });\r\n\r\n eventBroadcaster.broadcast({ detail: { show: true }, message: broadcasts.LOCK_SCREEN });\r\n currentTab.contentWindow.location.reload(true);\r\n }\r\n\r\n /**\r\n * Changing/saving any of the content in any of the tabs (might) need a reload to reflect the change.\r\n * @@param {String} tabId The id of the tab to reload.\r\n */\r\n reloadTab(tabId) {\r\n document.querySelector(`#${tabId}-page`)?.contentWindow.location.reload(true);\r\n }\r\n\r\n /**\r\n * Changing/saving any of the content in any of the tabs (might) need a reload to reflect the change.\r\n */\r\n reloadTabs() {\r\n [...document.querySelectorAll(\"iframe:not(.active)\")].forEach((frame) => {\r\n if (frame.src) {\r\n frame.contentWindow.location.reload(true);\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Performs the action needed to undo the switching of the tabs, make the original tab button active again.\r\n * @param {String} newtab The id for the new tab selected.\r\n */\r\n resetTabChange(newTab) {\r\n document.querySelector(`#${this.getActiveTab().id.replace(\"-page\", \"\")}`).checked = true;\r\n newTab.checked = false;\r\n }\r\n\r\n /**\r\n * Select the tab (by its id).\r\n * Also called form the outside (on push state change?).\r\n * @@param {Integer} id The tab to show.\r\n */\r\n selectTab(id) {\r\n if (!id) {\r\n return;\r\n }\r\n\r\n const tab = document.querySelector(\"#\" + id);\r\n\r\n if (tab && !tab.checked) {\r\n this.isSwitchingTab = true;\r\n\r\n tab.disabled = false;\r\n tab.click();\r\n }\r\n }\r\n\r\n /**\r\n * Update tab info om the document and browsing history.\r\n * @param {Window} mainWindow The window reference to use.\r\n * @param {String} id The identifier for the tab to select.\r\n * @param {HTMLIFrameElement} iframe The active selected iFrame.\r\n */\r\n switchTabUrl(mainWindow, id, iframe) {\r\n const newTabUrl = core.setQueryParameter(window.location.href, \"tab\", id);\r\n\r\n // Using replaceState to fix history navigation to specific tab.\r\n window.history.replaceState({ path: newTabUrl }, null, newTabUrl);\r\n\r\n if (!this.isSwitchingTab) {\r\n // Using pushState as a tabstrip is nested iFrames in a main iFrame.\r\n // Because of the nesting there is no history entry created in the parent page.\r\n if (isEmbed) {\r\n const embedUrl = core.removeQueryParameter(newTabUrl, \"embed\");\r\n core.setEmbedUrl(embedUrl, true);\r\n } else {\r\n const newUrl = core.setQueryParameter(mainWindow.location.href, \"tab\", id);\r\n mainWindow.history.pushState({ path: newTabUrl }, null, newUrl);\r\n }\r\n }\r\n\r\n topWindow.document.title = resources.consoleTitle.replace(\"{Page}\", `: ${iframe.contentWindow.document.title}`);\r\n }\r\n // #endregion ********************************************************************************/\r\n\r\n};\r\n// #endregion ************************************************************************************/"],"mappings":"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","ignoreList":[]}