@jsenv/core 23.8.3 → 23.8.9
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_browser_system.js +345 -326
- package/dist/jsenv_browser_system.js.map +1046 -119
- package/dist/jsenv_compile_proxy.js.map +364 -62
- package/dist/jsenv_exploring_index.js.map +338 -32
- package/dist/jsenv_exploring_redirector.js.map +404 -76
- package/dist/jsenv_toolbar.js.map +830 -112
- package/dist/jsenv_toolbar_injector.js.map +307 -27
- package/package.json +6 -6
- package/src/internal/{runtime/createBrowserRuntime → browser-launcher}/displayErrorInDocument.js +2 -0
- package/src/internal/{runtime/createBrowserRuntime → browser-launcher}/displayErrorNotification.js +1 -0
- package/src/internal/browser-launcher/executeHtmlFile.js +8 -0
- package/src/internal/browser-launcher/jsenv-browser-system.js +37 -10
- package/src/internal/building/buildUsingRollup.js +2 -10
- package/src/internal/compiling/compile-directory/compile-asset.js +7 -0
- package/src/internal/compiling/compileFile.js +12 -1
- package/src/internal/compiling/html_source_file_service.js +0 -1
- package/src/internal/compiling/js-compilation-service/jsenvTransform.js +3 -1
- package/src/internal/compiling/jsenvCompilerForHtml.js +85 -19
- package/src/internal/compiling/startCompileServer.js +53 -19
- package/src/internal/executing/coverage/reportToCoverage.js +7 -1
- package/src/internal/generateGroupMap/featuresCompatMap.js +29 -0
- package/src/internal/generateGroupMap/jsenvBabelPluginCompatMap.js +1 -8
- package/src/internal/runtime/createBrowserRuntime/createBrowserRuntime.js +1 -21
|
@@ -2,39 +2,319 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"file": "jsenv_toolbar_injector.js",
|
|
4
4
|
"sources": [
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
"
|
|
9
|
-
"
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
-
"
|
|
13
|
-
"
|
|
14
|
-
"
|
|
15
|
-
"
|
|
16
|
-
"
|
|
5
|
+
"../helpers/babel/typeof/typeof.js",
|
|
6
|
+
"../helpers/babel/defineProperty/defineProperty.js",
|
|
7
|
+
"../node_modules/@jsenv/logger/src/createDetailedMessage.js",
|
|
8
|
+
"../helpers/babel/objectSpread2/objectSpread2.js",
|
|
9
|
+
"../helpers/babel/objectWithoutPropertiesLoose/objectWithoutPropertiesLoose.js",
|
|
10
|
+
"../helpers/babel/objectWithoutProperties/objectWithoutProperties.js",
|
|
11
|
+
"../src/internal/browser-utils/fetchUsingXHR.js",
|
|
12
|
+
"../src/internal/browser-utils/fetch-browser.js",
|
|
13
|
+
"../src/internal/browser-utils/fetchJson.js",
|
|
14
|
+
"../src/internal/exploring/fetchExploringJson.js",
|
|
15
|
+
"../src/internal/toolbar/util/dom.js",
|
|
16
|
+
"../src/internal/toolbar/toolbar.injector.js"
|
|
17
17
|
],
|
|
18
18
|
"sourcesContent": [
|
|
19
|
-
"
|
|
20
|
-
"export default (
|
|
21
|
-
"export
|
|
22
|
-
"import defineProperty from \"../defineProperty/defineProperty.js\"
|
|
23
|
-
"export default (
|
|
24
|
-
"import objectWithoutPropertiesLoose from \"../objectWithoutPropertiesLoose/objectWithoutPropertiesLoose.js\"
|
|
25
|
-
"import _typeof from \"@jsenv/core/helpers/babel/typeof/typeof.js\";\nimport _defineProperty from \"@jsenv/core/helpers/babel/defineProperty/defineProperty.js\";\nimport { createDetailedMessage } from \"@jsenv/logger\";\n\nfunction _await(value, then, direct) {\n if (direct) {\n return then ? then(value) : value;\n }\n\n if (!value || !value.then) {\n value = Promise.resolve(value);\n }\n\n return then ? value.then(then) : value;\n}\n\nfunction _async(f) {\n return function () {\n for (var args = [], i = 0; i < arguments.length; i++) {\n args[i] = arguments[i];\n }\n\n try {\n return Promise.resolve(f.apply(this, args));\n } catch (e) {\n return Promise.reject(e);\n }\n };\n}\n\nfunction _call(body, then, direct) {\n if (direct) {\n return then ? then(body()) : body();\n }\n\n try {\n var result = Promise.resolve(body());\n return then ? result.then(then) : result;\n } catch (e) {\n return Promise.reject(e);\n }\n}\n\nexport var fetchUsingXHR = _async(function (url) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n signal = _ref.signal,\n _ref$method = _ref.method,\n method = _ref$method === void 0 ? \"GET\" : _ref$method,\n _ref$credentials = _ref.credentials,\n credentials = _ref$credentials === void 0 ? \"same-origin\" : _ref$credentials,\n _ref$headers = _ref.headers,\n headers = _ref$headers === void 0 ? {} : _ref$headers,\n _ref$body = _ref.body,\n body = _ref$body === void 0 ? null : _ref$body;\n\n var headersPromise = createPromiseAndHooks();\n var bodyPromise = createPromiseAndHooks();\n var xhr = new XMLHttpRequest();\n\n var failure = function 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 var cleanup = function cleanup() {\n xhr.ontimeout = null;\n xhr.onerror = null;\n xhr.onload = null;\n xhr.onreadystatechange = null;\n };\n\n xhr.ontimeout = function () {\n cleanup();\n failure(new Error(\"xhr request timeout on \".concat(url, \".\")));\n };\n\n xhr.onerror = function (error) {\n cleanup(); // unfortunately with have no clue why it fails\n // might be cors for instance\n\n failure(createRequestError(error, {\n url: url\n }));\n };\n\n xhr.onload = function () {\n cleanup();\n bodyPromise.resolve();\n };\n\n signal.addEventListener(\"abort\", function () {\n xhr.abort();\n var abortError = new Error(\"aborted\");\n abortError.name = \"AbortError\";\n failure(abortError);\n });\n\n xhr.onreadystatechange = function () {\n // https://developer.mozilla.org/fr/docs/Web/API/XMLHttpRequest/readyState\n var readyState = xhr.readyState;\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(function (key) {\n xhr.setRequestHeader(key, headers[key]);\n });\n xhr.withCredentials = computeWithCredentials({\n credentials: credentials,\n url: url\n });\n\n if (\"responseType\" in xhr && hasBlob) {\n xhr.responseType = \"blob\";\n }\n\n xhr.send(body);\n return _await(headersPromise, function () {\n // https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/responseURL\n var responseUrl = \"responseURL\" in xhr ? xhr.responseURL : headers[\"x-request-url\"];\n var responseStatus = xhr.status;\n var responseStatusText = xhr.statusText;\n var responseHeaders = getHeadersFromXHR(xhr);\n\n var readBody = function readBody() {\n return _await(bodyPromise, function () {\n var status = xhr.status; // in Chrome on file:/// URLs, status is 0\n\n if (status === 0) {\n responseStatus = 200;\n }\n\n var body = \"response\" in xhr ? xhr.response : xhr.responseText;\n return {\n responseBody: body,\n responseBodyType: detectBodyType(body)\n };\n });\n };\n\n var text = function text() {\n return _call(readBody, function (_ref2) {\n var responseBody = _ref2.responseBody,\n responseBodyType = _ref2.responseBodyType;\n\n if (responseBodyType === \"blob\") {\n return blobToText(responseBody);\n }\n\n if (responseBodyType === \"formData\") {\n throw new Error(\"could not read FormData body as text\");\n }\n\n return responseBodyType === \"dataView\" ? arrayBufferToText(responseBody.buffer) : responseBodyType === \"arrayBuffer\" ? arrayBufferToText(responseBody) : String(responseBody);\n });\n };\n\n var json = function json() {\n return _call(text, JSON.parse);\n };\n\n var blob = _async(function () {\n if (!hasBlob) {\n throw new Error(\"blob not supported\");\n }\n\n return _call(readBody, function (_ref3) {\n var responseBody = _ref3.responseBody,\n responseBodyType = _ref3.responseBodyType;\n\n if (responseBodyType === \"blob\") {\n return responseBody;\n }\n\n if (responseBodyType === \"dataView\") {\n return new Blob([cloneBuffer(responseBody.buffer)]);\n }\n\n if (responseBodyType === \"arrayBuffer\") {\n return new Blob([cloneBuffer(responseBody)]);\n }\n\n if (responseBodyType === \"formData\") {\n throw new Error(\"could not read FormData body as blob\");\n }\n\n return new Blob([String(responseBody)]);\n });\n });\n\n var arrayBuffer = function arrayBuffer() {\n return _call(readBody, function (_ref4) {\n var responseBody = _ref4.responseBody,\n responseBodyType = _ref4.responseBodyType;\n return responseBodyType === \"arrayBuffer\" ? cloneBuffer(responseBody) : _call(blob, blobToArrayBuffer);\n });\n };\n\n var formData = _async(function () {\n if (!hasFormData) {\n throw new Error(\"formData not supported\");\n }\n\n return _call(text, textToFormData);\n });\n\n return {\n url: responseUrl,\n status: responseStatus,\n statusText: responseStatusText,\n headers: responseHeaders,\n text: text,\n json: json,\n blob: blob,\n arrayBuffer: arrayBuffer,\n formData: formData\n };\n });\n});\n\nvar canUseBlob = function canUseBlob() {\n if (typeof window.FileReader !== \"function\") return false;\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\nvar hasBlob = canUseBlob();\nvar hasFormData = typeof window.FormData === \"function\";\nvar hasArrayBuffer = typeof window.ArrayBuffer === \"function\";\nvar hasSearchParams = typeof window.URLSearchParams === \"function\";\n\nvar createRequestError = function createRequestError(error, _ref5) {\n var url = _ref5.url;\n return new Error(createDetailedMessage(\"error during xhr request on \".concat(url, \".\"), _defineProperty({}, \"error stack\", error.stack)));\n};\n\nvar createPromiseAndHooks = function createPromiseAndHooks() {\n var resolve;\n var reject;\n var promise = new Promise(function (res, rej) {\n resolve = function resolve(value) {\n promise.settled = true;\n res(value);\n };\n\n reject = function reject(value) {\n promise.settled = true;\n rej(value);\n };\n });\n promise.resolve = resolve;\n promise.reject = reject;\n return promise;\n}; // https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch\n\n\nvar computeWithCredentials = function computeWithCredentials(_ref6) {\n var credentials = _ref6.credentials,\n url = _ref6.url;\n\n if (credentials === \"same-origin\") {\n return originSameAsGlobalOrigin(url);\n }\n\n return credentials === \"include\";\n};\n\nvar originSameAsGlobalOrigin = function originSameAsGlobalOrigin(url) {\n // if we cannot read globalOrigin from window.location.origin, let's consider it's ok\n if ((typeof window === \"undefined\" ? \"undefined\" : _typeof(window)) !== \"object\") return true;\n if (_typeof(window.location) !== \"object\") return true;\n var globalOrigin = window.location.origin;\n if (globalOrigin === \"null\") return true;\n return hrefToOrigin(url) === globalOrigin;\n};\n\nvar detectBodyType = function detectBodyType(body) {\n if (!body) {\n return \"\";\n }\n\n if (typeof body === \"string\") {\n return \"text\";\n }\n\n if (hasBlob && Blob.prototype.isPrototypeOf(body)) {\n return \"blob\";\n }\n\n if (hasFormData && FormData.prototype.isPrototypeOf(body)) {\n return \"formData\";\n }\n\n if (hasArrayBuffer) {\n if (hasBlob && isDataView(body)) {\n return \"dataView\";\n }\n\n if (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body)) {\n return \"arrayBuffer\";\n }\n }\n\n if (hasSearchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n return \"searchParams\";\n }\n\n return \"\";\n}; // https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/getAllResponseHeaders#Example\n\n\nvar getHeadersFromXHR = function getHeadersFromXHR(xhr) {\n var headerMap = {};\n var headersString = xhr.getAllResponseHeaders();\n if (headersString === \"\") return headerMap;\n var lines = headersString.trim().split(/[\\r\\n]+/);\n lines.forEach(function (line) {\n var parts = line.split(\": \");\n var name = parts.shift();\n var value = parts.join(\": \");\n headerMap[name.toLowerCase()] = value;\n });\n return headerMap;\n};\n\nvar hrefToOrigin = function hrefToOrigin(href) {\n var scheme = hrefToScheme(href);\n\n if (scheme === \"file\") {\n return \"file://\";\n }\n\n if (scheme === \"http\" || scheme === \"https\") {\n var secondProtocolSlashIndex = scheme.length + \"://\".length;\n var pathnameSlashIndex = href.indexOf(\"/\", secondProtocolSlashIndex);\n if (pathnameSlashIndex === -1) return href;\n return href.slice(0, pathnameSlashIndex);\n }\n\n return href.slice(0, scheme.length + 1);\n};\n\nvar hrefToScheme = function hrefToScheme(href) {\n var colonIndex = href.indexOf(\":\");\n if (colonIndex === -1) return \"\";\n return href.slice(0, colonIndex);\n};\n\nvar isDataView = function isDataView(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj);\n};\n\nvar isArrayBufferView = ArrayBuffer.isView || function () {\n var viewClasses = [\"[object Int8Array]\", \"[object Uint8Array]\", \"[object Uint8ClampedArray]\", \"[object Int16Array]\", \"[object Uint16Array]\", \"[object Int32Array]\", \"[object Uint32Array]\", \"[object Float32Array]\", \"[object Float64Array]\"];\n return function (value) {\n return value && viewClasses.includes(Object.prototype.toString.call(value));\n };\n}();\n\nvar textToFormData = function textToFormData(text) {\n var form = new FormData();\n text.trim().split(\"&\").forEach(function (bytes) {\n if (bytes) {\n var split = bytes.split(\"=\");\n var name = split.shift().replace(/\\+/g, \" \");\n var value = split.join(\"=\").replace(/\\+/g, \" \");\n form.append(decodeURIComponent(name), decodeURIComponent(value));\n }\n });\n return form;\n};\n\nvar blobToArrayBuffer = _async(function (blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsArrayBuffer(blob);\n return promise;\n});\n\nvar blobToText = function blobToText(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsText(blob);\n return promise;\n};\n\nvar arrayBufferToText = function arrayBufferToText(arrayBuffer) {\n var view = new Uint8Array(arrayBuffer);\n var chars = new Array(view.length);\n var i = 0;\n\n while (i < view.length) {\n chars[i] = String.fromCharCode(view[i]);\n i++;\n }\n\n return chars.join(\"\");\n};\n\nvar fileReaderReady = function fileReaderReady(reader) {\n return new Promise(function (resolve, reject) {\n reader.onload = function () {\n resolve(reader.result);\n };\n\n reader.onerror = function () {\n reject(reader.error);\n };\n });\n};\n\nvar cloneBuffer = function cloneBuffer(buffer) {\n if (buffer.slice) {\n return buffer.slice(0);\n }\n\n var view = new Uint8Array(buffer.byteLength);\n view.set(new Uint8Array(buffer));\n return view.buffer;\n};\n//# sourceMappingURL=fetchUsingXHR.js.map",
|
|
26
|
-
"import
|
|
27
|
-
"import { fetchUrl } from \"./fetch-browser.js\"
|
|
28
|
-
"import
|
|
29
|
-
"export
|
|
30
|
-
"import _typeof from \"@jsenv/core/helpers/babel/typeof/typeof.js\";\nimport { fetchExploringJson } from \"@jsenv/core/src/internal/exploring/fetchExploringJson.js\";\nimport { setAttributes, setStyles } from \"./util/dom.js\";\n/*\nWe must connect to livereload server asap so that if a file is modified\nwhile page is loading we are notified of it.\n\nOtherwise it's possible that a file is loaded and used by browser then its modified before\nlivereload connection is established.\n\nWhen toolbar is loaded it will open an other connection to server sent events and close this one.\n*/\n\nfunction _await(value, then, direct) {\n if (direct) {\n return then ? then(value) : value;\n }\n\n if (!value || !value.then) {\n value = Promise.resolve(value);\n }\n\n return then ? value.then(then) : value;\n}\n\nvar connectLivereload = function connectLivereload() {\n var _window = window,\n EventSource = _window.EventSource;\n\n if (typeof EventSource !== \"function\") {\n return function () {};\n }\n\n var getLivereloadPreference = function getLivereloadPreference() {\n return localStorage.hasOwnProperty(\"livereload\") ? JSON.parse(localStorage.getItem(\"livereload\")) : true;\n };\n\n var url = document.location.href;\n var isOpen = false;\n var lastEventId;\n var latestChangeMap = {};\n var events = {\n \"file-modified\": function fileModified(_ref) {\n var data = _ref.data;\n latestChangeMap[data] = \"modified\";\n\n if (getLivereloadPreference()) {\n window.location.reload(true);\n }\n },\n \"file-removed\": function fileRemoved(_ref2) {\n var data = _ref2.data;\n latestChangeMap[data] = \"removed\";\n\n if (getLivereloadPreference()) {\n window.location.reload(true);\n }\n },\n \"file-added\": function fileAdded(_ref3) {\n var data = _ref3.data;\n latestChangeMap[data] = \"added\";\n\n if (getLivereloadPreference()) {\n window.location.reload(true);\n }\n }\n };\n var eventSourceOrigin = new URL(url).origin;\n var eventSource = new EventSource(url, {\n withCredentials: true\n });\n\n var disconnect = function disconnect() {\n eventSource.close();\n };\n\n eventSource.onopen = function () {\n isOpen = true;\n };\n\n eventSource.onerror = function (errorEvent) {\n if (errorEvent.target.readyState === EventSource.CLOSED) {\n isOpen = false;\n }\n };\n\n Object.keys(events).forEach(function (eventName) {\n eventSource.addEventListener(eventName, function (e) {\n if (e.origin === eventSourceOrigin) {\n if (e.lastEventId) {\n lastEventId = e.lastEventId;\n }\n\n events[eventName](e);\n }\n });\n });\n return function () {\n return {\n isOpen: isOpen,\n latestChangeMap: latestChangeMap,\n lastEventId: lastEventId,\n disconnect: disconnect\n };\n };\n}; // eslint-disable-next-line camelcase\n\n\nfunction _call(body, then, direct) {\n if (direct) {\n return then ? then(body()) : body();\n }\n\n try {\n var result = Promise.resolve(body());\n return then ? result.then(then) : result;\n } catch (e) {\n return Promise.reject(e);\n }\n}\n\nfunction _async(f) {\n return function () {\n for (var args = [], i = 0; i < arguments.length; i++) {\n args[i] = arguments[i];\n }\n\n try {\n return Promise.resolve(f.apply(this, args));\n } catch (e) {\n return Promise.reject(e);\n }\n };\n}\n\nwindow.__jsenv_eventsource__ = connectLivereload();\n\nvar injectToolbar = _async(function () {\n return _await(new Promise(function (resolve) {\n if (window.requestIdleCallback) {\n window.requestIdleCallback(resolve);\n } else {\n window.requestAnimationFrame(resolve);\n }\n }), function () {\n return _call(fetchExploringJson, function (_ref4) {\n var jsenvDirectoryRelativeUrl = _ref4.jsenvDirectoryRelativeUrl;\n var jsenvDirectoryServerUrl = resolveUrl(jsenvDirectoryRelativeUrl, document.location.origin);\n var placeholder = getToolbarPlaceholder();\n var iframe = document.createElement(\"iframe\");\n setAttributes(iframe, {\n tabindex: -1,\n // sandbox: \"allow-forms allow-modals allow-pointer-lock allow-popups allow-presentation allow-same-origin allow-scripts allow-top-navigation-by-user-activation\",\n // allow: \"accelerometer; ambient-light-sensor; camera; encrypted-media; geolocation; gyroscope; microphone; midi; payment; vr\",\n allowtransparency: true\n });\n setStyles(iframe, {\n \"position\": \"fixed\",\n \"zIndex\": 1000,\n \"bottom\": 0,\n \"left\": 0,\n \"width\": \"100%\",\n \"height\": 0,\n\n /* ensure toolbar children are not focusable when hidden */\n \"visibility\": \"hidden\",\n \"transition-duration\": \"300ms\",\n \"transition-property\": \"height, visibility\",\n \"border\": \"none\"\n });\n var iframeLoadedPromise = iframeToLoadedPromise(iframe);\n var jsenvToolbarHtmlServerUrl = resolveUrl(\"./src/internal/toolbar/toolbar.html\", jsenvDirectoryServerUrl); // set iframe src BEFORE putting it into the DOM (prevent firefox adding an history entry)\n\n iframe.setAttribute(\"src\", jsenvToolbarHtmlServerUrl);\n placeholder.parentNode.replaceChild(iframe, placeholder);\n return _await(iframeLoadedPromise, function () {\n iframe.removeAttribute(\"tabindex\");\n\n var listenToolbarIframeEvent = function listenToolbarIframeEvent(event, fn) {\n window.addEventListener(\"message\", function (messageEvent) {\n var data = messageEvent.data;\n if (_typeof(data) !== \"object\") return;\n var jsenv = data.jsenv;\n if (!jsenv) return;\n var type = data.type;\n if (type !== event) return;\n fn(data.value);\n }, false);\n };\n\n listenToolbarIframeEvent(\"toolbar-visibility-change\", function (visible) {\n if (visible) {\n hideToolbarTrigger();\n } else {\n showToolbarTrigger();\n }\n });\n var div = document.createElement(\"div\");\n var jsenvLogoUrl = resolveUrl(\"./src/internal/toolbar/jsenv-logo.svg\", jsenvDirectoryServerUrl);\n var jsenvLogoSvgSrc = jsenvLogoUrl;\n div.innerHTML = \"\\n<div id=\\\"jsenv-toolbar-trigger\\\">\\n <svg id=\\\"jsenv-toolbar-trigger-icon\\\">\\n <use xlink:href=\\\"\".concat(jsenvLogoSvgSrc, \"#jsenv-logo\\\"></use>\\n </svg>\\n <style>\\n #jsenv-toolbar-trigger {\\n display: block;\\n overflow: hidden;\\n position: fixed;\\n z-index: 1000;\\n bottom: -32px;\\n right: 20px;\\n height: 40px;\\n width: 40px;\\n padding: 0;\\n border-radius: 5px 5px 0 0;\\n border: 1px solid rgba(0, 0, 0, 0.33);\\n border-bottom: none;\\n box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.46);\\n background: transparent;\\n text-align: center;\\n transition: 600ms;\\n }\\n\\n #jsenv-toolbar-trigger:hover {\\n cursor: pointer;\\n }\\n\\n #jsenv-toolbar-trigger[data-expanded] {\\n bottom: 0;\\n }\\n\\n #jsenv-toolbar-trigger-icon {\\n width: 35px;\\n height: 35px;\\n opacity: 0;\\n transition: 600ms;\\n }\\n\\n #jsenv-toolbar-trigger[data-expanded] #jsenv-toolbar-trigger-icon {\\n opacity: 1;\\n }\\n </style>\\n</div>\");\n var toolbarTrigger = div.firstElementChild;\n iframe.parentNode.appendChild(toolbarTrigger);\n var timer;\n\n toolbarTrigger.onmouseenter = function () {\n toolbarTrigger.setAttribute(\"data-animate\", \"\");\n timer = setTimeout(expandToolbarTrigger, 500);\n };\n\n toolbarTrigger.onmouseleave = function () {\n clearTimeout(timer);\n collapseToolbarTrigger();\n };\n\n toolbarTrigger.onfocus = function () {\n toolbarTrigger.removeAttribute(\"data-animate\");\n expandToolbarTrigger();\n };\n\n toolbarTrigger.onblur = function () {\n toolbarTrigger.removeAttribute(\"data-animate\");\n clearTimeout(timer);\n collapseToolbarTrigger();\n };\n\n toolbarTrigger.onclick = function () {\n window.__jsenv__.toolbar.show();\n };\n\n var showToolbarTrigger = function showToolbarTrigger() {\n toolbarTrigger.style.display = \"block\";\n };\n\n var hideToolbarTrigger = function hideToolbarTrigger() {\n toolbarTrigger.style.display = \"none\";\n };\n\n var expandToolbarTrigger = function expandToolbarTrigger() {\n toolbarTrigger.setAttribute(\"data-expanded\", \"\");\n };\n\n var collapseToolbarTrigger = function collapseToolbarTrigger() {\n toolbarTrigger.removeAttribute(\"data-expanded\", \"\");\n };\n\n hideToolbarTrigger();\n iframe.contentWindow.renderToolbar();\n return iframe;\n });\n });\n });\n});\n\nvar getToolbarPlaceholder = function getToolbarPlaceholder() {\n var placeholder = queryPlaceholder();\n\n if (placeholder) {\n if (document.body.contains(placeholder)) {\n return placeholder;\n } // otherwise iframe would not be visible because in <head>\n\n\n console.warn(\"element with [data-jsenv-toolbar-placeholder] must be inside document.body\");\n return createTooolbarPlaceholder();\n }\n\n return createTooolbarPlaceholder();\n};\n\nvar queryPlaceholder = function queryPlaceholder() {\n return document.querySelector(\"[data-jsenv-toolbar-placeholder]\");\n};\n\nvar createTooolbarPlaceholder = function createTooolbarPlaceholder() {\n var placeholder = document.createElement(\"span\");\n document.body.appendChild(placeholder);\n return placeholder;\n};\n\nvar iframeToLoadedPromise = function iframeToLoadedPromise(iframe) {\n return new Promise(function (resolve) {\n var onload = function onload() {\n iframe.removeEventListener(\"load\", onload, true);\n resolve();\n };\n\n iframe.addEventListener(\"load\", onload, true);\n });\n};\n\nvar resolveUrl = function resolveUrl(url, baseUrl) {\n return String(new URL(url, baseUrl));\n};\n\nif (document.readyState === \"complete\") {\n injectToolbar();\n} else {\n window.addEventListener(\"load\", injectToolbar);\n}\n//# sourceMappingURL=toolbar.injector.js.map"
|
|
19
|
+
"const nativeTypeOf = (obj) => typeof obj\n\nconst customTypeOf = (obj) => {\n return obj &&\n typeof Symbol === \"function\" &&\n obj.constructor === Symbol &&\n obj !== Symbol.prototype\n ? \"symbol\"\n : typeof obj\n}\n\nexport default typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\"\n ? nativeTypeOf\n : customTypeOf\n",
|
|
20
|
+
"export default (obj, key, value) => {\n // Shortcircuit the slow defineProperty path when possible.\n // We are trying to avoid issues where setters defined on the\n // prototype cause side effects under the fast path of simple\n // assignment. By checking for existence of the property with\n // the in operator, we can optimize most of this overhead away.\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true,\n })\n } else {\n obj[key] = value\n }\n return obj\n}\n",
|
|
21
|
+
"export const createDetailedMessage = (message, details = {}) => {\n let string = `${message}`\n\n Object.keys(details).forEach((key) => {\n const value = details[key]\n string += `\n--- ${key} ---\n${\n Array.isArray(value)\n ? value.join(`\n`)\n : value\n}`\n })\n\n return string\n}\n",
|
|
22
|
+
"import defineProperty from \"../defineProperty/defineProperty.js\"\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object)\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object)\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable\n })\n }\n keys.push.apply(keys, symbols)\n }\n return keys\n}\n\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {}\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n defineProperty(target, key, source[key])\n })\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source))\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key))\n })\n }\n }\n return target\n}\n",
|
|
23
|
+
"export default (source, excluded) => {\n if (source === null) return {}\n var target = {}\n var sourceKeys = Object.keys(source)\n var key\n var i\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i]\n if (excluded.indexOf(key) >= 0) continue\n target[key] = source[key]\n }\n return target\n}\n",
|
|
24
|
+
"import objectWithoutPropertiesLoose from \"../objectWithoutPropertiesLoose/objectWithoutPropertiesLoose.js\"\n\nexport default (source, excluded) => {\n if (source === null) return {}\n\n var target = objectWithoutPropertiesLoose(source, excluded)\n var key\n var i\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source)\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i]\n if (excluded.indexOf(key) >= 0) continue\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue\n target[key] = source[key]\n }\n }\n return target\n}\n",
|
|
25
|
+
"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",
|
|
26
|
+
"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",
|
|
27
|
+
"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",
|
|
28
|
+
"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",
|
|
29
|
+
"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",
|
|
30
|
+
"import { fetchExploringJson } from \"@jsenv/core/src/internal/exploring/fetchExploringJson.js\"\nimport { setAttributes, setStyles } from \"./util/dom.js\"\n\n/*\nWe must connect to livereload server asap so that if a file is modified\nwhile page is loading we are notified of it.\n\nOtherwise it's possible that a file is loaded and used by browser then its modified before\nlivereload connection is established.\n\nWhen toolbar is loaded it will open an other connection to server sent events and close this one.\n*/\nconst connectLivereload = () => {\n const { EventSource } = window\n if (typeof EventSource !== \"function\") {\n return () => {}\n }\n\n const getLivereloadPreference = () => {\n return localStorage.hasOwnProperty(\"livereload\")\n ? JSON.parse(localStorage.getItem(\"livereload\"))\n : true\n }\n\n const url = document.location.href\n let isOpen = false\n let lastEventId\n const latestChangeMap = {}\n\n const events = {\n \"file-modified\": ({ data }) => {\n latestChangeMap[data] = \"modified\"\n if (getLivereloadPreference()) {\n window.location.reload(true)\n }\n },\n \"file-removed\": ({ data }) => {\n latestChangeMap[data] = \"removed\"\n if (getLivereloadPreference()) {\n window.location.reload(true)\n }\n },\n \"file-added\": ({ data }) => {\n latestChangeMap[data] = \"added\"\n if (getLivereloadPreference()) {\n window.location.reload(true)\n }\n },\n }\n\n const eventSourceOrigin = new URL(url).origin\n const eventSource = new EventSource(url, {\n withCredentials: true,\n })\n\n const disconnect = () => {\n eventSource.close()\n }\n\n eventSource.onopen = () => {\n isOpen = true\n }\n\n eventSource.onerror = (errorEvent) => {\n if (errorEvent.target.readyState === EventSource.CLOSED) {\n isOpen = false\n }\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\n return () => {\n return {\n isOpen,\n latestChangeMap,\n lastEventId,\n disconnect,\n }\n }\n}\n// eslint-disable-next-line camelcase\nwindow.__jsenv_eventsource__ = connectLivereload()\n\nconst injectToolbar = async () => {\n await new Promise((resolve) => {\n if (window.requestIdleCallback) {\n window.requestIdleCallback(resolve)\n } else {\n window.requestAnimationFrame(resolve)\n }\n })\n\n const { jsenvDirectoryRelativeUrl } = await fetchExploringJson()\n const jsenvDirectoryServerUrl = resolveUrl(\n jsenvDirectoryRelativeUrl,\n document.location.origin,\n )\n\n const placeholder = getToolbarPlaceholder()\n\n const iframe = document.createElement(\"iframe\")\n setAttributes(iframe, {\n tabindex: -1,\n // sandbox: \"allow-forms allow-modals allow-pointer-lock allow-popups allow-presentation allow-same-origin allow-scripts allow-top-navigation-by-user-activation\",\n // allow: \"accelerometer; ambient-light-sensor; camera; encrypted-media; geolocation; gyroscope; microphone; midi; payment; vr\",\n allowtransparency: true,\n })\n setStyles(iframe, {\n \"position\": \"fixed\",\n \"zIndex\": 1000,\n \"bottom\": 0,\n \"left\": 0,\n \"width\": \"100%\",\n \"height\": 0,\n /* ensure toolbar children are not focusable when hidden */\n \"visibility\": \"hidden\",\n \"transition-duration\": \"300ms\",\n \"transition-property\": \"height, visibility\",\n \"border\": \"none\",\n })\n const iframeLoadedPromise = iframeToLoadedPromise(iframe)\n const jsenvToolbarHtmlServerUrl = resolveUrl(\n \"./src/internal/toolbar/toolbar.html\",\n jsenvDirectoryServerUrl,\n )\n // set iframe src BEFORE putting it into the DOM (prevent firefox adding an history entry)\n iframe.setAttribute(\"src\", jsenvToolbarHtmlServerUrl)\n placeholder.parentNode.replaceChild(iframe, placeholder)\n\n await iframeLoadedPromise\n iframe.removeAttribute(\"tabindex\")\n\n const listenToolbarIframeEvent = (event, fn) => {\n window.addEventListener(\n \"message\",\n (messageEvent) => {\n const { data } = messageEvent\n if (typeof data !== \"object\") return\n const { jsenv } = data\n if (!jsenv) return\n const { type } = data\n if (type !== event) return\n fn(data.value)\n },\n false,\n )\n }\n\n listenToolbarIframeEvent(\"toolbar-visibility-change\", (visible) => {\n if (visible) {\n hideToolbarTrigger()\n } else {\n showToolbarTrigger()\n }\n })\n\n const div = document.createElement(\"div\")\n const jsenvLogoUrl = resolveUrl(\n \"./src/internal/toolbar/jsenv-logo.svg\",\n jsenvDirectoryServerUrl,\n )\n const jsenvLogoSvgSrc = jsenvLogoUrl\n div.innerHTML = `\n<div id=\"jsenv-toolbar-trigger\">\n <svg id=\"jsenv-toolbar-trigger-icon\">\n <use xlink:href=\"${jsenvLogoSvgSrc}#jsenv-logo\"></use>\n </svg>\n <style>\n #jsenv-toolbar-trigger {\n display: block;\n overflow: hidden;\n position: fixed;\n z-index: 1000;\n bottom: -32px;\n right: 20px;\n height: 40px;\n width: 40px;\n padding: 0;\n border-radius: 5px 5px 0 0;\n border: 1px solid rgba(0, 0, 0, 0.33);\n border-bottom: none;\n box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.46);\n background: transparent;\n text-align: center;\n transition: 600ms;\n }\n\n #jsenv-toolbar-trigger:hover {\n cursor: pointer;\n }\n\n #jsenv-toolbar-trigger[data-expanded] {\n bottom: 0;\n }\n\n #jsenv-toolbar-trigger-icon {\n width: 35px;\n height: 35px;\n opacity: 0;\n transition: 600ms;\n }\n\n #jsenv-toolbar-trigger[data-expanded] #jsenv-toolbar-trigger-icon {\n opacity: 1;\n }\n </style>\n</div>`\n const toolbarTrigger = div.firstElementChild\n iframe.parentNode.appendChild(toolbarTrigger)\n\n let timer\n toolbarTrigger.onmouseenter = () => {\n toolbarTrigger.setAttribute(\"data-animate\", \"\")\n timer = setTimeout(expandToolbarTrigger, 500)\n }\n toolbarTrigger.onmouseleave = () => {\n clearTimeout(timer)\n collapseToolbarTrigger()\n }\n toolbarTrigger.onfocus = () => {\n toolbarTrigger.removeAttribute(\"data-animate\")\n expandToolbarTrigger()\n }\n toolbarTrigger.onblur = () => {\n toolbarTrigger.removeAttribute(\"data-animate\")\n clearTimeout(timer)\n collapseToolbarTrigger()\n }\n toolbarTrigger.onclick = () => {\n window.__jsenv__.toolbar.show()\n }\n\n const showToolbarTrigger = () => {\n toolbarTrigger.style.display = \"block\"\n }\n\n const hideToolbarTrigger = () => {\n toolbarTrigger.style.display = \"none\"\n }\n\n const expandToolbarTrigger = () => {\n toolbarTrigger.setAttribute(\"data-expanded\", \"\")\n }\n\n const collapseToolbarTrigger = () => {\n toolbarTrigger.removeAttribute(\"data-expanded\", \"\")\n }\n hideToolbarTrigger()\n\n iframe.contentWindow.renderToolbar()\n\n return iframe\n}\n\nconst getToolbarPlaceholder = () => {\n const placeholder = queryPlaceholder()\n if (placeholder) {\n if (document.body.contains(placeholder)) {\n return placeholder\n }\n // otherwise iframe would not be visible because in <head>\n console.warn(\n \"element with [data-jsenv-toolbar-placeholder] must be inside document.body\",\n )\n return createTooolbarPlaceholder()\n }\n return createTooolbarPlaceholder()\n}\n\nconst queryPlaceholder = () =>\n document.querySelector(\"[data-jsenv-toolbar-placeholder]\")\n\nconst createTooolbarPlaceholder = () => {\n const placeholder = document.createElement(\"span\")\n document.body.appendChild(placeholder)\n return placeholder\n}\n\nconst iframeToLoadedPromise = (iframe) => {\n return new Promise((resolve) => {\n const onload = () => {\n iframe.removeEventListener(\"load\", onload, true)\n resolve()\n }\n iframe.addEventListener(\"load\", onload, true)\n })\n}\n\nconst resolveUrl = (url, baseUrl) => String(new URL(url, baseUrl))\n\nif (document.readyState === \"complete\") {\n injectToolbar()\n} else {\n window.addEventListener(\"load\", injectToolbar)\n}\n"
|
|
31
31
|
],
|
|
32
32
|
"names": [
|
|
33
|
+
"nativeTypeOf",
|
|
34
|
+
"obj",
|
|
35
|
+
"customTypeOf",
|
|
36
|
+
"Symbol",
|
|
37
|
+
"constructor",
|
|
38
|
+
"prototype",
|
|
39
|
+
"iterator",
|
|
40
|
+
"key",
|
|
41
|
+
"value",
|
|
42
|
+
"Object",
|
|
33
43
|
"defineProperty",
|
|
44
|
+
"enumerable",
|
|
45
|
+
"configurable",
|
|
46
|
+
"writable",
|
|
47
|
+
"createDetailedMessage",
|
|
48
|
+
"message",
|
|
49
|
+
"details",
|
|
50
|
+
"string",
|
|
51
|
+
"keys",
|
|
52
|
+
"forEach",
|
|
53
|
+
"Array",
|
|
54
|
+
"isArray",
|
|
55
|
+
"join",
|
|
56
|
+
"ownKeys",
|
|
57
|
+
"object",
|
|
58
|
+
"enumerableOnly",
|
|
59
|
+
"getOwnPropertySymbols",
|
|
60
|
+
"symbols",
|
|
61
|
+
"filter",
|
|
62
|
+
"sym",
|
|
63
|
+
"getOwnPropertyDescriptor",
|
|
64
|
+
"push",
|
|
65
|
+
"apply",
|
|
66
|
+
"_objectSpread2",
|
|
67
|
+
"target",
|
|
68
|
+
"i",
|
|
69
|
+
"arguments",
|
|
70
|
+
"length",
|
|
71
|
+
"source",
|
|
72
|
+
"getOwnPropertyDescriptors",
|
|
73
|
+
"defineProperties",
|
|
74
|
+
"excluded",
|
|
75
|
+
"sourceKeys",
|
|
76
|
+
"indexOf",
|
|
77
|
+
"objectWithoutPropertiesLoose",
|
|
78
|
+
"sourceSymbolKeys",
|
|
79
|
+
"propertyIsEnumerable",
|
|
80
|
+
"call",
|
|
81
|
+
"then",
|
|
82
|
+
"direct",
|
|
83
|
+
"Promise",
|
|
84
|
+
"resolve",
|
|
85
|
+
"f",
|
|
86
|
+
"args",
|
|
87
|
+
"e",
|
|
88
|
+
"reject",
|
|
89
|
+
"body",
|
|
90
|
+
"result",
|
|
91
|
+
"fetchUsingXHR",
|
|
92
|
+
"url",
|
|
93
|
+
"signal",
|
|
94
|
+
"method",
|
|
95
|
+
"credentials",
|
|
96
|
+
"headers",
|
|
97
|
+
"headersPromise",
|
|
98
|
+
"createPromiseAndHooks",
|
|
99
|
+
"bodyPromise",
|
|
100
|
+
"xhr",
|
|
101
|
+
"XMLHttpRequest",
|
|
102
|
+
"failure",
|
|
103
|
+
"error",
|
|
104
|
+
"settled",
|
|
105
|
+
"cleanup",
|
|
106
|
+
"ontimeout",
|
|
107
|
+
"onerror",
|
|
108
|
+
"onload",
|
|
109
|
+
"onreadystatechange",
|
|
110
|
+
"Error",
|
|
111
|
+
"createRequestError",
|
|
112
|
+
"addEventListener",
|
|
113
|
+
"abort",
|
|
114
|
+
"abortError",
|
|
115
|
+
"name",
|
|
116
|
+
"readyState",
|
|
117
|
+
"open",
|
|
118
|
+
"setRequestHeader",
|
|
119
|
+
"withCredentials",
|
|
120
|
+
"computeWithCredentials",
|
|
121
|
+
"hasBlob",
|
|
122
|
+
"responseType",
|
|
123
|
+
"send",
|
|
124
|
+
"responseUrl",
|
|
125
|
+
"responseURL",
|
|
126
|
+
"responseStatus",
|
|
127
|
+
"status",
|
|
128
|
+
"responseStatusText",
|
|
129
|
+
"statusText",
|
|
130
|
+
"responseHeaders",
|
|
131
|
+
"getHeadersFromXHR",
|
|
132
|
+
"readBody",
|
|
133
|
+
"response",
|
|
134
|
+
"responseText",
|
|
135
|
+
"responseBody",
|
|
136
|
+
"responseBodyType",
|
|
137
|
+
"detectBodyType",
|
|
138
|
+
"text",
|
|
139
|
+
"blobToText",
|
|
140
|
+
"arrayBufferToText",
|
|
141
|
+
"buffer",
|
|
142
|
+
"String",
|
|
143
|
+
"json",
|
|
144
|
+
"JSON",
|
|
145
|
+
"parse",
|
|
146
|
+
"blob",
|
|
147
|
+
"Blob",
|
|
148
|
+
"cloneBuffer",
|
|
149
|
+
"arrayBuffer",
|
|
150
|
+
"blobToArrayBuffer",
|
|
151
|
+
"formData",
|
|
152
|
+
"hasFormData",
|
|
153
|
+
"textToFormData",
|
|
154
|
+
"canUseBlob",
|
|
155
|
+
"window",
|
|
156
|
+
"FileReader",
|
|
157
|
+
"FormData",
|
|
158
|
+
"hasArrayBuffer",
|
|
159
|
+
"ArrayBuffer",
|
|
160
|
+
"hasSearchParams",
|
|
161
|
+
"URLSearchParams",
|
|
162
|
+
"stack",
|
|
163
|
+
"promise",
|
|
164
|
+
"res",
|
|
165
|
+
"rej",
|
|
166
|
+
"originSameAsGlobalOrigin",
|
|
167
|
+
"location",
|
|
168
|
+
"globalOrigin",
|
|
169
|
+
"origin",
|
|
170
|
+
"hrefToOrigin",
|
|
171
|
+
"isPrototypeOf",
|
|
172
|
+
"isDataView",
|
|
173
|
+
"isArrayBufferView",
|
|
174
|
+
"headerMap",
|
|
175
|
+
"headersString",
|
|
176
|
+
"getAllResponseHeaders",
|
|
177
|
+
"lines",
|
|
178
|
+
"trim",
|
|
179
|
+
"split",
|
|
180
|
+
"line",
|
|
181
|
+
"parts",
|
|
182
|
+
"shift",
|
|
183
|
+
"toLowerCase",
|
|
184
|
+
"href",
|
|
185
|
+
"scheme",
|
|
186
|
+
"hrefToScheme",
|
|
187
|
+
"secondProtocolSlashIndex",
|
|
188
|
+
"pathnameSlashIndex",
|
|
189
|
+
"slice",
|
|
190
|
+
"colonIndex",
|
|
191
|
+
"DataView",
|
|
192
|
+
"isView",
|
|
193
|
+
"viewClasses",
|
|
194
|
+
"includes",
|
|
195
|
+
"toString",
|
|
196
|
+
"form",
|
|
197
|
+
"bytes",
|
|
198
|
+
"replace",
|
|
199
|
+
"append",
|
|
200
|
+
"decodeURIComponent",
|
|
201
|
+
"reader",
|
|
202
|
+
"fileReaderReady",
|
|
203
|
+
"readAsArrayBuffer",
|
|
204
|
+
"readAsText",
|
|
205
|
+
"view",
|
|
206
|
+
"Uint8Array",
|
|
207
|
+
"chars",
|
|
208
|
+
"fromCharCode",
|
|
209
|
+
"byteLength",
|
|
210
|
+
"set",
|
|
34
211
|
"_await",
|
|
212
|
+
"fetchNative",
|
|
213
|
+
"mode",
|
|
214
|
+
"options",
|
|
215
|
+
"fetch",
|
|
216
|
+
"responseToHeaders",
|
|
35
217
|
"_async",
|
|
36
|
-
"
|
|
37
|
-
"
|
|
218
|
+
"fetchUrl",
|
|
219
|
+
"AbortController",
|
|
220
|
+
"fetchJson",
|
|
221
|
+
"recover",
|
|
222
|
+
"fetchExploringJson",
|
|
223
|
+
"aborted",
|
|
224
|
+
"setStyles",
|
|
225
|
+
"element",
|
|
226
|
+
"styles",
|
|
227
|
+
"elementStyle",
|
|
228
|
+
"style",
|
|
229
|
+
"restoreStyles",
|
|
230
|
+
"map",
|
|
231
|
+
"styleName",
|
|
232
|
+
"restore",
|
|
233
|
+
"currentStyle",
|
|
234
|
+
"setAttributes",
|
|
235
|
+
"attributes",
|
|
236
|
+
"setAttribute",
|
|
237
|
+
"connectLivereload",
|
|
238
|
+
"EventSource",
|
|
239
|
+
"getLivereloadPreference",
|
|
240
|
+
"localStorage",
|
|
241
|
+
"hasOwnProperty",
|
|
242
|
+
"getItem",
|
|
243
|
+
"document",
|
|
244
|
+
"isOpen",
|
|
245
|
+
"lastEventId",
|
|
246
|
+
"latestChangeMap",
|
|
247
|
+
"events",
|
|
248
|
+
"data",
|
|
249
|
+
"reload",
|
|
250
|
+
"eventSourceOrigin",
|
|
251
|
+
"URL",
|
|
252
|
+
"eventSource",
|
|
253
|
+
"disconnect",
|
|
254
|
+
"close",
|
|
255
|
+
"onopen",
|
|
256
|
+
"errorEvent",
|
|
257
|
+
"CLOSED",
|
|
258
|
+
"eventName",
|
|
259
|
+
"__jsenv_eventsource__",
|
|
260
|
+
"injectToolbar",
|
|
261
|
+
"requestIdleCallback",
|
|
262
|
+
"requestAnimationFrame",
|
|
263
|
+
"jsenvDirectoryRelativeUrl",
|
|
264
|
+
"jsenvDirectoryServerUrl",
|
|
265
|
+
"resolveUrl",
|
|
266
|
+
"placeholder",
|
|
267
|
+
"getToolbarPlaceholder",
|
|
268
|
+
"iframe",
|
|
269
|
+
"createElement",
|
|
270
|
+
"tabindex",
|
|
271
|
+
"allowtransparency",
|
|
272
|
+
"iframeLoadedPromise",
|
|
273
|
+
"iframeToLoadedPromise",
|
|
274
|
+
"jsenvToolbarHtmlServerUrl",
|
|
275
|
+
"parentNode",
|
|
276
|
+
"replaceChild",
|
|
277
|
+
"removeAttribute",
|
|
278
|
+
"listenToolbarIframeEvent",
|
|
279
|
+
"event",
|
|
280
|
+
"fn",
|
|
281
|
+
"messageEvent",
|
|
282
|
+
"jsenv",
|
|
283
|
+
"type",
|
|
284
|
+
"visible",
|
|
285
|
+
"hideToolbarTrigger",
|
|
286
|
+
"showToolbarTrigger",
|
|
287
|
+
"div",
|
|
288
|
+
"jsenvLogoUrl",
|
|
289
|
+
"jsenvLogoSvgSrc",
|
|
290
|
+
"innerHTML",
|
|
291
|
+
"toolbarTrigger",
|
|
292
|
+
"firstElementChild",
|
|
293
|
+
"appendChild",
|
|
294
|
+
"timer",
|
|
295
|
+
"onmouseenter",
|
|
296
|
+
"setTimeout",
|
|
297
|
+
"expandToolbarTrigger",
|
|
298
|
+
"onmouseleave",
|
|
299
|
+
"clearTimeout",
|
|
300
|
+
"collapseToolbarTrigger",
|
|
301
|
+
"onfocus",
|
|
302
|
+
"onblur",
|
|
303
|
+
"onclick",
|
|
304
|
+
"__jsenv__",
|
|
305
|
+
"toolbar",
|
|
306
|
+
"show",
|
|
307
|
+
"display",
|
|
308
|
+
"contentWindow",
|
|
309
|
+
"renderToolbar",
|
|
310
|
+
"queryPlaceholder",
|
|
311
|
+
"contains",
|
|
312
|
+
"console",
|
|
313
|
+
"warn",
|
|
314
|
+
"createTooolbarPlaceholder",
|
|
315
|
+
"querySelector",
|
|
316
|
+
"removeEventListener",
|
|
317
|
+
"baseUrl"
|
|
38
318
|
],
|
|
39
|
-
"mappings": "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"
|
|
319
|
+
"mappings": "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"
|
|
40
320
|
}
|