From 2be5df84d6bab4aa224a443da69ee5eb3610ffa6 Mon Sep 17 00:00:00 2001 From: Matt Stubbs Date: Thu, 12 Mar 2026 13:33:05 +1000 Subject: [PATCH] feat: add configurable Monaco loader opts --- README.md | 15 +++++++++- .../live_monaco_editor/editor/code_editor.js | 17 ++++++----- lib/live_monaco_editor.ex | 11 ++++++- priv/static/live_monaco_editor.cjs.js | 16 +++++----- priv/static/live_monaco_editor.cjs.js.map | 4 +-- priv/static/live_monaco_editor.esm.js | 16 +++++----- priv/static/live_monaco_editor.esm.js.map | 4 +-- priv/static/live_monaco_editor.js | 30 ++++++++++++++----- priv/static/live_monaco_editor.js.map | 4 +-- priv/static/live_monaco_editor.min.js | 6 ++-- priv/static/live_monaco_editor.min.js.map | 6 ++-- 11 files changed, 87 insertions(+), 42 deletions(-) diff --git a/README.md b/README.md index 24334a1..8b21743 100644 --- a/README.md +++ b/README.md @@ -134,6 +134,20 @@ The code editor is created with default options to provide a better UX out-of-th /> ``` +### Configure the Monaco loader + +The loader will load sources from a CDN by default. You can configure this: + +```elixir +config :live_monaco_editor, :loader, %{ + "paths" => %{ + "vs" => "/js/monaco-editor/min/vs" + } +} +``` + +This is useful when you want to self-host Monaco assets. + ### Fetching the editor value You can listen to events emitted by the code editor to fetch its current value and send it back to the parent LiveView where the component is used. Firstly, add a event listener: @@ -273,4 +287,3 @@ Have a project in mind? [Get in touch](https://dockyard.com/contact/hire-us)! * [Jonatan Kłosko](https://github.com/jonatanklosko) for his amazing work with [Livebook Editor](https://github.com/livebook-dev/livebook/blob/main/assets/js/hooks/cell_editor.js) * [Logo](https://www.flaticon.com/free-icons/script) created by kerismaker - Flaticon * [Logo font](https://fonts.google.com/specimen/Source+Code+Pro) designed by Paul D. hunt - diff --git a/assets/js/live_monaco_editor/editor/code_editor.js b/assets/js/live_monaco_editor/editor/code_editor.js index 5975d3c..e0a15e9 100644 --- a/assets/js/live_monaco_editor/editor/code_editor.js +++ b/assets/js/live_monaco_editor/editor/code_editor.js @@ -45,22 +45,25 @@ class CodeEditor { } _mountEditor() { - this.opts.value = this.value + const { loader: loaderConfig, ...editorOpts } = this.opts + editorOpts.value = this.value - loader.config({ + const defaultLoaderConfig = { paths: { vs: "https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs" }, - }) + } + + loader.config(loaderConfig || defaultLoaderConfig) loader.init().then((monaco) => { monaco.editor.defineTheme("default", theme) let modelUri = monaco.Uri.parse(this.path) - let language = this.opts.language + let language = editorOpts.language let model = monaco.editor.createModel(this.value, language, modelUri) - this.opts.language = undefined - this.opts.model = model - this.standalone_code_editor = monaco.editor.create(this.el, this.opts) + editorOpts.language = undefined + editorOpts.model = model + this.standalone_code_editor = monaco.editor.create(this.el, editorOpts) this._onMount.forEach((callback) => callback(monaco)) diff --git a/lib/live_monaco_editor.ex b/lib/live_monaco_editor.ex index 85a8867..828726d 100644 --- a/lib/live_monaco_editor.ex +++ b/lib/live_monaco_editor.ex @@ -130,7 +130,16 @@ defmodule LiveMonacoEditor do @doc """ The default Monaco Editor opts passed to `<.code_editor>` """ - def default_opts, do: @default_opts + def default_opts do + maybe_put_default_loader(@default_opts) + end + + defp maybe_put_default_loader(opts) do + case Application.get_env(:live_monaco_editor, :loader) do + nil -> opts + loader_opts -> Map.put_new(opts, "loader", loader_opts) + end + end # https://github.com/phoenixframework/phoenix_live_view/blob/c3c21d6de55315adea04e28f7a461a91e46497bb/lib/phoenix_live_view/utils.ex#L176-L183 defp random_encoded_bytes do diff --git a/priv/static/live_monaco_editor.cjs.js b/priv/static/live_monaco_editor.cjs.js index 0a078bb..468d670 100644 --- a/priv/static/live_monaco_editor.cjs.js +++ b/priv/static/live_monaco_editor.cjs.js @@ -622,18 +622,20 @@ var CodeEditor = class { } } _mountEditor() { - this.opts.value = this.value; - loader_default.config({ + const { loader: loaderConfig, ...editorOpts } = this.opts; + editorOpts.value = this.value; + const defaultLoaderConfig = { paths: { vs: "https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs" } - }); + }; + loader_default.config(loaderConfig || defaultLoaderConfig); loader_default.init().then((monaco) => { monaco.editor.defineTheme("default", theme); let modelUri = monaco.Uri.parse(this.path); - let language = this.opts.language; + let language = editorOpts.language; let model = monaco.editor.createModel(this.value, language, modelUri); - this.opts.language = void 0; - this.opts.model = model; - this.standalone_code_editor = monaco.editor.create(this.el, this.opts); + editorOpts.language = void 0; + editorOpts.model = model; + this.standalone_code_editor = monaco.editor.create(this.el, editorOpts); this._onMount.forEach((callback) => callback(monaco)); this._setScreenDependantEditorOptions(); this.standalone_code_editor.addAction({ diff --git a/priv/static/live_monaco_editor.cjs.js.map b/priv/static/live_monaco_editor.cjs.js.map index 69ef312..bef5c1a 100644 --- a/priv/static/live_monaco_editor.cjs.js.map +++ b/priv/static/live_monaco_editor.cjs.js.map @@ -1,7 +1,7 @@ { "version": 3, "sources": ["../../assets/js/live_monaco_editor/index.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/_virtual/_rollupPluginBabelHelpers.js", "../../assets/node_modules/state-local/lib/es/state-local.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/config/index.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/curry.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/isObject.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/validators/index.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/compose.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/deepMerge.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/makeCancelable.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/loader/index.js", "../../assets/js/live_monaco_editor/editor/themes.js", "../../assets/js/live_monaco_editor/editor/code_editor.js", "../../assets/js/live_monaco_editor/hooks/code_editor.js"], - "sourcesContent": ["import \"@fontsource/jetbrains-mono\"\nimport { CodeEditorHook } from \"./hooks/code_editor\"\n\nexport { CodeEditorHook }\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\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\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\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\n return target;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nexport { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _defineProperty as defineProperty, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _objectSpread2 as objectSpread2, _objectWithoutProperties as objectWithoutProperties, _objectWithoutPropertiesLoose as objectWithoutPropertiesLoose, _slicedToArray as slicedToArray, _unsupportedIterableToArray as unsupportedIterableToArray };\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n}\n\nfunction curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len3 = arguments.length, nextArgs = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n nextArgs[_key3] = arguments[_key3];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nfunction isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nfunction isEmpty(obj) {\n return !Object.keys(obj).length;\n}\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nfunction hasOwnProperty(object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n}\n\nfunction validateChanges(initial, changes) {\n if (!isObject(changes)) errorHandler('changeType');\n if (Object.keys(changes).some(function (field) {\n return !hasOwnProperty(initial, field);\n })) errorHandler('changeField');\n return changes;\n}\n\nfunction validateSelector(selector) {\n if (!isFunction(selector)) errorHandler('selectorType');\n}\n\nfunction validateHandler(handler) {\n if (!(isFunction(handler) || isObject(handler))) errorHandler('handlerType');\n if (isObject(handler) && Object.values(handler).some(function (_handler) {\n return !isFunction(_handler);\n })) errorHandler('handlersType');\n}\n\nfunction validateInitial(initial) {\n if (!initial) errorHandler('initialIsRequired');\n if (!isObject(initial)) errorHandler('initialType');\n if (isEmpty(initial)) errorHandler('initialContent');\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n initialIsRequired: 'initial state is required',\n initialType: 'initial state should be an object',\n initialContent: 'initial state shouldn\\'t be an empty object',\n handlerType: 'handler should be an object or a function',\n handlersType: 'all handlers should be a functions',\n selectorType: 'selector should be a function',\n changeType: 'provided value of changes should be an object',\n changeField: 'it seams you want to change a field in the state which is not specified in the \"initial\" state',\n \"default\": 'an unknown error accured in `state-local` package'\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n changes: validateChanges,\n selector: validateSelector,\n handler: validateHandler,\n initial: validateInitial\n};\n\nfunction create(initial) {\n var handler = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n validators.initial(initial);\n validators.handler(handler);\n var state = {\n current: initial\n };\n var didUpdate = curry(didStateUpdate)(state, handler);\n var update = curry(updateState)(state);\n var validate = curry(validators.changes)(initial);\n var getChanges = curry(extractChanges)(state);\n\n function getState() {\n var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (state) {\n return state;\n };\n validators.selector(selector);\n return selector(state.current);\n }\n\n function setState(causedChanges) {\n compose(didUpdate, update, validate, getChanges)(causedChanges);\n }\n\n return [getState, setState];\n}\n\nfunction extractChanges(state, causedChanges) {\n return isFunction(causedChanges) ? causedChanges(state.current) : causedChanges;\n}\n\nfunction updateState(state, changes) {\n state.current = _objectSpread2(_objectSpread2({}, state.current), changes);\n return changes;\n}\n\nfunction didStateUpdate(state, handler, changes) {\n isFunction(handler) ? handler(state.current) : Object.keys(changes).forEach(function (field) {\n var _handler$field;\n\n return (_handler$field = handler[field]) === null || _handler$field === void 0 ? void 0 : _handler$field.call(handler, state.current[field]);\n });\n return changes;\n}\n\nvar index = {\n create: create\n};\n\nexport default index;\n", "var config = {\n paths: {\n vs: 'https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs'\n }\n};\n\nexport default config;\n", "function curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len2 = arguments.length, nextArgs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n nextArgs[_key2] = arguments[_key2];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nexport default curry;\n", "function isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nexport default isObject;\n", "import curry from '../utils/curry.js';\nimport isObject from '../utils/isObject.js';\n\n/**\n * validates the configuration object and informs about deprecation\n * @param {Object} config - the configuration object \n * @return {Object} config - the validated configuration object\n */\n\nfunction validateConfig(config) {\n if (!config) errorHandler('configIsRequired');\n if (!isObject(config)) errorHandler('configType');\n\n if (config.urls) {\n informAboutDeprecation();\n return {\n paths: {\n vs: config.urls.monacoBase\n }\n };\n }\n\n return config;\n}\n/**\n * logs deprecation message\n */\n\n\nfunction informAboutDeprecation() {\n console.warn(errorMessages.deprecation);\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n configIsRequired: 'the configuration object is required',\n configType: 'the configuration object should be an object',\n \"default\": 'an unknown error accured in `@monaco-editor/loader` package',\n deprecation: \"Deprecation warning!\\n You are using deprecated way of configuration.\\n\\n Instead of using\\n monaco.config({ urls: { monacoBase: '...' } })\\n use\\n monaco.config({ paths: { vs: '...' } })\\n\\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\\n \"\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n config: validateConfig\n};\n\nexport default validators;\nexport { errorHandler, errorMessages };\n", "var compose = function compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n};\n\nexport default compose;\n", "import { objectSpread2 as _objectSpread2 } from '../_virtual/_rollupPluginBabelHelpers.js';\n\nfunction merge(target, source) {\n Object.keys(source).forEach(function (key) {\n if (source[key] instanceof Object) {\n if (target[key]) {\n Object.assign(source[key], merge(target[key], source[key]));\n }\n }\n });\n return _objectSpread2(_objectSpread2({}, target), source);\n}\n\nexport default merge;\n", "// The source (has been changed) is https://github.com/facebook/react/issues/5465#issuecomment-157888325\nvar CANCELATION_MESSAGE = {\n type: 'cancelation',\n msg: 'operation is manually canceled'\n};\n\nfunction makeCancelable(promise) {\n var hasCanceled_ = false;\n var wrappedPromise = new Promise(function (resolve, reject) {\n promise.then(function (val) {\n return hasCanceled_ ? reject(CANCELATION_MESSAGE) : resolve(val);\n });\n promise[\"catch\"](reject);\n });\n return wrappedPromise.cancel = function () {\n return hasCanceled_ = true;\n }, wrappedPromise;\n}\n\nexport default makeCancelable;\nexport { CANCELATION_MESSAGE };\n", "import { slicedToArray as _slicedToArray, objectWithoutProperties as _objectWithoutProperties } from '../_virtual/_rollupPluginBabelHelpers.js';\nimport state from 'state-local';\nimport config$1 from '../config/index.js';\nimport validators from '../validators/index.js';\nimport compose from '../utils/compose.js';\nimport merge from '../utils/deepMerge.js';\nimport makeCancelable from '../utils/makeCancelable.js';\n\n/** the local state of the module */\n\nvar _state$create = state.create({\n config: config$1,\n isInitialized: false,\n resolve: null,\n reject: null,\n monaco: null\n}),\n _state$create2 = _slicedToArray(_state$create, 2),\n getState = _state$create2[0],\n setState = _state$create2[1];\n/**\n * set the loader configuration\n * @param {Object} config - the configuration object\n */\n\n\nfunction config(globalConfig) {\n var _validators$config = validators.config(globalConfig),\n monaco = _validators$config.monaco,\n config = _objectWithoutProperties(_validators$config, [\"monaco\"]);\n\n setState(function (state) {\n return {\n config: merge(state.config, config),\n monaco: monaco\n };\n });\n}\n/**\n * handles the initialization of the monaco-editor\n * @return {Promise} - returns an instance of monaco (with a cancelable promise)\n */\n\n\nfunction init() {\n var state = getState(function (_ref) {\n var monaco = _ref.monaco,\n isInitialized = _ref.isInitialized,\n resolve = _ref.resolve;\n return {\n monaco: monaco,\n isInitialized: isInitialized,\n resolve: resolve\n };\n });\n\n if (!state.isInitialized) {\n setState({\n isInitialized: true\n });\n\n if (state.monaco) {\n state.resolve(state.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n if (window.monaco && window.monaco.editor) {\n storeMonacoInstance(window.monaco);\n state.resolve(window.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n compose(injectScripts, getMonacoLoaderScript)(configureLoader);\n }\n\n return makeCancelable(wrapperPromise);\n}\n/**\n * injects provided scripts into the document.body\n * @param {Object} script - an HTML script element\n * @return {Object} - the injected HTML script element\n */\n\n\nfunction injectScripts(script) {\n return document.body.appendChild(script);\n}\n/**\n * creates an HTML script element with/without provided src\n * @param {string} [src] - the source path of the script\n * @return {Object} - the created HTML script element\n */\n\n\nfunction createScript(src) {\n var script = document.createElement('script');\n return src && (script.src = src), script;\n}\n/**\n * creates an HTML script element with the monaco loader src\n * @return {Object} - the created HTML script element\n */\n\n\nfunction getMonacoLoaderScript(configureLoader) {\n var state = getState(function (_ref2) {\n var config = _ref2.config,\n reject = _ref2.reject;\n return {\n config: config,\n reject: reject\n };\n });\n var loaderScript = createScript(\"\".concat(state.config.paths.vs, \"/loader.js\"));\n\n loaderScript.onload = function () {\n return configureLoader();\n };\n\n loaderScript.onerror = state.reject;\n return loaderScript;\n}\n/**\n * configures the monaco loader\n */\n\n\nfunction configureLoader() {\n var state = getState(function (_ref3) {\n var config = _ref3.config,\n resolve = _ref3.resolve,\n reject = _ref3.reject;\n return {\n config: config,\n resolve: resolve,\n reject: reject\n };\n });\n var require = window.require;\n\n require.config(state.config);\n\n require(['vs/editor/editor.main'], function (monaco) {\n storeMonacoInstance(monaco);\n state.resolve(monaco);\n }, function (error) {\n state.reject(error);\n });\n}\n/**\n * store monaco instance in local state\n */\n\n\nfunction storeMonacoInstance(monaco) {\n if (!getState().monaco) {\n setState({\n monaco: monaco\n });\n }\n}\n/**\n * internal helper function\n * extracts stored monaco instance\n * @return {Object|null} - the monaco instance\n */\n\n\nfunction __getMonacoInstance() {\n return getState(function (_ref4) {\n var monaco = _ref4.monaco;\n return monaco;\n });\n}\n\nvar wrapperPromise = new Promise(function (resolve, reject) {\n return setState({\n resolve: resolve,\n reject: reject\n });\n});\nvar loader = {\n config: config,\n init: init,\n __getMonacoInstance: __getMonacoInstance\n};\n\nexport default loader;\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/23e58ac604de92ce54472f36fe3e28dc27576d6c/assets/js/hooks/cell_editor/live_editor/theme.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\n// This is a port of the One Dark theme to the Monaco editor.\n// We color graded the comment so it has AA accessibility and\n// then similarly scaled the default font.\nconst colors = {\n background: \"#282c34\",\n default: \"#c4cad6\",\n lightRed: \"#e06c75\",\n blue: \"#61afef\",\n gray: \"#8c92a3\",\n green: \"#98c379\",\n purple: \"#c678dd\",\n red: \"#be5046\",\n teal: \"#56b6c2\",\n peach: \"#d19a66\",\n}\n\nconst rules = (colors) => [\n { token: \"\", foreground: colors.default },\n { token: \"variable\", foreground: colors.lightRed },\n { token: \"constant\", foreground: colors.blue },\n { token: \"constant.character.escape\", foreground: colors.blue },\n { token: \"comment\", foreground: colors.gray },\n { token: \"number\", foreground: colors.blue },\n { token: \"regexp\", foreground: colors.lightRed },\n { token: \"type\", foreground: colors.lightRed },\n { token: \"string\", foreground: colors.green },\n { token: \"keyword\", foreground: colors.purple },\n { token: \"operator\", foreground: colors.peach },\n { token: \"delimiter.bracket.embed\", foreground: colors.red },\n { token: \"sigil\", foreground: colors.teal },\n { token: \"function\", foreground: colors.blue },\n { token: \"function.call\", foreground: colors.default },\n\n // Markdown specific\n { token: \"emphasis\", fontStyle: \"italic\" },\n { token: \"strong\", fontStyle: \"bold\" },\n { token: \"keyword.md\", foreground: colors.lightRed },\n { token: \"keyword.table\", foreground: colors.lightRed },\n { token: \"string.link.md\", foreground: colors.blue },\n { token: \"variable.md\", foreground: colors.teal },\n { token: \"string.md\", foreground: colors.default },\n { token: \"variable.source.md\", foreground: colors.default },\n\n // XML specific\n { token: \"tag\", foreground: colors.lightRed },\n { token: \"metatag\", foreground: colors.lightRed },\n { token: \"attribute.name\", foreground: colors.peach },\n { token: \"attribute.value\", foreground: colors.green },\n\n // JSON specific\n { token: \"string.key\", foreground: colors.lightRed },\n { token: \"keyword.json\", foreground: colors.blue },\n\n // SQL specific\n { token: \"operator.sql\", foreground: colors.purple },\n]\n\nconst theme = {\n base: \"vs-dark\",\n inherit: false,\n rules: rules(colors),\n colors: {\n \"editor.background\": colors.background,\n \"editor.foreground\": colors.default,\n \"editorLineNumber.foreground\": \"#636d83\",\n \"editorCursor.foreground\": \"#636d83\",\n \"editor.selectionBackground\": \"#3e4451\",\n \"editor.findMatchHighlightBackground\": \"#528bff3d\",\n \"editorSuggestWidget.background\": \"#21252b\",\n \"editorSuggestWidget.border\": \"#181a1f\",\n \"editorSuggestWidget.selectedBackground\": \"#2c313a\",\n \"input.background\": \"#1b1d23\",\n \"input.border\": \"#181a1f\",\n \"editorBracketMatch.border\": \"#282c34\",\n \"editorBracketMatch.background\": \"#3e4451\",\n },\n}\n\nexport { theme }\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/8532bc334bdcf3c57fab9b694666e609877d279f/assets/js/hooks/cell_editor/live_editor.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\nimport loader from \"@monaco-editor/loader\"\nimport { theme } from \"./themes\"\n\nclass CodeEditor {\n constructor(el, path, value, opts) {\n this.el = el\n this.path = path\n this.value = value\n this.opts = opts\n // https://microsoft.github.io/monaco-editor/docs.html#interfaces/editor.IStandaloneCodeEditor.html\n this.standalone_code_editor = null\n this._onMount = []\n }\n\n isMounted() {\n return !!this.standalone_code_editor\n }\n\n mount() {\n if (this.isMounted()) {\n throw new Error(\"The monaco editor is already mounted\")\n }\n\n this._mountEditor()\n }\n\n onMount(callback) {\n this._onMount.push(callback)\n }\n\n dispose() {\n if (this.isMounted()) {\n const model = this.standalone_code_editor.getModel()\n\n if (model) {\n model.dispose()\n }\n\n this.standalone_code_editor.dispose()\n }\n }\n\n _mountEditor() {\n this.opts.value = this.value\n\n loader.config({\n paths: { vs: \"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs\" },\n })\n\n loader.init().then((monaco) => {\n monaco.editor.defineTheme(\"default\", theme)\n\n let modelUri = monaco.Uri.parse(this.path)\n let language = this.opts.language\n let model = monaco.editor.createModel(this.value, language, modelUri)\n\n this.opts.language = undefined\n this.opts.model = model\n this.standalone_code_editor = monaco.editor.create(this.el, this.opts)\n\n this._onMount.forEach((callback) => callback(monaco))\n\n this._setScreenDependantEditorOptions()\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"enable-word-wrapping\",\n label: \"Enable word wrapping\",\n precondition: \"config.editor.wordWrap == off\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"on\" }),\n })\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"disable-word-wrapping\",\n label: \"Disable word wrapping\",\n precondition: \"config.editor.wordWrap == on\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"off\" }),\n })\n\n const resizeObserver = new ResizeObserver((entries) => {\n entries.forEach(() => {\n if (this.el.offsetHeight > 0) {\n this._setScreenDependantEditorOptions()\n this.standalone_code_editor.layout()\n }\n })\n })\n\n resizeObserver.observe(this.el)\n\n this.standalone_code_editor.onDidContentSizeChange(() => {\n const contentHeight = this.standalone_code_editor.getContentHeight()\n this.el.style.height = `${contentHeight}px`\n })\n })\n }\n\n _setScreenDependantEditorOptions() {\n if (window.screen.width < 768) {\n this.standalone_code_editor.updateOptions({\n folding: false,\n lineDecorationsWidth: 16,\n lineNumbersMinChars:\n Math.floor(\n Math.log10(this.standalone_code_editor.getModel().getLineCount())\n ) + 3,\n })\n } else {\n this.standalone_code_editor.updateOptions({\n folding: true,\n lineDecorationsWidth: 10,\n lineNumbersMinChars: 5,\n })\n }\n }\n}\n\nexport default CodeEditor\n", "import CodeEditor from \"../editor/code_editor\"\n\nconst CodeEditorHook = {\n mounted() {\n // TODO: validate dataset\n const opts = JSON.parse(this.el.dataset.opts)\n\n this.codeEditor = new CodeEditor(\n this.el,\n this.el.dataset.path,\n this.el.dataset.value,\n opts\n )\n\n this.codeEditor.onMount((monaco) => {\n if (this.el.dataset.changeEvent && this.el.dataset.changeEvent !== \"\") {\n this.codeEditor.standalone_code_editor.onDidChangeModelContent(() => {\n if (this.el.dataset.target && this.el.dataset.target !== \"\") {\n this.pushEventTo(\n this.el.dataset.target,\n this.el.dataset.changeEvent,\n {\n value: this.codeEditor.standalone_code_editor.getValue(),\n }\n )\n } else {\n this.pushEvent(this.el.dataset.changeEvent, {\n value: this.codeEditor.standalone_code_editor.getValue(),\n })\n }\n })\n }\n\n this.handleEvent(\n \"lme:change_language:\" + this.el.dataset.path,\n (data) => {\n const model = this.codeEditor.standalone_code_editor.getModel()\n\n if (model.getLanguageId() !== data.mimeTypeOrLanguageId) {\n monaco.editor.setModelLanguage(model, data.mimeTypeOrLanguageId)\n }\n }\n )\n\n this.handleEvent(\"lme:set_value:\" + this.el.dataset.path, (data) => {\n this.codeEditor.standalone_code_editor.setValue(data.value)\n })\n\n this.el.querySelectorAll(\"textarea\").forEach((textarea) => {\n textarea.setAttribute(\n \"name\",\n \"live_monaco_editor[\" + this.el.dataset.path + \"]\"\n )\n })\n\n this.el.removeAttribute(\"data-value\")\n this.el.removeAttribute(\"data-opts\")\n\n this.el.dispatchEvent(\n new CustomEvent(\"lme:editor_mounted\", {\n detail: { hook: this, editor: this.codeEditor },\n bubbles: true,\n })\n )\n })\n\n if (!this.codeEditor.isMounted()) {\n this.codeEditor.mount()\n }\n },\n\n destroyed() {\n if (this.codeEditor) {\n this.codeEditor.dispose()\n }\n },\n}\n\nexport { CodeEditorHook }\n"], - "mappings": "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", + "sourcesContent": ["import \"@fontsource/jetbrains-mono\"\nimport { CodeEditorHook } from \"./hooks/code_editor\"\n\nexport { CodeEditorHook }\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\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\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\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\n return target;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nexport { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _defineProperty as defineProperty, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _objectSpread2 as objectSpread2, _objectWithoutProperties as objectWithoutProperties, _objectWithoutPropertiesLoose as objectWithoutPropertiesLoose, _slicedToArray as slicedToArray, _unsupportedIterableToArray as unsupportedIterableToArray };\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n}\n\nfunction curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len3 = arguments.length, nextArgs = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n nextArgs[_key3] = arguments[_key3];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nfunction isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nfunction isEmpty(obj) {\n return !Object.keys(obj).length;\n}\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nfunction hasOwnProperty(object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n}\n\nfunction validateChanges(initial, changes) {\n if (!isObject(changes)) errorHandler('changeType');\n if (Object.keys(changes).some(function (field) {\n return !hasOwnProperty(initial, field);\n })) errorHandler('changeField');\n return changes;\n}\n\nfunction validateSelector(selector) {\n if (!isFunction(selector)) errorHandler('selectorType');\n}\n\nfunction validateHandler(handler) {\n if (!(isFunction(handler) || isObject(handler))) errorHandler('handlerType');\n if (isObject(handler) && Object.values(handler).some(function (_handler) {\n return !isFunction(_handler);\n })) errorHandler('handlersType');\n}\n\nfunction validateInitial(initial) {\n if (!initial) errorHandler('initialIsRequired');\n if (!isObject(initial)) errorHandler('initialType');\n if (isEmpty(initial)) errorHandler('initialContent');\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n initialIsRequired: 'initial state is required',\n initialType: 'initial state should be an object',\n initialContent: 'initial state shouldn\\'t be an empty object',\n handlerType: 'handler should be an object or a function',\n handlersType: 'all handlers should be a functions',\n selectorType: 'selector should be a function',\n changeType: 'provided value of changes should be an object',\n changeField: 'it seams you want to change a field in the state which is not specified in the \"initial\" state',\n \"default\": 'an unknown error accured in `state-local` package'\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n changes: validateChanges,\n selector: validateSelector,\n handler: validateHandler,\n initial: validateInitial\n};\n\nfunction create(initial) {\n var handler = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n validators.initial(initial);\n validators.handler(handler);\n var state = {\n current: initial\n };\n var didUpdate = curry(didStateUpdate)(state, handler);\n var update = curry(updateState)(state);\n var validate = curry(validators.changes)(initial);\n var getChanges = curry(extractChanges)(state);\n\n function getState() {\n var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (state) {\n return state;\n };\n validators.selector(selector);\n return selector(state.current);\n }\n\n function setState(causedChanges) {\n compose(didUpdate, update, validate, getChanges)(causedChanges);\n }\n\n return [getState, setState];\n}\n\nfunction extractChanges(state, causedChanges) {\n return isFunction(causedChanges) ? causedChanges(state.current) : causedChanges;\n}\n\nfunction updateState(state, changes) {\n state.current = _objectSpread2(_objectSpread2({}, state.current), changes);\n return changes;\n}\n\nfunction didStateUpdate(state, handler, changes) {\n isFunction(handler) ? handler(state.current) : Object.keys(changes).forEach(function (field) {\n var _handler$field;\n\n return (_handler$field = handler[field]) === null || _handler$field === void 0 ? void 0 : _handler$field.call(handler, state.current[field]);\n });\n return changes;\n}\n\nvar index = {\n create: create\n};\n\nexport default index;\n", "var config = {\n paths: {\n vs: 'https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs'\n }\n};\n\nexport default config;\n", "function curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len2 = arguments.length, nextArgs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n nextArgs[_key2] = arguments[_key2];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nexport default curry;\n", "function isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nexport default isObject;\n", "import curry from '../utils/curry.js';\nimport isObject from '../utils/isObject.js';\n\n/**\n * validates the configuration object and informs about deprecation\n * @param {Object} config - the configuration object \n * @return {Object} config - the validated configuration object\n */\n\nfunction validateConfig(config) {\n if (!config) errorHandler('configIsRequired');\n if (!isObject(config)) errorHandler('configType');\n\n if (config.urls) {\n informAboutDeprecation();\n return {\n paths: {\n vs: config.urls.monacoBase\n }\n };\n }\n\n return config;\n}\n/**\n * logs deprecation message\n */\n\n\nfunction informAboutDeprecation() {\n console.warn(errorMessages.deprecation);\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n configIsRequired: 'the configuration object is required',\n configType: 'the configuration object should be an object',\n \"default\": 'an unknown error accured in `@monaco-editor/loader` package',\n deprecation: \"Deprecation warning!\\n You are using deprecated way of configuration.\\n\\n Instead of using\\n monaco.config({ urls: { monacoBase: '...' } })\\n use\\n monaco.config({ paths: { vs: '...' } })\\n\\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\\n \"\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n config: validateConfig\n};\n\nexport default validators;\nexport { errorHandler, errorMessages };\n", "var compose = function compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n};\n\nexport default compose;\n", "import { objectSpread2 as _objectSpread2 } from '../_virtual/_rollupPluginBabelHelpers.js';\n\nfunction merge(target, source) {\n Object.keys(source).forEach(function (key) {\n if (source[key] instanceof Object) {\n if (target[key]) {\n Object.assign(source[key], merge(target[key], source[key]));\n }\n }\n });\n return _objectSpread2(_objectSpread2({}, target), source);\n}\n\nexport default merge;\n", "// The source (has been changed) is https://github.com/facebook/react/issues/5465#issuecomment-157888325\nvar CANCELATION_MESSAGE = {\n type: 'cancelation',\n msg: 'operation is manually canceled'\n};\n\nfunction makeCancelable(promise) {\n var hasCanceled_ = false;\n var wrappedPromise = new Promise(function (resolve, reject) {\n promise.then(function (val) {\n return hasCanceled_ ? reject(CANCELATION_MESSAGE) : resolve(val);\n });\n promise[\"catch\"](reject);\n });\n return wrappedPromise.cancel = function () {\n return hasCanceled_ = true;\n }, wrappedPromise;\n}\n\nexport default makeCancelable;\nexport { CANCELATION_MESSAGE };\n", "import { slicedToArray as _slicedToArray, objectWithoutProperties as _objectWithoutProperties } from '../_virtual/_rollupPluginBabelHelpers.js';\nimport state from 'state-local';\nimport config$1 from '../config/index.js';\nimport validators from '../validators/index.js';\nimport compose from '../utils/compose.js';\nimport merge from '../utils/deepMerge.js';\nimport makeCancelable from '../utils/makeCancelable.js';\n\n/** the local state of the module */\n\nvar _state$create = state.create({\n config: config$1,\n isInitialized: false,\n resolve: null,\n reject: null,\n monaco: null\n}),\n _state$create2 = _slicedToArray(_state$create, 2),\n getState = _state$create2[0],\n setState = _state$create2[1];\n/**\n * set the loader configuration\n * @param {Object} config - the configuration object\n */\n\n\nfunction config(globalConfig) {\n var _validators$config = validators.config(globalConfig),\n monaco = _validators$config.monaco,\n config = _objectWithoutProperties(_validators$config, [\"monaco\"]);\n\n setState(function (state) {\n return {\n config: merge(state.config, config),\n monaco: monaco\n };\n });\n}\n/**\n * handles the initialization of the monaco-editor\n * @return {Promise} - returns an instance of monaco (with a cancelable promise)\n */\n\n\nfunction init() {\n var state = getState(function (_ref) {\n var monaco = _ref.monaco,\n isInitialized = _ref.isInitialized,\n resolve = _ref.resolve;\n return {\n monaco: monaco,\n isInitialized: isInitialized,\n resolve: resolve\n };\n });\n\n if (!state.isInitialized) {\n setState({\n isInitialized: true\n });\n\n if (state.monaco) {\n state.resolve(state.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n if (window.monaco && window.monaco.editor) {\n storeMonacoInstance(window.monaco);\n state.resolve(window.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n compose(injectScripts, getMonacoLoaderScript)(configureLoader);\n }\n\n return makeCancelable(wrapperPromise);\n}\n/**\n * injects provided scripts into the document.body\n * @param {Object} script - an HTML script element\n * @return {Object} - the injected HTML script element\n */\n\n\nfunction injectScripts(script) {\n return document.body.appendChild(script);\n}\n/**\n * creates an HTML script element with/without provided src\n * @param {string} [src] - the source path of the script\n * @return {Object} - the created HTML script element\n */\n\n\nfunction createScript(src) {\n var script = document.createElement('script');\n return src && (script.src = src), script;\n}\n/**\n * creates an HTML script element with the monaco loader src\n * @return {Object} - the created HTML script element\n */\n\n\nfunction getMonacoLoaderScript(configureLoader) {\n var state = getState(function (_ref2) {\n var config = _ref2.config,\n reject = _ref2.reject;\n return {\n config: config,\n reject: reject\n };\n });\n var loaderScript = createScript(\"\".concat(state.config.paths.vs, \"/loader.js\"));\n\n loaderScript.onload = function () {\n return configureLoader();\n };\n\n loaderScript.onerror = state.reject;\n return loaderScript;\n}\n/**\n * configures the monaco loader\n */\n\n\nfunction configureLoader() {\n var state = getState(function (_ref3) {\n var config = _ref3.config,\n resolve = _ref3.resolve,\n reject = _ref3.reject;\n return {\n config: config,\n resolve: resolve,\n reject: reject\n };\n });\n var require = window.require;\n\n require.config(state.config);\n\n require(['vs/editor/editor.main'], function (monaco) {\n storeMonacoInstance(monaco);\n state.resolve(monaco);\n }, function (error) {\n state.reject(error);\n });\n}\n/**\n * store monaco instance in local state\n */\n\n\nfunction storeMonacoInstance(monaco) {\n if (!getState().monaco) {\n setState({\n monaco: monaco\n });\n }\n}\n/**\n * internal helper function\n * extracts stored monaco instance\n * @return {Object|null} - the monaco instance\n */\n\n\nfunction __getMonacoInstance() {\n return getState(function (_ref4) {\n var monaco = _ref4.monaco;\n return monaco;\n });\n}\n\nvar wrapperPromise = new Promise(function (resolve, reject) {\n return setState({\n resolve: resolve,\n reject: reject\n });\n});\nvar loader = {\n config: config,\n init: init,\n __getMonacoInstance: __getMonacoInstance\n};\n\nexport default loader;\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/23e58ac604de92ce54472f36fe3e28dc27576d6c/assets/js/hooks/cell_editor/live_editor/theme.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\n// This is a port of the One Dark theme to the Monaco editor.\n// We color graded the comment so it has AA accessibility and\n// then similarly scaled the default font.\nconst colors = {\n background: \"#282c34\",\n default: \"#c4cad6\",\n lightRed: \"#e06c75\",\n blue: \"#61afef\",\n gray: \"#8c92a3\",\n green: \"#98c379\",\n purple: \"#c678dd\",\n red: \"#be5046\",\n teal: \"#56b6c2\",\n peach: \"#d19a66\",\n}\n\nconst rules = (colors) => [\n { token: \"\", foreground: colors.default },\n { token: \"variable\", foreground: colors.lightRed },\n { token: \"constant\", foreground: colors.blue },\n { token: \"constant.character.escape\", foreground: colors.blue },\n { token: \"comment\", foreground: colors.gray },\n { token: \"number\", foreground: colors.blue },\n { token: \"regexp\", foreground: colors.lightRed },\n { token: \"type\", foreground: colors.lightRed },\n { token: \"string\", foreground: colors.green },\n { token: \"keyword\", foreground: colors.purple },\n { token: \"operator\", foreground: colors.peach },\n { token: \"delimiter.bracket.embed\", foreground: colors.red },\n { token: \"sigil\", foreground: colors.teal },\n { token: \"function\", foreground: colors.blue },\n { token: \"function.call\", foreground: colors.default },\n\n // Markdown specific\n { token: \"emphasis\", fontStyle: \"italic\" },\n { token: \"strong\", fontStyle: \"bold\" },\n { token: \"keyword.md\", foreground: colors.lightRed },\n { token: \"keyword.table\", foreground: colors.lightRed },\n { token: \"string.link.md\", foreground: colors.blue },\n { token: \"variable.md\", foreground: colors.teal },\n { token: \"string.md\", foreground: colors.default },\n { token: \"variable.source.md\", foreground: colors.default },\n\n // XML specific\n { token: \"tag\", foreground: colors.lightRed },\n { token: \"metatag\", foreground: colors.lightRed },\n { token: \"attribute.name\", foreground: colors.peach },\n { token: \"attribute.value\", foreground: colors.green },\n\n // JSON specific\n { token: \"string.key\", foreground: colors.lightRed },\n { token: \"keyword.json\", foreground: colors.blue },\n\n // SQL specific\n { token: \"operator.sql\", foreground: colors.purple },\n]\n\nconst theme = {\n base: \"vs-dark\",\n inherit: false,\n rules: rules(colors),\n colors: {\n \"editor.background\": colors.background,\n \"editor.foreground\": colors.default,\n \"editorLineNumber.foreground\": \"#636d83\",\n \"editorCursor.foreground\": \"#636d83\",\n \"editor.selectionBackground\": \"#3e4451\",\n \"editor.findMatchHighlightBackground\": \"#528bff3d\",\n \"editorSuggestWidget.background\": \"#21252b\",\n \"editorSuggestWidget.border\": \"#181a1f\",\n \"editorSuggestWidget.selectedBackground\": \"#2c313a\",\n \"input.background\": \"#1b1d23\",\n \"input.border\": \"#181a1f\",\n \"editorBracketMatch.border\": \"#282c34\",\n \"editorBracketMatch.background\": \"#3e4451\",\n },\n}\n\nexport { theme }\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/8532bc334bdcf3c57fab9b694666e609877d279f/assets/js/hooks/cell_editor/live_editor.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\nimport loader from \"@monaco-editor/loader\"\nimport { theme } from \"./themes\"\n\nclass CodeEditor {\n constructor(el, path, value, opts) {\n this.el = el\n this.path = path\n this.value = value\n this.opts = opts\n // https://microsoft.github.io/monaco-editor/docs.html#interfaces/editor.IStandaloneCodeEditor.html\n this.standalone_code_editor = null\n this._onMount = []\n }\n\n isMounted() {\n return !!this.standalone_code_editor\n }\n\n mount() {\n if (this.isMounted()) {\n throw new Error(\"The monaco editor is already mounted\")\n }\n\n this._mountEditor()\n }\n\n onMount(callback) {\n this._onMount.push(callback)\n }\n\n dispose() {\n if (this.isMounted()) {\n const model = this.standalone_code_editor.getModel()\n\n if (model) {\n model.dispose()\n }\n\n this.standalone_code_editor.dispose()\n }\n }\n\n _mountEditor() {\n const { loader: loaderConfig, ...editorOpts } = this.opts\n editorOpts.value = this.value\n\n const defaultLoaderConfig = {\n paths: { vs: \"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs\" },\n }\n\n loader.config(loaderConfig || defaultLoaderConfig)\n\n loader.init().then((monaco) => {\n monaco.editor.defineTheme(\"default\", theme)\n\n let modelUri = monaco.Uri.parse(this.path)\n let language = editorOpts.language\n let model = monaco.editor.createModel(this.value, language, modelUri)\n\n editorOpts.language = undefined\n editorOpts.model = model\n this.standalone_code_editor = monaco.editor.create(this.el, editorOpts)\n\n this._onMount.forEach((callback) => callback(monaco))\n\n this._setScreenDependantEditorOptions()\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"enable-word-wrapping\",\n label: \"Enable word wrapping\",\n precondition: \"config.editor.wordWrap == off\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"on\" }),\n })\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"disable-word-wrapping\",\n label: \"Disable word wrapping\",\n precondition: \"config.editor.wordWrap == on\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"off\" }),\n })\n\n const resizeObserver = new ResizeObserver((entries) => {\n entries.forEach(() => {\n if (this.el.offsetHeight > 0) {\n this._setScreenDependantEditorOptions()\n this.standalone_code_editor.layout()\n }\n })\n })\n\n resizeObserver.observe(this.el)\n\n this.standalone_code_editor.onDidContentSizeChange(() => {\n const contentHeight = this.standalone_code_editor.getContentHeight()\n this.el.style.height = `${contentHeight}px`\n })\n })\n }\n\n _setScreenDependantEditorOptions() {\n if (window.screen.width < 768) {\n this.standalone_code_editor.updateOptions({\n folding: false,\n lineDecorationsWidth: 16,\n lineNumbersMinChars:\n Math.floor(\n Math.log10(this.standalone_code_editor.getModel().getLineCount())\n ) + 3,\n })\n } else {\n this.standalone_code_editor.updateOptions({\n folding: true,\n lineDecorationsWidth: 10,\n lineNumbersMinChars: 5,\n })\n }\n }\n}\n\nexport default CodeEditor\n", "import CodeEditor from \"../editor/code_editor\"\n\nconst CodeEditorHook = {\n mounted() {\n // TODO: validate dataset\n const opts = JSON.parse(this.el.dataset.opts)\n\n this.codeEditor = new CodeEditor(\n this.el,\n this.el.dataset.path,\n this.el.dataset.value,\n opts\n )\n\n this.codeEditor.onMount((monaco) => {\n if (this.el.dataset.changeEvent && this.el.dataset.changeEvent !== \"\") {\n this.codeEditor.standalone_code_editor.onDidChangeModelContent(() => {\n if (this.el.dataset.target && this.el.dataset.target !== \"\") {\n this.pushEventTo(\n this.el.dataset.target,\n this.el.dataset.changeEvent,\n {\n value: this.codeEditor.standalone_code_editor.getValue(),\n }\n )\n } else {\n this.pushEvent(this.el.dataset.changeEvent, {\n value: this.codeEditor.standalone_code_editor.getValue(),\n })\n }\n })\n }\n\n this.handleEvent(\n \"lme:change_language:\" + this.el.dataset.path,\n (data) => {\n const model = this.codeEditor.standalone_code_editor.getModel()\n\n if (model.getLanguageId() !== data.mimeTypeOrLanguageId) {\n monaco.editor.setModelLanguage(model, data.mimeTypeOrLanguageId)\n }\n }\n )\n\n this.handleEvent(\"lme:set_value:\" + this.el.dataset.path, (data) => {\n this.codeEditor.standalone_code_editor.setValue(data.value)\n })\n\n this.el.querySelectorAll(\"textarea\").forEach((textarea) => {\n textarea.setAttribute(\n \"name\",\n \"live_monaco_editor[\" + this.el.dataset.path + \"]\"\n )\n })\n\n this.el.removeAttribute(\"data-value\")\n this.el.removeAttribute(\"data-opts\")\n\n this.el.dispatchEvent(\n new CustomEvent(\"lme:editor_mounted\", {\n detail: { hook: this, editor: this.codeEditor },\n bubbles: true,\n })\n )\n })\n\n if (!this.codeEditor.isMounted()) {\n this.codeEditor.mount()\n }\n },\n\n destroyed() {\n if (this.codeEditor) {\n this.codeEditor.dispose()\n }\n },\n}\n\nexport { CodeEditorHook }\n"], + "mappings": "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", "names": ["_defineProperty", "ownKeys", "_objectSpread2", "errorMessages", "getState", "state", "setState", "curry", "isObject", "config", "errorHandler", "errorMessages", "throwError", "validators", "compose", "config", "configureLoader", "require", "colors"] } diff --git a/priv/static/live_monaco_editor.esm.js b/priv/static/live_monaco_editor.esm.js index 8dd1514..9c91181 100644 --- a/priv/static/live_monaco_editor.esm.js +++ b/priv/static/live_monaco_editor.esm.js @@ -597,18 +597,20 @@ var CodeEditor = class { } } _mountEditor() { - this.opts.value = this.value; - loader_default.config({ + const { loader: loaderConfig, ...editorOpts } = this.opts; + editorOpts.value = this.value; + const defaultLoaderConfig = { paths: { vs: "https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs" } - }); + }; + loader_default.config(loaderConfig || defaultLoaderConfig); loader_default.init().then((monaco) => { monaco.editor.defineTheme("default", theme); let modelUri = monaco.Uri.parse(this.path); - let language = this.opts.language; + let language = editorOpts.language; let model = monaco.editor.createModel(this.value, language, modelUri); - this.opts.language = void 0; - this.opts.model = model; - this.standalone_code_editor = monaco.editor.create(this.el, this.opts); + editorOpts.language = void 0; + editorOpts.model = model; + this.standalone_code_editor = monaco.editor.create(this.el, editorOpts); this._onMount.forEach((callback) => callback(monaco)); this._setScreenDependantEditorOptions(); this.standalone_code_editor.addAction({ diff --git a/priv/static/live_monaco_editor.esm.js.map b/priv/static/live_monaco_editor.esm.js.map index 0e2a4cc..81adc72 100644 --- a/priv/static/live_monaco_editor.esm.js.map +++ b/priv/static/live_monaco_editor.esm.js.map @@ -1,7 +1,7 @@ { "version": 3, "sources": ["../../assets/node_modules/@monaco-editor/loader/lib/es/_virtual/_rollupPluginBabelHelpers.js", "../../assets/node_modules/state-local/lib/es/state-local.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/config/index.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/curry.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/isObject.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/validators/index.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/compose.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/deepMerge.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/makeCancelable.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/loader/index.js", "../../assets/js/live_monaco_editor/editor/themes.js", "../../assets/js/live_monaco_editor/editor/code_editor.js", "../../assets/js/live_monaco_editor/hooks/code_editor.js"], - "sourcesContent": ["function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\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\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\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\n return target;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nexport { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _defineProperty as defineProperty, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _objectSpread2 as objectSpread2, _objectWithoutProperties as objectWithoutProperties, _objectWithoutPropertiesLoose as objectWithoutPropertiesLoose, _slicedToArray as slicedToArray, _unsupportedIterableToArray as unsupportedIterableToArray };\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n}\n\nfunction curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len3 = arguments.length, nextArgs = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n nextArgs[_key3] = arguments[_key3];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nfunction isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nfunction isEmpty(obj) {\n return !Object.keys(obj).length;\n}\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nfunction hasOwnProperty(object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n}\n\nfunction validateChanges(initial, changes) {\n if (!isObject(changes)) errorHandler('changeType');\n if (Object.keys(changes).some(function (field) {\n return !hasOwnProperty(initial, field);\n })) errorHandler('changeField');\n return changes;\n}\n\nfunction validateSelector(selector) {\n if (!isFunction(selector)) errorHandler('selectorType');\n}\n\nfunction validateHandler(handler) {\n if (!(isFunction(handler) || isObject(handler))) errorHandler('handlerType');\n if (isObject(handler) && Object.values(handler).some(function (_handler) {\n return !isFunction(_handler);\n })) errorHandler('handlersType');\n}\n\nfunction validateInitial(initial) {\n if (!initial) errorHandler('initialIsRequired');\n if (!isObject(initial)) errorHandler('initialType');\n if (isEmpty(initial)) errorHandler('initialContent');\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n initialIsRequired: 'initial state is required',\n initialType: 'initial state should be an object',\n initialContent: 'initial state shouldn\\'t be an empty object',\n handlerType: 'handler should be an object or a function',\n handlersType: 'all handlers should be a functions',\n selectorType: 'selector should be a function',\n changeType: 'provided value of changes should be an object',\n changeField: 'it seams you want to change a field in the state which is not specified in the \"initial\" state',\n \"default\": 'an unknown error accured in `state-local` package'\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n changes: validateChanges,\n selector: validateSelector,\n handler: validateHandler,\n initial: validateInitial\n};\n\nfunction create(initial) {\n var handler = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n validators.initial(initial);\n validators.handler(handler);\n var state = {\n current: initial\n };\n var didUpdate = curry(didStateUpdate)(state, handler);\n var update = curry(updateState)(state);\n var validate = curry(validators.changes)(initial);\n var getChanges = curry(extractChanges)(state);\n\n function getState() {\n var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (state) {\n return state;\n };\n validators.selector(selector);\n return selector(state.current);\n }\n\n function setState(causedChanges) {\n compose(didUpdate, update, validate, getChanges)(causedChanges);\n }\n\n return [getState, setState];\n}\n\nfunction extractChanges(state, causedChanges) {\n return isFunction(causedChanges) ? causedChanges(state.current) : causedChanges;\n}\n\nfunction updateState(state, changes) {\n state.current = _objectSpread2(_objectSpread2({}, state.current), changes);\n return changes;\n}\n\nfunction didStateUpdate(state, handler, changes) {\n isFunction(handler) ? handler(state.current) : Object.keys(changes).forEach(function (field) {\n var _handler$field;\n\n return (_handler$field = handler[field]) === null || _handler$field === void 0 ? void 0 : _handler$field.call(handler, state.current[field]);\n });\n return changes;\n}\n\nvar index = {\n create: create\n};\n\nexport default index;\n", "var config = {\n paths: {\n vs: 'https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs'\n }\n};\n\nexport default config;\n", "function curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len2 = arguments.length, nextArgs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n nextArgs[_key2] = arguments[_key2];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nexport default curry;\n", "function isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nexport default isObject;\n", "import curry from '../utils/curry.js';\nimport isObject from '../utils/isObject.js';\n\n/**\n * validates the configuration object and informs about deprecation\n * @param {Object} config - the configuration object \n * @return {Object} config - the validated configuration object\n */\n\nfunction validateConfig(config) {\n if (!config) errorHandler('configIsRequired');\n if (!isObject(config)) errorHandler('configType');\n\n if (config.urls) {\n informAboutDeprecation();\n return {\n paths: {\n vs: config.urls.monacoBase\n }\n };\n }\n\n return config;\n}\n/**\n * logs deprecation message\n */\n\n\nfunction informAboutDeprecation() {\n console.warn(errorMessages.deprecation);\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n configIsRequired: 'the configuration object is required',\n configType: 'the configuration object should be an object',\n \"default\": 'an unknown error accured in `@monaco-editor/loader` package',\n deprecation: \"Deprecation warning!\\n You are using deprecated way of configuration.\\n\\n Instead of using\\n monaco.config({ urls: { monacoBase: '...' } })\\n use\\n monaco.config({ paths: { vs: '...' } })\\n\\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\\n \"\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n config: validateConfig\n};\n\nexport default validators;\nexport { errorHandler, errorMessages };\n", "var compose = function compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n};\n\nexport default compose;\n", "import { objectSpread2 as _objectSpread2 } from '../_virtual/_rollupPluginBabelHelpers.js';\n\nfunction merge(target, source) {\n Object.keys(source).forEach(function (key) {\n if (source[key] instanceof Object) {\n if (target[key]) {\n Object.assign(source[key], merge(target[key], source[key]));\n }\n }\n });\n return _objectSpread2(_objectSpread2({}, target), source);\n}\n\nexport default merge;\n", "// The source (has been changed) is https://github.com/facebook/react/issues/5465#issuecomment-157888325\nvar CANCELATION_MESSAGE = {\n type: 'cancelation',\n msg: 'operation is manually canceled'\n};\n\nfunction makeCancelable(promise) {\n var hasCanceled_ = false;\n var wrappedPromise = new Promise(function (resolve, reject) {\n promise.then(function (val) {\n return hasCanceled_ ? reject(CANCELATION_MESSAGE) : resolve(val);\n });\n promise[\"catch\"](reject);\n });\n return wrappedPromise.cancel = function () {\n return hasCanceled_ = true;\n }, wrappedPromise;\n}\n\nexport default makeCancelable;\nexport { CANCELATION_MESSAGE };\n", "import { slicedToArray as _slicedToArray, objectWithoutProperties as _objectWithoutProperties } from '../_virtual/_rollupPluginBabelHelpers.js';\nimport state from 'state-local';\nimport config$1 from '../config/index.js';\nimport validators from '../validators/index.js';\nimport compose from '../utils/compose.js';\nimport merge from '../utils/deepMerge.js';\nimport makeCancelable from '../utils/makeCancelable.js';\n\n/** the local state of the module */\n\nvar _state$create = state.create({\n config: config$1,\n isInitialized: false,\n resolve: null,\n reject: null,\n monaco: null\n}),\n _state$create2 = _slicedToArray(_state$create, 2),\n getState = _state$create2[0],\n setState = _state$create2[1];\n/**\n * set the loader configuration\n * @param {Object} config - the configuration object\n */\n\n\nfunction config(globalConfig) {\n var _validators$config = validators.config(globalConfig),\n monaco = _validators$config.monaco,\n config = _objectWithoutProperties(_validators$config, [\"monaco\"]);\n\n setState(function (state) {\n return {\n config: merge(state.config, config),\n monaco: monaco\n };\n });\n}\n/**\n * handles the initialization of the monaco-editor\n * @return {Promise} - returns an instance of monaco (with a cancelable promise)\n */\n\n\nfunction init() {\n var state = getState(function (_ref) {\n var monaco = _ref.monaco,\n isInitialized = _ref.isInitialized,\n resolve = _ref.resolve;\n return {\n monaco: monaco,\n isInitialized: isInitialized,\n resolve: resolve\n };\n });\n\n if (!state.isInitialized) {\n setState({\n isInitialized: true\n });\n\n if (state.monaco) {\n state.resolve(state.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n if (window.monaco && window.monaco.editor) {\n storeMonacoInstance(window.monaco);\n state.resolve(window.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n compose(injectScripts, getMonacoLoaderScript)(configureLoader);\n }\n\n return makeCancelable(wrapperPromise);\n}\n/**\n * injects provided scripts into the document.body\n * @param {Object} script - an HTML script element\n * @return {Object} - the injected HTML script element\n */\n\n\nfunction injectScripts(script) {\n return document.body.appendChild(script);\n}\n/**\n * creates an HTML script element with/without provided src\n * @param {string} [src] - the source path of the script\n * @return {Object} - the created HTML script element\n */\n\n\nfunction createScript(src) {\n var script = document.createElement('script');\n return src && (script.src = src), script;\n}\n/**\n * creates an HTML script element with the monaco loader src\n * @return {Object} - the created HTML script element\n */\n\n\nfunction getMonacoLoaderScript(configureLoader) {\n var state = getState(function (_ref2) {\n var config = _ref2.config,\n reject = _ref2.reject;\n return {\n config: config,\n reject: reject\n };\n });\n var loaderScript = createScript(\"\".concat(state.config.paths.vs, \"/loader.js\"));\n\n loaderScript.onload = function () {\n return configureLoader();\n };\n\n loaderScript.onerror = state.reject;\n return loaderScript;\n}\n/**\n * configures the monaco loader\n */\n\n\nfunction configureLoader() {\n var state = getState(function (_ref3) {\n var config = _ref3.config,\n resolve = _ref3.resolve,\n reject = _ref3.reject;\n return {\n config: config,\n resolve: resolve,\n reject: reject\n };\n });\n var require = window.require;\n\n require.config(state.config);\n\n require(['vs/editor/editor.main'], function (monaco) {\n storeMonacoInstance(monaco);\n state.resolve(monaco);\n }, function (error) {\n state.reject(error);\n });\n}\n/**\n * store monaco instance in local state\n */\n\n\nfunction storeMonacoInstance(monaco) {\n if (!getState().monaco) {\n setState({\n monaco: monaco\n });\n }\n}\n/**\n * internal helper function\n * extracts stored monaco instance\n * @return {Object|null} - the monaco instance\n */\n\n\nfunction __getMonacoInstance() {\n return getState(function (_ref4) {\n var monaco = _ref4.monaco;\n return monaco;\n });\n}\n\nvar wrapperPromise = new Promise(function (resolve, reject) {\n return setState({\n resolve: resolve,\n reject: reject\n });\n});\nvar loader = {\n config: config,\n init: init,\n __getMonacoInstance: __getMonacoInstance\n};\n\nexport default loader;\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/23e58ac604de92ce54472f36fe3e28dc27576d6c/assets/js/hooks/cell_editor/live_editor/theme.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\n// This is a port of the One Dark theme to the Monaco editor.\n// We color graded the comment so it has AA accessibility and\n// then similarly scaled the default font.\nconst colors = {\n background: \"#282c34\",\n default: \"#c4cad6\",\n lightRed: \"#e06c75\",\n blue: \"#61afef\",\n gray: \"#8c92a3\",\n green: \"#98c379\",\n purple: \"#c678dd\",\n red: \"#be5046\",\n teal: \"#56b6c2\",\n peach: \"#d19a66\",\n}\n\nconst rules = (colors) => [\n { token: \"\", foreground: colors.default },\n { token: \"variable\", foreground: colors.lightRed },\n { token: \"constant\", foreground: colors.blue },\n { token: \"constant.character.escape\", foreground: colors.blue },\n { token: \"comment\", foreground: colors.gray },\n { token: \"number\", foreground: colors.blue },\n { token: \"regexp\", foreground: colors.lightRed },\n { token: \"type\", foreground: colors.lightRed },\n { token: \"string\", foreground: colors.green },\n { token: \"keyword\", foreground: colors.purple },\n { token: \"operator\", foreground: colors.peach },\n { token: \"delimiter.bracket.embed\", foreground: colors.red },\n { token: \"sigil\", foreground: colors.teal },\n { token: \"function\", foreground: colors.blue },\n { token: \"function.call\", foreground: colors.default },\n\n // Markdown specific\n { token: \"emphasis\", fontStyle: \"italic\" },\n { token: \"strong\", fontStyle: \"bold\" },\n { token: \"keyword.md\", foreground: colors.lightRed },\n { token: \"keyword.table\", foreground: colors.lightRed },\n { token: \"string.link.md\", foreground: colors.blue },\n { token: \"variable.md\", foreground: colors.teal },\n { token: \"string.md\", foreground: colors.default },\n { token: \"variable.source.md\", foreground: colors.default },\n\n // XML specific\n { token: \"tag\", foreground: colors.lightRed },\n { token: \"metatag\", foreground: colors.lightRed },\n { token: \"attribute.name\", foreground: colors.peach },\n { token: \"attribute.value\", foreground: colors.green },\n\n // JSON specific\n { token: \"string.key\", foreground: colors.lightRed },\n { token: \"keyword.json\", foreground: colors.blue },\n\n // SQL specific\n { token: \"operator.sql\", foreground: colors.purple },\n]\n\nconst theme = {\n base: \"vs-dark\",\n inherit: false,\n rules: rules(colors),\n colors: {\n \"editor.background\": colors.background,\n \"editor.foreground\": colors.default,\n \"editorLineNumber.foreground\": \"#636d83\",\n \"editorCursor.foreground\": \"#636d83\",\n \"editor.selectionBackground\": \"#3e4451\",\n \"editor.findMatchHighlightBackground\": \"#528bff3d\",\n \"editorSuggestWidget.background\": \"#21252b\",\n \"editorSuggestWidget.border\": \"#181a1f\",\n \"editorSuggestWidget.selectedBackground\": \"#2c313a\",\n \"input.background\": \"#1b1d23\",\n \"input.border\": \"#181a1f\",\n \"editorBracketMatch.border\": \"#282c34\",\n \"editorBracketMatch.background\": \"#3e4451\",\n },\n}\n\nexport { theme }\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/8532bc334bdcf3c57fab9b694666e609877d279f/assets/js/hooks/cell_editor/live_editor.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\nimport loader from \"@monaco-editor/loader\"\nimport { theme } from \"./themes\"\n\nclass CodeEditor {\n constructor(el, path, value, opts) {\n this.el = el\n this.path = path\n this.value = value\n this.opts = opts\n // https://microsoft.github.io/monaco-editor/docs.html#interfaces/editor.IStandaloneCodeEditor.html\n this.standalone_code_editor = null\n this._onMount = []\n }\n\n isMounted() {\n return !!this.standalone_code_editor\n }\n\n mount() {\n if (this.isMounted()) {\n throw new Error(\"The monaco editor is already mounted\")\n }\n\n this._mountEditor()\n }\n\n onMount(callback) {\n this._onMount.push(callback)\n }\n\n dispose() {\n if (this.isMounted()) {\n const model = this.standalone_code_editor.getModel()\n\n if (model) {\n model.dispose()\n }\n\n this.standalone_code_editor.dispose()\n }\n }\n\n _mountEditor() {\n this.opts.value = this.value\n\n loader.config({\n paths: { vs: \"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs\" },\n })\n\n loader.init().then((monaco) => {\n monaco.editor.defineTheme(\"default\", theme)\n\n let modelUri = monaco.Uri.parse(this.path)\n let language = this.opts.language\n let model = monaco.editor.createModel(this.value, language, modelUri)\n\n this.opts.language = undefined\n this.opts.model = model\n this.standalone_code_editor = monaco.editor.create(this.el, this.opts)\n\n this._onMount.forEach((callback) => callback(monaco))\n\n this._setScreenDependantEditorOptions()\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"enable-word-wrapping\",\n label: \"Enable word wrapping\",\n precondition: \"config.editor.wordWrap == off\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"on\" }),\n })\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"disable-word-wrapping\",\n label: \"Disable word wrapping\",\n precondition: \"config.editor.wordWrap == on\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"off\" }),\n })\n\n const resizeObserver = new ResizeObserver((entries) => {\n entries.forEach(() => {\n if (this.el.offsetHeight > 0) {\n this._setScreenDependantEditorOptions()\n this.standalone_code_editor.layout()\n }\n })\n })\n\n resizeObserver.observe(this.el)\n\n this.standalone_code_editor.onDidContentSizeChange(() => {\n const contentHeight = this.standalone_code_editor.getContentHeight()\n this.el.style.height = `${contentHeight}px`\n })\n })\n }\n\n _setScreenDependantEditorOptions() {\n if (window.screen.width < 768) {\n this.standalone_code_editor.updateOptions({\n folding: false,\n lineDecorationsWidth: 16,\n lineNumbersMinChars:\n Math.floor(\n Math.log10(this.standalone_code_editor.getModel().getLineCount())\n ) + 3,\n })\n } else {\n this.standalone_code_editor.updateOptions({\n folding: true,\n lineDecorationsWidth: 10,\n lineNumbersMinChars: 5,\n })\n }\n }\n}\n\nexport default CodeEditor\n", "import CodeEditor from \"../editor/code_editor\"\n\nconst CodeEditorHook = {\n mounted() {\n // TODO: validate dataset\n const opts = JSON.parse(this.el.dataset.opts)\n\n this.codeEditor = new CodeEditor(\n this.el,\n this.el.dataset.path,\n this.el.dataset.value,\n opts\n )\n\n this.codeEditor.onMount((monaco) => {\n if (this.el.dataset.changeEvent && this.el.dataset.changeEvent !== \"\") {\n this.codeEditor.standalone_code_editor.onDidChangeModelContent(() => {\n if (this.el.dataset.target && this.el.dataset.target !== \"\") {\n this.pushEventTo(\n this.el.dataset.target,\n this.el.dataset.changeEvent,\n {\n value: this.codeEditor.standalone_code_editor.getValue(),\n }\n )\n } else {\n this.pushEvent(this.el.dataset.changeEvent, {\n value: this.codeEditor.standalone_code_editor.getValue(),\n })\n }\n })\n }\n\n this.handleEvent(\n \"lme:change_language:\" + this.el.dataset.path,\n (data) => {\n const model = this.codeEditor.standalone_code_editor.getModel()\n\n if (model.getLanguageId() !== data.mimeTypeOrLanguageId) {\n monaco.editor.setModelLanguage(model, data.mimeTypeOrLanguageId)\n }\n }\n )\n\n this.handleEvent(\"lme:set_value:\" + this.el.dataset.path, (data) => {\n this.codeEditor.standalone_code_editor.setValue(data.value)\n })\n\n this.el.querySelectorAll(\"textarea\").forEach((textarea) => {\n textarea.setAttribute(\n \"name\",\n \"live_monaco_editor[\" + this.el.dataset.path + \"]\"\n )\n })\n\n this.el.removeAttribute(\"data-value\")\n this.el.removeAttribute(\"data-opts\")\n\n this.el.dispatchEvent(\n new CustomEvent(\"lme:editor_mounted\", {\n detail: { hook: this, editor: this.codeEditor },\n bubbles: true,\n })\n )\n })\n\n if (!this.codeEditor.isMounted()) {\n this.codeEditor.mount()\n }\n },\n\n destroyed() {\n if (this.codeEditor) {\n this.codeEditor.dispose()\n }\n },\n}\n\nexport { CodeEditorHook }\n"], - "mappings": "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", + "sourcesContent": ["function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\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\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\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\n return target;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nexport { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _defineProperty as defineProperty, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _objectSpread2 as objectSpread2, _objectWithoutProperties as objectWithoutProperties, _objectWithoutPropertiesLoose as objectWithoutPropertiesLoose, _slicedToArray as slicedToArray, _unsupportedIterableToArray as unsupportedIterableToArray };\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n}\n\nfunction curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len3 = arguments.length, nextArgs = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n nextArgs[_key3] = arguments[_key3];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nfunction isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nfunction isEmpty(obj) {\n return !Object.keys(obj).length;\n}\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nfunction hasOwnProperty(object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n}\n\nfunction validateChanges(initial, changes) {\n if (!isObject(changes)) errorHandler('changeType');\n if (Object.keys(changes).some(function (field) {\n return !hasOwnProperty(initial, field);\n })) errorHandler('changeField');\n return changes;\n}\n\nfunction validateSelector(selector) {\n if (!isFunction(selector)) errorHandler('selectorType');\n}\n\nfunction validateHandler(handler) {\n if (!(isFunction(handler) || isObject(handler))) errorHandler('handlerType');\n if (isObject(handler) && Object.values(handler).some(function (_handler) {\n return !isFunction(_handler);\n })) errorHandler('handlersType');\n}\n\nfunction validateInitial(initial) {\n if (!initial) errorHandler('initialIsRequired');\n if (!isObject(initial)) errorHandler('initialType');\n if (isEmpty(initial)) errorHandler('initialContent');\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n initialIsRequired: 'initial state is required',\n initialType: 'initial state should be an object',\n initialContent: 'initial state shouldn\\'t be an empty object',\n handlerType: 'handler should be an object or a function',\n handlersType: 'all handlers should be a functions',\n selectorType: 'selector should be a function',\n changeType: 'provided value of changes should be an object',\n changeField: 'it seams you want to change a field in the state which is not specified in the \"initial\" state',\n \"default\": 'an unknown error accured in `state-local` package'\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n changes: validateChanges,\n selector: validateSelector,\n handler: validateHandler,\n initial: validateInitial\n};\n\nfunction create(initial) {\n var handler = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n validators.initial(initial);\n validators.handler(handler);\n var state = {\n current: initial\n };\n var didUpdate = curry(didStateUpdate)(state, handler);\n var update = curry(updateState)(state);\n var validate = curry(validators.changes)(initial);\n var getChanges = curry(extractChanges)(state);\n\n function getState() {\n var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (state) {\n return state;\n };\n validators.selector(selector);\n return selector(state.current);\n }\n\n function setState(causedChanges) {\n compose(didUpdate, update, validate, getChanges)(causedChanges);\n }\n\n return [getState, setState];\n}\n\nfunction extractChanges(state, causedChanges) {\n return isFunction(causedChanges) ? causedChanges(state.current) : causedChanges;\n}\n\nfunction updateState(state, changes) {\n state.current = _objectSpread2(_objectSpread2({}, state.current), changes);\n return changes;\n}\n\nfunction didStateUpdate(state, handler, changes) {\n isFunction(handler) ? handler(state.current) : Object.keys(changes).forEach(function (field) {\n var _handler$field;\n\n return (_handler$field = handler[field]) === null || _handler$field === void 0 ? void 0 : _handler$field.call(handler, state.current[field]);\n });\n return changes;\n}\n\nvar index = {\n create: create\n};\n\nexport default index;\n", "var config = {\n paths: {\n vs: 'https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs'\n }\n};\n\nexport default config;\n", "function curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len2 = arguments.length, nextArgs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n nextArgs[_key2] = arguments[_key2];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nexport default curry;\n", "function isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nexport default isObject;\n", "import curry from '../utils/curry.js';\nimport isObject from '../utils/isObject.js';\n\n/**\n * validates the configuration object and informs about deprecation\n * @param {Object} config - the configuration object \n * @return {Object} config - the validated configuration object\n */\n\nfunction validateConfig(config) {\n if (!config) errorHandler('configIsRequired');\n if (!isObject(config)) errorHandler('configType');\n\n if (config.urls) {\n informAboutDeprecation();\n return {\n paths: {\n vs: config.urls.monacoBase\n }\n };\n }\n\n return config;\n}\n/**\n * logs deprecation message\n */\n\n\nfunction informAboutDeprecation() {\n console.warn(errorMessages.deprecation);\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n configIsRequired: 'the configuration object is required',\n configType: 'the configuration object should be an object',\n \"default\": 'an unknown error accured in `@monaco-editor/loader` package',\n deprecation: \"Deprecation warning!\\n You are using deprecated way of configuration.\\n\\n Instead of using\\n monaco.config({ urls: { monacoBase: '...' } })\\n use\\n monaco.config({ paths: { vs: '...' } })\\n\\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\\n \"\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n config: validateConfig\n};\n\nexport default validators;\nexport { errorHandler, errorMessages };\n", "var compose = function compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n};\n\nexport default compose;\n", "import { objectSpread2 as _objectSpread2 } from '../_virtual/_rollupPluginBabelHelpers.js';\n\nfunction merge(target, source) {\n Object.keys(source).forEach(function (key) {\n if (source[key] instanceof Object) {\n if (target[key]) {\n Object.assign(source[key], merge(target[key], source[key]));\n }\n }\n });\n return _objectSpread2(_objectSpread2({}, target), source);\n}\n\nexport default merge;\n", "// The source (has been changed) is https://github.com/facebook/react/issues/5465#issuecomment-157888325\nvar CANCELATION_MESSAGE = {\n type: 'cancelation',\n msg: 'operation is manually canceled'\n};\n\nfunction makeCancelable(promise) {\n var hasCanceled_ = false;\n var wrappedPromise = new Promise(function (resolve, reject) {\n promise.then(function (val) {\n return hasCanceled_ ? reject(CANCELATION_MESSAGE) : resolve(val);\n });\n promise[\"catch\"](reject);\n });\n return wrappedPromise.cancel = function () {\n return hasCanceled_ = true;\n }, wrappedPromise;\n}\n\nexport default makeCancelable;\nexport { CANCELATION_MESSAGE };\n", "import { slicedToArray as _slicedToArray, objectWithoutProperties as _objectWithoutProperties } from '../_virtual/_rollupPluginBabelHelpers.js';\nimport state from 'state-local';\nimport config$1 from '../config/index.js';\nimport validators from '../validators/index.js';\nimport compose from '../utils/compose.js';\nimport merge from '../utils/deepMerge.js';\nimport makeCancelable from '../utils/makeCancelable.js';\n\n/** the local state of the module */\n\nvar _state$create = state.create({\n config: config$1,\n isInitialized: false,\n resolve: null,\n reject: null,\n monaco: null\n}),\n _state$create2 = _slicedToArray(_state$create, 2),\n getState = _state$create2[0],\n setState = _state$create2[1];\n/**\n * set the loader configuration\n * @param {Object} config - the configuration object\n */\n\n\nfunction config(globalConfig) {\n var _validators$config = validators.config(globalConfig),\n monaco = _validators$config.monaco,\n config = _objectWithoutProperties(_validators$config, [\"monaco\"]);\n\n setState(function (state) {\n return {\n config: merge(state.config, config),\n monaco: monaco\n };\n });\n}\n/**\n * handles the initialization of the monaco-editor\n * @return {Promise} - returns an instance of monaco (with a cancelable promise)\n */\n\n\nfunction init() {\n var state = getState(function (_ref) {\n var monaco = _ref.monaco,\n isInitialized = _ref.isInitialized,\n resolve = _ref.resolve;\n return {\n monaco: monaco,\n isInitialized: isInitialized,\n resolve: resolve\n };\n });\n\n if (!state.isInitialized) {\n setState({\n isInitialized: true\n });\n\n if (state.monaco) {\n state.resolve(state.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n if (window.monaco && window.monaco.editor) {\n storeMonacoInstance(window.monaco);\n state.resolve(window.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n compose(injectScripts, getMonacoLoaderScript)(configureLoader);\n }\n\n return makeCancelable(wrapperPromise);\n}\n/**\n * injects provided scripts into the document.body\n * @param {Object} script - an HTML script element\n * @return {Object} - the injected HTML script element\n */\n\n\nfunction injectScripts(script) {\n return document.body.appendChild(script);\n}\n/**\n * creates an HTML script element with/without provided src\n * @param {string} [src] - the source path of the script\n * @return {Object} - the created HTML script element\n */\n\n\nfunction createScript(src) {\n var script = document.createElement('script');\n return src && (script.src = src), script;\n}\n/**\n * creates an HTML script element with the monaco loader src\n * @return {Object} - the created HTML script element\n */\n\n\nfunction getMonacoLoaderScript(configureLoader) {\n var state = getState(function (_ref2) {\n var config = _ref2.config,\n reject = _ref2.reject;\n return {\n config: config,\n reject: reject\n };\n });\n var loaderScript = createScript(\"\".concat(state.config.paths.vs, \"/loader.js\"));\n\n loaderScript.onload = function () {\n return configureLoader();\n };\n\n loaderScript.onerror = state.reject;\n return loaderScript;\n}\n/**\n * configures the monaco loader\n */\n\n\nfunction configureLoader() {\n var state = getState(function (_ref3) {\n var config = _ref3.config,\n resolve = _ref3.resolve,\n reject = _ref3.reject;\n return {\n config: config,\n resolve: resolve,\n reject: reject\n };\n });\n var require = window.require;\n\n require.config(state.config);\n\n require(['vs/editor/editor.main'], function (monaco) {\n storeMonacoInstance(monaco);\n state.resolve(monaco);\n }, function (error) {\n state.reject(error);\n });\n}\n/**\n * store monaco instance in local state\n */\n\n\nfunction storeMonacoInstance(monaco) {\n if (!getState().monaco) {\n setState({\n monaco: monaco\n });\n }\n}\n/**\n * internal helper function\n * extracts stored monaco instance\n * @return {Object|null} - the monaco instance\n */\n\n\nfunction __getMonacoInstance() {\n return getState(function (_ref4) {\n var monaco = _ref4.monaco;\n return monaco;\n });\n}\n\nvar wrapperPromise = new Promise(function (resolve, reject) {\n return setState({\n resolve: resolve,\n reject: reject\n });\n});\nvar loader = {\n config: config,\n init: init,\n __getMonacoInstance: __getMonacoInstance\n};\n\nexport default loader;\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/23e58ac604de92ce54472f36fe3e28dc27576d6c/assets/js/hooks/cell_editor/live_editor/theme.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\n// This is a port of the One Dark theme to the Monaco editor.\n// We color graded the comment so it has AA accessibility and\n// then similarly scaled the default font.\nconst colors = {\n background: \"#282c34\",\n default: \"#c4cad6\",\n lightRed: \"#e06c75\",\n blue: \"#61afef\",\n gray: \"#8c92a3\",\n green: \"#98c379\",\n purple: \"#c678dd\",\n red: \"#be5046\",\n teal: \"#56b6c2\",\n peach: \"#d19a66\",\n}\n\nconst rules = (colors) => [\n { token: \"\", foreground: colors.default },\n { token: \"variable\", foreground: colors.lightRed },\n { token: \"constant\", foreground: colors.blue },\n { token: \"constant.character.escape\", foreground: colors.blue },\n { token: \"comment\", foreground: colors.gray },\n { token: \"number\", foreground: colors.blue },\n { token: \"regexp\", foreground: colors.lightRed },\n { token: \"type\", foreground: colors.lightRed },\n { token: \"string\", foreground: colors.green },\n { token: \"keyword\", foreground: colors.purple },\n { token: \"operator\", foreground: colors.peach },\n { token: \"delimiter.bracket.embed\", foreground: colors.red },\n { token: \"sigil\", foreground: colors.teal },\n { token: \"function\", foreground: colors.blue },\n { token: \"function.call\", foreground: colors.default },\n\n // Markdown specific\n { token: \"emphasis\", fontStyle: \"italic\" },\n { token: \"strong\", fontStyle: \"bold\" },\n { token: \"keyword.md\", foreground: colors.lightRed },\n { token: \"keyword.table\", foreground: colors.lightRed },\n { token: \"string.link.md\", foreground: colors.blue },\n { token: \"variable.md\", foreground: colors.teal },\n { token: \"string.md\", foreground: colors.default },\n { token: \"variable.source.md\", foreground: colors.default },\n\n // XML specific\n { token: \"tag\", foreground: colors.lightRed },\n { token: \"metatag\", foreground: colors.lightRed },\n { token: \"attribute.name\", foreground: colors.peach },\n { token: \"attribute.value\", foreground: colors.green },\n\n // JSON specific\n { token: \"string.key\", foreground: colors.lightRed },\n { token: \"keyword.json\", foreground: colors.blue },\n\n // SQL specific\n { token: \"operator.sql\", foreground: colors.purple },\n]\n\nconst theme = {\n base: \"vs-dark\",\n inherit: false,\n rules: rules(colors),\n colors: {\n \"editor.background\": colors.background,\n \"editor.foreground\": colors.default,\n \"editorLineNumber.foreground\": \"#636d83\",\n \"editorCursor.foreground\": \"#636d83\",\n \"editor.selectionBackground\": \"#3e4451\",\n \"editor.findMatchHighlightBackground\": \"#528bff3d\",\n \"editorSuggestWidget.background\": \"#21252b\",\n \"editorSuggestWidget.border\": \"#181a1f\",\n \"editorSuggestWidget.selectedBackground\": \"#2c313a\",\n \"input.background\": \"#1b1d23\",\n \"input.border\": \"#181a1f\",\n \"editorBracketMatch.border\": \"#282c34\",\n \"editorBracketMatch.background\": \"#3e4451\",\n },\n}\n\nexport { theme }\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/8532bc334bdcf3c57fab9b694666e609877d279f/assets/js/hooks/cell_editor/live_editor.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\nimport loader from \"@monaco-editor/loader\"\nimport { theme } from \"./themes\"\n\nclass CodeEditor {\n constructor(el, path, value, opts) {\n this.el = el\n this.path = path\n this.value = value\n this.opts = opts\n // https://microsoft.github.io/monaco-editor/docs.html#interfaces/editor.IStandaloneCodeEditor.html\n this.standalone_code_editor = null\n this._onMount = []\n }\n\n isMounted() {\n return !!this.standalone_code_editor\n }\n\n mount() {\n if (this.isMounted()) {\n throw new Error(\"The monaco editor is already mounted\")\n }\n\n this._mountEditor()\n }\n\n onMount(callback) {\n this._onMount.push(callback)\n }\n\n dispose() {\n if (this.isMounted()) {\n const model = this.standalone_code_editor.getModel()\n\n if (model) {\n model.dispose()\n }\n\n this.standalone_code_editor.dispose()\n }\n }\n\n _mountEditor() {\n const { loader: loaderConfig, ...editorOpts } = this.opts\n editorOpts.value = this.value\n\n const defaultLoaderConfig = {\n paths: { vs: \"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs\" },\n }\n\n loader.config(loaderConfig || defaultLoaderConfig)\n\n loader.init().then((monaco) => {\n monaco.editor.defineTheme(\"default\", theme)\n\n let modelUri = monaco.Uri.parse(this.path)\n let language = editorOpts.language\n let model = monaco.editor.createModel(this.value, language, modelUri)\n\n editorOpts.language = undefined\n editorOpts.model = model\n this.standalone_code_editor = monaco.editor.create(this.el, editorOpts)\n\n this._onMount.forEach((callback) => callback(monaco))\n\n this._setScreenDependantEditorOptions()\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"enable-word-wrapping\",\n label: \"Enable word wrapping\",\n precondition: \"config.editor.wordWrap == off\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"on\" }),\n })\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"disable-word-wrapping\",\n label: \"Disable word wrapping\",\n precondition: \"config.editor.wordWrap == on\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"off\" }),\n })\n\n const resizeObserver = new ResizeObserver((entries) => {\n entries.forEach(() => {\n if (this.el.offsetHeight > 0) {\n this._setScreenDependantEditorOptions()\n this.standalone_code_editor.layout()\n }\n })\n })\n\n resizeObserver.observe(this.el)\n\n this.standalone_code_editor.onDidContentSizeChange(() => {\n const contentHeight = this.standalone_code_editor.getContentHeight()\n this.el.style.height = `${contentHeight}px`\n })\n })\n }\n\n _setScreenDependantEditorOptions() {\n if (window.screen.width < 768) {\n this.standalone_code_editor.updateOptions({\n folding: false,\n lineDecorationsWidth: 16,\n lineNumbersMinChars:\n Math.floor(\n Math.log10(this.standalone_code_editor.getModel().getLineCount())\n ) + 3,\n })\n } else {\n this.standalone_code_editor.updateOptions({\n folding: true,\n lineDecorationsWidth: 10,\n lineNumbersMinChars: 5,\n })\n }\n }\n}\n\nexport default CodeEditor\n", "import CodeEditor from \"../editor/code_editor\"\n\nconst CodeEditorHook = {\n mounted() {\n // TODO: validate dataset\n const opts = JSON.parse(this.el.dataset.opts)\n\n this.codeEditor = new CodeEditor(\n this.el,\n this.el.dataset.path,\n this.el.dataset.value,\n opts\n )\n\n this.codeEditor.onMount((monaco) => {\n if (this.el.dataset.changeEvent && this.el.dataset.changeEvent !== \"\") {\n this.codeEditor.standalone_code_editor.onDidChangeModelContent(() => {\n if (this.el.dataset.target && this.el.dataset.target !== \"\") {\n this.pushEventTo(\n this.el.dataset.target,\n this.el.dataset.changeEvent,\n {\n value: this.codeEditor.standalone_code_editor.getValue(),\n }\n )\n } else {\n this.pushEvent(this.el.dataset.changeEvent, {\n value: this.codeEditor.standalone_code_editor.getValue(),\n })\n }\n })\n }\n\n this.handleEvent(\n \"lme:change_language:\" + this.el.dataset.path,\n (data) => {\n const model = this.codeEditor.standalone_code_editor.getModel()\n\n if (model.getLanguageId() !== data.mimeTypeOrLanguageId) {\n monaco.editor.setModelLanguage(model, data.mimeTypeOrLanguageId)\n }\n }\n )\n\n this.handleEvent(\"lme:set_value:\" + this.el.dataset.path, (data) => {\n this.codeEditor.standalone_code_editor.setValue(data.value)\n })\n\n this.el.querySelectorAll(\"textarea\").forEach((textarea) => {\n textarea.setAttribute(\n \"name\",\n \"live_monaco_editor[\" + this.el.dataset.path + \"]\"\n )\n })\n\n this.el.removeAttribute(\"data-value\")\n this.el.removeAttribute(\"data-opts\")\n\n this.el.dispatchEvent(\n new CustomEvent(\"lme:editor_mounted\", {\n detail: { hook: this, editor: this.codeEditor },\n bubbles: true,\n })\n )\n })\n\n if (!this.codeEditor.isMounted()) {\n this.codeEditor.mount()\n }\n },\n\n destroyed() {\n if (this.codeEditor) {\n this.codeEditor.dispose()\n }\n },\n}\n\nexport { CodeEditorHook }\n"], + "mappings": "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", "names": ["_defineProperty", "ownKeys", "_objectSpread2", "errorMessages", "getState", "state", "setState", "curry", "isObject", "config", "errorHandler", "errorMessages", "throwError", "validators", "compose", "config", "configureLoader", "require", "colors"] } diff --git a/priv/static/live_monaco_editor.js b/priv/static/live_monaco_editor.js index f006d2f..5503db0 100644 --- a/priv/static/live_monaco_editor.js +++ b/priv/static/live_monaco_editor.js @@ -2,7 +2,21 @@ var LiveMonacoEditor = (() => { var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; + var __getOwnPropSymbols = Object.getOwnPropertySymbols; var __hasOwnProp = Object.prototype.hasOwnProperty; + var __propIsEnum = Object.prototype.propertyIsEnumerable; + var __objRest = (source, exclude) => { + var target = {}; + for (var prop in source) + if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0) + target[prop] = source[prop]; + if (source != null && __getOwnPropSymbols) + for (var prop of __getOwnPropSymbols(source)) { + if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop)) + target[prop] = source[prop]; + } + return target; + }; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); @@ -622,18 +636,20 @@ var LiveMonacoEditor = (() => { } } _mountEditor() { - this.opts.value = this.value; - loader_default.config({ + const _a = this.opts, { loader: loaderConfig } = _a, editorOpts = __objRest(_a, ["loader"]); + editorOpts.value = this.value; + const defaultLoaderConfig = { paths: { vs: "https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs" } - }); + }; + loader_default.config(loaderConfig || defaultLoaderConfig); loader_default.init().then((monaco) => { monaco.editor.defineTheme("default", theme); let modelUri = monaco.Uri.parse(this.path); - let language = this.opts.language; + let language = editorOpts.language; let model = monaco.editor.createModel(this.value, language, modelUri); - this.opts.language = void 0; - this.opts.model = model; - this.standalone_code_editor = monaco.editor.create(this.el, this.opts); + editorOpts.language = void 0; + editorOpts.model = model; + this.standalone_code_editor = monaco.editor.create(this.el, editorOpts); this._onMount.forEach((callback) => callback(monaco)); this._setScreenDependantEditorOptions(); this.standalone_code_editor.addAction({ diff --git a/priv/static/live_monaco_editor.js.map b/priv/static/live_monaco_editor.js.map index 89ba7cd..b8c449c 100644 --- a/priv/static/live_monaco_editor.js.map +++ b/priv/static/live_monaco_editor.js.map @@ -1,7 +1,7 @@ { "version": 3, "sources": ["../../assets/js/live_monaco_editor/index.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/_virtual/_rollupPluginBabelHelpers.js", "../../assets/node_modules/state-local/lib/es/state-local.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/config/index.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/curry.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/isObject.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/validators/index.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/compose.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/deepMerge.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/makeCancelable.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/loader/index.js", "../../assets/js/live_monaco_editor/editor/themes.js", "../../assets/js/live_monaco_editor/editor/code_editor.js", "../../assets/js/live_monaco_editor/hooks/code_editor.js"], - "sourcesContent": ["import \"@fontsource/jetbrains-mono\"\nimport { CodeEditorHook } from \"./hooks/code_editor\"\n\nexport { CodeEditorHook }\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\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\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\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\n return target;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nexport { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _defineProperty as defineProperty, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _objectSpread2 as objectSpread2, _objectWithoutProperties as objectWithoutProperties, _objectWithoutPropertiesLoose as objectWithoutPropertiesLoose, _slicedToArray as slicedToArray, _unsupportedIterableToArray as unsupportedIterableToArray };\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n}\n\nfunction curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len3 = arguments.length, nextArgs = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n nextArgs[_key3] = arguments[_key3];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nfunction isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nfunction isEmpty(obj) {\n return !Object.keys(obj).length;\n}\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nfunction hasOwnProperty(object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n}\n\nfunction validateChanges(initial, changes) {\n if (!isObject(changes)) errorHandler('changeType');\n if (Object.keys(changes).some(function (field) {\n return !hasOwnProperty(initial, field);\n })) errorHandler('changeField');\n return changes;\n}\n\nfunction validateSelector(selector) {\n if (!isFunction(selector)) errorHandler('selectorType');\n}\n\nfunction validateHandler(handler) {\n if (!(isFunction(handler) || isObject(handler))) errorHandler('handlerType');\n if (isObject(handler) && Object.values(handler).some(function (_handler) {\n return !isFunction(_handler);\n })) errorHandler('handlersType');\n}\n\nfunction validateInitial(initial) {\n if (!initial) errorHandler('initialIsRequired');\n if (!isObject(initial)) errorHandler('initialType');\n if (isEmpty(initial)) errorHandler('initialContent');\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n initialIsRequired: 'initial state is required',\n initialType: 'initial state should be an object',\n initialContent: 'initial state shouldn\\'t be an empty object',\n handlerType: 'handler should be an object or a function',\n handlersType: 'all handlers should be a functions',\n selectorType: 'selector should be a function',\n changeType: 'provided value of changes should be an object',\n changeField: 'it seams you want to change a field in the state which is not specified in the \"initial\" state',\n \"default\": 'an unknown error accured in `state-local` package'\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n changes: validateChanges,\n selector: validateSelector,\n handler: validateHandler,\n initial: validateInitial\n};\n\nfunction create(initial) {\n var handler = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n validators.initial(initial);\n validators.handler(handler);\n var state = {\n current: initial\n };\n var didUpdate = curry(didStateUpdate)(state, handler);\n var update = curry(updateState)(state);\n var validate = curry(validators.changes)(initial);\n var getChanges = curry(extractChanges)(state);\n\n function getState() {\n var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (state) {\n return state;\n };\n validators.selector(selector);\n return selector(state.current);\n }\n\n function setState(causedChanges) {\n compose(didUpdate, update, validate, getChanges)(causedChanges);\n }\n\n return [getState, setState];\n}\n\nfunction extractChanges(state, causedChanges) {\n return isFunction(causedChanges) ? causedChanges(state.current) : causedChanges;\n}\n\nfunction updateState(state, changes) {\n state.current = _objectSpread2(_objectSpread2({}, state.current), changes);\n return changes;\n}\n\nfunction didStateUpdate(state, handler, changes) {\n isFunction(handler) ? handler(state.current) : Object.keys(changes).forEach(function (field) {\n var _handler$field;\n\n return (_handler$field = handler[field]) === null || _handler$field === void 0 ? void 0 : _handler$field.call(handler, state.current[field]);\n });\n return changes;\n}\n\nvar index = {\n create: create\n};\n\nexport default index;\n", "var config = {\n paths: {\n vs: 'https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs'\n }\n};\n\nexport default config;\n", "function curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len2 = arguments.length, nextArgs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n nextArgs[_key2] = arguments[_key2];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nexport default curry;\n", "function isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nexport default isObject;\n", "import curry from '../utils/curry.js';\nimport isObject from '../utils/isObject.js';\n\n/**\n * validates the configuration object and informs about deprecation\n * @param {Object} config - the configuration object \n * @return {Object} config - the validated configuration object\n */\n\nfunction validateConfig(config) {\n if (!config) errorHandler('configIsRequired');\n if (!isObject(config)) errorHandler('configType');\n\n if (config.urls) {\n informAboutDeprecation();\n return {\n paths: {\n vs: config.urls.monacoBase\n }\n };\n }\n\n return config;\n}\n/**\n * logs deprecation message\n */\n\n\nfunction informAboutDeprecation() {\n console.warn(errorMessages.deprecation);\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n configIsRequired: 'the configuration object is required',\n configType: 'the configuration object should be an object',\n \"default\": 'an unknown error accured in `@monaco-editor/loader` package',\n deprecation: \"Deprecation warning!\\n You are using deprecated way of configuration.\\n\\n Instead of using\\n monaco.config({ urls: { monacoBase: '...' } })\\n use\\n monaco.config({ paths: { vs: '...' } })\\n\\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\\n \"\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n config: validateConfig\n};\n\nexport default validators;\nexport { errorHandler, errorMessages };\n", "var compose = function compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n};\n\nexport default compose;\n", "import { objectSpread2 as _objectSpread2 } from '../_virtual/_rollupPluginBabelHelpers.js';\n\nfunction merge(target, source) {\n Object.keys(source).forEach(function (key) {\n if (source[key] instanceof Object) {\n if (target[key]) {\n Object.assign(source[key], merge(target[key], source[key]));\n }\n }\n });\n return _objectSpread2(_objectSpread2({}, target), source);\n}\n\nexport default merge;\n", "// The source (has been changed) is https://github.com/facebook/react/issues/5465#issuecomment-157888325\nvar CANCELATION_MESSAGE = {\n type: 'cancelation',\n msg: 'operation is manually canceled'\n};\n\nfunction makeCancelable(promise) {\n var hasCanceled_ = false;\n var wrappedPromise = new Promise(function (resolve, reject) {\n promise.then(function (val) {\n return hasCanceled_ ? reject(CANCELATION_MESSAGE) : resolve(val);\n });\n promise[\"catch\"](reject);\n });\n return wrappedPromise.cancel = function () {\n return hasCanceled_ = true;\n }, wrappedPromise;\n}\n\nexport default makeCancelable;\nexport { CANCELATION_MESSAGE };\n", "import { slicedToArray as _slicedToArray, objectWithoutProperties as _objectWithoutProperties } from '../_virtual/_rollupPluginBabelHelpers.js';\nimport state from 'state-local';\nimport config$1 from '../config/index.js';\nimport validators from '../validators/index.js';\nimport compose from '../utils/compose.js';\nimport merge from '../utils/deepMerge.js';\nimport makeCancelable from '../utils/makeCancelable.js';\n\n/** the local state of the module */\n\nvar _state$create = state.create({\n config: config$1,\n isInitialized: false,\n resolve: null,\n reject: null,\n monaco: null\n}),\n _state$create2 = _slicedToArray(_state$create, 2),\n getState = _state$create2[0],\n setState = _state$create2[1];\n/**\n * set the loader configuration\n * @param {Object} config - the configuration object\n */\n\n\nfunction config(globalConfig) {\n var _validators$config = validators.config(globalConfig),\n monaco = _validators$config.monaco,\n config = _objectWithoutProperties(_validators$config, [\"monaco\"]);\n\n setState(function (state) {\n return {\n config: merge(state.config, config),\n monaco: monaco\n };\n });\n}\n/**\n * handles the initialization of the monaco-editor\n * @return {Promise} - returns an instance of monaco (with a cancelable promise)\n */\n\n\nfunction init() {\n var state = getState(function (_ref) {\n var monaco = _ref.monaco,\n isInitialized = _ref.isInitialized,\n resolve = _ref.resolve;\n return {\n monaco: monaco,\n isInitialized: isInitialized,\n resolve: resolve\n };\n });\n\n if (!state.isInitialized) {\n setState({\n isInitialized: true\n });\n\n if (state.monaco) {\n state.resolve(state.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n if (window.monaco && window.monaco.editor) {\n storeMonacoInstance(window.monaco);\n state.resolve(window.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n compose(injectScripts, getMonacoLoaderScript)(configureLoader);\n }\n\n return makeCancelable(wrapperPromise);\n}\n/**\n * injects provided scripts into the document.body\n * @param {Object} script - an HTML script element\n * @return {Object} - the injected HTML script element\n */\n\n\nfunction injectScripts(script) {\n return document.body.appendChild(script);\n}\n/**\n * creates an HTML script element with/without provided src\n * @param {string} [src] - the source path of the script\n * @return {Object} - the created HTML script element\n */\n\n\nfunction createScript(src) {\n var script = document.createElement('script');\n return src && (script.src = src), script;\n}\n/**\n * creates an HTML script element with the monaco loader src\n * @return {Object} - the created HTML script element\n */\n\n\nfunction getMonacoLoaderScript(configureLoader) {\n var state = getState(function (_ref2) {\n var config = _ref2.config,\n reject = _ref2.reject;\n return {\n config: config,\n reject: reject\n };\n });\n var loaderScript = createScript(\"\".concat(state.config.paths.vs, \"/loader.js\"));\n\n loaderScript.onload = function () {\n return configureLoader();\n };\n\n loaderScript.onerror = state.reject;\n return loaderScript;\n}\n/**\n * configures the monaco loader\n */\n\n\nfunction configureLoader() {\n var state = getState(function (_ref3) {\n var config = _ref3.config,\n resolve = _ref3.resolve,\n reject = _ref3.reject;\n return {\n config: config,\n resolve: resolve,\n reject: reject\n };\n });\n var require = window.require;\n\n require.config(state.config);\n\n require(['vs/editor/editor.main'], function (monaco) {\n storeMonacoInstance(monaco);\n state.resolve(monaco);\n }, function (error) {\n state.reject(error);\n });\n}\n/**\n * store monaco instance in local state\n */\n\n\nfunction storeMonacoInstance(monaco) {\n if (!getState().monaco) {\n setState({\n monaco: monaco\n });\n }\n}\n/**\n * internal helper function\n * extracts stored monaco instance\n * @return {Object|null} - the monaco instance\n */\n\n\nfunction __getMonacoInstance() {\n return getState(function (_ref4) {\n var monaco = _ref4.monaco;\n return monaco;\n });\n}\n\nvar wrapperPromise = new Promise(function (resolve, reject) {\n return setState({\n resolve: resolve,\n reject: reject\n });\n});\nvar loader = {\n config: config,\n init: init,\n __getMonacoInstance: __getMonacoInstance\n};\n\nexport default loader;\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/23e58ac604de92ce54472f36fe3e28dc27576d6c/assets/js/hooks/cell_editor/live_editor/theme.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\n// This is a port of the One Dark theme to the Monaco editor.\n// We color graded the comment so it has AA accessibility and\n// then similarly scaled the default font.\nconst colors = {\n background: \"#282c34\",\n default: \"#c4cad6\",\n lightRed: \"#e06c75\",\n blue: \"#61afef\",\n gray: \"#8c92a3\",\n green: \"#98c379\",\n purple: \"#c678dd\",\n red: \"#be5046\",\n teal: \"#56b6c2\",\n peach: \"#d19a66\",\n}\n\nconst rules = (colors) => [\n { token: \"\", foreground: colors.default },\n { token: \"variable\", foreground: colors.lightRed },\n { token: \"constant\", foreground: colors.blue },\n { token: \"constant.character.escape\", foreground: colors.blue },\n { token: \"comment\", foreground: colors.gray },\n { token: \"number\", foreground: colors.blue },\n { token: \"regexp\", foreground: colors.lightRed },\n { token: \"type\", foreground: colors.lightRed },\n { token: \"string\", foreground: colors.green },\n { token: \"keyword\", foreground: colors.purple },\n { token: \"operator\", foreground: colors.peach },\n { token: \"delimiter.bracket.embed\", foreground: colors.red },\n { token: \"sigil\", foreground: colors.teal },\n { token: \"function\", foreground: colors.blue },\n { token: \"function.call\", foreground: colors.default },\n\n // Markdown specific\n { token: \"emphasis\", fontStyle: \"italic\" },\n { token: \"strong\", fontStyle: \"bold\" },\n { token: \"keyword.md\", foreground: colors.lightRed },\n { token: \"keyword.table\", foreground: colors.lightRed },\n { token: \"string.link.md\", foreground: colors.blue },\n { token: \"variable.md\", foreground: colors.teal },\n { token: \"string.md\", foreground: colors.default },\n { token: \"variable.source.md\", foreground: colors.default },\n\n // XML specific\n { token: \"tag\", foreground: colors.lightRed },\n { token: \"metatag\", foreground: colors.lightRed },\n { token: \"attribute.name\", foreground: colors.peach },\n { token: \"attribute.value\", foreground: colors.green },\n\n // JSON specific\n { token: \"string.key\", foreground: colors.lightRed },\n { token: \"keyword.json\", foreground: colors.blue },\n\n // SQL specific\n { token: \"operator.sql\", foreground: colors.purple },\n]\n\nconst theme = {\n base: \"vs-dark\",\n inherit: false,\n rules: rules(colors),\n colors: {\n \"editor.background\": colors.background,\n \"editor.foreground\": colors.default,\n \"editorLineNumber.foreground\": \"#636d83\",\n \"editorCursor.foreground\": \"#636d83\",\n \"editor.selectionBackground\": \"#3e4451\",\n \"editor.findMatchHighlightBackground\": \"#528bff3d\",\n \"editorSuggestWidget.background\": \"#21252b\",\n \"editorSuggestWidget.border\": \"#181a1f\",\n \"editorSuggestWidget.selectedBackground\": \"#2c313a\",\n \"input.background\": \"#1b1d23\",\n \"input.border\": \"#181a1f\",\n \"editorBracketMatch.border\": \"#282c34\",\n \"editorBracketMatch.background\": \"#3e4451\",\n },\n}\n\nexport { theme }\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/8532bc334bdcf3c57fab9b694666e609877d279f/assets/js/hooks/cell_editor/live_editor.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\nimport loader from \"@monaco-editor/loader\"\nimport { theme } from \"./themes\"\n\nclass CodeEditor {\n constructor(el, path, value, opts) {\n this.el = el\n this.path = path\n this.value = value\n this.opts = opts\n // https://microsoft.github.io/monaco-editor/docs.html#interfaces/editor.IStandaloneCodeEditor.html\n this.standalone_code_editor = null\n this._onMount = []\n }\n\n isMounted() {\n return !!this.standalone_code_editor\n }\n\n mount() {\n if (this.isMounted()) {\n throw new Error(\"The monaco editor is already mounted\")\n }\n\n this._mountEditor()\n }\n\n onMount(callback) {\n this._onMount.push(callback)\n }\n\n dispose() {\n if (this.isMounted()) {\n const model = this.standalone_code_editor.getModel()\n\n if (model) {\n model.dispose()\n }\n\n this.standalone_code_editor.dispose()\n }\n }\n\n _mountEditor() {\n this.opts.value = this.value\n\n loader.config({\n paths: { vs: \"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs\" },\n })\n\n loader.init().then((monaco) => {\n monaco.editor.defineTheme(\"default\", theme)\n\n let modelUri = monaco.Uri.parse(this.path)\n let language = this.opts.language\n let model = monaco.editor.createModel(this.value, language, modelUri)\n\n this.opts.language = undefined\n this.opts.model = model\n this.standalone_code_editor = monaco.editor.create(this.el, this.opts)\n\n this._onMount.forEach((callback) => callback(monaco))\n\n this._setScreenDependantEditorOptions()\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"enable-word-wrapping\",\n label: \"Enable word wrapping\",\n precondition: \"config.editor.wordWrap == off\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"on\" }),\n })\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"disable-word-wrapping\",\n label: \"Disable word wrapping\",\n precondition: \"config.editor.wordWrap == on\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"off\" }),\n })\n\n const resizeObserver = new ResizeObserver((entries) => {\n entries.forEach(() => {\n if (this.el.offsetHeight > 0) {\n this._setScreenDependantEditorOptions()\n this.standalone_code_editor.layout()\n }\n })\n })\n\n resizeObserver.observe(this.el)\n\n this.standalone_code_editor.onDidContentSizeChange(() => {\n const contentHeight = this.standalone_code_editor.getContentHeight()\n this.el.style.height = `${contentHeight}px`\n })\n })\n }\n\n _setScreenDependantEditorOptions() {\n if (window.screen.width < 768) {\n this.standalone_code_editor.updateOptions({\n folding: false,\n lineDecorationsWidth: 16,\n lineNumbersMinChars:\n Math.floor(\n Math.log10(this.standalone_code_editor.getModel().getLineCount())\n ) + 3,\n })\n } else {\n this.standalone_code_editor.updateOptions({\n folding: true,\n lineDecorationsWidth: 10,\n lineNumbersMinChars: 5,\n })\n }\n }\n}\n\nexport default CodeEditor\n", "import CodeEditor from \"../editor/code_editor\"\n\nconst CodeEditorHook = {\n mounted() {\n // TODO: validate dataset\n const opts = JSON.parse(this.el.dataset.opts)\n\n this.codeEditor = new CodeEditor(\n this.el,\n this.el.dataset.path,\n this.el.dataset.value,\n opts\n )\n\n this.codeEditor.onMount((monaco) => {\n if (this.el.dataset.changeEvent && this.el.dataset.changeEvent !== \"\") {\n this.codeEditor.standalone_code_editor.onDidChangeModelContent(() => {\n if (this.el.dataset.target && this.el.dataset.target !== \"\") {\n this.pushEventTo(\n this.el.dataset.target,\n this.el.dataset.changeEvent,\n {\n value: this.codeEditor.standalone_code_editor.getValue(),\n }\n )\n } else {\n this.pushEvent(this.el.dataset.changeEvent, {\n value: this.codeEditor.standalone_code_editor.getValue(),\n })\n }\n })\n }\n\n this.handleEvent(\n \"lme:change_language:\" + this.el.dataset.path,\n (data) => {\n const model = this.codeEditor.standalone_code_editor.getModel()\n\n if (model.getLanguageId() !== data.mimeTypeOrLanguageId) {\n monaco.editor.setModelLanguage(model, data.mimeTypeOrLanguageId)\n }\n }\n )\n\n this.handleEvent(\"lme:set_value:\" + this.el.dataset.path, (data) => {\n this.codeEditor.standalone_code_editor.setValue(data.value)\n })\n\n this.el.querySelectorAll(\"textarea\").forEach((textarea) => {\n textarea.setAttribute(\n \"name\",\n \"live_monaco_editor[\" + this.el.dataset.path + \"]\"\n )\n })\n\n this.el.removeAttribute(\"data-value\")\n this.el.removeAttribute(\"data-opts\")\n\n this.el.dispatchEvent(\n new CustomEvent(\"lme:editor_mounted\", {\n detail: { hook: this, editor: this.codeEditor },\n bubbles: true,\n })\n )\n })\n\n if (!this.codeEditor.isMounted()) {\n this.codeEditor.mount()\n }\n },\n\n destroyed() {\n if (this.codeEditor) {\n this.codeEditor.dispose()\n }\n },\n}\n\nexport { CodeEditorHook }\n"], - "mappings": "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", + "sourcesContent": ["import \"@fontsource/jetbrains-mono\"\nimport { CodeEditorHook } from \"./hooks/code_editor\"\n\nexport { CodeEditorHook }\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\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\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\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\n return target;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nexport { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _defineProperty as defineProperty, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _objectSpread2 as objectSpread2, _objectWithoutProperties as objectWithoutProperties, _objectWithoutPropertiesLoose as objectWithoutPropertiesLoose, _slicedToArray as slicedToArray, _unsupportedIterableToArray as unsupportedIterableToArray };\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n}\n\nfunction curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len3 = arguments.length, nextArgs = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n nextArgs[_key3] = arguments[_key3];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nfunction isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nfunction isEmpty(obj) {\n return !Object.keys(obj).length;\n}\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nfunction hasOwnProperty(object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n}\n\nfunction validateChanges(initial, changes) {\n if (!isObject(changes)) errorHandler('changeType');\n if (Object.keys(changes).some(function (field) {\n return !hasOwnProperty(initial, field);\n })) errorHandler('changeField');\n return changes;\n}\n\nfunction validateSelector(selector) {\n if (!isFunction(selector)) errorHandler('selectorType');\n}\n\nfunction validateHandler(handler) {\n if (!(isFunction(handler) || isObject(handler))) errorHandler('handlerType');\n if (isObject(handler) && Object.values(handler).some(function (_handler) {\n return !isFunction(_handler);\n })) errorHandler('handlersType');\n}\n\nfunction validateInitial(initial) {\n if (!initial) errorHandler('initialIsRequired');\n if (!isObject(initial)) errorHandler('initialType');\n if (isEmpty(initial)) errorHandler('initialContent');\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n initialIsRequired: 'initial state is required',\n initialType: 'initial state should be an object',\n initialContent: 'initial state shouldn\\'t be an empty object',\n handlerType: 'handler should be an object or a function',\n handlersType: 'all handlers should be a functions',\n selectorType: 'selector should be a function',\n changeType: 'provided value of changes should be an object',\n changeField: 'it seams you want to change a field in the state which is not specified in the \"initial\" state',\n \"default\": 'an unknown error accured in `state-local` package'\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n changes: validateChanges,\n selector: validateSelector,\n handler: validateHandler,\n initial: validateInitial\n};\n\nfunction create(initial) {\n var handler = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n validators.initial(initial);\n validators.handler(handler);\n var state = {\n current: initial\n };\n var didUpdate = curry(didStateUpdate)(state, handler);\n var update = curry(updateState)(state);\n var validate = curry(validators.changes)(initial);\n var getChanges = curry(extractChanges)(state);\n\n function getState() {\n var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (state) {\n return state;\n };\n validators.selector(selector);\n return selector(state.current);\n }\n\n function setState(causedChanges) {\n compose(didUpdate, update, validate, getChanges)(causedChanges);\n }\n\n return [getState, setState];\n}\n\nfunction extractChanges(state, causedChanges) {\n return isFunction(causedChanges) ? causedChanges(state.current) : causedChanges;\n}\n\nfunction updateState(state, changes) {\n state.current = _objectSpread2(_objectSpread2({}, state.current), changes);\n return changes;\n}\n\nfunction didStateUpdate(state, handler, changes) {\n isFunction(handler) ? handler(state.current) : Object.keys(changes).forEach(function (field) {\n var _handler$field;\n\n return (_handler$field = handler[field]) === null || _handler$field === void 0 ? void 0 : _handler$field.call(handler, state.current[field]);\n });\n return changes;\n}\n\nvar index = {\n create: create\n};\n\nexport default index;\n", "var config = {\n paths: {\n vs: 'https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs'\n }\n};\n\nexport default config;\n", "function curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len2 = arguments.length, nextArgs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n nextArgs[_key2] = arguments[_key2];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nexport default curry;\n", "function isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nexport default isObject;\n", "import curry from '../utils/curry.js';\nimport isObject from '../utils/isObject.js';\n\n/**\n * validates the configuration object and informs about deprecation\n * @param {Object} config - the configuration object \n * @return {Object} config - the validated configuration object\n */\n\nfunction validateConfig(config) {\n if (!config) errorHandler('configIsRequired');\n if (!isObject(config)) errorHandler('configType');\n\n if (config.urls) {\n informAboutDeprecation();\n return {\n paths: {\n vs: config.urls.monacoBase\n }\n };\n }\n\n return config;\n}\n/**\n * logs deprecation message\n */\n\n\nfunction informAboutDeprecation() {\n console.warn(errorMessages.deprecation);\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n configIsRequired: 'the configuration object is required',\n configType: 'the configuration object should be an object',\n \"default\": 'an unknown error accured in `@monaco-editor/loader` package',\n deprecation: \"Deprecation warning!\\n You are using deprecated way of configuration.\\n\\n Instead of using\\n monaco.config({ urls: { monacoBase: '...' } })\\n use\\n monaco.config({ paths: { vs: '...' } })\\n\\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\\n \"\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n config: validateConfig\n};\n\nexport default validators;\nexport { errorHandler, errorMessages };\n", "var compose = function compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n};\n\nexport default compose;\n", "import { objectSpread2 as _objectSpread2 } from '../_virtual/_rollupPluginBabelHelpers.js';\n\nfunction merge(target, source) {\n Object.keys(source).forEach(function (key) {\n if (source[key] instanceof Object) {\n if (target[key]) {\n Object.assign(source[key], merge(target[key], source[key]));\n }\n }\n });\n return _objectSpread2(_objectSpread2({}, target), source);\n}\n\nexport default merge;\n", "// The source (has been changed) is https://github.com/facebook/react/issues/5465#issuecomment-157888325\nvar CANCELATION_MESSAGE = {\n type: 'cancelation',\n msg: 'operation is manually canceled'\n};\n\nfunction makeCancelable(promise) {\n var hasCanceled_ = false;\n var wrappedPromise = new Promise(function (resolve, reject) {\n promise.then(function (val) {\n return hasCanceled_ ? reject(CANCELATION_MESSAGE) : resolve(val);\n });\n promise[\"catch\"](reject);\n });\n return wrappedPromise.cancel = function () {\n return hasCanceled_ = true;\n }, wrappedPromise;\n}\n\nexport default makeCancelable;\nexport { CANCELATION_MESSAGE };\n", "import { slicedToArray as _slicedToArray, objectWithoutProperties as _objectWithoutProperties } from '../_virtual/_rollupPluginBabelHelpers.js';\nimport state from 'state-local';\nimport config$1 from '../config/index.js';\nimport validators from '../validators/index.js';\nimport compose from '../utils/compose.js';\nimport merge from '../utils/deepMerge.js';\nimport makeCancelable from '../utils/makeCancelable.js';\n\n/** the local state of the module */\n\nvar _state$create = state.create({\n config: config$1,\n isInitialized: false,\n resolve: null,\n reject: null,\n monaco: null\n}),\n _state$create2 = _slicedToArray(_state$create, 2),\n getState = _state$create2[0],\n setState = _state$create2[1];\n/**\n * set the loader configuration\n * @param {Object} config - the configuration object\n */\n\n\nfunction config(globalConfig) {\n var _validators$config = validators.config(globalConfig),\n monaco = _validators$config.monaco,\n config = _objectWithoutProperties(_validators$config, [\"monaco\"]);\n\n setState(function (state) {\n return {\n config: merge(state.config, config),\n monaco: monaco\n };\n });\n}\n/**\n * handles the initialization of the monaco-editor\n * @return {Promise} - returns an instance of monaco (with a cancelable promise)\n */\n\n\nfunction init() {\n var state = getState(function (_ref) {\n var monaco = _ref.monaco,\n isInitialized = _ref.isInitialized,\n resolve = _ref.resolve;\n return {\n monaco: monaco,\n isInitialized: isInitialized,\n resolve: resolve\n };\n });\n\n if (!state.isInitialized) {\n setState({\n isInitialized: true\n });\n\n if (state.monaco) {\n state.resolve(state.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n if (window.monaco && window.monaco.editor) {\n storeMonacoInstance(window.monaco);\n state.resolve(window.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n compose(injectScripts, getMonacoLoaderScript)(configureLoader);\n }\n\n return makeCancelable(wrapperPromise);\n}\n/**\n * injects provided scripts into the document.body\n * @param {Object} script - an HTML script element\n * @return {Object} - the injected HTML script element\n */\n\n\nfunction injectScripts(script) {\n return document.body.appendChild(script);\n}\n/**\n * creates an HTML script element with/without provided src\n * @param {string} [src] - the source path of the script\n * @return {Object} - the created HTML script element\n */\n\n\nfunction createScript(src) {\n var script = document.createElement('script');\n return src && (script.src = src), script;\n}\n/**\n * creates an HTML script element with the monaco loader src\n * @return {Object} - the created HTML script element\n */\n\n\nfunction getMonacoLoaderScript(configureLoader) {\n var state = getState(function (_ref2) {\n var config = _ref2.config,\n reject = _ref2.reject;\n return {\n config: config,\n reject: reject\n };\n });\n var loaderScript = createScript(\"\".concat(state.config.paths.vs, \"/loader.js\"));\n\n loaderScript.onload = function () {\n return configureLoader();\n };\n\n loaderScript.onerror = state.reject;\n return loaderScript;\n}\n/**\n * configures the monaco loader\n */\n\n\nfunction configureLoader() {\n var state = getState(function (_ref3) {\n var config = _ref3.config,\n resolve = _ref3.resolve,\n reject = _ref3.reject;\n return {\n config: config,\n resolve: resolve,\n reject: reject\n };\n });\n var require = window.require;\n\n require.config(state.config);\n\n require(['vs/editor/editor.main'], function (monaco) {\n storeMonacoInstance(monaco);\n state.resolve(monaco);\n }, function (error) {\n state.reject(error);\n });\n}\n/**\n * store monaco instance in local state\n */\n\n\nfunction storeMonacoInstance(monaco) {\n if (!getState().monaco) {\n setState({\n monaco: monaco\n });\n }\n}\n/**\n * internal helper function\n * extracts stored monaco instance\n * @return {Object|null} - the monaco instance\n */\n\n\nfunction __getMonacoInstance() {\n return getState(function (_ref4) {\n var monaco = _ref4.monaco;\n return monaco;\n });\n}\n\nvar wrapperPromise = new Promise(function (resolve, reject) {\n return setState({\n resolve: resolve,\n reject: reject\n });\n});\nvar loader = {\n config: config,\n init: init,\n __getMonacoInstance: __getMonacoInstance\n};\n\nexport default loader;\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/23e58ac604de92ce54472f36fe3e28dc27576d6c/assets/js/hooks/cell_editor/live_editor/theme.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\n// This is a port of the One Dark theme to the Monaco editor.\n// We color graded the comment so it has AA accessibility and\n// then similarly scaled the default font.\nconst colors = {\n background: \"#282c34\",\n default: \"#c4cad6\",\n lightRed: \"#e06c75\",\n blue: \"#61afef\",\n gray: \"#8c92a3\",\n green: \"#98c379\",\n purple: \"#c678dd\",\n red: \"#be5046\",\n teal: \"#56b6c2\",\n peach: \"#d19a66\",\n}\n\nconst rules = (colors) => [\n { token: \"\", foreground: colors.default },\n { token: \"variable\", foreground: colors.lightRed },\n { token: \"constant\", foreground: colors.blue },\n { token: \"constant.character.escape\", foreground: colors.blue },\n { token: \"comment\", foreground: colors.gray },\n { token: \"number\", foreground: colors.blue },\n { token: \"regexp\", foreground: colors.lightRed },\n { token: \"type\", foreground: colors.lightRed },\n { token: \"string\", foreground: colors.green },\n { token: \"keyword\", foreground: colors.purple },\n { token: \"operator\", foreground: colors.peach },\n { token: \"delimiter.bracket.embed\", foreground: colors.red },\n { token: \"sigil\", foreground: colors.teal },\n { token: \"function\", foreground: colors.blue },\n { token: \"function.call\", foreground: colors.default },\n\n // Markdown specific\n { token: \"emphasis\", fontStyle: \"italic\" },\n { token: \"strong\", fontStyle: \"bold\" },\n { token: \"keyword.md\", foreground: colors.lightRed },\n { token: \"keyword.table\", foreground: colors.lightRed },\n { token: \"string.link.md\", foreground: colors.blue },\n { token: \"variable.md\", foreground: colors.teal },\n { token: \"string.md\", foreground: colors.default },\n { token: \"variable.source.md\", foreground: colors.default },\n\n // XML specific\n { token: \"tag\", foreground: colors.lightRed },\n { token: \"metatag\", foreground: colors.lightRed },\n { token: \"attribute.name\", foreground: colors.peach },\n { token: \"attribute.value\", foreground: colors.green },\n\n // JSON specific\n { token: \"string.key\", foreground: colors.lightRed },\n { token: \"keyword.json\", foreground: colors.blue },\n\n // SQL specific\n { token: \"operator.sql\", foreground: colors.purple },\n]\n\nconst theme = {\n base: \"vs-dark\",\n inherit: false,\n rules: rules(colors),\n colors: {\n \"editor.background\": colors.background,\n \"editor.foreground\": colors.default,\n \"editorLineNumber.foreground\": \"#636d83\",\n \"editorCursor.foreground\": \"#636d83\",\n \"editor.selectionBackground\": \"#3e4451\",\n \"editor.findMatchHighlightBackground\": \"#528bff3d\",\n \"editorSuggestWidget.background\": \"#21252b\",\n \"editorSuggestWidget.border\": \"#181a1f\",\n \"editorSuggestWidget.selectedBackground\": \"#2c313a\",\n \"input.background\": \"#1b1d23\",\n \"input.border\": \"#181a1f\",\n \"editorBracketMatch.border\": \"#282c34\",\n \"editorBracketMatch.background\": \"#3e4451\",\n },\n}\n\nexport { theme }\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/8532bc334bdcf3c57fab9b694666e609877d279f/assets/js/hooks/cell_editor/live_editor.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\nimport loader from \"@monaco-editor/loader\"\nimport { theme } from \"./themes\"\n\nclass CodeEditor {\n constructor(el, path, value, opts) {\n this.el = el\n this.path = path\n this.value = value\n this.opts = opts\n // https://microsoft.github.io/monaco-editor/docs.html#interfaces/editor.IStandaloneCodeEditor.html\n this.standalone_code_editor = null\n this._onMount = []\n }\n\n isMounted() {\n return !!this.standalone_code_editor\n }\n\n mount() {\n if (this.isMounted()) {\n throw new Error(\"The monaco editor is already mounted\")\n }\n\n this._mountEditor()\n }\n\n onMount(callback) {\n this._onMount.push(callback)\n }\n\n dispose() {\n if (this.isMounted()) {\n const model = this.standalone_code_editor.getModel()\n\n if (model) {\n model.dispose()\n }\n\n this.standalone_code_editor.dispose()\n }\n }\n\n _mountEditor() {\n const { loader: loaderConfig, ...editorOpts } = this.opts\n editorOpts.value = this.value\n\n const defaultLoaderConfig = {\n paths: { vs: \"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs\" },\n }\n\n loader.config(loaderConfig || defaultLoaderConfig)\n\n loader.init().then((monaco) => {\n monaco.editor.defineTheme(\"default\", theme)\n\n let modelUri = monaco.Uri.parse(this.path)\n let language = editorOpts.language\n let model = monaco.editor.createModel(this.value, language, modelUri)\n\n editorOpts.language = undefined\n editorOpts.model = model\n this.standalone_code_editor = monaco.editor.create(this.el, editorOpts)\n\n this._onMount.forEach((callback) => callback(monaco))\n\n this._setScreenDependantEditorOptions()\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"enable-word-wrapping\",\n label: \"Enable word wrapping\",\n precondition: \"config.editor.wordWrap == off\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"on\" }),\n })\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"disable-word-wrapping\",\n label: \"Disable word wrapping\",\n precondition: \"config.editor.wordWrap == on\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"off\" }),\n })\n\n const resizeObserver = new ResizeObserver((entries) => {\n entries.forEach(() => {\n if (this.el.offsetHeight > 0) {\n this._setScreenDependantEditorOptions()\n this.standalone_code_editor.layout()\n }\n })\n })\n\n resizeObserver.observe(this.el)\n\n this.standalone_code_editor.onDidContentSizeChange(() => {\n const contentHeight = this.standalone_code_editor.getContentHeight()\n this.el.style.height = `${contentHeight}px`\n })\n })\n }\n\n _setScreenDependantEditorOptions() {\n if (window.screen.width < 768) {\n this.standalone_code_editor.updateOptions({\n folding: false,\n lineDecorationsWidth: 16,\n lineNumbersMinChars:\n Math.floor(\n Math.log10(this.standalone_code_editor.getModel().getLineCount())\n ) + 3,\n })\n } else {\n this.standalone_code_editor.updateOptions({\n folding: true,\n lineDecorationsWidth: 10,\n lineNumbersMinChars: 5,\n })\n }\n }\n}\n\nexport default CodeEditor\n", "import CodeEditor from \"../editor/code_editor\"\n\nconst CodeEditorHook = {\n mounted() {\n // TODO: validate dataset\n const opts = JSON.parse(this.el.dataset.opts)\n\n this.codeEditor = new CodeEditor(\n this.el,\n this.el.dataset.path,\n this.el.dataset.value,\n opts\n )\n\n this.codeEditor.onMount((monaco) => {\n if (this.el.dataset.changeEvent && this.el.dataset.changeEvent !== \"\") {\n this.codeEditor.standalone_code_editor.onDidChangeModelContent(() => {\n if (this.el.dataset.target && this.el.dataset.target !== \"\") {\n this.pushEventTo(\n this.el.dataset.target,\n this.el.dataset.changeEvent,\n {\n value: this.codeEditor.standalone_code_editor.getValue(),\n }\n )\n } else {\n this.pushEvent(this.el.dataset.changeEvent, {\n value: this.codeEditor.standalone_code_editor.getValue(),\n })\n }\n })\n }\n\n this.handleEvent(\n \"lme:change_language:\" + this.el.dataset.path,\n (data) => {\n const model = this.codeEditor.standalone_code_editor.getModel()\n\n if (model.getLanguageId() !== data.mimeTypeOrLanguageId) {\n monaco.editor.setModelLanguage(model, data.mimeTypeOrLanguageId)\n }\n }\n )\n\n this.handleEvent(\"lme:set_value:\" + this.el.dataset.path, (data) => {\n this.codeEditor.standalone_code_editor.setValue(data.value)\n })\n\n this.el.querySelectorAll(\"textarea\").forEach((textarea) => {\n textarea.setAttribute(\n \"name\",\n \"live_monaco_editor[\" + this.el.dataset.path + \"]\"\n )\n })\n\n this.el.removeAttribute(\"data-value\")\n this.el.removeAttribute(\"data-opts\")\n\n this.el.dispatchEvent(\n new CustomEvent(\"lme:editor_mounted\", {\n detail: { hook: this, editor: this.codeEditor },\n bubbles: true,\n })\n )\n })\n\n if (!this.codeEditor.isMounted()) {\n this.codeEditor.mount()\n }\n },\n\n destroyed() {\n if (this.codeEditor) {\n this.codeEditor.dispose()\n }\n },\n}\n\nexport { CodeEditorHook }\n"], + "mappings": "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", "names": ["_defineProperty", "ownKeys", "_objectSpread2", "errorMessages", "getState", "state", "setState", "curry", "isObject", "config", "errorHandler", "errorMessages", "throwError", "validators", "compose", "config", "configureLoader", "require", "colors"] } diff --git a/priv/static/live_monaco_editor.min.js b/priv/static/live_monaco_editor.min.js index 658741e..8b15b7f 100644 --- a/priv/static/live_monaco_editor.min.js +++ b/priv/static/live_monaco_editor.min.js @@ -1,5 +1,5 @@ -var LiveMonacoEditor=(()=>{var y=Object.defineProperty;var $=Object.getOwnPropertyDescriptor;var N=Object.getOwnPropertyNames;var G=Object.prototype.hasOwnProperty;var V=(e,t)=>{for(var n in t)y(e,n,{get:t[n],enumerable:!0})},Z=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of N(t))!G.call(e,o)&&o!==n&&y(e,o,{get:()=>t[o],enumerable:!(r=$(t,o))||r.enumerable});return e};var Y=e=>Z(y({},"__esModule",{value:!0}),e);var We={};V(We,{CodeEditorHook:()=>K});function Q(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function E(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function w(e){for(var t=1;t=0)&&(n[o]=e[o]);return n}function k(e,t){if(e==null)return{};var n=X(e,t),r,o;if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function _(e,t){return ee(e)||te(e,t)||ne(e,t)||re()}function ee(e){if(Array.isArray(e))return e}function te(e,t){if(!(typeof Symbol=="undefined"||!(Symbol.iterator in Object(e)))){var n=[],r=!0,o=!1,i=void 0;try{for(var a=e[Symbol.iterator](),d;!(r=(d=a.next()).done)&&(n.push(d.value),!(t&&n.length===t));r=!0);}catch(s){o=!0,i=s}finally{try{!r&&a.return!=null&&a.return()}finally{if(o)throw i}}return n}}function ne(e,t){if(e){if(typeof e=="string")return A(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return A(e,t)}}function A(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?e.apply(this,o):function(){for(var a=arguments.length,d=new Array(a),s=0;s1&&arguments[1]!==void 0?arguments[1]:{};g.initial(e),g.handler(t);var n={current:e},r=l(be)(n,t),o=l(me)(n),i=l(g.changes)(e),a=l(he)(n);function d(){var p=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(J){return J};return g.selector(p),p(n.current)}function s(p){ie(r,o,i,a)(p)}return[d,s]}function he(e,t){return c(t)?t(e.current):t}function me(e,t){return e.current=C(C({},e.current),t),t}function be(e,t,n){return c(t)?t(e.current):Object.keys(n).forEach(function(r){var o;return(o=t[r])===null||o===void 0?void 0:o.call(t,e.current[r])}),n}var ve={create:ge},M=ve;var ye={paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs"}},F=ye;function we(e){return function t(){for(var n=this,r=arguments.length,o=new Array(r),i=0;i=e.length?e.apply(this,o):function(){for(var a=arguments.length,d=new Array(a),s=0;s{var w=Object.defineProperty;var V=Object.getOwnPropertyDescriptor;var Z=Object.getOwnPropertyNames,A=Object.getOwnPropertySymbols;var k=Object.prototype.hasOwnProperty,Y=Object.prototype.propertyIsEnumerable;var _=(e,t)=>{var n={};for(var r in e)k.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&A)for(var r of A(e))t.indexOf(r)<0&&Y.call(e,r)&&(n[r]=e[r]);return n};var Q=(e,t)=>{for(var n in t)w(e,n,{get:t[n],enumerable:!0})},X=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Z(t))!k.call(e,o)&&o!==n&&w(e,o,{get:()=>t[o],enumerable:!(r=V(t,o))||r.enumerable});return e};var ee=e=>X(w({},"__esModule",{value:!0}),e);var qe={};Q(qe,{CodeEditorHook:()=>G});function te(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function C(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function j(e){for(var t=1;t=0)&&(n[o]=e[o]);return n}function M(e,t){if(e==null)return{};var n=ne(e,t),r,o;if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function F(e,t){return re(e)||oe(e,t)||ie(e,t)||ae()}function re(e){if(Array.isArray(e))return e}function oe(e,t){if(!(typeof Symbol=="undefined"||!(Symbol.iterator in Object(e)))){var n=[],r=!0,o=!1,i=void 0;try{for(var a=e[Symbol.iterator](),u;!(r=(u=a.next()).done)&&(n.push(u.value),!(t&&n.length===t));r=!0);}catch(d){o=!0,i=d}finally{try{!r&&a.return!=null&&a.return()}finally{if(o)throw i}}return n}}function ie(e,t){if(e){if(typeof e=="string")return S(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return S(e,t)}}function S(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length?e.apply(this,o):function(){for(var a=arguments.length,u=new Array(a),d=0;d1&&arguments[1]!==void 0?arguments[1]:{};h.initial(e),h.handler(t);var n={current:e},r=f(we)(n,t),o=f(ye)(n),i=f(h.changes)(e),a=f(ve)(n);function u(){var c=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(s){return s};return h.selector(c),c(n.current)}function d(c){ue(r,o,i,a)(c)}return[u,d]}function ve(e,t){return p(t)?t(e.current):t}function ye(e,t){return e.current=x(x({},e.current),t),t}function we(e,t,n){return p(t)?t(e.current):Object.keys(n).forEach(function(r){var o;return(o=t[r])===null||o===void 0?void 0:o.call(t,e.current[r])}),n}var je={create:be},D=je;var Oe={paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs"}},I=Oe;function Ue(e){return function t(){for(var n=this,r=arguments.length,o=new Array(r),i=0;i=e.length?e.apply(this,o):function(){for(var a=arguments.length,u=new Array(a),d=0;d[{token:"",foreground:e.default},{token:"variable",foreground:e.lightRed},{token:"constant",foreground:e.blue},{token:"constant.character.escape",foreground:e.blue},{token:"comment",foreground:e.gray},{token:"number",foreground:e.blue},{token:"regexp",foreground:e.lightRed},{token:"type",foreground:e.lightRed},{token:"string",foreground:e.green},{token:"keyword",foreground:e.purple},{token:"operator",foreground:e.peach},{token:"delimiter.bracket.embed",foreground:e.red},{token:"sigil",foreground:e.teal},{token:"function",foreground:e.blue},{token:"function.call",foreground:e.default},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"keyword.md",foreground:e.lightRed},{token:"keyword.table",foreground:e.lightRed},{token:"string.link.md",foreground:e.blue},{token:"variable.md",foreground:e.teal},{token:"string.md",foreground:e.default},{token:"variable.source.md",foreground:e.default},{token:"tag",foreground:e.lightRed},{token:"metatag",foreground:e.lightRed},{token:"attribute.name",foreground:e.peach},{token:"attribute.value",foreground:e.green},{token:"string.key",foreground:e.lightRed},{token:"keyword.json",foreground:e.blue},{token:"operator.sql",foreground:e.purple}],q={base:"vs-dark",inherit:!1,rules:Re(O),colors:{"editor.background":O.background,"editor.foreground":O.default,"editorLineNumber.foreground":"#636d83","editorCursor.foreground":"#636d83","editor.selectionBackground":"#3e4451","editor.findMatchHighlightBackground":"#528bff3d","editorSuggestWidget.background":"#21252b","editorSuggestWidget.border":"#181a1f","editorSuggestWidget.selectedBackground":"#2c313a","input.background":"#1b1d23","input.border":"#181a1f","editorBracketMatch.border":"#282c34","editorBracketMatch.background":"#3e4451"}};var U=class{constructor(t,n,r,o){this.el=t,this.path=n,this.value=r,this.opts=o,this.standalone_code_editor=null,this._onMount=[]}isMounted(){return!!this.standalone_code_editor}mount(){if(this.isMounted())throw new Error("The monaco editor is already mounted");this._mountEditor()}onMount(t){this._onMount.push(t)}dispose(){if(this.isMounted()){let t=this.standalone_code_editor.getModel();t&&t.dispose(),this.standalone_code_editor.dispose()}}_mountEditor(){this.opts.value=this.value,v.config({paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs"}}),v.init().then(t=>{t.editor.defineTheme("default",q);let n=t.Uri.parse(this.path),r=this.opts.language,o=t.editor.createModel(this.value,r,n);this.opts.language=void 0,this.opts.model=o,this.standalone_code_editor=t.editor.create(this.el,this.opts),this._onMount.forEach(a=>a(t)),this._setScreenDependantEditorOptions(),this.standalone_code_editor.addAction({contextMenuGroupId:"word-wrapping",id:"enable-word-wrapping",label:"Enable word wrapping",precondition:"config.editor.wordWrap == off",keybindings:[t.KeyMod.Alt|t.KeyCode.KeyZ],run:a=>a.updateOptions({wordWrap:"on"})}),this.standalone_code_editor.addAction({contextMenuGroupId:"word-wrapping",id:"disable-word-wrapping",label:"Disable word wrapping",precondition:"config.editor.wordWrap == on",keybindings:[t.KeyMod.Alt|t.KeyCode.KeyZ],run:a=>a.updateOptions({wordWrap:"off"})}),new ResizeObserver(a=>{a.forEach(()=>{this.el.offsetHeight>0&&(this._setScreenDependantEditorOptions(),this.standalone_code_editor.layout())})}).observe(this.el),this.standalone_code_editor.onDidContentSizeChange(()=>{let a=this.standalone_code_editor.getContentHeight();this.el.style.height=`${a}px`})})}_setScreenDependantEditorOptions(){window.screen.width<768?this.standalone_code_editor.updateOptions({folding:!1,lineDecorationsWidth:16,lineNumbersMinChars:Math.floor(Math.log10(this.standalone_code_editor.getModel().getLineCount()))+3}):this.standalone_code_editor.updateOptions({folding:!0,lineDecorationsWidth:10,lineNumbersMinChars:5})}},z=U;var K={mounted(){let e=JSON.parse(this.el.dataset.opts);this.codeEditor=new z(this.el,this.el.dataset.path,this.el.dataset.value,e),this.codeEditor.onMount(t=>{this.el.dataset.changeEvent&&this.el.dataset.changeEvent!==""&&this.codeEditor.standalone_code_editor.onDidChangeModelContent(()=>{this.el.dataset.target&&this.el.dataset.target!==""?this.pushEventTo(this.el.dataset.target,this.el.dataset.changeEvent,{value:this.codeEditor.standalone_code_editor.getValue()}):this.pushEvent(this.el.dataset.changeEvent,{value:this.codeEditor.standalone_code_editor.getValue()})}),this.handleEvent("lme:change_language:"+this.el.dataset.path,n=>{let r=this.codeEditor.standalone_code_editor.getModel();r.getLanguageId()!==n.mimeTypeOrLanguageId&&t.editor.setModelLanguage(r,n.mimeTypeOrLanguageId)}),this.handleEvent("lme:set_value:"+this.el.dataset.path,n=>{this.codeEditor.standalone_code_editor.setValue(n.value)}),this.el.querySelectorAll("textarea").forEach(n=>{n.setAttribute("name","live_monaco_editor["+this.el.dataset.path+"]")}),this.el.removeAttribute("data-value"),this.el.removeAttribute("data-opts"),this.el.dispatchEvent(new CustomEvent("lme:editor_mounted",{detail:{hook:this,editor:this.codeEditor},bubbles:!0}))}),this.codeEditor.isMounted()||this.codeEditor.mount()},destroyed(){this.codeEditor&&this.codeEditor.dispose()}};return Y(We);})(); + `},R=T(_e)(W),Ce={config:Ae},L=Ce;var Se=function(){for(var t=arguments.length,n=new Array(t),r=0;r[{token:"",foreground:e.default},{token:"variable",foreground:e.lightRed},{token:"constant",foreground:e.blue},{token:"constant.character.escape",foreground:e.blue},{token:"comment",foreground:e.gray},{token:"number",foreground:e.blue},{token:"regexp",foreground:e.lightRed},{token:"type",foreground:e.lightRed},{token:"string",foreground:e.green},{token:"keyword",foreground:e.purple},{token:"operator",foreground:e.peach},{token:"delimiter.bracket.embed",foreground:e.red},{token:"sigil",foreground:e.teal},{token:"function",foreground:e.blue},{token:"function.call",foreground:e.default},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"keyword.md",foreground:e.lightRed},{token:"keyword.table",foreground:e.lightRed},{token:"string.link.md",foreground:e.blue},{token:"variable.md",foreground:e.teal},{token:"string.md",foreground:e.default},{token:"variable.source.md",foreground:e.default},{token:"tag",foreground:e.lightRed},{token:"metatag",foreground:e.lightRed},{token:"attribute.name",foreground:e.peach},{token:"attribute.value",foreground:e.green},{token:"string.key",foreground:e.lightRed},{token:"keyword.json",foreground:e.blue},{token:"operator.sql",foreground:e.purple}],$={base:"vs-dark",inherit:!1,rules:He(U),colors:{"editor.background":U.background,"editor.foreground":U.default,"editorLineNumber.foreground":"#636d83","editorCursor.foreground":"#636d83","editor.selectionBackground":"#3e4451","editor.findMatchHighlightBackground":"#528bff3d","editorSuggestWidget.background":"#21252b","editorSuggestWidget.border":"#181a1f","editorSuggestWidget.selectedBackground":"#2c313a","input.background":"#1b1d23","input.border":"#181a1f","editorBracketMatch.border":"#282c34","editorBracketMatch.background":"#3e4451"}};var E=class{constructor(t,n,r,o){this.el=t,this.path=n,this.value=r,this.opts=o,this.standalone_code_editor=null,this._onMount=[]}isMounted(){return!!this.standalone_code_editor}mount(){if(this.isMounted())throw new Error("The monaco editor is already mounted");this._mountEditor()}onMount(t){this._onMount.push(t)}dispose(){if(this.isMounted()){let t=this.standalone_code_editor.getModel();t&&t.dispose(),this.standalone_code_editor.dispose()}}_mountEditor(){let o=this.opts,{loader:t}=o,n=_(o,["loader"]);n.value=this.value;let r={paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs"}};y.config(t||r),y.init().then(i=>{i.editor.defineTheme("default",$);let a=i.Uri.parse(this.path),u=n.language,d=i.editor.createModel(this.value,u,a);n.language=void 0,n.model=d,this.standalone_code_editor=i.editor.create(this.el,n),this._onMount.forEach(s=>s(i)),this._setScreenDependantEditorOptions(),this.standalone_code_editor.addAction({contextMenuGroupId:"word-wrapping",id:"enable-word-wrapping",label:"Enable word wrapping",precondition:"config.editor.wordWrap == off",keybindings:[i.KeyMod.Alt|i.KeyCode.KeyZ],run:s=>s.updateOptions({wordWrap:"on"})}),this.standalone_code_editor.addAction({contextMenuGroupId:"word-wrapping",id:"disable-word-wrapping",label:"Disable word wrapping",precondition:"config.editor.wordWrap == on",keybindings:[i.KeyMod.Alt|i.KeyCode.KeyZ],run:s=>s.updateOptions({wordWrap:"off"})}),new ResizeObserver(s=>{s.forEach(()=>{this.el.offsetHeight>0&&(this._setScreenDependantEditorOptions(),this.standalone_code_editor.layout())})}).observe(this.el),this.standalone_code_editor.onDidContentSizeChange(()=>{let s=this.standalone_code_editor.getContentHeight();this.el.style.height=`${s}px`})})}_setScreenDependantEditorOptions(){window.screen.width<768?this.standalone_code_editor.updateOptions({folding:!1,lineDecorationsWidth:16,lineNumbersMinChars:Math.floor(Math.log10(this.standalone_code_editor.getModel().getLineCount()))+3}):this.standalone_code_editor.updateOptions({folding:!0,lineDecorationsWidth:10,lineNumbersMinChars:5})}},N=E;var G={mounted(){let e=JSON.parse(this.el.dataset.opts);this.codeEditor=new N(this.el,this.el.dataset.path,this.el.dataset.value,e),this.codeEditor.onMount(t=>{this.el.dataset.changeEvent&&this.el.dataset.changeEvent!==""&&this.codeEditor.standalone_code_editor.onDidChangeModelContent(()=>{this.el.dataset.target&&this.el.dataset.target!==""?this.pushEventTo(this.el.dataset.target,this.el.dataset.changeEvent,{value:this.codeEditor.standalone_code_editor.getValue()}):this.pushEvent(this.el.dataset.changeEvent,{value:this.codeEditor.standalone_code_editor.getValue()})}),this.handleEvent("lme:change_language:"+this.el.dataset.path,n=>{let r=this.codeEditor.standalone_code_editor.getModel();r.getLanguageId()!==n.mimeTypeOrLanguageId&&t.editor.setModelLanguage(r,n.mimeTypeOrLanguageId)}),this.handleEvent("lme:set_value:"+this.el.dataset.path,n=>{this.codeEditor.standalone_code_editor.setValue(n.value)}),this.el.querySelectorAll("textarea").forEach(n=>{n.setAttribute("name","live_monaco_editor["+this.el.dataset.path+"]")}),this.el.removeAttribute("data-value"),this.el.removeAttribute("data-opts"),this.el.dispatchEvent(new CustomEvent("lme:editor_mounted",{detail:{hook:this,editor:this.codeEditor},bubbles:!0}))}),this.codeEditor.isMounted()||this.codeEditor.mount()},destroyed(){this.codeEditor&&this.codeEditor.dispose()}};return ee(qe);})(); //# sourceMappingURL=live_monaco_editor.min.js.map diff --git a/priv/static/live_monaco_editor.min.js.map b/priv/static/live_monaco_editor.min.js.map index a0a753a..c5b2c5a 100644 --- a/priv/static/live_monaco_editor.min.js.map +++ b/priv/static/live_monaco_editor.min.js.map @@ -1,7 +1,7 @@ { "version": 3, "sources": ["../../assets/js/live_monaco_editor/index.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/_virtual/_rollupPluginBabelHelpers.js", "../../assets/node_modules/state-local/lib/es/state-local.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/config/index.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/curry.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/isObject.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/validators/index.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/compose.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/deepMerge.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/utils/makeCancelable.js", "../../assets/node_modules/@monaco-editor/loader/lib/es/loader/index.js", "../../assets/js/live_monaco_editor/editor/themes.js", "../../assets/js/live_monaco_editor/editor/code_editor.js", "../../assets/js/live_monaco_editor/hooks/code_editor.js"], - "sourcesContent": ["import \"@fontsource/jetbrains-mono\"\nimport { CodeEditorHook } from \"./hooks/code_editor\"\n\nexport { CodeEditorHook }\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\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\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\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\n return target;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nexport { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _defineProperty as defineProperty, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _objectSpread2 as objectSpread2, _objectWithoutProperties as objectWithoutProperties, _objectWithoutPropertiesLoose as objectWithoutPropertiesLoose, _slicedToArray as slicedToArray, _unsupportedIterableToArray as unsupportedIterableToArray };\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n}\n\nfunction curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len3 = arguments.length, nextArgs = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n nextArgs[_key3] = arguments[_key3];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nfunction isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nfunction isEmpty(obj) {\n return !Object.keys(obj).length;\n}\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nfunction hasOwnProperty(object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n}\n\nfunction validateChanges(initial, changes) {\n if (!isObject(changes)) errorHandler('changeType');\n if (Object.keys(changes).some(function (field) {\n return !hasOwnProperty(initial, field);\n })) errorHandler('changeField');\n return changes;\n}\n\nfunction validateSelector(selector) {\n if (!isFunction(selector)) errorHandler('selectorType');\n}\n\nfunction validateHandler(handler) {\n if (!(isFunction(handler) || isObject(handler))) errorHandler('handlerType');\n if (isObject(handler) && Object.values(handler).some(function (_handler) {\n return !isFunction(_handler);\n })) errorHandler('handlersType');\n}\n\nfunction validateInitial(initial) {\n if (!initial) errorHandler('initialIsRequired');\n if (!isObject(initial)) errorHandler('initialType');\n if (isEmpty(initial)) errorHandler('initialContent');\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n initialIsRequired: 'initial state is required',\n initialType: 'initial state should be an object',\n initialContent: 'initial state shouldn\\'t be an empty object',\n handlerType: 'handler should be an object or a function',\n handlersType: 'all handlers should be a functions',\n selectorType: 'selector should be a function',\n changeType: 'provided value of changes should be an object',\n changeField: 'it seams you want to change a field in the state which is not specified in the \"initial\" state',\n \"default\": 'an unknown error accured in `state-local` package'\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n changes: validateChanges,\n selector: validateSelector,\n handler: validateHandler,\n initial: validateInitial\n};\n\nfunction create(initial) {\n var handler = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n validators.initial(initial);\n validators.handler(handler);\n var state = {\n current: initial\n };\n var didUpdate = curry(didStateUpdate)(state, handler);\n var update = curry(updateState)(state);\n var validate = curry(validators.changes)(initial);\n var getChanges = curry(extractChanges)(state);\n\n function getState() {\n var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (state) {\n return state;\n };\n validators.selector(selector);\n return selector(state.current);\n }\n\n function setState(causedChanges) {\n compose(didUpdate, update, validate, getChanges)(causedChanges);\n }\n\n return [getState, setState];\n}\n\nfunction extractChanges(state, causedChanges) {\n return isFunction(causedChanges) ? causedChanges(state.current) : causedChanges;\n}\n\nfunction updateState(state, changes) {\n state.current = _objectSpread2(_objectSpread2({}, state.current), changes);\n return changes;\n}\n\nfunction didStateUpdate(state, handler, changes) {\n isFunction(handler) ? handler(state.current) : Object.keys(changes).forEach(function (field) {\n var _handler$field;\n\n return (_handler$field = handler[field]) === null || _handler$field === void 0 ? void 0 : _handler$field.call(handler, state.current[field]);\n });\n return changes;\n}\n\nvar index = {\n create: create\n};\n\nexport default index;\n", "var config = {\n paths: {\n vs: 'https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs'\n }\n};\n\nexport default config;\n", "function curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len2 = arguments.length, nextArgs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n nextArgs[_key2] = arguments[_key2];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nexport default curry;\n", "function isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nexport default isObject;\n", "import curry from '../utils/curry.js';\nimport isObject from '../utils/isObject.js';\n\n/**\n * validates the configuration object and informs about deprecation\n * @param {Object} config - the configuration object \n * @return {Object} config - the validated configuration object\n */\n\nfunction validateConfig(config) {\n if (!config) errorHandler('configIsRequired');\n if (!isObject(config)) errorHandler('configType');\n\n if (config.urls) {\n informAboutDeprecation();\n return {\n paths: {\n vs: config.urls.monacoBase\n }\n };\n }\n\n return config;\n}\n/**\n * logs deprecation message\n */\n\n\nfunction informAboutDeprecation() {\n console.warn(errorMessages.deprecation);\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n configIsRequired: 'the configuration object is required',\n configType: 'the configuration object should be an object',\n \"default\": 'an unknown error accured in `@monaco-editor/loader` package',\n deprecation: \"Deprecation warning!\\n You are using deprecated way of configuration.\\n\\n Instead of using\\n monaco.config({ urls: { monacoBase: '...' } })\\n use\\n monaco.config({ paths: { vs: '...' } })\\n\\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\\n \"\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n config: validateConfig\n};\n\nexport default validators;\nexport { errorHandler, errorMessages };\n", "var compose = function compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n};\n\nexport default compose;\n", "import { objectSpread2 as _objectSpread2 } from '../_virtual/_rollupPluginBabelHelpers.js';\n\nfunction merge(target, source) {\n Object.keys(source).forEach(function (key) {\n if (source[key] instanceof Object) {\n if (target[key]) {\n Object.assign(source[key], merge(target[key], source[key]));\n }\n }\n });\n return _objectSpread2(_objectSpread2({}, target), source);\n}\n\nexport default merge;\n", "// The source (has been changed) is https://github.com/facebook/react/issues/5465#issuecomment-157888325\nvar CANCELATION_MESSAGE = {\n type: 'cancelation',\n msg: 'operation is manually canceled'\n};\n\nfunction makeCancelable(promise) {\n var hasCanceled_ = false;\n var wrappedPromise = new Promise(function (resolve, reject) {\n promise.then(function (val) {\n return hasCanceled_ ? reject(CANCELATION_MESSAGE) : resolve(val);\n });\n promise[\"catch\"](reject);\n });\n return wrappedPromise.cancel = function () {\n return hasCanceled_ = true;\n }, wrappedPromise;\n}\n\nexport default makeCancelable;\nexport { CANCELATION_MESSAGE };\n", "import { slicedToArray as _slicedToArray, objectWithoutProperties as _objectWithoutProperties } from '../_virtual/_rollupPluginBabelHelpers.js';\nimport state from 'state-local';\nimport config$1 from '../config/index.js';\nimport validators from '../validators/index.js';\nimport compose from '../utils/compose.js';\nimport merge from '../utils/deepMerge.js';\nimport makeCancelable from '../utils/makeCancelable.js';\n\n/** the local state of the module */\n\nvar _state$create = state.create({\n config: config$1,\n isInitialized: false,\n resolve: null,\n reject: null,\n monaco: null\n}),\n _state$create2 = _slicedToArray(_state$create, 2),\n getState = _state$create2[0],\n setState = _state$create2[1];\n/**\n * set the loader configuration\n * @param {Object} config - the configuration object\n */\n\n\nfunction config(globalConfig) {\n var _validators$config = validators.config(globalConfig),\n monaco = _validators$config.monaco,\n config = _objectWithoutProperties(_validators$config, [\"monaco\"]);\n\n setState(function (state) {\n return {\n config: merge(state.config, config),\n monaco: monaco\n };\n });\n}\n/**\n * handles the initialization of the monaco-editor\n * @return {Promise} - returns an instance of monaco (with a cancelable promise)\n */\n\n\nfunction init() {\n var state = getState(function (_ref) {\n var monaco = _ref.monaco,\n isInitialized = _ref.isInitialized,\n resolve = _ref.resolve;\n return {\n monaco: monaco,\n isInitialized: isInitialized,\n resolve: resolve\n };\n });\n\n if (!state.isInitialized) {\n setState({\n isInitialized: true\n });\n\n if (state.monaco) {\n state.resolve(state.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n if (window.monaco && window.monaco.editor) {\n storeMonacoInstance(window.monaco);\n state.resolve(window.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n compose(injectScripts, getMonacoLoaderScript)(configureLoader);\n }\n\n return makeCancelable(wrapperPromise);\n}\n/**\n * injects provided scripts into the document.body\n * @param {Object} script - an HTML script element\n * @return {Object} - the injected HTML script element\n */\n\n\nfunction injectScripts(script) {\n return document.body.appendChild(script);\n}\n/**\n * creates an HTML script element with/without provided src\n * @param {string} [src] - the source path of the script\n * @return {Object} - the created HTML script element\n */\n\n\nfunction createScript(src) {\n var script = document.createElement('script');\n return src && (script.src = src), script;\n}\n/**\n * creates an HTML script element with the monaco loader src\n * @return {Object} - the created HTML script element\n */\n\n\nfunction getMonacoLoaderScript(configureLoader) {\n var state = getState(function (_ref2) {\n var config = _ref2.config,\n reject = _ref2.reject;\n return {\n config: config,\n reject: reject\n };\n });\n var loaderScript = createScript(\"\".concat(state.config.paths.vs, \"/loader.js\"));\n\n loaderScript.onload = function () {\n return configureLoader();\n };\n\n loaderScript.onerror = state.reject;\n return loaderScript;\n}\n/**\n * configures the monaco loader\n */\n\n\nfunction configureLoader() {\n var state = getState(function (_ref3) {\n var config = _ref3.config,\n resolve = _ref3.resolve,\n reject = _ref3.reject;\n return {\n config: config,\n resolve: resolve,\n reject: reject\n };\n });\n var require = window.require;\n\n require.config(state.config);\n\n require(['vs/editor/editor.main'], function (monaco) {\n storeMonacoInstance(monaco);\n state.resolve(monaco);\n }, function (error) {\n state.reject(error);\n });\n}\n/**\n * store monaco instance in local state\n */\n\n\nfunction storeMonacoInstance(monaco) {\n if (!getState().monaco) {\n setState({\n monaco: monaco\n });\n }\n}\n/**\n * internal helper function\n * extracts stored monaco instance\n * @return {Object|null} - the monaco instance\n */\n\n\nfunction __getMonacoInstance() {\n return getState(function (_ref4) {\n var monaco = _ref4.monaco;\n return monaco;\n });\n}\n\nvar wrapperPromise = new Promise(function (resolve, reject) {\n return setState({\n resolve: resolve,\n reject: reject\n });\n});\nvar loader = {\n config: config,\n init: init,\n __getMonacoInstance: __getMonacoInstance\n};\n\nexport default loader;\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/23e58ac604de92ce54472f36fe3e28dc27576d6c/assets/js/hooks/cell_editor/live_editor/theme.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\n// This is a port of the One Dark theme to the Monaco editor.\n// We color graded the comment so it has AA accessibility and\n// then similarly scaled the default font.\nconst colors = {\n background: \"#282c34\",\n default: \"#c4cad6\",\n lightRed: \"#e06c75\",\n blue: \"#61afef\",\n gray: \"#8c92a3\",\n green: \"#98c379\",\n purple: \"#c678dd\",\n red: \"#be5046\",\n teal: \"#56b6c2\",\n peach: \"#d19a66\",\n}\n\nconst rules = (colors) => [\n { token: \"\", foreground: colors.default },\n { token: \"variable\", foreground: colors.lightRed },\n { token: \"constant\", foreground: colors.blue },\n { token: \"constant.character.escape\", foreground: colors.blue },\n { token: \"comment\", foreground: colors.gray },\n { token: \"number\", foreground: colors.blue },\n { token: \"regexp\", foreground: colors.lightRed },\n { token: \"type\", foreground: colors.lightRed },\n { token: \"string\", foreground: colors.green },\n { token: \"keyword\", foreground: colors.purple },\n { token: \"operator\", foreground: colors.peach },\n { token: \"delimiter.bracket.embed\", foreground: colors.red },\n { token: \"sigil\", foreground: colors.teal },\n { token: \"function\", foreground: colors.blue },\n { token: \"function.call\", foreground: colors.default },\n\n // Markdown specific\n { token: \"emphasis\", fontStyle: \"italic\" },\n { token: \"strong\", fontStyle: \"bold\" },\n { token: \"keyword.md\", foreground: colors.lightRed },\n { token: \"keyword.table\", foreground: colors.lightRed },\n { token: \"string.link.md\", foreground: colors.blue },\n { token: \"variable.md\", foreground: colors.teal },\n { token: \"string.md\", foreground: colors.default },\n { token: \"variable.source.md\", foreground: colors.default },\n\n // XML specific\n { token: \"tag\", foreground: colors.lightRed },\n { token: \"metatag\", foreground: colors.lightRed },\n { token: \"attribute.name\", foreground: colors.peach },\n { token: \"attribute.value\", foreground: colors.green },\n\n // JSON specific\n { token: \"string.key\", foreground: colors.lightRed },\n { token: \"keyword.json\", foreground: colors.blue },\n\n // SQL specific\n { token: \"operator.sql\", foreground: colors.purple },\n]\n\nconst theme = {\n base: \"vs-dark\",\n inherit: false,\n rules: rules(colors),\n colors: {\n \"editor.background\": colors.background,\n \"editor.foreground\": colors.default,\n \"editorLineNumber.foreground\": \"#636d83\",\n \"editorCursor.foreground\": \"#636d83\",\n \"editor.selectionBackground\": \"#3e4451\",\n \"editor.findMatchHighlightBackground\": \"#528bff3d\",\n \"editorSuggestWidget.background\": \"#21252b\",\n \"editorSuggestWidget.border\": \"#181a1f\",\n \"editorSuggestWidget.selectedBackground\": \"#2c313a\",\n \"input.background\": \"#1b1d23\",\n \"input.border\": \"#181a1f\",\n \"editorBracketMatch.border\": \"#282c34\",\n \"editorBracketMatch.background\": \"#3e4451\",\n },\n}\n\nexport { theme }\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/8532bc334bdcf3c57fab9b694666e609877d279f/assets/js/hooks/cell_editor/live_editor.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\nimport loader from \"@monaco-editor/loader\"\nimport { theme } from \"./themes\"\n\nclass CodeEditor {\n constructor(el, path, value, opts) {\n this.el = el\n this.path = path\n this.value = value\n this.opts = opts\n // https://microsoft.github.io/monaco-editor/docs.html#interfaces/editor.IStandaloneCodeEditor.html\n this.standalone_code_editor = null\n this._onMount = []\n }\n\n isMounted() {\n return !!this.standalone_code_editor\n }\n\n mount() {\n if (this.isMounted()) {\n throw new Error(\"The monaco editor is already mounted\")\n }\n\n this._mountEditor()\n }\n\n onMount(callback) {\n this._onMount.push(callback)\n }\n\n dispose() {\n if (this.isMounted()) {\n const model = this.standalone_code_editor.getModel()\n\n if (model) {\n model.dispose()\n }\n\n this.standalone_code_editor.dispose()\n }\n }\n\n _mountEditor() {\n this.opts.value = this.value\n\n loader.config({\n paths: { vs: \"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs\" },\n })\n\n loader.init().then((monaco) => {\n monaco.editor.defineTheme(\"default\", theme)\n\n let modelUri = monaco.Uri.parse(this.path)\n let language = this.opts.language\n let model = monaco.editor.createModel(this.value, language, modelUri)\n\n this.opts.language = undefined\n this.opts.model = model\n this.standalone_code_editor = monaco.editor.create(this.el, this.opts)\n\n this._onMount.forEach((callback) => callback(monaco))\n\n this._setScreenDependantEditorOptions()\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"enable-word-wrapping\",\n label: \"Enable word wrapping\",\n precondition: \"config.editor.wordWrap == off\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"on\" }),\n })\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"disable-word-wrapping\",\n label: \"Disable word wrapping\",\n precondition: \"config.editor.wordWrap == on\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"off\" }),\n })\n\n const resizeObserver = new ResizeObserver((entries) => {\n entries.forEach(() => {\n if (this.el.offsetHeight > 0) {\n this._setScreenDependantEditorOptions()\n this.standalone_code_editor.layout()\n }\n })\n })\n\n resizeObserver.observe(this.el)\n\n this.standalone_code_editor.onDidContentSizeChange(() => {\n const contentHeight = this.standalone_code_editor.getContentHeight()\n this.el.style.height = `${contentHeight}px`\n })\n })\n }\n\n _setScreenDependantEditorOptions() {\n if (window.screen.width < 768) {\n this.standalone_code_editor.updateOptions({\n folding: false,\n lineDecorationsWidth: 16,\n lineNumbersMinChars:\n Math.floor(\n Math.log10(this.standalone_code_editor.getModel().getLineCount())\n ) + 3,\n })\n } else {\n this.standalone_code_editor.updateOptions({\n folding: true,\n lineDecorationsWidth: 10,\n lineNumbersMinChars: 5,\n })\n }\n }\n}\n\nexport default CodeEditor\n", "import CodeEditor from \"../editor/code_editor\"\n\nconst CodeEditorHook = {\n mounted() {\n // TODO: validate dataset\n const opts = JSON.parse(this.el.dataset.opts)\n\n this.codeEditor = new CodeEditor(\n this.el,\n this.el.dataset.path,\n this.el.dataset.value,\n opts\n )\n\n this.codeEditor.onMount((monaco) => {\n if (this.el.dataset.changeEvent && this.el.dataset.changeEvent !== \"\") {\n this.codeEditor.standalone_code_editor.onDidChangeModelContent(() => {\n if (this.el.dataset.target && this.el.dataset.target !== \"\") {\n this.pushEventTo(\n this.el.dataset.target,\n this.el.dataset.changeEvent,\n {\n value: this.codeEditor.standalone_code_editor.getValue(),\n }\n )\n } else {\n this.pushEvent(this.el.dataset.changeEvent, {\n value: this.codeEditor.standalone_code_editor.getValue(),\n })\n }\n })\n }\n\n this.handleEvent(\n \"lme:change_language:\" + this.el.dataset.path,\n (data) => {\n const model = this.codeEditor.standalone_code_editor.getModel()\n\n if (model.getLanguageId() !== data.mimeTypeOrLanguageId) {\n monaco.editor.setModelLanguage(model, data.mimeTypeOrLanguageId)\n }\n }\n )\n\n this.handleEvent(\"lme:set_value:\" + this.el.dataset.path, (data) => {\n this.codeEditor.standalone_code_editor.setValue(data.value)\n })\n\n this.el.querySelectorAll(\"textarea\").forEach((textarea) => {\n textarea.setAttribute(\n \"name\",\n \"live_monaco_editor[\" + this.el.dataset.path + \"]\"\n )\n })\n\n this.el.removeAttribute(\"data-value\")\n this.el.removeAttribute(\"data-opts\")\n\n this.el.dispatchEvent(\n new CustomEvent(\"lme:editor_mounted\", {\n detail: { hook: this, editor: this.codeEditor },\n bubbles: true,\n })\n )\n })\n\n if (!this.codeEditor.isMounted()) {\n this.codeEditor.mount()\n }\n },\n\n destroyed() {\n if (this.codeEditor) {\n this.codeEditor.dispose()\n }\n },\n}\n\nexport { CodeEditorHook }\n"], - "mappings": "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", - "names": ["live_monaco_editor_exports", "__export", "CodeEditorHook", "_defineProperty", "obj", "key", "value", "ownKeys", "object", "enumerableOnly", "keys", "symbols", "sym", "_objectSpread2", "target", "i", "source", "_objectWithoutPropertiesLoose", "excluded", "sourceKeys", "_objectWithoutProperties", "sourceSymbolKeys", "_slicedToArray", "arr", "_arrayWithHoles", "_iterableToArrayLimit", "_unsupportedIterableToArray", "_nonIterableRest", "_arr", "_n", "_d", "_e", "_i", "_s", "err", "o", "minLen", "_arrayLikeToArray", "len", "arr2", "_defineProperty", "obj", "key", "value", "ownKeys", "object", "enumerableOnly", "keys", "symbols", "sym", "_objectSpread2", "target", "i", "source", "compose", "_len", "fns", "_key", "x", "y", "f", "curry", "fn", "curried", "_this", "_len2", "args", "_key2", "_len3", "nextArgs", "_key3", "isObject", "isEmpty", "isFunction", "hasOwnProperty", "property", "validateChanges", "initial", "changes", "errorHandler", "field", "validateSelector", "selector", "validateHandler", "handler", "_handler", "validateInitial", "throwError", "errorMessages", "type", "validators", "create", "state", "didUpdate", "didStateUpdate", "update", "updateState", "validate", "getChanges", "extractChanges", "getState", "setState", "causedChanges", "_handler$field", "index", "state_local_default", "config", "config_default", "curry", "fn", "curried", "_this", "_len", "args", "_key", "_len2", "nextArgs", "_key2", "curry_default", "isObject", "value", "isObject_default", "validateConfig", "config", "errorHandler", "isObject_default", "informAboutDeprecation", "errorMessages", "throwError", "type", "curry_default", "validators", "validators_default", "compose", "_len", "fns", "_key", "x", "y", "f", "compose_default", "merge", "target", "source", "key", "_objectSpread2", "deepMerge_default", "CANCELATION_MESSAGE", "makeCancelable", "promise", "hasCanceled_", "wrappedPromise", "resolve", "reject", "val", "makeCancelable_default", "_state$create", "state_local_default", "config_default", "_state$create2", "_slicedToArray", "getState", "setState", "config", "globalConfig", "_validators$config", "validators_default", "monaco", "_objectWithoutProperties", "state", "deepMerge_default", "init", "_ref", "isInitialized", "resolve", "makeCancelable_default", "wrapperPromise", "storeMonacoInstance", "compose_default", "injectScripts", "getMonacoLoaderScript", "configureLoader", "script", "createScript", "src", "_ref2", "reject", "loaderScript", "_ref3", "require", "error", "__getMonacoInstance", "_ref4", "loader", "loader_default", "colors", "rules", "theme", "CodeEditor", "el", "path", "value", "opts", "callback", "model", "loader_default", "monaco", "theme", "modelUri", "language", "editor", "entries", "contentHeight", "code_editor_default", "CodeEditorHook", "opts", "code_editor_default", "monaco", "data", "model", "textarea"] + "sourcesContent": ["import \"@fontsource/jetbrains-mono\"\nimport { CodeEditorHook } from \"./hooks/code_editor\"\n\nexport { CodeEditorHook }\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\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\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\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\n return target;\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nexport { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _defineProperty as defineProperty, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _objectSpread2 as objectSpread2, _objectWithoutProperties as objectWithoutProperties, _objectWithoutPropertiesLoose as objectWithoutPropertiesLoose, _slicedToArray as slicedToArray, _unsupportedIterableToArray as unsupportedIterableToArray };\n", "function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\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\n return target;\n}\n\nfunction compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n}\n\nfunction curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len3 = arguments.length, nextArgs = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n nextArgs[_key3] = arguments[_key3];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nfunction isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nfunction isEmpty(obj) {\n return !Object.keys(obj).length;\n}\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nfunction hasOwnProperty(object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n}\n\nfunction validateChanges(initial, changes) {\n if (!isObject(changes)) errorHandler('changeType');\n if (Object.keys(changes).some(function (field) {\n return !hasOwnProperty(initial, field);\n })) errorHandler('changeField');\n return changes;\n}\n\nfunction validateSelector(selector) {\n if (!isFunction(selector)) errorHandler('selectorType');\n}\n\nfunction validateHandler(handler) {\n if (!(isFunction(handler) || isObject(handler))) errorHandler('handlerType');\n if (isObject(handler) && Object.values(handler).some(function (_handler) {\n return !isFunction(_handler);\n })) errorHandler('handlersType');\n}\n\nfunction validateInitial(initial) {\n if (!initial) errorHandler('initialIsRequired');\n if (!isObject(initial)) errorHandler('initialType');\n if (isEmpty(initial)) errorHandler('initialContent');\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n initialIsRequired: 'initial state is required',\n initialType: 'initial state should be an object',\n initialContent: 'initial state shouldn\\'t be an empty object',\n handlerType: 'handler should be an object or a function',\n handlersType: 'all handlers should be a functions',\n selectorType: 'selector should be a function',\n changeType: 'provided value of changes should be an object',\n changeField: 'it seams you want to change a field in the state which is not specified in the \"initial\" state',\n \"default\": 'an unknown error accured in `state-local` package'\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n changes: validateChanges,\n selector: validateSelector,\n handler: validateHandler,\n initial: validateInitial\n};\n\nfunction create(initial) {\n var handler = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n validators.initial(initial);\n validators.handler(handler);\n var state = {\n current: initial\n };\n var didUpdate = curry(didStateUpdate)(state, handler);\n var update = curry(updateState)(state);\n var validate = curry(validators.changes)(initial);\n var getChanges = curry(extractChanges)(state);\n\n function getState() {\n var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : function (state) {\n return state;\n };\n validators.selector(selector);\n return selector(state.current);\n }\n\n function setState(causedChanges) {\n compose(didUpdate, update, validate, getChanges)(causedChanges);\n }\n\n return [getState, setState];\n}\n\nfunction extractChanges(state, causedChanges) {\n return isFunction(causedChanges) ? causedChanges(state.current) : causedChanges;\n}\n\nfunction updateState(state, changes) {\n state.current = _objectSpread2(_objectSpread2({}, state.current), changes);\n return changes;\n}\n\nfunction didStateUpdate(state, handler, changes) {\n isFunction(handler) ? handler(state.current) : Object.keys(changes).forEach(function (field) {\n var _handler$field;\n\n return (_handler$field = handler[field]) === null || _handler$field === void 0 ? void 0 : _handler$field.call(handler, state.current[field]);\n });\n return changes;\n}\n\nvar index = {\n create: create\n};\n\nexport default index;\n", "var config = {\n paths: {\n vs: 'https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs'\n }\n};\n\nexport default config;\n", "function curry(fn) {\n return function curried() {\n var _this = this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return args.length >= fn.length ? fn.apply(this, args) : function () {\n for (var _len2 = arguments.length, nextArgs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n nextArgs[_key2] = arguments[_key2];\n }\n\n return curried.apply(_this, [].concat(args, nextArgs));\n };\n };\n}\n\nexport default curry;\n", "function isObject(value) {\n return {}.toString.call(value).includes('Object');\n}\n\nexport default isObject;\n", "import curry from '../utils/curry.js';\nimport isObject from '../utils/isObject.js';\n\n/**\n * validates the configuration object and informs about deprecation\n * @param {Object} config - the configuration object \n * @return {Object} config - the validated configuration object\n */\n\nfunction validateConfig(config) {\n if (!config) errorHandler('configIsRequired');\n if (!isObject(config)) errorHandler('configType');\n\n if (config.urls) {\n informAboutDeprecation();\n return {\n paths: {\n vs: config.urls.monacoBase\n }\n };\n }\n\n return config;\n}\n/**\n * logs deprecation message\n */\n\n\nfunction informAboutDeprecation() {\n console.warn(errorMessages.deprecation);\n}\n\nfunction throwError(errorMessages, type) {\n throw new Error(errorMessages[type] || errorMessages[\"default\"]);\n}\n\nvar errorMessages = {\n configIsRequired: 'the configuration object is required',\n configType: 'the configuration object should be an object',\n \"default\": 'an unknown error accured in `@monaco-editor/loader` package',\n deprecation: \"Deprecation warning!\\n You are using deprecated way of configuration.\\n\\n Instead of using\\n monaco.config({ urls: { monacoBase: '...' } })\\n use\\n monaco.config({ paths: { vs: '...' } })\\n\\n For more please check the link https://github.com/suren-atoyan/monaco-loader#config\\n \"\n};\nvar errorHandler = curry(throwError)(errorMessages);\nvar validators = {\n config: validateConfig\n};\n\nexport default validators;\nexport { errorHandler, errorMessages };\n", "var compose = function compose() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (x) {\n return fns.reduceRight(function (y, f) {\n return f(y);\n }, x);\n };\n};\n\nexport default compose;\n", "import { objectSpread2 as _objectSpread2 } from '../_virtual/_rollupPluginBabelHelpers.js';\n\nfunction merge(target, source) {\n Object.keys(source).forEach(function (key) {\n if (source[key] instanceof Object) {\n if (target[key]) {\n Object.assign(source[key], merge(target[key], source[key]));\n }\n }\n });\n return _objectSpread2(_objectSpread2({}, target), source);\n}\n\nexport default merge;\n", "// The source (has been changed) is https://github.com/facebook/react/issues/5465#issuecomment-157888325\nvar CANCELATION_MESSAGE = {\n type: 'cancelation',\n msg: 'operation is manually canceled'\n};\n\nfunction makeCancelable(promise) {\n var hasCanceled_ = false;\n var wrappedPromise = new Promise(function (resolve, reject) {\n promise.then(function (val) {\n return hasCanceled_ ? reject(CANCELATION_MESSAGE) : resolve(val);\n });\n promise[\"catch\"](reject);\n });\n return wrappedPromise.cancel = function () {\n return hasCanceled_ = true;\n }, wrappedPromise;\n}\n\nexport default makeCancelable;\nexport { CANCELATION_MESSAGE };\n", "import { slicedToArray as _slicedToArray, objectWithoutProperties as _objectWithoutProperties } from '../_virtual/_rollupPluginBabelHelpers.js';\nimport state from 'state-local';\nimport config$1 from '../config/index.js';\nimport validators from '../validators/index.js';\nimport compose from '../utils/compose.js';\nimport merge from '../utils/deepMerge.js';\nimport makeCancelable from '../utils/makeCancelable.js';\n\n/** the local state of the module */\n\nvar _state$create = state.create({\n config: config$1,\n isInitialized: false,\n resolve: null,\n reject: null,\n monaco: null\n}),\n _state$create2 = _slicedToArray(_state$create, 2),\n getState = _state$create2[0],\n setState = _state$create2[1];\n/**\n * set the loader configuration\n * @param {Object} config - the configuration object\n */\n\n\nfunction config(globalConfig) {\n var _validators$config = validators.config(globalConfig),\n monaco = _validators$config.monaco,\n config = _objectWithoutProperties(_validators$config, [\"monaco\"]);\n\n setState(function (state) {\n return {\n config: merge(state.config, config),\n monaco: monaco\n };\n });\n}\n/**\n * handles the initialization of the monaco-editor\n * @return {Promise} - returns an instance of monaco (with a cancelable promise)\n */\n\n\nfunction init() {\n var state = getState(function (_ref) {\n var monaco = _ref.monaco,\n isInitialized = _ref.isInitialized,\n resolve = _ref.resolve;\n return {\n monaco: monaco,\n isInitialized: isInitialized,\n resolve: resolve\n };\n });\n\n if (!state.isInitialized) {\n setState({\n isInitialized: true\n });\n\n if (state.monaco) {\n state.resolve(state.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n if (window.monaco && window.monaco.editor) {\n storeMonacoInstance(window.monaco);\n state.resolve(window.monaco);\n return makeCancelable(wrapperPromise);\n }\n\n compose(injectScripts, getMonacoLoaderScript)(configureLoader);\n }\n\n return makeCancelable(wrapperPromise);\n}\n/**\n * injects provided scripts into the document.body\n * @param {Object} script - an HTML script element\n * @return {Object} - the injected HTML script element\n */\n\n\nfunction injectScripts(script) {\n return document.body.appendChild(script);\n}\n/**\n * creates an HTML script element with/without provided src\n * @param {string} [src] - the source path of the script\n * @return {Object} - the created HTML script element\n */\n\n\nfunction createScript(src) {\n var script = document.createElement('script');\n return src && (script.src = src), script;\n}\n/**\n * creates an HTML script element with the monaco loader src\n * @return {Object} - the created HTML script element\n */\n\n\nfunction getMonacoLoaderScript(configureLoader) {\n var state = getState(function (_ref2) {\n var config = _ref2.config,\n reject = _ref2.reject;\n return {\n config: config,\n reject: reject\n };\n });\n var loaderScript = createScript(\"\".concat(state.config.paths.vs, \"/loader.js\"));\n\n loaderScript.onload = function () {\n return configureLoader();\n };\n\n loaderScript.onerror = state.reject;\n return loaderScript;\n}\n/**\n * configures the monaco loader\n */\n\n\nfunction configureLoader() {\n var state = getState(function (_ref3) {\n var config = _ref3.config,\n resolve = _ref3.resolve,\n reject = _ref3.reject;\n return {\n config: config,\n resolve: resolve,\n reject: reject\n };\n });\n var require = window.require;\n\n require.config(state.config);\n\n require(['vs/editor/editor.main'], function (monaco) {\n storeMonacoInstance(monaco);\n state.resolve(monaco);\n }, function (error) {\n state.reject(error);\n });\n}\n/**\n * store monaco instance in local state\n */\n\n\nfunction storeMonacoInstance(monaco) {\n if (!getState().monaco) {\n setState({\n monaco: monaco\n });\n }\n}\n/**\n * internal helper function\n * extracts stored monaco instance\n * @return {Object|null} - the monaco instance\n */\n\n\nfunction __getMonacoInstance() {\n return getState(function (_ref4) {\n var monaco = _ref4.monaco;\n return monaco;\n });\n}\n\nvar wrapperPromise = new Promise(function (resolve, reject) {\n return setState({\n resolve: resolve,\n reject: reject\n });\n});\nvar loader = {\n config: config,\n init: init,\n __getMonacoInstance: __getMonacoInstance\n};\n\nexport default loader;\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/23e58ac604de92ce54472f36fe3e28dc27576d6c/assets/js/hooks/cell_editor/live_editor/theme.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\n// This is a port of the One Dark theme to the Monaco editor.\n// We color graded the comment so it has AA accessibility and\n// then similarly scaled the default font.\nconst colors = {\n background: \"#282c34\",\n default: \"#c4cad6\",\n lightRed: \"#e06c75\",\n blue: \"#61afef\",\n gray: \"#8c92a3\",\n green: \"#98c379\",\n purple: \"#c678dd\",\n red: \"#be5046\",\n teal: \"#56b6c2\",\n peach: \"#d19a66\",\n}\n\nconst rules = (colors) => [\n { token: \"\", foreground: colors.default },\n { token: \"variable\", foreground: colors.lightRed },\n { token: \"constant\", foreground: colors.blue },\n { token: \"constant.character.escape\", foreground: colors.blue },\n { token: \"comment\", foreground: colors.gray },\n { token: \"number\", foreground: colors.blue },\n { token: \"regexp\", foreground: colors.lightRed },\n { token: \"type\", foreground: colors.lightRed },\n { token: \"string\", foreground: colors.green },\n { token: \"keyword\", foreground: colors.purple },\n { token: \"operator\", foreground: colors.peach },\n { token: \"delimiter.bracket.embed\", foreground: colors.red },\n { token: \"sigil\", foreground: colors.teal },\n { token: \"function\", foreground: colors.blue },\n { token: \"function.call\", foreground: colors.default },\n\n // Markdown specific\n { token: \"emphasis\", fontStyle: \"italic\" },\n { token: \"strong\", fontStyle: \"bold\" },\n { token: \"keyword.md\", foreground: colors.lightRed },\n { token: \"keyword.table\", foreground: colors.lightRed },\n { token: \"string.link.md\", foreground: colors.blue },\n { token: \"variable.md\", foreground: colors.teal },\n { token: \"string.md\", foreground: colors.default },\n { token: \"variable.source.md\", foreground: colors.default },\n\n // XML specific\n { token: \"tag\", foreground: colors.lightRed },\n { token: \"metatag\", foreground: colors.lightRed },\n { token: \"attribute.name\", foreground: colors.peach },\n { token: \"attribute.value\", foreground: colors.green },\n\n // JSON specific\n { token: \"string.key\", foreground: colors.lightRed },\n { token: \"keyword.json\", foreground: colors.blue },\n\n // SQL specific\n { token: \"operator.sql\", foreground: colors.purple },\n]\n\nconst theme = {\n base: \"vs-dark\",\n inherit: false,\n rules: rules(colors),\n colors: {\n \"editor.background\": colors.background,\n \"editor.foreground\": colors.default,\n \"editorLineNumber.foreground\": \"#636d83\",\n \"editorCursor.foreground\": \"#636d83\",\n \"editor.selectionBackground\": \"#3e4451\",\n \"editor.findMatchHighlightBackground\": \"#528bff3d\",\n \"editorSuggestWidget.background\": \"#21252b\",\n \"editorSuggestWidget.border\": \"#181a1f\",\n \"editorSuggestWidget.selectedBackground\": \"#2c313a\",\n \"input.background\": \"#1b1d23\",\n \"input.border\": \"#181a1f\",\n \"editorBracketMatch.border\": \"#282c34\",\n \"editorBracketMatch.background\": \"#3e4451\",\n },\n}\n\nexport { theme }\n", "// Copied and modified from the original work available at https://github.com/livebook-dev/livebook/blob/8532bc334bdcf3c57fab9b694666e609877d279f/assets/js/hooks/cell_editor/live_editor.js\n// Copyright (C) 2021 Dashbit\n// Licensed under Apache 2.0 available at https://www.apache.org/licenses/LICENSE-2.0\n\nimport loader from \"@monaco-editor/loader\"\nimport { theme } from \"./themes\"\n\nclass CodeEditor {\n constructor(el, path, value, opts) {\n this.el = el\n this.path = path\n this.value = value\n this.opts = opts\n // https://microsoft.github.io/monaco-editor/docs.html#interfaces/editor.IStandaloneCodeEditor.html\n this.standalone_code_editor = null\n this._onMount = []\n }\n\n isMounted() {\n return !!this.standalone_code_editor\n }\n\n mount() {\n if (this.isMounted()) {\n throw new Error(\"The monaco editor is already mounted\")\n }\n\n this._mountEditor()\n }\n\n onMount(callback) {\n this._onMount.push(callback)\n }\n\n dispose() {\n if (this.isMounted()) {\n const model = this.standalone_code_editor.getModel()\n\n if (model) {\n model.dispose()\n }\n\n this.standalone_code_editor.dispose()\n }\n }\n\n _mountEditor() {\n const { loader: loaderConfig, ...editorOpts } = this.opts\n editorOpts.value = this.value\n\n const defaultLoaderConfig = {\n paths: { vs: \"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs\" },\n }\n\n loader.config(loaderConfig || defaultLoaderConfig)\n\n loader.init().then((monaco) => {\n monaco.editor.defineTheme(\"default\", theme)\n\n let modelUri = monaco.Uri.parse(this.path)\n let language = editorOpts.language\n let model = monaco.editor.createModel(this.value, language, modelUri)\n\n editorOpts.language = undefined\n editorOpts.model = model\n this.standalone_code_editor = monaco.editor.create(this.el, editorOpts)\n\n this._onMount.forEach((callback) => callback(monaco))\n\n this._setScreenDependantEditorOptions()\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"enable-word-wrapping\",\n label: \"Enable word wrapping\",\n precondition: \"config.editor.wordWrap == off\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"on\" }),\n })\n\n this.standalone_code_editor.addAction({\n contextMenuGroupId: \"word-wrapping\",\n id: \"disable-word-wrapping\",\n label: \"Disable word wrapping\",\n precondition: \"config.editor.wordWrap == on\",\n keybindings: [monaco.KeyMod.Alt | monaco.KeyCode.KeyZ],\n run: (editor) => editor.updateOptions({ wordWrap: \"off\" }),\n })\n\n const resizeObserver = new ResizeObserver((entries) => {\n entries.forEach(() => {\n if (this.el.offsetHeight > 0) {\n this._setScreenDependantEditorOptions()\n this.standalone_code_editor.layout()\n }\n })\n })\n\n resizeObserver.observe(this.el)\n\n this.standalone_code_editor.onDidContentSizeChange(() => {\n const contentHeight = this.standalone_code_editor.getContentHeight()\n this.el.style.height = `${contentHeight}px`\n })\n })\n }\n\n _setScreenDependantEditorOptions() {\n if (window.screen.width < 768) {\n this.standalone_code_editor.updateOptions({\n folding: false,\n lineDecorationsWidth: 16,\n lineNumbersMinChars:\n Math.floor(\n Math.log10(this.standalone_code_editor.getModel().getLineCount())\n ) + 3,\n })\n } else {\n this.standalone_code_editor.updateOptions({\n folding: true,\n lineDecorationsWidth: 10,\n lineNumbersMinChars: 5,\n })\n }\n }\n}\n\nexport default CodeEditor\n", "import CodeEditor from \"../editor/code_editor\"\n\nconst CodeEditorHook = {\n mounted() {\n // TODO: validate dataset\n const opts = JSON.parse(this.el.dataset.opts)\n\n this.codeEditor = new CodeEditor(\n this.el,\n this.el.dataset.path,\n this.el.dataset.value,\n opts\n )\n\n this.codeEditor.onMount((monaco) => {\n if (this.el.dataset.changeEvent && this.el.dataset.changeEvent !== \"\") {\n this.codeEditor.standalone_code_editor.onDidChangeModelContent(() => {\n if (this.el.dataset.target && this.el.dataset.target !== \"\") {\n this.pushEventTo(\n this.el.dataset.target,\n this.el.dataset.changeEvent,\n {\n value: this.codeEditor.standalone_code_editor.getValue(),\n }\n )\n } else {\n this.pushEvent(this.el.dataset.changeEvent, {\n value: this.codeEditor.standalone_code_editor.getValue(),\n })\n }\n })\n }\n\n this.handleEvent(\n \"lme:change_language:\" + this.el.dataset.path,\n (data) => {\n const model = this.codeEditor.standalone_code_editor.getModel()\n\n if (model.getLanguageId() !== data.mimeTypeOrLanguageId) {\n monaco.editor.setModelLanguage(model, data.mimeTypeOrLanguageId)\n }\n }\n )\n\n this.handleEvent(\"lme:set_value:\" + this.el.dataset.path, (data) => {\n this.codeEditor.standalone_code_editor.setValue(data.value)\n })\n\n this.el.querySelectorAll(\"textarea\").forEach((textarea) => {\n textarea.setAttribute(\n \"name\",\n \"live_monaco_editor[\" + this.el.dataset.path + \"]\"\n )\n })\n\n this.el.removeAttribute(\"data-value\")\n this.el.removeAttribute(\"data-opts\")\n\n this.el.dispatchEvent(\n new CustomEvent(\"lme:editor_mounted\", {\n detail: { hook: this, editor: this.codeEditor },\n bubbles: true,\n })\n )\n })\n\n if (!this.codeEditor.isMounted()) {\n this.codeEditor.mount()\n }\n },\n\n destroyed() {\n if (this.codeEditor) {\n this.codeEditor.dispose()\n }\n },\n}\n\nexport { CodeEditorHook }\n"], + "mappings": "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", + "names": ["live_monaco_editor_exports", "__export", "CodeEditorHook", "_defineProperty", "obj", "key", "value", "ownKeys", "object", "enumerableOnly", "keys", "symbols", "sym", "_objectSpread2", "target", "i", "source", "_objectWithoutPropertiesLoose", "excluded", "sourceKeys", "_objectWithoutProperties", "sourceSymbolKeys", "_slicedToArray", "arr", "_arrayWithHoles", "_iterableToArrayLimit", "_unsupportedIterableToArray", "_nonIterableRest", "_arr", "_n", "_d", "_e", "_i", "_s", "err", "o", "minLen", "_arrayLikeToArray", "len", "arr2", "_defineProperty", "obj", "key", "value", "ownKeys", "object", "enumerableOnly", "keys", "symbols", "sym", "_objectSpread2", "target", "i", "source", "compose", "_len", "fns", "_key", "x", "y", "f", "curry", "fn", "curried", "_this", "_len2", "args", "_key2", "_len3", "nextArgs", "_key3", "isObject", "isEmpty", "isFunction", "hasOwnProperty", "property", "validateChanges", "initial", "changes", "errorHandler", "field", "validateSelector", "selector", "validateHandler", "handler", "_handler", "validateInitial", "throwError", "errorMessages", "type", "validators", "create", "state", "didUpdate", "didStateUpdate", "update", "updateState", "validate", "getChanges", "extractChanges", "getState", "setState", "causedChanges", "_handler$field", "index", "state_local_default", "config", "config_default", "curry", "fn", "curried", "_this", "_len", "args", "_key", "_len2", "nextArgs", "_key2", "curry_default", "isObject", "value", "isObject_default", "validateConfig", "config", "errorHandler", "isObject_default", "informAboutDeprecation", "errorMessages", "throwError", "type", "curry_default", "validators", "validators_default", "compose", "_len", "fns", "_key", "x", "y", "f", "compose_default", "merge", "target", "source", "key", "_objectSpread2", "deepMerge_default", "CANCELATION_MESSAGE", "makeCancelable", "promise", "hasCanceled_", "wrappedPromise", "resolve", "reject", "val", "makeCancelable_default", "_state$create", "state_local_default", "config_default", "_state$create2", "_slicedToArray", "getState", "setState", "config", "globalConfig", "_validators$config", "validators_default", "monaco", "_objectWithoutProperties", "state", "deepMerge_default", "init", "_ref", "isInitialized", "resolve", "makeCancelable_default", "wrapperPromise", "storeMonacoInstance", "compose_default", "injectScripts", "getMonacoLoaderScript", "configureLoader", "script", "createScript", "src", "_ref2", "reject", "loaderScript", "_ref3", "require", "error", "__getMonacoInstance", "_ref4", "loader", "loader_default", "colors", "rules", "theme", "CodeEditor", "el", "path", "value", "opts", "callback", "model", "_a", "loaderConfig", "editorOpts", "__objRest", "defaultLoaderConfig", "loader_default", "monaco", "theme", "modelUri", "language", "editor", "entries", "contentHeight", "code_editor_default", "CodeEditorHook", "opts", "code_editor_default", "monaco", "data", "model", "textarea"] }