keycloak-d4science-spi-parent/keycloak-d4science-theme/src/main/resources/theme/d4science/account/resources/assets/AccountExtraPage-BEeXfRvR.j...

1 line
126 KiB
Plaintext

{"version":3,"file":"AccountExtraPage-BEeXfRvR.js","sources":["../../../../node_modules/.pnpm/@patternfly+react-styles@4.92.8/node_modules/@patternfly/react-styles/css/components/FileUpload/file-upload.mjs","../../../../node_modules/.pnpm/@patternfly+react-core@4.278.0_react-dom@18.2.0_react@18.2.0/node_modules/@patternfly/react-core/dist/esm/helpers/fileUtils.js","../../../../node_modules/.pnpm/@patternfly+react-core@4.278.0_react-dom@18.2.0_react@18.2.0/node_modules/@patternfly/react-core/dist/esm/components/FileUpload/FileUploadField.js","../../../../node_modules/.pnpm/file-selector@0.1.19/node_modules/file-selector/dist/es5/file.js","../../../../node_modules/.pnpm/file-selector@0.1.19/node_modules/file-selector/dist/es5/file-selector.js","../../../../node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/lib/ReactPropTypesSecret.js","../../../../node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/factoryWithThrowingShims.js","../../../../node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/index.js","../../../../node_modules/.pnpm/attr-accept@1.1.3/node_modules/attr-accept/dist/index.js","../../../../node_modules/.pnpm/react-dropzone@9.0.0_react@18.2.0/node_modules/react-dropzone/dist/es/utils/index.js","../../../../node_modules/.pnpm/react-dropzone@9.0.0_react@18.2.0/node_modules/react-dropzone/dist/es/index.js","../../../../node_modules/.pnpm/file-selector@0.6.0/node_modules/file-selector/dist/es5/file.js","../../../../node_modules/.pnpm/file-selector@0.6.0/node_modules/file-selector/dist/es5/file-selector.js","../../../../node_modules/.pnpm/@patternfly+react-core@4.278.0_react-dom@18.2.0_react@18.2.0/node_modules/@patternfly/react-core/dist/esm/components/FileUpload/FileUpload.js","../../../../node_modules/.pnpm/@patternfly+react-styles@4.92.8/node_modules/@patternfly/react-styles/css/components/HelperText/helper-text.mjs","../../../../node_modules/.pnpm/@patternfly+react-core@4.278.0_react-dom@18.2.0_react@18.2.0/node_modules/@patternfly/react-core/dist/esm/components/HelperText/HelperText.js","../../../../node_modules/.pnpm/@patternfly+react-icons@4.93.7_react-dom@18.2.0_react@18.2.0/node_modules/@patternfly/react-icons/dist/esm/icons/minus-icon.js","../../../../node_modules/.pnpm/@patternfly+react-core@4.278.0_react-dom@18.2.0_react@18.2.0/node_modules/@patternfly/react-core/dist/esm/components/HelperText/HelperTextItem.js","../../src/d4science-page/AvatarForm.tsx","../../src/d4science-page/AccountExtraPage.tsx"],"sourcesContent":["import './file-upload.css';\nexport default {\n \"button\": \"pf-c-button\",\n \"fileUpload\": \"pf-c-file-upload\",\n \"fileUploadFileDetails\": \"pf-c-file-upload__file-details\",\n \"fileUploadFileDetailsSpinner\": \"pf-c-file-upload__file-details-spinner\",\n \"fileUploadFileSelect\": \"pf-c-file-upload__file-select\",\n \"formControl\": \"pf-c-form-control\",\n \"modifiers\": {\n \"dragHover\": \"pf-m-drag-hover\",\n \"loading\": \"pf-m-loading\",\n \"control\": \"pf-m-control\"\n }\n};","export var fileReaderType;\n(function (fileReaderType) {\n fileReaderType[\"text\"] = \"text\";\n fileReaderType[\"dataURL\"] = \"dataURL\";\n})(fileReaderType || (fileReaderType = {}));\n/**\n * Read a file using the FileReader API, either as a plain text string or as a DataURL string.\n * Returns a promise which will resolve with the file contents as a string or reject with a DOMException.\n *\n * @param {File} fileHandle - File object to read\n * @param {fileReaderType} type - How to read it\n */\nexport function readFile(fileHandle, type) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onload = () => resolve(reader.result);\n reader.onerror = () => reject(reader.error);\n if (type === fileReaderType.text) {\n reader.readAsText(fileHandle);\n }\n else if (type === fileReaderType.dataURL) {\n reader.readAsDataURL(fileHandle);\n }\n else {\n reject('unknown type');\n }\n });\n}\n//# sourceMappingURL=fileUtils.js.map","import { __rest } from \"tslib\";\nimport * as React from 'react';\nimport styles from '@patternfly/react-styles/css/components/FileUpload/file-upload';\nimport { css } from '@patternfly/react-styles';\nimport { InputGroup } from '../InputGroup';\nimport { TextInput } from '../TextInput';\nimport { Button, ButtonVariant } from '../Button';\nimport { TextArea, TextAreResizeOrientation } from '../TextArea';\nimport { Spinner, spinnerSize } from '../Spinner';\nimport { fileReaderType } from '../../helpers/fileUtils';\nexport const FileUploadField = (_a) => {\n var { id, type, value = '', filename = '', onChange = () => { }, onBrowseButtonClick = () => { }, onClearButtonClick = () => { }, onTextAreaClick, onTextChange, onTextAreaBlur, textAreaPlaceholder = '', className = '', isDisabled = false, isReadOnly = false, isLoading = false, spinnerAriaValueText, isRequired = false, isDragActive = false, validated = 'default', 'aria-label': ariaLabel = 'File upload', filenamePlaceholder = 'Drag a file here or browse to upload', filenameAriaLabel = filename ? 'Read only filename' : filenamePlaceholder, browseButtonText = 'Browse...', clearButtonText = 'Clear', isClearButtonDisabled = !filename && !value, containerRef = null, allowEditingUploadedText = false, hideDefaultPreview = false, children = null } = _a, props = __rest(_a, [\"id\", \"type\", \"value\", \"filename\", \"onChange\", \"onBrowseButtonClick\", \"onClearButtonClick\", \"onTextAreaClick\", \"onTextChange\", \"onTextAreaBlur\", \"textAreaPlaceholder\", \"className\", \"isDisabled\", \"isReadOnly\", \"isLoading\", \"spinnerAriaValueText\", \"isRequired\", \"isDragActive\", \"validated\", 'aria-label', \"filenamePlaceholder\", \"filenameAriaLabel\", \"browseButtonText\", \"clearButtonText\", \"isClearButtonDisabled\", \"containerRef\", \"allowEditingUploadedText\", \"hideDefaultPreview\", \"children\"]);\n const onTextAreaChange = (newValue, event) => {\n onChange(newValue, filename, event);\n onTextChange === null || onTextChange === void 0 ? void 0 : onTextChange(newValue);\n };\n return (React.createElement(\"div\", Object.assign({ className: css(styles.fileUpload, isDragActive && styles.modifiers.dragHover, isLoading && styles.modifiers.loading, className), ref: containerRef }, props),\n React.createElement(\"div\", { className: styles.fileUploadFileSelect },\n React.createElement(InputGroup, null,\n React.createElement(TextInput, { isReadOnly // Always read-only regardless of isReadOnly prop (which is just for the TextArea)\n : true, isDisabled: isDisabled, id: `${id}-filename`, name: `${id}-filename`, \"aria-label\": filenameAriaLabel, placeholder: filenamePlaceholder, \"aria-describedby\": `${id}-browse-button`, value: filename }),\n React.createElement(Button, { id: `${id}-browse-button`, variant: ButtonVariant.control, onClick: onBrowseButtonClick, isDisabled: isDisabled }, browseButtonText),\n React.createElement(Button, { variant: ButtonVariant.control, isDisabled: isDisabled || isClearButtonDisabled, onClick: onClearButtonClick }, clearButtonText))),\n React.createElement(\"div\", { className: styles.fileUploadFileDetails },\n !hideDefaultPreview && type === fileReaderType.text && (React.createElement(TextArea, { readOnly: isReadOnly || (!!filename && !allowEditingUploadedText), disabled: isDisabled, isRequired: isRequired, resizeOrientation: TextAreResizeOrientation.vertical, validated: validated, id: id, name: id, \"aria-label\": ariaLabel, value: value, onChange: onTextAreaChange, onClick: onTextAreaClick, onBlur: onTextAreaBlur, placeholder: textAreaPlaceholder })),\n isLoading && (React.createElement(\"div\", { className: styles.fileUploadFileDetailsSpinner },\n React.createElement(Spinner, { size: spinnerSize.lg, \"aria-valuetext\": spinnerAriaValueText })))),\n children));\n};\nFileUploadField.displayName = 'FileUploadField';\n//# sourceMappingURL=FileUploadField.js.map","export var COMMON_MIME_TYPES = new Map([\n ['avi', 'video/avi'],\n ['gif', 'image/gif'],\n ['ico', 'image/x-icon'],\n ['jpeg', 'image/jpeg'],\n ['jpg', 'image/jpeg'],\n ['mkv', 'video/x-matroska'],\n ['mov', 'video/quicktime'],\n ['mp4', 'video/mp4'],\n ['pdf', 'application/pdf'],\n ['png', 'image/png'],\n ['zip', 'application/zip'],\n ['doc', 'application/msword'],\n ['docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document']\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 <input webkitdirectory> 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, __spread } 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 * @param evt\n */\nexport function fromEvent(evt) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2 /*return*/, isDragEvt(evt) && evt.dataTransfer\n ? getDataTransferFiles(evt.dataTransfer, evt.type)\n : getInputFiles(evt)];\n });\n });\n}\nfunction isDragEvt(value) {\n return !!value.dataTransfer;\n}\nfunction getInputFiles(evt) {\n var files = isInput(evt.target)\n ? evt.target.files\n ? fromList(evt.target.files)\n : []\n : [];\n return files.map(function (file) { return toFileWithPath(file); });\n}\nfunction isInput(value) {\n return value !== null;\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 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 __spread(acc, (Array.isArray(files) ? flatten(files) : [files])); }, []);\n}\nfunction fromDataTransferItem(item) {\n var file = item.getAsFile();\n if (!file) {\n return Promise.reject(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","/**\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","module.exports=function(t){function n(e){if(r[e])return r[e].exports;var o=r[e]={i:e,l:!1,exports:{}};return t[e].call(o.exports,o,o.exports,n),o.l=!0,o.exports}var r={};return n.m=t,n.c=r,n.d=function(t,r,e){n.o(t,r)||Object.defineProperty(t,r,{configurable:!1,enumerable:!0,get:e})},n.n=function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(r,\"a\",r),r},n.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},n.p=\"\",n(n.s=13)}([function(t,n){var r=t.exports=\"undefined\"!=typeof window&&window.Math==Math?window:\"undefined\"!=typeof self&&self.Math==Math?self:Function(\"return this\")();\"number\"==typeof __g&&(__g=r)},function(t,n){t.exports=function(t){return\"object\"==typeof t?null!==t:\"function\"==typeof t}},function(t,n){var r=t.exports={version:\"2.5.0\"};\"number\"==typeof __e&&(__e=r)},function(t,n,r){t.exports=!r(4)(function(){return 7!=Object.defineProperty({},\"a\",{get:function(){return 7}}).a})},function(t,n){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,n){var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},function(t,n,r){var e=r(32)(\"wks\"),o=r(9),i=r(0).Symbol,u=\"function\"==typeof i;(t.exports=function(t){return e[t]||(e[t]=u&&i[t]||(u?i:o)(\"Symbol.\"+t))}).store=e},function(t,n,r){var e=r(0),o=r(2),i=r(8),u=r(22),c=r(10),f=function(t,n,r){var a,s,p,l,v=t&f.F,y=t&f.G,h=t&f.S,d=t&f.P,x=t&f.B,g=y?e:h?e[n]||(e[n]={}):(e[n]||{}).prototype,m=y?o:o[n]||(o[n]={}),b=m.prototype||(m.prototype={});y&&(r=n);for(a in r)s=!v&&g&&void 0!==g[a],p=(s?g:r)[a],l=x&&s?c(p,e):d&&\"function\"==typeof p?c(Function.call,p):p,g&&u(g,a,p,t&f.U),m[a]!=p&&i(m,a,l),d&&b[a]!=p&&(b[a]=p)};e.core=o,f.F=1,f.G=2,f.S=4,f.P=8,f.B=16,f.W=32,f.U=64,f.R=128,t.exports=f},function(t,n,r){var e=r(16),o=r(21);t.exports=r(3)?function(t,n,r){return e.f(t,n,o(1,r))}:function(t,n,r){return t[n]=r,t}},function(t,n){var r=0,e=Math.random();t.exports=function(t){return\"Symbol(\".concat(void 0===t?\"\":t,\")_\",(++r+e).toString(36))}},function(t,n,r){var e=r(24);t.exports=function(t,n,r){if(e(t),void 0===n)return t;switch(r){case 1:return function(r){return t.call(n,r)};case 2:return function(r,e){return t.call(n,r,e)};case 3:return function(r,e,o){return t.call(n,r,e,o)}}return function(){return t.apply(n,arguments)}}},function(t,n){t.exports=function(t){if(void 0==t)throw TypeError(\"Can't call method on \"+t);return t}},function(t,n,r){var e=r(28),o=Math.min;t.exports=function(t){return t>0?o(e(t),9007199254740991):0}},function(t,n,r){\"use strict\";n.__esModule=!0,n.default=function(t,n){if(t&&n){var r=Array.isArray(n)?n:n.split(\",\"),e=t.name||\"\",o=t.type||\"\",i=o.replace(/\\/.*$/,\"\");return r.some(function(t){var n=t.trim();return\".\"===n.charAt(0)?e.toLowerCase().endsWith(n.toLowerCase()):n.endsWith(\"/*\")?i===n.replace(/\\/.*$/,\"\"):o===n})}return!0},r(14),r(34)},function(t,n,r){r(15),t.exports=r(2).Array.some},function(t,n,r){\"use strict\";var e=r(7),o=r(25)(3);e(e.P+e.F*!r(33)([].some,!0),\"Array\",{some:function(t){return o(this,t,arguments[1])}})},function(t,n,r){var e=r(17),o=r(18),i=r(20),u=Object.defineProperty;n.f=r(3)?Object.defineProperty:function(t,n,r){if(e(t),n=i(n,!0),e(r),o)try{return u(t,n,r)}catch(t){}if(\"get\"in r||\"set\"in r)throw TypeError(\"Accessors not supported!\");return\"value\"in r&&(t[n]=r.value),t}},function(t,n,r){var e=r(1);t.exports=function(t){if(!e(t))throw TypeError(t+\" is not an object!\");return t}},function(t,n,r){t.exports=!r(3)&&!r(4)(function(){return 7!=Object.defineProperty(r(19)(\"div\"),\"a\",{get:function(){return 7}}).a})},function(t,n,r){var e=r(1),o=r(0).document,i=e(o)&&e(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},function(t,n,r){var e=r(1);t.exports=function(t,n){if(!e(t))return t;var r,o;if(n&&\"function\"==typeof(r=t.toString)&&!e(o=r.call(t)))return o;if(\"function\"==typeof(r=t.valueOf)&&!e(o=r.call(t)))return o;if(!n&&\"function\"==typeof(r=t.toString)&&!e(o=r.call(t)))return o;throw TypeError(\"Can't convert object to primitive value\")}},function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},function(t,n,r){var e=r(0),o=r(8),i=r(23),u=r(9)(\"src\"),c=Function.toString,f=(\"\"+c).split(\"toString\");r(2).inspectSource=function(t){return c.call(t)},(t.exports=function(t,n,r,c){var a=\"function\"==typeof r;a&&(i(r,\"name\")||o(r,\"name\",n)),t[n]!==r&&(a&&(i(r,u)||o(r,u,t[n]?\"\"+t[n]:f.join(String(n)))),t===e?t[n]=r:c?t[n]?t[n]=r:o(t,n,r):(delete t[n],o(t,n,r)))})(Function.prototype,\"toString\",function(){return\"function\"==typeof this&&this[u]||c.call(this)})},function(t,n){var r={}.hasOwnProperty;t.exports=function(t,n){return r.call(t,n)}},function(t,n){t.exports=function(t){if(\"function\"!=typeof t)throw TypeError(t+\" is not a function!\");return t}},function(t,n,r){var e=r(10),o=r(26),i=r(27),u=r(12),c=r(29);t.exports=function(t,n){var r=1==t,f=2==t,a=3==t,s=4==t,p=6==t,l=5==t||p,v=n||c;return function(n,c,y){for(var h,d,x=i(n),g=o(x),m=e(c,y,3),b=u(g.length),_=0,w=r?v(n,b):f?v(n,0):void 0;b>_;_++)if((l||_ in g)&&(h=g[_],d=m(h,_,x),t))if(r)w[_]=d;else if(d)switch(t){case 3:return!0;case 5:return h;case 6:return _;case 2:w.push(h)}else if(s)return!1;return p?-1:a||s?s:w}}},function(t,n,r){var e=r(5);t.exports=Object(\"z\").propertyIsEnumerable(0)?Object:function(t){return\"String\"==e(t)?t.split(\"\"):Object(t)}},function(t,n,r){var e=r(11);t.exports=function(t){return Object(e(t))}},function(t,n){var r=Math.ceil,e=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?e:r)(t)}},function(t,n,r){var e=r(30);t.exports=function(t,n){return new(e(t))(n)}},function(t,n,r){var e=r(1),o=r(31),i=r(6)(\"species\");t.exports=function(t){var n;return o(t)&&(n=t.constructor,\"function\"!=typeof n||n!==Array&&!o(n.prototype)||(n=void 0),e(n)&&null===(n=n[i])&&(n=void 0)),void 0===n?Array:n}},function(t,n,r){var e=r(5);t.exports=Array.isArray||function(t){return\"Array\"==e(t)}},function(t,n,r){var e=r(0),o=e[\"__core-js_shared__\"]||(e[\"__core-js_shared__\"]={});t.exports=function(t){return o[t]||(o[t]={})}},function(t,n,r){\"use strict\";var e=r(4);t.exports=function(t,n){return!!t&&e(function(){n?t.call(null,function(){},1):t.call(null)})}},function(t,n,r){r(35),t.exports=r(2).String.endsWith},function(t,n,r){\"use strict\";var e=r(7),o=r(12),i=r(36),u=\"\".endsWith;e(e.P+e.F*r(38)(\"endsWith\"),\"String\",{endsWith:function(t){var n=i(this,t,\"endsWith\"),r=arguments.length>1?arguments[1]:void 0,e=o(n.length),c=void 0===r?e:Math.min(o(r),e),f=String(t);return u?u.call(n,f,c):n.slice(c-f.length,c)===f}})},function(t,n,r){var e=r(37),o=r(11);t.exports=function(t,n,r){if(e(n))throw TypeError(\"String#\"+r+\" doesn't accept regex!\");return String(o(t))}},function(t,n,r){var e=r(1),o=r(5),i=r(6)(\"match\");t.exports=function(t){var n;return e(t)&&(void 0!==(n=t[i])?!!n:\"RegExp\"==o(t))}},function(t,n,r){var e=r(6)(\"match\");t.exports=function(t){var n=/./;try{\"/./\"[t](n)}catch(r){try{return n[e]=!1,!\"/./\"[t](n)}catch(t){}}return!0}}]);","var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nimport accepts from 'attr-accept';\n\nexport var supportMultiple = typeof document !== 'undefined' && document && document.createElement ? 'multiple' in document.createElement('input') : true;\n\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\nexport function fileAccepted(file, accept) {\n return file.type === 'application/x-moz-file' || accepts(file, accept);\n}\n\nexport function fileMatchSize(file, maxSize, minSize) {\n return file.size <= maxSize && file.size >= minSize;\n}\n\nexport function allFilesAccepted(files, accept) {\n return files.every(function (file) {\n return fileAccepted(file, accept);\n });\n}\n\n// React's synthetic events has evt.isPropagationStopped,\n// but to remain compatibility with other libs (Preact) fall back\n// to check evt.cancelBubble\nexport function isPropagationStopped(evt) {\n if (typeof evt.isPropagationStopped === 'function') {\n return evt.isPropagationStopped();\n } else if (typeof evt.cancelBubble !== 'undefined') {\n return evt.cancelBubble;\n }\n return false;\n}\n\n// React's synthetic events has evt.isDefaultPrevented,\n// but to remain compatibility with other libs (Preact) first\n// check evt.defaultPrevented\nexport function isDefaultPrevented(evt) {\n if (typeof evt.defaultPrevented !== 'undefined') {\n return evt.defaultPrevented;\n } else if (typeof evt.isDefaultPrevented === 'function') {\n return evt.isDefaultPrevented();\n }\n return false;\n}\n\nexport function isDragDataWithFiles(evt) {\n if (!evt.dataTransfer) {\n return true;\n }\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 return Array.prototype.some.call(evt.dataTransfer.types, function (type) {\n return type === 'Files' || type === 'application/x-moz-file';\n });\n}\n\nexport function isKindFile(item) {\n return (typeof item === 'undefined' ? 'undefined' : _typeof(item)) === 'object' && item !== null && item.kind === 'file';\n}\n\n// allow the entire document to be a drag target\nexport function onDocumentDragOver(evt) {\n evt.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\n return isIe(userAgent) || isEdge(userAgent);\n}\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.preventDefault()`.\n * Not sure this is the best way to do this, but it seems legit.\n * @param {Function} fns the event hanlder functions\n * @return {Function} the event handler to add to an element\n */\nexport function composeEventHandlers() {\n for (var _len = arguments.length, fns = 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 = 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 fn && fn.apply(undefined, [event].concat(args));\n return event.defaultPrevented;\n });\n };\n}","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\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(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n/* eslint prefer-template: 0 */\n\nimport React from 'react';\nimport { fromEvent } from 'file-selector';\nimport PropTypes from 'prop-types';\nimport { isDragDataWithFiles, supportMultiple, fileAccepted, allFilesAccepted, fileMatchSize, onDocumentDragOver, isIeOrEdge, composeEventHandlers, isPropagationStopped, isDefaultPrevented } from './utils';\n\nvar Dropzone = function (_React$Component) {\n _inherits(Dropzone, _React$Component);\n\n function Dropzone() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, Dropzone);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Dropzone.__proto__ || Object.getPrototypeOf(Dropzone)).call.apply(_ref, [this].concat(args))), _this), _this.state = {\n draggedFiles: [],\n acceptedFiles: [],\n rejectedFiles: []\n }, _this.isFileDialogActive = false, _this.onDocumentDrop = function (evt) {\n if (_this.node && _this.node.contains(evt.target)) {\n // if we intercepted an event for our instance, let it propagate down to the instance's onDrop handler\n return;\n }\n evt.preventDefault();\n _this.dragTargets = [];\n }, _this.onDragStart = function (evt) {\n evt.persist();\n if (_this.props.onDragStart && isDragDataWithFiles(evt)) {\n _this.props.onDragStart.call(_this, evt);\n }\n }, _this.onDragEnter = function (evt) {\n evt.preventDefault();\n\n // Count the dropzone and any children that are entered.\n if (_this.dragTargets.indexOf(evt.target) === -1) {\n _this.dragTargets.push(evt.target);\n }\n\n evt.persist();\n\n if (isDragDataWithFiles(evt)) {\n Promise.resolve(_this.props.getDataTransferItems(evt)).then(function (draggedFiles) {\n if (isPropagationStopped(evt)) {\n return;\n }\n\n _this.setState({\n draggedFiles: draggedFiles,\n // Do not rely on files for the drag state. It doesn't work in Safari.\n isDragActive: true\n });\n });\n\n if (_this.props.onDragEnter) {\n _this.props.onDragEnter.call(_this, evt);\n }\n }\n }, _this.onDragOver = function (evt) {\n // eslint-disable-line class-methods-use-this\n evt.preventDefault();\n evt.persist();\n\n if (evt.dataTransfer) {\n evt.dataTransfer.dropEffect = 'copy';\n }\n\n if (_this.props.onDragOver && isDragDataWithFiles(evt)) {\n _this.props.onDragOver.call(_this, evt);\n }\n\n return false;\n }, _this.onDragLeave = function (evt) {\n evt.preventDefault();\n evt.persist();\n\n // Only deactivate once the dropzone and all children have been left.\n _this.dragTargets = _this.dragTargets.filter(function (el) {\n return el !== evt.target && _this.node.contains(el);\n });\n if (_this.dragTargets.length > 0) {\n return;\n }\n\n // Clear dragging files state\n _this.setState({\n isDragActive: false,\n draggedFiles: []\n });\n\n if (_this.props.onDragLeave && isDragDataWithFiles(evt)) {\n _this.props.onDragLeave.call(_this, evt);\n }\n }, _this.onDrop = function (evt) {\n var _this$props = _this.props,\n onDrop = _this$props.onDrop,\n onDropAccepted = _this$props.onDropAccepted,\n onDropRejected = _this$props.onDropRejected,\n multiple = _this$props.multiple,\n accept = _this$props.accept,\n getDataTransferItems = _this$props.getDataTransferItems;\n\n // Stop default browser behavior\n\n evt.preventDefault();\n\n // Persist event for later usage\n evt.persist();\n\n // Reset the counter along with the drag on a drop.\n _this.dragTargets = [];\n _this.isFileDialogActive = false;\n\n // Clear files value\n _this.draggedFiles = null;\n\n // Reset drag state\n _this.setState({\n isDragActive: false,\n draggedFiles: []\n });\n\n if (isDragDataWithFiles(evt)) {\n Promise.resolve(getDataTransferItems(evt)).then(function (fileList) {\n var acceptedFiles = [];\n var rejectedFiles = [];\n\n if (isPropagationStopped(evt)) {\n return;\n }\n\n fileList.forEach(function (file) {\n if (fileAccepted(file, accept) && fileMatchSize(file, _this.props.maxSize, _this.props.minSize)) {\n acceptedFiles.push(file);\n } else {\n rejectedFiles.push(file);\n }\n });\n\n if (!multiple && acceptedFiles.length > 1) {\n // if not in multi mode add any extra accepted files to rejected.\n // This will allow end users to easily ignore a multi file drop in \"single\" mode.\n rejectedFiles.push.apply(rejectedFiles, _toConsumableArray(acceptedFiles.splice(0)));\n }\n\n // Update `acceptedFiles` and `rejectedFiles` state\n // This will make children render functions receive the appropriate\n // values\n _this.setState({ acceptedFiles: acceptedFiles, rejectedFiles: rejectedFiles }, function () {\n if (onDrop) {\n onDrop.call(_this, acceptedFiles, rejectedFiles, evt);\n }\n\n if (rejectedFiles.length > 0 && onDropRejected) {\n onDropRejected.call(_this, rejectedFiles, evt);\n }\n\n if (acceptedFiles.length > 0 && onDropAccepted) {\n onDropAccepted.call(_this, acceptedFiles, evt);\n }\n });\n });\n }\n }, _this.onClick = function (evt) {\n var onClick = _this.props.onClick;\n\n // if onClick prop is given, run it first\n\n if (onClick) {\n onClick.call(_this, evt);\n }\n\n // If the event hasn't been default prevented from within\n // the onClick listener, open the file dialog\n if (!isDefaultPrevented(evt)) {\n evt.stopPropagation();\n\n // in IE11/Edge the file-browser dialog is blocking, ensure this is behind setTimeout\n // this is so react can handle state changes in the onClick prop above above\n // see: https://github.com/react-dropzone/react-dropzone/issues/450\n if (isIeOrEdge()) {\n setTimeout(_this.open, 0);\n } else {\n _this.open();\n }\n }\n }, _this.onInputElementClick = function (evt) {\n evt.stopPropagation();\n }, _this.onFileDialogCancel = function () {\n // timeout will not recognize context of this method\n var onFileDialogCancel = _this.props.onFileDialogCancel;\n // execute the timeout only if the FileDialog is opened in the browser\n\n if (_this.isFileDialogActive) {\n setTimeout(function () {\n if (_this.input != null) {\n // Returns an object as FileList\n var files = _this.input.files;\n\n\n if (!files.length) {\n _this.isFileDialogActive = false;\n\n if (typeof onFileDialogCancel === 'function') {\n onFileDialogCancel();\n }\n }\n }\n }, 300);\n }\n }, _this.onFocus = function (evt) {\n var onFocus = _this.props.onFocus;\n\n if (onFocus) {\n onFocus.call(_this, evt);\n }\n if (!isDefaultPrevented(evt)) {\n _this.setState({ isFocused: true });\n }\n }, _this.onBlur = function (evt) {\n var onBlur = _this.props.onBlur;\n\n if (onBlur) {\n onBlur.call(_this, evt);\n }\n if (!isDefaultPrevented(evt)) {\n _this.setState({ isFocused: false });\n }\n }, _this.onKeyDown = function (evt) {\n var onKeyDown = _this.props.onKeyDown;\n\n if (!_this.node.isEqualNode(evt.target)) {\n return;\n }\n\n if (onKeyDown) {\n onKeyDown.call(_this, evt);\n }\n\n if (!isDefaultPrevented(evt) && (evt.keyCode === 32 || evt.keyCode === 13)) {\n evt.preventDefault();\n _this.open();\n }\n }, _this.composeHandler = function (handler) {\n if (_this.props.disabled) {\n return null;\n }\n return handler;\n }, _this.getRootProps = function () {\n var _extends2;\n\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var _ref2$refKey = _ref2.refKey,\n refKey = _ref2$refKey === undefined ? 'ref' : _ref2$refKey,\n onKeyDown = _ref2.onKeyDown,\n onFocus = _ref2.onFocus,\n onBlur = _ref2.onBlur,\n onClick = _ref2.onClick,\n onDragStart = _ref2.onDragStart,\n onDragEnter = _ref2.onDragEnter,\n onDragOver = _ref2.onDragOver,\n onDragLeave = _ref2.onDragLeave,\n onDrop = _ref2.onDrop,\n rest = _objectWithoutProperties(_ref2, ['refKey', 'onKeyDown', 'onFocus', 'onBlur', 'onClick', 'onDragStart', 'onDragEnter', 'onDragOver', 'onDragLeave', 'onDrop']);\n\n return _extends((_extends2 = {\n onKeyDown: _this.composeHandler(onKeyDown ? composeEventHandlers(onKeyDown, _this.onKeyDown) : _this.onKeyDown),\n onFocus: _this.composeHandler(onFocus ? composeEventHandlers(onFocus, _this.onFocus) : _this.onFocus),\n onBlur: _this.composeHandler(onBlur ? composeEventHandlers(onBlur, _this.onBlur) : _this.onBlur),\n onClick: _this.composeHandler(onClick ? composeEventHandlers(onClick, _this.onClick) : _this.onClick),\n onDragStart: _this.composeHandler(onDragStart ? composeEventHandlers(onDragStart, _this.onDragStart) : _this.onDragStart),\n onDragEnter: _this.composeHandler(onDragEnter ? composeEventHandlers(onDragEnter, _this.onDragEnter) : _this.onDragEnter),\n onDragOver: _this.composeHandler(onDragOver ? composeEventHandlers(onDragOver, _this.onDragOver) : _this.onDragOver),\n onDragLeave: _this.composeHandler(onDragLeave ? composeEventHandlers(onDragLeave, _this.onDragLeave) : _this.onDragLeave),\n onDrop: _this.composeHandler(onDrop ? composeEventHandlers(onDrop, _this.onDrop) : _this.onDrop)\n }, _defineProperty(_extends2, refKey, _this.setNodeRef), _defineProperty(_extends2, 'tabIndex', _this.props.disabled ? -1 : 0), _extends2), rest);\n }, _this.getInputProps = function () {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var _ref3$refKey = _ref3.refKey,\n refKey = _ref3$refKey === undefined ? 'ref' : _ref3$refKey,\n onChange = _ref3.onChange,\n onClick = _ref3.onClick,\n rest = _objectWithoutProperties(_ref3, ['refKey', 'onChange', 'onClick']);\n\n var _this$props2 = _this.props,\n accept = _this$props2.accept,\n multiple = _this$props2.multiple,\n name = _this$props2.name;\n\n var inputProps = _defineProperty({\n accept: accept,\n type: 'file',\n style: { display: 'none' },\n multiple: supportMultiple && multiple,\n onChange: composeEventHandlers(onChange, _this.onDrop),\n onClick: composeEventHandlers(onClick, _this.onInputElementClick),\n autoComplete: 'off',\n tabIndex: -1\n }, refKey, _this.setInputRef);\n if (name && name.length) {\n inputProps.name = name;\n }\n return _extends({}, inputProps, rest);\n }, _this.setNodeRef = function (node) {\n _this.node = node;\n }, _this.setInputRef = function (input) {\n _this.input = input;\n }, _this.open = function () {\n _this.isFileDialogActive = true;\n if (_this.input) {\n _this.input.value = null;\n _this.input.click();\n }\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(Dropzone, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n var preventDropOnDocument = this.props.preventDropOnDocument;\n\n this.dragTargets = [];\n\n if (preventDropOnDocument) {\n document.addEventListener('dragover', onDocumentDragOver, false);\n document.addEventListener('drop', this.onDocumentDrop, false);\n }\n\n window.addEventListener('focus', this.onFileDialogCancel, false);\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n var preventDropOnDocument = this.props.preventDropOnDocument;\n\n if (preventDropOnDocument) {\n document.removeEventListener('dragover', onDocumentDragOver);\n document.removeEventListener('drop', this.onDocumentDrop);\n }\n\n window.removeEventListener('focus', this.onFileDialogCancel, false);\n }\n\n /**\n * Open system file upload dialog.\n *\n * @public\n */\n\n }, {\n key: 'render',\n value: function render() {\n var _props = this.props,\n children = _props.children,\n multiple = _props.multiple,\n disabled = _props.disabled;\n var _state = this.state,\n isDragActive = _state.isDragActive,\n isFocused = _state.isFocused,\n draggedFiles = _state.draggedFiles,\n acceptedFiles = _state.acceptedFiles,\n rejectedFiles = _state.rejectedFiles;\n\n\n var filesCount = draggedFiles.length;\n var isMultipleAllowed = multiple || filesCount <= 1;\n var isDragAccept = filesCount > 0 && allFilesAccepted(draggedFiles, this.props.accept);\n var isDragReject = filesCount > 0 && (!isDragAccept || !isMultipleAllowed);\n\n return children({\n isDragActive: isDragActive,\n isDragAccept: isDragAccept,\n isDragReject: isDragReject,\n draggedFiles: draggedFiles,\n acceptedFiles: acceptedFiles,\n rejectedFiles: rejectedFiles,\n isFocused: isFocused && !disabled,\n getRootProps: this.getRootProps,\n getInputProps: this.getInputProps,\n open: this.open\n });\n }\n }]);\n\n return Dropzone;\n}(React.Component);\n\nexport default Dropzone;\n\nDropzone.propTypes = {\n /**\n * Allow specific types of files. See https://github.com/okonet/attr-accept 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.\n * See: https://github.com/react-dropzone/react-dropzone/issues/276\n */\n accept: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\n\n /**\n * Render function that renders the actual component\n *\n * @param {Object} props\n * @param {Function} props.getRootProps Returns the props you should apply to the root drop container you render\n * @param {Function} props.getInputProps Returns the props you should apply to hidden file input you render\n * @param {Function} props.open Open the native file selection dialog\n * @param {Boolean} props.isFocused Dropzone area is in focus\n * @param {Boolean} props.isDragActive Active drag is in progress\n * @param {Boolean} props.isDragAccept Dragged files are accepted\n * @param {Boolean} props.isDragReject Some dragged files are rejected\n * @param {Array} props.draggedFiles Files in active drag\n * @param {Array} props.acceptedFiles Accepted files\n * @param {Array} props.rejectedFiles Rejected files\n */\n children: PropTypes.func,\n\n /**\n * Enable/disable the dropzone entirely\n */\n disabled: 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 * Allow dropping multiple files\n */\n multiple: PropTypes.bool,\n\n /**\n * `name` attribute for the input tag\n */\n name: PropTypes.string,\n\n /**\n * Maximum file size (in bytes)\n */\n maxSize: PropTypes.number,\n\n /**\n * Minimum file size (in bytes)\n */\n minSize: PropTypes.number,\n\n /**\n * getDataTransferItems handler\n * @param {Event} event\n * @returns {Array} array of File objects\n */\n getDataTransferItems: PropTypes.func,\n\n /**\n * onClick callback\n * @param {Event} event\n */\n onClick: PropTypes.func,\n\n /**\n * onFocus callback\n */\n onFocus: PropTypes.func,\n\n /**\n * onBlur callback\n */\n onBlur: PropTypes.func,\n\n /**\n * onKeyDown callback\n */\n onKeyDown: PropTypes.func,\n\n /**\n * The `onDrop` method that accepts two arguments.\n * The first argument represents the accepted files and the second argument the rejected files.\n *\n * ```javascript\n * function onDrop(acceptedFiles, rejectedFiles) {\n * // do stuff with files...\n * }\n * ```\n *\n * Files are accepted or rejected based on the `accept` prop.\n * This 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 *\n * Note that the `onDrop` callback will always be called regardless if the dropped files were accepted or rejected.\n * You can use the `onDropAccepted`/`onDropRejected` props if you'd like to react to a specific event instead of the `onDrop` prop.\n *\n * The `onDrop` callback will provide you with an array of [Files](https://developer.mozilla.org/en-US/docs/Web/API/File) 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 * ```javascript\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 onDrop: PropTypes.func,\n\n /**\n * onDropAccepted callback\n */\n onDropAccepted: PropTypes.func,\n\n /**\n * onDropRejected callback\n */\n onDropRejected: PropTypes.func,\n\n /**\n * onDragStart callback\n */\n onDragStart: PropTypes.func,\n\n /**\n * onDragEnter callback\n */\n onDragEnter: PropTypes.func,\n\n /**\n * onDragOver callback\n */\n onDragOver: PropTypes.func,\n\n /**\n * onDragLeave callback\n */\n onDragLeave: PropTypes.func,\n\n /**\n * Provide a callback on clicking the cancel button of the file dialog\n */\n onFileDialogCancel: PropTypes.func\n};\n\nDropzone.defaultProps = {\n preventDropOnDocument: true,\n disabled: false,\n multiple: true,\n maxSize: Infinity,\n minSize: 0,\n getDataTransferItems: fromEvent\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 <input webkitdirectory> 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","import { __awaiter, __rest } from \"tslib\";\nimport * as React from 'react';\nimport Dropzone from 'react-dropzone';\nimport { FileUploadField } from './FileUploadField';\nimport { readFile, fileReaderType } from '../../helpers/fileUtils';\nimport { fromEvent } from 'file-selector';\nexport const FileUpload = (_a) => {\n var { id, type, value = type === fileReaderType.text || type === fileReaderType.dataURL ? '' : null, filename = '', children = null, onChange = () => { }, onFileInputChange = null, onReadStarted = () => { }, onReadFinished = () => { }, onReadFailed = () => { }, onClearClick, onClick = event => event.preventDefault(), onTextChange, onDataChange, dropzoneProps = {} } = _a, props = __rest(_a, [\"id\", \"type\", \"value\", \"filename\", \"children\", \"onChange\", \"onFileInputChange\", \"onReadStarted\", \"onReadFinished\", \"onReadFailed\", \"onClearClick\", \"onClick\", \"onTextChange\", \"onDataChange\", \"dropzoneProps\"]);\n const onDropAccepted = (acceptedFiles, event) => {\n if (acceptedFiles.length > 0) {\n const fileHandle = acceptedFiles[0];\n if (event.type === 'drop') {\n onFileInputChange === null || onFileInputChange === void 0 ? void 0 : onFileInputChange(event, fileHandle);\n }\n if (type === fileReaderType.text || type === fileReaderType.dataURL) {\n onChange('', fileHandle.name, event); // Show the filename while reading\n onReadStarted(fileHandle);\n readFile(fileHandle, type)\n .then(data => {\n onReadFinished(fileHandle);\n onChange(data, fileHandle.name, event);\n onDataChange === null || onDataChange === void 0 ? void 0 : onDataChange(data);\n })\n .catch((error) => {\n onReadFailed(error, fileHandle);\n onReadFinished(fileHandle);\n onChange('', '', event); // Clear the filename field on a failure\n onDataChange === null || onDataChange === void 0 ? void 0 : onDataChange('');\n });\n }\n else {\n onChange(fileHandle, fileHandle.name, event);\n }\n }\n dropzoneProps.onDropAccepted && dropzoneProps.onDropAccepted(acceptedFiles, event);\n };\n const onDropRejected = (rejectedFiles, event) => {\n if (rejectedFiles.length > 0) {\n onChange('', rejectedFiles[0].name, event);\n }\n dropzoneProps.onDropRejected && dropzoneProps.onDropRejected(rejectedFiles, event);\n };\n const fileInputRef = React.useRef();\n const setFileValue = (filename) => {\n fileInputRef.current.value = filename;\n };\n const onClearButtonClick = (event) => {\n onChange('', '', event);\n onClearClick === null || onClearClick === void 0 ? void 0 : onClearClick(event);\n setFileValue(null);\n };\n return (React.createElement(Dropzone, Object.assign({ multiple: false }, dropzoneProps, { onDropAccepted: onDropAccepted, onDropRejected: onDropRejected }), ({ getRootProps, getInputProps, isDragActive, open }) => {\n const oldInputProps = getInputProps();\n const inputProps = Object.assign(Object.assign({}, oldInputProps), { onChange: (e) => __awaiter(void 0, void 0, void 0, function* () {\n var _a;\n (_a = oldInputProps.onChange) === null || _a === void 0 ? void 0 : _a.call(oldInputProps, e);\n const files = yield fromEvent(e.nativeEvent);\n if (files.length === 1) {\n onFileInputChange === null || onFileInputChange === void 0 ? void 0 : onFileInputChange(e, files[0]);\n }\n }) });\n return (React.createElement(FileUploadField, Object.assign({}, getRootProps(Object.assign(Object.assign({}, props), { refKey: 'containerRef', onClick: event => event.preventDefault() })), { tabIndex: null, id: id, type: type, filename: filename, value: value, onChange: onChange, isDragActive: isDragActive, onBrowseButtonClick: open, onClearButtonClick: onClearButtonClick, onTextAreaClick: onClick, onTextChange: onTextChange }),\n React.createElement(\"input\", Object.assign({}, inputProps, { ref: input => {\n fileInputRef.current = input;\n inputProps.ref(input);\n } })),\n children));\n }));\n};\nFileUpload.displayName = 'FileUpload';\n//# sourceMappingURL=FileUpload.js.map","import './helper-text.css';\nexport default {\n \"helperText\": \"pf-c-helper-text\",\n \"helperTextItem\": \"pf-c-helper-text__item\",\n \"helperTextItemIcon\": \"pf-c-helper-text__item-icon\",\n \"helperTextItemText\": \"pf-c-helper-text__item-text\",\n \"modifiers\": {\n \"indeterminate\": \"pf-m-indeterminate\",\n \"warning\": \"pf-m-warning\",\n \"success\": \"pf-m-success\",\n \"error\": \"pf-m-error\",\n \"dynamic\": \"pf-m-dynamic\"\n },\n \"themeDark\": \"pf-theme-dark\"\n};","import { __rest } from \"tslib\";\nimport * as React from 'react';\nimport styles from '@patternfly/react-styles/css/components/HelperText/helper-text';\nimport { css } from '@patternfly/react-styles';\nexport const HelperText = (_a) => {\n var { children, className, component = 'div', id, isLiveRegion = false } = _a, props = __rest(_a, [\"children\", \"className\", \"component\", \"id\", \"isLiveRegion\"]);\n const Component = component;\n return (React.createElement(Component, Object.assign({ id: id, className: css(styles.helperText, className) }, (isLiveRegion && { 'aria-live': 'polite' }), props), children));\n};\nHelperText.displayName = 'HelperText';\n//# sourceMappingURL=HelperText.js.map","import { createIcon } from '../createIcon';\n\nexport const MinusIconConfig = {\n name: 'MinusIcon',\n height: 512,\n width: 448,\n svgPath: 'M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z',\n yOffset: 0,\n xOffset: 0,\n};\n\nexport const MinusIcon = createIcon(MinusIconConfig);\n\nexport default MinusIcon;","import { __rest } from \"tslib\";\nimport * as React from 'react';\nimport styles from '@patternfly/react-styles/css/components/HelperText/helper-text';\nimport { css } from '@patternfly/react-styles';\nimport MinusIcon from '@patternfly/react-icons/dist/esm/icons/minus-icon';\nimport ExclamationTriangleIcon from '@patternfly/react-icons/dist/esm/icons/exclamation-triangle-icon';\nimport CheckCircleIcon from '@patternfly/react-icons/dist/esm/icons/check-circle-icon';\nimport ExclamationCircleIcon from '@patternfly/react-icons/dist/esm/icons/exclamation-circle-icon';\nconst variantStyle = {\n default: '',\n indeterminate: styles.modifiers.indeterminate,\n warning: styles.modifiers.warning,\n success: styles.modifiers.success,\n error: styles.modifiers.error\n};\nexport const HelperTextItem = (_a) => {\n var { children, className, component = 'div', variant = 'default', icon, isDynamic = false, hasIcon = isDynamic, id, screenReaderText = `${variant} status` } = _a, props = __rest(_a, [\"children\", \"className\", \"component\", \"variant\", \"icon\", \"isDynamic\", \"hasIcon\", \"id\", \"screenReaderText\"]);\n const Component = component;\n return (React.createElement(Component, Object.assign({ className: css(styles.helperTextItem, variantStyle[variant], isDynamic && styles.modifiers.dynamic, className), id: id }, props),\n icon && (React.createElement(\"span\", { className: css(styles.helperTextItemIcon), \"aria-hidden\": true }, icon)),\n hasIcon && !icon && (React.createElement(\"span\", { className: css(styles.helperTextItemIcon), \"aria-hidden\": true },\n (variant === 'default' || variant === 'indeterminate') && React.createElement(MinusIcon, null),\n variant === 'warning' && React.createElement(ExclamationTriangleIcon, null),\n variant === 'success' && React.createElement(CheckCircleIcon, null),\n variant === 'error' && React.createElement(ExclamationCircleIcon, null))),\n React.createElement(\"span\", { className: css(styles.helperTextItemText) },\n children,\n isDynamic && React.createElement(\"span\", { className: \"pf-u-screen-reader\" },\n \": \",\n screenReaderText,\n \";\"))));\n};\nHelperTextItem.displayName = 'HelperTextItem';\n//# sourceMappingURL=HelperTextItem.js.map","import {\r\n Form,\r\n FormGroup,\r\n ActionGroup,\r\n FileUpload,\r\n Avatar,\r\n Button,\r\n HelperText,\r\n HelperTextItem\r\n} from \"@patternfly/react-core\";\r\nimport { useState, CSSProperties } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { useEnvironment } from \"../root/KeycloakContext\";\r\nimport { useAlerts, HelpItem } from \"ui-shared\";\r\n\r\ninterface AvatarFormProps {\r\n accountUrl: string;\r\n}\r\n\r\ninterface AvatarFormState {\r\n errors: any;\r\n imageBlob: any;\r\n filename: string;\r\n avatarUrl: string;\r\n avatarSrc: string;\r\n noAvatarSrc: string;\r\n}\r\n\r\nexport const AvatarForm = ({accountUrl} : AvatarFormProps) => {\r\n const { t } = useTranslation();\r\n const context = useEnvironment();\r\n const urlparts = accountUrl.indexOf('?') > 0 ? accountUrl.split('?') : accountUrl;\r\n const currentAvatarUrl = Array.isArray(urlparts) ? urlparts[0] + \"-avatar?\" + urlparts[1] : urlparts + \"-avatar\";\r\n const noavatar = \"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjAuMiwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAzNiAzNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMzYgMzY7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDojRjBGMEYwO30KCS5zdDF7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDojRDJEMkQyO30KCS5zdDJ7ZmlsbDojQjhCQkJFO30KCS5zdDN7ZmlsbDojRDJEMkQyO30KPC9zdHlsZT4KPHJlY3QgY2xhc3M9InN0MCIgd2lkdGg9IjM2IiBoZWlnaHQ9IjM2Ii8+CjxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0xNy43LDIwLjFjLTMuNSwwLTYuNC0yLjktNi40LTYuNHMyLjktNi40LDYuNC02LjRzNi40LDIuOSw2LjQsNi40UzIxLjMsMjAuMSwxNy43LDIwLjF6Ii8+CjxwYXRoIGNsYXNzPSJzdDIiIGQ9Ik0xMy4zLDM2bDAtNi43Yy0yLDAuNC0yLjksMS40LTMuMSwzLjVMMTAuMSwzNkgxMy4zeiIvPgo8cGF0aCBjbGFzcz0ic3QzIiBkPSJNMTAuMSwzNmwwLjEtMy4yYzAuMi0yLjEsMS4xLTMuMSwzLjEtMy41bDAsNi43aDkuNGwwLTYuN2MyLDAuNCwyLjksMS40LDMuMSwzLjVsMC4xLDMuMmg0LjcKCWMtMC40LTMuOS0xLjMtOS0yLjktMTFjLTEuMS0xLjQtMi4zLTIuMi0zLjUtMi42cy0xLjgtMC42LTYuMy0wLjZzLTYuMSwwLjctNi4xLDAuN2MtMS4yLDAuNC0yLjQsMS4yLTMuNCwyLjYKCUM2LjcsMjcsNS44LDMyLjIsNS40LDM2SDEwLjF6Ii8+CjxwYXRoIGNsYXNzPSJzdDIiIGQ9Ik0yNS45LDM2bC0wLjEtMy4yYy0wLjItMi4xLTEuMS0zLjEtMy4xLTMuNWwwLDYuN0gyNS45eiIvPgo8L3N2Zz4=\";\r\n const initialState = {\r\n errors: {avatar: \"\"},\r\n imageBlob: null,\r\n filename: \"\",\r\n avatarUrl: currentAvatarUrl,\r\n avatarSrc: currentAvatarUrl,\r\n noAvatarSrc: noavatar\r\n };\r\n const [state, setState] = useState<AvatarFormState>(initialState);\r\n const { addAlert, addError } = useAlerts();\r\n\r\n const reader = new FileReader();\r\n let currentFilename = \"\";\r\n reader.onloadend = (event: any) => {\r\n var imgData = String(event.target!.result)\r\n imageScale(imgData, (blob: Blob) => {\r\n setState({\r\n errors: {avatar: \"\"},\r\n imageBlob: blob,\r\n filename: currentFilename,\r\n avatarUrl: currentAvatarUrl,\r\n avatarSrc: URL.createObjectURL(blob),\r\n noAvatarSrc: noavatar\r\n })\r\n })\r\n };\r\n\r\n const handleFileInputChange = (_: any, file: File) => {\r\n if (file != null && file.name != \"\") {\r\n if (file.type.startsWith(\"image\")) {\r\n currentFilename = file.name;\r\n reader.readAsDataURL(file);\r\n } else {\r\n console.error(\"Wrong file type: \" + file.type);\r\n }\r\n }\r\n };\r\n\r\n const handleClear = (_: any) => {\r\n setState(initialState);\r\n };\r\n\r\n const imageScale = (imgData: string, callback: any) => {\r\n var img = new Image()\r\n img.src = imgData\r\n img.onload = (event: Event) => {\r\n var canvas = document.createElement(\"canvas\")\r\n var ctx = canvas.getContext(\"2d\")\r\n ctx!.drawImage(img, 0, 0)\r\n\r\n var MAX_WIDTH = 250\r\n var MAX_HEIGHT = 250\r\n var width = img.width\r\n var height = img.height\r\n\r\n if (width > height) {\r\n if (width > MAX_WIDTH) {\r\n height *= MAX_WIDTH / width\r\n width = MAX_WIDTH\r\n }\r\n } else {\r\n if (height > MAX_HEIGHT) {\r\n width *= MAX_HEIGHT / height\r\n height = MAX_HEIGHT\r\n }\r\n }\r\n canvas.width = width\r\n canvas.height = height\r\n ctx = canvas.getContext(\"2d\")\r\n ctx!.drawImage(img, 0, 0, width, height)\r\n canvas.toBlob(callback)\r\n }\r\n }\r\n\r\n const handleSubmit = (event: React.FormEvent<HTMLFormElement>): void => {\r\n event.preventDefault()\r\n const form = event.target as HTMLFormElement\r\n var formData = new FormData(form)\r\n formData.append(\"image\", state.imageBlob)\r\n var xhr = new XMLHttpRequest();\r\n xhr.onreadystatechange = () => {\r\n if (xhr.readyState == 4) {\r\n if (200 <= xhr.status && xhr.status <= 204) {\r\n addAlert(t(\"avatarUpdatedMessage\"));\r\n // force reload avatar\r\n setState(initialState);\r\n } else {\r\n addError(xhr.response);\r\n }\r\n }\r\n }\r\n xhr.open(form.method, form.action, true);\r\n xhr.send(formData);\r\n }\r\n\r\n const handleError = (event: any) => {\r\n setState({\r\n errors: {avatar: t('error-noAvatarFound')},\r\n imageBlob: null,\r\n filename: \"\",\r\n avatarUrl: \"\",\r\n avatarSrc: \"\",\r\n noAvatarSrc: noavatar\r\n })\r\n };\r\n\r\n const { filename, avatarUrl, avatarSrc, noAvatarSrc } = state;\r\n const avatarStyle = {\r\n objectFit: 'cover',\r\n width: '150px', height: '150px',\r\n border: '1px solid lightgray',\r\n boxShadow: 'lightgray 6px 3px 10px 2px'\r\n } as CSSProperties;\r\n\r\n return (\r\n <Form id=\"avatarForm\" method=\"post\"\r\n action={avatarUrl} encType=\"multipart/form-data\"\r\n onSubmit={handleSubmit}\r\n >\r\n <FormGroup label={t('avatarLabel')} fieldId=\"avatar-current-or-preview\">\r\n <HelperText>\r\n {state.errors.avatar !== \"\"\r\n && <HelperTextItem variant=\"error\" hasIcon>{state.errors.avatar}</HelperTextItem>\r\n }\r\n </HelperText>\r\n { avatarSrc !== \"\"\r\n ? <Avatar src={avatarSrc} style={avatarStyle} alt=\"Avatar image preview\" onError={handleError}/>\r\n : <Avatar src={noAvatarSrc} style={avatarStyle} alt=\"No avatar found\" />\r\n }\r\n </FormGroup>\r\n <FormGroup\r\n fieldId=\"avatar-upload\"\r\n label={t('uploadLabel')}\r\n labelIcon={\r\n <HelpItem\r\n helpText={t(\"avatarInfo\")}\r\n fieldLabelId=\"uploadLabel\"\r\n />\r\n }\r\n >\r\n <FileUpload\r\n id=\"simple-file\"\r\n filename={filename}\r\n filenamePlaceholder={t('dragdropInfo')}\r\n browseButtonText={t('browseButton')}\r\n onFileInputChange={handleFileInputChange}\r\n clearButtonText={t('clearButton')}\r\n onClearClick={handleClear}\r\n />\r\n </FormGroup>\r\n <ActionGroup>\r\n <Button\r\n id=\"save-btn\" type=\"submit\"\r\n variant=\"primary\"\r\n isDisabled={filename === \"\"}\r\n >\r\n {t('doSave')}\r\n </Button>\r\n </ActionGroup>\r\n </Form>\r\n )\r\n};\r\n\r\nexport default AvatarForm;","import {\r\n PageSection,\r\n PageSectionVariants,\r\n} from \"@patternfly/react-core\";\r\nimport { useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { getSupportedLocales } from \"../api/methods\";\r\nimport { UserProfileMetadata } from \"../api/representations\";\r\nimport { Page } from \"../components/page/Page\";\r\nimport { useEnvironment } from \"../root/KeycloakContext\";\r\nimport { usePromise } from \"../utils/usePromise\";\r\nimport { AvatarForm } from './AvatarForm';\r\n\r\ninterface AccountExtraPageProps {\r\n}\r\n\r\ninterface AccountExtraPageState {\r\n isModalOpen: boolean;\r\n}\r\n\r\nexport const AccountExtraPage = () => {\r\n const { t } = useTranslation();\r\n const context = useEnvironment();\r\n const [userProfileMetadata, setUserProfileMetadata] = useState<UserProfileMetadata>();\r\n const [supportedLocales, setSupportedLocales] = useState<string[]>([]);\r\n const accountUrl = context.keycloak.createAccountUrl();\r\n\r\n usePromise(\r\n (signal) =>\r\n Promise.all([\r\n getSupportedLocales({ signal, context }),\r\n ]),\r\n ([supportedLocales]) => {\r\n setSupportedLocales(supportedLocales);\r\n },\r\n );\r\n\r\n return (\r\n <Page title={t('accountExtraInfoHtmlTitle')} description={t('accountExtraSubMessage')}>\r\n <PageSection isFilled variant={PageSectionVariants.light}>\r\n <AvatarForm accountUrl={accountUrl}></AvatarForm>\r\n </PageSection>\r\n </Page>\r\n );\r\n};\r\n\r\nexport default AccountExtraPage;\r\n"],"names":["styles$1","fileReaderType","readFile","fileHandle","type","resolve","reject","reader","FileUploadField","_a","id","value","filename","onChange","onBrowseButtonClick","onClearButtonClick","onTextAreaClick","onTextChange","onTextAreaBlur","textAreaPlaceholder","className","isDisabled","isReadOnly","isLoading","spinnerAriaValueText","isRequired","isDragActive","validated","ariaLabel","filenamePlaceholder","filenameAriaLabel","browseButtonText","clearButtonText","isClearButtonDisabled","containerRef","allowEditingUploadedText","hideDefaultPreview","children","props","__rest","onTextAreaChange","newValue","event","React","css","styles","InputGroup","TextInput","Button","ButtonVariant","TextArea","TextAreResizeOrientation","Spinner","spinnerSize","COMMON_MIME_TYPES","toFileWithPath","file","path","f","withMimeType","webkitRelativePath","name","hasExtension","ext","FILES_TO_IGNORE","fromEvent","evt","__awaiter","__generator","isDragEvt","getDataTransferFiles","getInputFiles","files","isInput","fromList","dt","items","item","toFilePromises","noIgnoredFiles","flatten","i","fromDataTransferItem","entry","fromDirEntry","acc","__spread","fwp","fromEntry","fromFileEntry","entries","readEntries","_this","batch","err_1","err","ReactPropTypesSecret","ReactPropTypesSecret_1","require$$0","emptyFunction","emptyFunctionWithReset","factoryWithThrowingShims","shim","propName","componentName","location","propFullName","secret","getShim","ReactPropTypes","propTypesModule","dist","t","n","e","r","o","u","a","s","p","l","v","y","h","d","x","g","m","b","c","_","w","supportMultiple","fileAccepted","accept","accepts","fileMatchSize","maxSize","minSize","allFilesAccepted","isPropagationStopped","isDefaultPrevented","isDragDataWithFiles","onDocumentDragOver","isIe","userAgent","isEdge","isIeOrEdge","composeEventHandlers","_len","fns","_key","_len2","args","_key2","fn","_extends","target","source","key","_createClass","defineProperties","descriptor","Constructor","protoProps","staticProps","_defineProperty","obj","_objectWithoutProperties","keys","_toConsumableArray","arr","arr2","_classCallCheck","instance","_possibleConstructorReturn","self","call","_inherits","subClass","superClass","Dropzone","_React$Component","_ref","_temp","_ret","draggedFiles","el","_this$props","onDrop","onDropAccepted","onDropRejected","multiple","getDataTransferItems","fileList","acceptedFiles","rejectedFiles","onClick","onFileDialogCancel","onFocus","onBlur","onKeyDown","handler","_extends2","_ref2","_ref2$refKey","refKey","onDragStart","onDragEnter","onDragOver","onDragLeave","rest","_ref3","_ref3$refKey","_this$props2","inputProps","node","input","preventDropOnDocument","_props","disabled","_state","isFocused","filesCount","isMultipleAllowed","isDragAccept","isDragReject","PropTypes","isObject","isDataTransfer","isChangeEvt","getFsHandleFiles","handles","__spreadArray","__read","FileUpload","onFileInputChange","onReadStarted","onReadFinished","onReadFailed","onClearClick","onDataChange","dropzoneProps","data","error","fileInputRef","setFileValue","getRootProps","getInputProps","open","oldInputProps","HelperText","component","isLiveRegion","Component","MinusIconConfig","MinusIcon","createIcon","MinusIcon$1","variantStyle","HelperTextItem","variant","icon","isDynamic","hasIcon","screenReaderText","ExclamationTriangleIcon","CheckCircleIcon","ExclamationCircleIcon","AvatarForm","accountUrl","useTranslation","useEnvironment","urlparts","currentAvatarUrl","noavatar","initialState","state","setState","useState","addAlert","addError","useAlerts","currentFilename","imgData","imageScale","blob","handleFileInputChange","handleClear","callback","img","canvas","ctx","MAX_WIDTH","MAX_HEIGHT","width","height","handleSubmit","form","formData","xhr","handleError","avatarUrl","avatarSrc","noAvatarSrc","avatarStyle","jsxs","Form","FormGroup","jsx","Avatar","HelpItem","ActionGroup","AccountExtraPage","context","supportedLocales","setSupportedLocales","usePromise","signal","getSupportedLocales","Page","PageSection","PageSectionVariants"],"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]}