{"version":3,"sources":["webpack:///./node_modules/ant-design-vue/es/vc-upload/src/IframeUploader.js","webpack:///./node_modules/ant-design-vue/es/vc-upload/src/Upload.js","webpack:///./node_modules/ant-design-vue/es/vc-upload/src/index.js","webpack:///./node_modules/ant-design-vue/es/vc-upload/index.js","webpack:///./node_modules/ant-design-vue/es/version/index.js","webpack:///./node_modules/ant-design-vue/es/vc-util/warning.js","webpack:///./node_modules/ant-design-vue/es/vc-util/Dom/contains.js","webpack:///./node_modules/ant-design-vue/es/vc-upload/src/AjaxUploader.js","webpack:///./node_modules/ant-design-vue/es/vc-upload/src/uid.js","webpack:///./node_modules/ant-design-vue/es/vc-trigger/LazyRenderBox.js","webpack:///./node_modules/ant-design-vue/es/vc-trigger/PopupInner.js","webpack:///./node_modules/ant-design-vue/es/vc-trigger/Popup.js","webpack:///./node_modules/ant-design-vue/es/vc-trigger/utils.js","webpack:///./node_modules/ant-design-vue/es/vc-trigger/Trigger.js","webpack:///./node_modules/ant-design-vue/es/vc-trigger/index.js","webpack:///./node_modules/ant-design-vue/es/vc-upload/src/attr-accept.js","webpack:///./node_modules/ant-design-vue/es/vc-util/Dom/addEventListener.js","webpack:///./node_modules/ant-design-vue/es/vc-util/Dom/class.js","webpack:///./node_modules/ant-design-vue/es/vc-upload/src/request.js","webpack:///./node_modules/ant-design-vue/es/vc-upload/src/traverseFileTree.js"],"names":["IFRAME_STYLE","position","top","opacity","filter","left","zIndex","IframeUploader","mixins","BaseMixin","props","componentTag","string","disabled","bool","prefixCls","accept","multiple","data","oneOfType","object","func","action","name","this","file","uploading","methods","onLoad","response","doc","getIframeDocument","script","getElementsByTagName","parentNode","body","removeChild","innerHTML","$emit","err","warning","endUpload","onChange","_this","target","getFormInputNode","uid","value","substring","lastIndexOf","length","startUpload","$props","beforeUpload","post","before","then","getIframeNode","$refs","iframeRef","contentDocument","getFormNode","getElementById","getFormDataNode","getFileForMultiple","getIframeHTML","domain","domainScript","domainInput","initIframeSrc","src","initIframe","iframeNode","win","contentWindow","document","e","open","write","close","onchange","setState","updateIframeWH","rootNode","$el","style","height","offsetHeight","width","offsetWidth","abort","_this2","formNode","dataSpan","inputs","createDocumentFragment","key","hasOwnProperty","input","createElement","setAttribute","appendChild","Promise","resolve","submit","mounted","_this3","$nextTick","updated","_this4","render","_classNames","h","arguments","_$props","Tag","iframeStyle","display","attrs","className","ref","on","$slots","uploadProps","multipart","directory","headers","customRequest","method","withCredentials","supportServerRender","openFileDialogOnClick","transformFile","inheritAttrs","empty","Component","getComponent","File","uploaderRef","componentProps","$attrs","_ComponentUploader","i","warned","valid","message","call","contains","root","n","node","upLoadPropTypes","AjaxUploader","reqs","_isMounted","beforeDestroy","files","uploadFiles","reset","onClick","el","fileInputRef","click","onKeyDown","onFileDrop","preventDefault","type","dataTransfer","items","_file","p","Array","prototype","slice","successFiles","errorFiles","postFiles","map","forEach","upload","fileList","setTimeout","processedFile","processedFileType","Object","toString","console","log","_props$transformFile","originFile","request","error","transformedFile","requestOption","filename","onProgress","onSuccess","ret","xhr","onError","keys","cls","events","keydown","drop","dragover","role","tabIndex","id","webkitdirectory","stopPropagation","now","Date","index","visible","hiddenClassName","children","def","divProps","LazyRenderBox","getClassNameFromAlign","getRootDomNode","align","any","destroyPopupOnHide","getContainer","transitionName","animation","maskAnimation","maskTransitionName","mask","number","popupClassName","popupStyle","stretch","point","shape","pageX","pageY","domEl","stretchChecked","targetWidth","targetHeight","undefined","getPopupDomNode","setStretchSize","remove","onAlign","popupDomNode","currentAlignClassName","getClassName","listeners","_$data","$data","$ele","popupInstance","getTargetElement","getAlignTarget","getMaskTransitionName","getTransitionName","getPopupElement","$createElement","_$data2","sizeStyle","indexOf","minHeight","minWidth","alignInstance","forceAlign","popupInnerProps","getZIndexStyle","transitionProps","appear","css","useTransition","transitionEvent","beforeEnter","enter","done","beforeLeave","leave","_animation$on","_animation$props","_props","monitorWindowResize","PopupInner","directives","getMaskElement","maskElement","maskTransition","isPointsEq","a1","a2","isAlignPoint","noop","use","r","ALL_HANDLERS","arrayOf","showAction","hideAction","getPopupClassNameFromAlign","afterPopupVisibleChange","popup","popupPlacement","builtinPlacements","popupTransitionName","popupAnimation","mouseEnterDelay","mouseLeaveDelay","focusDelay","blurDelay","getPopupContainer","getDocument","window","forceRender","maskClosable","popupAlign","popupVisible","defaultPopupVisible","alignPoint","provide","vcTriggerContext","inject","savePopupRef","dialogContext","fireEvents","prevPopupVisible","sPopupVisible","watch","val","deactivated","setPopupVisible","renderComponent","updatedCal","clearDelayTimer","clearOutsideHandler","clearTimeout","mouseDownTimeout","currentDocument","clickOutsideHandler","isClickToHide","isContextmenuToShow","addEventListener","onDocumentClick","touchOutsideHandler","contextmenuOutsideHandler1","onContextmenuClose","contextmenuOutsideHandler2","onMouseenter","delaySetPopupVisible","onMouseMove","setPoint","onMouseleave","onPopupMouseenter","onPopupMouseleave","relatedTarget","_component","onFocus","isFocusToShow","focusTime","onMousedown","preClickTime","onTouchstart","preTouchTime","onBlur","activeElement","isBlurToHide","onContextmenu","event","preTime","Math","min","abs","isClickToShow","domEvent","nextVisible","onPopupMouseDown","_vcTriggerContext","hasPopupMouseDown","apply","handleGetPopupClassFromAlign","push","points","placement","getAlignPopupClassName","join","getPopupAlign","placementStr","baseAlign","getAlignFromPlacement","savePopup","self","mouseProps","isMouseEnterToShow","mouseenter","isMouseLeaveToHide","mouseleave","mousedown","touchstart","_self$$props","popupProps","Popup","popupContainer","popupVisibleChange","delayS","_this5","delay","delayTimer","requestAnimationTimeout","c","createTwoChains","fn","childOriginEvents","_$props2","_$props3","_$props4","_$props5","_$props6","_$props7","forcePopupAlign","__emit","_this6","_$props8","child","newChildProps","nativeOn","contextmenu","mousemove","focus","blur","trigger","ContainerRender","parent","autoMount","_ref","acceptedFiles","acceptedFilesArray","isArray","split","fileName","mimeType","baseMimeType","replace","some","validType","trim","charAt","str","suffix","endsWith","toLowerCase","test","addEventListenerWrap","eventType","cb","option","hasClass","classList","getBody","text","responseText","JSON","parse","XMLHttpRequest","onprogress","total","percent","loaded","formData","FormData","item","append","onerror","onload","status","msg","Error","url","getError","setRequestHeader","send","t","callback","isAccepted","_traverseFileTree","path","isFile","fullPath","webkitRelativePath","defineProperties","writable","isDirectory","dirReader","createReader","sequence","readEntries","entries","entryList","concat","loopFiles","entryItem","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","Symbol","iterator","next","webkitGetAsEntry"],"mappings":"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","file":"js/chunk-vendors~5ea6e0dc.a301681c.js","sourcesContent":["import _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport _extends from 'babel-runtime/helpers/extends';\nimport PropTypes from '../../_util/vue-types';\nimport BaseMixin from '../../_util/BaseMixin';\nimport classNames from 'classnames';\nimport getUid from './uid';\nimport warning from '../../_util/warning';\n\nvar IFRAME_STYLE = {\n position: 'absolute',\n top: 0,\n opacity: 0,\n filter: 'alpha(opacity=0)',\n left: 0,\n zIndex: 9999\n};\n\n// diferent from AjaxUpload, can only upload on at one time, serial seriously\nvar IframeUploader = {\n mixins: [BaseMixin],\n props: {\n componentTag: PropTypes.string,\n // style: PropTypes.object,\n disabled: PropTypes.bool,\n prefixCls: PropTypes.string,\n // className: PropTypes.string,\n accept: PropTypes.string,\n // onStart: PropTypes.func,\n multiple: PropTypes.bool,\n // children: PropTypes.any,\n data: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n action: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n name: PropTypes.string\n },\n data: function data() {\n this.file = {};\n return {\n uploading: false\n };\n },\n\n methods: {\n onLoad: function onLoad() {\n if (!this.uploading) {\n return;\n }\n var file = this.file;\n\n var response = void 0;\n try {\n var doc = this.getIframeDocument();\n var script = doc.getElementsByTagName('script')[0];\n if (script && script.parentNode === doc.body) {\n doc.body.removeChild(script);\n }\n response = doc.body.innerHTML;\n this.$emit('success', response, file);\n } catch (err) {\n warning(false, 'cross domain error for Upload. Maybe server should return document.domain script. see Note from https://github.com/react-component/upload');\n response = 'cross-domain';\n this.$emit('error', err, null, file);\n }\n this.endUpload();\n },\n onChange: function onChange() {\n var _this = this;\n\n var target = this.getFormInputNode();\n // ie8/9 don't support FileList Object\n // http://stackoverflow.com/questions/12830058/ie8-input-type-file-get-files\n var file = this.file = {\n uid: getUid(),\n name: target.value && target.value.substring(target.value.lastIndexOf('\\\\') + 1, target.value.length)\n };\n this.startUpload();\n var props = this.$props;\n\n if (!props.beforeUpload) {\n return this.post(file);\n }\n var before = props.beforeUpload(file);\n if (before && before.then) {\n before.then(function () {\n _this.post(file);\n }, function () {\n _this.endUpload();\n });\n } else if (before !== false) {\n this.post(file);\n } else {\n this.endUpload();\n }\n },\n getIframeNode: function getIframeNode() {\n return this.$refs.iframeRef;\n },\n getIframeDocument: function getIframeDocument() {\n return this.getIframeNode().contentDocument;\n },\n getFormNode: function getFormNode() {\n return this.getIframeDocument().getElementById('form');\n },\n getFormInputNode: function getFormInputNode() {\n return this.getIframeDocument().getElementById('input');\n },\n getFormDataNode: function getFormDataNode() {\n return this.getIframeDocument().getElementById('data');\n },\n getFileForMultiple: function getFileForMultiple(file) {\n return this.multiple ? [file] : file;\n },\n getIframeHTML: function getIframeHTML(domain) {\n var domainScript = '';\n var domainInput = '';\n if (domain) {\n var script = 'script';\n domainScript = '<' + script + '>document.domain=\"' + domain + '\";' + script + '>';\n domainInput = '';\n }\n return '\\n \\n \\n
\\n \\n \\n ' + domainScript + '\\n \\n \\n \\n \\n \\n ';\n },\n initIframeSrc: function initIframeSrc() {\n if (this.domain) {\n this.getIframeNode().src = 'javascript:void((function(){\\n var d = document;\\n d.open();\\n d.domain=\\'' + this.domain + '\\';\\n d.write(\\'\\');\\n d.close();\\n })())';\n }\n },\n initIframe: function initIframe() {\n var iframeNode = this.getIframeNode();\n var win = iframeNode.contentWindow;\n var doc = void 0;\n this.domain = this.domain || '';\n this.initIframeSrc();\n try {\n doc = win.document;\n } catch (e) {\n this.domain = document.domain;\n this.initIframeSrc();\n win = iframeNode.contentWindow;\n doc = win.document;\n }\n doc.open('text/html', 'replace');\n doc.write(this.getIframeHTML(this.domain));\n doc.close();\n this.getFormInputNode().onchange = this.onChange;\n },\n endUpload: function endUpload() {\n if (this.uploading) {\n this.file = {};\n // hack avoid batch\n this.uploading = false;\n this.setState({\n uploading: false\n });\n this.initIframe();\n }\n },\n startUpload: function startUpload() {\n if (!this.uploading) {\n this.uploading = true;\n this.setState({\n uploading: true\n });\n }\n },\n updateIframeWH: function updateIframeWH() {\n var rootNode = this.$el;\n var iframeNode = this.getIframeNode();\n iframeNode.style.height = rootNode.offsetHeight + 'px';\n iframeNode.style.width = rootNode.offsetWidth + 'px';\n },\n abort: function abort(file) {\n if (file) {\n var uid = file;\n if (file && file.uid) {\n uid = file.uid;\n }\n if (uid === this.file.uid) {\n this.endUpload();\n }\n } else {\n this.endUpload();\n }\n },\n post: function post(file) {\n var _this2 = this;\n\n var formNode = this.getFormNode();\n var dataSpan = this.getFormDataNode();\n var data = this.$props.data;\n\n if (typeof data === 'function') {\n data = data(file);\n }\n var inputs = document.createDocumentFragment();\n for (var key in data) {\n if (data.hasOwnProperty(key)) {\n var input = document.createElement('input');\n input.setAttribute('name', key);\n input.value = data[key];\n inputs.appendChild(input);\n }\n }\n dataSpan.appendChild(inputs);\n new Promise(function (resolve) {\n var action = _this2.action;\n\n if (typeof action === 'function') {\n return resolve(action(file));\n }\n resolve(action);\n }).then(function (action) {\n formNode.setAttribute('action', action);\n formNode.submit();\n dataSpan.innerHTML = '';\n _this2.$emit('start', file);\n });\n }\n },\n mounted: function mounted() {\n var _this3 = this;\n\n this.$nextTick(function () {\n _this3.updateIframeWH();\n _this3.initIframe();\n });\n },\n updated: function updated() {\n var _this4 = this;\n\n this.$nextTick(function () {\n _this4.updateIframeWH();\n });\n },\n render: function render() {\n var _classNames;\n\n var h = arguments[0];\n var _$props = this.$props,\n Tag = _$props.componentTag,\n disabled = _$props.disabled,\n prefixCls = _$props.prefixCls;\n\n var iframeStyle = _extends({}, IFRAME_STYLE, {\n display: this.uploading || disabled ? 'none' : ''\n });\n var cls = classNames((_classNames = {}, _defineProperty(_classNames, prefixCls, true), _defineProperty(_classNames, prefixCls + '-disabled', disabled), _classNames));\n\n return h(\n Tag,\n {\n attrs: { className: cls },\n style: { position: 'relative', zIndex: 0 } },\n [h('iframe', { ref: 'iframeRef', on: {\n 'load': this.onLoad\n },\n style: iframeStyle }), this.$slots['default']]\n );\n }\n};\n\nexport default IframeUploader;","import _extends from 'babel-runtime/helpers/extends';\nimport PropTypes from '../../_util/vue-types';\nimport { initDefaultProps, getListeners } from '../../_util/props-util';\nimport BaseMixin from '../../_util/BaseMixin';\nimport AjaxUpload from './AjaxUploader';\nimport IframeUpload from './IframeUploader';\n\nfunction empty() {}\n\nvar uploadProps = {\n componentTag: PropTypes.string,\n prefixCls: PropTypes.string,\n action: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n name: PropTypes.string,\n multipart: PropTypes.bool,\n directory: PropTypes.bool,\n // onError: PropTypes.func,\n // onSuccess: PropTypes.func,\n // onProgress: PropTypes.func,\n // onStart: PropTypes.func,\n data: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n headers: PropTypes.object,\n accept: PropTypes.string,\n multiple: PropTypes.bool,\n disabled: PropTypes.bool,\n beforeUpload: PropTypes.func,\n customRequest: PropTypes.func,\n // onReady: PropTypes.func,\n method: PropTypes.string,\n withCredentials: PropTypes.bool,\n supportServerRender: PropTypes.bool,\n openFileDialogOnClick: PropTypes.bool,\n transformFile: PropTypes.func\n};\nexport default {\n name: 'Upload',\n mixins: [BaseMixin],\n inheritAttrs: false,\n props: initDefaultProps(uploadProps, {\n componentTag: 'span',\n prefixCls: 'rc-upload',\n data: {},\n headers: {},\n name: 'file',\n multipart: false,\n // onReady: empty,\n // onStart: empty,\n // onError: empty,\n // onSuccess: empty,\n supportServerRender: false,\n multiple: false,\n beforeUpload: empty,\n withCredentials: false,\n openFileDialogOnClick: true\n }),\n data: function data() {\n return {\n Component: null\n };\n },\n mounted: function mounted() {\n var _this = this;\n\n this.$nextTick(function () {\n if (_this.supportServerRender) {\n _this.setState({\n Component: _this.getComponent()\n }, function () {\n _this.$emit('ready');\n });\n }\n });\n },\n\n methods: {\n getComponent: function getComponent() {\n return typeof File !== 'undefined' ? AjaxUpload : IframeUpload;\n },\n abort: function abort(file) {\n this.$refs.uploaderRef.abort(file);\n }\n },\n\n render: function render() {\n var h = arguments[0];\n\n var componentProps = {\n props: _extends({}, this.$props),\n on: getListeners(this),\n ref: 'uploaderRef',\n attrs: this.$attrs\n };\n if (this.supportServerRender) {\n var _ComponentUploader = this.Component;\n if (_ComponentUploader) {\n return h(\n _ComponentUploader,\n componentProps,\n [this.$slots['default']]\n );\n }\n return null;\n }\n var ComponentUploader = this.getComponent();\n return h(\n ComponentUploader,\n componentProps,\n [this.$slots['default']]\n );\n }\n};","// export this package's api\nimport Upload from './Upload';\n\nexport default Upload;","// rc-upload 2.9.4\nimport upload from './src';\n\nexport default upload;","import packageInfo from '../../package.json';\n\nexport default packageInfo.version;","/* eslint-disable no-console */\nvar warned = {};\n\nexport function warning(valid, message) {\n // Support uglify\n if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {\n console.error('Warning: ' + message);\n }\n}\n\nexport function note(valid, message) {\n // Support uglify\n if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {\n console.warn('Note: ' + message);\n }\n}\n\nexport function resetWarned() {\n warned = {};\n}\n\nexport function call(method, valid, message) {\n if (!valid && !warned[message]) {\n method(false, message);\n warned[message] = true;\n }\n}\n\nexport function warningOnce(valid, message) {\n call(warning, valid, message);\n}\n\nexport function noteOnce(valid, message) {\n call(note, valid, message);\n}\n\nexport default warningOnce;\n/* eslint-enable */","export default function contains(root, n) {\n var node = n;\n while (node) {\n if (node === root) {\n return true;\n }\n node = node.parentNode;\n }\n\n return false;\n}","import _extends from 'babel-runtime/helpers/extends';\nimport _defineProperty from 'babel-runtime/helpers/defineProperty';\nimport PropTypes from '../../_util/vue-types';\nimport BaseMixin from '../../_util/BaseMixin';\nimport partition from 'lodash/partition';\nimport classNames from 'classnames';\nimport defaultRequest from './request';\nimport getUid from './uid';\nimport attrAccept from './attr-accept';\nimport traverseFileTree from './traverseFileTree';\nimport { getListeners } from '../../_util/props-util';\n\nvar upLoadPropTypes = {\n componentTag: PropTypes.string,\n // style: PropTypes.object,\n prefixCls: PropTypes.string,\n name: PropTypes.string,\n // className: PropTypes.string,\n multiple: PropTypes.bool,\n directory: PropTypes.bool,\n disabled: PropTypes.bool,\n accept: PropTypes.string,\n // children: PropTypes.any,\n // onStart: PropTypes.func,\n data: PropTypes.oneOfType([PropTypes.object, PropTypes.func]),\n action: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n headers: PropTypes.object,\n beforeUpload: PropTypes.func,\n customRequest: PropTypes.func,\n // onProgress: PropTypes.func,\n withCredentials: PropTypes.bool,\n openFileDialogOnClick: PropTypes.bool,\n transformFile: PropTypes.func,\n method: PropTypes.string\n};\n\nvar AjaxUploader = {\n inheritAttrs: false,\n name: 'ajaxUploader',\n mixins: [BaseMixin],\n props: upLoadPropTypes,\n data: function data() {\n this.reqs = {};\n return {\n uid: getUid()\n };\n },\n mounted: function mounted() {\n this._isMounted = true;\n },\n beforeDestroy: function beforeDestroy() {\n this._isMounted = false;\n this.abort();\n },\n\n methods: {\n onChange: function onChange(e) {\n var files = e.target.files;\n this.uploadFiles(files);\n this.reset();\n },\n onClick: function onClick() {\n var el = this.$refs.fileInputRef;\n if (!el) {\n return;\n }\n el.click();\n },\n onKeyDown: function onKeyDown(e) {\n if (e.key === 'Enter') {\n this.onClick();\n }\n },\n onFileDrop: function onFileDrop(e) {\n var _this = this;\n\n var multiple = this.$props.multiple;\n\n e.preventDefault();\n if (e.type === 'dragover') {\n return;\n }\n if (this.directory) {\n traverseFileTree(e.dataTransfer.items, this.uploadFiles, function (_file) {\n return attrAccept(_file, _this.accept);\n });\n } else {\n var files = partition(Array.prototype.slice.call(e.dataTransfer.files), function (file) {\n return attrAccept(file, _this.accept);\n });\n var successFiles = files[0];\n var errorFiles = files[1];\n if (multiple === false) {\n successFiles = successFiles.slice(0, 1);\n }\n this.uploadFiles(successFiles);\n\n if (errorFiles.length) {\n this.$emit('reject', errorFiles);\n }\n }\n },\n uploadFiles: function uploadFiles(files) {\n var _this2 = this;\n\n var postFiles = Array.prototype.slice.call(files);\n postFiles.map(function (file) {\n file.uid = getUid();\n return file;\n }).forEach(function (file) {\n _this2.upload(file, postFiles);\n });\n },\n upload: function upload(file, fileList) {\n var _this3 = this;\n\n if (!this.beforeUpload) {\n // always async in case use react state to keep fileList\n return setTimeout(function () {\n return _this3.post(file);\n }, 0);\n }\n\n var before = this.beforeUpload(file, fileList);\n if (before && before.then) {\n before.then(function (processedFile) {\n var processedFileType = Object.prototype.toString.call(processedFile);\n if (processedFileType === '[object File]' || processedFileType === '[object Blob]') {\n return _this3.post(processedFile);\n }\n return _this3.post(file);\n })['catch'](function (e) {\n console && console.log(e); // eslint-disable-line\n });\n } else if (before !== false) {\n setTimeout(function () {\n return _this3.post(file);\n }, 0);\n }\n },\n post: function post(file) {\n var _this4 = this;\n\n if (!this._isMounted) {\n return;\n }\n var props = this.$props;\n var data = props.data;\n var _props$transformFile = props.transformFile,\n transformFile = _props$transformFile === undefined ? function (originFile) {\n return originFile;\n } : _props$transformFile;\n\n\n new Promise(function (resolve) {\n var action = _this4.action;\n\n if (typeof action === 'function') {\n return resolve(action(file));\n }\n resolve(action);\n }).then(function (action) {\n var uid = file.uid;\n\n var request = _this4.customRequest || defaultRequest;\n var transform = Promise.resolve(transformFile(file))['catch'](function (e) {\n console.error(e); // eslint-disable-line no-console\n });\n transform.then(function (transformedFile) {\n if (typeof data === 'function') {\n data = data(file);\n }\n\n var requestOption = {\n action: action,\n filename: _this4.name,\n data: data,\n file: transformedFile,\n headers: _this4.headers,\n withCredentials: _this4.withCredentials,\n method: props.method || 'post',\n onProgress: function onProgress(e) {\n _this4.$emit('progress', e, file);\n },\n onSuccess: function onSuccess(ret, xhr) {\n delete _this4.reqs[uid];\n _this4.$emit('success', ret, file, xhr);\n },\n onError: function onError(err, ret) {\n delete _this4.reqs[uid];\n _this4.$emit('error', err, ret, file);\n }\n };\n _this4.reqs[uid] = request(requestOption);\n _this4.$emit('start', file);\n });\n });\n },\n reset: function reset() {\n this.setState({\n uid: getUid()\n });\n },\n abort: function abort(file) {\n var reqs = this.reqs;\n\n if (file) {\n var uid = file;\n if (file && file.uid) {\n uid = file.uid;\n }\n if (reqs[uid] && reqs[uid].abort) {\n reqs[uid].abort();\n }\n delete reqs[uid];\n } else {\n Object.keys(reqs).forEach(function (uid) {\n if (reqs[uid] && reqs[uid].abort) {\n reqs[uid].abort();\n }\n\n delete reqs[uid];\n });\n }\n }\n },\n\n render: function render() {\n var _classNames;\n\n var h = arguments[0];\n var $props = this.$props,\n $attrs = this.$attrs;\n var Tag = $props.componentTag,\n prefixCls = $props.prefixCls,\n disabled = $props.disabled,\n multiple = $props.multiple,\n accept = $props.accept,\n directory = $props.directory,\n openFileDialogOnClick = $props.openFileDialogOnClick;\n\n var cls = classNames((_classNames = {}, _defineProperty(_classNames, prefixCls, true), _defineProperty(_classNames, prefixCls + '-disabled', disabled), _classNames));\n var events = disabled ? {} : {\n click: openFileDialogOnClick ? this.onClick : function () {},\n keydown: openFileDialogOnClick ? this.onKeyDown : function () {},\n drop: this.onFileDrop,\n dragover: this.onFileDrop\n };\n var tagProps = {\n on: _extends({}, getListeners(this), events),\n attrs: {\n role: 'button',\n tabIndex: disabled ? null : '0'\n },\n 'class': cls\n };\n return h(\n Tag,\n tagProps,\n [h('input', {\n attrs: {\n id: $attrs.id,\n type: 'file',\n\n accept: accept,\n directory: directory ? 'directory' : null,\n webkitdirectory: directory ? 'webkitdirectory' : null,\n multiple: multiple\n },\n ref: 'fileInputRef',\n on: {\n 'click': function click(e) {\n return e.stopPropagation();\n },\n 'change': this.onChange\n },\n // https://github.com/ant-design/ant-design/issues/19948\n key: this.uid,\n style: { display: 'none' } }), this.$slots['default']]\n );\n }\n};\n\nexport default AjaxUploader;","var now = +new Date();\nvar index = 0;\n\nexport default function uid() {\n return \"vc-upload-\" + now + \"-\" + ++index;\n}","import PropTypes from '../_util/vue-types';\n\nexport default {\n props: {\n visible: PropTypes.bool,\n hiddenClassName: PropTypes.string\n },\n render: function render() {\n var h = arguments[0];\n var _$props = this.$props,\n hiddenClassName = _$props.hiddenClassName,\n visible = _$props.visible;\n\n var children = null;\n if (hiddenClassName || !this.$slots['default'] || this.$slots['default'].length > 1) {\n var cls = '';\n if (!visible && hiddenClassName) {\n // cls += ` ${hiddenClassName}`\n }\n children = h(\n 'div',\n { 'class': cls },\n [this.$slots['default']]\n );\n } else {\n children = this.$slots['default'][0];\n }\n return children;\n }\n};","import _mergeJSXProps from 'babel-helper-vue-jsx-merge-props';\nimport PropTypes from '../_util/vue-types';\nimport LazyRenderBox from './LazyRenderBox';\nimport { getListeners } from '../_util/props-util';\n\nexport default {\n props: {\n hiddenClassName: PropTypes.string.def(''),\n prefixCls: PropTypes.string,\n visible: PropTypes.bool\n },\n render: function render() {\n var h = arguments[0];\n var _$props = this.$props,\n prefixCls = _$props.prefixCls,\n visible = _$props.visible,\n hiddenClassName = _$props.hiddenClassName;\n\n var divProps = {\n on: getListeners(this)\n };\n\n return h(\n 'div',\n _mergeJSXProps([divProps, { 'class': !visible ? hiddenClassName : '' }]),\n [h(\n LazyRenderBox,\n { 'class': prefixCls + '-content', attrs: { visible: visible }\n },\n [this.$slots['default']]\n )]\n );\n }\n};","import _typeof from 'babel-runtime/helpers/typeof';\nimport _extends from 'babel-runtime/helpers/extends';\nimport PropTypes from '../_util/vue-types';\nimport Align from '../vc-align';\nimport PopupInner from './PopupInner';\nimport LazyRenderBox from './LazyRenderBox';\nimport animate from '../_util/css-animation';\nimport BaseMixin from '../_util/BaseMixin';\nimport { getListeners } from '../_util/props-util';\n\nexport default {\n name: 'VCTriggerPopup',\n mixins: [BaseMixin],\n props: {\n visible: PropTypes.bool,\n getClassNameFromAlign: PropTypes.func,\n getRootDomNode: PropTypes.func,\n align: PropTypes.any,\n destroyPopupOnHide: PropTypes.bool,\n prefixCls: PropTypes.string,\n getContainer: PropTypes.func,\n transitionName: PropTypes.string,\n animation: PropTypes.any,\n maskAnimation: PropTypes.string,\n maskTransitionName: PropTypes.string,\n mask: PropTypes.bool,\n zIndex: PropTypes.number,\n popupClassName: PropTypes.any,\n popupStyle: PropTypes.object.def(function () {\n return {};\n }),\n stretch: PropTypes.string,\n point: PropTypes.shape({\n pageX: PropTypes.number,\n pageY: PropTypes.number\n })\n },\n data: function data() {\n this.domEl = null;\n return {\n // Used for stretch\n stretchChecked: false,\n targetWidth: undefined,\n targetHeight: undefined\n };\n },\n mounted: function mounted() {\n var _this = this;\n\n this.$nextTick(function () {\n _this.rootNode = _this.getPopupDomNode();\n _this.setStretchSize();\n });\n },\n\n // 如添加会导致动画失效,如放开会导致快速输入时闪动 https://github.com/vueComponent/ant-design-vue/issues/1327,\n // 目前方案是保留动画,闪动问题(动画多次执行)进一步定位\n // beforeUpdate() {\n // if (this.domEl && this.domEl.rcEndListener) {\n // this.domEl.rcEndListener();\n // this.domEl = null;\n // }\n // },\n updated: function updated() {\n var _this2 = this;\n\n this.$nextTick(function () {\n _this2.setStretchSize();\n });\n },\n beforeDestroy: function beforeDestroy() {\n if (this.$el.parentNode) {\n this.$el.parentNode.removeChild(this.$el);\n } else if (this.$el.remove) {\n this.$el.remove();\n }\n },\n\n methods: {\n onAlign: function onAlign(popupDomNode, align) {\n var props = this.$props;\n var currentAlignClassName = props.getClassNameFromAlign(align);\n // FIX: https://github.com/react-component/trigger/issues/56\n // FIX: https://github.com/react-component/tooltip/issues/79\n if (this.currentAlignClassName !== currentAlignClassName) {\n this.currentAlignClassName = currentAlignClassName;\n popupDomNode.className = this.getClassName(currentAlignClassName);\n }\n var listeners = getListeners(this);\n listeners.align && listeners.align(popupDomNode, align);\n },\n\n\n // Record size if stretch needed\n setStretchSize: function setStretchSize() {\n var _$props = this.$props,\n stretch = _$props.stretch,\n getRootDomNode = _$props.getRootDomNode,\n visible = _$props.visible;\n var _$data = this.$data,\n stretchChecked = _$data.stretchChecked,\n targetHeight = _$data.targetHeight,\n targetWidth = _$data.targetWidth;\n\n\n if (!stretch || !visible) {\n if (stretchChecked) {\n this.setState({ stretchChecked: false });\n }\n return;\n }\n\n var $ele = getRootDomNode();\n if (!$ele) return;\n\n var height = $ele.offsetHeight;\n var width = $ele.offsetWidth;\n\n if (targetHeight !== height || targetWidth !== width || !stretchChecked) {\n this.setState({\n stretchChecked: true,\n targetHeight: height,\n targetWidth: width\n });\n }\n },\n getPopupDomNode: function getPopupDomNode() {\n return this.$refs.popupInstance ? this.$refs.popupInstance.$el : null;\n },\n getTargetElement: function getTargetElement() {\n return this.$props.getRootDomNode();\n },\n\n\n // `target` on `rc-align` can accept as a function to get the bind element or a point.\n // ref: https://www.npmjs.com/package/rc-align\n getAlignTarget: function getAlignTarget() {\n var point = this.$props.point;\n\n if (point) {\n return point;\n }\n return this.getTargetElement;\n },\n getMaskTransitionName: function getMaskTransitionName() {\n var props = this.$props;\n var transitionName = props.maskTransitionName;\n var animation = props.maskAnimation;\n if (!transitionName && animation) {\n transitionName = props.prefixCls + '-' + animation;\n }\n return transitionName;\n },\n getTransitionName: function getTransitionName() {\n var props = this.$props;\n var transitionName = props.transitionName;\n var animation = props.animation;\n if (!transitionName) {\n if (typeof animation === 'string') {\n transitionName = '' + animation;\n } else if (animation && animation.props && animation.props.name) {\n transitionName = animation.props.name;\n }\n }\n return transitionName;\n },\n getClassName: function getClassName(currentAlignClassName) {\n return this.$props.prefixCls + ' ' + this.$props.popupClassName + ' ' + currentAlignClassName;\n },\n getPopupElement: function getPopupElement() {\n var _this3 = this;\n\n var h = this.$createElement;\n var props = this.$props,\n $slots = this.$slots,\n getTransitionName = this.getTransitionName;\n var _$data2 = this.$data,\n stretchChecked = _$data2.stretchChecked,\n targetHeight = _$data2.targetHeight,\n targetWidth = _$data2.targetWidth;\n var align = props.align,\n visible = props.visible,\n prefixCls = props.prefixCls,\n animation = props.animation,\n popupStyle = props.popupStyle,\n getClassNameFromAlign = props.getClassNameFromAlign,\n destroyPopupOnHide = props.destroyPopupOnHide,\n stretch = props.stretch;\n\n var className = this.getClassName(this.currentAlignClassName || getClassNameFromAlign(align));\n // const hiddenClassName = `${prefixCls}-hidden`\n if (!visible) {\n this.currentAlignClassName = null;\n }\n var sizeStyle = {};\n if (stretch) {\n // Stretch with target\n if (stretch.indexOf('height') !== -1) {\n sizeStyle.height = typeof targetHeight === 'number' ? targetHeight + 'px' : targetHeight;\n } else if (stretch.indexOf('minHeight') !== -1) {\n sizeStyle.minHeight = typeof targetHeight === 'number' ? targetHeight + 'px' : targetHeight;\n }\n if (stretch.indexOf('width') !== -1) {\n sizeStyle.width = typeof targetWidth === 'number' ? targetWidth + 'px' : targetWidth;\n } else if (stretch.indexOf('minWidth') !== -1) {\n sizeStyle.minWidth = typeof targetWidth === 'number' ? targetWidth + 'px' : targetWidth;\n }\n // Delay force align to makes ui smooth\n if (!stretchChecked) {\n // sizeStyle.visibility = 'hidden'\n setTimeout(function () {\n if (_this3.$refs.alignInstance) {\n _this3.$refs.alignInstance.forceAlign();\n }\n }, 0);\n }\n }\n var popupInnerProps = {\n props: {\n prefixCls: prefixCls,\n visible: visible\n // hiddenClassName,\n },\n 'class': className,\n on: getListeners(this),\n ref: 'popupInstance',\n style: _extends({}, sizeStyle, popupStyle, this.getZIndexStyle())\n };\n var transitionProps = {\n props: {\n appear: true,\n css: false\n }\n };\n var transitionName = getTransitionName();\n var useTransition = !!transitionName;\n var transitionEvent = {\n beforeEnter: function beforeEnter() {\n // el.style.display = el.__vOriginalDisplay\n // this.$refs.alignInstance.forceAlign();\n },\n enter: function enter(el, done) {\n // render 后 vue 会移除通过animate动态添加的 class导致动画闪动,延迟两帧添加动画class,可以进一步定位或者重写 transition 组件\n _this3.$nextTick(function () {\n if (_this3.$refs.alignInstance) {\n _this3.$refs.alignInstance.$nextTick(function () {\n _this3.domEl = el;\n animate(el, transitionName + '-enter', done);\n });\n } else {\n done();\n }\n });\n },\n beforeLeave: function beforeLeave() {\n _this3.domEl = null;\n },\n leave: function leave(el, done) {\n animate(el, transitionName + '-leave', done);\n }\n };\n\n if ((typeof animation === 'undefined' ? 'undefined' : _typeof(animation)) === 'object') {\n useTransition = true;\n\n var _animation$on = animation.on,\n on = _animation$on === undefined ? {} : _animation$on,\n _animation$props = animation.props,\n _props = _animation$props === undefined ? {} : _animation$props;\n\n transitionProps.props = _extends({}, transitionProps.props, _props);\n transitionProps.on = _extends({}, transitionEvent, on);\n } else {\n transitionProps.on = transitionEvent;\n }\n if (!useTransition) {\n transitionProps = {};\n }\n if (destroyPopupOnHide) {\n return h(\n 'transition',\n transitionProps,\n [visible ? h(\n Align,\n {\n attrs: {\n target: this.getAlignTarget(),\n\n monitorWindowResize: true,\n align: align\n },\n key: 'popup',\n ref: 'alignInstance', on: {\n 'align': this.onAlign\n }\n },\n [h(\n PopupInner,\n popupInnerProps,\n [$slots['default']]\n )]\n ) : null]\n );\n }\n return h(\n 'transition',\n transitionProps,\n [h(\n Align,\n {\n directives: [{\n name: 'show',\n value: visible\n }],\n attrs: {\n target: this.getAlignTarget(),\n\n monitorWindowResize: true,\n disabled: !visible,\n align: align\n },\n key: 'popup',\n ref: 'alignInstance', on: {\n 'align': this.onAlign\n }\n },\n [h(\n PopupInner,\n popupInnerProps,\n [$slots['default']]\n )]\n )]\n );\n },\n getZIndexStyle: function getZIndexStyle() {\n var style = {};\n var props = this.$props;\n if (props.zIndex !== undefined) {\n style.zIndex = props.zIndex;\n }\n return style;\n },\n getMaskElement: function getMaskElement() {\n var h = this.$createElement;\n\n var props = this.$props;\n var maskElement = null;\n if (props.mask) {\n var maskTransition = this.getMaskTransitionName();\n maskElement = h(LazyRenderBox, {\n directives: [{\n name: 'show',\n value: props.visible\n }],\n\n style: this.getZIndexStyle(),\n key: 'mask',\n 'class': props.prefixCls + '-mask',\n attrs: { visible: props.visible\n }\n });\n if (maskTransition) {\n maskElement = h(\n 'transition',\n {\n attrs: { appear: true, name: maskTransition }\n },\n [maskElement]\n );\n }\n }\n return maskElement;\n }\n },\n\n render: function render() {\n var h = arguments[0];\n var getMaskElement = this.getMaskElement,\n getPopupElement = this.getPopupElement;\n\n return h('div', [getMaskElement(), getPopupElement()]);\n }\n};","import _extends from 'babel-runtime/helpers/extends';\nfunction isPointsEq(a1, a2, isAlignPoint) {\n if (isAlignPoint) {\n return a1[0] === a2[0];\n }\n return a1[0] === a2[0] && a1[1] === a2[1];\n}\n\nexport function getAlignFromPlacement(builtinPlacements, placementStr, align) {\n var baseAlign = builtinPlacements[placementStr] || {};\n return _extends({}, baseAlign, align);\n}\n\nexport function getAlignPopupClassName(builtinPlacements, prefixCls, align, isAlignPoint) {\n var points = align.points;\n for (var placement in builtinPlacements) {\n if (builtinPlacements.hasOwnProperty(placement)) {\n if (isPointsEq(builtinPlacements[placement].points, points, isAlignPoint)) {\n return prefixCls + '-placement-' + placement;\n }\n }\n }\n return '';\n}\nexport function noop() {}","import _extends from 'babel-runtime/helpers/extends';\nimport Vue from 'vue';\nimport ref from 'vue-ref';\nimport PropTypes from '../_util/vue-types';\nimport contains from '../vc-util/Dom/contains';\nimport { hasProp, getComponentFromProp, getDataEvents, filterEmpty, getListeners } from '../_util/props-util';\nimport { requestAnimationTimeout, cancelAnimationTimeout } from '../_util/requestAnimationTimeout';\nimport addEventListener from '../vc-util/Dom/addEventListener';\nimport warning from '../_util/warning';\nimport Popup from './Popup';\nimport { getAlignFromPlacement, getAlignPopupClassName, noop } from './utils';\nimport BaseMixin from '../_util/BaseMixin';\nimport { cloneElement } from '../_util/vnode';\nimport ContainerRender from '../_util/ContainerRender';\n\nVue.use(ref, { name: 'ant-ref' });\n\nfunction returnEmptyString() {\n return '';\n}\n\nfunction returnDocument() {\n return window.document;\n}\nvar ALL_HANDLERS = ['click', 'mousedown', 'touchstart', 'mouseenter', 'mouseleave', 'focus', 'blur', 'contextmenu'];\n\nexport default {\n name: 'Trigger',\n mixins: [BaseMixin],\n props: {\n action: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]).def([]),\n showAction: PropTypes.any.def([]),\n hideAction: PropTypes.any.def([]),\n getPopupClassNameFromAlign: PropTypes.any.def(returnEmptyString),\n // onPopupVisibleChange: PropTypes.func.def(noop),\n afterPopupVisibleChange: PropTypes.func.def(noop),\n popup: PropTypes.any,\n popupStyle: PropTypes.object.def(function () {\n return {};\n }),\n prefixCls: PropTypes.string.def('rc-trigger-popup'),\n popupClassName: PropTypes.string.def(''),\n popupPlacement: PropTypes.string,\n builtinPlacements: PropTypes.object,\n popupTransitionName: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n popupAnimation: PropTypes.any,\n mouseEnterDelay: PropTypes.number.def(0),\n mouseLeaveDelay: PropTypes.number.def(0.1),\n zIndex: PropTypes.number,\n focusDelay: PropTypes.number.def(0),\n blurDelay: PropTypes.number.def(0.15),\n getPopupContainer: PropTypes.func,\n getDocument: PropTypes.func.def(returnDocument),\n forceRender: PropTypes.bool,\n destroyPopupOnHide: PropTypes.bool.def(false),\n mask: PropTypes.bool.def(false),\n maskClosable: PropTypes.bool.def(true),\n // onPopupAlign: PropTypes.func.def(noop),\n popupAlign: PropTypes.object.def(function () {\n return {};\n }),\n popupVisible: PropTypes.bool,\n defaultPopupVisible: PropTypes.bool.def(false),\n maskTransitionName: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n maskAnimation: PropTypes.string,\n stretch: PropTypes.string,\n alignPoint: PropTypes.bool // Maybe we can support user pass position in the future\n },\n provide: function provide() {\n return {\n vcTriggerContext: this\n };\n },\n\n inject: {\n vcTriggerContext: { 'default': function _default() {\n return {};\n } },\n savePopupRef: { 'default': function _default() {\n return noop;\n } },\n dialogContext: { 'default': function _default() {\n return null;\n } }\n },\n data: function data() {\n var _this = this;\n\n var props = this.$props;\n var popupVisible = void 0;\n if (hasProp(this, 'popupVisible')) {\n popupVisible = !!props.popupVisible;\n } else {\n popupVisible = !!props.defaultPopupVisible;\n }\n ALL_HANDLERS.forEach(function (h) {\n _this['fire' + h] = function (e) {\n _this.fireEvents(h, e);\n };\n });\n return {\n prevPopupVisible: popupVisible,\n sPopupVisible: popupVisible,\n point: null\n };\n },\n\n watch: {\n popupVisible: function popupVisible(val) {\n if (val !== undefined) {\n this.prevPopupVisible = this.sPopupVisible;\n this.sPopupVisible = val;\n }\n }\n },\n deactivated: function deactivated() {\n this.setPopupVisible(false);\n },\n mounted: function mounted() {\n var _this2 = this;\n\n this.$nextTick(function () {\n _this2.renderComponent(null);\n _this2.updatedCal();\n });\n },\n updated: function updated() {\n var _this3 = this;\n\n var triggerAfterPopupVisibleChange = function triggerAfterPopupVisibleChange() {\n if (_this3.sPopupVisible !== _this3.prevPopupVisible) {\n _this3.afterPopupVisibleChange(_this3.sPopupVisible);\n }\n _this3.prevPopupVisible = _this3.sPopupVisible;\n };\n this.renderComponent(null, triggerAfterPopupVisibleChange);\n this.$nextTick(function () {\n _this3.updatedCal();\n });\n },\n beforeDestroy: function beforeDestroy() {\n this.clearDelayTimer();\n this.clearOutsideHandler();\n clearTimeout(this.mouseDownTimeout);\n },\n\n methods: {\n updatedCal: function updatedCal() {\n var props = this.$props;\n var state = this.$data;\n\n // We must listen to `mousedown` or `touchstart`, edge case:\n // https://github.com/ant-design/ant-design/issues/5804\n // https://github.com/react-component/calendar/issues/250\n // https://github.com/react-component/trigger/issues/50\n if (state.sPopupVisible) {\n var currentDocument = void 0;\n if (!this.clickOutsideHandler && (this.isClickToHide() || this.isContextmenuToShow())) {\n currentDocument = props.getDocument();\n this.clickOutsideHandler = addEventListener(currentDocument, 'mousedown', this.onDocumentClick);\n }\n // always hide on mobile\n if (!this.touchOutsideHandler) {\n currentDocument = currentDocument || props.getDocument();\n this.touchOutsideHandler = addEventListener(currentDocument, 'touchstart', this.onDocumentClick);\n }\n // close popup when trigger type contains 'onContextmenu' and document is scrolling.\n if (!this.contextmenuOutsideHandler1 && this.isContextmenuToShow()) {\n currentDocument = currentDocument || props.getDocument();\n this.contextmenuOutsideHandler1 = addEventListener(currentDocument, 'scroll', this.onContextmenuClose);\n }\n // close popup when trigger type contains 'onContextmenu' and window is blur.\n if (!this.contextmenuOutsideHandler2 && this.isContextmenuToShow()) {\n this.contextmenuOutsideHandler2 = addEventListener(window, 'blur', this.onContextmenuClose);\n }\n } else {\n this.clearOutsideHandler();\n }\n },\n onMouseenter: function onMouseenter(e) {\n var mouseEnterDelay = this.$props.mouseEnterDelay;\n\n this.fireEvents('mouseenter', e);\n this.delaySetPopupVisible(true, mouseEnterDelay, mouseEnterDelay ? null : e);\n },\n onMouseMove: function onMouseMove(e) {\n this.fireEvents('mousemove', e);\n this.setPoint(e);\n },\n onMouseleave: function onMouseleave(e) {\n this.fireEvents('mouseleave', e);\n this.delaySetPopupVisible(false, this.$props.mouseLeaveDelay);\n },\n onPopupMouseenter: function onPopupMouseenter() {\n this.clearDelayTimer();\n },\n onPopupMouseleave: function onPopupMouseleave(e) {\n if (e && e.relatedTarget && !e.relatedTarget.setTimeout && this._component && this._component.getPopupDomNode && contains(this._component.getPopupDomNode(), e.relatedTarget)) {\n return;\n }\n this.delaySetPopupVisible(false, this.$props.mouseLeaveDelay);\n },\n onFocus: function onFocus(e) {\n this.fireEvents('focus', e);\n // incase focusin and focusout\n this.clearDelayTimer();\n if (this.isFocusToShow()) {\n this.focusTime = Date.now();\n this.delaySetPopupVisible(true, this.$props.focusDelay);\n }\n },\n onMousedown: function onMousedown(e) {\n this.fireEvents('mousedown', e);\n this.preClickTime = Date.now();\n },\n onTouchstart: function onTouchstart(e) {\n this.fireEvents('touchstart', e);\n this.preTouchTime = Date.now();\n },\n onBlur: function onBlur(e) {\n if (!contains(e.target, e.relatedTarget || document.activeElement)) {\n this.fireEvents('blur', e);\n this.clearDelayTimer();\n if (this.isBlurToHide()) {\n this.delaySetPopupVisible(false, this.$props.blurDelay);\n }\n }\n },\n onContextmenu: function onContextmenu(e) {\n e.preventDefault();\n this.fireEvents('contextmenu', e);\n this.setPopupVisible(true, e);\n },\n onContextmenuClose: function onContextmenuClose() {\n if (this.isContextmenuToShow()) {\n this.close();\n }\n },\n onClick: function onClick(event) {\n this.fireEvents('click', event);\n // focus will trigger click\n if (this.focusTime) {\n var preTime = void 0;\n if (this.preClickTime && this.preTouchTime) {\n preTime = Math.min(this.preClickTime, this.preTouchTime);\n } else if (this.preClickTime) {\n preTime = this.preClickTime;\n } else if (this.preTouchTime) {\n preTime = this.preTouchTime;\n }\n if (Math.abs(preTime - this.focusTime) < 20) {\n return;\n }\n this.focusTime = 0;\n }\n this.preClickTime = 0;\n this.preTouchTime = 0;\n // Only prevent default when all the action is click.\n // https://github.com/ant-design/ant-design/issues/17043\n // https://github.com/ant-design/ant-design/issues/17291\n if (this.isClickToShow() && (this.isClickToHide() || this.isBlurToHide()) && event && event.preventDefault) {\n event.preventDefault();\n }\n if (event && event.domEvent) {\n event.domEvent.preventDefault();\n }\n var nextVisible = !this.$data.sPopupVisible;\n if (this.isClickToHide() && !nextVisible || nextVisible && this.isClickToShow()) {\n this.setPopupVisible(!this.$data.sPopupVisible, event);\n }\n },\n onPopupMouseDown: function onPopupMouseDown() {\n var _this4 = this;\n\n var _vcTriggerContext = this.vcTriggerContext,\n vcTriggerContext = _vcTriggerContext === undefined ? {} : _vcTriggerContext;\n\n this.hasPopupMouseDown = true;\n\n clearTimeout(this.mouseDownTimeout);\n this.mouseDownTimeout = setTimeout(function () {\n _this4.hasPopupMouseDown = false;\n }, 0);\n\n if (vcTriggerContext.onPopupMouseDown) {\n vcTriggerContext.onPopupMouseDown.apply(vcTriggerContext, arguments);\n }\n },\n onDocumentClick: function onDocumentClick(event) {\n if (this.$props.mask && !this.$props.maskClosable) {\n return;\n }\n var target = event.target;\n var root = this.$el;\n if (!contains(root, target) && !this.hasPopupMouseDown) {\n this.close();\n }\n },\n getPopupDomNode: function getPopupDomNode() {\n if (this._component && this._component.getPopupDomNode) {\n return this._component.getPopupDomNode();\n }\n return null;\n },\n getRootDomNode: function getRootDomNode() {\n return this.$el;\n // return this.$el.children[0] || this.$el\n },\n handleGetPopupClassFromAlign: function handleGetPopupClassFromAlign(align) {\n var className = [];\n var props = this.$props;\n var popupPlacement = props.popupPlacement,\n builtinPlacements = props.builtinPlacements,\n prefixCls = props.prefixCls,\n alignPoint = props.alignPoint,\n getPopupClassNameFromAlign = props.getPopupClassNameFromAlign;\n\n if (popupPlacement && builtinPlacements) {\n className.push(getAlignPopupClassName(builtinPlacements, prefixCls, align, alignPoint));\n }\n if (getPopupClassNameFromAlign) {\n className.push(getPopupClassNameFromAlign(align));\n }\n return className.join(' ');\n },\n getPopupAlign: function getPopupAlign() {\n var props = this.$props;\n var popupPlacement = props.popupPlacement,\n popupAlign = props.popupAlign,\n builtinPlacements = props.builtinPlacements;\n\n if (popupPlacement && builtinPlacements) {\n return getAlignFromPlacement(builtinPlacements, popupPlacement, popupAlign);\n }\n return popupAlign;\n },\n savePopup: function savePopup(node) {\n this._component = node;\n this.savePopupRef(node);\n },\n getComponent: function getComponent() {\n var h = this.$createElement;\n\n var self = this;\n var mouseProps = {};\n if (this.isMouseEnterToShow()) {\n mouseProps.mouseenter = self.onPopupMouseenter;\n }\n if (this.isMouseLeaveToHide()) {\n mouseProps.mouseleave = self.onPopupMouseleave;\n }\n mouseProps.mousedown = this.onPopupMouseDown;\n mouseProps.touchstart = this.onPopupMouseDown;\n var handleGetPopupClassFromAlign = self.handleGetPopupClassFromAlign,\n getRootDomNode = self.getRootDomNode,\n getContainer = self.getContainer;\n var _self$$props = self.$props,\n prefixCls = _self$$props.prefixCls,\n destroyPopupOnHide = _self$$props.destroyPopupOnHide,\n popupClassName = _self$$props.popupClassName,\n action = _self$$props.action,\n popupAnimation = _self$$props.popupAnimation,\n popupTransitionName = _self$$props.popupTransitionName,\n popupStyle = _self$$props.popupStyle,\n mask = _self$$props.mask,\n maskAnimation = _self$$props.maskAnimation,\n maskTransitionName = _self$$props.maskTransitionName,\n zIndex = _self$$props.zIndex,\n stretch = _self$$props.stretch,\n alignPoint = _self$$props.alignPoint;\n var _$data = this.$data,\n sPopupVisible = _$data.sPopupVisible,\n point = _$data.point;\n\n var align = this.getPopupAlign();\n var popupProps = {\n props: {\n prefixCls: prefixCls,\n destroyPopupOnHide: destroyPopupOnHide,\n visible: sPopupVisible,\n point: alignPoint && point,\n action: action,\n align: align,\n animation: popupAnimation,\n getClassNameFromAlign: handleGetPopupClassFromAlign,\n stretch: stretch,\n getRootDomNode: getRootDomNode,\n mask: mask,\n zIndex: zIndex,\n transitionName: popupTransitionName,\n maskAnimation: maskAnimation,\n maskTransitionName: maskTransitionName,\n getContainer: getContainer,\n popupClassName: popupClassName,\n popupStyle: popupStyle\n },\n on: _extends({\n align: getListeners(this).popupAlign || noop\n }, mouseProps),\n directives: [{\n name: 'ant-ref',\n value: this.savePopup\n }]\n };\n return h(\n Popup,\n popupProps,\n [getComponentFromProp(self, 'popup')]\n );\n },\n getContainer: function getContainer() {\n var props = this.$props,\n dialogContext = this.dialogContext;\n\n var popupContainer = document.createElement('div');\n // Make sure default popup container will never cause scrollbar appearing\n // https://github.com/react-component/trigger/issues/41\n popupContainer.style.position = 'absolute';\n popupContainer.style.top = '0';\n popupContainer.style.left = '0';\n popupContainer.style.width = '100%';\n var mountNode = props.getPopupContainer ? props.getPopupContainer(this.$el, dialogContext) : props.getDocument().body;\n mountNode.appendChild(popupContainer);\n this.popupContainer = popupContainer;\n return popupContainer;\n },\n setPopupVisible: function setPopupVisible(sPopupVisible, event) {\n var alignPoint = this.alignPoint,\n prevPopupVisible = this.sPopupVisible;\n\n this.clearDelayTimer();\n if (prevPopupVisible !== sPopupVisible) {\n if (!hasProp(this, 'popupVisible')) {\n this.setState({\n sPopupVisible: sPopupVisible,\n prevPopupVisible: prevPopupVisible\n });\n }\n var listeners = getListeners(this);\n listeners.popupVisibleChange && listeners.popupVisibleChange(sPopupVisible);\n }\n // Always record the point position since mouseEnterDelay will delay the show\n if (alignPoint && event) {\n this.setPoint(event);\n }\n },\n setPoint: function setPoint(point) {\n var alignPoint = this.$props.alignPoint;\n\n if (!alignPoint || !point) return;\n\n this.setState({\n point: {\n pageX: point.pageX,\n pageY: point.pageY\n }\n });\n },\n delaySetPopupVisible: function delaySetPopupVisible(visible, delayS, event) {\n var _this5 = this;\n\n var delay = delayS * 1000;\n this.clearDelayTimer();\n if (delay) {\n var point = event ? { pageX: event.pageX, pageY: event.pageY } : null;\n this.delayTimer = requestAnimationTimeout(function () {\n _this5.setPopupVisible(visible, point);\n _this5.clearDelayTimer();\n }, delay);\n } else {\n this.setPopupVisible(visible, event);\n }\n },\n clearDelayTimer: function clearDelayTimer() {\n if (this.delayTimer) {\n cancelAnimationTimeout(this.delayTimer);\n this.delayTimer = null;\n }\n },\n clearOutsideHandler: function clearOutsideHandler() {\n if (this.clickOutsideHandler) {\n this.clickOutsideHandler.remove();\n this.clickOutsideHandler = null;\n }\n\n if (this.contextmenuOutsideHandler1) {\n this.contextmenuOutsideHandler1.remove();\n this.contextmenuOutsideHandler1 = null;\n }\n\n if (this.contextmenuOutsideHandler2) {\n this.contextmenuOutsideHandler2.remove();\n this.contextmenuOutsideHandler2 = null;\n }\n\n if (this.touchOutsideHandler) {\n this.touchOutsideHandler.remove();\n this.touchOutsideHandler = null;\n }\n },\n createTwoChains: function createTwoChains(event) {\n var fn = function fn() {};\n var events = getListeners(this);\n if (this.childOriginEvents[event] && events[event]) {\n return this['fire' + event];\n }\n fn = this.childOriginEvents[event] || events[event] || fn;\n return fn;\n },\n isClickToShow: function isClickToShow() {\n var _$props = this.$props,\n action = _$props.action,\n showAction = _$props.showAction;\n\n return action.indexOf('click') !== -1 || showAction.indexOf('click') !== -1;\n },\n isContextmenuToShow: function isContextmenuToShow() {\n var _$props2 = this.$props,\n action = _$props2.action,\n showAction = _$props2.showAction;\n\n return action.indexOf('contextmenu') !== -1 || showAction.indexOf('contextmenu') !== -1;\n },\n isClickToHide: function isClickToHide() {\n var _$props3 = this.$props,\n action = _$props3.action,\n hideAction = _$props3.hideAction;\n\n return action.indexOf('click') !== -1 || hideAction.indexOf('click') !== -1;\n },\n isMouseEnterToShow: function isMouseEnterToShow() {\n var _$props4 = this.$props,\n action = _$props4.action,\n showAction = _$props4.showAction;\n\n return action.indexOf('hover') !== -1 || showAction.indexOf('mouseenter') !== -1;\n },\n isMouseLeaveToHide: function isMouseLeaveToHide() {\n var _$props5 = this.$props,\n action = _$props5.action,\n hideAction = _$props5.hideAction;\n\n return action.indexOf('hover') !== -1 || hideAction.indexOf('mouseleave') !== -1;\n },\n isFocusToShow: function isFocusToShow() {\n var _$props6 = this.$props,\n action = _$props6.action,\n showAction = _$props6.showAction;\n\n return action.indexOf('focus') !== -1 || showAction.indexOf('focus') !== -1;\n },\n isBlurToHide: function isBlurToHide() {\n var _$props7 = this.$props,\n action = _$props7.action,\n hideAction = _$props7.hideAction;\n\n return action.indexOf('focus') !== -1 || hideAction.indexOf('blur') !== -1;\n },\n forcePopupAlign: function forcePopupAlign() {\n if (this.$data.sPopupVisible && this._component && this._component.$refs.alignInstance) {\n this._component.$refs.alignInstance.forceAlign();\n }\n },\n fireEvents: function fireEvents(type, e) {\n if (this.childOriginEvents[type]) {\n this.childOriginEvents[type](e);\n }\n this.__emit(type, e);\n },\n close: function close() {\n this.setPopupVisible(false);\n }\n },\n render: function render() {\n var _this6 = this;\n\n var h = arguments[0];\n var sPopupVisible = this.sPopupVisible;\n\n var children = filterEmpty(this.$slots['default']);\n var _$props8 = this.$props,\n forceRender = _$props8.forceRender,\n alignPoint = _$props8.alignPoint;\n\n\n if (children.length > 1) {\n warning(false, 'Trigger $slots.default.length > 1, just support only one default', true);\n }\n var child = children[0];\n this.childOriginEvents = getDataEvents(child);\n var newChildProps = {\n props: {},\n nativeOn: {},\n key: 'trigger'\n };\n\n if (this.isContextmenuToShow()) {\n newChildProps.nativeOn.contextmenu = this.onContextmenu;\n } else {\n newChildProps.nativeOn.contextmenu = this.createTwoChains('contextmenu');\n }\n\n if (this.isClickToHide() || this.isClickToShow()) {\n newChildProps.nativeOn.click = this.onClick;\n newChildProps.nativeOn.mousedown = this.onMousedown;\n newChildProps.nativeOn.touchstart = this.onTouchstart;\n } else {\n newChildProps.nativeOn.click = this.createTwoChains('click');\n newChildProps.nativeOn.mousedown = this.createTwoChains('mousedown');\n newChildProps.nativeOn.touchstart = this.createTwoChains('onTouchstart');\n }\n if (this.isMouseEnterToShow()) {\n newChildProps.nativeOn.mouseenter = this.onMouseenter;\n if (alignPoint) {\n newChildProps.nativeOn.mousemove = this.onMouseMove;\n }\n } else {\n newChildProps.nativeOn.mouseenter = this.createTwoChains('mouseenter');\n }\n if (this.isMouseLeaveToHide()) {\n newChildProps.nativeOn.mouseleave = this.onMouseleave;\n } else {\n newChildProps.nativeOn.mouseleave = this.createTwoChains('mouseleave');\n }\n\n if (this.isFocusToShow() || this.isBlurToHide()) {\n newChildProps.nativeOn.focus = this.onFocus;\n newChildProps.nativeOn.blur = this.onBlur;\n } else {\n newChildProps.nativeOn.focus = this.createTwoChains('focus');\n newChildProps.nativeOn.blur = function (e) {\n if (e && (!e.relatedTarget || !contains(e.target, e.relatedTarget))) {\n _this6.createTwoChains('blur')(e);\n }\n };\n }\n\n this.trigger = cloneElement(child, newChildProps);\n\n return h(ContainerRender, {\n attrs: {\n parent: this,\n visible: sPopupVisible,\n autoMount: false,\n forceRender: forceRender,\n getComponent: this.getComponent,\n getContainer: this.getContainer,\n children: function children(_ref) {\n var renderComponent = _ref.renderComponent;\n\n _this6.renderComponent = renderComponent;\n return _this6.trigger;\n }\n }\n });\n }\n};","// based on rc-trigger 2.6.5\nimport Trigger from './Trigger';\nexport default Trigger;","function endsWith(str, suffix) {\n return str.indexOf(suffix, str.length - suffix.length) !== -1;\n}\n\nexport 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 || '';\n var baseMimeType = mimeType.replace(/\\/.*$/, '');\n\n return acceptedFilesArray.some(function (type) {\n var validType = type.trim();\n if (validType.charAt(0) === '.') {\n return endsWith(fileName.toLowerCase(), validType.toLowerCase());\n } else if (/\\/\\*$/.test(validType)) {\n // This is something like a image/* mime type\n return baseMimeType === validType.replace(/\\/.*$/, '');\n }\n return mimeType === validType;\n });\n }\n return true;\n});","import addDOMEventListener from 'add-dom-event-listener';\n\nexport default function addEventListenerWrap(target, eventType, cb, option) {\n return addDOMEventListener(target, eventType, cb, option);\n}","export function hasClass(node, className) {\n if (node.classList) {\n return node.classList.contains(className);\n }\n var originClass = node.className;\n return (' ' + originClass + ' ').indexOf(' ' + className + ' ') > -1;\n}\n\nexport function addClass(node, className) {\n if (node.classList) {\n node.classList.add(className);\n } else {\n if (!hasClass(node, className)) {\n node.className = node.className + ' ' + className;\n }\n }\n}\n\nexport function removeClass(node, className) {\n if (node.classList) {\n node.classList.remove(className);\n } else {\n if (hasClass(node, className)) {\n var originClass = node.className;\n node.className = (' ' + originClass + ' ').replace(' ' + className + ' ', ' ');\n }\n }\n}","function getError(option, xhr) {\n var msg = 'cannot ' + option.method + ' ' + option.action + ' ' + xhr.status + '\\'';\n var err = new Error(msg);\n err.status = xhr.status;\n err.method = option.method;\n err.url = option.action;\n return err;\n}\n\nfunction getBody(xhr) {\n var text = xhr.responseText || xhr.response;\n if (!text) {\n return text;\n }\n\n try {\n return JSON.parse(text);\n } catch (e) {\n return text;\n }\n}\n\n// option {\n// onProgress: (event: { percent: number }): void,\n// onError: (event: Error, body?: Object): void,\n// onSuccess: (body: Object): void,\n// data: Object,\n// filename: String,\n// file: File,\n// withCredentials: Boolean,\n// action: String,\n// headers: Object,\n// }\nexport default function upload(option) {\n var xhr = new window.XMLHttpRequest();\n\n if (option.onProgress && xhr.upload) {\n xhr.upload.onprogress = function progress(e) {\n if (e.total > 0) {\n e.percent = e.loaded / e.total * 100;\n }\n option.onProgress(e);\n };\n }\n\n var formData = new window.FormData();\n\n if (option.data) {\n Object.keys(option.data).forEach(function (key) {\n var value = option.data[key];\n // support key-value array data\n if (Array.isArray(value)) {\n value.forEach(function (item) {\n // { list: [ 11, 22 ] }\n // formData.append('list[]', 11);\n formData.append(key + '[]', item);\n });\n return;\n }\n\n formData.append(key, option.data[key]);\n });\n }\n\n formData.append(option.filename, option.file);\n\n xhr.onerror = function error(e) {\n option.onError(e);\n };\n\n xhr.onload = function onload() {\n // allow success when 2xx status\n // see https://github.com/react-component/upload/issues/34\n if (xhr.status < 200 || xhr.status >= 300) {\n return option.onError(getError(option, xhr), getBody(xhr));\n }\n\n option.onSuccess(getBody(xhr), xhr);\n };\n\n xhr.open(option.method, option.action, true);\n\n // Has to be after `.open()`. See https://github.com/enyo/dropzone/issues/179\n if (option.withCredentials && 'withCredentials' in xhr) {\n xhr.withCredentials = true;\n }\n\n var headers = option.headers || {};\n\n // when set headers['X-Requested-With'] = null , can close default XHR header\n // see https://github.com/react-component/upload/issues/33\n if (headers['X-Requested-With'] !== null) {\n xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');\n }\n\n for (var h in headers) {\n if (headers.hasOwnProperty(h) && headers[h] !== null) {\n xhr.setRequestHeader(h, headers[h]);\n }\n }\n xhr.send(formData);\n\n return {\n abort: function abort() {\n xhr.abort();\n }\n };\n}","function loopFiles(item, callback) {\n var dirReader = item.createReader();\n var fileList = [];\n\n function sequence() {\n dirReader.readEntries(function (entries) {\n var entryList = Array.prototype.slice.apply(entries);\n fileList = fileList.concat(entryList);\n\n // Check if all the file has been viewed\n var isFinished = !entryList.length;\n\n if (isFinished) {\n callback(fileList);\n } else {\n sequence();\n }\n });\n }\n\n sequence();\n}\n\nvar traverseFileTree = function traverseFileTree(files, callback, isAccepted) {\n var _traverseFileTree = function _traverseFileTree(item, path) {\n path = path || '';\n if (item.isFile) {\n item.file(function (file) {\n if (isAccepted(file)) {\n // https://github.com/ant-design/ant-design/issues/16426\n if (item.fullPath && !file.webkitRelativePath) {\n Object.defineProperties(file, {\n webkitRelativePath: {\n writable: true\n }\n });\n file.webkitRelativePath = item.fullPath.replace(/^\\//, '');\n Object.defineProperties(file, {\n webkitRelativePath: {\n writable: false\n }\n });\n }\n callback([file]);\n }\n });\n } else if (item.isDirectory) {\n loopFiles(item, function (entries) {\n entries.forEach(function (entryItem) {\n _traverseFileTree(entryItem, '' + path + item.name + '/');\n });\n });\n }\n };\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = files[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var file = _step.value;\n\n _traverseFileTree(file.webkitGetAsEntry());\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator['return']) {\n _iterator['return']();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n};\n\nexport default traverseFileTree;"],"sourceRoot":""}