All Downloads are FREE. Search and download functionalities are using the official Maven repository.

theme.keycloak.v2.admin.resources.assets.CodeEditor-CIeIZGz7.js.map Maven / Gradle / Ivy

There is a newer version: 26.0.7
Show newest version
{"version":3,"file":"CodeEditor-CIeIZGz7.js","sources":["../../../../../node_modules/.pnpm/@[email protected]/node_modules/@patternfly/react-styles/css/components/FileUpload/file-upload.mjs","../../../../../node_modules/.pnpm/[email protected]/node_modules/prop-types/lib/ReactPropTypesSecret.js","../../../../../node_modules/.pnpm/[email protected]/node_modules/prop-types/factoryWithThrowingShims.js","../../../../../node_modules/.pnpm/[email protected]/node_modules/prop-types/index.js","../../../../../node_modules/.pnpm/[email protected]/node_modules/file-selector/dist/es5/file.js","../../../../../node_modules/.pnpm/[email protected]/node_modules/file-selector/dist/es5/file-selector.js","../../../../../node_modules/.pnpm/[email protected]/node_modules/attr-accept/dist/es/index.js","../../../../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dropzone/dist/es/utils/index.js","../../../../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dropzone/dist/es/index.js","../../../../../node_modules/.pnpm/@[email protected][email protected][email protected][email protected]/node_modules/@patternfly/react-icons/dist/esm/icons/code-icon.js","../../../../../node_modules/.pnpm/@[email protected][email protected][email protected][email protected]/node_modules/@patternfly/react-icons/dist/esm/icons/download-icon.js","../../../../../node_modules/.pnpm/@[email protected][email protected][email protected][email protected]/node_modules/@patternfly/react-icons/dist/esm/icons/upload-icon.js","../../../../../node_modules/.pnpm/@[email protected]/node_modules/@patternfly/react-styles/css/components/CodeEditor/code-editor.mjs","../../../../../node_modules/.pnpm/@[email protected][email protected]/node_modules/@monaco-editor/loader/lib/es/_virtual/_rollupPluginBabelHelpers.js","../../../../../node_modules/.pnpm/[email protected]/node_modules/state-local/lib/es/state-local.js","../../../../../node_modules/.pnpm/@[email protected][email protected]/node_modules/@monaco-editor/loader/lib/es/config/index.js","../../../../../node_modules/.pnpm/@[email protected][email protected]/node_modules/@monaco-editor/loader/lib/es/utils/curry.js","../../../../../node_modules/.pnpm/@[email protected][email protected]/node_modules/@monaco-editor/loader/lib/es/utils/isObject.js","../../../../../node_modules/.pnpm/@[email protected][email protected]/node_modules/@monaco-editor/loader/lib/es/validators/index.js","../../../../../node_modules/.pnpm/@[email protected][email protected]/node_modules/@monaco-editor/loader/lib/es/utils/compose.js","../../../../../node_modules/.pnpm/@[email protected][email protected]/node_modules/@monaco-editor/loader/lib/es/utils/deepMerge.js","../../../../../node_modules/.pnpm/@[email protected][email protected]/node_modules/@monaco-editor/loader/lib/es/utils/makeCancelable.js","../../../../../node_modules/.pnpm/@[email protected][email protected]/node_modules/@monaco-editor/loader/lib/es/loader/index.js","../../../../../node_modules/.pnpm/@[email protected][email protected][email protected][email protected][email protected]/node_modules/@monaco-editor/react/dist/index.mjs","../../../../../node_modules/.pnpm/@[email protected][email protected][email protected][email protected][email protected]/node_modules/@patternfly/react-code-editor/dist/esm/components/CodeEditor/CodeEditorUtils.js","../../../../../node_modules/.pnpm/@[email protected][email protected][email protected][email protected][email protected]/node_modules/@patternfly/react-code-editor/dist/esm/components/CodeEditor/CodeEditorControl.js","../../../../../node_modules/.pnpm/@[email protected][email protected][email protected][email protected][email protected]/node_modules/@patternfly/react-code-editor/dist/esm/components/CodeEditor/CodeEditor.js"],"sourcesContent":["import './file-upload.css';\nexport default {\n  \"button\": \"pf-v5-c-button\",\n  \"fileUpload\": \"pf-v5-c-file-upload\",\n  \"fileUploadFileDetails\": \"pf-v5-c-file-upload__file-details\",\n  \"fileUploadFileDetailsSpinner\": \"pf-v5-c-file-upload__file-details-spinner\",\n  \"fileUploadFileSelect\": \"pf-v5-c-file-upload__file-select\",\n  \"formControl\": \"pf-v5-c-form-control\",\n  \"modifiers\": {\n    \"dragHover\": \"pf-m-drag-hover\",\n    \"loading\": \"pf-m-loading\",\n    \"control\": \"pf-m-control\"\n  }\n};","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n  function shim(props, propName, componentName, location, propFullName, secret) {\n    if (secret === ReactPropTypesSecret) {\n      // It is still safe when called from React.\n      return;\n    }\n    var err = new Error(\n      'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n      'Use PropTypes.checkPropTypes() to call them. ' +\n      'Read more at http://fb.me/use-check-prop-types'\n    );\n    err.name = 'Invariant Violation';\n    throw err;\n  };\n  shim.isRequired = shim;\n  function getShim() {\n    return shim;\n  };\n  // Important!\n  // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n  var ReactPropTypes = {\n    array: shim,\n    bigint: shim,\n    bool: shim,\n    func: shim,\n    number: shim,\n    object: shim,\n    string: shim,\n    symbol: shim,\n\n    any: shim,\n    arrayOf: getShim,\n    element: shim,\n    elementType: shim,\n    instanceOf: getShim,\n    node: shim,\n    objectOf: getShim,\n    oneOf: getShim,\n    oneOfType: getShim,\n    shape: getShim,\n    exact: getShim,\n\n    checkPropTypes: emptyFunctionWithReset,\n    resetWarningCache: emptyFunction\n  };\n\n  ReactPropTypes.PropTypes = ReactPropTypes;\n\n  return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n  var ReactIs = require('react-is');\n\n  // By explicitly using `prop-types` you are opting into new development behavior.\n  // http://fb.me/prop-types-in-prod\n  var throwOnDirectAccess = true;\n  module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n  // By explicitly using `prop-types` you are opting into new production behavior.\n  // http://fb.me/prop-types-in-prod\n  module.exports = require('./factoryWithThrowingShims')();\n}\n","export var COMMON_MIME_TYPES = new Map([\n    // https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types\n    ['aac', 'audio/aac'],\n    ['abw', 'application/x-abiword'],\n    ['arc', 'application/x-freearc'],\n    ['avif', 'image/avif'],\n    ['avi', 'video/x-msvideo'],\n    ['azw', 'application/vnd.amazon.ebook'],\n    ['bin', 'application/octet-stream'],\n    ['bmp', 'image/bmp'],\n    ['bz', 'application/x-bzip'],\n    ['bz2', 'application/x-bzip2'],\n    ['cda', 'application/x-cdf'],\n    ['csh', 'application/x-csh'],\n    ['css', 'text/css'],\n    ['csv', 'text/csv'],\n    ['doc', 'application/msword'],\n    ['docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'],\n    ['eot', 'application/vnd.ms-fontobject'],\n    ['epub', 'application/epub+zip'],\n    ['gz', 'application/gzip'],\n    ['gif', 'image/gif'],\n    ['heic', 'image/heic'],\n    ['heif', 'image/heif'],\n    ['htm', 'text/html'],\n    ['html', 'text/html'],\n    ['ico', 'image/vnd.microsoft.icon'],\n    ['ics', 'text/calendar'],\n    ['jar', 'application/java-archive'],\n    ['jpeg', 'image/jpeg'],\n    ['jpg', 'image/jpeg'],\n    ['js', 'text/javascript'],\n    ['json', 'application/json'],\n    ['jsonld', 'application/ld+json'],\n    ['mid', 'audio/midi'],\n    ['midi', 'audio/midi'],\n    ['mjs', 'text/javascript'],\n    ['mp3', 'audio/mpeg'],\n    ['mp4', 'video/mp4'],\n    ['mpeg', 'video/mpeg'],\n    ['mpkg', 'application/vnd.apple.installer+xml'],\n    ['odp', 'application/vnd.oasis.opendocument.presentation'],\n    ['ods', 'application/vnd.oasis.opendocument.spreadsheet'],\n    ['odt', 'application/vnd.oasis.opendocument.text'],\n    ['oga', 'audio/ogg'],\n    ['ogv', 'video/ogg'],\n    ['ogx', 'application/ogg'],\n    ['opus', 'audio/opus'],\n    ['otf', 'font/otf'],\n    ['png', 'image/png'],\n    ['pdf', 'application/pdf'],\n    ['php', 'application/x-httpd-php'],\n    ['ppt', 'application/vnd.ms-powerpoint'],\n    ['pptx', 'application/vnd.openxmlformats-officedocument.presentationml.presentation'],\n    ['rar', 'application/vnd.rar'],\n    ['rtf', 'application/rtf'],\n    ['sh', 'application/x-sh'],\n    ['svg', 'image/svg+xml'],\n    ['swf', 'application/x-shockwave-flash'],\n    ['tar', 'application/x-tar'],\n    ['tif', 'image/tiff'],\n    ['tiff', 'image/tiff'],\n    ['ts', 'video/mp2t'],\n    ['ttf', 'font/ttf'],\n    ['txt', 'text/plain'],\n    ['vsd', 'application/vnd.visio'],\n    ['wav', 'audio/wav'],\n    ['weba', 'audio/webm'],\n    ['webm', 'video/webm'],\n    ['webp', 'image/webp'],\n    ['woff', 'font/woff'],\n    ['woff2', 'font/woff2'],\n    ['xhtml', 'application/xhtml+xml'],\n    ['xls', 'application/vnd.ms-excel'],\n    ['xlsx', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'],\n    ['xml', 'application/xml'],\n    ['xul', 'application/vnd.mozilla.xul+xml'],\n    ['zip', 'application/zip'],\n    ['7z', 'application/x-7z-compressed'],\n    // Others\n    ['mkv', 'video/x-matroska'],\n    ['mov', 'video/quicktime'],\n    ['msg', 'application/vnd.ms-outlook']\n]);\nexport function toFileWithPath(file, path) {\n    var f = withMimeType(file);\n    if (typeof f.path !== 'string') { // on electron, path is already set to the absolute path\n        var webkitRelativePath = file.webkitRelativePath;\n        Object.defineProperty(f, 'path', {\n            value: typeof path === 'string'\n                ? path\n                // If  is set,\n                // the File will have a {webkitRelativePath} property\n                // https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/webkitdirectory\n                : typeof webkitRelativePath === 'string' && webkitRelativePath.length > 0\n                    ? webkitRelativePath\n                    : file.name,\n            writable: false,\n            configurable: false,\n            enumerable: true\n        });\n    }\n    return f;\n}\nfunction withMimeType(file) {\n    var name = file.name;\n    var hasExtension = name && name.lastIndexOf('.') !== -1;\n    if (hasExtension && !file.type) {\n        var ext = name.split('.')\n            .pop().toLowerCase();\n        var type = COMMON_MIME_TYPES.get(ext);\n        if (type) {\n            Object.defineProperty(file, 'type', {\n                value: type,\n                writable: false,\n                configurable: false,\n                enumerable: true\n            });\n        }\n    }\n    return file;\n}\n//# sourceMappingURL=file.js.map","import { __awaiter, __generator, __read, __spreadArray } from \"tslib\";\nimport { toFileWithPath } from './file';\nvar FILES_TO_IGNORE = [\n    // Thumbnail cache files for macOS and Windows\n    '.DS_Store',\n    'Thumbs.db' // Windows\n];\n/**\n * Convert a DragEvent's DataTrasfer object to a list of File objects\n * NOTE: If some of the items are folders,\n * everything will be flattened and placed in the same list but the paths will be kept as a {path} property.\n *\n * EXPERIMENTAL: A list of https://developer.mozilla.org/en-US/docs/Web/API/FileSystemHandle objects can also be passed as an arg\n * and a list of File objects will be returned.\n *\n * @param evt\n */\nexport function fromEvent(evt) {\n    return __awaiter(this, void 0, void 0, function () {\n        return __generator(this, function (_a) {\n            if (isObject(evt) && isDataTransfer(evt.dataTransfer)) {\n                return [2 /*return*/, getDataTransferFiles(evt.dataTransfer, evt.type)];\n            }\n            else if (isChangeEvt(evt)) {\n                return [2 /*return*/, getInputFiles(evt)];\n            }\n            else if (Array.isArray(evt) && evt.every(function (item) { return 'getFile' in item && typeof item.getFile === 'function'; })) {\n                return [2 /*return*/, getFsHandleFiles(evt)];\n            }\n            return [2 /*return*/, []];\n        });\n    });\n}\nfunction isDataTransfer(value) {\n    return isObject(value);\n}\nfunction isChangeEvt(value) {\n    return isObject(value) && isObject(value.target);\n}\nfunction isObject(v) {\n    return typeof v === 'object' && v !== null;\n}\nfunction getInputFiles(evt) {\n    return fromList(evt.target.files).map(function (file) { return toFileWithPath(file); });\n}\n// Ee expect each handle to be https://developer.mozilla.org/en-US/docs/Web/API/FileSystemFileHandle\nfunction getFsHandleFiles(handles) {\n    return __awaiter(this, void 0, void 0, function () {\n        var files;\n        return __generator(this, function (_a) {\n            switch (_a.label) {\n                case 0: return [4 /*yield*/, Promise.all(handles.map(function (h) { return h.getFile(); }))];\n                case 1:\n                    files = _a.sent();\n                    return [2 /*return*/, files.map(function (file) { return toFileWithPath(file); })];\n            }\n        });\n    });\n}\nfunction getDataTransferFiles(dt, type) {\n    return __awaiter(this, void 0, void 0, function () {\n        var items, files;\n        return __generator(this, function (_a) {\n            switch (_a.label) {\n                case 0:\n                    if (!dt.items) return [3 /*break*/, 2];\n                    items = fromList(dt.items)\n                        .filter(function (item) { return item.kind === 'file'; });\n                    // According to https://html.spec.whatwg.org/multipage/dnd.html#dndevents,\n                    // only 'dragstart' and 'drop' has access to the data (source node)\n                    if (type !== 'drop') {\n                        return [2 /*return*/, items];\n                    }\n                    return [4 /*yield*/, Promise.all(items.map(toFilePromises))];\n                case 1:\n                    files = _a.sent();\n                    return [2 /*return*/, noIgnoredFiles(flatten(files))];\n                case 2: return [2 /*return*/, noIgnoredFiles(fromList(dt.files)\n                        .map(function (file) { return toFileWithPath(file); }))];\n            }\n        });\n    });\n}\nfunction noIgnoredFiles(files) {\n    return files.filter(function (file) { return FILES_TO_IGNORE.indexOf(file.name) === -1; });\n}\n// IE11 does not support Array.from()\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/from#Browser_compatibility\n// https://developer.mozilla.org/en-US/docs/Web/API/FileList\n// https://developer.mozilla.org/en-US/docs/Web/API/DataTransferItemList\nfunction fromList(items) {\n    if (items === null) {\n        return [];\n    }\n    var files = [];\n    // tslint:disable: prefer-for-of\n    for (var i = 0; i < items.length; i++) {\n        var file = items[i];\n        files.push(file);\n    }\n    return files;\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/DataTransferItem\nfunction toFilePromises(item) {\n    if (typeof item.webkitGetAsEntry !== 'function') {\n        return fromDataTransferItem(item);\n    }\n    var entry = item.webkitGetAsEntry();\n    // Safari supports dropping an image node from a different window and can be retrieved using\n    // the DataTransferItem.getAsFile() API\n    // NOTE: FileSystemEntry.file() throws if trying to get the file\n    if (entry && entry.isDirectory) {\n        return fromDirEntry(entry);\n    }\n    return fromDataTransferItem(item);\n}\nfunction flatten(items) {\n    return items.reduce(function (acc, files) { return __spreadArray(__spreadArray([], __read(acc), false), __read((Array.isArray(files) ? flatten(files) : [files])), false); }, []);\n}\nfunction fromDataTransferItem(item) {\n    var file = item.getAsFile();\n    if (!file) {\n        return Promise.reject(\"\".concat(item, \" is not a File\"));\n    }\n    var fwp = toFileWithPath(file);\n    return Promise.resolve(fwp);\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemEntry\nfunction fromEntry(entry) {\n    return __awaiter(this, void 0, void 0, function () {\n        return __generator(this, function (_a) {\n            return [2 /*return*/, entry.isDirectory ? fromDirEntry(entry) : fromFileEntry(entry)];\n        });\n    });\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryEntry\nfunction fromDirEntry(entry) {\n    var reader = entry.createReader();\n    return new Promise(function (resolve, reject) {\n        var entries = [];\n        function readEntries() {\n            var _this = this;\n            // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryEntry/createReader\n            // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryReader/readEntries\n            reader.readEntries(function (batch) { return __awaiter(_this, void 0, void 0, function () {\n                var files, err_1, items;\n                return __generator(this, function (_a) {\n                    switch (_a.label) {\n                        case 0:\n                            if (!!batch.length) return [3 /*break*/, 5];\n                            _a.label = 1;\n                        case 1:\n                            _a.trys.push([1, 3, , 4]);\n                            return [4 /*yield*/, Promise.all(entries)];\n                        case 2:\n                            files = _a.sent();\n                            resolve(files);\n                            return [3 /*break*/, 4];\n                        case 3:\n                            err_1 = _a.sent();\n                            reject(err_1);\n                            return [3 /*break*/, 4];\n                        case 4: return [3 /*break*/, 6];\n                        case 5:\n                            items = Promise.all(batch.map(fromEntry));\n                            entries.push(items);\n                            // Continue reading\n                            readEntries();\n                            _a.label = 6;\n                        case 6: return [2 /*return*/];\n                    }\n                });\n            }); }, function (err) {\n                reject(err);\n            });\n        }\n        readEntries();\n    });\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/FileSystemFileEntry\nfunction fromFileEntry(entry) {\n    return __awaiter(this, void 0, void 0, function () {\n        return __generator(this, function (_a) {\n            return [2 /*return*/, new Promise(function (resolve, reject) {\n                    entry.file(function (file) {\n                        var fwp = toFileWithPath(file, entry.fullPath);\n                        resolve(fwp);\n                    }, function (err) {\n                        reject(err);\n                    });\n                })];\n        });\n    });\n}\n//# sourceMappingURL=file-selector.js.map","\"use strict\";\n\nexports.__esModule = true;\n\nexports.default = function (file, acceptedFiles) {\n  if (file && acceptedFiles) {\n    var acceptedFilesArray = Array.isArray(acceptedFiles) ? acceptedFiles : acceptedFiles.split(',');\n    var fileName = file.name || '';\n    var mimeType = (file.type || '').toLowerCase();\n    var baseMimeType = mimeType.replace(/\\/.*$/, '');\n    return acceptedFilesArray.some(function (type) {\n      var validType = type.trim().toLowerCase();\n\n      if (validType.charAt(0) === '.') {\n        return fileName.toLowerCase().endsWith(validType);\n      } else if (validType.endsWith('/*')) {\n        // This is something like a image/* mime type\n        return baseMimeType === validType.replace(/\\/.*$/, '');\n      }\n\n      return mimeType === validType;\n    });\n  }\n\n  return true;\n};","function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { 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\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nimport accepts from \"attr-accept\"; // Error codes\n\nexport var FILE_INVALID_TYPE = \"file-invalid-type\";\nexport var FILE_TOO_LARGE = \"file-too-large\";\nexport var FILE_TOO_SMALL = \"file-too-small\";\nexport var TOO_MANY_FILES = \"too-many-files\";\nexport var ErrorCode = {\n  FileInvalidType: FILE_INVALID_TYPE,\n  FileTooLarge: FILE_TOO_LARGE,\n  FileTooSmall: FILE_TOO_SMALL,\n  TooManyFiles: TOO_MANY_FILES\n}; // File Errors\n\nexport var getInvalidTypeRejectionErr = function getInvalidTypeRejectionErr(accept) {\n  accept = Array.isArray(accept) && accept.length === 1 ? accept[0] : accept;\n  var messageSuffix = Array.isArray(accept) ? \"one of \".concat(accept.join(\", \")) : accept;\n  return {\n    code: FILE_INVALID_TYPE,\n    message: \"File type must be \".concat(messageSuffix)\n  };\n};\nexport var getTooLargeRejectionErr = function getTooLargeRejectionErr(maxSize) {\n  return {\n    code: FILE_TOO_LARGE,\n    message: \"File is larger than \".concat(maxSize, \" \").concat(maxSize === 1 ? \"byte\" : \"bytes\")\n  };\n};\nexport var getTooSmallRejectionErr = function getTooSmallRejectionErr(minSize) {\n  return {\n    code: FILE_TOO_SMALL,\n    message: \"File is smaller than \".concat(minSize, \" \").concat(minSize === 1 ? \"byte\" : \"bytes\")\n  };\n};\nexport var TOO_MANY_FILES_REJECTION = {\n  code: TOO_MANY_FILES,\n  message: \"Too many files\"\n}; // Firefox versions prior to 53 return a bogus MIME type for every file drag, so dragovers with\n// that MIME type will always be accepted\n\nexport function fileAccepted(file, accept) {\n  var isAcceptable = file.type === \"application/x-moz-file\" || accepts(file, accept);\n  return [isAcceptable, isAcceptable ? null : getInvalidTypeRejectionErr(accept)];\n}\nexport function fileMatchSize(file, minSize, maxSize) {\n  if (isDefined(file.size)) {\n    if (isDefined(minSize) && isDefined(maxSize)) {\n      if (file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)];\n      if (file.size < minSize) return [false, getTooSmallRejectionErr(minSize)];\n    } else if (isDefined(minSize) && file.size < minSize) return [false, getTooSmallRejectionErr(minSize)];else if (isDefined(maxSize) && file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)];\n  }\n\n  return [true, null];\n}\n\nfunction isDefined(value) {\n  return value !== undefined && value !== null;\n}\n/**\n *\n * @param {object} options\n * @param {File[]} options.files\n * @param {string|string[]} [options.accept]\n * @param {number} [options.minSize]\n * @param {number} [options.maxSize]\n * @param {boolean} [options.multiple]\n * @param {number} [options.maxFiles]\n * @param {(f: File) => FileError|FileError[]|null} [options.validator]\n * @returns\n */\n\n\nexport function allFilesAccepted(_ref) {\n  var files = _ref.files,\n      accept = _ref.accept,\n      minSize = _ref.minSize,\n      maxSize = _ref.maxSize,\n      multiple = _ref.multiple,\n      maxFiles = _ref.maxFiles,\n      validator = _ref.validator;\n\n  if (!multiple && files.length > 1 || multiple && maxFiles >= 1 && files.length > maxFiles) {\n    return false;\n  }\n\n  return files.every(function (file) {\n    var _fileAccepted = fileAccepted(file, accept),\n        _fileAccepted2 = _slicedToArray(_fileAccepted, 1),\n        accepted = _fileAccepted2[0];\n\n    var _fileMatchSize = fileMatchSize(file, minSize, maxSize),\n        _fileMatchSize2 = _slicedToArray(_fileMatchSize, 1),\n        sizeMatch = _fileMatchSize2[0];\n\n    var customErrors = validator ? validator(file) : null;\n    return accepted && sizeMatch && !customErrors;\n  });\n} // React's synthetic events has event.isPropagationStopped,\n// but to remain compatibility with other libs (Preact) fall back\n// to check event.cancelBubble\n\nexport function isPropagationStopped(event) {\n  if (typeof event.isPropagationStopped === \"function\") {\n    return event.isPropagationStopped();\n  } else if (typeof event.cancelBubble !== \"undefined\") {\n    return event.cancelBubble;\n  }\n\n  return false;\n}\nexport function isEvtWithFiles(event) {\n  if (!event.dataTransfer) {\n    return !!event.target && !!event.target.files;\n  } // https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer/types\n  // https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API/Recommended_drag_types#file\n\n\n  return Array.prototype.some.call(event.dataTransfer.types, function (type) {\n    return type === \"Files\" || type === \"application/x-moz-file\";\n  });\n}\nexport function isKindFile(item) {\n  return _typeof(item) === \"object\" && item !== null && item.kind === \"file\";\n} // allow the entire document to be a drag target\n\nexport function onDocumentDragOver(event) {\n  event.preventDefault();\n}\n\nfunction isIe(userAgent) {\n  return userAgent.indexOf(\"MSIE\") !== -1 || userAgent.indexOf(\"Trident/\") !== -1;\n}\n\nfunction isEdge(userAgent) {\n  return userAgent.indexOf(\"Edge/\") !== -1;\n}\n\nexport function isIeOrEdge() {\n  var userAgent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window.navigator.userAgent;\n  return isIe(userAgent) || isEdge(userAgent);\n}\n/**\n * This is intended to be used to compose event handlers\n * They are executed in order until one of them calls `event.isPropagationStopped()`.\n * Note that the check is done on the first invoke too,\n * meaning that if propagation was stopped before invoking the fns,\n * no handlers will be executed.\n *\n * @param {Function} fns the event hanlder functions\n * @return {Function} the event handler to add to an element\n */\n\nexport function composeEventHandlers() {\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 (event) {\n    for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n      args[_key2 - 1] = arguments[_key2];\n    }\n\n    return fns.some(function (fn) {\n      if (!isPropagationStopped(event) && fn) {\n        fn.apply(void 0, [event].concat(args));\n      }\n\n      return isPropagationStopped(event);\n    });\n  };\n}\n/**\n * canUseFileSystemAccessAPI checks if the [File System Access API](https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API)\n * is supported by the browser.\n * @returns {boolean}\n */\n\nexport function canUseFileSystemAccessAPI() {\n  return \"showOpenFilePicker\" in window;\n}\n/**\n * Convert the `{accept}` dropzone prop to the\n * `{types}` option for https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker\n *\n * @param {AcceptProp} accept\n * @returns {{accept: string[]}[]}\n */\n\nexport function pickerOptionsFromAccept(accept) {\n  if (isDefined(accept)) {\n    var acceptForPicker = Object.entries(accept).filter(function (_ref2) {\n      var _ref3 = _slicedToArray(_ref2, 2),\n          mimeType = _ref3[0],\n          ext = _ref3[1];\n\n      var ok = true;\n\n      if (!isMIMEType(mimeType)) {\n        console.warn(\"Skipped \\\"\".concat(mimeType, \"\\\" because it is not a valid MIME type. Check https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types for a list of valid MIME types.\"));\n        ok = false;\n      }\n\n      if (!Array.isArray(ext) || !ext.every(isExt)) {\n        console.warn(\"Skipped \\\"\".concat(mimeType, \"\\\" because an invalid file extension was provided.\"));\n        ok = false;\n      }\n\n      return ok;\n    }).reduce(function (agg, _ref4) {\n      var _ref5 = _slicedToArray(_ref4, 2),\n          mimeType = _ref5[0],\n          ext = _ref5[1];\n\n      return _objectSpread(_objectSpread({}, agg), {}, _defineProperty({}, mimeType, ext));\n    }, {});\n    return [{\n      // description is required due to https://crbug.com/1264708\n      description: \"Files\",\n      accept: acceptForPicker\n    }];\n  }\n\n  return accept;\n}\n/**\n * Convert the `{accept}` dropzone prop to an array of MIME types/extensions.\n * @param {AcceptProp} accept\n * @returns {string}\n */\n\nexport function acceptPropAsAcceptAttr(accept) {\n  if (isDefined(accept)) {\n    return Object.entries(accept).reduce(function (a, _ref6) {\n      var _ref7 = _slicedToArray(_ref6, 2),\n          mimeType = _ref7[0],\n          ext = _ref7[1];\n\n      return [].concat(_toConsumableArray(a), [mimeType], _toConsumableArray(ext));\n    }, []) // Silently discard invalid entries as pickerOptionsFromAccept warns about these\n    .filter(function (v) {\n      return isMIMEType(v) || isExt(v);\n    }).join(\",\");\n  }\n\n  return undefined;\n}\n/**\n * Check if v is an exception caused by aborting a request (e.g window.showOpenFilePicker()).\n *\n * See https://developer.mozilla.org/en-US/docs/Web/API/DOMException.\n * @param {any} v\n * @returns {boolean} True if v is an abort exception.\n */\n\nexport function isAbort(v) {\n  return v instanceof DOMException && (v.name === \"AbortError\" || v.code === v.ABORT_ERR);\n}\n/**\n * Check if v is a security error.\n *\n * See https://developer.mozilla.org/en-US/docs/Web/API/DOMException.\n * @param {any} v\n * @returns {boolean} True if v is a security error.\n */\n\nexport function isSecurityError(v) {\n  return v instanceof DOMException && (v.name === \"SecurityError\" || v.code === v.SECURITY_ERR);\n}\n/**\n * Check if v is a MIME type string.\n *\n * See accepted format: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#unique_file_type_specifiers.\n *\n * @param {string} v\n */\n\nexport function isMIMEType(v) {\n  return v === \"audio/*\" || v === \"video/*\" || v === \"image/*\" || v === \"text/*\" || /\\w+\\/[-+.\\w]+/g.test(v);\n}\n/**\n * Check if v is a file extension.\n * @param {string} v\n */\n\nexport function isExt(v) {\n  return /^.*\\.[\\w]+$/.test(v);\n}\n/**\n * @typedef {Object.} AcceptProp\n */\n\n/**\n * @typedef {object} FileError\n * @property {string} message\n * @property {ErrorCode|string} code\n */\n\n/**\n * @typedef {\"file-invalid-type\"|\"file-too-large\"|\"file-too-small\"|\"too-many-files\"} ErrorCode\n */","var _excluded = [\"children\"],\n    _excluded2 = [\"open\"],\n    _excluded3 = [\"refKey\", \"role\", \"onKeyDown\", \"onFocus\", \"onBlur\", \"onClick\", \"onDragEnter\", \"onDragOver\", \"onDragLeave\", \"onDrop\"],\n    _excluded4 = [\"refKey\", \"onChange\", \"onClick\"];\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { 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\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* eslint prefer-template: 0 */\nimport React, { forwardRef, Fragment, useCallback, useEffect, useImperativeHandle, useMemo, useReducer, useRef } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { fromEvent } from \"file-selector\";\nimport { acceptPropAsAcceptAttr, allFilesAccepted, composeEventHandlers, fileAccepted, fileMatchSize, canUseFileSystemAccessAPI, isAbort, isEvtWithFiles, isIeOrEdge, isPropagationStopped, isSecurityError, onDocumentDragOver, pickerOptionsFromAccept, TOO_MANY_FILES_REJECTION } from \"./utils/index\";\n/**\n * Convenience wrapper component for the `useDropzone` hook\n *\n * ```jsx\n * \n *   {({getRootProps, getInputProps}) => (\n *     
\n * \n *

Drag 'n' drop some files here, or click to select files

\n *
\n * )}\n *
\n * ```\n */\n\nvar Dropzone = /*#__PURE__*/forwardRef(function (_ref, ref) {\n var children = _ref.children,\n params = _objectWithoutProperties(_ref, _excluded);\n\n var _useDropzone = useDropzone(params),\n open = _useDropzone.open,\n props = _objectWithoutProperties(_useDropzone, _excluded2);\n\n useImperativeHandle(ref, function () {\n return {\n open: open\n };\n }, [open]); // TODO: Figure out why react-styleguidist cannot create docs if we don't return a jsx element\n\n return /*#__PURE__*/React.createElement(Fragment, null, children(_objectSpread(_objectSpread({}, props), {}, {\n open: open\n })));\n});\nDropzone.displayName = \"Dropzone\"; // Add default props for react-docgen\n\nvar defaultProps = {\n disabled: false,\n getFilesFromEvent: fromEvent,\n maxSize: Infinity,\n minSize: 0,\n multiple: true,\n maxFiles: 0,\n preventDropOnDocument: true,\n noClick: false,\n noKeyboard: false,\n noDrag: false,\n noDragEventsBubbling: false,\n validator: null,\n useFsAccessApi: true,\n autoFocus: false\n};\nDropzone.defaultProps = defaultProps;\nDropzone.propTypes = {\n /**\n * Render function that exposes the dropzone state and prop getter fns\n *\n * @param {object} params\n * @param {Function} params.getRootProps Returns the props you should apply to the root drop container you render\n * @param {Function} params.getInputProps Returns the props you should apply to hidden file input you render\n * @param {Function} params.open Open the native file selection dialog\n * @param {boolean} params.isFocused Dropzone area is in focus\n * @param {boolean} params.isFileDialogActive File dialog is opened\n * @param {boolean} params.isDragActive Active drag is in progress\n * @param {boolean} params.isDragAccept Dragged files are accepted\n * @param {boolean} params.isDragReject Some dragged files are rejected\n * @param {File[]} params.acceptedFiles Accepted files\n * @param {FileRejection[]} params.fileRejections Rejected files and why they were rejected\n */\n children: PropTypes.func,\n\n /**\n * Set accepted file types.\n * Checkout https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker types option for more information.\n * Keep in mind that mime type determination is not reliable across platforms. CSV files,\n * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under\n * Windows. In some cases there might not be a mime type set at all (https://github.com/react-dropzone/react-dropzone/issues/276).\n */\n accept: PropTypes.objectOf(PropTypes.arrayOf(PropTypes.string)),\n\n /**\n * Allow drag 'n' drop (or selection from the file dialog) of multiple files\n */\n multiple: PropTypes.bool,\n\n /**\n * If false, allow dropped items to take over the current browser window\n */\n preventDropOnDocument: PropTypes.bool,\n\n /**\n * If true, disables click to open the native file selection dialog\n */\n noClick: PropTypes.bool,\n\n /**\n * If true, disables SPACE/ENTER to open the native file selection dialog.\n * Note that it also stops tracking the focus state.\n */\n noKeyboard: PropTypes.bool,\n\n /**\n * If true, disables drag 'n' drop\n */\n noDrag: PropTypes.bool,\n\n /**\n * If true, stops drag event propagation to parents\n */\n noDragEventsBubbling: PropTypes.bool,\n\n /**\n * Minimum file size (in bytes)\n */\n minSize: PropTypes.number,\n\n /**\n * Maximum file size (in bytes)\n */\n maxSize: PropTypes.number,\n\n /**\n * Maximum accepted number of files\n * The default value is 0 which means there is no limitation to how many files are accepted.\n */\n maxFiles: PropTypes.number,\n\n /**\n * Enable/disable the dropzone\n */\n disabled: PropTypes.bool,\n\n /**\n * Use this to provide a custom file aggregator\n *\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n getFilesFromEvent: PropTypes.func,\n\n /**\n * Cb for when closing the file dialog with no selection\n */\n onFileDialogCancel: PropTypes.func,\n\n /**\n * Cb for when opening the file dialog\n */\n onFileDialogOpen: PropTypes.func,\n\n /**\n * Set to true to use the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API\n * to open the file picker instead of using an `` click event.\n */\n useFsAccessApi: PropTypes.bool,\n\n /**\n * Set to true to focus the root element on render\n */\n autoFocus: PropTypes.bool,\n\n /**\n * Cb for when the `dragenter` event occurs.\n *\n * @param {DragEvent} event\n */\n onDragEnter: PropTypes.func,\n\n /**\n * Cb for when the `dragleave` event occurs\n *\n * @param {DragEvent} event\n */\n onDragLeave: PropTypes.func,\n\n /**\n * Cb for when the `dragover` event occurs\n *\n * @param {DragEvent} event\n */\n onDragOver: PropTypes.func,\n\n /**\n * Cb for when the `drop` event occurs.\n * Note that this callback is invoked after the `getFilesFromEvent` callback is done.\n *\n * Files are accepted or rejected based on the `accept`, `multiple`, `minSize` and `maxSize` props.\n * `accept` must be a valid [MIME type](http://www.iana.org/assignments/media-types/media-types.xhtml) according to [input element specification](https://www.w3.org/wiki/HTML/Elements/input/file) or a valid file extension.\n * If `multiple` is set to false and additional files are dropped,\n * all files besides the first will be rejected.\n * Any file which does not have a size in the [`minSize`, `maxSize`] range, will be rejected as well.\n *\n * Note that the `onDrop` callback will always be invoked regardless if the dropped files were accepted or rejected.\n * If you'd like to react to a specific scenario, use the `onDropAccepted`/`onDropRejected` props.\n *\n * `onDrop` will provide you with an array of [File](https://developer.mozilla.org/en-US/docs/Web/API/File) objects which you can then process and send to a server.\n * For example, with [SuperAgent](https://github.com/visionmedia/superagent) as a http/ajax library:\n *\n * ```js\n * function onDrop(acceptedFiles) {\n * const req = request.post('/upload')\n * acceptedFiles.forEach(file => {\n * req.attach(file.name, file)\n * })\n * req.end(callback)\n * }\n * ```\n *\n * @param {File[]} acceptedFiles\n * @param {FileRejection[]} fileRejections\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n onDrop: PropTypes.func,\n\n /**\n * Cb for when the `drop` event occurs.\n * Note that if no files are accepted, this callback is not invoked.\n *\n * @param {File[]} files\n * @param {(DragEvent|Event)} event\n */\n onDropAccepted: PropTypes.func,\n\n /**\n * Cb for when the `drop` event occurs.\n * Note that if no files are rejected, this callback is not invoked.\n *\n * @param {FileRejection[]} fileRejections\n * @param {(DragEvent|Event)} event\n */\n onDropRejected: PropTypes.func,\n\n /**\n * Cb for when there's some error from any of the promises.\n *\n * @param {Error} error\n */\n onError: PropTypes.func,\n\n /**\n * Custom validation function. It must return null if there's no errors.\n * @param {File} file\n * @returns {FileError|FileError[]|null}\n */\n validator: PropTypes.func\n};\nexport default Dropzone;\n/**\n * A function that is invoked for the `dragenter`,\n * `dragover` and `dragleave` events.\n * It is not invoked if the items are not files (such as link, text, etc.).\n *\n * @callback dragCb\n * @param {DragEvent} event\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n * It is not invoked if the items are not files (such as link, text, etc.).\n *\n * @callback dropCb\n * @param {File[]} acceptedFiles List of accepted files\n * @param {FileRejection[]} fileRejections List of rejected files and why they were rejected\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n * It is not invoked if the items are files (such as link, text, etc.).\n *\n * @callback dropAcceptedCb\n * @param {File[]} files List of accepted files that meet the given criteria\n * (`accept`, `multiple`, `minSize`, `maxSize`)\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is invoked for the `drop` or input change event.\n *\n * @callback dropRejectedCb\n * @param {File[]} files List of rejected files that do not meet the given criteria\n * (`accept`, `multiple`, `minSize`, `maxSize`)\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n */\n\n/**\n * A function that is used aggregate files,\n * in a asynchronous fashion, from drag or input change events.\n *\n * @callback getFilesFromEvent\n * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)\n * @returns {(File[]|Promise)}\n */\n\n/**\n * An object with the current dropzone state.\n *\n * @typedef {object} DropzoneState\n * @property {boolean} isFocused Dropzone area is in focus\n * @property {boolean} isFileDialogActive File dialog is opened\n * @property {boolean} isDragActive Active drag is in progress\n * @property {boolean} isDragAccept Dragged files are accepted\n * @property {boolean} isDragReject Some dragged files are rejected\n * @property {File[]} acceptedFiles Accepted files\n * @property {FileRejection[]} fileRejections Rejected files and why they were rejected\n */\n\n/**\n * An object with the dropzone methods.\n *\n * @typedef {object} DropzoneMethods\n * @property {Function} getRootProps Returns the props you should apply to the root drop container you render\n * @property {Function} getInputProps Returns the props you should apply to hidden file input you render\n * @property {Function} open Open the native file selection dialog\n */\n\nvar initialState = {\n isFocused: false,\n isFileDialogActive: false,\n isDragActive: false,\n isDragAccept: false,\n isDragReject: false,\n acceptedFiles: [],\n fileRejections: []\n};\n/**\n * A React hook that creates a drag 'n' drop area.\n *\n * ```jsx\n * function MyDropzone(props) {\n * const {getRootProps, getInputProps} = useDropzone({\n * onDrop: acceptedFiles => {\n * // do something with the File objects, e.g. upload to some server\n * }\n * });\n * return (\n *
\n * \n *

Drag and drop some files here, or click to select files

\n *
\n * )\n * }\n * ```\n *\n * @function useDropzone\n *\n * @param {object} props\n * @param {import(\"./utils\").AcceptProp} [props.accept] Set accepted file types.\n * Checkout https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker types option for more information.\n * Keep in mind that mime type determination is not reliable across platforms. CSV files,\n * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under\n * Windows. In some cases there might not be a mime type set at all (https://github.com/react-dropzone/react-dropzone/issues/276).\n * @param {boolean} [props.multiple=true] Allow drag 'n' drop (or selection from the file dialog) of multiple files\n * @param {boolean} [props.preventDropOnDocument=true] If false, allow dropped items to take over the current browser window\n * @param {boolean} [props.noClick=false] If true, disables click to open the native file selection dialog\n * @param {boolean} [props.noKeyboard=false] If true, disables SPACE/ENTER to open the native file selection dialog.\n * Note that it also stops tracking the focus state.\n * @param {boolean} [props.noDrag=false] If true, disables drag 'n' drop\n * @param {boolean} [props.noDragEventsBubbling=false] If true, stops drag event propagation to parents\n * @param {number} [props.minSize=0] Minimum file size (in bytes)\n * @param {number} [props.maxSize=Infinity] Maximum file size (in bytes)\n * @param {boolean} [props.disabled=false] Enable/disable the dropzone\n * @param {getFilesFromEvent} [props.getFilesFromEvent] Use this to provide a custom file aggregator\n * @param {Function} [props.onFileDialogCancel] Cb for when closing the file dialog with no selection\n * @param {boolean} [props.useFsAccessApi] Set to true to use the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API\n * to open the file picker instead of using an `` click event.\n * @param {boolean} autoFocus Set to true to auto focus the root element.\n * @param {Function} [props.onFileDialogOpen] Cb for when opening the file dialog\n * @param {dragCb} [props.onDragEnter] Cb for when the `dragenter` event occurs.\n * @param {dragCb} [props.onDragLeave] Cb for when the `dragleave` event occurs\n * @param {dragCb} [props.onDragOver] Cb for when the `dragover` event occurs\n * @param {dropCb} [props.onDrop] Cb for when the `drop` event occurs.\n * Note that this callback is invoked after the `getFilesFromEvent` callback is done.\n *\n * Files are accepted or rejected based on the `accept`, `multiple`, `minSize` and `maxSize` props.\n * `accept` must be an object with keys as a valid [MIME type](http://www.iana.org/assignments/media-types/media-types.xhtml) according to [input element specification](https://www.w3.org/wiki/HTML/Elements/input/file) and the value an array of file extensions (optional).\n * If `multiple` is set to false and additional files are dropped,\n * all files besides the first will be rejected.\n * Any file which does not have a size in the [`minSize`, `maxSize`] range, will be rejected as well.\n *\n * Note that the `onDrop` callback will always be invoked regardless if the dropped files were accepted or rejected.\n * If you'd like to react to a specific scenario, use the `onDropAccepted`/`onDropRejected` props.\n *\n * `onDrop` will provide you with an array of [File](https://developer.mozilla.org/en-US/docs/Web/API/File) objects which you can then process and send to a server.\n * For example, with [SuperAgent](https://github.com/visionmedia/superagent) as a http/ajax library:\n *\n * ```js\n * function onDrop(acceptedFiles) {\n * const req = request.post('/upload')\n * acceptedFiles.forEach(file => {\n * req.attach(file.name, file)\n * })\n * req.end(callback)\n * }\n * ```\n * @param {dropAcceptedCb} [props.onDropAccepted]\n * @param {dropRejectedCb} [props.onDropRejected]\n * @param {(error: Error) => void} [props.onError]\n *\n * @returns {DropzoneState & DropzoneMethods}\n */\n\nexport function useDropzone() {\n var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),\n accept = _defaultProps$props.accept,\n disabled = _defaultProps$props.disabled,\n getFilesFromEvent = _defaultProps$props.getFilesFromEvent,\n maxSize = _defaultProps$props.maxSize,\n minSize = _defaultProps$props.minSize,\n multiple = _defaultProps$props.multiple,\n maxFiles = _defaultProps$props.maxFiles,\n onDragEnter = _defaultProps$props.onDragEnter,\n onDragLeave = _defaultProps$props.onDragLeave,\n onDragOver = _defaultProps$props.onDragOver,\n onDrop = _defaultProps$props.onDrop,\n onDropAccepted = _defaultProps$props.onDropAccepted,\n onDropRejected = _defaultProps$props.onDropRejected,\n onFileDialogCancel = _defaultProps$props.onFileDialogCancel,\n onFileDialogOpen = _defaultProps$props.onFileDialogOpen,\n useFsAccessApi = _defaultProps$props.useFsAccessApi,\n autoFocus = _defaultProps$props.autoFocus,\n preventDropOnDocument = _defaultProps$props.preventDropOnDocument,\n noClick = _defaultProps$props.noClick,\n noKeyboard = _defaultProps$props.noKeyboard,\n noDrag = _defaultProps$props.noDrag,\n noDragEventsBubbling = _defaultProps$props.noDragEventsBubbling,\n onError = _defaultProps$props.onError,\n validator = _defaultProps$props.validator;\n\n var acceptAttr = useMemo(function () {\n return acceptPropAsAcceptAttr(accept);\n }, [accept]);\n var pickerTypes = useMemo(function () {\n return pickerOptionsFromAccept(accept);\n }, [accept]);\n var onFileDialogOpenCb = useMemo(function () {\n return typeof onFileDialogOpen === \"function\" ? onFileDialogOpen : noop;\n }, [onFileDialogOpen]);\n var onFileDialogCancelCb = useMemo(function () {\n return typeof onFileDialogCancel === \"function\" ? onFileDialogCancel : noop;\n }, [onFileDialogCancel]);\n /**\n * @constant\n * @type {React.MutableRefObject}\n */\n\n var rootRef = useRef(null);\n var inputRef = useRef(null);\n\n var _useReducer = useReducer(reducer, initialState),\n _useReducer2 = _slicedToArray(_useReducer, 2),\n state = _useReducer2[0],\n dispatch = _useReducer2[1];\n\n var isFocused = state.isFocused,\n isFileDialogActive = state.isFileDialogActive;\n var fsAccessApiWorksRef = useRef(typeof window !== \"undefined\" && window.isSecureContext && useFsAccessApi && canUseFileSystemAccessAPI()); // Update file dialog active state when the window is focused on\n\n var onWindowFocus = function onWindowFocus() {\n // Execute the timeout only if the file dialog is opened in the browser\n if (!fsAccessApiWorksRef.current && isFileDialogActive) {\n setTimeout(function () {\n if (inputRef.current) {\n var files = inputRef.current.files;\n\n if (!files.length) {\n dispatch({\n type: \"closeDialog\"\n });\n onFileDialogCancelCb();\n }\n }\n }, 300);\n }\n };\n\n useEffect(function () {\n window.addEventListener(\"focus\", onWindowFocus, false);\n return function () {\n window.removeEventListener(\"focus\", onWindowFocus, false);\n };\n }, [inputRef, isFileDialogActive, onFileDialogCancelCb, fsAccessApiWorksRef]);\n var dragTargetsRef = useRef([]);\n\n var onDocumentDrop = function onDocumentDrop(event) {\n if (rootRef.current && rootRef.current.contains(event.target)) {\n // If we intercepted an event for our instance, let it propagate down to the instance's onDrop handler\n return;\n }\n\n event.preventDefault();\n dragTargetsRef.current = [];\n };\n\n useEffect(function () {\n if (preventDropOnDocument) {\n document.addEventListener(\"dragover\", onDocumentDragOver, false);\n document.addEventListener(\"drop\", onDocumentDrop, false);\n }\n\n return function () {\n if (preventDropOnDocument) {\n document.removeEventListener(\"dragover\", onDocumentDragOver);\n document.removeEventListener(\"drop\", onDocumentDrop);\n }\n };\n }, [rootRef, preventDropOnDocument]); // Auto focus the root when autoFocus is true\n\n useEffect(function () {\n if (!disabled && autoFocus && rootRef.current) {\n rootRef.current.focus();\n }\n\n return function () {};\n }, [rootRef, autoFocus, disabled]);\n var onErrCb = useCallback(function (e) {\n if (onError) {\n onError(e);\n } else {\n // Let the user know something's gone wrong if they haven't provided the onError cb.\n console.error(e);\n }\n }, [onError]);\n var onDragEnterCb = useCallback(function (event) {\n event.preventDefault(); // Persist here because we need the event later after getFilesFromEvent() is done\n\n event.persist();\n stopPropagation(event);\n dragTargetsRef.current = [].concat(_toConsumableArray(dragTargetsRef.current), [event.target]);\n\n if (isEvtWithFiles(event)) {\n Promise.resolve(getFilesFromEvent(event)).then(function (files) {\n if (isPropagationStopped(event) && !noDragEventsBubbling) {\n return;\n }\n\n var fileCount = files.length;\n var isDragAccept = fileCount > 0 && allFilesAccepted({\n files: files,\n accept: acceptAttr,\n minSize: minSize,\n maxSize: maxSize,\n multiple: multiple,\n maxFiles: maxFiles,\n validator: validator\n });\n var isDragReject = fileCount > 0 && !isDragAccept;\n dispatch({\n isDragAccept: isDragAccept,\n isDragReject: isDragReject,\n isDragActive: true,\n type: \"setDraggedFiles\"\n });\n\n if (onDragEnter) {\n onDragEnter(event);\n }\n }).catch(function (e) {\n return onErrCb(e);\n });\n }\n }, [getFilesFromEvent, onDragEnter, onErrCb, noDragEventsBubbling, acceptAttr, minSize, maxSize, multiple, maxFiles, validator]);\n var onDragOverCb = useCallback(function (event) {\n event.preventDefault();\n event.persist();\n stopPropagation(event);\n var hasFiles = isEvtWithFiles(event);\n\n if (hasFiles && event.dataTransfer) {\n try {\n event.dataTransfer.dropEffect = \"copy\";\n } catch (_unused) {}\n /* eslint-disable-line no-empty */\n\n }\n\n if (hasFiles && onDragOver) {\n onDragOver(event);\n }\n\n return false;\n }, [onDragOver, noDragEventsBubbling]);\n var onDragLeaveCb = useCallback(function (event) {\n event.preventDefault();\n event.persist();\n stopPropagation(event); // Only deactivate once the dropzone and all children have been left\n\n var targets = dragTargetsRef.current.filter(function (target) {\n return rootRef.current && rootRef.current.contains(target);\n }); // Make sure to remove a target present multiple times only once\n // (Firefox may fire dragenter/dragleave multiple times on the same element)\n\n var targetIdx = targets.indexOf(event.target);\n\n if (targetIdx !== -1) {\n targets.splice(targetIdx, 1);\n }\n\n dragTargetsRef.current = targets;\n\n if (targets.length > 0) {\n return;\n }\n\n dispatch({\n type: \"setDraggedFiles\",\n isDragActive: false,\n isDragAccept: false,\n isDragReject: false\n });\n\n if (isEvtWithFiles(event) && onDragLeave) {\n onDragLeave(event);\n }\n }, [rootRef, onDragLeave, noDragEventsBubbling]);\n var setFiles = useCallback(function (files, event) {\n var acceptedFiles = [];\n var fileRejections = [];\n files.forEach(function (file) {\n var _fileAccepted = fileAccepted(file, acceptAttr),\n _fileAccepted2 = _slicedToArray(_fileAccepted, 2),\n accepted = _fileAccepted2[0],\n acceptError = _fileAccepted2[1];\n\n var _fileMatchSize = fileMatchSize(file, minSize, maxSize),\n _fileMatchSize2 = _slicedToArray(_fileMatchSize, 2),\n sizeMatch = _fileMatchSize2[0],\n sizeError = _fileMatchSize2[1];\n\n var customErrors = validator ? validator(file) : null;\n\n if (accepted && sizeMatch && !customErrors) {\n acceptedFiles.push(file);\n } else {\n var errors = [acceptError, sizeError];\n\n if (customErrors) {\n errors = errors.concat(customErrors);\n }\n\n fileRejections.push({\n file: file,\n errors: errors.filter(function (e) {\n return e;\n })\n });\n }\n });\n\n if (!multiple && acceptedFiles.length > 1 || multiple && maxFiles >= 1 && acceptedFiles.length > maxFiles) {\n // Reject everything and empty accepted files\n acceptedFiles.forEach(function (file) {\n fileRejections.push({\n file: file,\n errors: [TOO_MANY_FILES_REJECTION]\n });\n });\n acceptedFiles.splice(0);\n }\n\n dispatch({\n acceptedFiles: acceptedFiles,\n fileRejections: fileRejections,\n type: \"setFiles\"\n });\n\n if (onDrop) {\n onDrop(acceptedFiles, fileRejections, event);\n }\n\n if (fileRejections.length > 0 && onDropRejected) {\n onDropRejected(fileRejections, event);\n }\n\n if (acceptedFiles.length > 0 && onDropAccepted) {\n onDropAccepted(acceptedFiles, event);\n }\n }, [dispatch, multiple, acceptAttr, minSize, maxSize, maxFiles, onDrop, onDropAccepted, onDropRejected, validator]);\n var onDropCb = useCallback(function (event) {\n event.preventDefault(); // Persist here because we need the event later after getFilesFromEvent() is done\n\n event.persist();\n stopPropagation(event);\n dragTargetsRef.current = [];\n\n if (isEvtWithFiles(event)) {\n Promise.resolve(getFilesFromEvent(event)).then(function (files) {\n if (isPropagationStopped(event) && !noDragEventsBubbling) {\n return;\n }\n\n setFiles(files, event);\n }).catch(function (e) {\n return onErrCb(e);\n });\n }\n\n dispatch({\n type: \"reset\"\n });\n }, [getFilesFromEvent, setFiles, onErrCb, noDragEventsBubbling]); // Fn for opening the file dialog programmatically\n\n var openFileDialog = useCallback(function () {\n // No point to use FS access APIs if context is not secure\n // https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts#feature_detection\n if (fsAccessApiWorksRef.current) {\n dispatch({\n type: \"openDialog\"\n });\n onFileDialogOpenCb(); // https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker\n\n var opts = {\n multiple: multiple,\n types: pickerTypes\n };\n window.showOpenFilePicker(opts).then(function (handles) {\n return getFilesFromEvent(handles);\n }).then(function (files) {\n setFiles(files, null);\n dispatch({\n type: \"closeDialog\"\n });\n }).catch(function (e) {\n // AbortError means the user canceled\n if (isAbort(e)) {\n onFileDialogCancelCb(e);\n dispatch({\n type: \"closeDialog\"\n });\n } else if (isSecurityError(e)) {\n fsAccessApiWorksRef.current = false; // CORS, so cannot use this API\n // Try using the input\n\n if (inputRef.current) {\n inputRef.current.value = null;\n inputRef.current.click();\n } else {\n onErrCb(new Error(\"Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no was provided.\"));\n }\n } else {\n onErrCb(e);\n }\n });\n return;\n }\n\n if (inputRef.current) {\n dispatch({\n type: \"openDialog\"\n });\n onFileDialogOpenCb();\n inputRef.current.value = null;\n inputRef.current.click();\n }\n }, [dispatch, onFileDialogOpenCb, onFileDialogCancelCb, useFsAccessApi, setFiles, onErrCb, pickerTypes, multiple]); // Cb to open the file dialog when SPACE/ENTER occurs on the dropzone\n\n var onKeyDownCb = useCallback(function (event) {\n // Ignore keyboard events bubbling up the DOM tree\n if (!rootRef.current || !rootRef.current.isEqualNode(event.target)) {\n return;\n }\n\n if (event.key === \" \" || event.key === \"Enter\" || event.keyCode === 32 || event.keyCode === 13) {\n event.preventDefault();\n openFileDialog();\n }\n }, [rootRef, openFileDialog]); // Update focus state for the dropzone\n\n var onFocusCb = useCallback(function () {\n dispatch({\n type: \"focus\"\n });\n }, []);\n var onBlurCb = useCallback(function () {\n dispatch({\n type: \"blur\"\n });\n }, []); // Cb to open the file dialog when click occurs on the dropzone\n\n var onClickCb = useCallback(function () {\n if (noClick) {\n return;\n } // In IE11/Edge the file-browser dialog is blocking, therefore, use setTimeout()\n // to ensure React can handle state changes\n // See: https://github.com/react-dropzone/react-dropzone/issues/450\n\n\n if (isIeOrEdge()) {\n setTimeout(openFileDialog, 0);\n } else {\n openFileDialog();\n }\n }, [noClick, openFileDialog]);\n\n var composeHandler = function composeHandler(fn) {\n return disabled ? null : fn;\n };\n\n var composeKeyboardHandler = function composeKeyboardHandler(fn) {\n return noKeyboard ? null : composeHandler(fn);\n };\n\n var composeDragHandler = function composeDragHandler(fn) {\n return noDrag ? null : composeHandler(fn);\n };\n\n var stopPropagation = function stopPropagation(event) {\n if (noDragEventsBubbling) {\n event.stopPropagation();\n }\n };\n\n var getRootProps = useMemo(function () {\n return function () {\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref2$refKey = _ref2.refKey,\n refKey = _ref2$refKey === void 0 ? \"ref\" : _ref2$refKey,\n role = _ref2.role,\n onKeyDown = _ref2.onKeyDown,\n onFocus = _ref2.onFocus,\n onBlur = _ref2.onBlur,\n onClick = _ref2.onClick,\n onDragEnter = _ref2.onDragEnter,\n onDragOver = _ref2.onDragOver,\n onDragLeave = _ref2.onDragLeave,\n onDrop = _ref2.onDrop,\n rest = _objectWithoutProperties(_ref2, _excluded3);\n\n return _objectSpread(_objectSpread(_defineProperty({\n onKeyDown: composeKeyboardHandler(composeEventHandlers(onKeyDown, onKeyDownCb)),\n onFocus: composeKeyboardHandler(composeEventHandlers(onFocus, onFocusCb)),\n onBlur: composeKeyboardHandler(composeEventHandlers(onBlur, onBlurCb)),\n onClick: composeHandler(composeEventHandlers(onClick, onClickCb)),\n onDragEnter: composeDragHandler(composeEventHandlers(onDragEnter, onDragEnterCb)),\n onDragOver: composeDragHandler(composeEventHandlers(onDragOver, onDragOverCb)),\n onDragLeave: composeDragHandler(composeEventHandlers(onDragLeave, onDragLeaveCb)),\n onDrop: composeDragHandler(composeEventHandlers(onDrop, onDropCb)),\n role: typeof role === \"string\" && role !== \"\" ? role : \"presentation\"\n }, refKey, rootRef), !disabled && !noKeyboard ? {\n tabIndex: 0\n } : {}), rest);\n };\n }, [rootRef, onKeyDownCb, onFocusCb, onBlurCb, onClickCb, onDragEnterCb, onDragOverCb, onDragLeaveCb, onDropCb, noKeyboard, noDrag, disabled]);\n var onInputElementClick = useCallback(function (event) {\n event.stopPropagation();\n }, []);\n var getInputProps = useMemo(function () {\n return function () {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref3$refKey = _ref3.refKey,\n refKey = _ref3$refKey === void 0 ? \"ref\" : _ref3$refKey,\n onChange = _ref3.onChange,\n onClick = _ref3.onClick,\n rest = _objectWithoutProperties(_ref3, _excluded4);\n\n var inputProps = _defineProperty({\n accept: acceptAttr,\n multiple: multiple,\n type: \"file\",\n style: {\n display: \"none\"\n },\n onChange: composeHandler(composeEventHandlers(onChange, onDropCb)),\n onClick: composeHandler(composeEventHandlers(onClick, onInputElementClick)),\n tabIndex: -1\n }, refKey, inputRef);\n\n return _objectSpread(_objectSpread({}, inputProps), rest);\n };\n }, [inputRef, accept, multiple, onDropCb, disabled]);\n return _objectSpread(_objectSpread({}, state), {}, {\n isFocused: isFocused && !disabled,\n getRootProps: getRootProps,\n getInputProps: getInputProps,\n rootRef: rootRef,\n inputRef: inputRef,\n open: composeHandler(openFileDialog)\n });\n}\n/**\n * @param {DropzoneState} state\n * @param {{type: string} & DropzoneState} action\n * @returns {DropzoneState}\n */\n\nfunction reducer(state, action) {\n /* istanbul ignore next */\n switch (action.type) {\n case \"focus\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isFocused: true\n });\n\n case \"blur\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isFocused: false\n });\n\n case \"openDialog\":\n return _objectSpread(_objectSpread({}, initialState), {}, {\n isFileDialogActive: true\n });\n\n case \"closeDialog\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isFileDialogActive: false\n });\n\n case \"setDraggedFiles\":\n return _objectSpread(_objectSpread({}, state), {}, {\n isDragActive: action.isDragActive,\n isDragAccept: action.isDragAccept,\n isDragReject: action.isDragReject\n });\n\n case \"setFiles\":\n return _objectSpread(_objectSpread({}, state), {}, {\n acceptedFiles: action.acceptedFiles,\n fileRejections: action.fileRejections\n });\n\n case \"reset\":\n return _objectSpread({}, initialState);\n\n default:\n return state;\n }\n}\n\nfunction noop() {}\n\nexport { ErrorCode } from \"./utils\";","import { createIcon } from '../createIcon';\n\nexport const CodeIconConfig = {\n name: 'CodeIcon',\n height: 512,\n width: 640,\n svgPath: 'M278.9 511.5l-61-17.7c-6.4-1.8-10-8.5-8.2-14.9L346.2 8.7c1.8-6.4 8.5-10 14.9-8.2l61 17.7c6.4 1.8 10 8.5 8.2 14.9L293.8 503.3c-1.9 6.4-8.5 10.1-14.9 8.2zm-114-112.2l43.5-46.4c4.6-4.9 4.3-12.7-.8-17.2L117 256l90.6-79.7c5.1-4.5 5.5-12.3.8-17.2l-43.5-46.4c-4.5-4.8-12.1-5.1-17-.5L3.8 247.2c-5.1 4.7-5.1 12.8 0 17.5l144.1 135.1c4.9 4.6 12.5 4.4 17-.5zm327.2.6l144.1-135.1c5.1-4.7 5.1-12.8 0-17.5L492.1 112.1c-4.8-4.5-12.4-4.3-17 .5L431.6 159c-4.6 4.9-4.3 12.7.8 17.2L523 256l-90.6 79.7c-5.1 4.5-5.5 12.3-.8 17.2l43.5 46.4c4.5 4.9 12.1 5.1 17 .6z',\n yOffset: 0,\n xOffset: 0,\n};\n\nexport const CodeIcon = createIcon(CodeIconConfig);\n\nexport default CodeIcon;","import { createIcon } from '../createIcon';\n\nexport const DownloadIconConfig = {\n name: 'DownloadIcon',\n height: 512,\n width: 512,\n svgPath: 'M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z',\n yOffset: 0,\n xOffset: 0,\n};\n\nexport const DownloadIcon = createIcon(DownloadIconConfig);\n\nexport default DownloadIcon;","import { createIcon } from '../createIcon';\n\nexport const UploadIconConfig = {\n name: 'UploadIcon',\n height: 512,\n width: 512,\n svgPath: 'M296 384h-80c-13.3 0-24-10.7-24-24V192h-87.7c-17.8 0-26.7-21.5-14.1-34.1L242.3 5.7c7.5-7.5 19.8-7.5 27.3 0l152.2 152.2c12.6 12.6 3.7 34.1-14.1 34.1H320v168c0 13.3-10.7 24-24 24zm216-8v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h136v8c0 30.9 25.1 56 56 56h80c30.9 0 56-25.1 56-56v-8h136c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z',\n yOffset: 0,\n xOffset: 0,\n};\n\nexport const UploadIcon = createIcon(UploadIconConfig);\n\nexport default UploadIcon;","import './code-editor.css';\nexport default {\n \"button\": \"pf-v5-c-button\",\n \"codeEditor\": \"pf-v5-c-code-editor\",\n \"codeEditorCode\": \"pf-v5-c-code-editor__code\",\n \"codeEditorCodePre\": \"pf-v5-c-code-editor__code-pre\",\n \"codeEditorControls\": \"pf-v5-c-code-editor__controls\",\n \"codeEditorHeader\": \"pf-v5-c-code-editor__header\",\n \"codeEditorHeaderMain\": \"pf-v5-c-code-editor__header-main\",\n \"codeEditorMain\": \"pf-v5-c-code-editor__main\",\n \"codeEditorTab\": \"pf-v5-c-code-editor__tab\",\n \"codeEditorTabIcon\": \"pf-v5-c-code-editor__tab-icon\",\n \"codeEditorTabText\": \"pf-v5-c-code-editor__tab-text\",\n \"modifiers\": {\n \"readOnly\": \"pf-m-read-only\",\n \"control\": \"pf-m-control\",\n \"dragHover\": \"pf-m-drag-hover\"\n },\n \"monacoEditor\": \"monaco-editor\",\n \"themeDark\": \"pf-v5-theme-dark\"\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/[email protected]/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","import _t from\"@monaco-editor/loader\";import{memo as Te}from\"react\";import ke,{useState as re,useRef as S,useCallback as oe,useEffect as ne}from\"react\";import Se from\"@monaco-editor/loader\";import{memo as ye}from\"react\";import K from\"react\";var le={wrapper:{display:\"flex\",position:\"relative\",textAlign:\"initial\"},fullWidth:{width:\"100%\"},hide:{display:\"none\"}},v=le;import me from\"react\";var ae={container:{display:\"flex\",height:\"100%\",width:\"100%\",justifyContent:\"center\",alignItems:\"center\"}},Y=ae;function Me({children:e}){return me.createElement(\"div\",{style:Y.container},e)}var Z=Me;var $=Z;function Ee({width:e,height:r,isEditorReady:n,loading:t,_ref:a,className:m,wrapperProps:E}){return K.createElement(\"section\",{style:{...v.wrapper,width:e,height:r},...E},!n&&K.createElement($,null,t),K.createElement(\"div\",{ref:a,style:{...v.fullWidth,...!n&&v.hide},className:m}))}var ee=Ee;var H=ye(ee);import{useEffect as xe}from\"react\";function Ce(e){xe(e,[])}var k=Ce;import{useEffect as ge,useRef as Re}from\"react\";function he(e,r,n=!0){let t=Re(!0);ge(t.current||!n?()=>{t.current=!1}:e,r)}var l=he;function D(){}function h(e,r,n,t){return De(e,t)||be(e,r,n,t)}function De(e,r){return e.editor.getModel(te(e,r))}function be(e,r,n,t){return e.editor.createModel(r,n,t?te(e,t):void 0)}function te(e,r){return e.Uri.parse(r)}function Oe({original:e,modified:r,language:n,originalLanguage:t,modifiedLanguage:a,originalModelPath:m,modifiedModelPath:E,keepCurrentOriginalModel:g=!1,keepCurrentModifiedModel:N=!1,theme:x=\"light\",loading:P=\"Loading...\",options:y={},height:V=\"100%\",width:z=\"100%\",className:F,wrapperProps:j={},beforeMount:A=D,onMount:q=D}){let[M,O]=re(!1),[T,s]=re(!0),u=S(null),c=S(null),w=S(null),d=S(q),o=S(A),b=S(!1);k(()=>{let i=Se.init();return i.then(f=>(c.current=f)&&s(!1)).catch(f=>f?.type!==\"cancelation\"&&console.error(\"Monaco initialization: error:\",f)),()=>u.current?I():i.cancel()}),l(()=>{if(u.current&&c.current){let i=u.current.getOriginalEditor(),f=h(c.current,e||\"\",t||n||\"text\",m||\"\");f!==i.getModel()&&i.setModel(f)}},[m],M),l(()=>{if(u.current&&c.current){let i=u.current.getModifiedEditor(),f=h(c.current,r||\"\",a||n||\"text\",E||\"\");f!==i.getModel()&&i.setModel(f)}},[E],M),l(()=>{let i=u.current.getModifiedEditor();i.getOption(c.current.editor.EditorOption.readOnly)?i.setValue(r||\"\"):r!==i.getValue()&&(i.executeEdits(\"\",[{range:i.getModel().getFullModelRange(),text:r||\"\",forceMoveMarkers:!0}]),i.pushUndoStop())},[r],M),l(()=>{u.current?.getModel()?.original.setValue(e||\"\")},[e],M),l(()=>{let{original:i,modified:f}=u.current.getModel();c.current.editor.setModelLanguage(i,t||n||\"text\"),c.current.editor.setModelLanguage(f,a||n||\"text\")},[n,t,a],M),l(()=>{c.current?.editor.setTheme(x)},[x],M),l(()=>{u.current?.updateOptions(y)},[y],M);let L=oe(()=>{if(!c.current)return;o.current(c.current);let i=h(c.current,e||\"\",t||n||\"text\",m||\"\"),f=h(c.current,r||\"\",a||n||\"text\",E||\"\");u.current?.setModel({original:i,modified:f})},[n,r,a,e,t,m,E]),U=oe(()=>{!b.current&&w.current&&(u.current=c.current.editor.createDiffEditor(w.current,{automaticLayout:!0,...y}),L(),c.current?.editor.setTheme(x),O(!0),b.current=!0)},[y,x,L]);ne(()=>{M&&d.current(u.current,c.current)},[M]),ne(()=>{!T&&!M&&U()},[T,M,U]);function I(){let i=u.current?.getModel();g||i?.original?.dispose(),N||i?.modified?.dispose(),u.current?.dispose()}return ke.createElement(H,{width:z,height:V,isEditorReady:M,loading:P,_ref:w,className:F,wrapperProps:j})}var ie=Oe;var we=Te(ie);import{useState as Ie}from\"react\";import ce from\"@monaco-editor/loader\";function Pe(){let[e,r]=Ie(ce.__getMonacoInstance());return k(()=>{let n;return e||(n=ce.init(),n.then(t=>{r(t)})),()=>n?.cancel()}),e}var Le=Pe;import{memo as ze}from\"react\";import We,{useState as ue,useEffect as W,useRef as C,useCallback as _e}from\"react\";import Ne from\"@monaco-editor/loader\";import{useEffect as Ue,useRef as ve}from\"react\";function He(e){let r=ve();return Ue(()=>{r.current=e},[e]),r.current}var se=He;var _=new Map;function Ve({defaultValue:e,defaultLanguage:r,defaultPath:n,value:t,language:a,path:m,theme:E=\"light\",line:g,loading:N=\"Loading...\",options:x={},overrideServices:P={},saveViewState:y=!0,keepCurrentModel:V=!1,width:z=\"100%\",height:F=\"100%\",className:j,wrapperProps:A={},beforeMount:q=D,onMount:M=D,onChange:O,onValidate:T=D}){let[s,u]=ue(!1),[c,w]=ue(!0),d=C(null),o=C(null),b=C(null),L=C(M),U=C(q),I=C(),i=C(t),f=se(m),Q=C(!1),B=C(!1);k(()=>{let p=Ne.init();return p.then(R=>(d.current=R)&&w(!1)).catch(R=>R?.type!==\"cancelation\"&&console.error(\"Monaco initialization: error:\",R)),()=>o.current?pe():p.cancel()}),l(()=>{let p=h(d.current,e||t||\"\",r||a||\"\",m||n||\"\");p!==o.current?.getModel()&&(y&&_.set(f,o.current?.saveViewState()),o.current?.setModel(p),y&&o.current?.restoreViewState(_.get(m)))},[m],s),l(()=>{o.current?.updateOptions(x)},[x],s),l(()=>{!o.current||t===void 0||(o.current.getOption(d.current.editor.EditorOption.readOnly)?o.current.setValue(t):t!==o.current.getValue()&&(B.current=!0,o.current.executeEdits(\"\",[{range:o.current.getModel().getFullModelRange(),text:t,forceMoveMarkers:!0}]),o.current.pushUndoStop(),B.current=!1))},[t],s),l(()=>{let p=o.current?.getModel();p&&a&&d.current?.editor.setModelLanguage(p,a)},[a],s),l(()=>{g!==void 0&&o.current?.revealLine(g)},[g],s),l(()=>{d.current?.editor.setTheme(E)},[E],s);let X=_e(()=>{if(!(!b.current||!d.current)&&!Q.current){U.current(d.current);let p=m||n,R=h(d.current,t||e||\"\",r||a||\"\",p||\"\");o.current=d.current?.editor.create(b.current,{model:R,automaticLayout:!0,...x},P),y&&o.current.restoreViewState(_.get(p)),d.current.editor.setTheme(E),g!==void 0&&o.current.revealLine(g),u(!0),Q.current=!0}},[e,r,n,t,a,m,x,P,y,E,g]);W(()=>{s&&L.current(o.current,d.current)},[s]),W(()=>{!c&&!s&&X()},[c,s,X]),i.current=t,W(()=>{s&&O&&(I.current?.dispose(),I.current=o.current?.onDidChangeModelContent(p=>{B.current||O(o.current.getValue(),p)}))},[s,O]),W(()=>{if(s){let p=d.current.editor.onDidChangeMarkers(R=>{let G=o.current.getModel()?.uri;if(G&&R.find(J=>J.path===G.path)){let J=d.current.editor.getModelMarkers({resource:G});T?.(J)}});return()=>{p?.dispose()}}return()=>{}},[s,T]);function pe(){I.current?.dispose(),V?y&&_.set(m,o.current.saveViewState()):o.current.getModel()?.dispose(),o.current.dispose()}return We.createElement(H,{width:z,height:F,isEditorReady:s,loading:N,_ref:b,className:j,wrapperProps:A})}var fe=Ve;var de=ze(fe);var Ft=de;export{we as DiffEditor,de as Editor,Ft as default,_t as loader,Le as useMonaco};\n//# sourceMappingURL=index.mjs.map","import * as React from 'react';\nexport const CodeEditorContext = React.createContext(null);\n//# sourceMappingURL=CodeEditorUtils.js.map","import { __rest } from \"tslib\";\nimport * as React from 'react';\nimport { Button, Tooltip } from '@patternfly/react-core';\nimport { CodeEditorContext } from './CodeEditorUtils';\nexport const CodeEditorControl = (_a) => {\n var { icon, className, 'aria-label': ariaLabel, onClick = () => { }, isVisible = true, tooltipProps = {} } = _a, props = __rest(_a, [\"icon\", \"className\", 'aria-label', \"onClick\", \"isVisible\", \"tooltipProps\"]);\n const context = React.useContext(CodeEditorContext);\n const onCustomClick = (event) => {\n onClick(context.code, event);\n };\n return isVisible ? (React.createElement(Tooltip, Object.assign({}, tooltipProps),\n React.createElement(Button, Object.assign({ className: className, onClick: onCustomClick, variant: \"control\", \"aria-label\": ariaLabel }, props), icon))) : null;\n};\nCodeEditorControl.displayName = 'CodeEditorControl';\n//# sourceMappingURL=CodeEditorControl.js.map","import * as React from 'react';\nimport { css } from '@patternfly/react-styles';\nimport styles from '@patternfly/react-styles/css/components/CodeEditor/code-editor.mjs';\nimport fileUploadStyles from '@patternfly/react-styles/css/components/FileUpload/file-upload.mjs';\nimport { Button, ButtonVariant, EmptyState, EmptyStateBody, EmptyStateIcon, EmptyStateActions, EmptyStateVariant, EmptyStateFooter, getResizeObserver, Popover, EmptyStateHeader } from '@patternfly/react-core';\nimport Editor from '@monaco-editor/react';\nimport CopyIcon from '@patternfly/react-icons/dist/esm/icons/copy-icon';\nimport UploadIcon from '@patternfly/react-icons/dist/esm/icons/upload-icon';\nimport DownloadIcon from '@patternfly/react-icons/dist/esm/icons/download-icon';\nimport CodeIcon from '@patternfly/react-icons/dist/esm/icons/code-icon';\nimport HelpIcon from '@patternfly/react-icons/dist/esm/icons/help-icon';\nimport Dropzone from 'react-dropzone';\nimport { CodeEditorContext } from './CodeEditorUtils';\nimport { CodeEditorControl } from './CodeEditorControl';\nexport var Language;\n(function (Language) {\n Language[\"abap\"] = \"abap\";\n Language[\"aes\"] = \"aes\";\n Language[\"apex\"] = \"apex\";\n Language[\"azcli\"] = \"azcli\";\n Language[\"bat\"] = \"bat\";\n Language[\"bicep\"] = \"bicep\";\n Language[\"c\"] = \"c\";\n Language[\"cameligo\"] = \"cameligo\";\n Language[\"clojure\"] = \"clojure\";\n Language[\"coffeescript\"] = \"coffeescript\";\n Language[\"cpp\"] = \"cpp\";\n Language[\"csharp\"] = \"csharp\";\n Language[\"csp\"] = \"csp\";\n Language[\"css\"] = \"css\";\n Language[\"dart\"] = \"dart\";\n Language[\"dockerfile\"] = \"dockerfile\";\n Language[\"ecl\"] = \"ecl\";\n Language[\"elixir\"] = \"elixir\";\n Language[\"fsharp\"] = \"fsharp\";\n Language[\"go\"] = \"go\";\n Language[\"graphql\"] = \"graphql\";\n Language[\"handlebars\"] = \"handlebars\";\n Language[\"hcl\"] = \"hcl\";\n Language[\"html\"] = \"html\";\n Language[\"ini\"] = \"ini\";\n Language[\"java\"] = \"java\";\n Language[\"javascript\"] = \"javascript\";\n Language[\"json\"] = \"json\";\n Language[\"julia\"] = \"julia\";\n Language[\"kotlin\"] = \"kotlin\";\n Language[\"less\"] = \"less\";\n Language[\"lexon\"] = \"lexon\";\n Language[\"liquid\"] = \"liquid\";\n Language[\"lua\"] = \"lua\";\n Language[\"m3\"] = \"m3\";\n Language[\"markdown\"] = \"markdown\";\n Language[\"mips\"] = \"mips\";\n Language[\"msdax\"] = \"msdax\";\n Language[\"mysql\"] = \"mysql\";\n Language[\"objective-c\"] = \"objective-c\";\n Language[\"pascal\"] = \"pascal\";\n Language[\"pascaligo\"] = \"pascaligo\";\n Language[\"perl\"] = \"perl\";\n Language[\"pgsql\"] = \"pgsql\";\n Language[\"php\"] = \"php\";\n Language[\"plaintext\"] = \"plaintext\";\n Language[\"postiats\"] = \"postiats\";\n Language[\"powerquery\"] = \"powerquery\";\n Language[\"powershell\"] = \"powershell\";\n Language[\"pug\"] = \"pug\";\n Language[\"python\"] = \"python\";\n Language[\"r\"] = \"r\";\n Language[\"razor\"] = \"razor\";\n Language[\"redis\"] = \"redis\";\n Language[\"redshift\"] = \"redshift\";\n Language[\"restructuredtext\"] = \"restructuredtext\";\n Language[\"ruby\"] = \"ruby\";\n Language[\"rust\"] = \"rust\";\n Language[\"sb\"] = \"sb\";\n Language[\"scala\"] = \"scala\";\n Language[\"scheme\"] = \"scheme\";\n Language[\"scss\"] = \"scss\";\n Language[\"shell\"] = \"shell\";\n Language[\"sol\"] = \"sol\";\n Language[\"sql\"] = \"sql\";\n Language[\"st\"] = \"st\";\n Language[\"swift\"] = \"swift\";\n Language[\"systemverilog\"] = \"systemverilog\";\n Language[\"tcl\"] = \"tcl\";\n Language[\"twig\"] = \"twig\";\n Language[\"typescript\"] = \"typescript\";\n Language[\"vb\"] = \"vb\";\n Language[\"verilog\"] = \"verilog\";\n Language[\"xml\"] = \"xml\";\n Language[\"yaml\"] = \"yaml\";\n})(Language || (Language = {}));\nclass CodeEditor extends React.Component {\n constructor(props) {\n super(props);\n this.editor = null;\n this.wrapperRef = React.createRef();\n this.ref = React.createRef();\n this.timer = null;\n this.observer = () => { };\n this.onChange = (value, event) => {\n if (this.props.height === 'sizeToFit') {\n this.setHeightToFitContent();\n }\n if (this.props.onChange) {\n this.props.onChange(value, event);\n }\n this.setState({ value });\n this.props.onCodeChange(value);\n };\n this.handleResize = () => {\n if (this.editor) {\n this.editor.layout();\n }\n };\n this.handleGlobalKeys = (event) => {\n var _a;\n if (this.wrapperRef.current === document.activeElement && (event.key === 'ArrowDown' || event.key === ' ')) {\n (_a = this.editor) === null || _a === void 0 ? void 0 : _a.focus();\n event.preventDefault();\n }\n };\n this.editorDidMount = (editor, monaco) => {\n // eslint-disable-next-line no-bitwise\n editor.addCommand(monaco.KeyMod.Shift | monaco.KeyCode.Tab, () => this.wrapperRef.current.focus());\n Array.from(document.getElementsByClassName('monaco-editor')).forEach((editorElement) => editorElement.removeAttribute('role'));\n this.props.onEditorDidMount(editor, monaco);\n this.editor = editor;\n if (this.props.height === 'sizeToFit') {\n this.setHeightToFitContent();\n }\n };\n this.handleFileChange = (value, filename) => {\n this.setState({\n value,\n filename\n });\n this.props.onCodeChange(value);\n };\n this.handleFileReadStarted = () => this.setState({ isLoading: true });\n this.handleFileReadFinished = () => this.setState({ isLoading: false });\n this.onDropAccepted = (acceptedFiles) => {\n if (acceptedFiles.length > 0) {\n const fileHandle = acceptedFiles[0];\n this.handleFileChange('', fileHandle.name); // Show the filename while reading\n this.handleFileReadStarted();\n this.readFile(fileHandle)\n .then((data) => {\n this.handleFileReadFinished();\n this.toggleEmptyState();\n this.handleFileChange(data, fileHandle.name);\n })\n .catch((error) => {\n // eslint-disable-next-line no-console\n console.error('error', error);\n this.handleFileReadFinished();\n this.handleFileChange('', ''); // Clear the filename field on a failure\n });\n }\n };\n this.onDropRejected = (rejectedFiles) => {\n if (rejectedFiles.length > 0) {\n // eslint-disable-next-line no-console\n console.error('There was an error accepting that dropped file'); // TODO\n }\n };\n this.copyCode = () => {\n navigator.clipboard.writeText(this.state.value);\n this.setState({ copied: true });\n };\n this.download = () => {\n const { value } = this.state;\n const element = document.createElement('a');\n const file = new Blob([value], { type: 'text' });\n element.href = URL.createObjectURL(file);\n element.download = `${this.props.downloadFileName}.${CodeEditor.getExtensionFromLanguage(this.props.language)}`;\n document.body.appendChild(element); // Required for this to work in FireFox\n element.click();\n };\n this.toggleEmptyState = () => {\n this.setState({ showEmptyState: false });\n };\n this.state = {\n height: this.props.height,\n prevPropsCode: this.props.code,\n value: this.props.code,\n filename: '',\n isLoading: false,\n showEmptyState: true,\n copied: false\n };\n }\n static getExtensionFromLanguage(language) {\n switch (language) {\n case Language.shell:\n return 'sh';\n case Language.ruby:\n return 'rb';\n case Language.perl:\n return 'pl';\n case Language.python:\n return 'py';\n case Language.mysql:\n return 'sql';\n case Language.javascript:\n return 'js';\n case Language.typescript:\n return 'ts';\n case Language.markdown:\n return 'md';\n case Language.plaintext:\n return 'txt';\n default:\n return language.toString();\n }\n }\n setHeightToFitContent() {\n const contentHeight = this.editor.getContentHeight();\n const layoutInfo = this.editor.getLayoutInfo();\n this.editor.layout({ width: layoutInfo.width, height: contentHeight });\n }\n // this function is only called when the props change\n // the only conflict is between props.code and state.value\n static getDerivedStateFromProps(nextProps, prevState) {\n // if the code changes due to the props.code changing\n // set the value to props.code\n if (nextProps.code !== prevState.prevPropsCode) {\n return {\n value: nextProps.code,\n prevPropsCode: nextProps.code\n };\n }\n // else, don't need to change the state.value\n // because the onChange function will do all the work\n return null;\n }\n componentDidMount() {\n document.addEventListener('keydown', this.handleGlobalKeys);\n this.observer = getResizeObserver(this.ref.current, this.handleResize, true);\n this.handleResize();\n }\n componentWillUnmount() {\n document.removeEventListener('keydown', this.handleGlobalKeys);\n this.observer();\n }\n readFile(fileHandle) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onload = () => resolve(reader.result);\n reader.onerror = () => reject(reader.error);\n reader.readAsText(fileHandle);\n });\n }\n render() {\n const { height, value, isLoading, showEmptyState, copied } = this.state;\n const { isDarkTheme, width, className, isCopyEnabled, copyButtonSuccessTooltipText, isReadOnly, isUploadEnabled, isLanguageLabelVisible, copyButtonAriaLabel, copyButtonToolTipText, uploadButtonAriaLabel, uploadButtonToolTipText, downloadButtonAriaLabel, downloadButtonToolTipText, toolTipDelay, toolTipCopyExitDelay, toolTipMaxWidth, toolTipPosition, isLineNumbersVisible, isDownloadEnabled, language, emptyState: providedEmptyState, emptyStateTitle, emptyStateBody, emptyStateButton, emptyStateLink, customControls, isMinimapVisible, headerMainContent, shortcutsPopoverButtonText, shortcutsPopoverProps: shortcutsPopoverPropsProp, showEditor, options: optionsProp, overrideServices, editorProps } = this.props;\n const shortcutsPopoverProps = Object.assign(Object.assign({}, CodeEditor.defaultProps.shortcutsPopoverProps), shortcutsPopoverPropsProp);\n const options = Object.assign({ scrollBeyondLastLine: height !== 'sizeToFit', readOnly: isReadOnly, cursorStyle: 'line', lineNumbers: isLineNumbersVisible ? 'on' : 'off', tabIndex: -1, minimap: {\n enabled: isMinimapVisible\n } }, optionsProp);\n return (React.createElement(Dropzone, { multiple: false, onDropAccepted: this.onDropAccepted, onDropRejected: this.onDropRejected }, ({ getRootProps, getInputProps, isDragActive, open }) => {\n const emptyState = providedEmptyState ||\n (isUploadEnabled ? (React.createElement(EmptyState, { variant: EmptyStateVariant.sm },\n React.createElement(EmptyStateHeader, { titleText: emptyStateTitle, icon: React.createElement(EmptyStateIcon, { icon: CodeIcon }), headingLevel: \"h4\" }),\n React.createElement(EmptyStateBody, null, emptyStateBody),\n !isReadOnly && (React.createElement(EmptyStateFooter, null,\n React.createElement(EmptyStateActions, null,\n React.createElement(Button, { variant: \"primary\", onClick: open }, emptyStateButton)),\n React.createElement(EmptyStateActions, null,\n React.createElement(Button, { variant: \"link\", onClick: this.toggleEmptyState }, emptyStateLink)))))) : (React.createElement(EmptyState, { variant: EmptyStateVariant.sm },\n React.createElement(EmptyStateHeader, { titleText: emptyStateTitle, icon: React.createElement(EmptyStateIcon, { icon: CodeIcon }), headingLevel: \"h4\" }),\n !isReadOnly && (React.createElement(EmptyStateFooter, null,\n React.createElement(EmptyStateActions, null,\n React.createElement(Button, { variant: \"primary\", onClick: this.toggleEmptyState }, emptyStateLink)))))));\n const tooltipProps = {\n position: toolTipPosition,\n exitDelay: toolTipDelay,\n entryDelay: toolTipDelay,\n maxWidth: toolTipMaxWidth,\n trigger: 'mouseenter focus'\n };\n const editorHeader = (React.createElement(\"div\", { className: css(styles.codeEditorHeader) },\n React.createElement(\"div\", { className: css(styles.codeEditorControls) },\n React.createElement(CodeEditorContext.Provider, { value: { code: value } },\n isCopyEnabled && (!showEmptyState || !!value) && (React.createElement(CodeEditorControl, { icon: React.createElement(CopyIcon, null), \"aria-label\": copyButtonAriaLabel, tooltipProps: Object.assign(Object.assign({}, tooltipProps), { 'aria-live': 'polite', content: React.createElement(\"div\", null, copied ? copyButtonSuccessTooltipText : copyButtonToolTipText), exitDelay: copied ? toolTipCopyExitDelay : toolTipDelay, onTooltipHidden: () => this.setState({ copied: false }) }), onClick: this.copyCode })),\n isUploadEnabled && (React.createElement(CodeEditorControl, { icon: React.createElement(UploadIcon, null), \"aria-label\": uploadButtonAriaLabel, tooltipProps: Object.assign({ content: React.createElement(\"div\", null, uploadButtonToolTipText) }, tooltipProps), onClick: open })),\n isDownloadEnabled && (!showEmptyState || !!value) && (React.createElement(CodeEditorControl, { icon: React.createElement(DownloadIcon, null), \"aria-label\": downloadButtonAriaLabel, tooltipProps: Object.assign({ content: React.createElement(\"div\", null, downloadButtonToolTipText) }, tooltipProps), onClick: this.download })),\n customControls && customControls)),\n React.createElement(\"div\", { className: css(styles.codeEditorHeaderMain) }, headerMainContent),\n !!shortcutsPopoverProps.bodyContent && (React.createElement(\"div\", { className: `${styles.codeEditor}__keyboard-shortcuts` },\n React.createElement(Popover, Object.assign({}, shortcutsPopoverProps),\n React.createElement(Button, { variant: ButtonVariant.link, icon: React.createElement(HelpIcon, null) }, shortcutsPopoverButtonText)))),\n isLanguageLabelVisible && (React.createElement(\"div\", { className: css(styles.codeEditorTab) },\n React.createElement(\"span\", { className: css(styles.codeEditorTabIcon) },\n React.createElement(CodeIcon, null)),\n React.createElement(\"span\", { className: css(styles.codeEditorTabText) }, language.toUpperCase())))));\n const editor = (React.createElement(\"div\", { className: css(styles.codeEditorCode), ref: this.wrapperRef, tabIndex: 0, dir: \"ltr\" },\n React.createElement(Editor, Object.assign({ height: height, width: width, language: language, value: value, options: options, overrideServices: overrideServices, onChange: this.onChange, onMount: this.editorDidMount, theme: isDarkTheme ? 'vs-dark' : 'vs-light' }, editorProps))));\n return (React.createElement(\"div\", { className: css(styles.codeEditor, isReadOnly && styles.modifiers.readOnly, className), ref: this.ref }, isUploadEnabled || providedEmptyState ? (React.createElement(\"div\", Object.assign({}, getRootProps({\n onClick: (event) => event.stopPropagation() // Prevents clicking TextArea from opening file dialog\n }), { className: `${fileUploadStyles.fileUpload} ${isDragActive && fileUploadStyles.modifiers.dragHover} ${isLoading && fileUploadStyles.modifiers.loading}` }),\n editorHeader,\n React.createElement(\"div\", { className: css(styles.codeEditorMain) },\n React.createElement(\"input\", Object.assign({}, getInputProps())),\n (showEmptyState || providedEmptyState) && !value ? emptyState : editor))) : (React.createElement(React.Fragment, null,\n editorHeader,\n showEditor && React.createElement(\"div\", { className: css(styles.codeEditorMain) }, editor)))));\n }));\n }\n}\nCodeEditor.displayName = 'CodeEditor';\nCodeEditor.defaultProps = {\n className: '',\n code: '',\n onEditorDidMount: () => { },\n language: Language.plaintext,\n isDarkTheme: false,\n height: '',\n width: '',\n isLineNumbersVisible: true,\n isReadOnly: false,\n isLanguageLabelVisible: false,\n loading: '',\n emptyState: '',\n emptyStateTitle: 'Start editing',\n emptyStateBody: 'Drag and drop a file or upload one.',\n emptyStateButton: 'Browse',\n emptyStateLink: 'Start from scratch',\n downloadFileName: Date.now().toString(),\n isUploadEnabled: false,\n isDownloadEnabled: false,\n isCopyEnabled: false,\n copyButtonAriaLabel: 'Copy code to clipboard',\n uploadButtonAriaLabel: 'Upload code',\n downloadButtonAriaLabel: 'Download code',\n copyButtonToolTipText: 'Copy to clipboard',\n uploadButtonToolTipText: 'Upload',\n downloadButtonToolTipText: 'Download',\n copyButtonSuccessTooltipText: 'Content added to clipboard',\n toolTipCopyExitDelay: 1600,\n toolTipDelay: 300,\n toolTipMaxWidth: '100px',\n toolTipPosition: 'top',\n customControls: null,\n isMinimapVisible: false,\n headerMainContent: '',\n shortcutsPopoverButtonText: 'View Shortcuts',\n shortcutsPopoverProps: Object.assign({ bodyContent: '', 'aria-label': 'Keyboard Shortcuts' }, Popover.defaultProps),\n showEditor: true,\n options: {},\n overrideServices: {},\n onCodeChange: () => { }\n};\nexport { CodeEditor };\n//# sourceMappingURL=CodeEditor.js.map"],"names":["fileUploadStyles","ReactPropTypesSecret","ReactPropTypesSecret_1","require$$0","emptyFunction","emptyFunctionWithReset","factoryWithThrowingShims","shim","props","propName","componentName","location","propFullName","secret","err","getShim","ReactPropTypes","propTypesModule","COMMON_MIME_TYPES","toFileWithPath","file","path","f","withMimeType","webkitRelativePath","name","hasExtension","ext","type","FILES_TO_IGNORE","fromEvent","evt","__awaiter","__generator","_a","isObject","isDataTransfer","getDataTransferFiles","isChangeEvt","getInputFiles","item","getFsHandleFiles","value","v","fromList","handles","files","h","dt","items","toFilePromises","noIgnoredFiles","flatten","i","fromDataTransferItem","entry","fromDirEntry","acc","__spreadArray","__read","fwp","fromEntry","fromFileEntry","reader","resolve","reject","entries","readEntries","_this","batch","err_1","_default","acceptedFiles","acceptedFilesArray","fileName","mimeType","baseMimeType","validType","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iter","_arrayLikeToArray","ownKeys","object","enumerableOnly","keys","symbols","sym","_objectSpread","target","source","key","_defineProperty","obj","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","n","len","arr2","_i","_arr","_n","_d","_s","_e","FILE_INVALID_TYPE","FILE_TOO_LARGE","FILE_TOO_SMALL","TOO_MANY_FILES","getInvalidTypeRejectionErr","accept","messageSuffix","getTooLargeRejectionErr","maxSize","getTooSmallRejectionErr","minSize","TOO_MANY_FILES_REJECTION","fileAccepted","isAcceptable","accepts","fileMatchSize","isDefined","allFilesAccepted","_ref","multiple","maxFiles","validator","_fileAccepted","_fileAccepted2","accepted","_fileMatchSize","_fileMatchSize2","sizeMatch","customErrors","isPropagationStopped","event","isEvtWithFiles","onDocumentDragOver","isIe","userAgent","isEdge","isIeOrEdge","composeEventHandlers","_len","fns","_key","_len2","args","_key2","fn","canUseFileSystemAccessAPI","pickerOptionsFromAccept","acceptForPicker","_ref2","_ref3","ok","isMIMEType","isExt","agg","_ref4","_ref5","acceptPropAsAcceptAttr","a","_ref6","_ref7","isAbort","isSecurityError","_excluded","_excluded2","_excluded3","_excluded4","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","sourceKeys","Dropzone","forwardRef","ref","children","params","_useDropzone","useDropzone","open","useImperativeHandle","React","Fragment","defaultProps","PropTypes","initialState","_defaultProps$props","disabled","getFilesFromEvent","onDragEnter","onDragLeave","onDragOver","onDrop","onDropAccepted","onDropRejected","onFileDialogCancel","onFileDialogOpen","useFsAccessApi","autoFocus","preventDropOnDocument","noClick","noKeyboard","noDrag","noDragEventsBubbling","onError","acceptAttr","useMemo","pickerTypes","onFileDialogOpenCb","noop","onFileDialogCancelCb","rootRef","useRef","inputRef","_useReducer","useReducer","reducer","_useReducer2","state","dispatch","isFocused","isFileDialogActive","fsAccessApiWorksRef","onWindowFocus","useEffect","dragTargetsRef","onDocumentDrop","onErrCb","useCallback","e","onDragEnterCb","stopPropagation","fileCount","isDragAccept","isDragReject","onDragOverCb","hasFiles","onDragLeaveCb","targets","targetIdx","setFiles","fileRejections","acceptError","sizeError","errors","onDropCb","openFileDialog","opts","onKeyDownCb","onFocusCb","onBlurCb","onClickCb","composeHandler","composeKeyboardHandler","composeDragHandler","getRootProps","_ref2$refKey","refKey","role","onKeyDown","onFocus","onBlur","onClick","rest","onInputElementClick","getInputProps","_ref3$refKey","onChange","inputProps","action","CodeIconConfig","CodeIcon","createIcon","DownloadIconConfig","DownloadIcon","UploadIconConfig","UploadIcon","styles","_objectSpread2","compose","x","y","curry","curried","_len3","nextArgs","_key3","isEmpty","isFunction","hasOwnProperty","property","validateChanges","initial","changes","errorHandler","field","validateSelector","selector","validateHandler","handler","_handler","validateInitial","throwError","errorMessages","validators","create","didUpdate","didStateUpdate","update","updateState","validate","getChanges","extractChanges","getState","setState","causedChanges","_handler$field","index","config","validateConfig","informAboutDeprecation","merge","CANCELATION_MESSAGE","makeCancelable","promise","hasCanceled_","wrappedPromise","val","_state$create","config$1","_state$create2","globalConfig","_validators$config","monaco","init","isInitialized","wrapperPromise","storeMonacoInstance","injectScripts","getMonacoLoaderScript","configureLoader","script","createScript","src","loaderScript","require","error","__getMonacoInstance","loader","le","ae","Y","Me","me","Z","$","Ee","r","t","m","E","K","ee","H","ye","Ce","xe","k","he","Re","ge","l","D","De","be","te","Oe","g","N","P","V","z","F","j","A","q","M","O","re","T","s","u","S","c","w","d","b","Se","I","oe","U","ne","ke","ie","Te","He","ve","Ue","se","_","Ve","ue","C","Q","B","p","Ne","R","pe","X","W","G","J","We","fe","de","ze","Ft","CodeEditorContext","CodeEditorControl","icon","className","ariaLabel","isVisible","tooltipProps","__rest","context","onCustomClick","Tooltip","Button","Language","CodeEditor","editor","editorElement","filename","fileHandle","data","rejectedFiles","element","language","contentHeight","layoutInfo","nextProps","prevState","getResizeObserver","height","isLoading","showEmptyState","copied","isDarkTheme","width","isCopyEnabled","copyButtonSuccessTooltipText","isReadOnly","isUploadEnabled","isLanguageLabelVisible","copyButtonAriaLabel","copyButtonToolTipText","uploadButtonAriaLabel","uploadButtonToolTipText","downloadButtonAriaLabel","downloadButtonToolTipText","toolTipDelay","toolTipCopyExitDelay","toolTipMaxWidth","toolTipPosition","isLineNumbersVisible","isDownloadEnabled","providedEmptyState","emptyStateTitle","emptyStateBody","emptyStateButton","emptyStateLink","customControls","isMinimapVisible","headerMainContent","shortcutsPopoverButtonText","shortcutsPopoverPropsProp","showEditor","optionsProp","overrideServices","editorProps","shortcutsPopoverProps","options","isDragActive","emptyState","EmptyState","EmptyStateVariant","EmptyStateHeader","EmptyStateIcon","EmptyStateBody","EmptyStateFooter","EmptyStateActions","editorHeader","css","CopyIcon","Popover","ButtonVariant","HelpIcon","Editor"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy