@jsenv/core 24.0.0 → 24.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/jsenv_event_source_client.js +338 -0
- package/dist/jsenv_event_source_client.js.map +126 -0
- package/dist/jsenv_exploring_index.js.map +7 -7
- package/dist/jsenv_redirector.js +1386 -0
- package/dist/jsenv_redirector.js.map +384 -0
- package/dist/jsenv_toolbar.js +37 -504
- package/dist/jsenv_toolbar.js.map +37 -112
- package/dist/jsenv_toolbar_injector.js +31 -126
- package/dist/jsenv_toolbar_injector.js.map +11 -30
- package/package.json +1 -1
- package/src/buildProject.js +2 -0
- package/src/dev_server.js +108 -70
- package/src/internal/compiling/compile-directory/getOrGenerateCompiledFile.js +1 -2
- package/src/internal/compiling/compileFile.js +51 -23
- package/src/internal/compiling/createCompiledFileService.js +22 -10
- package/src/internal/compiling/html_source_file_service.js +43 -9
- package/src/internal/compiling/jsenvCompilerForHtml.js +146 -107
- package/src/internal/compiling/startCompileServer.js +60 -44
- package/src/internal/dev_server/event_source_client/event_source_client.js +63 -0
- package/src/internal/dev_server/event_source_client/event_source_client_file_info.js +17 -0
- package/src/internal/{toolbar/eventsource/connectEventSource.js → dev_server/event_source_client/event_source_connection.js} +47 -78
- package/src/internal/dev_server/event_source_client/file_changes.js +82 -0
- package/src/internal/dev_server/event_source_client/livereload_preference.js +13 -0
- package/src/internal/{exploring → dev_server/exploring}/exploring.css +0 -0
- package/src/internal/{exploring → dev_server/exploring}/exploring.html +1 -1
- package/src/internal/{exploring → dev_server/exploring}/exploring.js +0 -0
- package/src/internal/dev_server/exploring/exploring_file_info.js +21 -0
- package/src/internal/{exploring → dev_server/exploring}/fetchExploringJson.js +1 -1
- package/src/internal/{exploring/exploring.redirector.html → dev_server/redirector/redirector.html} +1 -1
- package/src/internal/{exploring/exploring.redirector.js → dev_server/redirector/redirector.js} +1 -1
- package/src/internal/dev_server/redirector/redirector_file_info.js +24 -0
- package/src/internal/{toolbar → dev_server/toolbar}/animation/toolbar.animation.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/backtolist/toolbar.backtolist.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/compilation/compilation.css +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/compilation/toolbar.compilation.js +1 -1
- package/src/internal/{toolbar → dev_server/toolbar}/eventsource/eventsource.css +0 -0
- package/src/internal/dev_server/toolbar/eventsource/toolbar.eventsource.js +83 -0
- package/src/internal/{toolbar → dev_server/toolbar}/execution/execution.css +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/execution/toolbar.execution.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/focus/focus.css +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/focus/toolbar.focus.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/jsenv-logo.svg +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/notification/toolbar.notification.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/responsive/overflow-menu.css +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/responsive/toolbar.responsive.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/settings/settings.css +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/settings/toolbar.settings.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/theme/jsenv-theme.css +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/theme/light-theme.css +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/theme/toolbar.theme.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/toolbar.html +4 -37
- package/src/internal/{toolbar → dev_server/toolbar}/toolbar.injector.js +3 -92
- package/src/internal/{toolbar → dev_server/toolbar}/toolbar.main.css +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/toolbar.main.js +0 -0
- package/src/internal/dev_server/toolbar/toolbar_file_info.js +37 -0
- package/src/internal/{toolbar → dev_server/toolbar}/tooltip/tooltip.css +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/tooltip/tooltip.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/util/animation.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/util/dom.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/util/fetching.js +2 -2
- package/src/internal/{toolbar → dev_server/toolbar}/util/jsenvLogger.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/util/preferences.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/util/responsive.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/util/util.js +0 -0
- package/src/internal/{toolbar → dev_server/toolbar}/variant/variant.js +0 -0
- package/src/internal/jsenvInternalFiles.js +0 -58
- package/src/internal/toolbar/eventsource/connectCompileServerEventSource.js +0 -74
- package/src/internal/toolbar/eventsource/toolbar.eventsource.js +0 -239
|
@@ -15,20 +15,20 @@
|
|
|
15
15
|
"../src/internal/browser-utils/fetchUsingXHR.js",
|
|
16
16
|
"../src/internal/browser-utils/fetch-browser.js",
|
|
17
17
|
"../src/internal/browser-utils/fetchJson.js",
|
|
18
|
-
"../src/internal/exploring/fetchExploringJson.js",
|
|
19
|
-
"../src/internal/toolbar/util/dom.js",
|
|
20
|
-
"../src/internal/toolbar/util/animation.js",
|
|
21
|
-
"../src/internal/toolbar/focus/toolbar.focus.js",
|
|
22
|
-
"../src/internal/toolbar/backtolist/toolbar.backtolist.js",
|
|
23
|
-
"../src/internal/toolbar/util/preferences.js",
|
|
24
|
-
"../src/internal/toolbar/tooltip/tooltip.js",
|
|
25
|
-
"../src/internal/toolbar/settings/toolbar.settings.js",
|
|
26
|
-
"../src/internal/toolbar/notification/toolbar.notification.js",
|
|
27
|
-
"../src/internal/toolbar/theme/toolbar.theme.js",
|
|
28
|
-
"../src/internal/toolbar/animation/toolbar.animation.js",
|
|
29
|
-
"../src/internal/toolbar/variant/variant.js",
|
|
30
|
-
"../src/internal/toolbar/util/responsive.js",
|
|
31
|
-
"../src/internal/toolbar/execution/toolbar.execution.js",
|
|
18
|
+
"../src/internal/dev_server/exploring/fetchExploringJson.js",
|
|
19
|
+
"../src/internal/dev_server/toolbar/util/dom.js",
|
|
20
|
+
"../src/internal/dev_server/toolbar/util/animation.js",
|
|
21
|
+
"../src/internal/dev_server/toolbar/focus/toolbar.focus.js",
|
|
22
|
+
"../src/internal/dev_server/toolbar/backtolist/toolbar.backtolist.js",
|
|
23
|
+
"../src/internal/dev_server/toolbar/util/preferences.js",
|
|
24
|
+
"../src/internal/dev_server/toolbar/tooltip/tooltip.js",
|
|
25
|
+
"../src/internal/dev_server/toolbar/settings/toolbar.settings.js",
|
|
26
|
+
"../src/internal/dev_server/toolbar/notification/toolbar.notification.js",
|
|
27
|
+
"../src/internal/dev_server/toolbar/theme/toolbar.theme.js",
|
|
28
|
+
"../src/internal/dev_server/toolbar/animation/toolbar.animation.js",
|
|
29
|
+
"../src/internal/dev_server/toolbar/variant/variant.js",
|
|
30
|
+
"../src/internal/dev_server/toolbar/util/responsive.js",
|
|
31
|
+
"../src/internal/dev_server/toolbar/execution/toolbar.execution.js",
|
|
32
32
|
"../src/internal/CONSTANTS.js",
|
|
33
33
|
"../src/internal/runtime/computeCompileIdFromGroupId.js",
|
|
34
34
|
"../src/internal/runtime/detectBrowser/util.js",
|
|
@@ -48,13 +48,10 @@
|
|
|
48
48
|
"../src/internal/semantic-versioning/findHighestVersion.js",
|
|
49
49
|
"../src/internal/runtime/resolveGroup.js",
|
|
50
50
|
"../src/internal/runtime/createBrowserRuntime/scanBrowserRuntimeFeatures.js",
|
|
51
|
-
"../src/internal/toolbar/compilation/toolbar.compilation.js",
|
|
52
|
-
"../src/internal/toolbar/
|
|
53
|
-
"../src/internal/toolbar/
|
|
54
|
-
"../src/internal/toolbar/
|
|
55
|
-
"../src/internal/toolbar/eventsource/toolbar.eventsource.js",
|
|
56
|
-
"../src/internal/toolbar/responsive/toolbar.responsive.js",
|
|
57
|
-
"../src/internal/toolbar/toolbar.main.js"
|
|
51
|
+
"../src/internal/dev_server/toolbar/compilation/toolbar.compilation.js",
|
|
52
|
+
"../src/internal/dev_server/toolbar/eventsource/toolbar.eventsource.js",
|
|
53
|
+
"../src/internal/dev_server/toolbar/responsive/toolbar.responsive.js",
|
|
54
|
+
"../src/internal/dev_server/toolbar/toolbar.main.js"
|
|
58
55
|
],
|
|
59
56
|
"sourcesContent": [
|
|
60
57
|
"export const urlIsInsideOf = (url, otherUrl) => {\n const urlObject = new URL(url)\n const otherUrlObject = new URL(otherUrl)\n\n if (urlObject.origin !== otherUrlObject.origin) {\n return false\n }\n\n const urlPathname = urlObject.pathname\n const otherUrlPathname = otherUrlObject.pathname\n if (urlPathname === otherUrlPathname) {\n return false\n }\n\n const isInside = urlPathname.startsWith(otherUrlPathname)\n return isInside\n}\n",
|
|
@@ -70,7 +67,7 @@
|
|
|
70
67
|
"import { createDetailedMessage } from \"@jsenv/logger\"\n\nexport const fetchUsingXHR = async (\n url,\n {\n signal,\n method = \"GET\",\n credentials = \"same-origin\",\n headers = {},\n body = null,\n } = {},\n) => {\n const headersPromise = createPromiseAndHooks()\n const bodyPromise = createPromiseAndHooks()\n\n const xhr = new XMLHttpRequest()\n\n const failure = (error) => {\n // if it was already resolved, we must reject the body promise\n if (headersPromise.settled) {\n bodyPromise.reject(error)\n } else {\n headersPromise.reject(error)\n }\n }\n\n const cleanup = () => {\n xhr.ontimeout = null\n xhr.onerror = null\n xhr.onload = null\n xhr.onreadystatechange = null\n }\n\n xhr.ontimeout = () => {\n cleanup()\n failure(new Error(`xhr request timeout on ${url}.`))\n }\n\n xhr.onerror = (error) => {\n cleanup()\n // unfortunately with have no clue why it fails\n // might be cors for instance\n failure(createRequestError(error, { url }))\n }\n\n xhr.onload = () => {\n cleanup()\n bodyPromise.resolve()\n }\n\n signal.addEventListener(\"abort\", () => {\n xhr.abort()\n const abortError = new Error(\"aborted\")\n abortError.name = \"AbortError\"\n failure(abortError)\n })\n\n xhr.onreadystatechange = () => {\n // https://developer.mozilla.org/fr/docs/Web/API/XMLHttpRequest/readyState\n const { readyState } = xhr\n\n if (readyState === 2) {\n headersPromise.resolve()\n } else if (readyState === 4) {\n cleanup()\n bodyPromise.resolve()\n }\n }\n\n xhr.open(method, url, true)\n Object.keys(headers).forEach((key) => {\n xhr.setRequestHeader(key, headers[key])\n })\n xhr.withCredentials = computeWithCredentials({ credentials, url })\n if (\"responseType\" in xhr && hasBlob) {\n xhr.responseType = \"blob\"\n }\n xhr.send(body)\n\n await headersPromise\n\n // https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/responseURL\n const responseUrl =\n \"responseURL\" in xhr ? xhr.responseURL : headers[\"x-request-url\"]\n let responseStatus = xhr.status\n const responseStatusText = xhr.statusText\n const responseHeaders = getHeadersFromXHR(xhr)\n\n const readBody = async () => {\n await bodyPromise\n\n const { status } = xhr\n // in Chrome on file:/// URLs, status is 0\n if (status === 0) {\n responseStatus = 200\n }\n\n const body = \"response\" in xhr ? xhr.response : xhr.responseText\n\n return {\n responseBody: body,\n responseBodyType: detectBodyType(body),\n }\n }\n\n const text = async () => {\n const { responseBody, responseBodyType } = await readBody()\n\n if (responseBodyType === \"blob\") {\n return blobToText(responseBody)\n }\n if (responseBodyType === \"formData\") {\n throw new Error(\"could not read FormData body as text\")\n }\n if (responseBodyType === \"dataView\") {\n return arrayBufferToText(responseBody.buffer)\n }\n if (responseBodyType === \"arrayBuffer\") {\n return arrayBufferToText(responseBody)\n }\n // if (responseBodyType === \"text\" || responseBodyType === 'searchParams') {\n // return body\n // }\n return String(responseBody)\n }\n\n const json = async () => {\n const responseText = await text()\n return JSON.parse(responseText)\n }\n\n const blob = async () => {\n if (!hasBlob) {\n throw new Error(`blob not supported`)\n }\n\n const { responseBody, responseBodyType } = await readBody()\n\n if (responseBodyType === \"blob\") {\n return responseBody\n }\n if (responseBodyType === \"dataView\") {\n return new Blob([cloneBuffer(responseBody.buffer)])\n }\n if (responseBodyType === \"arrayBuffer\") {\n return new Blob([cloneBuffer(responseBody)])\n }\n if (responseBodyType === \"formData\") {\n throw new Error(\"could not read FormData body as blob\")\n }\n return new Blob([String(responseBody)])\n }\n\n const arrayBuffer = async () => {\n const { responseBody, responseBodyType } = await readBody()\n\n if (responseBodyType === \"arrayBuffer\") {\n return cloneBuffer(responseBody)\n }\n const responseBlob = await blob()\n return blobToArrayBuffer(responseBlob)\n }\n\n const formData = async () => {\n if (!hasFormData) {\n throw new Error(`formData not supported`)\n }\n const responseText = await text()\n return textToFormData(responseText)\n }\n\n return {\n url: responseUrl,\n status: responseStatus,\n statusText: responseStatusText,\n headers: responseHeaders,\n text,\n json,\n blob,\n arrayBuffer,\n formData,\n }\n}\n\nconst canUseBlob = () => {\n if (typeof window.FileReader !== \"function\") return false\n\n if (typeof window.Blob !== \"function\") return false\n\n try {\n // eslint-disable-next-line no-new\n new Blob()\n return true\n } catch (e) {\n return false\n }\n}\n\nconst hasBlob = canUseBlob()\n\nconst hasFormData = typeof window.FormData === \"function\"\n\nconst hasArrayBuffer = typeof window.ArrayBuffer === \"function\"\n\nconst hasSearchParams = typeof window.URLSearchParams === \"function\"\n\nconst createRequestError = (error, { url }) => {\n return new Error(\n createDetailedMessage(`error during xhr request on ${url}.`, {\n [\"error stack\"]: error.stack,\n }),\n )\n}\n\nconst createPromiseAndHooks = () => {\n let resolve\n let reject\n const promise = new Promise((res, rej) => {\n resolve = (value) => {\n promise.settled = true\n res(value)\n }\n reject = (value) => {\n promise.settled = true\n rej(value)\n }\n })\n promise.resolve = resolve\n promise.reject = reject\n return promise\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch\nconst computeWithCredentials = ({ credentials, url }) => {\n if (credentials === \"same-origin\") {\n return originSameAsGlobalOrigin(url)\n }\n return credentials === \"include\"\n}\n\nconst originSameAsGlobalOrigin = (url) => {\n // if we cannot read globalOrigin from window.location.origin, let's consider it's ok\n if (typeof window !== \"object\") return true\n if (typeof window.location !== \"object\") return true\n const globalOrigin = window.location.origin\n if (globalOrigin === \"null\") return true\n return hrefToOrigin(url) === globalOrigin\n}\n\nconst detectBodyType = (body) => {\n if (!body) {\n return \"\"\n }\n if (typeof body === \"string\") {\n return \"text\"\n }\n if (hasBlob && Blob.prototype.isPrototypeOf(body)) {\n return \"blob\"\n }\n if (hasFormData && FormData.prototype.isPrototypeOf(body)) {\n return \"formData\"\n }\n if (hasArrayBuffer) {\n if (hasBlob && isDataView(body)) {\n return `dataView`\n }\n if (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body)) {\n return `arrayBuffer`\n }\n }\n if (hasSearchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n return \"searchParams\"\n }\n return \"\"\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/getAllResponseHeaders#Example\nconst getHeadersFromXHR = (xhr) => {\n const headerMap = {}\n\n const headersString = xhr.getAllResponseHeaders()\n if (headersString === \"\") return headerMap\n\n const lines = headersString.trim().split(/[\\r\\n]+/)\n lines.forEach((line) => {\n const parts = line.split(\": \")\n const name = parts.shift()\n const value = parts.join(\": \")\n headerMap[name.toLowerCase()] = value\n })\n\n return headerMap\n}\n\nconst hrefToOrigin = (href) => {\n const scheme = hrefToScheme(href)\n\n if (scheme === \"file\") {\n return \"file://\"\n }\n\n if (scheme === \"http\" || scheme === \"https\") {\n const secondProtocolSlashIndex = scheme.length + \"://\".length\n const pathnameSlashIndex = href.indexOf(\"/\", secondProtocolSlashIndex)\n\n if (pathnameSlashIndex === -1) return href\n return href.slice(0, pathnameSlashIndex)\n }\n\n return href.slice(0, scheme.length + 1)\n}\n\nconst hrefToScheme = (href) => {\n const colonIndex = href.indexOf(\":\")\n if (colonIndex === -1) return \"\"\n return href.slice(0, colonIndex)\n}\n\nconst isDataView = (obj) => {\n return obj && DataView.prototype.isPrototypeOf(obj)\n}\n\nconst isArrayBufferView =\n ArrayBuffer.isView ||\n (() => {\n const viewClasses = [\n \"[object Int8Array]\",\n \"[object Uint8Array]\",\n \"[object Uint8ClampedArray]\",\n \"[object Int16Array]\",\n \"[object Uint16Array]\",\n \"[object Int32Array]\",\n \"[object Uint32Array]\",\n \"[object Float32Array]\",\n \"[object Float64Array]\",\n ]\n\n return (value) => {\n return (\n value && viewClasses.includes(Object.prototype.toString.call(value))\n )\n }\n })()\n\nconst textToFormData = (text) => {\n const form = new FormData()\n text\n .trim()\n .split(\"&\")\n .forEach(function (bytes) {\n if (bytes) {\n const split = bytes.split(\"=\")\n const name = split.shift().replace(/\\+/g, \" \")\n const value = split.join(\"=\").replace(/\\+/g, \" \")\n form.append(decodeURIComponent(name), decodeURIComponent(value))\n }\n })\n return form\n}\n\nconst blobToArrayBuffer = async (blob) => {\n const reader = new FileReader()\n const promise = fileReaderReady(reader)\n reader.readAsArrayBuffer(blob)\n return promise\n}\n\nconst blobToText = (blob) => {\n const reader = new FileReader()\n const promise = fileReaderReady(reader)\n reader.readAsText(blob)\n return promise\n}\n\nconst arrayBufferToText = (arrayBuffer) => {\n const view = new Uint8Array(arrayBuffer)\n const chars = new Array(view.length)\n let i = 0\n while (i < view.length) {\n chars[i] = String.fromCharCode(view[i])\n\n i++\n }\n return chars.join(\"\")\n}\n\nconst fileReaderReady = (reader) => {\n return new Promise(function (resolve, reject) {\n reader.onload = function () {\n resolve(reader.result)\n }\n reader.onerror = function () {\n reject(reader.error)\n }\n })\n}\n\nconst cloneBuffer = (buffer) => {\n if (buffer.slice) {\n return buffer.slice(0)\n }\n const view = new Uint8Array(buffer.byteLength)\n view.set(new Uint8Array(buffer))\n return view.buffer\n}\n",
|
|
71
68
|
"import { fetchUsingXHR } from \"./fetchUsingXHR.js\"\n\nconst fetchNative = async (url, { mode = \"cors\", ...options } = {}) => {\n const response = await window.fetch(url, {\n mode,\n ...options,\n })\n\n return {\n url: response.url,\n status: response.status,\n statusText: \"\",\n headers: responseToHeaders(response),\n text: () => response.text(),\n json: () => response.json(),\n blob: () => response.blob(),\n arrayBuffer: () => response.arrayBuffer(),\n formData: () => response.formData(),\n }\n}\n\nconst responseToHeaders = (response) => {\n const headers = {}\n response.headers.forEach((value, name) => {\n headers[name] = value\n })\n return headers\n}\n\nexport const fetchUrl =\n typeof window.fetch === \"function\" &&\n typeof window.AbortController === \"function\"\n ? fetchNative\n : fetchUsingXHR\n",
|
|
72
69
|
"import { fetchUrl } from \"./fetch-browser.js\"\n\nexport const fetchJson = async (url, options = {}) => {\n const response = await fetchUrl(url, options)\n const object = await response.json()\n return object\n}\n",
|
|
73
|
-
"import { createDetailedMessage } from \"@jsenv/logger\"\n\nimport { fetchJson } from \"
|
|
70
|
+
"import { createDetailedMessage } from \"@jsenv/logger\"\n\nimport { fetchJson } from \"../../browser-utils/fetchJson.js\"\n\nexport const fetchExploringJson = async ({ signal } = {}) => {\n try {\n const exploringInfo = await fetchJson(\"/.jsenv/exploring.json\", {\n signal,\n })\n return exploringInfo\n } catch (e) {\n if (signal && signal.aborted && e.name === \"AbortError\") {\n throw e\n }\n throw new Error(\n createDetailedMessage(\n `Cannot communicate with exploring server due to a network error`,\n {\n [\"error stack\"]: e.stack,\n },\n ),\n )\n }\n}\n",
|
|
74
71
|
"export const updateIframeOverflowOnParentWindow = () => {\n const aTooltipIsOpened =\n document.querySelector(\"[data-tooltip-visible]\") ||\n document.querySelector(\"[data-tooltip-auto-visible]\")\n const settingsAreOpened = document.querySelector(\"#settings[data-active]\")\n\n if (aTooltipIsOpened || settingsAreOpened) {\n enableIframeOverflowOnParentWindow()\n } else {\n disableIframeOverflowOnParentWindow()\n }\n}\n\nlet iframeOverflowEnabled = false\nconst enableIframeOverflowOnParentWindow = () => {\n if (iframeOverflowEnabled) return\n iframeOverflowEnabled = true\n\n const iframe = getToolbarIframe()\n const transitionDuration = iframe.style.transitionDuration\n setStyles(iframe, { \"height\": \"100%\", \"transition-duration\": \"0ms\" })\n if (transitionDuration) {\n setTimeout(() => {\n setStyles(iframe, { \"transition-duration\": transitionDuration })\n })\n }\n}\n\nconst disableIframeOverflowOnParentWindow = () => {\n if (!iframeOverflowEnabled) return\n iframeOverflowEnabled = false\n\n const iframe = getToolbarIframe()\n const transitionDuration = iframe.style.transitionDuration\n setStyles(iframe, { \"height\": \"40px\", \"transition-duration\": \"0ms\" })\n if (transitionDuration) {\n setTimeout(() => {\n setStyles(iframe, { \"transition-duration\": transitionDuration })\n })\n }\n}\n\nexport const getToolbarIframe = () => {\n const iframes = Array.from(window.parent.document.querySelectorAll(\"iframe\"))\n return iframes.find((iframe) => iframe.contentWindow === window)\n}\n\nexport const forceHideElement = (element) => {\n element.setAttribute(\"data-force-hide\", \"\")\n}\n\nexport const removeForceHideElement = (element) => {\n element.removeAttribute(\"data-force-hide\")\n}\n\nexport const setStyles = (element, styles) => {\n const elementStyle = element.style\n const restoreStyles = Object.keys(styles).map((styleName) => {\n let restore\n if (styleName in elementStyle) {\n const currentStyle = elementStyle[styleName]\n restore = () => {\n elementStyle[styleName] = currentStyle\n }\n } else {\n restore = () => {\n delete elementStyle[styleName]\n }\n }\n\n elementStyle[styleName] = styles[styleName]\n\n return restore\n })\n return () => {\n restoreStyles.forEach((restore) => restore())\n }\n}\n\nexport const setAttributes = (element, attributes) => {\n Object.keys(attributes).forEach((name) => {\n element.setAttribute(name, attributes[name])\n })\n}\n\nexport const getDocumentScroll = () => {\n return {\n x: document.documentElement.scrollLeft,\n y: document.documentElement.scrollTop,\n }\n}\n\nexport const toolbarSectionIsActive = (element) => {\n return element.hasAttribute(\"data-active\")\n}\n\nexport const activateToolbarSection = (element) => {\n element.setAttribute(\"data-active\", \"\")\n}\n\nexport const deactivateToolbarSection = (element) => {\n element.removeAttribute(\"data-active\")\n}\n",
|
|
75
72
|
"import { setStyles } from \"./dom.js\"\n\nconst animateFallback = () => {\n return Promise.resolve()\n}\n\nconst animateNative = (node, keyframes, { signal, ...options } = {}) => {\n const animation = node.animate(keyframes, options)\n if (signal) {\n signal.addEventListener(\"abort\", () => {\n animation.cancel()\n })\n }\n return new Promise((resolve) => {\n animation.onfinish = resolve\n })\n}\n\nexport const canUseAnimation = () =>\n typeof HTMLElement.prototype.animate === \"function\"\n\nexport const animateElement = canUseAnimation()\n ? animateNative\n : animateFallback\n\nexport const fadeIn = (node, options) =>\n animateElement(\n node,\n [\n {\n opacity: 0,\n },\n {\n opacity: 1,\n },\n ],\n options,\n )\n\nexport const fadeOut = (node, options) =>\n animateElement(\n node,\n [\n {\n opacity: 1,\n },\n {\n opacity: 0,\n },\n ],\n options,\n )\n\nexport const move = (fromNode, toNode, options) => {\n const fromComputedStyle = window.getComputedStyle(fromNode)\n const toComputedStyle = window.getComputedStyle(toNode)\n // get positions of input in toolbar and aElement\n const fromPosition = fromNode.getBoundingClientRect()\n const toPosition = toNode.getBoundingClientRect()\n\n // we'll do the animation in a div preventing overflow and pointer events\n const div = document.createElement(\"div\")\n div.style.position = \"absolute\"\n div.style.left = 0\n div.style.top = 0\n div.style.width = `${document.documentElement.scrollWidth}px`\n div.style.height = `${document.documentElement.scrollHeight}px`\n div.style.overflow = \"hidden\"\n div.style.pointerEvents = \"none\"\n\n const documentScroll = {\n left: window.pageXOffset || document.documentElement.scrollLeft,\n top: window.pageYOffset || document.documentElement.scrollTop,\n }\n\n // clone node and style it\n const copy = fromNode.cloneNode(true)\n copy.style.position = \"absolute\"\n copy.style.left = `${documentScroll.left + fromPosition.left}px`\n copy.style.top = `${documentScroll.top + fromPosition.top}px`\n copy.style.maxWidth = `${fromPosition.right - fromPosition.left}px`\n copy.style.overflow = toComputedStyle.overflow\n copy.style.textOverflow = toComputedStyle.textOverflow\n div.appendChild(copy)\n document.body.appendChild(div)\n\n const left =\n toPosition.left -\n fromPosition.left -\n (parseInt(fromComputedStyle.paddingLeft) || 0)\n const top =\n toPosition.top -\n fromPosition.top -\n (parseInt(fromComputedStyle.paddingTop) || 0)\n // define final position of new element and the duration\n const translate = `translate(${left}px, ${top}px)`\n\n // animate new element\n return animateElement(\n copy,\n [\n {\n transform: \"translate(0px, 0px)\",\n backgroundColor: fromComputedStyle.backgroundColor,\n color: fromComputedStyle.color,\n fontSize: fromComputedStyle.fontSize,\n height: `${fromPosition.bottom - fromPosition.top}px`,\n width: \"100%\",\n },\n {\n offset: 0.9,\n backgroundColor: fromComputedStyle.backgroundColor,\n color: fromComputedStyle.color,\n },\n {\n transform: translate,\n backgroundColor: toComputedStyle.backgroundColor,\n color: toComputedStyle.color,\n fontSize: toComputedStyle.fontSize,\n height: `${toPosition.bottom - toPosition.top}px`,\n width: toComputedStyle.width,\n },\n ],\n options,\n ).then(() => {\n div.parentNode.removeChild(div)\n })\n}\n\n// the whole point of this toolbar animation wass to flight a visual imperfection when it's done by css transition.\n// This imperfection is a white line sometimes flickering at the bottom of the page.\n// It got fixed by removing the usage of calc(100vh - 40px)\n// It was hapenning in chrome, safari but not inside Firefox\n// I assume it's because Firefox does not read parent element min-height while\n// chrome use it to compute min-height: 100%\nexport const createToolbarAnimation = () => {\n const collapsedState = {\n \"#page\": { paddingBottom: 0 },\n \"footer\": { height: 0 },\n \"#toolbar\": { visibility: \"hidden\" },\n }\n const expandedState = {\n \"#page\": { paddingBottom: \"40px\" },\n \"footer\": { height: \"40px\" },\n \"#toolbar\": { visibility: \"visible\" },\n }\n const expandTransition = transit(collapsedState, expandedState, {\n duration: 300,\n })\n\n const expand = () => {\n expandTransition.play()\n }\n\n const collapse = () => {\n expandTransition.reverse()\n }\n\n return { expand, collapse }\n}\n\nexport const transit = (\n fromState,\n toState,\n { commitStyles = true, fill = \"both\", duration = 300 } = {},\n) => {\n const steps = []\n Object.keys(fromState).forEach((selector) => {\n const fromStyles = {}\n const toStyles = {}\n const element = document.querySelector(selector)\n\n const keyframes = []\n const fromProperties = fromState[selector]\n const toProperties = toState[selector]\n Object.keys(fromProperties).forEach((propertyName) => {\n const from = fromProperties[propertyName]\n const to = toProperties[propertyName]\n fromStyles[propertyName] = from\n toStyles[propertyName] = to\n })\n keyframes.push(fromStyles, toStyles)\n\n let animation\n if (canUseAnimation()) {\n const effect = new KeyframeEffect(element, keyframes, { fill, duration })\n animation = new Animation(effect)\n } else {\n animation = {\n playbackRate: 1,\n play: () => {\n animation.onfinish()\n },\n reverse: () => {\n animation.playbackRate = -1\n animation.onfinish()\n },\n finish: () => {},\n onfinish: () => {},\n }\n }\n\n steps.push({\n element,\n animation,\n fromStyles,\n toStyles,\n })\n })\n\n const play = async () => {\n await Promise.all(\n steps.map(({ animation, element, toStyles }) => {\n return new Promise((resolve) => {\n animation.onfinish = () => {\n if (commitStyles) {\n setStyles(element, toStyles)\n }\n resolve()\n }\n if (animation.playbackRate === -1) {\n animation.reverse()\n } else {\n animation.play()\n }\n })\n }),\n )\n }\n\n const reverse = async () => {\n await Promise.all(\n steps.map(({ animation, element, fromStyles }) => {\n return new Promise((resolve) => {\n animation.onfinish = () => {\n if (commitStyles) {\n setStyles(element, fromStyles)\n }\n resolve()\n }\n animation.reverse()\n })\n }),\n )\n }\n\n const finish = async () => {\n steps.forEach(({ animation }) => {\n animation.finish()\n })\n }\n\n return { play, reverse, finish }\n}\n\nexport const startJavaScriptAnimation = ({\n duration = 300,\n timingFunction = (t) => t,\n onProgress = () => {},\n onCancel = () => {},\n onComplete = () => {},\n}) => {\n if (isNaN(duration)) {\n // console.warn(`duration must be a number, received ${duration}`)\n return () => {}\n }\n duration = parseInt(duration, 10)\n const startMs = performance.now()\n let currentRequestAnimationFrameId\n let done = false\n let rawProgress = 0\n let progress = 0\n const handler = () => {\n currentRequestAnimationFrameId = null\n const nowMs = performance.now()\n rawProgress = Math.min((nowMs - startMs) / duration, 1)\n progress = timingFunction(rawProgress)\n done = rawProgress === 1\n onProgress({\n done,\n rawProgress,\n progress,\n })\n if (done) {\n onComplete()\n } else {\n currentRequestAnimationFrameId = window.requestAnimationFrame(handler)\n }\n }\n handler()\n const stop = () => {\n if (currentRequestAnimationFrameId) {\n window.cancelAnimationFrame(currentRequestAnimationFrameId)\n currentRequestAnimationFrameId = null\n }\n if (!done) {\n done = true\n onCancel({\n rawProgress,\n progress,\n })\n }\n }\n return stop\n}\n",
|
|
76
73
|
"// handle data-last-interaction attr on html (focusring)\nwindow.addEventListener(\"mousedown\", (mousedownEvent) => {\n if (mousedownEvent.defaultPrevented) {\n return\n }\n document.documentElement.setAttribute(\"data-last-interaction\", \"mouse\")\n})\nwindow.addEventListener(\"touchstart\", (touchstartEvent) => {\n if (touchstartEvent.defaultPrevented) {\n return\n }\n document.documentElement.setAttribute(\"data-last-interaction\", \"mouse\")\n})\nwindow.addEventListener(\"keydown\", (keydownEvent) => {\n if (keydownEvent.defaultPrevented) {\n return\n }\n document.documentElement.setAttribute(\"data-last-interaction\", \"keyboard\")\n})\n",
|
|
@@ -103,11 +100,8 @@
|
|
|
103
100
|
"import { versionIsBelow } from \"./versionIsBelow.js\"\n\nexport const findHighestVersion = (...values) => {\n if (values.length === 0) throw new Error(`missing argument`)\n\n return values.reduce((highestVersion, value) => {\n if (versionIsBelow(highestVersion, value)) {\n return value\n }\n return highestVersion\n })\n}\n",
|
|
104
101
|
"import { findHighestVersion } from \"../semantic-versioning/index.js\"\n\nexport const resolveGroup = ({ name, version }, groupMap) => {\n return Object.keys(groupMap).find((compileIdCandidate) => {\n const { minRuntimeVersions } = groupMap[compileIdCandidate]\n const versionForGroup = minRuntimeVersions[name]\n if (!versionForGroup) {\n return false\n }\n const highestVersion = findHighestVersion(version, versionForGroup)\n return highestVersion === version\n })\n}\n",
|
|
105
102
|
"import { fetchJson } from \"../../browser-utils/fetchJson.js\"\nimport { computeCompileIdFromGroupId } from \"../computeCompileIdFromGroupId.js\"\nimport { detectBrowser } from \"../detectBrowser/detectBrowser.js\"\nimport { resolveGroup } from \"../resolveGroup.js\"\n\nexport const scanBrowserRuntimeFeatures = async ({\n coverageHandledFromOutside = false,\n failFastOnFeatureDetection = false,\n} = {}) => {\n const {\n outDirectoryRelativeUrl,\n inlineImportMapIntoHTML,\n customCompilerPatterns,\n compileServerGroupMap,\n } = await fetchJson(\"/.jsenv/__compile_server_meta__.json\")\n\n const browser = detectBrowser()\n const compileId = computeCompileIdFromGroupId({\n groupId: resolveGroup(browser, compileServerGroupMap),\n groupMap: compileServerGroupMap,\n })\n const groupInfo = compileServerGroupMap[compileId]\n\n const featuresReport = {\n importmap: undefined,\n dynamicImport: undefined,\n topLevelAwait: undefined,\n jsonImportAssertions: undefined,\n cssImportAssertions: undefined,\n newStylesheet: undefined,\n }\n await detectSupportedFeatures({\n featuresReport,\n failFastOnFeatureDetection,\n inlineImportMapIntoHTML,\n })\n const pluginRequiredNameArray = await pluginRequiredNamesFromGroupInfo(\n groupInfo,\n {\n featuresReport,\n coverageHandledFromOutside,\n },\n )\n\n const canAvoidCompilation =\n customCompilerPatterns.length === 0 &&\n pluginRequiredNameArray.length === 0 &&\n featuresReport.importmap &&\n featuresReport.dynamicImport &&\n featuresReport.topLevelAwait\n\n return {\n canAvoidCompilation,\n featuresReport,\n customCompilerPatterns,\n pluginRequiredNameArray,\n inlineImportMapIntoHTML,\n outDirectoryRelativeUrl,\n compileId,\n browser,\n }\n}\n\nconst detectSupportedFeatures = async ({\n featuresReport,\n failFastOnFeatureDetection,\n inlineImportMapIntoHTML,\n}) => {\n // start testing importmap support first and not in paralell\n // so that there is not module script loaded beore importmap is injected\n // it would log an error in chrome console and return undefined\n const importmap = await supportsImportmap({\n // chrome supports inline but not remote importmap\n // https://github.com/WICG/import-maps/issues/235\n\n // at this stage we won't know if the html file will use\n // an importmap or not and if that importmap is inline or specified with an src\n // so we should test if browser support local and remote importmap.\n // But there exploring server can inline importmap by transforming html\n // and in that case we can test only the local importmap support\n // so we test importmap support and the remote one\n remote: !inlineImportMapIntoHTML,\n })\n featuresReport.importmap = importmap\n if (!importmap && failFastOnFeatureDetection) {\n return\n }\n\n const dynamicImport = await supportsDynamicImport()\n featuresReport.dynamicImport = dynamicImport\n if (!dynamicImport && failFastOnFeatureDetection) {\n return\n }\n\n const topLevelAwait = await supportsTopLevelAwait()\n featuresReport.topLevelAwait = topLevelAwait\n if (!topLevelAwait && failFastOnFeatureDetection) {\n return\n }\n}\n\nconst pluginRequiredNamesFromGroupInfo = async (\n groupInfo,\n { featuresReport, coverageHandledFromOutside },\n) => {\n const { pluginRequiredNameArray } = groupInfo\n const requiredPluginNames = pluginRequiredNameArray.slice()\n const markPluginAsSupported = (name) => {\n const index = requiredPluginNames.indexOf(name)\n if (index > -1) {\n requiredPluginNames.splice(index, 1)\n }\n }\n\n // When instrumentation CAN be handed by playwright\n // https://playwright.dev/docs/api/class-chromiumcoverage#chromiumcoveragestartjscoverageoptions\n // coverageHandledFromOutside is true and \"transform-instrument\" becomes non mandatory\n if (coverageHandledFromOutside) {\n markPluginAsSupported(\"transform-instrument\")\n }\n\n if (pluginRequiredNameArray.includes(\"transform-import-assertions\")) {\n const jsonImportAssertions = await supportsJsonImportAssertions()\n featuresReport.jsonImportAssertions = jsonImportAssertions\n\n const cssImportAssertions = await supportsCssImportAssertions()\n featuresReport.cssImportAssertions = cssImportAssertions\n\n if (jsonImportAssertions && cssImportAssertions) {\n markPluginAsSupported(\"transform-import-assertions\")\n }\n }\n\n if (pluginRequiredNameArray.includes(\"new-stylesheet-as-jsenv-import\")) {\n const newStylesheet = supportsNewStylesheet()\n featuresReport.newStylesheet = newStylesheet\n markPluginAsSupported(\"new-stylesheet-as-jsenv-import\")\n }\n\n return requiredPluginNames\n}\n\nconst supportsNewStylesheet = () => {\n try {\n // eslint-disable-next-line no-new\n new CSSStyleSheet()\n return true\n } catch (e) {\n return false\n }\n}\n\nconst supportsImportmap = async ({ remote = true } = {}) => {\n const specifier = asBase64Url(`export default false`)\n\n const importMap = {\n imports: {\n [specifier]: asBase64Url(`export default true`),\n },\n }\n\n const importmapScript = document.createElement(\"script\")\n const importmapString = JSON.stringify(importMap, null, \" \")\n importmapScript.type = \"importmap\"\n if (remote) {\n importmapScript.src = `data:application/json;base64,${window.btoa(\n importmapString,\n )}`\n } else {\n importmapScript.textContent = importmapString\n }\n\n document.body.appendChild(importmapScript)\n\n const scriptModule = document.createElement(\"script\")\n scriptModule.type = \"module\"\n scriptModule.src = asBase64Url(\n `import supported from \"${specifier}\"; window.__importmap_supported = supported`,\n )\n\n return new Promise((resolve, reject) => {\n scriptModule.onload = () => {\n const supported = window.__importmap_supported\n delete window.__importmap_supported\n document.body.removeChild(scriptModule)\n document.body.removeChild(importmapScript)\n resolve(supported)\n }\n scriptModule.onerror = () => {\n document.body.removeChild(scriptModule)\n document.body.removeChild(importmapScript)\n reject()\n }\n document.body.appendChild(scriptModule)\n })\n}\n\nconst supportsDynamicImport = async () => {\n const moduleSource = asBase64Url(`export default 42`)\n try {\n const namespace = await import(moduleSource)\n return namespace.default === 42\n } catch (e) {\n return false\n }\n}\n\nconst supportsTopLevelAwait = async () => {\n const moduleSource = asBase64Url(`export default await Promise.resolve(42)`)\n try {\n const namespace = await import(moduleSource)\n return namespace.default === 42\n } catch (e) {\n return false\n }\n}\n\nconst supportsJsonImportAssertions = async () => {\n const jsonBase64Url = asBase64Url(\"42\", \"application/json\")\n const moduleSource = asBase64Url(\n `export { default } from \"${jsonBase64Url}\" assert { type: \"json\" }`,\n )\n try {\n const namespace = await import(moduleSource)\n return namespace.default === 42\n } catch (e) {\n return false\n }\n}\n\nconst supportsCssImportAssertions = async () => {\n const cssBase64Url = asBase64Url(\"p { color: red; }\", \"text/css\")\n const moduleSource = asBase64Url(\n `export { default } from \"${cssBase64Url}\" assert { type: \"css\" }`,\n )\n try {\n const namespace = await import(moduleSource)\n return namespace.default instanceof CSSStyleSheet\n } catch (e) {\n return false\n }\n}\n\nconst asBase64Url = (text, mimeType = \"application/javascript\") => {\n return `data:${mimeType};base64,${window.btoa(text)}`\n}\n",
|
|
106
|
-
"import { scanBrowserRuntimeFeatures } from \"
|
|
107
|
-
"
|
|
108
|
-
"export const connectEventSource = (\n eventSourceUrl,\n events = {},\n {\n connecting = () => {},\n connected = () => {},\n cancelled = () => {},\n failed = () => {},\n retryMaxAttempt = Infinity,\n retryAllocatedMs = Infinity,\n lastEventId,\n } = {},\n) => {\n const { EventSource } = window\n if (typeof EventSource !== \"function\") {\n return () => {}\n }\n\n const eventSourceOrigin = new URL(eventSourceUrl).origin\n\n // will be either abort, disconnect or a third function calling cancelled\n // depending on connectionStatus\n let cancelCurrentConnection = () => {}\n\n const reconnect = () => {\n attemptConnection(\n lastEventId\n ? addLastEventIdIntoUrlSearchParams(eventSourceUrl, lastEventId)\n : eventSourceUrl,\n )\n }\n\n const attemptConnection = (url) => {\n const eventSource = new EventSource(url, {\n withCredentials: true,\n })\n\n let connectionStatus = \"connecting\"\n const abort = () => {\n if (connectionStatus !== \"connecting\") {\n console.warn(`abort ignored because connection is ${connectionStatus}`)\n return\n }\n connectionStatus = \"aborted\"\n eventSource.onerror = undefined\n eventSource.close()\n cancelled({ connect: reconnect })\n }\n cancelCurrentConnection = abort\n connecting({ cancel: abort })\n\n eventSource.onopen = () => {\n connectionStatus = \"connected\"\n const disconnect = () => {\n if (connectionStatus !== \"connected\") {\n console.warn(\n `disconnect ignored because connection is ${connectionStatus}`,\n )\n return\n }\n connectionStatus = \"disconnected\"\n eventSource.onerror = undefined\n eventSource.close()\n cancelled({ connect: reconnect })\n }\n cancelCurrentConnection = disconnect\n connected({ cancel: disconnect })\n }\n\n let retryCount = 0\n let firstRetryMs = Date.now()\n\n eventSource.onerror = (errorEvent) => {\n const considerFailed = () => {\n connectionStatus = \"disconnected\"\n failed({\n cancel: () => {\n if (connectionStatus !== \"failed\") {\n console.warn(\n `disable ignored because connection is ${connectionStatus}`,\n )\n return\n }\n connectionStatus = \"disabled\"\n cancelled({ connect: reconnect })\n },\n connect: reconnect,\n })\n }\n\n if (errorEvent.target.readyState === EventSource.CONNECTING) {\n if (retryCount > retryMaxAttempt) {\n console.info(`could not connect after ${retryMaxAttempt} attempt`)\n eventSource.onerror = undefined\n eventSource.close()\n considerFailed()\n return\n }\n\n if (retryCount === 0) {\n firstRetryMs = Date.now()\n } else {\n const allRetryDuration = Date.now() - firstRetryMs\n if (retryAllocatedMs && allRetryDuration > retryAllocatedMs) {\n console.info(\n `could not connect in less than ${retryAllocatedMs} ms`,\n )\n eventSource.onerror = undefined\n eventSource.close()\n considerFailed()\n return\n }\n }\n\n connectionStatus = \"connecting\"\n retryCount++\n connecting({ cancel: abort })\n return\n }\n\n if (errorEvent.target.readyState === EventSource.CLOSED) {\n considerFailed()\n return\n }\n }\n Object.keys(events).forEach((eventName) => {\n eventSource.addEventListener(eventName, (e) => {\n if (e.origin === eventSourceOrigin) {\n if (e.lastEventId) {\n lastEventId = e.lastEventId\n }\n events[eventName](e)\n }\n })\n })\n if (!events.hasOwnProperty(\"welcome\")) {\n eventSource.addEventListener(\"welcome\", (e) => {\n if (e.origin === eventSourceOrigin && e.lastEventId) {\n lastEventId = e.lastEventId\n }\n })\n }\n }\n\n attemptConnection(eventSourceUrl)\n const disconnect = () => {\n cancelCurrentConnection()\n }\n\n const removePageUnloadListener = listenPageUnload(() => {\n disconnect()\n })\n\n return () => {\n removePageUnloadListener()\n disconnect()\n }\n}\n\nconst addLastEventIdIntoUrlSearchParams = (url, lastEventId) => {\n if (url.indexOf(\"?\") === -1) {\n url += \"?\"\n } else {\n url += \"&\"\n }\n return `${url}last-event-id=${encodeURIComponent(lastEventId)}`\n}\n\n// const listenPageMightFreeze = (callback) => {\n// const removePageHideListener = listenEvent(window, \"pagehide\", (pageHideEvent) => {\n// if (pageHideEvent.persisted === true) {\n// callback(pageHideEvent)\n// }\n// })\n// return removePageHideListener\n// }\n\n// const listenPageFreeze = (callback) => {\n// const removeFreezeListener = listenEvent(document, \"freeze\", (freezeEvent) => {\n// callback(freezeEvent)\n// })\n// return removeFreezeListener\n// }\n\n// const listenPageIsRestored = (callback) => {\n// const removeResumeListener = listenEvent(document, \"resume\", (resumeEvent) => {\n// removePageshowListener()\n// callback(resumeEvent)\n// })\n// const removePageshowListener = listenEvent(window, \"pageshow\", (pageshowEvent) => {\n// if (pageshowEvent.persisted === true) {\n// removePageshowListener()\n// removeResumeListener()\n// callback(pageshowEvent)\n// }\n// })\n// return () => {\n// removeResumeListener()\n// removePageshowListener()\n// }\n// }\n\nconst listenPageUnload = (callback) => {\n const removePageHideListener = listenEvent(\n window,\n \"pagehide\",\n (pageHideEvent) => {\n if (pageHideEvent.persisted !== true) {\n callback(pageHideEvent)\n }\n },\n )\n return removePageHideListener\n}\n\nconst listenEvent = (emitter, event, callback) => {\n emitter.addEventListener(event, callback)\n return () => {\n emitter.removeEventListener(event, callback)\n }\n}\n",
|
|
109
|
-
"import { connectEventSource } from \"./connectEventSource.js\"\nimport { jsenvLogger } from \"../util/jsenvLogger.js\"\n\nexport const connectCompileServerEventSource = (\n fileRelativeUrl,\n {\n onFileModified,\n onFileRemoved,\n onConnecting,\n onConnectionCancelled,\n onConnectionFailed,\n onConnected,\n lastEventId,\n },\n) => {\n const eventSourceUrl = `${window.origin}/${fileRelativeUrl}`\n\n let cancel = () => {}\n\n const connect = () => {\n return new Promise((resolve) => {\n cancel = connectEventSource(\n eventSourceUrl,\n {\n \"file-modified\": ({ data }) => {\n jsenvLogger.debug(`${data} modified`)\n onFileModified(data)\n },\n \"file-removed\": ({ data }) => {\n jsenvLogger.debug(`${data} removed`)\n onFileRemoved(data)\n },\n },\n {\n connecting: ({ cancel }) => {\n jsenvLogger.debug(`connecting to ${eventSourceUrl}`)\n onConnecting({\n cancel: () => {\n cancel()\n },\n })\n },\n connected: ({ cancel }) => {\n jsenvLogger.debug(`connected to ${eventSourceUrl}`)\n resolve(true)\n onConnected({\n cancel: () => {\n cancel()\n },\n })\n },\n cancelled: ({ connect }) => {\n jsenvLogger.debug(`disconnected from ${eventSourceUrl}`)\n resolve(false)\n onConnectionCancelled({ connect })\n },\n failed: ({ connect }) => {\n jsenvLogger.debug(`disconnected from ${eventSourceUrl}`)\n resolve(false)\n onConnectionFailed({ connect })\n },\n retryMaxAttempt: Infinity,\n retryAllocatedMs: 20 * 1000,\n lastEventId,\n },\n )\n })\n }\n\n return {\n connect,\n disconnect: () => cancel(),\n }\n}\n",
|
|
110
|
-
"import { removeForceHideElement } from \"../util/dom.js\"\nimport { createPromiseAndHooks } from \"../util/util.js\"\nimport { createPreference } from \"../util/preferences.js\"\nimport { enableVariant } from \"../variant/variant.js\"\n\nimport {\n toggleTooltip,\n removeAutoShowTooltip,\n autoShowTooltip,\n} from \"../tooltip/tooltip.js\"\nimport { connectCompileServerEventSource } from \"./connectCompileServerEventSource.js\"\n\nconst livereloadingPreference = createPreference(\"livereloading\")\nlet eventSourceState = \"default\"\nlet livereloadingAvailableOnServer = false\n\nexport const initToolbarEventSource = ({\n executedFileRelativeUrl,\n livereloading,\n}) => {\n const getLivereloadCallback = (originalFileProjectRelativeUrl) => {\n const callbacks = window.parent.__jsenv__.livereloadingCallbacks\n return callbacks[originalFileProjectRelativeUrl]\n }\n\n removeForceHideElement(document.querySelector(\"#eventsource-indicator\"))\n connectEventSource({ executedFileRelativeUrl, getLivereloadCallback })\n livereloadingAvailableOnServer = livereloading\n if (!livereloadingAvailableOnServer) {\n disableLivereloadSetting()\n }\n\n const livereloadCheckbox = document.querySelector(\"#toggle-livereload\")\n livereloadCheckbox.checked = shouldLivereload()\n livereloadCheckbox.onchange = () => {\n livereloadingPreference.set(livereloadCheckbox.checked)\n updateEventSourceIndicator()\n }\n updateEventSourceIndicator()\n}\n\nconst shouldLivereload = () => {\n return livereloadingAvailableOnServer && getLivereloadingPreference()\n}\n\nconst disableLivereloadSetting = () => {\n document\n .querySelector(\".settings-livereload\")\n .setAttribute(\"data-disabled\", \"true\")\n document\n .querySelector(\".settings-livereload\")\n .setAttribute(\"title\", `Livereload not available: disabled by server`)\n document.querySelector(\"#toggle-livereload\").disabled = true\n}\n\nconst parentEventSource = window.parent.__jsenv_eventsource__()\nconst latestChangeMap = parentEventSource.latestChangeMap\nlet eventSourceHooks = {}\nlet eventSourceConnection\nlet connectionReadyPromise\n\nconst handleFileChange = ({ file, eventType, livereloadCallback }) => {\n latestChangeMap[file] = eventType\n updateEventSourceIndicator()\n\n if (shouldLivereload()) {\n if (livereloadCallback) {\n livereloadCallback({\n file,\n latestChangeMap,\n reloadPage,\n })\n } else if (\n file.endsWith(\".css\") ||\n file.endsWith(\".scss\") ||\n file.endsWith(\".sass\")\n ) {\n reloadAllCss()\n delete latestChangeMap[file]\n updateEventSourceIndicator()\n } else {\n reloadPage()\n }\n }\n}\n\nconst reloadAllCss = () => {\n const links = Array.from(window.parent.document.getElementsByTagName(\"link\"))\n links.forEach((link) => {\n if (link.rel === \"stylesheet\") {\n const url = new URL(link.href)\n url.searchParams.set(\"t\", Date.now())\n link.href = String(url)\n }\n })\n}\n\nconst reloadPage = () => {\n window.parent.location.reload(true)\n}\n\nconst reloadChanges = () => {\n const fullReloadRequired = Object.keys(latestChangeMap).some(\n (key) => !key.endsWith(\".css\"),\n )\n if (fullReloadRequired) {\n reloadPage()\n return\n }\n const cssReloadRequired = Object.keys(latestChangeMap).some((key) =>\n key.endsWith(\".css\"),\n )\n if (cssReloadRequired) {\n reloadAllCss()\n Object.keys(latestChangeMap).forEach((key) => {\n if (key.endsWith(\".css\")) {\n delete latestChangeMap[key]\n }\n updateEventSourceIndicator()\n })\n }\n}\n\nconst connectEventSource = ({\n executedFileRelativeUrl,\n getLivereloadCallback,\n}) => {\n updateEventSourceIndicator()\n connectionReadyPromise = createPromiseAndHooks()\n\n eventSourceConnection = connectCompileServerEventSource(\n executedFileRelativeUrl,\n {\n onFileModified: (file) => {\n handleFileChange({\n file,\n eventType: \"modified\",\n livereloadCallback: getLivereloadCallback(file),\n })\n },\n onFileRemoved: (file) => {\n handleFileChange({\n file,\n eventType: \"removed\",\n livereloadCallback: getLivereloadCallback(file),\n })\n },\n onFileAdded: (file) => {\n handleFileChange({\n file,\n eventType: \"added\",\n livereloadCallback: getLivereloadCallback(file),\n })\n },\n onConnecting: ({ cancel }) => {\n eventSourceState = \"connecting\"\n eventSourceHooks = { abort: cancel }\n updateEventSourceIndicator()\n },\n onConnectionCancelled: ({ connect }) => {\n eventSourceState = \"disabled\"\n eventSourceHooks = { connect }\n updateEventSourceIndicator()\n },\n onConnectionFailed: ({ connect }) => {\n eventSourceState = \"failed\"\n eventSourceHooks = { reconnect: connect }\n updateEventSourceIndicator()\n },\n onConnected: ({ cancel }) => {\n eventSourceState = \"connected\"\n eventSourceHooks = { disconnect: cancel }\n updateEventSourceIndicator()\n connectionReadyPromise.resolve()\n parentEventSource.disconnect()\n },\n lastEventId: parentEventSource.lastEventId,\n },\n )\n\n eventSourceConnection.connect()\n}\n\nconst getLivereloadingPreference = () => {\n return livereloadingPreference.has() ? livereloadingPreference.get() : true\n}\n\nexport const disconnectEventSource = () => {\n if (eventSourceConnection) {\n eventSourceConnection.disconnect()\n eventSourceConnection = undefined\n }\n}\n\nexport const waitEventSourceReady = () => connectionReadyPromise\n\nconst updateEventSourceIndicator = () => {\n const { connect, abort, reconnect } = eventSourceHooks\n\n const eventSourceIndicator = document.querySelector(\"#eventsource-indicator\")\n const changeCount = Object.keys(latestChangeMap).length\n enableVariant(eventSourceIndicator, {\n eventsource: eventSourceState,\n livereload: shouldLivereload() ? \"on\" : \"off\",\n changes: changeCount > 0 ? \"yes\" : \"no\",\n })\n\n const variantNode = document.querySelector(\n \"#eventsource-indicator > [data-when-active]\",\n )\n variantNode.querySelector(\"button\").onclick = () => {\n toggleTooltip(eventSourceIndicator)\n }\n\n if (eventSourceState === \"disabled\") {\n variantNode.querySelector(\"a\").onclick = connect\n } else if (eventSourceState === \"connecting\") {\n variantNode.querySelector(\"a\").onclick = abort\n } else if (eventSourceState === \"connected\") {\n removeAutoShowTooltip(eventSourceIndicator)\n if (changeCount) {\n const changeLink = variantNode.querySelector(\".eventsource-changes-link\")\n changeLink.innerHTML = changeCount\n changeLink.onclick = () => {\n console.log(\n JSON.stringify(latestChangeMap, null, \" \"),\n latestChangeMap,\n )\n // eslint-disable-next-line no-alert\n window.parent.alert(JSON.stringify(latestChangeMap, null, \" \"))\n }\n variantNode.querySelector(\".eventsource-reload-link\").onclick =\n reloadChanges\n }\n } else if (eventSourceState === \"failed\") {\n autoShowTooltip(eventSourceIndicator)\n variantNode.querySelector(\"a\").onclick = reconnect\n }\n}\n",
|
|
103
|
+
"import { scanBrowserRuntimeFeatures } from \"../../../runtime/createBrowserRuntime/scanBrowserRuntimeFeatures.js\"\nimport { removeForceHideElement } from \"../util/dom.js\"\nimport { enableVariant } from \"../variant/variant.js\"\n\nexport const renderCompilationInToolbar = ({ compileGroup }) => {\n const browserSupportRootNode = document.querySelector(\"#browser_support\")\n const filesCompilationRootNode = document.querySelector(\"#files_compilation\")\n\n removeForceHideElement(browserSupportRootNode)\n removeForceHideElement(filesCompilationRootNode)\n\n scanBrowserRuntimeFeatures().then(\n ({\n canAvoidCompilation,\n featuresReport,\n customCompilerPatterns,\n pluginRequiredNameArray,\n inlineImportMapIntoHTML,\n outDirectoryRelativeUrl,\n compileId,\n }) => {\n const browserSupport = canAvoidCompilation\n ? inlineImportMapIntoHTML\n ? \"partial\"\n : \"full\"\n : \"no\"\n enableVariant(browserSupportRootNode, {\n browserSupport,\n })\n if (browserSupport === \"no\") {\n browserSupportRootNode.querySelector(\n `a.browser_support_read_more_link`,\n ).onclick = () => {\n // eslint-disable-next-line no-alert\n window.alert(\n `Source files needs to be compiled to be executable in this browser because: ${getBrowserSupportMessage(\n {\n missingOnly: true,\n featuresReport,\n customCompilerPatterns,\n pluginRequiredNameArray,\n inlineImportMapIntoHTML,\n },\n )}`,\n )\n }\n } else if (browserSupport === \"partial\") {\n browserSupportRootNode.querySelector(\n `a.browser_support_read_more_link`,\n ).onclick = () => {\n // eslint-disable-next-line no-alert\n window.alert(\n `Source files (except html) can be executed directly in this browser because: ${getBrowserSupportMessage(\n {\n featuresReport,\n customCompilerPatterns,\n pluginRequiredNameArray,\n inlineImportMapIntoHTML,\n },\n )}`,\n )\n }\n } else if (browserSupport === \"full\") {\n browserSupportRootNode.querySelector(\n `a.browser_support_read_more_link`,\n ).onclick = () => {\n // eslint-disable-next-line no-alert\n window.alert(\n `Source files can be executed directly in this browser because: ${getBrowserSupportMessage(\n {\n featuresReport,\n customCompilerPatterns,\n pluginRequiredNameArray,\n inlineImportMapIntoHTML,\n },\n )}`,\n )\n }\n }\n\n const filesCompilation = compileGroup.compileId\n ? \"yes\"\n : inlineImportMapIntoHTML\n ? \"html_only\"\n : \"no\"\n enableVariant(filesCompilationRootNode, {\n filesCompilation,\n compiled: compileGroup.compileId ? \"yes\" : \"no\",\n })\n filesCompilationRootNode.querySelector(\"a.go_to_source_link\").onclick =\n () => {\n window.parent.location = `/${compileGroup.fileRelativeUrl}`\n }\n filesCompilationRootNode.querySelector(\"a.go_to_compiled_link\").onclick =\n () => {\n window.parent.location = `/${outDirectoryRelativeUrl}${compileId}/${compileGroup.fileRelativeUrl}`\n }\n\n const shouldCompile =\n filesCompilation !== \"yes\" && browserSupport === \"no\"\n\n if (shouldCompile) {\n document\n .querySelector(\".files_compilation_text\")\n .setAttribute(\"data-warning\", \"\")\n document\n .querySelector(\".browser_support_text\")\n .setAttribute(\"data-warning\", \"\")\n document\n .querySelector(\"#settings-button\")\n .setAttribute(\"data-warning\", \"\")\n } else {\n document\n .querySelector(\".files_compilation_text\")\n .removeAttribute(\"data-warning\")\n document\n .querySelector(\".browser_support_text\")\n .removeAttribute(\"data-warning\")\n document\n .querySelector(\"#settings-button\")\n .removeAttribute(\"data-warning\")\n }\n },\n )\n}\n\nconst getBrowserSupportMessage = ({\n missingOnly,\n featuresReport,\n customCompilerPatterns,\n pluginRequiredNameArray,\n inlineImportMapIntoHTML,\n}) => {\n const parts = []\n\n const { importmapSupported } = featuresReport\n if (importmapSupported) {\n if (!missingOnly) {\n if (inlineImportMapIntoHTML) {\n parts.push(`importmaps are supported (only when inlined in html files)`)\n } else {\n parts.push(`importmaps are supported`)\n }\n }\n } else {\n parts.push(`importmaps are not supported`)\n }\n\n const { dynamicImportSupported } = featuresReport\n if (dynamicImportSupported) {\n if (!missingOnly) {\n parts.push(`dynamic imports are supported`)\n }\n } else {\n parts.push(`dynamic imports are not supported`)\n }\n\n const { topLevelAwaitSupported } = featuresReport\n if (topLevelAwaitSupported) {\n if (!missingOnly) {\n parts.push(`top level await is supported`)\n }\n } else {\n parts.push(`top level await is not supported`)\n }\n\n const pluginRequiredCount = pluginRequiredNameArray.length\n if (pluginRequiredCount === 0) {\n if (!missingOnly) {\n parts.push(`all plugins are natively supported`)\n }\n } else {\n parts.push(\n `${pluginRequiredCount} plugins are mandatory: ${pluginRequiredNameArray}`,\n )\n }\n\n const customCompilerCount = customCompilerPatterns.length\n if (customCompilerCount === 0) {\n // no need to talk about something unused\n } else {\n parts.push(\n `${customCompilerCount} custom compilers enabled: ${customCompilerPatterns}`,\n )\n }\n\n return `\n- ${parts.join(`\n- `)}`\n}\n",
|
|
104
|
+
"import { removeForceHideElement } from \"../util/dom.js\"\nimport { enableVariant } from \"../variant/variant.js\"\nimport {\n toggleTooltip,\n removeAutoShowTooltip,\n autoShowTooltip,\n} from \"../tooltip/tooltip.js\"\n\nlet livereloadingAvailableOnServer = false\nconst parentEventSourceClient = window.parent.__jsenv_event_source_client__\n\nexport const initToolbarEventSource = ({ livereloading }) => {\n removeForceHideElement(document.querySelector(\"#eventsource-indicator\"))\n livereloadingAvailableOnServer = livereloading\n if (!livereloadingAvailableOnServer) {\n disableLivereloadSetting()\n }\n parentEventSourceClient.setConnectionStatusChangeCallback = () => {\n updateEventSourceIndicator()\n }\n const livereloadCheckbox = document.querySelector(\"#toggle-livereload\")\n livereloadCheckbox.checked = parentEventSourceClient.isLivereloadEnabled()\n livereloadCheckbox.onchange = () => {\n parentEventSourceClient.setLivereloadPreference(livereloadCheckbox.checked)\n updateEventSourceIndicator()\n }\n updateEventSourceIndicator()\n}\n\nconst updateEventSourceIndicator = () => {\n const eventSourceIndicator = document.querySelector(\"#eventsource-indicator\")\n const fileChanges = parentEventSourceClient.getFileChanges()\n const changeCount = Object.keys(fileChanges).length\n const eventSourceConnectionState =\n parentEventSourceClient.getConnectionStatus()\n enableVariant(eventSourceIndicator, {\n eventsource: eventSourceConnectionState,\n livereload: parentEventSourceClient.isLivereloadEnabled() ? \"on\" : \"off\",\n changes: changeCount > 0 ? \"yes\" : \"no\",\n })\n\n const variantNode = document.querySelector(\n \"#eventsource-indicator > [data-when-active]\",\n )\n variantNode.querySelector(\"button\").onclick = () => {\n toggleTooltip(eventSourceIndicator)\n }\n\n if (eventSourceConnectionState === \"connecting\") {\n variantNode.querySelector(\"a\").onclick = () => {\n parentEventSourceClient.disconnect()\n }\n } else if (eventSourceConnectionState === \"connected\") {\n removeAutoShowTooltip(eventSourceIndicator)\n if (changeCount) {\n const changeLink = variantNode.querySelector(\".eventsource-changes-link\")\n changeLink.innerHTML = changeCount\n changeLink.onclick = () => {\n console.log(JSON.stringify(fileChanges, null, \" \"), fileChanges)\n // eslint-disable-next-line no-alert\n window.parent.alert(JSON.stringify(fileChanges, null, \" \"))\n }\n variantNode.querySelector(\".eventsource-reload-link\").onclick = () => {\n parentEventSourceClient.reloadIfNeeded()\n }\n }\n } else if (eventSourceConnectionState === \"disconnected\") {\n autoShowTooltip(eventSourceIndicator)\n variantNode.querySelector(\"a\").onclick = () => {\n parentEventSourceClient.connect()\n }\n }\n}\n\nconst disableLivereloadSetting = () => {\n document\n .querySelector(\".settings-livereload\")\n .setAttribute(\"data-disabled\", \"true\")\n document\n .querySelector(\".settings-livereload\")\n .setAttribute(\"title\", `Livereload not available: disabled by server`)\n document.querySelector(\"#toggle-livereload\").disabled = true\n}\n",
|
|
111
105
|
"import {\n forceHideElement,\n removeForceHideElement,\n deactivateToolbarSection,\n} from \"../util/dom.js\"\nimport { createHorizontalBreakpoint } from \"../util/responsive.js\"\nimport { hideTooltip } from \"../tooltip/tooltip.js\"\n\nconst WINDOW_SMALL_WIDTH = 420\n\nexport const makeToolbarResponsive = () => {\n // apply responsive design on toolbar icons if needed + add listener on resize screen\n // ideally we should listen breakpoint once, for now restore toolbar\n const overflowMenuBreakpoint = createHorizontalBreakpoint(WINDOW_SMALL_WIDTH)\n const handleOverflowMenuBreakpoint = () => {\n responsiveToolbar(overflowMenuBreakpoint)\n }\n handleOverflowMenuBreakpoint()\n overflowMenuBreakpoint.changed.listen(handleOverflowMenuBreakpoint)\n\n // overflow menu\n document.querySelector(\"#overflow-menu-button\").onclick = () =>\n toggleOverflowMenu()\n}\n\nconst responsiveToolbar = (overflowMenuBreakpoint) => {\n // close all tooltips in case opened\n hideTooltip(document.querySelector(\"#eventsource-indicator\"))\n hideTooltip(document.querySelector(\"#execution-indicator\"))\n // close settings box in case opened\n deactivateToolbarSection(document.querySelector(\"#settings\"))\n\n if (overflowMenuBreakpoint.isBelow()) {\n enableOverflow()\n } else {\n disableOverflow()\n }\n}\n\nlet moves = []\n\nconst enableOverflow = () => {\n // move elements from toolbar to overflow menu\n const responsiveToolbarElements = document.querySelectorAll(\n \"[data-responsive-toolbar-element]\",\n )\n const overflowMenu = document.querySelector(\"#overflow-menu\")\n\n // keep a placeholder element to know where to move them back\n moves = Array.from(responsiveToolbarElements).map((element) => {\n const placeholder = document.createElement(\"div\")\n placeholder.style.display = \"none\"\n placeholder.setAttribute(\"data-placeholder\", \"\")\n element.parentNode.replaceChild(placeholder, element)\n overflowMenu.appendChild(element)\n return { element, placeholder }\n })\n\n document\n .querySelector(\"#toolbar\")\n .setAttribute(\"data-overflow-menu-enabled\", \"\")\n removeForceHideElement(document.querySelector(\"#overflow-menu-button\"))\n}\n\nconst disableOverflow = () => {\n // close overflow menu in case it's open & unselect toggleOverflowMenu button in case it's selected\n hideOverflowMenu()\n deactivateToolbarSection(document.querySelector(\"#overflow-menu\"))\n moves.forEach(({ element, placeholder }) => {\n placeholder.parentNode.replaceChild(element, placeholder)\n })\n moves = []\n\n document\n .querySelector(\"#toolbar\")\n .removeAttribute(\"data-overflow-menu-enabled\")\n forceHideElement(document.querySelector(\"#overflow-menu-button\"))\n}\n\nconst toggleOverflowMenu = () => {\n if (overflowMenuIsVisible()) {\n hideOverflowMenu()\n } else {\n showOverflowMenu()\n }\n}\n\nconst overflowMenuIsVisible = () => {\n const toolbar = document.querySelector(\"#toolbar\")\n return toolbar.hasAttribute(\"data-overflow-menu-visible\")\n}\n\nconst showOverflowMenu = () => {\n const toolbar = document.querySelector(\"#toolbar\")\n document.querySelector(\"#overflow-menu\").setAttribute(\"data-animate\", \"\")\n toolbar.setAttribute(\"data-overflow-menu-visible\", \"\")\n}\n\nconst hideOverflowMenu = () => {\n const toolbar = document.querySelector(\"#toolbar\")\n toolbar.removeAttribute(\"data-overflow-menu-visible\")\n document.querySelector(\"#overflow-menu\").removeAttribute(\"data-animate\")\n}\n",
|
|
112
106
|
"import { urlIsInsideOf } from \"@jsenv/filesystem/src/urlIsInsideOf.js\"\nimport { urlToRelativeUrl } from \"@jsenv/filesystem/src/urlToRelativeUrl.js\"\n\nimport { fetchExploringJson } from \"../exploring/fetchExploringJson.js\"\nimport { startJavaScriptAnimation } from \"../toolbar/util/animation.js\"\nimport \"./focus/toolbar.focus.js\"\nimport { renderBackToListInToolbar } from \"./backtolist/toolbar.backtolist.js\"\nimport {\n getToolbarIframe,\n deactivateToolbarSection,\n setStyles,\n} from \"./util/dom.js\"\nimport { createPreference } from \"./util/preferences.js\"\nimport { hideTooltip, hideAllTooltip } from \"./tooltip/tooltip.js\"\nimport {\n renderToolbarSettings,\n hideSettings,\n} from \"./settings/toolbar.settings.js\"\nimport { renderToolbarNotification } from \"./notification/toolbar.notification.js\"\nimport { renderToolbarTheme } from \"./theme/toolbar.theme.js\"\nimport { renderToolbarAnimation } from \"./animation/toolbar.animation.js\"\nimport { renderExecutionInToolbar } from \"./execution/toolbar.execution.js\"\nimport { renderCompilationInToolbar } from \"./compilation/toolbar.compilation.js\"\nimport { initToolbarEventSource } from \"./eventsource/toolbar.eventsource.js\"\nimport { makeToolbarResponsive } from \"./responsive/toolbar.responsive.js\"\n\nconst toolbarVisibilityPreference = createPreference(\"toolbar\")\n\nconst renderToolbar = async () => {\n const executedFileCompiledUrl = window.parent.location.href\n const compileServerOrigin = window.parent.location.origin\n // this should not block the whole toolbar rendering + interactivity\n const exploringConfig = await fetchExploringJson()\n const { outDirectoryRelativeUrl, livereloading } = exploringConfig\n const compileGroup = getCompileGroup({\n executedFileCompiledUrl,\n outDirectoryRelativeUrl,\n compileServerOrigin,\n })\n const executedFileRelativeUrl = compileGroup.fileRelativeUrl\n\n const toolbarOverlay = document.querySelector(\"#toolbar-overlay\")\n toolbarOverlay.onclick = () => {\n hideAllTooltip()\n hideSettings()\n }\n\n const toolbarElement = document.querySelector(\"#toolbar\")\n exposeOnParentWindow({\n toolbar: {\n element: toolbarElement,\n show: showToolbar,\n hide: () => hideToolbar(),\n toggle: toogleToolbar,\n },\n })\n\n const toolbarVisible = toolbarVisibilityPreference.has()\n ? toolbarVisibilityPreference.get()\n : true\n\n if (toolbarVisible) {\n showToolbar({ animate: false })\n } else {\n hideToolbar({ animate: false })\n }\n\n renderBackToListInToolbar({\n outDirectoryRelativeUrl,\n exploringHtmlFileRelativeUrl: exploringConfig.exploringHtmlFileRelativeUrl,\n })\n\n renderToolbarNotification()\n makeToolbarResponsive()\n renderToolbarSettings()\n renderToolbarAnimation()\n renderToolbarTheme()\n renderExecutionInToolbar({ executedFileRelativeUrl })\n renderCompilationInToolbar({ compileGroup })\n // this might become active but we need to detect this somehow\n deactivateToolbarSection(document.querySelector(\"#file-list-link\"))\n initToolbarEventSource({\n executedFileRelativeUrl,\n livereloading,\n })\n\n // if user click enter or space quickly while closing toolbar\n // it will cancel the closing\n // that's why I used toggleToolbar and not hideToolbar\n document.querySelector(\"#button-close-toolbar\").onclick = () =>\n toogleToolbar()\n}\n\nconst exposeOnParentWindow = (object) => {\n let { __jsenv__ } = window.parent\n if (!__jsenv__) {\n __jsenv__ = {}\n window.parent.__jsenv__ = {}\n }\n\n Object.assign(__jsenv__, object)\n}\n\nconst toogleToolbar = () => {\n if (toolbarIsVisible()) {\n hideToolbar()\n } else {\n showToolbar()\n }\n}\n\nconst toolbarIsVisible = () =>\n document.documentElement.hasAttribute(\"data-toolbar-visible\")\n\nlet hideToolbar = () => {\n // toolbar hidden by default, nothing to do to hide it by default\n sendEventToParent(\"toolbar-visibility-change\", false)\n}\n\n// (by the way it might be cool to have the toolbar auto show when)\n// it has something to say (being disconnected from livereload server)\nconst showToolbar = ({ animate = true } = {}) => {\n toolbarVisibilityPreference.set(true)\n if (animate) {\n document.documentElement.setAttribute(\"data-toolbar-animation\", \"\")\n } else {\n document.documentElement.removeAttribute(\"data-toolbar-animation\")\n }\n document.documentElement.setAttribute(\"data-toolbar-visible\", \"\")\n\n sendEventToParent(\"toolbar-visibility-change\", true)\n\n const toolbarIframe = getToolbarIframe()\n const toolbarIframeParent = toolbarIframe.parentNode\n const parentWindow = window.parent\n const parentDocumentElement =\n parentWindow.document.compatMode === \"CSS1Compat\"\n ? parentWindow.document.documentElement\n : parentWindow.document.body\n\n const scrollYMax =\n parentDocumentElement.scrollHeight - parentWindow.innerHeight\n const scrollY = parentDocumentElement.scrollTop\n const scrollYRemaining = scrollYMax - scrollY\n\n setStyles(toolbarIframeParent, {\n \"transition-property\": \"padding-bottom\",\n \"transition-duration\": \"300ms\",\n })\n // maybe we should use js animation here because we would not conflict with css\n const restoreToolbarIframeParentStyles = setStyles(toolbarIframeParent, {\n \"scroll-padding-bottom\": \"40px\", // same here we should add 40px\n \"padding-bottom\": \"40px\", // if there is already one we should add 40px\n })\n const restoreToolbarIframeStyles = setStyles(toolbarIframe, {\n height: \"40px\",\n visibility: \"visible\",\n })\n\n if (scrollYRemaining < 40 && scrollYMax > 0) {\n const scrollEnd = scrollY + 40\n startJavaScriptAnimation({\n duration: 300,\n onProgress: ({ progress }) => {\n const value = scrollY + (scrollEnd - scrollY) * progress\n parentDocumentElement.scrollTop = value\n },\n })\n }\n\n hideToolbar = () => {\n restoreToolbarIframeParentStyles()\n restoreToolbarIframeStyles()\n\n hideTooltip(document.querySelector(\"#eventsource-indicator\"))\n hideTooltip(document.querySelector(\"#execution-indicator\"))\n toolbarVisibilityPreference.set(false)\n if (animate) {\n document.documentElement.setAttribute(\"data-toolbar-animation\", \"\")\n } else {\n document.documentElement.removeAttribute(\"data-toolbar-animation\")\n }\n document.documentElement.removeAttribute(\"data-toolbar-visible\")\n sendEventToParent(\"toolbar-visibility-change\", false)\n }\n}\n\nconst getCompileGroup = ({\n executedFileCompiledUrl,\n outDirectoryRelativeUrl,\n compileServerOrigin,\n}) => {\n const outDirectoryServerUrl = String(\n new URL(outDirectoryRelativeUrl, compileServerOrigin),\n )\n if (urlIsInsideOf(executedFileCompiledUrl, outDirectoryServerUrl)) {\n const afterCompileDirectory = urlToRelativeUrl(\n executedFileCompiledUrl,\n outDirectoryServerUrl,\n )\n const slashIndex = afterCompileDirectory.indexOf(\"/\")\n const fileRelativeUrl = afterCompileDirectory.slice(slashIndex + 1)\n return {\n fileRelativeUrl,\n outDirectoryRelativeUrl,\n compileId: afterCompileDirectory.slice(0, slashIndex),\n }\n }\n return {\n fileRelativeUrl: new URL(executedFileCompiledUrl).pathname.slice(1),\n outDirectoryRelativeUrl,\n compileId: null,\n }\n}\n\nconst sendEventToParent = (type, value) => {\n window.parent.postMessage(\n {\n jsenv: true,\n type,\n value,\n },\n \"*\",\n )\n}\n\nwindow.renderToolbar = renderToolbar\n"
|
|
113
107
|
],
|
|
@@ -684,103 +678,34 @@
|
|
|
684
678
|
"topLevelAwaitSupported",
|
|
685
679
|
"pluginRequiredCount",
|
|
686
680
|
"customCompilerCount",
|
|
687
|
-
"connectEventSource",
|
|
688
|
-
"eventSourceUrl",
|
|
689
|
-
"events",
|
|
690
|
-
"connecting",
|
|
691
|
-
"connected",
|
|
692
|
-
"cancelled",
|
|
693
|
-
"failed",
|
|
694
|
-
"retryMaxAttempt",
|
|
695
|
-
"Infinity",
|
|
696
|
-
"retryAllocatedMs",
|
|
697
|
-
"lastEventId",
|
|
698
|
-
"EventSource",
|
|
699
|
-
"eventSourceOrigin",
|
|
700
|
-
"cancelCurrentConnection",
|
|
701
|
-
"reconnect",
|
|
702
|
-
"attemptConnection",
|
|
703
|
-
"addLastEventIdIntoUrlSearchParams",
|
|
704
|
-
"eventSource",
|
|
705
|
-
"connectionStatus",
|
|
706
|
-
"console",
|
|
707
|
-
"warn",
|
|
708
|
-
"connect",
|
|
709
|
-
"cancel",
|
|
710
|
-
"onopen",
|
|
711
|
-
"disconnect",
|
|
712
|
-
"retryCount",
|
|
713
|
-
"firstRetryMs",
|
|
714
|
-
"Date",
|
|
715
|
-
"errorEvent",
|
|
716
|
-
"considerFailed",
|
|
717
|
-
"CONNECTING",
|
|
718
|
-
"info",
|
|
719
|
-
"allRetryDuration",
|
|
720
|
-
"CLOSED",
|
|
721
|
-
"eventName",
|
|
722
|
-
"removePageUnloadListener",
|
|
723
|
-
"listenPageUnload",
|
|
724
|
-
"encodeURIComponent",
|
|
725
|
-
"removePageHideListener",
|
|
726
|
-
"listenEvent",
|
|
727
|
-
"pageHideEvent",
|
|
728
|
-
"persisted",
|
|
729
|
-
"emitter",
|
|
730
|
-
"event",
|
|
731
|
-
"connectCompileServerEventSource",
|
|
732
|
-
"onFileModified",
|
|
733
|
-
"onFileRemoved",
|
|
734
|
-
"onConnecting",
|
|
735
|
-
"onConnectionCancelled",
|
|
736
|
-
"onConnectionFailed",
|
|
737
|
-
"onConnected",
|
|
738
|
-
"data",
|
|
739
|
-
"livereloadingPreference",
|
|
740
|
-
"eventSourceState",
|
|
741
681
|
"livereloadingAvailableOnServer",
|
|
682
|
+
"parentEventSourceClient",
|
|
683
|
+
"__jsenv_event_source_client__",
|
|
742
684
|
"initToolbarEventSource",
|
|
743
685
|
"livereloading",
|
|
744
|
-
"getLivereloadCallback",
|
|
745
|
-
"originalFileProjectRelativeUrl",
|
|
746
|
-
"callbacks",
|
|
747
|
-
"livereloadingCallbacks",
|
|
748
686
|
"disableLivereloadSetting",
|
|
749
|
-
"
|
|
750
|
-
"shouldLivereload",
|
|
687
|
+
"setConnectionStatusChangeCallback",
|
|
751
688
|
"updateEventSourceIndicator",
|
|
752
|
-
"
|
|
753
|
-
"
|
|
754
|
-
"
|
|
755
|
-
"__jsenv_eventsource__",
|
|
756
|
-
"latestChangeMap",
|
|
757
|
-
"eventSourceHooks",
|
|
758
|
-
"eventSourceConnection",
|
|
759
|
-
"connectionReadyPromise",
|
|
760
|
-
"handleFileChange",
|
|
761
|
-
"file",
|
|
762
|
-
"eventType",
|
|
763
|
-
"livereloadCallback",
|
|
764
|
-
"reloadPage",
|
|
765
|
-
"endsWith",
|
|
766
|
-
"reloadAllCss",
|
|
767
|
-
"links",
|
|
768
|
-
"getElementsByTagName",
|
|
769
|
-
"rel",
|
|
770
|
-
"searchParams",
|
|
771
|
-
"reload",
|
|
772
|
-
"reloadChanges",
|
|
773
|
-
"fullReloadRequired",
|
|
774
|
-
"cssReloadRequired",
|
|
775
|
-
"onFileAdded",
|
|
689
|
+
"livereloadCheckbox",
|
|
690
|
+
"isLivereloadEnabled",
|
|
691
|
+
"setLivereloadPreference",
|
|
776
692
|
"eventSourceIndicator",
|
|
693
|
+
"fileChanges",
|
|
694
|
+
"getFileChanges",
|
|
777
695
|
"changeCount",
|
|
696
|
+
"eventSourceConnectionState",
|
|
697
|
+
"getConnectionStatus",
|
|
778
698
|
"eventsource",
|
|
779
699
|
"livereload",
|
|
780
700
|
"changes",
|
|
701
|
+
"disconnect",
|
|
781
702
|
"changeLink",
|
|
782
703
|
"innerHTML",
|
|
704
|
+
"console",
|
|
783
705
|
"log",
|
|
706
|
+
"reloadIfNeeded",
|
|
707
|
+
"connect",
|
|
708
|
+
"disabled",
|
|
784
709
|
"WINDOW_SMALL_WIDTH",
|
|
785
710
|
"makeToolbarResponsive",
|
|
786
711
|
"overflowMenuBreakpoint",
|
|
@@ -842,5 +767,5 @@
|
|
|
842
767
|
"postMessage",
|
|
843
768
|
"jsenv"
|
|
844
769
|
],
|
|
845
|
-
"mappings": "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"
|
|
770
|
+
"mappings": "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"
|
|
846
771
|
}
|